occam-furtle 2.0.120 → 2.0.122

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/dom/assignment/array.js +12 -12
  2. package/lib/dom/assignment/object.js +30 -30
  3. package/lib/dom/assignment/variable.js +13 -13
  4. package/lib/dom/block/return.js +9 -9
  5. package/lib/dom/comparison.js +28 -28
  6. package/lib/dom/every.js +25 -25
  7. package/lib/dom/expression/bitwise.js +186 -0
  8. package/lib/dom/expression/bracketed.js +149 -0
  9. package/lib/dom/expression/negated.js +166 -0
  10. package/lib/dom/expression.js +578 -0
  11. package/lib/dom/expressions.js +210 -0
  12. package/lib/dom/parameter/named.js +9 -9
  13. package/lib/dom/parameter.js +9 -9
  14. package/lib/dom/parameters/named.js +11 -11
  15. package/lib/dom/parameters.js +11 -11
  16. package/lib/dom/procedure/anonymous.js +7 -7
  17. package/lib/dom/procedure.js +12 -12
  18. package/lib/dom/procedureCall.js +17 -17
  19. package/lib/dom/query/node.js +19 -19
  20. package/lib/dom/query/nodes.js +19 -19
  21. package/lib/dom/reduce.js +32 -32
  22. package/lib/dom/some.js +25 -25
  23. package/lib/dom/statement/return.js +12 -12
  24. package/lib/dom/ternary.js +27 -27
  25. package/lib/dom/variable.js +30 -30
  26. package/lib/example/utilities/expressions.js +29 -0
  27. package/lib/example.js +4 -4
  28. package/lib/index.js +9 -9
  29. package/package.json +1 -1
  30. package/src/dom/assignment/array.js +14 -14
  31. package/src/dom/assignment/object.js +33 -33
  32. package/src/dom/assignment/variable.js +15 -15
  33. package/src/dom/block/return.js +7 -7
  34. package/src/dom/comparison.js +39 -39
  35. package/src/dom/every.js +25 -25
  36. package/src/dom/expression/bitwise.js +135 -0
  37. package/src/dom/expression/bracketed.js +73 -0
  38. package/src/dom/expression/negated.js +97 -0
  39. package/src/dom/{value.js → expression.js} +128 -128
  40. package/src/dom/expressions.js +138 -0
  41. package/src/dom/parameter/named.js +7 -7
  42. package/src/dom/parameter.js +7 -7
  43. package/src/dom/parameters/named.js +9 -9
  44. package/src/dom/parameters.js +9 -9
  45. package/src/dom/procedure/anonymous.js +10 -10
  46. package/src/dom/procedure.js +12 -12
  47. package/src/dom/procedureCall.js +19 -19
  48. package/src/dom/query/node.js +19 -19
  49. package/src/dom/query/nodes.js +19 -19
  50. package/src/dom/reduce.js +36 -36
  51. package/src/dom/some.js +25 -25
  52. package/src/dom/statement/return.js +14 -14
  53. package/src/dom/ternary.js +39 -39
  54. package/src/dom/variable.js +31 -31
  55. package/src/example/utilities/{values.js → expressions.js} +4 -4
  56. package/src/example.js +4 -4
  57. package/src/index.js +6 -6
  58. package/lib/dom/value/bitwise.js +0 -186
  59. package/lib/dom/value/bracketed.js +0 -149
  60. package/lib/dom/value/negated.js +0 -166
  61. package/lib/dom/value.js +0 -578
  62. package/lib/dom/values.js +0 -210
  63. package/lib/example/utilities/values.js +0 -29
  64. package/src/dom/value/bitwise.js +0 -135
  65. package/src/dom/value/bracketed.js +0 -73
  66. package/src/dom/value/negated.js +0 -97
  67. package/src/dom/values.js +0 -138
@@ -0,0 +1,210 @@
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 _query = require("../utilities/query");
13
+ function _class_call_check(instance, Constructor) {
14
+ if (!(instance instanceof Constructor)) {
15
+ throw new TypeError("Cannot call a class as a function");
16
+ }
17
+ }
18
+ function _defineProperties(target, props) {
19
+ for(var i = 0; i < props.length; i++){
20
+ var descriptor = props[i];
21
+ descriptor.enumerable = descriptor.enumerable || false;
22
+ descriptor.configurable = true;
23
+ if ("value" in descriptor) descriptor.writable = true;
24
+ Object.defineProperty(target, descriptor.key, descriptor);
25
+ }
26
+ }
27
+ function _create_class(Constructor, protoProps, staticProps) {
28
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
29
+ if (staticProps) _defineProperties(Constructor, staticProps);
30
+ return Constructor;
31
+ }
32
+ function _define_property(obj, key, value) {
33
+ if (key in obj) {
34
+ Object.defineProperty(obj, key, {
35
+ value: value,
36
+ enumerable: true,
37
+ configurable: true,
38
+ writable: true
39
+ });
40
+ } else {
41
+ obj[key] = value;
42
+ }
43
+ return obj;
44
+ }
45
+ function _getRequireWildcardCache(nodeInterop) {
46
+ if (typeof WeakMap !== "function") return null;
47
+ var cacheBabelInterop = new WeakMap();
48
+ var cacheNodeInterop = new WeakMap();
49
+ return (_getRequireWildcardCache = function(nodeInterop) {
50
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
51
+ })(nodeInterop);
52
+ }
53
+ function _interop_require_wildcard(obj, nodeInterop) {
54
+ if (!nodeInterop && obj && obj.__esModule) {
55
+ return obj;
56
+ }
57
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
58
+ return {
59
+ default: obj
60
+ };
61
+ }
62
+ var cache = _getRequireWildcardCache(nodeInterop);
63
+ if (cache && cache.has(obj)) {
64
+ return cache.get(obj);
65
+ }
66
+ var newObj = {
67
+ __proto__: null
68
+ };
69
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
70
+ for(var key in obj){
71
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
72
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
73
+ if (desc && (desc.get || desc.set)) {
74
+ Object.defineProperty(newObj, key, desc);
75
+ } else {
76
+ newObj[key] = obj[key];
77
+ }
78
+ }
79
+ }
80
+ newObj.default = obj;
81
+ if (cache) {
82
+ cache.set(obj, newObj);
83
+ }
84
+ return newObj;
85
+ }
86
+ var _Expressions;
87
+ var expressionNodesQuery = (0, _query.nodesQuery)("/expressions/expression"), procedureCallExpressionsNodeQuery = (0, _query.nodeQuery)("/procedureCall/expressions");
88
+ var _default = (0, _dom.domAssigned)((_Expressions = /*#__PURE__*/ function() {
89
+ function Expressions(string, array) {
90
+ _class_call_check(this, Expressions);
91
+ this.string = string;
92
+ this.array = array;
93
+ }
94
+ _create_class(Expressions, [
95
+ {
96
+ key: "getString",
97
+ value: function getString() {
98
+ return this.string;
99
+ }
100
+ },
101
+ {
102
+ key: "getArray",
103
+ value: function getArray() {
104
+ return this.array;
105
+ }
106
+ },
107
+ {
108
+ key: "getLength",
109
+ value: function getLength() {
110
+ var length = this.array.length;
111
+ return length;
112
+ }
113
+ },
114
+ {
115
+ key: "getExpression",
116
+ value: function getExpression(index) {
117
+ var expression = this.array[index] || null; ///
118
+ return expression;
119
+ }
120
+ },
121
+ {
122
+ key: "addExpression",
123
+ value: function addExpression(expression) {
124
+ this.array.push(expression);
125
+ }
126
+ },
127
+ {
128
+ key: "mapExpression",
129
+ value: function mapExpression(callback) {
130
+ return this.array.map(callback);
131
+ }
132
+ },
133
+ {
134
+ key: "forEachExpression",
135
+ value: function forEachExpression(callback) {
136
+ this.array.forEach(callback);
137
+ }
138
+ },
139
+ {
140
+ key: "evaluate",
141
+ value: function evaluate(context) {
142
+ var array = this.mapExpression(function(expression) {
143
+ expression = expression.evaluate(context);
144
+ return expression;
145
+ }), expressions = Expressions.fromArray(array, context); ///
146
+ return expressions;
147
+ }
148
+ }
149
+ ], [
150
+ {
151
+ key: "fromNodes",
152
+ value: function fromNodes(nodes, context) {
153
+ var array = arrayFromNodes(nodes, context), string = stringFromArray(array, context), expressions = new Expressions(string, array);
154
+ return expressions;
155
+ }
156
+ },
157
+ {
158
+ key: "fromArray",
159
+ value: function fromArray(array, context) {
160
+ var string = stringFromArray(array, context), expressions = new Expressions(string, array);
161
+ return expressions;
162
+ }
163
+ },
164
+ {
165
+ key: "fromExpression",
166
+ value: function fromExpression(expression, context) {
167
+ var array = [
168
+ expression
169
+ ], string = stringFromArray(array, context), expressions = new Expressions(string, array);
170
+ return expressions;
171
+ }
172
+ },
173
+ {
174
+ key: "fromProcedureCallNode",
175
+ value: function fromProcedureCallNode(procedureCallNode, context) {
176
+ var procedureCallExpressionsNode = procedureCallExpressionsNodeQuery(procedureCallNode), expressionsNode = procedureCallExpressionsNode, expressions = expressionsFromExpressionsNode(expressionsNode, context);
177
+ return expressions;
178
+ }
179
+ }
180
+ ]);
181
+ return Expressions;
182
+ }(), _define_property(_Expressions, "name", "Expressions"), _Expressions));
183
+ function arrayFromNodes(nodes, context) {
184
+ var Expression = _dom.default.Expression, array = nodes.map(function(node) {
185
+ var expression = Expression.fromNode(node, context);
186
+ return expression;
187
+ });
188
+ return array;
189
+ }
190
+ function stringFromArray(array, context) {
191
+ var expressionsString = array.reduce(function(expressionsString, expression) {
192
+ var expressionString = expression.asString(context);
193
+ expressionsString = expressionsString === null ? expressionString : "".concat(expressionsString, ", ").concat(expressionString);
194
+ return expressionsString;
195
+ }, null), string = expressionsString; ///
196
+ return string;
197
+ }
198
+ function arrayFromExpressionNodes(expressionNodes, context) {
199
+ var Expression = _dom.default.Expression, array = expressionNodes.map(function(expressionNode) {
200
+ var expression = Expression.fromExpressionNode(expressionNode, context);
201
+ return expression;
202
+ });
203
+ return array;
204
+ }
205
+ function expressionsFromExpressionsNode(expressionsNode, context) {
206
+ var Expressions = _dom.default.Expressions, node = expressionsNode, string = context.nodeAsString(node), expressionNodes = expressionNodesQuery(expressionsNode), array = arrayFromExpressionNodes(expressionNodes, context), expressions = new Expressions(string, array);
207
+ return expressions;
208
+ }
209
+
210
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kb20vZXhwcmVzc2lvbnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBkb20gZnJvbSBcIi4uL2RvbVwiO1xuXG5pbXBvcnQgeyBkb21Bc3NpZ25lZCB9IGZyb20gXCIuLi9kb21cIjtcbmltcG9ydCB7IG5vZGVRdWVyeSwgbm9kZXNRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgZXhwcmVzc2lvbk5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL2V4cHJlc3Npb25zL2V4cHJlc3Npb25cIiksXG4gICAgICBwcm9jZWR1cmVDYWxsRXhwcmVzc2lvbnNOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcHJvY2VkdXJlQ2FsbC9leHByZXNzaW9uc1wiKTtcblxuZXhwb3J0IGRlZmF1bHQgZG9tQXNzaWduZWQoY2xhc3MgRXhwcmVzc2lvbnMge1xuICBjb25zdHJ1Y3RvcihzdHJpbmcsIGFycmF5KSB7XG4gICAgdGhpcy5zdHJpbmcgPSBzdHJpbmc7XG4gICAgdGhpcy5hcnJheSA9IGFycmF5O1xuICB9XG5cbiAgZ2V0U3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnN0cmluZztcbiAgfVxuXG4gIGdldEFycmF5KCkge1xuICAgIHJldHVybiB0aGlzLmFycmF5O1xuICB9XG5cbiAgZ2V0TGVuZ3RoKCkge1xuICAgIGNvbnN0IGxlbmd0aCA9IHRoaXMuYXJyYXkubGVuZ3RoO1xuXG4gICAgcmV0dXJuIGxlbmd0aDtcbiAgfVxuXG4gIGdldEV4cHJlc3Npb24oaW5kZXgpIHtcbiAgICBjb25zdCBleHByZXNzaW9uID0gdGhpcy5hcnJheVtpbmRleF0gfHwgbnVsbDsgIC8vL1xuXG4gICAgcmV0dXJuIGV4cHJlc3Npb247XG4gIH1cblxuICBhZGRFeHByZXNzaW9uKGV4cHJlc3Npb24pIHtcbiAgICB0aGlzLmFycmF5LnB1c2goZXhwcmVzc2lvbik7XG4gIH1cblxuICBtYXBFeHByZXNzaW9uKGNhbGxiYWNrKSB7IHJldHVybiB0aGlzLmFycmF5Lm1hcChjYWxsYmFjayk7IH1cblxuICBmb3JFYWNoRXhwcmVzc2lvbihjYWxsYmFjaykgeyB0aGlzLmFycmF5LmZvckVhY2goY2FsbGJhY2spOyB9XG5cbiAgZXZhbHVhdGUoY29udGV4dCkge1xuICAgIGNvbnN0IGFycmF5ID0gdGhpcy5tYXBFeHByZXNzaW9uKChleHByZXNzaW9uKSA9PiB7XG4gICAgICAgICAgICBleHByZXNzaW9uID0gZXhwcmVzc2lvbi5ldmFsdWF0ZShjb250ZXh0KTtcblxuICAgICAgICAgICAgcmV0dXJuIGV4cHJlc3Npb247XG4gICAgICAgICAgfSksXG4gICAgICAgICAgZXhwcmVzc2lvbnMgPSBFeHByZXNzaW9ucy5mcm9tQXJyYXkoYXJyYXksIGNvbnRleHQpOyAvLy9cblxuICAgIHJldHVybiBleHByZXNzaW9ucztcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJFeHByZXNzaW9uc1wiO1xuXG4gIHN0YXRpYyBmcm9tTm9kZXMobm9kZXMsIGNvbnRleHQpIHtcbiAgICBjb25zdCBhcnJheSA9IGFycmF5RnJvbU5vZGVzKG5vZGVzLCBjb250ZXh0KSxcbiAgICAgICAgICBzdHJpbmcgPSBzdHJpbmdGcm9tQXJyYXkoYXJyYXksIGNvbnRleHQpLFxuICAgICAgICAgIGV4cHJlc3Npb25zID0gbmV3IEV4cHJlc3Npb25zKHN0cmluZywgYXJyYXkpO1xuXG4gICAgcmV0dXJuIGV4cHJlc3Npb25zO1xuICB9XG5cbiAgc3RhdGljIGZyb21BcnJheShhcnJheSwgY29udGV4dCkge1xuICAgIGNvbnN0IHN0cmluZyA9IHN0cmluZ0Zyb21BcnJheShhcnJheSwgY29udGV4dCksXG4gICAgICAgICAgZXhwcmVzc2lvbnMgPSBuZXcgRXhwcmVzc2lvbnMoc3RyaW5nLCBhcnJheSk7XG5cbiAgICByZXR1cm4gZXhwcmVzc2lvbnM7XG4gIH1cblxuICBzdGF0aWMgZnJvbUV4cHJlc3Npb24oZXhwcmVzc2lvbiwgY29udGV4dCkge1xuICAgIGNvbnN0IGFycmF5ID0gW1xuICAgICAgICAgICAgZXhwcmVzc2lvblxuICAgICAgICAgIF0sXG4gICAgICAgICAgc3RyaW5nID0gc3RyaW5nRnJvbUFycmF5KGFycmF5LCBjb250ZXh0KSxcbiAgICAgICAgICBleHByZXNzaW9ucyA9IG5ldyBFeHByZXNzaW9ucyhzdHJpbmcsIGFycmF5KTtcblxuICAgIHJldHVybiBleHByZXNzaW9ucztcbiAgfVxuXG4gIHN0YXRpYyBmcm9tUHJvY2VkdXJlQ2FsbE5vZGUocHJvY2VkdXJlQ2FsbE5vZGUsIGNvbnRleHQpIHtcbiAgICBjb25zdCBwcm9jZWR1cmVDYWxsRXhwcmVzc2lvbnNOb2RlID0gcHJvY2VkdXJlQ2FsbEV4cHJlc3Npb25zTm9kZVF1ZXJ5KHByb2NlZHVyZUNhbGxOb2RlKSxcbiAgICAgICAgICBleHByZXNzaW9uc05vZGUgPSBwcm9jZWR1cmVDYWxsRXhwcmVzc2lvbnNOb2RlLCAvLy9cbiAgICAgICAgICBleHByZXNzaW9ucyA9IGV4cHJlc3Npb25zRnJvbUV4cHJlc3Npb25zTm9kZShleHByZXNzaW9uc05vZGUsIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIGV4cHJlc3Npb25zO1xuICB9XG59KTtcblxuZnVuY3Rpb24gYXJyYXlGcm9tTm9kZXMobm9kZXMsIGNvbnRleHQpIHtcbiAgY29uc3QgeyBFeHByZXNzaW9uIH0gPSBkb20sXG4gICAgICAgIGFycmF5ID0gbm9kZXMubWFwKChub2RlKSA9PiB7IC8vL1xuICAgICAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBFeHByZXNzaW9uLmZyb21Ob2RlKG5vZGUsIGNvbnRleHQpO1xuXG4gICAgICAgICAgcmV0dXJuIGV4cHJlc3Npb247XG4gICAgICAgIH0pO1xuXG4gIHJldHVybiBhcnJheTtcbn1cblxuZnVuY3Rpb24gc3RyaW5nRnJvbUFycmF5KGFycmF5LCBjb250ZXh0KSB7XG4gIGNvbnN0IGV4cHJlc3Npb25zU3RyaW5nID0gYXJyYXkucmVkdWNlKChleHByZXNzaW9uc1N0cmluZywgZXhwcmVzc2lvbikgPT4ge1xuICAgICAgICAgIGNvbnN0IGV4cHJlc3Npb25TdHJpbmcgPSBleHByZXNzaW9uLmFzU3RyaW5nKGNvbnRleHQpO1xuXG4gICAgICAgICAgZXhwcmVzc2lvbnNTdHJpbmcgPSAoZXhwcmVzc2lvbnNTdHJpbmcgPT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb25TdHJpbmcgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAke2V4cHJlc3Npb25zU3RyaW5nfSwgJHtleHByZXNzaW9uU3RyaW5nfWA7XG5cbiAgICAgICAgICByZXR1cm4gZXhwcmVzc2lvbnNTdHJpbmc7XG4gICAgICAgIH0sIG51bGwpLFxuICAgICAgICBzdHJpbmcgPSBleHByZXNzaW9uc1N0cmluZzsgIC8vL1xuXG4gIHJldHVybiBzdHJpbmc7XG59XG5cbmZ1bmN0aW9uIGFycmF5RnJvbUV4cHJlc3Npb25Ob2RlcyhleHByZXNzaW9uTm9kZXMsIGNvbnRleHQpIHtcbiAgY29uc3QgeyBFeHByZXNzaW9uIH0gPSBkb20sXG4gICAgICAgIGFycmF5ID0gZXhwcmVzc2lvbk5vZGVzLm1hcCgoZXhwcmVzc2lvbk5vZGUpID0+IHsgLy8vXG4gICAgICAgICAgY29uc3QgZXhwcmVzc2lvbiA9IEV4cHJlc3Npb24uZnJvbUV4cHJlc3Npb25Ob2RlKGV4cHJlc3Npb25Ob2RlLCBjb250ZXh0KTtcblxuICAgICAgICAgIHJldHVybiBleHByZXNzaW9uO1xuICAgICAgICB9KTtcblxuICByZXR1cm4gYXJyYXk7XG59XG5cbmZ1bmN0aW9uIGV4cHJlc3Npb25zRnJvbUV4cHJlc3Npb25zTm9kZShleHByZXNzaW9uc05vZGUsIGNvbnRleHQpIHtcbiAgY29uc3QgeyBFeHByZXNzaW9ucyB9ID0gZG9tLFxuICAgICAgICBub2RlID0gZXhwcmVzc2lvbnNOb2RlLCAvLy9cbiAgICAgICAgc3RyaW5nID0gY29udGV4dC5ub2RlQXNTdHJpbmcobm9kZSksXG4gICAgICAgIGV4cHJlc3Npb25Ob2RlcyA9IGV4cHJlc3Npb25Ob2Rlc1F1ZXJ5KGV4cHJlc3Npb25zTm9kZSksXG4gICAgICAgIGFycmF5ID0gYXJyYXlGcm9tRXhwcmVzc2lvbk5vZGVzKGV4cHJlc3Npb25Ob2RlcywgY29udGV4dCksXG4gICAgICAgIGV4cHJlc3Npb25zID0gbmV3IEV4cHJlc3Npb25zKHN0cmluZywgYXJyYXkpO1xuXG4gIHJldHVybiBleHByZXNzaW9ucztcbn1cbiJdLCJuYW1lcyI6WyJleHByZXNzaW9uTm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJwcm9jZWR1cmVDYWxsRXhwcmVzc2lvbnNOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJkb21Bc3NpZ25lZCIsIkV4cHJlc3Npb25zIiwic3RyaW5nIiwiYXJyYXkiLCJnZXRTdHJpbmciLCJnZXRBcnJheSIsImdldExlbmd0aCIsImxlbmd0aCIsImdldEV4cHJlc3Npb24iLCJpbmRleCIsImV4cHJlc3Npb24iLCJhZGRFeHByZXNzaW9uIiwicHVzaCIsIm1hcEV4cHJlc3Npb24iLCJjYWxsYmFjayIsIm1hcCIsImZvckVhY2hFeHByZXNzaW9uIiwiZm9yRWFjaCIsImV2YWx1YXRlIiwiY29udGV4dCIsImV4cHJlc3Npb25zIiwiZnJvbUFycmF5IiwiZnJvbU5vZGVzIiwibm9kZXMiLCJhcnJheUZyb21Ob2RlcyIsInN0cmluZ0Zyb21BcnJheSIsImZyb21FeHByZXNzaW9uIiwiZnJvbVByb2NlZHVyZUNhbGxOb2RlIiwicHJvY2VkdXJlQ2FsbE5vZGUiLCJwcm9jZWR1cmVDYWxsRXhwcmVzc2lvbnNOb2RlIiwiZXhwcmVzc2lvbnNOb2RlIiwiZXhwcmVzc2lvbnNGcm9tRXhwcmVzc2lvbnNOb2RlIiwibmFtZSIsIkV4cHJlc3Npb24iLCJkb20iLCJub2RlIiwiZnJvbU5vZGUiLCJleHByZXNzaW9uc1N0cmluZyIsInJlZHVjZSIsImV4cHJlc3Npb25TdHJpbmciLCJhc1N0cmluZyIsImFycmF5RnJvbUV4cHJlc3Npb25Ob2RlcyIsImV4cHJlc3Npb25Ob2RlcyIsImV4cHJlc3Npb25Ob2RlIiwiZnJvbUV4cHJlc3Npb25Ob2RlIiwibm9kZUFzU3RyaW5nIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFVQTs7O2VBQUE7OzsyREFSZ0I7cUJBR3NCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFdEMsSUFBTUEsdUJBQXVCQyxJQUFBQSxpQkFBVSxFQUFDLDRCQUNsQ0Msb0NBQW9DQyxJQUFBQSxnQkFBUyxFQUFDO0lBRXBELFdBQWVDLElBQUFBLGdCQUFXLGdDQUFDO2FBQU1DLFlBQ25CQyxNQUFNLEVBQUVDLEtBQUs7Z0NBRE1GO1FBRTdCLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtRQUNkLElBQUksQ0FBQ0MsS0FBSyxHQUFHQTs7OztZQUdmQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLE1BQU07WUFDcEI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLEtBQUs7WUFDbkI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsU0FBUyxJQUFJLENBQUNKLEtBQUssQ0FBQ0ksTUFBTTtnQkFFaEMsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxjQUFjQyxLQUFLO2dCQUNqQixJQUFNQyxhQUFhLElBQUksQ0FBQ1AsS0FBSyxDQUFDTSxNQUFNLElBQUksTUFBTyxHQUFHO2dCQUVsRCxPQUFPQztZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLGNBQWNELFVBQVU7Z0JBQ3RCLElBQUksQ0FBQ1AsS0FBSyxDQUFDUyxJQUFJLENBQUNGO1lBQ2xCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLGNBQWNDLFFBQVE7Z0JBQUksT0FBTyxJQUFJLENBQUNYLEtBQUssQ0FBQ1ksR0FBRyxDQUFDRDtZQUFXOzs7WUFFM0RF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
@@ -125,16 +125,16 @@ var _default = (0, _dom.domAssigned)((_NamedParameter = /*#__PURE__*/ function()
125
125
  }
126
126
  },
127
127
  {
128
- key: "matchValue",
129
- value: function matchValue(value, context) {
130
- var valueString = value.asString(context), namedParameterString = this.string; ///
131
- context.trace("Matching the ".concat(valueString, " value against the '").concat(namedParameterString, "' named parameter..."));
132
- var valueType = value.getType();
133
- if (this.type !== valueType) {
134
- var message = "The ".concat(valueString, " value's '").concat(valueType, "' type and '").concat(namedParameterString, "' named parameter's '").concat(this.type, "' type do not match."), exception = _exception.default.fromMessage(message);
128
+ key: "matchExpression",
129
+ value: function matchExpression(expression, context) {
130
+ var expressionString = expression.asString(context), namedParameterString = this.string; ///
131
+ context.trace("Matching the ".concat(expressionString, " expression against the '").concat(namedParameterString, "' named parameter..."));
132
+ var expressionType = expression.getType();
133
+ if (this.type !== expressionType) {
134
+ var message = "The ".concat(expressionString, " expression's '").concat(expressionType, "' type and '").concat(namedParameterString, "' named parameter's '").concat(this.type, "' type do not match."), exception = _exception.default.fromMessage(message);
135
135
  throw exception;
136
136
  }
137
- context.debug("...matched the ".concat(valueString, " value against the '").concat(namedParameterString, "' named parameter."));
137
+ context.debug("...matched the ".concat(expressionString, " expression against the '").concat(namedParameterString, "' named parameter."));
138
138
  }
139
139
  },
140
140
  {
@@ -195,4 +195,4 @@ function asNameFromNamedParameterNode(namedParameterNode, context) {
195
195
  return asName;
196
196
  }
197
197
 
198
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kb20vcGFyYW1ldGVyL25hbWVkLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgZG9tIGZyb20gXCIuLi8uLi9kb21cIjtcbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uLy4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBkb21Bc3NpZ25lZCB9IGZyb20gXCIuLi8uLi9kb21cIjtcblxuY29uc3QgdHlwZVRlcm1pbmFsTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL25hbWVkUGFyYW1ldGVyL0B0eXBlXCIpLFxuICAgICAgbmFtZVRlcm1pbmFsTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL25hbWVkUGFyYW1ldGVyL0BuYW1lWzBdXCIpLFxuICAgICAgYXNOYW1lVGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbmFtZWRQYXJhbWV0ZXIvQG5hbWVbMV1cIik7XG5cbmV4cG9ydCBkZWZhdWx0IGRvbUFzc2lnbmVkKGNsYXNzIE5hbWVkUGFyYW1ldGVyIHtcbiAgY29uc3RydWN0b3Ioc3RyaW5nLCB0eXBlLCBuYW1lLCBhc05hbWUpIHtcbiAgICB0aGlzLnN0cmluZyA9IHN0cmluZztcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgdGhpcy5hc05hbWUgPSBhc05hbWU7XG4gIH1cblxuICBnZXRTdHJpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RyaW5nO1xuICB9XG5cbiAgZ2V0VHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG5cbiAgZ2V0QXNOYW1lKCkge1xuICAgIHJldHVybiB0aGlzLmFzTmFtZTtcbiAgfVxuXG4gIG1hdGNoVmFsdWUodmFsdWUsIGNvbnRleHQpIHtcbiAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmFzU3RyaW5nKGNvbnRleHQpLFxuICAgICAgICAgIG5hbWVkUGFyYW1ldGVyU3RyaW5nID0gdGhpcy5zdHJpbmc7ICAvLy9cblxuICAgIGNvbnRleHQudHJhY2UoYE1hdGNoaW5nIHRoZSAke3ZhbHVlU3RyaW5nfSB2YWx1ZSBhZ2FpbnN0IHRoZSAnJHtuYW1lZFBhcmFtZXRlclN0cmluZ30nIG5hbWVkIHBhcmFtZXRlci4uLmApO1xuXG4gICAgY29uc3QgdmFsdWVUeXBlID0gdmFsdWUuZ2V0VHlwZSgpO1xuXG4gICAgaWYgKHRoaXMudHlwZSAhPT0gdmFsdWVUeXBlKSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYFRoZSAke3ZhbHVlU3RyaW5nfSB2YWx1ZSdzICcke3ZhbHVlVHlwZX0nIHR5cGUgIGFuZCAnJHtuYW1lZFBhcmFtZXRlclN0cmluZ30nIG5hbWVkIHBhcmFtZXRlcidzICcke3RoaXMudHlwZX0nIHR5cGUgZG8gbm90IG1hdGNoLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5tYXRjaGVkIHRoZSAke3ZhbHVlU3RyaW5nfSB2YWx1ZSBhZ2FpbnN0IHRoZSAnJHtuYW1lZFBhcmFtZXRlclN0cmluZ30nIG5hbWVkIHBhcmFtZXRlci5gKTtcbiAgfVxuXG4gIG1hdGNoTmFtZWRQYXJhbWV0ZXIobmFtZWRQYXJhbWV0ZXIsIGNvbnRleHQpIHtcbiAgICBsZXQgbmFtZWRQYXJhbWV0ZXJNYXRjaGVzO1xuXG4gICAgY29uc3QgbmFtZWRQYXJhbWV0ZXJBID0gdGhpcywgIC8vL1xuICAgICAgICAgIG5hbWVkUGFyYW1ldGVyQiA9IG5hbWVkUGFyYW1ldGVyOyAvLy9cblxuICAgIGNvbnN0IG5hbWVkUGFyYW1ldGVyQVN0cmluZyA9IG5hbWVkUGFyYW1ldGVyQS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICBuYW1lZFBhcmFtZXRlckJTdHJpbmcgPSBuYW1lZFBhcmFtZXRlckIuZ2V0U3RyaW5nKCk7XG5cbiAgICBjb250ZXh0LnRyYWNlKGBNYXRjaGluZyB0aGUgJyR7bmFtZWRQYXJhbWV0ZXJBU3RyaW5nfScgbmFtZWQgcGFyYW1ldGVyIGFnYWluc3QgdGhlICcke25hbWVkUGFyYW1ldGVyQlN0cmluZ30nIG5hbWVkIHBhcmFtZXRlci4uLmApO1xuXG4gICAgY29uc3QgbmFtZSA9IG5hbWVkUGFyYW1ldGVyLmdldE5hbWUoKSxcbiAgICAgICAgICB0eXBlID0gbmFtZWRQYXJhbWV0ZXIuZ2V0VHlwZSgpO1xuXG4gICAgbmFtZWRQYXJhbWV0ZXJNYXRjaGVzID0gKCh0aGlzLm5hbWUgPT09IG5hbWUpICYmICh0aGlzLnR5cGUgPT09IHR5cGUpKTtcblxuICAgIGlmIChuYW1lZFBhcmFtZXRlck1hdGNoZXMpIHtcbiAgICAgIGNvbnRleHQuZGVidWcoYC4uLm1hdGNoZWQgdGhlICcke25hbWVkUGFyYW1ldGVyQVN0cmluZ30nIG5hbWVkIHBhcmFtZXRlciBhZ2FpbnN0IHRoZSAnJHtuYW1lZFBhcmFtZXRlckJTdHJpbmd9JyBuYW1lZCBwYXJhbWV0ZXIuYCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5hbWVkUGFyYW1ldGVyTWF0Y2hlcztcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJOYW1lZFBhcmFtZXRlclwiO1xuXG4gIHN0YXRpYyBmcm9tTmFtZWRQYXJhbWV0ZXJOb2RlKG5hbWVkUGFyYW1ldGVyTm9kZSwgY29udGV4dCkge1xuICAgIGNvbnN0IG5hbWVkUGFyYW1ldGVyID0gbmFtZWRQYXJhbWV0ZXJGcm9tTmFtZWRQYXJhbWV0ZXJOb2RlKG5hbWVkUGFyYW1ldGVyTm9kZSwgY29udGV4dCk7XG5cbiAgICByZXR1cm4gbmFtZWRQYXJhbWV0ZXI7XG4gIH1cbn0pO1xuXG5mdW5jdGlvbiBuYW1lZFBhcmFtZXRlckZyb21OYW1lZFBhcmFtZXRlck5vZGUobmFtZWRQYXJhbWV0ZXJOb2RlLCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgTmFtZWRQYXJhbWV0ZXIgfSA9IGRvbSxcbiAgICAgICAgdHlwZSA9IHR5cGVGcm9tTmFtZWRQYXJhbWV0ZXJOb2RlKG5hbWVkUGFyYW1ldGVyTm9kZSwgY29udGV4dCksXG4gICAgICAgIG5hbWUgPSBuYW1lRnJvbU5hbWVkUGFyYW1ldGVyTm9kZShuYW1lZFBhcmFtZXRlck5vZGUsIGNvbnRleHQpLFxuICAgICAgICBhc05hbWUgPSBhc05hbWVGcm9tTmFtZWRQYXJhbWV0ZXJOb2RlKG5hbWVkUGFyYW1ldGVyTm9kZSwgY29udGV4dCksXG4gICAgICAgIHN0cmluZyA9IHN0cmluZ0Zyb21UeXBlTmFtZUFuZEFzTmFtZSh0eXBlLCBuYW1lLCBhc05hbWUsIGNvbnRleHQpLFxuICAgICAgICBuYW1lZFBhcmFtZXRlciA9IG5ldyBOYW1lZFBhcmFtZXRlcihzdHJpbmcsIHR5cGUsIG5hbWUsIGFzTmFtZSk7XG5cbiAgcmV0dXJuIG5hbWVkUGFyYW1ldGVyO1xufVxuXG5mdW5jdGlvbiBzdHJpbmdGcm9tVHlwZU5hbWVBbmRBc05hbWUodHlwZSwgbmFtZSwgYXNOYW1lLCBjb250ZXh0KSB7XG4gIGxldCBzdHJpbmc7XG5cbiAgY29uc3QgdHlwZVN0cmluZyA9IHR5cGUsICAvLy9cbiAgICAgICAgbmFtZVN0cmluZyA9IG5hbWU7ICAvLy9cblxuICBzdHJpbmcgPSBgJHt0eXBlU3RyaW5nfSAke25hbWVTdHJpbmd9YDtcblxuICBpZiAoYXNOYW1lICE9PSBudWxsKSB7XG4gICAgY29uc3QgYXNOYW1lU3RyaW5nID0gYXNOYW1lOyAgLy8vXG5cbiAgICBzdHJpbmcgPSBgJHtzdHJpbmd9IEFzICR7YXNOYW1lU3RyaW5nfWA7XG4gIH1cblxuICByZXR1cm4gc3RyaW5nO1xufVxuXG5cbmZ1bmN0aW9uIHR5cGVGcm9tTmFtZWRQYXJhbWV0ZXJOb2RlKG5hbWVkUGFyYW1ldGVyTm9kZSwgY29udGV4dCkge1xuICBjb25zdCB0eXBlVGVybWluYWxOb2RlID0gdHlwZVRlcm1pbmFsTm9kZVF1ZXJ5KG5hbWVkUGFyYW1ldGVyTm9kZSksXG4gICAgICAgIHR5cGVUZXJtaW5hbE5vZGVDb250ZW50ID0gdHlwZVRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCksXG4gICAgICAgIHR5cGUgPSB0eXBlVGVybWluYWxOb2RlQ29udGVudDsgLy8vXG5cbiAgcmV0dXJuIHR5cGU7XG59XG5cbmZ1bmN0aW9uIG5hbWVGcm9tTmFtZWRQYXJhbWV0ZXJOb2RlKG5hbWVkUGFyYW1ldGVyTm9kZSwgY29udGV4dCkge1xuICBjb25zdCBuYW1lVGVybWluYWxOb2RlID0gbmFtZVRlcm1pbmFsTm9kZVF1ZXJ5KG5hbWVkUGFyYW1ldGVyTm9kZSksXG4gICAgICAgIG5hbWVUZXJtaW5hbE5vZGVDb250ZW50ID0gbmFtZVRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCksXG4gICAgICAgIG5hbWUgPSBuYW1lVGVybWluYWxOb2RlQ29udGVudDsgLy8vXG5cbiAgcmV0dXJuIG5hbWU7XG59XG5cbmZ1bmN0aW9uIGFzTmFtZUZyb21OYW1lZFBhcmFtZXRlck5vZGUobmFtZWRQYXJhbWV0ZXJOb2RlLCBjb250ZXh0KSB7XG4gIGxldCBhc05hbWUgPSBudWxsO1xuXG4gIGNvbnN0IGFzTmFtZVRlcm1pbmFsTm9kZSA9IGFzTmFtZVRlcm1pbmFsTm9kZVF1ZXJ5KG5hbWVkUGFyYW1ldGVyTm9kZSk7XG5cbiAgaWYgKGFzTmFtZVRlcm1pbmFsTm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IGFzTmFtZVRlcm1pbmFsTm9kZUNvbnRlbnQgPSBhc05hbWVUZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpO1xuXG4gICAgYXNOYW1lID0gYXNOYW1lVGVybWluYWxOb2RlQ29udGVudDsgLy8vXG4gIH1cblxuICByZXR1cm4gYXNOYW1lO1xufVxuIl0sIm5hbWVzIjpbInR5cGVUZXJtaW5hbE5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIm5hbWVUZXJtaW5hbE5vZGVRdWVyeSIsImFzTmFtZVRlcm1pbmFsTm9kZVF1ZXJ5IiwiZG9tQXNzaWduZWQiLCJOYW1lZFBhcmFtZXRlciIsInN0cmluZyIsInR5cGUiLCJuYW1lIiwiYXNOYW1lIiwiZ2V0U3RyaW5nIiwiZ2V0VHlwZSIsImdldE5hbWUiLCJnZXRBc05hbWUiLCJtYXRjaFZhbHVlIiwidmFsdWUiLCJjb250ZXh0IiwidmFsdWVTdHJpbmciLCJhc1N0cmluZyIsIm5hbWVkUGFyYW1ldGVyU3RyaW5nIiwidHJhY2UiLCJ2YWx1ZVR5cGUiLCJtZXNzYWdlIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJkZWJ1ZyIsIm1hdGNoTmFtZWRQYXJhbWV0ZXIiLCJuYW1lZFBhcmFtZXRlciIsIm5hbWVkUGFyYW1ldGVyTWF0Y2hlcyIsIm5hbWVkUGFyYW1ldGVyQSIsIm5hbWVkUGFyYW1ldGVyQiIsIm5hbWVkUGFyYW1ldGVyQVN0cmluZyIsIm5hbWVkUGFyYW1ldGVyQlN0cmluZyIsImZyb21OYW1lZFBhcmFtZXRlck5vZGUiLCJuYW1lZFBhcmFtZXRlck5vZGUiLCJuYW1lZFBhcmFtZXRlckZyb21OYW1lZFBhcmFtZXRlck5vZGUiLCJkb20iLCJ0eXBlRnJvbU5hbWVkUGFyYW1ldGVyTm9kZSIsIm5hbWVGcm9tTmFtZWRQYXJhbWV0ZXJOb2RlIiwiYXNOYW1lRnJvbU5hbWVkUGFyYW1ldGVyTm9kZSIsInN0cmluZ0Zyb21UeXBlTmFtZUFuZEFzTmFtZSIsInR5cGVTdHJpbmciLCJuYW1lU3RyaW5nIiwiYXNOYW1lU3RyaW5nIiwidHlwZVRlcm1pbmFsTm9kZSIsInR5cGVUZXJtaW5hbE5vZGVDb250ZW50IiwiZ2V0Q29udGVudCIsIm5hbWVUZXJtaW5hbE5vZGUiLCJuYW1lVGVybWluYWxOb2RlQ29udGVudCIsImFzTmFtZVRlcm1pbmFsTm9kZSIsImFzTmFtZVRlcm1pbmFsTm9kZUNvbnRlbnQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVlBOzs7ZUFBQTs7OzJEQVZnQjtnRUFDTTtxQkFFSTs7Ozs7Ozs7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
198
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kb20vcGFyYW1ldGVyL25hbWVkLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgZG9tIGZyb20gXCIuLi8uLi9kb21cIjtcbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uLy4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBkb21Bc3NpZ25lZCB9IGZyb20gXCIuLi8uLi9kb21cIjtcblxuY29uc3QgdHlwZVRlcm1pbmFsTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL25hbWVkUGFyYW1ldGVyL0B0eXBlXCIpLFxuICAgICAgbmFtZVRlcm1pbmFsTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL25hbWVkUGFyYW1ldGVyL0BuYW1lWzBdXCIpLFxuICAgICAgYXNOYW1lVGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbmFtZWRQYXJhbWV0ZXIvQG5hbWVbMV1cIik7XG5cbmV4cG9ydCBkZWZhdWx0IGRvbUFzc2lnbmVkKGNsYXNzIE5hbWVkUGFyYW1ldGVyIHtcbiAgY29uc3RydWN0b3Ioc3RyaW5nLCB0eXBlLCBuYW1lLCBhc05hbWUpIHtcbiAgICB0aGlzLnN0cmluZyA9IHN0cmluZztcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgdGhpcy5hc05hbWUgPSBhc05hbWU7XG4gIH1cblxuICBnZXRTdHJpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RyaW5nO1xuICB9XG5cbiAgZ2V0VHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG5cbiAgZ2V0QXNOYW1lKCkge1xuICAgIHJldHVybiB0aGlzLmFzTmFtZTtcbiAgfVxuXG4gIG1hdGNoRXhwcmVzc2lvbihleHByZXNzaW9uLCBjb250ZXh0KSB7XG4gICAgY29uc3QgZXhwcmVzc2lvblN0cmluZyA9IGV4cHJlc3Npb24uYXNTdHJpbmcoY29udGV4dCksXG4gICAgICAgICAgbmFtZWRQYXJhbWV0ZXJTdHJpbmcgPSB0aGlzLnN0cmluZzsgIC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgTWF0Y2hpbmcgdGhlICR7ZXhwcmVzc2lvblN0cmluZ30gZXhwcmVzc2lvbiBhZ2FpbnN0IHRoZSAnJHtuYW1lZFBhcmFtZXRlclN0cmluZ30nIG5hbWVkIHBhcmFtZXRlci4uLmApO1xuXG4gICAgY29uc3QgZXhwcmVzc2lvblR5cGUgPSBleHByZXNzaW9uLmdldFR5cGUoKTtcblxuICAgIGlmICh0aGlzLnR5cGUgIT09IGV4cHJlc3Npb25UeXBlKSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYFRoZSAke2V4cHJlc3Npb25TdHJpbmd9IGV4cHJlc3Npb24ncyAnJHtleHByZXNzaW9uVHlwZX0nIHR5cGUgIGFuZCAnJHtuYW1lZFBhcmFtZXRlclN0cmluZ30nIG5hbWVkIHBhcmFtZXRlcidzICcke3RoaXMudHlwZX0nIHR5cGUgZG8gbm90IG1hdGNoLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5tYXRjaGVkIHRoZSAke2V4cHJlc3Npb25TdHJpbmd9IGV4cHJlc3Npb24gYWdhaW5zdCB0aGUgJyR7bmFtZWRQYXJhbWV0ZXJTdHJpbmd9JyBuYW1lZCBwYXJhbWV0ZXIuYCk7XG4gIH1cblxuICBtYXRjaE5hbWVkUGFyYW1ldGVyKG5hbWVkUGFyYW1ldGVyLCBjb250ZXh0KSB7XG4gICAgbGV0IG5hbWVkUGFyYW1ldGVyTWF0Y2hlcztcblxuICAgIGNvbnN0IG5hbWVkUGFyYW1ldGVyQSA9IHRoaXMsICAvLy9cbiAgICAgICAgICBuYW1lZFBhcmFtZXRlckIgPSBuYW1lZFBhcmFtZXRlcjsgLy8vXG5cbiAgICBjb25zdCBuYW1lZFBhcmFtZXRlckFTdHJpbmcgPSBuYW1lZFBhcmFtZXRlckEuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgbmFtZWRQYXJhbWV0ZXJCU3RyaW5nID0gbmFtZWRQYXJhbWV0ZXJCLmdldFN0cmluZygpO1xuXG4gICAgY29udGV4dC50cmFjZShgTWF0Y2hpbmcgdGhlICcke25hbWVkUGFyYW1ldGVyQVN0cmluZ30nIG5hbWVkIHBhcmFtZXRlciBhZ2FpbnN0IHRoZSAnJHtuYW1lZFBhcmFtZXRlckJTdHJpbmd9JyBuYW1lZCBwYXJhbWV0ZXIuLi5gKTtcblxuICAgIGNvbnN0IG5hbWUgPSBuYW1lZFBhcmFtZXRlci5nZXROYW1lKCksXG4gICAgICAgICAgdHlwZSA9IG5hbWVkUGFyYW1ldGVyLmdldFR5cGUoKTtcblxuICAgIG5hbWVkUGFyYW1ldGVyTWF0Y2hlcyA9ICgodGhpcy5uYW1lID09PSBuYW1lKSAmJiAodGhpcy50eXBlID09PSB0eXBlKSk7XG5cbiAgICBpZiAobmFtZWRQYXJhbWV0ZXJNYXRjaGVzKSB7XG4gICAgICBjb250ZXh0LmRlYnVnKGAuLi5tYXRjaGVkIHRoZSAnJHtuYW1lZFBhcmFtZXRlckFTdHJpbmd9JyBuYW1lZCBwYXJhbWV0ZXIgYWdhaW5zdCB0aGUgJyR7bmFtZWRQYXJhbWV0ZXJCU3RyaW5nfScgbmFtZWQgcGFyYW1ldGVyLmApO1xuICAgIH1cblxuICAgIHJldHVybiBuYW1lZFBhcmFtZXRlck1hdGNoZXM7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiTmFtZWRQYXJhbWV0ZXJcIjtcblxuICBzdGF0aWMgZnJvbU5hbWVkUGFyYW1ldGVyTm9kZShuYW1lZFBhcmFtZXRlck5vZGUsIGNvbnRleHQpIHtcbiAgICBjb25zdCBuYW1lZFBhcmFtZXRlciA9IG5hbWVkUGFyYW1ldGVyRnJvbU5hbWVkUGFyYW1ldGVyTm9kZShuYW1lZFBhcmFtZXRlck5vZGUsIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIG5hbWVkUGFyYW1ldGVyO1xuICB9XG59KTtcblxuZnVuY3Rpb24gbmFtZWRQYXJhbWV0ZXJGcm9tTmFtZWRQYXJhbWV0ZXJOb2RlKG5hbWVkUGFyYW1ldGVyTm9kZSwgY29udGV4dCkge1xuICBjb25zdCB7IE5hbWVkUGFyYW1ldGVyIH0gPSBkb20sXG4gICAgICAgIHR5cGUgPSB0eXBlRnJvbU5hbWVkUGFyYW1ldGVyTm9kZShuYW1lZFBhcmFtZXRlck5vZGUsIGNvbnRleHQpLFxuICAgICAgICBuYW1lID0gbmFtZUZyb21OYW1lZFBhcmFtZXRlck5vZGUobmFtZWRQYXJhbWV0ZXJOb2RlLCBjb250ZXh0KSxcbiAgICAgICAgYXNOYW1lID0gYXNOYW1lRnJvbU5hbWVkUGFyYW1ldGVyTm9kZShuYW1lZFBhcmFtZXRlck5vZGUsIGNvbnRleHQpLFxuICAgICAgICBzdHJpbmcgPSBzdHJpbmdGcm9tVHlwZU5hbWVBbmRBc05hbWUodHlwZSwgbmFtZSwgYXNOYW1lLCBjb250ZXh0KSxcbiAgICAgICAgbmFtZWRQYXJhbWV0ZXIgPSBuZXcgTmFtZWRQYXJhbWV0ZXIoc3RyaW5nLCB0eXBlLCBuYW1lLCBhc05hbWUpO1xuXG4gIHJldHVybiBuYW1lZFBhcmFtZXRlcjtcbn1cblxuZnVuY3Rpb24gc3RyaW5nRnJvbVR5cGVOYW1lQW5kQXNOYW1lKHR5cGUsIG5hbWUsIGFzTmFtZSwgY29udGV4dCkge1xuICBsZXQgc3RyaW5nO1xuXG4gIGNvbnN0IHR5cGVTdHJpbmcgPSB0eXBlLCAgLy8vXG4gICAgICAgIG5hbWVTdHJpbmcgPSBuYW1lOyAgLy8vXG5cbiAgc3RyaW5nID0gYCR7dHlwZVN0cmluZ30gJHtuYW1lU3RyaW5nfWA7XG5cbiAgaWYgKGFzTmFtZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IGFzTmFtZVN0cmluZyA9IGFzTmFtZTsgIC8vL1xuXG4gICAgc3RyaW5nID0gYCR7c3RyaW5nfSBBcyAke2FzTmFtZVN0cmluZ31gO1xuICB9XG5cbiAgcmV0dXJuIHN0cmluZztcbn1cblxuXG5mdW5jdGlvbiB0eXBlRnJvbU5hbWVkUGFyYW1ldGVyTm9kZShuYW1lZFBhcmFtZXRlck5vZGUsIGNvbnRleHQpIHtcbiAgY29uc3QgdHlwZVRlcm1pbmFsTm9kZSA9IHR5cGVUZXJtaW5hbE5vZGVRdWVyeShuYW1lZFBhcmFtZXRlck5vZGUpLFxuICAgICAgICB0eXBlVGVybWluYWxOb2RlQ29udGVudCA9IHR5cGVUZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpLFxuICAgICAgICB0eXBlID0gdHlwZVRlcm1pbmFsTm9kZUNvbnRlbnQ7IC8vL1xuXG4gIHJldHVybiB0eXBlO1xufVxuXG5mdW5jdGlvbiBuYW1lRnJvbU5hbWVkUGFyYW1ldGVyTm9kZShuYW1lZFBhcmFtZXRlck5vZGUsIGNvbnRleHQpIHtcbiAgY29uc3QgbmFtZVRlcm1pbmFsTm9kZSA9IG5hbWVUZXJtaW5hbE5vZGVRdWVyeShuYW1lZFBhcmFtZXRlck5vZGUpLFxuICAgICAgICBuYW1lVGVybWluYWxOb2RlQ29udGVudCA9IG5hbWVUZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpLFxuICAgICAgICBuYW1lID0gbmFtZVRlcm1pbmFsTm9kZUNvbnRlbnQ7IC8vL1xuXG4gIHJldHVybiBuYW1lO1xufVxuXG5mdW5jdGlvbiBhc05hbWVGcm9tTmFtZWRQYXJhbWV0ZXJOb2RlKG5hbWVkUGFyYW1ldGVyTm9kZSwgY29udGV4dCkge1xuICBsZXQgYXNOYW1lID0gbnVsbDtcblxuICBjb25zdCBhc05hbWVUZXJtaW5hbE5vZGUgPSBhc05hbWVUZXJtaW5hbE5vZGVRdWVyeShuYW1lZFBhcmFtZXRlck5vZGUpO1xuXG4gIGlmIChhc05hbWVUZXJtaW5hbE5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCBhc05hbWVUZXJtaW5hbE5vZGVDb250ZW50ID0gYXNOYW1lVGVybWluYWxOb2RlLmdldENvbnRlbnQoKTtcblxuICAgIGFzTmFtZSA9IGFzTmFtZVRlcm1pbmFsTm9kZUNvbnRlbnQ7IC8vL1xuICB9XG5cbiAgcmV0dXJuIGFzTmFtZTtcbn1cbiJdLCJuYW1lcyI6WyJ0eXBlVGVybWluYWxOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJuYW1lVGVybWluYWxOb2RlUXVlcnkiLCJhc05hbWVUZXJtaW5hbE5vZGVRdWVyeSIsImRvbUFzc2lnbmVkIiwiTmFtZWRQYXJhbWV0ZXIiLCJzdHJpbmciLCJ0eXBlIiwibmFtZSIsImFzTmFtZSIsImdldFN0cmluZyIsImdldFR5cGUiLCJnZXROYW1lIiwiZ2V0QXNOYW1lIiwibWF0Y2hFeHByZXNzaW9uIiwiZXhwcmVzc2lvbiIsImNvbnRleHQiLCJleHByZXNzaW9uU3RyaW5nIiwiYXNTdHJpbmciLCJuYW1lZFBhcmFtZXRlclN0cmluZyIsInRyYWNlIiwiZXhwcmVzc2lvblR5cGUiLCJtZXNzYWdlIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJkZWJ1ZyIsIm1hdGNoTmFtZWRQYXJhbWV0ZXIiLCJuYW1lZFBhcmFtZXRlciIsIm5hbWVkUGFyYW1ldGVyTWF0Y2hlcyIsIm5hbWVkUGFyYW1ldGVyQSIsIm5hbWVkUGFyYW1ldGVyQiIsIm5hbWVkUGFyYW1ldGVyQVN0cmluZyIsIm5hbWVkUGFyYW1ldGVyQlN0cmluZyIsImZyb21OYW1lZFBhcmFtZXRlck5vZGUiLCJuYW1lZFBhcmFtZXRlck5vZGUiLCJuYW1lZFBhcmFtZXRlckZyb21OYW1lZFBhcmFtZXRlck5vZGUiLCJkb20iLCJ0eXBlRnJvbU5hbWVkUGFyYW1ldGVyTm9kZSIsIm5hbWVGcm9tTmFtZWRQYXJhbWV0ZXJOb2RlIiwiYXNOYW1lRnJvbU5hbWVkUGFyYW1ldGVyTm9kZSIsInN0cmluZ0Zyb21UeXBlTmFtZUFuZEFzTmFtZSIsInR5cGVTdHJpbmciLCJuYW1lU3RyaW5nIiwiYXNOYW1lU3RyaW5nIiwidHlwZVRlcm1pbmFsTm9kZSIsInR5cGVUZXJtaW5hbE5vZGVDb250ZW50IiwiZ2V0Q29udGVudCIsIm5hbWVUZXJtaW5hbE5vZGUiLCJuYW1lVGVybWluYWxOb2RlQ29udGVudCIsImFzTmFtZVRlcm1pbmFsTm9kZSIs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
@@ -118,16 +118,16 @@ var _default = (0, _dom.domAssigned)((_Parameter = /*#__PURE__*/ function() {
118
118
  }
119
119
  },
120
120
  {
121
- key: "matchValue",
122
- value: function matchValue(value, context) {
123
- var valueString = value.asString(context), parameterString = this.string; ///
124
- context.trace("Matching the ".concat(valueString, " value against the '").concat(parameterString, "' parameter..."));
125
- var valueType = value.getType();
126
- if (this.type !== valueType) {
127
- var message = "The ".concat(valueString, " value's '").concat(valueType, "' type and '").concat(parameterString, "' parameter's '").concat(this.type, "' type do not match."), exception = _exception.default.fromMessage(message);
121
+ key: "matchExpression",
122
+ value: function matchExpression(expression, context) {
123
+ var expressionString = expression.asString(context), parameterString = this.string; ///
124
+ context.trace("Matching the ".concat(expressionString, " expression against the '").concat(parameterString, "' parameter..."));
125
+ var expressionType = expression.getType();
126
+ if (this.type !== expressionType) {
127
+ var message = "The ".concat(expressionString, " expression's '").concat(expressionType, "' type and '").concat(parameterString, "' parameter's '").concat(this.type, "' type do not match."), exception = _exception.default.fromMessage(message);
128
128
  throw exception;
129
129
  }
130
- context.debug("...matched the ".concat(valueString, " value against the '").concat(parameterString, "' parameter."));
130
+ context.debug("...matched the ".concat(expressionString, " expression against the '").concat(parameterString, "' parameter."));
131
131
  }
132
132
  }
133
133
  ], [
@@ -162,4 +162,4 @@ function typeFromParameterNode(parameterNode, context) {
162
162
  return type;
163
163
  }
164
164
 
165
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kb20vcGFyYW1ldGVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgZG9tIGZyb20gXCIuLi9kb21cIjtcbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBkb21Bc3NpZ25lZCB9IGZyb20gXCIuLi9kb21cIjtcbmltcG9ydCB7IG5vZGVRdWVyeSwgbm9kZXNRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgdGVybWluYWxOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9wYXJhbWV0ZXIvQCpcIiksXG4gICAgICBuYW1lVGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcGFyYW1ldGVyL0BuYW1lXCIpLFxuICAgICAgdHlwZVRlcm1pbmFsTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3BhcmFtZXRlci9AdHlwZVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZG9tQXNzaWduZWQoY2xhc3MgUGFyYW1ldGVyIHtcbiAgY29uc3RydWN0b3Ioc3RyaW5nLCB0eXBlLCBuYW1lKSB7XG4gICAgdGhpcy5zdHJpbmcgPSBzdHJpbmc7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xuICB9XG5cbiAgZ2V0U3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnN0cmluZztcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIGdldE5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMubmFtZTtcbiAgfVxuXG4gIG1hdGNoVmFsdWUodmFsdWUsIGNvbnRleHQpIHtcbiAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmFzU3RyaW5nKGNvbnRleHQpLFxuICAgICAgICAgIHBhcmFtZXRlclN0cmluZyA9IHRoaXMuc3RyaW5nOyAgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBNYXRjaGluZyB0aGUgJHt2YWx1ZVN0cmluZ30gdmFsdWUgYWdhaW5zdCB0aGUgJyR7cGFyYW1ldGVyU3RyaW5nfScgcGFyYW1ldGVyLi4uYCk7XG5cbiAgICBjb25zdCB2YWx1ZVR5cGUgPSB2YWx1ZS5nZXRUeXBlKCk7XG5cbiAgICBpZiAodGhpcy50eXBlICE9PSB2YWx1ZVR5cGUpIHtcbiAgICAgIGNvbnN0IG1lc3NhZ2UgPSBgVGhlICR7dmFsdWVTdHJpbmd9IHZhbHVlJ3MgJyR7dmFsdWVUeXBlfScgdHlwZSAgYW5kICcke3BhcmFtZXRlclN0cmluZ30nIHBhcmFtZXRlcidzICcke3RoaXMudHlwZX0nIHR5cGUgZG8gbm90IG1hdGNoLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5tYXRjaGVkIHRoZSAke3ZhbHVlU3RyaW5nfSB2YWx1ZSBhZ2FpbnN0IHRoZSAnJHtwYXJhbWV0ZXJTdHJpbmd9JyBwYXJhbWV0ZXIuYCk7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiUGFyYW1ldGVyXCI7XG5cbiAgc3RhdGljIGZyb21QYXJhbWV0ZXJOb2RlKHBhcmFtZXRlck5vZGUsIGNvbnRleHQpIHtcbiAgICBsZXQgcGFyYW1ldGVyID0gbnVsbDtcblxuICAgIGNvbnN0IHRlcm1pbmFsTm9kZXMgPSB0ZXJtaW5hbE5vZGVzUXVlcnkocGFyYW1ldGVyTm9kZSksXG4gICAgICAgICAgdGVybWluYWxOb2Rlc0xlbmd0aCA9IHRlcm1pbmFsTm9kZXMubGVuZ3RoO1xuXG4gICAgaWYgKHRlcm1pbmFsTm9kZXNMZW5ndGggPT09IDIpIHtcbiAgICAgIHBhcmFtZXRlciA9IHBhcmFtZXRlckZyb21QYXJhbWV0ZXJOb2RlKHBhcmFtZXRlck5vZGUsIGNvbnRleHQpO1xuICAgIH1cblxuICAgIHJldHVybiBwYXJhbWV0ZXI7XG4gIH1cbn0pO1xuXG5mdW5jdGlvbiBwYXJhbWV0ZXJGcm9tUGFyYW1ldGVyTm9kZShwYXJhbWV0ZXJOb2RlLCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgUGFyYW1ldGVyIH0gPSBkb20sXG4gICAgICAgIG5hbWUgPSBuYW1lRnJvbVBhcmFtZXRlck5vZGUocGFyYW1ldGVyTm9kZSwgY29udGV4dCksXG4gICAgICAgIHR5cGUgPSB0eXBlRnJvbVBhcmFtZXRlck5vZGUocGFyYW1ldGVyTm9kZSwgY29udGV4dCksXG4gICAgICAgIHN0cmluZyA9IHN0cmluZ0Zyb21OYW1lQW5kVHlwZShuYW1lLCB0eXBlLCBjb250ZXh0KSxcbiAgICAgICAgcGFyYW1ldGVyID0gbmV3IFBhcmFtZXRlcihzdHJpbmcsIHR5cGUsIG5hbWUpO1xuXG4gIHJldHVybiBwYXJhbWV0ZXI7XG59XG5cbmZ1bmN0aW9uIHN0cmluZ0Zyb21OYW1lQW5kVHlwZShuYW1lLCB0eXBlLCBjb250ZXh0KSB7XG4gIGNvbnN0IG5hbWVTdHJpbmcgPSBuYW1lLCAgLy8vXG4gICAgICAgIHR5cGVTdHJpbmcgPSB0eXBlLCAgLy8vXG4gICAgICAgIHN0cmluZyA9IGAke3R5cGVTdHJpbmd9ICR7bmFtZVN0cmluZ31gO1xuXG4gIHJldHVybiBzdHJpbmc7XG59XG5cbmZ1bmN0aW9uIG5hbWVGcm9tUGFyYW1ldGVyTm9kZShwYXJhbWV0ZXJOb2RlLCBjb250ZXh0KSB7XG4gIGNvbnN0IG5hbWVUZXJtaW5hbE5vZGUgPSBuYW1lVGVybWluYWxOb2RlUXVlcnkocGFyYW1ldGVyTm9kZSksXG4gICAgICAgIG5hbWVUZXJtaW5hbE5vZGVDb250ZW50ID0gbmFtZVRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCksXG4gICAgICAgIG5hbWUgPSBuYW1lVGVybWluYWxOb2RlQ29udGVudDsgLy8vXG5cbiAgcmV0dXJuIG5hbWU7XG59XG5cbmZ1bmN0aW9uIHR5cGVGcm9tUGFyYW1ldGVyTm9kZShwYXJhbWV0ZXJOb2RlLCBjb250ZXh0KSB7XG4gIGNvbnN0IHR5cGVUZXJtaW5hbE5vZGUgPSB0eXBlVGVybWluYWxOb2RlUXVlcnkocGFyYW1ldGVyTm9kZSksXG4gICAgICAgIHR5cGVUZXJtaW5hbE5vZGVDb250ZW50ID0gdHlwZVRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCksXG4gICAgICAgIHR5cGUgPSB0eXBlVGVybWluYWxOb2RlQ29udGVudDsgLy8vXG5cbiAgcmV0dXJuIHR5cGU7XG59XG4iXSwibmFtZXMiOlsidGVybWluYWxOb2Rlc1F1ZXJ5Iiwibm9kZXNRdWVyeSIsIm5hbWVUZXJtaW5hbE5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInR5cGVUZXJtaW5hbE5vZGVRdWVyeSIsImRvbUFzc2lnbmVkIiwiUGFyYW1ldGVyIiwic3RyaW5nIiwidHlwZSIsIm5hbWUiLCJnZXRTdHJpbmciLCJnZXRUeXBlIiwiZ2V0TmFtZSIsIm1hdGNoVmFsdWUiLCJ2YWx1ZSIsImNvbnRleHQiLCJ2YWx1ZVN0cmluZyIsImFzU3RyaW5nIiwicGFyYW1ldGVyU3RyaW5nIiwidHJhY2UiLCJ2YWx1ZVR5cGUiLCJtZXNzYWdlIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJkZWJ1ZyIsImZyb21QYXJhbWV0ZXJOb2RlIiwicGFyYW1ldGVyTm9kZSIsInBhcmFtZXRlciIsInRlcm1pbmFsTm9kZXMiLCJ0ZXJtaW5hbE5vZGVzTGVuZ3RoIiwibGVuZ3RoIiwicGFyYW1ldGVyRnJvbVBhcmFtZXRlck5vZGUiLCJkb20iLCJuYW1lRnJvbVBhcmFtZXRlck5vZGUiLCJ0eXBlRnJvbVBhcmFtZXRlck5vZGUiLCJzdHJpbmdGcm9tTmFtZUFuZFR5cGUiLCJuYW1lU3RyaW5nIiwidHlwZVN0cmluZyIsIm5hbWVUZXJtaW5hbE5vZGUiLCJuYW1lVGVybWluYWxOb2RlQ29udGVudCIsImdldENvbnRlbnQiLCJ0eXBlVGVybWluYWxOb2RlIiwidHlwZVRlcm1pbmFsTm9kZUNvbnRlbnQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVlBOzs7ZUFBQTs7OzJEQVZnQjtnRUFD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
165
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kb20vcGFyYW1ldGVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgZG9tIGZyb20gXCIuLi9kb21cIjtcbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBkb21Bc3NpZ25lZCB9IGZyb20gXCIuLi9kb21cIjtcbmltcG9ydCB7IG5vZGVRdWVyeSwgbm9kZXNRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgdGVybWluYWxOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9wYXJhbWV0ZXIvQCpcIiksXG4gICAgICBuYW1lVGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcGFyYW1ldGVyL0BuYW1lXCIpLFxuICAgICAgdHlwZVRlcm1pbmFsTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3BhcmFtZXRlci9AdHlwZVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZG9tQXNzaWduZWQoY2xhc3MgUGFyYW1ldGVyIHtcbiAgY29uc3RydWN0b3Ioc3RyaW5nLCB0eXBlLCBuYW1lKSB7XG4gICAgdGhpcy5zdHJpbmcgPSBzdHJpbmc7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xuICB9XG5cbiAgZ2V0U3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnN0cmluZztcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIGdldE5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMubmFtZTtcbiAgfVxuXG4gIG1hdGNoRXhwcmVzc2lvbihleHByZXNzaW9uLCBjb250ZXh0KSB7XG4gICAgY29uc3QgZXhwcmVzc2lvblN0cmluZyA9IGV4cHJlc3Npb24uYXNTdHJpbmcoY29udGV4dCksXG4gICAgICAgICAgcGFyYW1ldGVyU3RyaW5nID0gdGhpcy5zdHJpbmc7ICAvLy9cblxuICAgIGNvbnRleHQudHJhY2UoYE1hdGNoaW5nIHRoZSAke2V4cHJlc3Npb25TdHJpbmd9IGV4cHJlc3Npb24gYWdhaW5zdCB0aGUgJyR7cGFyYW1ldGVyU3RyaW5nfScgcGFyYW1ldGVyLi4uYCk7XG5cbiAgICBjb25zdCBleHByZXNzaW9uVHlwZSA9IGV4cHJlc3Npb24uZ2V0VHlwZSgpO1xuXG4gICAgaWYgKHRoaXMudHlwZSAhPT0gZXhwcmVzc2lvblR5cGUpIHtcbiAgICAgIGNvbnN0IG1lc3NhZ2UgPSBgVGhlICR7ZXhwcmVzc2lvblN0cmluZ30gZXhwcmVzc2lvbidzICcke2V4cHJlc3Npb25UeXBlfScgdHlwZSAgYW5kICcke3BhcmFtZXRlclN0cmluZ30nIHBhcmFtZXRlcidzICcke3RoaXMudHlwZX0nIHR5cGUgZG8gbm90IG1hdGNoLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5tYXRjaGVkIHRoZSAke2V4cHJlc3Npb25TdHJpbmd9IGV4cHJlc3Npb24gYWdhaW5zdCB0aGUgJyR7cGFyYW1ldGVyU3RyaW5nfScgcGFyYW1ldGVyLmApO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlBhcmFtZXRlclwiO1xuXG4gIHN0YXRpYyBmcm9tUGFyYW1ldGVyTm9kZShwYXJhbWV0ZXJOb2RlLCBjb250ZXh0KSB7XG4gICAgbGV0IHBhcmFtZXRlciA9IG51bGw7XG5cbiAgICBjb25zdCB0ZXJtaW5hbE5vZGVzID0gdGVybWluYWxOb2Rlc1F1ZXJ5KHBhcmFtZXRlck5vZGUpLFxuICAgICAgICAgIHRlcm1pbmFsTm9kZXNMZW5ndGggPSB0ZXJtaW5hbE5vZGVzLmxlbmd0aDtcblxuICAgIGlmICh0ZXJtaW5hbE5vZGVzTGVuZ3RoID09PSAyKSB7XG4gICAgICBwYXJhbWV0ZXIgPSBwYXJhbWV0ZXJGcm9tUGFyYW1ldGVyTm9kZShwYXJhbWV0ZXJOb2RlLCBjb250ZXh0KTtcbiAgICB9XG5cbiAgICByZXR1cm4gcGFyYW1ldGVyO1xuICB9XG59KTtcblxuZnVuY3Rpb24gcGFyYW1ldGVyRnJvbVBhcmFtZXRlck5vZGUocGFyYW1ldGVyTm9kZSwgY29udGV4dCkge1xuICBjb25zdCB7IFBhcmFtZXRlciB9ID0gZG9tLFxuICAgICAgICBuYW1lID0gbmFtZUZyb21QYXJhbWV0ZXJOb2RlKHBhcmFtZXRlck5vZGUsIGNvbnRleHQpLFxuICAgICAgICB0eXBlID0gdHlwZUZyb21QYXJhbWV0ZXJOb2RlKHBhcmFtZXRlck5vZGUsIGNvbnRleHQpLFxuICAgICAgICBzdHJpbmcgPSBzdHJpbmdGcm9tTmFtZUFuZFR5cGUobmFtZSwgdHlwZSwgY29udGV4dCksXG4gICAgICAgIHBhcmFtZXRlciA9IG5ldyBQYXJhbWV0ZXIoc3RyaW5nLCB0eXBlLCBuYW1lKTtcblxuICByZXR1cm4gcGFyYW1ldGVyO1xufVxuXG5mdW5jdGlvbiBzdHJpbmdGcm9tTmFtZUFuZFR5cGUobmFtZSwgdHlwZSwgY29udGV4dCkge1xuICBjb25zdCBuYW1lU3RyaW5nID0gbmFtZSwgIC8vL1xuICAgICAgICB0eXBlU3RyaW5nID0gdHlwZSwgIC8vL1xuICAgICAgICBzdHJpbmcgPSBgJHt0eXBlU3RyaW5nfSAke25hbWVTdHJpbmd9YDtcblxuICByZXR1cm4gc3RyaW5nO1xufVxuXG5mdW5jdGlvbiBuYW1lRnJvbVBhcmFtZXRlck5vZGUocGFyYW1ldGVyTm9kZSwgY29udGV4dCkge1xuICBjb25zdCBuYW1lVGVybWluYWxOb2RlID0gbmFtZVRlcm1pbmFsTm9kZVF1ZXJ5KHBhcmFtZXRlck5vZGUpLFxuICAgICAgICBuYW1lVGVybWluYWxOb2RlQ29udGVudCA9IG5hbWVUZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpLFxuICAgICAgICBuYW1lID0gbmFtZVRlcm1pbmFsTm9kZUNvbnRlbnQ7IC8vL1xuXG4gIHJldHVybiBuYW1lO1xufVxuXG5mdW5jdGlvbiB0eXBlRnJvbVBhcmFtZXRlck5vZGUocGFyYW1ldGVyTm9kZSwgY29udGV4dCkge1xuICBjb25zdCB0eXBlVGVybWluYWxOb2RlID0gdHlwZVRlcm1pbmFsTm9kZVF1ZXJ5KHBhcmFtZXRlck5vZGUpLFxuICAgICAgICB0eXBlVGVybWluYWxOb2RlQ29udGVudCA9IHR5cGVUZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpLFxuICAgICAgICB0eXBlID0gdHlwZVRlcm1pbmFsTm9kZUNvbnRlbnQ7IC8vL1xuXG4gIHJldHVybiB0eXBlO1xufVxuIl0sIm5hbWVzIjpbInRlcm1pbmFsTm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJuYW1lVGVybWluYWxOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ0eXBlVGVybWluYWxOb2RlUXVlcnkiLCJkb21Bc3NpZ25lZCIsIlBhcmFtZXRlciIsInN0cmluZyIsInR5cGUiLCJuYW1lIiwiZ2V0U3RyaW5nIiwiZ2V0VHlwZSIsImdldE5hbWUiLCJtYXRjaEV4cHJlc3Npb24iLCJleHByZXNzaW9uIiwiY29udGV4dCIsImV4cHJlc3Npb25TdHJpbmciLCJhc1N0cmluZyIsInBhcmFtZXRlclN0cmluZyIsInRyYWNlIiwiZXhwcmVzc2lvblR5cGUiLCJtZXNzYWdlIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJkZWJ1ZyIsImZyb21QYXJhbWV0ZXJOb2RlIiwicGFyYW1ldGVyTm9kZSIsInBhcmFtZXRlciIsInRlcm1pbmFsTm9kZXMiLCJ0ZXJtaW5hbE5vZGVzTGVuZ3RoIiwibGVuZ3RoIiwicGFyYW1ldGVyRnJvbVBhcmFtZXRlck5vZGUiLCJkb20iLCJuYW1lRnJvbVBhcmFtZXRlck5vZGUiLCJ0eXBlRnJvbVBhcmFtZXRlck5vZGUiLCJzdHJpbmdGcm9tTmFtZUFuZFR5cGUiLCJuYW1lU3RyaW5nIiwidHlwZVN0cmluZyIsIm5hbWVUZXJtaW5hbE5vZGUiLCJuYW1lVGVybWluYWxOb2RlQ29udGVudCIsImdldENvbnRlbnQiLCJ0eXBlVGVybWluYWxOb2RlIiwidHlwZVRlcm1pbmFsTm9kZUNvbnRlbnQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVlBOzs7ZUFBQTs7OzJEQVZnQjtnRUFDTTtxQkFHZ0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXRDLElBQU1BLHFCQUFxQkMsSUFBQUEsaUJBQVUsRUFBQyxrQkFDaENDLHdCQUF3QkMsSUFBQUEsZ0JBQVMsRUFBQyxxQkFDbENDLHdCQUF3QkQsSUFBQUEsZ0JBQVMsRUFBQztJQUV4QyxXQUFlRSxJQUFBQSxnQkFBVyw4QkFBQzthQUFNQyxVQUNuQkMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLElBQUk7Z0NBRENIO1FBRTdCLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtRQUNkLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtRQUNaLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTs7OztZQUdkQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILE1BQU07WUFDcEI7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILElBQUk7WUFDbEI7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILElBQUk7WUFDbEI7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUEsZ0JBQWdCQyxVQUFVLEVBQUVDLE9BQU87Z0JBQ2pDLElBQU1DLG1CQUFtQkYsV0FBV0csUUFBUSxDQUFDRixVQUN2Q0csa0JBQWtCLElBQUksQ0FBQ1gsTUFBTSxFQUFHLEdBQUc7Z0JBRXpDUSxRQUFRSSxLQUFLLENBQUMsQUFBQyxnQkFBMkRELE9BQTVDRixrQkFBaUIsNkJBQTJDLE9BQWhCRSxpQkFBZ0I7Z0JBRTFGLElBQU1FLGlCQUFpQk4sV0FBV0gsT0FBTztnQkFFekMsSUFBSSxJQUFJLENBQUNILElBQUksS0FBS1ksZ0JBQWdCO29CQUNoQyxJQUFNQyxVQUFVLEFBQUMsT0FBd0NELE9BQWxDSixrQkFBaUIsbUJBQStDRSxPQUE5QkUsZ0JBQWUsaUJBQWdELE9BQWpDRixpQkFBZ0IsbUJBQTJCLE9BQVYsSUFBSSxDQUFDVixJQUFJLEVBQUMseUJBQzVIYyxZQUFZQyxrQkFBUyxDQUFDQyxXQUFXLENBQUNIO29CQUV4QyxNQUFNQztnQkFDUjtnQkFFQVAsUUFBUVUsS0FBSyxDQUFDLEFBQUMsa0JBQTZEUCxPQUE1Q0Ysa0JBQWlCLDZCQUEyQyxPQUFoQkUsaUJBQWdCO1lBQzlGOzs7O1lBSU9RLEtBQUFBO21CQUFQLFNBQU9BLGtCQUFrQkMsYUFBYSxFQUFFWixPQUFPO2dCQUM3QyxJQUFJYSxZQUFZO2dCQUVoQixJQUFNQyxnQkFBZ0I3QixtQkFBbUIyQixnQkFDbkNHLHNCQUFzQkQsY0FBY0UsTUFBTTtnQkFFaEQsSUFBSUQsd0JBQXdCLEdBQUc7b0JBQzdCRixZQUFZSSwyQkFBMkJMLGVBQWVaO2dCQUN4RDtnQkFFQSxPQUFPYTtZQUNUOzs7O0tBYkEsNkJBQU9uQixRQUFPO0FBZ0JoQixTQUFTdUIsMkJBQTJCTCxhQUFhLEVBQUVaLE9BQU87SUFDeEQsSUFBTSxBQUFFVCxZQUFjMkIsWUFBRyxDQUFqQjNCLFdBQ0ZHLE9BQU95QixzQkFBc0JQLGVBQWVaLFVBQzVDUCxPQUFPMkIsc0JBQXNCUixlQUFlWixVQUM1Q1IsU0FBUzZCLHNCQUFzQjNCLE1BQU1ELE1BQU1PLFVBQzNDYSxZQUFZLElBQUl0QixVQUFVQyxRQUFRQyxNQUFNQztJQUU5QyxPQUFPbUI7QUFDVDtBQUVBLFNBQVNRLHNCQUFzQjNCLElBQUksRUFBRUQsSUFBSSxFQUFFTyxPQUFPO0lBQ2hELElBQU1zQixhQUFhNUIsTUFDYjZCLGFBQWE5QixNQUNiRCxTQUFTLEFBQUMsR0FBZ0I4QixPQUFkQyxZQUFXLEtBQWMsT0FBWEQ7SUFFaEMsT0FBTzlCO0FBQ1Q7QUFFQSxTQUFTMkIsc0JBQXNCUCxhQUFhLEVBQUVaLE9BQU87SUFDbkQsSUFBTXdCLG1CQUFtQnJDLHNCQUFzQnlCLGdCQUN6Q2EsMEJBQTBCRCxpQkFBaUJFLFVBQVUsSUFDckRoQyxPQUFPK0IseUJBQXlCLEdBQUc7SUFFekMsT0FBTy9CO0FBQ1Q7QUFFQSxTQUFTMEIsc0JBQXNCUixhQUFhLEVBQUVaLE9BQU87SUFDbkQsSUFBTTJCLG1CQUFtQnRDLHNCQUFzQnVCLGdCQUN6Q2dCLDBCQUEwQkQsaUJBQWlCRCxVQUFVLElBQ3JEakMsT0FBT21DLHlCQUF5QixHQUFHO0lBRXpDLE9BQU9uQztBQUNUIn0=
@@ -137,22 +137,22 @@ var _default = (0, _dom.domAssigned)((_NamedParameters = /*#__PURE__*/ function(
137
137
  }
138
138
  },
139
139
  {
140
- key: "matchValues",
141
- value: function matchValues(values, context) {
142
- var valuesString = values.getString(), namedParametersString = this.string; ///
143
- context.trace("Matching the ".concat(valuesString, " values against the '").concat(namedParametersString, "' named parameters..."));
144
- var valuesLength = values.getLength(), namedParametersLength = this.getLength();
145
- if (valuesLength !== namedParametersLength) {
146
- var message = "The ".concat(valuesString, " values and '").concat(namedParametersString, "' named parameters are not of the same length."), exception = _exception.default.fromMessage(message);
140
+ key: "matchExpressions",
141
+ value: function matchExpressions(expressions, context) {
142
+ var expressionsString = expressions.getString(), namedParametersString = this.string; ///
143
+ context.trace("Matching the ".concat(expressionsString, " expressions against the '").concat(namedParametersString, "' named parameters..."));
144
+ var expressionsLength = expressions.getLength(), namedParametersLength = this.getLength();
145
+ if (expressionsLength !== namedParametersLength) {
146
+ var message = "The ".concat(expressionsString, " expressions and '").concat(namedParametersString, "' named parameters are not of the same length."), exception = _exception.default.fromMessage(message);
147
147
  throw exception;
148
148
  }
149
149
  this.forEachNamedParameter(function(namedParameter, index) {
150
150
  if (namedParameter !== null) {
151
- var value = values.getValue(index);
152
- namedParameter.matchValue(value, context);
151
+ var expression = expressions.getExpression(index);
152
+ namedParameter.matchExpression(expression, context);
153
153
  }
154
154
  });
155
- context.debug("...matched the ".concat(valuesString, " values against the '").concat(namedParametersString, "' named parameters."));
155
+ context.debug("...matched the ".concat(expressionsString, " expressions against the '").concat(namedParametersString, "' named parameters."));
156
156
  }
157
157
  },
158
158
  {
@@ -217,4 +217,4 @@ function stringFromArray(array, context) {
217
217
  return string;
218
218
  }
219
219
 
220
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kb20vcGFyYW1ldGVycy9uYW1lZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGRvbSBmcm9tIFwiLi4vLi4vZG9tXCI7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi8uLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgZG9tQXNzaWduZWQgfSBmcm9tIFwiLi4vLi4vZG9tXCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIG5vZGVzUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IG5hbWVkUGFyYW1ldGVyTm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvbmFtZWRQYXJhbWV0ZXJzL25hbWVkUGFyYW1ldGVyXCIpLFxuICAgICAgb2JqZWN0QXNzaWdubWVudE5hbWVkUGFyYW1ldGVyc05vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9vYmplY3RBc3NpZ25tZW50L25hbWVkUGFyYW1ldGVyc1wiKTtcblxuZXhwb3J0IGRlZmF1bHQgZG9tQXNzaWduZWQoY2xhc3MgTmFtZWRQYXJhbWV0ZXJzIHtcbiAgY29uc3RydWN0b3Ioc3RyaW5nLCBhcnJheSkge1xuICAgIHRoaXMuc3RyaW5nID0gc3RyaW5nO1xuICAgIHRoaXMuYXJyYXkgPSBhcnJheTtcbiAgfVxuXG4gIGdldFN0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy5zdHJpbmc7XG4gIH1cblxuICBnZXRBcnJheSgpIHtcbiAgICByZXR1cm4gdGhpcy5hcnJheTtcbiAgfVxuXG4gIGdldExlbmd0aCgpIHtcbiAgICBjb25zdCBsZW5ndGggPSB0aGlzLmFycmF5Lmxlbmd0aDtcblxuICAgIHJldHVybiBsZW5ndGg7XG4gIH1cblxuICBnZXROYW1lZFBhcmFtZXRlcihpbmRleCkge1xuICAgIGNvbnN0IG5hbWVkUGFyYW1ldGVyID0gdGhpcy5hcnJheVtpbmRleF0gfHwgbnVsbDtcblxuICAgIHJldHVybiBuYW1lZFBhcmFtZXRlcjtcbiAgfVxuXG4gIHNvbWVOYW1lZFBhcmFtZXRlcihjYWxsYmFjaykgeyByZXR1cm4gdGhpcy5hcnJheS5zb21lKGNhbGxiYWNrKTsgfVxuXG4gIGZvckVhY2hOYW1lZFBhcmFtZXRlcihjYWxsYmFjaykgeyB0aGlzLmFycmF5LmZvckVhY2goY2FsbGJhY2spOyB9XG5cbiAgbWF0Y2hWYWx1ZXModmFsdWVzLCBjb250ZXh0KSB7XG4gICAgY29uc3QgdmFsdWVzU3RyaW5nID0gdmFsdWVzLmdldFN0cmluZygpLFxuICAgICAgICAgIG5hbWVkUGFyYW1ldGVyc1N0cmluZyA9IHRoaXMuc3RyaW5nOyAvLy9cblxuICAgIGNvbnRleHQudHJhY2UoYE1hdGNoaW5nIHRoZSAke3ZhbHVlc1N0cmluZ30gdmFsdWVzIGFnYWluc3QgdGhlICcke25hbWVkUGFyYW1ldGVyc1N0cmluZ30nIG5hbWVkIHBhcmFtZXRlcnMuLi5gKTtcblxuICAgIGNvbnN0IHZhbHVlc0xlbmd0aCA9IHZhbHVlcy5nZXRMZW5ndGgoKSxcbiAgICAgICAgICBuYW1lZFBhcmFtZXRlcnNMZW5ndGggPSB0aGlzLmdldExlbmd0aCgpO1xuXG4gICAgaWYgKHZhbHVlc0xlbmd0aCAhPT0gbmFtZWRQYXJhbWV0ZXJzTGVuZ3RoKSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYFRoZSAke3ZhbHVlc1N0cmluZ30gdmFsdWVzIGFuZCAnJHtuYW1lZFBhcmFtZXRlcnNTdHJpbmd9JyBuYW1lZCBwYXJhbWV0ZXJzIGFyZSBub3Qgb2YgdGhlIHNhbWUgbGVuZ3RoLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICB0aGlzLmZvckVhY2hOYW1lZFBhcmFtZXRlcigobmFtZWRQYXJhbWV0ZXIsIGluZGV4KSA9PiB7XG4gICAgICBpZiAobmFtZWRQYXJhbWV0ZXIgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB2YWx1ZXMuZ2V0VmFsdWUoaW5kZXgpO1xuXG4gICAgICAgIG5hbWVkUGFyYW1ldGVyLm1hdGNoVmFsdWUodmFsdWUsIGNvbnRleHQpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgY29udGV4dC5kZWJ1ZyhgLi4ubWF0Y2hlZCB0aGUgJHt2YWx1ZXNTdHJpbmd9IHZhbHVlcyBhZ2FpbnN0IHRoZSAnJHtuYW1lZFBhcmFtZXRlcnNTdHJpbmd9JyBuYW1lZCBwYXJhbWV0ZXJzLmApO1xuICB9XG5cbiAgbWF0Y2hOYW1lZFBhcmFtZXRlcihuYW1lZFBhcmFtZXRlciwgY29udGV4dCkge1xuICAgIGNvbnN0IG5hbWVkUGFyYW1ldGVyU3RyaW5nID0gbmFtZWRQYXJhbWV0ZXIuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgbmFtZWRQYXJhbWV0ZXJzU3RyaW5nID0gdGhpcy5zdHJpbmc7IC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgTWF0Y2hpbmcgdGhlICcke25hbWVkUGFyYW1ldGVyU3RyaW5nfScgbmFtZWRQYXJhbWV0ZXIgYWdhaW5zdCB0aGUgJyR7bmFtZWRQYXJhbWV0ZXJzU3RyaW5nfScgbmFtZWQgcGFyYW1ldGVycy4uLmApO1xuXG4gICAgY29uc3QgbmFtZWRQYXJhbWV0ZXJBID0gbmFtZWRQYXJhbWV0ZXIsIC8vL1xuICAgICAgICAgIG5hbWVkUGFyYW1ldGVyTWF0Y2hlcyA9IHRoaXMuc29tZU5hbWVkUGFyYW1ldGVyKChuYW1lZFBhcmFtZXRlcikgPT4ge1xuICAgICAgICAgICAgaWYgKG5hbWVkUGFyYW1ldGVyICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgIGNvbnN0IG5hbWVkUGFyYW1ldGVyQiA9IG5hbWVkUGFyYW1ldGVyLCAvLy9cbiAgICAgICAgICAgICAgICAgICAgbmFtZWRQYXJhbWV0ZXJCTWF0Y2hlc05hbWVkUGFyYW1ldGVyQSA9IG5hbWVkUGFyYW1ldGVyQS5tYXRjaE5hbWVkUGFyYW1ldGVyKG5hbWVkUGFyYW1ldGVyQiwgY29udGV4dCk7XG5cbiAgICAgICAgICAgICAgaWYgKG5hbWVkUGFyYW1ldGVyQk1hdGNoZXNOYW1lZFBhcmFtZXRlckEpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuXG4gICAgaWYgKCFuYW1lZFBhcmFtZXRlck1hdGNoZXMpIHtcbiAgICAgIGNvbnN0IG1lc3NhZ2UgPSBgVGhlICcke25hbWVkUGFyYW1ldGVyU3RyaW5nfScgbmFtZWRQYXJhbWV0ZXIgZG9lcyBub3QgbWF0Y2ggYW55IG9mIHRoZSAnJHtuYW1lZFBhcmFtZXRlcnNTdHJpbmd9JyBuYW1lZCBwYXJhbWV0ZXJzLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5tYXRjaGVkIHRoZSAnJHtuYW1lZFBhcmFtZXRlclN0cmluZ30nIG5hbWVkUGFyYW1ldGVyIGFnYWluc3QgdGhlICcke25hbWVkUGFyYW1ldGVyc1N0cmluZ30nIG5hbWVkIHBhcmFtZXRlcnMuYCk7XG4gIH1cblxuICBtYXRjaE5hbWVkUGFyYW1ldGVycyhuYW1lZFBhcmFtZXRlcnMsIGNvbnRleHQpIHtcbiAgICBuYW1lZFBhcmFtZXRlcnMuZm9yRWFjaE5hbWVkUGFyYW1ldGVyKChuYW1lZFBhcmFtZXRlcikgPT4ge1xuICAgICAgaWYgKG5hbWVkUGFyYW1ldGVyICE9PSBudWxsKSB7XG4gICAgICAgIHRoaXMubWF0Y2hOYW1lZFBhcmFtZXRlcihuYW1lZFBhcmFtZXRlciwgY29udGV4dCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiTmFtZWRQYXJhbWV0ZXJzXCI7XG5cbiAgc3RhdGljIGZyb21PYmplY3RBc3NpZ25tZW50Tm9kZShvYmplY3RBc3NpZ25tZW50Tm9kZSwgY29udGV4dCkge1xuICAgIGNvbnN0IG9iamVjdEFzc2lnbm1lbnROYW1lZFBhcmFtZXRlcnNOb2RlID0gb2JqZWN0QXNzaWdubWVudE5hbWVkUGFyYW1ldGVyc05vZGVRdWVyeShvYmplY3RBc3NpZ25tZW50Tm9kZSksXG4gICAgICAgICAgbmFtZWRQYXJhbWV0ZXJzTm9kZSA9IG9iamVjdEFzc2lnbm1lbnROYW1lZFBhcmFtZXRlcnNOb2RlLCAgLy8vXG4gICAgICAgICAgbmFtZWRQYXJhbWV0ZXJzID0gbmFtZWRQYXJhbWV0ZXJzRnJvbU5hbWVkUGFyYW1ldGVyc05vZGUobmFtZWRQYXJhbWV0ZXJzTm9kZSwgY29udGV4dCk7XG5cbiAgICByZXR1cm4gbmFtZWRQYXJhbWV0ZXJzO1xuICB9XG59KTtcblxuZnVuY3Rpb24gbmFtZWRQYXJhbWV0ZXJzRnJvbU5hbWVkUGFyYW1ldGVyc05vZGUobmFtZWRQYXJhbWV0ZXJzTm9kZSwgY29udGV4dCkge1xuICBjb25zdCB7IE5hbWVkUGFyYW1ldGVycyB9ID0gZG9tLFxuICAgICAgICBuYW1lZFBhcmFtZXRlck5vZGVzID0gbmFtZWRQYXJhbWV0ZXJOb2Rlc1F1ZXJ5KG5hbWVkUGFyYW1ldGVyc05vZGUpLFxuICAgICAgICBhcnJheSA9IGFycmF5RnJvbU5hbWVkUGFyYW1ldGVyTm9kZXMobmFtZWRQYXJhbWV0ZXJOb2RlcywgY29udGV4dCksXG4gICAgICAgIHN0cmluZyA9IHN0cmluZ0Zyb21BcnJheShhcnJheSwgY29udGV4dCksXG4gICAgICAgIG5hbWVkUGFyYW1ldGVycyA9IG5ldyBOYW1lZFBhcmFtZXRlcnMoc3RyaW5nLCBhcnJheSk7XG5cbiAgcmV0dXJuIG5hbWVkUGFyYW1ldGVycztcbn1cblxuZnVuY3Rpb24gYXJyYXlGcm9tTmFtZWRQYXJhbWV0ZXJOb2RlcyhuYW1lZFBhcmFtZXRlck5vZGVzLCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgTmFtZWRQYXJhbWV0ZXIgfSA9IGRvbSxcbiAgICAgICAgYXJyYXkgPSBuYW1lZFBhcmFtZXRlck5vZGVzLm1hcCgobmFtZWRQYXJhbWV0ZXJOb2RlKSA9PiB7IC8vL1xuICAgICAgICAgIGNvbnN0IG5hbWVkUGFyYW1ldGVyID0gTmFtZWRQYXJhbWV0ZXIuZnJvbU5hbWVkUGFyYW1ldGVyTm9kZShuYW1lZFBhcmFtZXRlck5vZGUsIGNvbnRleHQpO1xuXG4gICAgICAgICAgcmV0dXJuIG5hbWVkUGFyYW1ldGVyO1xuICAgICAgICB9KTtcblxuICByZXR1cm4gYXJyYXk7XG59XG5cbmZ1bmN0aW9uIHN0cmluZ0Zyb21BcnJheShhcnJheSwgY29udGV4dCkge1xuICBjb25zdCBuYW1lZFBhcmFtZXRlcnNTU3RyaW5nID0gYXJyYXkucmVkdWNlKChuYW1lZFBhcmFtZXRlcnNTU3RyaW5nLCBuYW1lZFBhcmFtZXRlcikgPT4ge1xuICAgICAgICAgIGNvbnN0IG5hbWVkUGFyYW1ldGVyU3RyaW5nID0gbmFtZWRQYXJhbWV0ZXIuZ2V0U3RyaW5nKCk7XG5cbiAgICAgICAgICBuYW1lZFBhcmFtZXRlcnNTU3RyaW5nID0gKG5hbWVkUGFyYW1ldGVyc1NTdHJpbmcgPT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lZFBhcmFtZXRlclN0cmluZyA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAke25hbWVkUGFyYW1ldGVyc1NTdHJpbmd9LCAke25hbWVkUGFyYW1ldGVyU3RyaW5nfWA7XG5cbiAgICAgICAgICByZXR1cm4gbmFtZWRQYXJhbWV0ZXJzU1N0cmluZztcbiAgICAgICAgfSwgbnVsbCksXG4gICAgICAgIHN0cmluZyA9IG5hbWVkUGFyYW1ldGVyc1NTdHJpbmc7ICAvLy9cblxuICByZXR1cm4gc3RyaW5nO1xufVxuIl0sIm5hbWVzIjpbIm5hbWVkUGFyYW1ldGVyTm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJvYmplY3RBc3NpZ25tZW50TmFtZWRQYXJhbWV0ZXJzTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwiZG9tQXNzaWduZWQiLCJOYW1lZFBhcmFtZXRlcnMiLCJzdHJpbmciLCJhcnJheSIsImdldFN0cmluZyIsImdldEFycmF5IiwiZ2V0TGVuZ3RoIiwibGVuZ3RoIiwiZ2V0TmFtZWRQYXJhbWV0ZXIiLCJpbmRleCIsIm5hbWVkUGFyYW1ldGVyIiwic29tZU5hbWVkUGFyYW1ldGVyIiwiY2FsbGJhY2siLCJzb21lIiwiZm9yRWFjaE5hbWVkUGFyYW1ldGVyIiwiZm9yRWFjaCIsIm1hdGNoVmFsdWVzIiwidmFsdWVzIiwiY29udGV4dCIsInZhbHVlc1N0cmluZyIsIm5hbWVkUGFyYW1ldGVyc1N0cmluZyIsInRyYWNlIiwidmFsdWVzTGVuZ3RoIiwibmFtZWRQYXJhbWV0ZXJzTGVuZ3RoIiwibWVzc2FnZSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwidmFsdWUiLCJnZXRWYWx1ZSIsIm1hdGNoVmFsdWUiLCJkZWJ1ZyIsIm1hdGNoTmFtZWRQYXJhbWV0ZXIiLCJuYW1lZFBhcmFtZXRlclN0cmluZyIsIm5hbWVkUGFyYW1ldGVyQSIsIm5hbWVkUGFyYW1ldGVyTWF0Y2hlcyIsIm5hbWVkUGFyYW1ldGVyQiIsIm5hbWVkUGFyYW1ldGVyQk1hdGNoZXNOYW1lZFBhcmFtZXRlckEiLCJtYXRjaE5hbWVkUGFyYW1ldGVycyIsIm5hbWVkUGFyYW1ldGVycyIsImZyb21PYmplY3RBc3NpZ25tZW50Tm9kZSIsIm9iamVjdEFzc2lnbm1lbnROb2RlIiwib2JqZWN0QXNzaWdubWVudE5hbWVkUGFyYW1ldGVyc05vZGUiLCJuYW1lZFBhcmFtZXRlcnNOb2RlIiwibmFtZWRQYXJhbWV0ZXJzRnJvbU5hbWVkUGFyYW1ldGVyc05vZGUiLCJuYW1lIiwiZG9tIiwibmFtZWRQYXJhbWV0ZXJOb2RlcyIsImFycmF5RnJvbU5hbWVkUGFyYW1ldGVyTm9kZXMiLCJzdHJpbmdGcm9tQXJyYXkiLCJOYW1lZFBhcmFtZXRlciIsIm1hcCIsIm5hbWVkUGFyYW1ldGVyTm9kZSIsImZyb21OYW1lZFBhcmFtZXRlck5vZGUiLCJuYW1lZFBhcmFtZXRlcnNT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
220
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kb20vcGFyYW1ldGVycy9uYW1lZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGRvbSBmcm9tIFwiLi4vLi4vZG9tXCI7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi8uLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgZG9tQXNzaWduZWQgfSBmcm9tIFwiLi4vLi4vZG9tXCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIG5vZGVzUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IG5hbWVkUGFyYW1ldGVyTm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvbmFtZWRQYXJhbWV0ZXJzL25hbWVkUGFyYW1ldGVyXCIpLFxuICAgICAgb2JqZWN0QXNzaWdubWVudE5hbWVkUGFyYW1ldGVyc05vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9vYmplY3RBc3NpZ25tZW50L25hbWVkUGFyYW1ldGVyc1wiKTtcblxuZXhwb3J0IGRlZmF1bHQgZG9tQXNzaWduZWQoY2xhc3MgTmFtZWRQYXJhbWV0ZXJzIHtcbiAgY29uc3RydWN0b3Ioc3RyaW5nLCBhcnJheSkge1xuICAgIHRoaXMuc3RyaW5nID0gc3RyaW5nO1xuICAgIHRoaXMuYXJyYXkgPSBhcnJheTtcbiAgfVxuXG4gIGdldFN0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy5zdHJpbmc7XG4gIH1cblxuICBnZXRBcnJheSgpIHtcbiAgICByZXR1cm4gdGhpcy5hcnJheTtcbiAgfVxuXG4gIGdldExlbmd0aCgpIHtcbiAgICBjb25zdCBsZW5ndGggPSB0aGlzLmFycmF5Lmxlbmd0aDtcblxuICAgIHJldHVybiBsZW5ndGg7XG4gIH1cblxuICBnZXROYW1lZFBhcmFtZXRlcihpbmRleCkge1xuICAgIGNvbnN0IG5hbWVkUGFyYW1ldGVyID0gdGhpcy5hcnJheVtpbmRleF0gfHwgbnVsbDtcblxuICAgIHJldHVybiBuYW1lZFBhcmFtZXRlcjtcbiAgfVxuXG4gIHNvbWVOYW1lZFBhcmFtZXRlcihjYWxsYmFjaykgeyByZXR1cm4gdGhpcy5hcnJheS5zb21lKGNhbGxiYWNrKTsgfVxuXG4gIGZvckVhY2hOYW1lZFBhcmFtZXRlcihjYWxsYmFjaykgeyB0aGlzLmFycmF5LmZvckVhY2goY2FsbGJhY2spOyB9XG5cbiAgbWF0Y2hFeHByZXNzaW9ucyhleHByZXNzaW9ucywgY29udGV4dCkge1xuICAgIGNvbnN0IGV4cHJlc3Npb25zU3RyaW5nID0gZXhwcmVzc2lvbnMuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgbmFtZWRQYXJhbWV0ZXJzU3RyaW5nID0gdGhpcy5zdHJpbmc7IC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgTWF0Y2hpbmcgdGhlICR7ZXhwcmVzc2lvbnNTdHJpbmd9IGV4cHJlc3Npb25zIGFnYWluc3QgdGhlICcke25hbWVkUGFyYW1ldGVyc1N0cmluZ30nIG5hbWVkIHBhcmFtZXRlcnMuLi5gKTtcblxuICAgIGNvbnN0IGV4cHJlc3Npb25zTGVuZ3RoID0gZXhwcmVzc2lvbnMuZ2V0TGVuZ3RoKCksXG4gICAgICAgICAgbmFtZWRQYXJhbWV0ZXJzTGVuZ3RoID0gdGhpcy5nZXRMZW5ndGgoKTtcblxuICAgIGlmIChleHByZXNzaW9uc0xlbmd0aCAhPT0gbmFtZWRQYXJhbWV0ZXJzTGVuZ3RoKSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYFRoZSAke2V4cHJlc3Npb25zU3RyaW5nfSBleHByZXNzaW9ucyBhbmQgJyR7bmFtZWRQYXJhbWV0ZXJzU3RyaW5nfScgbmFtZWQgcGFyYW1ldGVycyBhcmUgbm90IG9mIHRoZSBzYW1lIGxlbmd0aC5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgdGhpcy5mb3JFYWNoTmFtZWRQYXJhbWV0ZXIoKG5hbWVkUGFyYW1ldGVyLCBpbmRleCkgPT4ge1xuICAgICAgaWYgKG5hbWVkUGFyYW1ldGVyICE9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBleHByZXNzaW9ucy5nZXRFeHByZXNzaW9uKGluZGV4KTtcblxuICAgICAgICBuYW1lZFBhcmFtZXRlci5tYXRjaEV4cHJlc3Npb24oZXhwcmVzc2lvbiwgY29udGV4dCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5tYXRjaGVkIHRoZSAke2V4cHJlc3Npb25zU3RyaW5nfSBleHByZXNzaW9ucyBhZ2FpbnN0IHRoZSAnJHtuYW1lZFBhcmFtZXRlcnNTdHJpbmd9JyBuYW1lZCBwYXJhbWV0ZXJzLmApO1xuICB9XG5cbiAgbWF0Y2hOYW1lZFBhcmFtZXRlcihuYW1lZFBhcmFtZXRlciwgY29udGV4dCkge1xuICAgIGNvbnN0IG5hbWVkUGFyYW1ldGVyU3RyaW5nID0gbmFtZWRQYXJhbWV0ZXIuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgbmFtZWRQYXJhbWV0ZXJzU3RyaW5nID0gdGhpcy5zdHJpbmc7IC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgTWF0Y2hpbmcgdGhlICcke25hbWVkUGFyYW1ldGVyU3RyaW5nfScgbmFtZWRQYXJhbWV0ZXIgYWdhaW5zdCB0aGUgJyR7bmFtZWRQYXJhbWV0ZXJzU3RyaW5nfScgbmFtZWQgcGFyYW1ldGVycy4uLmApO1xuXG4gICAgY29uc3QgbmFtZWRQYXJhbWV0ZXJBID0gbmFtZWRQYXJhbWV0ZXIsIC8vL1xuICAgICAgICAgIG5hbWVkUGFyYW1ldGVyTWF0Y2hlcyA9IHRoaXMuc29tZU5hbWVkUGFyYW1ldGVyKChuYW1lZFBhcmFtZXRlcikgPT4ge1xuICAgICAgICAgICAgaWYgKG5hbWVkUGFyYW1ldGVyICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgIGNvbnN0IG5hbWVkUGFyYW1ldGVyQiA9IG5hbWVkUGFyYW1ldGVyLCAvLy9cbiAgICAgICAgICAgICAgICAgICAgbmFtZWRQYXJhbWV0ZXJCTWF0Y2hlc05hbWVkUGFyYW1ldGVyQSA9IG5hbWVkUGFyYW1ldGVyQS5tYXRjaE5hbWVkUGFyYW1ldGVyKG5hbWVkUGFyYW1ldGVyQiwgY29udGV4dCk7XG5cbiAgICAgICAgICAgICAgaWYgKG5hbWVkUGFyYW1ldGVyQk1hdGNoZXNOYW1lZFBhcmFtZXRlckEpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuXG4gICAgaWYgKCFuYW1lZFBhcmFtZXRlck1hdGNoZXMpIHtcbiAgICAgIGNvbnN0IG1lc3NhZ2UgPSBgVGhlICcke25hbWVkUGFyYW1ldGVyU3RyaW5nfScgbmFtZWRQYXJhbWV0ZXIgZG9lcyBub3QgbWF0Y2ggYW55IG9mIHRoZSAnJHtuYW1lZFBhcmFtZXRlcnNTdHJpbmd9JyBuYW1lZCBwYXJhbWV0ZXJzLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5tYXRjaGVkIHRoZSAnJHtuYW1lZFBhcmFtZXRlclN0cmluZ30nIG5hbWVkUGFyYW1ldGVyIGFnYWluc3QgdGhlICcke25hbWVkUGFyYW1ldGVyc1N0cmluZ30nIG5hbWVkIHBhcmFtZXRlcnMuYCk7XG4gIH1cblxuICBtYXRjaE5hbWVkUGFyYW1ldGVycyhuYW1lZFBhcmFtZXRlcnMsIGNvbnRleHQpIHtcbiAgICBuYW1lZFBhcmFtZXRlcnMuZm9yRWFjaE5hbWVkUGFyYW1ldGVyKChuYW1lZFBhcmFtZXRlcikgPT4ge1xuICAgICAgaWYgKG5hbWVkUGFyYW1ldGVyICE9PSBudWxsKSB7XG4gICAgICAgIHRoaXMubWF0Y2hOYW1lZFBhcmFtZXRlcihuYW1lZFBhcmFtZXRlciwgY29udGV4dCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiTmFtZWRQYXJhbWV0ZXJzXCI7XG5cbiAgc3RhdGljIGZyb21PYmplY3RBc3NpZ25tZW50Tm9kZShvYmplY3RBc3NpZ25tZW50Tm9kZSwgY29udGV4dCkge1xuICAgIGNvbnN0IG9iamVjdEFzc2lnbm1lbnROYW1lZFBhcmFtZXRlcnNOb2RlID0gb2JqZWN0QXNzaWdubWVudE5hbWVkUGFyYW1ldGVyc05vZGVRdWVyeShvYmplY3RBc3NpZ25tZW50Tm9kZSksXG4gICAgICAgICAgbmFtZWRQYXJhbWV0ZXJzTm9kZSA9IG9iamVjdEFzc2lnbm1lbnROYW1lZFBhcmFtZXRlcnNOb2RlLCAgLy8vXG4gICAgICAgICAgbmFtZWRQYXJhbWV0ZXJzID0gbmFtZWRQYXJhbWV0ZXJzRnJvbU5hbWVkUGFyYW1ldGVyc05vZGUobmFtZWRQYXJhbWV0ZXJzTm9kZSwgY29udGV4dCk7XG5cbiAgICByZXR1cm4gbmFtZWRQYXJhbWV0ZXJzO1xuICB9XG59KTtcblxuZnVuY3Rpb24gbmFtZWRQYXJhbWV0ZXJzRnJvbU5hbWVkUGFyYW1ldGVyc05vZGUobmFtZWRQYXJhbWV0ZXJzTm9kZSwgY29udGV4dCkge1xuICBjb25zdCB7IE5hbWVkUGFyYW1ldGVycyB9ID0gZG9tLFxuICAgICAgICBuYW1lZFBhcmFtZXRlck5vZGVzID0gbmFtZWRQYXJhbWV0ZXJOb2Rlc1F1ZXJ5KG5hbWVkUGFyYW1ldGVyc05vZGUpLFxuICAgICAgICBhcnJheSA9IGFycmF5RnJvbU5hbWVkUGFyYW1ldGVyTm9kZXMobmFtZWRQYXJhbWV0ZXJOb2RlcywgY29udGV4dCksXG4gICAgICAgIHN0cmluZyA9IHN0cmluZ0Zyb21BcnJheShhcnJheSwgY29udGV4dCksXG4gICAgICAgIG5hbWVkUGFyYW1ldGVycyA9IG5ldyBOYW1lZFBhcmFtZXRlcnMoc3RyaW5nLCBhcnJheSk7XG5cbiAgcmV0dXJuIG5hbWVkUGFyYW1ldGVycztcbn1cblxuZnVuY3Rpb24gYXJyYXlGcm9tTmFtZWRQYXJhbWV0ZXJOb2RlcyhuYW1lZFBhcmFtZXRlck5vZGVzLCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgTmFtZWRQYXJhbWV0ZXIgfSA9IGRvbSxcbiAgICAgICAgYXJyYXkgPSBuYW1lZFBhcmFtZXRlck5vZGVzLm1hcCgobmFtZWRQYXJhbWV0ZXJOb2RlKSA9PiB7IC8vL1xuICAgICAgICAgIGNvbnN0IG5hbWVkUGFyYW1ldGVyID0gTmFtZWRQYXJhbWV0ZXIuZnJvbU5hbWVkUGFyYW1ldGVyTm9kZShuYW1lZFBhcmFtZXRlck5vZGUsIGNvbnRleHQpO1xuXG4gICAgICAgICAgcmV0dXJuIG5hbWVkUGFyYW1ldGVyO1xuICAgICAgICB9KTtcblxuICByZXR1cm4gYXJyYXk7XG59XG5cbmZ1bmN0aW9uIHN0cmluZ0Zyb21BcnJheShhcnJheSwgY29udGV4dCkge1xuICBjb25zdCBuYW1lZFBhcmFtZXRlcnNTU3RyaW5nID0gYXJyYXkucmVkdWNlKChuYW1lZFBhcmFtZXRlcnNTU3RyaW5nLCBuYW1lZFBhcmFtZXRlcikgPT4ge1xuICAgICAgICAgIGNvbnN0IG5hbWVkUGFyYW1ldGVyU3RyaW5nID0gbmFtZWRQYXJhbWV0ZXIuZ2V0U3RyaW5nKCk7XG5cbiAgICAgICAgICBuYW1lZFBhcmFtZXRlcnNTU3RyaW5nID0gKG5hbWVkUGFyYW1ldGVyc1NTdHJpbmcgPT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lZFBhcmFtZXRlclN0cmluZyA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAke25hbWVkUGFyYW1ldGVyc1NTdHJpbmd9LCAke25hbWVkUGFyYW1ldGVyU3RyaW5nfWA7XG5cbiAgICAgICAgICByZXR1cm4gbmFtZWRQYXJhbWV0ZXJzU1N0cmluZztcbiAgICAgICAgfSwgbnVsbCksXG4gICAgICAgIHN0cmluZyA9IG5hbWVkUGFyYW1ldGVyc1NTdHJpbmc7ICAvLy9cblxuICByZXR1cm4gc3RyaW5nO1xufVxuIl0sIm5hbWVzIjpbIm5hbWVkUGFyYW1ldGVyTm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJvYmplY3RBc3NpZ25tZW50TmFtZWRQYXJhbWV0ZXJzTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwiZG9tQXNzaWduZWQiLCJOYW1lZFBhcmFtZXRlcnMiLCJzdHJpbmciLCJhcnJheSIsImdldFN0cmluZyIsImdldEFycmF5IiwiZ2V0TGVuZ3RoIiwibGVuZ3RoIiwiZ2V0TmFtZWRQYXJhbWV0ZXIiLCJpbmRleCIsIm5hbWVkUGFyYW1ldGVyIiwic29tZU5hbWVkUGFyYW1ldGVyIiwiY2FsbGJhY2siLCJzb21lIiwiZm9yRWFjaE5hbWVkUGFyYW1ldGVyIiwiZm9yRWFjaCIsIm1hdGNoRXhwcmVzc2lvbnMiLCJleHByZXNzaW9ucyIsImNvbnRleHQiLCJleHByZXNzaW9uc1N0cmluZyIsIm5hbWVkUGFyYW1ldGVyc1N0cmluZyIsInRyYWNlIiwiZXhwcmVzc2lvbnNMZW5ndGgiLCJuYW1lZFBhcmFtZXRlcnNMZW5ndGgiLCJtZXNzYWdlIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJleHByZXNzaW9uIiwiZ2V0RXhwcmVzc2lvbiIsIm1hdGNoRXhwcmVzc2lvbiIsImRlYnVnIiwibWF0Y2hOYW1lZFBhcmFtZXRlciIsIm5hbWVkUGFyYW1ldGVyU3RyaW5nIiwibmFtZWRQYXJhbWV0ZXJBIiwibmFtZWRQYXJhbWV0ZXJNYXRjaGVzIiwibmFtZWRQYXJhbWV0ZXJCIiwibmFtZWRQYXJhbWV0ZXJCTWF0Y2hlc05hbWVkUGFyYW1ldGVyQSIsIm1hdGNoTmFtZWRQYXJhbWV0ZXJzIiwibmFtZWRQYXJhbWV0ZXJzIiwiZnJvbU9iamVjdEFzc2lnbm1lbnROb2RlIiwib2JqZWN0QXNzaWdubWVudE5vZGUiLCJvYmplY3RBc3NpZ25tZW50TmFtZWRQYXJhbWV0ZXJzTm9kZSIsIm5hbWVkUGFyYW1ldGVyc05vZGUiLCJuYW1lZFBhcmFtZXRlcnNGcm9tTmFtZWRQYXJhbWV0ZXJzTm9kZSIsIm5hbWUiLCJkb20iLCJuYW1lZFBhcmFtZXRlck5vZGVzIiwiYXJyYXlGcm9tTmFtZWRQYXJhbWV0ZXJOb2RlcyIsInN0cmluZ0Zyb21BcnJheSIsIk5hbWVkUGFyYW1ldGVyIiwibWFwIiwibmFtZWRQYXJhbWV0ZXJOb2RlIiwiZnJvbU5hbWVkUGFyYW1ldGVyTm9kZSIsIm5hbWVkUGFyYW1ldGVyc1NTdHJpbmciLCJyZWR1Y2UiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVdBOzs7ZUFBQTs7OzJEQVRnQjtnRUFDTTtxQkFHZ0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXRDLElBQU1BLDJCQUEyQkMsSUFBQUEsaUJBQVUsRUFBQyxvQ0FDdENDLDJDQUEyQ0MsSUFBQUEsZ0JBQVMsRUFBQztJQUUzRCxXQUFlQyxJQUFBQSxnQkFBVyxvQ0FBQzthQUFNQyxnQkFDbkJDLE1BQU0sRUFBRUMsS0FBSztnQ0FETUY7UUFFN0IsSUFBSSxDQUFDQyxNQUFNLEdBQUdBO1FBQ2QsSUFBSSxDQUFDQyxLQUFLLEdBQUdBOzs7O1lBR2ZDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0YsTUFBTTtZQUNwQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0YsS0FBSztZQUNuQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxTQUFTLElBQUksQ0FBQ0osS0FBSyxDQUFDSSxNQUFNO2dCQUVoQyxPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLGtCQUFrQkMsS0FBSztnQkFDckIsSUFBTUMsaUJBQWlCLElBQUksQ0FBQ1AsS0FBSyxDQUFDTSxNQUFNLElBQUk7Z0JBRTVDLE9BQU9DO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsbUJBQW1CQyxRQUFRO2dCQUFJLE9BQU8sSUFBSSxDQUFDVCxLQUFLLENBQUNVLElBQUksQ0FBQ0Q7WUFBVzs7O1lBRWpFRSxLQUFBQTttQkFBQUEs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
@@ -132,22 +132,22 @@ var _default = (0, _dom.domAssigned)((_Parameters = /*#__PURE__*/ function() {
132
132
  }
133
133
  },
134
134
  {
135
- key: "matchValues",
136
- value: function matchValues(values, context) {
137
- var valuesString = values.getString(), parametersString = this.string; ///
138
- context.trace("Matching the ".concat(valuesString, " values against the '").concat(parametersString, "' parameters..."));
139
- var valuesLength = values.getLength(), parametersLength = this.getLength();
140
- if (valuesLength !== parametersLength) {
141
- var message = "The ".concat(valuesString, " values and '").concat(parametersString, "' parameters are not of the same length."), exception = _exception.default.fromMessage(message);
135
+ key: "matchExpressions",
136
+ value: function matchExpressions(expressions, context) {
137
+ var expressionsString = expressions.getString(), parametersString = this.string; ///
138
+ context.trace("Matching the ".concat(expressionsString, " expressions against the '").concat(parametersString, "' parameters..."));
139
+ var expressionsLength = expressions.getLength(), parametersLength = this.getLength();
140
+ if (expressionsLength !== parametersLength) {
141
+ var message = "The ".concat(expressionsString, " expressions and '").concat(parametersString, "' parameters are not of the same length."), exception = _exception.default.fromMessage(message);
142
142
  throw exception;
143
143
  }
144
144
  this.forEachParameter(function(parameter, index) {
145
145
  if (parameter !== null) {
146
- var value = values.getValue(index);
147
- parameter.matchValue(value, context);
146
+ var expression = expressions.getExpression(index);
147
+ parameter.matchExpression(expression, context);
148
148
  }
149
149
  });
150
- context.debug("...matched the ".concat(valuesString, " values against the '").concat(parametersString, "' parameters."));
150
+ context.debug("...matched the ".concat(expressionsString, " expressions against the '").concat(parametersString, "' parameters."));
151
151
  }
152
152
  }
153
153
  ], [
@@ -195,4 +195,4 @@ function stringFromArray(array, context) {
195
195
  return string;
196
196
  }
197
197
 
198
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kb20vcGFyYW1ldGVycy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGRvbSBmcm9tIFwiLi4vZG9tXCI7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgVU5ERVJTQ09SRSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IGRvbUFzc2lnbmVkIH0gZnJvbSBcIi4uL2RvbVwiO1xuaW1wb3J0IHsgbm9kZVF1ZXJ5LCBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBwYXJhbWV0ZXJOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9wYXJhbWV0ZXJzL3BhcmFtZXRlclwiKSxcbiAgICAgIGFycmF5QXNzaWdubWVudFBhcmFtZXRlcnNOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvYXJyYXlBc3NpZ25tZW50L3BhcmFtZXRlcnNcIiksXG4gICAgICBhbm9ueW1vdXNQcm9jZWR1cmVQYXJhbWV0ZXJzTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2Fub255bW91c1Byb2NlZHVyZS9wYXJhbWV0ZXJzXCIpLFxuICAgICAgcHJvY2VkdXJlRGVjbGFyYXRpb25QYXJhbWV0ZXJzTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Byb2NlZHVyZURlY2xhcmF0aW9uL3BhcmFtZXRlcnNcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGRvbUFzc2lnbmVkKGNsYXNzIFBhcmFtZXRlcnMge1xuICBjb25zdHJ1Y3RvcihzdHJpbmcsIGFycmF5KSB7XG4gICAgdGhpcy5zdHJpbmcgPSBzdHJpbmc7XG4gICAgdGhpcy5hcnJheSA9IGFycmF5O1xuICB9XG5cbiAgZ2V0U3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnN0cmluZztcbiAgfVxuXG4gIGdldEFycmF5KCkge1xuICAgIHJldHVybiB0aGlzLmFycmF5O1xuICB9XG5cbiAgZ2V0TGVuZ3RoKCkge1xuICAgIGNvbnN0IGxlbmd0aCA9IHRoaXMuYXJyYXkubGVuZ3RoO1xuXG4gICAgcmV0dXJuIGxlbmd0aDtcbiAgfVxuXG4gIGdldFBhcmFtZXRlcihpbmRleCkge1xuICAgIGNvbnN0IHBhcmFtZXRlciA9IHRoaXMuYXJyYXlbaW5kZXhdIHx8IG51bGw7XG5cbiAgICByZXR1cm4gcGFyYW1ldGVyO1xuICB9XG5cbiAgZm9yRWFjaFBhcmFtZXRlcihjYWxsYmFjaykgeyB0aGlzLmFycmF5LmZvckVhY2goY2FsbGJhY2spOyB9XG5cbiAgbWF0Y2hWYWx1ZXModmFsdWVzLCBjb250ZXh0KSB7XG4gICAgY29uc3QgdmFsdWVzU3RyaW5nID0gdmFsdWVzLmdldFN0cmluZygpLFxuICAgICAgICAgIHBhcmFtZXRlcnNTdHJpbmcgPSB0aGlzLnN0cmluZzsgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBNYXRjaGluZyB0aGUgJHt2YWx1ZXNTdHJpbmd9IHZhbHVlcyBhZ2FpbnN0IHRoZSAnJHtwYXJhbWV0ZXJzU3RyaW5nfScgcGFyYW1ldGVycy4uLmApO1xuXG4gICAgY29uc3QgdmFsdWVzTGVuZ3RoID0gdmFsdWVzLmdldExlbmd0aCgpLFxuICAgICAgICAgIHBhcmFtZXRlcnNMZW5ndGggPSB0aGlzLmdldExlbmd0aCgpO1xuXG4gICAgaWYgKHZhbHVlc0xlbmd0aCAhPT0gcGFyYW1ldGVyc0xlbmd0aCkge1xuICAgICAgY29uc3QgbWVzc2FnZSA9IGBUaGUgJHt2YWx1ZXNTdHJpbmd9IHZhbHVlcyBhbmQgJyR7cGFyYW1ldGVyc1N0cmluZ30nIHBhcmFtZXRlcnMgYXJlIG5vdCBvZiB0aGUgc2FtZSBsZW5ndGguYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgdGhyb3cgZXhjZXB0aW9uO1xuICAgIH1cblxuICAgIHRoaXMuZm9yRWFjaFBhcmFtZXRlcigocGFyYW1ldGVyLCBpbmRleCkgPT4ge1xuICAgICAgaWYgKHBhcmFtZXRlciAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHZhbHVlcy5nZXRWYWx1ZShpbmRleCk7XG5cbiAgICAgICAgcGFyYW1ldGVyLm1hdGNoVmFsdWUodmFsdWUsIGNvbnRleHQpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgY29udGV4dC5kZWJ1ZyhgLi4ubWF0Y2hlZCB0aGUgJHt2YWx1ZXNTdHJpbmd9IHZhbHVlcyBhZ2FpbnN0IHRoZSAnJHtwYXJhbWV0ZXJzU3RyaW5nfScgcGFyYW1ldGVycy5gKTtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJQYXJhbWV0ZXJzXCI7XG5cbiAgc3RhdGljIGZyb21BcnJheUFzc2lnbm1lbnROb2RlKGFycmF5QXNzaWdubWVudE5vZGUsIGNvbnRleHQpIHtcbiAgICBjb25zdCBhcnJheUFzc2lnbm1lbnRQYXJhbWV0ZXJzTm9kZSA9IGFycmF5QXNzaWdubWVudFBhcmFtZXRlcnNOb2RlUXVlcnkoYXJyYXlBc3NpZ25tZW50Tm9kZSksXG4gICAgICAgICAgcGFyYW1ldGVyc05vZGUgPSBhcnJheUFzc2lnbm1lbnRQYXJhbWV0ZXJzTm9kZSwgIC8vL1xuICAgICAgICAgIHBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzRnJvbVBhcmFtZXRlcnNOb2RlKHBhcmFtZXRlcnNOb2RlLCBjb250ZXh0KTtcblxuICAgIHJldHVybiBwYXJhbWV0ZXJzO1xuICB9XG5cbiAgc3RhdGljIGZyb21Bbm9ueW1vdXNQcm9jZWR1cmVOb2RlKGFub255bW91c1Byb2NlZHVyZU5vZGUsIGNvbnRleHQpIHtcbiAgICBjb25zdCBhbm9ueW1vdXNQcm9jZWR1cmVQYXJhbWV0ZXJzTm9kZSA9IGFub255bW91c1Byb2NlZHVyZVBhcmFtZXRlcnNOb2RlUXVlcnkoYW5vbnltb3VzUHJvY2VkdXJlTm9kZSksXG4gICAgICAgICAgcGFyYW1ldGVyc05vZGUgPSBhbm9ueW1vdXNQcm9jZWR1cmVQYXJhbWV0ZXJzTm9kZSwgIC8vL1xuICAgICAgICAgIHBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzRnJvbVBhcmFtZXRlcnNOb2RlKHBhcmFtZXRlcnNOb2RlLCBjb250ZXh0KTtcblxuICAgIHJldHVybiBwYXJhbWV0ZXJzO1xuICB9XG5cbiAgc3RhdGljIGZyb21Qcm9jZWR1cmVEZWNsYXJhdGlvbk5vZGUocHJvY2VkdXJlRGVjbGFyYXRpb25Ob2RlLCBjb250ZXh0KSB7XG4gICAgY29uc3QgcHJvY2VkdXJlRGVjbGFyYXRpb25QYXJhbWV0ZXJzTm9kZSA9IHByb2NlZHVyZURlY2xhcmF0aW9uUGFyYW1ldGVyc05vZGVRdWVyeShwcm9jZWR1cmVEZWNsYXJhdGlvbk5vZGUpLFxuICAgICAgICAgIHBhcmFtZXRlcnNOb2RlID0gcHJvY2VkdXJlRGVjbGFyYXRpb25QYXJhbWV0ZXJzTm9kZSwgIC8vL1xuICAgICAgICAgIHBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzRnJvbVBhcmFtZXRlcnNOb2RlKHBhcmFtZXRlcnNOb2RlLCBjb250ZXh0KTtcblxuICAgIHJldHVybiBwYXJhbWV0ZXJzO1xuICB9XG59KTtcblxuZnVuY3Rpb24gcGFyYW1ldGVyc0Zyb21QYXJhbWV0ZXJzTm9kZShwYXJhbWV0ZXJzTm9kZSwgY29udGV4dCkge1xuICBjb25zdCB7IFBhcmFtZXRlcnMgfSA9IGRvbSxcbiAgICAgICAgYXJyYXkgPSBhcnJheUZyb21QYXJhbWV0ZXJzTm9kZShwYXJhbWV0ZXJzTm9kZSwgY29udGV4dCksXG4gICAgICAgIHN0cmluZyA9IHN0cmluZ0Zyb21BcnJheShhcnJheSwgY29udGV4dCksXG4gICAgICAgIHBhcmFtZXRlcnMgPSBuZXcgUGFyYW1ldGVycyhzdHJpbmcsIGFycmF5KTtcblxuICByZXR1cm4gcGFyYW1ldGVycztcbn1cblxuZnVuY3Rpb24gYXJyYXlGcm9tUGFyYW1ldGVyc05vZGUocGFyYW1ldGVyc05vZGUsIGNvbnRleHQpIHtcbiAgY29uc3QgcGFyYW1ldGVyTm9kZXMgPSBwYXJhbWV0ZXJOb2Rlc1F1ZXJ5KHBhcmFtZXRlcnNOb2RlKSxcbiAgICAgICAgYXJyYXkgPSBwYXJhbWV0ZXJOb2Rlcy5tYXAoKHBhcmFtZXRlck5vZGUpID0+IHsgLy8vXG4gICAgICAgICAgY29uc3QgeyBQYXJhbWV0ZXIgfSA9IGRvbSxcbiAgICAgICAgICAgICAgICBwYXJhbWV0ZXIgPSBQYXJhbWV0ZXIuZnJvbVBhcmFtZXRlck5vZGUocGFyYW1ldGVyTm9kZSwgY29udGV4dCk7XG5cbiAgICAgICAgICByZXR1cm4gcGFyYW1ldGVyO1xuICAgICAgICB9KTtcblxuICByZXR1cm4gYXJyYXk7XG59XG5cbmZ1bmN0aW9uIHN0cmluZ0Zyb21BcnJheShhcnJheSwgY29udGV4dCkge1xuICBjb25zdCBwYXJhbWV0ZXJzU3RyaW5nID0gYXJyYXkucmVkdWNlKChwYXJhbWV0ZXJzU3RyaW5nLCBwYXJhbWV0ZXIpID0+IHtcbiAgICAgICAgICBjb25zdCBwYXJhbWV0ZXJTdHJpbmcgPSAocGFyYW1ldGVyICE9PSBudWxsKT9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlci5nZXRTdHJpbmcoKSA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVOREVSU0NPUkU7XG5cbiAgICAgICAgICBwYXJhbWV0ZXJzU3RyaW5nID0gKHBhcmFtZXRlcnNTdHJpbmcgPT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbWV0ZXJTdHJpbmcgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgJHtwYXJhbWV0ZXJzU3RyaW5nfSwgJHtwYXJhbWV0ZXJTdHJpbmd9YDtcblxuICAgICAgICAgIHJldHVybiBwYXJhbWV0ZXJzU3RyaW5nO1xuICAgICAgICB9LCBudWxsKSxcbiAgICAgICAgc3RyaW5nID0gcGFyYW1ldGVyc1N0cmluZzsgIC8vL1xuXG4gIHJldHVybiBzdHJpbmc7XG59XG4iXSwibmFtZXMiOlsicGFyYW1ldGVyTm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJhcnJheUFzc2lnbm1lbnRQYXJhbWV0ZXJzTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwiYW5vbnltb3VzUHJvY2VkdXJlUGFyYW1ldGVyc05vZGVRdWVyeSIsInByb2NlZHVyZURlY2xhcmF0aW9uUGFyYW1ldGVyc05vZGVRdWVyeSIsImRvbUFzc2lnbmVkIiwiUGFyYW1ldGVycyIsInN0cmluZyIsImFycmF5IiwiZ2V0U3RyaW5nIiwiZ2V0QXJyYXkiLCJnZXRMZW5ndGgiLCJsZW5ndGgiLCJnZXRQYXJhbWV0ZXIiLCJpbmRleCIsInBhcmFtZXRlciIsImZvckVhY2hQYXJhbWV0ZXIiLCJjYWxsYmFjayIsImZvckVhY2giLCJtYXRjaFZhbHVlcyIsInZhbHVlcyIsImNvbnRleHQiLCJ2YWx1ZXNTdHJpbmciLCJwYXJhbWV0ZXJzU3RyaW5nIiwidHJhY2UiLCJ2YWx1ZXNMZW5ndGgiLCJwYXJhbWV0ZXJzTGVuZ3RoIiwibWVzc2FnZSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwidmFsdWUiLCJnZXRWYWx1ZSIsIm1hdGNoVmFsdWUiLCJkZWJ1ZyIsImZyb21BcnJheUFzc2lnbm1lbnROb2RlIiwiYXJyYXlBc3NpZ25tZW50Tm9kZSIsImFycmF5QXNzaWdubWVudFBhcmFtZXRlcnNOb2RlIiwicGFyYW1ldGVyc05vZGUiLCJwYXJhbWV0ZXJzIiwicGFyYW1ldGVyc0Zyb21QYXJhbWV0ZXJzTm9kZSIsImZyb21Bbm9ueW1vdXNQcm9jZWR1cmVOb2RlIiwiYW5vbnltb3VzUHJvY2VkdXJlTm9kZSIsImFub255bW91c1Byb2NlZHVyZVBhcmFtZXRlcnNOb2RlIiwiZnJvbVByb2NlZHVyZURlY2xhcmF0aW9uTm9kZSIsInByb2NlZHVyZURlY2xhcmF0aW9uTm9kZSIsInByb2NlZHVyZURlY2xhcmF0aW9uUGFyYW1ldGVyc05vZGUiLCJuYW1lIiwiZG9tIiwiYXJyYXlGcm9tUGFyYW1ldGVyc05vZGUiLCJzdHJpbmdGcm9tQXJyYXkiLCJwYXJhbWV0ZXJOb2RlcyIsIm1hcCIsInBhcmFtZXRlck5vZGUiLCJQYXJhbWV0ZXIiLCJmcm9tUGFyYW1ldGVyTm9kZSIsInJlZHVjZSIsInBhcmFtZXRlclN0cmluZyIsIlVOREVSU0NPUkUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWNBOzs7ZUFBQTs7OzJEQVpnQjtnRUFDTTt5QkFFSztxQkFFVzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFdEMsSUFBTUEsc0JBQXNCQyxJQUFBQSxpQkFBVSxFQUFDLDBCQUNqQ0MscUNBQXFDQyxJQUFBQSxnQkFBUyxFQUFDLGdDQUMvQ0Msd0NBQXdDRCxJQUFBQSxnQkFBUyxFQUFDLG1DQUNsREUsMENBQTBDRixJQUFBQSxnQkFBUyxFQUFDO0lBRTFELFdBQWVHLElBQUFBLGdCQUFXLCtCQUFDO2FBQU1DLFdBQ25CQyxNQUFNLEVBQUVDLEtBQUs7Z0NBRE1GO1FBRTdCLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtRQUNkLElBQUksQ0FBQ0MsS0FBSyxHQUFHQTs7OztZQUdmQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLE1BQU07WUFDcEI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLEtBQUs7WUFDbkI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsU0FBUyxJQUFJLENBQUNKLEtBQUssQ0FBQ0ksTUFBTTtnQkFFaEMsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxhQUFhQyxLQUFLO2dCQUNoQixJQUFNQyxZQUFZLElBQUksQ0FBQ1AsS0FBSyxDQUFDTSxNQUFNLElBQUk7Z0JBRXZDLE9BQU9DO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsaUJBQWlCQyxRQUFRO2dCQUFJLElBQUksQ0FBQ1QsS0FBSyxDQUFDVSxPQUFPLENBQUNEO1lBQVc7OztZQUUzREUsS0FBQUE7bUJBQUFBLFNBQUFB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
198
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kb20vcGFyYW1ldGVycy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGRvbSBmcm9tIFwiLi4vZG9tXCI7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgVU5ERVJTQ09SRSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IGRvbUFzc2lnbmVkIH0gZnJvbSBcIi4uL2RvbVwiO1xuaW1wb3J0IHsgbm9kZVF1ZXJ5LCBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBwYXJhbWV0ZXJOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9wYXJhbWV0ZXJzL3BhcmFtZXRlclwiKSxcbiAgICAgIGFycmF5QXNzaWdubWVudFBhcmFtZXRlcnNOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvYXJyYXlBc3NpZ25tZW50L3BhcmFtZXRlcnNcIiksXG4gICAgICBhbm9ueW1vdXNQcm9jZWR1cmVQYXJhbWV0ZXJzTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2Fub255bW91c1Byb2NlZHVyZS9wYXJhbWV0ZXJzXCIpLFxuICAgICAgcHJvY2VkdXJlRGVjbGFyYXRpb25QYXJhbWV0ZXJzTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Byb2NlZHVyZURlY2xhcmF0aW9uL3BhcmFtZXRlcnNcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGRvbUFzc2lnbmVkKGNsYXNzIFBhcmFtZXRlcnMge1xuICBjb25zdHJ1Y3RvcihzdHJpbmcsIGFycmF5KSB7XG4gICAgdGhpcy5zdHJpbmcgPSBzdHJpbmc7XG4gICAgdGhpcy5hcnJheSA9IGFycmF5O1xuICB9XG5cbiAgZ2V0U3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnN0cmluZztcbiAgfVxuXG4gIGdldEFycmF5KCkge1xuICAgIHJldHVybiB0aGlzLmFycmF5O1xuICB9XG5cbiAgZ2V0TGVuZ3RoKCkge1xuICAgIGNvbnN0IGxlbmd0aCA9IHRoaXMuYXJyYXkubGVuZ3RoO1xuXG4gICAgcmV0dXJuIGxlbmd0aDtcbiAgfVxuXG4gIGdldFBhcmFtZXRlcihpbmRleCkge1xuICAgIGNvbnN0IHBhcmFtZXRlciA9IHRoaXMuYXJyYXlbaW5kZXhdIHx8IG51bGw7XG5cbiAgICByZXR1cm4gcGFyYW1ldGVyO1xuICB9XG5cbiAgZm9yRWFjaFBhcmFtZXRlcihjYWxsYmFjaykgeyB0aGlzLmFycmF5LmZvckVhY2goY2FsbGJhY2spOyB9XG5cbiAgbWF0Y2hFeHByZXNzaW9ucyhleHByZXNzaW9ucywgY29udGV4dCkge1xuICAgIGNvbnN0IGV4cHJlc3Npb25zU3RyaW5nID0gZXhwcmVzc2lvbnMuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgcGFyYW1ldGVyc1N0cmluZyA9IHRoaXMuc3RyaW5nOyAvLy9cblxuICAgIGNvbnRleHQudHJhY2UoYE1hdGNoaW5nIHRoZSAke2V4cHJlc3Npb25zU3RyaW5nfSBleHByZXNzaW9ucyBhZ2FpbnN0IHRoZSAnJHtwYXJhbWV0ZXJzU3RyaW5nfScgcGFyYW1ldGVycy4uLmApO1xuXG4gICAgY29uc3QgZXhwcmVzc2lvbnNMZW5ndGggPSBleHByZXNzaW9ucy5nZXRMZW5ndGgoKSxcbiAgICAgICAgICBwYXJhbWV0ZXJzTGVuZ3RoID0gdGhpcy5nZXRMZW5ndGgoKTtcblxuICAgIGlmIChleHByZXNzaW9uc0xlbmd0aCAhPT0gcGFyYW1ldGVyc0xlbmd0aCkge1xuICAgICAgY29uc3QgbWVzc2FnZSA9IGBUaGUgJHtleHByZXNzaW9uc1N0cmluZ30gZXhwcmVzc2lvbnMgYW5kICcke3BhcmFtZXRlcnNTdHJpbmd9JyBwYXJhbWV0ZXJzIGFyZSBub3Qgb2YgdGhlIHNhbWUgbGVuZ3RoLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICB0aGlzLmZvckVhY2hQYXJhbWV0ZXIoKHBhcmFtZXRlciwgaW5kZXgpID0+IHtcbiAgICAgIGlmIChwYXJhbWV0ZXIgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgZXhwcmVzc2lvbiA9IGV4cHJlc3Npb25zLmdldEV4cHJlc3Npb24oaW5kZXgpO1xuXG4gICAgICAgIHBhcmFtZXRlci5tYXRjaEV4cHJlc3Npb24oZXhwcmVzc2lvbiwgY29udGV4dCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5tYXRjaGVkIHRoZSAke2V4cHJlc3Npb25zU3RyaW5nfSBleHByZXNzaW9ucyBhZ2FpbnN0IHRoZSAnJHtwYXJhbWV0ZXJzU3RyaW5nfScgcGFyYW1ldGVycy5gKTtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJQYXJhbWV0ZXJzXCI7XG5cbiAgc3RhdGljIGZyb21BcnJheUFzc2lnbm1lbnROb2RlKGFycmF5QXNzaWdubWVudE5vZGUsIGNvbnRleHQpIHtcbiAgICBjb25zdCBhcnJheUFzc2lnbm1lbnRQYXJhbWV0ZXJzTm9kZSA9IGFycmF5QXNzaWdubWVudFBhcmFtZXRlcnNOb2RlUXVlcnkoYXJyYXlBc3NpZ25tZW50Tm9kZSksXG4gICAgICAgICAgcGFyYW1ldGVyc05vZGUgPSBhcnJheUFzc2lnbm1lbnRQYXJhbWV0ZXJzTm9kZSwgIC8vL1xuICAgICAgICAgIHBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzRnJvbVBhcmFtZXRlcnNOb2RlKHBhcmFtZXRlcnNOb2RlLCBjb250ZXh0KTtcblxuICAgIHJldHVybiBwYXJhbWV0ZXJzO1xuICB9XG5cbiAgc3RhdGljIGZyb21Bbm9ueW1vdXNQcm9jZWR1cmVOb2RlKGFub255bW91c1Byb2NlZHVyZU5vZGUsIGNvbnRleHQpIHtcbiAgICBjb25zdCBhbm9ueW1vdXNQcm9jZWR1cmVQYXJhbWV0ZXJzTm9kZSA9IGFub255bW91c1Byb2NlZHVyZVBhcmFtZXRlcnNOb2RlUXVlcnkoYW5vbnltb3VzUHJvY2VkdXJlTm9kZSksXG4gICAgICAgICAgcGFyYW1ldGVyc05vZGUgPSBhbm9ueW1vdXNQcm9jZWR1cmVQYXJhbWV0ZXJzTm9kZSwgIC8vL1xuICAgICAgICAgIHBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzRnJvbVBhcmFtZXRlcnNOb2RlKHBhcmFtZXRlcnNOb2RlLCBjb250ZXh0KTtcblxuICAgIHJldHVybiBwYXJhbWV0ZXJzO1xuICB9XG5cbiAgc3RhdGljIGZyb21Qcm9jZWR1cmVEZWNsYXJhdGlvbk5vZGUocHJvY2VkdXJlRGVjbGFyYXRpb25Ob2RlLCBjb250ZXh0KSB7XG4gICAgY29uc3QgcHJvY2VkdXJlRGVjbGFyYXRpb25QYXJhbWV0ZXJzTm9kZSA9IHByb2NlZHVyZURlY2xhcmF0aW9uUGFyYW1ldGVyc05vZGVRdWVyeShwcm9jZWR1cmVEZWNsYXJhdGlvbk5vZGUpLFxuICAgICAgICAgIHBhcmFtZXRlcnNOb2RlID0gcHJvY2VkdXJlRGVjbGFyYXRpb25QYXJhbWV0ZXJzTm9kZSwgIC8vL1xuICAgICAgICAgIHBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzRnJvbVBhcmFtZXRlcnNOb2RlKHBhcmFtZXRlcnNOb2RlLCBjb250ZXh0KTtcblxuICAgIHJldHVybiBwYXJhbWV0ZXJzO1xuICB9XG59KTtcblxuZnVuY3Rpb24gcGFyYW1ldGVyc0Zyb21QYXJhbWV0ZXJzTm9kZShwYXJhbWV0ZXJzTm9kZSwgY29udGV4dCkge1xuICBjb25zdCB7IFBhcmFtZXRlcnMgfSA9IGRvbSxcbiAgICAgICAgYXJyYXkgPSBhcnJheUZyb21QYXJhbWV0ZXJzTm9kZShwYXJhbWV0ZXJzTm9kZSwgY29udGV4dCksXG4gICAgICAgIHN0cmluZyA9IHN0cmluZ0Zyb21BcnJheShhcnJheSwgY29udGV4dCksXG4gICAgICAgIHBhcmFtZXRlcnMgPSBuZXcgUGFyYW1ldGVycyhzdHJpbmcsIGFycmF5KTtcblxuICByZXR1cm4gcGFyYW1ldGVycztcbn1cblxuZnVuY3Rpb24gYXJyYXlGcm9tUGFyYW1ldGVyc05vZGUocGFyYW1ldGVyc05vZGUsIGNvbnRleHQpIHtcbiAgY29uc3QgcGFyYW1ldGVyTm9kZXMgPSBwYXJhbWV0ZXJOb2Rlc1F1ZXJ5KHBhcmFtZXRlcnNOb2RlKSxcbiAgICAgICAgYXJyYXkgPSBwYXJhbWV0ZXJOb2Rlcy5tYXAoKHBhcmFtZXRlck5vZGUpID0+IHsgLy8vXG4gICAgICAgICAgY29uc3QgeyBQYXJhbWV0ZXIgfSA9IGRvbSxcbiAgICAgICAgICAgICAgICBwYXJhbWV0ZXIgPSBQYXJhbWV0ZXIuZnJvbVBhcmFtZXRlck5vZGUocGFyYW1ldGVyTm9kZSwgY29udGV4dCk7XG5cbiAgICAgICAgICByZXR1cm4gcGFyYW1ldGVyO1xuICAgICAgICB9KTtcblxuICByZXR1cm4gYXJyYXk7XG59XG5cbmZ1bmN0aW9uIHN0cmluZ0Zyb21BcnJheShhcnJheSwgY29udGV4dCkge1xuICBjb25zdCBwYXJhbWV0ZXJzU3RyaW5nID0gYXJyYXkucmVkdWNlKChwYXJhbWV0ZXJzU3RyaW5nLCBwYXJhbWV0ZXIpID0+IHtcbiAgICAgICAgICBjb25zdCBwYXJhbWV0ZXJTdHJpbmcgPSAocGFyYW1ldGVyICE9PSBudWxsKT9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlci5nZXRTdHJpbmcoKSA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVOREVSU0NPUkU7XG5cbiAgICAgICAgICBwYXJhbWV0ZXJzU3RyaW5nID0gKHBhcmFtZXRlcnNTdHJpbmcgPT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbWV0ZXJTdHJpbmcgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgJHtwYXJhbWV0ZXJzU3RyaW5nfSwgJHtwYXJhbWV0ZXJTdHJpbmd9YDtcblxuICAgICAgICAgIHJldHVybiBwYXJhbWV0ZXJzU3RyaW5nO1xuICAgICAgICB9LCBudWxsKSxcbiAgICAgICAgc3RyaW5nID0gcGFyYW1ldGVyc1N0cmluZzsgIC8vL1xuXG4gIHJldHVybiBzdHJpbmc7XG59XG4iXSwibmFtZXMiOlsicGFyYW1ldGVyTm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJhcnJheUFzc2lnbm1lbnRQYXJhbWV0ZXJzTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwiYW5vbnltb3VzUHJvY2VkdXJlUGFyYW1ldGVyc05vZGVRdWVyeSIsInByb2NlZHVyZURlY2xhcmF0aW9uUGFyYW1ldGVyc05vZGVRdWVyeSIsImRvbUFzc2lnbmVkIiwiUGFyYW1ldGVycyIsInN0cmluZyIsImFycmF5IiwiZ2V0U3RyaW5nIiwiZ2V0QXJyYXkiLCJnZXRMZW5ndGgiLCJsZW5ndGgiLCJnZXRQYXJhbWV0ZXIiLCJpbmRleCIsInBhcmFtZXRlciIsImZvckVhY2hQYXJhbWV0ZXIiLCJjYWxsYmFjayIsImZvckVhY2giLCJtYXRjaEV4cHJlc3Npb25zIiwiZXhwcmVzc2lvbnMiLCJjb250ZXh0IiwiZXhwcmVzc2lvbnNTdHJpbmciLCJwYXJhbWV0ZXJzU3RyaW5nIiwidHJhY2UiLCJleHByZXNzaW9uc0xlbmd0aCIsInBhcmFtZXRlcnNMZW5ndGgiLCJtZXNzYWdlIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJleHByZXNzaW9uIiwiZ2V0RXhwcmVzc2lvbiIsIm1hdGNoRXhwcmVzc2lvbiIsImRlYnVnIiwiZnJvbUFycmF5QXNzaWdubWVudE5vZGUiLCJhcnJheUFzc2lnbm1lbnROb2RlIiwiYXJyYXlBc3NpZ25tZW50UGFyYW1ldGVyc05vZGUiLCJwYXJhbWV0ZXJzTm9kZSIsInBhcmFtZXRlcnMiLCJwYXJhbWV0ZXJzRnJvbVBhcmFtZXRlcnNOb2RlIiwiZnJvbUFub255bW91c1Byb2NlZHVyZU5vZGUiLCJhbm9ueW1vdXNQcm9jZWR1cmVOb2RlIiwiYW5vbnltb3VzUHJvY2VkdXJlUGFyYW1ldGVyc05vZGUiLCJmcm9tUHJvY2VkdXJlRGVjbGFyYXRpb25Ob2RlIiwicHJvY2VkdXJlRGVjbGFyYXRpb25Ob2RlIiwicHJvY2VkdXJlRGVjbGFyYXRpb25QYXJhbWV0ZXJzTm9kZSIsIm5hbWUiLCJkb20iLCJhcnJheUZyb21QYXJhbWV0ZXJzTm9kZSIsInN0cmluZ0Zyb21BcnJheSIsInBhcmFtZXRlck5vZGVzIiwibWFwIiwicGFyYW1ldGVyTm9kZSIsIlBhcmFtZXRlciIsImZyb21QYXJhbWV0ZXJOb2RlIiwicmVkdWNlIiwicGFyYW1ldGVyU3RyaW5nIiwiVU5ERVJTQ09SRSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBY0E7OztlQUFBOzs7MkRBWmdCO2dFQUNNO3lCQUVLO3FCQUVXOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUV0QyxJQUFNQSxzQkFBc0JDLElBQUFBLGlCQUFVLEVBQUMsMEJBQ2pDQyxxQ0FBcUNDLElBQUFBLGdCQUFTLEVBQUMsZ0NBQy9DQyx3Q0FBd0NELElBQUFBLGdCQUFTLEVBQUMsbUNBQ2xERSwwQ0FBMENGLElBQUFBLGdCQUFTLEVBQUM7SUFFMUQsV0FBZUcsSUFBQUEsZ0JBQVcsK0JBQUM7YUFBTUMsV0FDbkJDLE1BQU0sRUFBRUMsS0FBSztnQ0FETUY7UUFFN0IsSUFBSSxDQUFDQyxNQUFNLEdBQUdBO1FBQ2QsSUFBSSxDQUFDQyxLQUFLLEdBQUdBOzs7O1lBR2ZDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0YsTUFBTTtZQUNwQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0YsS0FBSztZQUNuQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxTQUFTLElBQUksQ0FBQ0osS0FBSyxDQUFDSSxNQUFNO2dCQUVoQyxPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLGFBQWFDLEtBQUs7Z0JBQ2hCLElBQU1DLFlBQVksSUFBSSxDQUFDUCxLQUFLLENBQUNNLE1BQU0sSUFBSTtnQkFF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