occam-verify-cli 1.0.207 → 1.0.212

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 (56) hide show
  1. package/lib/constants.js +1 -5
  2. package/lib/dom/assertion/satisfies.js +36 -54
  3. package/lib/dom/axiom.js +49 -25
  4. package/lib/dom/metavariable.js +4 -7
  5. package/lib/dom/signature.js +197 -0
  6. package/lib/dom/substitution/frame.js +216 -0
  7. package/lib/dom/substitution/reference.js +203 -0
  8. package/lib/dom/substitution/statement.js +297 -0
  9. package/lib/dom/substitution/term.js +237 -0
  10. package/lib/dom/substitution.js +214 -0
  11. package/lib/dom/topLevelAssertion.js +21 -10
  12. package/lib/dom/topLevelMetaAssertion.js +4 -4
  13. package/lib/dom/variable.js +9 -10
  14. package/lib/index.js +6 -1
  15. package/lib/mixins/step/unify.js +3 -4
  16. package/lib/node/assertion/satisfies.js +5 -5
  17. package/lib/node/signature.js +116 -0
  18. package/lib/node/topLevelAssertion.js +8 -18
  19. package/lib/nonTerminalNodeMap.js +3 -2
  20. package/lib/ruleNames.js +5 -1
  21. package/lib/substitutions.js +2 -14
  22. package/lib/unifier/metaLevel.js +2 -4
  23. package/lib/utilities/json.js +49 -12
  24. package/lib/utilities/node.js +36 -1
  25. package/lib/utilities/substitutions.js +2 -4
  26. package/package.json +1 -1
  27. package/src/constants.js +0 -1
  28. package/src/dom/assertion/satisfies.js +45 -72
  29. package/src/dom/axiom.js +59 -31
  30. package/src/dom/metavariable.js +6 -6
  31. package/src/dom/signature.js +145 -0
  32. package/src/{substitution → dom/substitution}/frame.js +6 -4
  33. package/src/{substitution → dom/substitution}/reference.js +6 -4
  34. package/src/{substitution → dom/substitution}/statement.js +8 -7
  35. package/src/{substitution → dom/substitution}/term.js +7 -6
  36. package/src/dom/topLevelAssertion.js +26 -11
  37. package/src/dom/topLevelMetaAssertion.js +2 -2
  38. package/src/dom/variable.js +8 -10
  39. package/src/index.js +5 -0
  40. package/src/mixins/step/unify.js +4 -3
  41. package/src/node/assertion/satisfies.js +5 -5
  42. package/src/node/signature.js +16 -0
  43. package/src/node/topLevelAssertion.js +8 -21
  44. package/src/nonTerminalNodeMap.js +4 -1
  45. package/src/ruleNames.js +1 -0
  46. package/src/substitutions.js +3 -15
  47. package/src/unifier/metaLevel.js +2 -3
  48. package/src/utilities/json.js +60 -13
  49. package/src/utilities/node.js +45 -0
  50. package/src/utilities/substitutions.js +2 -3
  51. package/lib/substitution/frame.js +0 -175
  52. package/lib/substitution/reference.js +0 -162
  53. package/lib/substitution/statement.js +0 -296
  54. package/lib/substitution/term.js +0 -196
  55. package/lib/substitution.js +0 -214
  56. /package/src/{substitution.js → dom/substitution.js} +0 -0
@@ -0,0 +1,216 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ var _dom = /*#__PURE__*/ _interop_require_wildcard(require("../../dom"));
12
+ var _substitution = /*#__PURE__*/ _interop_require_default(require("../substitution"));
13
+ var _frame = /*#__PURE__*/ _interop_require_default(require("../../context/partial/substitution/frame"));
14
+ function _assert_this_initialized(self) {
15
+ if (self === void 0) {
16
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
17
+ }
18
+ return self;
19
+ }
20
+ function _call_super(_this, derived, args) {
21
+ derived = _get_prototype_of(derived);
22
+ return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args));
23
+ }
24
+ function _class_call_check(instance, Constructor) {
25
+ if (!(instance instanceof Constructor)) {
26
+ throw new TypeError("Cannot call a class as a function");
27
+ }
28
+ }
29
+ function _defineProperties(target, props) {
30
+ for(var i = 0; i < props.length; i++){
31
+ var descriptor = props[i];
32
+ descriptor.enumerable = descriptor.enumerable || false;
33
+ descriptor.configurable = true;
34
+ if ("value" in descriptor) descriptor.writable = true;
35
+ Object.defineProperty(target, descriptor.key, descriptor);
36
+ }
37
+ }
38
+ function _create_class(Constructor, protoProps, staticProps) {
39
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
40
+ if (staticProps) _defineProperties(Constructor, staticProps);
41
+ return Constructor;
42
+ }
43
+ function _get_prototype_of(o) {
44
+ _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
45
+ return o.__proto__ || Object.getPrototypeOf(o);
46
+ };
47
+ return _get_prototype_of(o);
48
+ }
49
+ function _inherits(subClass, superClass) {
50
+ if (typeof superClass !== "function" && superClass !== null) {
51
+ throw new TypeError("Super expression must either be null or a function");
52
+ }
53
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
54
+ constructor: {
55
+ value: subClass,
56
+ writable: true,
57
+ configurable: true
58
+ }
59
+ });
60
+ if (superClass) _set_prototype_of(subClass, superClass);
61
+ }
62
+ function _interop_require_default(obj) {
63
+ return obj && obj.__esModule ? obj : {
64
+ default: obj
65
+ };
66
+ }
67
+ function _getRequireWildcardCache(nodeInterop) {
68
+ if (typeof WeakMap !== "function") return null;
69
+ var cacheBabelInterop = new WeakMap();
70
+ var cacheNodeInterop = new WeakMap();
71
+ return (_getRequireWildcardCache = function(nodeInterop) {
72
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
73
+ })(nodeInterop);
74
+ }
75
+ function _interop_require_wildcard(obj, nodeInterop) {
76
+ if (!nodeInterop && obj && obj.__esModule) {
77
+ return obj;
78
+ }
79
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
80
+ return {
81
+ default: obj
82
+ };
83
+ }
84
+ var cache = _getRequireWildcardCache(nodeInterop);
85
+ if (cache && cache.has(obj)) {
86
+ return cache.get(obj);
87
+ }
88
+ var newObj = {
89
+ __proto__: null
90
+ };
91
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
92
+ for(var key in obj){
93
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
94
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
95
+ if (desc && (desc.get || desc.set)) {
96
+ Object.defineProperty(newObj, key, desc);
97
+ } else {
98
+ newObj[key] = obj[key];
99
+ }
100
+ }
101
+ }
102
+ newObj.default = obj;
103
+ if (cache) {
104
+ cache.set(obj, newObj);
105
+ }
106
+ return newObj;
107
+ }
108
+ function _possible_constructor_return(self, call) {
109
+ if (call && (_type_of(call) === "object" || typeof call === "function")) {
110
+ return call;
111
+ }
112
+ return _assert_this_initialized(self);
113
+ }
114
+ function _set_prototype_of(o, p) {
115
+ _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) {
116
+ o.__proto__ = p;
117
+ return o;
118
+ };
119
+ return _set_prototype_of(o, p);
120
+ }
121
+ function _type_of(obj) {
122
+ "@swc/helpers - typeof";
123
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
124
+ }
125
+ function _is_native_reflect_construct() {
126
+ try {
127
+ var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
128
+ } catch (_) {}
129
+ return (_is_native_reflect_construct = function() {
130
+ return !!result;
131
+ })();
132
+ }
133
+ var _default = (0, _dom.domAssigned)(/*#__PURE__*/ function(Substitution) {
134
+ _inherits(FrameSubstitution, Substitution);
135
+ function FrameSubstitution(string, node, tokens, frame, metavariable) {
136
+ _class_call_check(this, FrameSubstitution);
137
+ var _this;
138
+ _this = _call_super(this, FrameSubstitution, [
139
+ string,
140
+ node,
141
+ tokens
142
+ ]);
143
+ _this.frame = frame;
144
+ _this.metavariable = metavariable;
145
+ return _this;
146
+ }
147
+ _create_class(FrameSubstitution, [
148
+ {
149
+ key: "getFrame",
150
+ value: function getFrame() {
151
+ return this.frame;
152
+ }
153
+ },
154
+ {
155
+ key: "getMetavariable",
156
+ value: function getMetavariable() {
157
+ return this.metavariable;
158
+ }
159
+ },
160
+ {
161
+ key: "isFrameEqualTo",
162
+ value: function isFrameEqualTo(frame) {
163
+ return this.frame.isEqualTo(frame);
164
+ }
165
+ },
166
+ {
167
+ key: "isMetavariableEqualTo",
168
+ value: function isMetavariableEqualTo(metavariable) {
169
+ return this.metavariable.isEqualTo(metavariable);
170
+ }
171
+ },
172
+ {
173
+ key: "matchName",
174
+ value: function matchName(name) {
175
+ return this.metavariable.matchName(name);
176
+ }
177
+ },
178
+ {
179
+ key: "getReplacementNode",
180
+ value: function getReplacementNode() {
181
+ var frameNode = this.frame.getNode(), replacementNode = frameNode; ///
182
+ return replacementNode;
183
+ }
184
+ }
185
+ ], [
186
+ {
187
+ key: "fromStatementNode",
188
+ value: function fromStatementNode(statementNode, context) {
189
+ var frameSubstitution = null;
190
+ var frameSubstitutionNode = statementNode.getFrameSubstitutionNode();
191
+ if (frameSubstitutionNode !== null) {
192
+ var lastFrameNode = frameSubstitutionNode.getLastFrameNode(), firstFrameNode = frameSubstitutionNode.getFirstFrameNode(), singularMetavariableNode = lastFrameNode.getSingularMetavariableNode();
193
+ if (singularMetavariableNode !== null) {
194
+ var Frame = _dom.default.Frame, Metavariable = _dom.default.Metavariable, frameNode = firstFrameNode, metavariableNode = singularMetavariableNode, frame = Frame.fromFrameNode(frameNode, context), metavariable = Metavariable.fromMetavariableNode(metavariableNode, context), node = frameSubstitutionNode, tokens = context.nodeAsTokens(node), string = stringFromFrameAndMetavariable(frame, metavariable);
195
+ frameSubstitution = new FrameSubstitution(string, node, tokens, frame, metavariable);
196
+ }
197
+ }
198
+ return frameSubstitution;
199
+ }
200
+ },
201
+ {
202
+ key: "fromFrameAndMetavariable",
203
+ value: function fromFrameAndMetavariable(frame, metavariable, context) {
204
+ var string = stringFromFrameAndMetavariable(frame, metavariable), lexer = context.getLexer(), parser = context.getParser(), frameSubstitutionPartialContext = _frame.default.fromStringLexerAndParser(string, lexer, parser), node = frameSubstitutionPartialContext.getNode(), tokens = frameSubstitutionPartialContext.getTokens(), frameSubstitution = new FrameSubstitution(string, node, tokens, frame, metavariable);
205
+ return frameSubstitution;
206
+ }
207
+ }
208
+ ]);
209
+ return FrameSubstitution;
210
+ }(_substitution.default));
211
+ function stringFromFrameAndMetavariable(frame, metavariable) {
212
+ var frameString = frame.getString(), metavariableString = metavariable.getString(), string = "[".concat(frameString, " for [").concat(metavariableString, "]]");
213
+ return string;
214
+ }
215
+
216
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kb20vc3Vic3RpdHV0aW9uL2ZyYW1lLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgZG9tIGZyb20gXCIuLi8uLi9kb21cIjtcbmltcG9ydCBTdWJzdGl0dXRpb24gZnJvbSBcIi4uL3N1YnN0aXR1dGlvblwiO1xuaW1wb3J0IEZyYW1lU3Vic3RpdHV0aW9uUGFydGlhbENvbnRleHQgZnJvbSBcIi4uLy4uL2NvbnRleHQvcGFydGlhbC9zdWJzdGl0dXRpb24vZnJhbWVcIjtcblxuaW1wb3J0IHsgZG9tQXNzaWduZWQgfSBmcm9tIFwiLi4vLi4vZG9tXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRvbUFzc2lnbmVkKGNsYXNzIEZyYW1lU3Vic3RpdHV0aW9uIGV4dGVuZHMgU3Vic3RpdHV0aW9uIHtcbiAgY29uc3RydWN0b3Ioc3RyaW5nLCBub2RlLCB0b2tlbnMsIGZyYW1lLCBtZXRhdmFyaWFibGUpIHtcbiAgICBzdXBlcihzdHJpbmcsIG5vZGUsIHRva2Vucyk7XG5cbiAgICB0aGlzLmZyYW1lID0gZnJhbWU7XG4gICAgdGhpcy5tZXRhdmFyaWFibGUgPSBtZXRhdmFyaWFibGU7XG4gIH1cblxuICBnZXRGcmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5mcmFtZTtcbiAgfVxuXG4gIGdldE1ldGF2YXJpYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhdmFyaWFibGU7XG4gIH1cblxuICBpc0ZyYW1lRXF1YWxUbyhmcmFtZSkgeyByZXR1cm4gdGhpcy5mcmFtZS5pc0VxdWFsVG8oZnJhbWUpOyB9XG5cbiAgaXNNZXRhdmFyaWFibGVFcXVhbFRvKG1ldGF2YXJpYWJsZSkgeyByZXR1cm4gdGhpcy5tZXRhdmFyaWFibGUuaXNFcXVhbFRvKG1ldGF2YXJpYWJsZSk7IH1cblxuICBtYXRjaE5hbWUobmFtZSkgeyByZXR1cm4gdGhpcy5tZXRhdmFyaWFibGUubWF0Y2hOYW1lKG5hbWUpOyB9XG5cbiAgZ2V0UmVwbGFjZW1lbnROb2RlKCkge1xuICAgIGNvbnN0IGZyYW1lTm9kZSA9IHRoaXMuZnJhbWUuZ2V0Tm9kZSgpLFxuICAgICAgICAgIHJlcGxhY2VtZW50Tm9kZSA9IGZyYW1lTm9kZTsgLy8vXG5cbiAgICByZXR1cm4gcmVwbGFjZW1lbnROb2RlO1xuICB9XG5cbiAgc3RhdGljIGZyb21TdGF0ZW1lbnROb2RlKHN0YXRlbWVudE5vZGUsIGNvbnRleHQpIHtcbiAgICBsZXQgZnJhbWVTdWJzdGl0dXRpb24gPSBudWxsO1xuXG4gICAgY29uc3QgZnJhbWVTdWJzdGl0dXRpb25Ob2RlID0gc3RhdGVtZW50Tm9kZS5nZXRGcmFtZVN1YnN0aXR1dGlvbk5vZGUoKTtcblxuICAgIGlmIChmcmFtZVN1YnN0aXR1dGlvbk5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IGxhc3RGcmFtZU5vZGUgPSBmcmFtZVN1YnN0aXR1dGlvbk5vZGUuZ2V0TGFzdEZyYW1lTm9kZSgpLFxuICAgICAgICAgICAgZmlyc3RGcmFtZU5vZGUgPSBmcmFtZVN1YnN0aXR1dGlvbk5vZGUuZ2V0Rmlyc3RGcmFtZU5vZGUoKSxcbiAgICAgICAgICAgIHNpbmd1bGFyTWV0YXZhcmlhYmxlTm9kZSA9IGxhc3RGcmFtZU5vZGUuZ2V0U2luZ3VsYXJNZXRhdmFyaWFibGVOb2RlKCk7XG5cbiAgICAgIGlmIChzaW5ndWxhck1ldGF2YXJpYWJsZU5vZGUgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgeyBGcmFtZSwgTWV0YXZhcmlhYmxlIH0gPSBkb20sXG4gICAgICAgICAgICAgIGZyYW1lTm9kZSA9IGZpcnN0RnJhbWVOb2RlLCAvLy9cbiAgICAgICAgICAgICAgbWV0YXZhcmlhYmxlTm9kZSA9IHNpbmd1bGFyTWV0YXZhcmlhYmxlTm9kZSwgIC8vL1xuICAgICAgICAgICAgICBmcmFtZSA9IEZyYW1lLmZyb21GcmFtZU5vZGUoZnJhbWVOb2RlLCBjb250ZXh0KSxcbiAgICAgICAgICAgICAgbWV0YXZhcmlhYmxlID0gTWV0YXZhcmlhYmxlLmZyb21NZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUsIGNvbnRleHQpLFxuICAgICAgICAgICAgICBub2RlID0gZnJhbWVTdWJzdGl0dXRpb25Ob2RlLCAgLy8vXG4gICAgICAgICAgICAgIHRva2VucyA9IGNvbnRleHQubm9kZUFzVG9rZW5zKG5vZGUpLFxuICAgICAgICAgICAgICBzdHJpbmcgPSBzdHJpbmdGcm9tRnJhbWVBbmRNZXRhdmFyaWFibGUoZnJhbWUsIG1ldGF2YXJpYWJsZSk7XG5cbiAgICAgICAgZnJhbWVTdWJzdGl0dXRpb24gPSBuZXcgRnJhbWVTdWJzdGl0dXRpb24oc3RyaW5nLCBub2RlLCB0b2tlbnMsIGZyYW1lLCBtZXRhdmFyaWFibGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmcmFtZVN1YnN0aXR1dGlvbjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tRnJhbWVBbmRNZXRhdmFyaWFibGUoZnJhbWUsIG1ldGF2YXJpYWJsZSwgY29udGV4dCkge1xuICAgIGNvbnN0IHN0cmluZyA9IHN0cmluZ0Zyb21GcmFtZUFuZE1ldGF2YXJpYWJsZShmcmFtZSwgbWV0YXZhcmlhYmxlKSxcbiAgICAgICAgICBsZXhlciA9IGNvbnRleHQuZ2V0TGV4ZXIoKSxcbiAgICAgICAgICBwYXJzZXIgPSBjb250ZXh0LmdldFBhcnNlcigpLFxuICAgICAgICAgIGZyYW1lU3Vic3RpdHV0aW9uUGFydGlhbENvbnRleHQgPSBGcmFtZVN1YnN0aXR1dGlvblBhcnRpYWxDb250ZXh0LmZyb21TdHJpbmdMZXhlckFuZFBhcnNlcihzdHJpbmcsIGxleGVyLCBwYXJzZXIpLFxuICAgICAgICAgIG5vZGUgPSBmcmFtZVN1YnN0aXR1dGlvblBhcnRpYWxDb250ZXh0LmdldE5vZGUoKSxcbiAgICAgICAgICB0b2tlbnMgPSBmcmFtZVN1YnN0aXR1dGlvblBhcnRpYWxDb250ZXh0LmdldFRva2VucygpLFxuICAgICAgICAgIGZyYW1lU3Vic3RpdHV0aW9uID0gbmV3IEZyYW1lU3Vic3RpdHV0aW9uKHN0cmluZywgbm9kZSwgdG9rZW5zLCBmcmFtZSwgbWV0YXZhcmlhYmxlKTtcblxuICAgIHJldHVybiBmcmFtZVN1YnN0aXR1dGlvbjtcbiAgfVxufSk7XG5cbmZ1bmN0aW9uIHN0cmluZ0Zyb21GcmFtZUFuZE1ldGF2YXJpYWJsZShmcmFtZSwgbWV0YXZhcmlhYmxlKSB7XG4gIGNvbnN0IGZyYW1lU3RyaW5nID0gZnJhbWUuZ2V0U3RyaW5nKCksXG4gICAgICAgIG1ldGF2YXJpYWJsZVN0cmluZyA9IG1ldGF2YXJpYWJsZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgc3RyaW5nID0gYFske2ZyYW1lU3RyaW5nfSBmb3IgWyR7bWV0YXZhcmlhYmxlU3RyaW5nfV1dYDtcblxuICByZXR1cm4gc3RyaW5nO1xufVxuIl0sIm5hbWVzIjpbImRvbUFzc2lnbmVkIiwiRnJhbWVTdWJzdGl0dXRpb24iLCJzdHJpbmciLCJub2RlIiwidG9rZW5zIiwiZnJhbWUiLCJtZXRhdmFyaWFibGUiLCJnZXRGcmFtZSIsImdldE1ldGF2YXJpYWJsZSIsImlzRnJhbWVFcXVhbFRvIiwiaXNFcXVhbFRvIiwiaXNNZXRhdmFyaWFibGVFcXVhbFRvIiwibWF0Y2hOYW1lIiwibmFtZSIsImdldFJlcGxhY2VtZW50Tm9kZSIsImZyYW1lTm9kZSIsImdldE5vZGUiLCJyZXBsYWNlbWVudE5vZGUiLCJmcm9tU3RhdGVtZW50Tm9kZSIsInN0YXRlbWVudE5vZGUiLCJjb250ZXh0IiwiZnJhbWVTdWJzdGl0dXRpb24iLCJmcmFtZVN1YnN0aXR1dGlvbk5vZGUiLCJnZXRGcmFtZVN1YnN0aXR1dGlvbk5vZGUiLCJsYXN0RnJhbWVOb2RlIiwiZ2V0TGFzdEZyYW1lTm9kZSIsImZpcnN0RnJhbWVOb2RlIiwiZ2V0Rmlyc3RGcmFtZU5vZGUiLCJzaW5ndWxhck1ldGF2YXJpYWJsZU5vZGUiLCJnZXRTaW5ndWxhck1ldGF2YXJpYWJsZU5vZGUiLCJGcmFtZSIsImRvbSIsIk1ldGF2YXJpYWJsZSIsIm1ldGF2YXJpYWJsZU5vZGUiLCJmcm9tRnJhbWVOb2RlIiwiZnJvbU1ldGF2YXJpYWJsZU5vZGUiLCJub2RlQXNUb2tlbnMiLCJzdHJpbmdGcm9tRnJhbWVBbmRNZXRhdmFyaWFibGUiLCJmcm9tRnJhbWVBbmRNZXRhdmFyaWFibGUiLCJsZXhlciIsImdldExleGVyIiwicGFyc2VyIiwiZ2V0UGFyc2VyIiwiZnJhbWVTdWJzdGl0dXRpb25QYXJ0aWFsQ29udGV4dCIsIkZyYW1lU3Vic3RpdHV0aW9uUGFydGlhbENvbnRleHQiLCJmcm9tU3RyaW5nTGV4ZXJBbmRQYXJzZXIiLCJnZXRUb2tlbnMiLCJTdWJzdGl0dXRpb24iLCJmcmFtZVN0cmluZyIsImdldFN0cmluZyIsIm1ldGF2YXJpYWJsZVN0cmluZyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBUUE7OztlQUFBOzs7MkRBTmdCO21FQUNTOzREQUNtQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBSTVDLFdBQWVBLElBQUFBLGdCQUFXLGdCQUFDOzthQUFNQyxrQkFDbkJDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxNQUFNLEVBQUVDLEtBQUssRUFBRUMsWUFBWTtnQ0FEdEJMOztnQkFFN0Isa0JBRjZCQTtZQUV2QkM7WUFBUUM7WUFBTUM7O1FBRXBCLE1BQUtDLEtBQUssR0FBR0E7UUFDYixNQUFLQyxZQUFZLEdBQUdBOzs7OztZQUd0QkMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDRixLQUFLO1lBQ25COzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDRixZQUFZO1lBQzFCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLGVBQWVKLEtBQUs7Z0JBQUksT0FBTyxJQUFJLENBQUNBLEtBQUssQ0FBQ0ssU0FBUyxDQUFDTDtZQUFROzs7WUFFNURNLEtBQUFBO21CQUFBQSxTQUFBQSxzQkFBc0JMLFlBQVk7Z0JBQUksT0FBTyxJQUFJLENBQUNBLFlBQVksQ0FBQ0ksU0FBUyxDQUFDSjtZQUFlOzs7WUFFeEZNLEtBQUFBO21CQUFBQSxTQUFBQSxVQUFVQyxJQUFJO2dCQUFJLE9BQU8sSUFBSSxDQUFDUCxZQUFZLENBQUNNLFNBQVMsQ0FBQ0M7WUFBTzs7O1lBRTVEQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsWUFBWSxJQUFJLENBQUNWLEtBQUssQ0FBQ1csT0FBTyxJQUM5QkMsa0JBQWtCRixXQUFXLEdBQUc7Z0JBRXRDLE9BQU9FO1lBQ1Q7Ozs7WUFFT0MsS0FBQUE7bUJBQVAsU0FBT0Esa0JBQWtCQyxhQUFhLEVBQUVDLE9BQU87Z0JBQzdDLElBQUlDLG9CQUFvQjtnQkFFeEIsSUFBTUMsd0JBQXdCSCxjQUFjSSx3QkFBd0I7Z0JBRXBFLElBQUlELDBCQUEwQixNQUFNO29CQUNsQyxJQUFNRSxnQkFBZ0JGLHNCQUFzQkcsZ0JBQWdCLElBQ3REQyxpQkFBaUJKLHNCQUFzQkssaUJBQWlCLElBQ3hEQywyQkFBMkJKLGNBQWNLLDJCQUEyQjtvQkFFMUUsSUFBSUQsNkJBQTZCLE1BQU07d0JBQ3JDLElBQVFFLFFBQXdCQyxZQUFHLENBQTNCRCxPQUFPRSxlQUFpQkQsWUFBRyxDQUFwQkMsY0FDVGpCLFlBQVlXLGdCQUNaTyxtQkFBbUJMLDBCQUNuQnZCLFFBQVF5QixNQUFNSSxhQUFhLENBQUNuQixXQUFXSyxVQUN2Q2QsZUFBZTBCLGFBQWFHLG9CQUFvQixDQUFDRixrQkFBa0JiLFVBQ25FakIsT0FBT21CLHVCQUNQbEIsU0FBU2dCLFFBQVFnQixZQUFZLENBQUNqQyxPQUM5QkQsU0FBU21DLCtCQUErQmhDLE9BQU9DO3dCQUVyRGUsb0JBQW9CLElBQUlwQixrQkFBa0JDLFFBQVFDLE1BQU1DLFFBQVFDLE9BQU9DO29CQUN6RTtnQkFDRjtnQkFFQSxPQUFPZTtZQUNUOzs7WUFFT2lCLEtBQUFBO21CQUFQLFNBQU9BLHlCQUF5QmpDLEtBQUssRUFBRUMsWUFBWSxFQUFFYyxPQUFPO2dCQUMxRCxJQUFNbEIsU0FBU21DLCtCQUErQmhDLE9BQU9DLGVBQy9DaUMsUUFBUW5CLFFBQVFvQixRQUFRLElBQ3hCQyxTQUFTckIsUUFBUXNCLFNBQVMsSUFDMUJDLGtDQUFrQ0MsY0FBK0IsQ0FBQ0Msd0JBQXdCLENBQUMzQyxRQUFRcUMsT0FBT0UsU0FDMUd0QyxPQUFPd0MsZ0NBQWdDM0IsT0FBTyxJQUM5Q1osU0FBU3VDLGdDQUFnQ0csU0FBUyxJQUNsRHpCLG9CQUFvQixJQUFJcEIsa0JBQWtCQyxRQUFRQyxNQUFNQyxRQUFRQyxPQUFPQztnQkFFN0UsT0FBT2U7WUFDVDs7OztFQWxFeUQwQixxQkFBWTtBQXFFdkUsU0FBU1YsK0JBQStCaEMsS0FBSyxFQUFFQyxZQUFZO0lBQ3pELElBQU0wQyxjQUFjM0MsTUFBTTRDLFNBQVMsSUFDN0JDLHFCQUFxQjVDLGFBQWEyQyxTQUFTLElBQzNDL0MsU0FBUyxBQUFDLElBQXVCZ0QsT0FBcEJGLGFBQVksVUFBMkIsT0FBbkJFLG9CQUFtQjtJQUUxRCxPQUFPaEQ7QUFDVCJ9
@@ -0,0 +1,203 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ var _dom = /*#__PURE__*/ _interop_require_wildcard(require("../../dom"));
12
+ var _substitution = /*#__PURE__*/ _interop_require_default(require("../substitution"));
13
+ var _reference = /*#__PURE__*/ _interop_require_default(require("../../context/partial/substitution/reference"));
14
+ function _assert_this_initialized(self) {
15
+ if (self === void 0) {
16
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
17
+ }
18
+ return self;
19
+ }
20
+ function _call_super(_this, derived, args) {
21
+ derived = _get_prototype_of(derived);
22
+ return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args));
23
+ }
24
+ function _class_call_check(instance, Constructor) {
25
+ if (!(instance instanceof Constructor)) {
26
+ throw new TypeError("Cannot call a class as a function");
27
+ }
28
+ }
29
+ function _defineProperties(target, props) {
30
+ for(var i = 0; i < props.length; i++){
31
+ var descriptor = props[i];
32
+ descriptor.enumerable = descriptor.enumerable || false;
33
+ descriptor.configurable = true;
34
+ if ("value" in descriptor) descriptor.writable = true;
35
+ Object.defineProperty(target, descriptor.key, descriptor);
36
+ }
37
+ }
38
+ function _create_class(Constructor, protoProps, staticProps) {
39
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
40
+ if (staticProps) _defineProperties(Constructor, staticProps);
41
+ return Constructor;
42
+ }
43
+ function _get_prototype_of(o) {
44
+ _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
45
+ return o.__proto__ || Object.getPrototypeOf(o);
46
+ };
47
+ return _get_prototype_of(o);
48
+ }
49
+ function _inherits(subClass, superClass) {
50
+ if (typeof superClass !== "function" && superClass !== null) {
51
+ throw new TypeError("Super expression must either be null or a function");
52
+ }
53
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
54
+ constructor: {
55
+ value: subClass,
56
+ writable: true,
57
+ configurable: true
58
+ }
59
+ });
60
+ if (superClass) _set_prototype_of(subClass, superClass);
61
+ }
62
+ function _interop_require_default(obj) {
63
+ return obj && obj.__esModule ? obj : {
64
+ default: obj
65
+ };
66
+ }
67
+ function _getRequireWildcardCache(nodeInterop) {
68
+ if (typeof WeakMap !== "function") return null;
69
+ var cacheBabelInterop = new WeakMap();
70
+ var cacheNodeInterop = new WeakMap();
71
+ return (_getRequireWildcardCache = function(nodeInterop) {
72
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
73
+ })(nodeInterop);
74
+ }
75
+ function _interop_require_wildcard(obj, nodeInterop) {
76
+ if (!nodeInterop && obj && obj.__esModule) {
77
+ return obj;
78
+ }
79
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
80
+ return {
81
+ default: obj
82
+ };
83
+ }
84
+ var cache = _getRequireWildcardCache(nodeInterop);
85
+ if (cache && cache.has(obj)) {
86
+ return cache.get(obj);
87
+ }
88
+ var newObj = {
89
+ __proto__: null
90
+ };
91
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
92
+ for(var key in obj){
93
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
94
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
95
+ if (desc && (desc.get || desc.set)) {
96
+ Object.defineProperty(newObj, key, desc);
97
+ } else {
98
+ newObj[key] = obj[key];
99
+ }
100
+ }
101
+ }
102
+ newObj.default = obj;
103
+ if (cache) {
104
+ cache.set(obj, newObj);
105
+ }
106
+ return newObj;
107
+ }
108
+ function _possible_constructor_return(self, call) {
109
+ if (call && (_type_of(call) === "object" || typeof call === "function")) {
110
+ return call;
111
+ }
112
+ return _assert_this_initialized(self);
113
+ }
114
+ function _set_prototype_of(o, p) {
115
+ _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) {
116
+ o.__proto__ = p;
117
+ return o;
118
+ };
119
+ return _set_prototype_of(o, p);
120
+ }
121
+ function _type_of(obj) {
122
+ "@swc/helpers - typeof";
123
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
124
+ }
125
+ function _is_native_reflect_construct() {
126
+ try {
127
+ var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
128
+ } catch (_) {}
129
+ return (_is_native_reflect_construct = function() {
130
+ return !!result;
131
+ })();
132
+ }
133
+ var _default = (0, _dom.domAssigned)(/*#__PURE__*/ function(Substitution) {
134
+ _inherits(ReferenceSubstitution, Substitution);
135
+ function ReferenceSubstitution(string, node, tokens, reference, metavariable) {
136
+ _class_call_check(this, ReferenceSubstitution);
137
+ var _this;
138
+ _this = _call_super(this, ReferenceSubstitution, [
139
+ string,
140
+ node,
141
+ tokens
142
+ ]);
143
+ _this.reference = reference;
144
+ _this.metavariable = metavariable;
145
+ return _this;
146
+ }
147
+ _create_class(ReferenceSubstitution, [
148
+ {
149
+ key: "getReference",
150
+ value: function getReference() {
151
+ return this.reference;
152
+ }
153
+ },
154
+ {
155
+ key: "getMetavariable",
156
+ value: function getMetavariable() {
157
+ return this.metavariable;
158
+ }
159
+ },
160
+ {
161
+ key: "isReferenceEqualTo",
162
+ value: function isReferenceEqualTo(reference) {
163
+ return this.reference.isEqualTo(reference);
164
+ }
165
+ },
166
+ {
167
+ key: "isMetavariableEqualTo",
168
+ value: function isMetavariableEqualTo(metavariable) {
169
+ return this.metavariable.isEqualTo(metavariable);
170
+ }
171
+ }
172
+ ], [
173
+ {
174
+ key: "fromStatementNode",
175
+ value: function fromStatementNode(statementNode, context) {
176
+ var referenceSubstitution = null;
177
+ var referenceSubstitutionNode = statementNode.getReferenceSubstitutionNode();
178
+ if (referenceSubstitutionNode !== null) {
179
+ var lastReferenceNode = referenceSubstitutionNode.getLastReferenceNode(), firstReferenceNode = referenceSubstitutionNode.getFirstReferenceNode(), singularMetavariableNode = lastReferenceNode.getSingularMetavariableNode();
180
+ if (singularMetavariableNode !== null) {
181
+ var Reference = _dom.default.Reference, Metavariable = _dom.default.Metavariable, referenceNode = firstReferenceNode, metavariableNode = singularMetavariableNode, reference = Reference.fromReferenceNode(referenceNode, context), metavariable = Metavariable.fromMetavariableNode(metavariableNode, context), node = referenceSubstitutionNode, tokens = context.nodeAsTokens(node), string = stringFromReferenceAndMetavariable(reference, metavariable);
182
+ referenceSubstitution = new ReferenceSubstitution(string, node, tokens, reference, metavariable);
183
+ }
184
+ }
185
+ return referenceSubstitution;
186
+ }
187
+ },
188
+ {
189
+ key: "fromReferenceAndMetavariable",
190
+ value: function fromReferenceAndMetavariable(reference, metavariable, context) {
191
+ var string = stringFromReferenceAndMetavariable(reference, metavariable), lexer = context.getLexer(), parser = context.getParser(), referenceSubstitutionPartialContext = _reference.default.fromStringLexerAndParser(string, lexer, parser), node = referenceSubstitutionPartialContext.getNode(), tokens = referenceSubstitutionPartialContext.getTokens(), referenceSubstitution = new ReferenceSubstitution(string, node, tokens, reference, metavariable);
192
+ return referenceSubstitution;
193
+ }
194
+ }
195
+ ]);
196
+ return ReferenceSubstitution;
197
+ }(_substitution.default));
198
+ function stringFromReferenceAndMetavariable(reference, metavariable) {
199
+ var referenceString = reference.getString(), metavariableString = metavariable.getString(), string = "[".concat(referenceString, " for ").concat(metavariableString, "]");
200
+ return string;
201
+ }
202
+
203
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kb20vc3Vic3RpdHV0aW9uL3JlZmVyZW5jZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGRvbSBmcm9tIFwiLi4vLi4vZG9tXCI7XG5pbXBvcnQgU3Vic3RpdHV0aW9uIGZyb20gXCIuLi9zdWJzdGl0dXRpb25cIjtcbmltcG9ydCBSZWZlcmVuY2VTdWJzdGl0dXRpb25QYXJ0aWFsQ29udGV4dCBmcm9tIFwiLi4vLi4vY29udGV4dC9wYXJ0aWFsL3N1YnN0aXR1dGlvbi9yZWZlcmVuY2VcIjtcblxuaW1wb3J0IHsgZG9tQXNzaWduZWQgfSBmcm9tIFwiLi4vLi4vZG9tXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRvbUFzc2lnbmVkKGNsYXNzIFJlZmVyZW5jZVN1YnN0aXR1dGlvbiBleHRlbmRzIFN1YnN0aXR1dGlvbiB7XG4gIGNvbnN0cnVjdG9yKHN0cmluZywgbm9kZSwgdG9rZW5zLCByZWZlcmVuY2UsIG1ldGF2YXJpYWJsZSkge1xuICAgIHN1cGVyKHN0cmluZywgbm9kZSwgdG9rZW5zKTtcblxuICAgIHRoaXMucmVmZXJlbmNlID0gcmVmZXJlbmNlO1xuICAgIHRoaXMubWV0YXZhcmlhYmxlID0gbWV0YXZhcmlhYmxlO1xuICB9XG5cbiAgZ2V0UmVmZXJlbmNlKCkge1xuICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZTtcbiAgfVxuXG4gIGdldE1ldGF2YXJpYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhdmFyaWFibGU7XG4gIH1cblxuICBpc1JlZmVyZW5jZUVxdWFsVG8ocmVmZXJlbmNlKSB7IHJldHVybiB0aGlzLnJlZmVyZW5jZS5pc0VxdWFsVG8ocmVmZXJlbmNlKTsgfVxuXG4gIGlzTWV0YXZhcmlhYmxlRXF1YWxUbyhtZXRhdmFyaWFibGUpIHsgcmV0dXJuIHRoaXMubWV0YXZhcmlhYmxlLmlzRXF1YWxUbyhtZXRhdmFyaWFibGUpOyB9XG5cbiAgc3RhdGljIGZyb21TdGF0ZW1lbnROb2RlKHN0YXRlbWVudE5vZGUsIGNvbnRleHQpIHtcbiAgICBsZXQgcmVmZXJlbmNlU3Vic3RpdHV0aW9uID0gbnVsbDtcblxuICAgIGNvbnN0IHJlZmVyZW5jZVN1YnN0aXR1dGlvbk5vZGUgPSBzdGF0ZW1lbnROb2RlLmdldFJlZmVyZW5jZVN1YnN0aXR1dGlvbk5vZGUoKTtcblxuICAgIGlmIChyZWZlcmVuY2VTdWJzdGl0dXRpb25Ob2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBsYXN0UmVmZXJlbmNlTm9kZSA9IHJlZmVyZW5jZVN1YnN0aXR1dGlvbk5vZGUuZ2V0TGFzdFJlZmVyZW5jZU5vZGUoKSxcbiAgICAgICAgICAgIGZpcnN0UmVmZXJlbmNlTm9kZSA9IHJlZmVyZW5jZVN1YnN0aXR1dGlvbk5vZGUuZ2V0Rmlyc3RSZWZlcmVuY2VOb2RlKCksXG4gICAgICAgICAgICBzaW5ndWxhck1ldGF2YXJpYWJsZU5vZGUgPSBsYXN0UmVmZXJlbmNlTm9kZS5nZXRTaW5ndWxhck1ldGF2YXJpYWJsZU5vZGUoKTtcblxuICAgICAgaWYgKHNpbmd1bGFyTWV0YXZhcmlhYmxlTm9kZSAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCB7IFJlZmVyZW5jZSwgTWV0YXZhcmlhYmxlIH0gPSBkb20sXG4gICAgICAgICAgICAgIHJlZmVyZW5jZU5vZGUgPSBmaXJzdFJlZmVyZW5jZU5vZGUsIC8vL1xuICAgICAgICAgICAgICBtZXRhdmFyaWFibGVOb2RlID0gc2luZ3VsYXJNZXRhdmFyaWFibGVOb2RlLCAgLy8vXG4gICAgICAgICAgICAgIHJlZmVyZW5jZSA9IFJlZmVyZW5jZS5mcm9tUmVmZXJlbmNlTm9kZShyZWZlcmVuY2VOb2RlLCBjb250ZXh0KSxcbiAgICAgICAgICAgICAgbWV0YXZhcmlhYmxlID0gTWV0YXZhcmlhYmxlLmZyb21NZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUsIGNvbnRleHQpLFxuICAgICAgICAgICAgICBub2RlID0gcmVmZXJlbmNlU3Vic3RpdHV0aW9uTm9kZSwgIC8vL1xuICAgICAgICAgICAgICB0b2tlbnMgPSBjb250ZXh0Lm5vZGVBc1Rva2Vucyhub2RlKSxcbiAgICAgICAgICAgICAgc3RyaW5nID0gc3RyaW5nRnJvbVJlZmVyZW5jZUFuZE1ldGF2YXJpYWJsZShyZWZlcmVuY2UsIG1ldGF2YXJpYWJsZSk7XG5cbiAgICAgICAgcmVmZXJlbmNlU3Vic3RpdHV0aW9uID0gbmV3IFJlZmVyZW5jZVN1YnN0aXR1dGlvbihzdHJpbmcsIG5vZGUsIHRva2VucywgcmVmZXJlbmNlLCBtZXRhdmFyaWFibGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiByZWZlcmVuY2VTdWJzdGl0dXRpb247XG4gIH1cblxuICBzdGF0aWMgZnJvbVJlZmVyZW5jZUFuZE1ldGF2YXJpYWJsZShyZWZlcmVuY2UsIG1ldGF2YXJpYWJsZSwgY29udGV4dCkge1xuICAgIGNvbnN0IHN0cmluZyA9IHN0cmluZ0Zyb21SZWZlcmVuY2VBbmRNZXRhdmFyaWFibGUocmVmZXJlbmNlLCBtZXRhdmFyaWFibGUpLFxuICAgICAgICAgIGxleGVyID0gY29udGV4dC5nZXRMZXhlcigpLFxuICAgICAgICAgIHBhcnNlciA9IGNvbnRleHQuZ2V0UGFyc2VyKCksXG4gICAgICAgICAgcmVmZXJlbmNlU3Vic3RpdHV0aW9uUGFydGlhbENvbnRleHQgPSBSZWZlcmVuY2VTdWJzdGl0dXRpb25QYXJ0aWFsQ29udGV4dC5mcm9tU3RyaW5nTGV4ZXJBbmRQYXJzZXIoc3RyaW5nLCBsZXhlciwgcGFyc2VyKSxcbiAgICAgICAgICBub2RlID0gcmVmZXJlbmNlU3Vic3RpdHV0aW9uUGFydGlhbENvbnRleHQuZ2V0Tm9kZSgpLFxuICAgICAgICAgIHRva2VucyA9IHJlZmVyZW5jZVN1YnN0aXR1dGlvblBhcnRpYWxDb250ZXh0LmdldFRva2VucygpLFxuICAgICAgICAgIHJlZmVyZW5jZVN1YnN0aXR1dGlvbiA9IG5ldyBSZWZlcmVuY2VTdWJzdGl0dXRpb24oc3RyaW5nLCBub2RlLCB0b2tlbnMsIHJlZmVyZW5jZSwgbWV0YXZhcmlhYmxlKTtcblxuICAgIHJldHVybiByZWZlcmVuY2VTdWJzdGl0dXRpb247XG4gIH1cbn0pO1xuXG5mdW5jdGlvbiBzdHJpbmdGcm9tUmVmZXJlbmNlQW5kTWV0YXZhcmlhYmxlKHJlZmVyZW5jZSwgbWV0YXZhcmlhYmxlKSB7XG4gIGNvbnN0IHJlZmVyZW5jZVN0cmluZyA9IHJlZmVyZW5jZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgbWV0YXZhcmlhYmxlU3RyaW5nID0gbWV0YXZhcmlhYmxlLmdldFN0cmluZygpLFxuICAgICAgICBzdHJpbmcgPSBgWyR7cmVmZXJlbmNlU3RyaW5nfSBmb3IgJHttZXRhdmFyaWFibGVTdHJpbmd9XWA7XG5cbiAgcmV0dXJuIHN0cmluZztcbn1cbiJdLCJuYW1lcyI6WyJkb21Bc3NpZ25lZCIsIlJlZmVyZW5jZVN1YnN0aXR1dGlvbiIsInN0cmluZyIsIm5vZGUiLCJ0b2tlbnMiLCJyZWZlcmVuY2UiLCJtZXRhdmFyaWFibGUiLCJnZXRSZWZlcmVuY2UiLCJnZXRNZXRhdmFyaWFibGUiLCJpc1JlZmVyZW5jZUVxdWFsVG8iLCJpc0VxdWFsVG8iLCJpc01ldGF2YXJpYWJsZUVxdWFsVG8iLCJmcm9tU3RhdGVtZW50Tm9kZSIsInN0YXRlbWVudE5vZGUiLCJjb250ZXh0IiwicmVmZXJlbmNlU3Vic3RpdHV0aW9uIiwicmVmZXJlbmNlU3Vic3RpdHV0aW9uTm9kZSIsImdldFJlZmVyZW5jZVN1YnN0aXR1dGlvbk5vZGUiLCJsYXN0UmVmZXJlbmNlTm9kZSIsImdldExhc3RSZWZlcmVuY2VOb2RlIiwiZmlyc3RSZWZlcmVuY2VOb2RlIiwiZ2V0Rmlyc3RSZWZlcmVuY2VOb2RlIiwic2luZ3VsYXJNZXRhdmFyaWFibGVOb2RlIiwiZ2V0U2luZ3VsYXJNZXRhdmFyaWFibGVOb2RlIiwiUmVmZXJlbmNlIiwiZG9tIiwiTWV0YXZhcmlhYmxlIiwicmVmZXJlbmNlTm9kZSIsIm1ldGF2YXJpYWJsZU5vZGUiLCJmcm9tUmVmZXJlbmNlTm9kZSIsImZyb21NZXRhdmFyaWFibGVOb2RlIiwibm9kZUFzVG9rZW5zIiwic3RyaW5nRnJvbVJlZmVyZW5jZUFuZE1ldGF2YXJpYWJsZSIsImZyb21SZWZlcmVuY2VBbmRNZXRhdmFyaWFibGUiLCJsZXhlciIsImdldExleGVyIiwicGFyc2VyIiwiZ2V0UGFyc2VyIiwicmVmZXJlbmNlU3Vic3RpdHV0aW9uUGFydGlhbENvbnRleHQiLCJSZWZlcmVuY2VTdWJzdGl0dXRpb25QYXJ0aWFsQ29udGV4dCIsImZyb21TdHJpbmdMZXhlckFuZFBhcnNlciIsImdldE5vZGUiLCJnZXRUb2tlbnMiLCJTdWJzdGl0dXRpb24iLCJyZWZlcmVuY2VTdHJpbmciLCJnZXRTdHJpbmciLCJtZXRhdmFyaWFibGVTdHJpbmciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVFBOzs7ZUFBQTs7OzJEQU5nQjttRUFDUztnRUFDdUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQUloRCxXQUFlQSxJQUFBQSxnQkFBVyxnQkFBQzs7YUFBTUMsc0JBQ25CQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsTUFBTSxFQUFFQyxTQUFTLEVBQUVDLFlBQVk7Z0NBRDFCTDs7Z0JBRTdCLGtCQUY2QkE7WUFFdkJDO1lBQVFDO1lBQU1DOztRQUVwQixNQUFLQyxTQUFTLEdBQUdBO1FBQ2pCLE1BQUtDLFlBQVksR0FBR0E7Ozs7O1lBR3RCQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLFNBQVM7WUFDdkI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLFlBQVk7WUFDMUI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsbUJBQW1CSixTQUFTO2dCQUFJLE9BQU8sSUFBSSxDQUFDQSxTQUFTLENBQUNLLFNBQVMsQ0FBQ0w7WUFBWTs7O1lBRTVFTSxLQUFBQTttQkFBQUEsU0FBQUEsc0JBQXNCTCxZQUFZO2dCQUFJLE9BQU8sSUFBSSxDQUFDQSxZQUFZLENBQUNJLFNBQVMsQ0FBQ0o7WUFBZTs7OztZQUVqRk0sS0FBQUE7bUJBQVAsU0FBT0Esa0JBQWtCQyxhQUFhLEVBQUVDLE9BQU87Z0JBQzdDLElBQUlDLHdCQUF3QjtnQkFFNUIsSUFBTUMsNEJBQTRCSCxjQUFjSSw0QkFBNEI7Z0JBRTVFLElBQUlELDhCQUE4QixNQUFNO29CQUN0QyxJQUFNRSxvQkFBb0JGLDBCQUEwQkcsb0JBQW9CLElBQ2xFQyxxQkFBcUJKLDBCQUEwQksscUJBQXFCLElBQ3BFQywyQkFBMkJKLGtCQUFrQkssMkJBQTJCO29CQUU5RSxJQUFJRCw2QkFBNkIsTUFBTTt3QkFDckMsSUFBUUUsWUFBNEJDLFlBQUcsQ0FBL0JELFdBQVdFLGVBQWlCRCxZQUFHLENBQXBCQyxjQUNiQyxnQkFBZ0JQLG9CQUNoQlEsbUJBQW1CTiwwQkFDbkJqQixZQUFZbUIsVUFBVUssaUJBQWlCLENBQUNGLGVBQWViLFVBQ3ZEUixlQUFlb0IsYUFBYUksb0JBQW9CLENBQUNGLGtCQUFrQmQsVUFDbkVYLE9BQU9hLDJCQUNQWixTQUFTVSxRQUFRaUIsWUFBWSxDQUFDNUIsT0FDOUJELFNBQVM4QixtQ0FBbUMzQixXQUFXQzt3QkFFN0RTLHdCQUF3QixJQUFJZCxzQkFBc0JDLFFBQVFDLE1BQU1DLFFBQVFDLFdBQVdDO29CQUNyRjtnQkFDRjtnQkFFQSxPQUFPUztZQUNUOzs7WUFFT2tCLEtBQUFBO21CQUFQLFNBQU9BLDZCQUE2QjVCLFNBQVMsRUFBRUMsWUFBWSxFQUFFUSxPQUFPO2dCQUNsRSxJQUFNWixTQUFTOEIsbUNBQW1DM0IsV0FBV0MsZUFDdkQ0QixRQUFRcEIsUUFBUXFCLFFBQVEsSUFDeEJDLFNBQVN0QixRQUFRdUIsU0FBUyxJQUMxQkMsc0NBQXNDQyxrQkFBbUMsQ0FBQ0Msd0JBQXdCLENBQUN0QyxRQUFRZ0MsT0FBT0UsU0FDbEhqQyxPQUFPbUMsb0NBQW9DRyxPQUFPLElBQ2xEckMsU0FBU2tDLG9DQUFvQ0ksU0FBUyxJQUN0RDNCLHdCQUF3QixJQUFJZCxzQkFBc0JDLFFBQVFDLE1BQU1DLFFBQVFDLFdBQVdDO2dCQUV6RixPQUFPUztZQUNUOzs7O0VBekQ2RDRCLHFCQUFZO0FBNEQzRSxTQUFTWCxtQ0FBbUMzQixTQUFTLEVBQUVDLFlBQVk7SUFDakUsSUFBTXNDLGtCQUFrQnZDLFVBQVV3QyxTQUFTLElBQ3JDQyxxQkFBcUJ4QyxhQUFhdUMsU0FBUyxJQUMzQzNDLFNBQVMsQUFBQyxJQUEwQjRDLE9BQXZCRixpQkFBZ0IsU0FBMEIsT0FBbkJFLG9CQUFtQjtJQUU3RCxPQUFPNUM7QUFDVCJ9