occam-verify-cli 0.0.880 → 0.0.881

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.
Files changed (43) hide show
  1. package/lib/assignment/judgement.js +62 -0
  2. package/lib/context/file.js +8 -1
  3. package/lib/context/local.js +19 -7
  4. package/lib/context/localMeta.js +33 -16
  5. package/lib/frame.js +66 -0
  6. package/lib/judgement.js +68 -0
  7. package/lib/metaType/{label.js → frame.js} +12 -12
  8. package/lib/metaType/{context.js → reference.js} +12 -12
  9. package/lib/metaTypeNames.js +7 -7
  10. package/lib/metaTypes.js +5 -5
  11. package/lib/utilities/name.js +3 -11
  12. package/lib/verify/declaration.js +5 -5
  13. package/lib/verify/frame.js +34 -0
  14. package/lib/verify/judgement.js +80 -21
  15. package/lib/verify/metastatement.js +5 -21
  16. package/lib/verify/metavariable.js +3 -3
  17. package/package.json +2 -2
  18. package/src/assignment/judgement.js +30 -0
  19. package/src/context/file.js +6 -0
  20. package/src/context/local.js +6 -2
  21. package/src/context/localMeta.js +32 -16
  22. package/src/frame.js +27 -0
  23. package/src/judgement.js +28 -0
  24. package/src/metaType/frame.js +18 -0
  25. package/src/metaType/reference.js +18 -0
  26. package/src/metaTypeNames.js +2 -2
  27. package/src/metaTypes.js +4 -4
  28. package/src/utilities/name.js +5 -15
  29. package/src/verify/declaration.js +5 -5
  30. package/src/verify/frame.js +30 -0
  31. package/src/verify/judgement.js +96 -26
  32. package/src/verify/metastatement.js +4 -30
  33. package/src/verify/metavariable.js +2 -2
  34. package/lib/assignment/metaEquality.js +0 -62
  35. package/lib/metaEquality.js +0 -101
  36. package/lib/verify/context.js +0 -34
  37. package/lib/verify/metaEquality.js +0 -69
  38. package/src/assignment/metaEquality.js +0 -30
  39. package/src/metaEquality.js +0 -84
  40. package/src/metaType/context.js +0 -18
  41. package/src/metaType/label.js +0 -18
  42. package/src/verify/context.js +0 -30
  43. package/src/verify/metaEquality.js +0 -83
@@ -7,14 +7,9 @@ const typeTerminalNodeQuery = nodeQuery("/type/@type"),
7
7
  metaTypeTerminalNodeQuery = nodeQuery("/metaType/@meta-type");
8
8
 
9
9
  export function typeNameFromTypeNode(typeNode) {
10
- let typeName = null;
11
-
12
- if (typeNode !== null) {
13
- const typeTerminalNode = typeTerminalNodeQuery(typeNode),
14
- typeTerminalNodeContent = typeTerminalNode.getContent();
15
-
16
- typeName = typeTerminalNodeContent; ///
17
- }
10
+ const typeTerminalNode = typeTerminalNodeQuery(typeNode),
11
+ typeTerminalNodeContent = typeTerminalNode.getContent(),
12
+ typeName = typeTerminalNodeContent; ///
18
13
 
19
14
  return typeName;
20
15
  }
@@ -28,14 +23,9 @@ export function nameFromMetavariableNode(metavariableNode) {
28
23
  }
29
24
 
30
25
  export function metaTypeNameFromMetaTypeNode(metaTypeNode) {
31
- let metaTypeName = null;
32
-
33
- if (metaTypeNode !== null) {
34
26
  const metaTypeTerminalNode = metaTypeTerminalNodeQuery(metaTypeNode),
35
- metaTypeTerminalNodeContent = metaTypeTerminalNode.getContent();
36
-
37
- metaTypeName = metaTypeTerminalNodeContent; ///
38
- }
27
+ metaTypeTerminalNodeContent = metaTypeTerminalNode.getContent(),
28
+ metaTypeName = metaTypeTerminalNodeContent; ///
39
29
 
40
30
  return metaTypeName;
41
31
  }
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- import labelMetaType from "../metaType/label";
3
+ import referenceMetaType from "../metaType/reference";
4
4
  import metastatementNodeVerifier from "../verifier/node/metastatement";
5
5
 
6
6
  import { nodeQuery } from "../utilities/query";
@@ -21,7 +21,7 @@ export default function verifyDeclaration(declarationNode, derived, localMetaCon
21
21
  if (metavariable !== null) {
22
22
  const metaType = metavariable.getMetaType();
23
23
 
24
- if (metaType === labelMetaType) {
24
+ if (metaType === referenceMetaType) {
25
25
  const metastatementNode = metastatementNodeQuery(declarationNode);
26
26
 
27
27
  if (metastatementNode !== null) {
@@ -36,11 +36,11 @@ export default function verifyDeclaration(declarationNode, derived, localMetaCon
36
36
  declarationVerified = metastatementVerified; ///
37
37
  }
38
38
  } else {
39
- const metavariableString = localMetaContext.nodeAsString(metavariableNode),
40
- labelMetaTypeName = labelMetaType.getName(),
39
+ const referenceMetaTypeName = referenceMetaType.getName(),
40
+ metavariableString = localMetaContext.nodeAsString(metavariableNode),
41
41
  metaTypeString = metaType.asString();
42
42
 
43
- localMetaContext.debug(`The '${metavariableString}' metavariable's meta-type is '${metaTypeString}' when it should be '${labelMetaTypeName}'.`, declarationNode);
43
+ localMetaContext.debug(`The '${metavariableString}' metavariable's meta-type is '${metaTypeString}' when it should be '${referenceMetaTypeName}'.`, declarationNode);
44
44
  }
45
45
  }
46
46
 
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ import verifyDeclaration from "../verify/declaration";
4
+
5
+ import { nodesQuery } from "../utilities/query";
6
+
7
+ const declarationNodesQuery = nodesQuery("/frame/declaration");
8
+
9
+ export default function verifyFrame(frameNode, derived, localMetaContext) {
10
+ let frameVerified;
11
+
12
+ const frameString = localMetaContext.nodeAsString(frameNode);
13
+
14
+ localMetaContext.trace(`Verifying the '${frameString}' frame...`, frameNode);
15
+
16
+ const declarationNodes = declarationNodesQuery(frameNode),
17
+ declarationsVerified = declarationNodes.every((declarationNode) => {
18
+ const declarationVerified = verifyDeclaration(declarationNode, derived, localMetaContext);
19
+
20
+ return declarationVerified;
21
+ });
22
+
23
+ frameVerified = declarationsVerified; ///
24
+
25
+ if (frameVerified) {
26
+ localMetaContext.debug(`...verified the '${frameString}' frame.`, frameNode);
27
+ }
28
+
29
+ return frameVerified;
30
+ }
@@ -1,44 +1,32 @@
1
1
  "use strict";
2
2
 
3
- import verifyContext from "../verify/context";
4
- import contextMetaType from "../metaType/context";
3
+ import verifyFrame from "../verify/frame";
4
+ import frameMetaType from "../metaType/frame";
5
5
 
6
6
  import { nodeQuery } from "../utilities/query";
7
7
 
8
- const contextNodeQuery = nodeQuery("/judgement/metastatement/context!"),
8
+ const frameNodeQuery = nodeQuery("/judgement/frame!"),
9
9
  metavariableNodeQuery = nodeQuery("/judgement/metavariable!");
10
10
 
11
- export default function verifyJudgement(judgementNode, derived, localMetaContext) {
12
- let judgementVerified = false;
11
+ export default function verifyJudgement(judgementNode, assignments, derived, localMetaContext) {
12
+ let judgementVerified;
13
13
 
14
14
  const judgementString = localMetaContext.nodeAsString(judgementNode);
15
15
 
16
16
  localMetaContext.trace(`Verifying the '${judgementString}' judgement...`, judgementNode);
17
17
 
18
- const metavariableNode = metavariableNodeQuery(judgementNode),
19
- metavariable = localMetaContext.findMetavariableByMetavariableNode(metavariableNode, localMetaContext);
18
+ const verifyJudgementFunctions = [
19
+ verifyDerivedJudgement,
20
+ verifyStatedJudgement
21
+ ];
20
22
 
21
- if (metavariable !== null) {
22
- const metaType = metavariable.getMetaType();
23
+ judgementVerified = verifyJudgementFunctions.some((verifyJudgementFunction) => {
24
+ const judgementVerified = verifyJudgementFunction(judgementNode, assignments, derived, localMetaContext);
23
25
 
24
- if (metaType === contextMetaType) {
25
- const contextNode = contextNodeQuery(judgementNode);
26
-
27
- if (contextNode !== null) {
28
- const contextVerified = verifyContext(contextNode, derived, localMetaContext);
29
-
30
- judgementVerified = contextVerified; ///
31
- } else {
32
- localMetaContext.debug(`The right hand side of the '${judgementString}' judgement must be a context.`, judgementNode);
33
- }
34
- } else {
35
- const contextMetaTypeName = contextMetaType.getName(),
36
- metavariableString = localMetaContext.nodeAsString(metavariableNode),
37
- metaTypeString = metaType.asString();
38
-
39
- localMetaContext.debug(`The '${metavariableString}' metavariable's meta-type is '${metaTypeString}' when it should be '${contextMetaTypeName}'.`, judgementNode);
26
+ if (judgementVerified) {
27
+ return true;
40
28
  }
41
- }
29
+ });
42
30
 
43
31
  if (judgementVerified) {
44
32
  localMetaContext.debug(`...verified the '${judgementString}' judgement.`, judgementNode);
@@ -46,3 +34,85 @@ export default function verifyJudgement(judgementNode, derived, localMetaContext
46
34
 
47
35
  return judgementVerified;
48
36
  }
37
+
38
+ function verifyDerivedJudgement(judgementNode, assignments, derived, localMetaContext) {
39
+ let derivedJudgementVerified = false;
40
+
41
+ if (derived) {
42
+ // const judgementString = localMetaContext.nodeAsString(judgementNode);
43
+ //
44
+ // localMetaContext.trace(`Verifying the '${judgementString}' derived judgement...`, judgementNode);
45
+ //
46
+ // const metavariableNode = metavariableNodeQuery(judgementNode),
47
+ // metavariable = localMetaContext.findMetavariableByMetavariableNode(metavariableNode, localMetaContext);
48
+ //
49
+ // if (metavariable !== null) {
50
+ // const metaType = metavariable.getMetaType();
51
+ //
52
+ // if (metaType === frameMetaType) {
53
+ // const frameNode = frameNodeQuery(judgementNode);
54
+ //
55
+ // if (frameNode !== null) {
56
+ // const frameVerified = verifyFrame(frameNode, derived, localMetaContext);
57
+ //
58
+ // derivedJudgementVerified = frameVerified; ///
59
+ // } else {
60
+ // localMetaContext.debug(`The right hand side of the '${judgementString}' judgement must be a frame.`, judgementNode);
61
+ // }
62
+ // } else {
63
+ // const frameMetaTypeName = frameMetaType.getName(),
64
+ // metavariableString = localMetaContext.nodeAsString(metavariableNode),
65
+ // metaTypeString = metaType.asString();
66
+ //
67
+ // localMetaContext.debug(`The '${metavariableString}' metavariable's meta-type is '${metaTypeString}' when it should be '${frameMetaTypeName}'.`, judgementNode);
68
+ // }
69
+ // }
70
+ //
71
+ // if (derivedJudgementVerified) {
72
+ // localMetaContext.debug(`...verified the '${judgementString}' derived judgement.`, judgementNode);
73
+ // }
74
+ }
75
+
76
+ return derivedJudgementVerified;
77
+ }
78
+
79
+ function verifyStatedJudgement(judgementNode, assignments, derived, localMetaContext) {
80
+ let statedJudgementVerified = false;
81
+
82
+ if (!derived) {
83
+ const judgementString = localMetaContext.nodeAsString(judgementNode);
84
+
85
+ localMetaContext.trace(`Verifying the '${judgementString}' stated judgement...`, judgementNode);
86
+
87
+ const metavariableNode = metavariableNodeQuery(judgementNode),
88
+ metavariable = localMetaContext.findMetavariableByMetavariableNode(metavariableNode, localMetaContext);
89
+
90
+ if (metavariable !== null) {
91
+ const metaType = metavariable.getMetaType();
92
+
93
+ if (metaType === frameMetaType) {
94
+ const frameNode = frameNodeQuery(judgementNode);
95
+
96
+ if (frameNode !== null) {
97
+ const frameVerified = verifyFrame(frameNode, derived, localMetaContext);
98
+
99
+ statedJudgementVerified = frameVerified; ///
100
+ } else {
101
+ localMetaContext.debug(`The right hand side of the '${judgementString}' judgement must be a frame.`, judgementNode);
102
+ }
103
+ } else {
104
+ const frameMetaTypeName = frameMetaType.getName(),
105
+ metavariableString = localMetaContext.nodeAsString(metavariableNode),
106
+ metaTypeString = metaType.asString();
107
+
108
+ localMetaContext.debug(`The '${metavariableString}' metavariable's meta-type is '${metaTypeString}' when it should be '${frameMetaTypeName}'.`, judgementNode);
109
+ }
110
+ }
111
+
112
+ if (statedJudgementVerified) {
113
+ localMetaContext.debug(`...verified the '${judgementString}' stated judgement.`, judgementNode);
114
+ }
115
+ }
116
+
117
+ return statedJudgementVerified;
118
+ }
@@ -1,13 +1,11 @@
1
1
  "use strict";
2
2
 
3
3
  import verifyJudgement from "../verify/judgement";
4
- import verifyMetaEquality from "../verify/metaEquality";
5
4
  import metastatementNodeVerifier from "../verifier/node/metastatement";
6
5
 
7
6
  import { nodeQuery } from "../utilities/query";
8
7
 
9
- const judgementNodeQuery = nodeQuery("/metastatement/judgement!"),
10
- metaEqualityNodeQuery = nodeQuery("/metastatement/metaEquality!");
8
+ const judgementNodeQuery = nodeQuery("/metastatement/judgement!");
11
9
 
12
10
  function verifyMetastatement(metastatementNode, assignments, derived, localMetaContext) {
13
11
  let metastatementVerified;
@@ -17,7 +15,6 @@ function verifyMetastatement(metastatementNode, assignments, derived, localMetaC
17
15
  localMetaContext.trace(`Verifying the '${metastatementString}' metastatement...`, metastatementNode);
18
16
 
19
17
  const verifyMetaStatementFunctions = [
20
- verifyMetastatementAsMetaEquality,
21
18
  verifyMetastatementAsJudgement,
22
19
  verifyMetastatementAsIs
23
20
  ];
@@ -43,28 +40,6 @@ Object.assign(metastatementNodeVerifier, {
43
40
 
44
41
  export default verifyMetastatement;
45
42
 
46
- function verifyMetastatementAsMetaEquality(metastatementNode, assignments, derived, localMetaContext) {
47
- let metastatementVerifiedAsMetaEquality = false;
48
-
49
- const metaEqualityNode = metaEqualityNodeQuery(metastatementNode);
50
-
51
- if (metaEqualityNode !== null) {
52
- const metastatementString = localMetaContext.nodeAsString(metastatementNode);
53
-
54
- localMetaContext.trace(`Verifying the '${metastatementString}' metastatement as a meta-equality...`, metastatementNode);
55
-
56
- const metaEqualityVerified = verifyMetaEquality(metaEqualityNode, assignments, derived, localMetaContext);
57
-
58
- metastatementVerifiedAsMetaEquality = metaEqualityVerified; ///
59
-
60
- if (metastatementVerifiedAsMetaEquality) {
61
- localMetaContext.debug(`...verified the '${metastatementString}' metastatement as a meta-equality.`, metastatementNode);
62
- }
63
- }
64
-
65
- return metastatementVerifiedAsMetaEquality;
66
- }
67
-
68
43
  function verifyMetastatementAsJudgement(metastatementNode, assignments, derived, localMetaContext) {
69
44
  let metastatementVerifiedAsJudgement = false;
70
45
 
@@ -75,7 +50,7 @@ function verifyMetastatementAsJudgement(metastatementNode, assignments, derived,
75
50
 
76
51
  localMetaContext.trace(`Verifying the '${metastatementString}' metastatement as a judgement...`, metastatementNode);
77
52
 
78
- const judgementVerified = verifyJudgement(judgementNode, derived, localMetaContext);
53
+ const judgementVerified = verifyJudgement(judgementNode, assignments, derived, localMetaContext);
79
54
 
80
55
  metastatementVerifiedAsJudgement = judgementVerified; ///
81
56
 
@@ -90,10 +65,9 @@ function verifyMetastatementAsJudgement(metastatementNode, assignments, derived,
90
65
  function verifyMetastatementAsIs(metastatementNode, assignments, derived, localMetaContext) {
91
66
  let metastatementVerifiedAsIs = false;
92
67
 
93
- const judgementNode = judgementNodeQuery(metastatementNode),
94
- metaEqualityNode = metaEqualityNodeQuery(metastatementNode);
68
+ const judgementNode = judgementNodeQuery(metastatementNode);
95
69
 
96
- if ((judgementNode === null) && (metaEqualityNode === null)) {
70
+ if (judgementNode === null) {
97
71
  const metastatementString = localMetaContext.nodeAsString(metastatementNode);
98
72
 
99
73
  localMetaContext.trace(`Verifying the '${metastatementString}' metastatement as is...`, metastatementNode);
@@ -18,8 +18,7 @@ export default function verifyMetavariable(metavariableNode, metaTypeNode, fileC
18
18
 
19
19
  fileContext.trace(`Verifying the '${metavariableString}' metavariable...`, metavariableNode);
20
20
 
21
- const name = nameFromMetavariableNode(metavariableNode),
22
- metavariablePresent = fileContext.isMetavariablePresentByName(name);
21
+ const metavariablePresent = fileContext.isMetavariablePresentByMetavariableNode(metavariableNode);
23
22
 
24
23
  if (metavariablePresent) {
25
24
  fileContext.debug(`The metavariable '${metavariableString}' is already present.`, metavariableNode);
@@ -49,6 +48,7 @@ export default function verifyMetavariable(metavariableNode, metaTypeNode, fileC
49
48
  }
50
49
 
51
50
  const node = metavariableNode, ///
51
+ name = nameFromMetavariableNode(metavariableNode),
52
52
  metavariable = Metavariable.fromNodeNameTermTypeAndMetaType(node, name, termType, metaType),
53
53
  metavariableAssignment = MetavariableAssignment.fromMetavariable(metavariable),
54
54
  metavariableAssigned = metavariableAssignment.assign(fileContext);
@@ -1,62 +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 MetaEqualityAssignment;
9
- }
10
- });
11
- function _class_call_check(instance, Constructor) {
12
- if (!(instance instanceof Constructor)) {
13
- throw new TypeError("Cannot call a class as a function");
14
- }
15
- }
16
- function _defineProperties(target, props) {
17
- for(var i = 0; i < props.length; i++){
18
- var descriptor = props[i];
19
- descriptor.enumerable = descriptor.enumerable || false;
20
- descriptor.configurable = true;
21
- if ("value" in descriptor) descriptor.writable = true;
22
- Object.defineProperty(target, descriptor.key, descriptor);
23
- }
24
- }
25
- function _create_class(Constructor, protoProps, staticProps) {
26
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
27
- if (staticProps) _defineProperties(Constructor, staticProps);
28
- return Constructor;
29
- }
30
- var MetaEqualityAssignment = /*#__PURE__*/ function() {
31
- function MetaEqualityAssignment(metaEquality) {
32
- _class_call_check(this, MetaEqualityAssignment);
33
- this.metaEquality = metaEquality;
34
- }
35
- _create_class(MetaEqualityAssignment, [
36
- {
37
- key: "getMetaEquality",
38
- value: function getMetaEquality() {
39
- return this.metaEquality;
40
- }
41
- },
42
- {
43
- key: "assign",
44
- value: function assign(localMetaContext) {
45
- var metaEqualityAdded = localMetaContext.addMetaEquality(this.metaEquality), metaEqualityNode = this.metaEquality.getNode(), metaEqualityString = localMetaContext.nodeAsString(metaEqualityNode), metaEqualityAssigned = metaEqualityAdded; ///
46
- metaEqualityAssigned ? localMetaContext.trace("Assigned the '".concat(metaEqualityString, "' meta-equality."), metaEqualityNode) : localMetaContext.debug("Unable to assign the '".concat(metaEqualityString, "' meta-equality."), metaEqualityNode);
47
- return metaEqualityAssigned;
48
- }
49
- }
50
- ], [
51
- {
52
- key: "fromMetaEquality",
53
- value: function fromMetaEquality(metaEquality) {
54
- var metaEqualityAssignment = new MetaEqualityAssignment(metaEquality);
55
- return metaEqualityAssignment;
56
- }
57
- }
58
- ]);
59
- return MetaEqualityAssignment;
60
- }();
61
-
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hc3NpZ25tZW50L21ldGFFcXVhbGl0eS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTWV0YUVxdWFsaXR5QXNzaWdubWVudCB7XG4gIGNvbnN0cnVjdG9yKG1ldGFFcXVhbGl0eSkge1xuICAgIHRoaXMubWV0YUVxdWFsaXR5ID0gbWV0YUVxdWFsaXR5O1xuICB9XG5cbiAgZ2V0TWV0YUVxdWFsaXR5KCkge1xuICAgIHJldHVybiB0aGlzLm1ldGFFcXVhbGl0eTtcbiAgfVxuXG4gIGFzc2lnbihsb2NhbE1ldGFDb250ZXh0KSB7XG4gICAgY29uc3QgbWV0YUVxdWFsaXR5QWRkZWQgPSBsb2NhbE1ldGFDb250ZXh0LmFkZE1ldGFFcXVhbGl0eSh0aGlzLm1ldGFFcXVhbGl0eSksXG4gICAgICAgICAgbWV0YUVxdWFsaXR5Tm9kZSA9IHRoaXMubWV0YUVxdWFsaXR5LmdldE5vZGUoKSxcbiAgICAgICAgICBtZXRhRXF1YWxpdHlTdHJpbmcgPSBsb2NhbE1ldGFDb250ZXh0Lm5vZGVBc1N0cmluZyhtZXRhRXF1YWxpdHlOb2RlKSxcbiAgICAgICAgICBtZXRhRXF1YWxpdHlBc3NpZ25lZCA9IG1ldGFFcXVhbGl0eUFkZGVkOyAvLy9cblxuICAgIG1ldGFFcXVhbGl0eUFzc2lnbmVkID9cbiAgICAgIGxvY2FsTWV0YUNvbnRleHQudHJhY2UoYEFzc2lnbmVkIHRoZSAnJHttZXRhRXF1YWxpdHlTdHJpbmd9JyBtZXRhLWVxdWFsaXR5LmAsIG1ldGFFcXVhbGl0eU5vZGUpIDpcbiAgICAgICAgbG9jYWxNZXRhQ29udGV4dC5kZWJ1ZyhgVW5hYmxlIHRvIGFzc2lnbiB0aGUgJyR7bWV0YUVxdWFsaXR5U3RyaW5nfScgbWV0YS1lcXVhbGl0eS5gLCBtZXRhRXF1YWxpdHlOb2RlKTtcblxuICAgIHJldHVybiBtZXRhRXF1YWxpdHlBc3NpZ25lZDtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTWV0YUVxdWFsaXR5KG1ldGFFcXVhbGl0eSkge1xuICAgIGNvbnN0IG1ldGFFcXVhbGl0eUFzc2lnbm1lbnQgPSBuZXcgTWV0YUVxdWFsaXR5QXNzaWdubWVudChtZXRhRXF1YWxpdHkpO1xuXG4gICAgcmV0dXJuIG1ldGFFcXVhbGl0eUFzc2lnbm1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJNZXRhRXF1YWxpdHlBc3NpZ25tZW50IiwibWV0YUVxdWFsaXR5IiwiZ2V0TWV0YUVxdWFsaXR5IiwiYXNzaWduIiwibG9jYWxNZXRhQ29udGV4dCIsIm1ldGFFcXVhbGl0eUFkZGVkIiwiYWRkTWV0YUVxdWFsaXR5IiwibWV0YUVxdWFsaXR5Tm9kZSIsImdldE5vZGUiLCJtZXRhRXF1YWxpdHlTdHJpbmciLCJub2RlQXNTdHJpbmciLCJtZXRhRXF1YWxpdHlBc3NpZ25lZCIsInRyYWNlIiwiZGVidWciLCJmcm9tTWV0YUVxdWFsaXR5IiwibWV0YUVxdWFsaXR5QXNzaWdubWVudCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFFcUJBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQU4sSUFBQSxBQUFNQSx1Q0FBRCxBQUFMO2FBQU1BLHVCQUNQQyxZQUFZO2dDQURMRDtRQUVqQixJQUFJLENBQUNDLFlBQVksR0FBR0E7O2tCQUZIRDs7WUFLbkJFLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0QsWUFBWTtZQUMxQjs7O1lBRUFFLEtBQUFBO21CQUFBQSxTQUFBQSxPQUFPQyxnQkFBZ0I7Z0JBQ3JCLElBQU1DLG9CQUFvQkQsaUJBQWlCRSxlQUFlLENBQUMsSUFBSSxDQUFDTCxZQUFZLEdBQ3RFTSxtQkFBbUIsSUFBSSxDQUFDTixZQUFZLENBQUNPLE9BQU8sSUFDNUNDLHFCQUFxQkwsaUJBQWlCTSxZQUFZLENBQUNILG1CQUNuREksdUJBQXVCTixtQkFBbUIsR0FBRztnQkFFbkRNLHVCQUNFUCxpQkFBaUJRLEtBQUssQ0FBQyxBQUFDLGlCQUFtQyxPQUFuQkgsb0JBQW1CLHFCQUFtQkYsb0JBQzVFSCxpQkFBaUJTLEtBQUssQ0FBQyxBQUFDLHlCQUEyQyxPQUFuQkosb0JBQW1CLHFCQUFtQkY7Z0JBRTFGLE9BQU9JO1lBQ1Q7Ozs7WUFFT0csS0FBQUE7bUJBQVAsU0FBT0EsaUJBQWlCYixZQUFZO2dCQUNsQyxJQUFNYyx5QkFBeUIsSUF2QmRmLHVCQXVCeUNDO2dCQUUxRCxPQUFPYztZQUNUOzs7V0ExQm1CZiJ9
@@ -1,101 +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 MetaEquality;
9
- }
10
- });
11
- var _context = /*#__PURE__*/ _interop_require_default(require("./metaType/context"));
12
- var _metastatement = /*#__PURE__*/ _interop_require_default(require("./verifier/node/metastatement"));
13
- var _query = require("./utilities/query");
14
- var _array = require("./utilities/array");
15
- function _class_call_check(instance, Constructor) {
16
- if (!(instance instanceof Constructor)) {
17
- throw new TypeError("Cannot call a class as a function");
18
- }
19
- }
20
- function _defineProperties(target, props) {
21
- for(var i = 0; i < props.length; i++){
22
- var descriptor = props[i];
23
- descriptor.enumerable = descriptor.enumerable || false;
24
- descriptor.configurable = true;
25
- if ("value" in descriptor) descriptor.writable = true;
26
- Object.defineProperty(target, descriptor.key, descriptor);
27
- }
28
- }
29
- function _create_class(Constructor, protoProps, staticProps) {
30
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
31
- if (staticProps) _defineProperties(Constructor, staticProps);
32
- return Constructor;
33
- }
34
- function _interop_require_default(obj) {
35
- return obj && obj.__esModule ? obj : {
36
- default: obj
37
- };
38
- }
39
- var contextNodeQuery = (0, _query.nodeQuery)("/metastatement/context!"), metaVariableNodeQuery = (0, _query.nodeQuery)("/metastatement/metavariable!");
40
- var MetaEquality = /*#__PURE__*/ function() {
41
- function MetaEquality(node, metaType) {
42
- _class_call_check(this, MetaEquality);
43
- this.node = node;
44
- this.metaType = metaType;
45
- }
46
- _create_class(MetaEquality, [
47
- {
48
- key: "getNode",
49
- value: function getNode() {
50
- return this.node;
51
- }
52
- },
53
- {
54
- key: "getMetaType",
55
- value: function getMetaType() {
56
- return this.metaType;
57
- }
58
- }
59
- ], [
60
- {
61
- key: "fromLeftMetastatementNodeRightMetastatementNodeAndMetaEqualityNode",
62
- value: function fromLeftMetastatementNodeRightMetastatementNodeAndMetaEqualityNode(leftMetastatementNode, rightMetastatementNode, metaEqualityNode, localMetaContext) {
63
- var metaEquality = null;
64
- var metaTypes = [], leftMetastatementVerifiedAsMetavariableOrContext = verifyMetastatementAsMetavariableOrContext(leftMetastatementNode, metaTypes, localMetaContext), rightMetastatementVerifiedAsMetavariableOrContext = verifyMetastatementAsMetavariableOrContext(rightMetastatementNode, metaTypes, localMetaContext);
65
- if (leftMetastatementVerifiedAsMetavariableOrContext && rightMetastatementVerifiedAsMetavariableOrContext) {
66
- var firstMetaType = (0, _array.first)(metaTypes), secondMetaType = (0, _array.second)(metaTypes);
67
- if (firstMetaType === secondMetaType) {
68
- var metaType = firstMetaType, node = metaEqualityNode; ///
69
- metaEquality = new MetaEquality(node, metaType);
70
- }
71
- }
72
- return metaEquality;
73
- }
74
- }
75
- ]);
76
- return MetaEquality;
77
- }();
78
- function verifyMetastatementAsMetavariableOrContext(metastatementNode, metaTypes, localMetaContext) {
79
- var metastatementVerifiedAsMetavariableOrContext = false;
80
- var verifyMetastatement = _metastatement.default.verifyMetastatement, derived = false, assignments = [], metastatementVerified = verifyMetastatement(metastatementNode, assignments, derived, localMetaContext, function() {
81
- var verifiedAhead = true;
82
- return verifiedAhead;
83
- });
84
- if (metastatementVerified) {
85
- var contextNode = contextNodeQuery(metastatementNode), metavariableNode = metaVariableNodeQuery(metastatementNode);
86
- if (false) {
87
- ///
88
- } else if (contextNode !== null) {
89
- var metaType = _context.default; ///
90
- metaTypes.push(metaType);
91
- metastatementVerifiedAsMetavariableOrContext = true;
92
- } else if (metavariableNode !== null) {
93
- var metavariable = localMetaContext.findMetavariableByMetavariableNode(metavariableNode, localMetaContext), metaType1 = metavariable.getMetaType();
94
- metaTypes.push(metaType1);
95
- metastatementVerifiedAsMetavariableOrContext = true;
96
- }
97
- }
98
- return metastatementVerifiedAsMetavariableOrContext;
99
- }
100
-
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXRhRXF1YWxpdHkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBjb250ZXh0TWV0YVR5cGUgZnJvbSBcIi4vbWV0YVR5cGUvY29udGV4dFwiO1xuaW1wb3J0IG1ldGFzdGF0ZW1lbnROb2RlVmVyaWZpZXIgZnJvbSBcIi4vdmVyaWZpZXIvbm9kZS9tZXRhc3RhdGVtZW50XCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgZmlyc3QsIHNlY29uZCB9ICBmcm9tIFwiLi91dGlsaXRpZXMvYXJyYXlcIjtcblxuY29uc3QgY29udGV4dE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhc3RhdGVtZW50L2NvbnRleHQhXCIpLFxuICAgICAgbWV0YVZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL21ldGFzdGF0ZW1lbnQvbWV0YXZhcmlhYmxlIVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTWV0YUVxdWFsaXR5IHtcbiAgY29uc3RydWN0b3Iobm9kZSwgbWV0YVR5cGUpIHtcbiAgICB0aGlzLm5vZGUgPSBub2RlO1xuICAgIHRoaXMubWV0YVR5cGUgPSBtZXRhVHlwZTtcbiAgfVxuXG4gIGdldE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9kZTtcbiAgfVxuXG4gIGdldE1ldGFUeXBlKCkge1xuICAgIHJldHVybiB0aGlzLm1ldGFUeXBlO1xuICB9XG5cbiAgc3RhdGljIGZyb21MZWZ0TWV0YXN0YXRlbWVudE5vZGVSaWdodE1ldGFzdGF0ZW1lbnROb2RlQW5kTWV0YUVxdWFsaXR5Tm9kZShsZWZ0TWV0YXN0YXRlbWVudE5vZGUsIHJpZ2h0TWV0YXN0YXRlbWVudE5vZGUsIG1ldGFFcXVhbGl0eU5vZGUsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgICBsZXQgbWV0YUVxdWFsaXR5ID0gbnVsbDtcblxuICAgIGNvbnN0IG1ldGFUeXBlcyA9IFtdLFxuICAgICAgICAgIGxlZnRNZXRhc3RhdGVtZW50VmVyaWZpZWRBc01ldGF2YXJpYWJsZU9yQ29udGV4dCA9IHZlcmlmeU1ldGFzdGF0ZW1lbnRBc01ldGF2YXJpYWJsZU9yQ29udGV4dChsZWZ0TWV0YXN0YXRlbWVudE5vZGUsIG1ldGFUeXBlcywgbG9jYWxNZXRhQ29udGV4dCksXG4gICAgICAgICAgcmlnaHRNZXRhc3RhdGVtZW50VmVyaWZpZWRBc01ldGF2YXJpYWJsZU9yQ29udGV4dCA9IHZlcmlmeU1ldGFzdGF0ZW1lbnRBc01ldGF2YXJpYWJsZU9yQ29udGV4dChyaWdodE1ldGFzdGF0ZW1lbnROb2RlLCBtZXRhVHlwZXMsIGxvY2FsTWV0YUNvbnRleHQpO1xuXG4gICAgaWYgKGxlZnRNZXRhc3RhdGVtZW50VmVyaWZpZWRBc01ldGF2YXJpYWJsZU9yQ29udGV4dCAmJiByaWdodE1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzTWV0YXZhcmlhYmxlT3JDb250ZXh0KSB7XG4gICAgICBjb25zdCBmaXJzdE1ldGFUeXBlID0gZmlyc3QobWV0YVR5cGVzKSxcbiAgICAgICAgICAgIHNlY29uZE1ldGFUeXBlID0gc2Vjb25kKG1ldGFUeXBlcyk7XG5cbiAgICAgIGlmIChmaXJzdE1ldGFUeXBlID09PSBzZWNvbmRNZXRhVHlwZSkge1xuICAgICAgICBjb25zdCBtZXRhVHlwZSA9IGZpcnN0TWV0YVR5cGUsIC8vL1xuICAgICAgICAgICAgICBub2RlID0gbWV0YUVxdWFsaXR5Tm9kZTsgIC8vL1xuXG4gICAgICAgIG1ldGFFcXVhbGl0eSA9IG5ldyBNZXRhRXF1YWxpdHkobm9kZSwgbWV0YVR5cGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBtZXRhRXF1YWxpdHk7XG4gIH1cbn1cblxuZnVuY3Rpb24gdmVyaWZ5TWV0YXN0YXRlbWVudEFzTWV0YXZhcmlhYmxlT3JDb250ZXh0KG1ldGFzdGF0ZW1lbnROb2RlLCBtZXRhVHlwZXMsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgbGV0IG1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzTWV0YXZhcmlhYmxlT3JDb250ZXh0ID0gZmFsc2U7XG5cbiAgY29uc3QgeyB2ZXJpZnlNZXRhc3RhdGVtZW50IH0gPSBtZXRhc3RhdGVtZW50Tm9kZVZlcmlmaWVyLFxuICAgICAgICBkZXJpdmVkID0gZmFsc2UsICAvLy9cbiAgICAgICAgYXNzaWdubWVudHMgPSBbXSxcbiAgICAgICAgbWV0YXN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5TWV0YXN0YXRlbWVudChtZXRhc3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsTWV0YUNvbnRleHQsICgpID0+IHtcbiAgICAgICAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdHJ1ZTtcblxuICAgICAgICAgIHJldHVybiB2ZXJpZmllZEFoZWFkO1xuICAgICAgICB9KTtcblxuICBpZiAobWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgY29uc3QgY29udGV4dE5vZGUgPSBjb250ZXh0Tm9kZVF1ZXJ5KG1ldGFzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICBtZXRhdmFyaWFibGVOb2RlID0gbWV0YVZhcmlhYmxlTm9kZVF1ZXJ5KG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIGlmIChmYWxzZSkge1xuICAgICAgLy8vXG4gICAgfSBlbHNlIGlmIChjb250ZXh0Tm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgbWV0YVR5cGUgPSBjb250ZXh0TWV0YVR5cGU7IC8vL1xuXG4gICAgICBtZXRhVHlwZXMucHVzaChtZXRhVHlwZSk7XG5cbiAgICAgIG1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzTWV0YXZhcmlhYmxlT3JDb250ZXh0ID0gdHJ1ZTtcbiAgICB9IGVsc2UgaWYgKG1ldGF2YXJpYWJsZU5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG1ldGF2YXJpYWJsZSA9IGxvY2FsTWV0YUNvbnRleHQuZmluZE1ldGF2YXJpYWJsZUJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlLCBsb2NhbE1ldGFDb250ZXh0KSxcbiAgICAgICAgICAgIG1ldGFUeXBlID0gbWV0YXZhcmlhYmxlLmdldE1ldGFUeXBlKCk7XG5cbiAgICAgIG1ldGFUeXBlcy5wdXNoKG1ldGFUeXBlKTtcblxuICAgICAgbWV0YXN0YXRlbWVudFZlcmlmaWVkQXNNZXRhdmFyaWFibGVPckNvbnRleHQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBtZXRhc3RhdGVtZW50VmVyaWZpZWRBc01ldGF2YXJpYWJsZU9yQ29udGV4dDtcbn1cbiJdLCJuYW1lcyI6WyJNZXRhRXF1YWxpdHkiLCJjb250ZXh0Tm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwibWV0YVZhcmlhYmxlTm9kZVF1ZXJ5Iiwibm9kZSIsIm1ldGFUeXBlIiwiZ2V0Tm9kZSIsImdldE1ldGFUeXBlIiwiZnJvbUxlZnRNZXRhc3RhdGVtZW50Tm9kZVJpZ2h0TWV0YXN0YXRlbWVudE5vZGVBbmRNZXRhRXF1YWxpdHlOb2RlIiwibGVmdE1ldGFzdGF0ZW1lbnROb2RlIiwicmlnaHRNZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFFcXVhbGl0eU5vZGUiLCJsb2NhbE1ldGFDb250ZXh0IiwibWV0YUVxdWFsaXR5IiwibWV0YVR5cGVzIiwibGVmdE1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzTWV0YXZhcmlhYmxlT3JDb250ZXh0IiwidmVyaWZ5TWV0YXN0YXRlbWVudEFzTWV0YXZhcmlhYmxlT3JDb250ZXh0IiwicmlnaHRNZXRhc3RhdGVtZW50VmVyaWZpZWRBc01ldGF2YXJpYWJsZU9yQ29udGV4dCIsImZpcnN0TWV0YVR5cGUiLCJmaXJzdCIsInNlY29uZE1ldGFUeXBlIiwic2Vjb25kIiwibWV0YXN0YXRlbWVudE5vZGUiLCJtZXRhc3RhdGVtZW50VmVyaWZpZWRBc01ldGF2YXJpYWJsZU9yQ29udGV4dCIsInZlcmlmeU1ldGFzdGF0ZW1lbnQiLCJtZXRhc3RhdGVtZW50Tm9kZVZlcmlmaWVyIiwiZGVyaXZlZCIsImFzc2lnbm1lbnRzIiwibWV0YXN0YXRlbWVudFZlcmlmaWVkIiwidmVyaWZpZWRBaGVhZCIsImNvbnRleHROb2RlIiwibWV0YXZhcmlhYmxlTm9kZSIsImNvbnRleHRNZXRhVHlwZSIsInB1c2giLCJtZXRhdmFyaWFibGUiLCJmaW5kTWV0YXZhcmlhYmxlQnlNZXRhdmFyaWFibGVOb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQVdxQkE7Ozs4REFUTztvRUFDVTtxQkFFWjtxQkFDSzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUUvQixJQUFNQyxtQkFBbUJDLElBQUFBLGdCQUFTLEVBQUMsNEJBQzdCQyx3QkFBd0JELElBQUFBLGdCQUFTLEVBQUM7QUFFekIsSUFBQSxBQUFNRiw2QkFBRCxBQUFMO2FBQU1BLGFBQ1BJLElBQUksRUFBRUMsUUFBUTtnQ0FEUEw7UUFFakIsSUFBSSxDQUFDSSxJQUFJLEdBQUdBO1FBQ1osSUFBSSxDQUFDQyxRQUFRLEdBQUdBOztrQkFIQ0w7O1lBTW5CTSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLElBQUk7WUFDbEI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLFFBQVE7WUFDdEI7Ozs7WUFFT0csS0FBQUE7bUJBQVAsU0FBT0EsbUVBQW1FQyxxQkFBcUIsRUFBRUMsc0JBQXNCLEVBQUVDLGdCQUFnQixFQUFFQyxnQkFBZ0I7Z0JBQ3pKLElBQUlDLGVBQWU7Z0JBRW5CLElBQU1DLFlBQVksRUFBRSxFQUNkQyxtREFBbURDLDJDQUEyQ1AsdUJBQXVCSyxXQUFXRixtQkFDaElLLG9EQUFvREQsMkNBQTJDTix3QkFBd0JJLFdBQVdGO2dCQUV4SSxJQUFJRyxvREFBb0RFLG1EQUFtRDtvQkFDekcsSUFBTUMsZ0JBQWdCQyxJQUFBQSxZQUFLLEVBQUNMLFlBQ3RCTSxpQkFBaUJDLElBQUFBLGFBQU0sRUFBQ1A7b0JBRTlCLElBQUlJLGtCQUFrQkUsZ0JBQWdCO3dCQUNwQyxJQUFNZixXQUFXYSxlQUNYZCxPQUFPTyxrQkFBbUIsR0FBRzt3QkFFbkNFLGVBQWUsSUE3QkZiLGFBNkJtQkksTUFBTUM7b0JBQ3hDO2dCQUNGO2dCQUVBLE9BQU9RO1lBQ1Q7OztXQWxDbUJiOztBQXFDckIsU0FBU2dCLDJDQUEyQ00saUJBQWlCLEVBQUVSLFNBQVMsRUFBRUYsZ0JBQWdCO0lBQ2hHLElBQUlXLCtDQUErQztJQUVuRCxJQUFNLEFBQUVDLHNCQUF3QkMsc0JBQXlCLENBQWpERCxxQkFDRkUsVUFBVSxPQUNWQyxjQUFjLEVBQUUsRUFDaEJDLHdCQUF3Qkosb0JBQW9CRixtQkFBbUJLLGFBQWFELFNBQVNkLGtCQUFrQjtRQUNyRyxJQUFNaUIsZ0JBQWdCO1FBRXRCLE9BQU9BO0lBQ1Q7SUFFTixJQUFJRCx1QkFBdUI7UUFDekIsSUFBTUUsY0FBYzdCLGlCQUFpQnFCLG9CQUMvQlMsbUJBQW1CNUIsc0JBQXNCbUI7UUFFL0MsSUFBSSxPQUFPO1FBQ1QsR0FBRztRQUNMLE9BQU8sSUFBSVEsZ0JBQWdCLE1BQU07WUFDL0IsSUFBTXpCLFdBQVcyQixnQkFBZSxFQUFFLEdBQUc7WUFFckNsQixVQUFVbUIsSUFBSSxDQUFDNUI7WUFFZmtCLCtDQUErQztRQUNqRCxPQUFPLElBQUlRLHFCQUFxQixNQUFNO1lBQ3BDLElBQU1HLGVBQWV0QixpQkFBaUJ1QixrQ0FBa0MsQ0FBQ0osa0JBQWtCbkIsbUJBQ3JGUCxZQUFXNkIsYUFBYTNCLFdBQVc7WUFFekNPLFVBQVVtQixJQUFJLENBQUM1QjtZQUVma0IsK0NBQStDO1FBQ2pEO0lBQ0Y7SUFFQSxPQUFPQTtBQUNUIn0=
@@ -1,34 +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 verifyContext;
9
- }
10
- });
11
- var _declaration = /*#__PURE__*/ _interop_require_default(require("../verify/declaration"));
12
- var _query = require("../utilities/query");
13
- function _interop_require_default(obj) {
14
- return obj && obj.__esModule ? obj : {
15
- default: obj
16
- };
17
- }
18
- var declarationNodesQuery = (0, _query.nodesQuery)("/context/declaration");
19
- function verifyContext(contextNode, derived, localMetaContext) {
20
- var contextVerified;
21
- var contextString = localMetaContext.nodeAsString(contextNode);
22
- localMetaContext.trace("Verifying the '".concat(contextString, "' context..."), contextNode);
23
- var declarationNodes = declarationNodesQuery(contextNode), declarationsVerified = declarationNodes.every(function(declarationNode) {
24
- var declarationVerified = (0, _declaration.default)(declarationNode, derived, localMetaContext);
25
- return declarationVerified;
26
- });
27
- contextVerified = declarationsVerified; ///
28
- if (contextVerified) {
29
- localMetaContext.debug("...verified the '".concat(contextString, "' context."), contextNode);
30
- }
31
- return contextVerified;
32
- }
33
-
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvY29udGV4dC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHZlcmlmeURlY2xhcmF0aW9uIGZyb20gXCIuLi92ZXJpZnkvZGVjbGFyYXRpb25cIjtcblxuaW1wb3J0IHsgbm9kZXNRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgZGVjbGFyYXRpb25Ob2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9jb250ZXh0L2RlY2xhcmF0aW9uXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlDb250ZXh0KGNvbnRleHROb2RlLCBkZXJpdmVkLCBsb2NhbE1ldGFDb250ZXh0KSB7XG4gIGxldCBjb250ZXh0VmVyaWZpZWQ7XG5cbiAgY29uc3QgY29udGV4dFN0cmluZyA9IGxvY2FsTWV0YUNvbnRleHQubm9kZUFzU3RyaW5nKGNvbnRleHROb2RlKTtcblxuICBsb2NhbE1ldGFDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2NvbnRleHRTdHJpbmd9JyBjb250ZXh0Li4uYCwgY29udGV4dE5vZGUpO1xuXG4gIGNvbnN0IGRlY2xhcmF0aW9uTm9kZXMgPSBkZWNsYXJhdGlvbk5vZGVzUXVlcnkoY29udGV4dE5vZGUpLFxuICAgICAgICBkZWNsYXJhdGlvbnNWZXJpZmllZCA9IGRlY2xhcmF0aW9uTm9kZXMuZXZlcnkoKGRlY2xhcmF0aW9uTm9kZSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGRlY2xhcmF0aW9uVmVyaWZpZWQgPSB2ZXJpZnlEZWNsYXJhdGlvbihkZWNsYXJhdGlvbk5vZGUsIGRlcml2ZWQsIGxvY2FsTWV0YUNvbnRleHQpO1xuXG4gICAgICAgICAgcmV0dXJuIGRlY2xhcmF0aW9uVmVyaWZpZWQ7XG4gICAgICAgIH0pO1xuXG4gIGNvbnRleHRWZXJpZmllZCA9IGRlY2xhcmF0aW9uc1ZlcmlmaWVkOyAvLy9cblxuICBpZiAoY29udGV4dFZlcmlmaWVkKSB7XG4gICAgbG9jYWxNZXRhQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2NvbnRleHRTdHJpbmd9JyBjb250ZXh0LmAsIGNvbnRleHROb2RlKTtcbiAgfVxuXG4gIHJldHVybiBjb250ZXh0VmVyaWZpZWQ7XG59Il0sIm5hbWVzIjpbInZlcmlmeUNvbnRleHQiLCJkZWNsYXJhdGlvbk5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5IiwiY29udGV4dE5vZGUiLCJkZXJpdmVkIiwibG9jYWxNZXRhQ29udGV4dCIsImNvbnRleHRWZXJpZmllZCIsImNvbnRleHRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsImRlY2xhcmF0aW9uTm9kZXMiLCJkZWNsYXJhdGlvbnNWZXJpZmllZCIsImV2ZXJ5IiwiZGVjbGFyYXRpb25Ob2RlIiwiZGVjbGFyYXRpb25WZXJpZmllZCIsInZlcmlmeURlY2xhcmF0aW9uIiwiZGVidWciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVFBOzs7ZUFBd0JBOzs7a0VBTk07cUJBRUg7Ozs7OztBQUUzQixJQUFNQyx3QkFBd0JDLElBQUFBLGlCQUFVLEVBQUM7QUFFMUIsU0FBU0YsY0FBY0csV0FBVyxFQUFFQyxPQUFPLEVBQUVDLGdCQUFnQjtJQUMxRSxJQUFJQztJQUVKLElBQU1DLGdCQUFnQkYsaUJBQWlCRyxZQUFZLENBQUNMO0lBRXBERSxpQkFBaUJJLEtBQUssQ0FBQyxBQUFDLGtCQUErQixPQUFkRixlQUFjLGlCQUFlSjtJQUV0RSxJQUFNTyxtQkFBbUJULHNCQUFzQkUsY0FDekNRLHVCQUF1QkQsaUJBQWlCRSxLQUFLLENBQUMsU0FBQ0M7UUFDN0MsSUFBTUMsc0JBQXNCQyxJQUFBQSxvQkFBaUIsRUFBQ0YsaUJBQWlCVCxTQUFTQztRQUV4RSxPQUFPUztJQUNUO0lBRU5SLGtCQUFrQkssc0JBQXNCLEdBQUc7SUFFM0MsSUFBSUwsaUJBQWlCO1FBQ25CRCxpQkFBaUJXLEtBQUssQ0FBQyxBQUFDLG9CQUFpQyxPQUFkVCxlQUFjLGVBQWFKO0lBQ3hFO0lBRUEsT0FBT0c7QUFDVCJ9
@@ -1,69 +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 verifyMetaEquality;
9
- }
10
- });
11
- var _metaEquality = /*#__PURE__*/ _interop_require_default(require("../metaEquality"));
12
- var _metaEquality1 = /*#__PURE__*/ _interop_require_default(require("../assignment/metaEquality"));
13
- var _query = require("../utilities/query");
14
- function _interop_require_default(obj) {
15
- return obj && obj.__esModule ? obj : {
16
- default: obj
17
- };
18
- }
19
- var leftMetastatementNodeQuery = (0, _query.nodeQuery)("/metaEquality/metastatement[0]"), rightMetastatementNodeQuery = (0, _query.nodeQuery)("/metaEquality/metastatement[1]");
20
- function verifyMetaEquality(metaEqualityNode, assignments, derived, localMetaContext) {
21
- var metaEqualityVerified;
22
- var metaEqualityString = localMetaContext.nodeAsString(metaEqualityNode);
23
- localMetaContext.trace("Verifying the '".concat(metaEqualityString, "' meta-equality..."), metaEqualityNode);
24
- var verifyMetaEqualityFunctions = [
25
- verifyDerivedMetaEquality,
26
- verifyStatedMetaEquality
27
- ];
28
- metaEqualityVerified = verifyMetaEqualityFunctions.some(function(verifyMetaEqualityFunction) {
29
- var metaEqualityVerified = verifyMetaEqualityFunction(metaEqualityNode, assignments, derived, localMetaContext);
30
- if (metaEqualityVerified) {
31
- return true;
32
- }
33
- });
34
- if (metaEqualityVerified) {
35
- localMetaContext.debug("...verified the '".concat(metaEqualityString, "' meta-equality."), metaEqualityNode);
36
- }
37
- return metaEqualityVerified;
38
- }
39
- function verifyDerivedMetaEquality(metaEqualityNode, assignments, derived, localMetaContext) {
40
- var derivedMetaEqualityVerified = false;
41
- if (derived) {
42
- var metaEqualityString = localMetaContext.nodeAsString(metaEqualityNode);
43
- localMetaContext.trace("Verifying the '".concat(metaEqualityString, "' derived meta-equality..."), metaEqualityNode);
44
- var leftMetastatementNode = leftMetastatementNodeQuery(metaEqualityNode), rightMetastatementNode = rightMetastatementNodeQuery(metaEqualityNode), metaEquality = _metaEquality.default.fromLeftMetastatementNodeRightMetastatementNodeAndMetaEqualityNode(leftMetastatementNode, rightMetastatementNode, metaEqualityNode, localMetaContext);
45
- if (metaEquality !== null) {
46
- var metaEqualityAssignment = _metaEquality1.default.fromMetaEquality(metaEquality), assignment = metaEqualityAssignment; ///
47
- assignments.push(assignment);
48
- derivedMetaEqualityVerified = true;
49
- }
50
- if (derivedMetaEqualityVerified) {
51
- localMetaContext.debug("...verified the '".concat(metaEqualityString, "' derived meta-equality."), metaEqualityNode);
52
- }
53
- }
54
- return derivedMetaEqualityVerified;
55
- }
56
- function verifyStatedMetaEquality(metaEqualityNode, assignments, derived, localMetaContext) {
57
- var statedMetaEqualityVerified = false;
58
- if (!derived) {
59
- var metaEqualityString = localMetaContext.nodeAsString(metaEqualityNode);
60
- localMetaContext.trace("Verifying the '".concat(metaEqualityString, "' stated meta-equality..."), metaEqualityNode);
61
- debugger;
62
- if (statedMetaEqualityVerified) {
63
- localMetaContext.debug("...verified the '".concat(metaEqualityString, "' stated meta-equality."), metaEqualityNode);
64
- }
65
- }
66
- return statedMetaEqualityVerified;
67
- }
68
-
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YUVxdWFsaXR5LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTWV0YUVxdWFsaXR5IGZyb20gXCIuLi9tZXRhRXF1YWxpdHlcIjtcbmltcG9ydCBNZXRhRXF1YWxpdHlBc3NpZ25tZW50IGZyb20gXCIuLi9hc3NpZ25tZW50L21ldGFFcXVhbGl0eVwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IGxlZnRNZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL21ldGFFcXVhbGl0eS9tZXRhc3RhdGVtZW50WzBdXCIpLFxuICAgICAgcmlnaHRNZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL21ldGFFcXVhbGl0eS9tZXRhc3RhdGVtZW50WzFdXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlNZXRhRXF1YWxpdHkobWV0YUVxdWFsaXR5Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgbGV0IG1ldGFFcXVhbGl0eVZlcmlmaWVkO1xuXG4gIGNvbnN0IG1ldGFFcXVhbGl0eVN0cmluZyA9IGxvY2FsTWV0YUNvbnRleHQubm9kZUFzU3RyaW5nKG1ldGFFcXVhbGl0eU5vZGUpO1xuXG4gIGxvY2FsTWV0YUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7bWV0YUVxdWFsaXR5U3RyaW5nfScgbWV0YS1lcXVhbGl0eS4uLmAsIG1ldGFFcXVhbGl0eU5vZGUpO1xuXG4gIGNvbnN0IHZlcmlmeU1ldGFFcXVhbGl0eUZ1bmN0aW9ucyA9IFtcbiAgICB2ZXJpZnlEZXJpdmVkTWV0YUVxdWFsaXR5LFxuICAgIHZlcmlmeVN0YXRlZE1ldGFFcXVhbGl0eVxuICBdO1xuXG4gIG1ldGFFcXVhbGl0eVZlcmlmaWVkID0gdmVyaWZ5TWV0YUVxdWFsaXR5RnVuY3Rpb25zLnNvbWUoKHZlcmlmeU1ldGFFcXVhbGl0eUZ1bmN0aW9uKSA9PiB7XG4gICAgY29uc3QgbWV0YUVxdWFsaXR5VmVyaWZpZWQgPSB2ZXJpZnlNZXRhRXF1YWxpdHlGdW5jdGlvbihtZXRhRXF1YWxpdHlOb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICBpZiAobWV0YUVxdWFsaXR5VmVyaWZpZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG5cbiAgaWYgKG1ldGFFcXVhbGl0eVZlcmlmaWVkKSB7XG4gICAgbG9jYWxNZXRhQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke21ldGFFcXVhbGl0eVN0cmluZ30nIG1ldGEtZXF1YWxpdHkuYCwgbWV0YUVxdWFsaXR5Tm9kZSk7XG4gIH1cblxuICByZXR1cm4gbWV0YUVxdWFsaXR5VmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeURlcml2ZWRNZXRhRXF1YWxpdHkobWV0YUVxdWFsaXR5Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgbGV0IGRlcml2ZWRNZXRhRXF1YWxpdHlWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGlmIChkZXJpdmVkKSB7XG4gICAgY29uc3QgbWV0YUVxdWFsaXR5U3RyaW5nID0gbG9jYWxNZXRhQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YUVxdWFsaXR5Tm9kZSk7XG5cbiAgICBsb2NhbE1ldGFDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke21ldGFFcXVhbGl0eVN0cmluZ30nIGRlcml2ZWQgbWV0YS1lcXVhbGl0eS4uLmAsIG1ldGFFcXVhbGl0eU5vZGUpO1xuXG4gICAgY29uc3QgbGVmdE1ldGFzdGF0ZW1lbnROb2RlID0gbGVmdE1ldGFzdGF0ZW1lbnROb2RlUXVlcnkobWV0YUVxdWFsaXR5Tm9kZSksXG4gICAgICAgICAgcmlnaHRNZXRhc3RhdGVtZW50Tm9kZSA9IHJpZ2h0TWV0YXN0YXRlbWVudE5vZGVRdWVyeShtZXRhRXF1YWxpdHlOb2RlKSxcbiAgICAgICAgICBtZXRhRXF1YWxpdHkgPSBNZXRhRXF1YWxpdHkuZnJvbUxlZnRNZXRhc3RhdGVtZW50Tm9kZVJpZ2h0TWV0YXN0YXRlbWVudE5vZGVBbmRNZXRhRXF1YWxpdHlOb2RlKGxlZnRNZXRhc3RhdGVtZW50Tm9kZSwgcmlnaHRNZXRhc3RhdGVtZW50Tm9kZSwgbWV0YUVxdWFsaXR5Tm9kZSwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICBpZiAobWV0YUVxdWFsaXR5ICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXRhRXF1YWxpdHlBc3NpZ25tZW50ID0gTWV0YUVxdWFsaXR5QXNzaWdubWVudC5mcm9tTWV0YUVxdWFsaXR5KG1ldGFFcXVhbGl0eSksXG4gICAgICAgICAgICBhc3NpZ25tZW50ID0gbWV0YUVxdWFsaXR5QXNzaWdubWVudDsgIC8vL1xuXG4gICAgICBhc3NpZ25tZW50cy5wdXNoKGFzc2lnbm1lbnQpO1xuXG4gICAgICBkZXJpdmVkTWV0YUVxdWFsaXR5VmVyaWZpZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIGlmIChkZXJpdmVkTWV0YUVxdWFsaXR5VmVyaWZpZWQpIHtcbiAgICAgIGxvY2FsTWV0YUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHttZXRhRXF1YWxpdHlTdHJpbmd9JyBkZXJpdmVkIG1ldGEtZXF1YWxpdHkuYCwgbWV0YUVxdWFsaXR5Tm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGRlcml2ZWRNZXRhRXF1YWxpdHlWZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5U3RhdGVkTWV0YUVxdWFsaXR5KG1ldGFFcXVhbGl0eU5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbE1ldGFDb250ZXh0KSB7XG4gIGxldCBzdGF0ZWRNZXRhRXF1YWxpdHlWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGlmICghZGVyaXZlZCkge1xuICAgIGNvbnN0IG1ldGFFcXVhbGl0eVN0cmluZyA9IGxvY2FsTWV0YUNvbnRleHQubm9kZUFzU3RyaW5nKG1ldGFFcXVhbGl0eU5vZGUpO1xuXG4gICAgbG9jYWxNZXRhQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHttZXRhRXF1YWxpdHlTdHJpbmd9JyBzdGF0ZWQgbWV0YS1lcXVhbGl0eS4uLmAsIG1ldGFFcXVhbGl0eU5vZGUpO1xuXG4gICAgZGVidWdnZXJcblxuICAgIGlmIChzdGF0ZWRNZXRhRXF1YWxpdHlWZXJpZmllZCkge1xuICAgICAgbG9jYWxNZXRhQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke21ldGFFcXVhbGl0eVN0cmluZ30nIHN0YXRlZCBtZXRhLWVxdWFsaXR5LmAsIG1ldGFFcXVhbGl0eU5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdGF0ZWRNZXRhRXF1YWxpdHlWZXJpZmllZDtcbn0iXSwibmFtZXMiOlsidmVyaWZ5TWV0YUVxdWFsaXR5IiwibGVmdE1ldGFzdGF0ZW1lbnROb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJyaWdodE1ldGFzdGF0ZW1lbnROb2RlUXVlcnkiLCJtZXRhRXF1YWxpdHlOb2RlIiwiYXNzaWdubWVudHMiLCJkZXJpdmVkIiwibG9jYWxNZXRhQ29udGV4dCIsIm1ldGFFcXVhbGl0eVZlcmlmaWVkIiwibWV0YUVxdWFsaXR5U3RyaW5nIiwibm9kZUFzU3RyaW5nIiwidHJhY2UiLCJ2ZXJpZnlNZXRhRXF1YWxpdHlGdW5jdGlvbnMiLCJ2ZXJpZnlEZXJpdmVkTWV0YUVxdWFsaXR5IiwidmVyaWZ5U3RhdGVkTWV0YUVxdWFsaXR5Iiwic29tZSIsInZlcmlmeU1ldGFFcXVhbGl0eUZ1bmN0aW9uIiwiZGVidWciLCJkZXJpdmVkTWV0YUVxdWFsaXR5VmVyaWZpZWQiLCJsZWZ0TWV0YXN0YXRlbWVudE5vZGUiLCJyaWdodE1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YUVxdWFsaXR5IiwiTWV0YUVxdWFsaXR5IiwiZnJvbUxlZnRNZXRhc3RhdGVtZW50Tm9kZVJpZ2h0TWV0YXN0YXRlbWVudE5vZGVBbmRNZXRhRXF1YWxpdHlOb2RlIiwibWV0YUVxdWFsaXR5QXNzaWdubWVudCIsIk1ldGFFcXVhbGl0eUFzc2lnbm1lbnQiLCJmcm9tTWV0YUVxdWFsaXR5IiwiYXNzaWdubWVudCIsInB1c2giLCJzdGF0ZWRNZXRhRXF1YWxpdHlWZXJpZmllZCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBVUE7OztlQUF3QkE7OzttRUFSQztvRUFDVTtxQkFFVDs7Ozs7O0FBRTFCLElBQU1DLDZCQUE2QkMsSUFBQUEsZ0JBQVMsRUFBQyxtQ0FDdkNDLDhCQUE4QkQsSUFBQUEsZ0JBQVMsRUFBQztBQUUvQixTQUFTRixtQkFBbUJJLGdCQUFnQixFQUFFQyxXQUFXLEVBQUVDLE9BQU8sRUFBRUMsZ0JBQWdCO0lBQ2pHLElBQUlDO0lBRUosSUFBTUMscUJBQXFCRixpQkFBaUJHLFlBQVksQ0FBQ047SUFFekRHLGlCQUFpQkksS0FBSyxDQUFDLEFBQUMsa0JBQW9DLE9BQW5CRixvQkFBbUIsdUJBQXFCTDtJQUVqRixJQUFNUSw4QkFBOEI7UUFDbENDO1FBQ0FDO0tBQ0Q7SUFFRE4sdUJBQXVCSSw0QkFBNEJHLElBQUksQ0FBQyxTQUFDQztRQUN2RCxJQUFNUix1QkFBdUJRLDJCQUEyQlosa0JBQWtCQyxhQUFhQyxTQUFTQztRQUVoRyxJQUFJQyxzQkFBc0I7WUFDeEIsT0FBTztRQUNUO0lBQ0Y7SUFFQSxJQUFJQSxzQkFBc0I7UUFDeEJELGlCQUFpQlUsS0FBSyxDQUFDLEFBQUMsb0JBQXNDLE9BQW5CUixvQkFBbUIscUJBQW1CTDtJQUNuRjtJQUVBLE9BQU9JO0FBQ1Q7QUFFQSxTQUFTSywwQkFBMEJULGdCQUFnQixFQUFFQyxXQUFXLEVBQUVDLE9BQU8sRUFBRUMsZ0JBQWdCO0lBQ3pGLElBQUlXLDhCQUE4QjtJQUVsQyxJQUFJWixTQUFTO1FBQ1gsSUFBTUcscUJBQXFCRixpQkFBaUJHLFlBQVksQ0FBQ047UUFFekRHLGlCQUFpQkksS0FBSyxDQUFDLEFBQUMsa0JBQW9DLE9BQW5CRixvQkFBbUIsK0JBQTZCTDtRQUV6RixJQUFNZSx3QkFBd0JsQiwyQkFBMkJHLG1CQUNuRGdCLHlCQUF5QmpCLDRCQUE0QkMsbUJBQ3JEaUIsZUFBZUMscUJBQVksQ0FBQ0Msa0VBQWtFLENBQUNKLHVCQUF1QkMsd0JBQXdCaEIsa0JBQWtCRztRQUV0SyxJQUFJYyxpQkFBaUIsTUFBTTtZQUN6QixJQUFNRyx5QkFBeUJDLHNCQUFzQixDQUFDQyxnQkFBZ0IsQ0FBQ0wsZUFDakVNLGFBQWFILHdCQUF5QixHQUFHO1lBRS9DbkIsWUFBWXVCLElBQUksQ0FBQ0Q7WUFFakJULDhCQUE4QjtRQUNoQztRQUVBLElBQUlBLDZCQUE2QjtZQUMvQlgsaUJBQWlCVSxLQUFLLENBQUMsQUFBQyxvQkFBc0MsT0FBbkJSLG9CQUFtQiw2QkFBMkJMO1FBQzNGO0lBQ0Y7SUFFQSxPQUFPYztBQUNUO0FBRUEsU0FBU0oseUJBQXlCVixnQkFBZ0IsRUFBRUMsV0FBVyxFQUFFQyxPQUFPLEVBQUVDLGdCQUFnQjtJQUN4RixJQUFJc0IsNkJBQTZCO0lBRWpDLElBQUksQ0FBQ3ZCLFNBQVM7UUFDWixJQUFNRyxxQkFBcUJGLGlCQUFpQkcsWUFBWSxDQUFDTjtRQUV6REcsaUJBQWlCSSxLQUFLLENBQUMsQUFBQyxrQkFBb0MsT0FBbkJGLG9CQUFtQiw4QkFBNEJMO1FBRXhGLFFBQVE7UUFFUixJQUFJeUIsNEJBQTRCO1lBQzlCdEIsaUJBQWlCVSxLQUFLLENBQUMsQUFBQyxvQkFBc0MsT0FBbkJSLG9CQUFtQiw0QkFBMEJMO1FBQzFGO0lBQ0Y7SUFFQSxPQUFPeUI7QUFDVCJ9