@tricoteuses/assemblee 1.10.2 → 1.10.3

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.
@@ -1,15 +1,10 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
- require("core-js/modules/es.symbol.js");
5
- require("core-js/modules/es.symbol.description.js");
6
3
  require("core-js/modules/es.symbol.async-iterator.js");
7
- require("core-js/modules/es.symbol.iterator.js");
8
4
  require("core-js/modules/es.symbol.to-string-tag.js");
9
5
  require("core-js/modules/es.array.for-each.js");
10
6
  require("core-js/modules/es.array.from.js");
11
7
  require("core-js/modules/es.array.is-array.js");
12
- require("core-js/modules/es.array.iterator.js");
13
8
  require("core-js/modules/es.array.reverse.js");
14
9
  require("core-js/modules/es.array.slice.js");
15
10
  require("core-js/modules/es.function.name.js");
@@ -20,22 +15,26 @@ require("core-js/modules/es.object.define-property.js");
20
15
  require("core-js/modules/es.object.get-own-property-descriptor.js");
21
16
  require("core-js/modules/es.object.get-prototype-of.js");
22
17
  require("core-js/modules/es.object.set-prototype-of.js");
23
- require("core-js/modules/es.object.to-string.js");
24
18
  require("core-js/modules/es.promise.js");
25
19
  require("core-js/modules/es.regexp.to-string.js");
26
- require("core-js/modules/es.string.iterator.js");
27
20
  require("core-js/modules/es.weak-map.js");
28
21
  require("core-js/modules/web.dom-collections.for-each.js");
29
- require("core-js/modules/web.dom-collections.iterator.js");
22
+ require("core-js/modules/es.symbol.js");
23
+ require("core-js/modules/es.symbol.description.js");
24
+ require("core-js/modules/es.symbol.iterator.js");
30
25
  require("core-js/modules/es.array.concat.js");
26
+ require("core-js/modules/es.array.iterator.js");
31
27
  require("core-js/modules/es.array.join.js");
32
28
  require("core-js/modules/es.date.to-json.js");
33
29
  require("core-js/modules/es.date.to-string.js");
34
30
  require("core-js/modules/es.object.keys.js");
31
+ require("core-js/modules/es.object.to-string.js");
35
32
  require("core-js/modules/es.regexp.exec.js");
36
33
  require("core-js/modules/es.string.ends-with.js");
34
+ require("core-js/modules/es.string.iterator.js");
37
35
  require("core-js/modules/es.string.replace.js");
38
36
  require("core-js/modules/es.string.trim.js");
37
+ require("core-js/modules/web.dom-collections.iterator.js");
39
38
  var _commandLineArgs = _interopRequireDefault(require("command-line-args"));
40
39
  var _fsExtra = _interopRequireDefault(require("fs-extra"));
41
40
  var _path = _interopRequireDefault(require("path"));
@@ -66,6 +65,7 @@ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r)
66
65
  function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
67
66
  function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
68
67
  function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
68
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
69
69
  function parseArgs(argv) {
70
70
  var optionsDefinitions = [_cli_helpers.cloneOption, _cli_helpers.commitOption, _cli_helpers.remoteOption, _cli_helpers.legislatureOption, _cli_helpers.categoriesOption, _cli_helpers.silentOption, _cli_helpers.verboseOption, _cli_helpers.dataDirDefaultOption, _cli_helpers.pullOption, _cli_helpers.fetchDocumentsOption, _cli_helpers.parseDocumentsOption, _cli_helpers.documentFormatOption, {
71
71
  alias: "d",
@@ -104,6 +104,10 @@ function commitGit(datasetCleanDir, options, exitCode, subdirectories) {
104
104
  }
105
105
  function cleanAndValidateData(data, cleaner, fromJson, toJson, noValidate) {
106
106
  cleaner(data);
107
+ if (_typeof(data) === "object" && Object.keys(data).length === 0) {
108
+ // By convention: an empty object must be deleted.
109
+ return null;
110
+ }
107
111
  var jsonData = JSON.stringify(data, null, 2);
108
112
  if (!noValidate) {
109
113
  return jsonData;
@@ -126,7 +130,7 @@ function _processFiles() {
126
130
  _iterator3.s();
127
131
  case 3:
128
132
  if ((_step3 = _iterator3.n()).done) {
129
- _context.next = 22;
133
+ _context.next = 23;
130
134
  break;
131
135
  }
132
136
  filePathArray = _step3.value;
@@ -135,7 +139,7 @@ function _processFiles() {
135
139
  _context.next = 8;
136
140
  break;
137
141
  }
138
- return _context.abrupt("continue", 20);
142
+ return _context.abrupt("continue", 21);
139
143
  case 8:
140
144
  rawFilePath = _path["default"].join.apply(_path["default"], [datasetRawDir].concat(_toConsumableArray(filePathArray)));
141
145
  rawJson = _fsExtra["default"].readFileSync(rawFilePath, {
@@ -145,36 +149,40 @@ function _processFiles() {
145
149
  data = JSON.parse(rawJson);
146
150
  validateData = !options["no-validate"];
147
151
  cleanJson = cleanAndValidateData(data, cleaner, dataConverter.fromJson, dataConverter.toJson, validateData);
152
+ if (!(cleanJson !== null)) {
153
+ _context.next = 21;
154
+ break;
155
+ }
148
156
  cleanFilePath = _path["default"].join.apply(_path["default"], [datasetCleanDir].concat(_toConsumableArray(filePathArray)));
149
157
  _fsExtra["default"].ensureDirSync(_path["default"].dirname(cleanFilePath));
150
158
  _fsExtra["default"].writeFileSync(cleanFilePath, cleanJson, {
151
159
  encoding: "utf8"
152
160
  });
153
161
  if (!postProcessor) {
154
- _context.next = 20;
162
+ _context.next = 21;
155
163
  break;
156
164
  }
157
- _context.next = 20;
165
+ _context.next = 21;
158
166
  return postProcessor(data, datasetCleanDir, options);
159
- case 20:
167
+ case 21:
160
168
  _context.next = 3;
161
169
  break;
162
- case 22:
163
- _context.next = 27;
170
+ case 23:
171
+ _context.next = 28;
164
172
  break;
165
- case 24:
166
- _context.prev = 24;
173
+ case 25:
174
+ _context.prev = 25;
167
175
  _context.t0 = _context["catch"](1);
168
176
  _iterator3.e(_context.t0);
169
- case 27:
170
- _context.prev = 27;
177
+ case 28:
178
+ _context.prev = 28;
171
179
  _iterator3.f();
172
- return _context.finish(27);
173
- case 30:
180
+ return _context.finish(28);
181
+ case 31:
174
182
  case "end":
175
183
  return _context.stop();
176
184
  }
177
- }, _callee, null, [[1, 24, 27, 30]]);
185
+ }, _callee, null, [[1, 25, 28, 31]]);
178
186
  }));
179
187
  return _processFiles.apply(this, arguments);
180
188
  }
@@ -599,4 +607,4 @@ function main(argv) {
599
607
  if (process.argv[1].endsWith("clean_reorganized_data.ts")) {
600
608
  main(process.argv).then(process.exit);
601
609
  }
602
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29tbWFuZExpbmVBcmdzIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfZnNFeHRyYSIsIl9wYXRoIiwiX2NsZWFuZXJzIiwiX2RhdGFzZXRzIiwiX3JldHJpZXZlX2RvY3VtZW50cyIsIl9kYXRlcyIsIl9maWxlX3N5c3RlbXMiLCJnaXQiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9hY3RldXJzX2V0X29yZ2FuZXMiLCJfYWdlbmRhcyIsIl9hbWVuZGVtZW50cyIsIl9kb3NzaWVyc19sZWdpc2xhdGlmcyIsIl9zY3J1dGlucyIsIl9xdWVzdGlvbnMiLCJfZGViYXRzIiwiX2NsaV9oZWxwZXJzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsInByb3RvdHlwZSIsIm8iLCJ2YWx1ZSIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiYyIsImFzeW5jSXRlcmF0b3IiLCJ0b1N0cmluZ1RhZyIsImRlZmluZSIsImVudW1lcmFibGUiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsIndyYXAiLCJHZW5lcmF0b3IiLCJjcmVhdGUiLCJDb250ZXh0IiwibWFrZUludm9rZU1ldGhvZCIsInRyeUNhdGNoIiwidHlwZSIsImFyZyIsImgiLCJsIiwiZiIsInMiLCJ5IiwiR2VuZXJhdG9yRnVuY3Rpb24iLCJHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSIsInAiLCJkIiwiZ2V0UHJvdG90eXBlT2YiLCJ2IiwidmFsdWVzIiwiZyIsImRlZmluZUl0ZXJhdG9yTWV0aG9kcyIsImZvckVhY2giLCJfaW52b2tlIiwiQXN5bmNJdGVyYXRvciIsImludm9rZSIsInJlc29sdmUiLCJfX2F3YWl0IiwidGhlbiIsImNhbGxJbnZva2VXaXRoTWV0aG9kQW5kQXJnIiwiRXJyb3IiLCJkb25lIiwibWV0aG9kIiwiZGVsZWdhdGUiLCJtYXliZUludm9rZURlbGVnYXRlIiwic2VudCIsIl9zZW50IiwiZGlzcGF0Y2hFeGNlcHRpb24iLCJhYnJ1cHQiLCJUeXBlRXJyb3IiLCJyZXN1bHROYW1lIiwibmV4dCIsIm5leHRMb2MiLCJwdXNoVHJ5RW50cnkiLCJ0cnlMb2MiLCJjYXRjaExvYyIsImZpbmFsbHlMb2MiLCJhZnRlckxvYyIsInRyeUVudHJpZXMiLCJwdXNoIiwicmVzZXRUcnlFbnRyeSIsImNvbXBsZXRpb24iLCJyZXNldCIsImlzTmFOIiwibGVuZ3RoIiwiZGlzcGxheU5hbWUiLCJpc0dlbmVyYXRvckZ1bmN0aW9uIiwiY29uc3RydWN0b3IiLCJuYW1lIiwibWFyayIsInNldFByb3RvdHlwZU9mIiwiYXdyYXAiLCJhc3luYyIsIlByb21pc2UiLCJrZXlzIiwicmV2ZXJzZSIsInBvcCIsInByZXYiLCJjaGFyQXQiLCJzbGljZSIsInN0b3AiLCJydmFsIiwiaGFuZGxlIiwiY29tcGxldGUiLCJmaW5pc2giLCJfY2F0Y2giLCJkZWxlZ2F0ZVlpZWxkIiwiX3RvQ29uc3VtYWJsZUFycmF5IiwiX2FycmF5V2l0aG91dEhvbGVzIiwiX2l0ZXJhYmxlVG9BcnJheSIsIl91bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheSIsIl9ub25JdGVyYWJsZVNwcmVhZCIsIkFycmF5IiwiZnJvbSIsImlzQXJyYXkiLCJfYXJyYXlMaWtlVG9BcnJheSIsIl9jcmVhdGVGb3JPZkl0ZXJhdG9ySGVscGVyIiwiX24iLCJGIiwidG9TdHJpbmciLCJ0ZXN0IiwiYXN5bmNHZW5lcmF0b3JTdGVwIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJhcmd1bWVudHMiLCJhcHBseSIsIl9uZXh0IiwiX3Rocm93IiwicGFyc2VBcmdzIiwiYXJndiIsIm9wdGlvbnNEZWZpbml0aW9ucyIsImNsb25lT3B0aW9uIiwiY29tbWl0T3B0aW9uIiwicmVtb3RlT3B0aW9uIiwibGVnaXNsYXR1cmVPcHRpb24iLCJjYXRlZ29yaWVzT3B0aW9uIiwic2lsZW50T3B0aW9uIiwidmVyYm9zZU9wdGlvbiIsImRhdGFEaXJEZWZhdWx0T3B0aW9uIiwicHVsbE9wdGlvbiIsImZldGNoRG9jdW1lbnRzT3B0aW9uIiwicGFyc2VEb2N1bWVudHNPcHRpb24iLCJkb2N1bWVudEZvcm1hdE9wdGlvbiIsImFsaWFzIiwiaGVscCIsIlN0cmluZyIsIkJvb2xlYW4iLCJvcHRpb25zIiwiY29tbWFuZExpbmVBcmdzIiwiY2xvbmVHaXQiLCJnaXRHcm91cFVybCIsImRhdGFzZXROYW1lIiwiZGF0YURpciIsImNsb25lIiwiY29uY2F0IiwiY29tbWl0R2l0IiwiZGF0YXNldENsZWFuRGlyIiwiZXhpdENvZGUiLCJzdWJkaXJlY3RvcmllcyIsImNvbW1pdCIsImVycm9yQ29kZSIsImNvbW1pdEFuZFB1c2giLCJyZW1vdGUiLCJjb21taXRBbmRQdXNoVWlkIiwiY2xlYW5BbmRWYWxpZGF0ZURhdGEiLCJkYXRhIiwiY2xlYW5lciIsImZyb21Kc29uIiwidG9Kc29uIiwibm9WYWxpZGF0ZSIsImpzb25EYXRhIiwiSlNPTiIsInN0cmluZ2lmeSIsInZhbGlkYXRlZERhdGEiLCJwcm9jZXNzRmlsZXMiLCJfeCIsIl94MiIsIl94MyIsIl94NCIsIl94NSIsIl94NiIsIl94NyIsIl9wcm9jZXNzRmlsZXMiLCJfY2FsbGVlIiwiZGF0YXNldFJhd0RpciIsIndhbGtEaXJQYXJhbXMiLCJkYXRhQ29udmVydGVyIiwicG9zdFByb2Nlc3NvciIsIl9pdGVyYXRvcjMiLCJfc3RlcDMiLCJmaWxlUGF0aEFycmF5IiwiZmlsZW5hbWUiLCJyYXdGaWxlUGF0aCIsInJhd0pzb24iLCJ2YWxpZGF0ZURhdGEiLCJjbGVhbkpzb24iLCJjbGVhbkZpbGVQYXRoIiwiX2NhbGxlZSQiLCJfY29udGV4dCIsIndhbGtEaXIiLCJlbmRzV2l0aCIsInBhdGgiLCJqb2luIiwiZnMiLCJyZWFkRmlsZVN5bmMiLCJlbmNvZGluZyIsInZlcmJvc2UiLCJjb25zb2xlIiwibG9nIiwicGFyc2UiLCJlbnN1cmVEaXJTeW5jIiwiZGlybmFtZSIsIndyaXRlRmlsZVN5bmMiLCJ0MCIsImNsZWFuUmVvcmdhbml6ZWREYXRhIiwiX3g4IiwiX2NsZWFuUmVvcmdhbml6ZWREYXRhIiwiX2NhbGxlZTIiLCJfb3B0aW9ucyRjbG9uZSIsImVuYWJsZWREYXRhc2V0cyIsImNob3NlbkRhdGFzZXRzIiwiX2l0ZXJhdG9yNCIsIl9zdGVwNCIsImRhdGFzZXQiLCJfaXRlcmF0b3I1IiwiX3N0ZXA1IiwiX2RhdGFzZXQiLCJfZGF0YXNldE5hbWUiLCJfZGF0YXNldFJhd0RpciIsIl9kYXRhc2V0Q2xlYW5EaXIiLCJfaXRlcmF0b3I2IiwiX3N0ZXA2IiwiX2RhdGFzZXQyIiwiX2RhdGFzZXROYW1lMiIsIl9kYXRhc2V0UmF3RGlyMiIsIl9kYXRhc2V0Q2xlYW5EaXIyIiwiX2l0ZXJhdG9yNyIsIl9zdGVwNyIsIl9kYXRhc2V0MyIsIl9kYXRhc2V0TmFtZTMiLCJfZGF0YXNldFJhd0RpcjMiLCJfZGF0YXNldENsZWFuRGlyMyIsIl9pdGVyYXRvcjgiLCJfc3RlcDgiLCJfZGF0YXNldDQiLCJfZGF0YXNldE5hbWU0IiwiX2RhdGFzZXRSYXdEaXI0IiwiX2RhdGFzZXRDbGVhbkRpcjQiLCJfaXRlcmF0b3I5IiwiX3N0ZXA5IiwiX2RhdGFzZXQ1IiwiX2RhdGFzZXROYW1lNSIsIl9kYXRhc2V0UmF3RGlyNSIsIl9kYXRhc2V0Q2xlYW5EaXI1IiwiX2l0ZXJhdG9yMTAiLCJfc3RlcDEwIiwiX2RhdGFzZXQ2IiwiX2RhdGFzZXROYW1lNiIsIl9kYXRhc2V0UmF3RGlyNiIsIl9kYXRhc2V0Q2xlYW5EaXI2IiwiX2NhbGxlZTIkIiwiX2NvbnRleHQyIiwiRGF0ZSIsInRvSlNPTiIsInBhdGNoZWREYXRlVG9Kc29uIiwidHJpbSIsInJlcGxhY2UiLCJnZXRFbmFibGVkRGF0YXNldHMiLCJjYXRlZ29yaWVzIiwiZmlsdGVyQnlMZWdpc2xhdHVyZSIsImRhdGFzZXRzIiwibGVnaXNsYXR1cmUiLCJFbmFibGVkRGF0YXNldHMiLCJBY3RldXJzRXRPcmdhbmVzIiwiYWN0ZXVyc0V0T3JnYW5lcyIsImJhc2VuYW1lIiwicHVsbCIsInJlc2V0QW5kUHVsbCIsImFuYWx5emVBbmRSZW1vdmUiLCJjbGVhbkFjdGV1ciIsIkFjdGV1cnNFdE9yZ2FuZXNDb252ZXJ0IiwidG9BY3RldXIiLCJhY3RldXJUb0pzb24iLCJjbGVhbk9yZ2FuZSIsInRvT3JnYW5lIiwib3JnYW5lVG9Kc29uIiwiQWdlbmRhcyIsImFnZW5kYXMiLCJjbGVhblJldW5pb24iLCJBZ2VuZGFzQ29udmVydCIsInRvUmV1bmlvbiIsInJldW5pb25Ub0pzb24iLCJ0MSIsIkFtZW5kZW1lbnRzIiwiYW1lbmRlbWVudHMiLCJjbGVhbkFtZW5kZW1lbnQiLCJBbWVuZGVtZW50c0NvbnZlcnQiLCJ0b0FtZW5kZW1lbnQiLCJhbWVuZGVtZW50VG9Kc29uIiwidDIiLCJEb3NzaWVyc0xlZ2lzbGF0aWZzIiwiZG9zc2llcnNMZWdpc2xhdGlmcyIsImNsZWFuRG9jdW1lbnRPckRpdmlzaW9uIiwiRG9zc2llcnNMZWdpc2xhdGlmc0NvbnZlcnQiLCJ0b0RvY3VtZW50IiwiZG9jdW1lbnRUb0pzb24iLCJkb3dubG9hZEFuZFBhcnNlIiwiY2xlYW5Eb3NzaWVyUGFybGVtZW50YWlyZSIsInRvRG9zc2llclBhcmxlbWVudGFpcmUiLCJkb3NzaWVyUGFybGVtZW50YWlyZVRvSnNvbiIsInQzIiwiU2NydXRpbnMiLCJzY3J1dGlucyIsImNsZWFuU2NydXRpbiIsIlNjcnV0aW5zQ29udmVydCIsInRvU2NydXRpbiIsInNjcnV0aW5Ub0pzb24iLCJ0NCIsIlF1ZXN0aW9ucyIsInF1ZXN0aW9ucyIsImNsZWFuUXVlc3Rpb24iLCJRdWVzdGlvbnNDb252ZXJ0IiwidG9RdWVzdGlvbiIsInF1ZXN0aW9uVG9Kc29uIiwidDUiLCJDb21wdGVzUmVuZHVzU2VhbmNlcyIsImNvbXB0ZXNSZW5kdXNTZWFuY2VzIiwiY2xlYW5Db21wdGVSZW5kdSIsIkNvbXB0ZXNSZW5kdXNDb252ZXJ0IiwidG9Db21wdGVSZW5kdSIsImNvbXB0ZVJlbmR1VG9Kc29uIiwidDYiLCJleGlzdGluZ0RhdGVUb0pzb24iLCJzaWxlbnQiLCJfaXRlcmF0b3IiLCJyZWFkZGlyU3luYyIsIl9zdGVwIiwicGF0aG5hbWUiLCJyZW1vdmVTeW5jIiwiZXJyIiwicmVwb3NpdG9yeURpciIsImVycm9yIiwidWlkQnJhbmNoVXBkYXRlIiwiX2l0ZXJhdG9yMiIsIl9zdGVwMiIsInJ1biIsImNoaWxkUHJvY2VzcyIsIm1haW4iLCJwcm9jZXNzIiwiZXhpdCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JpcHRzL2NsZWFuX3Jlb3JnYW5pemVkX2RhdGEudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNvbW1hbmRMaW5lQXJncyBmcm9tIFwiY29tbWFuZC1saW5lLWFyZ3NcIlxuaW1wb3J0IGZzIGZyb20gXCJmcy1leHRyYVwiXG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiXG5pbXBvcnQge1xuICBjbGVhbkFjdGV1cixcbiAgY2xlYW5BbWVuZGVtZW50LFxuICBjbGVhbkRvY3VtZW50T3JEaXZpc2lvbixcbiAgY2xlYW5Eb3NzaWVyUGFybGVtZW50YWlyZSxcbiAgY2xlYW5PcmdhbmUsXG4gIGNsZWFuUmV1bmlvbixcbiAgY2xlYW5TY3J1dGluLFxuICBjbGVhblF1ZXN0aW9uLFxuICBjbGVhbkNvbXB0ZVJlbmR1LFxufSBmcm9tIFwiLi4vY2xlYW5lcnNcIlxuaW1wb3J0IHtcbiAgZGF0YXNldHMsXG4gIEVuYWJsZWREYXRhc2V0cyxcbiAgZ2V0RW5hYmxlZERhdGFzZXRzLFxuICBmaWx0ZXJCeUxlZ2lzbGF0dXJlLFxufSBmcm9tIFwiLi4vZGF0YXNldHNcIlxuaW1wb3J0IHsgZG93bmxvYWRBbmRQYXJzZSB9IGZyb20gXCIuL3JldHJpZXZlX2RvY3VtZW50c1wiXG5pbXBvcnQgeyBleGlzdGluZ0RhdGVUb0pzb24sIHBhdGNoZWREYXRlVG9Kc29uIH0gZnJvbSBcIi4uL2RhdGVzXCJcbmltcG9ydCB7IHdhbGtEaXIgfSBmcm9tIFwiLi4vZmlsZV9zeXN0ZW1zXCJcbmltcG9ydCAqIGFzIGdpdCBmcm9tIFwiLi4vZ2l0XCJcbmltcG9ydCB7XG4gIEFjdGV1cixcbiAgQ29udmVydCBhcyBBY3RldXJzRXRPcmdhbmVzQ29udmVydCxcbiAgT3JnYW5lLFxufSBmcm9tIFwiLi4vdHlwZXMvYWN0ZXVyc19ldF9vcmdhbmVzXCJcbmltcG9ydCB7IENvbnZlcnQgYXMgQWdlbmRhc0NvbnZlcnQsIFJldW5pb24gfSBmcm9tIFwiLi4vdHlwZXMvYWdlbmRhc1wiXG5pbXBvcnQgeyBBbWVuZGVtZW50LCBDb252ZXJ0IGFzIEFtZW5kZW1lbnRzQ29udmVydCB9IGZyb20gXCIuLi90eXBlcy9hbWVuZGVtZW50c1wiXG5pbXBvcnQge1xuICBDb252ZXJ0IGFzIERvc3NpZXJzTGVnaXNsYXRpZnNDb252ZXJ0LFxuICBEb2N1bWVudCxcbiAgRG9zc2llclBhcmxlbWVudGFpcmUsXG59IGZyb20gXCIuLi90eXBlcy9kb3NzaWVyc19sZWdpc2xhdGlmc1wiXG5pbXBvcnQgeyBDb252ZXJ0IGFzIFNjcnV0aW5zQ29udmVydCwgU2NydXRpbiB9IGZyb20gXCIuLi90eXBlcy9zY3J1dGluc1wiXG5pbXBvcnQgeyBDb252ZXJ0IGFzIFF1ZXN0aW9uc0NvbnZlcnQsIFF1ZXN0aW9uIH0gZnJvbSBcIi4uL3R5cGVzL3F1ZXN0aW9uc1wiXG5pbXBvcnQgeyBDb252ZXJ0IGFzIENvbXB0ZXNSZW5kdXNDb252ZXJ0LCBDb21wdGVSZW5kdSB9IGZyb20gXCIuLi90eXBlcy9kZWJhdHNcIlxuaW1wb3J0IHtcbiAgY2xvbmVPcHRpb24sXG4gIGNvbW1pdE9wdGlvbixcbiAgcmVtb3RlT3B0aW9uLFxuICBsZWdpc2xhdHVyZU9wdGlvbixcbiAgY2F0ZWdvcmllc09wdGlvbixcbiAgZGF0YURpckRlZmF1bHRPcHRpb24sXG4gIHNpbGVudE9wdGlvbixcbiAgdmVyYm9zZU9wdGlvbixcbiAgcHVsbE9wdGlvbixcbiAgZmV0Y2hEb2N1bWVudHNPcHRpb24sXG4gIHBhcnNlRG9jdW1lbnRzT3B0aW9uLFxuICBkb2N1bWVudEZvcm1hdE9wdGlvbixcbn0gZnJvbSBcIi4vc2hhcmVkL2NsaV9oZWxwZXJzXCJcblxuZnVuY3Rpb24gcGFyc2VBcmdzKGFyZ3Y6IHN0cmluZ1tdKTogYW55IHtcbiAgY29uc3Qgb3B0aW9uc0RlZmluaXRpb25zID0gW1xuICAgIGNsb25lT3B0aW9uLFxuICAgIGNvbW1pdE9wdGlvbixcbiAgICByZW1vdGVPcHRpb24sXG4gICAgbGVnaXNsYXR1cmVPcHRpb24sXG4gICAgY2F0ZWdvcmllc09wdGlvbixcbiAgICBzaWxlbnRPcHRpb24sXG4gICAgdmVyYm9zZU9wdGlvbixcbiAgICBkYXRhRGlyRGVmYXVsdE9wdGlvbixcbiAgICBwdWxsT3B0aW9uLFxuICAgIGZldGNoRG9jdW1lbnRzT3B0aW9uLFxuICAgIHBhcnNlRG9jdW1lbnRzT3B0aW9uLFxuICAgIGRvY3VtZW50Rm9ybWF0T3B0aW9uLFxuICAgIHtcbiAgICAgIGFsaWFzOiBcImRcIixcbiAgICAgIGhlbHA6IFwic2luZ2xlIGRhdGFzZXQgdG8gcmVvcmdhbml6ZVwiLFxuICAgICAgbmFtZTogXCJkYXRhc2V0XCIsXG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgfSxcbiAgICB7XG4gICAgICBoZWxwOiBcImRvIG5vdCByZXNldCAtLWhhcmQgYWZ0ZXIgY29tbWl0IHRvIHNhdmUgSS9PIGlmIHRoZSB3b3JraW5nIHRyZWUgaXMgdG8gYmUgZGlzY2FyZGVkXCIsXG4gICAgICBuYW1lOiBcIm5vLXJlc2V0LWFmdGVyLWNvbW1pdFwiLFxuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICB9LFxuICAgIHtcbiAgICAgIGFsaWFzOiBcIlZcIixcbiAgICAgIGhlbHA6IFwiZG9uJ3QgdmFsaWRhdGUgZGF0YVwiLFxuICAgICAgbmFtZTogXCJuby12YWxpZGF0ZVwiLFxuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICB9LFxuICBdXG4gIGNvbnN0IG9wdGlvbnMgPSBjb21tYW5kTGluZUFyZ3Mob3B0aW9uc0RlZmluaXRpb25zLCB7XG4gICAgYXJndjogYXJndixcbiAgfSlcbiAgcmV0dXJuIG9wdGlvbnNcbn1cblxuZnVuY3Rpb24gY2xvbmVHaXQoXG4gIGdpdEdyb3VwVXJsOiBzdHJpbmcgfCB1bmRlZmluZWQsXG4gIGRhdGFzZXROYW1lOiBzdHJpbmcsXG4gIGRhdGFEaXI6IHN0cmluZyxcbik6IHZvaWQge1xuICBnaXQuY2xvbmUoZ2l0R3JvdXBVcmwsIGAke2RhdGFzZXROYW1lfV9uZXR0b3llYCwgZGF0YURpcilcbn1cblxuZnVuY3Rpb24gY29tbWl0R2l0KFxuICBkYXRhc2V0Q2xlYW5EaXI6IHN0cmluZyxcbiAgb3B0aW9uczogYW55LFxuICBleGl0Q29kZTogbnVtYmVyLFxuICBzdWJkaXJlY3RvcmllczogYW55LFxuKTogbnVtYmVyIHtcbiAgaWYgKG9wdGlvbnMuY29tbWl0KSB7XG4gICAgY29uc3QgZXJyb3JDb2RlID0gZ2l0LmNvbW1pdEFuZFB1c2goXG4gICAgICBkYXRhc2V0Q2xlYW5EaXIsXG4gICAgICBcIk5vdXZlbGxlIG1vaXNzb25cIixcbiAgICAgIG9wdGlvbnMucmVtb3RlLFxuICAgIClcbiAgICBpZiAoXG4gICAgICAoZXhpdENvZGUgPT09IDEwICYmIGVycm9yQ29kZSAhPT0gMTApIHx8XG4gICAgICAoZXhpdENvZGUgPT09IDAgJiYgZXJyb3JDb2RlICE9PSAwICYmIGVycm9yQ29kZSAhPT0gMTApXG4gICAgKSB7XG4gICAgICBleGl0Q29kZSA9IGVycm9yQ29kZVxuICAgIH1cbiAgfVxuICBpZiAoXG4gICAgY29tbWl0QW5kUHVzaFVpZChkYXRhc2V0Q2xlYW5EaXIsIG9wdGlvbnMsIHN1YmRpcmVjdG9yaWVzKSAmJlxuICAgIChleGl0Q29kZSA9PT0gMCB8fCBleGl0Q29kZSA9PT0gMTApXG4gICkge1xuICAgIGV4aXRDb2RlID0gMVxuICB9XG4gIHJldHVybiBleGl0Q29kZVxufVxuXG5mdW5jdGlvbiBjbGVhbkFuZFZhbGlkYXRlRGF0YTxUPihcbiAgZGF0YTogYW55LFxuICBjbGVhbmVyOiAoZGF0YTogVCkgPT4gdm9pZCxcbiAgZnJvbUpzb246IChqc29uOiBzdHJpbmcpID0+IFQsXG4gIHRvSnNvbjogKGRhdGE6IFQpID0+IHN0cmluZyxcbiAgbm9WYWxpZGF0ZTogQm9vbGVhbixcbik6IHN0cmluZyB7XG4gIGNsZWFuZXIoZGF0YSlcbiAgY29uc3QganNvbkRhdGEgPSBKU09OLnN0cmluZ2lmeShkYXRhLCBudWxsLCAyKVxuICBpZiAoIW5vVmFsaWRhdGUpIHtcbiAgICByZXR1cm4ganNvbkRhdGFcbiAgfSBlbHNlIHtcbiAgICBjb25zdCB2YWxpZGF0ZWREYXRhOiBUID0gZnJvbUpzb24oanNvbkRhdGEpXG4gICAgcmV0dXJuIHRvSnNvbih2YWxpZGF0ZWREYXRhKVxuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHByb2Nlc3NGaWxlczxUPihcbiAgZGF0YXNldFJhd0Rpcjogc3RyaW5nLFxuICBkYXRhc2V0Q2xlYW5EaXI6IHN0cmluZyxcbiAgd2Fsa0RpclBhcmFtczogYW55W10sXG4gIGNsZWFuZXI6IGFueSxcbiAgZGF0YUNvbnZlcnRlcjogeyBmcm9tSnNvbjogYW55OyB0b0pzb246IGFueSB9LFxuICBvcHRpb25zOiBhbnksXG4gIHBvc3RQcm9jZXNzb3I/OiBhbnksXG4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgZm9yIChjb25zdCBmaWxlUGF0aEFycmF5IG9mIHdhbGtEaXIoZGF0YXNldFJhd0Rpciwgd2Fsa0RpclBhcmFtcykpIHtcbiAgICBjb25zdCBmaWxlbmFtZSA9IGZpbGVQYXRoQXJyYXlbZmlsZVBhdGhBcnJheS5sZW5ndGggLSAxXVxuICAgIGlmICghZmlsZW5hbWUuZW5kc1dpdGgoXCIuanNvblwiKSkgY29udGludWVcbiAgICBjb25zdCByYXdGaWxlUGF0aCA9IHBhdGguam9pbihkYXRhc2V0UmF3RGlyLCAuLi5maWxlUGF0aEFycmF5KVxuICAgIGNvbnN0IHJhd0pzb24gPSBmcy5yZWFkRmlsZVN5bmMocmF3RmlsZVBhdGgsIHsgZW5jb2Rpbmc6IFwidXRmOFwiIH0pXG4gICAgaWYgKG9wdGlvbnMudmVyYm9zZSkgY29uc29sZS5sb2coYENsZWFuaW5nIGZpbGU6ICR7cmF3RmlsZVBhdGh9Li4uYClcbiAgICBjb25zdCBkYXRhID0gSlNPTi5wYXJzZShyYXdKc29uKVxuICAgIGNvbnN0IHZhbGlkYXRlRGF0YSA9ICFvcHRpb25zW1wibm8tdmFsaWRhdGVcIl1cbiAgICBjb25zdCBjbGVhbkpzb24gPSBjbGVhbkFuZFZhbGlkYXRlRGF0YTxUPihcbiAgICAgIGRhdGEsXG4gICAgICBjbGVhbmVyLFxuICAgICAgZGF0YUNvbnZlcnRlci5mcm9tSnNvbixcbiAgICAgIGRhdGFDb252ZXJ0ZXIudG9Kc29uLFxuICAgICAgdmFsaWRhdGVEYXRhLFxuICAgIClcblxuICAgIGNvbnN0IGNsZWFuRmlsZVBhdGggPSBwYXRoLmpvaW4oZGF0YXNldENsZWFuRGlyLCAuLi5maWxlUGF0aEFycmF5KVxuICAgIGZzLmVuc3VyZURpclN5bmMocGF0aC5kaXJuYW1lKGNsZWFuRmlsZVBhdGgpKVxuICAgIGZzLndyaXRlRmlsZVN5bmMoY2xlYW5GaWxlUGF0aCwgY2xlYW5Kc29uLCB7IGVuY29kaW5nOiBcInV0ZjhcIiB9KVxuXG4gICAgaWYgKHBvc3RQcm9jZXNzb3IpIHtcbiAgICAgIGF3YWl0IHBvc3RQcm9jZXNzb3IoZGF0YSwgZGF0YXNldENsZWFuRGlyLCBvcHRpb25zKVxuICAgIH1cbiAgfVxufVxuXG5hc3luYyBmdW5jdGlvbiBjbGVhblJlb3JnYW5pemVkRGF0YShvcHRpb25zOiBhbnkpOiBQcm9taXNlPG51bWJlcj4ge1xuICBjb25zdCBkYXRhRGlyOiBzdHJpbmcgPSBvcHRpb25zLmRhdGFEaXJcbiAgRGF0ZS5wcm90b3R5cGUudG9KU09OID0gcGF0Y2hlZERhdGVUb0pzb25cbiAgbGV0IGV4aXRDb2RlID0gb3B0aW9ucy5jb21taXQgPyAxMCA6IDBcbiAgY29uc3QgZ2l0R3JvdXBVcmwgPSBvcHRpb25zLmNsb25lPy50cmltKCkucmVwbGFjZSgvXFwvKyQvLCBcIlwiKVxuICBjb25zdCBlbmFibGVkRGF0YXNldHMgPSBnZXRFbmFibGVkRGF0YXNldHMob3B0aW9ucy5jYXRlZ29yaWVzKVxuICBsZXQgY2hvc2VuRGF0YXNldHMgPSBmaWx0ZXJCeUxlZ2lzbGF0dXJlKGRhdGFzZXRzLCBvcHRpb25zLmxlZ2lzbGF0dXJlKVxuXG4gIGlmIChlbmFibGVkRGF0YXNldHMgJiBFbmFibGVkRGF0YXNldHMuQWN0ZXVyc0V0T3JnYW5lcykge1xuICAgIGZvciAoY29uc3QgZGF0YXNldCBvZiBjaG9zZW5EYXRhc2V0cy5hY3RldXJzRXRPcmdhbmVzKSB7XG4gICAgICBjb25zdCBkYXRhc2V0TmFtZSA9IHBhdGguYmFzZW5hbWUoZGF0YXNldC5maWxlbmFtZSwgXCIuanNvblwiKVxuICAgICAgaWYgKG9wdGlvbnMuZGF0YXNldCAmJiBkYXRhc2V0TmFtZSAhPT0gb3B0aW9ucy5kYXRhc2V0KSB7XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG4gICAgICBjbG9uZUdpdChnaXRHcm91cFVybCwgZGF0YXNldE5hbWUsIGRhdGFEaXIpXG5cbiAgICAgIGNvbnN0IGRhdGFzZXRSYXdEaXI6IHN0cmluZyA9IHBhdGguam9pbihkYXRhRGlyLCBkYXRhc2V0TmFtZSlcbiAgICAgIGNvbnN0IGRhdGFzZXRDbGVhbkRpcjogc3RyaW5nID0gZGF0YXNldFJhd0RpciArIFwiX25ldHRveWVcIlxuICAgICAgaWYgKG9wdGlvbnMucHVsbCkge1xuICAgICAgICBnaXQucmVzZXRBbmRQdWxsKGRhdGFzZXRDbGVhbkRpcilcbiAgICAgIH1cblxuICAgICAgYW5hbHl6ZUFuZFJlbW92ZShkYXRhc2V0TmFtZSwgb3B0aW9ucylcbiAgICAgIGF3YWl0IHByb2Nlc3NGaWxlczxBY3RldXI+KFxuICAgICAgICBkYXRhc2V0UmF3RGlyLFxuICAgICAgICBkYXRhc2V0Q2xlYW5EaXIsXG4gICAgICAgIFtcImFjdGV1cnNcIl0sXG4gICAgICAgIGNsZWFuQWN0ZXVyLFxuICAgICAgICB7XG4gICAgICAgICAgZnJvbUpzb246IEFjdGV1cnNFdE9yZ2FuZXNDb252ZXJ0LnRvQWN0ZXVyLFxuICAgICAgICAgIHRvSnNvbjogQWN0ZXVyc0V0T3JnYW5lc0NvbnZlcnQuYWN0ZXVyVG9Kc29uLFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zLFxuICAgICAgKVxuICAgICAgYXdhaXQgcHJvY2Vzc0ZpbGVzPE9yZ2FuZT4oXG4gICAgICAgIGRhdGFzZXRSYXdEaXIsXG4gICAgICAgIGRhdGFzZXRDbGVhbkRpcixcbiAgICAgICAgW1wib3JnYW5lc1wiXSxcbiAgICAgICAgY2xlYW5PcmdhbmUsXG4gICAgICAgIHtcbiAgICAgICAgICBmcm9tSnNvbjogQWN0ZXVyc0V0T3JnYW5lc0NvbnZlcnQudG9PcmdhbmUsXG4gICAgICAgICAgdG9Kc29uOiBBY3RldXJzRXRPcmdhbmVzQ29udmVydC5vcmdhbmVUb0pzb24sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnMsXG4gICAgICApXG5cbiAgICAgIGV4aXRDb2RlID0gY29tbWl0R2l0KGRhdGFzZXRDbGVhbkRpciwgb3B0aW9ucywgZXhpdENvZGUsIFtcbiAgICAgICAgXCJhY3RldXJzXCIsXG4gICAgICAgIFwib3JnYW5lc1wiLFxuICAgICAgXSlcbiAgICB9XG4gIH1cblxuICBpZiAoZW5hYmxlZERhdGFzZXRzICYgRW5hYmxlZERhdGFzZXRzLkFnZW5kYXMpIHtcbiAgICBmb3IgKGNvbnN0IGRhdGFzZXQgb2YgY2hvc2VuRGF0YXNldHMuYWdlbmRhcykge1xuICAgICAgY29uc3QgZGF0YXNldE5hbWUgPSBwYXRoLmJhc2VuYW1lKGRhdGFzZXQuZmlsZW5hbWUsIFwiLmpzb25cIilcbiAgICAgIGlmIChvcHRpb25zLmRhdGFzZXQgJiYgZGF0YXNldE5hbWUgIT09IG9wdGlvbnMuZGF0YXNldCkge1xuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuXG4gICAgICBjbG9uZUdpdChnaXRHcm91cFVybCwgZGF0YXNldE5hbWUsIGRhdGFEaXIpXG4gICAgICBhbmFseXplQW5kUmVtb3ZlKGRhdGFzZXROYW1lLCBvcHRpb25zKVxuICAgICAgY29uc3QgZGF0YXNldFJhd0Rpcjogc3RyaW5nID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXROYW1lKVxuICAgICAgY29uc3QgZGF0YXNldENsZWFuRGlyOiBzdHJpbmcgPSBkYXRhc2V0UmF3RGlyICsgXCJfbmV0dG95ZVwiXG5cbiAgICAgIGF3YWl0IHByb2Nlc3NGaWxlczxSZXVuaW9uPihcbiAgICAgICAgZGF0YXNldFJhd0RpcixcbiAgICAgICAgZGF0YXNldENsZWFuRGlyLFxuICAgICAgICBbXSxcbiAgICAgICAgY2xlYW5SZXVuaW9uLFxuICAgICAgICB7XG4gICAgICAgICAgZnJvbUpzb246IEFnZW5kYXNDb252ZXJ0LnRvUmV1bmlvbixcbiAgICAgICAgICB0b0pzb246IEFnZW5kYXNDb252ZXJ0LnJldW5pb25Ub0pzb24sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnMsXG4gICAgICApXG5cbiAgICAgIGV4aXRDb2RlID0gY29tbWl0R2l0KGRhdGFzZXRDbGVhbkRpciwgb3B0aW9ucywgZXhpdENvZGUsIFtcIi5cIl0pXG4gICAgfVxuICB9XG5cbiAgaWYgKGVuYWJsZWREYXRhc2V0cyAmIEVuYWJsZWREYXRhc2V0cy5BbWVuZGVtZW50cykge1xuICAgIGZvciAoY29uc3QgZGF0YXNldCBvZiBjaG9zZW5EYXRhc2V0cy5hbWVuZGVtZW50cykge1xuICAgICAgY29uc3QgZGF0YXNldE5hbWUgPSBwYXRoLmJhc2VuYW1lKGRhdGFzZXQuZmlsZW5hbWUsIFwiLmpzb25cIilcbiAgICAgIGlmIChvcHRpb25zLmRhdGFzZXQgJiYgZGF0YXNldE5hbWUgIT09IG9wdGlvbnMuZGF0YXNldCkge1xuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuXG4gICAgICBjbG9uZUdpdChnaXRHcm91cFVybCwgZGF0YXNldE5hbWUsIGRhdGFEaXIpXG4gICAgICBhbmFseXplQW5kUmVtb3ZlKGRhdGFzZXROYW1lLCBvcHRpb25zKVxuICAgICAgY29uc3QgZGF0YXNldFJhd0Rpcjogc3RyaW5nID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXROYW1lKVxuICAgICAgY29uc3QgZGF0YXNldENsZWFuRGlyOiBzdHJpbmcgPSBkYXRhc2V0UmF3RGlyICsgXCJfbmV0dG95ZVwiXG5cbiAgICAgIGF3YWl0IHByb2Nlc3NGaWxlczxBbWVuZGVtZW50PihcbiAgICAgICAgZGF0YXNldFJhd0RpcixcbiAgICAgICAgZGF0YXNldENsZWFuRGlyLFxuICAgICAgICBbXSxcbiAgICAgICAgY2xlYW5BbWVuZGVtZW50LFxuICAgICAgICB7XG4gICAgICAgICAgZnJvbUpzb246IEFtZW5kZW1lbnRzQ29udmVydC50b0FtZW5kZW1lbnQsXG4gICAgICAgICAgdG9Kc29uOiBBbWVuZGVtZW50c0NvbnZlcnQuYW1lbmRlbWVudFRvSnNvbixcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9ucyxcbiAgICAgIClcblxuICAgICAgZXhpdENvZGUgPSBjb21taXRHaXQoZGF0YXNldENsZWFuRGlyLCBvcHRpb25zLCBleGl0Q29kZSwgW1wiLlwiXSlcbiAgICB9XG4gIH1cblxuICBpZiAoZW5hYmxlZERhdGFzZXRzICYgRW5hYmxlZERhdGFzZXRzLkRvc3NpZXJzTGVnaXNsYXRpZnMpIHtcbiAgICBmb3IgKGNvbnN0IGRhdGFzZXQgb2YgY2hvc2VuRGF0YXNldHMuZG9zc2llcnNMZWdpc2xhdGlmcykge1xuICAgICAgY29uc3QgZGF0YXNldE5hbWUgPSBwYXRoLmJhc2VuYW1lKGRhdGFzZXQuZmlsZW5hbWUsIFwiLmpzb25cIilcbiAgICAgIGlmIChvcHRpb25zLmRhdGFzZXQgJiYgZGF0YXNldE5hbWUgIT09IG9wdGlvbnMuZGF0YXNldCkge1xuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuXG4gICAgICBjbG9uZUdpdChnaXRHcm91cFVybCwgZGF0YXNldE5hbWUsIGRhdGFEaXIpXG4gICAgICBhbmFseXplQW5kUmVtb3ZlKGRhdGFzZXROYW1lLCBvcHRpb25zKVxuICAgICAgY29uc3QgZGF0YXNldFJhd0Rpcjogc3RyaW5nID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXROYW1lKVxuICAgICAgY29uc3QgZGF0YXNldENsZWFuRGlyOiBzdHJpbmcgPSBkYXRhc2V0UmF3RGlyICsgXCJfbmV0dG95ZVwiXG5cbiAgICAgIGF3YWl0IHByb2Nlc3NGaWxlczxEb2N1bWVudD4oXG4gICAgICAgIGRhdGFzZXRSYXdEaXIsXG4gICAgICAgIGRhdGFzZXRDbGVhbkRpcixcbiAgICAgICAgW1wiZG9jdW1lbnRzXCJdLFxuICAgICAgICBjbGVhbkRvY3VtZW50T3JEaXZpc2lvbixcbiAgICAgICAge1xuICAgICAgICAgIGZyb21Kc29uOiBEb3NzaWVyc0xlZ2lzbGF0aWZzQ29udmVydC50b0RvY3VtZW50LFxuICAgICAgICAgIHRvSnNvbjogRG9zc2llcnNMZWdpc2xhdGlmc0NvbnZlcnQuZG9jdW1lbnRUb0pzb24sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnMsXG4gICAgICAgIGRvd25sb2FkQW5kUGFyc2UsXG4gICAgICApXG4gICAgICBhd2FpdCBwcm9jZXNzRmlsZXM8RG9zc2llclBhcmxlbWVudGFpcmU+KFxuICAgICAgICBkYXRhc2V0UmF3RGlyLFxuICAgICAgICBkYXRhc2V0Q2xlYW5EaXIsXG4gICAgICAgIFtcImRvc3NpZXJzXCJdLFxuICAgICAgICBjbGVhbkRvc3NpZXJQYXJsZW1lbnRhaXJlLFxuICAgICAgICB7XG4gICAgICAgICAgZnJvbUpzb246IERvc3NpZXJzTGVnaXNsYXRpZnNDb252ZXJ0LnRvRG9zc2llclBhcmxlbWVudGFpcmUsXG4gICAgICAgICAgdG9Kc29uOiBEb3NzaWVyc0xlZ2lzbGF0aWZzQ29udmVydC5kb3NzaWVyUGFybGVtZW50YWlyZVRvSnNvbixcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9ucyxcbiAgICAgIClcblxuICAgICAgZXhpdENvZGUgPSBjb21taXRHaXQoZGF0YXNldENsZWFuRGlyLCBvcHRpb25zLCBleGl0Q29kZSwgW1xuICAgICAgICBcImRvY3VtZW50c1wiLFxuICAgICAgICBcImRvc3NpZXJzXCIsXG4gICAgICBdKVxuICAgIH1cbiAgfVxuXG4gIGlmIChlbmFibGVkRGF0YXNldHMgJiBFbmFibGVkRGF0YXNldHMuU2NydXRpbnMpIHtcbiAgICBmb3IgKGNvbnN0IGRhdGFzZXQgb2YgY2hvc2VuRGF0YXNldHMuc2NydXRpbnMpIHtcbiAgICAgIGNvbnN0IGRhdGFzZXROYW1lID0gcGF0aC5iYXNlbmFtZShkYXRhc2V0LmZpbGVuYW1lLCBcIi5qc29uXCIpXG4gICAgICBpZiAob3B0aW9ucy5kYXRhc2V0ICYmIGRhdGFzZXROYW1lICE9PSBvcHRpb25zLmRhdGFzZXQpIHtcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cblxuICAgICAgY2xvbmVHaXQoZ2l0R3JvdXBVcmwsIGRhdGFzZXROYW1lLCBkYXRhRGlyKVxuICAgICAgYW5hbHl6ZUFuZFJlbW92ZShkYXRhc2V0TmFtZSwgb3B0aW9ucylcbiAgICAgIGNvbnN0IGRhdGFzZXRSYXdEaXI6IHN0cmluZyA9IHBhdGguam9pbihkYXRhRGlyLCBkYXRhc2V0TmFtZSlcbiAgICAgIGNvbnN0IGRhdGFzZXRDbGVhbkRpcjogc3RyaW5nID0gZGF0YXNldFJhd0RpciArIFwiX25ldHRveWVcIlxuXG4gICAgICBhd2FpdCBwcm9jZXNzRmlsZXM8U2NydXRpbj4oXG4gICAgICAgIGRhdGFzZXRSYXdEaXIsXG4gICAgICAgIGRhdGFzZXRDbGVhbkRpcixcbiAgICAgICAgW10sXG4gICAgICAgIGNsZWFuU2NydXRpbixcbiAgICAgICAge1xuICAgICAgICAgIGZyb21Kc29uOiBTY3J1dGluc0NvbnZlcnQudG9TY3J1dGluLFxuICAgICAgICAgIHRvSnNvbjogU2NydXRpbnNDb252ZXJ0LnNjcnV0aW5Ub0pzb24sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnMsXG4gICAgICApXG5cbiAgICAgIGV4aXRDb2RlID0gY29tbWl0R2l0KGRhdGFzZXRDbGVhbkRpciwgb3B0aW9ucywgZXhpdENvZGUsIFtcIi5cIl0pXG4gICAgfVxuICB9XG5cbiAgaWYgKGVuYWJsZWREYXRhc2V0cyAmIEVuYWJsZWREYXRhc2V0cy5RdWVzdGlvbnMpIHtcbiAgICBmb3IgKGNvbnN0IGRhdGFzZXQgb2YgZGF0YXNldHMucXVlc3Rpb25zKSB7XG4gICAgICBjb25zdCBkYXRhc2V0TmFtZSA9IHBhdGguYmFzZW5hbWUoZGF0YXNldC5maWxlbmFtZSwgXCIuanNvblwiKVxuICAgICAgaWYgKG9wdGlvbnMuZGF0YXNldCAmJiBkYXRhc2V0TmFtZSAhPT0gb3B0aW9ucy5kYXRhc2V0KSB7XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG5cbiAgICAgIGNsb25lR2l0KGdpdEdyb3VwVXJsLCBkYXRhc2V0TmFtZSwgZGF0YURpcilcbiAgICAgIGFuYWx5emVBbmRSZW1vdmUoZGF0YXNldE5hbWUsIG9wdGlvbnMpXG4gICAgICBjb25zdCBkYXRhc2V0UmF3RGlyOiBzdHJpbmcgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldE5hbWUpXG4gICAgICBjb25zdCBkYXRhc2V0Q2xlYW5EaXI6IHN0cmluZyA9IGRhdGFzZXRSYXdEaXIgKyBcIl9uZXR0b3llXCJcblxuICAgICAgYXdhaXQgcHJvY2Vzc0ZpbGVzPFF1ZXN0aW9uPihcbiAgICAgICAgZGF0YXNldFJhd0RpcixcbiAgICAgICAgZGF0YXNldENsZWFuRGlyLFxuICAgICAgICBbXSxcbiAgICAgICAgY2xlYW5RdWVzdGlvbixcbiAgICAgICAge1xuICAgICAgICAgIGZyb21Kc29uOiBRdWVzdGlvbnNDb252ZXJ0LnRvUXVlc3Rpb24sXG4gICAgICAgICAgdG9Kc29uOiBRdWVzdGlvbnNDb252ZXJ0LnF1ZXN0aW9uVG9Kc29uLFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zLFxuICAgICAgKVxuXG4gICAgICBleGl0Q29kZSA9IGNvbW1pdEdpdChkYXRhc2V0Q2xlYW5EaXIsIG9wdGlvbnMsIGV4aXRDb2RlLCBbXCIuXCJdKVxuICAgIH1cbiAgfVxuXG4gIGlmIChlbmFibGVkRGF0YXNldHMgJiBFbmFibGVkRGF0YXNldHMuQ29tcHRlc1JlbmR1c1NlYW5jZXMpIHtcbiAgICBmb3IgKGNvbnN0IGRhdGFzZXQgb2YgZGF0YXNldHMuY29tcHRlc1JlbmR1c1NlYW5jZXMpIHtcbiAgICAgIGNvbnN0IGRhdGFzZXROYW1lID0gcGF0aC5iYXNlbmFtZShkYXRhc2V0LmZpbGVuYW1lLCBcIi54bWxcIilcbiAgICAgIGlmIChvcHRpb25zLmRhdGFzZXQgJiYgZGF0YXNldE5hbWUgIT09IG9wdGlvbnMuZGF0YXNldCkge1xuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuXG4gICAgICBjbG9uZUdpdChnaXRHcm91cFVybCwgZGF0YXNldE5hbWUsIGRhdGFEaXIpXG4gICAgICBhbmFseXplQW5kUmVtb3ZlKGRhdGFzZXROYW1lLCBvcHRpb25zKVxuICAgICAgY29uc3QgZGF0YXNldFJhd0Rpcjogc3RyaW5nID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXROYW1lKVxuICAgICAgY29uc3QgZGF0YXNldENsZWFuRGlyOiBzdHJpbmcgPSBkYXRhc2V0UmF3RGlyICsgXCJfbmV0dG95ZVwiXG5cbiAgICAgIGF3YWl0IHByb2Nlc3NGaWxlczxDb21wdGVSZW5kdT4oXG4gICAgICAgIGRhdGFzZXRSYXdEaXIsXG4gICAgICAgIGRhdGFzZXRDbGVhbkRpcixcbiAgICAgICAgW10sXG4gICAgICAgIGNsZWFuQ29tcHRlUmVuZHUsXG4gICAgICAgIHtcbiAgICAgICAgICBmcm9tSnNvbjogQ29tcHRlc1JlbmR1c0NvbnZlcnQudG9Db21wdGVSZW5kdSxcbiAgICAgICAgICB0b0pzb246IENvbXB0ZXNSZW5kdXNDb252ZXJ0LmNvbXB0ZVJlbmR1VG9Kc29uLFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zLFxuICAgICAgKVxuXG4gICAgICBleGl0Q29kZSA9IGNvbW1pdEdpdChkYXRhc2V0Q2xlYW5EaXIsIG9wdGlvbnMsIGV4aXRDb2RlLCBbXCIuXCJdKVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlc3RvcmUgc3RhbmRhcmQgY29udmVyc2lvbiBvZiBkYXRlcyB0byBKU09OLlxuICBEYXRlLnByb3RvdHlwZS50b0pTT04gPSBleGlzdGluZ0RhdGVUb0pzb25cblxuICByZXR1cm4gZXhpdENvZGVcbn1cblxuZnVuY3Rpb24gYW5hbHl6ZUFuZFJlbW92ZShkYXRhc2V0TmFtZTogc3RyaW5nLCBvcHRpb25zOiBhbnkpOiBhbnkge1xuICBjb25zdCBkYXRhRGlyID0gb3B0aW9ucy5kYXRhRGlyXG4gIGNvbnN0IGRhdGFzZXRSYXdEaXI6IHN0cmluZyA9IHBhdGguam9pbihkYXRhRGlyLCBkYXRhc2V0TmFtZSlcbiAgY29uc3QgZGF0YXNldENsZWFuRGlyOiBzdHJpbmcgPSBkYXRhc2V0UmF3RGlyICsgXCJfbmV0dG95ZVwiXG4gIGlmICghb3B0aW9ucy5zaWxlbnQpIHtcbiAgICBjb25zb2xlLmxvZyhgQ2xlYW5pbmcgZGlyZWN0b3J5OiAke2RhdGFzZXRDbGVhbkRpcn3igKZgKVxuICB9XG4gIGZzLmVuc3VyZURpclN5bmMoZGF0YXNldENsZWFuRGlyKVxuICBmb3IgKGNvbnN0IGZpbGVuYW1lIG9mIGZzLnJlYWRkaXJTeW5jKGRhdGFzZXRDbGVhbkRpcikpIHtcbiAgICBpZiAoZmlsZW5hbWVbMF0gPT09IFwiLlwiKSB7XG4gICAgICBjb250aW51ZVxuICAgIH1cbiAgICBjb25zdCBwYXRobmFtZSA9IHBhdGguam9pbihkYXRhc2V0Q2xlYW5EaXIsIGZpbGVuYW1lKVxuICAgIGZzLnJlbW92ZVN5bmMocGF0aG5hbWUpXG4gIH1cbn1cblxuZnVuY3Rpb24gY29tbWl0QW5kUHVzaFVpZChcbiAgcmVwb3NpdG9yeURpcjogc3RyaW5nLFxuICBvcHRpb25zOiBhbnksXG4gIHN1YmRpcmVjdG9yaWVzOiBhbnksXG4pOiBib29sZWFuIHtcbiAgbGV0IGVycm9yID0gZmFsc2VcbiAgaWYgKG9wdGlvbnMuY29tbWl0KSB7XG4gICAgZ2l0LnVpZEJyYW5jaFVwZGF0ZShcbiAgICAgIHJlcG9zaXRvcnlEaXIsXG4gICAgICBzdWJkaXJlY3RvcmllcyxcbiAgICAgIG9wdGlvbnNbXCJuby1yZXNldC1hZnRlci1jb21taXRcIl0sXG4gICAgKVxuICAgIGZvciAoY29uc3QgcmVtb3RlIG9mIG9wdGlvbnMucmVtb3RlIHx8IFtdKSB7XG4gICAgICB0cnkge1xuICAgICAgICBnaXQucnVuKHJlcG9zaXRvcnlEaXIsIGBwdXNoIC0tcXVpZXQgJHtyZW1vdGV9IHVpZDp1aWRgKVxuICAgICAgfSBjYXRjaCAoY2hpbGRQcm9jZXNzKSB7XG4gICAgICAgIGVycm9yID0gdHJ1ZVxuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4gZXJyb3Jcbn1cblxuZnVuY3Rpb24gbWFpbihhcmd2OiBhbnkpOiBQcm9taXNlPG51bWJlcj4ge1xuICBjb25zdCBvcHRpb25zID0gcGFyc2VBcmdzKGFyZ3YpXG4gIHJldHVybiBjbGVhblJlb3JnYW5pemVkRGF0YShvcHRpb25zKVxufVxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbmlmIChwcm9jZXNzLmFyZ3ZbMV0uZW5kc1dpdGgoXCJjbGVhbl9yZW9yZ2FuaXplZF9kYXRhLnRzXCIpKSB7XG4gIG1haW4ocHJvY2Vzcy5hcmd2KS50aGVuKHByb2Nlc3MuZXhpdClcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxnQkFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsUUFBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUUsS0FBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUcsU0FBQSxHQUFBSCxPQUFBO0FBV0EsSUFBQUks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
610
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29tbWFuZExpbmVBcmdzIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfZnNFeHRyYSIsIl9wYXRoIiwiX2NsZWFuZXJzIiwiX2RhdGFzZXRzIiwiX3JldHJpZXZlX2RvY3VtZW50cyIsIl9kYXRlcyIsIl9maWxlX3N5c3RlbXMiLCJnaXQiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9hY3RldXJzX2V0X29yZ2FuZXMiLCJfYWdlbmRhcyIsIl9hbWVuZGVtZW50cyIsIl9kb3NzaWVyc19sZWdpc2xhdGlmcyIsIl9zY3J1dGlucyIsIl9xdWVzdGlvbnMiLCJfZGViYXRzIiwiX2NsaV9oZWxwZXJzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsInByb3RvdHlwZSIsIm8iLCJ2YWx1ZSIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiYyIsImFzeW5jSXRlcmF0b3IiLCJ0b1N0cmluZ1RhZyIsImRlZmluZSIsImVudW1lcmFibGUiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsIndyYXAiLCJHZW5lcmF0b3IiLCJjcmVhdGUiLCJDb250ZXh0IiwibWFrZUludm9rZU1ldGhvZCIsInRyeUNhdGNoIiwidHlwZSIsImFyZyIsImgiLCJsIiwiZiIsInMiLCJ5IiwiR2VuZXJhdG9yRnVuY3Rpb24iLCJHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSIsInAiLCJkIiwiZ2V0UHJvdG90eXBlT2YiLCJ2IiwidmFsdWVzIiwiZyIsImRlZmluZUl0ZXJhdG9yTWV0aG9kcyIsImZvckVhY2giLCJfaW52b2tlIiwiQXN5bmNJdGVyYXRvciIsImludm9rZSIsInJlc29sdmUiLCJfX2F3YWl0IiwidGhlbiIsImNhbGxJbnZva2VXaXRoTWV0aG9kQW5kQXJnIiwiRXJyb3IiLCJkb25lIiwibWV0aG9kIiwiZGVsZWdhdGUiLCJtYXliZUludm9rZURlbGVnYXRlIiwic2VudCIsIl9zZW50IiwiZGlzcGF0Y2hFeGNlcHRpb24iLCJhYnJ1cHQiLCJUeXBlRXJyb3IiLCJyZXN1bHROYW1lIiwibmV4dCIsIm5leHRMb2MiLCJwdXNoVHJ5RW50cnkiLCJ0cnlMb2MiLCJjYXRjaExvYyIsImZpbmFsbHlMb2MiLCJhZnRlckxvYyIsInRyeUVudHJpZXMiLCJwdXNoIiwicmVzZXRUcnlFbnRyeSIsImNvbXBsZXRpb24iLCJyZXNldCIsImlzTmFOIiwibGVuZ3RoIiwiZGlzcGxheU5hbWUiLCJpc0dlbmVyYXRvckZ1bmN0aW9uIiwiY29uc3RydWN0b3IiLCJuYW1lIiwibWFyayIsInNldFByb3RvdHlwZU9mIiwiYXdyYXAiLCJhc3luYyIsIlByb21pc2UiLCJrZXlzIiwicmV2ZXJzZSIsInBvcCIsInByZXYiLCJjaGFyQXQiLCJzbGljZSIsInN0b3AiLCJydmFsIiwiaGFuZGxlIiwiY29tcGxldGUiLCJmaW5pc2giLCJfY2F0Y2giLCJkZWxlZ2F0ZVlpZWxkIiwiX3RvQ29uc3VtYWJsZUFycmF5IiwiX2FycmF5V2l0aG91dEhvbGVzIiwiX2l0ZXJhYmxlVG9BcnJheSIsIl91bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheSIsIl9ub25JdGVyYWJsZVNwcmVhZCIsIkFycmF5IiwiZnJvbSIsImlzQXJyYXkiLCJfYXJyYXlMaWtlVG9BcnJheSIsIl9jcmVhdGVGb3JPZkl0ZXJhdG9ySGVscGVyIiwiX24iLCJGIiwidG9TdHJpbmciLCJ0ZXN0IiwiYXN5bmNHZW5lcmF0b3JTdGVwIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJhcmd1bWVudHMiLCJhcHBseSIsIl9uZXh0IiwiX3Rocm93IiwicGFyc2VBcmdzIiwiYXJndiIsIm9wdGlvbnNEZWZpbml0aW9ucyIsImNsb25lT3B0aW9uIiwiY29tbWl0T3B0aW9uIiwicmVtb3RlT3B0aW9uIiwibGVnaXNsYXR1cmVPcHRpb24iLCJjYXRlZ29yaWVzT3B0aW9uIiwic2lsZW50T3B0aW9uIiwidmVyYm9zZU9wdGlvbiIsImRhdGFEaXJEZWZhdWx0T3B0aW9uIiwicHVsbE9wdGlvbiIsImZldGNoRG9jdW1lbnRzT3B0aW9uIiwicGFyc2VEb2N1bWVudHNPcHRpb24iLCJkb2N1bWVudEZvcm1hdE9wdGlvbiIsImFsaWFzIiwiaGVscCIsIlN0cmluZyIsIkJvb2xlYW4iLCJvcHRpb25zIiwiY29tbWFuZExpbmVBcmdzIiwiY2xvbmVHaXQiLCJnaXRHcm91cFVybCIsImRhdGFzZXROYW1lIiwiZGF0YURpciIsImNsb25lIiwiY29uY2F0IiwiY29tbWl0R2l0IiwiZGF0YXNldENsZWFuRGlyIiwiZXhpdENvZGUiLCJzdWJkaXJlY3RvcmllcyIsImNvbW1pdCIsImVycm9yQ29kZSIsImNvbW1pdEFuZFB1c2giLCJyZW1vdGUiLCJjb21taXRBbmRQdXNoVWlkIiwiY2xlYW5BbmRWYWxpZGF0ZURhdGEiLCJkYXRhIiwiY2xlYW5lciIsImZyb21Kc29uIiwidG9Kc29uIiwibm9WYWxpZGF0ZSIsImpzb25EYXRhIiwiSlNPTiIsInN0cmluZ2lmeSIsInZhbGlkYXRlZERhdGEiLCJwcm9jZXNzRmlsZXMiLCJfeCIsIl94MiIsIl94MyIsIl94NCIsIl94NSIsIl94NiIsIl94NyIsIl9wcm9jZXNzRmlsZXMiLCJfY2FsbGVlIiwiZGF0YXNldFJhd0RpciIsIndhbGtEaXJQYXJhbXMiLCJkYXRhQ29udmVydGVyIiwicG9zdFByb2Nlc3NvciIsIl9pdGVyYXRvcjMiLCJfc3RlcDMiLCJmaWxlUGF0aEFycmF5IiwiZmlsZW5hbWUiLCJyYXdGaWxlUGF0aCIsInJhd0pzb24iLCJ2YWxpZGF0ZURhdGEiLCJjbGVhbkpzb24iLCJjbGVhbkZpbGVQYXRoIiwiX2NhbGxlZSQiLCJfY29udGV4dCIsIndhbGtEaXIiLCJlbmRzV2l0aCIsInBhdGgiLCJqb2luIiwiZnMiLCJyZWFkRmlsZVN5bmMiLCJlbmNvZGluZyIsInZlcmJvc2UiLCJjb25zb2xlIiwibG9nIiwicGFyc2UiLCJlbnN1cmVEaXJTeW5jIiwiZGlybmFtZSIsIndyaXRlRmlsZVN5bmMiLCJ0MCIsImNsZWFuUmVvcmdhbml6ZWREYXRhIiwiX3g4IiwiX2NsZWFuUmVvcmdhbml6ZWREYXRhIiwiX2NhbGxlZTIiLCJfb3B0aW9ucyRjbG9uZSIsImVuYWJsZWREYXRhc2V0cyIsImNob3NlbkRhdGFzZXRzIiwiX2l0ZXJhdG9yNCIsIl9zdGVwNCIsImRhdGFzZXQiLCJfaXRlcmF0b3I1IiwiX3N0ZXA1IiwiX2RhdGFzZXQiLCJfZGF0YXNldE5hbWUiLCJfZGF0YXNldFJhd0RpciIsIl9kYXRhc2V0Q2xlYW5EaXIiLCJfaXRlcmF0b3I2IiwiX3N0ZXA2IiwiX2RhdGFzZXQyIiwiX2RhdGFzZXROYW1lMiIsIl9kYXRhc2V0UmF3RGlyMiIsIl9kYXRhc2V0Q2xlYW5EaXIyIiwiX2l0ZXJhdG9yNyIsIl9zdGVwNyIsIl9kYXRhc2V0MyIsIl9kYXRhc2V0TmFtZTMiLCJfZGF0YXNldFJhd0RpcjMiLCJfZGF0YXNldENsZWFuRGlyMyIsIl9pdGVyYXRvcjgiLCJfc3RlcDgiLCJfZGF0YXNldDQiLCJfZGF0YXNldE5hbWU0IiwiX2RhdGFzZXRSYXdEaXI0IiwiX2RhdGFzZXRDbGVhbkRpcjQiLCJfaXRlcmF0b3I5IiwiX3N0ZXA5IiwiX2RhdGFzZXQ1IiwiX2RhdGFzZXROYW1lNSIsIl9kYXRhc2V0UmF3RGlyNSIsIl9kYXRhc2V0Q2xlYW5EaXI1IiwiX2l0ZXJhdG9yMTAiLCJfc3RlcDEwIiwiX2RhdGFzZXQ2IiwiX2RhdGFzZXROYW1lNiIsIl9kYXRhc2V0UmF3RGlyNiIsIl9kYXRhc2V0Q2xlYW5EaXI2IiwiX2NhbGxlZTIkIiwiX2NvbnRleHQyIiwiRGF0ZSIsInRvSlNPTiIsInBhdGNoZWREYXRlVG9Kc29uIiwidHJpbSIsInJlcGxhY2UiLCJnZXRFbmFibGVkRGF0YXNldHMiLCJjYXRlZ29yaWVzIiwiZmlsdGVyQnlMZWdpc2xhdHVyZSIsImRhdGFzZXRzIiwibGVnaXNsYXR1cmUiLCJFbmFibGVkRGF0YXNldHMiLCJBY3RldXJzRXRPcmdhbmVzIiwiYWN0ZXVyc0V0T3JnYW5lcyIsImJhc2VuYW1lIiwicHVsbCIsInJlc2V0QW5kUHVsbCIsImFuYWx5emVBbmRSZW1vdmUiLCJjbGVhbkFjdGV1ciIsIkFjdGV1cnNFdE9yZ2FuZXNDb252ZXJ0IiwidG9BY3RldXIiLCJhY3RldXJUb0pzb24iLCJjbGVhbk9yZ2FuZSIsInRvT3JnYW5lIiwib3JnYW5lVG9Kc29uIiwiQWdlbmRhcyIsImFnZW5kYXMiLCJjbGVhblJldW5pb24iLCJBZ2VuZGFzQ29udmVydCIsInRvUmV1bmlvbiIsInJldW5pb25Ub0pzb24iLCJ0MSIsIkFtZW5kZW1lbnRzIiwiYW1lbmRlbWVudHMiLCJjbGVhbkFtZW5kZW1lbnQiLCJBbWVuZGVtZW50c0NvbnZlcnQiLCJ0b0FtZW5kZW1lbnQiLCJhbWVuZGVtZW50VG9Kc29uIiwidDIiLCJEb3NzaWVyc0xlZ2lzbGF0aWZzIiwiZG9zc2llcnNMZWdpc2xhdGlmcyIsImNsZWFuRG9jdW1lbnRPckRpdmlzaW9uIiwiRG9zc2llcnNMZWdpc2xhdGlmc0NvbnZlcnQiLCJ0b0RvY3VtZW50IiwiZG9jdW1lbnRUb0pzb24iLCJkb3dubG9hZEFuZFBhcnNlIiwiY2xlYW5Eb3NzaWVyUGFybGVtZW50YWlyZSIsInRvRG9zc2llclBhcmxlbWVudGFpcmUiLCJkb3NzaWVyUGFybGVtZW50YWlyZVRvSnNvbiIsInQzIiwiU2NydXRpbnMiLCJzY3J1dGlucyIsImNsZWFuU2NydXRpbiIsIlNjcnV0aW5zQ29udmVydCIsInRvU2NydXRpbiIsInNjcnV0aW5Ub0pzb24iLCJ0NCIsIlF1ZXN0aW9ucyIsInF1ZXN0aW9ucyIsImNsZWFuUXVlc3Rpb24iLCJRdWVzdGlvbnNDb252ZXJ0IiwidG9RdWVzdGlvbiIsInF1ZXN0aW9uVG9Kc29uIiwidDUiLCJDb21wdGVzUmVuZHVzU2VhbmNlcyIsImNvbXB0ZXNSZW5kdXNTZWFuY2VzIiwiY2xlYW5Db21wdGVSZW5kdSIsIkNvbXB0ZXNSZW5kdXNDb252ZXJ0IiwidG9Db21wdGVSZW5kdSIsImNvbXB0ZVJlbmR1VG9Kc29uIiwidDYiLCJleGlzdGluZ0RhdGVUb0pzb24iLCJzaWxlbnQiLCJfaXRlcmF0b3IiLCJyZWFkZGlyU3luYyIsIl9zdGVwIiwicGF0aG5hbWUiLCJyZW1vdmVTeW5jIiwiZXJyIiwicmVwb3NpdG9yeURpciIsImVycm9yIiwidWlkQnJhbmNoVXBkYXRlIiwiX2l0ZXJhdG9yMiIsIl9zdGVwMiIsInJ1biIsImNoaWxkUHJvY2VzcyIsIm1haW4iLCJwcm9jZXNzIiwiZXhpdCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JpcHRzL2NsZWFuX3Jlb3JnYW5pemVkX2RhdGEudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNvbW1hbmRMaW5lQXJncyBmcm9tIFwiY29tbWFuZC1saW5lLWFyZ3NcIlxuaW1wb3J0IGZzIGZyb20gXCJmcy1leHRyYVwiXG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiXG5pbXBvcnQge1xuICBjbGVhbkFjdGV1cixcbiAgY2xlYW5BbWVuZGVtZW50LFxuICBjbGVhbkRvY3VtZW50T3JEaXZpc2lvbixcbiAgY2xlYW5Eb3NzaWVyUGFybGVtZW50YWlyZSxcbiAgY2xlYW5PcmdhbmUsXG4gIGNsZWFuUmV1bmlvbixcbiAgY2xlYW5TY3J1dGluLFxuICBjbGVhblF1ZXN0aW9uLFxuICBjbGVhbkNvbXB0ZVJlbmR1LFxufSBmcm9tIFwiLi4vY2xlYW5lcnNcIlxuaW1wb3J0IHtcbiAgZGF0YXNldHMsXG4gIEVuYWJsZWREYXRhc2V0cyxcbiAgZ2V0RW5hYmxlZERhdGFzZXRzLFxuICBmaWx0ZXJCeUxlZ2lzbGF0dXJlLFxufSBmcm9tIFwiLi4vZGF0YXNldHNcIlxuaW1wb3J0IHsgZG93bmxvYWRBbmRQYXJzZSB9IGZyb20gXCIuL3JldHJpZXZlX2RvY3VtZW50c1wiXG5pbXBvcnQgeyBleGlzdGluZ0RhdGVUb0pzb24sIHBhdGNoZWREYXRlVG9Kc29uIH0gZnJvbSBcIi4uL2RhdGVzXCJcbmltcG9ydCB7IHdhbGtEaXIgfSBmcm9tIFwiLi4vZmlsZV9zeXN0ZW1zXCJcbmltcG9ydCAqIGFzIGdpdCBmcm9tIFwiLi4vZ2l0XCJcbmltcG9ydCB7XG4gIEFjdGV1cixcbiAgQ29udmVydCBhcyBBY3RldXJzRXRPcmdhbmVzQ29udmVydCxcbiAgT3JnYW5lLFxufSBmcm9tIFwiLi4vdHlwZXMvYWN0ZXVyc19ldF9vcmdhbmVzXCJcbmltcG9ydCB7IENvbnZlcnQgYXMgQWdlbmRhc0NvbnZlcnQsIFJldW5pb24gfSBmcm9tIFwiLi4vdHlwZXMvYWdlbmRhc1wiXG5pbXBvcnQgeyBBbWVuZGVtZW50LCBDb252ZXJ0IGFzIEFtZW5kZW1lbnRzQ29udmVydCB9IGZyb20gXCIuLi90eXBlcy9hbWVuZGVtZW50c1wiXG5pbXBvcnQge1xuICBDb252ZXJ0IGFzIERvc3NpZXJzTGVnaXNsYXRpZnNDb252ZXJ0LFxuICBEb2N1bWVudCxcbiAgRG9zc2llclBhcmxlbWVudGFpcmUsXG59IGZyb20gXCIuLi90eXBlcy9kb3NzaWVyc19sZWdpc2xhdGlmc1wiXG5pbXBvcnQgeyBDb252ZXJ0IGFzIFNjcnV0aW5zQ29udmVydCwgU2NydXRpbiB9IGZyb20gXCIuLi90eXBlcy9zY3J1dGluc1wiXG5pbXBvcnQgeyBDb252ZXJ0IGFzIFF1ZXN0aW9uc0NvbnZlcnQsIFF1ZXN0aW9uIH0gZnJvbSBcIi4uL3R5cGVzL3F1ZXN0aW9uc1wiXG5pbXBvcnQgeyBDb252ZXJ0IGFzIENvbXB0ZXNSZW5kdXNDb252ZXJ0LCBDb21wdGVSZW5kdSB9IGZyb20gXCIuLi90eXBlcy9kZWJhdHNcIlxuaW1wb3J0IHtcbiAgY2xvbmVPcHRpb24sXG4gIGNvbW1pdE9wdGlvbixcbiAgcmVtb3RlT3B0aW9uLFxuICBsZWdpc2xhdHVyZU9wdGlvbixcbiAgY2F0ZWdvcmllc09wdGlvbixcbiAgZGF0YURpckRlZmF1bHRPcHRpb24sXG4gIHNpbGVudE9wdGlvbixcbiAgdmVyYm9zZU9wdGlvbixcbiAgcHVsbE9wdGlvbixcbiAgZmV0Y2hEb2N1bWVudHNPcHRpb24sXG4gIHBhcnNlRG9jdW1lbnRzT3B0aW9uLFxuICBkb2N1bWVudEZvcm1hdE9wdGlvbixcbn0gZnJvbSBcIi4vc2hhcmVkL2NsaV9oZWxwZXJzXCJcblxuZnVuY3Rpb24gcGFyc2VBcmdzKGFyZ3Y6IHN0cmluZ1tdKTogYW55IHtcbiAgY29uc3Qgb3B0aW9uc0RlZmluaXRpb25zID0gW1xuICAgIGNsb25lT3B0aW9uLFxuICAgIGNvbW1pdE9wdGlvbixcbiAgICByZW1vdGVPcHRpb24sXG4gICAgbGVnaXNsYXR1cmVPcHRpb24sXG4gICAgY2F0ZWdvcmllc09wdGlvbixcbiAgICBzaWxlbnRPcHRpb24sXG4gICAgdmVyYm9zZU9wdGlvbixcbiAgICBkYXRhRGlyRGVmYXVsdE9wdGlvbixcbiAgICBwdWxsT3B0aW9uLFxuICAgIGZldGNoRG9jdW1lbnRzT3B0aW9uLFxuICAgIHBhcnNlRG9jdW1lbnRzT3B0aW9uLFxuICAgIGRvY3VtZW50Rm9ybWF0T3B0aW9uLFxuICAgIHtcbiAgICAgIGFsaWFzOiBcImRcIixcbiAgICAgIGhlbHA6IFwic2luZ2xlIGRhdGFzZXQgdG8gcmVvcmdhbml6ZVwiLFxuICAgICAgbmFtZTogXCJkYXRhc2V0XCIsXG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgfSxcbiAgICB7XG4gICAgICBoZWxwOiBcImRvIG5vdCByZXNldCAtLWhhcmQgYWZ0ZXIgY29tbWl0IHRvIHNhdmUgSS9PIGlmIHRoZSB3b3JraW5nIHRyZWUgaXMgdG8gYmUgZGlzY2FyZGVkXCIsXG4gICAgICBuYW1lOiBcIm5vLXJlc2V0LWFmdGVyLWNvbW1pdFwiLFxuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICB9LFxuICAgIHtcbiAgICAgIGFsaWFzOiBcIlZcIixcbiAgICAgIGhlbHA6IFwiZG9uJ3QgdmFsaWRhdGUgZGF0YVwiLFxuICAgICAgbmFtZTogXCJuby12YWxpZGF0ZVwiLFxuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICB9LFxuICBdXG4gIGNvbnN0IG9wdGlvbnMgPSBjb21tYW5kTGluZUFyZ3Mob3B0aW9uc0RlZmluaXRpb25zLCB7XG4gICAgYXJndjogYXJndixcbiAgfSlcbiAgcmV0dXJuIG9wdGlvbnNcbn1cblxuZnVuY3Rpb24gY2xvbmVHaXQoXG4gIGdpdEdyb3VwVXJsOiBzdHJpbmcgfCB1bmRlZmluZWQsXG4gIGRhdGFzZXROYW1lOiBzdHJpbmcsXG4gIGRhdGFEaXI6IHN0cmluZyxcbik6IHZvaWQge1xuICBnaXQuY2xvbmUoZ2l0R3JvdXBVcmwsIGAke2RhdGFzZXROYW1lfV9uZXR0b3llYCwgZGF0YURpcilcbn1cblxuZnVuY3Rpb24gY29tbWl0R2l0KFxuICBkYXRhc2V0Q2xlYW5EaXI6IHN0cmluZyxcbiAgb3B0aW9uczogYW55LFxuICBleGl0Q29kZTogbnVtYmVyLFxuICBzdWJkaXJlY3RvcmllczogYW55LFxuKTogbnVtYmVyIHtcbiAgaWYgKG9wdGlvbnMuY29tbWl0KSB7XG4gICAgY29uc3QgZXJyb3JDb2RlID0gZ2l0LmNvbW1pdEFuZFB1c2goXG4gICAgICBkYXRhc2V0Q2xlYW5EaXIsXG4gICAgICBcIk5vdXZlbGxlIG1vaXNzb25cIixcbiAgICAgIG9wdGlvbnMucmVtb3RlLFxuICAgIClcbiAgICBpZiAoXG4gICAgICAoZXhpdENvZGUgPT09IDEwICYmIGVycm9yQ29kZSAhPT0gMTApIHx8XG4gICAgICAoZXhpdENvZGUgPT09IDAgJiYgZXJyb3JDb2RlICE9PSAwICYmIGVycm9yQ29kZSAhPT0gMTApXG4gICAgKSB7XG4gICAgICBleGl0Q29kZSA9IGVycm9yQ29kZVxuICAgIH1cbiAgfVxuICBpZiAoXG4gICAgY29tbWl0QW5kUHVzaFVpZChkYXRhc2V0Q2xlYW5EaXIsIG9wdGlvbnMsIHN1YmRpcmVjdG9yaWVzKSAmJlxuICAgIChleGl0Q29kZSA9PT0gMCB8fCBleGl0Q29kZSA9PT0gMTApXG4gICkge1xuICAgIGV4aXRDb2RlID0gMVxuICB9XG4gIHJldHVybiBleGl0Q29kZVxufVxuXG5mdW5jdGlvbiBjbGVhbkFuZFZhbGlkYXRlRGF0YTxUPihcbiAgZGF0YTogYW55LFxuICBjbGVhbmVyOiAoZGF0YTogVCkgPT4gdm9pZCxcbiAgZnJvbUpzb246IChqc29uOiBzdHJpbmcpID0+IFQsXG4gIHRvSnNvbjogKGRhdGE6IFQpID0+IHN0cmluZyxcbiAgbm9WYWxpZGF0ZTogQm9vbGVhbixcbik6IHN0cmluZyB8IG51bGwge1xuICBjbGVhbmVyKGRhdGEpXG4gIGlmICh0eXBlb2YgZGF0YSA9PT0gXCJvYmplY3RcIiAmJiBPYmplY3Qua2V5cyhkYXRhKS5sZW5ndGggPT09IDApIHtcbiAgICAvLyBCeSBjb252ZW50aW9uOiBhbiBlbXB0eSBvYmplY3QgbXVzdCBiZSBkZWxldGVkLlxuICAgIHJldHVybiBudWxsXG4gIH1cbiAgY29uc3QganNvbkRhdGEgPSBKU09OLnN0cmluZ2lmeShkYXRhLCBudWxsLCAyKVxuICBpZiAoIW5vVmFsaWRhdGUpIHtcbiAgICByZXR1cm4ganNvbkRhdGFcbiAgfSBlbHNlIHtcbiAgICBjb25zdCB2YWxpZGF0ZWREYXRhOiBUID0gZnJvbUpzb24oanNvbkRhdGEpXG4gICAgcmV0dXJuIHRvSnNvbih2YWxpZGF0ZWREYXRhKVxuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHByb2Nlc3NGaWxlczxUPihcbiAgZGF0YXNldFJhd0Rpcjogc3RyaW5nLFxuICBkYXRhc2V0Q2xlYW5EaXI6IHN0cmluZyxcbiAgd2Fsa0RpclBhcmFtczogYW55W10sXG4gIGNsZWFuZXI6IGFueSxcbiAgZGF0YUNvbnZlcnRlcjogeyBmcm9tSnNvbjogYW55OyB0b0pzb246IGFueSB9LFxuICBvcHRpb25zOiBhbnksXG4gIHBvc3RQcm9jZXNzb3I/OiBhbnksXG4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgZm9yIChjb25zdCBmaWxlUGF0aEFycmF5IG9mIHdhbGtEaXIoZGF0YXNldFJhd0Rpciwgd2Fsa0RpclBhcmFtcykpIHtcbiAgICBjb25zdCBmaWxlbmFtZSA9IGZpbGVQYXRoQXJyYXlbZmlsZVBhdGhBcnJheS5sZW5ndGggLSAxXVxuICAgIGlmICghZmlsZW5hbWUuZW5kc1dpdGgoXCIuanNvblwiKSkgY29udGludWVcbiAgICBjb25zdCByYXdGaWxlUGF0aCA9IHBhdGguam9pbihkYXRhc2V0UmF3RGlyLCAuLi5maWxlUGF0aEFycmF5KVxuICAgIGNvbnN0IHJhd0pzb24gPSBmcy5yZWFkRmlsZVN5bmMocmF3RmlsZVBhdGgsIHsgZW5jb2Rpbmc6IFwidXRmOFwiIH0pXG4gICAgaWYgKG9wdGlvbnMudmVyYm9zZSkgY29uc29sZS5sb2coYENsZWFuaW5nIGZpbGU6ICR7cmF3RmlsZVBhdGh9Li4uYClcbiAgICBjb25zdCBkYXRhID0gSlNPTi5wYXJzZShyYXdKc29uKVxuICAgIGNvbnN0IHZhbGlkYXRlRGF0YSA9ICFvcHRpb25zW1wibm8tdmFsaWRhdGVcIl1cbiAgICBjb25zdCBjbGVhbkpzb24gPSBjbGVhbkFuZFZhbGlkYXRlRGF0YTxUPihcbiAgICAgIGRhdGEsXG4gICAgICBjbGVhbmVyLFxuICAgICAgZGF0YUNvbnZlcnRlci5mcm9tSnNvbixcbiAgICAgIGRhdGFDb252ZXJ0ZXIudG9Kc29uLFxuICAgICAgdmFsaWRhdGVEYXRhLFxuICAgIClcblxuICAgIGlmIChjbGVhbkpzb24gIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IGNsZWFuRmlsZVBhdGggPSBwYXRoLmpvaW4oZGF0YXNldENsZWFuRGlyLCAuLi5maWxlUGF0aEFycmF5KVxuICAgICAgZnMuZW5zdXJlRGlyU3luYyhwYXRoLmRpcm5hbWUoY2xlYW5GaWxlUGF0aCkpXG4gICAgICBmcy53cml0ZUZpbGVTeW5jKGNsZWFuRmlsZVBhdGgsIGNsZWFuSnNvbiwgeyBlbmNvZGluZzogXCJ1dGY4XCIgfSlcblxuICAgICAgaWYgKHBvc3RQcm9jZXNzb3IpIHtcbiAgICAgICAgYXdhaXQgcG9zdFByb2Nlc3NvcihkYXRhLCBkYXRhc2V0Q2xlYW5EaXIsIG9wdGlvbnMpXG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGNsZWFuUmVvcmdhbml6ZWREYXRhKG9wdGlvbnM6IGFueSk6IFByb21pc2U8bnVtYmVyPiB7XG4gIGNvbnN0IGRhdGFEaXI6IHN0cmluZyA9IG9wdGlvbnMuZGF0YURpclxuICBEYXRlLnByb3RvdHlwZS50b0pTT04gPSBwYXRjaGVkRGF0ZVRvSnNvblxuICBsZXQgZXhpdENvZGUgPSBvcHRpb25zLmNvbW1pdCA/IDEwIDogMFxuICBjb25zdCBnaXRHcm91cFVybCA9IG9wdGlvbnMuY2xvbmU/LnRyaW0oKS5yZXBsYWNlKC9cXC8rJC8sIFwiXCIpXG4gIGNvbnN0IGVuYWJsZWREYXRhc2V0cyA9IGdldEVuYWJsZWREYXRhc2V0cyhvcHRpb25zLmNhdGVnb3JpZXMpXG4gIGxldCBjaG9zZW5EYXRhc2V0cyA9IGZpbHRlckJ5TGVnaXNsYXR1cmUoZGF0YXNldHMsIG9wdGlvbnMubGVnaXNsYXR1cmUpXG5cbiAgaWYgKGVuYWJsZWREYXRhc2V0cyAmIEVuYWJsZWREYXRhc2V0cy5BY3RldXJzRXRPcmdhbmVzKSB7XG4gICAgZm9yIChjb25zdCBkYXRhc2V0IG9mIGNob3NlbkRhdGFzZXRzLmFjdGV1cnNFdE9yZ2FuZXMpIHtcbiAgICAgIGNvbnN0IGRhdGFzZXROYW1lID0gcGF0aC5iYXNlbmFtZShkYXRhc2V0LmZpbGVuYW1lLCBcIi5qc29uXCIpXG4gICAgICBpZiAob3B0aW9ucy5kYXRhc2V0ICYmIGRhdGFzZXROYW1lICE9PSBvcHRpb25zLmRhdGFzZXQpIHtcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIGNsb25lR2l0KGdpdEdyb3VwVXJsLCBkYXRhc2V0TmFtZSwgZGF0YURpcilcblxuICAgICAgY29uc3QgZGF0YXNldFJhd0Rpcjogc3RyaW5nID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXROYW1lKVxuICAgICAgY29uc3QgZGF0YXNldENsZWFuRGlyOiBzdHJpbmcgPSBkYXRhc2V0UmF3RGlyICsgXCJfbmV0dG95ZVwiXG4gICAgICBpZiAob3B0aW9ucy5wdWxsKSB7XG4gICAgICAgIGdpdC5yZXNldEFuZFB1bGwoZGF0YXNldENsZWFuRGlyKVxuICAgICAgfVxuXG4gICAgICBhbmFseXplQW5kUmVtb3ZlKGRhdGFzZXROYW1lLCBvcHRpb25zKVxuICAgICAgYXdhaXQgcHJvY2Vzc0ZpbGVzPEFjdGV1cj4oXG4gICAgICAgIGRhdGFzZXRSYXdEaXIsXG4gICAgICAgIGRhdGFzZXRDbGVhbkRpcixcbiAgICAgICAgW1wiYWN0ZXVyc1wiXSxcbiAgICAgICAgY2xlYW5BY3RldXIsXG4gICAgICAgIHtcbiAgICAgICAgICBmcm9tSnNvbjogQWN0ZXVyc0V0T3JnYW5lc0NvbnZlcnQudG9BY3RldXIsXG4gICAgICAgICAgdG9Kc29uOiBBY3RldXJzRXRPcmdhbmVzQ29udmVydC5hY3RldXJUb0pzb24sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnMsXG4gICAgICApXG4gICAgICBhd2FpdCBwcm9jZXNzRmlsZXM8T3JnYW5lPihcbiAgICAgICAgZGF0YXNldFJhd0RpcixcbiAgICAgICAgZGF0YXNldENsZWFuRGlyLFxuICAgICAgICBbXCJvcmdhbmVzXCJdLFxuICAgICAgICBjbGVhbk9yZ2FuZSxcbiAgICAgICAge1xuICAgICAgICAgIGZyb21Kc29uOiBBY3RldXJzRXRPcmdhbmVzQ29udmVydC50b09yZ2FuZSxcbiAgICAgICAgICB0b0pzb246IEFjdGV1cnNFdE9yZ2FuZXNDb252ZXJ0Lm9yZ2FuZVRvSnNvbixcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9ucyxcbiAgICAgIClcblxuICAgICAgZXhpdENvZGUgPSBjb21taXRHaXQoZGF0YXNldENsZWFuRGlyLCBvcHRpb25zLCBleGl0Q29kZSwgW1xuICAgICAgICBcImFjdGV1cnNcIixcbiAgICAgICAgXCJvcmdhbmVzXCIsXG4gICAgICBdKVxuICAgIH1cbiAgfVxuXG4gIGlmIChlbmFibGVkRGF0YXNldHMgJiBFbmFibGVkRGF0YXNldHMuQWdlbmRhcykge1xuICAgIGZvciAoY29uc3QgZGF0YXNldCBvZiBjaG9zZW5EYXRhc2V0cy5hZ2VuZGFzKSB7XG4gICAgICBjb25zdCBkYXRhc2V0TmFtZSA9IHBhdGguYmFzZW5hbWUoZGF0YXNldC5maWxlbmFtZSwgXCIuanNvblwiKVxuICAgICAgaWYgKG9wdGlvbnMuZGF0YXNldCAmJiBkYXRhc2V0TmFtZSAhPT0gb3B0aW9ucy5kYXRhc2V0KSB7XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG5cbiAgICAgIGNsb25lR2l0KGdpdEdyb3VwVXJsLCBkYXRhc2V0TmFtZSwgZGF0YURpcilcbiAgICAgIGFuYWx5emVBbmRSZW1vdmUoZGF0YXNldE5hbWUsIG9wdGlvbnMpXG4gICAgICBjb25zdCBkYXRhc2V0UmF3RGlyOiBzdHJpbmcgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldE5hbWUpXG4gICAgICBjb25zdCBkYXRhc2V0Q2xlYW5EaXI6IHN0cmluZyA9IGRhdGFzZXRSYXdEaXIgKyBcIl9uZXR0b3llXCJcblxuICAgICAgYXdhaXQgcHJvY2Vzc0ZpbGVzPFJldW5pb24+KFxuICAgICAgICBkYXRhc2V0UmF3RGlyLFxuICAgICAgICBkYXRhc2V0Q2xlYW5EaXIsXG4gICAgICAgIFtdLFxuICAgICAgICBjbGVhblJldW5pb24sXG4gICAgICAgIHtcbiAgICAgICAgICBmcm9tSnNvbjogQWdlbmRhc0NvbnZlcnQudG9SZXVuaW9uLFxuICAgICAgICAgIHRvSnNvbjogQWdlbmRhc0NvbnZlcnQucmV1bmlvblRvSnNvbixcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9ucyxcbiAgICAgIClcblxuICAgICAgZXhpdENvZGUgPSBjb21taXRHaXQoZGF0YXNldENsZWFuRGlyLCBvcHRpb25zLCBleGl0Q29kZSwgW1wiLlwiXSlcbiAgICB9XG4gIH1cblxuICBpZiAoZW5hYmxlZERhdGFzZXRzICYgRW5hYmxlZERhdGFzZXRzLkFtZW5kZW1lbnRzKSB7XG4gICAgZm9yIChjb25zdCBkYXRhc2V0IG9mIGNob3NlbkRhdGFzZXRzLmFtZW5kZW1lbnRzKSB7XG4gICAgICBjb25zdCBkYXRhc2V0TmFtZSA9IHBhdGguYmFzZW5hbWUoZGF0YXNldC5maWxlbmFtZSwgXCIuanNvblwiKVxuICAgICAgaWYgKG9wdGlvbnMuZGF0YXNldCAmJiBkYXRhc2V0TmFtZSAhPT0gb3B0aW9ucy5kYXRhc2V0KSB7XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG5cbiAgICAgIGNsb25lR2l0KGdpdEdyb3VwVXJsLCBkYXRhc2V0TmFtZSwgZGF0YURpcilcbiAgICAgIGFuYWx5emVBbmRSZW1vdmUoZGF0YXNldE5hbWUsIG9wdGlvbnMpXG4gICAgICBjb25zdCBkYXRhc2V0UmF3RGlyOiBzdHJpbmcgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldE5hbWUpXG4gICAgICBjb25zdCBkYXRhc2V0Q2xlYW5EaXI6IHN0cmluZyA9IGRhdGFzZXRSYXdEaXIgKyBcIl9uZXR0b3llXCJcblxuICAgICAgYXdhaXQgcHJvY2Vzc0ZpbGVzPEFtZW5kZW1lbnQ+KFxuICAgICAgICBkYXRhc2V0UmF3RGlyLFxuICAgICAgICBkYXRhc2V0Q2xlYW5EaXIsXG4gICAgICAgIFtdLFxuICAgICAgICBjbGVhbkFtZW5kZW1lbnQsXG4gICAgICAgIHtcbiAgICAgICAgICBmcm9tSnNvbjogQW1lbmRlbWVudHNDb252ZXJ0LnRvQW1lbmRlbWVudCxcbiAgICAgICAgICB0b0pzb246IEFtZW5kZW1lbnRzQ29udmVydC5hbWVuZGVtZW50VG9Kc29uLFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zLFxuICAgICAgKVxuXG4gICAgICBleGl0Q29kZSA9IGNvbW1pdEdpdChkYXRhc2V0Q2xlYW5EaXIsIG9wdGlvbnMsIGV4aXRDb2RlLCBbXCIuXCJdKVxuICAgIH1cbiAgfVxuXG4gIGlmIChlbmFibGVkRGF0YXNldHMgJiBFbmFibGVkRGF0YXNldHMuRG9zc2llcnNMZWdpc2xhdGlmcykge1xuICAgIGZvciAoY29uc3QgZGF0YXNldCBvZiBjaG9zZW5EYXRhc2V0cy5kb3NzaWVyc0xlZ2lzbGF0aWZzKSB7XG4gICAgICBjb25zdCBkYXRhc2V0TmFtZSA9IHBhdGguYmFzZW5hbWUoZGF0YXNldC5maWxlbmFtZSwgXCIuanNvblwiKVxuICAgICAgaWYgKG9wdGlvbnMuZGF0YXNldCAmJiBkYXRhc2V0TmFtZSAhPT0gb3B0aW9ucy5kYXRhc2V0KSB7XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG5cbiAgICAgIGNsb25lR2l0KGdpdEdyb3VwVXJsLCBkYXRhc2V0TmFtZSwgZGF0YURpcilcbiAgICAgIGFuYWx5emVBbmRSZW1vdmUoZGF0YXNldE5hbWUsIG9wdGlvbnMpXG4gICAgICBjb25zdCBkYXRhc2V0UmF3RGlyOiBzdHJpbmcgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldE5hbWUpXG4gICAgICBjb25zdCBkYXRhc2V0Q2xlYW5EaXI6IHN0cmluZyA9IGRhdGFzZXRSYXdEaXIgKyBcIl9uZXR0b3llXCJcblxuICAgICAgYXdhaXQgcHJvY2Vzc0ZpbGVzPERvY3VtZW50PihcbiAgICAgICAgZGF0YXNldFJhd0RpcixcbiAgICAgICAgZGF0YXNldENsZWFuRGlyLFxuICAgICAgICBbXCJkb2N1bWVudHNcIl0sXG4gICAgICAgIGNsZWFuRG9jdW1lbnRPckRpdmlzaW9uLFxuICAgICAgICB7XG4gICAgICAgICAgZnJvbUpzb246IERvc3NpZXJzTGVnaXNsYXRpZnNDb252ZXJ0LnRvRG9jdW1lbnQsXG4gICAgICAgICAgdG9Kc29uOiBEb3NzaWVyc0xlZ2lzbGF0aWZzQ29udmVydC5kb2N1bWVudFRvSnNvbixcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9ucyxcbiAgICAgICAgZG93bmxvYWRBbmRQYXJzZSxcbiAgICAgIClcbiAgICAgIGF3YWl0IHByb2Nlc3NGaWxlczxEb3NzaWVyUGFybGVtZW50YWlyZT4oXG4gICAgICAgIGRhdGFzZXRSYXdEaXIsXG4gICAgICAgIGRhdGFzZXRDbGVhbkRpcixcbiAgICAgICAgW1wiZG9zc2llcnNcIl0sXG4gICAgICAgIGNsZWFuRG9zc2llclBhcmxlbWVudGFpcmUsXG4gICAgICAgIHtcbiAgICAgICAgICBmcm9tSnNvbjogRG9zc2llcnNMZWdpc2xhdGlmc0NvbnZlcnQudG9Eb3NzaWVyUGFybGVtZW50YWlyZSxcbiAgICAgICAgICB0b0pzb246IERvc3NpZXJzTGVnaXNsYXRpZnNDb252ZXJ0LmRvc3NpZXJQYXJsZW1lbnRhaXJlVG9Kc29uLFxuICAgICAgICB9LFxuICAgICAgICBvcHRpb25zLFxuICAgICAgKVxuXG4gICAgICBleGl0Q29kZSA9IGNvbW1pdEdpdChkYXRhc2V0Q2xlYW5EaXIsIG9wdGlvbnMsIGV4aXRDb2RlLCBbXG4gICAgICAgIFwiZG9jdW1lbnRzXCIsXG4gICAgICAgIFwiZG9zc2llcnNcIixcbiAgICAgIF0pXG4gICAgfVxuICB9XG5cbiAgaWYgKGVuYWJsZWREYXRhc2V0cyAmIEVuYWJsZWREYXRhc2V0cy5TY3J1dGlucykge1xuICAgIGZvciAoY29uc3QgZGF0YXNldCBvZiBjaG9zZW5EYXRhc2V0cy5zY3J1dGlucykge1xuICAgICAgY29uc3QgZGF0YXNldE5hbWUgPSBwYXRoLmJhc2VuYW1lKGRhdGFzZXQuZmlsZW5hbWUsIFwiLmpzb25cIilcbiAgICAgIGlmIChvcHRpb25zLmRhdGFzZXQgJiYgZGF0YXNldE5hbWUgIT09IG9wdGlvbnMuZGF0YXNldCkge1xuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuXG4gICAgICBjbG9uZUdpdChnaXRHcm91cFVybCwgZGF0YXNldE5hbWUsIGRhdGFEaXIpXG4gICAgICBhbmFseXplQW5kUmVtb3ZlKGRhdGFzZXROYW1lLCBvcHRpb25zKVxuICAgICAgY29uc3QgZGF0YXNldFJhd0Rpcjogc3RyaW5nID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXROYW1lKVxuICAgICAgY29uc3QgZGF0YXNldENsZWFuRGlyOiBzdHJpbmcgPSBkYXRhc2V0UmF3RGlyICsgXCJfbmV0dG95ZVwiXG5cbiAgICAgIGF3YWl0IHByb2Nlc3NGaWxlczxTY3J1dGluPihcbiAgICAgICAgZGF0YXNldFJhd0RpcixcbiAgICAgICAgZGF0YXNldENsZWFuRGlyLFxuICAgICAgICBbXSxcbiAgICAgICAgY2xlYW5TY3J1dGluLFxuICAgICAgICB7XG4gICAgICAgICAgZnJvbUpzb246IFNjcnV0aW5zQ29udmVydC50b1NjcnV0aW4sXG4gICAgICAgICAgdG9Kc29uOiBTY3J1dGluc0NvbnZlcnQuc2NydXRpblRvSnNvbixcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9ucyxcbiAgICAgIClcblxuICAgICAgZXhpdENvZGUgPSBjb21taXRHaXQoZGF0YXNldENsZWFuRGlyLCBvcHRpb25zLCBleGl0Q29kZSwgW1wiLlwiXSlcbiAgICB9XG4gIH1cblxuICBpZiAoZW5hYmxlZERhdGFzZXRzICYgRW5hYmxlZERhdGFzZXRzLlF1ZXN0aW9ucykge1xuICAgIGZvciAoY29uc3QgZGF0YXNldCBvZiBkYXRhc2V0cy5xdWVzdGlvbnMpIHtcbiAgICAgIGNvbnN0IGRhdGFzZXROYW1lID0gcGF0aC5iYXNlbmFtZShkYXRhc2V0LmZpbGVuYW1lLCBcIi5qc29uXCIpXG4gICAgICBpZiAob3B0aW9ucy5kYXRhc2V0ICYmIGRhdGFzZXROYW1lICE9PSBvcHRpb25zLmRhdGFzZXQpIHtcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cblxuICAgICAgY2xvbmVHaXQoZ2l0R3JvdXBVcmwsIGRhdGFzZXROYW1lLCBkYXRhRGlyKVxuICAgICAgYW5hbHl6ZUFuZFJlbW92ZShkYXRhc2V0TmFtZSwgb3B0aW9ucylcbiAgICAgIGNvbnN0IGRhdGFzZXRSYXdEaXI6IHN0cmluZyA9IHBhdGguam9pbihkYXRhRGlyLCBkYXRhc2V0TmFtZSlcbiAgICAgIGNvbnN0IGRhdGFzZXRDbGVhbkRpcjogc3RyaW5nID0gZGF0YXNldFJhd0RpciArIFwiX25ldHRveWVcIlxuXG4gICAgICBhd2FpdCBwcm9jZXNzRmlsZXM8UXVlc3Rpb24+KFxuICAgICAgICBkYXRhc2V0UmF3RGlyLFxuICAgICAgICBkYXRhc2V0Q2xlYW5EaXIsXG4gICAgICAgIFtdLFxuICAgICAgICBjbGVhblF1ZXN0aW9uLFxuICAgICAgICB7XG4gICAgICAgICAgZnJvbUpzb246IFF1ZXN0aW9uc0NvbnZlcnQudG9RdWVzdGlvbixcbiAgICAgICAgICB0b0pzb246IFF1ZXN0aW9uc0NvbnZlcnQucXVlc3Rpb25Ub0pzb24sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnMsXG4gICAgICApXG5cbiAgICAgIGV4aXRDb2RlID0gY29tbWl0R2l0KGRhdGFzZXRDbGVhbkRpciwgb3B0aW9ucywgZXhpdENvZGUsIFtcIi5cIl0pXG4gICAgfVxuICB9XG5cbiAgaWYgKGVuYWJsZWREYXRhc2V0cyAmIEVuYWJsZWREYXRhc2V0cy5Db21wdGVzUmVuZHVzU2VhbmNlcykge1xuICAgIGZvciAoY29uc3QgZGF0YXNldCBvZiBkYXRhc2V0cy5jb21wdGVzUmVuZHVzU2VhbmNlcykge1xuICAgICAgY29uc3QgZGF0YXNldE5hbWUgPSBwYXRoLmJhc2VuYW1lKGRhdGFzZXQuZmlsZW5hbWUsIFwiLnhtbFwiKVxuICAgICAgaWYgKG9wdGlvbnMuZGF0YXNldCAmJiBkYXRhc2V0TmFtZSAhPT0gb3B0aW9ucy5kYXRhc2V0KSB7XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG5cbiAgICAgIGNsb25lR2l0KGdpdEdyb3VwVXJsLCBkYXRhc2V0TmFtZSwgZGF0YURpcilcbiAgICAgIGFuYWx5emVBbmRSZW1vdmUoZGF0YXNldE5hbWUsIG9wdGlvbnMpXG4gICAgICBjb25zdCBkYXRhc2V0UmF3RGlyOiBzdHJpbmcgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldE5hbWUpXG4gICAgICBjb25zdCBkYXRhc2V0Q2xlYW5EaXI6IHN0cmluZyA9IGRhdGFzZXRSYXdEaXIgKyBcIl9uZXR0b3llXCJcblxuICAgICAgYXdhaXQgcHJvY2Vzc0ZpbGVzPENvbXB0ZVJlbmR1PihcbiAgICAgICAgZGF0YXNldFJhd0RpcixcbiAgICAgICAgZGF0YXNldENsZWFuRGlyLFxuICAgICAgICBbXSxcbiAgICAgICAgY2xlYW5Db21wdGVSZW5kdSxcbiAgICAgICAge1xuICAgICAgICAgIGZyb21Kc29uOiBDb21wdGVzUmVuZHVzQ29udmVydC50b0NvbXB0ZVJlbmR1LFxuICAgICAgICAgIHRvSnNvbjogQ29tcHRlc1JlbmR1c0NvbnZlcnQuY29tcHRlUmVuZHVUb0pzb24sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnMsXG4gICAgICApXG5cbiAgICAgIGV4aXRDb2RlID0gY29tbWl0R2l0KGRhdGFzZXRDbGVhbkRpciwgb3B0aW9ucywgZXhpdENvZGUsIFtcIi5cIl0pXG4gICAgfVxuICB9XG5cbiAgLy8gUmVzdG9yZSBzdGFuZGFyZCBjb252ZXJzaW9uIG9mIGRhdGVzIHRvIEpTT04uXG4gIERhdGUucHJvdG90eXBlLnRvSlNPTiA9IGV4aXN0aW5nRGF0ZVRvSnNvblxuXG4gIHJldHVybiBleGl0Q29kZVxufVxuXG5mdW5jdGlvbiBhbmFseXplQW5kUmVtb3ZlKGRhdGFzZXROYW1lOiBzdHJpbmcsIG9wdGlvbnM6IGFueSk6IGFueSB7XG4gIGNvbnN0IGRhdGFEaXIgPSBvcHRpb25zLmRhdGFEaXJcbiAgY29uc3QgZGF0YXNldFJhd0Rpcjogc3RyaW5nID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXROYW1lKVxuICBjb25zdCBkYXRhc2V0Q2xlYW5EaXI6IHN0cmluZyA9IGRhdGFzZXRSYXdEaXIgKyBcIl9uZXR0b3llXCJcbiAgaWYgKCFvcHRpb25zLnNpbGVudCkge1xuICAgIGNvbnNvbGUubG9nKGBDbGVhbmluZyBkaXJlY3Rvcnk6ICR7ZGF0YXNldENsZWFuRGlyfeKApmApXG4gIH1cbiAgZnMuZW5zdXJlRGlyU3luYyhkYXRhc2V0Q2xlYW5EaXIpXG4gIGZvciAoY29uc3QgZmlsZW5hbWUgb2YgZnMucmVhZGRpclN5bmMoZGF0YXNldENsZWFuRGlyKSkge1xuICAgIGlmIChmaWxlbmFtZVswXSA9PT0gXCIuXCIpIHtcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuICAgIGNvbnN0IHBhdGhuYW1lID0gcGF0aC5qb2luKGRhdGFzZXRDbGVhbkRpciwgZmlsZW5hbWUpXG4gICAgZnMucmVtb3ZlU3luYyhwYXRobmFtZSlcbiAgfVxufVxuXG5mdW5jdGlvbiBjb21taXRBbmRQdXNoVWlkKFxuICByZXBvc2l0b3J5RGlyOiBzdHJpbmcsXG4gIG9wdGlvbnM6IGFueSxcbiAgc3ViZGlyZWN0b3JpZXM6IGFueSxcbik6IGJvb2xlYW4ge1xuICBsZXQgZXJyb3IgPSBmYWxzZVxuICBpZiAob3B0aW9ucy5jb21taXQpIHtcbiAgICBnaXQudWlkQnJhbmNoVXBkYXRlKFxuICAgICAgcmVwb3NpdG9yeURpcixcbiAgICAgIHN1YmRpcmVjdG9yaWVzLFxuICAgICAgb3B0aW9uc1tcIm5vLXJlc2V0LWFmdGVyLWNvbW1pdFwiXSxcbiAgICApXG4gICAgZm9yIChjb25zdCByZW1vdGUgb2Ygb3B0aW9ucy5yZW1vdGUgfHwgW10pIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGdpdC5ydW4ocmVwb3NpdG9yeURpciwgYHB1c2ggLS1xdWlldCAke3JlbW90ZX0gdWlkOnVpZGApXG4gICAgICB9IGNhdGNoIChjaGlsZFByb2Nlc3MpIHtcbiAgICAgICAgZXJyb3IgPSB0cnVlXG4gICAgICB9XG4gICAgfVxuICB9XG4gIHJldHVybiBlcnJvclxufVxuXG5mdW5jdGlvbiBtYWluKGFyZ3Y6IGFueSk6IFByb21pc2U8bnVtYmVyPiB7XG4gIGNvbnN0IG9wdGlvbnMgPSBwYXJzZUFyZ3MoYXJndilcbiAgcmV0dXJuIGNsZWFuUmVvcmdhbml6ZWREYXRhKG9wdGlvbnMpXG59XG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuaWYgKHByb2Nlc3MuYXJndlsxXS5lbmRzV2l0aChcImNsZWFuX3Jlb3JnYW5pemVkX2RhdGEudHNcIikpIHtcbiAgbWFpbihwcm9jZXNzLmFyZ3YpLnRoZW4ocHJvY2Vzcy5leGl0KVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsSUFBQUEsZ0JBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLFFBQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFFLEtBQUEsR0FBQUgsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFHLFNBQUEsR0FBQUgsT0FBQTtBQVdBLElBQUFJLFNBQUEsR0FBQUosT0FBQTtBQU1BLElBQUFLLG1CQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxNQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxhQUFBLEdBQUFQLE9BQUE7QUFDQSxJQUFBUSxHQUFBLEdBQUFDLHVCQUFBLENBQUFULE9BQUE7QUFDQSxJQUFBVSxtQkFBQSxHQUFBVixPQUFBO0FBS0EsSUFBQVcsUUFBQSxHQUFBWCxPQUFBO0FBQ0EsSUFBQVksWUFBQSxHQUFBWixPQUFBO0FBQ0EsSUFBQWEscUJBQUEsR0FBQWIsT0FBQTtBQUtBLElBQUFjLFNBQUEsR0FBQWQsT0FBQTtBQUNBLElBQUFlLFVBQUEsR0FBQWYsT0FBQTtBQUNBLElBQUFnQixPQUFBLEdBQUFoQixPQUFBO0FBQ0EsSUFBQWlCLFlBQUEsR0FBQWpCLE9BQUE7QUFhNkIsU0FBQWtCLHlCQUFBQyxDQUFBLDZCQUFBQyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxDQUFBLFdBQUFBLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLEtBQUFGLENBQUE7QUFBQSxTQUFBVix3QkFBQVUsQ0FBQSxFQUFBRSxDQUFBLFNBQUFBLENBQUEsSUFBQUYsQ0FBQSxJQUFBQSxDQUFBLENBQUFJLFVBQUEsU0FBQUosQ0FBQSxlQUFBQSxDQUFBLGdCQUFBSyxPQUFBLENBQUFMLENBQUEsMEJBQUFBLENBQUEsc0JBQUFBLENBQUEsUUFBQUcsQ0FBQSxHQUFBSix3QkFBQSxDQUFBRyxDQUFBLE9BQUFDLENBQUEsSUFBQUEsQ0FBQSxDQUFBRyxHQUFBLENBQUFOLENBQUEsVUFBQUcsQ0FBQSxDQUFBSSxHQUFBLENBQUFQLENBQUEsT0FBQVEsQ0FBQSxLQUFBQyxTQUFBLFVBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxjQUFBLElBQUFELE1BQUEsQ0FBQUUsd0JBQUEsV0FBQUMsQ0FBQSxJQUFBZCxDQUFBLG9CQUFBYyxDQUFBLE9BQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBaEIsQ0FBQSxFQUFBYyxDQUFBLFNBQUFHLENBQUEsR0FBQVAsQ0FBQSxHQUFBQyxNQUFBLENBQUFFLHdCQUFBLENBQUFiLENBQUEsRUFBQWMsQ0FBQSxVQUFBRyxDQUFBLEtBQUFBLENBQUEsQ0FBQVYsR0FBQSxJQUFBVSxDQUFBLENBQUFDLEdBQUEsSUFBQVAsTUFBQSxDQUFBQyxjQUFBLENBQUFKLENBQUEsRUFBQU0sQ0FBQSxFQUFBRyxDQUFBLElBQUFULENBQUEsQ0FBQU0sQ0FBQSxJQUFBZCxDQUFBLENBQUFjLENBQUEsWUFBQU4sQ0FBQSxjQUFBUixDQUFBLEVBQUFHLENBQUEsSUFBQUEsQ0FBQSxDQUFBZSxHQUFBLENBQUFsQixDQUFBLEVBQUFRLENBQUEsR0FBQUEsQ0FBQTtBQUFBLFNBQUE1Qix1QkFBQW9CLENBQUEsV0FBQUEsQ0FBQSxJQUFBQSxDQUFBLENBQUFJLFVBQUEsR0FBQUosQ0FBQSxnQkFBQUEsQ0FBQTtBQUFBLFNBQUFtQixvQkFBQSxrQkFuRDdCLHFKQUFBQSxtQkFBQSxZQUFBQSxvQkFBQSxXQUFBbkIsQ0FBQSxTQUFBRyxDQUFBLEVBQUFILENBQUEsT0FBQUUsQ0FBQSxHQUFBUyxNQUFBLENBQUFTLFNBQUEsRUFBQVosQ0FBQSxHQUFBTixDQUFBLENBQUFhLGNBQUEsRUFBQU0sQ0FBQSxHQUFBVixNQUFBLENBQUFDLGNBQUEsY0FBQVQsQ0FBQSxFQUFBSCxDQUFBLEVBQUFFLENBQUEsSUFBQUMsQ0FBQSxDQUFBSCxDQUFBLElBQUFFLENBQUEsQ0FBQW9CLEtBQUEsS0FBQUwsQ0FBQSx3QkFBQU0sTUFBQSxHQUFBQSxNQUFBLE9BQUFiLENBQUEsR0FBQU8sQ0FBQSxDQUFBTyxRQUFBLGtCQUFBQyxDQUFBLEdBQUFSLENBQUEsQ0FBQVMsYUFBQSx1QkFBQVosQ0FBQSxHQUFBRyxDQUFBLENBQUFVLFdBQUEsOEJBQUFDLE9BQUF6QixDQUFBLEVBQUFILENBQUEsRUFBQUUsQ0FBQSxXQUFBUyxNQUFBLENBQUFDLGNBQUEsQ0FBQVQsQ0FBQSxFQUFBSCxDQUFBLElBQUFzQixLQUFBLEVBQUFwQixDQUFBLEVBQUEyQixVQUFBLE1BQUFDLFlBQUEsTUFBQUMsUUFBQSxTQUFBNUIsQ0FBQSxDQUFBSCxDQUFBLFdBQUE0QixNQUFBLG1CQUFBekIsQ0FBQSxJQUFBeUIsTUFBQSxZQUFBQSxPQUFBekIsQ0FBQSxFQUFBSCxDQUFBLEVBQUFFLENBQUEsV0FBQUMsQ0FBQSxDQUFBSCxDQUFBLElBQUFFLENBQUEsZ0JBQUE4QixLQUFBN0IsQ0FBQSxFQUFBSCxDQUFBLEVBQUFFLENBQUEsRUFBQU0sQ0FBQSxRQUFBUyxDQUFBLEdBQUFqQixDQUFBLElBQUFBLENBQUEsQ0FBQW9CLFNBQUEsWUFBQWEsU0FBQSxHQUFBakMsQ0FBQSxHQUFBaUMsU0FBQSxFQUFBdkIsQ0FBQSxHQUFBQyxNQUFBLENBQUF1QixNQUFBLENBQUFqQixDQUFBLENBQUFHLFNBQUEsR0FBQUssQ0FBQSxPQUFBVSxPQUFBLENBQUEzQixDQUFBLGdCQUFBYSxDQUFBLENBQUFYLENBQUEsZUFBQVksS0FBQSxFQUFBYyxnQkFBQSxDQUFBakMsQ0FBQSxFQUFBRCxDQUFBLEVBQUF1QixDQUFBLE1BQUFmLENBQUEsYUFBQTJCLFNBQUFsQyxDQUFBLEVBQUFILENBQUEsRUFBQUUsQ0FBQSxtQkFBQW9DLElBQUEsWUFBQUMsR0FBQSxFQUFBcEMsQ0FBQSxDQUFBYSxJQUFBLENBQUFoQixDQUFBLEVBQUFFLENBQUEsY0FBQUMsQ0FBQSxhQUFBbUMsSUFBQSxXQUFBQyxHQUFBLEVBQUFwQyxDQUFBLFFBQUFILENBQUEsQ0FBQWdDLElBQUEsR0FBQUEsSUFBQSxNQUFBUSxDQUFBLHFCQUFBQyxDQUFBLHFCQUFBQyxDQUFBLGdCQUFBQyxDQUFBLGdCQUFBQyxDQUFBLGdCQUFBWCxVQUFBLGNBQUFZLGtCQUFBLGNBQUFDLDJCQUFBLFNBQUFDLENBQUEsT0FBQW5CLE1BQUEsQ0FBQW1CLENBQUEsRUFBQXJDLENBQUEscUNBQUFzQyxDQUFBLEdBQUFyQyxNQUFBLENBQUFzQyxjQUFBLEVBQUFDLENBQUEsR0FBQUYsQ0FBQSxJQUFBQSxDQUFBLENBQUFBLENBQUEsQ0FBQUcsTUFBQSxRQUFBRCxDQUFBLElBQUFBLENBQUEsS0FBQWhELENBQUEsSUFBQU0sQ0FBQSxDQUFBUSxJQUFBLENBQUFrQyxDQUFBLEVBQUF4QyxDQUFBLE1BQUFxQyxDQUFBLEdBQUFHLENBQUEsT0FBQUUsQ0FBQSxHQUFBTiwwQkFBQSxDQUFBMUIsU0FBQSxHQUFBYSxTQUFBLENBQUFiLFNBQUEsR0FBQVQsTUFBQSxDQUFBdUIsTUFBQSxDQUFBYSxDQUFBLFlBQUFNLHNCQUFBbEQsQ0FBQSxnQ0FBQW1ELE9BQUEsV0FBQXRELENBQUEsSUFBQTRCLE1BQUEsQ0FBQXpCLENBQUEsRUFBQUgsQ0FBQSxZQUFBRyxDQUFBLGdCQUFBb0QsT0FBQSxDQUFBdkQsQ0FBQSxFQUFBRyxDQUFBLHNCQUFBcUQsY0FBQXJELENBQUEsRUFBQUgsQ0FBQSxhQUFBeUQsT0FBQXZELENBQUEsRUFBQW1CLENBQUEsRUFBQUosQ0FBQSxFQUFBUCxDQUFBLFFBQUFlLENBQUEsR0FBQVksUUFBQSxDQUFBbEMsQ0FBQSxDQUFBRCxDQUFBLEdBQUFDLENBQUEsRUFBQWtCLENBQUEsbUJBQUFJLENBQUEsQ0FBQWEsSUFBQSxRQUFBeEIsQ0FBQSxHQUFBVyxDQUFBLENBQUFjLEdBQUEsRUFBQUMsQ0FBQSxHQUFBMUIsQ0FBQSxDQUFBUSxLQUFBLFNBQUFrQixDQUFBLGdCQUFBbkMsT0FBQSxDQUFBbUMsQ0FBQSxLQUFBaEMsQ0FBQSxDQUFBUSxJQUFBLENBQUF3QixDQUFBLGVBQUF4QyxDQUFBLENBQUEwRCxPQUFBLENBQUFsQixDQUFBLENBQUFtQixPQUFBLEVBQUFDLElBQUEsV0FBQXpELENBQUEsSUFBQXNELE1BQUEsU0FBQXRELENBQUEsRUFBQWMsQ0FBQSxFQUFBUCxDQUFBLGdCQUFBUCxDQUFBLElBQUFzRCxNQUFBLFVBQUF0RCxDQUFBLEVBQUFjLENBQUEsRUFBQVAsQ0FBQSxRQUFBVixDQUFBLENBQUEwRCxPQUFBLENBQUFsQixDQUFBLEVBQUFvQixJQUFBLFdBQUF6RCxDQUFBLElBQUFXLENBQUEsQ0FBQVEsS0FBQSxHQUFBbkIsQ0FBQSxFQUFBYyxDQUFBLENBQUFILENBQUEsZ0JBQUFYLENBQUEsV0FBQXNELE1BQUEsVUFBQXRELENBQUEsRUFBQWMsQ0FBQSxFQUFBUCxDQUFBLFNBQUFBLENBQUEsQ0FBQWUsQ0FBQSxDQUFBYyxHQUFBLFNBQUFyQyxDQUFBLEVBQUFtQixDQUFBLG9CQUFBQyxLQUFBLFdBQUFBLE1BQUFuQixDQUFBLEVBQUFLLENBQUEsYUFBQXFELDJCQUFBLGVBQUE3RCxDQUFBLFdBQUFBLENBQUEsRUFBQUUsQ0FBQSxJQUFBdUQsTUFBQSxDQUFBdEQsQ0FBQSxFQUFBSyxDQUFBLEVBQUFSLENBQUEsRUFBQUUsQ0FBQSxnQkFBQUEsQ0FBQSxHQUFBQSxDQUFBLEdBQUFBLENBQUEsQ0FBQTBELElBQUEsQ0FBQUMsMEJBQUEsRUFBQUEsMEJBQUEsSUFBQUEsMEJBQUEscUJBQUF6QixpQkFBQXBDLENBQUEsRUFBQUUsQ0FBQSxFQUFBTSxDQUFBLFFBQUFhLENBQUEsR0FBQW1CLENBQUEsbUJBQUF2QixDQUFBLEVBQUFQLENBQUEsUUFBQVcsQ0FBQSxLQUFBcUIsQ0FBQSxRQUFBb0IsS0FBQSxzQ0FBQXpDLENBQUEsS0FBQXNCLENBQUEsb0JBQUExQixDQUFBLFFBQUFQLENBQUEsV0FBQVksS0FBQSxFQUFBbkIsQ0FBQSxFQUFBNEQsSUFBQSxlQUFBdkQsQ0FBQSxDQUFBd0QsTUFBQSxHQUFBL0MsQ0FBQSxFQUFBVCxDQUFBLENBQUErQixHQUFBLEdBQUE3QixDQUFBLFVBQUFlLENBQUEsR0FBQWpCLENBQUEsQ0FBQXlELFFBQUEsTUFBQXhDLENBQUEsUUFBQVgsQ0FBQSxHQUFBb0QsbUJBQUEsQ0FBQXpDLENBQUEsRUFBQWpCLENBQUEsT0FBQU0sQ0FBQSxRQUFBQSxDQUFBLEtBQUE4QixDQUFBLG1CQUFBOUIsQ0FBQSxxQkFBQU4sQ0FBQSxDQUFBd0QsTUFBQSxFQUFBeEQsQ0FBQSxDQUFBMkQsSUFBQSxHQUFBM0QsQ0FBQSxDQUFBNEQsS0FBQSxHQUFBNUQsQ0FBQSxDQUFBK0IsR0FBQSxzQkFBQS9CLENBQUEsQ0FBQXdELE1BQUEsUUFBQTNDLENBQUEsS0FBQW1CLENBQUEsUUFBQW5CLENBQUEsR0FBQXNCLENBQUEsRUFBQW5DLENBQUEsQ0FBQStCLEdBQUEsRUFBQS9CLENBQUEsQ0FBQTZELGlCQUFBLENBQUE3RCxDQUFBLENBQUErQixHQUFBLHVCQUFBL0IsQ0FBQSxDQUFBd0QsTUFBQSxJQUFBeEQsQ0FBQSxDQUFBOEQsTUFBQSxXQUFBOUQsQ0FBQSxDQUFBK0IsR0FBQSxHQUFBbEIsQ0FBQSxHQUFBcUIsQ0FBQSxNQUFBSyxDQUFBLEdBQUFWLFFBQUEsQ0FBQXJDLENBQUEsRUFBQUUsQ0FBQSxFQUFBTSxDQUFBLG9CQUFBdUMsQ0FBQSxDQUFBVCxJQUFBLFFBQUFqQixDQUFBLEdBQUFiLENBQUEsQ0FBQXVELElBQUEsR0FBQXBCLENBQUEsR0FBQUYsQ0FBQSxFQUFBTSxDQUFBLENBQUFSLEdBQUEsS0FBQUssQ0FBQSxxQkFBQXRCLEtBQUEsRUFBQXlCLENBQUEsQ0FBQVIsR0FBQSxFQUFBd0IsSUFBQSxFQUFBdkQsQ0FBQSxDQUFBdUQsSUFBQSxrQkFBQWhCLENBQUEsQ0FBQVQsSUFBQSxLQUFBakIsQ0FBQSxHQUFBc0IsQ0FBQSxFQUFBbkMsQ0FBQSxDQUFBd0QsTUFBQSxZQUFBeEQsQ0FBQSxDQUFBK0IsR0FBQSxHQUFBUSxDQUFBLENBQUFSLEdBQUEsbUJBQUEyQixvQkFBQWxFLENBQUEsRUFBQUUsQ0FBQSxRQUFBTSxDQUFBLEdBQUFOLENBQUEsQ0FBQThELE1BQUEsRUFBQTNDLENBQUEsR0FBQXJCLENBQUEsQ0FBQXdCLFFBQUEsQ0FBQWhCLENBQUEsT0FBQWEsQ0FBQSxLQUFBbEIsQ0FBQSxTQUFBRCxDQUFBLENBQUErRCxRQUFBLHFCQUFBekQsQ0FBQSxJQUFBUixDQUFBLENBQUF3QixRQUFBLGVBQUF0QixDQUFBLENBQUE4RCxNQUFBLGFBQUE5RCxDQUFBLENBQUFxQyxHQUFBLEdBQUFwQyxDQUFBLEVBQUErRCxtQkFBQSxDQUFBbEUsQ0FBQSxFQUFBRSxDQUFBLGVBQUFBLENBQUEsQ0FBQThELE1BQUEsa0JBQUF4RCxDQUFBLEtBQUFOLENBQUEsQ0FBQThELE1BQUEsWUFBQTlELENBQUEsQ0FBQXFDLEdBQUEsT0FBQWdDLFNBQUEsdUNBQUEvRCxDQUFBLGlCQUFBb0MsQ0FBQSxNQUFBM0IsQ0FBQSxHQUFBb0IsUUFBQSxDQUFBaEIsQ0FBQSxFQUFBckIsQ0FBQSxDQUFBd0IsUUFBQSxFQUFBdEIsQ0FBQSxDQUFBcUMsR0FBQSxtQkFBQXRCLENBQUEsQ0FBQXFCLElBQUEsU0FBQXBDLENBQUEsQ0FBQThELE1BQUEsWUFBQTlELENBQUEsQ0FBQXFDLEdBQUEsR0FBQXRCLENBQUEsQ0FBQXNCLEdBQUEsRUFBQXJDLENBQUEsQ0FBQStELFFBQUEsU0FBQXJCLENBQUEsTUFBQWxDLENBQUEsR0FBQU8sQ0FBQSxDQUFBc0IsR0FBQSxTQUFBN0IsQ0FBQSxHQUFBQSxDQUFBLENBQUFxRCxJQUFBLElBQUE3RCxDQUFBLENBQUFGLENBQUEsQ0FBQXdFLFVBQUEsSUFBQTlELENBQUEsQ0FBQVksS0FBQSxFQUFBcEIsQ0FBQSxDQUFBdUUsSUFBQSxHQUFBekUsQ0FBQSxDQUFBMEUsT0FBQSxlQUFBeEUsQ0FBQSxDQUFBOEQsTUFBQSxLQUFBOUQsQ0FBQSxDQUFBOEQsTUFBQSxXQUFBOUQsQ0FBQSxDQUFBcUMsR0FBQSxHQUFBcEMsQ0FBQSxHQUFBRCxDQUFBLENBQUErRCxRQUFBLFNBQUFyQixDQUFBLElBQUFsQyxDQUFBLElBQUFSLENBQUEsQ0FBQThELE1BQUEsWUFBQTlELENBQUEsQ0FBQXFDLEdBQUEsT0FBQWdDLFNBQUEsc0NBQUFyRSxDQUFBLENBQUErRCxRQUFBLFNBQUFyQixDQUFBLGNBQUErQixhQUFBeEUsQ0FBQSxRQUFBSCxDQUFBLEtBQUE0RSxNQUFBLEVBQUF6RSxDQUFBLFlBQUFBLENBQUEsS0FBQUgsQ0FBQSxDQUFBNkUsUUFBQSxHQUFBMUUsQ0FBQSxXQUFBQSxDQUFBLEtBQUFILENBQUEsQ0FBQThFLFVBQUEsR0FBQTNFLENBQUEsS0FBQUgsQ0FBQSxDQUFBK0UsUUFBQSxHQUFBNUUsQ0FBQSxXQUFBNkUsVUFBQSxDQUFBQyxJQUFBLENBQUFqRixDQUFBLGNBQUFrRixjQUFBL0UsQ0FBQSxRQUFBSCxDQUFBLEdBQUFHLENBQUEsQ0FBQWdGLFVBQUEsUUFBQW5GLENBQUEsQ0FBQXNDLElBQUEsb0JBQUF0QyxDQUFBLENBQUF1QyxHQUFBLEVBQUFwQyxDQUFBLENBQUFnRixVQUFBLEdBQUFuRixDQUFBLGFBQUFtQyxRQUFBaEMsQ0FBQSxTQUFBNkUsVUFBQSxNQUFBSixNQUFBLGFBQUF6RSxDQUFBLENBQUFtRCxPQUFBLENBQUFxQixZQUFBLGNBQUFTLEtBQUEsaUJBQUFqQyxPQUFBbkQsQ0FBQSxRQUFBQSxDQUFBLFdBQUFBLENBQUEsUUFBQUUsQ0FBQSxHQUFBRixDQUFBLENBQUFVLENBQUEsT0FBQVIsQ0FBQSxTQUFBQSxDQUFBLENBQUFjLElBQUEsQ0FBQWhCLENBQUEsNEJBQUFBLENBQUEsQ0FBQXlFLElBQUEsU0FBQXpFLENBQUEsT0FBQXFGLEtBQUEsQ0FBQXJGLENBQUEsQ0FBQXNGLE1BQUEsU0FBQWpFLENBQUEsT0FBQUosQ0FBQSxZQUFBd0QsS0FBQSxhQUFBcEQsQ0FBQSxHQUFBckIsQ0FBQSxDQUFBc0YsTUFBQSxPQUFBOUUsQ0FBQSxDQUFBUSxJQUFBLENBQUFoQixDQUFBLEVBQUFxQixDQUFBLFVBQUFvRCxJQUFBLENBQUFuRCxLQUFBLEdBQUF0QixDQUFBLENBQUFxQixDQUFBLEdBQUFvRCxJQUFBLENBQUFWLElBQUEsT0FBQVUsSUFBQSxTQUFBQSxJQUFBLENBQUFuRCxLQUFBLEdBQUFuQixDQUFBLEVBQUFzRSxJQUFBLENBQUFWLElBQUEsT0FBQVUsSUFBQSxZQUFBeEQsQ0FBQSxDQUFBd0QsSUFBQSxHQUFBeEQsQ0FBQSxnQkFBQXNELFNBQUEsQ0FBQWxFLE9BQUEsQ0FBQUwsQ0FBQSxrQ0FBQTZDLGlCQUFBLENBQUF6QixTQUFBLEdBQUEwQiwwQkFBQSxFQUFBekIsQ0FBQSxDQUFBK0IsQ0FBQSxtQkFBQTlCLEtBQUEsRUFBQXdCLDBCQUFBLEVBQUFoQixZQUFBLFNBQUFULENBQUEsQ0FBQXlCLDBCQUFBLG1CQUFBeEIsS0FBQSxFQUFBdUIsaUJBQUEsRUFBQWYsWUFBQSxTQUFBZSxpQkFBQSxDQUFBMEMsV0FBQSxHQUFBM0QsTUFBQSxDQUFBa0IsMEJBQUEsRUFBQWhDLENBQUEsd0JBQUFkLENBQUEsQ0FBQXdGLG1CQUFBLGFBQUFyRixDQUFBLFFBQUFILENBQUEsd0JBQUFHLENBQUEsSUFBQUEsQ0FBQSxDQUFBc0YsV0FBQSxXQUFBekYsQ0FBQSxLQUFBQSxDQUFBLEtBQUE2QyxpQkFBQSw2QkFBQTdDLENBQUEsQ0FBQXVGLFdBQUEsSUFBQXZGLENBQUEsQ0FBQTBGLElBQUEsT0FBQTFGLENBQUEsQ0FBQTJGLElBQUEsYUFBQXhGLENBQUEsV0FBQVEsTUFBQSxDQUFBaUYsY0FBQSxHQUFBakYsTUFBQSxDQUFBaUYsY0FBQSxDQUFBekYsQ0FBQSxFQUFBMkMsMEJBQUEsS0FBQTNDLENBQUEsQ0FBQU0sU0FBQSxHQUFBcUMsMEJBQUEsRUFBQWxCLE1BQUEsQ0FBQXpCLENBQUEsRUFBQVcsQ0FBQSx5QkFBQVgsQ0FBQSxDQUFBaUIsU0FBQSxHQUFBVCxNQUFBLENBQUF1QixNQUFBLENBQUFrQixDQUFBLEdBQUFqRCxDQUFBLEtBQUFILENBQUEsQ0FBQTZGLEtBQUEsYUFBQTFGLENBQUEsYUFBQXdELE9BQUEsRUFBQXhELENBQUEsT0FBQWtELHFCQUFBLENBQUFHLGFBQUEsQ0FBQXBDLFNBQUEsR0FBQVEsTUFBQSxDQUFBNEIsYUFBQSxDQUFBcEMsU0FBQSxFQUFBSyxDQUFBLGlDQUFBekIsQ0FBQSxDQUFBd0QsYUFBQSxHQUFBQSxhQUFBLEVBQUF4RCxDQUFBLENBQUE4RixLQUFBLGFBQUEzRixDQUFBLEVBQUFELENBQUEsRUFBQU0sQ0FBQSxFQUFBYSxDQUFBLEVBQUFKLENBQUEsZUFBQUEsQ0FBQSxLQUFBQSxDQUFBLEdBQUE4RSxPQUFBLE9BQUFyRixDQUFBLE9BQUE4QyxhQUFBLENBQUF4QixJQUFBLENBQUE3QixDQUFBLEVBQUFELENBQUEsRUFBQU0sQ0FBQSxFQUFBYSxDQUFBLEdBQUFKLENBQUEsVUFBQWpCLENBQUEsQ0FBQXdGLG1CQUFBLENBQUF0RixDQUFBLElBQUFRLENBQUEsR0FBQUEsQ0FBQSxDQUFBK0QsSUFBQSxHQUFBYixJQUFBLFdBQUF6RCxDQUFBLFdBQUFBLENBQUEsQ0FBQTRELElBQUEsR0FBQTVELENBQUEsQ0FBQW1CLEtBQUEsR0FBQVosQ0FBQSxDQUFBK0QsSUFBQSxXQUFBcEIscUJBQUEsQ0FBQUQsQ0FBQSxHQUFBeEIsTUFBQSxDQUFBd0IsQ0FBQSxFQUFBdEMsQ0FBQSxnQkFBQWMsTUFBQSxDQUFBd0IsQ0FBQSxFQUFBMUMsQ0FBQSxpQ0FBQWtCLE1BQUEsQ0FBQXdCLENBQUEsNkRBQUFwRCxDQUFBLENBQUFnRyxJQUFBLGFBQUE3RixDQUFBLFFBQUFILENBQUEsR0FBQVcsTUFBQSxDQUFBUixDQUFBLEdBQUFELENBQUEsZ0JBQUFNLENBQUEsSUFBQVIsQ0FBQSxFQUFBRSxDQUFBLENBQUErRSxJQUFBLENBQUF6RSxDQUFBLFVBQUFOLENBQUEsQ0FBQStGLE9BQUEsYUFBQXhCLEtBQUEsV0FBQXZFLENBQUEsQ0FBQW9GLE1BQUEsU0FBQW5GLENBQUEsR0FBQUQsQ0FBQSxDQUFBZ0csR0FBQSxRQUFBL0YsQ0FBQSxJQUFBSCxDQUFBLFNBQUF5RSxJQUFBLENBQUFuRCxLQUFBLEdBQUFuQixDQUFBLEVBQUFzRSxJQUFBLENBQUFWLElBQUEsT0FBQVUsSUFBQSxXQUFBQSxJQUFBLENBQUFWLElBQUEsT0FBQVUsSUFBQSxRQUFBekUsQ0FBQSxDQUFBbUQsTUFBQSxHQUFBQSxNQUFBLEVBQUFoQixPQUFBLENBQUFmLFNBQUEsS0FBQXFFLFdBQUEsRUFBQXRELE9BQUEsRUFBQWlELEtBQUEsV0FBQUEsTUFBQXBGLENBQUEsYUFBQW1HLElBQUEsV0FBQTFCLElBQUEsV0FBQU4sSUFBQSxRQUFBQyxLQUFBLEdBQUFqRSxDQUFBLE9BQUE0RCxJQUFBLFlBQUFFLFFBQUEsY0FBQUQsTUFBQSxnQkFBQXpCLEdBQUEsR0FBQXBDLENBQUEsT0FBQTZFLFVBQUEsQ0FBQTFCLE9BQUEsQ0FBQTRCLGFBQUEsSUFBQWxGLENBQUEsV0FBQUUsQ0FBQSxrQkFBQUEsQ0FBQSxDQUFBa0csTUFBQSxPQUFBNUYsQ0FBQSxDQUFBUSxJQUFBLE9BQUFkLENBQUEsTUFBQW1GLEtBQUEsRUFBQW5GLENBQUEsQ0FBQW1HLEtBQUEsY0FBQW5HLENBQUEsSUFBQUMsQ0FBQSxNQUFBbUcsSUFBQSxXQUFBQSxLQUFBLFNBQUF2QyxJQUFBLFdBQUE1RCxDQUFBLFFBQUE2RSxVQUFBLElBQUFHLFVBQUEsa0JBQUFoRixDQUFBLENBQUFtQyxJQUFBLFFBQUFuQyxDQUFBLENBQUFvQyxHQUFBLGNBQUFnRSxJQUFBLEtBQUFsQyxpQkFBQSxXQUFBQSxrQkFBQXJFLENBQUEsYUFBQStELElBQUEsUUFBQS9ELENBQUEsTUFBQUUsQ0FBQSxrQkFBQXNHLE9BQUFoRyxDQUFBLEVBQUFhLENBQUEsV0FBQVgsQ0FBQSxDQUFBNEIsSUFBQSxZQUFBNUIsQ0FBQSxDQUFBNkIsR0FBQSxHQUFBdkMsQ0FBQSxFQUFBRSxDQUFBLENBQUF1RSxJQUFBLEdBQUFqRSxDQUFBLEVBQUFhLENBQUEsS0FBQW5CLENBQUEsQ0FBQThELE1BQUEsV0FBQTlELENBQUEsQ0FBQXFDLEdBQUEsR0FBQXBDLENBQUEsS0FBQWtCLENBQUEsYUFBQUEsQ0FBQSxRQUFBMkQsVUFBQSxDQUFBTSxNQUFBLE1BQUFqRSxDQUFBLFNBQUFBLENBQUEsUUFBQUosQ0FBQSxRQUFBK0QsVUFBQSxDQUFBM0QsQ0FBQSxHQUFBWCxDQUFBLEdBQUFPLENBQUEsQ0FBQWtFLFVBQUEsaUJBQUFsRSxDQUFBLENBQUEyRCxNQUFBLFNBQUE0QixNQUFBLGFBQUF2RixDQUFBLENBQUEyRCxNQUFBLFNBQUF1QixJQUFBLFFBQUExRSxDQUFBLEdBQUFqQixDQUFBLENBQUFRLElBQUEsQ0FBQUMsQ0FBQSxlQUFBSCxDQUFBLEdBQUFOLENBQUEsQ0FBQVEsSUFBQSxDQUFBQyxDQUFBLHFCQUFBUSxDQUFBLElBQUFYLENBQUEsYUFBQXFGLElBQUEsR0FBQWxGLENBQUEsQ0FBQTRELFFBQUEsU0FBQTJCLE1BQUEsQ0FBQXZGLENBQUEsQ0FBQTRELFFBQUEsZ0JBQUFzQixJQUFBLEdBQUFsRixDQUFBLENBQUE2RCxVQUFBLFNBQUEwQixNQUFBLENBQUF2RixDQUFBLENBQUE2RCxVQUFBLGNBQUFyRCxDQUFBLGFBQUEwRSxJQUFBLEdBQUFsRixDQUFBLENBQUE0RCxRQUFBLFNBQUEyQixNQUFBLENBQUF2RixDQUFBLENBQUE0RCxRQUFBLHFCQUFBL0QsQ0FBQSxRQUFBZ0QsS0FBQSxxREFBQXFDLElBQUEsR0FBQWxGLENBQUEsQ0FBQTZELFVBQUEsU0FBQTBCLE1BQUEsQ0FBQXZGLENBQUEsQ0FBQTZELFVBQUEsWUFBQVIsTUFBQSxXQUFBQSxPQUFBbkUsQ0FBQSxFQUFBSCxDQUFBLGFBQUFFLENBQUEsUUFBQThFLFVBQUEsQ0FBQU0sTUFBQSxNQUFBcEYsQ0FBQSxTQUFBQSxDQUFBLFFBQUFtQixDQUFBLFFBQUEyRCxVQUFBLENBQUE5RSxDQUFBLE9BQUFtQixDQUFBLENBQUF1RCxNQUFBLFNBQUF1QixJQUFBLElBQUEzRixDQUFBLENBQUFRLElBQUEsQ0FBQUssQ0FBQSx3QkFBQThFLElBQUEsR0FBQTlFLENBQUEsQ0FBQXlELFVBQUEsUUFBQTdELENBQUEsR0FBQUksQ0FBQSxhQUFBSixDQUFBLGlCQUFBZCxDQUFBLG1CQUFBQSxDQUFBLEtBQUFjLENBQUEsQ0FBQTJELE1BQUEsSUFBQTVFLENBQUEsSUFBQUEsQ0FBQSxJQUFBaUIsQ0FBQSxDQUFBNkQsVUFBQSxLQUFBN0QsQ0FBQSxjQUFBUCxDQUFBLEdBQUFPLENBQUEsR0FBQUEsQ0FBQSxDQUFBa0UsVUFBQSxjQUFBekUsQ0FBQSxDQUFBNEIsSUFBQSxHQUFBbkMsQ0FBQSxFQUFBTyxDQUFBLENBQUE2QixHQUFBLEdBQUF2QyxDQUFBLEVBQUFpQixDQUFBLFNBQUErQyxNQUFBLGdCQUFBUyxJQUFBLEdBQUF4RCxDQUFBLENBQUE2RCxVQUFBLEVBQUFsQyxDQUFBLFNBQUE2RCxRQUFBLENBQUEvRixDQUFBLE1BQUErRixRQUFBLFdBQUFBLFNBQUF0RyxDQUFBLEVBQUFILENBQUEsb0JBQUFHLENBQUEsQ0FBQW1DLElBQUEsUUFBQW5DLENBQUEsQ0FBQW9DLEdBQUEscUJBQUFwQyxDQUFBLENBQUFtQyxJQUFBLG1CQUFBbkMsQ0FBQSxDQUFBbUMsSUFBQSxRQUFBbUMsSUFBQSxHQUFBdEUsQ0FBQSxDQUFBb0MsR0FBQSxnQkFBQXBDLENBQUEsQ0FBQW1DLElBQUEsU0FBQWlFLElBQUEsUUFBQWhFLEdBQUEsR0FBQXBDLENBQUEsQ0FBQW9DLEdBQUEsT0FBQXlCLE1BQUEsa0JBQUFTLElBQUEseUJBQUF0RSxDQUFBLENBQUFtQyxJQUFBLElBQUF0QyxDQUFBLFVBQUF5RSxJQUFBLEdBQUF6RSxDQUFBLEdBQUE0QyxDQUFBLEtBQUE4RCxNQUFBLFdBQUFBLE9BQUF2RyxDQUFBLGFBQUFILENBQUEsUUFBQWdGLFVBQUEsQ0FBQU0sTUFBQSxNQUFBdEYsQ0FBQSxTQUFBQSxDQUFBLFFBQUFFLENBQUEsUUFBQThFLFVBQUEsQ0FBQWhGLENBQUEsT0FBQUUsQ0FBQSxDQUFBNEUsVUFBQSxLQUFBM0UsQ0FBQSxjQUFBc0csUUFBQSxDQUFBdkcsQ0FBQSxDQUFBaUYsVUFBQSxFQUFBakYsQ0FBQSxDQUFBNkUsUUFBQSxHQUFBRyxhQUFBLENBQUFoRixDQUFBLEdBQUEwQyxDQUFBLHlCQUFBK0QsT0FBQXhHLENBQUEsYUFBQUgsQ0FBQSxRQUFBZ0YsVUFBQSxDQUFBTSxNQUFBLE1BQUF0RixDQUFBLFNBQUFBLENBQUEsUUFBQUUsQ0FBQSxRQUFBOEUsVUFBQSxDQUFBaEYsQ0FBQSxPQUFBRSxDQUFBLENBQUEwRSxNQUFBLEtBQUF6RSxDQUFBLFFBQUFLLENBQUEsR0FBQU4sQ0FBQSxDQUFBaUYsVUFBQSxrQkFBQTNFLENBQUEsQ0FBQThCLElBQUEsUUFBQWpCLENBQUEsR0FBQWIsQ0FBQSxDQUFBK0IsR0FBQSxFQUFBMkMsYUFBQSxDQUFBaEYsQ0FBQSxZQUFBbUIsQ0FBQSxZQUFBeUMsS0FBQSw4QkFBQThDLGFBQUEsV0FBQUEsY0FBQTVHLENBQUEsRUFBQUUsQ0FBQSxFQUFBTSxDQUFBLGdCQUFBeUQsUUFBQSxLQUFBekMsUUFBQSxFQUFBMkIsTUFBQSxDQUFBbkQsQ0FBQSxHQUFBd0UsVUFBQSxFQUFBdEUsQ0FBQSxFQUFBd0UsT0FBQSxFQUFBbEUsQ0FBQSxvQkFBQXdELE1BQUEsVUFBQXpCLEdBQUEsR0FBQXBDLENBQUEsR0FBQXlDLENBQUEsT0FBQTVDLENBQUE7QUFBQSxTQUFBNkcsbUJBQUEzRyxDQUFBLFdBQUE0RyxrQkFBQSxDQUFBNUcsQ0FBQSxLQUFBNkcsZ0JBQUEsQ0FBQTdHLENBQUEsS0FBQThHLDJCQUFBLENBQUE5RyxDQUFBLEtBQUErRyxrQkFBQTtBQUFBLFNBQUFBLG1CQUFBLGNBQUExQyxTQUFBO0FBQUEsU0FBQXdDLGlCQUFBN0csQ0FBQSw4QkFBQXFCLE1BQUEsWUFBQXJCLENBQUEsQ0FBQXFCLE1BQUEsQ0FBQUMsUUFBQSxhQUFBdEIsQ0FBQSx1QkFBQWdILEtBQUEsQ0FBQUMsSUFBQSxDQUFBakgsQ0FBQTtBQUFBLFNBQUE0RyxtQkFBQTVHLENBQUEsUUFBQWdILEtBQUEsQ0FBQUUsT0FBQSxDQUFBbEgsQ0FBQSxVQUFBbUgsaUJBQUEsQ0FBQW5ILENBQUE7QUFBQSxTQUFBb0gsMkJBQUFwSCxDQUFBLEVBQUFGLENBQUEsUUFBQUcsQ0FBQSx5QkFBQW9CLE1BQUEsSUFBQXJCLENBQUEsQ0FBQXFCLE1BQUEsQ0FBQUMsUUFBQSxLQUFBdEIsQ0FBQSxxQkFBQUMsQ0FBQSxRQUFBK0csS0FBQSxDQUFBRSxPQUFBLENBQUFsSCxDQUFBLE1BQUFDLENBQUEsR0FBQTZHLDJCQUFBLENBQUE5RyxDQUFBLE1BQUFGLENBQUEsSUFBQUUsQ0FBQSx1QkFBQUEsQ0FBQSxDQUFBb0YsTUFBQSxJQUFBbkYsQ0FBQSxLQUFBRCxDQUFBLEdBQUFDLENBQUEsT0FBQW9ILEVBQUEsTUFBQUMsQ0FBQSxZQUFBQSxFQUFBLGVBQUE3RSxDQUFBLEVBQUE2RSxDQUFBLEVBQUFoSCxDQUFBLFdBQUFBLEVBQUEsV0FBQStHLEVBQUEsSUFBQXJILENBQUEsQ0FBQW9GLE1BQUEsS0FBQXZCLElBQUEsV0FBQUEsSUFBQSxNQUFBekMsS0FBQSxFQUFBcEIsQ0FBQSxDQUFBcUgsRUFBQSxVQUFBdkgsQ0FBQSxXQUFBQSxFQUFBRSxDQUFBLFVBQUFBLENBQUEsS0FBQXdDLENBQUEsRUFBQThFLENBQUEsZ0JBQUFqRCxTQUFBLGlKQUFBbEQsQ0FBQSxFQUFBWCxDQUFBLE9BQUFJLENBQUEsZ0JBQUE2QixDQUFBLFdBQUFBLEVBQUEsSUFBQXhDLENBQUEsR0FBQUEsQ0FBQSxDQUFBYSxJQUFBLENBQUFkLENBQUEsTUFBQU0sQ0FBQSxXQUFBQSxFQUFBLFFBQUFOLENBQUEsR0FBQUMsQ0FBQSxDQUFBc0UsSUFBQSxXQUFBL0QsQ0FBQSxHQUFBUixDQUFBLENBQUE2RCxJQUFBLEVBQUE3RCxDQUFBLEtBQUFGLENBQUEsV0FBQUEsRUFBQUUsQ0FBQSxJQUFBWSxDQUFBLE9BQUFPLENBQUEsR0FBQW5CLENBQUEsS0FBQXdDLENBQUEsV0FBQUEsRUFBQSxVQUFBaEMsQ0FBQSxZQUFBUCxDQUFBLGNBQUFBLENBQUEsOEJBQUFXLENBQUEsUUFBQU8sQ0FBQTtBQUFBLFNBQUEyRiw0QkFBQTlHLENBQUEsRUFBQVEsQ0FBQSxRQUFBUixDQUFBLDJCQUFBQSxDQUFBLFNBQUFtSCxpQkFBQSxDQUFBbkgsQ0FBQSxFQUFBUSxDQUFBLE9BQUFQLENBQUEsTUFBQXNILFFBQUEsQ0FBQXpHLElBQUEsQ0FBQWQsQ0FBQSxFQUFBbUcsS0FBQSw2QkFBQWxHLENBQUEsSUFBQUQsQ0FBQSxDQUFBdUYsV0FBQSxLQUFBdEYsQ0FBQSxHQUFBRCxDQUFBLENBQUF1RixXQUFBLENBQUFDLElBQUEsYUFBQXZGLENBQUEsY0FBQUEsQ0FBQSxHQUFBK0csS0FBQSxDQUFBQyxJQUFBLENBQUFqSCxDQUFBLG9CQUFBQyxDQUFBLCtDQUFBdUgsSUFBQSxDQUFBdkgsQ0FBQSxJQUFBa0gsaUJBQUEsQ0FBQW5ILENBQUEsRUFBQVEsQ0FBQTtBQUFBLFNBQUEyRyxrQkFBQW5ILENBQUEsRUFBQVEsQ0FBQSxhQUFBQSxDQUFBLElBQUFBLENBQUEsR0FBQVIsQ0FBQSxDQUFBb0YsTUFBQSxNQUFBNUUsQ0FBQSxHQUFBUixDQUFBLENBQUFvRixNQUFBLFlBQUF0RixDQUFBLE1BQUFRLENBQUEsR0FBQTBHLEtBQUEsQ0FBQXhHLENBQUEsR0FBQVYsQ0FBQSxHQUFBVSxDQUFBLEVBQUFWLENBQUEsSUFBQVEsQ0FBQSxDQUFBUixDQUFBLElBQUFFLENBQUEsQ0FBQUYsQ0FBQSxVQUFBUSxDQUFBO0FBQUEsU0FBQW1ILG1CQUFBbkgsQ0FBQSxFQUFBTCxDQUFBLEVBQUFILENBQUEsRUFBQUUsQ0FBQSxFQUFBbUIsQ0FBQSxFQUFBWCxDQUFBLEVBQUFlLENBQUEsY0FBQVIsQ0FBQSxHQUFBVCxDQUFBLENBQUFFLENBQUEsRUFBQWUsQ0FBQSxHQUFBWCxDQUFBLEdBQUFHLENBQUEsQ0FBQUssS0FBQSxXQUFBZCxDQUFBLGdCQUFBUixDQUFBLENBQUFRLENBQUEsS0FBQVMsQ0FBQSxDQUFBOEMsSUFBQSxHQUFBNUQsQ0FBQSxDQUFBVyxDQUFBLElBQUFpRixPQUFBLENBQUFyQyxPQUFBLENBQUE1QyxDQUFBLEVBQUE4QyxJQUFBLENBQUExRCxDQUFBLEVBQUFtQixDQUFBO0FBQUEsU0FBQXVHLGtCQUFBcEgsQ0FBQSw2QkFBQUwsQ0FBQSxTQUFBSCxDQUFBLEdBQUE2SCxTQUFBLGFBQUE5QixPQUFBLFdBQUE3RixDQUFBLEVBQUFtQixDQUFBLFFBQUFYLENBQUEsR0FBQUYsQ0FBQSxDQUFBc0gsS0FBQSxDQUFBM0gsQ0FBQSxFQUFBSCxDQUFBLFlBQUErSCxNQUFBdkgsQ0FBQSxJQUFBbUgsa0JBQUEsQ0FBQWpILENBQUEsRUFBQVIsQ0FBQSxFQUFBbUIsQ0FBQSxFQUFBMEcsS0FBQSxFQUFBQyxNQUFBLFVBQUF4SCxDQUFBLGNBQUF3SCxPQUFBeEgsQ0FBQSxJQUFBbUgsa0JBQUEsQ0FBQWpILENBQUEsRUFBQVIsQ0FBQSxFQUFBbUIsQ0FBQSxFQUFBMEcsS0FBQSxFQUFBQyxNQUFBLFdBQUF4SCxDQUFBLEtBQUF1SCxLQUFBO0FBQUEsU0FBQTFILFFBQUFnQixDQUFBLHNDQUFBaEIsT0FBQSx3QkFBQWtCLE1BQUEsdUJBQUFBLE1BQUEsQ0FBQUMsUUFBQSxhQUFBSCxDQUFBLGtCQUFBQSxDQUFBLGdCQUFBQSxDQUFBLFdBQUFBLENBQUEseUJBQUFFLE1BQUEsSUFBQUYsQ0FBQSxDQUFBb0UsV0FBQSxLQUFBbEUsTUFBQSxJQUFBRixDQUFBLEtBQUFFLE1BQUEsQ0FBQUgsU0FBQSxxQkFBQUMsQ0FBQSxLQUFBaEIsT0FBQSxDQUFBZ0IsQ0FBQTtBQXFEQSxTQUFTNEcsU0FBU0EsQ0FBQ0MsSUFBYyxFQUFPO0VBQ3RDLElBQU1DLGtCQUFrQixHQUFHLENBQ3pCQyx3QkFBVyxFQUNYQyx5QkFBWSxFQUNaQyx5QkFBWSxFQUNaQyw4QkFBaUIsRUFDakJDLDZCQUFnQixFQUNoQkMseUJBQVksRUFDWkMsMEJBQWEsRUFDYkMsaUNBQW9CLEVBQ3BCQyx1QkFBVSxFQUNWQyxpQ0FBb0IsRUFDcEJDLGlDQUFvQixFQUNwQkMsaUNBQW9CLEVBQ3BCO0lBQ0VDLEtBQUssRUFBRSxHQUFHO0lBQ1ZDLElBQUksRUFBRSw4QkFBOEI7SUFDcEN2RCxJQUFJLEVBQUUsU0FBUztJQUNmcEQsSUFBSSxFQUFFNEc7RUFDUixDQUFDLEVBQ0Q7SUFDRUQsSUFBSSxFQUFFLHFGQUFxRjtJQUMzRnZELElBQUksRUFBRSx1QkFBdUI7SUFDN0JwRCxJQUFJLEVBQUU2RztFQUNSLENBQUMsRUFDRDtJQUNFSCxLQUFLLEVBQUUsR0FBRztJQUNWQyxJQUFJLEVBQUUscUJBQXFCO0lBQzNCdkQsSUFBSSxFQUFFLGFBQWE7SUFDbkJwRCxJQUFJLEVBQUU2RztFQUNSLENBQUMsQ0FDRjtFQUNELElBQU1DLE9BQU8sR0FBRyxJQUFBQywyQkFBZSxFQUFDbEIsa0JBQWtCLEVBQUU7SUFDbERELElBQUksRUFBRUE7RUFDUixDQUFDLENBQUM7RUFDRixPQUFPa0IsT0FBTztBQUNoQjtBQUVBLFNBQVNFLFFBQVFBLENBQ2ZDLFdBQStCLEVBQy9CQyxXQUFtQixFQUNuQkMsT0FBZSxFQUNUO0VBQ05wSyxHQUFHLENBQUNxSyxLQUFLLENBQUNILFdBQVcsS0FBQUksTUFBQSxDQUFLSCxXQUFXLGVBQVlDLE9BQU8sQ0FBQztBQUMzRDtBQUVBLFNBQVNHLFNBQVNBLENBQ2hCQyxlQUF1QixFQUN2QlQsT0FBWSxFQUNaVSxRQUFnQixFQUNoQkMsY0FBbUIsRUFDWDtFQUNSLElBQUlYLE9BQU8sQ0FBQ1ksTUFBTSxFQUFFO0lBQ2xCLElBQU1DLFNBQVMsR0FBRzVLLEdBQUcsQ0FBQzZLLGFBQWEsQ0FDakNMLGVBQWUsRUFDZixrQkFBa0IsRUFDbEJULE9BQU8sQ0FBQ2UsTUFDVixDQUFDO0lBQ0QsSUFDR0wsUUFBUSxLQUFLLEVBQUUsSUFBSUcsU0FBUyxLQUFLLEVBQUUsSUFDbkNILFFBQVEsS0FBSyxDQUFDLElBQUlHLFNBQVMsS0FBSyxDQUFDLElBQUlBLFNBQVMsS0FBSyxFQUFHLEVBQ3ZEO01BQ0FILFFBQVEsR0FBR0csU0FBUztJQUN0QjtFQUNGO0VBQ0EsSUFDRUcsZ0JBQWdCLENBQUNQLGVBQWUsRUFBRVQsT0FBTyxFQUFFVyxjQUFjLENBQUMsS0FDekRELFFBQVEsS0FBSyxDQUFDLElBQUlBLFFBQVEsS0FBSyxFQUFFLENBQUMsRUFDbkM7SUFDQUEsUUFBUSxHQUFHLENBQUM7RUFDZDtFQUNBLE9BQU9BLFFBQVE7QUFDakI7QUFFQSxTQUFTTyxvQkFBb0JBLENBQzNCQyxJQUFTLEVBQ1RDLE9BQTBCLEVBQzFCQyxRQUE2QixFQUM3QkMsTUFBMkIsRUFDM0JDLFVBQW1CLEVBQ0o7RUFDZkgsT0FBTyxDQUFDRCxJQUFJLENBQUM7RUFDYixJQUFJakssT0FBQSxDQUFPaUssSUFBSSxNQUFLLFFBQVEsSUFBSTNKLE1BQU0sQ0FBQ3FGLElBQUksQ0FBQ3NFLElBQUksQ0FBQyxDQUFDaEYsTUFBTSxLQUFLLENBQUMsRUFBRTtJQUM5RDtJQUNBLE9BQU8sSUFBSTtFQUNiO0VBQ0EsSUFBTXFGLFFBQVEsR0FBR0MsSUFBSSxDQUFDQyxTQUFTLENBQUNQLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0VBQzlDLElBQUksQ0FBQ0ksVUFBVSxFQUFFO0lBQ2YsT0FBT0MsUUFBUTtFQUNqQixDQUFDLE1BQU07SUFDTCxJQUFNRyxhQUFnQixHQUFHTixRQUFRLENBQUNHLFFBQVEsQ0FBQztJQUMzQyxPQUFPRixNQUFNLENBQUNLLGFBQWEsQ0FBQztFQUM5QjtBQUNGO0FBQUMsU0FFY0MsWUFBWUEsQ0FBQUMsRUFBQSxFQUFBQyxHQUFBLEVBQUFDLEdBQUEsRUFBQUMsR0FBQSxFQUFBQyxHQUFBLEVBQUFDLEdBQUEsRUFBQUMsR0FBQTtFQUFBLE9BQUFDLGFBQUEsQ0FBQXpELEtBQUEsT0FBQUQsU0FBQTtBQUFBO0FBQUEsU0FBQTBELGNBQUE7RUFBQUEsYUFBQSxHQUFBM0QsaUJBQUEsY0FBQXpHLG1CQUFBLEdBQUF3RSxJQUFBLENBQTNCLFNBQUE2RixRQUNFQyxhQUFxQixFQUNyQjVCLGVBQXVCLEVBQ3ZCNkIsYUFBb0IsRUFDcEJuQixPQUFZLEVBQ1pvQixhQUE2QyxFQUM3Q3ZDLE9BQVksRUFDWndDLGFBQW1CO0lBQUEsSUFBQUMsVUFBQSxFQUFBQyxNQUFBLEVBQUFDLGFBQUEsRUFBQUMsUUFBQSxFQUFBQyxXQUFBLEVBQUFDLE9BQUEsRUFBQTVCLElBQUEsRUFBQTZCLFlBQUEsRUFBQUMsU0FBQSxFQUFBQyxhQUFBO0lBQUEsT0FBQWxMLG1CQUFBLEdBQUFhLElBQUEsVUFBQXNLLFNBQUFDLFFBQUE7TUFBQSxrQkFBQUEsUUFBQSxDQUFBcEcsSUFBQSxHQUFBb0csUUFBQSxDQUFBOUgsSUFBQTtRQUFBO1VBQUFvSCxVQUFBLEdBQUF2RSwwQkFBQSxDQUVTLElBQUFrRixxQkFBTyxFQUFDZixhQUFhLEVBQUVDLGFBQWEsQ0FBQztVQUFBYSxRQUFBLENBQUFwRyxJQUFBO1VBQUEwRixVQUFBLENBQUFsSixDQUFBO1FBQUE7VUFBQSxLQUFBbUosTUFBQSxHQUFBRCxVQUFBLENBQUFyTCxDQUFBLElBQUF1RCxJQUFBO1lBQUF3SSxRQUFBLENBQUE5SCxJQUFBO1lBQUE7VUFBQTtVQUF0RHNILGFBQWEsR0FBQUQsTUFBQSxDQUFBeEssS0FBQTtVQUNoQjBLLFFBQVEsR0FBR0QsYUFBYSxDQUFDQSxhQUFhLENBQUN6RyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1VBQUEsSUFDbkQwRyxRQUFRLENBQUNTLFFBQVEsQ0FBQyxPQUFPLENBQUM7WUFBQUYsUUFBQSxDQUFBOUgsSUFBQTtZQUFBO1VBQUE7VUFBQSxPQUFBOEgsUUFBQSxDQUFBakksTUFBQTtRQUFBO1VBQ3pCMkgsV0FBVyxHQUFHUyxnQkFBSSxDQUFDQyxJQUFJLENBQUE3RSxLQUFBLENBQVQ0RSxnQkFBSSxHQUFNakIsYUFBYSxFQUFBOUIsTUFBQSxDQUFBOUMsa0JBQUEsQ0FBS2tGLGFBQWEsR0FBQztVQUN4REcsT0FBTyxHQUFHVSxtQkFBRSxDQUFDQyxZQUFZLENBQUNaLFdBQVcsRUFBRTtZQUFFYSxRQUFRLEVBQUU7VUFBTyxDQUFDLENBQUM7VUFDbEUsSUFBSTFELE9BQU8sQ0FBQzJELE9BQU8sRUFBRUMsT0FBTyxDQUFDQyxHQUFHLG1CQUFBdEQsTUFBQSxDQUFtQnNDLFdBQVcsUUFBSyxDQUFDO1VBQzlEM0IsSUFBSSxHQUFHTSxJQUFJLENBQUNzQyxLQUFLLENBQUNoQixPQUFPLENBQUM7VUFDMUJDLFlBQVksR0FBRyxDQUFDL0MsT0FBTyxDQUFDLGFBQWEsQ0FBQztVQUN0Q2dELFNBQVMsR0FBRy9CLG9CQUFvQixDQUNwQ0MsSUFBSSxFQUNKQyxPQUFPLEVBQ1BvQixhQUFhLENBQUNuQixRQUFRLEVBQ3RCbUIsYUFBYSxDQUFDbEIsTUFBTSxFQUNwQjBCLFlBQ0YsQ0FBQztVQUFBLE1BRUdDLFNBQVMsS0FBSyxJQUFJO1lBQUFHLFFBQUEsQ0FBQTlILElBQUE7WUFBQTtVQUFBO1VBQ2Q0SCxhQUFhLEdBQUdLLGdCQUFJLENBQUNDLElBQUksQ0FBQTdFLEtBQUEsQ0FBVDRFLGdCQUFJLEdBQU03QyxlQUFlLEVBQUFGLE1BQUEsQ0FBQTlDLGtCQUFBLENBQUtrRixhQUFhLEdBQUM7VUFDbEVhLG1CQUFFLENBQUNPLGFBQWEsQ0FBQ1QsZ0JBQUksQ0FBQ1UsT0FBTyxDQUFDZixhQUFhLENBQUMsQ0FBQztVQUM3Q08sbUJBQUUsQ0FBQ1MsYUFBYSxDQUFDaEIsYUFBYSxFQUFFRCxTQUFTLEVBQUU7WUFBRVUsUUFBUSxFQUFFO1VBQU8sQ0FBQyxDQUFDO1VBQUEsS0FFNURsQixhQUFhO1lBQUFXLFFBQUEsQ0FBQTlILElBQUE7WUFBQTtVQUFBO1VBQUE4SCxRQUFBLENBQUE5SCxJQUFBO1VBQUEsT0FDVG1ILGFBQWEsQ0FBQ3RCLElBQUksRUFBRVQsZUFBZSxFQUFFVCxPQUFPLENBQUM7UUFBQTtVQUFBbUQsUUFBQSxDQUFBOUgsSUFBQTtVQUFBO1FBQUE7VUFBQThILFFBQUEsQ0FBQTlILElBQUE7VUFBQTtRQUFBO1VBQUE4SCxRQUFBLENBQUFwRyxJQUFBO1VBQUFvRyxRQUFBLENBQUFlLEVBQUEsR0FBQWYsUUFBQTtVQUFBVixVQUFBLENBQUE3TCxDQUFBLENBQUF1TSxRQUFBLENBQUFlLEVBQUE7UUFBQTtVQUFBZixRQUFBLENBQUFwRyxJQUFBO1VBQUEwRixVQUFBLENBQUFuSixDQUFBO1VBQUEsT0FBQTZKLFFBQUEsQ0FBQTdGLE1BQUE7UUFBQTtRQUFBO1VBQUEsT0FBQTZGLFFBQUEsQ0FBQWpHLElBQUE7TUFBQTtJQUFBLEdBQUFrRixPQUFBO0VBQUEsQ0FJMUQ7RUFBQSxPQUFBRCxhQUFBLENBQUF6RCxLQUFBLE9BQUFELFNBQUE7QUFBQTtBQUFBLFNBRWMwRixvQkFBb0JBLENBQUFDLEdBQUE7RUFBQSxPQUFBQyxxQkFBQSxDQUFBM0YsS0FBQSxPQUFBRCxTQUFBO0FBQUE7QUFBQSxTQUFBNEYsc0JBQUE7RUFBQUEscUJBQUEsR0FBQTdGLGlCQUFBLGNBQUF6RyxtQkFBQSxHQUFBd0UsSUFBQSxDQUFuQyxTQUFBK0gsU0FBb0N0RSxPQUFZO0lBQUEsSUFBQXVFLGNBQUE7SUFBQSxJQUFBbEUsT0FBQSxFQUFBSyxRQUFBLEVBQUFQLFdBQUEsRUFBQXFFLGVBQUEsRUFBQUMsY0FBQSxFQUFBQyxVQUFBLEVBQUFDLE1BQUEsRUFBQUMsT0FBQSxFQUFBeEUsV0FBQSxFQUFBaUMsYUFBQSxFQUFBNUIsZUFBQSxFQUFBb0UsVUFBQSxFQUFBQyxNQUFBLEVBQUFDLFFBQUEsRUFBQUMsWUFBQSxFQUFBQyxjQUFBLEVBQUFDLGdCQUFBLEVBQUFDLFVBQUEsRUFBQUMsTUFBQSxFQUFBQyxTQUFBLEVBQUFDLGFBQUEsRUFBQUMsZUFBQSxFQUFBQyxpQkFBQSxFQUFBQyxVQUFBLEVBQUFDLE1BQUEsRUFBQUMsU0FBQSxFQUFBQyxhQUFBLEVBQUFDLGVBQUEsRUFBQUMsaUJBQUEsRUFBQUMsVUFBQSxFQUFBQyxNQUFBLEVBQUFDLFNBQUEsRUFBQUMsYUFBQSxFQUFBQyxlQUFBLEVBQUFDLGlCQUFBLEVBQUFDLFVBQUEsRUFBQUMsTUFBQSxFQUFBQyxTQUFBLEVBQUFDLGFBQUEsRUFBQUMsZUFBQSxFQUFBQyxpQkFBQSxFQUFBQyxXQUFBLEVBQUFDLE9BQUEsRUFBQUMsU0FBQSxFQUFBQyxhQUFBLEVBQUFDLGVBQUEsRUFBQUMsaUJBQUE7SUFBQSxPQUFBalAsbUJBQUEsR0FBQWEsSUFBQSxVQUFBcU8sVUFBQUMsU0FBQTtNQUFBLGtCQUFBQSxTQUFBLENBQUFuSyxJQUFBLEdBQUFtSyxTQUFBLENBQUE3TCxJQUFBO1FBQUE7VUFDeENnRixPQUFlLEdBQUdMLE9BQU8sQ0FBQ0ssT0FBTztVQUN2QzhHLElBQUksQ0FBQ25QLFNBQVMsQ0FBQ29QLE1BQU0sR0FBR0Msd0JBQWlCO1VBQ3JDM0csUUFBUSxHQUFHVixPQUFPLENBQUNZLE1BQU0sR0FBRyxFQUFFLEdBQUcsQ0FBQztVQUNoQ1QsV0FBVyxJQUFBb0UsY0FBQSxHQUFHdkUsT0FBTyxDQUFDTSxLQUFLLGNBQUFpRSxjQUFBLHVCQUFiQSxjQUFBLENBQWUrQyxJQUFJLENBQUMsQ0FBQyxDQUFDQyxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztVQUN2RC9DLGVBQWUsR0FBRyxJQUFBZ0QsNEJBQWtCLEVBQUN4SCxPQUFPLENBQUN5SCxVQUFVLENBQUM7VUFDMURoRCxjQUFjLEdBQUcsSUFBQWlELDZCQUFtQixFQUFDQyxrQkFBUSxFQUFFM0gsT0FBTyxDQUFDNEgsV0FBVyxDQUFDO1VBQUEsTUFFbkVwRCxlQUFlLEdBQUdxRCx5QkFBZSxDQUFDQyxnQkFBZ0I7WUFBQVosU0FBQSxDQUFBN0wsSUFBQTtZQUFBO1VBQUE7VUFBQXFKLFVBQUEsR0FBQXhHLDBCQUFBLENBQzlCdUcsY0FBYyxDQUFDc0QsZ0JBQWdCO1VBQUFiLFNBQUEsQ0FBQW5LLElBQUE7VUFBQTJILFVBQUEsQ0FBQW5MLENBQUE7UUFBQTtVQUFBLEtBQUFvTCxNQUFBLEdBQUFELFVBQUEsQ0FBQXROLENBQUEsSUFBQXVELElBQUE7WUFBQXVNLFNBQUEsQ0FBQTdMLElBQUE7WUFBQTtVQUFBO1VBQTFDdUosT0FBTyxHQUFBRCxNQUFBLENBQUF6TSxLQUFBO1VBQ1ZrSSxXQUFXLEdBQUdrRCxnQkFBSSxDQUFDMEUsUUFBUSxDQUFDcEQsT0FBTyxDQUFDaEMsUUFBUSxFQUFFLE9BQU8sQ0FBQztVQUFBLE1BQ3hENUMsT0FBTyxDQUFDNEUsT0FBTyxJQUFJeEUsV0FBVyxLQUFLSixPQUFPLENBQUM0RSxPQUFPO1lBQUFzQyxTQUFBLENBQUE3TCxJQUFBO1lBQUE7VUFBQTtVQUFBLE9BQUE2TCxTQUFBLENBQUFoTSxNQUFBO1FBQUE7VUFHdERnRixRQUFRLENBQUNDLFdBQVcsRUFBRUMsV0FBVyxFQUFFQyxPQUFPLENBQUM7VUFFckNnQyxhQUFxQixHQUFHaUIsZ0JBQUksQ0FBQ0MsSUFBSSxDQUFDbEQsT0FBTyxFQUFFRCxXQUFXLENBQUM7VUFDdkRLLGVBQXVCLEdBQUc0QixhQUFhLEdBQUcsVUFBVTtVQUMxRCxJQUFJckMsT0FBTyxDQUFDaUksSUFBSSxFQUFFO1lBQ2hCaFMsR0FBRyxDQUFDaVMsWUFBWSxDQUFDekgsZUFBZSxDQUFDO1VBQ25DO1VBRUEwSCxnQkFBZ0IsQ0FBQy9ILFdBQVcsRUFBRUosT0FBTyxDQUFDO1VBQUFrSCxTQUFBLENBQUE3TCxJQUFBO1VBQUEsT0FDaENzRyxZQUFZLENBQ2hCVSxhQUFhLEVBQ2I1QixlQUFlLEVBQ2YsQ0FBQyxTQUFTLENBQUMsRUFDWDJILHFCQUFXLEVBQ1g7WUFDRWhILFFBQVEsRUFBRWlILDJCQUF1QixDQUFDQyxRQUFRO1lBQzFDakgsTUFBTSxFQUFFZ0gsMkJBQXVCLENBQUNFO1VBQ2xDLENBQUMsRUFDRHZJLE9BQ0YsQ0FBQztRQUFBO1VBQUFrSCxTQUFBLENBQUE3TCxJQUFBO1VBQUEsT0FDS3NHLFlBQVksQ0FDaEJVLGFBQWEsRUFDYjVCLGVBQWUsRUFDZixDQUFDLFNBQVMsQ0FBQyxFQUNYK0gscUJBQVcsRUFDWDtZQUNFcEgsUUFBUSxFQUFFaUgsMkJBQXVCLENBQUNJLFFBQVE7WUFDMUNwSCxNQUFNLEVBQUVnSCwyQkFBdUIsQ0FBQ0s7VUFDbEMsQ0FBQyxFQUNEMUksT0FDRixDQUFDO1FBQUE7VUFFRFUsUUFBUSxHQUFHRixTQUFTLENBQUNDLGVBQWUsRUFBRVQsT0FBTyxFQUFFVSxRQUFRLEVBQUUsQ0FDdkQsU0FBUyxFQUNULFNBQVMsQ0FDVixDQUFDO1FBQUE7VUFBQXdHLFNBQUEsQ0FBQTdMLElBQUE7VUFBQTtRQUFBO1VBQUE2TCxTQUFBLENBQUE3TCxJQUFBO1VBQUE7UUFBQTtVQUFBNkwsU0FBQSxDQUFBbkssSUFBQTtVQUFBbUssU0FBQSxDQUFBaEQsRUFBQSxHQUFBZ0QsU0FBQTtVQUFBeEMsVUFBQSxDQUFBOU4sQ0FBQSxDQUFBc1EsU0FBQSxDQUFBaEQsRUFBQTtRQUFBO1VBQUFnRCxTQUFBLENBQUFuSyxJQUFBO1VBQUEySCxVQUFBLENBQUFwTCxDQUFBO1VBQUEsT0FBQTROLFNBQUEsQ0FBQTVKLE1BQUE7UUFBQTtVQUFBLE1BSUZrSCxlQUFlLEdBQUdxRCx5QkFBZSxDQUFDYyxPQUFPO1lBQUF6QixTQUFBLENBQUE3TCxJQUFBO1lBQUE7VUFBQTtVQUFBd0osVUFBQSxHQUFBM0csMEJBQUEsQ0FDckJ1RyxjQUFjLENBQUNtRSxPQUFPO1VBQUExQixTQUFBLENBQUFuSyxJQUFBO1VBQUE4SCxVQUFBLENBQUF0TCxDQUFBO1FBQUE7VUFBQSxLQUFBdUwsTUFBQSxHQUFBRCxVQUFBLENBQUF6TixDQUFBLElBQUF1RCxJQUFBO1lBQUF1TSxTQUFBLENBQUE3TCxJQUFBO1lBQUE7VUFBQTtVQUFqQ3VKLFFBQU8sR0FBQUUsTUFBQSxDQUFBNU0sS0FBQTtVQUNWa0ksWUFBVyxHQUFHa0QsZ0JBQUksQ0FBQzBFLFFBQVEsQ0FBQ3BELFFBQU8sQ0FBQ2hDLFFBQVEsRUFBRSxPQUFPLENBQUM7VUFBQSxNQUN4RDVDLE9BQU8sQ0FBQzRFLE9BQU8sSUFBSXhFLFlBQVcsS0FBS0osT0FBTyxDQUFDNEUsT0FBTztZQUFBc0MsU0FBQSxDQUFBN0wsSUFBQTtZQUFBO1VBQUE7VUFBQSxPQUFBNkwsU0FBQSxDQUFBaE0sTUFBQTtRQUFBO1VBSXREZ0YsUUFBUSxDQUFDQyxXQUFXLEVBQUVDLFlBQVcsRUFBRUMsT0FBTyxDQUFDO1VBQzNDOEgsZ0JBQWdCLENBQUMvSCxZQUFXLEVBQUVKLE9BQU8sQ0FBQztVQUNoQ3FDLGNBQXFCLEdBQUdpQixnQkFBSSxDQUFDQyxJQUFJLENBQUNsRCxPQUFPLEVBQUVELFlBQVcsQ0FBQztVQUN2REssZ0JBQXVCLEdBQUc0QixjQUFhLEdBQUcsVUFBVTtVQUFBNkUsU0FBQSxDQUFBN0wsSUFBQTtVQUFBLE9BRXBEc0csWUFBWSxDQUNoQlUsY0FBYSxFQUNiNUIsZ0JBQWUsRUFDZixFQUFFLEVBQ0ZvSSxzQkFBWSxFQUNaO1lBQ0V6SCxRQUFRLEVBQUUwSCxnQkFBYyxDQUFDQyxTQUFTO1lBQ2xDMUgsTUFBTSxFQUFFeUgsZ0JBQWMsQ0FBQ0U7VUFDekIsQ0FBQyxFQUNEaEosT0FDRixDQUFDO1FBQUE7VUFFRFUsUUFBUSxHQUFHRixTQUFTLENBQUNDLGdCQUFlLEVBQUVULE9BQU8sRUFBRVUsUUFBUSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7UUFBQTtVQUFBd0csU0FBQSxDQUFBN0wsSUFBQTtVQUFBO1FBQUE7VUFBQTZMLFNBQUEsQ0FBQTdMLElBQUE7VUFBQTtRQUFBO1VBQUE2TCxTQUFBLENBQUFuSyxJQUFBO1VBQUFtSyxTQUFBLENBQUErQixFQUFBLEdBQUEvQixTQUFBO1VBQUFyQyxVQUFBLENBQUFqTyxDQUFBLENBQUFzUSxTQUFBLENBQUErQixFQUFBO1FBQUE7VUFBQS9CLFNBQUEsQ0FBQW5LLElBQUE7VUFBQThILFVBQUEsQ0FBQXZMLENBQUE7VUFBQSxPQUFBNE4sU0FBQSxDQUFBNUosTUFBQTtRQUFBO1VBQUEsTUFJL0RrSCxlQUFlLEdBQUdxRCx5QkFBZSxDQUFDcUIsV0FBVztZQUFBaEMsU0FBQSxDQUFBN0wsSUFBQTtZQUFBO1VBQUE7VUFBQThKLFVBQUEsR0FBQWpILDBCQUFBLENBQ3pCdUcsY0FBYyxDQUFDMEUsV0FBVztVQUFBakMsU0FBQSxDQUFBbkssSUFBQTtVQUFBb0ksVUFBQSxDQUFBNUwsQ0FBQTtRQUFBO1VBQUEsS0FBQTZMLE1BQUEsR0FBQUQsVUFBQSxDQUFBL04sQ0FBQSxJQUFBdUQsSUFBQTtZQUFBdU0sU0FBQSxDQUFBN0wsSUFBQTtZQUFBO1VBQUE7VUFBckN1SixTQUFPLEdBQUFRLE1BQUEsQ0FBQWxOLEtBQUE7VUFDVmtJLGFBQVcsR0FBR2tELGdCQUFJLENBQUMwRSxRQUFRLENBQUNwRCxTQUFPLENBQUNoQyxRQUFRLEVBQUUsT0FBTyxDQUFDO1VBQUEsTUFDeEQ1QyxPQUFPLENBQUM0RSxPQUFPLElBQUl4RSxhQUFXLEtBQUtKLE9BQU8sQ0FBQzRFLE9BQU87WUFBQXNDLFNBQUEsQ0FBQTdMLElBQUE7WUFBQTtVQUFBO1VBQUEsT0FBQTZMLFNBQUEsQ0FBQWhNLE1BQUE7UUFBQTtVQUl0RGdGLFFBQVEsQ0FBQ0MsV0FBVyxFQUFFQyxhQUFXLEVBQUVDLE9BQU8sQ0FBQztVQUMzQzhILGdCQUFnQixDQUFDL0gsYUFBVyxFQUFFSixPQUFPLENBQUM7VUFDaENxQyxlQUFxQixHQUFHaUIsZ0JBQUksQ0FBQ0MsSUFBSSxDQUFDbEQsT0FBTyxFQUFFRCxhQUFXLENBQUM7VUFDdkRLLGlCQUF1QixHQUFHNEIsZUFBYSxHQUFHLFVBQVU7VUFBQTZFLFNBQUEsQ0FBQTdMLElBQUE7VUFBQSxPQUVwRHNHLFlBQVksQ0FDaEJVLGVBQWEsRUFDYjVCLGlCQUFlLEVBQ2YsRUFBRSxFQUNGMkkseUJBQWUsRUFDZjtZQUNFaEksUUFBUSxFQUFFaUksb0JBQWtCLENBQUNDLFlBQVk7WUFDekNqSSxNQUFNLEVBQUVnSSxvQkFBa0IsQ0FBQ0U7VUFDN0IsQ0FBQyxFQUNEdkosT0FDRixDQUFDO1FBQUE7VUFFRFUsUUFBUSxHQUFHRixTQUFTLENBQUNDLGlCQUFlLEVBQUVULE9BQU8sRUFBRVUsUUFBUSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7UUFBQTtVQUFBd0csU0FBQSxDQUFBN0wsSUFBQTtVQUFBO1FBQUE7VUFBQTZMLFNBQUEsQ0FBQTdMLElBQUE7VUFBQTtRQUFBO1VBQUE2TCxTQUFBLENBQUFuSyxJQUFBO1VBQUFtSyxTQUFBLENBQUFzQyxFQUFBLEdBQUF0QyxTQUFBO1VBQUEvQixVQUFBLENBQUF2TyxDQUFBLENBQUFzUSxTQUFBLENBQUFzQyxFQUFBO1FBQUE7VUFBQXRDLFNBQUEsQ0FBQW5LLElBQUE7VUFBQW9JLFVBQUEsQ0FBQTdMLENBQUE7VUFBQSxPQUFBNE4sU0FBQSxDQUFBNUosTUFBQTtRQUFBO1VBQUEsTUFJL0RrSCxlQUFlLEdBQUdxRCx5QkFBZSxDQUFDNEIsbUJBQW1CO1lBQUF2QyxTQUFBLENBQUE3TCxJQUFBO1lBQUE7VUFBQTtVQUFBb0ssVUFBQSxHQUFBdkgsMEJBQUEsQ0FDakN1RyxjQUFjLENBQUNpRixtQkFBbUI7VUFBQXhDLFNBQUEsQ0FBQW5LLElBQUE7VUFBQTBJLFVBQUEsQ0FBQWxNLENBQUE7UUFBQTtVQUFBLEtBQUFtTSxNQUFBLEdBQUFELFVBQUEsQ0FBQXJPLENBQUEsSUFBQXVELElBQUE7WUFBQXVNLFNBQUEsQ0FBQTdMLElBQUE7WUFBQTtVQUFBO1VBQTdDdUosU0FBTyxHQUFBYyxNQUFBLENBQUF4TixLQUFBO1VBQ1ZrSSxhQUFXLEdBQUdrRCxnQkFBSSxDQUFDMEUsUUFBUSxDQUFDcEQsU0FBTyxDQUFDaEMsUUFBUSxFQUFFLE9BQU8sQ0FBQztVQUFBLE1BQ3hENUMsT0FBTyxDQUFDNEUsT0FBTyxJQUFJeEUsYUFBVyxLQUFLSixPQUFPLENBQUM0RSxPQUFPO1lBQUFzQyxTQUFBLENBQUE3TCxJQUFBO1lBQUE7VUFBQTtVQUFBLE9BQUE2TCxTQUFBLENBQUFoTSxNQUFBO1FBQUE7VUFJdERnRixRQUFRLENBQUNDLFdBQVcsRUFBRUMsYUFBVyxFQUFFQyxPQUFPLENBQUM7VUFDM0M4SCxnQkFBZ0IsQ0FBQy9ILGFBQVcsRUFBRUosT0FBTyxDQUFDO1VBQ2hDcUMsZUFBcUIsR0FBR2lCLGdCQUFJLENBQUNDLElBQUksQ0FBQ2xELE9BQU8sRUFBRUQsYUFBVyxDQUFDO1VBQ3ZESyxpQkFBdUIsR0FBRzRCLGVBQWEsR0FBRyxVQUFVO1VBQUE2RSxTQUFBLENBQUE3TCxJQUFBO1VBQUEsT0FFcERzRyxZQUFZLENBQ2hCVSxlQUFhLEVBQ2I1QixpQkFBZSxFQUNmLENBQUMsV0FBVyxDQUFDLEVBQ2JrSixpQ0FBdUIsRUFDdkI7WUFDRXZJLFFBQVEsRUFBRXdJLDZCQUEwQixDQUFDQyxVQUFVO1lBQy9DeEksTUFBTSxFQUFFdUksNkJBQTBCLENBQUNFO1VBQ3JDLENBQUMsRUFDRDlKLE9BQU8sRUFDUCtKLG9DQUNGLENBQUM7UUFBQTtVQUFBN0MsU0FBQSxDQUFBN0wsSUFBQTtVQUFBLE9BQ0tzRyxZQUFZLENBQ2hCVSxlQUFhLEVBQ2I1QixpQkFBZSxFQUNmLENBQUMsVUFBVSxDQUFDLEVBQ1p1SixtQ0FBeUIsRUFDekI7WUFDRTVJLFFBQVEsRUFBRXdJLDZCQUEwQixDQUFDSyxzQkFBc0I7WUFDM0Q1SSxNQUFNLEVBQUV1SSw2QkFBMEIsQ0FBQ007VUFDckMsQ0FBQyxFQUNEbEssT0FDRixDQUFDO1FBQUE7VUFFRFUsUUFBUSxHQUFHRixTQUFTLENBQUNDLGlCQUFlLEVBQUVULE9BQU8sRUFBRVUsUUFBUSxFQUFFLENBQ3ZELFdBQVcsRUFDWCxVQUFVLENBQ1gsQ0FBQztRQUFBO1VBQUF3RyxTQUFBLENBQUE3TCxJQUFBO1VBQUE7UUFBQTtVQUFBNkwsU0FBQSxDQUFBN0wsSUFBQTtVQUFBO1FBQUE7VUFBQTZMLFNBQUEsQ0FBQW5LLElBQUE7VUFBQW1LLFNBQUEsQ0FBQWlELEVBQUEsR0FBQWpELFNBQUE7VUFBQXpCLFVBQUEsQ0FBQTdPLENBQUEsQ0FBQXNRLFNBQUEsQ0FBQWlELEVBQUE7UUFBQTtVQUFBakQsU0FBQSxDQUFBbkssSUFBQTtVQUFBMEksVUFBQSxDQUFBbk0sQ0FBQTtVQUFBLE9BQUE0TixTQUFBLENBQUE1SixNQUFBO1FBQUE7VUFBQSxNQUlGa0gsZUFBZSxHQUFHcUQseUJBQWUsQ0FBQ3VDLFFBQVE7WUFBQWxELFNBQUEsQ0FBQTdMLElBQUE7WUFBQTtVQUFBO1VBQUEwSyxVQUFBLEdBQUE3SCwwQkFBQSxDQUN0QnVHLGNBQWMsQ0FBQzRGLFFBQVE7VUFBQW5ELFNBQUEsQ0FBQW5LLElBQUE7VUFBQWdKLFVBQUEsQ0FBQXhNLENBQUE7UUFBQTtVQUFBLEtBQUF5TSxNQUFBLEdBQUFELFVBQUEsQ0FBQTNPLENBQUEsSUFBQXVELElBQUE7WUFBQXVNLFNBQUEsQ0FBQTdMLElBQUE7WUFBQTtVQUFBO1VBQWxDdUosU0FBTyxHQUFBb0IsTUFBQSxDQUFBOU4sS0FBQTtVQUNWa0ksYUFBVyxHQUFHa0QsZ0JBQUksQ0FBQzBFLFFBQVEsQ0FBQ3BELFNBQU8sQ0FBQ2hDLFFBQVEsRUFBRSxPQUFPLENBQUM7VUFBQSxNQUN4RDVDLE9BQU8sQ0FBQzRFLE9BQU8sSUFBSXhFLGFBQVcsS0FBS0osT0FBTyxDQUFDNEUsT0FBTztZQUFBc0MsU0FBQSxDQUFBN0wsSUFBQTtZQUFBO1VBQUE7VUFBQSxPQUFBNkwsU0FBQSxDQUFBaE0sTUFBQTtRQUFBO1VBSXREZ0YsUUFBUSxDQUFDQyxXQUFXLEVBQUVDLGFBQVcsRUFBRUMsT0FBTyxDQUFDO1VBQzNDOEgsZ0JBQWdCLENBQUMvSCxhQUFXLEVBQUVKLE9BQU8sQ0FBQztVQUNoQ3FDLGVBQXFCLEdBQUdpQixnQkFBSSxDQUFDQyxJQUFJLENBQUNsRCxPQUFPLEVBQUVELGFBQVcsQ0FBQztVQUN2REssaUJBQXVCLEdBQUc0QixlQUFhLEdBQUcsVUFBVTtVQUFBNkUsU0FBQSxDQUFBN0wsSUFBQTtVQUFBLE9BRXBEc0csWUFBWSxDQUNoQlUsZUFBYSxFQUNiNUIsaUJBQWUsRUFDZixFQUFFLEVBQ0Y2SixzQkFBWSxFQUNaO1lBQ0VsSixRQUFRLEVBQUVtSixpQkFBZSxDQUFDQyxTQUFTO1lBQ25DbkosTUFBTSxFQUFFa0osaUJBQWUsQ0FBQ0U7VUFDMUIsQ0FBQyxFQUNEekssT0FDRixDQUFDO1FBQUE7VUFFRFUsUUFBUSxHQUFHRixTQUFTLENBQUNDLGlCQUFlLEVBQUVULE9BQU8sRUFBRVUsUUFBUSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7UUFBQTtVQUFBd0csU0FBQSxDQUFBN0wsSUFBQTtVQUFBO1FBQUE7VUFBQTZMLFNBQUEsQ0FBQTdMLElBQUE7VUFBQTtRQUFBO1VBQUE2TCxTQUFBLENBQUFuSyxJQUFBO1VBQUFtSyxTQUFBLENBQUF3RCxFQUFBLEdBQUF4RCxTQUFBO1VBQUFuQixVQUFBLENBQUFuUCxDQUFBLENBQUFzUSxTQUFBLENBQUF3RCxFQUFBO1FBQUE7VUFBQXhELFNBQUEsQ0FBQW5LLElBQUE7VUFBQWdKLFVBQUEsQ0FBQXpNLENBQUE7VUFBQSxPQUFBNE4sU0FBQSxDQUFBNUosTUFBQTtRQUFBO1VBQUEsTUFJL0RrSCxlQUFlLEdBQUdxRCx5QkFBZSxDQUFDOEMsU0FBUztZQUFBekQsU0FBQSxDQUFBN0wsSUFBQTtZQUFBO1VBQUE7VUFBQWdMLFVBQUEsR0FBQW5JLDBCQUFBLENBQ3ZCeUosa0JBQVEsQ0FBQ2lELFNBQVM7VUFBQTFELFNBQUEsQ0FBQW5LLElBQUE7VUFBQXNKLFVBQUEsQ0FBQTlNLENBQUE7UUFBQTtVQUFBLEtBQUErTSxNQUFBLEdBQUFELFVBQUEsQ0FBQWpQLENBQUEsSUFBQXVELElBQUE7WUFBQXVNLFNBQUEsQ0FBQTdMLElBQUE7WUFBQTtVQUFBO1VBQTdCdUosU0FBTyxHQUFBMEIsTUFBQSxDQUFBcE8sS0FBQTtVQUNWa0ksYUFBVyxHQUFHa0QsZ0JBQUksQ0FBQzBFLFFBQVEsQ0FBQ3BELFNBQU8sQ0FBQ2hDLFFBQVEsRUFBRSxPQUFPLENBQUM7VUFBQSxNQUN4RDVDLE9BQU8sQ0FBQzRFLE9BQU8sSUFBSXhFLGFBQVcsS0FBS0osT0FBTyxDQUFDNEUsT0FBTztZQUFBc0MsU0FBQSxDQUFBN0wsSUFBQTtZQUFBO1VBQUE7VUFBQSxPQUFBNkwsU0FBQSxDQUFBaE0sTUFBQTtRQUFBO1VBSXREZ0YsUUFBUSxDQUFDQyxXQUFXLEVBQUVDLGFBQVcsRUFBRUMsT0FBTyxDQUFDO1VBQzNDOEgsZ0JBQWdCLENBQUMvSCxhQUFXLEVBQUVKLE9BQU8sQ0FBQztVQUNoQ3FDLGVBQXFCLEdBQUdpQixnQkFBSSxDQUFDQyxJQUFJLENBQUNsRCxPQUFPLEVBQUVELGFBQVcsQ0FBQztVQUN2REssaUJBQXVCLEdBQUc0QixlQUFhLEdBQUcsVUFBVTtVQUFBNkUsU0FBQSxDQUFBN0wsSUFBQTtVQUFBLE9BRXBEc0csWUFBWSxDQUNoQlUsZUFBYSxFQUNiNUIsaUJBQWUsRUFDZixFQUFFLEVBQ0ZvSyx1QkFBYSxFQUNiO1lBQ0V6SixRQUFRLEVBQUUwSixrQkFBZ0IsQ0FBQ0MsVUFBVTtZQUNyQzFKLE1BQU0sRUFBRXlKLGtCQUFnQixDQUFDRTtVQUMzQixDQUFDLEVBQ0RoTCxPQUNGLENBQUM7UUFBQTtVQUVEVSxRQUFRLEdBQUdGLFNBQVMsQ0FBQ0MsaUJBQWUsRUFBRVQsT0FBTyxFQUFFVSxRQUFRLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUFBO1VBQUF3RyxTQUFBLENBQUE3TCxJQUFBO1VBQUE7UUFBQTtVQUFBNkwsU0FBQSxDQUFBN0wsSUFBQTtVQUFBO1FBQUE7VUFBQTZMLFNBQUEsQ0FBQW5LLElBQUE7VUFBQW1LLFNBQUEsQ0FBQStELEVBQUEsR0FBQS9ELFNBQUE7VUFBQWIsVUFBQSxDQUFBelAsQ0FBQSxDQUFBc1EsU0FBQSxDQUFBK0QsRUFBQTtRQUFBO1VBQUEvRCxTQUFBLENBQUFuSyxJQUFBO1VBQUFzSixVQUFBLENBQUEvTSxDQUFBO1VBQUEsT0FBQTROLFNBQUEsQ0FBQTVKLE1BQUE7UUFBQTtVQUFBLE1BSS9Ea0gsZUFBZSxHQUFHcUQseUJBQWUsQ0FBQ3FELG9CQUFvQjtZQUFBaEUsU0FBQSxDQUFBN0wsSUFBQTtZQUFBO1VBQUE7VUFBQXNMLFdBQUEsR0FBQXpJLDBCQUFBLENBQ2xDeUosa0JBQVEsQ0FBQ3dELG9CQUFvQjtVQUFBakUsU0FBQSxDQUFBbkssSUFBQTtVQUFBNEosV0FBQSxDQUFBcE4sQ0FBQTtRQUFBO1VBQUEsS0FBQXFOLE9BQUEsR0FBQUQsV0FBQSxDQUFBdlAsQ0FBQSxJQUFBdUQsSUFBQTtZQUFBdU0sU0FBQSxDQUFBN0wsSUFBQTtZQUFBO1VBQUE7VUFBeEN1SixTQUFPLEdBQUFnQyxPQUFBLENBQUExTyxLQUFBO1VBQ1ZrSSxhQUFXLEdBQUdrRCxnQkFBSSxDQUFDMEUsUUFBUSxDQUFDcEQsU0FBTyxDQUFDaEMsUUFBUSxFQUFFLE1BQU0sQ0FBQztVQUFBLE1BQ3ZENUMsT0FBTyxDQUFDNEUsT0FBTyxJQUFJeEUsYUFBVyxLQUFLSixPQUFPLENBQUM0RSxPQUFPO1lBQUFzQyxTQUFBLENBQUE3TCxJQUFBO1lBQUE7VUFBQTtVQUFBLE9BQUE2TCxTQUFBLENBQUFoTSxNQUFBO1FBQUE7VUFJdERnRixRQUFRLENBQUNDLFdBQVcsRUFBRUMsYUFBVyxFQUFFQyxPQUFPLENBQUM7VUFDM0M4SCxnQkFBZ0IsQ0FBQy9ILGFBQVcsRUFBRUosT0FBTyxDQUFDO1VBQ2hDcUMsZUFBcUIsR0FBR2lCLGdCQUFJLENBQUNDLElBQUksQ0FBQ2xELE9BQU8sRUFBRUQsYUFBVyxDQUFDO1VBQ3ZESyxpQkFBdUIsR0FBRzRCLGVBQWEsR0FBRyxVQUFVO1VBQUE2RSxTQUFBLENBQUE3TCxJQUFBO1VBQUEsT0FFcERzRyxZQUFZLENBQ2hCVSxlQUFhLEVBQ2I1QixpQkFBZSxFQUNmLEVBQUUsRUFDRjJLLDBCQUFnQixFQUNoQjtZQUNFaEssUUFBUSxFQUFFaUssZUFBb0IsQ0FBQ0MsYUFBYTtZQUM1Q2pLLE1BQU0sRUFBRWdLLGVBQW9CLENBQUNFO1VBQy9CLENBQUMsRUFDRHZMLE9BQ0YsQ0FBQztRQUFBO1VBRURVLFFBQVEsR0FBR0YsU0FBUyxDQUFDQyxpQkFBZSxFQUFFVCxPQUFPLEVBQUVVLFFBQVEsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQUE7VUFBQXdHLFNBQUEsQ0FBQTdMLElBQUE7VUFBQTtRQUFBO1VBQUE2TCxTQUFBLENBQUE3TCxJQUFBO1VBQUE7UUFBQTtVQUFBNkwsU0FBQSxDQUFBbkssSUFBQTtVQUFBbUssU0FBQSxDQUFBc0UsRUFBQSxHQUFBdEUsU0FBQTtVQUFBUCxXQUFBLENBQUEvUCxDQUFBLENBQUFzUSxTQUFBLENBQUFzRSxFQUFBO1FBQUE7VUFBQXRFLFNBQUEsQ0FBQW5LLElBQUE7VUFBQTRKLFdBQUEsQ0FBQXJOLENBQUE7VUFBQSxPQUFBNE4sU0FBQSxDQUFBNUosTUFBQTtRQUFBO1VBSW5FO1VBQ0E2SixJQUFJLENBQUNuUCxTQUFTLENBQUNvUCxNQUFNLEdBQUdxRSx5QkFBa0I7VUFBQSxPQUFBdkUsU0FBQSxDQUFBaE0sTUFBQSxXQUVuQ3dGLFFBQVE7UUFBQTtRQUFBO1VBQUEsT0FBQXdHLFNBQUEsQ0FBQWhLLElBQUE7TUFBQTtJQUFBLEdBQUFvSCxRQUFBO0VBQUEsQ0FDaEI7RUFBQSxPQUFBRCxxQkFBQSxDQUFBM0YsS0FBQSxPQUFBRCxTQUFBO0FBQUE7QUFFRCxTQUFTMEosZ0JBQWdCQSxDQUFDL0gsV0FBbUIsRUFBRUosT0FBWSxFQUFPO0VBQ2hFLElBQU1LLE9BQU8sR0FBR0wsT0FBTyxDQUFDSyxPQUFPO0VBQy9CLElBQU1nQyxhQUFxQixHQUFHaUIsZ0JBQUksQ0FBQ0MsSUFBSSxDQUFDbEQsT0FBTyxFQUFFRCxXQUFXLENBQUM7RUFDN0QsSUFBTUssZUFBdUIsR0FBRzRCLGFBQWEsR0FBRyxVQUFVO0VBQzFELElBQUksQ0FBQ3JDLE9BQU8sQ0FBQzBMLE1BQU0sRUFBRTtJQUNuQjlILE9BQU8sQ0FBQ0MsR0FBRyx3QkFBQXRELE1BQUEsQ0FBd0JFLGVBQWUsV0FBRyxDQUFDO0VBQ3hEO0VBQ0ErQyxtQkFBRSxDQUFDTyxhQUFhLENBQUN0RCxlQUFlLENBQUM7RUFBQSxJQUFBa0wsU0FBQSxHQUFBek4sMEJBQUEsQ0FDVnNGLG1CQUFFLENBQUNvSSxXQUFXLENBQUNuTCxlQUFlLENBQUM7SUFBQW9MLEtBQUE7RUFBQTtJQUF0RCxLQUFBRixTQUFBLENBQUFwUyxDQUFBLE1BQUFzUyxLQUFBLEdBQUFGLFNBQUEsQ0FBQXZVLENBQUEsSUFBQXVELElBQUEsR0FBd0Q7TUFBQSxJQUE3Q2lJLFFBQVEsR0FBQWlKLEtBQUEsQ0FBQTNULEtBQUE7TUFDakIsSUFBSTBLLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLEVBQUU7UUFDdkI7TUFDRjtNQUNBLElBQU1rSixRQUFRLEdBQUd4SSxnQkFBSSxDQUFDQyxJQUFJLENBQUM5QyxlQUFlLEVBQUVtQyxRQUFRLENBQUM7TUFDckRZLG1CQUFFLENBQUN1SSxVQUFVLENBQUNELFFBQVEsQ0FBQztJQUN6QjtFQUFDLFNBQUFFLEdBQUE7SUFBQUwsU0FBQSxDQUFBL1UsQ0FBQSxDQUFBb1YsR0FBQTtFQUFBO0lBQUFMLFNBQUEsQ0FBQXJTLENBQUE7RUFBQTtBQUNIO0FBRUEsU0FBUzBILGdCQUFnQkEsQ0FDdkJpTCxhQUFxQixFQUNyQmpNLE9BQVksRUFDWlcsY0FBbUIsRUFDVjtFQUNULElBQUl1TCxLQUFLLEdBQUcsS0FBSztFQUNqQixJQUFJbE0sT0FBTyxDQUFDWSxNQUFNLEVBQUU7SUFDbEIzSyxHQUFHLENBQUNrVyxlQUFlLENBQ2pCRixhQUFhLEVBQ2J0TCxjQUFjLEVBQ2RYLE9BQU8sQ0FBQyx1QkFBdUIsQ0FDakMsQ0FBQztJQUFBLElBQUFvTSxVQUFBLEdBQUFsTywwQkFBQSxDQUNvQjhCLE9BQU8sQ0FBQ2UsTUFBTSxJQUFJLEVBQUU7TUFBQXNMLE1BQUE7SUFBQTtNQUF6QyxLQUFBRCxVQUFBLENBQUE3UyxDQUFBLE1BQUE4UyxNQUFBLEdBQUFELFVBQUEsQ0FBQWhWLENBQUEsSUFBQXVELElBQUEsR0FBMkM7UUFBQSxJQUFoQ29HLE1BQU0sR0FBQXNMLE1BQUEsQ0FBQW5VLEtBQUE7UUFDZixJQUFJO1VBQ0ZqQyxHQUFHLENBQUNxVyxHQUFHLENBQUNMLGFBQWEsa0JBQUExTCxNQUFBLENBQWtCUSxNQUFNLGFBQVUsQ0FBQztRQUMxRCxDQUFDLENBQUMsT0FBT3dMLFlBQVksRUFBRTtVQUNyQkwsS0FBSyxHQUFHLElBQUk7UUFDZDtNQUNGO0lBQUMsU0FBQUYsR0FBQTtNQUFBSSxVQUFBLENBQUF4VixDQUFBLENBQUFvVixHQUFBO0lBQUE7TUFBQUksVUFBQSxDQUFBOVMsQ0FBQTtJQUFBO0VBQ0g7RUFDQSxPQUFPNFMsS0FBSztBQUNkO0FBRUEsU0FBU00sSUFBSUEsQ0FBQzFOLElBQVMsRUFBbUI7RUFDeEMsSUFBTWtCLE9BQU8sR0FBR25CLFNBQVMsQ0FBQ0MsSUFBSSxDQUFDO0VBQy9CLE9BQU9xRixvQkFBb0IsQ0FBQ25FLE9BQU8sQ0FBQztBQUN0Qzs7QUFFQTtBQUNBLElBQUl5TSxPQUFPLENBQUMzTixJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUN1RSxRQUFRLENBQUMsMkJBQTJCLENBQUMsRUFBRTtFQUN6RG1KLElBQUksQ0FBQ0MsT0FBTyxDQUFDM04sSUFBSSxDQUFDLENBQUN0RSxJQUFJLENBQUNpUyxPQUFPLENBQUNDLElBQUksQ0FBQztBQUN2QyIsImlnbm9yZUxpc3QiOltdfQ==