occam-verify-cli 0.0.932 → 0.0.933
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/conclusion.js +4 -4
- package/lib/consequent.js +4 -4
- package/lib/context/local.js +181 -3
- package/lib/equality.js +4 -4
- package/lib/metaLemma.js +4 -4
- package/lib/metatheorem.js +4 -4
- package/lib/premise.js +6 -6
- package/lib/substitution/statementForMetavariable.js +2 -2
- package/lib/supposition.js +6 -6
- package/lib/unifier/equality.js +216 -0
- package/lib/unifier/metaLevel.js +231 -0
- package/lib/unifier/statementAgainstCombinator.js +231 -0
- package/lib/unifier/termAgainstConstructor.js +211 -0
- package/lib/unifier.js +201 -0
- package/lib/unify/argumentAgainstArgument.js +24 -0
- package/lib/unify/metavariableAgainstStatement.js +66 -0
- package/lib/unify/statementAgainstMetaType.js +28 -0
- package/lib/unify/statementAtainstStatement.js +52 -0
- package/lib/unify/termAgainstTerm.js +22 -0
- package/lib/unify/termAgainstType.js +26 -0
- package/lib/unify/variableAgainstTerm.js +70 -0
- package/lib/verifier/metaLevel.js +236 -0
- package/lib/verifier/statementAsCombinator.js +236 -0
- package/lib/verifier/termAsConstructor.js +219 -0
- package/lib/verifier.js +182 -0
- package/lib/verify/assertion/contained.js +2 -2
- package/lib/verify/assertion/defined.js +2 -2
- package/lib/verify/declaration.js +3 -3
- package/lib/verify/frame.js +9 -12
- package/lib/verify/judgement.js +2 -2
- package/lib/verify/statement/qualified.js +6 -3
- package/lib/verify/statement/unqualified.js +2 -1
- package/lib/verify/statement.js +26 -19
- package/lib/verify/statementAsCombinator.js +2 -2
- package/lib/verify/term.js +6 -6
- package/lib/verify/termAsConstructor.js +2 -2
- package/package.json +2 -2
- package/src/conclusion.js +3 -3
- package/src/consequent.js +3 -3
- package/src/context/local.js +60 -3
- package/src/equality.js +3 -3
- package/src/metaLemma.js +1 -1
- package/src/metatheorem.js +1 -1
- package/src/premise.js +5 -5
- package/src/substitution/statementForMetavariable.js +2 -2
- package/src/supposition.js +5 -5
- package/src/unifier/equality.js +84 -0
- package/src/unifier/metaLevel.js +109 -0
- package/src/unifier/statementAgainstCombinator.js +104 -0
- package/src/unifier/termAgainstConstructor.js +76 -0
- package/src/unifier.js +133 -0
- package/src/unify/argumentAgainstArgument.js +15 -0
- package/src/{verify → unify}/metavariableAgainstStatement.js +18 -18
- package/src/{verify → unify}/statementAgainstMetaType.js +4 -4
- package/src/{verify → unify}/statementAtainstStatement.js +7 -7
- package/src/{verify → unify}/termAgainstTerm.js +5 -5
- package/src/{verify → unify}/termAgainstType.js +7 -7
- package/src/{verify → unify}/variableAgainstTerm.js +6 -6
- package/src/verifier/{node/metaLevel.js → metaLevel.js} +14 -14
- package/src/verifier/{node/statementAsCombinator.js → statementAsCombinator.js} +14 -14
- package/src/verifier/{node/termAsConstructor.js → termAsConstructor.js} +12 -12
- package/src/{verifier/node.js → verifier.js} +19 -1
- package/src/verify/assertion/contained.js +2 -2
- package/src/verify/assertion/defined.js +2 -2
- package/src/verify/declaration.js +3 -3
- package/src/verify/frame.js +10 -13
- package/src/verify/judgement.js +1 -1
- package/src/verify/statement/qualified.js +12 -3
- package/src/verify/statement/unqualified.js +2 -1
- package/src/verify/statement.js +30 -25
- package/src/verify/statementAsCombinator.js +2 -2
- package/src/verify/term.js +6 -6
- package/src/verify/termAsConstructor.js +2 -2
- package/lib/mixins/context.js +0 -135
- package/lib/mixins/nodesVerifier/intrinsiclevel.js +0 -59
- package/lib/mixins/nodesVerifier/metaLevel.js +0 -40
- package/lib/utilities/verifier.js +0 -80
- package/lib/verifier/node/metaLevel.js +0 -201
- package/lib/verifier/node/statementAsCombinator.js +0 -201
- package/lib/verifier/node/termAsConstructor.js +0 -184
- package/lib/verifier/node.js +0 -157
- package/lib/verifier/nodes/equality.js +0 -176
- package/lib/verifier/nodes/metaLevel.js +0 -191
- package/lib/verifier/nodes/statementAgainstCombinator.js +0 -191
- package/lib/verifier/nodes/termAgainstConstructor.js +0 -171
- package/lib/verifier/nodes.js +0 -175
- package/lib/verify/argumentAgainstArgument.js +0 -24
- package/lib/verify/metavariableAgainstStatement.js +0 -66
- package/lib/verify/statementAgainstMetaType.js +0 -28
- package/lib/verify/statementAtainstStatement.js +0 -52
- package/lib/verify/termAgainstTerm.js +0 -22
- package/lib/verify/termAgainstType.js +0 -26
- package/lib/verify/variableAgainstTerm.js +0 -70
- package/src/mixins/context.js +0 -96
- package/src/mixins/nodesVerifier/intrinsiclevel.js +0 -73
- package/src/mixins/nodesVerifier/metaLevel.js +0 -39
- package/src/utilities/verifier.js +0 -38
- package/src/verifier/nodes/equality.js +0 -84
- package/src/verifier/nodes/metaLevel.js +0 -109
- package/src/verifier/nodes/statementAgainstCombinator.js +0 -105
- package/src/verifier/nodes/termAgainstConstructor.js +0 -76
- package/src/verifier/nodes.js +0 -114
- package/src/verify/argumentAgainstArgument.js +0 -15
package/src/verify/term.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import Term from "../term";
|
|
4
4
|
import bracketedConstructor from "../constructor/bracketed";
|
|
5
|
-
import
|
|
5
|
+
import termAgainstConstructorUnifier from "../unifier/termAgainstConstructor";
|
|
6
6
|
|
|
7
7
|
import { first } from "../utilities/array";
|
|
8
8
|
import { nodeQuery } from "../utilities/query";
|
|
@@ -57,7 +57,7 @@ export function verifyStandaloneTerm(termNode, localContext, verifyAhead) {
|
|
|
57
57
|
return standaloneTermVerified;
|
|
58
58
|
}
|
|
59
59
|
|
|
60
|
-
Object.assign(
|
|
60
|
+
Object.assign(termAgainstConstructorUnifier, {
|
|
61
61
|
verifyTerm
|
|
62
62
|
});
|
|
63
63
|
|
|
@@ -131,7 +131,7 @@ function verifyTermAgainstBracketedConstructor(termNode, terms, localContext, ve
|
|
|
131
131
|
const bracketedConstructorTermNode = bracketedConstructor.getTermNode(),
|
|
132
132
|
nonTerminalNNdeA = termNode, ///
|
|
133
133
|
nonTerminalNodeB = bracketedConstructorTermNode, ///
|
|
134
|
-
|
|
134
|
+
nodeUnified = termAgainstConstructorUnifier.unifyNonTerminalNode(nonTerminalNNdeA, nonTerminalNodeB, localContext, () => {
|
|
135
135
|
let verifiedAhead;
|
|
136
136
|
|
|
137
137
|
const bracketedTermNode = termNode; ///
|
|
@@ -174,7 +174,7 @@ function verifyTermAgainstBracketedConstructor(termNode, terms, localContext, ve
|
|
|
174
174
|
return verifiedAhead;
|
|
175
175
|
});
|
|
176
176
|
|
|
177
|
-
termVerifiedAgainstBracketedConstructor =
|
|
177
|
+
termVerifiedAgainstBracketedConstructor = nodeUnified; ///
|
|
178
178
|
|
|
179
179
|
if (termVerifiedAgainstBracketedConstructor) {
|
|
180
180
|
localContext.debug(`...verified the '${termString}' term against the '${bracketedConstructorString}' constructor.`, termNode);
|
|
@@ -194,7 +194,7 @@ function verifyTermAgainstConstructor(termNode, terms, constructor, localContext
|
|
|
194
194
|
const constructorTermNode = constructor.getTermNode(),
|
|
195
195
|
nonTerminalNNdeA = termNode, ///
|
|
196
196
|
nonTerminalNodeB = constructorTermNode, ///
|
|
197
|
-
|
|
197
|
+
nodeUnify = termAgainstConstructorUnifier.unifyNonTerminalNode(nonTerminalNNdeA, nonTerminalNodeB, localContext, () => {
|
|
198
198
|
let verifiedAhead;
|
|
199
199
|
|
|
200
200
|
const type = constructor.getType(),
|
|
@@ -211,7 +211,7 @@ function verifyTermAgainstConstructor(termNode, terms, constructor, localContext
|
|
|
211
211
|
return verifiedAhead;
|
|
212
212
|
});
|
|
213
213
|
|
|
214
|
-
termVerifiedAgainstConstructor =
|
|
214
|
+
termVerifiedAgainstConstructor = nodeUnify; ///
|
|
215
215
|
|
|
216
216
|
if (termVerifiedAgainstConstructor) {
|
|
217
217
|
localContext.debug(`...verified the '${termString}' term against the '${constructorString}' constructor.`, termNode);
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import Constructor from "../constructor";
|
|
4
4
|
import LocalContext from "../context/local";
|
|
5
|
-
import
|
|
5
|
+
import termAsConstructorVerifier from "../verifier/termAsConstructor";
|
|
6
6
|
|
|
7
7
|
export default function verifyTermAsConstructor(termNode, typeNode, fileContext) {
|
|
8
8
|
let termVerifiedAsConstructor = false;
|
|
@@ -14,7 +14,7 @@ export default function verifyTermAsConstructor(termNode, typeNode, fileContext)
|
|
|
14
14
|
const localContext = LocalContext.fromFileContext(fileContext),
|
|
15
15
|
nonTerminalNode = termNode, ///
|
|
16
16
|
childNodes = nonTerminalNode.getChildNodes(),
|
|
17
|
-
childNodesVerified =
|
|
17
|
+
childNodesVerified = termAsConstructorVerifier.verifyChildNodes(childNodes, localContext, () => {
|
|
18
18
|
const verifiedAhead = true;
|
|
19
19
|
|
|
20
20
|
return verifiedAhead;
|
package/lib/mixins/context.js
DELETED
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "default", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return _default;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
function trace(node, message) {
|
|
12
|
-
this.context.trace(node, message);
|
|
13
|
-
}
|
|
14
|
-
function debug(node, message) {
|
|
15
|
-
this.context.debug(node, message);
|
|
16
|
-
}
|
|
17
|
-
function info(node, message) {
|
|
18
|
-
this.context.info(node, message);
|
|
19
|
-
}
|
|
20
|
-
function warning(node, message) {
|
|
21
|
-
this.context.warning(node, message);
|
|
22
|
-
}
|
|
23
|
-
function error(node, message) {
|
|
24
|
-
this.context.error(node, message);
|
|
25
|
-
}
|
|
26
|
-
function fatal(node, message) {
|
|
27
|
-
this.context.fatal(node, message);
|
|
28
|
-
}
|
|
29
|
-
function getAxioms() {
|
|
30
|
-
return this.context.getAxioms();
|
|
31
|
-
}
|
|
32
|
-
function getLemmas() {
|
|
33
|
-
return this.context.getLemmas();
|
|
34
|
-
}
|
|
35
|
-
function getTheorems() {
|
|
36
|
-
return this.context.getTheorems();
|
|
37
|
-
}
|
|
38
|
-
function getConjectures() {
|
|
39
|
-
return this.context.getConjectures();
|
|
40
|
-
}
|
|
41
|
-
function getCombinators() {
|
|
42
|
-
return this.context.getCombinators();
|
|
43
|
-
}
|
|
44
|
-
function getConstructors() {
|
|
45
|
-
return this.context.getConstructors();
|
|
46
|
-
}
|
|
47
|
-
function isTypePresentByTypeName(typeName) {
|
|
48
|
-
return this.context.isTypePresentByTypeName(typeName);
|
|
49
|
-
}
|
|
50
|
-
function isTypePresentByTypeNode(typeNode) {
|
|
51
|
-
return this.context.isTypePresentByTypeNode(typeNode);
|
|
52
|
-
}
|
|
53
|
-
function isMetavariablePresentByName(name) {
|
|
54
|
-
return this.context.isMetavariablePresentByName(name);
|
|
55
|
-
}
|
|
56
|
-
function isLabelPresentByMetavariableNode(metavariableNode) {
|
|
57
|
-
return this.context.isLabelPresentByMetavariableNode(metavariableNode);
|
|
58
|
-
}
|
|
59
|
-
function findTypeByTypeName(typeName) {
|
|
60
|
-
return this.context.findTypeByTypeName(typeName);
|
|
61
|
-
}
|
|
62
|
-
function findTypeByTypeNode(typeNode) {
|
|
63
|
-
return this.context.findTypeByTypeNode(typeNode);
|
|
64
|
-
}
|
|
65
|
-
function findMetavariableByName(name) {
|
|
66
|
-
return this.context.findMetavariableByName(name);
|
|
67
|
-
}
|
|
68
|
-
function findLabelByMetavariableNode(metavariableNode) {
|
|
69
|
-
return this.context.findLabelByMetavariableNode(metavariableNode);
|
|
70
|
-
}
|
|
71
|
-
function findMetaTypeByMetaTypeNode(metaTypeNode) {
|
|
72
|
-
return this.context.findMetaTypeByMetaTypeNode(metaTypeNode);
|
|
73
|
-
}
|
|
74
|
-
function findRuleByMetavariableNode(metavariableNode) {
|
|
75
|
-
return this.context.findRuleByMetavariableNode(metavariableNode);
|
|
76
|
-
}
|
|
77
|
-
function findAxiomByMetavariableNode(metavariableNode) {
|
|
78
|
-
return this.context.findAxiomByMetavariableNode(metavariableNode);
|
|
79
|
-
}
|
|
80
|
-
function findLemmaByMetavariableNode(metavariableNode) {
|
|
81
|
-
return this.context.findLemmaByMetavariableNode(metavariableNode);
|
|
82
|
-
}
|
|
83
|
-
function findTheoremByMetavariableNode(metavariableNode) {
|
|
84
|
-
return this.context.findTheoremByMetavariableNode(metavariableNode);
|
|
85
|
-
}
|
|
86
|
-
function findMetaLemmaByMetavariableNode(metavariableNode) {
|
|
87
|
-
return this.context.findMetaLemmaByMetavariableNode(metavariableNode);
|
|
88
|
-
}
|
|
89
|
-
function findConjectureByMetavariableNode(metavariableNode) {
|
|
90
|
-
return this.context.findConjectureByMetavariableNode(metavariableNode);
|
|
91
|
-
}
|
|
92
|
-
function findMetatheoremByMetavariableNode(metavariableNode) {
|
|
93
|
-
return this.context.findMetatheoremByMetavariableNode(metavariableNode);
|
|
94
|
-
}
|
|
95
|
-
function nodeAsString(node) {
|
|
96
|
-
return this.context.nodeAsString(node);
|
|
97
|
-
}
|
|
98
|
-
function nodesAsString(node) {
|
|
99
|
-
return this.context.nodesAsString(node);
|
|
100
|
-
}
|
|
101
|
-
var contextMixins = {
|
|
102
|
-
trace: trace,
|
|
103
|
-
debug: debug,
|
|
104
|
-
info: info,
|
|
105
|
-
warning: warning,
|
|
106
|
-
error: error,
|
|
107
|
-
fatal: fatal,
|
|
108
|
-
getAxioms: getAxioms,
|
|
109
|
-
getLemmas: getLemmas,
|
|
110
|
-
getTheorems: getTheorems,
|
|
111
|
-
getConjectures: getConjectures,
|
|
112
|
-
getCombinators: getCombinators,
|
|
113
|
-
getConstructors: getConstructors,
|
|
114
|
-
isTypePresentByTypeName: isTypePresentByTypeName,
|
|
115
|
-
isTypePresentByTypeNode: isTypePresentByTypeNode,
|
|
116
|
-
isMetavariablePresentByName: isMetavariablePresentByName,
|
|
117
|
-
isLabelPresentByMetavariableNode: isLabelPresentByMetavariableNode,
|
|
118
|
-
findTypeByTypeName: findTypeByTypeName,
|
|
119
|
-
findTypeByTypeNode: findTypeByTypeNode,
|
|
120
|
-
findMetavariableByName: findMetavariableByName,
|
|
121
|
-
findLabelByMetavariableNode: findLabelByMetavariableNode,
|
|
122
|
-
findMetaTypeByMetaTypeNode: findMetaTypeByMetaTypeNode,
|
|
123
|
-
findRuleByMetavariableNode: findRuleByMetavariableNode,
|
|
124
|
-
findAxiomByMetavariableNode: findAxiomByMetavariableNode,
|
|
125
|
-
findLemmaByMetavariableNode: findLemmaByMetavariableNode,
|
|
126
|
-
findTheoremByMetavariableNode: findTheoremByMetavariableNode,
|
|
127
|
-
findMetaLemmaByMetavariableNode: findMetaLemmaByMetavariableNode,
|
|
128
|
-
findConjectureByMetavariableNode: findConjectureByMetavariableNode,
|
|
129
|
-
findMetatheoremByMetavariableNode: findMetatheoremByMetavariableNode,
|
|
130
|
-
nodeAsString: nodeAsString,
|
|
131
|
-
nodesAsString: nodesAsString
|
|
132
|
-
};
|
|
133
|
-
var _default = contextMixins;
|
|
134
|
-
|
|
135
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvY29udGV4dC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZnVuY3Rpb24gdHJhY2Uobm9kZSwgbWVzc2FnZSkgeyB0aGlzLmNvbnRleHQudHJhY2Uobm9kZSwgbWVzc2FnZSk7IH1cblxuZnVuY3Rpb24gZGVidWcobm9kZSwgbWVzc2FnZSkgeyB0aGlzLmNvbnRleHQuZGVidWcobm9kZSwgbWVzc2FnZSk7IH1cblxuZnVuY3Rpb24gaW5mbyhub2RlLCBtZXNzYWdlKSB7IHRoaXMuY29udGV4dC5pbmZvKG5vZGUsIG1lc3NhZ2UpOyB9XG5cbmZ1bmN0aW9uIHdhcm5pbmcobm9kZSwgbWVzc2FnZSkgeyB0aGlzLmNvbnRleHQud2FybmluZyhub2RlLCBtZXNzYWdlKTsgfVxuXG5mdW5jdGlvbiBlcnJvcihub2RlLCBtZXNzYWdlKSB7IHRoaXMuY29udGV4dC5lcnJvcihub2RlLCBtZXNzYWdlKTsgfVxuXG5mdW5jdGlvbiBmYXRhbChub2RlLCBtZXNzYWdlKSB7IHRoaXMuY29udGV4dC5mYXRhbChub2RlLCBtZXNzYWdlKTsgfVxuXG5mdW5jdGlvbiBnZXRBeGlvbXMoKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZ2V0QXhpb21zKCk7IH1cblxuZnVuY3Rpb24gZ2V0TGVtbWFzKCkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmdldExlbW1hcygpOyB9XG5cbmZ1bmN0aW9uIGdldFRoZW9yZW1zKCkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmdldFRoZW9yZW1zKCk7IH1cblxuZnVuY3Rpb24gZ2V0Q29uamVjdHVyZXMoKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZ2V0Q29uamVjdHVyZXMoKTsgfVxuXG5mdW5jdGlvbiBnZXRDb21iaW5hdG9ycygpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5nZXRDb21iaW5hdG9ycygpOyB9XG5cbmZ1bmN0aW9uIGdldENvbnN0cnVjdG9ycygpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5nZXRDb25zdHJ1Y3RvcnMoKTsgfVxuXG5mdW5jdGlvbiBpc1R5cGVQcmVzZW50QnlUeXBlTmFtZSh0eXBlTmFtZSkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmlzVHlwZVByZXNlbnRCeVR5cGVOYW1lKHR5cGVOYW1lKTsgfVxuXG5mdW5jdGlvbiBpc1R5cGVQcmVzZW50QnlUeXBlTm9kZSh0eXBlTm9kZSkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmlzVHlwZVByZXNlbnRCeVR5cGVOb2RlKHR5cGVOb2RlKTsgfVxuXG5mdW5jdGlvbiBpc01ldGF2YXJpYWJsZVByZXNlbnRCeU5hbWUobmFtZSkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmlzTWV0YXZhcmlhYmxlUHJlc2VudEJ5TmFtZShuYW1lKTsgfVxuXG5mdW5jdGlvbiBpc0xhYmVsUHJlc2VudEJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKSB7IHJldHVybiB0aGlzLmNvbnRleHQuaXNMYWJlbFByZXNlbnRCeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSk7IH1cblxuZnVuY3Rpb24gZmluZFR5cGVCeVR5cGVOYW1lKHR5cGVOYW1lKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZmluZFR5cGVCeVR5cGVOYW1lKHR5cGVOYW1lKTsgfVxuXG5mdW5jdGlvbiBmaW5kVHlwZUJ5VHlwZU5vZGUodHlwZU5vZGUpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5maW5kVHlwZUJ5VHlwZU5vZGUodHlwZU5vZGUpOyB9XG5cbmZ1bmN0aW9uIGZpbmRNZXRhdmFyaWFibGVCeU5hbWUobmFtZSkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmZpbmRNZXRhdmFyaWFibGVCeU5hbWUobmFtZSk7IH1cblxuZnVuY3Rpb24gZmluZExhYmVsQnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5maW5kTGFiZWxCeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSk7IH1cblxuZnVuY3Rpb24gZmluZE1ldGFUeXBlQnlNZXRhVHlwZU5vZGUobWV0YVR5cGVOb2RlKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZmluZE1ldGFUeXBlQnlNZXRhVHlwZU5vZGUobWV0YVR5cGVOb2RlKTsgfVxuXG5mdW5jdGlvbiBmaW5kUnVsZUJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZmluZFJ1bGVCeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSk7IH1cblxuZnVuY3Rpb24gZmluZEF4aW9tQnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5maW5kQXhpb21CeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSk7IH1cblxuZnVuY3Rpb24gZmluZExlbW1hQnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5maW5kTGVtbWFCeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSk7IH1cblxuZnVuY3Rpb24gZmluZFRoZW9yZW1CeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmZpbmRUaGVvcmVtQnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpOyB9XG5cbmZ1bmN0aW9uIGZpbmRNZXRhTGVtbWFCeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmZpbmRNZXRhTGVtbWFCeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSk7IH1cblxuZnVuY3Rpb24gZmluZENvbmplY3R1cmVCeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmZpbmRDb25qZWN0dXJlQnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpOyB9XG5cbmZ1bmN0aW9uIGZpbmRNZXRhdGhlb3JlbUJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZmluZE1ldGF0aGVvcmVtQnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpOyB9XG5cbmZ1bmN0aW9uIG5vZGVBc1N0cmluZyhub2RlKSB7IHJldHVybiB0aGlzLmNvbnRleHQubm9kZUFzU3RyaW5nKG5vZGUpOyB9XG5cbmZ1bmN0aW9uIG5vZGVzQXNTdHJpbmcobm9kZSkgeyByZXR1cm4gdGhpcy5jb250ZXh0Lm5vZGVzQXNTdHJpbmcobm9kZSk7IH1cblxuY29uc3QgY29udGV4dE1peGlucyA9IHtcbiAgdHJhY2UsXG4gIGRlYnVnLFxuICBpbmZvLFxuICB3YXJuaW5nLFxuICBlcnJvcixcbiAgZmF0YWwsXG4gIGdldEF4aW9tcyxcbiAgZ2V0TGVtbWFzLFxuICBnZXRUaGVvcmVtcyxcbiAgZ2V0Q29uamVjdHVyZXMsXG4gIGdldENvbWJpbmF0b3JzLFxuICBnZXRDb25zdHJ1Y3RvcnMsXG4gIGlzVHlwZVByZXNlbnRCeVR5cGVOYW1lLFxuICBpc1R5cGVQcmVzZW50QnlUeXBlTm9kZSxcbiAgaXNNZXRhdmFyaWFibGVQcmVzZW50QnlOYW1lLFxuICBpc0xhYmVsUHJlc2VudEJ5TWV0YXZhcmlhYmxlTm9kZSxcbiAgZmluZFR5cGVCeVR5cGVOYW1lLFxuICBmaW5kVHlwZUJ5VHlwZU5vZGUsXG4gIGZpbmRNZXRhdmFyaWFibGVCeU5hbWUsXG4gIGZpbmRMYWJlbEJ5TWV0YXZhcmlhYmxlTm9kZSxcbiAgZmluZE1ldGFUeXBlQnlNZXRhVHlwZU5vZGUsXG4gIGZpbmRSdWxlQnlNZXRhdmFyaWFibGVOb2RlLFxuICBmaW5kQXhpb21CeU1ldGF2YXJpYWJsZU5vZGUsXG4gIGZpbmRMZW1tYUJ5TWV0YXZhcmlhYmxlTm9kZSxcbiAgZmluZFRoZW9yZW1CeU1ldGF2YXJpYWJsZU5vZGUsXG4gIGZpbmRNZXRhTGVtbWFCeU1ldGF2YXJpYWJsZU5vZGUsXG4gIGZpbmRDb25qZWN0dXJlQnlNZXRhdmFyaWFibGVOb2RlLFxuICBmaW5kTWV0YXRoZW9yZW1CeU1ldGF2YXJpYWJsZU5vZGUsXG4gIG5vZGVBc1N0cmluZyxcbiAgbm9kZXNBc1N0cmluZ1xufTtcblxuZXhwb3J0IGRlZmF1bHQgY29udGV4dE1peGlucztcbiJdLCJuYW1lcyI6WyJ0cmFjZSIsIm5vZGUiLCJtZXNzYWdlIiwiY29udGV4dCIsImRlYnVnIiwiaW5mbyIsIndhcm5pbmciLCJlcnJvciIsImZhdGFsIiwiZ2V0QXhpb21zIiwiZ2V0TGVtbWFzIiwiZ2V0VGhlb3JlbXMiLCJnZXRDb25qZWN0dXJlcyIsImdldENvbWJpbmF0b3JzIiwiZ2V0Q29uc3RydWN0b3JzIiwiaXNUeXBlUHJlc2VudEJ5VHlwZU5hbWUiLCJ0eXBlTmFtZSIsImlzVHlwZVByZXNlbnRCeVR5cGVOb2RlIiwidHlwZU5vZGUiLCJpc01ldGF2YXJpYWJsZVByZXNlbnRCeU5hbWUiLCJuYW1lIiwiaXNMYWJlbFByZXNlbnRCeU1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhdmFyaWFibGVOb2RlIiwiZmluZFR5cGVCeVR5cGVOYW1lIiwiZmluZFR5cGVCeVR5cGVOb2RlIiwiZmluZE1ldGF2YXJpYWJsZUJ5TmFtZSIsImZpbmRMYWJlbEJ5TWV0YXZhcmlhYmxlTm9kZSIsImZpbmRNZXRhVHlwZUJ5TWV0YVR5cGVOb2RlIiwibWV0YVR5cGVOb2RlIiwiZmluZFJ1bGVCeU1ldGF2YXJpYWJsZU5vZGUiLCJmaW5kQXhpb21CeU1ldGF2YXJpYWJsZU5vZGUiLCJmaW5kTGVtbWFCeU1ldGF2YXJpYWJsZU5vZGUiLCJmaW5kVGhlb3JlbUJ5TWV0YXZhcmlhYmxlTm9kZSIsImZpbmRNZXRhTGVtbWFCeU1ldGF2YXJpYWJsZU5vZGUiLCJmaW5kQ29uamVjdHVyZUJ5TWV0YXZhcmlhYmxlTm9kZSIsImZpbmRNZXRhdGhlb3JlbUJ5TWV0YXZhcmlhYmxlTm9kZSIsIm5vZGVBc1N0cmluZyIsIm5vZGVzQXNTdHJp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
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "default", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return _default;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _term = /*#__PURE__*/ _interop_require_default(require("../../verify/term"));
|
|
12
|
-
var _termForVariable = /*#__PURE__*/ _interop_require_default(require("../../substitution/termForVariable"));
|
|
13
|
-
var _array = require("../../utilities/array");
|
|
14
|
-
function _interop_require_default(obj) {
|
|
15
|
-
return obj && obj.__esModule ? obj : {
|
|
16
|
-
default: obj
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
function verifyVariableNode(variableNodeA, termNodeB, substitutions, localContextA, localContextB, verifyAhead) {
|
|
20
|
-
var variableNodeVerified = false;
|
|
21
|
-
var substitution = substitutions.find(function(substitution) {
|
|
22
|
-
var substitutionMatchesVariableNodeA = substitution.matchVariableNode(variableNodeA);
|
|
23
|
-
if (substitutionMatchesVariableNodeA) {
|
|
24
|
-
return true;
|
|
25
|
-
}
|
|
26
|
-
}) || null;
|
|
27
|
-
if (substitution !== null) {
|
|
28
|
-
var termNode = termNodeB, substitutionMatchesTermNode = substitution.matchTermNode(termNode);
|
|
29
|
-
if (substitutionMatchesTermNode) {
|
|
30
|
-
var verifiedAhead = verifyAhead();
|
|
31
|
-
variableNodeVerified = verifiedAhead; ///
|
|
32
|
-
}
|
|
33
|
-
} else {
|
|
34
|
-
var variableNode = variableNodeA, localContext = localContextA, variable = localContext.findVariableByVariableNode(variableNode);
|
|
35
|
-
if (variable !== null) {
|
|
36
|
-
var terms = [], termNode1 = termNodeB, localContext1 = localContextB, termVerified = (0, _term.default)(termNode1, terms, localContext1, function() {
|
|
37
|
-
var verifiedAhead = false;
|
|
38
|
-
var firstTerm = (0, _array.first)(terms), term = firstTerm, termType = term.getType(), variableType = variable.getType(), variableTypeEqualToOrSuperTypeOfTermType = variableType.isEqualToOrSuperTypeOf(termType);
|
|
39
|
-
if (variableTypeEqualToOrSuperTypeOfTermType) {
|
|
40
|
-
var termForVariableSubstitution = _termForVariable.default.fromVariableNodeAndTermNode(variableNode, termNode1), substitution = termForVariableSubstitution; ///
|
|
41
|
-
substitutions.push(substitution);
|
|
42
|
-
verifiedAhead = verifyAhead();
|
|
43
|
-
if (!verifiedAhead) {
|
|
44
|
-
substitutions.pop();
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
return verifiedAhead;
|
|
48
|
-
});
|
|
49
|
-
variableNodeVerified = termVerified; ///
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
return variableNodeVerified;
|
|
53
|
-
}
|
|
54
|
-
var intrinsicLevelNodesVerifierMixins = {
|
|
55
|
-
verifyVariableNode: verifyVariableNode
|
|
56
|
-
};
|
|
57
|
-
var _default = intrinsicLevelNodesVerifierMixins;
|
|
58
|
-
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9taXhpbnMvbm9kZXNWZXJpZmllci9pbnRyaW5zaWNsZXZlbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHZlcmlmeVRlcm0gZnJvbSBcIi4uLy4uL3ZlcmlmeS90ZXJtXCI7XG5pbXBvcnQgVGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uIGZyb20gXCIuLi8uLi9zdWJzdGl0dXRpb24vdGVybUZvclZhcmlhYmxlXCI7XG5cbmltcG9ydCB7IGZpcnN0IH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9hcnJheVwiO1xuXG5mdW5jdGlvbiB2ZXJpZnlWYXJpYWJsZU5vZGUodmFyaWFibGVOb2RlQSwgdGVybU5vZGVCLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCLCB2ZXJpZnlBaGVhZCkge1xuICBsZXQgdmFyaWFibGVOb2RlVmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBzdWJzdGl0dXRpb24gPSBzdWJzdGl0dXRpb25zLmZpbmQoKHN1YnN0aXR1dGlvbikgPT4ge1xuICAgIGNvbnN0IHN1YnN0aXR1dGlvbk1hdGNoZXNWYXJpYWJsZU5vZGVBID0gc3Vic3RpdHV0aW9uLm1hdGNoVmFyaWFibGVOb2RlKHZhcmlhYmxlTm9kZUEpO1xuXG4gICAgaWYgKHN1YnN0aXR1dGlvbk1hdGNoZXNWYXJpYWJsZU5vZGVBKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pIHx8IG51bGw7XG5cbiAgaWYgKHN1YnN0aXR1dGlvbiAhPT0gbnVsbCkge1xuICAgIGNvbnN0IHRlcm1Ob2RlID0gdGVybU5vZGVCLCAvLy9cbiAgICAgICAgICBzdWJzdGl0dXRpb25NYXRjaGVzVGVybU5vZGUgPSBzdWJzdGl0dXRpb24ubWF0Y2hUZXJtTm9kZSh0ZXJtTm9kZSk7XG5cbiAgICBpZiAoc3Vic3RpdHV0aW9uTWF0Y2hlc1Rlcm1Ob2RlKSB7XG4gICAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcblxuICAgICAgdmFyaWFibGVOb2RlVmVyaWZpZWQgPSB2ZXJpZmllZEFoZWFkOyAgLy8vXG4gICAgfVxuICB9IGVsc2Uge1xuICAgIGNvbnN0IHZhcmlhYmxlTm9kZSA9IHZhcmlhYmxlTm9kZUEsIC8vL1xuICAgICAgICAgIGxvY2FsQ29udGV4dCA9IGxvY2FsQ29udGV4dEEsIC8vL1xuICAgICAgICAgIHZhcmlhYmxlID0gbG9jYWxDb250ZXh0LmZpbmRWYXJpYWJsZUJ5VmFyaWFibGVOb2RlKHZhcmlhYmxlTm9kZSk7XG5cbiAgICBpZiAodmFyaWFibGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHRlcm1zID0gW10sXG4gICAgICAgICAgICB0ZXJtTm9kZSA9IHRlcm1Ob2RlQiwgLy8vXG4gICAgICAgICAgICBsb2NhbENvbnRleHQgPSBsb2NhbENvbnRleHRCLCAvLy9cbiAgICAgICAgICAgIHRlcm1WZXJpZmllZCA9IHZlcmlmeVRlcm0odGVybU5vZGUsIHRlcm1zLCBsb2NhbENvbnRleHQsICgpID0+IHtcbiAgICAgICAgICAgICAgbGV0IHZlcmlmaWVkQWhlYWQgPSBmYWxzZTtcblxuICAgICAgICAgICAgICBjb25zdCBmaXJzdFRlcm0gPSBmaXJzdCh0ZXJtcyksXG4gICAgICAgICAgICAgICAgICAgIHRlcm0gPSBmaXJzdFRlcm0sIC8vL1xuICAgICAgICAgICAgICAgICAgICB0ZXJtVHlwZSA9IHRlcm0uZ2V0VHlwZSgpLFxuICAgICAgICAgICAgICAgICAgICB2YXJpYWJsZVR5cGUgPSB2YXJpYWJsZS5nZXRUeXBlKCksXG4gICAgICAgICAgICAgICAgICAgIHZhcmlhYmxlVHlwZUVxdWFsVG9PclN1cGVyVHlwZU9mVGVybVR5cGUgPSB2YXJpYWJsZVR5cGUuaXNFcXVhbFRvT3JTdXBlclR5cGVPZih0ZXJtVHlwZSk7XG5cbiAgICAgICAgICAgICAgaWYgKHZhcmlhYmxlVHlwZUVxdWFsVG9PclN1cGVyVHlwZU9mVGVybVR5cGUpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0ZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24gPSBUZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24uZnJvbVZhcmlhYmxlTm9kZUFuZFRlcm1Ob2RlKHZhcmlhYmxlTm9kZSwgdGVybU5vZGUpLFxuICAgICAgICAgICAgICAgICAgICAgIHN1YnN0aXR1dGlvbiA9IHRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbjsgIC8vL1xuXG4gICAgICAgICAgICAgICAgc3Vic3RpdHV0aW9ucy5wdXNoKHN1YnN0aXR1dGlvbik7XG5cbiAgICAgICAgICAgICAgICB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcblxuICAgICAgICAgICAgICAgIGlmICghdmVyaWZpZWRBaGVhZCkge1xuICAgICAgICAgICAgICAgICAgc3Vic3RpdHV0aW9ucy5wb3AoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICByZXR1cm4gdmVyaWZpZWRBaGVhZDtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICB2YXJpYWJsZU5vZGVWZXJpZmllZCA9IHRlcm1WZXJpZmllZDsgIC8vL1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB2YXJpYWJsZU5vZGVWZXJpZmllZDtcbn1cblxuY29uc3QgaW50cmluc2ljTGV2ZWxOb2Rlc1ZlcmlmaWVyTWl4aW5zID0ge1xuICB2ZXJpZnlWYXJpYWJsZU5vZGVcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGludHJpbnNpY0xldmVsTm9kZXNWZXJpZmllck1peGlucztcbiJdLCJuYW1lcyI6WyJ2ZXJpZnlWYXJpYWJsZU5vZGUiLCJ2YXJpYWJsZU5vZGVBIiwidGVybU5vZGVCIiwic3Vic3RpdHV0aW9ucyIsImxvY2FsQ29udGV4dEEiLCJsb2NhbENvbnRleHRCIiwidmVyaWZ5QWhlYWQiLCJ2YXJpYWJsZU5vZGVWZXJpZmllZCIsInN1YnN0aXR1dGlvbiIsImZpbmQiLCJzdWJzdGl0dXRpb25NYXRjaGVzVmFyaWFibGVOb2RlQSIsIm1hdGNoVmFyaWFibGVOb2RlIiwidGVybU5vZGUiLCJzdWJzdGl0dXRpb25NYXRjaGVzVGVybU5vZGUiLCJtYXRjaFRlcm1Ob2RlIiwidmVyaWZpZWRBaGVhZCIsInZhcmlhYmxlTm9kZSIsImxvY2FsQ29udGV4dCIsInZhcmlhYmxlIiwiZmluZFZhcmlhYmxlQnlWYXJpYWJsZU5vZGUiLCJ0ZXJtcyIsInRlcm1WZXJpZmllZCIsInZlcmlmeVRlcm0iLCJmaXJzdFRlcm0iLCJmaXJzdCIsInRlcm0iLCJ0ZXJtVHlwZSIsImdldFR5cGUiLCJ2YXJpYWJsZVR5cGUiLCJ2YXJpYWJsZVR5cGVFcXVhbFRvT3JTdXBlclR5cGVPZlRlcm1UeXBlIiwiaXNFcXVhbFRvT3JTdXBlclR5cGVPZiIsInRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbiIsIlRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbiIsImZyb21WYXJpYWJsZU5vZGVBbmRUZXJtTm9kZSIsInB1c2giLCJwb3AiLCJpbnRyaW5zaWNMZXZlbE5vZGVzVmVyaWZpZXJNaXhpbnMiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQXdFQTs7O2VBQUE7OzsyREF0RXVCO3NFQUNpQjtxQkFFbEI7Ozs7OztBQUV0QixTQUFTQSxtQkFBbUJDLGFBQWEsRUFBRUMsU0FBUyxFQUFFQyxhQUFhLEVBQUVDLGFBQWEsRUFBRUMsYUFBYSxFQUFFQyxXQUFXO0lBQzVHLElBQUlDLHVCQUF1QjtJQUUzQixJQUFNQyxlQUFlTCxjQUFjTSxJQUFJLENBQUMsU0FBQ0Q7UUFDdkMsSUFBTUUsbUNBQW1DRixhQUFhRyxpQkFBaUIsQ0FBQ1Y7UUFFeEUsSUFBSVMsa0NBQWtDO1lBQ3BDLE9BQU87UUFDVDtJQUNGLE1BQU07SUFFTixJQUFJRixpQkFBaUIsTUFBTTtRQUN6QixJQUFNSSxXQUFXVixXQUNYVyw4QkFBOEJMLGFBQWFNLGFBQWEsQ0FBQ0Y7UUFFL0QsSUFBSUMsNkJBQTZCO1lBQy9CLElBQU1FLGdCQUFnQlQ7WUFFdEJDLHVCQUF1QlEsZUFBZ0IsR0FBRztRQUM1QztJQUNGLE9BQU87UUFDTCxJQUFNQyxlQUFlZixlQUNmZ0IsZUFBZWIsZUFDZmMsV0FBV0QsYUFBYUUsMEJBQTBCLENBQUNIO1FBRXpELElBQUlFLGFBQWEsTUFBTTtZQUNyQixJQUFNRSxRQUFRLEVBQUUsRUFDVlIsWUFBV1YsV0FDWGUsZ0JBQWVaLGVBQ2ZnQixlQUFlQyxJQUFBQSxhQUFVLEVBQUNWLFdBQVVRLE9BQU9ILGVBQWM7Z0JBQ3ZELElBQUlGLGdCQUFnQjtnQkFFcEIsSUFBTVEsWUFBWUMsSUFBQUEsWUFBSyxFQUFDSixRQUNsQkssT0FBT0YsV0FDUEcsV0FBV0QsS0FBS0UsT0FBTyxJQUN2QkMsZUFBZVYsU0FBU1MsT0FBTyxJQUMvQkUsMkNBQTJDRCxhQUFhRSxzQkFBc0IsQ0FBQ0o7Z0JBRXJGLElBQUlHLDBDQUEwQztvQkFDNUMsSUFBTUUsOEJBQThCQyx3QkFBMkIsQ0FBQ0MsMkJBQTJCLENBQUNqQixjQUFjSixZQUNwR0osZUFBZXVCLDZCQUE4QixHQUFHO29CQUV0RDVCLGNBQWMrQixJQUFJLENBQUMxQjtvQkFFbkJPLGdCQUFnQlQ7b0JBRWhCLElBQUksQ0FBQ1MsZUFBZTt3QkFDbEJaLGNBQWNnQyxHQUFHO29CQUNuQjtnQkFDRjtnQkFFQSxPQUFPcEI7WUFDVDtZQUVOUix1QkFBdUJjLGNBQWUsR0FBRztRQUMzQztJQUNGO0lBRUEsT0FBT2Q7QUFDVDtBQUVBLElBQU02QixvQ0FBb0M7SUFDeENwQyxvQkFBQUE7QUFDRjtJQUVBLFdBQWVvQyJ9
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "default", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return _default;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _statementForMetavariable = /*#__PURE__*/ _interop_require_default(require("../../substitution/statementForMetavariable"));
|
|
12
|
-
function _interop_require_default(obj) {
|
|
13
|
-
return obj && obj.__esModule ? obj : {
|
|
14
|
-
default: obj
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
function verifyMetavariableNode(metavariableNodeA, statementNodeB, substitutions, localContextA, localContextB, verifyAhead) {
|
|
18
|
-
var metavariableNodeVerified;
|
|
19
|
-
var substitution = substitutions.find(function(substitution) {
|
|
20
|
-
var substitutionMatchesMetavariableNodeA = substitution.matchMetavariableNode(metavariableNodeA);
|
|
21
|
-
if (substitutionMatchesMetavariableNodeA) {
|
|
22
|
-
return true;
|
|
23
|
-
}
|
|
24
|
-
}) || null;
|
|
25
|
-
if (substitution !== null) {
|
|
26
|
-
var statementNode = statementNodeB, substitutionStatementNode = substitution.matchStatementNode(statementNode);
|
|
27
|
-
metavariableNodeVerified = substitutionStatementNode; ///
|
|
28
|
-
} else {
|
|
29
|
-
var metavariableNode = metavariableNodeA, statementNode1 = statementNodeB, statementForMetavariableSubstitution = _statementForMetavariable.default.fromMetavariableNodeAndStatementNode(metavariableNode, statementNode1), substitution1 = statementForMetavariableSubstitution; ///
|
|
30
|
-
substitutions.push(substitution1);
|
|
31
|
-
metavariableNodeVerified = true;
|
|
32
|
-
}
|
|
33
|
-
return metavariableNodeVerified;
|
|
34
|
-
}
|
|
35
|
-
var metaLevelNodesVerifierMixins = {
|
|
36
|
-
verifyMetavariableNode: verifyMetavariableNode
|
|
37
|
-
};
|
|
38
|
-
var _default = metaLevelNodesVerifierMixins;
|
|
39
|
-
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9taXhpbnMvbm9kZXNWZXJpZmllci9tZXRhTGV2ZWwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBTdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24gZnJvbSBcIi4uLy4uL3N1YnN0aXR1dGlvbi9zdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVcIjtcblxuZnVuY3Rpb24gdmVyaWZ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlQSwgc3RhdGVtZW50Tm9kZUIsIHN1YnN0aXR1dGlvbnMsIGxvY2FsQ29udGV4dEEsIGxvY2FsQ29udGV4dEIsIHZlcmlmeUFoZWFkKSB7XG4gIGxldCBtZXRhdmFyaWFibGVOb2RlVmVyaWZpZWQ7XG5cbiAgY29uc3Qgc3Vic3RpdHV0aW9uID0gc3Vic3RpdHV0aW9ucy5maW5kKChzdWJzdGl0dXRpb24pID0+IHtcbiAgICBjb25zdCBzdWJzdGl0dXRpb25NYXRjaGVzTWV0YXZhcmlhYmxlTm9kZUEgPSBzdWJzdGl0dXRpb24ubWF0Y2hNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGVBKTtcblxuICAgIGlmIChzdWJzdGl0dXRpb25NYXRjaGVzTWV0YXZhcmlhYmxlTm9kZUEpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSkgfHwgbnVsbDtcblxuICBpZiAoc3Vic3RpdHV0aW9uICE9PSBudWxsKSB7XG4gICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVCLCAvLy9cbiAgICAgICAgICBzdWJzdGl0dXRpb25TdGF0ZW1lbnROb2RlID0gc3Vic3RpdHV0aW9uLm1hdGNoU3RhdGVtZW50Tm9kZShzdGF0ZW1lbnROb2RlKTtcblxuICAgIG1ldGF2YXJpYWJsZU5vZGVWZXJpZmllZCA9IHN1YnN0aXR1dGlvblN0YXRlbWVudE5vZGU7ICAvLy9cbiAgfSBlbHNlIHtcbiAgICBjb25zdCBtZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZUEsIC8vL1xuICAgICAgICAgIHN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlQiwgLy8vXG4gICAgICAgICAgc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uID0gU3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uLmZyb21NZXRhdmFyaWFibGVOb2RlQW5kU3RhdGVtZW50Tm9kZShtZXRhdmFyaWFibGVOb2RlLCBzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICBzdWJzdGl0dXRpb24gPSBzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb247ICAvLy9cblxuICAgIHN1YnN0aXR1dGlvbnMucHVzaChzdWJzdGl0dXRpb24pO1xuXG4gICAgbWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkID0gdHJ1ZTtcbiAgfVxuXG4gIHJldHVybiBtZXRhdmFyaWFibGVOb2RlVmVyaWZpZWQ7XG59XG5cbmNvbnN0IG1ldGFMZXZlbE5vZGVzVmVyaWZpZXJNaXhpbnMgPSB7XG4gIHZlcmlmeU1ldGF2YXJpYWJsZU5vZGVcbn07XG5cbmV4cG9ydCBkZWZhdWx0IG1ldGFMZXZlbE5vZGVzVmVyaWZpZXJNaXhpbnM7XG4iXSwibmFtZXMiOlsidmVyaWZ5TWV0YXZhcmlhYmxlTm9kZSIsIm1ldGF2YXJpYWJsZU5vZGVBIiwic3RhdGVtZW50Tm9kZUIiLCJzdWJzdGl0dXRpb25zIiwibG9jYWxDb250ZXh0QSIsImxvY2FsQ29udGV4dEIiLCJ2ZXJpZnlBaGVhZCIsIm1ldGF2YXJpYWJsZU5vZGVWZXJpZmllZCIsInN1YnN0aXR1dGlvbiIsImZpbmQiLCJzdWJzdGl0dXRpb25NYXRjaGVzTWV0YXZhcmlhYmxlTm9kZUEiLCJtYXRjaE1ldGF2YXJpYWJsZU5vZGUiLCJzdGF0ZW1lbnROb2RlIiwic3Vic3RpdHV0aW9uU3RhdGVtZW50Tm9kZSIsIm1hdGNoU3RhdGVtZW50Tm9kZSIsIm1ldGF2YXJpYWJsZU5vZGUiLCJzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24iLCJTdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24iLCJmcm9tTWV0YXZhcmlhYmxlTm9kZUFuZFN0YXRlbWVudE5vZGUiLCJwdXNoIiwibWV0YUxldmVsTm9kZXNWZXJpZmllck1peGlucyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBc0NBOzs7ZUFBQTs7OytFQXBDaUQ7Ozs7OztBQUVqRCxTQUFTQSx1QkFBdUJDLGlCQUFpQixFQUFFQyxjQUFjLEVBQUVDLGFBQWEsRUFBRUMsYUFBYSxFQUFFQyxhQUFhLEVBQUVDLFdBQVc7SUFDekgsSUFBSUM7SUFFSixJQUFNQyxlQUFlTCxjQUFjTSxJQUFJLENBQUMsU0FBQ0Q7UUFDdkMsSUFBTUUsdUNBQXVDRixhQUFhRyxxQkFBcUIsQ0FBQ1Y7UUFFaEYsSUFBSVMsc0NBQXNDO1lBQ3hDLE9BQU87UUFDVDtJQUNGLE1BQU07SUFFTixJQUFJRixpQkFBaUIsTUFBTTtRQUN6QixJQUFNSSxnQkFBZ0JWLGdCQUNoQlcsNEJBQTRCTCxhQUFhTSxrQkFBa0IsQ0FBQ0Y7UUFFbEVMLDJCQUEyQk0sMkJBQTRCLEdBQUc7SUFDNUQsT0FBTztRQUNMLElBQU1FLG1CQUFtQmQsbUJBQ25CVyxpQkFBZ0JWLGdCQUNoQmMsdUNBQXVDQyxpQ0FBb0MsQ0FBQ0Msb0NBQW9DLENBQUNILGtCQUFrQkgsaUJBQ25JSixnQkFBZVEsc0NBQXVDLEdBQUc7UUFFL0RiLGNBQWNnQixJQUFJLENBQUNYO1FBRW5CRCwyQkFBMkI7SUFDN0I7SUFFQSxPQUFPQTtBQUNUO0FBRUEsSUFBTWEsK0JBQStCO0lBQ25DcEIsd0JBQUFBO0FBQ0Y7SUFFQSxXQUFlb0IifQ==
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: all[name]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
verifyNode: function() {
|
|
13
|
-
return verifyNode;
|
|
14
|
-
},
|
|
15
|
-
verifyNodes: function() {
|
|
16
|
-
return verifyNodes;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
function _array_like_to_array(arr, len) {
|
|
20
|
-
if (len == null || len > arr.length) len = arr.length;
|
|
21
|
-
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
22
|
-
return arr2;
|
|
23
|
-
}
|
|
24
|
-
function _array_without_holes(arr) {
|
|
25
|
-
if (Array.isArray(arr)) return _array_like_to_array(arr);
|
|
26
|
-
}
|
|
27
|
-
function _iterable_to_array(iter) {
|
|
28
|
-
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
29
|
-
}
|
|
30
|
-
function _non_iterable_spread() {
|
|
31
|
-
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
32
|
-
}
|
|
33
|
-
function _to_consumable_array(arr) {
|
|
34
|
-
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
|
|
35
|
-
}
|
|
36
|
-
function _unsupported_iterable_to_array(o, minLen) {
|
|
37
|
-
if (!o) return;
|
|
38
|
-
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
39
|
-
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
40
|
-
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
41
|
-
if (n === "Map" || n === "Set") return Array.from(n);
|
|
42
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
43
|
-
}
|
|
44
|
-
function verifyNode(nodeQueryMaps, nonTerminalNode) {
|
|
45
|
-
for(var _len = arguments.length, remainingArguments = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++){
|
|
46
|
-
remainingArguments[_key - 2] = arguments[_key];
|
|
47
|
-
}
|
|
48
|
-
var nodeVerified = false;
|
|
49
|
-
nodeVerified = nodeQueryMaps.some(function(nodeQueryMap) {
|
|
50
|
-
var nodeQuery = nodeQueryMap.nodeQuery, verifyNode = nodeQueryMap.verifyNode;
|
|
51
|
-
var node = nodeQuery(nonTerminalNode);
|
|
52
|
-
if (node !== null) {
|
|
53
|
-
nodeVerified = verifyNode.apply(void 0, [
|
|
54
|
-
node
|
|
55
|
-
].concat(_to_consumable_array(remainingArguments)));
|
|
56
|
-
return true;
|
|
57
|
-
}
|
|
58
|
-
});
|
|
59
|
-
return nodeVerified;
|
|
60
|
-
}
|
|
61
|
-
function verifyNodes(nodeQueryMaps, nonTerminalNodeA, nonTerminalNodeB) {
|
|
62
|
-
for(var _len = arguments.length, remainingArguments = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++){
|
|
63
|
-
remainingArguments[_key - 3] = arguments[_key];
|
|
64
|
-
}
|
|
65
|
-
var nodesVerified = false;
|
|
66
|
-
nodeQueryMaps.some(function(nodeQueryMap) {
|
|
67
|
-
var nodeQueryA = nodeQueryMap.nodeQueryA, nodeQueryB = nodeQueryMap.nodeQueryB, verifyNodes = nodeQueryMap.verifyNodes;
|
|
68
|
-
var nodeA = nodeQueryA(nonTerminalNodeA), nodeB = nodeQueryB(nonTerminalNodeB); ///
|
|
69
|
-
if (nodeA !== null && nodeB !== null) {
|
|
70
|
-
nodesVerified = verifyNodes.apply(void 0, [
|
|
71
|
-
nodeA,
|
|
72
|
-
nodeB
|
|
73
|
-
].concat(_to_consumable_array(remainingArguments)));
|
|
74
|
-
return true;
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
return nodesVerified;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvdmVyaWZpZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBmdW5jdGlvbiB2ZXJpZnlOb2RlKG5vZGVRdWVyeU1hcHMsIG5vblRlcm1pbmFsTm9kZSwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gIGxldCBub2RlVmVyaWZpZWQgPSBmYWxzZTtcblxuICBub2RlVmVyaWZpZWQgPSBub2RlUXVlcnlNYXBzLnNvbWUoKG5vZGVRdWVyeU1hcCkgPT4ge1xuICAgIGNvbnN0IHsgbm9kZVF1ZXJ5LCB2ZXJpZnlOb2RlIH0gPSBub2RlUXVlcnlNYXA7XG5cbiAgICBjb25zdCBub2RlID0gbm9kZVF1ZXJ5KG5vblRlcm1pbmFsTm9kZSk7XG5cbiAgICBpZiAobm9kZSAhPT0gbnVsbCkge1xuICAgICAgbm9kZVZlcmlmaWVkID0gdmVyaWZ5Tm9kZShub2RlLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiBub2RlVmVyaWZpZWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2ZXJpZnlOb2Rlcyhub2RlUXVlcnlNYXBzLCBub25UZXJtaW5hbE5vZGVBLCBub25UZXJtaW5hbE5vZGVCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgbGV0IG5vZGVzVmVyaWZpZWQgPSBmYWxzZTtcblxuICBub2RlUXVlcnlNYXBzLnNvbWUoKG5vZGVRdWVyeU1hcCkgPT4ge1xuICAgIGNvbnN0IHsgbm9kZVF1ZXJ5QSwgbm9kZVF1ZXJ5QiwgdmVyaWZ5Tm9kZXMgfSA9IG5vZGVRdWVyeU1hcDtcblxuICAgIGNvbnN0IG5vZGVBID0gbm9kZVF1ZXJ5QShub25UZXJtaW5hbE5vZGVBKSwgIC8vL1xuICAgICAgICAgIG5vZGVCID0gbm9kZVF1ZXJ5Qihub25UZXJtaW5hbE5vZGVCKTsgIC8vL1xuXG4gICAgaWYgKChub2RlQSAhPT0gbnVsbCkgJiYgKG5vZGVCICE9PSBudWxsKSkge1xuICAgICAgbm9kZXNWZXJpZmllZCA9IHZlcmlmeU5vZGVzKG5vZGVBLCBub2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gbm9kZXNWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlOb2RlIiwidmVyaWZ5Tm9kZXMiLCJub2RlUXVlcnlNYXBzIiwibm9uVGVybWluYWxOb2RlIiwicmVtYWluaW5nQXJndW1lbnRzIiwibm9kZVZlcmlmaWVkIiwic29tZSIsIm5vZGVRdWVyeU1hcCIsIm5vZGVRdWVyeSIsIm5vZGUiLCJub25UZXJtaW5hbE5vZGVBIiwibm9uVGVybWluYWxOb2RlQiIsIm5vZGVzVmVyaWZpZWQiLCJub2RlUXVlcnlBIiwibm9kZVF1ZXJ5QiIsIm5vZGVBIiwibm9kZUIiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQUVnQkEsVUFBVTtlQUFWQTs7SUFrQkFDLFdBQVc7ZUFBWEE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFsQlQsU0FBU0QsV0FBV0UsYUFBYSxFQUFFQyxlQUFlO0lBQUUsSUFBQSxJQUFBLE9BQUEsVUFBQSxRQUFBLEFBQUdDLHFCQUFILFVBQUEsT0FBQSxJQUFBLE9BQUEsUUFBQSxPQUFBLEdBQUEsT0FBQSxNQUFBO1FBQUdBLG1CQUFILE9BQUEsS0FBQSxTQUFBLENBQUEsS0FBcUI7O0lBQzlFLElBQUlDLGVBQWU7SUFFbkJBLGVBQWVILGNBQWNJLElBQUksQ0FBQyxTQUFDQztRQUNqQyxJQUFRQyxZQUEwQkQsYUFBMUJDLFdBQVdSLGFBQWVPLGFBQWZQO1FBRW5CLElBQU1TLE9BQU9ELFVBQVVMO1FBRXZCLElBQUlNLFNBQVMsTUFBTTtZQUNqQkosZUFBZUwsV0FBQUEsTUFBQUEsS0FBQUEsR0FBQUE7Z0JBQVdTO2FBQTRCLENBQXZDVCxPQUFpQixxQkFBR0k7WUFFbkMsT0FBTztRQUNUO0lBQ0Y7SUFFQSxPQUFPQztBQUNUO0FBRU8sU0FBU0osWUFBWUMsYUFBYSxFQUFFUSxnQkFBZ0IsRUFBRUMsZ0JBQWdCO0lBQUUsSUFBQSxJQUFBLE9BQUEsVUFBQSxRQUFBLEFBQUdQLHFCQUFILFVBQUEsT0FBQSxJQUFBLE9BQUEsUUFBQSxPQUFBLEdBQUEsT0FBQSxNQUFBO1FBQUdBLG1CQUFILE9BQUEsS0FBQSxTQUFBLENBQUEsS0FBcUI7O0lBQ2xHLElBQUlRLGdCQUFnQjtJQUVwQlYsY0FBY0ksSUFBSSxDQUFDLFNBQUNDO1FBQ2xCLElBQVFNLGFBQXdDTixhQUF4Q00sWUFBWUMsYUFBNEJQLGFBQTVCTyxZQUFZYixjQUFnQk0sYUFBaEJOO1FBRWhDLElBQU1jLFFBQVFGLFdBQVdILG1CQUNuQk0sUUFBUUYsV0FBV0gsbUJBQW9CLEdBQUc7UUFFaEQsSUFBSSxBQUFDSSxVQUFVLFFBQVVDLFVBQVUsTUFBTztZQUN4Q0osZ0JBQWdCWCxZQUFBQSxNQUFBQSxLQUFBQSxHQUFBQTtnQkFBWWM7Z0JBQU9DO2FBQTZCLENBQWhEZixPQUEwQixxQkFBR0c7WUFFN0MsT0FBTztRQUNUO0lBQ0Y7SUFFQSxPQUFPUTtBQUNUIn0=
|
|
@@ -1,201 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "default", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return _default;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _node = /*#__PURE__*/ _interop_require_default(require("../../verifier/node"));
|
|
12
|
-
var _query = require("../../utilities/query");
|
|
13
|
-
var _verifier = require("../../utilities/verifier");
|
|
14
|
-
var _term = require("../../verify/term");
|
|
15
|
-
var _variable = require("../../verify/variable");
|
|
16
|
-
var _metavariable = require("../../verify/metavariable");
|
|
17
|
-
function _assert_this_initialized(self) {
|
|
18
|
-
if (self === void 0) {
|
|
19
|
-
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
20
|
-
}
|
|
21
|
-
return self;
|
|
22
|
-
}
|
|
23
|
-
function _call_super(_this, derived, args) {
|
|
24
|
-
derived = _get_prototype_of(derived);
|
|
25
|
-
return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args));
|
|
26
|
-
}
|
|
27
|
-
function _class_call_check(instance, Constructor) {
|
|
28
|
-
if (!(instance instanceof Constructor)) {
|
|
29
|
-
throw new TypeError("Cannot call a class as a function");
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
function _defineProperties(target, props) {
|
|
33
|
-
for(var i = 0; i < props.length; i++){
|
|
34
|
-
var descriptor = props[i];
|
|
35
|
-
descriptor.enumerable = descriptor.enumerable || false;
|
|
36
|
-
descriptor.configurable = true;
|
|
37
|
-
if ("value" in descriptor) descriptor.writable = true;
|
|
38
|
-
Object.defineProperty(target, descriptor.key, descriptor);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
function _create_class(Constructor, protoProps, staticProps) {
|
|
42
|
-
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
43
|
-
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
44
|
-
return Constructor;
|
|
45
|
-
}
|
|
46
|
-
function _get(target, property, receiver) {
|
|
47
|
-
if (typeof Reflect !== "undefined" && Reflect.get) {
|
|
48
|
-
_get = Reflect.get;
|
|
49
|
-
} else {
|
|
50
|
-
_get = function get(target, property, receiver) {
|
|
51
|
-
var base = _super_prop_base(target, property);
|
|
52
|
-
if (!base) return;
|
|
53
|
-
var desc = Object.getOwnPropertyDescriptor(base, property);
|
|
54
|
-
if (desc.get) {
|
|
55
|
-
return desc.get.call(receiver || target);
|
|
56
|
-
}
|
|
57
|
-
return desc.value;
|
|
58
|
-
};
|
|
59
|
-
}
|
|
60
|
-
return _get(target, property, receiver || target);
|
|
61
|
-
}
|
|
62
|
-
function _get_prototype_of(o) {
|
|
63
|
-
_get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
|
|
64
|
-
return o.__proto__ || Object.getPrototypeOf(o);
|
|
65
|
-
};
|
|
66
|
-
return _get_prototype_of(o);
|
|
67
|
-
}
|
|
68
|
-
function _inherits(subClass, superClass) {
|
|
69
|
-
if (typeof superClass !== "function" && superClass !== null) {
|
|
70
|
-
throw new TypeError("Super expression must either be null or a function");
|
|
71
|
-
}
|
|
72
|
-
subClass.prototype = Object.create(superClass && superClass.prototype, {
|
|
73
|
-
constructor: {
|
|
74
|
-
value: subClass,
|
|
75
|
-
writable: true,
|
|
76
|
-
configurable: true
|
|
77
|
-
}
|
|
78
|
-
});
|
|
79
|
-
if (superClass) _set_prototype_of(subClass, superClass);
|
|
80
|
-
}
|
|
81
|
-
function _interop_require_default(obj) {
|
|
82
|
-
return obj && obj.__esModule ? obj : {
|
|
83
|
-
default: obj
|
|
84
|
-
};
|
|
85
|
-
}
|
|
86
|
-
function _possible_constructor_return(self, call) {
|
|
87
|
-
if (call && (_type_of(call) === "object" || typeof call === "function")) {
|
|
88
|
-
return call;
|
|
89
|
-
}
|
|
90
|
-
return _assert_this_initialized(self);
|
|
91
|
-
}
|
|
92
|
-
function _set_prototype_of(o, p) {
|
|
93
|
-
_set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) {
|
|
94
|
-
o.__proto__ = p;
|
|
95
|
-
return o;
|
|
96
|
-
};
|
|
97
|
-
return _set_prototype_of(o, p);
|
|
98
|
-
}
|
|
99
|
-
function _super_prop_base(object, property) {
|
|
100
|
-
while(!Object.prototype.hasOwnProperty.call(object, property)){
|
|
101
|
-
object = _get_prototype_of(object);
|
|
102
|
-
if (object === null) break;
|
|
103
|
-
}
|
|
104
|
-
return object;
|
|
105
|
-
}
|
|
106
|
-
function _type_of(obj) {
|
|
107
|
-
"@swc/helpers - typeof";
|
|
108
|
-
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
109
|
-
}
|
|
110
|
-
function _is_native_reflect_construct() {
|
|
111
|
-
try {
|
|
112
|
-
var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
|
|
113
|
-
} catch (_) {}
|
|
114
|
-
return (_is_native_reflect_construct = function() {
|
|
115
|
-
return !!result;
|
|
116
|
-
})();
|
|
117
|
-
}
|
|
118
|
-
var termNodeQuery = (0, _query.nodeQuery)("/term!"), variableNodeQuery = (0, _query.nodeQuery)("/variable!"), nonTerminalNodeQuery = (0, _query.nodeQuery)("/*"), metavariableNodeQuery = (0, _query.nodeQuery)("/metavariable!");
|
|
119
|
-
var MetaLevelNodeVerifier = /*#__PURE__*/ function(NodeVerifier) {
|
|
120
|
-
_inherits(MetaLevelNodeVerifier, NodeVerifier);
|
|
121
|
-
function MetaLevelNodeVerifier() {
|
|
122
|
-
_class_call_check(this, MetaLevelNodeVerifier);
|
|
123
|
-
return _call_super(this, MetaLevelNodeVerifier, arguments);
|
|
124
|
-
}
|
|
125
|
-
_create_class(MetaLevelNodeVerifier, [
|
|
126
|
-
{
|
|
127
|
-
key: "verifyNonTerminalNode",
|
|
128
|
-
value: function verifyNonTerminalNode(nonTerminalNode, localContext, verifyAhead) {
|
|
129
|
-
var _this = this;
|
|
130
|
-
var nonTerminalNodeVerified;
|
|
131
|
-
var nodeQueryMaps = [
|
|
132
|
-
{
|
|
133
|
-
nodeQuery: termNodeQuery,
|
|
134
|
-
verifyNode: function(node, localContext, verifyAhead) {
|
|
135
|
-
var nonTerminalNodeVerified;
|
|
136
|
-
var termNode = node, termNodeVerified = _this.verifyTermNode(termNode, localContext, verifyAhead);
|
|
137
|
-
nonTerminalNodeVerified = termNodeVerified; ///
|
|
138
|
-
return nonTerminalNodeVerified;
|
|
139
|
-
}
|
|
140
|
-
},
|
|
141
|
-
{
|
|
142
|
-
nodeQuery: variableNodeQuery,
|
|
143
|
-
verifyNode: function(node, localContext, verifyAhead) {
|
|
144
|
-
var nonTerminalNodeVerified;
|
|
145
|
-
var variableNode = node, variableNodeVerified = _this.verifyVariableNode(variableNode, localContext, verifyAhead);
|
|
146
|
-
nonTerminalNodeVerified = variableNodeVerified; ///
|
|
147
|
-
return nonTerminalNodeVerified;
|
|
148
|
-
}
|
|
149
|
-
},
|
|
150
|
-
{
|
|
151
|
-
nodeQuery: metavariableNodeQuery,
|
|
152
|
-
verifyNode: function(node, localContext, verifyAhead) {
|
|
153
|
-
var nonTerminalNodeVerified;
|
|
154
|
-
var metavariableNode = node, metavariableNodeVerified = _this.verifyMetavariableNode(metavariableNode, localContext, verifyAhead);
|
|
155
|
-
nonTerminalNodeVerified = metavariableNodeVerified; ///
|
|
156
|
-
return nonTerminalNodeVerified;
|
|
157
|
-
}
|
|
158
|
-
},
|
|
159
|
-
{
|
|
160
|
-
nodeQuery: nonTerminalNodeQuery,
|
|
161
|
-
verifyNode: function(node, localContext, verifyAhead) {
|
|
162
|
-
var nonTerminalNodeVerified;
|
|
163
|
-
var _$nonTerminalNode = node; ///
|
|
164
|
-
nonTerminalNodeVerified = _get(_get_prototype_of(MetaLevelNodeVerifier.prototype), "verifyNonTerminalNode", _this).call(_this, _$nonTerminalNode, localContext, verifyAhead);
|
|
165
|
-
return nonTerminalNodeVerified;
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
];
|
|
169
|
-
var nodeVerified = (0, _verifier.verifyNode)(nodeQueryMaps, nonTerminalNode, localContext, verifyAhead);
|
|
170
|
-
nonTerminalNodeVerified = nodeVerified; ///
|
|
171
|
-
return nonTerminalNodeVerified;
|
|
172
|
-
}
|
|
173
|
-
},
|
|
174
|
-
{
|
|
175
|
-
key: "verifyMetavariableNode",
|
|
176
|
-
value: function verifyMetavariableNode(metavariableNode, localContext, verifyAhead) {
|
|
177
|
-
var standaloneMetavariableVerified = (0, _metavariable.verifyStandaloneMetavariable)(metavariableNode, localContext, verifyAhead), metavariableNodeVerified = standaloneMetavariableVerified; ///
|
|
178
|
-
return metavariableNodeVerified;
|
|
179
|
-
}
|
|
180
|
-
},
|
|
181
|
-
{
|
|
182
|
-
key: "verifyVariableNode",
|
|
183
|
-
value: function verifyVariableNode(variableNode, localContext, verifyAhead) {
|
|
184
|
-
var standaloneVariableVerified = (0, _variable.verifyStandaloneVariable)(variableNode, localContext, verifyAhead), variableNodeVerified = standaloneVariableVerified; ///
|
|
185
|
-
return variableNodeVerified;
|
|
186
|
-
}
|
|
187
|
-
},
|
|
188
|
-
{
|
|
189
|
-
key: "verifyTermNode",
|
|
190
|
-
value: function verifyTermNode(termNode, localContext, verifyAhead) {
|
|
191
|
-
var standaloneTermVerified = (0, _term.verifyStandaloneTerm)(termNode, localContext, verifyAhead), termNodeVerified = standaloneTermVerified; ///
|
|
192
|
-
return termNodeVerified;
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
]);
|
|
196
|
-
return MetaLevelNodeVerifier;
|
|
197
|
-
}(_node.default);
|
|
198
|
-
var metaLevelNodeVerifier = new MetaLevelNodeVerifier();
|
|
199
|
-
var _default = metaLevelNodeVerifier;
|
|
200
|
-
|
|
201
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZmllci9ub2RlL21ldGFMZXZlbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IE5vZGVWZXJpZmllciBmcm9tIFwiLi4vLi4vdmVyaWZpZXIvbm9kZVwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyB2ZXJpZnlOb2RlIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy92ZXJpZmllclwiO1xuaW1wb3J0IHsgdmVyaWZ5U3RhbmRhbG9uZVRlcm0gfSBmcm9tIFwiLi4vLi4vdmVyaWZ5L3Rlcm1cIjtcbmltcG9ydCB7IHZlcmlmeVN0YW5kYWxvbmVWYXJpYWJsZSB9IGZyb20gXCIuLi8uLi92ZXJpZnkvdmFyaWFibGVcIjtcbmltcG9ydCB7IHZlcmlmeVN0YW5kYWxvbmVNZXRhdmFyaWFibGUgfSBmcm9tIFwiLi4vLi4vdmVyaWZ5L21ldGF2YXJpYWJsZVwiO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Rlcm0hXCIpLFxuICAgICAgdmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdmFyaWFibGUhXCIpLFxuICAgICAgbm9uVGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvKlwiKSxcbiAgICAgIG1ldGF2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhdmFyaWFibGUhXCIpO1xuXG5jbGFzcyBNZXRhTGV2ZWxOb2RlVmVyaWZpZXIgZXh0ZW5kcyBOb2RlVmVyaWZpZXIge1xuICB2ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlLCBsb2NhbENvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gICAgbGV0IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuXG4gICAgY29uc3Qgbm9kZVF1ZXJ5TWFwcyA9IFtcbiAgICAgIHtcbiAgICAgICAgbm9kZVF1ZXJ5OiB0ZXJtTm9kZVF1ZXJ5LFxuICAgICAgICB2ZXJpZnlOb2RlOiAobm9kZSwgbG9jYWxDb250ZXh0LCB2ZXJpZnlBaGVhZCkgPT4ge1xuICAgICAgICAgIGxldCBub25UZXJtaW5hbE5vZGVWZXJpZmllZDtcblxuICAgICAgICAgIGNvbnN0IHRlcm1Ob2RlID0gbm9kZSwgLy8vXG4gICAgICAgICAgICAgICAgdGVybU5vZGVWZXJpZmllZCA9IHRoaXMudmVyaWZ5VGVybU5vZGUodGVybU5vZGUsIGxvY2FsQ29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSB0ZXJtTm9kZVZlcmlmaWVkOyAvLy9cblxuICAgICAgICAgIHJldHVybiBub25UZXJtaW5hbE5vZGVWZXJpZmllZDtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbm9kZVF1ZXJ5OiB2YXJpYWJsZU5vZGVRdWVyeSxcbiAgICAgICAgdmVyaWZ5Tm9kZTogKG5vZGUsIGxvY2FsQ29udGV4dCwgdmVyaWZ5QWhlYWQpID0+IHtcbiAgICAgICAgICBsZXQgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG5cbiAgICAgICAgICBjb25zdCB2YXJpYWJsZU5vZGUgPSBub2RlLCAvLy9cbiAgICAgICAgICAgICAgICB2YXJpYWJsZU5vZGVWZXJpZmllZCA9IHRoaXMudmVyaWZ5VmFyaWFibGVOb2RlKHZhcmlhYmxlTm9kZSwgbG9jYWxDb250ZXh0LCB2ZXJpZnlBaGVhZCk7XG5cbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHZhcmlhYmxlTm9kZVZlcmlmaWVkOyAvLy9cblxuICAgICAgICAgIHJldHVybiBub25UZXJtaW5hbE5vZGVWZXJpZmllZDtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbm9kZVF1ZXJ5OiBtZXRhdmFyaWFibGVOb2RlUXVlcnksXG4gICAgICAgIHZlcmlmeU5vZGU6IChub2RlLCBsb2NhbENvbnRleHQsIHZlcmlmeUFoZWFkKSA9PiB7XG4gICAgICAgICAgbGV0IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuXG4gICAgICAgICAgY29uc3QgbWV0YXZhcmlhYmxlTm9kZSA9IG5vZGUsIC8vL1xuICAgICAgICAgICAgICAgIG1ldGF2YXJpYWJsZU5vZGVWZXJpZmllZCA9IHRoaXMudmVyaWZ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlLCBsb2NhbENvbnRleHQsIHZlcmlmeUFoZWFkKTtcblxuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gbWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkOyAvLy9cblxuICAgICAgICAgIHJldHVybiBub25UZXJtaW5hbE5vZGVWZXJpZmllZDtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbm9kZVF1ZXJ5OiBub25UZXJtaW5hbE5vZGVRdWVyeSxcbiAgICAgICAgdmVyaWZ5Tm9kZTogKG5vZGUsIGxvY2FsQ29udGV4dCwgdmVyaWZ5QWhlYWQpID0+IHtcbiAgICAgICAgICBsZXQgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG5cbiAgICAgICAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBub2RlOyAvLy9cblxuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID1cblxuICAgICAgICAgICAgc3VwZXIudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgbG9jYWxDb250ZXh0LCB2ZXJpZnlBaGVhZCk7XG5cbiAgICAgICAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBdO1xuXG4gICAgY29uc3Qgbm9kZVZlcmlmaWVkID0gdmVyaWZ5Tm9kZShub2RlUXVlcnlNYXBzLCBub25UZXJtaW5hbE5vZGUsIGxvY2FsQ29udGV4dCwgdmVyaWZ5QWhlYWQpO1xuXG4gICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBub2RlVmVyaWZpZWQ7IC8vL1xuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuICB9XG5cbiAgdmVyaWZ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlLCBsb2NhbENvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gICAgY29uc3Qgc3RhbmRhbG9uZU1ldGF2YXJpYWJsZVZlcmlmaWVkID0gdmVyaWZ5U3RhbmRhbG9uZU1ldGF2YXJpYWJsZShtZXRhdmFyaWFibGVOb2RlLCBsb2NhbENvbnRleHQsIHZlcmlmeUFoZWFkKSxcbiAgICAgICAgICBtZXRhdmFyaWFibGVOb2RlVmVyaWZpZWQgPSBzdGFuZGFsb25lTWV0YXZhcmlhYmxlVmVyaWZpZWQ7ICAvLy9cblxuICAgIHJldHVybiBtZXRhdmFyaWFibGVOb2RlVmVyaWZpZWQ7XG4gIH1cblxuICB2ZXJpZnlWYXJpYWJsZU5vZGUodmFyaWFibGVOb2RlLCBsb2NhbENvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gICAgY29uc3Qgc3RhbmRhbG9uZVZhcmlhYmxlVmVyaWZpZWQgPSB2ZXJpZnlTdGFuZGFsb25lVmFyaWFibGUodmFyaWFibGVOb2RlLCBsb2NhbENvbnRleHQsIHZlcmlmeUFoZWFkKSxcbiAgICAgICAgICB2YXJpYWJsZU5vZGVWZXJpZmllZCA9IHN0YW5kYWxvbmVWYXJpYWJsZVZlcmlmaWVkOyAgLy8vXG5cbiAgICByZXR1cm4gdmFyaWFibGVOb2RlVmVyaWZpZWQ7XG4gIH1cblxuICB2ZXJpZnlUZXJtTm9kZSh0ZXJtTm9kZSwgbG9jYWxDb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICAgIGNvbnN0IHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQgPSB2ZXJpZnlTdGFuZGFsb25lVGVybSh0ZXJtTm9kZSwgbG9jYWxDb250ZXh0LCB2ZXJpZnlBaGVhZCksXG4gICAgICAgICAgdGVybU5vZGVWZXJpZmllZCA9IHN0YW5kYWxvbmVUZXJtVmVyaWZpZWQ7ICAvLy9cblxuICAgIHJldHVybiB0ZXJtTm9kZVZlcmlmaWVkO1xuICB9XG59XG5cbmNvbnN0IG1ldGFMZXZlbE5vZGVWZXJpZmllciA9IG5ldyBNZXRhTGV2ZWxOb2RlVmVyaWZpZXIoKTtcblxuZXhwb3J0IGRlZmF1bHQgbWV0YUxldmVsTm9kZVZlcmlmaWVyO1xuIl0sIm5hbWVzIjpbInRlcm1Ob2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ2YXJpYWJsZU5vZGVRdWVyeSIsIm5vblRlcm1pbmFsTm9kZVF1ZXJ5IiwibWV0YXZhcmlhYmxlTm9kZVF1ZXJ5IiwiTWV0YUxldmVsTm9kZVZlcmlmaWVyIiwidmVyaWZ5Tm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlIiwibG9jYWxDb250ZXh0IiwidmVyaWZ5QWhlYWQiLCJub25UZXJtaW5hbE5vZGVWZXJpZmllZCIsIm5vZGVRdWVyeU1hcHMiLCJ2ZXJpZnlOb2RlIiwibm9kZSIsInRlcm1Ob2RlIiwidGVybU5vZGVWZXJpZmllZCIsInZlcmlmeVRlcm1Ob2RlIiwidmFyaWFibGVOb2RlIiwidmFyaWFibGVOb2RlVmVyaWZpZWQiLCJ2ZXJpZnlWYXJpYWJsZU5vZGUiLCJtZXRhdmFyaWFibGVOb2RlIiwibWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkIiwidmVyaWZ5TWV0YXZhcmlhYmxlTm9kZSIsIm5vZGVWZXJpZmllZCIsInN0YW5kYWxvbmVNZXRhdmFyaWFibGVWZXJpZmllZCIsInZlcmlmeVN0YW5kYWxvbmVNZXRhdmFyaWFibGUiLCJzdGFuZGFsb25lVmFyaWFibGVWZXJpZmllZCIsInZlcmlmeVN0YW5kYWxvbmVWYXJpYWJsZSIsInN0YW5kYWxvbmVUZXJtVmVyaWZpZWQiLCJ2ZXJpZnlTdGFuZGFsb25lVGVybSIsIk5vZGVWZXJpZmllciIsIm1ldGFMZXZlbE5vZGVWZXJpZmllciJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBMEdBOzs7ZUFBQTs7OzJEQXhHeUI7cUJBRUM7d0JBQ0M7b0JBQ1U7d0JBQ0k7NEJBQ0k7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
|