occam-verify-cli 0.0.880 → 0.0.882

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 (67) hide show
  1. package/lib/assignment/judgement.js +62 -0
  2. package/lib/axiomLemmaTheoremConjecture.js +4 -10
  3. package/lib/context/file.js +47 -41
  4. package/lib/context/local.js +19 -7
  5. package/lib/context/localMeta.js +58 -16
  6. package/lib/declaration.js +90 -0
  7. package/lib/frame.js +105 -0
  8. package/lib/judgement.js +87 -0
  9. package/lib/label.js +3 -3
  10. package/lib/metaLemmaMetatheorem.js +4 -4
  11. package/lib/metaType/{label.js → frame.js} +12 -12
  12. package/lib/metaType/{context.js → reference.js} +12 -12
  13. package/lib/metaTypeNames.js +7 -7
  14. package/lib/metaTypes.js +5 -5
  15. package/lib/mixins/context.js +32 -24
  16. package/lib/premise.js +2 -26
  17. package/lib/rule.js +4 -10
  18. package/lib/supposition.js +1 -53
  19. package/lib/utilities/name.js +3 -11
  20. package/lib/verify/declaration.js +36 -18
  21. package/lib/verify/frame.js +75 -0
  22. package/lib/verify/judgement.js +95 -20
  23. package/lib/verify/label.js +8 -8
  24. package/lib/verify/labels.js +4 -4
  25. package/lib/verify/metastatement/qualified.js +12 -8
  26. package/lib/verify/metastatement.js +5 -21
  27. package/lib/verify/metavariable.js +3 -3
  28. package/lib/verify/statement/qualified.js +6 -6
  29. package/package.json +2 -2
  30. package/src/assignment/judgement.js +30 -0
  31. package/src/axiomLemmaTheoremConjecture.js +3 -12
  32. package/src/context/file.js +38 -33
  33. package/src/context/local.js +6 -2
  34. package/src/context/localMeta.js +62 -15
  35. package/src/declaration.js +58 -0
  36. package/src/frame.js +69 -0
  37. package/src/judgement.js +38 -0
  38. package/src/label.js +2 -2
  39. package/src/metaLemmaMetatheorem.js +3 -3
  40. package/src/metaType/frame.js +18 -0
  41. package/src/metaType/reference.js +18 -0
  42. package/src/metaTypeNames.js +2 -2
  43. package/src/metaTypes.js +4 -4
  44. package/src/mixins/context.js +21 -15
  45. package/src/premise.js +0 -41
  46. package/src/rule.js +3 -12
  47. package/src/supposition.js +0 -45
  48. package/src/utilities/name.js +5 -15
  49. package/src/verify/declaration.js +48 -21
  50. package/src/verify/frame.js +91 -0
  51. package/src/verify/judgement.js +142 -21
  52. package/src/verify/label.js +7 -8
  53. package/src/verify/labels.js +4 -3
  54. package/src/verify/metastatement/qualified.js +14 -11
  55. package/src/verify/metastatement.js +4 -30
  56. package/src/verify/metavariable.js +2 -2
  57. package/src/verify/statement/qualified.js +10 -10
  58. package/lib/assignment/metaEquality.js +0 -62
  59. package/lib/metaEquality.js +0 -101
  60. package/lib/verify/context.js +0 -34
  61. package/lib/verify/metaEquality.js +0 -69
  62. package/src/assignment/metaEquality.js +0 -30
  63. package/src/metaEquality.js +0 -84
  64. package/src/metaType/context.js +0 -18
  65. package/src/metaType/label.js +0 -18
  66. package/src/verify/context.js +0 -30
  67. package/src/verify/metaEquality.js +0 -83
@@ -8,39 +8,114 @@ Object.defineProperty(exports, "default", {
8
8
  return verifyJudgement;
9
9
  }
10
10
  });
11
- var _context = /*#__PURE__*/ _interop_require_default(require("../verify/context"));
12
- var _context1 = /*#__PURE__*/ _interop_require_default(require("../metaType/context"));
11
+ var _judgement = /*#__PURE__*/ _interop_require_default(require("../judgement"));
12
+ var _frame = /*#__PURE__*/ _interop_require_default(require("../verify/frame"));
13
+ var _frame1 = /*#__PURE__*/ _interop_require_default(require("../metaType/frame"));
14
+ var _judgement1 = /*#__PURE__*/ _interop_require_default(require("../assignment/judgement"));
15
+ var _array = require("../utilities/array");
13
16
  var _query = require("../utilities/query");
14
17
  function _interop_require_default(obj) {
15
18
  return obj && obj.__esModule ? obj : {
16
19
  default: obj
17
20
  };
18
21
  }
19
- var contextNodeQuery = (0, _query.nodeQuery)("/judgement/metastatement/context!"), metavariableNodeQuery = (0, _query.nodeQuery)("/judgement/metavariable!");
20
- function verifyJudgement(judgementNode, derived, localMetaContext) {
21
- var judgementVerified = false;
22
+ var frameNodeQuery = (0, _query.nodeQuery)("/judgement/frame!"), metavariableNodeQuery = (0, _query.nodeQuery)("/judgement/metavariable!");
23
+ function verifyJudgement(judgementNode, assignments, derived, localMetaContext) {
24
+ var judgementVerified;
22
25
  var judgementString = localMetaContext.nodeAsString(judgementNode);
23
26
  localMetaContext.trace("Verifying the '".concat(judgementString, "' judgement..."), judgementNode);
24
- var metavariableNode = metavariableNodeQuery(judgementNode), metavariable = localMetaContext.findMetavariableByMetavariableNode(metavariableNode, localMetaContext);
25
- if (metavariable !== null) {
26
- var metaType = metavariable.getMetaType();
27
- if (metaType === _context1.default) {
28
- var contextNode = contextNodeQuery(judgementNode);
29
- if (contextNode !== null) {
30
- var contextVerified = (0, _context.default)(contextNode, derived, localMetaContext);
31
- judgementVerified = contextVerified; ///
27
+ var verifyJudgementFunctions = [
28
+ verifyDerivedJudgement,
29
+ verifyStatedJudgement
30
+ ];
31
+ judgementVerified = verifyJudgementFunctions.some(function(verifyJudgementFunction) {
32
+ var judgementVerified = verifyJudgementFunction(judgementNode, assignments, derived, localMetaContext);
33
+ if (judgementVerified) {
34
+ return true;
35
+ }
36
+ });
37
+ if (judgementVerified) {
38
+ localMetaContext.debug("...verified the '".concat(judgementString, "' judgement."), judgementNode);
39
+ }
40
+ return judgementVerified;
41
+ }
42
+ function verifyDerivedJudgement(judgementNode, assignments, derived, localMetaContext) {
43
+ var derivedJudgementVerified = false;
44
+ if (derived) {
45
+ var judgementString = localMetaContext.nodeAsString(judgementNode);
46
+ localMetaContext.trace("Verifying the '".concat(judgementString, "' derived judgement..."), judgementNode);
47
+ var metavariableNode = metavariableNodeQuery(judgementNode), metavariableVerified = verifyMetavariable(metavariableNode, localMetaContext);
48
+ if (metavariableVerified) {
49
+ var judgement = localMetaContext.findJudgementByMetavariableNode(metavariableNode);
50
+ if (judgement !== null) {
51
+ var frames = [], frameNode = frameNodeQuery(judgementNode), frameVerified = (0, _frame.default)(frameNode, frames, derived, localMetaContext);
52
+ if (frameVerified) {
53
+ var firstFrame = (0, _array.first)(frames), frame = firstFrame, frameSingular = frame.isSingular();
54
+ if (frameSingular) {
55
+ var declaration = frame.getDeclaration(), metavariableNode1 = declaration.getMetavariableNode(), metaLemma = localMetaContext.findMetaLemmaByMetavariableNode(metavariableNode1), metatheorem = localMetaContext.findMetatheoremByMetavariableNode(metavariableNode1), metaLemmaMetatheorem = metaLemma || metatheorem; ///
56
+ if (metaLemmaMetatheorem !== null) {
57
+ var judgementMatchesMetaLemmaMetatheorem = judgement.matchMetaLemmaOrMetaTheorem(metaLemmaMetatheorem), declarationMatchesMetaLemmaMetatheorem = declaration.matchMetaLemmaOrMetaTheorem(metaLemmaMetatheorem);
58
+ derivedJudgementVerified = judgementMatchesMetaLemmaMetatheorem && declarationMatchesMetaLemmaMetatheorem;
59
+ } else {
60
+ var metavariableString = localMetaContext.nodeAsString(metavariableNode1);
61
+ localMetaContext.debug("There are no meta-lemmas or metatheorems corresponding to the '".concat(metavariableString, "' metavariable."), judgementNode);
62
+ }
63
+ } else {
64
+ var frameString = localMetaContext.nodeAsString(frameNode);
65
+ localMetaContext.debug("The '".concat(frameString, "' is not singular."), judgementNode);
66
+ }
67
+ }
32
68
  } else {
33
- localMetaContext.debug("The right hand side of the '".concat(judgementString, "' judgement must be a context."), judgementNode);
69
+ var metavariableString1 = localMetaContext.nodeAsString(metavariableNode);
70
+ localMetaContext.debug("There is no judgement present for the '".concat(metavariableString1, "' metavariable."), judgementNode);
71
+ }
72
+ }
73
+ if (derivedJudgementVerified) {
74
+ localMetaContext.debug("...verified the '".concat(judgementString, "' derived judgement."), judgementNode);
75
+ }
76
+ }
77
+ return derivedJudgementVerified;
78
+ }
79
+ function verifyStatedJudgement(judgementNode, assignments, derived, localMetaContext) {
80
+ var statedJudgementVerified = false;
81
+ if (!derived) {
82
+ var judgementString = localMetaContext.nodeAsString(judgementNode);
83
+ localMetaContext.trace("Verifying the '".concat(judgementString, "' stated judgement..."), judgementNode);
84
+ var metavariableNode = metavariableNodeQuery(judgementNode), metavariableVerified = verifyMetavariable(metavariableNode, localMetaContext);
85
+ if (metavariableVerified) {
86
+ var frames = [], frameNode = frameNodeQuery(judgementNode), frameVerified = (0, _frame.default)(frameNode, frames, derived, localMetaContext);
87
+ if (frameVerified) {
88
+ var firstFrame = (0, _array.first)(frames), frame = firstFrame, judgement = _judgement.default.fromJudgementNodeFrameAndMetavariableNode(judgementNode, frame, metavariableNode), judgementAssignment = _judgement1.default.fromJudgement(judgement), assignment = judgementAssignment;
89
+ assignments.push(assignment);
90
+ statedJudgementVerified = true;
34
91
  }
92
+ }
93
+ if (statedJudgementVerified) {
94
+ localMetaContext.debug("...verified the '".concat(judgementString, "' stated judgement."), judgementNode);
95
+ }
96
+ }
97
+ return statedJudgementVerified;
98
+ }
99
+ function verifyMetavariable(metavariableNode, localMetaContext) {
100
+ var metavariableVerified = false;
101
+ var metavariableString = localMetaContext.nodeAsString(metavariableNode);
102
+ localMetaContext.trace("Verifying the '".concat(metavariableString, "' metavariable..."), metavariableNode);
103
+ var metavariable = localMetaContext.findMetavariableByMetavariableNode(metavariableNode, localMetaContext);
104
+ if (metavariable !== null) {
105
+ var metaType = metavariable.getMetaType();
106
+ if (metaType === _frame1.default) {
107
+ metavariableVerified = true;
35
108
  } else {
36
- var contextMetaTypeName = _context1.default.getName(), metavariableString = localMetaContext.nodeAsString(metavariableNode), metaTypeString = metaType.asString();
37
- localMetaContext.debug("The '".concat(metavariableString, "' metavariable's meta-type is '").concat(metaTypeString, "' when it should be '").concat(contextMetaTypeName, "'."), judgementNode);
109
+ var frameMetaTypeName = _frame1.default.getName(), metaTypeString = metaType.asString();
110
+ localMetaContext.debug("The '".concat(metavariableString, "' metavariable's meta-type is '").concat(metaTypeString, "' when it should be '").concat(frameMetaTypeName, "'."), metavariableNode);
38
111
  }
112
+ } else {
113
+ localMetaContext.debug("The '".concat(metavariableString, "' metavariable is not present'."), metavariableNode);
39
114
  }
40
- if (judgementVerified) {
41
- localMetaContext.debug("...verified the '".concat(judgementString, "' judgement."), judgementNode);
115
+ if (metavariableVerified) {
116
+ localMetaContext.debug("...verified the '".concat(metavariableString, "' metavariable."), metavariableNode);
42
117
  }
43
- return judgementVerified;
118
+ return metavariableVerified;
44
119
  }
45
120
 
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvanVkZ2VtZW50LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgdmVyaWZ5Q29udGV4dCBmcm9tIFwiLi4vdmVyaWZ5L2NvbnRleHRcIjtcbmltcG9ydCBjb250ZXh0TWV0YVR5cGUgZnJvbSBcIi4uL21ldGFUeXBlL2NvbnRleHRcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBjb250ZXh0Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2p1ZGdlbWVudC9tZXRhc3RhdGVtZW50L2NvbnRleHQhXCIpLFxuICAgICAgbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2p1ZGdlbWVudC9tZXRhdmFyaWFibGUhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlKdWRnZW1lbnQoanVkZ2VtZW50Tm9kZSwgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCkge1xuICBsZXQganVkZ2VtZW50VmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBqdWRnZW1lbnRTdHJpbmcgPSBsb2NhbE1ldGFDb250ZXh0Lm5vZGVBc1N0cmluZyhqdWRnZW1lbnROb2RlKTtcblxuICBsb2NhbE1ldGFDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2p1ZGdlbWVudFN0cmluZ30nIGp1ZGdlbWVudC4uLmAsIGp1ZGdlbWVudE5vZGUpO1xuXG4gIGNvbnN0IG1ldGF2YXJpYWJsZU5vZGUgPSBtZXRhdmFyaWFibGVOb2RlUXVlcnkoanVkZ2VtZW50Tm9kZSksXG4gICAgICAgIG1ldGF2YXJpYWJsZSA9IGxvY2FsTWV0YUNvbnRleHQuZmluZE1ldGF2YXJpYWJsZUJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlLCBsb2NhbE1ldGFDb250ZXh0KTtcblxuICBpZiAobWV0YXZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgY29uc3QgbWV0YVR5cGUgPSBtZXRhdmFyaWFibGUuZ2V0TWV0YVR5cGUoKTtcblxuICAgIGlmIChtZXRhVHlwZSA9PT0gY29udGV4dE1ldGFUeXBlKSB7XG4gICAgICBjb25zdCBjb250ZXh0Tm9kZSA9IGNvbnRleHROb2RlUXVlcnkoanVkZ2VtZW50Tm9kZSk7XG5cbiAgICAgIGlmIChjb250ZXh0Tm9kZSAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCBjb250ZXh0VmVyaWZpZWQgPSB2ZXJpZnlDb250ZXh0KGNvbnRleHROb2RlLCBkZXJpdmVkLCBsb2NhbE1ldGFDb250ZXh0KTtcblxuICAgICAgICBqdWRnZW1lbnRWZXJpZmllZCA9IGNvbnRleHRWZXJpZmllZDsgIC8vL1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbG9jYWxNZXRhQ29udGV4dC5kZWJ1ZyhgVGhlIHJpZ2h0IGhhbmQgc2lkZSBvZiB0aGUgJyR7anVkZ2VtZW50U3RyaW5nfScganVkZ2VtZW50IG11c3QgYmUgYSBjb250ZXh0LmAsIGp1ZGdlbWVudE5vZGUpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBjb250ZXh0TWV0YVR5cGVOYW1lID0gY29udGV4dE1ldGFUeXBlLmdldE5hbWUoKSxcbiAgICAgICAgICAgIG1ldGF2YXJpYWJsZVN0cmluZyA9IGxvY2FsTWV0YUNvbnRleHQubm9kZUFzU3RyaW5nKG1ldGF2YXJpYWJsZU5vZGUpLFxuICAgICAgICAgICAgbWV0YVR5cGVTdHJpbmcgPSBtZXRhVHlwZS5hc1N0cmluZygpO1xuXG4gICAgICBsb2NhbE1ldGFDb250ZXh0LmRlYnVnKGBUaGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgbWV0YXZhcmlhYmxlJ3MgbWV0YS10eXBlIGlzICcke21ldGFUeXBlU3RyaW5nfScgd2hlbiBpdCBzaG91bGQgYmUgJyR7Y29udGV4dE1ldGFUeXBlTmFtZX0nLmAsIGp1ZGdlbWVudE5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIGlmIChqdWRnZW1lbnRWZXJpZmllZCkge1xuICAgIGxvY2FsTWV0YUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtqdWRnZW1lbnRTdHJpbmd9JyBqdWRnZW1lbnQuYCwganVkZ2VtZW50Tm9kZSk7XG4gIH1cblxuICByZXR1cm4ganVkZ2VtZW50VmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5SnVkZ2VtZW50IiwiY29udGV4dE5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIm1ldGF2YXJpYWJsZU5vZGVRdWVyeSIsImp1ZGdlbWVudE5vZGUiLCJkZXJpdmVkIiwibG9jYWxNZXRhQ29udGV4dCIsImp1ZGdlbWVudFZlcmlmaWVkIiwianVkZ2VtZW50U3RyaW5nIiwibm9kZUFzU3RyaW5nIiwidHJhY2UiLCJtZXRhdmFyaWFibGVOb2RlIiwibWV0YXZhcmlhYmxlIiwiZmluZE1ldGF2YXJpYWJsZUJ5TWV0YXZhcmlhYmxlTm9kZSIsIm1ldGFUeXBlIiwiZ2V0TWV0YVR5cGUiLCJjb250ZXh0TWV0YVR5cGUiLCJjb250ZXh0Tm9kZSIsImNvbnRleHRWZXJpZmllZCIsInZlcmlmeUNvbnRleHQiLCJkZWJ1ZyIsImNvbnRleHRNZXRhVHlwZU5hbWUiLCJnZXROYW1lIiwibWV0YXZhcmlhYmxlU3RyaW5nIiwibWV0YVR5cGVTdHJpbmciLCJhc1N0cmluZyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBVUE7OztlQUF3QkE7Ozs4REFSRTsrREFDRTtxQkFFRjs7Ozs7O0FBRTFCLElBQU1DLG1CQUFtQkMsSUFBQUEsZ0JBQVMsRUFBQyxzQ0FDN0JDLHdCQUF3QkQsSUFBQUEsZ0JBQVMsRUFBQztBQUV6QixTQUFTRixnQkFBZ0JJLGFBQWEsRUFBRUMsT0FBTyxFQUFFQyxnQkFBZ0I7SUFDOUUsSUFBSUMsb0JBQW9CO0lBRXhCLElBQU1DLGtCQUFrQkYsaUJBQWlCRyxZQUFZLENBQUNMO0lBRXRERSxpQkFBaUJJLEtBQUssQ0FBQyxBQUFDLGtCQUFpQyxPQUFoQkYsaUJBQWdCLG1CQUFpQko7SUFFMUUsSUFBTU8sbUJBQW1CUixzQkFBc0JDLGdCQUN6Q1EsZUFBZU4saUJBQWlCTyxrQ0FBa0MsQ0FBQ0Ysa0JBQWtCTDtJQUUzRixJQUFJTSxpQkFBaUIsTUFBTTtRQUN6QixJQUFNRSxXQUFXRixhQUFhRyxXQUFXO1FBRXpDLElBQUlELGFBQWFFLGlCQUFlLEVBQUU7WUFDaEMsSUFBTUMsY0FBY2hCLGlCQUFpQkc7WUFFckMsSUFBSWEsZ0JBQWdCLE1BQU07Z0JBQ3hCLElBQU1DLGtCQUFrQkMsSUFBQUEsZ0JBQWEsRUFBQ0YsYUFBYVosU0FBU0M7Z0JBRTVEQyxvQkFBb0JXLGlCQUFrQixHQUFHO1lBQzNDLE9BQU87Z0JBQ0xaLGlCQUFpQmMsS0FBSyxDQUFDLEFBQUMsK0JBQThDLE9BQWhCWixpQkFBZ0IsbUNBQWlDSjtZQUN6RztRQUNGLE9BQU87WUFDTCxJQUFNaUIsc0JBQXNCTCxpQkFBZSxDQUFDTSxPQUFPLElBQzdDQyxxQkFBcUJqQixpQkFBaUJHLFlBQVksQ0FBQ0UsbUJBQ25EYSxpQkFBaUJWLFNBQVNXLFFBQVE7WUFFeENuQixpQkFBaUJjLEtBQUssQ0FBQyxBQUFDLFFBQTJESSxPQUFwREQsb0JBQW1CLG1DQUF1RUYsT0FBdENHLGdCQUFlLHlCQUEyQyxPQUFwQkgscUJBQW9CLE9BQUtqQjtRQUNwSjtJQUNGO0lBRUEsSUFBSUcsbUJBQW1CO1FBQ3JCRCxpQkFBaUJjLEtBQUssQ0FBQyxBQUFDLG9CQUFtQyxPQUFoQlosaUJBQWdCLGlCQUFlSjtJQUM1RTtJQUVBLE9BQU9HO0FBQ1QifQ==
121
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvanVkZ2VtZW50LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgSnVkZ2VtZW50IGZyb20gXCIuLi9qdWRnZW1lbnRcIjtcbmltcG9ydCB2ZXJpZnlGcmFtZSBmcm9tIFwiLi4vdmVyaWZ5L2ZyYW1lXCI7XG5pbXBvcnQgZnJhbWVNZXRhVHlwZSBmcm9tIFwiLi4vbWV0YVR5cGUvZnJhbWVcIjtcbmltcG9ydCBKdWRnZW1lbnRBc3NpZ25tZW50IGZyb20gXCIuLi9hc3NpZ25tZW50L2p1ZGdlbWVudFwiO1xuXG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgZnJhbWVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvanVkZ2VtZW50L2ZyYW1lIVwiKSxcbiAgICAgIG1ldGF2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9qdWRnZW1lbnQvbWV0YXZhcmlhYmxlIVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5SnVkZ2VtZW50KGp1ZGdlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbE1ldGFDb250ZXh0KSB7XG4gIGxldCBqdWRnZW1lbnRWZXJpZmllZDtcblxuICBjb25zdCBqdWRnZW1lbnRTdHJpbmcgPSBsb2NhbE1ldGFDb250ZXh0Lm5vZGVBc1N0cmluZyhqdWRnZW1lbnROb2RlKTtcblxuICBsb2NhbE1ldGFDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2p1ZGdlbWVudFN0cmluZ30nIGp1ZGdlbWVudC4uLmAsIGp1ZGdlbWVudE5vZGUpO1xuXG4gIGNvbnN0IHZlcmlmeUp1ZGdlbWVudEZ1bmN0aW9ucyA9IFtcbiAgICB2ZXJpZnlEZXJpdmVkSnVkZ2VtZW50LFxuICAgIHZlcmlmeVN0YXRlZEp1ZGdlbWVudFxuICBdO1xuXG4gIGp1ZGdlbWVudFZlcmlmaWVkID0gdmVyaWZ5SnVkZ2VtZW50RnVuY3Rpb25zLnNvbWUoKHZlcmlmeUp1ZGdlbWVudEZ1bmN0aW9uKSA9PiB7XG4gICAgY29uc3QganVkZ2VtZW50VmVyaWZpZWQgPSB2ZXJpZnlKdWRnZW1lbnRGdW5jdGlvbihqdWRnZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICBpZiAoanVkZ2VtZW50VmVyaWZpZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG5cbiAgaWYgKGp1ZGdlbWVudFZlcmlmaWVkKSB7XG4gICAgbG9jYWxNZXRhQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2p1ZGdlbWVudFN0cmluZ30nIGp1ZGdlbWVudC5gLCBqdWRnZW1lbnROb2RlKTtcbiAgfVxuXG4gIHJldHVybiBqdWRnZW1lbnRWZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5RGVyaXZlZEp1ZGdlbWVudChqdWRnZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCkge1xuICBsZXQgZGVyaXZlZEp1ZGdlbWVudFZlcmlmaWVkID0gZmFsc2U7XG5cbiAgaWYgKGRlcml2ZWQpIHtcbiAgICBjb25zdCBqdWRnZW1lbnRTdHJpbmcgPSBsb2NhbE1ldGFDb250ZXh0Lm5vZGVBc1N0cmluZyhqdWRnZW1lbnROb2RlKTtcblxuICAgIGxvY2FsTWV0YUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7anVkZ2VtZW50U3RyaW5nfScgZGVyaXZlZCBqdWRnZW1lbnQuLi5gLCBqdWRnZW1lbnROb2RlKTtcblxuICAgIGNvbnN0IG1ldGF2YXJpYWJsZU5vZGUgPSBtZXRhdmFyaWFibGVOb2RlUXVlcnkoanVkZ2VtZW50Tm9kZSksXG4gICAgICAgICAgbWV0YXZhcmlhYmxlVmVyaWZpZWQgPSB2ZXJpZnlNZXRhdmFyaWFibGUobWV0YXZhcmlhYmxlTm9kZSwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICBpZiAobWV0YXZhcmlhYmxlVmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IGp1ZGdlbWVudCA9IGxvY2FsTWV0YUNvbnRleHQuZmluZEp1ZGdlbWVudEJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKTtcblxuICAgICAgaWYgKGp1ZGdlbWVudCAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCBmcmFtZXMgPSBbXSxcbiAgICAgICAgICAgICAgZnJhbWVOb2RlID0gZnJhbWVOb2RlUXVlcnkoanVkZ2VtZW50Tm9kZSksXG4gICAgICAgICAgICAgIGZyYW1lVmVyaWZpZWQgPSB2ZXJpZnlGcmFtZShmcmFtZU5vZGUsIGZyYW1lcywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICAgICAgaWYgKGZyYW1lVmVyaWZpZWQpIHtcbiAgICAgICAgICBjb25zdCBmaXJzdEZyYW1lID0gZmlyc3QoZnJhbWVzKSxcbiAgICAgICAgICAgICAgICBmcmFtZSA9IGZpcnN0RnJhbWUsIC8vL1xuICAgICAgICAgICAgICAgIGZyYW1lU2luZ3VsYXIgPSBmcmFtZS5pc1Npbmd1bGFyKCk7XG5cbiAgICAgICAgICBpZiAoZnJhbWVTaW5ndWxhcikge1xuICAgICAgICAgICAgY29uc3QgZGVjbGFyYXRpb24gPSBmcmFtZS5nZXREZWNsYXJhdGlvbigpLFxuICAgICAgICAgICAgICAgICAgbWV0YXZhcmlhYmxlTm9kZSA9IGRlY2xhcmF0aW9uLmdldE1ldGF2YXJpYWJsZU5vZGUoKSxcbiAgICAgICAgICAgICAgICAgIG1ldGFMZW1tYSA9IGxvY2FsTWV0YUNvbnRleHQuZmluZE1ldGFMZW1tYUJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKSxcbiAgICAgICAgICAgICAgICAgIG1ldGF0aGVvcmVtID0gbG9jYWxNZXRhQ29udGV4dC5maW5kTWV0YXRoZW9yZW1CeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSksXG4gICAgICAgICAgICAgICAgICBtZXRhTGVtbWFNZXRhdGhlb3JlbSA9IChtZXRhTGVtbWEgfHwgbWV0YXRoZW9yZW0pOyAgLy8vXG5cbiAgICAgICAgICAgIGlmIChtZXRhTGVtbWFNZXRhdGhlb3JlbSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICBjb25zdCBqdWRnZW1lbnRNYXRjaGVzTWV0YUxlbW1hTWV0YXRoZW9yZW0gPSBqdWRnZW1lbnQubWF0Y2hNZXRhTGVtbWFPck1ldGFUaGVvcmVtKG1ldGFMZW1tYU1ldGF0aGVvcmVtKSxcbiAgICAgICAgICAgICAgICAgICAgZGVjbGFyYXRpb25NYXRjaGVzTWV0YUxlbW1hTWV0YXRoZW9yZW0gPSBkZWNsYXJhdGlvbi5tYXRjaE1ldGFMZW1tYU9yTWV0YVRoZW9yZW0obWV0YUxlbW1hTWV0YXRoZW9yZW0pO1xuXG4gICAgICAgICAgICAgIGRlcml2ZWRKdWRnZW1lbnRWZXJpZmllZCA9IChqdWRnZW1lbnRNYXRjaGVzTWV0YUxlbW1hTWV0YXRoZW9yZW0gJiYgZGVjbGFyYXRpb25NYXRjaGVzTWV0YUxlbW1hTWV0YXRoZW9yZW0pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgY29uc3QgbWV0YXZhcmlhYmxlU3RyaW5nID0gbG9jYWxNZXRhQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgICAgICAgICAgICAgbG9jYWxNZXRhQ29udGV4dC5kZWJ1ZyhgVGhlcmUgYXJlIG5vIG1ldGEtbGVtbWFzIG9yIG1ldGF0aGVvcmVtcyBjb3JyZXNwb25kaW5nIHRvIHRoZSAnJHttZXRhdmFyaWFibGVTdHJpbmd9JyBtZXRhdmFyaWFibGUuYCwganVkZ2VtZW50Tm9kZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IGZyYW1lU3RyaW5nID0gbG9jYWxNZXRhQ29udGV4dC5ub2RlQXNTdHJpbmcoZnJhbWVOb2RlKTtcblxuICAgICAgICAgICAgbG9jYWxNZXRhQ29udGV4dC5kZWJ1ZyhgVGhlICcke2ZyYW1lU3RyaW5nfScgaXMgbm90IHNpbmd1bGFyLmAsIGp1ZGdlbWVudE5vZGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgbWV0YXZhcmlhYmxlU3RyaW5nID0gbG9jYWxNZXRhQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgICAgICAgbG9jYWxNZXRhQ29udGV4dC5kZWJ1ZyhgVGhlcmUgaXMgbm8ganVkZ2VtZW50IHByZXNlbnQgZm9yIHRoZSAnJHttZXRhdmFyaWFibGVTdHJpbmd9JyBtZXRhdmFyaWFibGUuYCwganVkZ2VtZW50Tm9kZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGRlcml2ZWRKdWRnZW1lbnRWZXJpZmllZCkge1xuICAgICAgbG9jYWxNZXRhQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2p1ZGdlbWVudFN0cmluZ30nIGRlcml2ZWQganVkZ2VtZW50LmAsIGp1ZGdlbWVudE5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBkZXJpdmVkSnVkZ2VtZW50VmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeVN0YXRlZEp1ZGdlbWVudChqdWRnZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCkge1xuICBsZXQgc3RhdGVkSnVkZ2VtZW50VmVyaWZpZWQgPSBmYWxzZTtcblxuICBpZiAoIWRlcml2ZWQpIHtcbiAgICBjb25zdCBqdWRnZW1lbnRTdHJpbmcgPSBsb2NhbE1ldGFDb250ZXh0Lm5vZGVBc1N0cmluZyhqdWRnZW1lbnROb2RlKTtcblxuICAgIGxvY2FsTWV0YUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7anVkZ2VtZW50U3RyaW5nfScgc3RhdGVkIGp1ZGdlbWVudC4uLmAsIGp1ZGdlbWVudE5vZGUpO1xuXG4gICAgY29uc3QgbWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGVRdWVyeShqdWRnZW1lbnROb2RlKSxcbiAgICAgICAgICBtZXRhdmFyaWFibGVWZXJpZmllZCA9IHZlcmlmeU1ldGF2YXJpYWJsZShtZXRhdmFyaWFibGVOb2RlLCBsb2NhbE1ldGFDb250ZXh0KTtcblxuICAgIGlmIChtZXRhdmFyaWFibGVWZXJpZmllZCkge1xuICAgICAgY29uc3QgZnJhbWVzID0gW10sXG4gICAgICAgICAgICBmcmFtZU5vZGUgPSBmcmFtZU5vZGVRdWVyeShqdWRnZW1lbnROb2RlKSxcbiAgICAgICAgICAgIGZyYW1lVmVyaWZpZWQgPSB2ZXJpZnlGcmFtZShmcmFtZU5vZGUsIGZyYW1lcywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICAgIGlmIChmcmFtZVZlcmlmaWVkKSB7XG4gICAgICAgIGNvbnN0IGZpcnN0RnJhbWUgPSBmaXJzdChmcmFtZXMpLFxuICAgICAgICAgICAgICBmcmFtZSA9IGZpcnN0RnJhbWUsIC8vL1xuICAgICAgICAgICAgICBqdWRnZW1lbnQgPSBKdWRnZW1lbnQuZnJvbUp1ZGdlbWVudE5vZGVGcmFtZUFuZE1ldGF2YXJpYWJsZU5vZGUoanVkZ2VtZW50Tm9kZSwgZnJhbWUsIG1ldGF2YXJpYWJsZU5vZGUpLFxuICAgICAgICAgICAgICBqdWRnZW1lbnRBc3NpZ25tZW50ID0gSnVkZ2VtZW50QXNzaWdubWVudC5mcm9tSnVkZ2VtZW50KGp1ZGdlbWVudCksXG4gICAgICAgICAgICAgIGFzc2lnbm1lbnQgPSBqdWRnZW1lbnRBc3NpZ25tZW50O1xuXG4gICAgICAgIGFzc2lnbm1lbnRzLnB1c2goYXNzaWdubWVudCk7XG5cbiAgICAgICAgc3RhdGVkSnVkZ2VtZW50VmVyaWZpZWQgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChzdGF0ZWRKdWRnZW1lbnRWZXJpZmllZCkge1xuICAgICAgbG9jYWxNZXRhQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2p1ZGdlbWVudFN0cmluZ30nIHN0YXRlZCBqdWRnZW1lbnQuYCwganVkZ2VtZW50Tm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHN0YXRlZEp1ZGdlbWVudFZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlNZXRhdmFyaWFibGUobWV0YXZhcmlhYmxlTm9kZSwgbG9jYWxNZXRhQ29udGV4dCkge1xuICBsZXQgbWV0YXZhcmlhYmxlVmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBtZXRhdmFyaWFibGVTdHJpbmcgPSBsb2NhbE1ldGFDb250ZXh0Lm5vZGVBc1N0cmluZyhtZXRhdmFyaWFibGVOb2RlKTtcblxuICBsb2NhbE1ldGFDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIG1ldGF2YXJpYWJsZS4uLmAsIG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gIGNvbnN0IG1ldGF2YXJpYWJsZSA9IGxvY2FsTWV0YUNvbnRleHQuZmluZE1ldGF2YXJpYWJsZUJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlLCBsb2NhbE1ldGFDb250ZXh0KTtcblxuICBpZiAobWV0YXZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgY29uc3QgbWV0YVR5cGUgPSBtZXRhdmFyaWFibGUuZ2V0TWV0YVR5cGUoKTtcblxuICAgIGlmIChtZXRhVHlwZSA9PT0gZnJhbWVNZXRhVHlwZSkge1xuICAgICAgbWV0YXZhcmlhYmxlVmVyaWZpZWQgPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBmcmFtZU1ldGFUeXBlTmFtZSA9IGZyYW1lTWV0YVR5cGUuZ2V0TmFtZSgpLFxuICAgICAgICAgICAgbWV0YVR5cGVTdHJpbmcgPSBtZXRhVHlwZS5hc1N0cmluZygpO1xuXG4gICAgICBsb2NhbE1ldGFDb250ZXh0LmRlYnVnKGBUaGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgbWV0YXZhcmlhYmxlJ3MgbWV0YS10eXBlIGlzICcke21ldGFUeXBlU3RyaW5nfScgd2hlbiBpdCBzaG91bGQgYmUgJyR7ZnJhbWVNZXRhVHlwZU5hbWV9Jy5gLCBtZXRhdmFyaWFibGVOb2RlKTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgbG9jYWxNZXRhQ29udGV4dC5kZWJ1ZyhgVGhlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIG1ldGF2YXJpYWJsZSBpcyBub3QgcHJlc2VudCcuYCwgbWV0YXZhcmlhYmxlTm9kZSk7XG4gIH1cblxuICBpZiAobWV0YXZhcmlhYmxlVmVyaWZpZWQpIHtcbiAgICBsb2NhbE1ldGFDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgbWV0YXZhcmlhYmxlLmAsIG1ldGF2YXJpYWJsZU5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIG1ldGF2YXJpYWJsZVZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeUp1ZGdlbWVudCIsImZyYW1lTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwibWV0YXZhcmlhYmxlTm9kZVF1ZXJ5IiwianVkZ2VtZW50Tm9kZSIsImFzc2lnbm1lbnRzIiwiZGVyaXZlZCIsImxvY2FsTWV0YUNvbnRleHQiLCJqdWRnZW1lbnRWZXJpZmllZCIsImp1ZGdlbWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwidmVyaWZ5SnVkZ2VtZW50RnVuY3Rpb25zIiwidmVyaWZ5RGVyaXZlZEp1ZGdlbWVudCIsInZlcmlmeVN0YXRlZEp1ZGdlbWVudCIsInNvbWUiLCJ2ZXJpZnlKdWRnZW1lbnRGdW5jdGlvbiIsImRlYnVnIiwiZGVyaXZlZEp1ZGdlbWVudFZlcmlmaWVkIiwibWV0YXZhcmlhYmxlTm9kZSIsIm1ldGF2YXJpYWJsZVZlcmlmaWVkIiwidmVyaWZ5TWV0YXZhcmlhYmxlIiwianVkZ2VtZW50IiwiZmluZEp1ZGdlbWVudEJ5TWV0YXZhcmlhYmxlTm9kZSIsImZyYW1lcyIsImZyYW1lTm9kZSIsImZyYW1lVmVyaWZpZWQiLCJ2ZXJpZnlGcmFtZSIsImZpcnN0RnJhbWUiLCJmaXJzdCIsImZyYW1lIiwiZnJhbWVTaW5ndWxhciIsImlzU2luZ3VsYXIiLCJkZWNsYXJhdGlvbiIsImdldERlY2xhcmF0aW9uIiwiZ2V0TWV0YXZhcmlhYmxlTm9kZSIsIm1ldGFMZW1tYSIsImZpbmRNZXRhTGVtbWFCeU1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhdGhlb3JlbSIsImZpbmRNZXRhdGhlb3JlbUJ5TWV0YXZhcmlhYmxlTm9kZSIsIm1ldGFMZW1tYU1ldGF0aGVvcmVtIiwianVkZ2VtZW50TWF0Y2hlc01ldGFMZW1tYU1ldGF0aGVvcmVtIiwibWF0Y2hNZXRhTGVtbWFPck1ldGFUaGVvcmVtIiwiZGVjbGFyYXRpb25NYXRjaGVzTWV0YUxlbW1hTWV0YXRoZW9yZW0iLCJtZXRhdmFyaWFibGVTdHJpbmciLCJmcmFtZVN0cmluZyIsInN0YXRlZEp1ZGdlbWVudFZlcmlmaWVkIiwiSnVkZ2VtZW50IiwiZnJvbUp1ZGdlbWVudE5vZGVGcmFtZUFuZE1ldGF2YXJpYWJsZU5vZGUiLCJqdWRnZW1lbnRBc3NpZ25tZW50IiwiSnVkZ2VtZW50QXNzaWdubWVudCIsImZyb21KdWRnZW1lbnQiLCJhc3NpZ25tZW50IiwicHVzaCIsIm1ldGF2YXJpYWJsZSIsImZpbmRNZXRhdmFyaWFibGVCeU1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhVHlwZSIsImdldE1ldGFUeXBlIiwiZnJhbWVNZXRhVHlwZSIsImZyYW1lTWV0YVR5cGVOYW1lIiwiZ2V0TmFtZSIsIm1ldGFUeXBlU3RyaW5nIiwiYXNTdHJpbmciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWFBOzs7ZUFBd0JBOzs7Z0VBWEY7NERBQ0U7NkRBQ0U7aUVBQ007cUJBRVY7cUJBQ0k7Ozs7OztBQUUxQixJQUFNQyxpQkFBaUJDLElBQUFBLGdCQUFTLEVBQUMsc0JBQzNCQyx3QkFBd0JELElBQUFBLGdCQUFTLEVBQUM7QUFFekIsU0FBU0YsZ0JBQWdCSSxhQUFhLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxnQkFBZ0I7SUFDM0Ys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
@@ -14,22 +14,22 @@ function _interop_require_default(obj) {
14
14
  default: obj
15
15
  };
16
16
  }
17
- function verifyLabel(labelsMetavariableNode, labels, fileContext) {
17
+ function verifyLabel(metavariableNode, labels, fileContext) {
18
18
  var labelVerified = false;
19
- var labelMetavariableString = fileContext.nodeAsString(labelsMetavariableNode);
20
- fileContext.trace("Verifying the '".concat(labelMetavariableString, "' label..."), labelsMetavariableNode);
21
- var labelPresent = fileContext.isLabelPresentByLabelMetavariableNode(labelsMetavariableNode);
19
+ var labelMetavariableString = fileContext.nodeAsString(metavariableNode);
20
+ fileContext.trace("Verifying the '".concat(labelMetavariableString, "' label..."), metavariableNode);
21
+ var labelPresent = fileContext.isLabelPresentByMetavariableNode(metavariableNode);
22
22
  if (labelPresent) {
23
- fileContext.debug("The '".concat(labelMetavariableString, "' label is already present."), labelsMetavariableNode);
23
+ fileContext.debug("The '".concat(labelMetavariableString, "' label is already present."), metavariableNode);
24
24
  } else {
25
- var metavariableNode = labelsMetavariableNode, label = _label.default.fromMetavariableNode(metavariableNode);
25
+ var label = _label.default.fromMetavariableNode(metavariableNode);
26
26
  labels.push(label);
27
27
  labelVerified = true;
28
28
  }
29
29
  if (labelVerified) {
30
- fileContext.debug("...verified the '".concat(labelMetavariableString, "' label."), labelsMetavariableNode);
30
+ fileContext.debug("...verified the '".concat(labelMetavariableString, "' label."), metavariableNode);
31
31
  }
32
32
  return labelVerified;
33
33
  }
34
34
 
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbGFiZWwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBMYWJlbCBmcm9tIFwiLi4vbGFiZWxcIjtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5TGFiZWwobGFiZWxzTWV0YXZhcmlhYmxlTm9kZSwgbGFiZWxzLCBmaWxlQ29udGV4dCkge1xuICBsZXQgbGFiZWxWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IGxhYmVsTWV0YXZhcmlhYmxlU3RyaW5nID0gZmlsZUNvbnRleHQubm9kZUFzU3RyaW5nKGxhYmVsc01ldGF2YXJpYWJsZU5vZGUpO1xuXG4gIGZpbGVDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2xhYmVsTWV0YXZhcmlhYmxlU3RyaW5nfScgbGFiZWwuLi5gLCBsYWJlbHNNZXRhdmFyaWFibGVOb2RlKTtcblxuICBjb25zdCBsYWJlbFByZXNlbnQgPSBmaWxlQ29udGV4dC5pc0xhYmVsUHJlc2VudEJ5TGFiZWxNZXRhdmFyaWFibGVOb2RlKGxhYmVsc01ldGF2YXJpYWJsZU5vZGUpO1xuXG4gIGlmIChsYWJlbFByZXNlbnQpIHtcbiAgICBmaWxlQ29udGV4dC5kZWJ1ZyhgVGhlICcke2xhYmVsTWV0YXZhcmlhYmxlU3RyaW5nfScgbGFiZWwgaXMgYWxyZWFkeSBwcmVzZW50LmAsIGxhYmVsc01ldGF2YXJpYWJsZU5vZGUpO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IG1ldGF2YXJpYWJsZU5vZGUgPSBsYWJlbHNNZXRhdmFyaWFibGVOb2RlLCAgLy8vXG4gICAgICAgICAgbGFiZWwgPSBMYWJlbC5mcm9tTWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKTtcblxuICAgIGxhYmVscy5wdXNoKGxhYmVsKTtcblxuICAgIGxhYmVsVmVyaWZpZWQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKGxhYmVsVmVyaWZpZWQpIHtcbiAgICBmaWxlQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2xhYmVsTWV0YXZhcmlhYmxlU3RyaW5nfScgbGFiZWwuYCwgbGFiZWxzTWV0YXZhcmlhYmxlTm9kZSk7XG4gIH1cblxuICByZXR1cm4gbGFiZWxWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlMYWJlbCIsImxhYmVsc01ldGF2YXJpYWJsZU5vZGUiLCJsYWJlbHMiLCJmaWxlQ29udGV4dCIsImxhYmVsVmVyaWZpZWQiLCJsYWJlbE1ldGF2YXJpYWJsZVN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwibGFiZWxQcmVzZW50IiwiaXNMYWJlbFByZXNlbnRCeUxhYmVsTWV0YXZhcmlhYmxlTm9kZSIsImRlYnVnIiwibWV0YXZhcmlhYmxlTm9kZSIsImxhYmVsIiwiTGFiZWwiLCJmcm9tTWV0YXZhcmlhYmxlTm9kZSIsInB1c2giXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQUlBOzs7ZUFBd0JBOzs7NERBRk47Ozs7OztBQUVILFNBQVNBLFlBQVlDLHNCQUFzQixFQUFFQyxNQUFNLEVBQUVDLFdBQVc7SUFDN0UsSUFBSUMsZ0JBQWdCO0lBRXBCLElBQU1DLDBCQUEwQkYsWUFBWUcsWUFBWSxDQUFDTDtJQUV6REUsWUFBWUksS0FBSyxDQUFDLEFBQUMsa0JBQXlDLE9BQXhCRix5QkFBd0IsZUFBYUo7SUFFekUsSUFBTU8sZUFBZUwsWUFBWU0scUNBQXFDLENBQUNSO0lBRXZFLElBQUlPLGNBQWM7UUFDaEJMLFlBQVlPLEtBQUssQ0FBQyxBQUFDLFFBQStCLE9BQXhCTCx5QkFBd0IsZ0NBQThCSjtJQUNsRixPQUFPO1FBQ0wsSUFBTVUsbUJBQW1CVix3QkFDbkJXLFFBQVFDLGNBQUssQ0FBQ0Msb0JBQW9CLENBQUNIO1FBRXpDVCxPQUFPYSxJQUFJLENBQUNIO1FBRVpSLGdCQUFnQjtJQUNsQjtJQUVBLElBQUlBLGVBQWU7UUFDakJELFlBQVlPLEtBQUssQ0FBQyxBQUFDLG9CQUEyQyxPQUF4QkwseUJBQXdCLGFBQVdKO0lBQzNFO0lBRUEsT0FBT0c7QUFDVCJ9
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbGFiZWwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBMYWJlbCBmcm9tIFwiLi4vbGFiZWxcIjtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5TGFiZWwobWV0YXZhcmlhYmxlTm9kZSwgbGFiZWxzLCBmaWxlQ29udGV4dCkge1xuICBsZXQgbGFiZWxWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IGxhYmVsTWV0YXZhcmlhYmxlU3RyaW5nID0gZmlsZUNvbnRleHQubm9kZUFzU3RyaW5nKG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gIGZpbGVDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2xhYmVsTWV0YXZhcmlhYmxlU3RyaW5nfScgbGFiZWwuLi5gLCBtZXRhdmFyaWFibGVOb2RlKTtcblxuICBjb25zdCBsYWJlbFByZXNlbnQgPSBmaWxlQ29udGV4dC5pc0xhYmVsUHJlc2VudEJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKTtcblxuICBpZiAobGFiZWxQcmVzZW50KSB7XG4gICAgZmlsZUNvbnRleHQuZGVidWcoYFRoZSAnJHtsYWJlbE1ldGF2YXJpYWJsZVN0cmluZ30nIGxhYmVsIGlzIGFscmVhZHkgcHJlc2VudC5gLCBtZXRhdmFyaWFibGVOb2RlKTtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCBsYWJlbCA9IExhYmVsLmZyb21NZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gICAgbGFiZWxzLnB1c2gobGFiZWwpO1xuXG4gICAgbGFiZWxWZXJpZmllZCA9IHRydWU7XG4gIH1cblxuICBpZiAobGFiZWxWZXJpZmllZCkge1xuICAgIGZpbGVDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7bGFiZWxNZXRhdmFyaWFibGVTdHJpbmd9JyBsYWJlbC5gLCBtZXRhdmFyaWFibGVOb2RlKTtcbiAgfVxuXG4gIHJldHVybiBsYWJlbFZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeUxhYmVsIiwibWV0YXZhcmlhYmxlTm9kZSIsImxhYmVscyIsImZpbGVDb250ZXh0IiwibGFiZWxWZXJpZmllZCIsImxhYmVsTWV0YXZhcmlhYmxlU3RyaW5nIiwibm9kZUFzU3RyaW5nIiwidHJhY2UiLCJsYWJlbFByZXNlbnQiLCJpc0xhYmVsUHJlc2VudEJ5TWV0YXZhcmlhYmxlTm9kZSIsImRlYnVnIiwibGFiZWwiLCJMYWJlbCIsImZyb21NZXRhdmFyaWFibGVOb2RlIiwicHVzaCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBSUE7OztlQUF3QkE7Ozs0REFGTjs7Ozs7O0FBRUgsU0FBU0EsWUFBWUMsZ0JBQWdCLEVBQUVDLE1BQU0sRUFBRUMsV0FBVztJQUN2RSxJQUFJQyxnQkFBZ0I7SUFFcEIsSUFBTUMsMEJBQTBCRixZQUFZRyxZQUFZLENBQUNMO0lBRXpERSxZQUFZSSxLQUFLLENBQUMsQUFBQyxrQkFBeUMsT0FBeEJGLHlCQUF3QixlQUFhSjtJQUV6RSxJQUFNTyxlQUFlTCxZQUFZTSxnQ0FBZ0MsQ0FBQ1I7SUFFbEUsSUFBSU8sY0FBYztRQUNoQkwsWUFBWU8sS0FBSyxDQUFDLEFBQUMsUUFBK0IsT0FBeEJMLHlCQUF3QixnQ0FBOEJKO0lBQ2xGLE9BQU87UUFDTCxJQUFNVSxRQUFRQyxjQUFLLENBQUNDLG9CQUFvQixDQUFDWjtRQUV6Q0MsT0FBT1ksSUFBSSxDQUFDSDtRQUVaUCxnQkFBZ0I7SUFDbEI7SUFFQSxJQUFJQSxlQUFlO1FBQ2pCRCxZQUFZTyxLQUFLLENBQUMsQUFBQyxvQkFBMkMsT0FBeEJMLHlCQUF3QixhQUFXSjtJQUMzRTtJQUVBLE9BQU9HO0FBQ1QifQ==
@@ -21,9 +21,9 @@ function verifyLabels(labelsNode, labels, fileContext) {
21
21
  if (labelsNode === null) {
22
22
  labelsVerified = true;
23
23
  } else {
24
- var labelsMetavariableNodes = labelsMetavariableNodesQuery(labelsNode);
25
- labelsVerified = labelsMetavariableNodes.every(function(labelsMetavariableNode) {
26
- var labelVerified = (0, _label.default)(labelsMetavariableNode, labels, fileContext);
24
+ var labelsMetavariableNodes = labelsMetavariableNodesQuery(labelsNode), metavariableNodes = labelsMetavariableNodes; ///
25
+ labelsVerified = metavariableNodes.every(function(metavariableNode) {
26
+ var labelVerified = (0, _label.default)(metavariableNode, labels, fileContext);
27
27
  if (labelVerified) {
28
28
  return true;
29
29
  }
@@ -32,4 +32,4 @@ function verifyLabels(labelsNode, labels, fileContext) {
32
32
  return labelsVerified;
33
33
  }
34
34
 
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbGFiZWxzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgdmVyaWZ5TGFiZWwgZnJvbSBcIi4uL3ZlcmlmeS9sYWJlbFwiO1xuXG5pbXBvcnQgeyBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBsYWJlbHNNZXRhdmFyaWFibGVOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9sYWJlbHMvbWV0YXZhcmlhYmxlXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlMYWJlbHMobGFiZWxzTm9kZSwgbGFiZWxzLCBmaWxlQ29udGV4dCkge1xuICBsZXQgbGFiZWxzVmVyaWZpZWQ7XG5cbiAgaWYgKGxhYmVsc05vZGUgPT09IG51bGwpIHtcbiAgICBsYWJlbHNWZXJpZmllZCA9IHRydWU7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgbGFiZWxzTWV0YXZhcmlhYmxlTm9kZXMgPSBsYWJlbHNNZXRhdmFyaWFibGVOb2Rlc1F1ZXJ5KGxhYmVsc05vZGUpO1xuXG4gICAgbGFiZWxzVmVyaWZpZWQgPSBsYWJlbHNNZXRhdmFyaWFibGVOb2Rlcy5ldmVyeSgobGFiZWxzTWV0YXZhcmlhYmxlTm9kZSkgPT4ge1xuICAgICAgY29uc3QgbGFiZWxWZXJpZmllZCA9IHZlcmlmeUxhYmVsKGxhYmVsc01ldGF2YXJpYWJsZU5vZGUsIGxhYmVscywgZmlsZUNvbnRleHQpO1xuXG4gICAgICBpZiAobGFiZWxWZXJpZmllZCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBsYWJlbHNWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlMYWJlbHMiLCJsYWJlbHNNZXRhdmFyaWFibGVOb2Rlc1F1ZXJ5Iiwibm9kZXNRdWVyeSIsImxhYmVsc05vZGUiLCJsYWJlbHMiLCJmaWxlQ29udGV4dCIsImxhYmVsc1ZlcmlmaWVkIiwibGFiZWxzTWV0YXZhcmlhYmxlTm9kZXMiLCJldmVyeSIsImxhYmVsc01ldGF2YXJpYWJsZU5vZGUiLCJsYWJlbFZlcmlmaWVkIiwidmVyaWZ5TGFiZWwiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVFBOzs7ZUFBd0JBOzs7NERBTkE7cUJBRUc7Ozs7OztBQUUzQixJQUFNQywrQkFBK0JDLElBQUFBLGlCQUFVLEVBQUM7QUFFakMsU0FBU0YsYUFBYUcsVUFBVSxFQUFFQyxNQUFNLEVBQUVDLFdBQVc7SUFDbEUsSUFBSUM7SUFFSixJQUFJSCxlQUFlLE1BQU07UUFDdkJHLGlCQUFpQjtJQUNuQixPQUFPO1FBQ0wsSUFBTUMsMEJBQTBCTiw2QkFBNkJFO1FBRTdERyxpQkFBaUJDLHdCQUF3QkMsS0FBSyxDQUFDLFNBQUNDO1lBQzlDLElBQU1DLGdCQUFnQkMsSUFBQUEsY0FBVyxFQUFDRix3QkFBd0JMLFFBQVFDO1lBRWxFLElBQUlLLGVBQWU7Z0JBQ2pCLE9BQU87WUFDVDtRQUNGO0lBQ0Y7SUFFQSxPQUFPSjtBQUNUIn0=
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbGFiZWxzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgdmVyaWZ5TGFiZWwgZnJvbSBcIi4uL3ZlcmlmeS9sYWJlbFwiO1xuXG5pbXBvcnQgeyBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBsYWJlbHNNZXRhdmFyaWFibGVOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9sYWJlbHMvbWV0YXZhcmlhYmxlXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlMYWJlbHMobGFiZWxzTm9kZSwgbGFiZWxzLCBmaWxlQ29udGV4dCkge1xuICBsZXQgbGFiZWxzVmVyaWZpZWQ7XG5cbiAgaWYgKGxhYmVsc05vZGUgPT09IG51bGwpIHtcbiAgICBsYWJlbHNWZXJpZmllZCA9IHRydWU7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgbGFiZWxzTWV0YXZhcmlhYmxlTm9kZXMgPSBsYWJlbHNNZXRhdmFyaWFibGVOb2Rlc1F1ZXJ5KGxhYmVsc05vZGUpLFxuICAgICAgICAgIG1ldGF2YXJpYWJsZU5vZGVzID0gbGFiZWxzTWV0YXZhcmlhYmxlTm9kZXM7ICAvLy9cblxuICAgIGxhYmVsc1ZlcmlmaWVkID0gbWV0YXZhcmlhYmxlTm9kZXMuZXZlcnkoKG1ldGF2YXJpYWJsZU5vZGUpID0+IHtcbiAgICAgIGNvbnN0IGxhYmVsVmVyaWZpZWQgPSB2ZXJpZnlMYWJlbChtZXRhdmFyaWFibGVOb2RlLCBsYWJlbHMsIGZpbGVDb250ZXh0KTtcblxuICAgICAgaWYgKGxhYmVsVmVyaWZpZWQpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gbGFiZWxzVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5TGFiZWxzIiwibGFiZWxzTWV0YXZhcmlhYmxlTm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJsYWJlbHNOb2RlIiwibGFiZWxzIiwiZmlsZUNvbnRleHQiLCJsYWJlbHNWZXJpZmllZCIsImxhYmVsc01ldGF2YXJpYWJsZU5vZGVzIiwibWV0YXZhcmlhYmxlTm9kZXMiLCJldmVyeSIsIm1ldGF2YXJpYWJsZU5vZGUiLCJsYWJlbFZlcmlmaWVkIiwidmVyaWZ5TGFiZWwiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVFBOzs7ZUFBd0JBOzs7NERBTkE7cUJBRUc7Ozs7OztBQUUzQixJQUFNQywrQkFBK0JDLElBQUFBLGlCQUFVLEVBQUM7QUFFakMsU0FBU0YsYUFBYUcsVUFBVSxFQUFFQyxNQUFNLEVBQUVDLFdBQVc7SUFDbEUsSUFBSUM7SUFFSixJQUFJSCxlQUFlLE1BQU07UUFDdkJHLGlCQUFpQjtJQUNuQixPQUFPO1FBQ0wsSUFBTUMsMEJBQTBCTiw2QkFBNkJFLGFBQ3ZESyxvQkFBb0JELHlCQUEwQixHQUFHO1FBRXZERCxpQkFBaUJFLGtCQUFrQkMsS0FBSyxDQUFDLFNBQUNDO1lBQ3hDLElBQU1DLGdCQUFnQkMsSUFBQUEsY0FBVyxFQUFDRixrQkFBa0JOLFFBQVFDO1lBRTVELElBQUlNLGVBQWU7Z0JBQ2pCLE9BQU87WUFDVDtRQUNGO0lBQ0Y7SUFFQSxPQUFPTDtBQUNUIn0=
@@ -16,20 +16,24 @@ function _interop_require_default(obj) {
16
16
  default: obj
17
17
  };
18
18
  }
19
- var metastatementNodeQuery = (0, _query.nodeQuery)("/qualifiedMetastatement/metastatement!"), referenceMetavariableNodeQuery = (0, _query.nodeQuery)("/qualifiedMetastatement/reference!/metavariable!");
19
+ var metavariableNodeQuery = (0, _query.nodeQuery)("/qualifiedMetastatement/reference!/metavariable!"), metastatementNodeQuery = (0, _query.nodeQuery)("/qualifiedMetastatement/metastatement!");
20
20
  function verifyQualifiedMetastatement(qualifiedMetastatementNode, substitutions, assignments, derived, localMetaContext) {
21
21
  var qualifiedMetastatementVerified = false;
22
22
  var metastatementNode = metastatementNodeQuery(qualifiedMetastatementNode);
23
23
  if (metastatementNode !== null) {
24
24
  var metastatementString = localMetaContext.nodeAsString(metastatementNode), metastatementLocalMetaContext = localMetaContext; ///
25
25
  localMetaContext.trace("Verifying the '".concat(metastatementString, "' qualified metastatement..."), qualifiedMetastatementNode);
26
- var referenceMetavariableNode = referenceMetavariableNodeQuery(qualifiedMetastatementNode), labelMetavariableNode = referenceMetavariableNode, rule = localMetaContext.findRuleByLabelMetavariableNode(labelMetavariableNode);
27
- if (rule !== null) {
28
- var ruleMatchesMetastatement = rule.matchMetastatement(metastatementNode, metastatementLocalMetaContext);
29
- qualifiedMetastatementVerified = ruleMatchesMetastatement; ///
30
- } else {
26
+ var metavariableNode = metavariableNodeQuery(qualifiedMetastatementNode);
27
+ if (!qualifiedMetastatementVerified) {
28
+ var rule = localMetaContext.findRuleByMetavariableNode(metavariableNode);
29
+ if (rule !== null) {
30
+ var ruleMatchesMetastatement = rule.matchMetastatement(metastatementNode, metastatementLocalMetaContext);
31
+ qualifiedMetastatementVerified = ruleMatchesMetastatement; ///
32
+ }
33
+ }
34
+ if (!qualifiedMetastatementVerified) {
31
35
  if (substitutions !== null) {
32
- var metavariableNode = referenceMetavariableNode, metavariablePresent = localMetaContext.isMetavariablePresentByMetavariableNode(metavariableNode, localMetaContext);
36
+ var metavariablePresent = localMetaContext.isMetavariablePresentByMetavariableNode(metavariableNode, localMetaContext);
33
37
  if (metavariablePresent) {
34
38
  var metastatementVerified = (0, _metastatement.default)(metastatementNode, assignments, derived, localMetaContext, function() {
35
39
  var verifiedAhead = true;
@@ -52,4 +56,4 @@ function verifyQualifiedMetastatement(qualifiedMetastatementNode, substitutions,
52
56
  return qualifiedMetastatementVerified;
53
57
  }
54
58
 
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvbWV0YXN0YXRlbWVudC9xdWFsaWZpZWQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB2ZXJpZnlNZXRhc3RhdGVtZW50IGZyb20gXCIuLi9tZXRhc3RhdGVtZW50XCI7XG5pbXBvcnQgdmVyaWZ5TWV0YXZhcmlhYmxlQWdhaW5zdE1ldGFzdGF0ZW1lbnQgZnJvbSBcIi4uLy4uL3ZlcmlmeS9tZXRhdmFyaWFibGVBZ2FpbnN0TWV0YXN0YXRlbWVudFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcXVhbGlmaWVkTWV0YXN0YXRlbWVudC9tZXRhc3RhdGVtZW50IVwiKSxcbiAgICAgIHJlZmVyZW5jZU1ldGF2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9xdWFsaWZpZWRNZXRhc3RhdGVtZW50L3JlZmVyZW5jZSEvbWV0YXZhcmlhYmxlIVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5UXVhbGlmaWVkTWV0YXN0YXRlbWVudChxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSwgc3Vic3RpdHV0aW9ucywgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgbGV0IHF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGVRdWVyeShxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgaWYgKG1ldGFzdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgbWV0YXN0YXRlbWVudFN0cmluZyA9IGxvY2FsTWV0YUNvbnRleHQubm9kZUFzU3RyaW5nKG1ldGFzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICBtZXRhc3RhdGVtZW50TG9jYWxNZXRhQ29udGV4dCA9IGxvY2FsTWV0YUNvbnRleHQ7IC8vL1xuXG4gICAgbG9jYWxNZXRhQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgcXVhbGlmaWVkIG1ldGFzdGF0ZW1lbnQuLi5gLCBxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBjb25zdCByZWZlcmVuY2VNZXRhdmFyaWFibGVOb2RlID0gcmVmZXJlbmNlTWV0YXZhcmlhYmxlTm9kZVF1ZXJ5KHF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICBsYWJlbE1ldGF2YXJpYWJsZU5vZGUgPSByZWZlcmVuY2VNZXRhdmFyaWFibGVOb2RlLCAgLy8vXG4gICAgICAgICAgcnVsZSA9IGxvY2FsTWV0YUNvbnRleHQuZmluZFJ1bGVCeUxhYmVsTWV0YXZhcmlhYmxlTm9kZShsYWJlbE1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gICAgaWYgKHJ1bGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHJ1bGVNYXRjaGVzTWV0YXN0YXRlbWVudCA9IHJ1bGUubWF0Y2hNZXRhc3RhdGVtZW50KG1ldGFzdGF0ZW1lbnROb2RlLCBtZXRhc3RhdGVtZW50TG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICAgIHF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IHJ1bGVNYXRjaGVzTWV0YXN0YXRlbWVudDsgIC8vL1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoc3Vic3RpdHV0aW9ucyAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCBtZXRhdmFyaWFibGVOb2RlID0gcmVmZXJlbmNlTWV0YXZhcmlhYmxlTm9kZSwgLy8vXG4gICAgICAgICAgICAgIG1ldGF2YXJpYWJsZVByZXNlbnQgPSBsb2NhbE1ldGFDb250ZXh0LmlzTWV0YXZhcmlhYmxlUHJlc2VudEJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlLCBsb2NhbE1ldGFDb250ZXh0KTtcblxuICAgICAgICBpZiAobWV0YXZhcmlhYmxlUHJlc2VudCkge1xuICAgICAgICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeU1ldGFzdGF0ZW1lbnQobWV0YXN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbE1ldGFDb250ZXh0LCAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdHJ1ZTtcblxuICAgICAgICAgICAgcmV0dXJuIHZlcmlmaWVkQWhlYWQ7XG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICBpZiAobWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICAgICAgICBjb25zdCBtZXRhdmFyaWFibGVWZXJpZmllZEFnYWluc3RNZXRhc3RhdGVtZW50ID0gdmVyaWZ5TWV0YXZhcmlhYmxlQWdhaW5zdE1ldGFzdGF0ZW1lbnQobWV0YXZhcmlhYmxlTm9kZSwgbWV0YXN0YXRlbWVudE5vZGUsIHN1YnN0aXR1dGlvbnMsICgpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgdmVyaWZpZWRBaGVhZCA9IHRydWU7XG5cbiAgICAgICAgICAgICAgcmV0dXJuIHZlcmlmaWVkQWhlYWQ7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgcXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkID0gbWV0YXZhcmlhYmxlVmVyaWZpZWRBZ2FpbnN0TWV0YXN0YXRlbWVudDsgLy8vXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCkge1xuICAgICAgbG9jYWxNZXRhQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke21ldGFzdGF0ZW1lbnRTdHJpbmd9JyBxdWFsaWZpZWQgbWV0YXN0YXRlbWVudC5gLCBxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlRdWFsaWZpZWRNZXRhc3RhdGVtZW50IiwibWV0YXN0YXRlbWVudE5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInJlZmVyZW5jZU1ldGF2YXJpYWJsZU5vZGVRdWVyeSIsInF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlIiwic3Vic3RpdHV0aW9ucyIsImFzc2lnbm1lbnRzIiwiZGVyaXZlZCIsImxvY2FsTWV0YUNvbnRleHQiLCJxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQiLCJtZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFzdGF0ZW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJtZXRhc3RhdGVtZW50TG9jYWxNZXRhQ29udGV4dCIsInRyYWNlIiwicmVmZXJlbmNlTWV0YXZhcmlhYmxlTm9kZSIsImxhYmVsTWV0YXZhcmlhYmxlTm9kZSIsInJ1bGUiLCJmaW5kUnVsZUJ5TGFiZWxNZXRhdmFyaWFibGVOb2RlIiwicnVsZU1hdGNoZXNNZXRhc3RhdGVtZW50IiwibWF0Y2hNZXRhc3RhdGVtZW50IiwibWV0YXZhcmlhYmxlTm9kZSIsIm1ldGF2YXJpYWJsZVByZXNlbnQiLCJpc01ldGF2YXJpYWJsZVByZXNlbnRCeU1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhc3RhdGVtZW50VmVyaWZpZWQiLCJ2ZXJpZnlNZXRhc3RhdGVtZW50IiwidmVyaWZpZWRBaGVhZCIsIm1ldGF2YXJpYWJsZVZlcmlmaWVkQWdhaW5zdE1ldGFzdGF0ZW1lbnQiLCJ2ZXJpZnlNZXRhdmFyaWFibGVBZ2FpbnN0TWV0YXN0YXRlbWVudCIsImRlYnVnIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFVQTs7O2VBQXdCQTs7O29FQVJRO3VGQUNtQjtxQkFFekI7Ozs7OztBQUUxQixJQUFNQyx5QkFBeUJDLElBQUFBLGdCQUFTLEVBQUMsMkNBQ25DQyxpQ0FBaUNELElBQUFBLGdCQUFTLEVBQUM7QUFFbEMsU0FBU0YsNkJBQTZCSSwwQkFBMEIsRUFBRUMsYUFBYSxFQUFFQyxXQUFXLEVBQUVDLE9BQU8sRUFBRUMsZ0JBQWdCO0lBQ3BJLElBQUlDLGlDQUFpQztJQUVyQyxJQUFNQyxvQkFBb0JULHVCQUF1Qkc7SUFFakQsSUFBSU0sc0JBQXNCLE1BQU07UUFDOUIsSUFBTUMsc0JBQXNCSCxpQkFBaUJJLFlBQVksQ0FBQ0Ysb0JBQ3BERyxnQ0FBZ0NMLGtCQUFrQixHQUFHO1FBRTNEQSxpQkFBaUJNLEtBQUssQ0FBQyxBQUFDLGtCQUFxQyxPQUFwQkgscUJBQW9CLGlDQUErQlA7UUFFNUYsSUFBTVcsNEJBQTRCWiwrQkFBK0JDLDZCQUMzRFksd0JBQXdCRCwyQkFDeEJFLE9BQU9ULGlCQUFpQlUsK0JBQStCLENBQUNGO1FBRTlELElBQUlDLFNBQVMsTUFBTTtZQUNqQixJQUFNRSwyQkFBMkJGLEtBQUtHLGtCQUFrQixDQUFDVixtQkFBbUJHO1lBRTVFSixpQ0FBaUNVLDBCQUEyQixHQUFHO1FBQ2pFLE9BQU87WUFDTCxJQUFJZCxrQkFBa0IsTUFBTTtnQkFDMUIsSUFBTWdCLG1CQUFtQk4sMkJBQ25CTyxzQkFBc0JkLGlCQUFpQmUsdUNBQXVDLENBQUNGLGtCQUFrQmI7Z0JBRXZHLElBQUljLHFCQUFxQjtvQkFDdkIsSUFBTUUsd0JBQXdCQyxJQUFBQSxzQkFBbUIsRUFBQ2YsbUJBQW1CSixhQUFhQyxTQUFTQyxrQkFBa0I7d0JBQzNHLElBQU1rQixnQkFBZ0I7d0JBRXRCLE9BQU9BO29CQUNUO29CQUVBLElBQUlGLHVCQUF1Qjt3QkFDekIsSUFBTUcsMkNBQTJDQyxJQUFBQSx5Q0FBc0MsRUFBQ1Asa0JBQWtCWCxtQkFBbUJMLGVBQWU7NEJBQzFJLElBQU1xQixnQkFBZ0I7NEJBRXRCLE9BQU9BO3dCQUNUO3dCQUVBakIsaUNBQWlDa0IsMENBQTBDLEdBQUc7b0JBQ2hGO2dCQUNGO1lBQ0Y7UUFDRjtRQUVBLElBQUlsQixnQ0FBZ0M7WUFDbENELGlCQUFpQnFCLEtBQUssQ0FBQyxBQUFDLG9CQUF1QyxPQUFwQmxCLHFCQUFvQiwrQkFBNkJQO1FBQzlGO0lBQ0Y7SUFFQSxPQUFPSztBQUNUIn0=
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvbWV0YXN0YXRlbWVudC9xdWFsaWZpZWQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB2ZXJpZnlNZXRhc3RhdGVtZW50IGZyb20gXCIuLi9tZXRhc3RhdGVtZW50XCI7XG5pbXBvcnQgdmVyaWZ5TWV0YXZhcmlhYmxlQWdhaW5zdE1ldGFzdGF0ZW1lbnQgZnJvbSBcIi4uLy4uL3ZlcmlmeS9tZXRhdmFyaWFibGVBZ2FpbnN0TWV0YXN0YXRlbWVudFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IG1ldGF2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9xdWFsaWZpZWRNZXRhc3RhdGVtZW50L3JlZmVyZW5jZSEvbWV0YXZhcmlhYmxlIVwiKSxcbiAgICAgIG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcXVhbGlmaWVkTWV0YXN0YXRlbWVudC9tZXRhc3RhdGVtZW50IVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5UXVhbGlmaWVkTWV0YXN0YXRlbWVudChxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSwgc3Vic3RpdHV0aW9ucywgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgbGV0IHF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGVRdWVyeShxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgaWYgKG1ldGFzdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgbWV0YXN0YXRlbWVudFN0cmluZyA9IGxvY2FsTWV0YUNvbnRleHQubm9kZUFzU3RyaW5nKG1ldGFzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICBtZXRhc3RhdGVtZW50TG9jYWxNZXRhQ29udGV4dCA9IGxvY2FsTWV0YUNvbnRleHQ7IC8vL1xuXG4gICAgbG9jYWxNZXRhQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgcXVhbGlmaWVkIG1ldGFzdGF0ZW1lbnQuLi5gLCBxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBjb25zdCBtZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5KHF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIGlmICghcXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICBjb25zdCBydWxlID0gbG9jYWxNZXRhQ29udGV4dC5maW5kUnVsZUJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKTtcblxuICAgICAgaWYgKHJ1bGUgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgcnVsZU1hdGNoZXNNZXRhc3RhdGVtZW50ID0gcnVsZS5tYXRjaE1ldGFzdGF0ZW1lbnQobWV0YXN0YXRlbWVudE5vZGUsIG1ldGFzdGF0ZW1lbnRMb2NhbE1ldGFDb250ZXh0KTtcblxuICAgICAgICBxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQgPSBydWxlTWF0Y2hlc01ldGFzdGF0ZW1lbnQ7ICAvLy9cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoIXF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCkge1xuICAgICAgaWYgKHN1YnN0aXR1dGlvbnMgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgbWV0YXZhcmlhYmxlUHJlc2VudCA9IGxvY2FsTWV0YUNvbnRleHQuaXNNZXRhdmFyaWFibGVQcmVzZW50QnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUsIGxvY2FsTWV0YUNvbnRleHQpO1xuXG4gICAgICAgIGlmIChtZXRhdmFyaWFibGVQcmVzZW50KSB7XG4gICAgICAgICAgY29uc3QgbWV0YXN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5TWV0YXN0YXRlbWVudChtZXRhc3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsTWV0YUNvbnRleHQsICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHZlcmlmaWVkQWhlYWQgPSB0cnVlO1xuXG4gICAgICAgICAgICByZXR1cm4gdmVyaWZpZWRBaGVhZDtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIGlmIChtZXRhc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgICAgICAgIGNvbnN0IG1ldGF2YXJpYWJsZVZlcmlmaWVkQWdhaW5zdE1ldGFzdGF0ZW1lbnQgPSB2ZXJpZnlNZXRhdmFyaWFibGVBZ2FpbnN0TWV0YXN0YXRlbWVudChtZXRhdmFyaWFibGVOb2RlLCBtZXRhc3RhdGVtZW50Tm9kZSwgc3Vic3RpdHV0aW9ucywgKCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdHJ1ZTtcblxuICAgICAgICAgICAgICByZXR1cm4gdmVyaWZpZWRBaGVhZDtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQgPSBtZXRhdmFyaWFibGVWZXJpZmllZEFnYWluc3RNZXRhc3RhdGVtZW50OyAvLy9cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICBsb2NhbE1ldGFDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7bWV0YXN0YXRlbWVudFN0cmluZ30nIHF1YWxpZmllZCBtZXRhc3RhdGVtZW50LmAsIHF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gcXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeVF1YWxpZmllZE1ldGFzdGF0ZW1lbnQiLCJtZXRhdmFyaWFibGVOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5IiwicXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUiLCJzdWJzdGl0dXRpb25zIiwiYXNzaWdubWVudHMiLCJkZXJpdmVkIiwibG9jYWxNZXRhQ29udGV4dCIsInF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCIsIm1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXN0YXRlbWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsIm1ldGFzdGF0ZW1lbnRMb2NhbE1ldGFDb250ZXh0IiwidHJhY2UiLCJtZXRhdmFyaWFibGVOb2RlIiwicnVsZSIsImZpbmRSdWxlQnlNZXRhdmFyaWFibGVOb2RlIiwicnVsZU1hdGNoZXNNZXRhc3RhdGVtZW50IiwibWF0Y2hNZXRhc3RhdGVtZW50IiwibWV0YXZhcmlhYmxlUHJlc2VudCIsImlzTWV0YXZhcmlhYmxlUHJlc2VudEJ5TWV0YXZhcmlhYmxlTm9kZSIsIm1ldGFzdGF0ZW1lbnRWZXJpZmllZCIsInZlcmlmeU1ldGFzdGF0ZW1lbnQiLCJ2ZXJpZmllZEFoZWFkIiwibWV0YXZhcmlhYmxlVmVyaWZpZWRBZ2FpbnN0TWV0YXN0YXRlbWVudCIsInZlcmlmeU1ldGF2YXJpYWJsZUFnYWluc3RNZXRhc3RhdGVtZW50IiwiZGVidWciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVVBOzs7ZUFBd0JBOzs7b0VBUlE7dUZBQ21CO3FCQUV6Qjs7Ozs7O0FBRTFCLElBQU1DLHdCQUF3QkMsSUFBQUEsZ0JBQVMsRUFBQyxxREFDbENDLHlCQUF5QkQsSUFBQUEsZ0JBQVMsRUFBQztBQUUxQixTQUFTRiw2QkFBNkJJLDBCQUEwQixFQUFFQyxhQUFhLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxnQkFBZ0I7SUFDcEksSUFBSUMsaUNBQWlDO0lBRXJDLElBQU1DLG9CQUFvQlAsdUJBQXVCQztJQUVqRCxJQUFJTSxzQkFBc0IsTUFBTTtRQUM5QixJQUFNQyxzQkFBc0JILGlCQUFpQkksWUFBWSxDQUFDRixvQkFDcERHLGdDQUFnQ0wsa0JBQWtCLEdBQUc7UUFFM0RBLGlCQUFpQk0sS0FBSyxDQUFDLEFBQUMsa0JBQXFDLE9BQXBCSCxxQkFBb0IsaUNBQStCUDtRQUU1RixJQUFNVyxtQkFBbUJkLHNCQUFzQkc7UUFFL0MsSUFBSSxDQUFDSyxnQ0FBZ0M7WUFDbkMsSUFBTU8sT0FBT1IsaUJBQWlCUywwQkFBMEIsQ0FBQ0Y7WUFFekQsSUFBSUMsU0FBUyxNQUFNO2dCQUNqQixJQUFNRSwyQkFBMkJGLEtBQUtHLGtCQUFrQixDQUFDVCxtQkFBbUJHO2dCQUU1RUosaUNBQWlDUywwQkFBMkIsR0FBRztZQUNqRTtRQUNGO1FBRUEsSUFBSSxDQUFDVCxnQ0FBZ0M7WUFDbkMsSUFBSUosa0JBQWtCLE1BQU07Z0JBQzFCLElBQU1lLHNCQUFzQlosaUJBQWlCYSx1Q0FBdUMsQ0FBQ04sa0JBQWtCUDtnQkFFdkcsSUFBSVkscUJBQXFCO29CQUN2QixJQUFNRSx3QkFBd0JDLElBQUFBLHNCQUFtQixFQUFDYixtQkFBbUJKLGFBQWFDLFNBQVNDLGtCQUFrQjt3QkFDM0csSUFBTWdCLGdCQUFnQjt3QkFFdEIsT0FBT0E7b0JBQ1Q7b0JBRUEsSUFBSUYsdUJBQXVCO3dCQUN6QixJQUFNRywyQ0FBMkNDLElBQUFBLHlDQUFzQyxFQUFDWCxrQkFBa0JMLG1CQUFtQkwsZUFBZTs0QkFDMUksSUFBTW1CLGdCQUFnQjs0QkFFdEIsT0FBT0E7d0JBQ1Q7d0JBRUFmLGlDQUFpQ2dCLDBDQUEwQyxHQUFHO29CQUNoRjtnQkFDRjtZQUNGO1FBQ0Y7UUFFQSxJQUFJaEIsZ0NBQWdDO1lBQ2xDRCxpQkFBaUJtQixLQUFLLENBQUMsQUFBQyxvQkFBdUMsT0FBcEJoQixxQkFBb0IsK0JBQTZCUDtRQUM5RjtJQUNGO0lBRUEsT0FBT0s7QUFDVCJ9
@@ -9,7 +9,6 @@ Object.defineProperty(exports, "default", {
9
9
  }
10
10
  });
11
11
  var _judgement = /*#__PURE__*/ _interop_require_default(require("../verify/judgement"));
12
- var _metaEquality = /*#__PURE__*/ _interop_require_default(require("../verify/metaEquality"));
13
12
  var _metastatement = /*#__PURE__*/ _interop_require_default(require("../verifier/node/metastatement"));
14
13
  var _query = require("../utilities/query");
15
14
  function _interop_require_default(obj) {
@@ -17,13 +16,12 @@ function _interop_require_default(obj) {
17
16
  default: obj
18
17
  };
19
18
  }
20
- var judgementNodeQuery = (0, _query.nodeQuery)("/metastatement/judgement!"), metaEqualityNodeQuery = (0, _query.nodeQuery)("/metastatement/metaEquality!");
19
+ var judgementNodeQuery = (0, _query.nodeQuery)("/metastatement/judgement!");
21
20
  function verifyMetastatement(metastatementNode, assignments, derived, localMetaContext) {
22
21
  var metastatementVerified;
23
22
  var metastatementString = localMetaContext.nodeAsString(metastatementNode);
24
23
  localMetaContext.trace("Verifying the '".concat(metastatementString, "' metastatement..."), metastatementNode);
25
24
  var verifyMetaStatementFunctions = [
26
- verifyMetastatementAsMetaEquality,
27
25
  verifyMetastatementAsJudgement,
28
26
  verifyMetastatementAsIs
29
27
  ];
@@ -42,27 +40,13 @@ Object.assign(_metastatement.default, {
42
40
  verifyMetastatement: verifyMetastatement
43
41
  });
44
42
  var _default = verifyMetastatement;
45
- function verifyMetastatementAsMetaEquality(metastatementNode, assignments, derived, localMetaContext) {
46
- var metastatementVerifiedAsMetaEquality = false;
47
- var metaEqualityNode = metaEqualityNodeQuery(metastatementNode);
48
- if (metaEqualityNode !== null) {
49
- var metastatementString = localMetaContext.nodeAsString(metastatementNode);
50
- localMetaContext.trace("Verifying the '".concat(metastatementString, "' metastatement as a meta-equality..."), metastatementNode);
51
- var metaEqualityVerified = (0, _metaEquality.default)(metaEqualityNode, assignments, derived, localMetaContext);
52
- metastatementVerifiedAsMetaEquality = metaEqualityVerified; ///
53
- if (metastatementVerifiedAsMetaEquality) {
54
- localMetaContext.debug("...verified the '".concat(metastatementString, "' metastatement as a meta-equality."), metastatementNode);
55
- }
56
- }
57
- return metastatementVerifiedAsMetaEquality;
58
- }
59
43
  function verifyMetastatementAsJudgement(metastatementNode, assignments, derived, localMetaContext) {
60
44
  var metastatementVerifiedAsJudgement = false;
61
45
  var judgementNode = judgementNodeQuery(metastatementNode);
62
46
  if (judgementNode !== null) {
63
47
  var metastatementString = localMetaContext.nodeAsString(metastatementNode);
64
48
  localMetaContext.trace("Verifying the '".concat(metastatementString, "' metastatement as a judgement..."), metastatementNode);
65
- var judgementVerified = (0, _judgement.default)(judgementNode, derived, localMetaContext);
49
+ var judgementVerified = (0, _judgement.default)(judgementNode, assignments, derived, localMetaContext);
66
50
  metastatementVerifiedAsJudgement = judgementVerified; ///
67
51
  if (metastatementVerifiedAsJudgement) {
68
52
  localMetaContext.debug("...verified the '".concat(metastatementString, "' metastatement as a judgement."), metastatementNode);
@@ -72,8 +56,8 @@ function verifyMetastatementAsJudgement(metastatementNode, assignments, derived,
72
56
  }
73
57
  function verifyMetastatementAsIs(metastatementNode, assignments, derived, localMetaContext) {
74
58
  var metastatementVerifiedAsIs = false;
75
- var judgementNode = judgementNodeQuery(metastatementNode), metaEqualityNode = metaEqualityNodeQuery(metastatementNode);
76
- if (judgementNode === null && metaEqualityNode === null) {
59
+ var judgementNode = judgementNodeQuery(metastatementNode);
60
+ if (judgementNode === null) {
77
61
  var metastatementString = localMetaContext.nodeAsString(metastatementNode);
78
62
  localMetaContext.trace("Verifying the '".concat(metastatementString, "' metastatement as is..."), metastatementNode);
79
63
  var nonTerminalNode = metastatementNode, nonTerminalNodeVerified = _metastatement.default.verifyNonTerminalNode(nonTerminalNode, localMetaContext, function() {
@@ -88,4 +72,4 @@ function verifyMetastatementAsIs(metastatementNode, assignments, derived, localM
88
72
  return metastatementVerifiedAsIs;
89
73
  }
90
74
 
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YXN0YXRlbWVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHZlcmlmeUp1ZGdlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L2p1ZGdlbWVudFwiO1xuaW1wb3J0IHZlcmlmeU1ldGFFcXVhbGl0eSBmcm9tIFwiLi4vdmVyaWZ5L21ldGFFcXVhbGl0eVwiO1xuaW1wb3J0IG1ldGFzdGF0ZW1lbnROb2RlVmVyaWZpZXIgZnJvbSBcIi4uL3ZlcmlmaWVyL25vZGUvbWV0YXN0YXRlbWVudFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IGp1ZGdlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhc3RhdGVtZW50L2p1ZGdlbWVudCFcIiksXG4gICAgICBtZXRhRXF1YWxpdHlOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YXN0YXRlbWVudC9tZXRhRXF1YWxpdHkhXCIpO1xuXG5mdW5jdGlvbiB2ZXJpZnlNZXRhc3RhdGVtZW50KG1ldGFzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCkge1xuICBsZXQgbWV0YXN0YXRlbWVudFZlcmlmaWVkO1xuXG4gIGNvbnN0IG1ldGFzdGF0ZW1lbnRTdHJpbmcgPSBsb2NhbE1ldGFDb250ZXh0Lm5vZGVBc1N0cmluZyhtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgbG9jYWxNZXRhQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgbWV0YXN0YXRlbWVudC4uLmAsIG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICBjb25zdCB2ZXJpZnlNZXRhU3RhdGVtZW50RnVuY3Rpb25zID0gW1xuICAgIHZlcmlmeU1ldGFzdGF0ZW1lbnRBc01ldGFFcXVhbGl0eSxcbiAgICB2ZXJpZnlNZXRhc3RhdGVtZW50QXNKdWRnZW1lbnQsXG4gICAgdmVyaWZ5TWV0YXN0YXRlbWVudEFzSXNcbiAgXTtcblxuICBtZXRhc3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlNZXRhU3RhdGVtZW50RnVuY3Rpb25zLnNvbWUoKHZlcmlmeVN0YXRlbWVudEZ1bmN0aW9uKSA9PiB7XG4gICAgY29uc3QgbWV0YXN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5U3RhdGVtZW50RnVuY3Rpb24obWV0YXN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbE1ldGFDb250ZXh0KTtcblxuICAgIGlmIChtZXRhc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG5cbiAgaWYgKG1ldGFzdGF0ZW1lbnRWZXJpZmllZCkge1xuICAgIGxvY2FsTWV0YUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgbWV0YXN0YXRlbWVudC5gLCBtZXRhc3RhdGVtZW50Tm9kZSk7XG4gIH1cblxuICByZXR1cm4gbWV0YXN0YXRlbWVudFZlcmlmaWVkO1xufVxuXG5PYmplY3QuYXNzaWduKG1ldGFzdGF0ZW1lbnROb2RlVmVyaWZpZXIsIHtcbiAgdmVyaWZ5TWV0YXN0YXRlbWVudFxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IHZlcmlmeU1ldGFzdGF0ZW1lbnQ7XG5cbmZ1bmN0aW9uIHZlcmlmeU1ldGFzdGF0ZW1lbnRBc01ldGFFcXVhbGl0eShtZXRhc3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgbGV0IG1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzTWV0YUVxdWFsaXR5ID0gZmFsc2U7XG5cbiAgY29uc3QgbWV0YUVxdWFsaXR5Tm9kZSA9IG1ldGFFcXVhbGl0eU5vZGVRdWVyeShtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgaWYgKG1ldGFFcXVhbGl0eU5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCBtZXRhc3RhdGVtZW50U3RyaW5nID0gbG9jYWxNZXRhQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgbG9jYWxNZXRhQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgbWV0YXN0YXRlbWVudCBhcyBhIG1ldGEtZXF1YWxpdHkuLi5gLCBtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBjb25zdCBtZXRhRXF1YWxpdHlWZXJpZmllZCA9IHZlcmlmeU1ldGFFcXVhbGl0eShtZXRhRXF1YWxpdHlOb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICBtZXRhc3RhdGVtZW50VmVyaWZpZWRBc01ldGFFcXVhbGl0eSA9IG1ldGFFcXVhbGl0eVZlcmlmaWVkOyAgLy8vXG5cbiAgICBpZiAobWV0YXN0YXRlbWVudFZlcmlmaWVkQXNNZXRhRXF1YWxpdHkpIHtcbiAgICAgIGxvY2FsTWV0YUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgbWV0YXN0YXRlbWVudCBhcyBhIG1ldGEtZXF1YWxpdHkuYCwgbWV0YXN0YXRlbWVudE5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBtZXRhc3RhdGVtZW50VmVyaWZpZWRBc01ldGFFcXVhbGl0eTtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5TWV0YXN0YXRlbWVudEFzSnVkZ2VtZW50KG1ldGFzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCkge1xuICBsZXQgbWV0YXN0YXRlbWVudFZlcmlmaWVkQXNKdWRnZW1lbnQgPSBmYWxzZTtcblxuICBjb25zdCBqdWRnZW1lbnROb2RlID0ganVkZ2VtZW50Tm9kZVF1ZXJ5KG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICBpZiAoanVkZ2VtZW50Tm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnRTdHJpbmcgPSBsb2NhbE1ldGFDb250ZXh0Lm5vZGVBc1N0cmluZyhtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBsb2NhbE1ldGFDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke21ldGFzdGF0ZW1lbnRTdHJpbmd9JyBtZXRhc3RhdGVtZW50IGFzIGEganVkZ2VtZW50Li4uYCwgbWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgY29uc3QganVkZ2VtZW50VmVyaWZpZWQgPSB2ZXJpZnlKdWRnZW1lbnQoanVkZ2VtZW50Tm9kZSwgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICBtZXRhc3RhdGVtZW50VmVyaWZpZWRBc0p1ZGdlbWVudCA9IGp1ZGdlbWVudFZlcmlmaWVkOyAgLy8vXG5cbiAgICBpZiAobWV0YXN0YXRlbWVudFZlcmlmaWVkQXNKdWRnZW1lbnQpIHtcbiAgICAgIGxvY2FsTWV0YUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgbWV0YXN0YXRlbWVudCBhcyBhIGp1ZGdlbWVudC5gLCBtZXRhc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzSnVkZ2VtZW50O1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlNZXRhc3RhdGVtZW50QXNJcyhtZXRhc3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgbGV0IG1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzSXMgPSBmYWxzZTtcblxuICBjb25zdCBqdWRnZW1lbnROb2RlID0ganVkZ2VtZW50Tm9kZVF1ZXJ5KG1ldGFzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgbWV0YUVxdWFsaXR5Tm9kZSA9IG1ldGFFcXVhbGl0eU5vZGVRdWVyeShtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgaWYgKChqdWRnZW1lbnROb2RlID09PSBudWxsKSAmJiAobWV0YUVxdWFsaXR5Tm9kZSA9PT0gbnVsbCkpIHtcbiAgICBjb25zdCBtZXRhc3RhdGVtZW50U3RyaW5nID0gbG9jYWxNZXRhQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgbG9jYWxNZXRhQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgbWV0YXN0YXRlbWVudCBhcyBpcy4uLmAsIG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlLCAvLy9cbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IG1ldGFzdGF0ZW1lbnROb2RlVmVyaWZpZXIudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgbG9jYWxNZXRhQ29udGV4dCwgKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdmVyaWZpZWRBaGVhZCA9IHRydWU7XG5cbiAgICAgICAgICAgIHJldHVybiB2ZXJpZmllZEFoZWFkO1xuICAgICAgICAgIH0pO1xuXG4gICAgbWV0YXN0YXRlbWVudFZlcmlmaWVkQXNJcyA9IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkOyAgLy8vXG5cbiAgICBpZiAobWV0YXN0YXRlbWVudFZlcmlmaWVkQXNJcykge1xuICAgICAgbG9jYWxNZXRhQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke21ldGFzdGF0ZW1lbnRTdHJpbmd9JyBtZXRhc3RhdGVtZW50IGFzIGlzLmAsIG1ldGFzdGF0ZW1lbnROb2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gbWV0YXN0YXRlbWVudFZlcmlmaWVkQXNJcztcbn1cbiJdLCJuYW1lcyI6WyJqdWRnZW1lbnROb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJtZXRhRXF1YWxpdHlOb2RlUXVlcnkiLCJ2ZXJpZnlNZXRhc3RhdGVtZW50IiwibWV0YXN0YXRlbWVudE5vZGUiLCJhc3NpZ25tZW50cyIsImRlcml2ZWQiLCJsb2NhbE1ldGFDb250ZXh0IiwibWV0YXN0YXRlbWVudFZlcmlmaWVkIiwibWV0YXN0YXRlbWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwidmVyaWZ5TWV0YVN0YXRlbWVudEZ1bmN0aW9ucyIsInZlcmlmeU1ldGFzdGF0ZW1lbnRBc01ldGFFcXVhbGl0eSIsInZlcmlmeU1ldGFzdGF0ZW1lbnRBc0p1ZGdlbWVudCIsInZlcmlmeU1ldGFzdGF0ZW1lbnRBc0lzIiwic29tZSIsInZlcmlmeVN0YXRlbWVudEZ1bmN0aW9uIiwiZGVidWciLCJPYmplY3QiLCJhc3NpZ24iLCJtZXRhc3RhdGVtZW50Tm9kZVZlcmlmaWVyIiwibWV0YXN0YXRlbWVudFZlcmlmaWVkQXNNZXRhRXF1YWxpdHkiLCJtZXRhRXF1YWxpdHlOb2RlIiwibWV0YUVxdWFsaXR5VmVyaWZpZWQiLCJ2ZXJpZnlNZXRhRXF1YWxpdHkiLCJtZXRhc3RhdGVtZW50VmVyaWZpZWRBc0p1ZGdlbWVudCIsImp1ZGdlbWVudE5vZGUiLCJqdWRnZW1lbnRWZXJpZmllZCIsInZlcmlmeUp1ZGdlbWVudCIsIm1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzSXMiLCJub25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGVWZXJpZmllZCIsInZlcmlmeU5vblRlcm1pbmFsTm9kZSIsInZlcmlmaWVkQWhlYWQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQTJDQTs7O2VBQUE7OztnRUF6QzRCO21FQUNHO29FQUNPO3FCQUVaOzs7Ozs7QUFFMUIsSUFBTUEscUJBQXFCQyxJQUFBQSxnQkFBUyxFQUFDLDhCQUMvQkMsd0JBQXdCRCxJQUFBQSxnQkFBUyxFQUFDO0FBRXhDLFNBQVNFLG9CQUFvQkMsaUJBQWlCLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxnQkFBZ0I7SUFDcEYsSUFBSUM7SUFFSixJQUFNQyxzQkFBc0JGLGlCQUFpQkcsWUFBWSxDQUFDTjtJQUUxREcsaUJBQWlCSSxLQUFLLENBQUMs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
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YXN0YXRlbWVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHZlcmlmeUp1ZGdlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L2p1ZGdlbWVudFwiO1xuaW1wb3J0IG1ldGFzdGF0ZW1lbnROb2RlVmVyaWZpZXIgZnJvbSBcIi4uL3ZlcmlmaWVyL25vZGUvbWV0YXN0YXRlbWVudFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IGp1ZGdlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhc3RhdGVtZW50L2p1ZGdlbWVudCFcIik7XG5cbmZ1bmN0aW9uIHZlcmlmeU1ldGFzdGF0ZW1lbnQobWV0YXN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbE1ldGFDb250ZXh0KSB7XG4gIGxldCBtZXRhc3RhdGVtZW50VmVyaWZpZWQ7XG5cbiAgY29uc3QgbWV0YXN0YXRlbWVudFN0cmluZyA9IGxvY2FsTWV0YUNvbnRleHQubm9kZUFzU3RyaW5nKG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICBsb2NhbE1ldGFDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke21ldGFzdGF0ZW1lbnRTdHJpbmd9JyBtZXRhc3RhdGVtZW50Li4uYCwgbWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gIGNvbnN0IHZlcmlmeU1ldGFTdGF0ZW1lbnRGdW5jdGlvbnMgPSBbXG4gICAgdmVyaWZ5TWV0YXN0YXRlbWVudEFzSnVkZ2VtZW50LFxuICAgIHZlcmlmeU1ldGFzdGF0ZW1lbnRBc0lzXG4gIF07XG5cbiAgbWV0YXN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5TWV0YVN0YXRlbWVudEZ1bmN0aW9ucy5zb21lKCh2ZXJpZnlTdGF0ZW1lbnRGdW5jdGlvbikgPT4ge1xuICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVN0YXRlbWVudEZ1bmN0aW9uKG1ldGFzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICBpZiAobWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xuXG4gIGlmIChtZXRhc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICBsb2NhbE1ldGFDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7bWV0YXN0YXRlbWVudFN0cmluZ30nIG1ldGFzdGF0ZW1lbnQuYCwgbWV0YXN0YXRlbWVudE5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIG1ldGFzdGF0ZW1lbnRWZXJpZmllZDtcbn1cblxuT2JqZWN0LmFzc2lnbihtZXRhc3RhdGVtZW50Tm9kZVZlcmlmaWVyLCB7XG4gIHZlcmlmeU1ldGFzdGF0ZW1lbnRcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCB2ZXJpZnlNZXRhc3RhdGVtZW50O1xuXG5mdW5jdGlvbiB2ZXJpZnlNZXRhc3RhdGVtZW50QXNKdWRnZW1lbnQobWV0YXN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbE1ldGFDb250ZXh0KSB7XG4gIGxldCBtZXRhc3RhdGVtZW50VmVyaWZpZWRBc0p1ZGdlbWVudCA9IGZhbHNlO1xuXG4gIGNvbnN0IGp1ZGdlbWVudE5vZGUgPSBqdWRnZW1lbnROb2RlUXVlcnkobWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gIGlmIChqdWRnZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgbWV0YXN0YXRlbWVudFN0cmluZyA9IGxvY2FsTWV0YUNvbnRleHQubm9kZUFzU3RyaW5nKG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIGxvY2FsTWV0YUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7bWV0YXN0YXRlbWVudFN0cmluZ30nIG1ldGFzdGF0ZW1lbnQgYXMgYSBqdWRnZW1lbnQuLi5gLCBtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBjb25zdCBqdWRnZW1lbnRWZXJpZmllZCA9IHZlcmlmeUp1ZGdlbWVudChqdWRnZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICBtZXRhc3RhdGVtZW50VmVyaWZpZWRBc0p1ZGdlbWVudCA9IGp1ZGdlbWVudFZlcmlmaWVkOyAgLy8vXG5cbiAgICBpZiAobWV0YXN0YXRlbWVudFZlcmlmaWVkQXNKdWRnZW1lbnQpIHtcbiAgICAgIGxvY2FsTWV0YUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgbWV0YXN0YXRlbWVudCBhcyBhIGp1ZGdlbWVudC5gLCBtZXRhc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzSnVkZ2VtZW50O1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlNZXRhc3RhdGVtZW50QXNJcyhtZXRhc3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgbGV0IG1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzSXMgPSBmYWxzZTtcblxuICBjb25zdCBqdWRnZW1lbnROb2RlID0ganVkZ2VtZW50Tm9kZVF1ZXJ5KG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICBpZiAoanVkZ2VtZW50Tm9kZSA9PT0gbnVsbCkge1xuICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnRTdHJpbmcgPSBsb2NhbE1ldGFDb250ZXh0Lm5vZGVBc1N0cmluZyhtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBsb2NhbE1ldGFDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke21ldGFzdGF0ZW1lbnRTdHJpbmd9JyBtZXRhc3RhdGVtZW50IGFzIGlzLi4uYCwgbWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gbWV0YXN0YXRlbWVudE5vZGUsIC8vL1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gbWV0YXN0YXRlbWVudE5vZGVWZXJpZmllci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlLCBsb2NhbE1ldGFDb250ZXh0LCAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdHJ1ZTtcblxuICAgICAgICAgICAgcmV0dXJuIHZlcmlmaWVkQWhlYWQ7XG4gICAgICAgICAgfSk7XG5cbiAgICBtZXRhc3RhdGVtZW50VmVyaWZpZWRBc0lzID0gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7ICAvLy9cblxuICAgIGlmIChtZXRhc3RhdGVtZW50VmVyaWZpZWRBc0lzKSB7XG4gICAgICBsb2NhbE1ldGFDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7bWV0YXN0YXRlbWVudFN0cmluZ30nIG1ldGFzdGF0ZW1lbnQgYXMgaXMuYCwgbWV0YXN0YXRlbWVudE5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBtZXRhc3RhdGVtZW50VmVyaWZpZWRBc0lzO1xufVxuIl0sIm5hbWVzIjpbImp1ZGdlbWVudE5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInZlcmlmeU1ldGFzdGF0ZW1lbnQiLCJtZXRhc3RhdGVtZW50Tm9kZSIsImFzc2lnbm1lbnRzIiwiZGVyaXZlZCIsImxvY2FsTWV0YUNvbnRleHQiLCJtZXRhc3RhdGVtZW50VmVyaWZpZWQiLCJtZXRhc3RhdGVtZW50U3RyaW5nIiwibm9kZUFzU3RyaW5nIiwidHJhY2UiLCJ2ZXJpZnlNZXRhU3RhdGVtZW50RnVuY3Rpb25zIiwidmVyaWZ5TWV0YXN0YXRlbWVudEFzSnVkZ2VtZW50IiwidmVyaWZ5TWV0YXN0YXRlbWVudEFzSXMiLCJzb21lIiwidmVyaWZ5U3RhdGVtZW50RnVuY3Rpb24iLCJkZWJ1ZyIsIk9iamVjdCIsImFzc2lnbiIsIm1ldGFzdGF0ZW1lbnROb2RlVmVyaWZpZXIiLCJtZXRhc3RhdGVtZW50VmVyaWZpZWRBc0p1ZGdlbWVudCIsImp1ZGdlbWVudE5vZGUiLCJqdWRnZW1lbnRWZXJpZmllZCIsInZlcmlmeUp1ZGdlbWVudCIsIm1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzSXMiLCJub25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGVWZXJpZmllZCIsInZlcmlmeU5vblRlcm1pbmFsTm9kZSIsInZlcmlmaWVkQWhlYWQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQXdDQTs7O2VBQUE7OztnRUF0QzRCO29FQUNVO3FCQUVaOzs7Ozs7QUFFMUIsSUFBTUEscUJBQXFCQyxJQUFBQSxnQkFBUyxFQUFDO0FBRXJDLFNBQVNDLG9CQUFvQkMsaUJBQWlCLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxnQkFBZ0I7SUFDcEYsSUFBSUM7SUFFSixJQUFNQyxzQkFBc0JGLGlCQUFpQkcsWUFBWSxDQUFDTjtJQUUxREcsaUJBQWlCSSxLQUFLLENBQUMsQUFBQyxrQkFBcUMsT0FBcEJGLHFCQUFvQix1QkFBcUJMO0lBRWxGLElBQU1RLCtCQUErQjtRQUNuQ0M7UUFDQUM7S0FDRDtJQUVETix3QkFBd0JJLDZCQUE2QkcsSUFBSSxDQUFDLFNBQUNDO1FBQ3pELElBQU1SLHdCQUF3QlEsd0JBQXdCWixtQkFBbUJDLGFBQWFDLFNBQVNDO1FBRS9GLElBQUlDLHVCQUF1QjtZQUN6QixPQUFPO1FBQ1Q7SUFDRjtJQUVBLElBQUlBLHVCQUF1QjtRQUN6QkQsaUJBQWlCVSxLQUFLLENBQUMsQUFBQyxvQkFBdUMsT0FBcEJSLHFCQUFvQixxQkFBbUJMO0lBQ3BGO0lBRUEsT0FBT0k7QUFDVDtBQUVBVSxPQUFPQyxNQUFNLENBQUNDLHNCQUF5QixFQUFFO0lBQ3ZDakIscUJBQUFBO0FBQ0Y7SUFFQSxXQUFlQTtBQUVmLFNBQVNVLCtCQUErQlQsaUJBQWlCLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxnQkFBZ0I7SUFDL0YsSUFBSWMsbUNBQW1DO0lBRXZDLElBQU1DLGdCQUFnQnJCLG1CQUFtQkc7SUFFekMsSUFBSWtCLGtCQUFrQixNQUFNO1FBQzFCLElBQU1iLHNCQUFzQkYsaUJBQWlCRyxZQUFZLENBQUNOO1FBRTFERyxpQkFBaUJJLEtBQUssQ0FBQyxBQUFDLGtCQUFxQyxPQUFwQkYscUJBQW9CLHNDQUFvQ0w7UUFFakcsSUFBTW1CLG9CQUFvQkMsSUFBQUEsa0JBQWUsRUFBQ0YsZUFBZWpCLGFBQWFDLFNBQVNDO1FBRS9FYyxtQ0FBbUNFLG1CQUFvQixHQUFHO1FBRTFELElBQUlGLGtDQUFrQztZQUNwQ2QsaUJBQWlCVSxLQUFLLENBQUMsQUFBQyxvQkFBdUMsT0FBcEJSLHFCQUFvQixvQ0FBa0NMO1FBQ25HO0lBQ0Y7SUFFQSxPQUFPaUI7QUFDVDtBQUVBLFNBQVNQLHdCQUF3QlYsaUJBQWlCLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxnQkFBZ0I7SUFDeEYsSUFBSWtCLDRCQUE0QjtJQUVoQyxJQUFNSCxnQkFBZ0JyQixtQkFBbUJHO0lBRXpDLElBQUlrQixrQkFBa0IsTUFBTTtRQUMxQixJQUFNYixzQkFBc0JGLGlCQUFpQkcsWUFBWSxDQUFDTjtRQUUxREcsaUJBQWlCSSxLQUFLLENBQUMsQUFBQyxrQkFBcUMsT0FBcEJGLHFCQUFvQiw2QkFBMkJMO1FBRXhGLElBQU1zQixrQkFBa0J0QixtQkFDbEJ1QiwwQkFBMEJQLHNCQUF5QixDQUFDUSxxQkFBcUIsQ0FBQ0YsaUJBQWlCbkIsa0JBQWtCO1lBQzNHLElBQU1zQixnQkFBZ0I7WUFFdEIsT0FBT0E7UUFDVDtRQUVOSiw0QkFBNEJFLHlCQUEwQixHQUFHO1FBRXpELElBQUlGLDJCQUEyQjtZQUM3QmxCLGlCQUFpQlUsS0FBSyxDQUFDLEFBQUMsb0JBQXVDLE9BQXBCUixxQkFBb0IsMkJBQXlCTDtRQUMxRjtJQUNGO0lBRUEsT0FBT3FCO0FBQ1QifQ==
@@ -31,7 +31,7 @@ function verifyMetavariable(metavariableNode, metaTypeNode, fileContext) {
31
31
  var metavariableVerified = false;
32
32
  var metavariableString = fileContext.nodeAsString(metavariableNode);
33
33
  fileContext.trace("Verifying the '".concat(metavariableString, "' metavariable..."), metavariableNode);
34
- var name = (0, _name.nameFromMetavariableNode)(metavariableNode), metavariablePresent = fileContext.isMetavariablePresentByName(name);
34
+ var metavariablePresent = fileContext.isMetavariablePresentByMetavariableNode(metavariableNode);
35
35
  if (metavariablePresent) {
36
36
  fileContext.debug("The metavariable '".concat(metavariableString, "' is already present."), metavariableNode);
37
37
  } else {
@@ -47,7 +47,7 @@ function verifyMetavariable(metavariableNode, metaTypeNode, fileContext) {
47
47
  var firstTermType = (0, _array.first)(termTypes);
48
48
  termType = firstTermType; ///
49
49
  }
50
- var node = metavariableNode, metavariable = _metavariable.default.fromNodeNameTermTypeAndMetaType(node, name, termType, metaType), metavariableAssignment = _metavariable1.default.fromMetavariable(metavariable), metavariableAssigned = metavariableAssignment.assign(fileContext);
50
+ var node = metavariableNode, name = (0, _name.nameFromMetavariableNode)(metavariableNode), metavariable = _metavariable.default.fromNodeNameTermTypeAndMetaType(node, name, termType, metaType), metavariableAssignment = _metavariable1.default.fromMetavariable(metavariable), metavariableAssigned = metavariableAssignment.assign(fileContext);
51
51
  if (metavariableAssigned) {
52
52
  metavariableVerified = true;
53
53
  }
@@ -105,4 +105,4 @@ function verifyMetaType(metaTypeNode, metaTypes, fileContext) {
105
105
  return metaTypeVerified;
106
106
  }
107
107
 
108
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YXZhcmlhYmxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTWV0YXZhcmlhYmxlIGZyb20gXCIuLi9tZXRhdmFyaWFibGVcIjtcbmltcG9ydCBNZXRhdmFyaWFibGVBc3NpZ25tZW50IGZyb20gXCIuLi9hc3NpZ25tZW50L21ldGF2YXJpYWJsZVwiO1xuXG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IG5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvbmFtZVwiO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2FyZ3VtZW50L3Rlcm1cIiksXG4gICAgICB0eXBlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2FyZ3VtZW50L3R5cGVcIiksXG4gICAgICBhcmd1bWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhdmFyaWFibGUvYXJndW1lbnQhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlNZXRhdmFyaWFibGUobWV0YXZhcmlhYmxlTm9kZSwgbWV0YVR5cGVOb2RlLCBmaWxlQ29udGV4dCkge1xuICBsZXQgbWV0YXZhcmlhYmxlVmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBtZXRhdmFyaWFibGVTdHJpbmcgPSBmaWxlQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgZmlsZUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgbWV0YXZhcmlhYmxlLi4uYCwgbWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgY29uc3QgbmFtZSA9IG5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKSxcbiAgICAgICAgbWV0YXZhcmlhYmxlUHJlc2VudCA9IGZpbGVDb250ZXh0LmlzTWV0YXZhcmlhYmxlUHJlc2VudEJ5TmFtZShuYW1lKTtcblxuICBpZiAobWV0YXZhcmlhYmxlUHJlc2VudCkge1xuICAgIGZpbGVDb250ZXh0LmRlYnVnKGBUaGUgbWV0YXZhcmlhYmxlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIGlzIGFscmVhZHkgcHJlc2VudC5gLCBtZXRhdmFyaWFibGVOb2RlKTtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCB0ZXJtVHlwZXMgPSBbXSxcbiAgICAgICAgICBtZXRhVHlwZXMgPSBbXSxcbiAgICAgICAgICBhcmd1bWVudE5vZGUgPSBhcmd1bWVudE5vZGVRdWVyeShtZXRhdmFyaWFibGVOb2RlKSxcbiAgICAgICAgICBhcmd1bWVudFZlcmlmaWVkID0gdmVyaWZ5QXJndW1lbnQoYXJndW1lbnROb2RlLCB0ZXJtVHlwZXMsIGZpbGVDb250ZXh0KSxcbiAgICAgICAgICBtZXRhVHlwZVZlcmlmaWVkID0gdmVyaWZ5TWV0YVR5cGUobWV0YVR5cGVOb2RlLCBtZXRhVHlwZXMsIGZpbGVDb250ZXh0KTtcblxuICAgIGlmIChhcmd1bWVudFZlcmlmaWVkICYmIG1ldGFUeXBlVmVyaWZpZWQpIHtcbiAgICAgIGxldCB0ZXJtVHlwZSxcbiAgICAgICAgICBtZXRhVHlwZTtcblxuICAgICAgY29uc3QgZmlyc3RNZXRhVHlwZSA9IGZpcnN0KG1ldGFUeXBlcyk7XG5cbiAgICAgIG1ldGFUeXBlID0gZmlyc3RNZXRhVHlwZTsgLy8vXG5cbiAgICAgIGNvbnN0IHRlcm1UeXBlc0xlbmd0aCA9IHRlcm1UeXBlcy5sZW5ndGg7XG5cbiAgICAgIGlmICh0ZXJtVHlwZXNMZW5ndGggPT09IDApIHtcbiAgICAgICAgdGVybVR5cGUgPSBudWxsO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgZmlyc3RUZXJtVHlwZSA9IGZpcnN0KHRlcm1UeXBlcyk7XG5cbiAgICAgICAgdGVybVR5cGUgPSBmaXJzdFRlcm1UeXBlOyAvLy9cbiAgICAgIH1cblxuICAgICAgY29uc3Qgbm9kZSA9IG1ldGF2YXJpYWJsZU5vZGUsICAvLy9cbiAgICAgICAgICAgIG1ldGF2YXJpYWJsZSA9IE1ldGF2YXJpYWJsZS5mcm9tTm9kZU5hbWVUZXJtVHlwZUFuZE1ldGFUeXBlKG5vZGUsIG5hbWUsIHRlcm1UeXBlLCBtZXRhVHlwZSksXG4gICAgICAgICAgICBtZXRhdmFyaWFibGVBc3NpZ25tZW50ID0gTWV0YXZhcmlhYmxlQXNzaWdubWVudC5mcm9tTWV0YXZhcmlhYmxlKG1ldGF2YXJpYWJsZSksXG4gICAgICAgICAgICBtZXRhdmFyaWFibGVBc3NpZ25lZCA9IG1ldGF2YXJpYWJsZUFzc2lnbm1lbnQuYXNzaWduKGZpbGVDb250ZXh0KTtcblxuICAgICAgaWYgKG1ldGF2YXJpYWJsZUFzc2lnbmVkKSB7XG4gICAgICAgIG1ldGF2YXJpYWJsZVZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpZiAobWV0YXZhcmlhYmxlVmVyaWZpZWQpIHtcbiAgICBmaWxlQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIG1ldGF2YXJpYWJsZS5gLCBtZXRhdmFyaWFibGVOb2RlKTtcbiAgfVxuXG4gIHJldHVybiBtZXRhdmFyaWFibGVWZXJpZmllZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZlcmlmeVN0YW5kYWxvbmVNZXRhdmFyaWFibGUobWV0YXZhcmlhYmxlTm9kZSwgbG9jYWxNZXRhQ29udGV4dCwgdmVyaWZ5QWhlYWQpIHtcbiAgbGV0IHN0YW5kYWxvbmVNZXRhdmFyaWFibGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IG1ldGF2YXJpYWJsZVN0cmluZyA9IGxvY2FsTWV0YUNvbnRleHQubm9kZUFzU3RyaW5nKG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gIGxvY2FsTWV0YUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgc3RhbmRhbG9uZSBtZXRhdmFyaWFibGUuLi5gLCBtZXRhdmFyaWFibGVOb2RlKTtcblxuICBjb25zdCBtZXRhdmFyaWFibGVQcmVzZW50ID0gbG9jYWxNZXRhQ29udGV4dC5pc01ldGF2YXJpYWJsZVByZXNlbnRCeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgaWYgKG1ldGF2YXJpYWJsZVByZXNlbnQpIHtcbiAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcblxuICAgIHN0YW5kYWxvbmVNZXRhdmFyaWFibGVWZXJpZmllZCA9IHZlcmlmaWVkQWhlYWQ7IC8vL1xuICB9XG5cbiAgaWYgKHN0YW5kYWxvbmVNZXRhdmFyaWFibGVWZXJpZmllZCkge1xuICAgIGxvY2FsTWV0YUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHttZXRhdmFyaWFibGVTdHJpbmd9JyBzdGFuZGFsb25lIG1ldGF2YXJpYWJsZS5gLCBtZXRhdmFyaWFibGVOb2RlKTtcbiAgfVxuXG4gIHJldHVybiBzdGFuZGFsb25lTWV0YXZhcmlhYmxlVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeUFyZ3VtZW50KGFyZ3VtZW50Tm9kZSwgdGVybVR5cGVzLCBmaWxlQ29udGV4dCkge1xuICBsZXQgYXJndW1lbnRWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGlmIChhcmd1bWVudE5vZGUgPT09IG51bGwpIHtcbiAgICBhcmd1bWVudFZlcmlmaWVkID0gdHJ1ZTtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCB0ZXJtTm9kZSA9IHRlcm1Ob2RlUXVlcnkoYXJndW1lbnROb2RlKTtcblxuICAgIGlmICh0ZXJtTm9kZSA9PT0gbnVsbCkge1xuXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHRlcm1TdHJpbmcgPSBmaWxlQ29udGV4dC5ub2RlQXNTdHJpbmcodGVybU5vZGUpO1xuXG4gICAgICBmaWxlQ29udGV4dC5kZWJ1ZyhgVGhlICcke3Rlcm1TdHJpbmd9JyB0ZXJtIHdhcyBmb3VuZCB3aGVuIGEgdHlwZSBzaG91bGQgaGF2ZSBiZWVuIHByZXNlbnQuYCwgdGVybU5vZGUpO1xuICAgIH1cbiAgICBjb25zdCB0eXBlTm9kZSA9IHR5cGVOb2RlUXVlcnkoYXJndW1lbnROb2RlKTtcblxuICAgIGlmICh0eXBlTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgdHlwZSA9IGZpbGVDb250ZXh0LmZpbmRUeXBlQnlUeXBlTm9kZSh0eXBlTm9kZSk7XG5cbiAgICAgIGlmICh0eXBlICE9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IHRlcm1UeXBlID0gdHlwZTsgIC8vL1xuXG4gICAgICAgIHRlcm1UeXBlcy5wdXNoKHRlcm1UeXBlKTtcblxuICAgICAgICBhcmd1bWVudFZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHR5cGVTdHJpbmcgPSBmaWxlQ29udGV4dC5ub2RlQXNTdHJpbmcodHlwZU5vZGUpO1xuXG4gICAgICAgIGZpbGVDb250ZXh0LmRlYnVnKGBUaGUgJyR7dHlwZVN0cmluZ30nIHR5cGUgaXMgbm90IHByZXNlbnQuYCwgdHlwZU5vZGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBhcmd1bWVudFZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlNZXRhVHlwZShtZXRhVHlwZU5vZGUsIG1ldGFUeXBlcywgZmlsZUNvbnRleHQpIHtcbiAgbGV0IG1ldGFUeXBlVmVyaWZpZWQ7XG5cbiAgY29uc3QgbWV0YVR5cGUgPSBmaWxlQ29udGV4dC5maW5kTWV0YVR5cGVCeU1ldGFUeXBlTm9kZShtZXRhVHlwZU5vZGUpO1xuXG4gIG1ldGFUeXBlcy5wdXNoKG1ldGFUeXBlKTtcblxuICBtZXRhVHlwZVZlcmlmaWVkID0gdHJ1ZTtcblxuICByZXR1cm4gbWV0YVR5cGVWZXJpZmllZDtcbn0iXSwibmFtZXMiOlsidmVyaWZ5TWV0YXZhcmlhYmxlIiwidmVyaWZ5U3RhbmRhbG9uZU1ldGF2YXJpYWJsZSIsInRlcm1Ob2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ0eXBlTm9kZVF1ZXJ5IiwiYXJndW1lbnROb2RlUXVlcnkiLCJtZXRhdmFyaWFibGVOb2RlIiwibWV0YVR5cGVOb2RlIiwiZmlsZUNvbnRleHQiLCJtZXRhdmFyaWFibGVWZXJpZmllZCIsIm1ldGF2YXJpYWJsZVN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwibmFtZSIsIm5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZSIsIm1ldGF2YXJpYWJsZVByZXNlbnQiLCJpc01ldGF2YXJpYWJsZVByZXNlbnRCeU5hbWUiLCJkZWJ1ZyIsInRlcm1UeXBlcyIsIm1ldGFUeXBlcyIsImFyZ3VtZW50Tm9kZSIsImFyZ3VtZW50VmVyaWZpZWQiLCJ2ZXJpZnlBcmd1bWVudCIsIm1ldGFUeXBlVmVyaWZpZWQiLCJ2ZXJpZnlNZXRhVHlwZSIsInRlcm1UeXBlIiwibWV0YVR5cGUiLCJmaXJzdE1ldGFUeXBlIiwiZmlyc3QiLCJ0ZXJtVHlwZXNMZW5ndGgiLCJsZW5ndGgiLCJmaXJzdFRlcm1UeXBlIiwibm9kZSIsIm1ldGF2YXJpYWJsZSIsIk1ldGF2YXJpYWJsZSIsImZyb21Ob2RlTmFtZVRlcm1UeXBlQW5kTWV0YVR5cGUiLCJtZXRhdmFyaWFibGVBc3NpZ25tZW50IiwiTWV0YXZhcmlhYmxlQXNzaWdubWVudCIsImZyb21NZXRhdmFyaWFibGUiLCJtZXRhdmFyaWFibGVBc3NpZ25lZCIsImFzc2lnbiIsImxvY2FsTWV0YUNvbnRleHQiLCJ2ZXJpZnlBaGVhZCIsInN0YW5kYWxvbmVNZXRhdmFyaWFibGVWZXJpZmllZCIsImlzTWV0YXZhcmlhYmxlUHJlc2VudEJ5TWV0YXZhcmlhYmxlTm9kZSIsInZlcmlmaWVkQWhlYWQiLCJ0ZXJtTm9kZSIsInRlcm1TdHJpbmciLCJ0eXBlTm9kZSIsInR5cGUiLCJmaW5kVHlwZUJ5VHlwZU5vZGUiLCJwdXNoIiwidHlwZVN0cmluZyIsImZpbmRNZXRhVHlwZUJ5TWV0YVR5cGVOb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFhQSxPQXFEQztlQXJEdUJBOztJQXVEUkMsNEJBQTRCO2VBQTVCQTs7O21FQWxFUztvRUFDVTtxQkFFYjtxQkFDSTtvQkFDZTs7Ozs7O0FBRXpDLElBQU1DLGdCQUFnQkMsSUFBQUEsZ0JBQVMsRUFBQyxtQkFDMUJDLGdCQUFnQkQsSUFBQUEsZ0JBQVMsRUFBQyxtQkFDMUJFLG9CQUFvQkYsSUFBQUEsZ0JBQVMsRUFBQztBQUVyQixTQUFTSCxtQkFBbUJNLGdCQUFnQixFQUFFQyxZQUFZLEVBQUVDLFdBQVc7SUFDcEYsSUFBSUMsdUJBQXVCO0lBRTNCLElBQU1DLHFCQUFxQkYsWUFBWUcsWUFBWSxDQUFDTDtJQUVwREUsWUFBWUksS0FBSyxDQUFDLEFBQUMsa0JBQW9DLE9BQW5CRixvQkFBbUIsc0JBQW9CSjtJQUUzRSxJQUFNTyxPQUFPQyxJQUFBQSw4QkFBd0IsRUFBQ1IsbUJBQ2hDUyxzQkFBc0JQLFlBQVlRLDJCQUEyQixDQUFDSDtJQUVwRSxJQUFJRSxxQkFBcUI7UUFDdkJQLFlBQVlTLEtBQUssQ0FBQyxBQUFDLHFCQUF1QyxPQUFuQlAsb0JBQW1CLDBCQUF3Qko7SUFDcEYsT0FBTztRQUNMLElBQU1ZLFlBQVksRUFBRSxFQUNkQyxZQUFZLEVBQUUsRUFDZEMsZUFBZWYsa0JBQWtCQyxtQkFDakNlLG1CQUFtQkMsZUFBZUYsY0FBY0YsV0FBV1YsY0FDM0RlLG1CQUFtQkMsZUFBZWpCLGNBQWNZLFdBQVdYO1FBRWpFLElBQUlhLG9CQUFvQkUsa0JBQWtCO1lBQ3hDLElBQUlFLFVBQ0FDO1lBRUosSUFBTUMsZ0JBQWdCQyxJQUFBQSxZQUFLLEVBQUNUO1lBRTVCTyxXQUFXQyxlQUFlLEdBQUc7WUFFN0IsSUFBTUUsa0JBQWtCWCxVQUFVWSxNQUFNO1lBRXhDLElBQUlELG9CQUFvQixHQUFHO2dCQUN6QkosV0FBVztZQUNiLE9BQU87Z0JBQ0wsSUFBTU0sZ0JBQWdCSCxJQUFBQSxZQUFLLEVBQUNWO2dCQUU1Qk8sV0FBV00sZUFBZSxHQUFHO1lBQy9CO1lBRUEsSUFBTUMsT0FBTzFCLGtCQUNQMkIsZUFBZUMscUJBQVksQ0FBQ0MsK0JBQStCLENBQUNILE1BQU1uQixNQUFNWSxVQUFVQyxXQUNsRlUseUJBQXlCQyxzQkFBc0IsQ0FBQ0MsZ0JBQWdCLENBQUNMLGVBQ2pFTSx1QkFBdUJILHVCQUF1QkksTUFBTSxDQUFDaEM7WUFFM0QsSUFBSStCLHNCQUFzQjtnQkFDeEI5Qix1QkFBdUI7WUFDekI7UUFDRjtJQUNGO0lBRUEsSUFBSUEsc0JBQXNCO1FBQ3hCRCxZQUFZUyxLQUFLLENBQUMsQUFBQyxvQkFBc0MsT0FBbkJQLG9CQUFtQixvQkFBa0JKO0lBQzdFO0lBRUEsT0FBT0c7QUFDVDtBQUVPLFNBQVNSLDZCQUE2QkssZ0JBQWdCLEVBQUVtQyxnQkFBZ0IsRUFBRUMsV0FBVztJQUMxRixJQUFJQyxpQ0FBaUM7SUFFckMsSUFBTWpDLHFCQUFxQitCLGlCQUFpQjlCLFlBQVksQ0FBQ0w7SUFFekRtQyxpQkFBaUI3QixLQUFLLENBQUMsQUFBQyxrQkFBb0MsT0FBbkJGLG9CQUFtQixpQ0FBK0JKO0lBRTNGLElBQU1TLHNCQUFzQjBCLGlCQUFpQkcsdUNBQXVDLENBQUN0QyxrQkFBa0JtQztJQUV2RyxJQUFJMUIscUJBQXFCO1FBQ3ZCLElBQU04QixnQkFBZ0JIO1FBRXRCQyxpQ0FBaUNFLGVBQWUsR0FBRztJQUNyRDtJQUVBLElBQUlGLGdDQUFnQztRQUNsQ0YsaUJBQWlCeEIsS0FBSyxDQUFDLEFBQUMsb0JBQXNDLE9BQW5CUCxvQkFBbUIsK0JBQTZCSjtJQUM3RjtJQUVBLE9BQU9xQztBQUNUO0FBRUEsU0FBU3JCLGVBQWVGLFlBQVksRUFBRUYsU0FBUyxFQUFFVixXQUFXO0lBQzFELElBQUlhLG1CQUFtQjtJQUV2QixJQUFJRCxpQkFBaUIsTUFBTTtRQUN6QkMsbUJBQW1CO0lBQ3JCLE9BQU87UUFDTCxJQUFNeUIsV0FBVzVDLGNBQWNrQjtRQUUvQixJQUFJMEIsYUFBYSxNQUFNLENBRXZCLE9BQU87WUFDTCxJQUFNQyxhQUFhdkMsWUFBWUcsWUFBWSxDQUFDbUM7WUFFNUN0QyxZQUFZUyxLQUFLLENBQUMsQUFBQyxRQUFrQixPQUFYOEIsWUFBVywyREFBeUREO1FBQ2hHO1FBQ0EsSUFBTUUsV0FBVzVDLGNBQWNnQjtRQUUvQixJQUFJNEIsYUFBYSxNQUFNO1lBQ3JCLElBQU1DLE9BQU96QyxZQUFZMEMsa0JBQWtCLENBQUNGO1lBRTVDLElBQUlDLFNBQVMsTUFBTTtnQkFDakIsSUFBTXhCLFdBQVd3QixNQUFPLEdBQUc7Z0JBRTNCL0IsVUFBVWlDLElBQUksQ0FBQzFCO2dCQUVmSixtQkFBbUI7WUFDckIsT0FBTztnQkFDTCxJQUFNK0IsYUFBYTVDLFlBQVlHLFlBQVksQ0FBQ3FDO2dCQUU1Q3hDLFlBQVlTLEtBQUssQ0FBQyxBQUFDLFFBQWtCLE9BQVhtQyxZQUFXLDJCQUF5Qko7WUFDaEU7UUFDRjtJQUNGO0lBRUEsT0FBTzNCO0FBQ1Q7QUFFQSxTQUFTRyxlQUFlakIsWUFBWSxFQUFFWSxTQUFTLEVBQUVYLFdBQVc7SUFDMUQsSUFBSWU7SUFFSixJQUFNRyxXQUFXbEIsWUFBWTZDLDBCQUEwQixDQUFDOUM7SUFFeERZLFVBQVVnQyxJQUFJLENBQUN6QjtJQUVmSCxtQkFBbUI7SUFFbkIsT0FBT0E7QUFDVCJ9
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YXZhcmlhYmxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTWV0YXZhcmlhYmxlIGZyb20gXCIuLi9tZXRhdmFyaWFibGVcIjtcbmltcG9ydCBNZXRhdmFyaWFibGVBc3NpZ25tZW50IGZyb20gXCIuLi9hc3NpZ25tZW50L21ldGF2YXJpYWJsZVwiO1xuXG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IG5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvbmFtZVwiO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2FyZ3VtZW50L3Rlcm1cIiksXG4gICAgICB0eXBlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2FyZ3VtZW50L3R5cGVcIiksXG4gICAgICBhcmd1bWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhdmFyaWFibGUvYXJndW1lbnQhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlNZXRhdmFyaWFibGUobWV0YXZhcmlhYmxlTm9kZSwgbWV0YVR5cGVOb2RlLCBmaWxlQ29udGV4dCkge1xuICBsZXQgbWV0YXZhcmlhYmxlVmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBtZXRhdmFyaWFibGVTdHJpbmcgPSBmaWxlQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgZmlsZUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgbWV0YXZhcmlhYmxlLi4uYCwgbWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgY29uc3QgbWV0YXZhcmlhYmxlUHJlc2VudCA9IGZpbGVDb250ZXh0LmlzTWV0YXZhcmlhYmxlUHJlc2VudEJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKTtcblxuICBpZiAobWV0YXZhcmlhYmxlUHJlc2VudCkge1xuICAgIGZpbGVDb250ZXh0LmRlYnVnKGBUaGUgbWV0YXZhcmlhYmxlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIGlzIGFscmVhZHkgcHJlc2VudC5gLCBtZXRhdmFyaWFibGVOb2RlKTtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCB0ZXJtVHlwZXMgPSBbXSxcbiAgICAgICAgICBtZXRhVHlwZXMgPSBbXSxcbiAgICAgICAgICBhcmd1bWVudE5vZGUgPSBhcmd1bWVudE5vZGVRdWVyeShtZXRhdmFyaWFibGVOb2RlKSxcbiAgICAgICAgICBhcmd1bWVudFZlcmlmaWVkID0gdmVyaWZ5QXJndW1lbnQoYXJndW1lbnROb2RlLCB0ZXJtVHlwZXMsIGZpbGVDb250ZXh0KSxcbiAgICAgICAgICBtZXRhVHlwZVZlcmlmaWVkID0gdmVyaWZ5TWV0YVR5cGUobWV0YVR5cGVOb2RlLCBtZXRhVHlwZXMsIGZpbGVDb250ZXh0KTtcblxuICAgIGlmIChhcmd1bWVudFZlcmlmaWVkICYmIG1ldGFUeXBlVmVyaWZpZWQpIHtcbiAgICAgIGxldCB0ZXJtVHlwZSxcbiAgICAgICAgICBtZXRhVHlwZTtcblxuICAgICAgY29uc3QgZmlyc3RNZXRhVHlwZSA9IGZpcnN0KG1ldGFUeXBlcyk7XG5cbiAgICAgIG1ldGFUeXBlID0gZmlyc3RNZXRhVHlwZTsgLy8vXG5cbiAgICAgIGNvbnN0IHRlcm1UeXBlc0xlbmd0aCA9IHRlcm1UeXBlcy5sZW5ndGg7XG5cbiAgICAgIGlmICh0ZXJtVHlwZXNMZW5ndGggPT09IDApIHtcbiAgICAgICAgdGVybVR5cGUgPSBudWxsO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgZmlyc3RUZXJtVHlwZSA9IGZpcnN0KHRlcm1UeXBlcyk7XG5cbiAgICAgICAgdGVybVR5cGUgPSBmaXJzdFRlcm1UeXBlOyAvLy9cbiAgICAgIH1cblxuICAgICAgY29uc3Qgbm9kZSA9IG1ldGF2YXJpYWJsZU5vZGUsICAvLy9cbiAgICAgICAgICAgIG5hbWUgPSBuYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSksXG4gICAgICAgICAgICBtZXRhdmFyaWFibGUgPSBNZXRhdmFyaWFibGUuZnJvbU5vZGVOYW1lVGVybVR5cGVBbmRNZXRhVHlwZShub2RlLCBuYW1lLCB0ZXJtVHlwZSwgbWV0YVR5cGUpLFxuICAgICAgICAgICAgbWV0YXZhcmlhYmxlQXNzaWdubWVudCA9IE1ldGF2YXJpYWJsZUFzc2lnbm1lbnQuZnJvbU1ldGF2YXJpYWJsZShtZXRhdmFyaWFibGUpLFxuICAgICAgICAgICAgbWV0YXZhcmlhYmxlQXNzaWduZWQgPSBtZXRhdmFyaWFibGVBc3NpZ25tZW50LmFzc2lnbihmaWxlQ29udGV4dCk7XG5cbiAgICAgIGlmIChtZXRhdmFyaWFibGVBc3NpZ25lZCkge1xuICAgICAgICBtZXRhdmFyaWFibGVWZXJpZmllZCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKG1ldGF2YXJpYWJsZVZlcmlmaWVkKSB7XG4gICAgZmlsZUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHttZXRhdmFyaWFibGVTdHJpbmd9JyBtZXRhdmFyaWFibGUuYCwgbWV0YXZhcmlhYmxlTm9kZSk7XG4gIH1cblxuICByZXR1cm4gbWV0YXZhcmlhYmxlVmVyaWZpZWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2ZXJpZnlTdGFuZGFsb25lTWV0YXZhcmlhYmxlKG1ldGF2YXJpYWJsZU5vZGUsIGxvY2FsTWV0YUNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gIGxldCBzdGFuZGFsb25lTWV0YXZhcmlhYmxlVmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBtZXRhdmFyaWFibGVTdHJpbmcgPSBsb2NhbE1ldGFDb250ZXh0Lm5vZGVBc1N0cmluZyhtZXRhdmFyaWFibGVOb2RlKTtcblxuICBsb2NhbE1ldGFDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIHN0YW5kYWxvbmUgbWV0YXZhcmlhYmxlLi4uYCwgbWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgY29uc3QgbWV0YXZhcmlhYmxlUHJlc2VudCA9IGxvY2FsTWV0YUNvbnRleHQuaXNNZXRhdmFyaWFibGVQcmVzZW50QnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUsIGxvY2FsTWV0YUNvbnRleHQpO1xuXG4gIGlmIChtZXRhdmFyaWFibGVQcmVzZW50KSB7XG4gICAgY29uc3QgdmVyaWZpZWRBaGVhZCA9IHZlcmlmeUFoZWFkKCk7XG5cbiAgICBzdGFuZGFsb25lTWV0YXZhcmlhYmxlVmVyaWZpZWQgPSB2ZXJpZmllZEFoZWFkOyAvLy9cbiAgfVxuXG4gIGlmIChzdGFuZGFsb25lTWV0YXZhcmlhYmxlVmVyaWZpZWQpIHtcbiAgICBsb2NhbE1ldGFDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgc3RhbmRhbG9uZSBtZXRhdmFyaWFibGUuYCwgbWV0YXZhcmlhYmxlTm9kZSk7XG4gIH1cblxuICByZXR1cm4gc3RhbmRhbG9uZU1ldGF2YXJpYWJsZVZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlBcmd1bWVudChhcmd1bWVudE5vZGUsIHRlcm1UeXBlcywgZmlsZUNvbnRleHQpIHtcbiAgbGV0IGFyZ3VtZW50VmVyaWZpZWQgPSBmYWxzZTtcblxuICBpZiAoYXJndW1lbnROb2RlID09PSBudWxsKSB7XG4gICAgYXJndW1lbnRWZXJpZmllZCA9IHRydWU7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgdGVybU5vZGUgPSB0ZXJtTm9kZVF1ZXJ5KGFyZ3VtZW50Tm9kZSk7XG5cbiAgICBpZiAodGVybU5vZGUgPT09IG51bGwpIHtcblxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB0ZXJtU3RyaW5nID0gZmlsZUNvbnRleHQubm9kZUFzU3RyaW5nKHRlcm1Ob2RlKTtcblxuICAgICAgZmlsZUNvbnRleHQuZGVidWcoYFRoZSAnJHt0ZXJtU3RyaW5nfScgdGVybSB3YXMgZm91bmQgd2hlbiBhIHR5cGUgc2hvdWxkIGhhdmUgYmVlbiBwcmVzZW50LmAsIHRlcm1Ob2RlKTtcbiAgICB9XG4gICAgY29uc3QgdHlwZU5vZGUgPSB0eXBlTm9kZVF1ZXJ5KGFyZ3VtZW50Tm9kZSk7XG5cbiAgICBpZiAodHlwZU5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHR5cGUgPSBmaWxlQ29udGV4dC5maW5kVHlwZUJ5VHlwZU5vZGUodHlwZU5vZGUpO1xuXG4gICAgICBpZiAodHlwZSAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCB0ZXJtVHlwZSA9IHR5cGU7ICAvLy9cblxuICAgICAgICB0ZXJtVHlwZXMucHVzaCh0ZXJtVHlwZSk7XG5cbiAgICAgICAgYXJndW1lbnRWZXJpZmllZCA9IHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCB0eXBlU3RyaW5nID0gZmlsZUNvbnRleHQubm9kZUFzU3RyaW5nKHR5cGVOb2RlKTtcblxuICAgICAgICBmaWxlQ29udGV4dC5kZWJ1ZyhgVGhlICcke3R5cGVTdHJpbmd9JyB0eXBlIGlzIG5vdCBwcmVzZW50LmAsIHR5cGVOb2RlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gYXJndW1lbnRWZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5TWV0YVR5cGUobWV0YVR5cGVOb2RlLCBtZXRhVHlwZXMsIGZpbGVDb250ZXh0KSB7XG4gIGxldCBtZXRhVHlwZVZlcmlmaWVkO1xuXG4gIGNvbnN0IG1ldGFUeXBlID0gZmlsZUNvbnRleHQuZmluZE1ldGFUeXBlQnlNZXRhVHlwZU5vZGUobWV0YVR5cGVOb2RlKTtcblxuICBtZXRhVHlwZXMucHVzaChtZXRhVHlwZSk7XG5cbiAgbWV0YVR5cGVWZXJpZmllZCA9IHRydWU7XG5cbiAgcmV0dXJuIG1ldGFUeXBlVmVyaWZpZWQ7XG59Il0sIm5hbWVzIjpbInZlcmlmeU1ldGF2YXJpYWJsZSIsInZlcmlmeVN0YW5kYWxvbmVNZXRhdmFyaWFibGUiLCJ0ZXJtTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidHlwZU5vZGVRdWVyeSIsImFyZ3VtZW50Tm9kZVF1ZXJ5IiwibWV0YXZhcmlhYmxlTm9kZSIsIm1ldGFUeXBlTm9kZSIsImZpbGVDb250ZXh0IiwibWV0YXZhcmlhYmxlVmVyaWZpZWQiLCJtZXRhdmFyaWFibGVTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsIm1ldGF2YXJpYWJsZVByZXNlbnQiLCJpc01ldGF2YXJpYWJsZVByZXNlbnRCeU1ldGF2YXJpYWJsZU5vZGUiLCJkZWJ1ZyIsInRlcm1UeXBlcyIsIm1ldGFUeXBlcyIsImFyZ3VtZW50Tm9kZSIsImFyZ3VtZW50VmVyaWZpZWQiLCJ2ZXJpZnlBcmd1bWVudCIsIm1ldGFUeXBlVmVyaWZpZWQiLCJ2ZXJpZnlNZXRhVHlwZSIsInRlcm1UeXBlIiwibWV0YVR5cGUiLCJmaXJzdE1ldGFUeXBlIiwiZmlyc3QiLCJ0ZXJtVHlwZXNMZW5ndGgiLCJsZW5ndGgiLCJmaXJzdFRlcm1UeXBlIiwibm9kZSIsIm5hbWUiLCJuYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhdmFyaWFibGUiLCJNZXRhdmFyaWFibGUiLCJmcm9tTm9kZU5hbWVUZXJtVHlwZUFuZE1ldGFUeXBlIiwibWV0YXZhcmlhYmxlQXNzaWdubWVudCIsIk1ldGF2YXJpYWJsZUFzc2lnbm1lbnQiLCJmcm9tTWV0YXZhcmlhYmxlIiwibWV0YXZhcmlhYmxlQXNzaWduZWQiLCJhc3NpZ24iLCJsb2NhbE1ldGFDb250ZXh0IiwidmVyaWZ5QWhlYWQiLCJzdGFuZGFsb25lTWV0YXZhcmlhYmxlVmVyaWZpZWQiLCJ2ZXJpZmllZEFoZWFkIiwidGVybU5vZGUiLCJ0ZXJtU3RyaW5nIiwidHlwZU5vZGUiLCJ0eXBlIiwiZmluZFR5cGVCeVR5cGVOb2RlIiwicHVzaCIsInR5cGVTdHJpbmciLCJmaW5kTWV0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