@secrecy/lib 1.0.0-dev.17 → 1.0.0-dev.20
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.
- package/README.md +1 -0
- package/lib/BaseClient.js +74 -74
- package/lib/PopupTools.js +2 -2
- package/lib/ZeusThunder.js +5 -8
- package/lib/client/admin/index.d.ts +1 -1
- package/lib/client/admin/index.js +12 -13
- package/lib/client/convert/file.js +2 -2
- package/lib/client/convert/folder.js +2 -2
- package/lib/client/convert/vFile.js +2 -2
- package/lib/client/index.d.ts +1 -0
- package/lib/client/index.js +241 -208
- package/lib/client/types/queries.js +2 -2
- package/lib/zeus/const.js +727 -726
- package/lib/zeus/index.d.ts +1278 -32463
- package/lib/zeus/index.js +36 -45
- package/package.json +28 -28
package/lib/zeus/index.js
CHANGED
|
@@ -3,9 +3,9 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
|
3
3
|
import _inheritsLoose from "@babel/runtime/helpers/inheritsLoose";
|
|
4
4
|
import _wrapNativeSuper from "@babel/runtime/helpers/wrapNativeSuper";
|
|
5
5
|
|
|
6
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
6
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
7
7
|
|
|
8
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
8
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
9
9
|
|
|
10
10
|
function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
11
11
|
|
|
@@ -346,8 +346,7 @@ export var queryConstruct = function queryConstruct(t, tName, operationName) {
|
|
|
346
346
|
return "" + t.toLowerCase() + (operationName ? ' ' + operationName : '') + inspectVariables(buildQuery(tName, o));
|
|
347
347
|
};
|
|
348
348
|
};
|
|
349
|
-
|
|
350
|
-
var fullChainConstruct = function fullChainConstruct(fn) {
|
|
349
|
+
export var fullChainConstruct = function fullChainConstruct(fn) {
|
|
351
350
|
return function (t, tName) {
|
|
352
351
|
return function (o, options) {
|
|
353
352
|
return fn(queryConstruct(t, tName, options == null ? void 0 : options.operationName)(o), options == null ? void 0 : options.variables).then(function (r) {
|
|
@@ -357,14 +356,7 @@ var fullChainConstruct = function fullChainConstruct(fn) {
|
|
|
357
356
|
};
|
|
358
357
|
};
|
|
359
358
|
};
|
|
360
|
-
|
|
361
|
-
export var fullChainConstructor = function fullChainConstructor(fn, operation, key) {
|
|
362
|
-
return function (o, options) {
|
|
363
|
-
return fullChainConstruct(fn)(operation, key)(o, options);
|
|
364
|
-
};
|
|
365
|
-
};
|
|
366
|
-
|
|
367
|
-
var fullSubscriptionConstruct = function fullSubscriptionConstruct(fn) {
|
|
359
|
+
export var fullSubscriptionConstruct = function fullSubscriptionConstruct(fn) {
|
|
368
360
|
return function (t, tName) {
|
|
369
361
|
return function (o, options) {
|
|
370
362
|
return fn(queryConstruct(t, tName, options == null ? void 0 : options.operationName)(o));
|
|
@@ -372,12 +364,6 @@ var fullSubscriptionConstruct = function fullSubscriptionConstruct(fn) {
|
|
|
372
364
|
};
|
|
373
365
|
};
|
|
374
366
|
|
|
375
|
-
export var fullSubscriptionConstructor = function fullSubscriptionConstructor(fn, operation, key) {
|
|
376
|
-
return function (o, options) {
|
|
377
|
-
return fullSubscriptionConstruct(fn)(operation, key)(o, options);
|
|
378
|
-
};
|
|
379
|
-
};
|
|
380
|
-
|
|
381
367
|
var seekForAliases = function seekForAliases(response) {
|
|
382
368
|
var traverseAlias = function traverseAlias(value) {
|
|
383
369
|
if (Array.isArray(value)) {
|
|
@@ -418,7 +404,7 @@ var seekForAliases = function seekForAliases(response) {
|
|
|
418
404
|
export var $ = function $(t) {
|
|
419
405
|
return "ZEUS_VAR$" + t.join('');
|
|
420
406
|
};
|
|
421
|
-
export var resolverFor = function resolverFor(fn) {
|
|
407
|
+
export var resolverFor = function resolverFor(_type, _field, fn) {
|
|
422
408
|
return fn;
|
|
423
409
|
};
|
|
424
410
|
|
|
@@ -520,39 +506,44 @@ export var apiSubscription = function apiSubscription(options) {
|
|
|
520
506
|
}
|
|
521
507
|
};
|
|
522
508
|
};
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
509
|
+
var allOperations = {
|
|
510
|
+
"query": "Query",
|
|
511
|
+
"mutation": "Mutation",
|
|
512
|
+
"subscription": "Subscription"
|
|
513
|
+
};
|
|
514
|
+
export var Thunder = function Thunder(fn) {
|
|
515
|
+
return function (operation) {
|
|
516
|
+
return function (o, ops) {
|
|
517
|
+
return fullChainConstruct(fn)(operation, allOperations[operation])(o, ops);
|
|
518
|
+
};
|
|
528
519
|
};
|
|
529
520
|
};
|
|
530
521
|
export var Chain = function Chain() {
|
|
531
|
-
for (var _len = arguments.length, options = new Array(_len),
|
|
532
|
-
options[
|
|
522
|
+
for (var _len = arguments.length, options = new Array(_len), _key2 = 0; _key2 < _len; _key2++) {
|
|
523
|
+
options[_key2] = arguments[_key2];
|
|
533
524
|
}
|
|
534
525
|
|
|
535
|
-
return
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
526
|
+
return Thunder(apiFetch(options));
|
|
527
|
+
};
|
|
528
|
+
export var SubscriptionThunder = function SubscriptionThunder(fn) {
|
|
529
|
+
return function (operation) {
|
|
530
|
+
return function (o, ops) {
|
|
531
|
+
return fullSubscriptionConstruct(fn)(operation, allOperations[operation])(o, ops);
|
|
532
|
+
};
|
|
539
533
|
};
|
|
540
534
|
};
|
|
541
|
-
export var
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
},
|
|
545
|
-
mutation: function mutation(o, operationName) {
|
|
546
|
-
return queryConstruct('mutation', 'Mutation', operationName)(o);
|
|
547
|
-
},
|
|
548
|
-
subscription: function subscription(o, operationName) {
|
|
549
|
-
return queryConstruct('subscription', 'Subscription', operationName)(o);
|
|
535
|
+
export var Subscription = function Subscription() {
|
|
536
|
+
for (var _len2 = arguments.length, options = new Array(_len2), _key3 = 0; _key3 < _len2; _key3++) {
|
|
537
|
+
options[_key3] = arguments[_key3];
|
|
550
538
|
}
|
|
539
|
+
|
|
540
|
+
return SubscriptionThunder(apiSubscription(options));
|
|
541
|
+
};
|
|
542
|
+
export var Zeus = function Zeus(operation, o, operationName) {
|
|
543
|
+
return queryConstruct(operation, allOperations[operation], operationName)(o);
|
|
551
544
|
};
|
|
552
|
-
export var
|
|
553
|
-
|
|
554
|
-
mutation: ZeusSelect(),
|
|
555
|
-
subscription: ZeusSelect()
|
|
545
|
+
export var Selector = function Selector(_key) {
|
|
546
|
+
return ZeusSelect();
|
|
556
547
|
};
|
|
557
|
-
export var Gql = Chain('
|
|
558
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy96ZXVzL2luZGV4LnRzIl0sIm5hbWVzIjpbIkFsbFR5cGVzUHJvcHMiLCJSZXR1cm5UeXBlcyIsIkxhbmciLCJQbGFuS2luZCIsIlVzZXJSb2xlIiwiTWFpbFR5cGUiLCJSaWdodHMiLCJGaWxlQ29udGVudFR5cGUiLCJQYXlJbnB1dFR5cGUiLCJHcmFwaFFMRXJyb3IiLCJyZXNwb25zZSIsImNvbnNvbGUiLCJlcnJvciIsInRvU3RyaW5nIiwiRXJyb3IiLCJaZXVzU2VsZWN0IiwidCIsIlNjYWxhclJlc29sdmVyIiwic2NhbGFyIiwidmFsdWUiLCJKU09OIiwic3RyaW5naWZ5IiwiVHlwZXNQcm9wc1Jlc29sdmVyIiwidHlwZSIsIm5hbWUiLCJrZXkiLCJibG9ja0FycmF5cyIsInJlc29sdmVkVmFsdWUiLCJ0eXBlUmVzb2x2ZWQiLCJpc0FycmF5IiwiYXJyYXkiLCJpc0FycmF5UmVxdWlyZWQiLCJhcnJheVJlcXVpcmVkIiwic3RhcnRzV2l0aCIsImlzUmVxdWlyZWQiLCJyZXF1aXJlZCIsInNwbGl0IiwibWFwIiwidiIsImpvaW4iLCJyZXNsb3ZlZFNjYWxhciIsInJlc29sdmVkVHlwZSIsImFyZ3NLZXlzIiwiT2JqZWN0Iiwia2V5cyIsImZpbHRlciIsImFrIiwidW5kZWZpbmVkIiwiaXNBcnJheUZ1bmN0aW9uIiwicGFyZW50IiwiYSIsInZhbHVlcyIsInIiLCJtYWluS2V5Iiwia2V5VmFsdWVzIiwiayIsImxlbmd0aCIsInRyYXZlcnNlVG9TZWVrQXJyYXlzIiwic3BsaWNlIiwidHlwZVJlc29sdmVyS2V5IiwidmFsdWVUb1Jlc29sdmUiLCJhcmd1bWVudFN0cmluZyIsInJlc29sdmVLViIsIm9iamVjdFRvVHJlZSIsIm8iLCJiIiwiQXJyYXkiLCJmb3JFYWNoIiwiYWxpYXNLZXkiLCJhbGlhc09wZXJhdGlvbnMiLCJhbGlhc09wZXJhdGlvbk5hbWUiLCJhbGlhc09wZXJhdGlvbiIsImJ1aWxkUXVlcnkiLCJpbnNwZWN0VmFyaWFibGVzIiwicXVlcnkiLCJyZWdleCIsInJlc3VsdCIsIkFsbFZhcmlhYmxlcyIsImV4ZWMiLCJpbmNsdWRlcyIsInB1c2giLCJmaWx0ZXJlZFF1ZXJ5IiwidmFyaWFibGUiLCJyZXBsYWNlIiwidmFyaWFibGVOYW1lIiwidmFyaWFibGVUeXBlIiwicXVlcnlDb25zdHJ1Y3QiLCJ0TmFtZSIsIm9wZXJhdGlvbk5hbWUiLCJ0b0xvd2VyQ2FzZSIsImZ1bGxDaGFpbkNvbnN0cnVjdCIsImZuIiwib3B0aW9ucyIsInZhcmlhYmxlcyIsInRoZW4iLCJzZWVrRm9yQWxpYXNlcyIsImZ1bGxDaGFpbkNvbnN0cnVjdG9yIiwib3BlcmF0aW9uIiwiZnVsbFN1YnNjcmlwdGlvbkNvbnN0cnVjdCIsImZ1bGxTdWJzY3JpcHRpb25Db25zdHJ1Y3RvciIsInRyYXZlcnNlQWxpYXMiLCJpbmRleE9mIiwiYWxpYXMiLCIkIiwicmVzb2x2ZXJGb3IiLCJoYW5kbGVGZXRjaFJlc3BvbnNlIiwib2siLCJQcm9taXNlIiwiXyIsInJlamVjdCIsInRleHQiLCJwYXJzZSIsImVyciIsImNhdGNoIiwianNvbiIsImFwaUZldGNoIiwiZmV0Y2hGdW5jdGlvbiIsImZldGNoIiwicXVlcnlTdHJpbmciLCJmZXRjaE9wdGlvbnMiLCJtZXRob2QiLCJlbmNvZGVVUklDb21wb25lbnQiLCJlcnJvcnMiLCJkYXRhIiwiYm9keSIsImhlYWRlcnMiLCJhcGlTdWJzY3JpcHRpb24iLCJ3c1N0cmluZyIsImhvc3QiLCJ3ZWJzb2NrZXQiLCJ3ZWJTb2NrZXRPcHRpb25zIiwid3MiLCJXZWJTb2NrZXQiLCJvbiIsImUiLCJvbm1lc3NhZ2UiLCJldmVudCIsInBhcnNlZCIsIm9mZiIsIm9uY2xvc2UiLCJvbmVycm9yIiwib3BlbiIsIm9ub3BlbiIsIlRodW5kZXIiLCJzdWJzY3JpcHRpb25GbiIsIm11dGF0aW9uIiwic3Vic2NyaXB0aW9uIiwiQ2hhaW4iLCJaZXVzIiwiU2VsZWN0b3JzIiwiR3FsIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUVBLFNBQVNBLGFBQVQsRUFBd0JDLFdBQXhCLFFBQTJDLFlBQTNDO0FBNnZEQSxXQUFZQyxJQUFaOztXQUFZQSxJO0FBQUFBLEVBQUFBLEk7QUFBQUEsRUFBQUEsSTtBQUFBQSxFQUFBQSxJO0FBQUFBLEVBQUFBLEk7QUFBQUEsRUFBQUEsSTtBQUFBQSxFQUFBQSxJO0FBQUFBLEVBQUFBLEk7QUFBQUEsRUFBQUEsSTtBQUFBQSxFQUFBQSxJO0FBQUFBLEVBQUFBLEk7QUFBQUEsRUFBQUEsSTtBQUFBQSxFQUFBQSxJO0FBQUFBLEVBQUFBLEk7QUFBQUEsRUFBQUEsSTtBQUFBQSxFQUFBQSxJO0dBQUFBLEksS0FBQUEsSTs7QUFpQlosV0FBWUMsUUFBWjs7V0FBWUEsUTtBQUFBQSxFQUFBQSxRO0FBQUFBLEVBQUFBLFE7QUFBQUEsRUFBQUEsUTtBQUFBQSxFQUFBQSxRO0dBQUFBLFEsS0FBQUEsUTs7QUFNWixXQUFZQyxRQUFaOztXQUFZQSxRO0FBQUFBLEVBQUFBLFE7QUFBQUEsRUFBQUEsUTtHQUFBQSxRLEtBQUFBLFE7O0FBSVosV0FBWUMsUUFBWjs7V0FBWUEsUTtBQUFBQSxFQUFBQSxRO0FBQUFBLEVBQUFBLFE7R0FBQUEsUSxLQUFBQSxROztBQUlaLFdBQVlDLE1BQVo7O1dBQVlBLE07QUFBQUEsRUFBQUEsTTtBQUFBQSxFQUFBQSxNO0FBQUFBLEVBQUFBLE07R0FBQUEsTSxLQUFBQSxNOztBQUtaLFdBQVlDLGVBQVo7O1dBQVlBLGU7QUFBQUEsRUFBQUEsZTtBQUFBQSxFQUFBQSxlO0FBQUFBLEVBQUFBLGU7R0FBQUEsZSxLQUFBQSxlOztBQUtaLFdBQVlDLFlBQVo7O1dBQVlBLFk7QUFBQUEsRUFBQUEsWTtBQUFBQSxFQUFBQSxZO0dBQUFBLFksS0FBQUEsWTs7QUFJWixXQUFhQyxZQUFiO0FBQUE7O0FBQ0ksd0JBQW1CQyxRQUFuQixFQUE4QztBQUFBOztBQUM1Qyw4QkFBTSxFQUFOO0FBRDRDLFVBQTNCQSxRQUEyQixHQUEzQkEsUUFBMkI7QUFFNUNDLElBQUFBLE9BQU8sQ0FBQ0MsS0FBUixDQUFjRixRQUFkO0FBRjRDO0FBRzdDOztBQUpMOztBQUFBLFNBS0lHLFFBTEosR0FLSSxvQkFBVztBQUNULFdBQU8sd0JBQVA7QUFDRCxHQVBMOztBQUFBO0FBQUEsaUNBQWtDQyxLQUFsQztBQTZHQSxPQUFPLElBQU1DLFVBQVUsR0FBRyxTQUFiQSxVQUFhO0FBQUEsU0FBVSxVQUFDQyxDQUFEO0FBQUEsV0FBWUEsQ0FBWjtBQUFBLEdBQVY7QUFBQSxDQUFuQjtBQUVQLE9BQU8sSUFBTUMsY0FBYyxHQUFHLFNBQWpCQSxjQUFpQixDQUFDQyxNQUFELEVBQWlCQyxLQUFqQixFQUFnQztBQUM1RCxVQUFRRCxNQUFSO0FBQ0UsU0FBSyxRQUFMO0FBQ0Usa0JBQVdFLElBQUksQ0FBQ0MsU0FBTCxDQUFlRixLQUFmLENBQVg7O0FBQ0YsU0FBSyxLQUFMO0FBQ0Usa0JBQVVBLEtBQVY7O0FBQ0YsU0FBSyxPQUFMO0FBQ0Usa0JBQVVBLEtBQVY7O0FBQ0YsU0FBSyxTQUFMO0FBQ0Usa0JBQVVBLEtBQVY7O0FBQ0YsU0FBSyxJQUFMO0FBQ0Usb0JBQVdBLEtBQVg7O0FBQ0YsU0FBSyxNQUFMO0FBQ0Usa0JBQVVBLEtBQVY7O0FBQ0YsU0FBSyxRQUFMO0FBQ0Usa0JBQVVBLEtBQVY7O0FBQ0Y7QUFDRSxhQUFPLEtBQVA7QUFoQko7QUFrQkQsQ0FuQk07QUFzQlAsT0FBTyxJQUFNRyxrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQXFCLE9BWXBCO0FBQUEsTUFYVkgsS0FXVSxRQVhWQSxLQVdVO0FBQUEsTUFWVkksSUFVVSxRQVZWQSxJQVVVO0FBQUEsTUFUVkMsSUFTVSxRQVRWQSxJQVNVO0FBQUEsTUFSVkMsR0FRVSxRQVJWQSxHQVFVO0FBQUEsTUFQVkMsV0FPVSxRQVBWQSxXQU9VOztBQUNWLE1BQUlQLEtBQUssS0FBSyxJQUFkLEVBQW9CO0FBQ2hCO0FBQ0g7O0FBQ0QsTUFBSVEsYUFBYSxHQUFHM0IsYUFBYSxDQUFDdUIsSUFBRCxDQUFiLENBQW9CQyxJQUFwQixDQUFwQjs7QUFDQSxNQUFJQyxHQUFKLEVBQVM7QUFDTEUsSUFBQUEsYUFBYSxHQUFHQSxhQUFhLENBQUNGLEdBQUQsQ0FBN0I7QUFDSDs7QUFDRCxNQUFJLENBQUNFLGFBQUwsRUFBb0I7QUFDaEIsVUFBTSxJQUFJYixLQUFKLHFCQUE0QlMsSUFBNUIsU0FBb0NDLElBQXBDLElBQTJDQyxHQUFHLFNBQU9BLEdBQVAsR0FBZSxFQUE3RCxFQUFOO0FBQ0g7O0FBQ0QsTUFBTUcsWUFBWSxHQUFHRCxhQUFhLENBQUNKLElBQW5DO0FBQ0EsTUFBTU0sT0FBTyxHQUFHRixhQUFhLENBQUNHLEtBQTlCO0FBQ0EsTUFBTUMsZUFBZSxHQUFHSixhQUFhLENBQUNLLGFBQXRDOztBQUNBLE1BQUksT0FBT2IsS0FBUCxLQUFpQixRQUFqQixJQUE2QkEsS0FBSyxDQUFDYyxVQUFOLGFBQWpDLEVBQWdFO0FBQzVELFFBQU1DLFVBQVUsR0FBR1AsYUFBYSxDQUFDUSxRQUFkLEdBQXlCLEdBQXpCLEdBQStCLEVBQWxEOztBQUNBLFFBQUluQixFQUFDLFFBQU1ZLFlBQVg7O0FBQ0EsUUFBSUMsT0FBSixFQUFhO0FBQ1gsVUFBSUssVUFBSixFQUFnQjtBQUNabEIsUUFBQUEsRUFBQyxHQUFNQSxFQUFOLE1BQUQ7QUFDSDs7QUFDREEsTUFBQUEsRUFBQyxTQUFPQSxFQUFQLE1BQUQ7O0FBQ0EsVUFBR2UsZUFBSCxFQUFtQjtBQUNqQmYsUUFBQUEsRUFBQyxHQUFNQSxFQUFOLE1BQUQ7QUFDRDtBQUNGLEtBUkQsTUFRSztBQUNILFVBQUlrQixVQUFKLEVBQWdCO0FBQ1ZsQixRQUFBQSxFQUFDLEdBQU1BLEVBQU4sTUFBRDtBQUNMO0FBQ0Y7O0FBQ0QsaUJBQVlHLEtBQUssQ0FBQ2lCLEtBQU4sY0FBeUIsQ0FBekIsQ0FBWixvQkFBc0RwQixFQUF0RDtBQUNIOztBQUNELE1BQUlhLE9BQU8sSUFBSSxDQUFDSCxXQUFoQixFQUE2QjtBQUN6QixpQkFBV1AsS0FBSyxDQUNma0IsR0FEVSxDQUNOLFVBQUNDLENBQUQ7QUFBQSxhQUFZaEIsa0JBQWtCLENBQUM7QUFBRUgsUUFBQUEsS0FBSyxFQUFFbUIsQ0FBVDtBQUFZZixRQUFBQSxJQUFJLEVBQUpBLElBQVo7QUFBa0JDLFFBQUFBLElBQUksRUFBSkEsSUFBbEI7QUFBd0JDLFFBQUFBLEdBQUcsRUFBSEEsR0FBeEI7QUFBNkJDLFFBQUFBLFdBQVcsRUFBRTtBQUExQyxPQUFELENBQTlCO0FBQUEsS0FETSxFQUVWYSxJQUZVLENBRUwsR0FGSyxDQUFYO0FBR0g7O0FBQ0QsTUFBTUMsY0FBYyxHQUFHdkIsY0FBYyxDQUFDVyxZQUFELEVBQWVULEtBQWYsQ0FBckM7O0FBQ0EsTUFBSSxDQUFDcUIsY0FBTCxFQUFxQjtBQUNqQixRQUFNQyxZQUFZLEdBQUd6QyxhQUFhLENBQUM0QixZQUFELENBQWxDOztBQUNBLFFBQUksT0FBT2EsWUFBUCxLQUF3QixRQUE1QixFQUFzQztBQUN0QyxVQUFNQyxRQUFRLEdBQUdDLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZSCxZQUFaLENBQWpCO0FBQ0EsbUJBQVdDLFFBQVEsQ0FDZEcsTUFETSxDQUNDLFVBQUNDLEVBQUQ7QUFBQSxlQUFRM0IsS0FBSyxDQUFDMkIsRUFBRCxDQUFMLEtBQWNDLFNBQXRCO0FBQUEsT0FERCxFQUVOVixHQUZNLENBR1AsVUFBQ1MsRUFBRDtBQUFBLGVBQVdBLEVBQVgsU0FBaUJ4QixrQkFBa0IsQ0FBQztBQUFFSCxVQUFBQSxLQUFLLEVBQUVBLEtBQUssQ0FBQzJCLEVBQUQsQ0FBZDtBQUFvQnZCLFVBQUFBLElBQUksRUFBRUssWUFBMUI7QUFBd0NKLFVBQUFBLElBQUksRUFBRXNCO0FBQTlDLFNBQUQsQ0FBbkM7QUFBQSxPQUhPLENBQVg7QUFLQzs7QUFDRCxXQUFPN0IsY0FBYyxDQUFDakIsYUFBYSxDQUFDNEIsWUFBRCxDQUFkLEVBQThCVCxLQUE5QixDQUFyQjtBQUNIOztBQUNELFNBQU9xQixjQUFQO0FBQ0gsQ0EvRE07O0FBa0VQLElBQU1RLGVBQWUsR0FBRyxTQUFsQkEsZUFBa0IsQ0FDdEJDLE1BRHNCLEVBRXRCQyxDQUZzQixFQUduQjtBQUNILE1BQU9DLE1BQVAsR0FBb0JELENBQXBCO0FBQUEsTUFBZUUsQ0FBZixHQUFvQkYsQ0FBcEI7QUFDQSxNQUFPRyxPQUFQLEdBQWdDSixNQUFoQztBQUFBLE1BQWdCeEIsR0FBaEIsR0FBZ0N3QixNQUFoQztBQUFBLE1BQXdCTCxJQUF4QixHQUFnQ0ssTUFBaEM7QUFDQSxNQUFNSyxTQUFTLEdBQUdYLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZTyxNQUFaLEVBQW9CTixNQUFwQixDQUEyQixVQUFDVSxDQUFEO0FBQUEsV0FBTyxPQUFPSixNQUFNLENBQUNJLENBQUQsQ0FBYixLQUFxQixXQUE1QjtBQUFBLEdBQTNCLENBQWxCOztBQUVBLE1BQUksQ0FBQ1gsSUFBSSxDQUFDWSxNQUFWLEVBQWtCO0FBQ2QsV0FBT0YsU0FBUyxDQUFDRSxNQUFWLEdBQW1CLENBQW5CLFNBQ0NGLFNBQVMsQ0FDVmpCLEdBREMsQ0FFQSxVQUFDQyxDQUFEO0FBQUEsYUFDS0EsQ0FETCxTQUNVaEIsa0JBQWtCLENBQUM7QUFDekJILFFBQUFBLEtBQUssRUFBRWdDLE1BQU0sQ0FBQ2IsQ0FBRCxDQURZO0FBRXpCZixRQUFBQSxJQUFJLEVBQUU4QixPQUZtQjtBQUd6QjdCLFFBQUFBLElBQUksRUFBRUMsR0FIbUI7QUFJekJBLFFBQUFBLEdBQUcsRUFBRWE7QUFKb0IsT0FBRCxDQUQ1QjtBQUFBLEtBRkEsRUFVREMsSUFWQyxDQVVJLEdBVkosQ0FERCxVQVdhYSxDQUFDLEdBQUdLLG9CQUFvQixDQUFDUixNQUFELEVBQVNHLENBQVQsQ0FBdkIsR0FBcUMsRUFYbkQsSUFZSEssb0JBQW9CLENBQUNSLE1BQUQsRUFBU0csQ0FBVCxDQVp4QjtBQWFEOztBQUVILHFCQUEwQlIsSUFBSSxDQUFDYyxNQUFMLENBQVlkLElBQUksQ0FBQ1ksTUFBTCxHQUFjLENBQTFCLEVBQTZCLENBQTdCLENBQTFCO0FBQUEsTUFBT0csZUFBUDs7QUFDQSxNQUFJQyxjQUFjLEdBQUczRCxXQUFXLENBQUNvRCxPQUFELENBQVgsQ0FBcUI1QixHQUFyQixDQUFyQjs7QUFDQSx1REFBZ0JtQixJQUFoQix3Q0FBc0I7QUFBQSxRQUFYVyxDQUFXO0FBQ3BCSyxJQUFBQSxjQUFjLEdBQUczRCxXQUFXLENBQUMyRCxjQUFELENBQVgsQ0FBNEJMLENBQTVCLENBQWpCO0FBQ0Q7O0FBRUQsTUFBTU0sY0FBYyxHQUNsQlAsU0FBUyxDQUFDRSxNQUFWLEdBQW1CLENBQW5CLFNBQ1FGLFNBQVMsQ0FDVmpCLEdBREMsQ0FFQSxVQUFDQyxDQUFEO0FBQUEsV0FDS0EsQ0FETCxTQUNVaEIsa0JBQWtCLENBQUM7QUFDekJILE1BQUFBLEtBQUssRUFBRWdDLE1BQU0sQ0FBQ2IsQ0FBRCxDQURZO0FBRXpCZixNQUFBQSxJQUFJLEVBQUVxQyxjQUZtQjtBQUd6QnBDLE1BQUFBLElBQUksRUFBRW1DLGVBSG1CO0FBSXpCbEMsTUFBQUEsR0FBRyxFQUFFYTtBQUpvQixLQUFELENBRDVCO0FBQUEsR0FGQSxFQVVEQyxJQVZDLENBVUksR0FWSixDQURSLFVBV29CYSxDQUFDLEdBQUdLLG9CQUFvQixDQUFDUixNQUFELEVBQVNHLENBQVQsQ0FBdkIsR0FBcUMsRUFYMUQsSUFZSUssb0JBQW9CLENBQUNSLE1BQUQsRUFBU0csQ0FBVCxDQWIxQjtBQWNBLFNBQU9TLGNBQVA7QUFDRCxDQTdDRDs7QUFnREEsSUFBTUMsU0FBUyxHQUFHLFNBQVpBLFNBQVksQ0FBQ1AsQ0FBRCxFQUFZakIsQ0FBWjtBQUFBLFNBQ2hCLE9BQU9BLENBQVAsS0FBYSxTQUFiLEdBQXlCaUIsQ0FBekIsR0FBNkIsT0FBT2pCLENBQVAsS0FBYSxRQUFiLEdBQTJCaUIsQ0FBM0IsU0FBZ0NRLFlBQVksQ0FBQ3pCLENBQUQsQ0FBNUMsY0FBd0RpQixDQUF4RCxHQUE0RGpCLENBRHpFO0FBQUEsQ0FBbEI7O0FBSUEsSUFBTXlCLFlBQVksR0FBRyxTQUFmQSxZQUFlLENBQUNDLENBQUQ7QUFBQSxlQUNmckIsTUFBTSxDQUFDQyxJQUFQLENBQVlvQixDQUFaLEVBQWUzQixHQUFmLENBQW1CLFVBQUNrQixDQUFEO0FBQUEsZ0JBQVVPLFNBQVMsQ0FBQ1AsQ0FBRCxFQUFJUyxDQUFDLENBQUNULENBQUQsQ0FBTCxDQUFuQjtBQUFBLEdBQW5CLEVBQW1EaEIsSUFBbkQsQ0FBd0QsR0FBeEQsQ0FEZTtBQUFBLENBQXJCOztBQUlBLElBQU1rQixvQkFBb0IsR0FBRyxTQUF2QkEsb0JBQXVCLENBQUNSLE1BQUQsRUFBbUJDLENBQW5CLEVBQXVDO0FBQ2xFLE1BQUksQ0FBQ0EsQ0FBTCxFQUFRLE9BQU8sRUFBUDs7QUFDUixNQUFJUCxNQUFNLENBQUNDLElBQVAsQ0FBWU0sQ0FBWixFQUFlTSxNQUFmLEtBQTBCLENBQTlCLEVBQWlDO0FBQy9CLFdBQU8sRUFBUDtBQUNEOztBQUNELE1BQUlTLENBQXNCLEdBQUcsRUFBN0I7O0FBQ0EsTUFBSUMsS0FBSyxDQUFDckMsT0FBTixDQUFjcUIsQ0FBZCxDQUFKLEVBQXNCO0FBQ3BCLFdBQU9GLGVBQWUsV0FBS0MsTUFBTCxHQUFjQyxDQUFkLENBQXRCO0FBQ0QsR0FGRCxNQUVPO0FBQ0wsUUFBSSxPQUFPQSxDQUFQLEtBQWEsUUFBakIsRUFBMkI7QUFDekJQLE1BQUFBLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZTSxDQUFaLEVBQ0dMLE1BREgsQ0FDVSxVQUFDVSxDQUFEO0FBQUEsZUFBTyxPQUFPTCxDQUFDLENBQUNLLENBQUQsQ0FBUixLQUFnQixXQUF2QjtBQUFBLE9BRFYsRUFFR1ksT0FGSCxDQUVXLFVBQUNaLENBQUQsRUFBTztBQUNoQixZQUFJQSxDQUFDLEtBQUssU0FBVixFQUFxQjtBQUNuQlosVUFBQUEsTUFBTSxDQUFDQyxJQUFQLENBQVlNLENBQUMsQ0FBQ0ssQ0FBRCxDQUFiLEVBQWtCWSxPQUFsQixDQUEwQixVQUFDQyxRQUFELEVBQWM7QUFDdEMsZ0JBQU1DLGVBQWUsR0FBR25CLENBQUMsQ0FBQ0ssQ0FBRCxDQUFELENBQUthLFFBQUwsQ0FBeEI7QUFDQSxnQkFBTUUsa0JBQWtCLEdBQUczQixNQUFNLENBQUNDLElBQVAsQ0FBWXlCLGVBQVosRUFBNkIsQ0FBN0IsQ0FBM0I7QUFDQSxnQkFBTUUsY0FBYyxHQUFHRixlQUFlLENBQUNDLGtCQUFELENBQXRDO0FBQ0FMLFlBQUFBLENBQUMsQ0FDSUssa0JBREosaUJBQ2tDRixRQURsQyxVQUMrQ0Usa0JBRC9DLENBQUQsR0FFSWIsb0JBQW9CLFdBQUtSLE1BQUwsR0FBYXFCLGtCQUFiLElBQWtDQyxjQUFsQyxDQUZ4QjtBQUdELFdBUEQ7QUFRRCxTQVRELE1BU087QUFDTE4sVUFBQUEsQ0FBQyxDQUFDVixDQUFELENBQUQsR0FBT0Usb0JBQW9CLFdBQUtSLE1BQUwsR0FBYU0sQ0FBYixJQUFpQkwsQ0FBQyxDQUFDSyxDQUFELENBQWxCLENBQTNCO0FBQ0Q7QUFDRixPQWZEO0FBZ0JELEtBakJELE1BaUJPO0FBQ0wsYUFBTyxFQUFQO0FBQ0Q7QUFDRjs7QUFDRCxTQUFPUSxZQUFZLENBQUNFLENBQUQsQ0FBbkI7QUFDRCxDQS9CRDs7QUFrQ0EsSUFBTU8sVUFBVSxHQUFHLFNBQWJBLFVBQWEsQ0FBQ2pELElBQUQsRUFBZTJCLENBQWY7QUFBQSxTQUNqQk8sb0JBQW9CLENBQUMsQ0FBQ2xDLElBQUQsQ0FBRCxFQUFTMkIsQ0FBVCxDQURIO0FBQUEsQ0FBbkI7O0FBSUEsSUFBTXVCLGdCQUFnQixHQUFHLFNBQW5CQSxnQkFBbUIsQ0FBQ0MsS0FBRCxFQUFtQjtBQUMxQyxNQUFNQyxLQUFLLEdBQUcseURBQWQ7QUFDQSxNQUFJQyxNQUFKO0FBQ0EsTUFBTUMsWUFBc0IsR0FBRyxFQUEvQjs7QUFDQSxTQUFRRCxNQUFNLEdBQUdELEtBQUssQ0FBQ0csSUFBTixDQUFXSixLQUFYLENBQWpCLEVBQXFDO0FBQ25DLFFBQUlHLFlBQVksQ0FBQ0UsUUFBYixDQUFzQkgsTUFBTSxDQUFDLENBQUQsQ0FBNUIsQ0FBSixFQUFzQztBQUNwQztBQUNEOztBQUNEQyxJQUFBQSxZQUFZLENBQUNHLElBQWIsQ0FBa0JKLE1BQU0sQ0FBQyxDQUFELENBQXhCO0FBQ0Q7O0FBQ0QsTUFBSSxDQUFDQyxZQUFZLENBQUNyQixNQUFsQixFQUEwQjtBQUN4QixXQUFPa0IsS0FBUDtBQUNEOztBQUNELE1BQUlPLGFBQWEsR0FBR1AsS0FBcEI7QUFDQUcsRUFBQUEsWUFBWSxDQUFDVixPQUFiLENBQXFCLFVBQUNlLFFBQUQsRUFBYztBQUNqQyxXQUFPRCxhQUFhLENBQUNGLFFBQWQsQ0FBdUJHLFFBQXZCLENBQVAsRUFBeUM7QUFDdkNELE1BQUFBLGFBQWEsR0FBR0EsYUFBYSxDQUFDRSxPQUFkLENBQXNCRCxRQUF0QixFQUFnQ0EsUUFBUSxDQUFDOUMsS0FBVCxDQUFlLGNBQWYsRUFBK0IsQ0FBL0IsQ0FBaEMsQ0FBaEI7QUFDRDtBQUNGLEdBSkQ7QUFLQSxlQUFXeUMsWUFBWSxDQUFDeEMsR0FBYixDQUFpQixVQUFDYSxDQUFEO0FBQUEsV0FBT0EsQ0FBQyxDQUFDZCxLQUFGLENBQVEsY0FBUixDQUFQO0FBQUEsR0FBakIsRUFDUkMsR0FEUSxDQUNKO0FBQUEsUUFBRStDLFlBQUY7QUFBQSxRQUFnQkMsWUFBaEI7QUFBQSxXQUFxQ0QsWUFBckMsU0FBcURDLFlBQXJEO0FBQUEsR0FESSxFQUVSOUMsSUFGUSxDQUVILElBRkcsQ0FBWCxTQUVpQjBDLGFBRmpCO0FBR0QsQ0F0QkQ7O0FBeUJBLE9BQU8sSUFBTUssY0FBYyxHQUFHLFNBQWpCQSxjQUFpQixDQUFDdEUsQ0FBRCxFQUEyQ3VFLEtBQTNDLEVBQTBEQyxhQUExRDtBQUFBLFNBQXFGLFVBQUN4QixDQUFEO0FBQUEsZ0JBQzlHaEQsQ0FBQyxDQUFDeUUsV0FBRixFQUQ4RyxJQUM1RkQsYUFBYSxHQUFHLE1BQU1BLGFBQVQsR0FBeUIsRUFEc0QsSUFDakRmLGdCQUFnQixDQUFDRCxVQUFVLENBQUNlLEtBQUQsRUFBUXZCLENBQVIsQ0FBWCxDQURpQztBQUFBLEdBQXJGO0FBQUEsQ0FBdkI7O0FBSVAsSUFBTTBCLGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBcUIsQ0FBQ0MsRUFBRDtBQUFBLFNBQXVCLFVBQUMzRSxDQUFELEVBQTJDdUUsS0FBM0M7QUFBQSxXQUE2RCxVQUM3R3ZCLENBRDZHLEVBRTdHNEIsT0FGNkc7QUFBQSxhQUcxR0QsRUFBRSxDQUFDTCxjQUFjLENBQUN0RSxDQUFELEVBQUl1RSxLQUFKLEVBQVdLLE9BQVgsb0JBQVdBLE9BQU8sQ0FBRUosYUFBcEIsQ0FBZCxDQUFpRHhCLENBQWpELENBQUQsRUFBc0Q0QixPQUF0RCxvQkFBc0RBLE9BQU8sQ0FBRUMsU0FBL0QsQ0FBRixDQUE0RUMsSUFBNUUsQ0FBaUYsVUFBQzFDLENBQUQsRUFBVztBQUMvRjJDLFFBQUFBLGNBQWMsQ0FBQzNDLENBQUQsQ0FBZDtBQUNBLGVBQU9BLENBQVA7QUFDRCxPQUhJLENBSDBHO0FBQUEsS0FBN0Q7QUFBQSxHQUF2QjtBQUFBLENBQTNCOztBQVFBLE9BQU8sSUFBTTRDLG9CQUFvQixHQUFHLFNBQXZCQSxvQkFBdUIsQ0FDbENMLEVBRGtDLEVBRWxDTSxTQUZrQyxFQUdsQ3hFLEdBSGtDO0FBQUEsU0FLakMsVUFBQ3VDLENBQUQsRUFBSTRCLE9BQUo7QUFBQSxXQUFnQkYsa0JBQWtCLENBQUNDLEVBQUQsQ0FBbEIsQ0FBdUJNLFNBQXZCLEVBQWtDeEUsR0FBbEMsRUFBdUN1QyxDQUF2QyxFQUFpRDRCLE9BQWpELENBQWhCO0FBQUEsR0FMaUM7QUFBQSxDQUE3Qjs7QUFXUCxJQUFNTSx5QkFBeUIsR0FBRyxTQUE1QkEseUJBQTRCLENBQUNQLEVBQUQ7QUFBQSxTQUE4QixVQUM5RDNFLENBRDhELEVBRTlEdUUsS0FGOEQ7QUFBQSxXQUczRCxVQUFDdkIsQ0FBRCxFQUFzQjRCLE9BQXRCO0FBQUEsYUFDSEQsRUFBRSxDQUFDTCxjQUFjLENBQUN0RSxDQUFELEVBQUl1RSxLQUFKLEVBQVdLLE9BQVgsb0JBQVdBLE9BQU8sQ0FBRUosYUFBcEIsQ0FBZCxDQUFpRHhCLENBQWpELENBQUQsQ0FEQztBQUFBLEtBSDJEO0FBQUEsR0FBOUI7QUFBQSxDQUFsQzs7QUFNQSxPQUFPLElBQU1tQywyQkFBMkIsR0FBRyxTQUE5QkEsMkJBQThCLENBQ3pDUixFQUR5QyxFQUV6Q00sU0FGeUMsRUFHekN4RSxHQUh5QztBQUFBLFNBS3hDLFVBQUN1QyxDQUFELEVBQUk0QixPQUFKO0FBQUEsV0FBZ0JNLHlCQUF5QixDQUFDUCxFQUFELENBQXpCLENBQThCTSxTQUE5QixFQUF5Q3hFLEdBQXpDLEVBQThDdUMsQ0FBOUMsRUFBd0Q0QixPQUF4RCxDQUFoQjtBQUFBLEdBTHdDO0FBQUEsQ0FBcEM7O0FBV1AsSUFBTUcsY0FBYyxHQUFHLFNBQWpCQSxjQUFpQixDQUFDckYsUUFBRCxFQUFtQjtBQUN4QyxNQUFNMEYsYUFBYSxHQUFHLFNBQWhCQSxhQUFnQixDQUFDakYsS0FBRCxFQUFnQjtBQUNwQyxRQUFJK0MsS0FBSyxDQUFDckMsT0FBTixDQUFjVixLQUFkLENBQUosRUFBMEI7QUFDeEJBLE1BQUFBLEtBQUssQ0FBQ2dELE9BQU4sQ0FBYzRCLGNBQWQ7QUFDRCxLQUZELE1BRU87QUFDTCxVQUFJLE9BQU81RSxLQUFQLEtBQWlCLFFBQXJCLEVBQStCO0FBQzdCNEUsUUFBQUEsY0FBYyxDQUFDNUUsS0FBRCxDQUFkO0FBQ0Q7QUFDRjtBQUNGLEdBUkQ7O0FBU0EsTUFBSSxPQUFPVCxRQUFQLEtBQW9CLFFBQXBCLElBQWdDQSxRQUFwQyxFQUE4QztBQUM1QyxRQUFNa0MsSUFBSSxHQUFHRCxNQUFNLENBQUNDLElBQVAsQ0FBWWxDLFFBQVosQ0FBYjs7QUFDQSxRQUFJa0MsSUFBSSxDQUFDWSxNQUFMLEdBQWMsQ0FBbEIsRUFBcUI7QUFDbkI7QUFDRDs7QUFDRFosSUFBQUEsSUFBSSxDQUFDdUIsT0FBTCxDQUFhLFVBQUNaLENBQUQsRUFBTztBQUNsQixVQUFNcEMsS0FBSyxHQUFHVCxRQUFRLENBQUM2QyxDQUFELENBQXRCOztBQUNBLFVBQUlBLENBQUMsQ0FBQzhDLE9BQUYsQ0FBVSxXQUFWLE1BQTJCLENBQUMsQ0FBaEMsRUFBbUM7QUFBQTs7QUFDakMsdUJBQTJCOUMsQ0FBQyxDQUFDbkIsS0FBRixDQUFRLFdBQVIsQ0FBM0I7QUFBQSxZQUFPNkQsU0FBUDtBQUFBLFlBQWtCSyxLQUFsQjs7QUFDQTVGLFFBQUFBLFFBQVEsQ0FBQzRGLEtBQUQsQ0FBUiwwQ0FDR0wsU0FESCxJQUNlOUUsS0FEZjtBQUdBLGVBQU9ULFFBQVEsQ0FBQzZDLENBQUQsQ0FBZjtBQUNEOztBQUNENkMsTUFBQUEsYUFBYSxDQUFDakYsS0FBRCxDQUFiO0FBQ0QsS0FWRDtBQVdEO0FBQ0YsQ0EzQkQ7O0FBOEJBLE9BQU8sSUFBTW9GLENBQUMsR0FBRyxTQUFKQSxDQUFJLENBQUN2RixDQUFEO0FBQUEsdUJBQThDQSxDQUFDLENBQUN1QixJQUFGLENBQU8sRUFBUCxDQUE5QztBQUFBLENBQVY7QUFHUCxPQUFPLElBQU1pRSxXQUFXLEdBQUcsU0FBZEEsV0FBYyxDQVF6QmIsRUFSeUI7QUFBQSxTQVN0QkEsRUFUc0I7QUFBQSxDQUFwQjs7QUFZUCxJQUFNYyxtQkFBbUIsR0FBRyxTQUF0QkEsbUJBQXNCLENBQzFCL0YsUUFEMEIsRUFFRztBQUM3QixNQUFJLENBQUNBLFFBQVEsQ0FBQ2dHLEVBQWQsRUFBa0I7QUFDaEIsV0FBTyxJQUFJQyxPQUFKLENBQVksVUFBQ0MsQ0FBRCxFQUFJQyxNQUFKLEVBQWU7QUFDaENuRyxNQUFBQSxRQUFRLENBQUNvRyxJQUFULEdBQWdCaEIsSUFBaEIsQ0FBcUIsVUFBQWdCLElBQUksRUFBSTtBQUMzQixZQUFJO0FBQUVELFVBQUFBLE1BQU0sQ0FBQ3pGLElBQUksQ0FBQzJGLEtBQUwsQ0FBV0QsSUFBWCxDQUFELENBQU47QUFBMkIsU0FBakMsQ0FDQSxPQUFPRSxHQUFQLEVBQVk7QUFBRUgsVUFBQUEsTUFBTSxDQUFDQyxJQUFELENBQU47QUFBZTtBQUM5QixPQUhELEVBR0dHLEtBSEgsQ0FHU0osTUFIVDtBQUlELEtBTE0sQ0FBUDtBQU1EOztBQUNELFNBQU9uRyxRQUFRLENBQUN3RyxJQUFULEVBQVA7QUFDRCxDQVpEOztBQWNBLE9BQU8sSUFBTUMsUUFBUSxHQUFHLFNBQVhBLFFBQVcsQ0FBQ3ZCLE9BQUQ7QUFBQSxTQUEyQixVQUFDbEIsS0FBRCxFQUFnQm1CLFNBQWhCLEVBQXdEO0FBQUEsUUFBeENBLFNBQXdDO0FBQXhDQSxNQUFBQSxTQUF3QyxHQUFQLEVBQU87QUFBQTs7QUFDdkcsUUFBSXVCLGFBQWEsR0FBR0MsS0FBcEI7QUFDQSxRQUFJQyxXQUFXLEdBQUc1QyxLQUFsQjtBQUNBLFFBQUk2QyxZQUFZLEdBQUczQixPQUFPLENBQUMsQ0FBRCxDQUFQLElBQWMsRUFBakM7O0FBQ0EsUUFBSTJCLFlBQVksQ0FBQ0MsTUFBYixJQUF1QkQsWUFBWSxDQUFDQyxNQUFiLEtBQXdCLEtBQW5ELEVBQTBEO0FBQ3hERixNQUFBQSxXQUFXLEdBQUdHLGtCQUFrQixDQUFDL0MsS0FBRCxDQUFoQztBQUNBLGFBQU8wQyxhQUFhLENBQUl4QixPQUFPLENBQUMsQ0FBRCxDQUFYLGVBQXdCMEIsV0FBeEIsRUFBdUNDLFlBQXZDLENBQWIsQ0FDSnpCLElBREksQ0FDQ1csbUJBREQsRUFFSlgsSUFGSSxDQUVDLFVBQUNwRixRQUFELEVBQStCO0FBQ25DLFlBQUlBLFFBQVEsQ0FBQ2dILE1BQWIsRUFBcUI7QUFDbkIsZ0JBQU0sSUFBSWpILFlBQUosQ0FBaUJDLFFBQWpCLENBQU47QUFDRDs7QUFDRCxlQUFPQSxRQUFRLENBQUNpSCxJQUFoQjtBQUNELE9BUEksQ0FBUDtBQVFEOztBQUNELFdBQU9QLGFBQWEsTUFBSXhCLE9BQU8sQ0FBQyxDQUFELENBQVg7QUFDbEJnQyxNQUFBQSxJQUFJLEVBQUV4RyxJQUFJLENBQUNDLFNBQUwsQ0FBZTtBQUFFcUQsUUFBQUEsS0FBSyxFQUFFNEMsV0FBVDtBQUFzQnpCLFFBQUFBLFNBQVMsRUFBVEE7QUFBdEIsT0FBZixDQURZO0FBRWxCMkIsTUFBQUEsTUFBTSxFQUFFLE1BRlU7QUFHbEJLLE1BQUFBLE9BQU8sRUFBRTtBQUNQLHdCQUFnQjtBQURUO0FBSFMsT0FNZk4sWUFOZSxFQUFiLENBUUp6QixJQVJJLENBUUNXLG1CQVJELEVBU0pYLElBVEksQ0FTQyxVQUFDcEYsUUFBRCxFQUErQjtBQUNuQyxVQUFJQSxRQUFRLENBQUNnSCxNQUFiLEVBQXFCO0FBQ25CLGNBQU0sSUFBSWpILFlBQUosQ0FBaUJDLFFBQWpCLENBQU47QUFDRDs7QUFDRCxhQUFPQSxRQUFRLENBQUNpSCxJQUFoQjtBQUNELEtBZEksQ0FBUDtBQWVELEdBOUJxQjtBQUFBLENBQWpCO0FBaUNQLE9BQU8sSUFBTUcsZUFBZSxHQUFHLFNBQWxCQSxlQUFrQixDQUFDbEMsT0FBRDtBQUFBLFNBQTJCLFVBQ3REbEIsS0FEc0QsRUFFbkQ7QUFDSCxRQUFJO0FBQUE7O0FBQ0YsVUFBTTRDLFdBQVcsR0FBRzFCLE9BQU8sQ0FBQyxDQUFELENBQVAsR0FBYSxTQUFiLEdBQXlCNkIsa0JBQWtCLENBQUMvQyxLQUFELENBQS9EO0FBQ0EsVUFBTXFELFFBQVEsR0FBR1QsV0FBVyxDQUFDbkMsT0FBWixDQUFvQixNQUFwQixFQUE0QixJQUE1QixDQUFqQjtBQUNBLFVBQU02QyxJQUFJLEdBQUlwQyxPQUFPLENBQUNwQyxNQUFSLEdBQWlCLENBQWpCLGtCQUFzQm9DLE9BQU8sQ0FBQyxDQUFELENBQTdCLDRDQUFzQixVQUFZcUMsU0FBbEMscUJBQXNCLG9CQUF3QixDQUF4QixDQUF0QixDQUFELElBQXNERixRQUFuRTtBQUNBLFVBQU1HLGdCQUFnQixHQUFHLGVBQUF0QyxPQUFPLENBQUMsQ0FBRCxDQUFQLGdDQUFZcUMsU0FBWixLQUF5QixDQUFDRCxJQUFELENBQWxEOztBQUNBLFVBQU1HLEVBQUUsY0FBT0MsU0FBUCxFQUFvQkYsZ0JBQXBCLENBQVI7O0FBQ0EsYUFBTztBQUNMQyxRQUFBQSxFQUFFLEVBQUZBLEVBREs7QUFFTEUsUUFBQUEsRUFBRSxFQUFFLFlBQUNDLENBQUQsRUFBNEI7QUFDOUJILFVBQUFBLEVBQUUsQ0FBQ0ksU0FBSCxHQUFlLFVBQUNDLEtBQUQsRUFBZTtBQUM1QixnQkFBR0EsS0FBSyxDQUFDYixJQUFULEVBQWM7QUFDWixrQkFBTWMsTUFBTSxHQUFHckgsSUFBSSxDQUFDMkYsS0FBTCxDQUFXeUIsS0FBSyxDQUFDYixJQUFqQixDQUFmO0FBQ0Esa0JBQU1BLElBQUksR0FBR2MsTUFBTSxDQUFDZCxJQUFwQjs7QUFDQSxrQkFBSUEsSUFBSixFQUFVO0FBQ1I1QixnQkFBQUEsY0FBYyxDQUFDNEIsSUFBRCxDQUFkO0FBQ0Q7O0FBQ0QscUJBQU9XLENBQUMsQ0FBQ1gsSUFBRCxDQUFSO0FBQ0Q7QUFDRixXQVREO0FBVUQsU0FiSTtBQWNMZSxRQUFBQSxHQUFHLEVBQUUsYUFBQ0osQ0FBRCxFQUE0QjtBQUMvQkgsVUFBQUEsRUFBRSxDQUFDUSxPQUFILEdBQWFMLENBQWI7QUFDRCxTQWhCSTtBQWlCTDFILFFBQUFBLEtBQUssRUFBRSxlQUFDMEgsQ0FBRCxFQUE0QjtBQUNqQ0gsVUFBQUEsRUFBRSxDQUFDUyxPQUFILEdBQWFOLENBQWI7QUFDRCxTQW5CSTtBQW9CTE8sUUFBQUEsSUFBSSxFQUFFLGNBQUNQLENBQUQsRUFBbUI7QUFDdkJILFVBQUFBLEVBQUUsQ0FBQ1csTUFBSCxHQUFZUixDQUFaO0FBQ0Q7QUF0QkksT0FBUDtBQXdCRCxLQTlCRCxDQThCRSxnQkFBTTtBQUNOLFlBQU0sSUFBSXhILEtBQUosQ0FBVSwyQkFBVixDQUFOO0FBQ0Q7QUFDRixHQXBDNEI7QUFBQSxDQUF4QjtBQXVDUCxPQUFPLElBQU1pSSxPQUFPLEdBQUcsU0FBVkEsT0FBVSxDQUFDcEQsRUFBRCxFQUFvQnFELGNBQXBCO0FBQUEsU0FBOEQ7QUFDbkZ0RSxJQUFBQSxLQUFLLEVBQUVzQixvQkFBb0IsQ0FBQ0wsRUFBRCxFQUFJLE9BQUosRUFBYSxPQUFiLENBRHdEO0FBRXJGc0QsSUFBQUEsUUFBUSxFQUFFakQsb0JBQW9CLENBQUNMLEVBQUQsRUFBSSxVQUFKLEVBQWdCLFVBQWhCLENBRnVEO0FBR3JGdUQsSUFBQUEsWUFBWSxFQUFFL0MsMkJBQTJCLENBQUM2QyxjQUFELEVBQWdCLGNBQWhCLEVBQWdDLGNBQWhDO0FBSDRDLEdBQTlEO0FBQUEsQ0FBaEI7QUFNUCxPQUFPLElBQU1HLEtBQUssR0FBRyxTQUFSQSxLQUFRO0FBQUEsb0NBQUl2RCxPQUFKO0FBQUlBLElBQUFBLE9BQUo7QUFBQTs7QUFBQSxTQUErQjtBQUNsRGxCLElBQUFBLEtBQUssRUFBRXNCLG9CQUFvQixDQUFDbUIsUUFBUSxDQUFDdkIsT0FBRCxDQUFULEVBQW1CLE9BQW5CLEVBQTRCLE9BQTVCLENBRHVCO0FBRXBEcUQsSUFBQUEsUUFBUSxFQUFFakQsb0JBQW9CLENBQUNtQixRQUFRLENBQUN2QixPQUFELENBQVQsRUFBbUIsVUFBbkIsRUFBK0IsVUFBL0IsQ0FGc0I7QUFHcERzRCxJQUFBQSxZQUFZLEVBQUUvQywyQkFBMkIsQ0FBQzJCLGVBQWUsQ0FBQ2xDLE9BQUQsQ0FBaEIsRUFBMEIsY0FBMUIsRUFBMEMsY0FBMUM7QUFIVyxHQUEvQjtBQUFBLENBQWQ7QUFLUCxPQUFPLElBQU13RCxJQUFJLEdBQUc7QUFDbEIxRSxFQUFBQSxLQUFLLEVBQUUsZUFBQ1YsQ0FBRCxFQUF3QndCLGFBQXhCO0FBQUEsV0FBbURGLGNBQWMsQ0FBQyxPQUFELEVBQVUsT0FBVixFQUFtQkUsYUFBbkIsQ0FBZCxDQUFnRHhCLENBQWhELENBQW5EO0FBQUEsR0FEVztBQUVwQmlGLEVBQUFBLFFBQVEsRUFBRSxrQkFBQ2pGLENBQUQsRUFBMkJ3QixhQUEzQjtBQUFBLFdBQXNERixjQUFjLENBQUMsVUFBRCxFQUFhLFVBQWIsRUFBeUJFLGFBQXpCLENBQWQsQ0FBc0R4QixDQUF0RCxDQUF0RDtBQUFBLEdBRlU7QUFHcEJrRixFQUFBQSxZQUFZLEVBQUUsc0JBQUNsRixDQUFELEVBQStCd0IsYUFBL0I7QUFBQSxXQUEwREYsY0FBYyxDQUFDLGNBQUQsRUFBaUIsY0FBakIsRUFBaUNFLGFBQWpDLENBQWQsQ0FBOER4QixDQUE5RCxDQUExRDtBQUFBO0FBSE0sQ0FBYjtBQUtQLE9BQU8sSUFBTXFGLFNBQVMsR0FBRztBQUN2QjNFLEVBQUFBLEtBQUssRUFBRTNELFVBQVUsRUFETTtBQUV6QmtJLEVBQUFBLFFBQVEsRUFBRWxJLFVBQVUsRUFGSztBQUd6Qm1JLEVBQUFBLFlBQVksRUFBRW5JLFVBQVU7QUFIQyxDQUFsQjtBQU9QLE9BQU8sSUFBTXVJLEdBQUcsR0FBR0gsS0FBSyxDQUFDLG9DQUFELENBQWpCIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgKi9cblxuaW1wb3J0IHsgQWxsVHlwZXNQcm9wcywgUmV0dXJuVHlwZXMgfSBmcm9tICcuL2NvbnN0LmpzJztcbnR5cGUgWkVVU19JTlRFUkZBQ0VTID0gR3JhcGhRTFR5cGVzW1wiRmlsZUNvbnRlbnRCYXNlXCJdXG50eXBlIFpFVVNfVU5JT05TID0gR3JhcGhRTFR5cGVzW1wiRmlsZUNvbnRlbnRcIl1cblxuZXhwb3J0IHR5cGUgVmFsdWVUeXBlcyA9IHtcbiAgICAvKiogVGhlIGBCaWdJbnRgIHNjYWxhciB0eXBlIHJlcHJlc2VudHMgbm9uLWZyYWN0aW9uYWwgc2lnbmVkIHdob2xlIG51bWVyaWMgdmFsdWVzLlxuQHNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9CaWdJbnQgKi9cbltcIkJpZ0ludFwiXTp1bmtub3duO1xuXHQvKiogVGhlIGBCeXRlYCBzY2FsYXIgdHlwZSByZXByZXNlbnRzIGJ5dGUgdmFsdWUgYXMgYSBCdWZmZXIgKi9cbltcIkJ5dGVzXCJdOnVua25vd247XG5cdC8qKiBBIGRhdGUtdGltZSBzdHJpbmcgYXQgVVRDLCBzdWNoIGFzIDIwMDctMTItMDNUMTA6MTU6MzBaLCBjb21wbGlhbnQgd2l0aCB0aGUgYGRhdGUtdGltZWAgZm9ybWF0IG91dGxpbmVkIGluIHNlY3Rpb24gNS42IG9mIHRoZSBSRkMgMzMzOSBwcm9maWxlIG9mIHRoZSBJU08gODYwMSBzdGFuZGFyZCBmb3IgcmVwcmVzZW50YXRpb24gb2YgZGF0ZXMgYW5kIHRpbWVzIHVzaW5nIHRoZSBHcmVnb3JpYW4gY2FsZW5kYXIuICovXG5bXCJEYXRlVGltZVwiXTp1bmtub3duO1xuXHQvKiogQW4gYXJiaXRyYXJ5LXByZWNpc2lvbiBEZWNpbWFsIHR5cGUgKi9cbltcIkRlY2ltYWxcIl06dW5rbm93bjtcblx0LyoqIFRoZSBgSlNPTk9iamVjdGAgc2NhbGFyIHR5cGUgcmVwcmVzZW50cyBKU09OIG9iamVjdHMgYXMgc3BlY2lmaWVkIGJ5IFtFQ01BLTQwNF0oaHR0cDovL3d3dy5lY21hLWludGVybmF0aW9uYWwub3JnL3B1YmxpY2F0aW9ucy9maWxlcy9FQ01BLVNUL0VDTUEtNDA0LnBkZikuICovXG5bXCJKc29uXCJdOnVua25vd247XG5cdFtcIkxhbmdcIl06TGFuZztcblx0W1wiUGxhbktpbmRcIl06UGxhbktpbmQ7XG5cdFtcIlVzZXJSb2xlXCJdOlVzZXJSb2xlO1xuXHRbXCJNYWlsVHlwZVwiXTpNYWlsVHlwZTtcblx0W1wiUmlnaHRzXCJdOlJpZ2h0cztcblx0W1wiRmlsZVwiXTogQWxpYXNUeXBlPHtcblx0aWQ/OnRydWUsXG5cdHNpemU/OnRydWUsXG5cdHNpemVCZWZvcmU/OnRydWUsXG5cdGNyZWF0ZWRBdD86dHJ1ZSxcblx0dkZpbGVzPzpWYWx1ZVR5cGVzW1wiVkZpbGVcIl0sXG5cdHZGaWxlc0N1cnJlbnQ/OlZhbHVlVHlwZXNbXCJWRmlsZVwiXSxcblx0dXNlcnM/OlZhbHVlVHlwZXNbXCJGaWxlc09uVXNlcnNPbkFwcGxpY2F0aW9uc1wiXSxcblx0bWQ1Pzp0cnVlLFxuXHRtZDVFbmNyeXB0ZWQ/OnRydWUsXG5cdGRlbGV0ZWRBdD86dHJ1ZSxcblx0dXNlckFwcD86VmFsdWVUeXBlc1tcIkFwcGxpY2F0aW9uc09uVXNlcnNcIl0sXG5cdG1haWxzPzpWYWx1ZVR5cGVzW1wiRmlsZXNPbk1haWxzXCJdLFxuXHR2YWxpZGF0ZWRBdD86dHJ1ZSxcblx0dXNlcj86VmFsdWVUeXBlc1tcIkZpbGVzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdLFxuXHRcdF9fdHlwZW5hbWU/OiB0cnVlXG59Pjtcblx0W1wiRmlsZVBhcnRcIl06IEFsaWFzVHlwZTx7XG5cdGlkPzp0cnVlLFxuXHRmaWxlPzpWYWx1ZVR5cGVzW1wiRmlsZVwiXSxcblx0ZmlsZUlkPzp0cnVlLFxuXHRzaXplPzp0cnVlLFxuXHRvcmRlcj86dHJ1ZSxcblx0bWQ1Pzp0cnVlLFxuXHR2YWxpZGF0ZWRBdD86dHJ1ZSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIkZpbGVDb250ZW50VHlwZVwiXTpGaWxlQ29udGVudFR5cGU7XG5cdFtcIkZpbGVDb250ZW50UGFydFwiXTogQWxpYXNUeXBlPHtcblx0Y29udGVudFVybD86dHJ1ZSxcblx0b3JkZXI/OnRydWUsXG5cdG1kNT86dHJ1ZSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIkZpbGVDb250ZW50QmFzZVwiXTpBbGlhc1R5cGU8e1xuXHRcdHBhcnRzPzpWYWx1ZVR5cGVzW1wiRmlsZUNvbnRlbnRQYXJ0XCJdLFxuXHRrZXk/OnRydWUsXG5cdG1kNT86dHJ1ZSxcblx0bWQ1RW5jcnlwdGVkPzp0cnVlLFxuXHR0b3RhbFNpemU/OnRydWUsXG5cdHR5cGU/OnRydWU7XG5cdFx0WycuLi5vbiBGaWxlQ29udGVudENsb3VkJ10/OiBPbWl0PFZhbHVlVHlwZXNbXCJGaWxlQ29udGVudENsb3VkXCJdLGtleW9mIFZhbHVlVHlwZXNbXCJGaWxlQ29udGVudEJhc2VcIl0+O1xuXHRcdFsnLi4ub24gRmlsZUNvbnRlbnRTZW50TWFpbCddPzogT21pdDxWYWx1ZVR5cGVzW1wiRmlsZUNvbnRlbnRTZW50TWFpbFwiXSxrZXlvZiBWYWx1ZVR5cGVzW1wiRmlsZUNvbnRlbnRCYXNlXCJdPjtcblx0XHRbJy4uLm9uIEZpbGVDb250ZW50UmVjZWl2ZWRNYWlsJ10/OiBPbWl0PFZhbHVlVHlwZXNbXCJGaWxlQ29udGVudFJlY2VpdmVkTWFpbFwiXSxrZXlvZiBWYWx1ZVR5cGVzW1wiRmlsZUNvbnRlbnRCYXNlXCJdPjtcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIkZpbGVDb250ZW50Q2xvdWRcIl06IEFsaWFzVHlwZTx7XG5cdHBhcnRzPzpWYWx1ZVR5cGVzW1wiRmlsZUNvbnRlbnRQYXJ0XCJdLFxuXHRrZXk/OnRydWUsXG5cdG1kNT86dHJ1ZSxcblx0bWQ1RW5jcnlwdGVkPzp0cnVlLFxuXHR0b3RhbFNpemU/OnRydWUsXG5cdHR5cGU/OnRydWUsXG5cdHB1YmxpY0tleT86dHJ1ZSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIkZpbGVDb250ZW50U2VudE1haWxcIl06IEFsaWFzVHlwZTx7XG5cdHBhcnRzPzpWYWx1ZVR5cGVzW1wiRmlsZUNvbnRlbnRQYXJ0XCJdLFxuXHRrZXk/OnRydWUsXG5cdG1kNT86dHJ1ZSxcblx0bWQ1RW5jcnlwdGVkPzp0cnVlLFxuXHR0b3RhbFNpemU/OnRydWUsXG5cdHR5cGU/OnRydWUsXG5cdFx0X190eXBlbmFtZT86IHRydWVcbn0+O1xuXHRbXCJGaWxlQ29udGVudFJlY2VpdmVkTWFpbFwiXTogQWxpYXNUeXBlPHtcblx0cGFydHM/OlZhbHVlVHlwZXNbXCJGaWxlQ29udGVudFBhcnRcIl0sXG5cdGtleT86dHJ1ZSxcblx0bWQ1Pzp0cnVlLFxuXHRtZDVFbmNyeXB0ZWQ/OnRydWUsXG5cdHRvdGFsU2l6ZT86dHJ1ZSxcblx0dHlwZT86dHJ1ZSxcblx0c2VuZGVyUHVibGljS2V5Pzp0cnVlLFxuXHRcdF9fdHlwZW5hbWU/OiB0cnVlXG59Pjtcblx0W1wiRmlsZUNvbnRlbnRcIl06IEFsaWFzVHlwZTx7XHRcdFtcIi4uLm9uIEZpbGVDb250ZW50Q2xvdWRcIl0gOiBWYWx1ZVR5cGVzW1wiRmlsZUNvbnRlbnRDbG91ZFwiXSxcblx0XHRbXCIuLi5vbiBGaWxlQ29udGVudFJlY2VpdmVkTWFpbFwiXSA6IFZhbHVlVHlwZXNbXCJGaWxlQ29udGVudFJlY2VpdmVkTWFpbFwiXSxcblx0XHRbXCIuLi5vbiBGaWxlQ29udGVudFNlbnRNYWlsXCJdIDogVmFsdWVUeXBlc1tcIkZpbGVDb250ZW50U2VudE1haWxcIl1cblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIkZpbGVSZXNwb25zZVwiXTogQWxpYXNUeXBlPHtcblx0ZmlsZUlkPzp0cnVlLFxuXHRwYXJ0cz86VmFsdWVUeXBlc1tcIkZpbGVQYXJ0UmVzcG9uc2VcIl0sXG5cdGZpbGVQYXJ0U2l6ZT86dHJ1ZSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIkZpbGVQYXJ0UmVzcG9uc2VcIl06IEFsaWFzVHlwZTx7XG5cdGZpZWxkcz86dHJ1ZSxcblx0dXJsPzp0cnVlLFxuXHRvcmRlcj86dHJ1ZSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIkZpbGVTaGFyZWRcIl06IEFsaWFzVHlwZTx7XG5cdHVzZXJJZD86dHJ1ZSxcblx0bWVzc2FnZT86dHJ1ZSxcblx0YXBwSWQ/OnRydWUsXG5cdGlkPzp0cnVlLFxuXHRmaWxlbmFtZT86dHJ1ZSxcblx0c2l6ZT86dHJ1ZSxcblx0c2l6ZUJlZm9yZT86dHJ1ZSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIkZpbGVTaGFyZWRDb250ZW50XCJdOiBBbGlhc1R5cGU8e1xuXHRvd25lcklkPzp0cnVlLFxuXHRwdWJLZXk/OnRydWUsXG5cdG1lc3NhZ2U/OnRydWUsXG5cdGFwcElkPzp0cnVlLFxuXHRpZD86dHJ1ZSxcblx0dHlwZT86dHJ1ZSxcblx0ZmlsZW5hbWU/OnRydWUsXG5cdGNvbnRlbnRVcmw/OnRydWUsXG5cdGtleT86dHJ1ZSxcblx0c2l6ZT86dHJ1ZSxcblx0c2l6ZUJlZm9yZT86dHJ1ZSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIkNsb3VkTGltaXRzXCJdOiBBbGlhc1R5cGU8e1xuXHRzaXplPzp0cnVlLFxuXHRtYXhTaXplPzp0cnVlLFxuXHRjb3VudD86dHJ1ZSxcblx0bWF4Q291bnQ/OnRydWUsXG5cdFx0X190eXBlbmFtZT86IHRydWVcbn0+O1xuXHRbXCJNYWlsTGltaXRzVmFsdWVzXCJdOiBBbGlhc1R5cGU8e1xuXHRjb3VudD86dHJ1ZSxcblx0bWF4Q291bnQ/OnRydWUsXG5cdGZpbGVDb3VudD86dHJ1ZSxcblx0bWF4RmlsZUNvdW50Pzp0cnVlLFxuXHRmaWxlU2l6ZT86dHJ1ZSxcblx0bWF4RmlsZVNpemU/OnRydWUsXG5cdFx0X190eXBlbmFtZT86IHRydWVcbn0+O1xuXHRbXCJVc2VyTWFpbExpbWl0c1wiXTogQWxpYXNUeXBlPHtcblx0c2VudD86VmFsdWVUeXBlc1tcIk1haWxMaW1pdHNWYWx1ZXNcIl0sXG5cdHJlY2VpdmVkPzpWYWx1ZVR5cGVzW1wiTWFpbExpbWl0c1ZhbHVlc1wiXSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIlF1ZXJ5TGltaXRzXCJdOiBBbGlhc1R5cGU8e1xuXHRjbG91ZD86VmFsdWVUeXBlc1tcIkNsb3VkTGltaXRzXCJdLFxuXHRtYWlsPzpWYWx1ZVR5cGVzW1wiVXNlck1haWxMaW1pdHNcIl0sXG5cdFx0X190eXBlbmFtZT86IHRydWVcbn0+O1xuXHRbXCJMaW1pdHNcIl06IEFsaWFzVHlwZTx7XG5cdGRvd25sb2FkQmFuZHdpZHRoPzp0cnVlLFxuXHRkb3dubG9hZENvdW50Pzp0cnVlLFxuXHRoYXJkRmlsZUNvdW50Pzp0cnVlLFxuXHRoYXJkRmlsZVNpemU/OnRydWUsXG5cdHBlckZpbGVTaXplPzp0cnVlLFxuXHRyZWNlaXZlZE1haWxzPzpWYWx1ZVR5cGVzW1wiTWFpbExpbWl0c1wiXSxcblx0c2VudE1haWxzPzpWYWx1ZVR5cGVzW1wiTWFpbExpbWl0c1wiXSxcblx0dXBsb2FkQmFuZHdpZHRoPzp0cnVlLFxuXHR1cGxvYWRDb3VudD86dHJ1ZSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIk1haWxMaW1pdHNcIl06IEFsaWFzVHlwZTx7XG5cdGNvdW50Pzp0cnVlLFxuXHRmaWxlQ291bnQ/OnRydWUsXG5cdGZpbGVTaXplPzp0cnVlLFxuXHRoYXJkQ291bnQ/OnRydWUsXG5cdGhhcmRGaWxlQ291bnQ/OnRydWUsXG5cdGhhcmRGaWxlU2l6ZT86dHJ1ZSxcblx0cGVyRmlsZVNpemU/OnRydWUsXG5cdFx0X190eXBlbmFtZT86IHRydWVcbn0+O1xuXHRbXCJVc2VyXCJdOiBBbGlhc1R5cGU8e1xuXHRpZD86dHJ1ZSxcblx0ZGVsZXRlZEF0Pzp0cnVlLFxuXHRsYW5nPzp0cnVlLFxuXHRyZXBvcnRTZW50PzpWYWx1ZVR5cGVzW1wiUmVwb3J0XCJdLFxuXHRnb2RGYXRoZXI/OlZhbHVlVHlwZXNbXCJVc2VyXCJdLFxuXHRnb2RDaGlsZHJlbj86VmFsdWVUeXBlc1tcIlVzZXJcIl0sXG5cdGZpcnN0bmFtZT86dHJ1ZSxcblx0bGFzdG5hbWU/OnRydWUsXG5cdGVtYWlsPzp0cnVlLFxuXHRwaG9uZT86dHJ1ZSxcblx0bGFzdExvZ2luPzp0cnVlLFxuXHRyb2xlPzp0cnVlLFxuXHRzZXNzaW9ucz86VmFsdWVUeXBlc1tcIlVzZXJTZXNzaW9uXCJdLFxuXHRjcmVhdGVkQXQ/OnRydWUsXG5cdHJlY2VpdmVkTWFpbHM/OlZhbHVlVHlwZXNbXCJNYWlsXCJdLFxuXHR3YWl0aW5nUmVjZWl2ZWRNYWlscz86VmFsdWVUeXBlc1tcIldhaXRpbmdSZWNlaXZlZE1haWxcIl0sXG5cdHNlbnRNYWlscz86VmFsdWVUeXBlc1tcIk1haWxcIl0sXG5cdGRyYWZ0TWFpbHM/OlZhbHVlVHlwZXNbXCJNYWlsXCJdLFxuXHRhcHBTZXR0aW5ncz86VmFsdWVUeXBlc1tcIlVzZXJBcHBTZXR0aW5nc1wiXSxcblx0YXBwbGljYXRpb25zPzpWYWx1ZVR5cGVzW1wiQXBwbGljYXRpb25zT25Vc2Vyc1wiXSxcblx0cHVibGljS2V5Pzp0cnVlLFxuXHRcdF9fdHlwZW5hbWU/OiB0cnVlXG59Pjtcblx0W1wiTWFpbFwiXTogQWxpYXNUeXBlPHtcblx0aWQ/OnRydWUsXG5cdGFwcD86VmFsdWVUeXBlc1tcIkFwcGxpY2F0aW9uXCJdLFxuXHRib2R5Pzp0cnVlLFxuXHRjcmVhdGVkQXQ/OnRydWUsXG5cdGRlbGV0ZWRBdD86dHJ1ZSxcblx0ZmlsZXM/OlZhbHVlVHlwZXNbXCJGaWxlc09uTWFpbHNcIl0sXG5cdG1haWxJbnRlZ3JpdHk/OlZhbHVlVHlwZXNbXCJNYWlsSW50ZWdyaXR5XCJdLFxuXHRtYWlsSW50ZWdyaXR5RHJhZnQ/OlZhbHVlVHlwZXNbXCJNYWlsSW50ZWdyaXR5RHJhZnRcIl0sXG5cdG9wZW5lZEF0Pzp0cnVlLFxuXHRyZWNpcGllbnQ/OlZhbHVlVHlwZXNbXCJVc2VyXCJdLFxuXHRzZW5kZXI/OlZhbHVlVHlwZXNbXCJVc2VyXCJdLFxuXHRzdWJqZWN0Pzp0cnVlLFxuXHR0eXBlPzp0cnVlLFxuXHRyZWNpcGllbnRzPzpWYWx1ZVR5cGVzW1wiVXNlclwiXSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIk1haWxJbnRlZ3JpdHlcIl06IEFsaWFzVHlwZTx7XG5cdGlkPzp0cnVlLFxuXHRoYXNoPzp0cnVlLFxuXHRoYXNoS2V5Pzp0cnVlLFxuXHRhbnN3ZXJzPzpWYWx1ZVR5cGVzW1wiTWFpbEludGVncml0eVwiXSxcblx0YXBwPzpWYWx1ZVR5cGVzW1wiQXBwbGljYXRpb25cIl0sXG5cdG1haWxzPzpWYWx1ZVR5cGVzW1wiTWFpbFwiXSxcblx0cmVjaXBpZW50cz86VmFsdWVUeXBlc1tcIlVzZXJcIl0sXG5cdHRlbXBvcmFyeVJlY2lwaWVudHM/OlZhbHVlVHlwZXNbXCJUZW1wb3JhcnlVc2VyXCJdLFxuXHRyZXBseVRvPzpWYWx1ZVR5cGVzW1wiTWFpbEludGVncml0eVwiXSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIkZpbGVzT25NYWlsc1wiXTogQWxpYXNUeXBlPHtcblx0ZmlsZT86VmFsdWVUeXBlc1tcIkZpbGVcIl0sXG5cdGZpbGVLZXk/OnRydWUsXG5cdGZpbGVuYW1lPzp0cnVlLFxuXHRtYWlsPzpWYWx1ZVR5cGVzW1wiTWFpbFwiXSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIkZpbGVzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdOiBBbGlhc1R5cGU8e1xuXHRmaWxlPzpWYWx1ZVR5cGVzW1wiRmlsZVwiXSxcblx0dXNlckFwcD86VmFsdWVUeXBlc1tcIkFwcGxpY2F0aW9uc09uVXNlcnNcIl0sXG5cdC8qKiBFbmNyeXB0ZWQgd2l0aCBVc2VyQXBwIGtleXMgKi9cblx0a2V5Pzp0cnVlLFxuXHRcdF9fdHlwZW5hbWU/OiB0cnVlXG59Pjtcblx0W1wiVkZpbGVcIl06IEFsaWFzVHlwZTx7XG5cdGlkPzp0cnVlLFxuXHRpc0Zhdm9yaXRlPzp0cnVlLFxuXHRjcmVhdGVkQXQ/OnRydWUsXG5cdGRlbGV0ZWRBdD86dHJ1ZSxcblx0ZmlsZW5hbWU/OnRydWUsXG5cdHVzZXJBcHBzPzpWYWx1ZVR5cGVzW1wiVkZpbGVzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdLFxuXHRjcmVhdGVkQnk/OlZhbHVlVHlwZXNbXCJBcHBsaWNhdGlvbnNPblVzZXJzXCJdLFxuXHR1c2VyQXBwPzpWYWx1ZVR5cGVzW1wiVkZpbGVzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdLFxuXHRmb2xkZXI/OlZhbHVlVHlwZXNbXCJGb2xkZXJcIl0sXG5cdGhpc3Rvcnk/OlZhbHVlVHlwZXNbXCJGaWxlXCJdLFxuXHRjdXJyZW50PzpWYWx1ZVR5cGVzW1wiRmlsZVwiXSxcblx0dXBkYXRlZEF0Pzp0cnVlLFxuXHRcdF9fdHlwZW5hbWU/OiB0cnVlXG59Pjtcblx0W1wiRm9sZGVyQnJlYWRjcnVtYkl0ZW1cIl06IEFsaWFzVHlwZTx7XG5cdGlkPzp0cnVlLFxuXHRuYW1lPzp0cnVlLFxuXHRwdWJLZXk/OnRydWUsXG5cdG5hbWVLZXk/OnRydWUsXG5cdFx0X190eXBlbmFtZT86IHRydWVcbn0+O1xuXHRbXCJGb2xkZXJcIl06IEFsaWFzVHlwZTx7XG5cdGlkPzp0cnVlLFxuXHRpc0Zhdm9yaXRlPzp0cnVlLFxuXHRjcmVhdGVkQXQ/OnRydWUsXG5cdGRlbGV0ZWRBdD86dHJ1ZSxcblx0dXBkYXRlZEF0Pzp0cnVlLFxuXHRjcmVhdGVkQnk/OlZhbHVlVHlwZXNbXCJBcHBsaWNhdGlvbnNPblVzZXJzXCJdLFxuXHR1c2VyQXBwcz86VmFsdWVUeXBlc1tcIkZvbGRlcnNPblVzZXJzT25BcHBsaWNhdGlvbnNcIl0sXG5cdHVzZXJBcHA/OlZhbHVlVHlwZXNbXCJGb2xkZXJzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdLFxuXHRuYW1lPzp0cnVlLFxuXHRwYXJlbnRGb2xkZXI/OlZhbHVlVHlwZXNbXCJGb2xkZXJcIl0sXG5cdHN1YmZvbGRlcnM/OlZhbHVlVHlwZXNbXCJGb2xkZXJcIl0sXG5cdHZGaWxlcz86VmFsdWVUeXBlc1tcIlZGaWxlXCJdLFxuXHRicmVhZGNydW1iPzpWYWx1ZVR5cGVzW1wiRm9sZGVyQnJlYWRjcnVtYkl0ZW1cIl0sXG5cdFx0X190eXBlbmFtZT86IHRydWVcbn0+O1xuXHRbXCJBcHBsaWNhdGlvblwiXTogQWxpYXNUeXBlPHtcblx0aWQ/OnRydWUsXG5cdG5hbWU/OnRydWUsXG5cdFx0X190eXBlbmFtZT86IHRydWVcbn0+O1xuXHRbXCJBcHBsaWNhdGlvbnNPblVzZXJzXCJdOiBBbGlhc1R5cGU8e1xuXHRmYWtlVXNlcklkPzp0cnVlLFxuXHRrZXlQYWlyPzpWYWx1ZVR5cGVzW1wiQXBwS2V5UGFpclwiXSxcblx0c2Vzc2lvbnM/OlZhbHVlVHlwZXNbXCJBcHBTZXNzaW9uXCJdLFxuXHRhcHA/OlZhbHVlVHlwZXNbXCJBcHBsaWNhdGlvblwiXSxcblx0dXNlcj86VmFsdWVUeXBlc1tcIlVzZXJcIl0sXG5cdGZvbGRlcnM/OlZhbHVlVHlwZXNbXCJGb2xkZXJzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdLFxuXHRzZXR0aW5ncz86VmFsdWVUeXBlc1tcIlVzZXJBcHBTZXR0aW5nc1wiXSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIkFwcEtleVBhaXJcIl06IEFsaWFzVHlwZTx7XG5cdHB1Yj86dHJ1ZSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIkZvbGRlclNpemVcIl06IEFsaWFzVHlwZTx7XG5cdHNpemU/OnRydWUsXG5cdHNpemVCZWZvcmU/OnRydWUsXG5cdFx0X190eXBlbmFtZT86IHRydWVcbn0+O1xuXHRbXCJVc2VyU2Vzc2lvblwiXTogQWxpYXNUeXBlPHtcblx0aWQ/OnRydWUsXG5cdGFwcFNlc3Npb25zPzpWYWx1ZVR5cGVzW1wiQXBwU2Vzc2lvblwiXSxcblx0bGFzdEFjdGl2aXR5Pzp0cnVlLFxuXHR1c2VyQWdlbnQ/OnRydWUsXG5cdGlwPzp0cnVlLFxuXHRjaXR5Pzp0cnVlLFxuXHRjb3VudHJ5Pzp0cnVlLFxuXHRjcmVhdGVkQXQ/OnRydWUsXG5cdFx0X190eXBlbmFtZT86IHRydWVcbn0+O1xuXHRbXCJBcHBTZXNzaW9uXCJdOiBBbGlhc1R5cGU8e1xuXHRpZD86dHJ1ZSxcblx0bGFzdEFjdGl2aXR5Pzp0cnVlLFxuXHR1c2VyQWdlbnQ/OnRydWUsXG5cdGlwPzp0cnVlLFxuXHRjaXR5Pzp0cnVlLFxuXHRjb3VudHJ5Pzp0cnVlLFxuXHR1c2VyU2Vzc2lvbj86VmFsdWVUeXBlc1tcIlVzZXJTZXNzaW9uXCJdLFxuXHR1c2VyQXBwPzpWYWx1ZVR5cGVzW1wiQXBwbGljYXRpb25zT25Vc2Vyc1wiXSxcblx0Y3JlYXRlZEF0Pzp0cnVlLFxuXHRcdF9fdHlwZW5hbWU/OiB0cnVlXG59Pjtcblx0W1wiVXNlckFwcFNldHRpbmdzXCJdOiBBbGlhc1R5cGU8e1xuXHRpZD86dHJ1ZSxcblx0Y2xvdWRGaWxlRGF5c0ZvckRlbGV0ZT86dHJ1ZSxcblx0Y2xvdWRGb2xkZXJEYXlzRm9yRGVsZXRlPzp0cnVlLFxuXHRoaXN0b3J5RmlsZURheXNGb3JEZWxldGU/OnRydWUsXG5cdGhpc3RvcnlNYXhGaWxlQ291bnQ/OnRydWUsXG5cdGF1dG9EaXNjb25uZWN0RGVsYXk/OnRydWUsXG5cdFx0X190eXBlbmFtZT86IHRydWVcbn0+O1xuXHRbXCJNYWlsRmlsZUlucHV0XCJdOiB7XG5cdGlkOnN0cmluZyxcblx0bmFtZTpzdHJpbmcsXG5cdGZpbGVLZXk6c3RyaW5nXG59O1xuXHRbXCJNYWlsUmVjaXBpZW50SW5wdXRcIl06IHtcblx0Ym9keTpzdHJpbmcsXG5cdHN1YmplY3Q6c3RyaW5nLFxuXHRyZWNpcGllbnRJZDpzdHJpbmcsXG5cdGZpbGVzOlZhbHVlVHlwZXNbXCJNYWlsRmlsZUlucHV0XCJdW11cbn07XG5cdFtcIlNoYXJlRmlsZUtleUlucHV0XCJdOiB7XG5cdGlkOnN0cmluZyxcblx0a2V5OnN0cmluZ1xufTtcblx0W1wiTmFtZUtleUlucHV0XCJdOiB7XG5cdGlkOnN0cmluZyxcblx0bmFtZUtleTpzdHJpbmcsXG5cdGZpbGVzOlZhbHVlVHlwZXNbXCJTaGFyZUZpbGVLZXlJbnB1dFwiXVtdXG59O1xuXHRbXCJOYW1lS2V5SW5wdXRGb2xkZXJzXCJdOiB7XG5cdGlkOnN0cmluZyxcblx0bmFtZUtleTpzdHJpbmdcbn07XG5cdFtcIlNoYXJlRm9sZGVyc0lucHV0XCJdOiB7XG5cdGZvbGRlcnM6VmFsdWVUeXBlc1tcIk5hbWVLZXlJbnB1dEZvbGRlcnNcIl1bXSxcblx0dkZpbGVzOlZhbHVlVHlwZXNbXCJOYW1lS2V5SW5wdXRcIl1bXVxufTtcblx0W1wiU2hhcmVGaWxlSW5IaXN0b3J5SW5wdXRcIl06IHtcblx0ZmlsZUlkOnN0cmluZyxcblx0dXNlcnM6VmFsdWVUeXBlc1tcIlNoYXJlRmlsZUtleUlucHV0XCJdW11cbn07XG5cdFtcIlBheUlucHV0VHlwZVwiXTpQYXlJbnB1dFR5cGU7XG5cdFtcIlBheUlucHV0XCJdOiB7XG5cdHR5cGU6VmFsdWVUeXBlc1tcIlBheUlucHV0VHlwZVwiXSxcblx0dG9rZW46c3RyaW5nLFxuXHRmaXJzdE5hbWU6c3RyaW5nLFxuXHRsYXN0TmFtZTpzdHJpbmcsXG5cdHN0cmVldDpzdHJpbmcsXG5cdHBvc3RhbENvZGU6c3RyaW5nLFxuXHRjaXR5OnN0cmluZyxcblx0Y291bnRyeTpzdHJpbmcsXG5cdG51bWJlcjpzdHJpbmcsXG5cdG1vbnRoOnN0cmluZyxcblx0eWVhcjpzdHJpbmcsXG5cdGN2djpzdHJpbmdcbn07XG5cdFtcIldhaXRpbmdSZWNlaXZlZE1haWxcIl06IEFsaWFzVHlwZTx7XG5cdHNlbmRlcj86VmFsdWVUeXBlc1tcIlVzZXJcIl0sXG5cdGRhdGU/OnRydWUsXG5cdHJlY2lwaWVudHM/OlZhbHVlVHlwZXNbXCJVc2VyXCJdLFxuXHR0ZW1wb3JhcnlSZWNpcGllbnRzPzpWYWx1ZVR5cGVzW1wiVGVtcG9yYXJ5VXNlclwiXSxcblx0YXR0YWNobWVudHNDb3VudD86dHJ1ZSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIlRlbXBvcmFyeVVzZXJcIl06IEFsaWFzVHlwZTx7XG5cdGlkPzp0cnVlLFxuXHRtYWlscz86VmFsdWVUeXBlc1tcIk1haWxJbnRlZ3JpdHlcIl0sXG5cdGRyYWZ0TWFpbHM/OlZhbHVlVHlwZXNbXCJNYWlsSW50ZWdyaXR5RHJhZnRcIl0sXG5cdGVtYWlsPzp0cnVlLFxuXHRcdF9fdHlwZW5hbWU/OiB0cnVlXG59Pjtcblx0W1wiTWFpbEludGVncml0eURyYWZ0XCJdOiBBbGlhc1R5cGU8e1xuXHRpZD86dHJ1ZSxcblx0aGFzaD86dHJ1ZSxcblx0aGFzaEtleT86dHJ1ZSxcblx0YXBwPzpWYWx1ZVR5cGVzW1wiQXBwbGljYXRpb25cIl0sXG5cdG1haWw/OlZhbHVlVHlwZXNbXCJNYWlsXCJdLFxuXHRyZWNpcGllbnRzPzpWYWx1ZVR5cGVzW1wiVXNlclwiXSxcblx0dGVtcG9yYXJ5UmVjaXBpZW50cz86VmFsdWVUeXBlc1tcIlRlbXBvcmFyeVVzZXJcIl0sXG5cdHJlcGx5VG8/OlZhbHVlVHlwZXNbXCJNYWlsSW50ZWdyaXR5XCJdLFxuXHRcdF9fdHlwZW5hbWU/OiB0cnVlXG59Pjtcblx0W1wiRmFxXCJdOiBBbGlhc1R5cGU8e1xuXHRpZD86dHJ1ZSxcblx0b3JkZXI/OnRydWUsXG5cdGVudHJpZXM/OlZhbHVlVHlwZXNbXCJGYXFFbnRyeVwiXSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIkZhcUVudHJ5XCJdOiBBbGlhc1R5cGU8e1xuXHRpZD86dHJ1ZSxcblx0bGFuZz86dHJ1ZSxcblx0cXVlc3Rpb24/OnRydWUsXG5cdGFuc3dlcj86dHJ1ZSxcblx0ZmFxPzpWYWx1ZVR5cGVzW1wiRmFxXCJdLFxuXHRcdF9fdHlwZW5hbWU/OiB0cnVlXG59Pjtcblx0W1wiUGxhblwiXTogQWxpYXNUeXBlPHtcblx0aWQ/OnRydWUsXG5cdGtpbmQ/OnRydWUsXG5cdGNvZGVzPzp0cnVlLFxuXHRsaW1pdHM/OlZhbHVlVHlwZXNbXCJMaW1pdHNcIl0sXG5cdFx0X190eXBlbmFtZT86IHRydWVcbn0+O1xuXHRbXCJSZXBvcnRcIl06IEFsaWFzVHlwZTx7XG5cdGlkPzp0cnVlLFxuXHR1c2VyPzpWYWx1ZVR5cGVzW1wiVXNlclwiXSxcblx0cmVwb3J0ZWRVc2VyPzpWYWx1ZVR5cGVzW1wiVXNlclwiXSxcblx0Y3VzdG9tTWVzc2FnZT86dHJ1ZSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIkZvbGRlcnNPblVzZXJzT25BcHBsaWNhdGlvbnNcIl06IEFsaWFzVHlwZTx7XG5cdGZvbGRlcj86VmFsdWVUeXBlc1tcIkZvbGRlclwiXSxcblx0dXNlckFwcD86VmFsdWVUeXBlc1tcIkFwcGxpY2F0aW9uc09uVXNlcnNcIl0sXG5cdHJpZ2h0cz86dHJ1ZSxcblx0bmFtZUtleT86dHJ1ZSxcblx0aXNSb290Pzp0cnVlLFxuXHRcdF9fdHlwZW5hbWU/OiB0cnVlXG59Pjtcblx0W1wiVkZpbGVzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdOiBBbGlhc1R5cGU8e1xuXHR2RmlsZT86VmFsdWVUeXBlc1tcIlZGaWxlXCJdLFxuXHR1c2VyQXBwPzpWYWx1ZVR5cGVzW1wiQXBwbGljYXRpb25zT25Vc2Vyc1wiXSxcblx0cmlnaHRzPzp0cnVlLFxuXHRuYW1lS2V5Pzp0cnVlLFxuXHRpc1Jvb3Q/OnRydWUsXG5cdFx0X190eXBlbmFtZT86IHRydWVcbn0+O1xuXHRbXCJGYXFJdGVtXCJdOiBBbGlhc1R5cGU8e1xuXHRvcmRlcj86dHJ1ZSxcblx0cXVlc3Rpb24/OnRydWUsXG5cdGFuc3dlcj86dHJ1ZSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIkJsb2dcIl06IEFsaWFzVHlwZTx7XG5cdGlkPzp0cnVlLFxuXHRvcmRlcj86dHJ1ZSxcblx0ZW50cmllcz86VmFsdWVUeXBlc1tcIkJsb2dFbnRyeVwiXSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIkJsb2dFbnRyeVwiXTogQWxpYXNUeXBlPHtcblx0aWQ/OnRydWUsXG5cdGxhbmc/OnRydWUsXG5cdGF1dGhvcj86dHJ1ZSxcblx0Ym9keT86dHJ1ZSxcblx0ZGF0ZT86dHJ1ZSxcblx0aW1hZ2U/OnRydWUsXG5cdHN1bW1hcnk/OnRydWUsXG5cdHRpdGxlPzp0cnVlLFxuXHRcdF9fdHlwZW5hbWU/OiB0cnVlXG59Pjtcblx0W1wiQmxvZ0l0ZW1cIl06IEFsaWFzVHlwZTx7XG5cdGlkPzp0cnVlLFxuXHRibG9nSWQ/OnRydWUsXG5cdG9yZGVyPzp0cnVlLFxuXHR0aXRsZT86dHJ1ZSxcblx0Ym9keT86dHJ1ZSxcblx0YXV0aG9yPzp0cnVlLFxuXHRpbWFnZT86dHJ1ZSxcblx0aW1hZ2VBbHQ/OnRydWUsXG5cdHN1bW1hcnk/OnRydWUsXG5cdGRhdGU/OnRydWUsXG5cdFx0X190eXBlbmFtZT86IHRydWVcbn0+O1xuXHRbXCJVc2VyQXBwTm90aWZpY2F0aW9uc1wiXTogQWxpYXNUeXBlPHtcblx0aWQ/OnRydWUsXG5cdGVuYWJsZUFsbD86dHJ1ZSxcblx0bWFpbD86dHJ1ZSxcblx0Y2xvdWQ/OnRydWUsXG5cdGRpc2FibGVBbGxVbnRpbD86dHJ1ZSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIlJlY3VybHlJbnZvaWNlc1wiXTogQWxpYXNUeXBlPHtcblx0cGRmPzp0cnVlLFxuXHRkYXRlPzp0cnVlLFxuXHRkdWU/OnRydWUsXG5cdHN0YXR1cz86dHJ1ZSxcblx0dG90YWw/OnRydWUsXG5cdG5hbWU/OnRydWUsXG5cdGN1cnJlbmN5Pzp0cnVlLFxuXHRcdF9fdHlwZW5hbWU/OiB0cnVlXG59Pjtcblx0W1wiUmVjdXJseVN1YnNjcmlwdGlvblwiXTogQWxpYXNUeXBlPHtcblx0YXV0b3JlbmV3Pzp0cnVlLFxuXHRhY3RpdmF0ZWRBdD86dHJ1ZSxcblx0Y3VycmVudFBlcmlvZEVuZHNBdD86dHJ1ZSxcblx0Y3VycmVudFBlcmlvZFN0YXJ0ZWRBdD86dHJ1ZSxcblx0Y2FuY2VsZWRBdD86dHJ1ZSxcblx0Y3JlYXRlZEF0Pzp0cnVlLFxuXHRleHBpcmVzQXQ/OnRydWUsXG5cdHBhdXNlZEF0Pzp0cnVlLFxuXHR0cmlhbEVuZHNBdD86dHJ1ZSxcblx0dHJpYWxTdGFydGVkQXQ/OnRydWUsXG5cdHVwZGF0ZWRBdD86dHJ1ZSxcblx0c3RhdGU/OnRydWUsXG5cdGNvbGxlY3Rpb25NZXRob2Q/OnRydWUsXG5cdHBsYW4/OnRydWUsXG5cdHBsYW5Db2RlPzp0cnVlLFxuXHR0b3RhbD86dHJ1ZSxcblx0XHRfX3R5cGVuYW1lPzogdHJ1ZVxufT47XG5cdFtcIlBheW1lbnRJbmZvc1wiXTogQWxpYXNUeXBlPHtcblx0aG9zdGVkVXJsPzp0cnVlLFxuXHRjdXJyZW50U3Vic2NyaXB0aW9uPzpWYWx1ZVR5cGVzW1wiUmVjdXJseVN1YnNjcmlwdGlvblwiXSxcblx0aW52b2ljZXM/OlZhbHVlVHlwZXNbXCJSZWN1cmx5SW52b2ljZXNcIl0sXG5cdFx0X190eXBlbmFtZT86IHRydWVcbn0+O1xuXHRbXCJTaGFyZUZvbGRlclJlc3BvbnNlXCJdOiBBbGlhc1R5cGU8e1xuXHRmb2xkZXJzPzp0cnVlLFxuXHR2RmlsZXM/OnRydWUsXG5cdFx0X190eXBlbmFtZT86IHRydWVcbn0+O1xuXHRbXCJRdWVyeVwiXTogQWxpYXNUeXBlPHtcblx0dGVzdD86dHJ1ZSxcblx0bGltaXRzPzpWYWx1ZVR5cGVzW1wiUXVlcnlMaW1pdHNcIl0sXG51c2VyPzogW3tcdHVzZXJJZD86c3RyaW5nIHwgbnVsbH0sVmFsdWVUeXBlc1tcIlVzZXJcIl1dLFxuZGJDb25maWc/OiBbe1x0YXBwQ29kZTpzdHJpbmd9LHRydWVdLFxuZGJHZXQ/OiBbe1x0ZmllbGQ6c3RyaW5nLFx0dXNlcklkPzpzdHJpbmcgfCBudWxsfSx0cnVlXSxcbmRiU2VhcmNoPzogW3tcdHNlYXJjaDpzdHJpbmcsXHRmaWVsZDpzdHJpbmd9LHRydWVdLFxuZmlsZUNvbnRlbnQ/OiBbe1x0ZmlsZUlkOnN0cmluZ30sVmFsdWVUeXBlc1tcIkZpbGVDb250ZW50XCJdXSxcbmZpbGVzU2hhcmVkV2l0aE1lPzogW3tcdGFjY2VwdGVkPzpib29sZWFuIHwgbnVsbH0sVmFsdWVUeXBlc1tcIkZpbGVTaGFyZWRDb250ZW50XCJdXSxcblx0dkZpbGVzU2hhcmVkV2l0aE1lPzpWYWx1ZVR5cGVzW1wiVkZpbGVcIl0sXG5cdGZvbGRlcnNTaGFyZWRXaXRoTWU/OlZhbHVlVHlwZXNbXCJGb2xkZXJcIl0sXG5mb2xkZXJTaXplPzogW3tcdGZvbGRlcklkPzpzdHJpbmcgfCBudWxsfSxWYWx1ZVR5cGVzW1wiRm9sZGVyU2l6ZVwiXV0sXG5mb2xkZXI/OiBbe1x0aWQ/OnN0cmluZyB8IG51bGwsXHRkZWxldGVkPzpib29sZWFuIHwgbnVsbH0sVmFsdWVUeXBlc1tcIkZvbGRlclwiXV0sXG52RmlsZT86IFt7XHRpZDpzdHJpbmd9LFZhbHVlVHlwZXNbXCJWRmlsZVwiXV0sXG5maWxlPzogW3tcdGlkOnN0cmluZ30sVmFsdWVUeXBlc1tcIkZpbGVcIl1dLFxuZmFxPzogW3tcdGxhbmc/OlZhbHVlVHlwZXNbXCJMYW5nXCJdIHwgbnVsbH0sVmFsdWVUeXBlc1tcIkZhcUl0ZW1cIl1dLFxuXHRwYXltZW50SW5mb3M/OlZhbHVlVHlwZXNbXCJQYXltZW50SW5mb3NcIl0sXG5cdHBsYW5zPzpWYWx1ZVR5cGVzW1wiUGxhblwiXSxcblx0c2hhcmVkRm9sZGVycz86VmFsdWVUeXBlc1tcIkZvbGRlclwiXSxcblx0c2hhcmVkVkZpbGVzPzpWYWx1ZVR5cGVzW1wiVkZpbGVcIl0sXG5ibG9nPzogW3tcdGxhbmc/OlZhbHVlVHlwZXNbXCJMYW5nXCJdIHwgbnVsbH0sVmFsdWVUeXBlc1tcIkJsb2dJdGVtXCJdXSxcblx0ZGVsZXRlZEZvbGRlcnM/OlZhbHVlVHlwZXNbXCJGb2xkZXJcIl0sXG5cdGRlbGV0ZWRWRmlsZXM/OlZhbHVlVHlwZXNbXCJWRmlsZVwiXSxcbm1haWw/OiBbe1x0aWQ6c3RyaW5nfSxWYWx1ZVR5cGVzW1wiTWFpbFwiXV0sXG5kZWxldGVkTWFpbHM/OiBbe1x0bWFpbFR5cGU6VmFsdWVUeXBlc1tcIk1haWxUeXBlXCJdfSxWYWx1ZVR5cGVzW1wiTWFpbFwiXV0sXG5cdGFwcE5vdGlmaWNhdGlvbnM/OlZhbHVlVHlwZXNbXCJVc2VyQXBwTm90aWZpY2F0aW9uc1wiXSxcbnVzZXJMaXN0PzogW3tcdHNlYXJjaD86c3RyaW5nIHwgbnVsbH0sVmFsdWVUeXBlc1tcIlVzZXJcIl1dLFxuXHRcdF9fdHlwZW5hbWU/OiB0cnVlXG59Pjtcblx0W1wiTXV0YXRpb25cIl06IEFsaWFzVHlwZTx7XG5jcmVhdGVBcHBsaWNhdGlvbj86IFt7XHRuYW1lOnN0cmluZyxcdG9yaWdpbjpzdHJpbmcsXHRkZXZlbG9wZXJJZDpzdHJpbmd9LHRydWVdLFxuZGJTZXQ/OiBbe1x0dmFsdWU6c3RyaW5nLFx0dXNlcklkPzpzdHJpbmcgfCBudWxsfSx0cnVlXSxcbmRiQ29uZmlnPzogW3tcdGFwcENvZGU6c3RyaW5nLFx0Y29uZmlnOnN0cmluZ30sdHJ1ZV0sXG5zaGFyZVZGaWxlPzogW3tcdHZGaWxlSWQ6c3RyaW5nLFx0dXNlcklkOnN0cmluZyxcdG5hbWVLZXk6c3RyaW5nLFx0cmlnaHRzOlZhbHVlVHlwZXNbXCJSaWdodHNcIl0sXHRoaXN0b3J5OlZhbHVlVHlwZXNbXCJTaGFyZUZpbGVLZXlJbnB1dFwiXVtdfSx0cnVlXSxcbnNoYXJlRm9sZGVyPzogW3tcdGZvbGRlcklkOnN0cmluZyxcdHVzZXJJZDpzdHJpbmd9LFZhbHVlVHlwZXNbXCJTaGFyZUZvbGRlclJlc3BvbnNlXCJdXSxcbnNoYXJlRm9sZGVyRmluaXNoPzogW3tcdHNoYXJlRm9sZGVyczpWYWx1ZVR5cGVzW1wiU2hhcmVGb2xkZXJzSW5wdXRcIl0sXHR1c2VySWQ6c3RyaW5nLFx0cmlnaHRzOlZhbHVlVHlwZXNbXCJSaWdodHNcIl19LHRydWVdLFxudXBkYXRlRmlsZT86IFt7XHRmaWxlSWQ6c3RyaW5nLFx0aXNGYXZvcml0ZT86Ym9vbGVhbiB8IG51bGwsXHRmaWxlbmFtZT86c3RyaW5nIHwgbnVsbCxcdGRlbGV0ZWRBdD86VmFsdWVUeXBlc1tcIkRhdGVUaW1lXCJdIHwgbnVsbH0sVmFsdWVUeXBlc1tcIlZGaWxlXCJdXSxcbnVwZGF0ZVByb2ZpbGU/OiBbe1x0Zmlyc3RuYW1lPzpzdHJpbmcgfCBudWxsLFx0bGFzdG5hbWU/OnN0cmluZyB8IG51bGwsXHRsYW5nPzpWYWx1ZVR5cGVzW1wiTGFuZ1wiXSB8IG51bGx9LFZhbHVlVHlwZXNbXCJVc2VyXCJdXSxcbnVwbG9hZEFub255bW91cz86IFt7XHRmaWxlTmFtZTpzdHJpbmcsXHRmaWxlU2l6ZTpudW1iZXIsXHRmaWxlU2l6ZUJlZm9yZTpudW1iZXIsXHRtZXNzYWdlPzpzdHJpbmcgfCBudWxsLFx0cHViS2V5OnN0cmluZyxcdHRva2VuOnN0cmluZ30sVmFsdWVUeXBlc1tcIkZpbGVSZXNwb25zZVwiXV0sXG51cGxvYWRGaWxlPzogW3tcdGZpbGVTaXplOlZhbHVlVHlwZXNbXCJCaWdJbnRcIl0sXHRmaWxlU2l6ZUJlZm9yZTpWYWx1ZVR5cGVzW1wiQmlnSW50XCJdLFx0ZmlsZUtleTpzdHJpbmcsXHRtZDU6c3RyaW5nLFx0bWQ1RW5jcnlwdGVkOnN0cmluZ30sVmFsdWVUeXBlc1tcIkZpbGVSZXNwb25zZVwiXV0sXG5jcmVhdGVGb2xkZXI/OiBbe1x0bmFtZTpzdHJpbmcsXHRrZXk6c3RyaW5nLFx0cGFyZW50Rm9sZGVySWQ/OnN0cmluZyB8IG51bGx9LFZhbHVlVHlwZXNbXCJGb2xkZXJcIl1dLFxubW92ZUZvbGRlcnM/OiBbe1x0Zm9sZGVyc0lkOnN0cmluZ1tdLFx0cGFyZW50Rm9sZGVySWQ/OnN0cmluZyB8IG51bGx9LHRydWVdLFxuZGVsZXRlRm9sZGVyPzogW3tcdGlkOnN0cmluZ30sdHJ1ZV0sXG5tb3ZlRmlsZXM/OiBbe1x0ZmlsZXNJZDpzdHJpbmdbXSxcdHBhcmVudEZvbGRlcklkPzpzdHJpbmcgfCBudWxsfSx0cnVlXSxcbnVwZGF0ZUZvbGRlcj86IFt7XHRmb2xkZXJJZDpzdHJpbmcsXHRuYW1lPzpzdHJpbmcgfCBudWxsLFx0aXNGYXZvcml0ZT86Ym9vbGVhbiB8IG51bGwsXHRkZWxldGVkQXQ/OlZhbHVlVHlwZXNbXCJEYXRlVGltZVwiXSB8IG51bGx9LFZhbHVlVHlwZXNbXCJGb2xkZXJcIl1dLFxuZGVsZXRlVkZpbGU/OiBbe1x0ZmlsZUlkOnN0cmluZ30sdHJ1ZV0sXG5jcmVhdGVEcmFmdE1haWw/OiBbe1x0aGFzaDpzdHJpbmcsXHRoYXNoS2V5OnN0cmluZyxcdGJvZHk6c3RyaW5nLFx0c3ViamVjdDpzdHJpbmcsXHRyZXBseVRvPzpzdHJpbmcgfCBudWxsLFx0c2VuZGVyRmlsZXM6VmFsdWVUeXBlc1tcIk1haWxGaWxlSW5wdXRcIl1bXSxcdHJlY2lwaWVudHM6c3RyaW5nW119LFZhbHVlVHlwZXNbXCJNYWlsXCJdXSxcbnNlbmREcmFmdE1haWw/OiBbe1x0ZHJhZnRNYWlsSWQ6c3RyaW5nLFx0dGVtcG9yYXJ5UmVjaXBpZW50czpzdHJpbmdbXSxcdHJlY2lwaWVudHM6VmFsdWVUeXBlc1tcIk1haWxSZWNpcGllbnRJbnB1dFwiXVtdLFx0Y3VzdG9tTWVzc2FnZT86c3RyaW5nIHwgbnVsbH0sdHJ1ZV0sXG5yZWFkTWFpbD86IFt7XHRtYWlsSWQ6c3RyaW5nfSx0cnVlXSxcbnVucmVhZE1haWw/OiBbe1x0bWFpbElkOnN0cmluZ30sdHJ1ZV0sXG51cGRhdGVBcHBTZXR0aW5ncz86IFt7XHRjbG91ZEZpbGVEYXlzRm9yRGVsZXRlPzpudW1iZXIgfCBudWxsLFx0Y2xvdWRGb2xkZXJEYXlzRm9yRGVsZXRlPzpudW1iZXIgfCBudWxsLFx0aGlzdG9yeUZpbGVEYXlzRm9yRGVsZXRlPzpudW1iZXIgfCBudWxsLFx0aGlzdG9yeU1heEZpbGVDb3VudD86bnVtYmVyIHwgbnVsbCxcdGF1dG9EaXNjb25uZWN0RGVsYXk/Om51bWJlciB8IG51bGx9LFZhbHVlVHlwZXNbXCJVc2VyQXBwU2V0dGluZ3NcIl1dLFxudXBsb2FkRmlsZUVuZD86IFt7XHRmaWxlSWQ6c3RyaW5nfSx0cnVlXSxcbmxvZ291dD86IFt7XHRzZXNzaW9uSWQ/OnN0cmluZyB8IG51bGx9LHRydWVdLFxuYWRkRmlsZVRvSGlzdG9yeT86IFt7XHR2RmlsZUlkOnN0cmluZyxcdGZpbGVJZDpzdHJpbmd9LFZhbHVlVHlwZXNbXCJWRmlsZVwiXV0sXG5zZW5kT25lTWFpbD86IFt7XHRtYWlsSW50ZWdyaXR5SWQ6c3RyaW5nLFx0cmVjaXBpZW50OlZhbHVlVHlwZXNbXCJNYWlsUmVjaXBpZW50SW5wdXRcIl19LHRydWVdLFxuZGVsZXRlRHJhZnRNYWlsPzogW3tcdGRyYWZ0SWQ6c3RyaW5nfSx0cnVlXSxcbnVwZGF0ZURyYWZ0TWFpbD86IFt7XHRkcmFmdElkOnN0cmluZyxcdGhhc2g/OnN0cmluZyB8IG51bGwsXHRoYXNoS2V5PzpzdHJpbmcgfCBudWxsLFx0Ym9keT86c3RyaW5nIHwgbnVsbCxcdHN1YmplY3Q/OnN0cmluZyB8IG51bGwsXHRyZXBseVRvPzpzdHJpbmcgfCBudWxsLFx0c2VuZGVyRmlsZXM/OlZhbHVlVHlwZXNbXCJNYWlsRmlsZUlucHV0XCJdW10sXHRyZWNpcGllbnRzPzpzdHJpbmdbXX0sVmFsdWVUeXBlc1tcIk1haWxcIl1dLFxuZGVsZXRlVXNlcj86IFt7XHR1c2VySWQ/OnN0cmluZyB8IG51bGx9LHRydWVdLFxucGF5PzogW3tcdHBsYW5Db2RlOnN0cmluZyxcdGlucHV0OlZhbHVlVHlwZXNbXCJQYXlJbnB1dFwiXSxcdGF1dG9SZW5ldz86Ym9vbGVhbiB8IG51bGx9LHRydWVdLFxuXHRjYW5jZWxQYXltZW50Pzp0cnVlLFxuc2VuZFJlcG9ydD86IFt7XHRyZXBvcnRlZFVzZXJJZDpzdHJpbmcsXHRjdXN0b21NZXNzYWdlPzpzdHJpbmcgfCBudWxsfSxWYWx1ZVR5cGVzW1wiUmVwb3J0XCJdXSxcbnNhdmVJbkNsb3VkPzogW3tcdGZpbGVJZDpzdHJpbmcsXHRrZXk6c3RyaW5nLFx0Zm9sZGVySWQ/OnN0cmluZyB8IG51bGwsXHRmaWxlbmFtZTpzdHJpbmcsXHRuYW1lS2V5OnN0cmluZ30sVmFsdWVUeXBlc1tcIlZGaWxlXCJdXSxcbmRlbGV0ZVZGaWxlU2hhcmluZz86IFt7XHR2RmlsZUlkOnN0cmluZyxcdHVzZXJJZDpzdHJpbmd9LHRydWVdLFxuZGVsZXRlRm9sZGVyU2hhcmluZz86IFt7XHRmb2xkZXJJZDpzdHJpbmcsXHR1c2VySWQ6c3RyaW5nfSx0cnVlXSxcbmRlbGV0ZU1haWw/OiBbe1x0bWFpbElkOnN0cmluZ30sdHJ1ZV0sXG5kZWxldGVGaWxlPzogW3tcdGZpbGVJZDpzdHJpbmcsXHR2RmlsZUlkOnN0cmluZ30sdHJ1ZV0sXG5zaGFyZUZpbGVJbkhpc3Rvcnk/OiBbe1x0aW5wdXQ6VmFsdWVUeXBlc1tcIlNoYXJlRmlsZUluSGlzdG9yeUlucHV0XCJdLFx0dkZpbGVJZDpzdHJpbmd9LHRydWVdLFxucmVjb3ZlclZGaWxlPzogW3tcdHZGaWxlSWQ6c3RyaW5nfSx0cnVlXSxcbnJlY292ZXJNYWlsPzogW3tcdG1haWxJZDpzdHJpbmd9LHRydWVdLFxucmVjb3ZlckZvbGRlcj86IFt7XHRpZDpzdHJpbmd9LHRydWVdLFxuZHVwbGljYXRlVkZpbGU/OiBbe1x0dkZpbGVJZDpzdHJpbmcsXHRmb2xkZXJJZD86c3RyaW5nIHwgbnVsbCxcdGN1c3RvbU5hbWU/OnN0cmluZyB8IG51bGx9LHRydWVdLFxuZGVsZXRlRm9sZGVyQ2xvdWRUcmFzaD86IFt7XHRpZHM6c3RyaW5nW119LHRydWVdLFxuZGVsZXRlVkZpbGVDbG91ZFRyYXNoPzogW3tcdGlkczpzdHJpbmdbXX0sdHJ1ZV0sXG5kZWxldGVNYWlsVHJhc2g/OiBbe1x0aWRzOnN0cmluZ1tdfSx0cnVlXSxcblx0ZW1wdHlDbG91ZFRyYXNoPzp0cnVlLFxuXHRlbXB0eU1haWxUcmFzaD86dHJ1ZSxcbnVwbG9hZEZpbGVQYXJ0RW5kPzogW3tcdGZpbGVJZDpzdHJpbmcsXHRtZDU6c3RyaW5nLFx0b3JkZXI6bnVtYmVyfSx0cnVlXSxcbnVwZGF0ZUFwcE5vdGlmaWNhdGlvbnM/OiBbe1x0ZW5hYmxlQWxsPzpib29sZWFuIHwgbnVsbCxcdG1haWw/OmJvb2xlYW4gfCBudWxsLFx0Y2xvdWQ/OmJvb2xlYW4gfCBudWxsLFx0ZGlzYWJsZUFsbFVudGlsPzpWYWx1ZVR5cGVzW1wiRGF0ZVRpbWVcIl0gfCBudWxsfSxWYWx1ZVR5cGVzW1wiVXNlckFwcE5vdGlmaWNhdGlvbnNcIl1dLFxuY2hhbmdlVXNlclBsYW4/OiBbe1x0dXNlcklkOnN0cmluZyxcdHBsYW46VmFsdWVUeXBlc1tcIlBsYW5LaW5kXCJdfSxWYWx1ZVR5cGVzW1wiVXNlclwiXV0sXG5cdFx0X190eXBlbmFtZT86IHRydWVcbn0+O1xuXHRbXCJTdWJzY3JpcHRpb25cIl06IEFsaWFzVHlwZTx7XG5cdHRlc3Q/OnRydWUsXG5cdFx0X190eXBlbmFtZT86IHRydWVcbn0+XG4gIH1cblxuZXhwb3J0IHR5cGUgTW9kZWxUeXBlcyA9IHtcbiAgICAvKiogVGhlIGBCaWdJbnRgIHNjYWxhciB0eXBlIHJlcHJlc2VudHMgbm9uLWZyYWN0aW9uYWwgc2lnbmVkIHdob2xlIG51bWVyaWMgdmFsdWVzLlxuQHNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9CaWdJbnQgKi9cbltcIkJpZ0ludFwiXTphbnk7XG5cdC8qKiBUaGUgYEJ5dGVgIHNjYWxhciB0eXBlIHJlcHJlc2VudHMgYnl0ZSB2YWx1ZSBhcyBhIEJ1ZmZlciAqL1xuW1wiQnl0ZXNcIl06YW55O1xuXHQvKiogQSBkYXRlLXRpbWUgc3RyaW5nIGF0IFVUQywgc3VjaCBhcyAyMDA3LTEyLTAzVDEwOjE1OjMwWiwgY29tcGxpYW50IHdpdGggdGhlIGBkYXRlLXRpbWVgIGZvcm1hdCBvdXRsaW5lZCBpbiBzZWN0aW9uIDUuNiBvZiB0aGUgUkZDIDMzMzkgcHJvZmlsZSBvZiB0aGUgSVNPIDg2MDEgc3RhbmRhcmQgZm9yIHJlcHJlc2VudGF0aW9uIG9mIGRhdGVzIGFuZCB0aW1lcyB1c2luZyB0aGUgR3JlZ29yaWFuIGNhbGVuZGFyLiAqL1xuW1wiRGF0ZVRpbWVcIl06YW55O1xuXHQvKiogQW4gYXJiaXRyYXJ5LXByZWNpc2lvbiBEZWNpbWFsIHR5cGUgKi9cbltcIkRlY2ltYWxcIl06YW55O1xuXHQvKiogVGhlIGBKU09OT2JqZWN0YCBzY2FsYXIgdHlwZSByZXByZXNlbnRzIEpTT04gb2JqZWN0cyBhcyBzcGVjaWZpZWQgYnkgW0VDTUEtNDA0XShodHRwOi8vd3d3LmVjbWEtaW50ZXJuYXRpb25hbC5vcmcvcHVibGljYXRpb25zL2ZpbGVzL0VDTUEtU1QvRUNNQS00MDQucGRmKS4gKi9cbltcIkpzb25cIl06YW55O1xuXHRbXCJMYW5nXCJdOiBHcmFwaFFMVHlwZXNbXCJMYW5nXCJdO1xuXHRbXCJQbGFuS2luZFwiXTogR3JhcGhRTFR5cGVzW1wiUGxhbktpbmRcIl07XG5cdFtcIlVzZXJSb2xlXCJdOiBHcmFwaFFMVHlwZXNbXCJVc2VyUm9sZVwiXTtcblx0W1wiTWFpbFR5cGVcIl06IEdyYXBoUUxUeXBlc1tcIk1haWxUeXBlXCJdO1xuXHRbXCJSaWdodHNcIl06IEdyYXBoUUxUeXBlc1tcIlJpZ2h0c1wiXTtcblx0W1wiRmlsZVwiXToge1xuXHRcdGlkOnN0cmluZyxcblx0c2l6ZTpNb2RlbFR5cGVzW1wiQmlnSW50XCJdLFxuXHRzaXplQmVmb3JlOk1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdGNyZWF0ZWRBdDpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdHZGaWxlczpNb2RlbFR5cGVzW1wiVkZpbGVcIl1bXSxcblx0dkZpbGVzQ3VycmVudDpNb2RlbFR5cGVzW1wiVkZpbGVcIl1bXSxcblx0dXNlcnM6TW9kZWxUeXBlc1tcIkZpbGVzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdW10sXG5cdG1kNTpzdHJpbmcsXG5cdG1kNUVuY3J5cHRlZDpzdHJpbmcsXG5cdGRlbGV0ZWRBdD86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHR1c2VyQXBwOk1vZGVsVHlwZXNbXCJBcHBsaWNhdGlvbnNPblVzZXJzXCJdLFxuXHRtYWlsczpNb2RlbFR5cGVzW1wiRmlsZXNPbk1haWxzXCJdW10sXG5cdHZhbGlkYXRlZEF0PzpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdHVzZXI/Ok1vZGVsVHlwZXNbXCJGaWxlc09uVXNlcnNPbkFwcGxpY2F0aW9uc1wiXVxufTtcblx0W1wiRmlsZVBhcnRcIl06IHtcblx0XHRpZDpzdHJpbmcsXG5cdGZpbGU6TW9kZWxUeXBlc1tcIkZpbGVcIl0sXG5cdGZpbGVJZDpzdHJpbmcsXG5cdHNpemU6TW9kZWxUeXBlc1tcIkJpZ0ludFwiXSxcblx0b3JkZXI6bnVtYmVyLFxuXHRtZDU6c3RyaW5nLFxuXHR2YWxpZGF0ZWRBdD86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdXG59O1xuXHRbXCJGaWxlQ29udGVudFR5cGVcIl06IEdyYXBoUUxUeXBlc1tcIkZpbGVDb250ZW50VHlwZVwiXTtcblx0W1wiRmlsZUNvbnRlbnRQYXJ0XCJdOiB7XG5cdFx0Y29udGVudFVybDpzdHJpbmcsXG5cdG9yZGVyOm51bWJlcixcblx0bWQ1OnN0cmluZ1xufTtcblx0W1wiRmlsZUNvbnRlbnRCYXNlXCJdOiBNb2RlbFR5cGVzW1wiRmlsZUNvbnRlbnRDbG91ZFwiXSB8IE1vZGVsVHlwZXNbXCJGaWxlQ29udGVudFNlbnRNYWlsXCJdIHwgTW9kZWxUeXBlc1tcIkZpbGVDb250ZW50UmVjZWl2ZWRNYWlsXCJdO1xuXHRbXCJGaWxlQ29udGVudENsb3VkXCJdOiB7XG5cdFx0cGFydHM6TW9kZWxUeXBlc1tcIkZpbGVDb250ZW50UGFydFwiXVtdLFxuXHRrZXk6c3RyaW5nLFxuXHRtZDU6c3RyaW5nLFxuXHRtZDVFbmNyeXB0ZWQ6c3RyaW5nLFxuXHR0b3RhbFNpemU6TW9kZWxUeXBlc1tcIkJpZ0ludFwiXSxcblx0dHlwZTpNb2RlbFR5cGVzW1wiRmlsZUNvbnRlbnRUeXBlXCJdLFxuXHRwdWJsaWNLZXk6c3RyaW5nXG59O1xuXHRbXCJGaWxlQ29udGVudFNlbnRNYWlsXCJdOiB7XG5cdFx0cGFydHM6TW9kZWxUeXBlc1tcIkZpbGVDb250ZW50UGFydFwiXVtdLFxuXHRrZXk6c3RyaW5nLFxuXHRtZDU6c3RyaW5nLFxuXHRtZDVFbmNyeXB0ZWQ6c3RyaW5nLFxuXHR0b3RhbFNpemU6TW9kZWxUeXBlc1tcIkJpZ0ludFwiXSxcblx0dHlwZTpNb2RlbFR5cGVzW1wiRmlsZUNvbnRlbnRUeXBlXCJdXG59O1xuXHRbXCJGaWxlQ29udGVudFJlY2VpdmVkTWFpbFwiXToge1xuXHRcdHBhcnRzOk1vZGVsVHlwZXNbXCJGaWxlQ29udGVudFBhcnRcIl1bXSxcblx0a2V5OnN0cmluZyxcblx0bWQ1OnN0cmluZyxcblx0bWQ1RW5jcnlwdGVkOnN0cmluZyxcblx0dG90YWxTaXplOk1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdHR5cGU6TW9kZWxUeXBlc1tcIkZpbGVDb250ZW50VHlwZVwiXSxcblx0c2VuZGVyUHVibGljS2V5OnN0cmluZ1xufTtcblx0W1wiRmlsZUNvbnRlbnRcIl06TW9kZWxUeXBlc1tcIkZpbGVDb250ZW50Q2xvdWRcIl0gfCBNb2RlbFR5cGVzW1wiRmlsZUNvbnRlbnRSZWNlaXZlZE1haWxcIl0gfCBNb2RlbFR5cGVzW1wiRmlsZUNvbnRlbnRTZW50TWFpbFwiXTtcblx0W1wiRmlsZVJlc3BvbnNlXCJdOiB7XG5cdFx0ZmlsZUlkOnN0cmluZyxcblx0cGFydHM6TW9kZWxUeXBlc1tcIkZpbGVQYXJ0UmVzcG9uc2VcIl1bXSxcblx0ZmlsZVBhcnRTaXplOk1vZGVsVHlwZXNbXCJCaWdJbnRcIl1cbn07XG5cdFtcIkZpbGVQYXJ0UmVzcG9uc2VcIl06IHtcblx0XHRmaWVsZHM6TW9kZWxUeXBlc1tcIkpzb25cIl0sXG5cdHVybDpzdHJpbmcsXG5cdG9yZGVyOm51bWJlclxufTtcblx0W1wiRmlsZVNoYXJlZFwiXToge1xuXHRcdHVzZXJJZDpzdHJpbmcsXG5cdG1lc3NhZ2U/OnN0cmluZyxcblx0YXBwSWQ6c3RyaW5nLFxuXHRpZDpzdHJpbmcsXG5cdGZpbGVuYW1lOnN0cmluZyxcblx0c2l6ZTpudW1iZXIsXG5cdHNpemVCZWZvcmU6bnVtYmVyXG59O1xuXHRbXCJGaWxlU2hhcmVkQ29udGVudFwiXToge1xuXHRcdG93bmVySWQ/OnN0cmluZyxcblx0cHViS2V5PzpzdHJpbmcsXG5cdG1lc3NhZ2U/OnN0cmluZyxcblx0YXBwSWQ6c3RyaW5nLFxuXHRpZDpzdHJpbmcsXG5cdHR5cGU6c3RyaW5nLFxuXHRmaWxlbmFtZTpzdHJpbmcsXG5cdGNvbnRlbnRVcmw6c3RyaW5nLFxuXHRrZXk6c3RyaW5nLFxuXHRzaXplOm51bWJlcixcblx0c2l6ZUJlZm9yZTpudW1iZXJcbn07XG5cdFtcIkNsb3VkTGltaXRzXCJdOiB7XG5cdFx0c2l6ZTpNb2RlbFR5cGVzW1wiQmlnSW50XCJdLFxuXHRtYXhTaXplPzpNb2RlbFR5cGVzW1wiQmlnSW50XCJdLFxuXHRjb3VudDpNb2RlbFR5cGVzW1wiQmlnSW50XCJdLFxuXHRtYXhDb3VudD86TW9kZWxUeXBlc1tcIkJpZ0ludFwiXVxufTtcblx0W1wiTWFpbExpbWl0c1ZhbHVlc1wiXToge1xuXHRcdGNvdW50Ok1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdG1heENvdW50PzpNb2RlbFR5cGVzW1wiQmlnSW50XCJdLFxuXHRmaWxlQ291bnQ6TW9kZWxUeXBlc1tcIkJpZ0ludFwiXSxcblx0bWF4RmlsZUNvdW50PzpNb2RlbFR5cGVzW1wiQmlnSW50XCJdLFxuXHRmaWxlU2l6ZTpNb2RlbFR5cGVzW1wiQmlnSW50XCJdLFxuXHRtYXhGaWxlU2l6ZT86TW9kZWxUeXBlc1tcIkJpZ0ludFwiXVxufTtcblx0W1wiVXNlck1haWxMaW1pdHNcIl06IHtcblx0XHRzZW50Ok1vZGVsVHlwZXNbXCJNYWlsTGltaXRzVmFsdWVzXCJdLFxuXHRyZWNlaXZlZDpNb2RlbFR5cGVzW1wiTWFpbExpbWl0c1ZhbHVlc1wiXVxufTtcblx0W1wiUXVlcnlMaW1pdHNcIl06IHtcblx0XHRjbG91ZDpNb2RlbFR5cGVzW1wiQ2xvdWRMaW1pdHNcIl0sXG5cdG1haWw6TW9kZWxUeXBlc1tcIlVzZXJNYWlsTGltaXRzXCJdXG59O1xuXHRbXCJMaW1pdHNcIl06IHtcblx0XHRkb3dubG9hZEJhbmR3aWR0aD86TW9kZWxUeXBlc1tcIkJpZ0ludFwiXSxcblx0ZG93bmxvYWRDb3VudD86TW9kZWxUeXBlc1tcIkJpZ0ludFwiXSxcblx0aGFyZEZpbGVDb3VudD86TW9kZWxUeXBlc1tcIkJpZ0ludFwiXSxcblx0aGFyZEZpbGVTaXplPzpNb2RlbFR5cGVzW1wiQmlnSW50XCJdLFxuXHRwZXJGaWxlU2l6ZT86TW9kZWxUeXBlc1tcIkJpZ0ludFwiXSxcblx0cmVjZWl2ZWRNYWlsczpNb2RlbFR5cGVzW1wiTWFpbExpbWl0c1wiXSxcblx0c2VudE1haWxzOk1vZGVsVHlwZXNbXCJNYWlsTGltaXRzXCJdLFxuXHR1cGxvYWRCYW5kd2lkdGg/Ok1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdHVwbG9hZENvdW50PzpNb2RlbFR5cGVzW1wiQmlnSW50XCJdXG59O1xuXHRbXCJNYWlsTGltaXRzXCJdOiB7XG5cdFx0Y291bnQ/Ok1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdGZpbGVDb3VudD86TW9kZWxUeXBlc1tcIkJpZ0ludFwiXSxcblx0ZmlsZVNpemU/Ok1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdGhhcmRDb3VudD86TW9kZWxUeXBlc1tcIkJpZ0ludFwiXSxcblx0aGFyZEZpbGVDb3VudD86TW9kZWxUeXBlc1tcIkJpZ0ludFwiXSxcblx0aGFyZEZpbGVTaXplPzpNb2RlbFR5cGVzW1wiQmlnSW50XCJdLFxuXHRwZXJGaWxlU2l6ZT86TW9kZWxUeXBlc1tcIkJpZ0ludFwiXVxufTtcblx0W1wiVXNlclwiXToge1xuXHRcdGlkOnN0cmluZyxcblx0ZGVsZXRlZEF0PzpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGxhbmc6TW9kZWxUeXBlc1tcIkxhbmdcIl0sXG5cdHJlcG9ydFNlbnQ6TW9kZWxUeXBlc1tcIlJlcG9ydFwiXVtdLFxuXHRnb2RGYXRoZXI/Ok1vZGVsVHlwZXNbXCJVc2VyXCJdLFxuXHRnb2RDaGlsZHJlbjpNb2RlbFR5cGVzW1wiVXNlclwiXVtdLFxuXHRmaXJzdG5hbWU6c3RyaW5nLFxuXHRsYXN0bmFtZTpzdHJpbmcsXG5cdGVtYWlsOnN0cmluZyxcblx0cGhvbmU6c3RyaW5nLFxuXHRsYXN0TG9naW46TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRyb2xlOk1vZGVsVHlwZXNbXCJVc2VyUm9sZVwiXSxcblx0c2Vzc2lvbnM6TW9kZWxUeXBlc1tcIlVzZXJTZXNzaW9uXCJdW10sXG5cdGNyZWF0ZWRBdDpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdHJlY2VpdmVkTWFpbHM6TW9kZWxUeXBlc1tcIk1haWxcIl1bXSxcblx0d2FpdGluZ1JlY2VpdmVkTWFpbHM6TW9kZWxUeXBlc1tcIldhaXRpbmdSZWNlaXZlZE1haWxcIl1bXSxcblx0c2VudE1haWxzOk1vZGVsVHlwZXNbXCJNYWlsXCJdW10sXG5cdGRyYWZ0TWFpbHM6TW9kZWxUeXBlc1tcIk1haWxcIl1bXSxcblx0YXBwU2V0dGluZ3M/Ok1vZGVsVHlwZXNbXCJVc2VyQXBwU2V0dGluZ3NcIl0sXG5cdGFwcGxpY2F0aW9uczpNb2RlbFR5cGVzW1wiQXBwbGljYXRpb25zT25Vc2Vyc1wiXVtdLFxuXHRwdWJsaWNLZXk6c3RyaW5nXG59O1xuXHRbXCJNYWlsXCJdOiB7XG5cdFx0aWQ6c3RyaW5nLFxuXHRhcHA6TW9kZWxUeXBlc1tcIkFwcGxpY2F0aW9uXCJdLFxuXHRib2R5OnN0cmluZyxcblx0Y3JlYXRlZEF0Ok1vZGVsVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0ZGVsZXRlZEF0PzpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGZpbGVzOk1vZGVsVHlwZXNbXCJGaWxlc09uTWFpbHNcIl1bXSxcblx0bWFpbEludGVncml0eT86TW9kZWxUeXBlc1tcIk1haWxJbnRlZ3JpdHlcIl0sXG5cdG1haWxJbnRlZ3JpdHlEcmFmdD86TW9kZWxUeXBlc1tcIk1haWxJbnRlZ3JpdHlEcmFmdFwiXSxcblx0b3BlbmVkQXQ/Ok1vZGVsVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0cmVjaXBpZW50Ok1vZGVsVHlwZXNbXCJVc2VyXCJdLFxuXHRzZW5kZXI6TW9kZWxUeXBlc1tcIlVzZXJcIl0sXG5cdHN1YmplY3Q6c3RyaW5nLFxuXHR0eXBlOk1vZGVsVHlwZXNbXCJNYWlsVHlwZVwiXSxcblx0cmVjaXBpZW50czpNb2RlbFR5cGVzW1wiVXNlclwiXVtdXG59O1xuXHRbXCJNYWlsSW50ZWdyaXR5XCJdOiB7XG5cdFx0aWQ6c3RyaW5nLFxuXHRoYXNoOnN0cmluZyxcblx0aGFzaEtleTpzdHJpbmcsXG5cdGFuc3dlcnM6TW9kZWxUeXBlc1tcIk1haWxJbnRlZ3JpdHlcIl1bXSxcblx0YXBwOk1vZGVsVHlwZXNbXCJBcHBsaWNhdGlvblwiXSxcblx0bWFpbHM6TW9kZWxUeXBlc1tcIk1haWxcIl1bXSxcblx0cmVjaXBpZW50czpNb2RlbFR5cGVzW1wiVXNlclwiXVtdLFxuXHR0ZW1wb3JhcnlSZWNpcGllbnRzOk1vZGVsVHlwZXNbXCJUZW1wb3JhcnlVc2VyXCJdW10sXG5cdHJlcGx5VG8/Ok1vZGVsVHlwZXNbXCJNYWlsSW50ZWdyaXR5XCJdXG59O1xuXHRbXCJGaWxlc09uTWFpbHNcIl06IHtcblx0XHRmaWxlOk1vZGVsVHlwZXNbXCJGaWxlXCJdLFxuXHRmaWxlS2V5OnN0cmluZyxcblx0ZmlsZW5hbWU6c3RyaW5nLFxuXHRtYWlsOk1vZGVsVHlwZXNbXCJNYWlsXCJdXG59O1xuXHRbXCJGaWxlc09uVXNlcnNPbkFwcGxpY2F0aW9uc1wiXToge1xuXHRcdGZpbGU6TW9kZWxUeXBlc1tcIkZpbGVcIl0sXG5cdHVzZXJBcHA6TW9kZWxUeXBlc1tcIkFwcGxpY2F0aW9uc09uVXNlcnNcIl0sXG5cdC8qKiBFbmNyeXB0ZWQgd2l0aCBVc2VyQXBwIGtleXMgKi9cblx0a2V5OnN0cmluZ1xufTtcblx0W1wiVkZpbGVcIl06IHtcblx0XHRpZDpzdHJpbmcsXG5cdGlzRmF2b3JpdGU6Ym9vbGVhbixcblx0Y3JlYXRlZEF0Ok1vZGVsVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0ZGVsZXRlZEF0PzpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGZpbGVuYW1lOnN0cmluZyxcblx0dXNlckFwcHM6TW9kZWxUeXBlc1tcIlZGaWxlc09uVXNlcnNPbkFwcGxpY2F0aW9uc1wiXVtdLFxuXHRjcmVhdGVkQnk6TW9kZWxUeXBlc1tcIkFwcGxpY2F0aW9uc09uVXNlcnNcIl0sXG5cdHVzZXJBcHA/Ok1vZGVsVHlwZXNbXCJWRmlsZXNPblVzZXJzT25BcHBsaWNhdGlvbnNcIl0sXG5cdGZvbGRlcjpNb2RlbFR5cGVzW1wiRm9sZGVyXCJdLFxuXHRoaXN0b3J5Ok1vZGVsVHlwZXNbXCJGaWxlXCJdW10sXG5cdGN1cnJlbnQ/Ok1vZGVsVHlwZXNbXCJGaWxlXCJdLFxuXHR1cGRhdGVkQXQ6TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdXG59O1xuXHRbXCJGb2xkZXJCcmVhZGNydW1iSXRlbVwiXToge1xuXHRcdGlkOnN0cmluZyxcblx0bmFtZTpzdHJpbmcsXG5cdHB1YktleTpzdHJpbmcsXG5cdG5hbWVLZXk/OnN0cmluZ1xufTtcblx0W1wiRm9sZGVyXCJdOiB7XG5cdFx0aWQ6c3RyaW5nLFxuXHRpc0Zhdm9yaXRlOmJvb2xlYW4sXG5cdGNyZWF0ZWRBdDpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGRlbGV0ZWRBdD86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHR1cGRhdGVkQXQ6TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRjcmVhdGVkQnk6TW9kZWxUeXBlc1tcIkFwcGxpY2F0aW9uc09uVXNlcnNcIl0sXG5cdHVzZXJBcHBzOk1vZGVsVHlwZXNbXCJGb2xkZXJzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdW10sXG5cdHVzZXJBcHA/Ok1vZGVsVHlwZXNbXCJGb2xkZXJzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdLFxuXHRuYW1lOnN0cmluZyxcblx0cGFyZW50Rm9sZGVyPzpNb2RlbFR5cGVzW1wiRm9sZGVyXCJdLFxuXHRzdWJmb2xkZXJzOk1vZGVsVHlwZXNbXCJGb2xkZXJcIl1bXSxcblx0dkZpbGVzOk1vZGVsVHlwZXNbXCJWRmlsZVwiXVtdLFxuXHRicmVhZGNydW1iOk1vZGVsVHlwZXNbXCJGb2xkZXJCcmVhZGNydW1iSXRlbVwiXVtdXG59O1xuXHRbXCJBcHBsaWNhdGlvblwiXToge1xuXHRcdGlkOnN0cmluZyxcblx0bmFtZTpzdHJpbmdcbn07XG5cdFtcIkFwcGxpY2F0aW9uc09uVXNlcnNcIl06IHtcblx0XHRmYWtlVXNlcklkOnN0cmluZyxcblx0a2V5UGFpcj86TW9kZWxUeXBlc1tcIkFwcEtleVBhaXJcIl0sXG5cdHNlc3Npb25zOk1vZGVsVHlwZXNbXCJBcHBTZXNzaW9uXCJdW10sXG5cdGFwcDpNb2RlbFR5cGVzW1wiQXBwbGljYXRpb25cIl0sXG5cdHVzZXI6TW9kZWxUeXBlc1tcIlVzZXJcIl0sXG5cdGZvbGRlcnM6TW9kZWxUeXBlc1tcIkZvbGRlcnNPblVzZXJzT25BcHBsaWNhdGlvbnNcIl1bXSxcblx0c2V0dGluZ3M6TW9kZWxUeXBlc1tcIlVzZXJBcHBTZXR0aW5nc1wiXVxufTtcblx0W1wiQXBwS2V5UGFpclwiXToge1xuXHRcdHB1YjpzdHJpbmdcbn07XG5cdFtcIkZvbGRlclNpemVcIl06IHtcblx0XHRzaXplOk1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdHNpemVCZWZvcmU6TW9kZWxUeXBlc1tcIkJpZ0ludFwiXVxufTtcblx0W1wiVXNlclNlc3Npb25cIl06IHtcblx0XHRpZDpzdHJpbmcsXG5cdGFwcFNlc3Npb25zOk1vZGVsVHlwZXNbXCJBcHBTZXNzaW9uXCJdW10sXG5cdGxhc3RBY3Rpdml0eT86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHR1c2VyQWdlbnQ/OnN0cmluZyxcblx0aXA/OnN0cmluZyxcblx0Y2l0eT86c3RyaW5nLFxuXHRjb3VudHJ5PzpzdHJpbmcsXG5cdGNyZWF0ZWRBdDpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl1cbn07XG5cdFtcIkFwcFNlc3Npb25cIl06IHtcblx0XHRpZDpzdHJpbmcsXG5cdGxhc3RBY3Rpdml0eT86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHR1c2VyQWdlbnQ/OnN0cmluZyxcblx0aXA/OnN0cmluZyxcblx0Y2l0eT86c3RyaW5nLFxuXHRjb3VudHJ5PzpzdHJpbmcsXG5cdHVzZXJTZXNzaW9uOk1vZGVsVHlwZXNbXCJVc2VyU2Vzc2lvblwiXSxcblx0dXNlckFwcD86TW9kZWxUeXBlc1tcIkFwcGxpY2F0aW9uc09uVXNlcnNcIl0sXG5cdGNyZWF0ZWRBdDpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl1cbn07XG5cdFtcIlVzZXJBcHBTZXR0aW5nc1wiXToge1xuXHRcdGlkOnN0cmluZyxcblx0Y2xvdWRGaWxlRGF5c0ZvckRlbGV0ZTpudW1iZXIsXG5cdGNsb3VkRm9sZGVyRGF5c0ZvckRlbGV0ZTpudW1iZXIsXG5cdGhpc3RvcnlGaWxlRGF5c0ZvckRlbGV0ZT86bnVtYmVyLFxuXHRoaXN0b3J5TWF4RmlsZUNvdW50Om51bWJlcixcblx0YXV0b0Rpc2Nvbm5lY3REZWxheT86bnVtYmVyXG59O1xuXHRbXCJNYWlsRmlsZUlucHV0XCJdOiBHcmFwaFFMVHlwZXNbXCJNYWlsRmlsZUlucHV0XCJdO1xuXHRbXCJNYWlsUmVjaXBpZW50SW5wdXRcIl06IEdyYXBoUUxUeXBlc1tcIk1haWxSZWNpcGllbnRJbnB1dFwiXTtcblx0W1wiU2hhcmVGaWxlS2V5SW5wdXRcIl06IEdyYXBoUUxUeXBlc1tcIlNoYXJlRmlsZUtleUlucHV0XCJdO1xuXHRbXCJOYW1lS2V5SW5wdXRcIl06IEdyYXBoUUxUeXBlc1tcIk5hbWVLZXlJbnB1dFwiXTtcblx0W1wiTmFtZUtleUlucHV0Rm9sZGVyc1wiXTogR3JhcGhRTFR5cGVzW1wiTmFtZUtleUlucHV0Rm9sZGVyc1wiXTtcblx0W1wiU2hhcmVGb2xkZXJzSW5wdXRcIl06IEdyYXBoUUxUeXBlc1tcIlNoYXJlRm9sZGVyc0lucHV0XCJdO1xuXHRbXCJTaGFyZUZpbGVJbkhpc3RvcnlJbnB1dFwiXTogR3JhcGhRTFR5cGVzW1wiU2hhcmVGaWxlSW5IaXN0b3J5SW5wdXRcIl07XG5cdFtcIlBheUlucHV0VHlwZVwiXTogR3JhcGhRTFR5cGVzW1wiUGF5SW5wdXRUeXBlXCJdO1xuXHRbXCJQYXlJbnB1dFwiXTogR3JhcGhRTFR5cGVzW1wiUGF5SW5wdXRcIl07XG5cdFtcIldhaXRpbmdSZWNlaXZlZE1haWxcIl06IHtcblx0XHRzZW5kZXI6TW9kZWxUeXBlc1tcIlVzZXJcIl0sXG5cdGRhdGU6TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRyZWNpcGllbnRzOk1vZGVsVHlwZXNbXCJVc2VyXCJdW10sXG5cdHRlbXBvcmFyeVJlY2lwaWVudHM6TW9kZWxUeXBlc1tcIlRlbXBvcmFyeVVzZXJcIl1bXSxcblx0YXR0YWNobWVudHNDb3VudDpudW1iZXJcbn07XG5cdFtcIlRlbXBvcmFyeVVzZXJcIl06IHtcblx0XHRpZDpzdHJpbmcsXG5cdG1haWxzOk1vZGVsVHlwZXNbXCJNYWlsSW50ZWdyaXR5XCJdW10sXG5cdGRyYWZ0TWFpbHM6TW9kZWxUeXBlc1tcIk1haWxJbnRlZ3JpdHlEcmFmdFwiXVtdLFxuXHRlbWFpbD86c3RyaW5nXG59O1xuXHRbXCJNYWlsSW50ZWdyaXR5RHJhZnRcIl06IHtcblx0XHRpZDpzdHJpbmcsXG5cdGhhc2g6c3RyaW5nLFxuXHRoYXNoS2V5OnN0cmluZyxcblx0YXBwOk1vZGVsVHlwZXNbXCJBcHBsaWNhdGlvblwiXSxcblx0bWFpbDpNb2RlbFR5cGVzW1wiTWFpbFwiXSxcblx0cmVjaXBpZW50czpNb2RlbFR5cGVzW1wiVXNlclwiXVtdLFxuXHR0ZW1wb3JhcnlSZWNpcGllbnRzOk1vZGVsVHlwZXNbXCJUZW1wb3JhcnlVc2VyXCJdW10sXG5cdHJlcGx5VG8/Ok1vZGVsVHlwZXNbXCJNYWlsSW50ZWdyaXR5XCJdXG59O1xuXHRbXCJGYXFcIl06IHtcblx0XHRpZDpzdHJpbmcsXG5cdG9yZGVyOm51bWJlcixcblx0ZW50cmllczpNb2RlbFR5cGVzW1wiRmFxRW50cnlcIl1bXVxufTtcblx0W1wiRmFxRW50cnlcIl06IHtcblx0XHRpZDpzdHJpbmcsXG5cdGxhbmc6TW9kZWxUeXBlc1tcIkxhbmdcIl0sXG5cdHF1ZXN0aW9uOnN0cmluZyxcblx0YW5zd2VyOnN0cmluZyxcblx0ZmFxOk1vZGVsVHlwZXNbXCJGYXFcIl1cbn07XG5cdFtcIlBsYW5cIl06IHtcblx0XHRpZDpzdHJpbmcsXG5cdGtpbmQ6TW9kZWxUeXBlc1tcIlBsYW5LaW5kXCJdLFxuXHRjb2RlczpzdHJpbmdbXSxcblx0bGltaXRzOk1vZGVsVHlwZXNbXCJMaW1pdHNcIl1cbn07XG5cdFtcIlJlcG9ydFwiXToge1xuXHRcdGlkOnN0cmluZyxcblx0dXNlcjpNb2RlbFR5cGVzW1wiVXNlclwiXSxcblx0cmVwb3J0ZWRVc2VyOk1vZGVsVHlwZXNbXCJVc2VyXCJdLFxuXHRjdXN0b21NZXNzYWdlPzpzdHJpbmdcbn07XG5cdFtcIkZvbGRlcnNPblVzZXJzT25BcHBsaWNhdGlvbnNcIl06IHtcblx0XHRmb2xkZXI6TW9kZWxUeXBlc1tcIkZvbGRlclwiXSxcblx0dXNlckFwcDpNb2RlbFR5cGVzW1wiQXBwbGljYXRpb25zT25Vc2Vyc1wiXSxcblx0cmlnaHRzOk1vZGVsVHlwZXNbXCJSaWdodHNcIl0sXG5cdG5hbWVLZXk/OnN0cmluZyxcblx0aXNSb290OmJvb2xlYW5cbn07XG5cdFtcIlZGaWxlc09uVXNlcnNPbkFwcGxpY2F0aW9uc1wiXToge1xuXHRcdHZGaWxlOk1vZGVsVHlwZXNbXCJWRmlsZVwiXSxcblx0dXNlckFwcDpNb2RlbFR5cGVzW1wiQXBwbGljYXRpb25zT25Vc2Vyc1wiXSxcblx0cmlnaHRzOk1vZGVsVHlwZXNbXCJSaWdodHNcIl0sXG5cdG5hbWVLZXk6c3RyaW5nLFxuXHRpc1Jvb3Q6Ym9vbGVhblxufTtcblx0W1wiRmFxSXRlbVwiXToge1xuXHRcdG9yZGVyOm51bWJlcixcblx0cXVlc3Rpb246c3RyaW5nLFxuXHRhbnN3ZXI6c3RyaW5nXG59O1xuXHRbXCJCbG9nXCJdOiB7XG5cdFx0aWQ6c3RyaW5nLFxuXHRvcmRlcjpudW1iZXIsXG5cdGVudHJpZXM6TW9kZWxUeXBlc1tcIkJsb2dFbnRyeVwiXVtdXG59O1xuXHRbXCJCbG9nRW50cnlcIl06IHtcblx0XHRpZDpzdHJpbmcsXG5cdGxhbmc6TW9kZWxUeXBlc1tcIkxhbmdcIl0sXG5cdGF1dGhvcjpzdHJpbmcsXG5cdGJvZHk6c3RyaW5nLFxuXHRkYXRlOk1vZGVsVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0aW1hZ2U6c3RyaW5nLFxuXHRzdW1tYXJ5OnN0cmluZyxcblx0dGl0bGU6c3RyaW5nXG59O1xuXHRbXCJCbG9nSXRlbVwiXToge1xuXHRcdGlkOnN0cmluZyxcblx0YmxvZ0lkOnN0cmluZyxcblx0b3JkZXI6bnVtYmVyLFxuXHR0aXRsZTpzdHJpbmcsXG5cdGJvZHk6c3RyaW5nLFxuXHRhdXRob3I6c3RyaW5nLFxuXHRpbWFnZTpzdHJpbmcsXG5cdGltYWdlQWx0OnN0cmluZyxcblx0c3VtbWFyeTpzdHJpbmcsXG5cdGRhdGU6TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdXG59O1xuXHRbXCJVc2VyQXBwTm90aWZpY2F0aW9uc1wiXToge1xuXHRcdGlkOnN0cmluZyxcblx0ZW5hYmxlQWxsOmJvb2xlYW4sXG5cdG1haWw6Ym9vbGVhbixcblx0Y2xvdWQ6Ym9vbGVhbixcblx0ZGlzYWJsZUFsbFVudGlsPzpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl1cbn07XG5cdFtcIlJlY3VybHlJbnZvaWNlc1wiXToge1xuXHRcdHBkZjpzdHJpbmcsXG5cdGRhdGU6TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRkdWU6TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRzdGF0dXM6c3RyaW5nLFxuXHR0b3RhbDpudW1iZXIsXG5cdG5hbWU6c3RyaW5nLFxuXHRjdXJyZW5jeTpzdHJpbmdcbn07XG5cdFtcIlJlY3VybHlTdWJzY3JpcHRpb25cIl06IHtcblx0XHRhdXRvcmVuZXc6Ym9vbGVhbixcblx0YWN0aXZhdGVkQXQ/Ok1vZGVsVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0Y3VycmVudFBlcmlvZEVuZHNBdD86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRjdXJyZW50UGVyaW9kU3RhcnRlZEF0PzpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGNhbmNlbGVkQXQ/Ok1vZGVsVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0Y3JlYXRlZEF0PzpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGV4cGlyZXNBdD86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRwYXVzZWRBdD86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHR0cmlhbEVuZHNBdD86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHR0cmlhbFN0YXJ0ZWRBdD86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHR1cGRhdGVkQXQ/Ok1vZGVsVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0c3RhdGU6c3RyaW5nLFxuXHRjb2xsZWN0aW9uTWV0aG9kOnN0cmluZyxcblx0cGxhbj86c3RyaW5nLFxuXHRwbGFuQ29kZT86c3RyaW5nLFxuXHR0b3RhbD86bnVtYmVyXG59O1xuXHRbXCJQYXltZW50SW5mb3NcIl06IHtcblx0XHRob3N0ZWRVcmw6c3RyaW5nLFxuXHRjdXJyZW50U3Vic2NyaXB0aW9uOk1vZGVsVHlwZXNbXCJSZWN1cmx5U3Vic2NyaXB0aW9uXCJdLFxuXHRpbnZvaWNlczpNb2RlbFR5cGVzW1wiUmVjdXJseUludm9pY2VzXCJdW11cbn07XG5cdFtcIlNoYXJlRm9sZGVyUmVzcG9uc2VcIl06IHtcblx0XHRmb2xkZXJzOnN0cmluZ1tdLFxuXHR2RmlsZXM6c3RyaW5nW11cbn07XG5cdFtcIlF1ZXJ5XCJdOiB7XG5cdFx0dGVzdD86Ym9vbGVhbixcblx0bGltaXRzPzpNb2RlbFR5cGVzW1wiUXVlcnlMaW1pdHNcIl0sXG5cdHVzZXI/Ok1vZGVsVHlwZXNbXCJVc2VyXCJdLFxuXHRkYkNvbmZpZz86TW9kZWxUeXBlc1tcIkpzb25cIl0sXG5cdGRiR2V0PzpNb2RlbFR5cGVzW1wiSnNvblwiXSxcblx0ZGJTZWFyY2g6TW9kZWxUeXBlc1tcIkpzb25cIl1bXSxcblx0ZmlsZUNvbnRlbnQ/Ok1vZGVsVHlwZXNbXCJGaWxlQ29udGVudFwiXSxcblx0ZmlsZXNTaGFyZWRXaXRoTWU6TW9kZWxUeXBlc1tcIkZpbGVTaGFyZWRDb250ZW50XCJdW10sXG5cdHZGaWxlc1NoYXJlZFdpdGhNZTpNb2RlbFR5cGVzW1wiVkZpbGVcIl1bXSxcblx0Zm9sZGVyc1NoYXJlZFdpdGhNZTpNb2RlbFR5cGVzW1wiRm9sZGVyXCJdW10sXG5cdGZvbGRlclNpemU/Ok1vZGVsVHlwZXNbXCJGb2xkZXJTaXplXCJdLFxuXHRmb2xkZXI/Ok1vZGVsVHlwZXNbXCJGb2xkZXJcIl0sXG5cdHZGaWxlPzpNb2RlbFR5cGVzW1wiVkZpbGVcIl0sXG5cdGZpbGU/Ok1vZGVsVHlwZXNbXCJGaWxlXCJdLFxuXHRmYXE6TW9kZWxUeXBlc1tcIkZhcUl0ZW1cIl1bXSxcblx0cGF5bWVudEluZm9zPzpNb2RlbFR5cGVzW1wiUGF5bWVudEluZm9zXCJdLFxuXHRwbGFuczpNb2RlbFR5cGVzW1wiUGxhblwiXVtdLFxuXHRzaGFyZWRGb2xkZXJzOk1vZGVsVHlwZXNbXCJGb2xkZXJcIl1bXSxcblx0c2hhcmVkVkZpbGVzOk1vZGVsVHlwZXNbXCJWRmlsZVwiXVtdLFxuXHRibG9nOk1vZGVsVHlwZXNbXCJCbG9nSXRlbVwiXVtdLFxuXHRkZWxldGVkRm9sZGVyczpNb2RlbFR5cGVzW1wiRm9sZGVyXCJdW10sXG5cdGRlbGV0ZWRWRmlsZXM6TW9kZWxUeXBlc1tcIlZGaWxlXCJdW10sXG5cdG1haWw/Ok1vZGVsVHlwZXNbXCJNYWlsXCJdLFxuXHRkZWxldGVkTWFpbHM6TW9kZWxUeXBlc1tcIk1haWxcIl1bXSxcblx0YXBwTm90aWZpY2F0aW9ucz86TW9kZWxUeXBlc1tcIlVzZXJBcHBOb3RpZmljYXRpb25zXCJdLFxuXHR1c2VyTGlzdDpNb2RlbFR5cGVzW1wiVXNlclwiXVtdXG59O1xuXHRbXCJNdXRhdGlvblwiXToge1xuXHRcdGNyZWF0ZUFwcGxpY2F0aW9uPzpzdHJpbmcsXG5cdGRiU2V0PzpNb2RlbFR5cGVzW1wiSnNvblwiXSxcblx0ZGJDb25maWc6TW9kZWxUeXBlc1tcIkpzb25cIl0sXG5cdHNoYXJlVkZpbGU/OmJvb2xlYW4sXG5cdHNoYXJlRm9sZGVyOk1vZGVsVHlwZXNbXCJTaGFyZUZvbGRlclJlc3BvbnNlXCJdLFxuXHRzaGFyZUZvbGRlckZpbmlzaD86Ym9vbGVhbixcblx0dXBkYXRlRmlsZT86TW9kZWxUeXBlc1tcIlZGaWxlXCJdLFxuXHR1cGRhdGVQcm9maWxlPzpNb2RlbFR5cGVzW1wiVXNlclwiXSxcblx0dXBsb2FkQW5vbnltb3VzPzpNb2RlbFR5cGVzW1wiRmlsZVJlc3BvbnNlXCJdLFxuXHR1cGxvYWRGaWxlPzpNb2RlbFR5cGVzW1wiRmlsZVJlc3BvbnNlXCJdLFxuXHRjcmVhdGVGb2xkZXI/Ok1vZGVsVHlwZXNbXCJGb2xkZXJcIl0sXG5cdG1vdmVGb2xkZXJzPzpib29sZWFuLFxuXHRkZWxldGVGb2xkZXI/OmJvb2xlYW4sXG5cdG1vdmVGaWxlcz86Ym9vbGVhbixcblx0dXBkYXRlRm9sZGVyPzpNb2RlbFR5cGVzW1wiRm9sZGVyXCJdLFxuXHRkZWxldGVWRmlsZTpib29sZWFuLFxuXHRjcmVhdGVEcmFmdE1haWw/Ok1vZGVsVHlwZXNbXCJNYWlsXCJdLFxuXHRzZW5kRHJhZnRNYWlsPzpib29sZWFuLFxuXHRyZWFkTWFpbD86Ym9vbGVhbixcblx0dW5yZWFkTWFpbD86Ym9vbGVhbixcblx0dXBkYXRlQXBwU2V0dGluZ3M6TW9kZWxUeXBlc1tcIlVzZXJBcHBTZXR0aW5nc1wiXSxcblx0dXBsb2FkRmlsZUVuZD86c3RyaW5nLFxuXHRsb2dvdXQ/OmJvb2xlYW4sXG5cdGFkZEZpbGVUb0hpc3Rvcnk6TW9kZWxUeXBlc1tcIlZGaWxlXCJdLFxuXHRzZW5kT25lTWFpbD86Ym9vbGVhbixcblx0ZGVsZXRlRHJhZnRNYWlsPzpib29sZWFuLFxuXHR1cGRhdGVEcmFmdE1haWw/Ok1vZGVsVHlwZXNbXCJNYWlsXCJdLFxuXHRkZWxldGVVc2VyPzpib29sZWFuLFxuXHRwYXk6Ym9vbGVhbixcblx0Y2FuY2VsUGF5bWVudD86Ym9vbGVhbixcblx0c2VuZFJlcG9ydD86TW9kZWxUeXBlc1tcIlJlcG9ydFwiXSxcblx0c2F2ZUluQ2xvdWQ6TW9kZWxUeXBlc1tcIlZGaWxlXCJdLFxuXHRkZWxldGVWRmlsZVNoYXJpbmc6Ym9vbGVhbixcblx0ZGVsZXRlRm9sZGVyU2hhcmluZzpib29sZWFuLFxuXHRkZWxldGVNYWlsOmJvb2xlYW4sXG5cdGRlbGV0ZUZpbGU6Ym9vbGVhbixcblx0c2hhcmVGaWxlSW5IaXN0b3J5OmJvb2xlYW4sXG5cdHJlY292ZXJWRmlsZTpib29sZWFuLFxuXHRyZWNvdmVyTWFpbDpib29sZWFuLFxuXHRyZWNvdmVyRm9sZGVyPzpib29sZWFuLFxuXHRkdXBsaWNhdGVWRmlsZTpib29sZWFuLFxuXHRkZWxldGVGb2xkZXJDbG91ZFRyYXNoPzpib29sZWFuLFxuXHRkZWxldGVWRmlsZUNsb3VkVHJhc2g/OmJvb2xlYW4sXG5cdGRlbGV0ZU1haWxUcmFzaDpib29sZWFuLFxuXHRlbXB0eUNsb3VkVHJhc2g/OmJvb2xlYW4sXG5cdGVtcHR5TWFpbFRyYXNoPzpib29sZWFuLFxuXHR1cGxvYWRGaWxlUGFydEVuZDpib29sZWFuLFxuXHR1cGRhdGVBcHBOb3RpZmljYXRpb25zPzpNb2RlbFR5cGVzW1wiVXNlckFwcE5vdGlmaWNhdGlvbnNcIl0sXG5cdGNoYW5nZVVzZXJQbGFuPzpNb2RlbFR5cGVzW1wiVXNlclwiXVxufTtcblx0W1wiU3Vic2NyaXB0aW9uXCJdOiB7XG5cdFx0dGVzdDpib29sZWFuXG59XG4gICAgfVxuXG5leHBvcnQgdHlwZSBHcmFwaFFMVHlwZXMgPSB7XG4gICAgLyoqIFRoZSBgQmlnSW50YCBzY2FsYXIgdHlwZSByZXByZXNlbnRzIG5vbi1mcmFjdGlvbmFsIHNpZ25lZCB3aG9sZSBudW1lcmljIHZhbHVlcy5cbkBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSmF2YVNjcmlwdC9SZWZlcmVuY2UvR2xvYmFsX09iamVjdHMvQmlnSW50ICovXG5bXCJCaWdJbnRcIl06YW55O1xuXHQvKiogVGhlIGBCeXRlYCBzY2FsYXIgdHlwZSByZXByZXNlbnRzIGJ5dGUgdmFsdWUgYXMgYSBCdWZmZXIgKi9cbltcIkJ5dGVzXCJdOmFueTtcblx0LyoqIEEgZGF0ZS10aW1lIHN0cmluZyBhdCBVVEMsIHN1Y2ggYXMgMjAwNy0xMi0wM1QxMDoxNTozMFosIGNvbXBsaWFudCB3aXRoIHRoZSBgZGF0ZS10aW1lYCBmb3JtYXQgb3V0bGluZWQgaW4gc2VjdGlvbiA1LjYgb2YgdGhlIFJGQyAzMzM5IHByb2ZpbGUgb2YgdGhlIElTTyA4NjAxIHN0YW5kYXJkIGZvciByZXByZXNlbnRhdGlvbiBvZiBkYXRlcyBhbmQgdGltZXMgdXNpbmcgdGhlIEdyZWdvcmlhbiBjYWxlbmRhci4gKi9cbltcIkRhdGVUaW1lXCJdOmFueTtcblx0LyoqIEFuIGFyYml0cmFyeS1wcmVjaXNpb24gRGVjaW1hbCB0eXBlICovXG5bXCJEZWNpbWFsXCJdOmFueTtcblx0LyoqIFRoZSBgSlNPTk9iamVjdGAgc2NhbGFyIHR5cGUgcmVwcmVzZW50cyBKU09OIG9iamVjdHMgYXMgc3BlY2lmaWVkIGJ5IFtFQ01BLTQwNF0oaHR0cDovL3d3dy5lY21hLWludGVybmF0aW9uYWwub3JnL3B1YmxpY2F0aW9ucy9maWxlcy9FQ01BLVNUL0VDTUEtNDA0LnBkZikuICovXG5bXCJKc29uXCJdOmFueTtcblx0W1wiTGFuZ1wiXTogTGFuZztcblx0W1wiUGxhbktpbmRcIl06IFBsYW5LaW5kO1xuXHRbXCJVc2VyUm9sZVwiXTogVXNlclJvbGU7XG5cdFtcIk1haWxUeXBlXCJdOiBNYWlsVHlwZTtcblx0W1wiUmlnaHRzXCJdOiBSaWdodHM7XG5cdFtcIkZpbGVcIl06IHtcblx0X190eXBlbmFtZTogXCJGaWxlXCIsXG5cdGlkOiBzdHJpbmcsXG5cdHNpemU6IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXSxcblx0c2l6ZUJlZm9yZTogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRjcmVhdGVkQXQ6IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHR2RmlsZXM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIlZGaWxlXCJdPixcblx0dkZpbGVzQ3VycmVudDogQXJyYXk8R3JhcGhRTFR5cGVzW1wiVkZpbGVcIl0+LFxuXHR1c2VyczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiRmlsZXNPblVzZXJzT25BcHBsaWNhdGlvbnNcIl0+LFxuXHRtZDU6IHN0cmluZyxcblx0bWQ1RW5jcnlwdGVkOiBzdHJpbmcsXG5cdGRlbGV0ZWRBdD86IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHR1c2VyQXBwOiBHcmFwaFFMVHlwZXNbXCJBcHBsaWNhdGlvbnNPblVzZXJzXCJdLFxuXHRtYWlsczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiRmlsZXNPbk1haWxzXCJdPixcblx0dmFsaWRhdGVkQXQ/OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0dXNlcj86IEdyYXBoUUxUeXBlc1tcIkZpbGVzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdXG59O1xuXHRbXCJGaWxlUGFydFwiXToge1xuXHRfX3R5cGVuYW1lOiBcIkZpbGVQYXJ0XCIsXG5cdGlkOiBzdHJpbmcsXG5cdGZpbGU6IEdyYXBoUUxUeXBlc1tcIkZpbGVcIl0sXG5cdGZpbGVJZDogc3RyaW5nLFxuXHRzaXplOiBHcmFwaFFMVHlwZXNbXCJCaWdJbnRcIl0sXG5cdG9yZGVyOiBudW1iZXIsXG5cdG1kNTogc3RyaW5nLFxuXHR2YWxpZGF0ZWRBdD86IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdXG59O1xuXHRbXCJGaWxlQ29udGVudFR5cGVcIl06IEZpbGVDb250ZW50VHlwZTtcblx0W1wiRmlsZUNvbnRlbnRQYXJ0XCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiRmlsZUNvbnRlbnRQYXJ0XCIsXG5cdGNvbnRlbnRVcmw6IHN0cmluZyxcblx0b3JkZXI6IG51bWJlcixcblx0bWQ1OiBzdHJpbmdcbn07XG5cdFtcIkZpbGVDb250ZW50QmFzZVwiXToge1xuXHRfX3R5cGVuYW1lOlwiRmlsZUNvbnRlbnRDbG91ZFwiIHwgXCJGaWxlQ29udGVudFNlbnRNYWlsXCIgfCBcIkZpbGVDb250ZW50UmVjZWl2ZWRNYWlsXCIsXG5cdHBhcnRzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJGaWxlQ29udGVudFBhcnRcIl0+LFxuXHRrZXk6IHN0cmluZyxcblx0bWQ1OiBzdHJpbmcsXG5cdG1kNUVuY3J5cHRlZDogc3RyaW5nLFxuXHR0b3RhbFNpemU6IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXSxcblx0dHlwZTogR3JhcGhRTFR5cGVzW1wiRmlsZUNvbnRlbnRUeXBlXCJdXG5cdFsnLi4ub24gRmlsZUNvbnRlbnRDbG91ZCddOiAnX191bmlvbicgJiBHcmFwaFFMVHlwZXNbXCJGaWxlQ29udGVudENsb3VkXCJdO1xuXHRbJy4uLm9uIEZpbGVDb250ZW50U2VudE1haWwnXTogJ19fdW5pb24nICYgR3JhcGhRTFR5cGVzW1wiRmlsZUNvbnRlbnRTZW50TWFpbFwiXTtcblx0WycuLi5vbiBGaWxlQ29udGVudFJlY2VpdmVkTWFpbCddOiAnX191bmlvbicgJiBHcmFwaFFMVHlwZXNbXCJGaWxlQ29udGVudFJlY2VpdmVkTWFpbFwiXTtcbn07XG5cdFtcIkZpbGVDb250ZW50Q2xvdWRcIl06IHtcblx0X190eXBlbmFtZTogXCJGaWxlQ29udGVudENsb3VkXCIsXG5cdHBhcnRzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJGaWxlQ29udGVudFBhcnRcIl0+LFxuXHRrZXk6IHN0cmluZyxcblx0bWQ1OiBzdHJpbmcsXG5cdG1kNUVuY3J5cHRlZDogc3RyaW5nLFxuXHR0b3RhbFNpemU6IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXSxcblx0dHlwZTogR3JhcGhRTFR5cGVzW1wiRmlsZUNvbnRlbnRUeXBlXCJdLFxuXHRwdWJsaWNLZXk6IHN0cmluZ1xufTtcblx0W1wiRmlsZUNvbnRlbnRTZW50TWFpbFwiXToge1xuXHRfX3R5cGVuYW1lOiBcIkZpbGVDb250ZW50U2VudE1haWxcIixcblx0cGFydHM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIkZpbGVDb250ZW50UGFydFwiXT4sXG5cdGtleTogc3RyaW5nLFxuXHRtZDU6IHN0cmluZyxcblx0bWQ1RW5jcnlwdGVkOiBzdHJpbmcsXG5cdHRvdGFsU2l6ZTogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHR0eXBlOiBHcmFwaFFMVHlwZXNbXCJGaWxlQ29udGVudFR5cGVcIl1cbn07XG5cdFtcIkZpbGVDb250ZW50UmVjZWl2ZWRNYWlsXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiRmlsZUNvbnRlbnRSZWNlaXZlZE1haWxcIixcblx0cGFydHM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIkZpbGVDb250ZW50UGFydFwiXT4sXG5cdGtleTogc3RyaW5nLFxuXHRtZDU6IHN0cmluZyxcblx0bWQ1RW5jcnlwdGVkOiBzdHJpbmcsXG5cdHRvdGFsU2l6ZTogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHR0eXBlOiBHcmFwaFFMVHlwZXNbXCJGaWxlQ29udGVudFR5cGVcIl0sXG5cdHNlbmRlclB1YmxpY0tleTogc3RyaW5nXG59O1xuXHRbXCJGaWxlQ29udGVudFwiXTp7XG5cdF9fdHlwZW5hbWU6XCJGaWxlQ29udGVudENsb3VkXCIgfCBcIkZpbGVDb250ZW50UmVjZWl2ZWRNYWlsXCIgfCBcIkZpbGVDb250ZW50U2VudE1haWxcIlxuXHRbJy4uLm9uIEZpbGVDb250ZW50Q2xvdWQnXTogJ19fdW5pb24nICYgR3JhcGhRTFR5cGVzW1wiRmlsZUNvbnRlbnRDbG91ZFwiXTtcblx0WycuLi5vbiBGaWxlQ29udGVudFJlY2VpdmVkTWFpbCddOiAnX191bmlvbicgJiBHcmFwaFFMVHlwZXNbXCJGaWxlQ29udGVudFJlY2VpdmVkTWFpbFwiXTtcblx0WycuLi5vbiBGaWxlQ29udGVudFNlbnRNYWlsJ106ICdfX3VuaW9uJyAmIEdyYXBoUUxUeXBlc1tcIkZpbGVDb250ZW50U2VudE1haWxcIl07XG59O1xuXHRbXCJGaWxlUmVzcG9uc2VcIl06IHtcblx0X190eXBlbmFtZTogXCJGaWxlUmVzcG9uc2VcIixcblx0ZmlsZUlkOiBzdHJpbmcsXG5cdHBhcnRzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJGaWxlUGFydFJlc3BvbnNlXCJdPixcblx0ZmlsZVBhcnRTaXplOiBHcmFwaFFMVHlwZXNbXCJCaWdJbnRcIl1cbn07XG5cdFtcIkZpbGVQYXJ0UmVzcG9uc2VcIl06IHtcblx0X190eXBlbmFtZTogXCJGaWxlUGFydFJlc3BvbnNlXCIsXG5cdGZpZWxkczogR3JhcGhRTFR5cGVzW1wiSnNvblwiXSxcblx0dXJsOiBzdHJpbmcsXG5cdG9yZGVyOiBudW1iZXJcbn07XG5cdFtcIkZpbGVTaGFyZWRcIl06IHtcblx0X190eXBlbmFtZTogXCJGaWxlU2hhcmVkXCIsXG5cdHVzZXJJZDogc3RyaW5nLFxuXHRtZXNzYWdlPzogc3RyaW5nLFxuXHRhcHBJZDogc3RyaW5nLFxuXHRpZDogc3RyaW5nLFxuXHRmaWxlbmFtZTogc3RyaW5nLFxuXHRzaXplOiBudW1iZXIsXG5cdHNpemVCZWZvcmU6IG51bWJlclxufTtcblx0W1wiRmlsZVNoYXJlZENvbnRlbnRcIl06IHtcblx0X190eXBlbmFtZTogXCJGaWxlU2hhcmVkQ29udGVudFwiLFxuXHRvd25lcklkPzogc3RyaW5nLFxuXHRwdWJLZXk/OiBzdHJpbmcsXG5cdG1lc3NhZ2U/OiBzdHJpbmcsXG5cdGFwcElkOiBzdHJpbmcsXG5cdGlkOiBzdHJpbmcsXG5cdHR5cGU6IHN0cmluZyxcblx0ZmlsZW5hbWU6IHN0cmluZyxcblx0Y29udGVudFVybDogc3RyaW5nLFxuXHRrZXk6IHN0cmluZyxcblx0c2l6ZTogbnVtYmVyLFxuXHRzaXplQmVmb3JlOiBudW1iZXJcbn07XG5cdFtcIkNsb3VkTGltaXRzXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiQ2xvdWRMaW1pdHNcIixcblx0c2l6ZTogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRtYXhTaXplPzogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRjb3VudDogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRtYXhDb3VudD86IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXVxufTtcblx0W1wiTWFpbExpbWl0c1ZhbHVlc1wiXToge1xuXHRfX3R5cGVuYW1lOiBcIk1haWxMaW1pdHNWYWx1ZXNcIixcblx0Y291bnQ6IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXSxcblx0bWF4Q291bnQ/OiBHcmFwaFFMVHlwZXNbXCJCaWdJbnRcIl0sXG5cdGZpbGVDb3VudDogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRtYXhGaWxlQ291bnQ/OiBHcmFwaFFMVHlwZXNbXCJCaWdJbnRcIl0sXG5cdGZpbGVTaXplOiBHcmFwaFFMVHlwZXNbXCJCaWdJbnRcIl0sXG5cdG1heEZpbGVTaXplPzogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdXG59O1xuXHRbXCJVc2VyTWFpbExpbWl0c1wiXToge1xuXHRfX3R5cGVuYW1lOiBcIlVzZXJNYWlsTGltaXRzXCIsXG5cdHNlbnQ6IEdyYXBoUUxUeXBlc1tcIk1haWxMaW1pdHNWYWx1ZXNcIl0sXG5cdHJlY2VpdmVkOiBHcmFwaFFMVHlwZXNbXCJNYWlsTGltaXRzVmFsdWVzXCJdXG59O1xuXHRbXCJRdWVyeUxpbWl0c1wiXToge1xuXHRfX3R5cGVuYW1lOiBcIlF1ZXJ5TGltaXRzXCIsXG5cdGNsb3VkOiBHcmFwaFFMVHlwZXNbXCJDbG91ZExpbWl0c1wiXSxcblx0bWFpbDogR3JhcGhRTFR5cGVzW1wiVXNlck1haWxMaW1pdHNcIl1cbn07XG5cdFtcIkxpbWl0c1wiXToge1xuXHRfX3R5cGVuYW1lOiBcIkxpbWl0c1wiLFxuXHRkb3dubG9hZEJhbmR3aWR0aD86IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXSxcblx0ZG93bmxvYWRDb3VudD86IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXSxcblx0aGFyZEZpbGVDb3VudD86IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXSxcblx0aGFyZEZpbGVTaXplPzogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRwZXJGaWxlU2l6ZT86IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXSxcblx0cmVjZWl2ZWRNYWlsczogR3JhcGhRTFR5cGVzW1wiTWFpbExpbWl0c1wiXSxcblx0c2VudE1haWxzOiBHcmFwaFFMVHlwZXNbXCJNYWlsTGltaXRzXCJdLFxuXHR1cGxvYWRCYW5kd2lkdGg/OiBHcmFwaFFMVHlwZXNbXCJCaWdJbnRcIl0sXG5cdHVwbG9hZENvdW50PzogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdXG59O1xuXHRbXCJNYWlsTGltaXRzXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiTWFpbExpbWl0c1wiLFxuXHRjb3VudD86IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXSxcblx0ZmlsZUNvdW50PzogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRmaWxlU2l6ZT86IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXSxcblx0aGFyZENvdW50PzogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRoYXJkRmlsZUNvdW50PzogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRoYXJkRmlsZVNpemU/OiBHcmFwaFFMVHlwZXNbXCJCaWdJbnRcIl0sXG5cdHBlckZpbGVTaXplPzogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdXG59O1xuXHRbXCJVc2VyXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiVXNlclwiLFxuXHRpZDogc3RyaW5nLFxuXHRkZWxldGVkQXQ/OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0bGFuZzogR3JhcGhRTFR5cGVzW1wiTGFuZ1wiXSxcblx0cmVwb3J0U2VudDogQXJyYXk8R3JhcGhRTFR5cGVzW1wiUmVwb3J0XCJdPixcblx0Z29kRmF0aGVyPzogR3JhcGhRTFR5cGVzW1wiVXNlclwiXSxcblx0Z29kQ2hpbGRyZW46IEFycmF5PEdyYXBoUUxUeXBlc1tcIlVzZXJcIl0+LFxuXHRmaXJzdG5hbWU6IHN0cmluZyxcblx0bGFzdG5hbWU6IHN0cmluZyxcblx0ZW1haWw6IHN0cmluZyxcblx0cGhvbmU6IHN0cmluZyxcblx0bGFzdExvZ2luOiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0cm9sZTogR3JhcGhRTFR5cGVzW1wiVXNlclJvbGVcIl0sXG5cdHNlc3Npb25zOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJVc2VyU2Vzc2lvblwiXT4sXG5cdGNyZWF0ZWRBdDogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdHJlY2VpdmVkTWFpbHM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIk1haWxcIl0+LFxuXHR3YWl0aW5nUmVjZWl2ZWRNYWlsczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiV2FpdGluZ1JlY2VpdmVkTWFpbFwiXT4sXG5cdHNlbnRNYWlsczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiTWFpbFwiXT4sXG5cdGRyYWZ0TWFpbHM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIk1haWxcIl0+LFxuXHRhcHBTZXR0aW5ncz86IEdyYXBoUUxUeXBlc1tcIlVzZXJBcHBTZXR0aW5nc1wiXSxcblx0YXBwbGljYXRpb25zOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJBcHBsaWNhdGlvbnNPblVzZXJzXCJdPixcblx0cHVibGljS2V5OiBzdHJpbmdcbn07XG5cdFtcIk1haWxcIl06IHtcblx0X190eXBlbmFtZTogXCJNYWlsXCIsXG5cdGlkOiBzdHJpbmcsXG5cdGFwcDogR3JhcGhRTFR5cGVzW1wiQXBwbGljYXRpb25cIl0sXG5cdGJvZHk6IHN0cmluZyxcblx0Y3JlYXRlZEF0OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0ZGVsZXRlZEF0PzogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGZpbGVzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJGaWxlc09uTWFpbHNcIl0+LFxuXHRtYWlsSW50ZWdyaXR5PzogR3JhcGhRTFR5cGVzW1wiTWFpbEludGVncml0eVwiXSxcblx0bWFpbEludGVncml0eURyYWZ0PzogR3JhcGhRTFR5cGVzW1wiTWFpbEludGVncml0eURyYWZ0XCJdLFxuXHRvcGVuZWRBdD86IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRyZWNpcGllbnQ6IEdyYXBoUUxUeXBlc1tcIlVzZXJcIl0sXG5cdHNlbmRlcjogR3JhcGhRTFR5cGVzW1wiVXNlclwiXSxcblx0c3ViamVjdDogc3RyaW5nLFxuXHR0eXBlOiBHcmFwaFFMVHlwZXNbXCJNYWlsVHlwZVwiXSxcblx0cmVjaXBpZW50czogQXJyYXk8R3JhcGhRTFR5cGVzW1wiVXNlclwiXT5cbn07XG5cdFtcIk1haWxJbnRlZ3JpdHlcIl06IHtcblx0X190eXBlbmFtZTogXCJNYWlsSW50ZWdyaXR5XCIsXG5cdGlkOiBzdHJpbmcsXG5cdGhhc2g6IHN0cmluZyxcblx0aGFzaEtleTogc3RyaW5nLFxuXHRhbnN3ZXJzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJNYWlsSW50ZWdyaXR5XCJdPixcblx0YXBwOiBHcmFwaFFMVHlwZXNbXCJBcHBsaWNhdGlvblwiXSxcblx0bWFpbHM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIk1haWxcIl0+LFxuXHRyZWNpcGllbnRzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJVc2VyXCJdPixcblx0dGVtcG9yYXJ5UmVjaXBpZW50czogQXJyYXk8R3JhcGhRTFR5cGVzW1wiVGVtcG9yYXJ5VXNlclwiXT4sXG5cdHJlcGx5VG8/OiBHcmFwaFFMVHlwZXNbXCJNYWlsSW50ZWdyaXR5XCJdXG59O1xuXHRbXCJGaWxlc09uTWFpbHNcIl06IHtcblx0X190eXBlbmFtZTogXCJGaWxlc09uTWFpbHNcIixcblx0ZmlsZTogR3JhcGhRTFR5cGVzW1wiRmlsZVwiXSxcblx0ZmlsZUtleTogc3RyaW5nLFxuXHRmaWxlbmFtZTogc3RyaW5nLFxuXHRtYWlsOiBHcmFwaFFMVHlwZXNbXCJNYWlsXCJdXG59O1xuXHRbXCJGaWxlc09uVXNlcnNPbkFwcGxpY2F0aW9uc1wiXToge1xuXHRfX3R5cGVuYW1lOiBcIkZpbGVzT25Vc2Vyc09uQXBwbGljYXRpb25zXCIsXG5cdGZpbGU6IEdyYXBoUUxUeXBlc1tcIkZpbGVcIl0sXG5cdHVzZXJBcHA6IEdyYXBoUUxUeXBlc1tcIkFwcGxpY2F0aW9uc09uVXNlcnNcIl0sXG5cdC8qKiBFbmNyeXB0ZWQgd2l0aCBVc2VyQXBwIGtleXMgKi9cblx0a2V5OiBzdHJpbmdcbn07XG5cdFtcIlZGaWxlXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiVkZpbGVcIixcblx0aWQ6IHN0cmluZyxcblx0aXNGYXZvcml0ZTogYm9vbGVhbixcblx0Y3JlYXRlZEF0OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0ZGVsZXRlZEF0PzogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGZpbGVuYW1lOiBzdHJpbmcsXG5cdHVzZXJBcHBzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJWRmlsZXNPblVzZXJzT25BcHBsaWNhdGlvbnNcIl0+LFxuXHRjcmVhdGVkQnk6IEdyYXBoUUxUeXBlc1tcIkFwcGxpY2F0aW9uc09uVXNlcnNcIl0sXG5cdHVzZXJBcHA/OiBHcmFwaFFMVHlwZXNbXCJWRmlsZXNPblVzZXJzT25BcHBsaWNhdGlvbnNcIl0sXG5cdGZvbGRlcjogR3JhcGhRTFR5cGVzW1wiRm9sZGVyXCJdLFxuXHRoaXN0b3J5OiBBcnJheTxHcmFwaFFMVHlwZXNbXCJGaWxlXCJdPixcblx0Y3VycmVudD86IEdyYXBoUUxUeXBlc1tcIkZpbGVcIl0sXG5cdHVwZGF0ZWRBdDogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl1cbn07XG5cdFtcIkZvbGRlckJyZWFkY3J1bWJJdGVtXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiRm9sZGVyQnJlYWRjcnVtYkl0ZW1cIixcblx0aWQ6IHN0cmluZyxcblx0bmFtZTogc3RyaW5nLFxuXHRwdWJLZXk6IHN0cmluZyxcblx0bmFtZUtleT86IHN0cmluZ1xufTtcblx0W1wiRm9sZGVyXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiRm9sZGVyXCIsXG5cdGlkOiBzdHJpbmcsXG5cdGlzRmF2b3JpdGU6IGJvb2xlYW4sXG5cdGNyZWF0ZWRBdDogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGRlbGV0ZWRBdD86IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHR1cGRhdGVkQXQ6IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRjcmVhdGVkQnk6IEdyYXBoUUxUeXBlc1tcIkFwcGxpY2F0aW9uc09uVXNlcnNcIl0sXG5cdHVzZXJBcHBzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJGb2xkZXJzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdPixcblx0dXNlckFwcD86IEdyYXBoUUxUeXBlc1tcIkZvbGRlcnNPblVzZXJzT25BcHBsaWNhdGlvbnNcIl0sXG5cdG5hbWU6IHN0cmluZyxcblx0cGFyZW50Rm9sZGVyPzogR3JhcGhRTFR5cGVzW1wiRm9sZGVyXCJdLFxuXHRzdWJmb2xkZXJzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJGb2xkZXJcIl0+LFxuXHR2RmlsZXM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIlZGaWxlXCJdPixcblx0YnJlYWRjcnVtYjogQXJyYXk8R3JhcGhRTFR5cGVzW1wiRm9sZGVyQnJlYWRjcnVtYkl0ZW1cIl0+XG59O1xuXHRbXCJBcHBsaWNhdGlvblwiXToge1xuXHRfX3R5cGVuYW1lOiBcIkFwcGxpY2F0aW9uXCIsXG5cdGlkOiBzdHJpbmcsXG5cdG5hbWU6IHN0cmluZ1xufTtcblx0W1wiQXBwbGljYXRpb25zT25Vc2Vyc1wiXToge1xuXHRfX3R5cGVuYW1lOiBcIkFwcGxpY2F0aW9uc09uVXNlcnNcIixcblx0ZmFrZVVzZXJJZDogc3RyaW5nLFxuXHRrZXlQYWlyPzogR3JhcGhRTFR5cGVzW1wiQXBwS2V5UGFpclwiXSxcblx0c2Vzc2lvbnM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIkFwcFNlc3Npb25cIl0+LFxuXHRhcHA6IEdyYXBoUUxUeXBlc1tcIkFwcGxpY2F0aW9uXCJdLFxuXHR1c2VyOiBHcmFwaFFMVHlwZXNbXCJVc2VyXCJdLFxuXHRmb2xkZXJzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJGb2xkZXJzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdPixcblx0c2V0dGluZ3M6IEdyYXBoUUxUeXBlc1tcIlVzZXJBcHBTZXR0aW5nc1wiXVxufTtcblx0W1wiQXBwS2V5UGFpclwiXToge1xuXHRfX3R5cGVuYW1lOiBcIkFwcEtleVBhaXJcIixcblx0cHViOiBzdHJpbmdcbn07XG5cdFtcIkZvbGRlclNpemVcIl06IHtcblx0X190eXBlbmFtZTogXCJGb2xkZXJTaXplXCIsXG5cdHNpemU6IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXSxcblx0c2l6ZUJlZm9yZTogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdXG59O1xuXHRbXCJVc2VyU2Vzc2lvblwiXToge1xuXHRfX3R5cGVuYW1lOiBcIlVzZXJTZXNzaW9uXCIsXG5cdGlkOiBzdHJpbmcsXG5cdGFwcFNlc3Npb25zOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJBcHBTZXNzaW9uXCJdPixcblx0bGFzdEFjdGl2aXR5PzogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdHVzZXJBZ2VudD86IHN0cmluZyxcblx0aXA/OiBzdHJpbmcsXG5cdGNpdHk/OiBzdHJpbmcsXG5cdGNvdW50cnk/OiBzdHJpbmcsXG5cdGNyZWF0ZWRBdDogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl1cbn07XG5cdFtcIkFwcFNlc3Npb25cIl06IHtcblx0X190eXBlbmFtZTogXCJBcHBTZXNzaW9uXCIsXG5cdGlkOiBzdHJpbmcsXG5cdGxhc3RBY3Rpdml0eT86IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHR1c2VyQWdlbnQ/OiBzdHJpbmcsXG5cdGlwPzogc3RyaW5nLFxuXHRjaXR5Pzogc3RyaW5nLFxuXHRjb3VudHJ5Pzogc3RyaW5nLFxuXHR1c2VyU2Vzc2lvbjogR3JhcGhRTFR5cGVzW1wiVXNlclNlc3Npb25cIl0sXG5cdHVzZXJBcHA/OiBHcmFwaFFMVHlwZXNbXCJBcHBsaWNhdGlvbnNPblVzZXJzXCJdLFxuXHRjcmVhdGVkQXQ6IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdXG59O1xuXHRbXCJVc2VyQXBwU2V0dGluZ3NcIl06IHtcblx0X190eXBlbmFtZTogXCJVc2VyQXBwU2V0dGluZ3NcIixcblx0aWQ6IHN0cmluZyxcblx0Y2xvdWRGaWxlRGF5c0ZvckRlbGV0ZTogbnVtYmVyLFxuXHRjbG91ZEZvbGRlckRheXNGb3JEZWxldGU6IG51bWJlcixcblx0aGlzdG9yeUZpbGVEYXlzRm9yRGVsZXRlPzogbnVtYmVyLFxuXHRoaXN0b3J5TWF4RmlsZUNvdW50OiBudW1iZXIsXG5cdGF1dG9EaXNjb25uZWN0RGVsYXk/OiBudW1iZXJcbn07XG5cdFtcIk1haWxGaWxlSW5wdXRcIl06IHtcblx0XHRpZDogc3RyaW5nLFxuXHRuYW1lOiBzdHJpbmcsXG5cdGZpbGVLZXk6IHN0cmluZ1xufTtcblx0W1wiTWFpbFJlY2lwaWVudElucHV0XCJdOiB7XG5cdFx0Ym9keTogc3RyaW5nLFxuXHRzdWJqZWN0OiBzdHJpbmcsXG5cdHJlY2lwaWVudElkOiBzdHJpbmcsXG5cdGZpbGVzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJNYWlsRmlsZUlucHV0XCJdPlxufTtcblx0W1wiU2hhcmVGaWxlS2V5SW5wdXRcIl06IHtcblx0XHRpZDogc3RyaW5nLFxuXHRrZXk6IHN0cmluZ1xufTtcblx0W1wiTmFtZUtleUlucHV0XCJdOiB7XG5cdFx0aWQ6IHN0cmluZyxcblx0bmFtZUtleTogc3RyaW5nLFxuXHRmaWxlczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiU2hhcmVGaWxlS2V5SW5wdXRcIl0+XG59O1xuXHRbXCJOYW1lS2V5SW5wdXRGb2xkZXJzXCJdOiB7XG5cdFx0aWQ6IHN0cmluZyxcblx0bmFtZUtleTogc3RyaW5nXG59O1xuXHRbXCJTaGFyZUZvbGRlcnNJbnB1dFwiXToge1xuXHRcdGZvbGRlcnM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIk5hbWVLZXlJbnB1dEZvbGRlcnNcIl0+LFxuXHR2RmlsZXM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIk5hbWVLZXlJbnB1dFwiXT5cbn07XG5cdFtcIlNoYXJlRmlsZUluSGlzdG9yeUlucHV0XCJdOiB7XG5cdFx0ZmlsZUlkOiBzdHJpbmcsXG5cdHVzZXJzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJTaGFyZUZpbGVLZXlJbnB1dFwiXT5cbn07XG5cdFtcIlBheUlucHV0VHlwZVwiXTogUGF5SW5wdXRUeXBlO1xuXHRbXCJQYXlJbnB1dFwiXToge1xuXHRcdHR5cGU6IEdyYXBoUUxUeXBlc1tcIlBheUlucHV0VHlwZVwiXSxcblx0dG9rZW46IHN0cmluZyxcblx0Zmlyc3ROYW1lOiBzdHJpbmcsXG5cdGxhc3ROYW1lOiBzdHJpbmcsXG5cdHN0cmVldDogc3RyaW5nLFxuXHRwb3N0YWxDb2RlOiBzdHJpbmcsXG5cdGNpdHk6IHN0cmluZyxcblx0Y291bnRyeTogc3RyaW5nLFxuXHRudW1iZXI6IHN0cmluZyxcblx0bW9udGg6IHN0cmluZyxcblx0eWVhcjogc3RyaW5nLFxuXHRjdnY6IHN0cmluZ1xufTtcblx0W1wiV2FpdGluZ1JlY2VpdmVkTWFpbFwiXToge1xuXHRfX3R5cGVuYW1lOiBcIldhaXRpbmdSZWNlaXZlZE1haWxcIixcblx0c2VuZGVyOiBHcmFwaFFMVHlwZXNbXCJVc2VyXCJdLFxuXHRkYXRlOiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0cmVjaXBpZW50czogQXJyYXk8R3JhcGhRTFR5cGVzW1wiVXNlclwiXT4sXG5cdHRlbXBvcmFyeVJlY2lwaWVudHM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIlRlbXBvcmFyeVVzZXJcIl0+LFxuXHRhdHRhY2htZW50c0NvdW50OiBudW1iZXJcbn07XG5cdFtcIlRlbXBvcmFyeVVzZXJcIl06IHtcblx0X190eXBlbmFtZTogXCJUZW1wb3JhcnlVc2VyXCIsXG5cdGlkOiBzdHJpbmcsXG5cdG1haWxzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJNYWlsSW50ZWdyaXR5XCJdPixcblx0ZHJhZnRNYWlsczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiTWFpbEludGVncml0eURyYWZ0XCJdPixcblx0ZW1haWw/OiBzdHJpbmdcbn07XG5cdFtcIk1haWxJbnRlZ3JpdHlEcmFmdFwiXToge1xuXHRfX3R5cGVuYW1lOiBcIk1haWxJbnRlZ3JpdHlEcmFmdFwiLFxuXHRpZDogc3RyaW5nLFxuXHRoYXNoOiBzdHJpbmcsXG5cdGhhc2hLZXk6IHN0cmluZyxcblx0YXBwOiBHcmFwaFFMVHlwZXNbXCJBcHBsaWNhdGlvblwiXSxcblx0bWFpbDogR3JhcGhRTFR5cGVzW1wiTWFpbFwiXSxcblx0cmVjaXBpZW50czogQXJyYXk8R3JhcGhRTFR5cGVzW1wiVXNlclwiXT4sXG5cdHRlbXBvcmFyeVJlY2lwaWVudHM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIlRlbXBvcmFyeVVzZXJcIl0+LFxuXHRyZXBseVRvPzogR3JhcGhRTFR5cGVzW1wiTWFpbEludGVncml0eVwiXVxufTtcblx0W1wiRmFxXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiRmFxXCIsXG5cdGlkOiBzdHJpbmcsXG5cdG9yZGVyOiBudW1iZXIsXG5cdGVudHJpZXM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIkZhcUVudHJ5XCJdPlxufTtcblx0W1wiRmFxRW50cnlcIl06IHtcblx0X190eXBlbmFtZTogXCJGYXFFbnRyeVwiLFxuXHRpZDogc3RyaW5nLFxuXHRsYW5nOiBHcmFwaFFMVHlwZXNbXCJMYW5nXCJdLFxuXHRxdWVzdGlvbjogc3RyaW5nLFxuXHRhbnN3ZXI6IHN0cmluZyxcblx0ZmFxOiBHcmFwaFFMVHlwZXNbXCJGYXFcIl1cbn07XG5cdFtcIlBsYW5cIl06IHtcblx0X190eXBlbmFtZTogXCJQbGFuXCIsXG5cdGlkOiBzdHJpbmcsXG5cdGtpbmQ6IEdyYXBoUUxUeXBlc1tcIlBsYW5LaW5kXCJdLFxuXHRjb2RlczogQXJyYXk8c3RyaW5nPixcblx0bGltaXRzOiBHcmFwaFFMVHlwZXNbXCJMaW1pdHNcIl1cbn07XG5cdFtcIlJlcG9ydFwiXToge1xuXHRfX3R5cGVuYW1lOiBcIlJlcG9ydFwiLFxuXHRpZDogc3RyaW5nLFxuXHR1c2VyOiBHcmFwaFFMVHlwZXNbXCJVc2VyXCJdLFxuXHRyZXBvcnRlZFVzZXI6IEdyYXBoUUxUeXBlc1tcIlVzZXJcIl0sXG5cdGN1c3RvbU1lc3NhZ2U/OiBzdHJpbmdcbn07XG5cdFtcIkZvbGRlcnNPblVzZXJzT25BcHBsaWNhdGlvbnNcIl06IHtcblx0X190eXBlbmFtZTogXCJGb2xkZXJzT25Vc2Vyc09uQXBwbGljYXRpb25zXCIsXG5cdGZvbGRlcjogR3JhcGhRTFR5cGVzW1wiRm9sZGVyXCJdLFxuXHR1c2VyQXBwOiBHcmFwaFFMVHlwZXNbXCJBcHBsaWNhdGlvbnNPblVzZXJzXCJdLFxuXHRyaWdodHM6IEdyYXBoUUxUeXBlc1tcIlJpZ2h0c1wiXSxcblx0bmFtZUtleT86IHN0cmluZyxcblx0aXNSb290OiBib29sZWFuXG59O1xuXHRbXCJWRmlsZXNPblVzZXJzT25BcHBsaWNhdGlvbnNcIl06IHtcblx0X190eXBlbmFtZTogXCJWRmlsZXNPblVzZXJzT25BcHBsaWNhdGlvbnNcIixcblx0dkZpbGU6IEdyYXBoUUxUeXBlc1tcIlZGaWxlXCJdLFxuXHR1c2VyQXBwOiBHcmFwaFFMVHlwZXNbXCJBcHBsaWNhdGlvbnNPblVzZXJzXCJdLFxuXHRyaWdodHM6IEdyYXBoUUxUeXBlc1tcIlJpZ2h0c1wiXSxcblx0bmFtZUtleTogc3RyaW5nLFxuXHRpc1Jvb3Q6IGJvb2xlYW5cbn07XG5cdFtcIkZhcUl0ZW1cIl06IHtcblx0X190eXBlbmFtZTogXCJGYXFJdGVtXCIsXG5cdG9yZGVyOiBudW1iZXIsXG5cdHF1ZXN0aW9uOiBzdHJpbmcsXG5cdGFuc3dlcjogc3RyaW5nXG59O1xuXHRbXCJCbG9nXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiQmxvZ1wiLFxuXHRpZDogc3RyaW5nLFxuXHRvcmRlcjogbnVtYmVyLFxuXHRlbnRyaWVzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJCbG9nRW50cnlcIl0+XG59O1xuXHRbXCJCbG9nRW50cnlcIl06IHtcblx0X190eXBlbmFtZTogXCJCbG9nRW50cnlcIixcblx0aWQ6IHN0cmluZyxcblx0bGFuZzogR3JhcGhRTFR5cGVzW1wiTGFuZ1wiXSxcblx0YXV0aG9yOiBzdHJpbmcsXG5cdGJvZHk6IHN0cmluZyxcblx0ZGF0ZTogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGltYWdlOiBzdHJpbmcsXG5cdHN1bW1hcnk6IHN0cmluZyxcblx0dGl0bGU6IHN0cmluZ1xufTtcblx0W1wiQmxvZ0l0ZW1cIl06IHtcblx0X190eXBlbmFtZTogXCJCbG9nSXRlbVwiLFxuXHRpZDogc3RyaW5nLFxuXHRibG9nSWQ6IHN0cmluZyxcblx0b3JkZXI6IG51bWJlcixcblx0dGl0bGU6IHN0cmluZyxcblx0Ym9keTogc3RyaW5nLFxuXHRhdXRob3I6IHN0cmluZyxcblx0aW1hZ2U6IHN0cmluZyxcblx0aW1hZ2VBbHQ6IHN0cmluZyxcblx0c3VtbWFyeTogc3RyaW5nLFxuXHRkYXRlOiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXVxufTtcblx0W1wiVXNlckFwcE5vdGlmaWNhdGlvbnNcIl06IHtcblx0X190eXBlbmFtZTogXCJVc2VyQXBwTm90aWZpY2F0aW9uc1wiLFxuXHRpZDogc3RyaW5nLFxuXHRlbmFibGVBbGw6IGJvb2xlYW4sXG5cdG1haWw6IGJvb2xlYW4sXG5cdGNsb3VkOiBib29sZWFuLFxuXHRkaXNhYmxlQWxsVW50aWw/OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXVxufTtcblx0W1wiUmVjdXJseUludm9pY2VzXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiUmVjdXJseUludm9pY2VzXCIsXG5cdHBkZjogc3RyaW5nLFxuXHRkYXRlOiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0ZHVlOiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0c3RhdHVzOiBzdHJpbmcsXG5cdHRvdGFsOiBudW1iZXIsXG5cdG5hbWU6IHN0cmluZyxcblx0Y3VycmVuY3k6IHN0cmluZ1xufTtcblx0W1wiUmVjdXJseVN1YnNjcmlwdGlvblwiXToge1xuXHRfX3R5cGVuYW1lOiBcIlJlY3VybHlTdWJzY3JpcHRpb25cIixcblx0YXV0b3JlbmV3OiBib29sZWFuLFxuXHRhY3RpdmF0ZWRBdD86IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRjdXJyZW50UGVyaW9kRW5kc0F0PzogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGN1cnJlbnRQZXJpb2RTdGFydGVkQXQ/OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0Y2FuY2VsZWRBdD86IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRjcmVhdGVkQXQ/OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0ZXhwaXJlc0F0PzogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdHBhdXNlZEF0PzogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdHRyaWFsRW5kc0F0PzogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdHRyaWFsU3RhcnRlZEF0PzogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdHVwZGF0ZWRBdD86IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRzdGF0ZTogc3RyaW5nLFxuXHRjb2xsZWN0aW9uTWV0aG9kOiBzdHJpbmcsXG5cdHBsYW4/OiBzdHJpbmcsXG5cdHBsYW5Db2RlPzogc3RyaW5nLFxuXHR0b3RhbD86IG51bWJlclxufTtcblx0W1wiUGF5bWVudEluZm9zXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiUGF5bWVudEluZm9zXCIsXG5cdGhvc3RlZFVybDogc3RyaW5nLFxuXHRjdXJyZW50U3Vic2NyaXB0aW9uOiBHcmFwaFFMVHlwZXNbXCJSZWN1cmx5U3Vic2NyaXB0aW9uXCJdLFxuXHRpbnZvaWNlczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiUmVjdXJseUludm9pY2VzXCJdPlxufTtcblx0W1wiU2hhcmVGb2xkZXJSZXNwb25zZVwiXToge1xuXHRfX3R5cGVuYW1lOiBcIlNoYXJlRm9sZGVyUmVzcG9uc2VcIixcblx0Zm9sZGVyczogQXJyYXk8c3RyaW5nPixcblx0dkZpbGVzOiBBcnJheTxzdHJpbmc+XG59O1xuXHRbXCJRdWVyeVwiXToge1xuXHRfX3R5cGVuYW1lOiBcIlF1ZXJ5XCIsXG5cdHRlc3Q/OiBib29sZWFuLFxuXHRsaW1pdHM/OiBHcmFwaFFMVHlwZXNbXCJRdWVyeUxpbWl0c1wiXSxcblx0dXNlcj86IEdyYXBoUUxUeXBlc1tcIlVzZXJcIl0sXG5cdGRiQ29uZmlnPzogR3JhcGhRTFR5cGVzW1wiSnNvblwiXSxcblx0ZGJHZXQ/OiBHcmFwaFFMVHlwZXNbXCJKc29uXCJdLFxuXHRkYlNlYXJjaDogQXJyYXk8R3JhcGhRTFR5cGVzW1wiSnNvblwiXT4sXG5cdGZpbGVDb250ZW50PzogR3JhcGhRTFR5cGVzW1wiRmlsZUNvbnRlbnRcIl0sXG5cdGZpbGVzU2hhcmVkV2l0aE1lOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJGaWxlU2hhcmVkQ29udGVudFwiXT4sXG5cdHZGaWxlc1NoYXJlZFdpdGhNZTogQXJyYXk8R3JhcGhRTFR5cGVzW1wiVkZpbGVcIl0+LFxuXHRmb2xkZXJzU2hhcmVkV2l0aE1lOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJGb2xkZXJcIl0+LFxuXHRmb2xkZXJTaXplPzogR3JhcGhRTFR5cGVzW1wiRm9sZGVyU2l6ZVwiXSxcblx0Zm9sZGVyPzogR3JhcGhRTFR5cGVzW1wiRm9sZGVyXCJdLFxuXHR2RmlsZT86IEdyYXBoUUxUeXBlc1tcIlZGaWxlXCJdLFxuXHRmaWxlPzogR3JhcGhRTFR5cGVzW1wiRmlsZVwiXSxcblx0ZmFxOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJGYXFJdGVtXCJdPixcblx0cGF5bWVudEluZm9zPzogR3JhcGhRTFR5cGVzW1wiUGF5bWVudEluZm9zXCJdLFxuXHRwbGFuczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiUGxhblwiXT4sXG5cdHNoYXJlZEZvbGRlcnM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIkZvbGRlclwiXT4sXG5cdHNoYXJlZFZGaWxlczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiVkZpbGVcIl0+LFxuXHRibG9nOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJCbG9nSXRlbVwiXT4sXG5cdGRlbGV0ZWRGb2xkZXJzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJGb2xkZXJcIl0+LFxuXHRkZWxldGVkVkZpbGVzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJWRmlsZVwiXT4sXG5cdG1haWw/OiBHcmFwaFFMVHlwZXNbXCJNYWlsXCJdLFxuXHRkZWxldGVkTWFpbHM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIk1haWxcIl0+LFxuXHRhcHBOb3RpZmljYXRpb25zPzogR3JhcGhRTFR5cGVzW1wiVXNlckFwcE5vdGlmaWNhdGlvbnNcIl0sXG5cdHVzZXJMaXN0OiBBcnJheTxHcmFwaFFMVHlwZXNbXCJVc2VyXCJdPlxufTtcblx0W1wiTXV0YXRpb25cIl06IHtcblx0X190eXBlbmFtZTogXCJNdXRhdGlvblwiLFxuXHRjcmVhdGVBcHBsaWNhdGlvbj86IHN0cmluZyxcblx0ZGJTZXQ/OiBHcmFwaFFMVHlwZXNbXCJKc29uXCJdLFxuXHRkYkNvbmZpZzogR3JhcGhRTFR5cGVzW1wiSnNvblwiXSxcblx0c2hhcmVWRmlsZT86IGJvb2xlYW4sXG5cdHNoYXJlRm9sZGVyOiBHcmFwaFFMVHlwZXNbXCJTaGFyZUZvbGRlclJlc3BvbnNlXCJdLFxuXHRzaGFyZUZvbGRlckZpbmlzaD86IGJvb2xlYW4sXG5cdHVwZGF0ZUZpbGU/OiBHcmFwaFFMVHlwZXNbXCJWRmlsZVwiXSxcblx0dXBkYXRlUHJvZmlsZT86IEdyYXBoUUxUeXBlc1tcIlVzZXJcIl0sXG5cdHVwbG9hZEFub255bW91cz86IEdyYXBoUUxUeXBlc1tcIkZpbGVSZXNwb25zZVwiXSxcblx0dXBsb2FkRmlsZT86IEdyYXBoUUxUeXBlc1tcIkZpbGVSZXNwb25zZVwiXSxcblx0Y3JlYXRlRm9sZGVyPzogR3JhcGhRTFR5cGVzW1wiRm9sZGVyXCJdLFxuXHRtb3ZlRm9sZGVycz86IGJvb2xlYW4sXG5cdGRlbGV0ZUZvbGRlcj86IGJvb2xlYW4sXG5cdG1vdmVGaWxlcz86IGJvb2xlYW4sXG5cdHVwZGF0ZUZvbGRlcj86IEdyYXBoUUxUeXBlc1tcIkZvbGRlclwiXSxcblx0ZGVsZXRlVkZpbGU6IGJvb2xlYW4sXG5cdGNyZWF0ZURyYWZ0TWFpbD86IEdyYXBoUUxUeXBlc1tcIk1haWxcIl0sXG5cdHNlbmREcmFmdE1haWw/OiBib29sZWFuLFxuXHRyZWFkTWFpbD86IGJvb2xlYW4sXG5cdHVucmVhZE1haWw/OiBib29sZWFuLFxuXHR1cGRhdGVBcHBTZXR0aW5nczogR3JhcGhRTFR5cGVzW1wiVXNlckFwcFNldHRpbmdzXCJdLFxuXHR1cGxvYWRGaWxlRW5kPzogc3RyaW5nLFxuXHRsb2dvdXQ/OiBib29sZWFuLFxuXHRhZGRGaWxlVG9IaXN0b3J5OiBHcmFwaFFMVHlwZXNbXCJWRmlsZVwiXSxcblx0c2VuZE9uZU1haWw/OiBib29sZWFuLFxuXHRkZWxldGVEcmFmdE1haWw/OiBib29sZWFuLFxuXHR1cGRhdGVEcmFmdE1haWw/OiBHcmFwaFFMVHlwZXNbXCJNYWlsXCJdLFxuXHRkZWxldGVVc2VyPzogYm9vbGVhbixcblx0cGF5OiBib29sZWFuLFxuXHRjYW5jZWxQYXltZW50PzogYm9vbGVhbixcblx0c2VuZFJlcG9ydD86IEdyYXBoUUxUeXBlc1tcIlJlcG9ydFwiXSxcblx0c2F2ZUluQ2xvdWQ6IEdyYXBoUUxUeXBlc1tcIlZGaWxlXCJdLFxuXHRkZWxldGVWRmlsZVNoYXJpbmc6IGJvb2xlYW4sXG5cdGRlbGV0ZUZvbGRlclNoYXJpbmc6IGJvb2xlYW4sXG5cdGRlbGV0ZU1haWw6IGJvb2xlYW4sXG5cdGRlbGV0ZUZpbGU6IGJvb2xlYW4sXG5cdHNoYXJlRmlsZUluSGlzdG9yeTogYm9vbGVhbixcblx0cmVjb3ZlclZGaWxlOiBib29sZWFuLFxuXHRyZWNvdmVyTWFpbDogYm9vbGVhbixcblx0cmVjb3ZlckZvbGRlcj86IGJvb2xlYW4sXG5cdGR1cGxpY2F0ZVZGaWxlOiBib29sZWFuLFxuXHRkZWxldGVGb2xkZXJDbG91ZFRyYXNoPzogYm9vbGVhbixcblx0ZGVsZXRlVkZpbGVDbG91ZFRyYXNoPzogYm9vbGVhbixcblx0ZGVsZXRlTWFpbFRyYXNoOiBib29sZWFuLFxuXHRlbXB0eUNsb3VkVHJhc2g/OiBib29sZWFuLFxuXHRlbXB0eU1haWxUcmFzaD86IGJvb2xlYW4sXG5cdHVwbG9hZEZpbGVQYXJ0RW5kOiBib29sZWFuLFxuXHR1cGRhdGVBcHBOb3RpZmljYXRpb25zPzogR3JhcGhRTFR5cGVzW1wiVXNlckFwcE5vdGlmaWNhdGlvbnNcIl0sXG5cdGNoYW5nZVVzZXJQbGFuPzogR3JhcGhRTFR5cGVzW1wiVXNlclwiXVxufTtcblx0W1wiU3Vic2NyaXB0aW9uXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiU3Vic2NyaXB0aW9uXCIsXG5cdHRlc3Q6IGJvb2xlYW5cbn1cbiAgICB9XG5leHBvcnQgZW51bSBMYW5nIHtcblx0ZnIgPSBcImZyXCIsXG5cdGVuID0gXCJlblwiLFxuXHRpdCA9IFwiaXRcIixcblx0ZGUgPSBcImRlXCIsXG5cdHB0ID0gXCJwdFwiLFxuXHRqYSA9IFwiamFcIixcblx0ZXMgPSBcImVzXCIsXG5cdG5sID0gXCJubFwiLFxuXHRwbCA9IFwicGxcIixcblx0cnUgPSBcInJ1XCIsXG5cdHpoID0gXCJ6aFwiLFxuXHRhciA9IFwiYXJcIixcblx0aGUgPSBcImhlXCIsXG5cdGhpID0gXCJoaVwiLFxuXHRrbyA9IFwia29cIlxufVxuZXhwb3J0IGVudW0gUGxhbktpbmQge1xuXHRmcmVlID0gXCJmcmVlXCIsXG5cdGJhc2ljID0gXCJiYXNpY1wiLFxuXHRhZHZhbmNlZCA9IFwiYWR2YW5jZWRcIixcblx0cHJvID0gXCJwcm9cIlxufVxuZXhwb3J0IGVudW0gVXNlclJvbGUge1xuXHR1c2VyID0gXCJ1c2VyXCIsXG5cdGFkbWluID0gXCJhZG1pblwiXG59XG5leHBvcnQgZW51bSBNYWlsVHlwZSB7XG5cdHNlbnQgPSBcInNlbnRcIixcblx0cmVjZWl2ZWQgPSBcInJlY2VpdmVkXCJcbn1cbmV4cG9ydCBlbnVtIFJpZ2h0cyB7XG5cdGFkbWluID0gXCJhZG1pblwiLFxuXHR3cml0ZSA9IFwid3JpdGVcIixcblx0cmVhZCA9IFwicmVhZFwiXG59XG5leHBvcnQgZW51bSBGaWxlQ29udGVudFR5cGUge1xuXHRjbG91ZCA9IFwiY2xvdWRcIixcblx0c2VudF9tYWlsID0gXCJzZW50X21haWxcIixcblx0cmVjZWl2ZWRfbWFpbCA9IFwicmVjZWl2ZWRfbWFpbFwiXG59XG5leHBvcnQgZW51bSBQYXlJbnB1dFR5cGUge1xuXHRzZWN1cmUgPSBcInNlY3VyZVwiLFxuXHRjbGFzc2ljID0gXCJjbGFzc2ljXCJcbn1cbmV4cG9ydCBjbGFzcyBHcmFwaFFMRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gICAgY29uc3RydWN0b3IocHVibGljIHJlc3BvbnNlOiBHcmFwaFFMUmVzcG9uc2UpIHtcbiAgICAgIHN1cGVyKFwiXCIpO1xuICAgICAgY29uc29sZS5lcnJvcihyZXNwb25zZSk7XG4gICAgfVxuICAgIHRvU3RyaW5nKCkge1xuICAgICAgcmV0dXJuIFwiR3JhcGhRTCBSZXNwb25zZSBFcnJvclwiO1xuICAgIH1cbiAgfVxuXG5cbmV4cG9ydCB0eXBlIFVud3JhcFByb21pc2U8VD4gPSBUIGV4dGVuZHMgUHJvbWlzZTxpbmZlciBSPiA/IFIgOiBUO1xuZXhwb3J0IHR5cGUgWmV1c1N0YXRlPFQgZXh0ZW5kcyAoLi4uYXJnczogYW55W10pID0+IFByb21pc2U8YW55Pj4gPSBOb25OdWxsYWJsZTxcbiAgVW53cmFwUHJvbWlzZTxSZXR1cm5UeXBlPFQ+PlxuPjtcbmV4cG9ydCB0eXBlIFpldXNIb29rPFxuICBUIGV4dGVuZHMgKFxuICAgIC4uLmFyZ3M6IGFueVtdXG4gICkgPT4gUmVjb3JkPHN0cmluZywgKC4uLmFyZ3M6IGFueVtdKSA9PiBQcm9taXNlPGFueT4+LFxuICBOIGV4dGVuZHMga2V5b2YgUmV0dXJuVHlwZTxUPlxuPiA9IFpldXNTdGF0ZTxSZXR1cm5UeXBlPFQ+W05dPjtcblxudHlwZSBXaXRoVHlwZU5hbWVWYWx1ZTxUPiA9IFQgJiB7XG4gIF9fdHlwZW5hbWU/OiB0cnVlO1xufTtcbnR5cGUgQWxpYXNUeXBlPFQ+ID0gV2l0aFR5cGVOYW1lVmFsdWU8VD4gJiB7XG4gIF9fYWxpYXM/OiBSZWNvcmQ8c3RyaW5nLCBXaXRoVHlwZU5hbWVWYWx1ZTxUPj47XG59O1xuZXhwb3J0IGludGVyZmFjZSBHcmFwaFFMUmVzcG9uc2Uge1xuICBkYXRhPzogUmVjb3JkPHN0cmluZywgYW55PjtcbiAgZXJyb3JzPzogQXJyYXk8e1xuICAgIG1lc3NhZ2U6IHN0cmluZztcbiAgfT47XG59XG50eXBlIERlZXBBbmlmeTxUPiA9IHtcbiAgW1AgaW4ga2V5b2YgVF0/OiBhbnk7XG59O1xudHlwZSBJc1BheUxvYWQ8VD4gPSBUIGV4dGVuZHMgW2FueSwgaW5mZXIgUGF5TG9hZF0gPyBQYXlMb2FkIDogVDtcbnR5cGUgSXNBcnJheTxULCBVPiA9IFQgZXh0ZW5kcyBBcnJheTxpbmZlciBSPiA/IElucHV0VHlwZTxSLCBVPltdIDogSW5wdXRUeXBlPFQsIFU+O1xudHlwZSBGbGF0dGVuQXJyYXk8VD4gPSBUIGV4dGVuZHMgQXJyYXk8aW5mZXIgUj4gPyBSIDogVDtcblxudHlwZSBJc0ludGVyZmFjZWQ8U1JDIGV4dGVuZHMgRGVlcEFuaWZ5PERTVD4sIERTVD4gPSBGbGF0dGVuQXJyYXk8U1JDPiBleHRlbmRzIFpFVVNfSU5URVJGQUNFUyB8IFpFVVNfVU5JT05TXG4gID8ge1xuICAgICAgW1AgaW4ga2V5b2YgU1JDXTogU1JDW1BdIGV4dGVuZHMgJ19fdW5pb24nICYgaW5mZXIgUlxuICAgICAgICA/IFAgZXh0ZW5kcyBrZXlvZiBEU1RcbiAgICAgICAgICA/IElzQXJyYXk8UiwgJ19fdHlwZW5hbWUnIGV4dGVuZHMga2V5b2YgRFNUID8gRFNUW1BdICYgeyBfX3R5cGVuYW1lOiB0cnVlIH0gOiBEU1RbUF0+XG4gICAgICAgICAgOiB7fVxuICAgICAgICA6IG5ldmVyO1xuICAgIH1ba2V5b2YgRFNUXSAmXG4gICAgICB7XG4gICAgICAgIFtQIGluIGtleW9mIE9taXQ8XG4gICAgICAgICAgUGljazxcbiAgICAgICAgICAgIFNSQyxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgW1AgaW4ga2V5b2YgRFNUXTogU1JDW1BdIGV4dGVuZHMgJ19fdW5pb24nID8gbmV2ZXIgOiBQO1xuICAgICAgICAgICAgfVtrZXlvZiBEU1RdXG4gICAgICAgICAgPixcbiAgICAgICAgICAnX190eXBlbmFtZSdcbiAgICAgICAgPl06IElzUGF5TG9hZDxEU1RbUF0+IGV4dGVuZHMgdHJ1ZSA/IFNSQ1tQXSA6IElzQXJyYXk8U1JDW1BdLCBEU1RbUF0+O1xuICAgICAgfVxuICA6IHtcbiAgICAgIFtQIGluIGtleW9mIFBpY2s8U1JDLCBrZXlvZiBEU1Q+XTogSXNQYXlMb2FkPERTVFtQXT4gZXh0ZW5kcyB0cnVlID8gU1JDW1BdIDogSXNBcnJheTxTUkNbUF0sIERTVFtQXT47XG4gICAgfTtcblxuZXhwb3J0IHR5cGUgTWFwVHlwZTxTUkMsIERTVD4gPSBTUkMgZXh0ZW5kcyBEZWVwQW5pZnk8RFNUPiA/IElzSW50ZXJmYWNlZDxTUkMsIERTVD4gOiBuZXZlcjtcbmV4cG9ydCB0eXBlIElucHV0VHlwZTxTUkMsIERTVD4gPSBJc1BheUxvYWQ8RFNUPiBleHRlbmRzIHsgX19hbGlhczogaW5mZXIgUiB9XG4gID8ge1xuICAgICAgW1AgaW4ga2V5b2YgUl06IE1hcFR5cGU8U1JDLCBSW1BdPjtcbiAgICB9ICZcbiAgICAgIE1hcFR5cGU8U1JDLCBPbWl0PElzUGF5TG9hZDxEU1Q+LCAnX19hbGlhcyc+PlxuICA6IE1hcFR5cGU8U1JDLCBJc1BheUxvYWQ8RFNUPj47XG50eXBlIEZ1bmM8UCBleHRlbmRzIGFueVtdLCBSPiA9ICguLi5hcmdzOiBQKSA9PiBSO1xudHlwZSBBbnlGdW5jID0gRnVuYzxhbnksIGFueT47XG5leHBvcnQgdHlwZSBBcmdzVHlwZTxGIGV4dGVuZHMgQW55RnVuYz4gPSBGIGV4dGVuZHMgRnVuYzxpbmZlciBQLCBhbnk+ID8gUCA6IG5ldmVyO1xuZXhwb3J0IHR5cGUgT3BlcmF0aW9uT3B0aW9ucyA9IHtcbiAgdmFyaWFibGVzPzogUmVjb3JkPHN0cmluZywgYW55PjtcbiAgb3BlcmF0aW9uTmFtZT86IHN0cmluZztcbn07XG5leHBvcnQgdHlwZSBPcGVyYXRpb25Ub0dyYXBoUUw8ViwgVD4gPSA8WiBleHRlbmRzIFY+KG86IFogfCBWLCBvcHRpb25zPzogT3BlcmF0aW9uT3B0aW9ucykgPT4gUHJvbWlzZTxJbnB1dFR5cGU8VCwgWj4+O1xuZXhwb3J0IHR5cGUgU3Vic2NyaXB0aW9uVG9HcmFwaFFMPFYsIFQ+ID0gPFogZXh0ZW5kcyBWPihcbiAgbzogWiB8IFYsXG4gIG9wdGlvbnM/OiBPcGVyYXRpb25PcHRpb25zLFxuKSA9PiB7XG4gIHdzOiBXZWJTb2NrZXQ7XG4gIG9uOiAoZm46IChhcmdzOiBJbnB1dFR5cGU8VCwgWj4pID0+IHZvaWQpID0+IHZvaWQ7XG4gIG9mZjogKGZuOiAoZTogeyBkYXRhPzogSW5wdXRUeXBlPFQsIFo+OyBjb2RlPzogbnVtYmVyOyByZWFzb24/OiBzdHJpbmc7IG1lc3NhZ2U/OiBzdHJpbmcgfSkgPT4gdm9pZCkgPT4gdm9pZDtcbiAgZXJyb3I6IChmbjogKGU6IHsgZGF0YT86IElucHV0VHlwZTxULCBaPjsgZXJyb3JzPzpzdHJpbmdbXSB9KSA9PiB2b2lkKSA9PiB2b2lkO1xuICBvcGVuOiAoKSA9PiB2b2lkO1xufTtcbmV4cG9ydCB0eXBlIFNlbGVjdGlvbkZ1bmN0aW9uPFY+ID0gPFQ+KHQ6IFQgfCBWKSA9PiBUO1xuZXhwb3J0IHR5cGUgZmV0Y2hPcHRpb25zID0gQXJnc1R5cGU8dHlwZW9mIGZldGNoPjtcbnR5cGUgd2Vic29ja2V0T3B0aW9ucyA9IHR5cGVvZiBXZWJTb2NrZXQgZXh0ZW5kcyBuZXcgKFxuICAuLi5hcmdzOiBpbmZlciBSXG4pID0+IFdlYlNvY2tldFxuICA/IFJcbiAgOiBuZXZlcjtcbmV4cG9ydCB0eXBlIGNoYWluT3B0aW9ucyA9XG4gIHwgW2ZldGNoT3B0aW9uc1swXSwgZmV0Y2hPcHRpb25zWzFdICYge3dlYnNvY2tldD86IHdlYnNvY2tldE9wdGlvbnN9XVxuICB8IFtmZXRjaE9wdGlvbnNbMF1dO1xuZXhwb3J0IHR5cGUgRmV0Y2hGdW5jdGlvbiA9IChcbiAgcXVlcnk6IHN0cmluZyxcbiAgdmFyaWFibGVzPzogUmVjb3JkPHN0cmluZywgYW55PixcbikgPT4gUHJvbWlzZTxhbnk+O1xuZXhwb3J0IHR5cGUgU3Vic2NyaXB0aW9uRnVuY3Rpb24gPSAocXVlcnk6IHN0cmluZykgPT4gdm9pZDtcbnR5cGUgTm90VW5kZWZpbmVkPFQ+ID0gVCBleHRlbmRzIHVuZGVmaW5lZCA/IG5ldmVyIDogVDtcbmV4cG9ydCB0eXBlIFJlc29sdmVyVHlwZTxGPiA9IE5vdFVuZGVmaW5lZDxGIGV4dGVuZHMgW2luZmVyIEFSR1MsIGFueV0gPyBBUkdTIDogdW5kZWZpbmVkPjtcblxuXG5cbmV4cG9ydCBjb25zdCBaZXVzU2VsZWN0ID0gPFQ+KCkgPT4gKCh0OiBhbnkpID0+IHQpIGFzIFNlbGVjdGlvbkZ1bmN0aW9uPFQ+O1xuXG5leHBvcnQgY29uc3QgU2NhbGFyUmVzb2x2ZXIgPSAoc2NhbGFyOiBzdHJpbmcsIHZhbHVlOiBhbnkpID0+IHtcbiAgc3dpdGNoIChzY2FsYXIpIHtcbiAgICBjYXNlICdTdHJpbmcnOlxuICAgICAgcmV0dXJuICBgJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9YDtcbiAgICBjYXNlICdJbnQnOlxuICAgICAgcmV0dXJuIGAke3ZhbHVlfWA7XG4gICAgY2FzZSAnRmxvYXQnOlxuICAgICAgcmV0dXJuIGAke3ZhbHVlfWA7XG4gICAgY2FzZSAnQm9vbGVhbic6XG4gICAgICByZXR1cm4gYCR7dmFsdWV9YDtcbiAgICBjYXNlICdJRCc6XG4gICAgICByZXR1cm4gYFwiJHt2YWx1ZX1cImA7XG4gICAgY2FzZSAnZW51bSc6XG4gICAgICByZXR1cm4gYCR7dmFsdWV9YDtcbiAgICBjYXNlICdzY2FsYXInOlxuICAgICAgcmV0dXJuIGAke3ZhbHVlfWA7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgfVxufTtcblxuXG5leHBvcnQgY29uc3QgVHlwZXNQcm9wc1Jlc29sdmVyID0gKHtcbiAgICB2YWx1ZSxcbiAgICB0eXBlLFxuICAgIG5hbWUsXG4gICAga2V5LFxuICAgIGJsb2NrQXJyYXlzXG59OiB7XG4gICAgdmFsdWU6IGFueTtcbiAgICB0eXBlOiBzdHJpbmc7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGtleT86IHN0cmluZztcbiAgICBibG9ja0FycmF5cz86IGJvb2xlYW47XG59KTogc3RyaW5nID0+IHtcbiAgICBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIGBudWxsYDtcbiAgICB9XG4gICAgbGV0IHJlc29sdmVkVmFsdWUgPSBBbGxUeXBlc1Byb3BzW3R5cGVdW25hbWVdO1xuICAgIGlmIChrZXkpIHtcbiAgICAgICAgcmVzb2x2ZWRWYWx1ZSA9IHJlc29sdmVkVmFsdWVba2V5XTtcbiAgICB9XG4gICAgaWYgKCFyZXNvbHZlZFZhbHVlKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHJlc29sdmUgJHt0eXBlfSAke25hbWV9JHtrZXkgPyBgICR7a2V5fWAgOiAnJ31gKVxuICAgIH1cbiAgICBjb25zdCB0eXBlUmVzb2x2ZWQgPSByZXNvbHZlZFZhbHVlLnR5cGU7XG4gICAgY29uc3QgaXNBcnJheSA9IHJlc29sdmVkVmFsdWUuYXJyYXk7XG4gICAgY29uc3QgaXNBcnJheVJlcXVpcmVkID0gcmVzb2x2ZWRWYWx1ZS5hcnJheVJlcXVpcmVkO1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmIHZhbHVlLnN0YXJ0c1dpdGgoYFpFVVNfVkFSJGApKSB7XG4gICAgICAgIGNvbnN0IGlzUmVxdWlyZWQgPSByZXNvbHZlZFZhbHVlLnJlcXVpcmVkID8gJyEnIDogJyc7XG4gICAgICAgIGxldCB0ID0gYCR7dHlwZVJlc29sdmVkfWA7XG4gICAgICAgIGlmIChpc0FycmF5KSB7XG4gICAgICAgICAgaWYgKGlzUmVxdWlyZWQpIHtcbiAgICAgICAgICAgICAgdCA9IGAke3R9IWA7XG4gICAgICAgICAgfVxuICAgICAgICAgIHQgPSBgWyR7dH1dYDtcbiAgICAgICAgICBpZihpc0FycmF5UmVxdWlyZWQpe1xuICAgICAgICAgICAgdCA9IGAke3R9IWA7XG4gICAgICAgICAgfVxuICAgICAgICB9ZWxzZXtcbiAgICAgICAgICBpZiAoaXNSZXF1aXJlZCkge1xuICAgICAgICAgICAgICAgIHQgPSBgJHt0fSFgO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYFxcJCR7dmFsdWUuc3BsaXQoYFpFVVNfVkFSJGApWzFdfV9fWkVVU19WQVJfXyR7dH1gO1xuICAgIH1cbiAgICBpZiAoaXNBcnJheSAmJiAhYmxvY2tBcnJheXMpIHtcbiAgICAgICAgcmV0dXJuIGBbJHt2YWx1ZVxuICAgICAgICAubWFwKCh2OiBhbnkpID0+IFR5cGVzUHJvcHNSZXNvbHZlcih7IHZhbHVlOiB2LCB0eXBlLCBuYW1lLCBrZXksIGJsb2NrQXJyYXlzOiB0cnVlIH0pKVxuICAgICAgICAuam9pbignLCcpfV1gO1xuICAgIH1cbiAgICBjb25zdCByZXNsb3ZlZFNjYWxhciA9IFNjYWxhclJlc29sdmVyKHR5cGVSZXNvbHZlZCwgdmFsdWUpO1xuICAgIGlmICghcmVzbG92ZWRTY2FsYXIpIHtcbiAgICAgICAgY29uc3QgcmVzb2x2ZWRUeXBlID0gQWxsVHlwZXNQcm9wc1t0eXBlUmVzb2x2ZWRdO1xuICAgICAgICBpZiAodHlwZW9mIHJlc29sdmVkVHlwZSA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgY29uc3QgYXJnc0tleXMgPSBPYmplY3Qua2V5cyhyZXNvbHZlZFR5cGUpO1xuICAgICAgICByZXR1cm4gYHske2FyZ3NLZXlzXG4gICAgICAgICAgICAuZmlsdGVyKChhaykgPT4gdmFsdWVbYWtdICE9PSB1bmRlZmluZWQpXG4gICAgICAgICAgICAubWFwKFxuICAgICAgICAgICAgKGFrKSA9PiBgJHtha306JHtUeXBlc1Byb3BzUmVzb2x2ZXIoeyB2YWx1ZTogdmFsdWVbYWtdLCB0eXBlOiB0eXBlUmVzb2x2ZWQsIG5hbWU6IGFrIH0pfWBcbiAgICAgICAgICAgICl9fWA7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIFNjYWxhclJlc29sdmVyKEFsbFR5cGVzUHJvcHNbdHlwZVJlc29sdmVkXSwgdmFsdWUpIGFzIHN0cmluZztcbiAgICB9XG4gICAgcmV0dXJuIHJlc2xvdmVkU2NhbGFyO1xufTtcblxuXG5jb25zdCBpc0FycmF5RnVuY3Rpb24gPSAoXG4gIHBhcmVudDogc3RyaW5nW10sXG4gIGE6IGFueVtdXG4pID0+IHtcbiAgY29uc3QgW3ZhbHVlcywgcl0gPSBhO1xuICBjb25zdCBbbWFpbktleSwga2V5LCAuLi5rZXlzXSA9IHBhcmVudDtcbiAgY29uc3Qga2V5VmFsdWVzID0gT2JqZWN0LmtleXModmFsdWVzKS5maWx0ZXIoKGspID0+IHR5cGVvZiB2YWx1ZXNba10gIT09ICd1bmRlZmluZWQnKTtcblxuICBpZiAoIWtleXMubGVuZ3RoKSB7XG4gICAgICByZXR1cm4ga2V5VmFsdWVzLmxlbmd0aCA+IDBcbiAgICAgICAgPyBgKCR7a2V5VmFsdWVzXG4gICAgICAgICAgICAubWFwKFxuICAgICAgICAgICAgICAodikgPT5cbiAgICAgICAgICAgICAgICBgJHt2fToke1R5cGVzUHJvcHNSZXNvbHZlcih7XG4gICAgICAgICAgICAgICAgICB2YWx1ZTogdmFsdWVzW3ZdLFxuICAgICAgICAgICAgICAgICAgdHlwZTogbWFpbktleSxcbiAgICAgICAgICAgICAgICAgIG5hbWU6IGtleSxcbiAgICAgICAgICAgICAgICAgIGtleTogdlxuICAgICAgICAgICAgICAgIH0pfWBcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5qb2luKCcsJyl9KSR7ciA/IHRyYXZlcnNlVG9TZWVrQXJyYXlzKHBhcmVudCwgcikgOiAnJ31gXG4gICAgICAgIDogdHJhdmVyc2VUb1NlZWtBcnJheXMocGFyZW50LCByKTtcbiAgICB9XG5cbiAgY29uc3QgW3R5cGVSZXNvbHZlcktleV0gPSBrZXlzLnNwbGljZShrZXlzLmxlbmd0aCAtIDEsIDEpO1xuICBsZXQgdmFsdWVUb1Jlc29sdmUgPSBSZXR1cm5UeXBlc1ttYWluS2V5XVtrZXldO1xuICBmb3IgKGNvbnN0IGsgb2Yga2V5cykge1xuICAgIHZhbHVlVG9SZXNvbHZlID0gUmV0dXJuVHlwZXNbdmFsdWVUb1Jlc29sdmVdW2tdO1xuICB9XG5cbiAgY29uc3QgYXJndW1lbnRTdHJpbmcgPVxuICAgIGtleVZhbHVlcy5sZW5ndGggPiAwXG4gICAgICA/IGAoJHtrZXlWYWx1ZXNcbiAgICAgICAgICAubWFwKFxuICAgICAgICAgICAgKHYpID0+XG4gICAgICAgICAgICAgIGAke3Z9OiR7VHlwZXNQcm9wc1Jlc29sdmVyKHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogdmFsdWVzW3ZdLFxuICAgICAgICAgICAgICAgIHR5cGU6IHZhbHVlVG9SZXNvbHZlLFxuICAgICAgICAgICAgICAgIG5hbWU6IHR5cGVSZXNvbHZlcktleSxcbiAgICAgICAgICAgICAgICBrZXk6IHZcbiAgICAgICAgICAgICAgfSl9YFxuICAgICAgICAgIClcbiAgICAgICAgICAuam9pbignLCcpfSkke3IgPyB0cmF2ZXJzZVRvU2Vla0FycmF5cyhwYXJlbnQsIHIpIDogJyd9YFxuICAgICAgOiB0cmF2ZXJzZVRvU2Vla0FycmF5cyhwYXJlbnQsIHIpO1xuICByZXR1cm4gYXJndW1lbnRTdHJpbmc7XG59O1xuXG5cbmNvbnN0IHJlc29sdmVLViA9IChrOiBzdHJpbmcsIHY6IGJvb2xlYW4gfCBzdHJpbmcgfCB7IFt4OiBzdHJpbmddOiBib29sZWFuIHwgc3RyaW5nIH0pID0+XG4gIHR5cGVvZiB2ID09PSAnYm9vbGVhbicgPyBrIDogdHlwZW9mIHYgPT09ICdvYmplY3QnID8gYCR7a317JHtvYmplY3RUb1RyZWUodil9fWAgOiBgJHtrfSR7dn1gO1xuXG5cbmNvbnN0IG9iamVjdFRvVHJlZSA9IChvOiB7IFt4OiBzdHJpbmddOiBib29sZWFuIHwgc3RyaW5nIH0pOiBzdHJpbmcgPT5cbiAgYHske09iamVjdC5rZXlzKG8pLm1hcCgoaykgPT4gYCR7cmVzb2x2ZUtWKGssIG9ba10pfWApLmpvaW4oJyAnKX19YDtcblxuXG5jb25zdCB0cmF2ZXJzZVRvU2Vla0FycmF5cyA9IChwYXJlbnQ6IHN0cmluZ1tdLCBhPzogYW55KTogc3RyaW5nID0+IHtcbiAgaWYgKCFhKSByZXR1cm4gJyc7XG4gIGlmIChPYmplY3Qua2V5cyhhKS5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gJyc7XG4gIH1cbiAgbGV0IGI6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcbiAgaWYgKEFycmF5LmlzQXJyYXkoYSkpIHtcbiAgICByZXR1cm4gaXNBcnJheUZ1bmN0aW9uKFsuLi5wYXJlbnRdLCBhKTtcbiAgfSBlbHNlIHtcbiAgICBpZiAodHlwZW9mIGEgPT09ICdvYmplY3QnKSB7XG4gICAgICBPYmplY3Qua2V5cyhhKVxuICAgICAgICAuZmlsdGVyKChrKSA9PiB0eXBlb2YgYVtrXSAhPT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIC5mb3JFYWNoKChrKSA9PiB7XG4gICAgICAgIGlmIChrID09PSAnX19hbGlhcycpIHtcbiAgICAgICAgICBPYmplY3Qua2V5cyhhW2tdKS5mb3JFYWNoKChhbGlhc0tleSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgYWxpYXNPcGVyYXRpb25zID0gYVtrXVthbGlhc0tleV07XG4gICAgICAgICAgICBjb25zdCBhbGlhc09wZXJhdGlvbk5hbWUgPSBPYmplY3Qua2V5cyhhbGlhc09wZXJhdGlvbnMpWzBdO1xuICAgICAgICAgICAgY29uc3QgYWxpYXNPcGVyYXRpb24gPSBhbGlhc09wZXJhdGlvbnNbYWxpYXNPcGVyYXRpb25OYW1lXTtcbiAgICAgICAgICAgIGJbXG4gICAgICAgICAgICAgIGAke2FsaWFzT3BlcmF0aW9uTmFtZX1fX2FsaWFzX18ke2FsaWFzS2V5fTogJHthbGlhc09wZXJhdGlvbk5hbWV9YFxuICAgICAgICAgICAgXSA9IHRyYXZlcnNlVG9TZWVrQXJyYXlzKFsuLi5wYXJlbnQsIGFsaWFzT3BlcmF0aW9uTmFtZV0sIGFsaWFzT3BlcmF0aW9uKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBiW2tdID0gdHJhdmVyc2VUb1NlZWtBcnJheXMoWy4uLnBhcmVudCwga10sIGFba10pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgfVxuICByZXR1cm4gb2JqZWN0VG9UcmVlKGIpO1xufTsgIFxuXG5cbmNvbnN0IGJ1aWxkUXVlcnkgPSAodHlwZTogc3RyaW5nLCBhPzogUmVjb3JkPGFueSwgYW55PikgPT4gXG4gIHRyYXZlcnNlVG9TZWVrQXJyYXlzKFt0eXBlXSwgYSk7XG5cblxuY29uc3QgaW5zcGVjdFZhcmlhYmxlcyA9IChxdWVyeTogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IHJlZ2V4ID0gL1xcJFxcYlxcdypfX1pFVVNfVkFSX19cXFs/W14hXlxcXV5cXHNeLF5cXCleXFx9XSpbIV0/W1xcXV0/WyFdPy9nO1xuICBsZXQgcmVzdWx0O1xuICBjb25zdCBBbGxWYXJpYWJsZXM6IHN0cmluZ1tdID0gW107XG4gIHdoaWxlICgocmVzdWx0ID0gcmVnZXguZXhlYyhxdWVyeSkpKSB7XG4gICAgaWYgKEFsbFZhcmlhYmxlcy5pbmNsdWRlcyhyZXN1bHRbMF0pKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG4gICAgQWxsVmFyaWFibGVzLnB1c2gocmVzdWx0WzBdKTtcbiAgfVxuICBpZiAoIUFsbFZhcmlhYmxlcy5sZW5ndGgpIHtcbiAgICByZXR1cm4gcXVlcnk7XG4gIH1cbiAgbGV0IGZpbHRlcmVkUXVlcnkgPSBxdWVyeTtcbiAgQWxsVmFyaWFibGVzLmZvckVhY2goKHZhcmlhYmxlKSA9PiB7XG4gICAgd2hpbGUgKGZpbHRlcmVkUXVlcnkuaW5jbHVkZXModmFyaWFibGUpKSB7XG4gICAgICBmaWx0ZXJlZFF1ZXJ5ID0gZmlsdGVyZWRRdWVyeS5yZXBsYWNlKHZhcmlhYmxlLCB2YXJpYWJsZS5zcGxpdCgnX19aRVVTX1ZBUl9fJylbMF0pO1xuICAgIH1cbiAgfSk7XG4gIHJldHVybiBgKCR7QWxsVmFyaWFibGVzLm1hcCgoYSkgPT4gYS5zcGxpdCgnX19aRVVTX1ZBUl9fJykpXG4gICAgLm1hcCgoW3ZhcmlhYmxlTmFtZSwgdmFyaWFibGVUeXBlXSkgPT4gYCR7dmFyaWFibGVOYW1lfToke3ZhcmlhYmxlVHlwZX1gKVxuICAgIC5qb2luKCcsICcpfSkke2ZpbHRlcmVkUXVlcnl9YDtcbn07XG5cblxuZXhwb3J0IGNvbnN0IHF1ZXJ5Q29uc3RydWN0ID0gKHQ6ICdxdWVyeScgfCAnbXV0YXRpb24nIHwgJ3N1YnNjcmlwdGlvbicsIHROYW1lOiBzdHJpbmcsIG9wZXJhdGlvbk5hbWU/OiBzdHJpbmcpID0+IChvOiBSZWNvcmQ8YW55LCBhbnk+KSA9PlxuICBgJHt0LnRvTG93ZXJDYXNlKCl9JHtvcGVyYXRpb25OYW1lID8gJyAnICsgb3BlcmF0aW9uTmFtZSA6ICcnfSR7aW5zcGVjdFZhcmlhYmxlcyhidWlsZFF1ZXJ5KHROYW1lLCBvKSl9YDtcbiAgXG5cbmNvbnN0IGZ1bGxDaGFpbkNvbnN0cnVjdCA9IChmbjogRmV0Y2hGdW5jdGlvbikgPT4gKHQ6ICdxdWVyeScgfCAnbXV0YXRpb24nIHwgJ3N1YnNjcmlwdGlvbicsIHROYW1lOiBzdHJpbmcpID0+IChcbiAgbzogUmVjb3JkPGFueSwgYW55PixcbiAgb3B0aW9ucz86IE9wZXJhdGlvbk9wdGlvbnMsXG4pID0+IGZuKHF1ZXJ5Q29uc3RydWN0KHQsIHROYW1lLCBvcHRpb25zPy5vcGVyYXRpb25OYW1lKShvKSwgb3B0aW9ucz8udmFyaWFibGVzKS50aGVuKChyOmFueSkgPT4geyBcbiAgc2Vla0ZvckFsaWFzZXMocilcbiAgcmV0dXJuIHJcbn0pO1xuXG5leHBvcnQgY29uc3QgZnVsbENoYWluQ29uc3RydWN0b3IgPSA8RiBleHRlbmRzIEZldGNoRnVuY3Rpb24sIFIgZXh0ZW5kcyBrZXlvZiBWYWx1ZVR5cGVzPihcbiAgZm46IEYsXG4gIG9wZXJhdGlvbjogJ3F1ZXJ5JyB8ICdtdXRhdGlvbicgfCAnc3Vic2NyaXB0aW9uJyxcbiAga2V5OiBSLFxuKSA9PlxuICAoKG8sIG9wdGlvbnMpID0+IGZ1bGxDaGFpbkNvbnN0cnVjdChmbikob3BlcmF0aW9uLCBrZXkpKG8gYXMgYW55LCBvcHRpb25zKSkgYXMgT3BlcmF0aW9uVG9HcmFwaFFMPFxuICAgIFZhbHVlVHlwZXNbUl0sXG4gICAgR3JhcGhRTFR5cGVzW1JdXG4gID47XG5cblxuY29uc3QgZnVsbFN1YnNjcmlwdGlvbkNvbnN0cnVjdCA9IChmbjogU3Vic2NyaXB0aW9uRnVuY3Rpb24pID0+IChcbiAgdDogJ3F1ZXJ5JyB8ICdtdXRhdGlvbicgfCAnc3Vic2NyaXB0aW9uJyxcbiAgdE5hbWU6IHN0cmluZyxcbikgPT4gKG86IFJlY29yZDxhbnksIGFueT4sIG9wdGlvbnM/OiBPcGVyYXRpb25PcHRpb25zKSA9PlxuICBmbihxdWVyeUNvbnN0cnVjdCh0LCB0TmFtZSwgb3B0aW9ucz8ub3BlcmF0aW9uTmFtZSkobykpO1xuXG5leHBvcnQgY29uc3QgZnVsbFN1YnNjcmlwdGlvbkNvbnN0cnVjdG9yID0gPEYgZXh0ZW5kcyBTdWJzY3JpcHRpb25GdW5jdGlvbiwgUiBleHRlbmRzIGtleW9mIFZhbHVlVHlwZXM+KFxuICBmbjogRixcbiAgb3BlcmF0aW9uOiAncXVlcnknIHwgJ211dGF0aW9uJyB8ICdzdWJzY3JpcHRpb24nLFxuICBrZXk6IFIsXG4pID0+XG4gICgobywgb3B0aW9ucykgPT4gZnVsbFN1YnNjcmlwdGlvbkNvbnN0cnVjdChmbikob3BlcmF0aW9uLCBrZXkpKG8gYXMgYW55LCBvcHRpb25zKSkgYXMgU3Vic2NyaXB0aW9uVG9HcmFwaFFMPFxuICAgIFZhbHVlVHlwZXNbUl0sXG4gICAgR3JhcGhRTFR5cGVzW1JdXG4gID47XG5cblxuY29uc3Qgc2Vla0ZvckFsaWFzZXMgPSAocmVzcG9uc2U6IGFueSkgPT4ge1xuICBjb25zdCB0cmF2ZXJzZUFsaWFzID0gKHZhbHVlOiBhbnkpID0+IHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgIHZhbHVlLmZvckVhY2goc2Vla0ZvckFsaWFzZXMpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnb2JqZWN0Jykge1xuICAgICAgICBzZWVrRm9yQWxpYXNlcyh2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9O1xuICBpZiAodHlwZW9mIHJlc3BvbnNlID09PSAnb2JqZWN0JyAmJiByZXNwb25zZSkge1xuICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhyZXNwb25zZSk7XG4gICAgaWYgKGtleXMubGVuZ3RoIDwgMSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBrZXlzLmZvckVhY2goKGspID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gcmVzcG9uc2Vba107XG4gICAgICBpZiAoay5pbmRleE9mKCdfX2FsaWFzX18nKSAhPT0gLTEpIHtcbiAgICAgICAgY29uc3QgW29wZXJhdGlvbiwgYWxpYXNdID0gay5zcGxpdCgnX19hbGlhc19fJyk7XG4gICAgICAgIHJlc3BvbnNlW2FsaWFzXSA9IHtcbiAgICAgICAgICBbb3BlcmF0aW9uXTogdmFsdWUsXG4gICAgICAgIH07XG4gICAgICAgIGRlbGV0ZSByZXNwb25zZVtrXTtcbiAgICAgIH1cbiAgICAgIHRyYXZlcnNlQWxpYXModmFsdWUpO1xuICAgIH0pO1xuICB9XG59O1xuXG5cbmV4cG9ydCBjb25zdCAkID0gKHQ6IFRlbXBsYXRlU3RyaW5nc0FycmF5KTogYW55ID0+IGBaRVVTX1ZBUiQke3Quam9pbignJyl9YDtcblxuXG5leHBvcnQgY29uc3QgcmVzb2x2ZXJGb3IgPSA8XG4gIFQgZXh0ZW5kcyBrZXlvZiBWYWx1ZVR5cGVzLFxuICBaIGV4dGVuZHMga2V5b2YgVmFsdWVUeXBlc1tUXSxcbiAgWSBleHRlbmRzIChcbiAgICBhcmdzOiBSZXF1aXJlZDxWYWx1ZVR5cGVzW1RdPltaXSBleHRlbmRzIFtpbmZlciBJbnB1dCwgYW55XSA/IElucHV0IDogYW55LFxuICAgIHNvdXJjZTogYW55LFxuICApID0+IFogZXh0ZW5kcyBrZXlvZiBNb2RlbFR5cGVzW1RdID8gTW9kZWxUeXBlc1tUXVtaXSB8IFByb21pc2U8TW9kZWxUeXBlc1tUXVtaXT4gOiBhbnlcbj4oXG4gIGZuOiBZLFxuKSA9PiBmbiBhcyAoYXJncz86IGFueSxzb3VyY2U/OiBhbnkpID0+IGFueTtcblxuXG5jb25zdCBoYW5kbGVGZXRjaFJlc3BvbnNlID0gKFxuICByZXNwb25zZTogUGFyYW1ldGVyczxFeHRyYWN0PFBhcmFtZXRlcnM8UmV0dXJuVHlwZTx0eXBlb2YgZmV0Y2g+Wyd0aGVuJ10+WzBdLCBGdW5jdGlvbj4+WzBdXG4pOiBQcm9taXNlPEdyYXBoUUxSZXNwb25zZT4gPT4ge1xuICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChfLCByZWplY3QpID0+IHtcbiAgICAgIHJlc3BvbnNlLnRleHQoKS50aGVuKHRleHQgPT4ge1xuICAgICAgICB0cnkgeyByZWplY3QoSlNPTi5wYXJzZSh0ZXh0KSk7IH1cbiAgICAgICAgY2F0Y2ggKGVycikgeyByZWplY3QodGV4dCk7IH1cbiAgICAgIH0pLmNhdGNoKHJlamVjdCk7XG4gICAgfSk7XG4gIH1cbiAgcmV0dXJuIHJlc3BvbnNlLmpzb24oKTtcbn07XG5cbmV4cG9ydCBjb25zdCBhcGlGZXRjaCA9IChvcHRpb25zOiBmZXRjaE9wdGlvbnMpID0+IChxdWVyeTogc3RyaW5nLCB2YXJpYWJsZXM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fSkgPT4ge1xuICAgIGxldCBmZXRjaEZ1bmN0aW9uID0gZmV0Y2g7XG4gICAgbGV0IHF1ZXJ5U3RyaW5nID0gcXVlcnk7XG4gICAgbGV0IGZldGNoT3B0aW9ucyA9IG9wdGlvbnNbMV0gfHwge307XG4gICAgaWYgKGZldGNoT3B0aW9ucy5tZXRob2QgJiYgZmV0Y2hPcHRpb25zLm1ldGhvZCA9PT0gJ0dFVCcpIHtcbiAgICAgIHF1ZXJ5U3RyaW5nID0gZW5jb2RlVVJJQ29tcG9uZW50KHF1ZXJ5KTtcbiAgICAgIHJldHVybiBmZXRjaEZ1bmN0aW9uKGAke29wdGlvbnNbMF19P3F1ZXJ5PSR7cXVlcnlTdHJpbmd9YCwgZmV0Y2hPcHRpb25zKVxuICAgICAgICAudGhlbihoYW5kbGVGZXRjaFJlc3BvbnNlKVxuICAgICAgICAudGhlbigocmVzcG9uc2U6IEdyYXBoUUxSZXNwb25zZSkgPT4ge1xuICAgICAgICAgIGlmIChyZXNwb25zZS5lcnJvcnMpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBHcmFwaFFMRXJyb3IocmVzcG9uc2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBmZXRjaEZ1bmN0aW9uKGAke29wdGlvbnNbMF19YCwge1xuICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyBxdWVyeTogcXVlcnlTdHJpbmcsIHZhcmlhYmxlcyB9KSxcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczoge1xuICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nXG4gICAgICB9LFxuICAgICAgLi4uZmV0Y2hPcHRpb25zXG4gICAgfSlcbiAgICAgIC50aGVuKGhhbmRsZUZldGNoUmVzcG9uc2UpXG4gICAgICAudGhlbigocmVzcG9uc2U6IEdyYXBoUUxSZXNwb25zZSkgPT4ge1xuICAgICAgICBpZiAocmVzcG9uc2UuZXJyb3JzKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEdyYXBoUUxFcnJvcihyZXNwb25zZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgICB9KTtcbiAgfTtcbiAgXG5cbmV4cG9ydCBjb25zdCBhcGlTdWJzY3JpcHRpb24gPSAob3B0aW9uczogY2hhaW5PcHRpb25zKSA9PiAoXG4gICAgcXVlcnk6IHN0cmluZyxcbiAgKSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHF1ZXJ5U3RyaW5nID0gb3B0aW9uc1swXSArICc/cXVlcnk9JyArIGVuY29kZVVSSUNvbXBvbmVudChxdWVyeSk7XG4gICAgICBjb25zdCB3c1N0cmluZyA9IHF1ZXJ5U3RyaW5nLnJlcGxhY2UoJ2h0dHAnLCAnd3MnKTtcbiAgICAgIGNvbnN0IGhvc3QgPSAob3B0aW9ucy5sZW5ndGggPiAxICYmIG9wdGlvbnNbMV0/LndlYnNvY2tldD8uWzBdKSB8fCB3c1N0cmluZztcbiAgICAgIGNvbnN0IHdlYlNvY2tldE9wdGlvbnMgPSBvcHRpb25zWzFdPy53ZWJzb2NrZXQgfHwgW2hvc3RdO1xuICAgICAgY29uc3Qgd3MgPSBuZXcgV2ViU29ja2V0KC4uLndlYlNvY2tldE9wdGlvbnMpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgd3MsXG4gICAgICAgIG9uOiAoZTogKGFyZ3M6IGFueSkgPT4gdm9pZCkgPT4ge1xuICAgICAgICAgIHdzLm9ubWVzc2FnZSA9IChldmVudDphbnkpID0+IHtcbiAgICAgICAgICAgIGlmKGV2ZW50LmRhdGEpe1xuICAgICAgICAgICAgICBjb25zdCBwYXJzZWQgPSBKU09OLnBhcnNlKGV2ZW50LmRhdGEpXG4gICAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBwYXJzZWQuZGF0YVxuICAgICAgICAgICAgICBpZiAoZGF0YSkge1xuICAgICAgICAgICAgICAgIHNlZWtGb3JBbGlhc2VzKGRhdGEpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHJldHVybiBlKGRhdGEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH07XG4gICAgICAgIH0sXG4gICAgICAgIG9mZjogKGU6IChhcmdzOiBhbnkpID0+IHZvaWQpID0+IHtcbiAgICAgICAgICB3cy5vbmNsb3NlID0gZTtcbiAgICAgICAgfSxcbiAgICAgICAgZXJyb3I6IChlOiAoYXJnczogYW55KSA9PiB2b2lkKSA9PiB7XG4gICAgICAgICAgd3Mub25lcnJvciA9IGU7XG4gICAgICAgIH0sXG4gICAgICAgIG9wZW46IChlOiAoKSA9PiB2b2lkKSA9PiB7XG4gICAgICAgICAgd3Mub25vcGVuID0gZTtcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfSBjYXRjaCB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHdlYnNvY2tldHMgaW1wbGVtZW50ZWQnKTtcbiAgICB9XG4gIH07XG5cblxuZXhwb3J0IGNvbnN0IFRodW5kZXIgPSAoZm46IEZldGNoRnVuY3Rpb24sIHN1YnNjcmlwdGlvbkZuOiBTdWJzY3JpcHRpb25GdW5jdGlvbikgPT4gKHtcbiAgcXVlcnk6IGZ1bGxDaGFpbkNvbnN0cnVjdG9yKGZuLCdxdWVyeScsICdRdWVyeScpLFxubXV0YXRpb246IGZ1bGxDaGFpbkNvbnN0cnVjdG9yKGZuLCdtdXRhdGlvbicsICdNdXRhdGlvbicpLFxuc3Vic2NyaXB0aW9uOiBmdWxsU3Vic2NyaXB0aW9uQ29uc3RydWN0b3Ioc3Vic2NyaXB0aW9uRm4sJ3N1YnNjcmlwdGlvbicsICdTdWJzY3JpcHRpb24nKVxufSk7XG5cbmV4cG9ydCBjb25zdCBDaGFpbiA9ICguLi5vcHRpb25zOiBjaGFpbk9wdGlvbnMpID0+ICh7XG4gIHF1ZXJ5OiBmdWxsQ2hhaW5Db25zdHJ1Y3RvcihhcGlGZXRjaChvcHRpb25zKSwncXVlcnknLCAnUXVlcnknKSxcbm11dGF0aW9uOiBmdWxsQ2hhaW5Db25zdHJ1Y3RvcihhcGlGZXRjaChvcHRpb25zKSwnbXV0YXRpb24nLCAnTXV0YXRpb24nKSxcbnN1YnNjcmlwdGlvbjogZnVsbFN1YnNjcmlwdGlvbkNvbnN0cnVjdG9yKGFwaVN1YnNjcmlwdGlvbihvcHRpb25zKSwnc3Vic2NyaXB0aW9uJywgJ1N1YnNjcmlwdGlvbicpXG59KTtcbmV4cG9ydCBjb25zdCBaZXVzID0ge1xuICBxdWVyeTogKG86VmFsdWVUeXBlc1tcIlF1ZXJ5XCJdLCBvcGVyYXRpb25OYW1lPzogc3RyaW5nKSA9PiBxdWVyeUNvbnN0cnVjdCgncXVlcnknLCAnUXVlcnknLCBvcGVyYXRpb25OYW1lKShvKSxcbm11dGF0aW9uOiAobzpWYWx1ZVR5cGVzW1wiTXV0YXRpb25cIl0sIG9wZXJhdGlvbk5hbWU/OiBzdHJpbmcpID0+IHF1ZXJ5Q29uc3RydWN0KCdtdXRhdGlvbicsICdNdXRhdGlvbicsIG9wZXJhdGlvbk5hbWUpKG8pLFxuc3Vic2NyaXB0aW9uOiAobzpWYWx1ZVR5cGVzW1wiU3Vic2NyaXB0aW9uXCJdLCBvcGVyYXRpb25OYW1lPzogc3RyaW5nKSA9PiBxdWVyeUNvbnN0cnVjdCgnc3Vic2NyaXB0aW9uJywgJ1N1YnNjcmlwdGlvbicsIG9wZXJhdGlvbk5hbWUpKG8pXG59O1xuZXhwb3J0IGNvbnN0IFNlbGVjdG9ycyA9IHtcbiAgcXVlcnk6IFpldXNTZWxlY3Q8VmFsdWVUeXBlc1tcIlF1ZXJ5XCJdPigpLFxubXV0YXRpb246IFpldXNTZWxlY3Q8VmFsdWVUeXBlc1tcIk11dGF0aW9uXCJdPigpLFxuc3Vic2NyaXB0aW9uOiBaZXVzU2VsZWN0PFZhbHVlVHlwZXNbXCJTdWJzY3JpcHRpb25cIl0+KClcbn07XG4gIFxuXG5leHBvcnQgY29uc3QgR3FsID0gQ2hhaW4oJ2h0dHBzOi8vYXBpLmRldi5zZWNyZWN5Lm1lL2dyYXBocWwnKVxuIl19
|
|
548
|
+
export var Gql = Chain('http://localhost:4000/graphql');
|
|
549
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy96ZXVzL2luZGV4LnRzIl0sIm5hbWVzIjpbIkFsbFR5cGVzUHJvcHMiLCJSZXR1cm5UeXBlcyIsIkxhbmciLCJQbGFuS2luZCIsIlVzZXJSb2xlIiwiTWFpbFR5cGUiLCJSaWdodHMiLCJGaWxlQ29udGVudFR5cGUiLCJQYXlJbnB1dFR5cGUiLCJHcmFwaFFMRXJyb3IiLCJyZXNwb25zZSIsImNvbnNvbGUiLCJlcnJvciIsInRvU3RyaW5nIiwiRXJyb3IiLCJaZXVzU2VsZWN0IiwidCIsIlNjYWxhclJlc29sdmVyIiwic2NhbGFyIiwidmFsdWUiLCJKU09OIiwic3RyaW5naWZ5IiwiVHlwZXNQcm9wc1Jlc29sdmVyIiwidHlwZSIsIm5hbWUiLCJrZXkiLCJibG9ja0FycmF5cyIsInJlc29sdmVkVmFsdWUiLCJ0eXBlUmVzb2x2ZWQiLCJpc0FycmF5IiwiYXJyYXkiLCJpc0FycmF5UmVxdWlyZWQiLCJhcnJheVJlcXVpcmVkIiwic3RhcnRzV2l0aCIsImlzUmVxdWlyZWQiLCJyZXF1aXJlZCIsInNwbGl0IiwibWFwIiwidiIsImpvaW4iLCJyZXNsb3ZlZFNjYWxhciIsInJlc29sdmVkVHlwZSIsImFyZ3NLZXlzIiwiT2JqZWN0Iiwia2V5cyIsImZpbHRlciIsImFrIiwidW5kZWZpbmVkIiwiaXNBcnJheUZ1bmN0aW9uIiwicGFyZW50IiwiYSIsInZhbHVlcyIsInIiLCJtYWluS2V5Iiwia2V5VmFsdWVzIiwiayIsImxlbmd0aCIsInRyYXZlcnNlVG9TZWVrQXJyYXlzIiwic3BsaWNlIiwidHlwZVJlc29sdmVyS2V5IiwidmFsdWVUb1Jlc29sdmUiLCJhcmd1bWVudFN0cmluZyIsInJlc29sdmVLViIsIm9iamVjdFRvVHJlZSIsIm8iLCJiIiwiQXJyYXkiLCJmb3JFYWNoIiwiYWxpYXNLZXkiLCJhbGlhc09wZXJhdGlvbnMiLCJhbGlhc09wZXJhdGlvbk5hbWUiLCJhbGlhc09wZXJhdGlvbiIsImJ1aWxkUXVlcnkiLCJpbnNwZWN0VmFyaWFibGVzIiwicXVlcnkiLCJyZWdleCIsInJlc3VsdCIsIkFsbFZhcmlhYmxlcyIsImV4ZWMiLCJpbmNsdWRlcyIsInB1c2giLCJmaWx0ZXJlZFF1ZXJ5IiwidmFyaWFibGUiLCJyZXBsYWNlIiwidmFyaWFibGVOYW1lIiwidmFyaWFibGVUeXBlIiwicXVlcnlDb25zdHJ1Y3QiLCJ0TmFtZSIsIm9wZXJhdGlvbk5hbWUiLCJ0b0xvd2VyQ2FzZSIsImZ1bGxDaGFpbkNvbnN0cnVjdCIsImZuIiwib3B0aW9ucyIsInZhcmlhYmxlcyIsInRoZW4iLCJzZWVrRm9yQWxpYXNlcyIsImZ1bGxTdWJzY3JpcHRpb25Db25zdHJ1Y3QiLCJ0cmF2ZXJzZUFsaWFzIiwiaW5kZXhPZiIsIm9wZXJhdGlvbiIsImFsaWFzIiwiJCIsInJlc29sdmVyRm9yIiwiX3R5cGUiLCJfZmllbGQiLCJoYW5kbGVGZXRjaFJlc3BvbnNlIiwib2siLCJQcm9taXNlIiwiXyIsInJlamVjdCIsInRleHQiLCJwYXJzZSIsImVyciIsImNhdGNoIiwianNvbiIsImFwaUZldGNoIiwiZmV0Y2hGdW5jdGlvbiIsImZldGNoIiwicXVlcnlTdHJpbmciLCJmZXRjaE9wdGlvbnMiLCJtZXRob2QiLCJlbmNvZGVVUklDb21wb25lbnQiLCJlcnJvcnMiLCJkYXRhIiwiYm9keSIsImhlYWRlcnMiLCJhcGlTdWJzY3JpcHRpb24iLCJ3c1N0cmluZyIsImhvc3QiLCJ3ZWJzb2NrZXQiLCJ3ZWJTb2NrZXRPcHRpb25zIiwid3MiLCJXZWJTb2NrZXQiLCJvbiIsImUiLCJvbm1lc3NhZ2UiLCJldmVudCIsInBhcnNlZCIsIm9mZiIsIm9uY2xvc2UiLCJvbmVycm9yIiwib3BlbiIsIm9ub3BlbiIsImFsbE9wZXJhdGlvbnMiLCJUaHVuZGVyIiwib3BzIiwiQ2hhaW4iLCJTdWJzY3JpcHRpb25UaHVuZGVyIiwiU3Vic2NyaXB0aW9uIiwiWmV1cyIsIlNlbGVjdG9yIiwiX2tleSIsIkdxbCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFFQSxTQUFT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QXJCO0FBQ1AsT0FBTyxJQUFNeUQsSUFBSSxHQUFHLFNBQVBBLElBQU8sQ0FLbEJsRCxTQUxrQixFQU1sQm5DLENBTmtCLEVBT2xCd0IsYUFQa0I7QUFBQSxTQVFmRixjQUFjLENBQUNhLFNBQUQsRUFBWTRDLGFBQWEsQ0FBQzVDLFNBQUQsQ0FBekIsRUFBc0NYLGFBQXRDLENBQWQsQ0FBbUV4QixDQUFuRSxDQVJlO0FBQUEsQ0FBYjtBQVNQLE9BQU8sSUFBTXNGLFFBQVEsR0FBRyxTQUFYQSxRQUFXLENBQTZCQyxJQUE3QjtBQUFBLFNBQXlDeEksVUFBVSxFQUFuRDtBQUFBLENBQWpCO0FBR1AsT0FBTyxJQUFNeUksR0FBRyxHQUFHTixLQUFLLENBQUMsK0JBQUQsQ0FBakIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSAqL1xuXG5pbXBvcnQgeyBBbGxUeXBlc1Byb3BzLCBSZXR1cm5UeXBlcyB9IGZyb20gJy4vY29uc3QuanMnO1xudHlwZSBaRVVTX0lOVEVSRkFDRVMgPSBHcmFwaFFMVHlwZXNbXCJGaWxlQ29udGVudEJhc2VcIl1cbnR5cGUgWkVVU19VTklPTlMgPSBHcmFwaFFMVHlwZXNbXCJGaWxlQ29udGVudFwiXVxuXG5leHBvcnQgdHlwZSBWYWx1ZVR5cGVzID0ge1xuICAgIC8qKiBUaGUgYEJpZ0ludGAgc2NhbGFyIHR5cGUgcmVwcmVzZW50cyBub24tZnJhY3Rpb25hbCBzaWduZWQgd2hvbGUgbnVtZXJpYyB2YWx1ZXMuXG5Ac2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL0JpZ0ludCAqL1xuW1wiQmlnSW50XCJdOnVua25vd247XG5cdC8qKiBUaGUgYEJ5dGVgIHNjYWxhciB0eXBlIHJlcHJlc2VudHMgYnl0ZSB2YWx1ZSBhcyBhIEJ1ZmZlciAqL1xuW1wiQnl0ZXNcIl06dW5rbm93bjtcblx0LyoqIEEgZGF0ZS10aW1lIHN0cmluZyBhdCBVVEMsIHN1Y2ggYXMgMjAwNy0xMi0wM1QxMDoxNTozMFosIGNvbXBsaWFudCB3aXRoIHRoZSBgZGF0ZS10aW1lYCBmb3JtYXQgb3V0bGluZWQgaW4gc2VjdGlvbiA1LjYgb2YgdGhlIFJGQyAzMzM5IHByb2ZpbGUgb2YgdGhlIElTTyA4NjAxIHN0YW5kYXJkIGZvciByZXByZXNlbnRhdGlvbiBvZiBkYXRlcyBhbmQgdGltZXMgdXNpbmcgdGhlIEdyZWdvcmlhbiBjYWxlbmRhci4gKi9cbltcIkRhdGVUaW1lXCJdOnVua25vd247XG5cdC8qKiBBbiBhcmJpdHJhcnktcHJlY2lzaW9uIERlY2ltYWwgdHlwZSAqL1xuW1wiRGVjaW1hbFwiXTp1bmtub3duO1xuXHQvKiogVGhlIGBKU09OT2JqZWN0YCBzY2FsYXIgdHlwZSByZXByZXNlbnRzIEpTT04gb2JqZWN0cyBhcyBzcGVjaWZpZWQgYnkgW0VDTUEtNDA0XShodHRwOi8vd3d3LmVjbWEtaW50ZXJuYXRpb25hbC5vcmcvcHVibGljYXRpb25zL2ZpbGVzL0VDTUEtU1QvRUNNQS00MDQucGRmKS4gKi9cbltcIkpzb25cIl06dW5rbm93bjtcblx0W1wiTGFuZ1wiXTpMYW5nO1xuXHRbXCJQbGFuS2luZFwiXTpQbGFuS2luZDtcblx0W1wiVXNlclJvbGVcIl06VXNlclJvbGU7XG5cdFtcIk1haWxUeXBlXCJdOk1haWxUeXBlO1xuXHRbXCJSaWdodHNcIl06UmlnaHRzO1xuXHRbXCJBcHBLZXlQYWlyXCJdOiBBbGlhc1R5cGU8e1xuXHRwdWI/OmJvb2xlYW4sXG5cdFx0X190eXBlbmFtZT86IGJvb2xlYW5cbn0+O1xuXHRbXCJBcHBTZXNzaW9uXCJdOiBBbGlhc1R5cGU8e1xuXHRpZD86Ym9vbGVhbixcblx0bGFzdEFjdGl2aXR5Pzpib29sZWFuLFxuXHR1c2VyQWdlbnQ/OmJvb2xlYW4sXG5cdGlwPzpib29sZWFuLFxuXHRjaXR5Pzpib29sZWFuLFxuXHRjb3VudHJ5Pzpib29sZWFuLFxuXHR1c2VyU2Vzc2lvbj86VmFsdWVUeXBlc1tcIlVzZXJTZXNzaW9uXCJdLFxuXHR1c2VyQXBwPzpWYWx1ZVR5cGVzW1wiQXBwbGljYXRpb25zT25Vc2Vyc1wiXSxcblx0Y3JlYXRlZEF0Pzpib29sZWFuLFxuXHRcdF9fdHlwZW5hbWU/OiBib29sZWFuXG59Pjtcblx0W1wiQXBwbGljYXRpb25cIl06IEFsaWFzVHlwZTx7XG5cdGlkPzpib29sZWFuLFxuXHRuYW1lPzpib29sZWFuLFxuXHRcdF9fdHlwZW5hbWU/OiBib29sZWFuXG59Pjtcblx0W1wiQXBwbGljYXRpb25zT25Vc2Vyc1wiXTogQWxpYXNUeXBlPHtcblx0ZmFrZVVzZXJJZD86Ym9vbGVhbixcblx0a2V5UGFpcj86VmFsdWVUeXBlc1tcIkFwcEtleVBhaXJcIl0sXG5cdHNlc3Npb25zPzpWYWx1ZVR5cGVzW1wiQXBwU2Vzc2lvblwiXSxcblx0YXBwPzpWYWx1ZVR5cGVzW1wiQXBwbGljYXRpb25cIl0sXG5cdHVzZXI/OlZhbHVlVHlwZXNbXCJVc2VyXCJdLFxuXHRmb2xkZXJzPzpWYWx1ZVR5cGVzW1wiRm9sZGVyc09uVXNlcnNPbkFwcGxpY2F0aW9uc1wiXSxcblx0c2V0dGluZ3M/OlZhbHVlVHlwZXNbXCJVc2VyQXBwU2V0dGluZ3NcIl0sXG5cdFx0X190eXBlbmFtZT86IGJvb2xlYW5cbn0+O1xuXHRbXCJCbG9nXCJdOiBBbGlhc1R5cGU8e1xuXHRpZD86Ym9vbGVhbixcblx0b3JkZXI/OmJvb2xlYW4sXG5cdGVudHJpZXM/OlZhbHVlVHlwZXNbXCJCbG9nRW50cnlcIl0sXG5cdFx0X190eXBlbmFtZT86IGJvb2xlYW5cbn0+O1xuXHRbXCJCbG9nRW50cnlcIl06IEFsaWFzVHlwZTx7XG5cdGlkPzpib29sZWFuLFxuXHRsYW5nPzpib29sZWFuLFxuXHRhdXRob3I/OmJvb2xlYW4sXG5cdGJvZHk/OmJvb2xlYW4sXG5cdGRhdGU/OmJvb2xlYW4sXG5cdGltYWdlPzpib29sZWFuLFxuXHRzdW1tYXJ5Pzpib29sZWFuLFxuXHR0aXRsZT86Ym9vbGVhbixcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIkJsb2dJdGVtXCJdOiBBbGlhc1R5cGU8e1xuXHRpZD86Ym9vbGVhbixcblx0YmxvZ0lkPzpib29sZWFuLFxuXHRvcmRlcj86Ym9vbGVhbixcblx0dGl0bGU/OmJvb2xlYW4sXG5cdGJvZHk/OmJvb2xlYW4sXG5cdGF1dGhvcj86Ym9vbGVhbixcblx0aW1hZ2U/OmJvb2xlYW4sXG5cdGltYWdlQWx0Pzpib29sZWFuLFxuXHRzdW1tYXJ5Pzpib29sZWFuLFxuXHRkYXRlPzpib29sZWFuLFxuXHRcdF9fdHlwZW5hbWU/OiBib29sZWFuXG59Pjtcblx0W1wiQ2xvdWRMaW1pdHNcIl06IEFsaWFzVHlwZTx7XG5cdHNpemU/OmJvb2xlYW4sXG5cdG1heFNpemU/OmJvb2xlYW4sXG5cdGNvdW50Pzpib29sZWFuLFxuXHRtYXhDb3VudD86Ym9vbGVhbixcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIkZhcVwiXTogQWxpYXNUeXBlPHtcblx0aWQ/OmJvb2xlYW4sXG5cdG9yZGVyPzpib29sZWFuLFxuXHRlbnRyaWVzPzpWYWx1ZVR5cGVzW1wiRmFxRW50cnlcIl0sXG5cdFx0X190eXBlbmFtZT86IGJvb2xlYW5cbn0+O1xuXHRbXCJGYXFFbnRyeVwiXTogQWxpYXNUeXBlPHtcblx0aWQ/OmJvb2xlYW4sXG5cdGxhbmc/OmJvb2xlYW4sXG5cdHF1ZXN0aW9uPzpib29sZWFuLFxuXHRhbnN3ZXI/OmJvb2xlYW4sXG5cdGZhcT86VmFsdWVUeXBlc1tcIkZhcVwiXSxcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIkZhcUl0ZW1cIl06IEFsaWFzVHlwZTx7XG5cdG9yZGVyPzpib29sZWFuLFxuXHRxdWVzdGlvbj86Ym9vbGVhbixcblx0YW5zd2VyPzpib29sZWFuLFxuXHRcdF9fdHlwZW5hbWU/OiBib29sZWFuXG59Pjtcblx0W1wiRmlsZVwiXTogQWxpYXNUeXBlPHtcblx0aWQ/OmJvb2xlYW4sXG5cdHNpemU/OmJvb2xlYW4sXG5cdHNpemVCZWZvcmU/OmJvb2xlYW4sXG5cdGNyZWF0ZWRBdD86Ym9vbGVhbixcblx0dkZpbGVzPzpWYWx1ZVR5cGVzW1wiVkZpbGVcIl0sXG5cdHZGaWxlc0N1cnJlbnQ/OlZhbHVlVHlwZXNbXCJWRmlsZVwiXSxcblx0dXNlcnM/OlZhbHVlVHlwZXNbXCJGaWxlc09uVXNlcnNPbkFwcGxpY2F0aW9uc1wiXSxcblx0bWQ1Pzpib29sZWFuLFxuXHRtZDVFbmNyeXB0ZWQ/OmJvb2xlYW4sXG5cdGRlbGV0ZWRBdD86Ym9vbGVhbixcblx0dXNlckFwcD86VmFsdWVUeXBlc1tcIkFwcGxpY2F0aW9uc09uVXNlcnNcIl0sXG5cdG1haWxzPzpWYWx1ZVR5cGVzW1wiRmlsZXNPbk1haWxzXCJdLFxuXHR2YWxpZGF0ZWRBdD86Ym9vbGVhbixcblx0dXNlcj86VmFsdWVUeXBlc1tcIkZpbGVzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdLFxuXHRcdF9fdHlwZW5hbWU/OiBib29sZWFuXG59Pjtcblx0W1wiRmlsZUNvbnRlbnRcIl06IEFsaWFzVHlwZTx7XHRcdFtcIi4uLm9uIEZpbGVDb250ZW50Q2xvdWRcIl0gOiBWYWx1ZVR5cGVzW1wiRmlsZUNvbnRlbnRDbG91ZFwiXSxcblx0XHRbXCIuLi5vbiBGaWxlQ29udGVudFJlY2VpdmVkTWFpbFwiXSA6IFZhbHVlVHlwZXNbXCJGaWxlQ29udGVudFJlY2VpdmVkTWFpbFwiXSxcblx0XHRbXCIuLi5vbiBGaWxlQ29udGVudFNlbnRNYWlsXCJdIDogVmFsdWVUeXBlc1tcIkZpbGVDb250ZW50U2VudE1haWxcIl1cblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIkZpbGVDb250ZW50QmFzZVwiXTpBbGlhc1R5cGU8e1xuXHRcdHBhcnRzPzpWYWx1ZVR5cGVzW1wiRmlsZUNvbnRlbnRQYXJ0XCJdLFxuXHRrZXk/OmJvb2xlYW4sXG5cdG1kNT86Ym9vbGVhbixcblx0bWQ1RW5jcnlwdGVkPzpib29sZWFuLFxuXHR0b3RhbFNpemU/OmJvb2xlYW4sXG5cdHR5cGU/OmJvb2xlYW47XG5cdFx0WycuLi5vbiBGaWxlQ29udGVudENsb3VkJ10/OiBPbWl0PFZhbHVlVHlwZXNbXCJGaWxlQ29udGVudENsb3VkXCJdLGtleW9mIFZhbHVlVHlwZXNbXCJGaWxlQ29udGVudEJhc2VcIl0+O1xuXHRcdFsnLi4ub24gRmlsZUNvbnRlbnRSZWNlaXZlZE1haWwnXT86IE9taXQ8VmFsdWVUeXBlc1tcIkZpbGVDb250ZW50UmVjZWl2ZWRNYWlsXCJdLGtleW9mIFZhbHVlVHlwZXNbXCJGaWxlQ29udGVudEJhc2VcIl0+O1xuXHRcdFsnLi4ub24gRmlsZUNvbnRlbnRTZW50TWFpbCddPzogT21pdDxWYWx1ZVR5cGVzW1wiRmlsZUNvbnRlbnRTZW50TWFpbFwiXSxrZXlvZiBWYWx1ZVR5cGVzW1wiRmlsZUNvbnRlbnRCYXNlXCJdPjtcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIkZpbGVDb250ZW50Q2xvdWRcIl06IEFsaWFzVHlwZTx7XG5cdHBhcnRzPzpWYWx1ZVR5cGVzW1wiRmlsZUNvbnRlbnRQYXJ0XCJdLFxuXHRrZXk/OmJvb2xlYW4sXG5cdG1kNT86Ym9vbGVhbixcblx0bWQ1RW5jcnlwdGVkPzpib29sZWFuLFxuXHR0b3RhbFNpemU/OmJvb2xlYW4sXG5cdHR5cGU/OmJvb2xlYW4sXG5cdHB1YmxpY0tleT86Ym9vbGVhbixcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIkZpbGVDb250ZW50UGFydFwiXTogQWxpYXNUeXBlPHtcblx0Y29udGVudFVybD86Ym9vbGVhbixcblx0b3JkZXI/OmJvb2xlYW4sXG5cdG1kNT86Ym9vbGVhbixcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIkZpbGVDb250ZW50UmVjZWl2ZWRNYWlsXCJdOiBBbGlhc1R5cGU8e1xuXHRwYXJ0cz86VmFsdWVUeXBlc1tcIkZpbGVDb250ZW50UGFydFwiXSxcblx0a2V5Pzpib29sZWFuLFxuXHRtZDU/OmJvb2xlYW4sXG5cdG1kNUVuY3J5cHRlZD86Ym9vbGVhbixcblx0dG90YWxTaXplPzpib29sZWFuLFxuXHR0eXBlPzpib29sZWFuLFxuXHRzZW5kZXJQdWJsaWNLZXk/OmJvb2xlYW4sXG5cdFx0X190eXBlbmFtZT86IGJvb2xlYW5cbn0+O1xuXHRbXCJGaWxlQ29udGVudFNlbnRNYWlsXCJdOiBBbGlhc1R5cGU8e1xuXHRwYXJ0cz86VmFsdWVUeXBlc1tcIkZpbGVDb250ZW50UGFydFwiXSxcblx0a2V5Pzpib29sZWFuLFxuXHRtZDU/OmJvb2xlYW4sXG5cdG1kNUVuY3J5cHRlZD86Ym9vbGVhbixcblx0dG90YWxTaXplPzpib29sZWFuLFxuXHR0eXBlPzpib29sZWFuLFxuXHRcdF9fdHlwZW5hbWU/OiBib29sZWFuXG59Pjtcblx0W1wiRmlsZUNvbnRlbnRUeXBlXCJdOkZpbGVDb250ZW50VHlwZTtcblx0W1wiRmlsZVBhcnRcIl06IEFsaWFzVHlwZTx7XG5cdGlkPzpib29sZWFuLFxuXHRmaWxlPzpWYWx1ZVR5cGVzW1wiRmlsZVwiXSxcblx0ZmlsZUlkPzpib29sZWFuLFxuXHRzaXplPzpib29sZWFuLFxuXHRvcmRlcj86Ym9vbGVhbixcblx0bWQ1Pzpib29sZWFuLFxuXHR2YWxpZGF0ZWRBdD86Ym9vbGVhbixcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIkZpbGVQYXJ0UmVzcG9uc2VcIl06IEFsaWFzVHlwZTx7XG5cdGZpZWxkcz86Ym9vbGVhbixcblx0dXJsPzpib29sZWFuLFxuXHRvcmRlcj86Ym9vbGVhbixcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIkZpbGVSZXNwb25zZVwiXTogQWxpYXNUeXBlPHtcblx0ZmlsZUlkPzpib29sZWFuLFxuXHRwYXJ0cz86VmFsdWVUeXBlc1tcIkZpbGVQYXJ0UmVzcG9uc2VcIl0sXG5cdGZpbGVQYXJ0U2l6ZT86Ym9vbGVhbixcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIkZpbGVTaGFyZWRcIl06IEFsaWFzVHlwZTx7XG5cdHVzZXJJZD86Ym9vbGVhbixcblx0bWVzc2FnZT86Ym9vbGVhbixcblx0YXBwSWQ/OmJvb2xlYW4sXG5cdGlkPzpib29sZWFuLFxuXHRmaWxlbmFtZT86Ym9vbGVhbixcblx0c2l6ZT86Ym9vbGVhbixcblx0c2l6ZUJlZm9yZT86Ym9vbGVhbixcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIkZpbGVTaGFyZWRDb250ZW50XCJdOiBBbGlhc1R5cGU8e1xuXHRvd25lcklkPzpib29sZWFuLFxuXHRwdWJLZXk/OmJvb2xlYW4sXG5cdG1lc3NhZ2U/OmJvb2xlYW4sXG5cdGFwcElkPzpib29sZWFuLFxuXHRpZD86Ym9vbGVhbixcblx0dHlwZT86Ym9vbGVhbixcblx0ZmlsZW5hbWU/OmJvb2xlYW4sXG5cdGNvbnRlbnRVcmw/OmJvb2xlYW4sXG5cdGtleT86Ym9vbGVhbixcblx0c2l6ZT86Ym9vbGVhbixcblx0c2l6ZUJlZm9yZT86Ym9vbGVhbixcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIkZpbGVzT25NYWlsc1wiXTogQWxpYXNUeXBlPHtcblx0ZmlsZT86VmFsdWVUeXBlc1tcIkZpbGVcIl0sXG5cdGZpbGVLZXk/OmJvb2xlYW4sXG5cdGZpbGVuYW1lPzpib29sZWFuLFxuXHRtYWlsPzpWYWx1ZVR5cGVzW1wiTWFpbFwiXSxcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIkZpbGVzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdOiBBbGlhc1R5cGU8e1xuXHRmaWxlPzpWYWx1ZVR5cGVzW1wiRmlsZVwiXSxcblx0dXNlckFwcD86VmFsdWVUeXBlc1tcIkFwcGxpY2F0aW9uc09uVXNlcnNcIl0sXG5cdC8qKiBFbmNyeXB0ZWQgd2l0aCBVc2VyQXBwIGtleXMgKi9cblx0a2V5Pzpib29sZWFuLFxuXHRcdF9fdHlwZW5hbWU/OiBib29sZWFuXG59Pjtcblx0W1wiRm9sZGVyXCJdOiBBbGlhc1R5cGU8e1xuXHRpZD86Ym9vbGVhbixcblx0aXNGYXZvcml0ZT86Ym9vbGVhbixcblx0Y3JlYXRlZEF0Pzpib29sZWFuLFxuXHRkZWxldGVkQXQ/OmJvb2xlYW4sXG5cdHVwZGF0ZWRBdD86Ym9vbGVhbixcblx0Y3JlYXRlZEJ5PzpWYWx1ZVR5cGVzW1wiQXBwbGljYXRpb25zT25Vc2Vyc1wiXSxcblx0dXNlckFwcHM/OlZhbHVlVHlwZXNbXCJGb2xkZXJzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdLFxuXHR1c2VyQXBwPzpWYWx1ZVR5cGVzW1wiRm9sZGVyc09uVXNlcnNPbkFwcGxpY2F0aW9uc1wiXSxcblx0bmFtZT86Ym9vbGVhbixcblx0cGFyZW50Rm9sZGVyPzpWYWx1ZVR5cGVzW1wiRm9sZGVyXCJdLFxuXHRzdWJmb2xkZXJzPzpWYWx1ZVR5cGVzW1wiRm9sZGVyXCJdLFxuXHR2RmlsZXM/OlZhbHVlVHlwZXNbXCJWRmlsZVwiXSxcblx0YnJlYWRjcnVtYj86VmFsdWVUeXBlc1tcIkZvbGRlckJyZWFkY3J1bWJJdGVtXCJdLFxuXHRcdF9fdHlwZW5hbWU/OiBib29sZWFuXG59Pjtcblx0W1wiRm9sZGVyQnJlYWRjcnVtYkl0ZW1cIl06IEFsaWFzVHlwZTx7XG5cdGlkPzpib29sZWFuLFxuXHRuYW1lPzpib29sZWFuLFxuXHRwdWJLZXk/OmJvb2xlYW4sXG5cdG5hbWVLZXk/OmJvb2xlYW4sXG5cdFx0X190eXBlbmFtZT86IGJvb2xlYW5cbn0+O1xuXHRbXCJGb2xkZXJTaXplXCJdOiBBbGlhc1R5cGU8e1xuXHRzaXplPzpib29sZWFuLFxuXHRzaXplQmVmb3JlPzpib29sZWFuLFxuXHRcdF9fdHlwZW5hbWU/OiBib29sZWFuXG59Pjtcblx0W1wiRm9sZGVyc09uVXNlcnNPbkFwcGxpY2F0aW9uc1wiXTogQWxpYXNUeXBlPHtcblx0Zm9sZGVyPzpWYWx1ZVR5cGVzW1wiRm9sZGVyXCJdLFxuXHR1c2VyQXBwPzpWYWx1ZVR5cGVzW1wiQXBwbGljYXRpb25zT25Vc2Vyc1wiXSxcblx0cmlnaHRzPzpib29sZWFuLFxuXHRuYW1lS2V5Pzpib29sZWFuLFxuXHRpc1Jvb3Q/OmJvb2xlYW4sXG5cdFx0X190eXBlbmFtZT86IGJvb2xlYW5cbn0+O1xuXHRbXCJNYWlsRmlsZUlucHV0XCJdOiB7XG5cdGlkOnN0cmluZyxcblx0bmFtZTpzdHJpbmcsXG5cdGZpbGVLZXk6c3RyaW5nXG59O1xuXHRbXCJNYWlsUmVjaXBpZW50SW5wdXRcIl06IHtcblx0Ym9keTpzdHJpbmcsXG5cdHN1YmplY3Q6c3RyaW5nLFxuXHRyZWNpcGllbnRJZDpzdHJpbmcsXG5cdGZpbGVzOlZhbHVlVHlwZXNbXCJNYWlsRmlsZUlucHV0XCJdW11cbn07XG5cdFtcIk5hbWVLZXlJbnB1dFwiXToge1xuXHRpZDpzdHJpbmcsXG5cdG5hbWVLZXk6c3RyaW5nLFxuXHRmaWxlczpWYWx1ZVR5cGVzW1wiU2hhcmVGaWxlS2V5SW5wdXRcIl1bXVxufTtcblx0W1wiTmFtZUtleUlucHV0Rm9sZGVyc1wiXToge1xuXHRpZDpzdHJpbmcsXG5cdG5hbWVLZXk6c3RyaW5nXG59O1xuXHRbXCJQYXlJbnB1dFwiXToge1xuXHR0eXBlOlZhbHVlVHlwZXNbXCJQYXlJbnB1dFR5cGVcIl0sXG5cdHRva2VuOnN0cmluZyxcblx0Zmlyc3ROYW1lOnN0cmluZyxcblx0bGFzdE5hbWU6c3RyaW5nLFxuXHRzdHJlZXQ6c3RyaW5nLFxuXHRwb3N0YWxDb2RlOnN0cmluZyxcblx0Y2l0eTpzdHJpbmcsXG5cdGNvdW50cnk6c3RyaW5nLFxuXHRudW1iZXI6c3RyaW5nLFxuXHRtb250aDpzdHJpbmcsXG5cdHllYXI6c3RyaW5nLFxuXHRjdnY6c3RyaW5nXG59O1xuXHRbXCJQYXlJbnB1dFR5cGVcIl06UGF5SW5wdXRUeXBlO1xuXHRbXCJTaGFyZUZpbGVJbkhpc3RvcnlJbnB1dFwiXToge1xuXHRmaWxlSWQ6c3RyaW5nLFxuXHR1c2VyczpWYWx1ZVR5cGVzW1wiU2hhcmVGaWxlS2V5SW5wdXRcIl1bXVxufTtcblx0W1wiU2hhcmVGaWxlS2V5SW5wdXRcIl06IHtcblx0aWQ6c3RyaW5nLFxuXHRrZXk6c3RyaW5nXG59O1xuXHRbXCJTaGFyZUZvbGRlcnNJbnB1dFwiXToge1xuXHRmb2xkZXJzOlZhbHVlVHlwZXNbXCJOYW1lS2V5SW5wdXRGb2xkZXJzXCJdW10sXG5cdHZGaWxlczpWYWx1ZVR5cGVzW1wiTmFtZUtleUlucHV0XCJdW11cbn07XG5cdFtcIkxpbWl0c1wiXTogQWxpYXNUeXBlPHtcblx0ZG93bmxvYWRCYW5kd2lkdGg/OmJvb2xlYW4sXG5cdGRvd25sb2FkQ291bnQ/OmJvb2xlYW4sXG5cdGhhcmRGaWxlQ291bnQ/OmJvb2xlYW4sXG5cdGhhcmRGaWxlU2l6ZT86Ym9vbGVhbixcblx0cGVyRmlsZVNpemU/OmJvb2xlYW4sXG5cdHJlY2VpdmVkTWFpbHM/OlZhbHVlVHlwZXNbXCJNYWlsTGltaXRzXCJdLFxuXHRzZW50TWFpbHM/OlZhbHVlVHlwZXNbXCJNYWlsTGltaXRzXCJdLFxuXHR1cGxvYWRCYW5kd2lkdGg/OmJvb2xlYW4sXG5cdHVwbG9hZENvdW50Pzpib29sZWFuLFxuXHRcdF9fdHlwZW5hbWU/OiBib29sZWFuXG59Pjtcblx0W1wiTWFpbExpbWl0c1wiXTogQWxpYXNUeXBlPHtcblx0Y291bnQ/OmJvb2xlYW4sXG5cdGZpbGVDb3VudD86Ym9vbGVhbixcblx0ZmlsZVNpemU/OmJvb2xlYW4sXG5cdGhhcmRDb3VudD86Ym9vbGVhbixcblx0aGFyZEZpbGVDb3VudD86Ym9vbGVhbixcblx0aGFyZEZpbGVTaXplPzpib29sZWFuLFxuXHRwZXJGaWxlU2l6ZT86Ym9vbGVhbixcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIk1haWxMaW1pdHNWYWx1ZXNcIl06IEFsaWFzVHlwZTx7XG5cdGNvdW50Pzpib29sZWFuLFxuXHRtYXhDb3VudD86Ym9vbGVhbixcblx0ZmlsZUNvdW50Pzpib29sZWFuLFxuXHRtYXhGaWxlQ291bnQ/OmJvb2xlYW4sXG5cdGZpbGVTaXplPzpib29sZWFuLFxuXHRtYXhGaWxlU2l6ZT86Ym9vbGVhbixcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIlF1ZXJ5TGltaXRzXCJdOiBBbGlhc1R5cGU8e1xuXHRjbG91ZD86VmFsdWVUeXBlc1tcIkNsb3VkTGltaXRzXCJdLFxuXHRtYWlsPzpWYWx1ZVR5cGVzW1wiVXNlck1haWxMaW1pdHNcIl0sXG5cdFx0X190eXBlbmFtZT86IGJvb2xlYW5cbn0+O1xuXHRbXCJVc2VyTWFpbExpbWl0c1wiXTogQWxpYXNUeXBlPHtcblx0c2VudD86VmFsdWVUeXBlc1tcIk1haWxMaW1pdHNWYWx1ZXNcIl0sXG5cdHJlY2VpdmVkPzpWYWx1ZVR5cGVzW1wiTWFpbExpbWl0c1ZhbHVlc1wiXSxcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIk1haWxcIl06IEFsaWFzVHlwZTx7XG5cdGlkPzpib29sZWFuLFxuXHRhcHA/OlZhbHVlVHlwZXNbXCJBcHBsaWNhdGlvblwiXSxcblx0Ym9keT86Ym9vbGVhbixcblx0Y3JlYXRlZEF0Pzpib29sZWFuLFxuXHRkZWxldGVkQXQ/OmJvb2xlYW4sXG5cdGZpbGVzPzpWYWx1ZVR5cGVzW1wiRmlsZXNPbk1haWxzXCJdLFxuXHRtYWlsSW50ZWdyaXR5PzpWYWx1ZVR5cGVzW1wiTWFpbEludGVncml0eVwiXSxcblx0bWFpbEludGVncml0eURyYWZ0PzpWYWx1ZVR5cGVzW1wiTWFpbEludGVncml0eURyYWZ0XCJdLFxuXHRvcGVuZWRBdD86Ym9vbGVhbixcblx0cmVjaXBpZW50PzpWYWx1ZVR5cGVzW1wiVXNlclwiXSxcblx0c2VuZGVyPzpWYWx1ZVR5cGVzW1wiVXNlclwiXSxcblx0c3ViamVjdD86Ym9vbGVhbixcblx0dHlwZT86Ym9vbGVhbixcblx0cmVjaXBpZW50cz86VmFsdWVUeXBlc1tcIlVzZXJcIl0sXG5cdFx0X190eXBlbmFtZT86IGJvb2xlYW5cbn0+O1xuXHRbXCJNYWlsSW50ZWdyaXR5XCJdOiBBbGlhc1R5cGU8e1xuXHRpZD86Ym9vbGVhbixcblx0aGFzaD86Ym9vbGVhbixcblx0aGFzaEtleT86Ym9vbGVhbixcblx0YW5zd2Vycz86VmFsdWVUeXBlc1tcIk1haWxJbnRlZ3JpdHlcIl0sXG5cdGFwcD86VmFsdWVUeXBlc1tcIkFwcGxpY2F0aW9uXCJdLFxuXHRtYWlscz86VmFsdWVUeXBlc1tcIk1haWxcIl0sXG5cdHJlY2lwaWVudHM/OlZhbHVlVHlwZXNbXCJVc2VyXCJdLFxuXHR0ZW1wb3JhcnlSZWNpcGllbnRzPzpWYWx1ZVR5cGVzW1wiVGVtcG9yYXJ5VXNlclwiXSxcblx0cmVwbHlUbz86VmFsdWVUeXBlc1tcIk1haWxJbnRlZ3JpdHlcIl0sXG5cdFx0X190eXBlbmFtZT86IGJvb2xlYW5cbn0+O1xuXHRbXCJNYWlsSW50ZWdyaXR5RHJhZnRcIl06IEFsaWFzVHlwZTx7XG5cdGlkPzpib29sZWFuLFxuXHRoYXNoPzpib29sZWFuLFxuXHRoYXNoS2V5Pzpib29sZWFuLFxuXHRhcHA/OlZhbHVlVHlwZXNbXCJBcHBsaWNhdGlvblwiXSxcblx0bWFpbD86VmFsdWVUeXBlc1tcIk1haWxcIl0sXG5cdHJlY2lwaWVudHM/OlZhbHVlVHlwZXNbXCJVc2VyXCJdLFxuXHR0ZW1wb3JhcnlSZWNpcGllbnRzPzpWYWx1ZVR5cGVzW1wiVGVtcG9yYXJ5VXNlclwiXSxcblx0cmVwbHlUbz86VmFsdWVUeXBlc1tcIk1haWxJbnRlZ3JpdHlcIl0sXG5cdFx0X190eXBlbmFtZT86IGJvb2xlYW5cbn0+O1xuXHRbXCJQbGFuXCJdOiBBbGlhc1R5cGU8e1xuXHRpZD86Ym9vbGVhbixcblx0a2luZD86Ym9vbGVhbixcblx0Y29kZXM/OmJvb2xlYW4sXG5cdGxpbWl0cz86VmFsdWVUeXBlc1tcIkxpbWl0c1wiXSxcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIlJlcG9ydFwiXTogQWxpYXNUeXBlPHtcblx0aWQ/OmJvb2xlYW4sXG5cdHVzZXI/OlZhbHVlVHlwZXNbXCJVc2VyXCJdLFxuXHRyZXBvcnRlZFVzZXI/OlZhbHVlVHlwZXNbXCJVc2VyXCJdLFxuXHRjdXN0b21NZXNzYWdlPzpib29sZWFuLFxuXHRcdF9fdHlwZW5hbWU/OiBib29sZWFuXG59Pjtcblx0W1wiVGVtcG9yYXJ5VXNlclwiXTogQWxpYXNUeXBlPHtcblx0aWQ/OmJvb2xlYW4sXG5cdG1haWxzPzpWYWx1ZVR5cGVzW1wiTWFpbEludGVncml0eVwiXSxcblx0ZHJhZnRNYWlscz86VmFsdWVUeXBlc1tcIk1haWxJbnRlZ3JpdHlEcmFmdFwiXSxcblx0ZW1haWw/OmJvb2xlYW4sXG5cdFx0X190eXBlbmFtZT86IGJvb2xlYW5cbn0+O1xuXHRbXCJVc2VyXCJdOiBBbGlhc1R5cGU8e1xuXHRpZD86Ym9vbGVhbixcblx0ZGVsZXRlZEF0Pzpib29sZWFuLFxuXHRsYW5nPzpib29sZWFuLFxuXHRyZXBvcnRTZW50PzpWYWx1ZVR5cGVzW1wiUmVwb3J0XCJdLFxuXHRnb2RGYXRoZXI/OlZhbHVlVHlwZXNbXCJVc2VyXCJdLFxuXHRnb2RDaGlsZHJlbj86VmFsdWVUeXBlc1tcIlVzZXJcIl0sXG5cdGZpcnN0bmFtZT86Ym9vbGVhbixcblx0bGFzdG5hbWU/OmJvb2xlYW4sXG5cdGVtYWlsPzpib29sZWFuLFxuXHRwaG9uZT86Ym9vbGVhbixcblx0bGFzdExvZ2luPzpib29sZWFuLFxuXHRyb2xlPzpib29sZWFuLFxuXHRzZXNzaW9ucz86VmFsdWVUeXBlc1tcIlVzZXJTZXNzaW9uXCJdLFxuXHRjcmVhdGVkQXQ/OmJvb2xlYW4sXG5cdHJlY2VpdmVkTWFpbHM/OlZhbHVlVHlwZXNbXCJNYWlsXCJdLFxuXHR3YWl0aW5nUmVjZWl2ZWRNYWlscz86VmFsdWVUeXBlc1tcIldhaXRpbmdSZWNlaXZlZE1haWxcIl0sXG5cdHNlbnRNYWlscz86VmFsdWVUeXBlc1tcIk1haWxcIl0sXG5cdGRyYWZ0TWFpbHM/OlZhbHVlVHlwZXNbXCJNYWlsXCJdLFxuXHRhcHBTZXR0aW5ncz86VmFsdWVUeXBlc1tcIlVzZXJBcHBTZXR0aW5nc1wiXSxcblx0YXBwbGljYXRpb25zPzpWYWx1ZVR5cGVzW1wiQXBwbGljYXRpb25zT25Vc2Vyc1wiXSxcblx0cHVibGljS2V5Pzpib29sZWFuLFxuXHRcdF9fdHlwZW5hbWU/OiBib29sZWFuXG59Pjtcblx0W1wiVXNlckFwcE5vdGlmaWNhdGlvbnNcIl06IEFsaWFzVHlwZTx7XG5cdGlkPzpib29sZWFuLFxuXHRlbmFibGVBbGw/OmJvb2xlYW4sXG5cdG1haWw/OmJvb2xlYW4sXG5cdGNsb3VkPzpib29sZWFuLFxuXHRkaXNhYmxlQWxsVW50aWw/OmJvb2xlYW4sXG5cdFx0X190eXBlbmFtZT86IGJvb2xlYW5cbn0+O1xuXHRbXCJVc2VyQXBwU2V0dGluZ3NcIl06IEFsaWFzVHlwZTx7XG5cdGlkPzpib29sZWFuLFxuXHRjbG91ZEZpbGVEYXlzRm9yRGVsZXRlPzpib29sZWFuLFxuXHRjbG91ZEZvbGRlckRheXNGb3JEZWxldGU/OmJvb2xlYW4sXG5cdGhpc3RvcnlGaWxlRGF5c0ZvckRlbGV0ZT86Ym9vbGVhbixcblx0aGlzdG9yeU1heEZpbGVDb3VudD86Ym9vbGVhbixcblx0YXV0b0Rpc2Nvbm5lY3REZWxheT86Ym9vbGVhbixcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIlVzZXJTZXNzaW9uXCJdOiBBbGlhc1R5cGU8e1xuXHRpZD86Ym9vbGVhbixcblx0YXBwU2Vzc2lvbnM/OlZhbHVlVHlwZXNbXCJBcHBTZXNzaW9uXCJdLFxuXHRsYXN0QWN0aXZpdHk/OmJvb2xlYW4sXG5cdHVzZXJBZ2VudD86Ym9vbGVhbixcblx0aXA/OmJvb2xlYW4sXG5cdGNpdHk/OmJvb2xlYW4sXG5cdGNvdW50cnk/OmJvb2xlYW4sXG5cdGNyZWF0ZWRBdD86Ym9vbGVhbixcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIlZGaWxlXCJdOiBBbGlhc1R5cGU8e1xuXHRpZD86Ym9vbGVhbixcblx0aXNGYXZvcml0ZT86Ym9vbGVhbixcblx0Y3JlYXRlZEF0Pzpib29sZWFuLFxuXHRkZWxldGVkQXQ/OmJvb2xlYW4sXG5cdGZpbGVuYW1lPzpib29sZWFuLFxuXHR1c2VyQXBwcz86VmFsdWVUeXBlc1tcIlZGaWxlc09uVXNlcnNPbkFwcGxpY2F0aW9uc1wiXSxcblx0Y3JlYXRlZEJ5PzpWYWx1ZVR5cGVzW1wiQXBwbGljYXRpb25zT25Vc2Vyc1wiXSxcblx0dXNlckFwcD86VmFsdWVUeXBlc1tcIlZGaWxlc09uVXNlcnNPbkFwcGxpY2F0aW9uc1wiXSxcblx0Zm9sZGVyPzpWYWx1ZVR5cGVzW1wiRm9sZGVyXCJdLFxuXHRoaXN0b3J5PzpWYWx1ZVR5cGVzW1wiRmlsZVwiXSxcblx0Y3VycmVudD86VmFsdWVUeXBlc1tcIkZpbGVcIl0sXG5cdHVwZGF0ZWRBdD86Ym9vbGVhbixcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIlZGaWxlc09uVXNlcnNPbkFwcGxpY2F0aW9uc1wiXTogQWxpYXNUeXBlPHtcblx0dkZpbGU/OlZhbHVlVHlwZXNbXCJWRmlsZVwiXSxcblx0dXNlckFwcD86VmFsdWVUeXBlc1tcIkFwcGxpY2F0aW9uc09uVXNlcnNcIl0sXG5cdHJpZ2h0cz86Ym9vbGVhbixcblx0bmFtZUtleT86Ym9vbGVhbixcblx0aXNSb290Pzpib29sZWFuLFxuXHRcdF9fdHlwZW5hbWU/OiBib29sZWFuXG59Pjtcblx0W1wiV2FpdGluZ1JlY2VpdmVkTWFpbFwiXTogQWxpYXNUeXBlPHtcblx0c2VuZGVyPzpWYWx1ZVR5cGVzW1wiVXNlclwiXSxcblx0ZGF0ZT86Ym9vbGVhbixcblx0cmVjaXBpZW50cz86VmFsdWVUeXBlc1tcIlVzZXJcIl0sXG5cdHRlbXBvcmFyeVJlY2lwaWVudHM/OlZhbHVlVHlwZXNbXCJUZW1wb3JhcnlVc2VyXCJdLFxuXHRhdHRhY2htZW50c0NvdW50Pzpib29sZWFuLFxuXHRcdF9fdHlwZW5hbWU/OiBib29sZWFuXG59Pjtcblx0W1wiUGF5bWVudEluZm9zXCJdOiBBbGlhc1R5cGU8e1xuXHRob3N0ZWRVcmw/OmJvb2xlYW4sXG5cdGN1cnJlbnRTdWJzY3JpcHRpb24/OlZhbHVlVHlwZXNbXCJSZWN1cmx5U3Vic2NyaXB0aW9uXCJdLFxuXHRpbnZvaWNlcz86VmFsdWVUeXBlc1tcIlJlY3VybHlJbnZvaWNlc1wiXSxcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIlJlY3VybHlJbnZvaWNlc1wiXTogQWxpYXNUeXBlPHtcblx0cGRmPzpib29sZWFuLFxuXHRkYXRlPzpib29sZWFuLFxuXHRkdWU/OmJvb2xlYW4sXG5cdHN0YXR1cz86Ym9vbGVhbixcblx0dG90YWw/OmJvb2xlYW4sXG5cdG5hbWU/OmJvb2xlYW4sXG5cdGN1cnJlbmN5Pzpib29sZWFuLFxuXHRcdF9fdHlwZW5hbWU/OiBib29sZWFuXG59Pjtcblx0W1wiUmVjdXJseVN1YnNjcmlwdGlvblwiXTogQWxpYXNUeXBlPHtcblx0YXV0b3JlbmV3Pzpib29sZWFuLFxuXHRhY3RpdmF0ZWRBdD86Ym9vbGVhbixcblx0Y3VycmVudFBlcmlvZEVuZHNBdD86Ym9vbGVhbixcblx0Y3VycmVudFBlcmlvZFN0YXJ0ZWRBdD86Ym9vbGVhbixcblx0Y2FuY2VsZWRBdD86Ym9vbGVhbixcblx0Y3JlYXRlZEF0Pzpib29sZWFuLFxuXHRleHBpcmVzQXQ/OmJvb2xlYW4sXG5cdHBhdXNlZEF0Pzpib29sZWFuLFxuXHR0cmlhbEVuZHNBdD86Ym9vbGVhbixcblx0dHJpYWxTdGFydGVkQXQ/OmJvb2xlYW4sXG5cdHVwZGF0ZWRBdD86Ym9vbGVhbixcblx0c3RhdGU/OmJvb2xlYW4sXG5cdGNvbGxlY3Rpb25NZXRob2Q/OmJvb2xlYW4sXG5cdHBsYW4/OmJvb2xlYW4sXG5cdHBsYW5Db2RlPzpib29sZWFuLFxuXHR0b3RhbD86Ym9vbGVhbixcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIlNoYXJlRm9sZGVyUmVzcG9uc2VcIl06IEFsaWFzVHlwZTx7XG5cdGZvbGRlcnM/OmJvb2xlYW4sXG5cdHZGaWxlcz86Ym9vbGVhbixcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIlF1ZXJ5XCJdOiBBbGlhc1R5cGU8e1xuXHRhcHBOb3RpZmljYXRpb25zPzpWYWx1ZVR5cGVzW1wiVXNlckFwcE5vdGlmaWNhdGlvbnNcIl0sXG5ibG9nPzogW3tcdGxhbmc/OlZhbHVlVHlwZXNbXCJMYW5nXCJdIHwgbnVsbH0sVmFsdWVUeXBlc1tcIkJsb2dJdGVtXCJdXSxcbmRiQ29uZmlnPzogW3tcdGFwcENvZGU6c3RyaW5nfSxib29sZWFuXSxcbmRiR2V0PzogW3tcdGZpZWxkOnN0cmluZyxcdHVzZXJJZD86c3RyaW5nIHwgbnVsbH0sYm9vbGVhbl0sXG5kYlNlYXJjaD86IFt7XHRzZWFyY2g6c3RyaW5nLFx0ZmllbGQ6c3RyaW5nfSxib29sZWFuXSxcblx0ZGVsZXRlZEZvbGRlcnM/OlZhbHVlVHlwZXNbXCJGb2xkZXJcIl0sXG5kZWxldGVkTWFpbHM/OiBbe1x0bWFpbFR5cGU6VmFsdWVUeXBlc1tcIk1haWxUeXBlXCJdfSxWYWx1ZVR5cGVzW1wiTWFpbFwiXV0sXG5cdGRlbGV0ZWRWRmlsZXM/OlZhbHVlVHlwZXNbXCJWRmlsZVwiXSxcbmZhcT86IFt7XHRsYW5nPzpWYWx1ZVR5cGVzW1wiTGFuZ1wiXSB8IG51bGx9LFZhbHVlVHlwZXNbXCJGYXFJdGVtXCJdXSxcbmZpbGU/OiBbe1x0aWQ6c3RyaW5nfSxWYWx1ZVR5cGVzW1wiRmlsZVwiXV0sXG5maWxlQ29udGVudD86IFt7XHRmaWxlSWQ6c3RyaW5nfSxWYWx1ZVR5cGVzW1wiRmlsZUNvbnRlbnRcIl1dLFxuZmlsZXNTaGFyZWRXaXRoTWU/OiBbe1x0YWNjZXB0ZWQ/OmJvb2xlYW4gfCBudWxsfSxWYWx1ZVR5cGVzW1wiRmlsZVNoYXJlZENvbnRlbnRcIl1dLFxuZm9sZGVyPzogW3tcdGlkPzpzdHJpbmcgfCBudWxsLFx0ZGVsZXRlZD86Ym9vbGVhbiB8IG51bGx9LFZhbHVlVHlwZXNbXCJGb2xkZXJcIl1dLFxuZm9sZGVyU2l6ZT86IFt7XHRmb2xkZXJJZD86c3RyaW5nIHwgbnVsbH0sVmFsdWVUeXBlc1tcIkZvbGRlclNpemVcIl1dLFxuXHRmb2xkZXJzU2hhcmVkV2l0aE1lPzpWYWx1ZVR5cGVzW1wiRm9sZGVyXCJdLFxuXHRsaW1pdHM/OlZhbHVlVHlwZXNbXCJRdWVyeUxpbWl0c1wiXSxcbm1haWw/OiBbe1x0aWQ6c3RyaW5nfSxWYWx1ZVR5cGVzW1wiTWFpbFwiXV0sXG5cdHBheW1lbnRJbmZvcz86VmFsdWVUeXBlc1tcIlBheW1lbnRJbmZvc1wiXSxcblx0cGxhbnM/OlZhbHVlVHlwZXNbXCJQbGFuXCJdLFxuXHRzaGFyZWRGb2xkZXJzPzpWYWx1ZVR5cGVzW1wiRm9sZGVyXCJdLFxuXHRzaGFyZWRWRmlsZXM/OlZhbHVlVHlwZXNbXCJWRmlsZVwiXSxcblx0dGVzdD86Ym9vbGVhbixcblx0dW5yZWFkUmVjZWl2ZWRNYWlsc0NvdW50Pzpib29sZWFuLFxudXNlcj86IFt7XHR1c2VySWQ/OnN0cmluZyB8IG51bGx9LFZhbHVlVHlwZXNbXCJVc2VyXCJdXSxcbnZGaWxlPzogW3tcdGlkOnN0cmluZ30sVmFsdWVUeXBlc1tcIlZGaWxlXCJdXSxcblx0dkZpbGVzU2hhcmVkV2l0aE1lPzpWYWx1ZVR5cGVzW1wiVkZpbGVcIl0sXG51c2VyTGlzdD86IFt7XHRzZWFyY2g/OnN0cmluZyB8IG51bGx9LFZhbHVlVHlwZXNbXCJVc2VyXCJdXSxcblx0XHRfX3R5cGVuYW1lPzogYm9vbGVhblxufT47XG5cdFtcIk11dGF0aW9uXCJdOiBBbGlhc1R5cGU8e1xuYWRkRmlsZVRvSGlzdG9yeT86IFt7XHR2RmlsZUlkOnN0cmluZyxcdGZpbGVJZDpzdHJpbmd9LFZhbHVlVHlwZXNbXCJWRmlsZVwiXV0sXG5cdGNhbmNlbFBheW1lbnQ/OmJvb2xlYW4sXG5jcmVhdGVBcHBsaWNhdGlvbj86IFt7XHRuYW1lOnN0cmluZyxcdG9yaWdpbjpzdHJpbmcsXHRkZXZlbG9wZXJJZDpzdHJpbmd9LGJvb2xlYW5dLFxuY3JlYXRlRHJhZnRNYWlsPzogW3tcdGhhc2g6c3RyaW5nLFx0aGFzaEtleTpzdHJpbmcsXHRib2R5OnN0cmluZyxcdHN1YmplY3Q6c3RyaW5nLFx0cmVwbHlUbz86c3RyaW5nIHwgbnVsbCxcdHNlbmRlckZpbGVzOlZhbHVlVHlwZXNbXCJNYWlsRmlsZUlucHV0XCJdW10sXHRyZWNpcGllbnRzOnN0cmluZ1tdfSxWYWx1ZVR5cGVzW1wiTWFpbFwiXV0sXG5jcmVhdGVGb2xkZXI/OiBbe1x0bmFtZTpzdHJpbmcsXHRrZXk6c3RyaW5nLFx0cGFyZW50Rm9sZGVySWQ/OnN0cmluZyB8IG51bGx9LFZhbHVlVHlwZXNbXCJGb2xkZXJcIl1dLFxuZGJDb25maWc/OiBbe1x0YXBwQ29kZTpzdHJpbmcsXHRjb25maWc6c3RyaW5nfSxib29sZWFuXSxcbmRiU2V0PzogW3tcdHZhbHVlOnN0cmluZyxcdHVzZXJJZD86c3RyaW5nIHwgbnVsbH0sYm9vbGVhbl0sXG5kZWxldGVEcmFmdE1haWw/OiBbe1x0ZHJhZnRJZDpzdHJpbmd9LGJvb2xlYW5dLFxuZGVsZXRlRmlsZT86IFt7XHRmaWxlSWQ6c3RyaW5nLFx0dkZpbGVJZDpzdHJpbmd9LGJvb2xlYW5dLFxuZGVsZXRlRm9sZGVyPzogW3tcdGlkOnN0cmluZ30sYm9vbGVhbl0sXG5kZWxldGVGb2xkZXJDbG91ZFRyYXNoPzogW3tcdGlkczpzdHJpbmdbXX0sYm9vbGVhbl0sXG5kZWxldGVGb2xkZXJTaGFyaW5nPzogW3tcdGZvbGRlcklkOnN0cmluZyxcdHVzZXJJZDpzdHJpbmd9LGJvb2xlYW5dLFxuZGVsZXRlTWFpbD86IFt7XHRtYWlsSWQ6c3RyaW5nfSxib29sZWFuXSxcbmRlbGV0ZU1haWxUcmFzaD86IFt7XHRpZHM6c3RyaW5nW119LGJvb2xlYW5dLFxuZGVsZXRlVXNlcj86IFt7XHR1c2VySWQ/OnN0cmluZyB8IG51bGx9LGJvb2xlYW5dLFxuZGVsZXRlVkZpbGU/OiBbe1x0ZmlsZUlkOnN0cmluZ30sYm9vbGVhbl0sXG5kZWxldGVWRmlsZUNsb3VkVHJhc2g/OiBbe1x0aWRzOnN0cmluZ1tdfSxib29sZWFuXSxcbmRlbGV0ZVZGaWxlU2hhcmluZz86IFt7XHR2RmlsZUlkOnN0cmluZyxcdHVzZXJJZDpzdHJpbmd9LGJvb2xlYW5dLFxuZHVwbGljYXRlVkZpbGU/OiBbe1x0dkZpbGVJZDpzdHJpbmcsXHRmb2xkZXJJZD86c3RyaW5nIHwgbnVsbCxcdGN1c3RvbU5hbWU/OnN0cmluZyB8IG51bGx9LGJvb2xlYW5dLFxuXHRlbXB0eUNsb3VkVHJhc2g/OmJvb2xlYW4sXG5cdGVtcHR5TWFpbFRyYXNoPzpib29sZWFuLFxubG9nb3V0PzogW3tcdHNlc3Npb25JZD86c3RyaW5nIHwgbnVsbH0sYm9vbGVhbl0sXG5tb3ZlRmlsZXM/OiBbe1x0ZmlsZXNJZDpzdHJpbmdbXSxcdHBhcmVudEZvbGRlcklkPzpzdHJpbmcgfCBudWxsfSxib29sZWFuXSxcbm1vdmVGb2xkZXJzPzogW3tcdGZvbGRlcnNJZDpzdHJpbmdbXSxcdHBhcmVudEZvbGRlcklkPzpzdHJpbmcgfCBudWxsfSxib29sZWFuXSxcbnBheT86IFt7XHRwbGFuQ29kZTpzdHJpbmcsXHRpbnB1dDpWYWx1ZVR5cGVzW1wiUGF5SW5wdXRcIl0sXHRhdXRvUmVuZXc/OmJvb2xlYW4gfCBudWxsfSxib29sZWFuXSxcbnJlYWRNYWlsPzogW3tcdG1haWxJZDpzdHJpbmd9LGJvb2xlYW5dLFxucmVjb3ZlckZvbGRlcj86IFt7XHRpZDpzdHJpbmd9LGJvb2xlYW5dLFxucmVjb3Zlck1haWw/OiBbe1x0bWFpbElkOnN0cmluZ30sYm9vbGVhbl0sXG5yZWNvdmVyVkZpbGU/OiBbe1x0dkZpbGVJZDpzdHJpbmd9LGJvb2xlYW5dLFxuc2F2ZUluQ2xvdWQ/OiBbe1x0ZmlsZUlkOnN0cmluZyxcdGtleTpzdHJpbmcsXHRmb2xkZXJJZD86c3RyaW5nIHwgbnVsbCxcdGZpbGVuYW1lOnN0cmluZyxcdG5hbWVLZXk6c3RyaW5nfSxWYWx1ZVR5cGVzW1wiVkZpbGVcIl1dLFxuc2VuZERyYWZ0TWFpbD86IFt7XHRkcmFmdE1haWxJZDpzdHJpbmcsXHR0ZW1wb3JhcnlSZWNpcGllbnRzOnN0cmluZ1tdLFx0cmVjaXBpZW50czpWYWx1ZVR5cGVzW1wiTWFpbFJlY2lwaWVudElucHV0XCJdW10sXHRjdXN0b21NZXNzYWdlPzpzdHJpbmcgfCBudWxsfSxib29sZWFuXSxcbnNlbmRPbmVNYWlsPzogW3tcdG1haWxJbnRlZ3JpdHlJZDpzdHJpbmcsXHRyZWNpcGllbnQ6VmFsdWVUeXBlc1tcIk1haWxSZWNpcGllbnRJbnB1dFwiXX0sYm9vbGVhbl0sXG5zZW5kUmVwb3J0PzogW3tcdHJlcG9ydGVkVXNlcklkOnN0cmluZyxcdGN1c3RvbU1lc3NhZ2U/OnN0cmluZyB8IG51bGx9LFZhbHVlVHlwZXNbXCJSZXBvcnRcIl1dLFxuc2hhcmVGaWxlSW5IaXN0b3J5PzogW3tcdGlucHV0OlZhbHVlVHlwZXNbXCJTaGFyZUZpbGVJbkhpc3RvcnlJbnB1dFwiXSxcdHZGaWxlSWQ6c3RyaW5nfSxib29sZWFuXSxcbnNoYXJlRm9sZGVyPzogW3tcdGZvbGRlcklkOnN0cmluZyxcdHVzZXJJZDpzdHJpbmd9LFZhbHVlVHlwZXNbXCJTaGFyZUZvbGRlclJlc3BvbnNlXCJdXSxcbnNoYXJlRm9sZGVyRmluaXNoPzogW3tcdHNoYXJlRm9sZGVyczpWYWx1ZVR5cGVzW1wiU2hhcmVGb2xkZXJzSW5wdXRcIl0sXHR1c2VySWQ6c3RyaW5nLFx0cmlnaHRzOlZhbHVlVHlwZXNbXCJSaWdodHNcIl19LGJvb2xlYW5dLFxuc2hhcmVWRmlsZT86IFt7XHR2RmlsZUlkOnN0cmluZyxcdHVzZXJJZDpzdHJpbmcsXHRuYW1lS2V5OnN0cmluZyxcdHJpZ2h0czpWYWx1ZVR5cGVzW1wiUmlnaHRzXCJdLFx0aGlzdG9yeTpWYWx1ZVR5cGVzW1wiU2hhcmVGaWxlS2V5SW5wdXRcIl1bXX0sYm9vbGVhbl0sXG51bnJlYWRNYWlsPzogW3tcdG1haWxJZDpzdHJpbmd9LGJvb2xlYW5dLFxudXBkYXRlQXBwTm90aWZpY2F0aW9ucz86IFt7XHRlbmFibGVBbGw/OmJvb2xlYW4gfCBudWxsLFx0bWFpbD86Ym9vbGVhbiB8IG51bGwsXHRjbG91ZD86Ym9vbGVhbiB8IG51bGwsXHRkaXNhYmxlQWxsVW50aWw/OlZhbHVlVHlwZXNbXCJEYXRlVGltZVwiXSB8IG51bGx9LFZhbHVlVHlwZXNbXCJVc2VyQXBwTm90aWZpY2F0aW9uc1wiXV0sXG51cGRhdGVBcHBTZXR0aW5ncz86IFt7XHRjbG91ZEZpbGVEYXlzRm9yRGVsZXRlPzpudW1iZXIgfCBudWxsLFx0Y2xvdWRGb2xkZXJEYXlzRm9yRGVsZXRlPzpudW1iZXIgfCBudWxsLFx0aGlzdG9yeUZpbGVEYXlzRm9yRGVsZXRlPzpudW1iZXIgfCBudWxsLFx0aGlzdG9yeU1heEZpbGVDb3VudD86bnVtYmVyIHwgbnVsbCxcdGF1dG9EaXNjb25uZWN0RGVsYXk/Om51bWJlciB8IG51bGx9LFZhbHVlVHlwZXNbXCJVc2VyQXBwU2V0dGluZ3NcIl1dLFxudXBkYXRlRHJhZnRNYWlsPzogW3tcdGRyYWZ0SWQ6c3RyaW5nLFx0aGFzaD86c3RyaW5nIHwgbnVsbCxcdGhhc2hLZXk/OnN0cmluZyB8IG51bGwsXHRib2R5PzpzdHJpbmcgfCBudWxsLFx0c3ViamVjdD86c3RyaW5nIHwgbnVsbCxcdHJlcGx5VG8/OnN0cmluZyB8IG51bGwsXHRzZW5kZXJGaWxlcz86VmFsdWVUeXBlc1tcIk1haWxGaWxlSW5wdXRcIl1bXSxcdHJlY2lwaWVudHM/OnN0cmluZ1tdfSxWYWx1ZVR5cGVzW1wiTWFpbFwiXV0sXG51cGRhdGVGaWxlPzogW3tcdGZpbGVJZDpzdHJpbmcsXHRpc0Zhdm9yaXRlPzpib29sZWFuIHwgbnVsbCxcdGZpbGVuYW1lPzpzdHJpbmcgfCBudWxsLFx0ZGVsZXRlZEF0PzpWYWx1ZVR5cGVzW1wiRGF0ZVRpbWVcIl0gfCBudWxsfSxWYWx1ZVR5cGVzW1wiVkZpbGVcIl1dLFxudXBkYXRlRm9sZGVyPzogW3tcdGZvbGRlcklkOnN0cmluZyxcdG5hbWU/OnN0cmluZyB8IG51bGwsXHRpc0Zhdm9yaXRlPzpib29sZWFuIHwgbnVsbCxcdGRlbGV0ZWRBdD86VmFsdWVUeXBlc1tcIkRhdGVUaW1lXCJdIHwgbnVsbH0sVmFsdWVUeXBlc1tcIkZvbGRlclwiXV0sXG51cGRhdGVQcm9maWxlPzogW3tcdGZpcnN0bmFtZT86c3RyaW5nIHwgbnVsbCxcdGxhc3RuYW1lPzpzdHJpbmcgfCBudWxsLFx0bGFuZz86VmFsdWVUeXBlc1tcIkxhbmdcIl0gfCBudWxsfSxWYWx1ZVR5cGVzW1wiVXNlclwiXV0sXG51cGxvYWRBbm9ueW1vdXM/OiBbe1x0ZmlsZU5hbWU6c3RyaW5nLFx0ZmlsZVNpemU6bnVtYmVyLFx0ZmlsZVNpemVCZWZvcmU6bnVtYmVyLFx0bWVzc2FnZT86c3RyaW5nIHwgbnVsbCxcdHB1YktleTpzdHJpbmcsXHR0b2tlbjpzdHJpbmd9LFZhbHVlVHlwZXNbXCJGaWxlUmVzcG9uc2VcIl1dLFxudXBsb2FkRmlsZT86IFt7XHRmaWxlU2l6ZTpWYWx1ZVR5cGVzW1wiQmlnSW50XCJdLFx0ZmlsZVNpemVCZWZvcmU6VmFsdWVUeXBlc1tcIkJpZ0ludFwiXSxcdGZpbGVLZXk6c3RyaW5nLFx0bWQ1OnN0cmluZyxcdG1kNUVuY3J5cHRlZDpzdHJpbmd9LFZhbHVlVHlwZXNbXCJGaWxlUmVzcG9uc2VcIl1dLFxudXBsb2FkRmlsZUVuZD86IFt7XHRmaWxlSWQ6c3RyaW5nfSxib29sZWFuXSxcbnVwbG9hZEZpbGVQYXJ0RW5kPzogW3tcdGZpbGVJZDpzdHJpbmcsXHRtZDU6c3RyaW5nLFx0b3JkZXI6bnVtYmVyfSxib29sZWFuXSxcbmNoYW5nZVVzZXJQbGFuPzogW3tcdHVzZXJJZDpzdHJpbmcsXHRwbGFuOlZhbHVlVHlwZXNbXCJQbGFuS2luZFwiXX0sVmFsdWVUeXBlc1tcIlVzZXJcIl1dLFxuXHRcdF9fdHlwZW5hbWU/OiBib29sZWFuXG59Pjtcblx0W1wiU3Vic2NyaXB0aW9uXCJdOiBBbGlhc1R5cGU8e1xuXHR0ZXN0Pzpib29sZWFuLFxuXHRcdF9fdHlwZW5hbWU/OiBib29sZWFuXG59PlxuICB9XG5cbmV4cG9ydCB0eXBlIE1vZGVsVHlwZXMgPSB7XG4gICAgLyoqIFRoZSBgQmlnSW50YCBzY2FsYXIgdHlwZSByZXByZXNlbnRzIG5vbi1mcmFjdGlvbmFsIHNpZ25lZCB3aG9sZSBudW1lcmljIHZhbHVlcy5cbkBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSmF2YVNjcmlwdC9SZWZlcmVuY2UvR2xvYmFsX09iamVjdHMvQmlnSW50ICovXG5bXCJCaWdJbnRcIl06YW55O1xuXHQvKiogVGhlIGBCeXRlYCBzY2FsYXIgdHlwZSByZXByZXNlbnRzIGJ5dGUgdmFsdWUgYXMgYSBCdWZmZXIgKi9cbltcIkJ5dGVzXCJdOmFueTtcblx0LyoqIEEgZGF0ZS10aW1lIHN0cmluZyBhdCBVVEMsIHN1Y2ggYXMgMjAwNy0xMi0wM1QxMDoxNTozMFosIGNvbXBsaWFudCB3aXRoIHRoZSBgZGF0ZS10aW1lYCBmb3JtYXQgb3V0bGluZWQgaW4gc2VjdGlvbiA1LjYgb2YgdGhlIFJGQyAzMzM5IHByb2ZpbGUgb2YgdGhlIElTTyA4NjAxIHN0YW5kYXJkIGZvciByZXByZXNlbnRhdGlvbiBvZiBkYXRlcyBhbmQgdGltZXMgdXNpbmcgdGhlIEdyZWdvcmlhbiBjYWxlbmRhci4gKi9cbltcIkRhdGVUaW1lXCJdOmFueTtcblx0LyoqIEFuIGFyYml0cmFyeS1wcmVjaXNpb24gRGVjaW1hbCB0eXBlICovXG5bXCJEZWNpbWFsXCJdOmFueTtcblx0LyoqIFRoZSBgSlNPTk9iamVjdGAgc2NhbGFyIHR5cGUgcmVwcmVzZW50cyBKU09OIG9iamVjdHMgYXMgc3BlY2lmaWVkIGJ5IFtFQ01BLTQwNF0oaHR0cDovL3d3dy5lY21hLWludGVybmF0aW9uYWwub3JnL3B1YmxpY2F0aW9ucy9maWxlcy9FQ01BLVNUL0VDTUEtNDA0LnBkZikuICovXG5bXCJKc29uXCJdOmFueTtcblx0W1wiTGFuZ1wiXTogR3JhcGhRTFR5cGVzW1wiTGFuZ1wiXTtcblx0W1wiUGxhbktpbmRcIl06IEdyYXBoUUxUeXBlc1tcIlBsYW5LaW5kXCJdO1xuXHRbXCJVc2VyUm9sZVwiXTogR3JhcGhRTFR5cGVzW1wiVXNlclJvbGVcIl07XG5cdFtcIk1haWxUeXBlXCJdOiBHcmFwaFFMVHlwZXNbXCJNYWlsVHlwZVwiXTtcblx0W1wiUmlnaHRzXCJdOiBHcmFwaFFMVHlwZXNbXCJSaWdodHNcIl07XG5cdFtcIkFwcEtleVBhaXJcIl06IHtcblx0XHRwdWI6c3RyaW5nXG59O1xuXHRbXCJBcHBTZXNzaW9uXCJdOiB7XG5cdFx0aWQ6c3RyaW5nLFxuXHRsYXN0QWN0aXZpdHk/Ok1vZGVsVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0dXNlckFnZW50PzpzdHJpbmcsXG5cdGlwPzpzdHJpbmcsXG5cdGNpdHk/OnN0cmluZyxcblx0Y291bnRyeT86c3RyaW5nLFxuXHR1c2VyU2Vzc2lvbjpNb2RlbFR5cGVzW1wiVXNlclNlc3Npb25cIl0sXG5cdHVzZXJBcHA/Ok1vZGVsVHlwZXNbXCJBcHBsaWNhdGlvbnNPblVzZXJzXCJdLFxuXHRjcmVhdGVkQXQ6TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdXG59O1xuXHRbXCJBcHBsaWNhdGlvblwiXToge1xuXHRcdGlkOnN0cmluZyxcblx0bmFtZTpzdHJpbmdcbn07XG5cdFtcIkFwcGxpY2F0aW9uc09uVXNlcnNcIl06IHtcblx0XHRmYWtlVXNlcklkOnN0cmluZyxcblx0a2V5UGFpcj86TW9kZWxUeXBlc1tcIkFwcEtleVBhaXJcIl0sXG5cdHNlc3Npb25zOk1vZGVsVHlwZXNbXCJBcHBTZXNzaW9uXCJdW10sXG5cdGFwcDpNb2RlbFR5cGVzW1wiQXBwbGljYXRpb25cIl0sXG5cdHVzZXI6TW9kZWxUeXBlc1tcIlVzZXJcIl0sXG5cdGZvbGRlcnM6TW9kZWxUeXBlc1tcIkZvbGRlcnNPblVzZXJzT25BcHBsaWNhdGlvbnNcIl1bXSxcblx0c2V0dGluZ3M6TW9kZWxUeXBlc1tcIlVzZXJBcHBTZXR0aW5nc1wiXVxufTtcblx0W1wiQmxvZ1wiXToge1xuXHRcdGlkOnN0cmluZyxcblx0b3JkZXI6bnVtYmVyLFxuXHRlbnRyaWVzOk1vZGVsVHlwZXNbXCJCbG9nRW50cnlcIl1bXVxufTtcblx0W1wiQmxvZ0VudHJ5XCJdOiB7XG5cdFx0aWQ6c3RyaW5nLFxuXHRsYW5nOk1vZGVsVHlwZXNbXCJMYW5nXCJdLFxuXHRhdXRob3I6c3RyaW5nLFxuXHRib2R5OnN0cmluZyxcblx0ZGF0ZTpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGltYWdlOnN0cmluZyxcblx0c3VtbWFyeTpzdHJpbmcsXG5cdHRpdGxlOnN0cmluZ1xufTtcblx0W1wiQmxvZ0l0ZW1cIl06IHtcblx0XHRpZDpzdHJpbmcsXG5cdGJsb2dJZDpzdHJpbmcsXG5cdG9yZGVyOm51bWJlcixcblx0dGl0bGU6c3RyaW5nLFxuXHRib2R5OnN0cmluZyxcblx0YXV0aG9yOnN0cmluZyxcblx0aW1hZ2U6c3RyaW5nLFxuXHRpbWFnZUFsdDpzdHJpbmcsXG5cdHN1bW1hcnk6c3RyaW5nLFxuXHRkYXRlOk1vZGVsVHlwZXNbXCJEYXRlVGltZVwiXVxufTtcblx0W1wiQ2xvdWRMaW1pdHNcIl06IHtcblx0XHRzaXplOk1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdG1heFNpemU/Ok1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdGNvdW50Ok1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdG1heENvdW50PzpNb2RlbFR5cGVzW1wiQmlnSW50XCJdXG59O1xuXHRbXCJGYXFcIl06IHtcblx0XHRpZDpzdHJpbmcsXG5cdG9yZGVyOm51bWJlcixcblx0ZW50cmllczpNb2RlbFR5cGVzW1wiRmFxRW50cnlcIl1bXVxufTtcblx0W1wiRmFxRW50cnlcIl06IHtcblx0XHRpZDpzdHJpbmcsXG5cdGxhbmc6TW9kZWxUeXBlc1tcIkxhbmdcIl0sXG5cdHF1ZXN0aW9uOnN0cmluZyxcblx0YW5zd2VyOnN0cmluZyxcblx0ZmFxOk1vZGVsVHlwZXNbXCJGYXFcIl1cbn07XG5cdFtcIkZhcUl0ZW1cIl06IHtcblx0XHRvcmRlcjpudW1iZXIsXG5cdHF1ZXN0aW9uOnN0cmluZyxcblx0YW5zd2VyOnN0cmluZ1xufTtcblx0W1wiRmlsZVwiXToge1xuXHRcdGlkOnN0cmluZyxcblx0c2l6ZTpNb2RlbFR5cGVzW1wiQmlnSW50XCJdLFxuXHRzaXplQmVmb3JlOk1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdGNyZWF0ZWRBdDpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdHZGaWxlczpNb2RlbFR5cGVzW1wiVkZpbGVcIl1bXSxcblx0dkZpbGVzQ3VycmVudDpNb2RlbFR5cGVzW1wiVkZpbGVcIl1bXSxcblx0dXNlcnM6TW9kZWxUeXBlc1tcIkZpbGVzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdW10sXG5cdG1kNTpzdHJpbmcsXG5cdG1kNUVuY3J5cHRlZDpzdHJpbmcsXG5cdGRlbGV0ZWRBdD86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHR1c2VyQXBwOk1vZGVsVHlwZXNbXCJBcHBsaWNhdGlvbnNPblVzZXJzXCJdLFxuXHRtYWlsczpNb2RlbFR5cGVzW1wiRmlsZXNPbk1haWxzXCJdW10sXG5cdHZhbGlkYXRlZEF0PzpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdHVzZXI/Ok1vZGVsVHlwZXNbXCJGaWxlc09uVXNlcnNPbkFwcGxpY2F0aW9uc1wiXVxufTtcblx0W1wiRmlsZUNvbnRlbnRcIl06TW9kZWxUeXBlc1tcIkZpbGVDb250ZW50Q2xvdWRcIl0gfCBNb2RlbFR5cGVzW1wiRmlsZUNvbnRlbnRSZWNlaXZlZE1haWxcIl0gfCBNb2RlbFR5cGVzW1wiRmlsZUNvbnRlbnRTZW50TWFpbFwiXTtcblx0W1wiRmlsZUNvbnRlbnRCYXNlXCJdOiBNb2RlbFR5cGVzW1wiRmlsZUNvbnRlbnRDbG91ZFwiXSB8IE1vZGVsVHlwZXNbXCJGaWxlQ29udGVudFJlY2VpdmVkTWFpbFwiXSB8IE1vZGVsVHlwZXNbXCJGaWxlQ29udGVudFNlbnRNYWlsXCJdO1xuXHRbXCJGaWxlQ29udGVudENsb3VkXCJdOiB7XG5cdFx0cGFydHM6TW9kZWxUeXBlc1tcIkZpbGVDb250ZW50UGFydFwiXVtdLFxuXHRrZXk6c3RyaW5nLFxuXHRtZDU6c3RyaW5nLFxuXHRtZDVFbmNyeXB0ZWQ6c3RyaW5nLFxuXHR0b3RhbFNpemU6TW9kZWxUeXBlc1tcIkJpZ0ludFwiXSxcblx0dHlwZTpNb2RlbFR5cGVzW1wiRmlsZUNvbnRlbnRUeXBlXCJdLFxuXHRwdWJsaWNLZXk6c3RyaW5nXG59O1xuXHRbXCJGaWxlQ29udGVudFBhcnRcIl06IHtcblx0XHRjb250ZW50VXJsOnN0cmluZyxcblx0b3JkZXI6bnVtYmVyLFxuXHRtZDU6c3RyaW5nXG59O1xuXHRbXCJGaWxlQ29udGVudFJlY2VpdmVkTWFpbFwiXToge1xuXHRcdHBhcnRzOk1vZGVsVHlwZXNbXCJGaWxlQ29udGVudFBhcnRcIl1bXSxcblx0a2V5OnN0cmluZyxcblx0bWQ1OnN0cmluZyxcblx0bWQ1RW5jcnlwdGVkOnN0cmluZyxcblx0dG90YWxTaXplOk1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdHR5cGU6TW9kZWxUeXBlc1tcIkZpbGVDb250ZW50VHlwZVwiXSxcblx0c2VuZGVyUHVibGljS2V5OnN0cmluZ1xufTtcblx0W1wiRmlsZUNvbnRlbnRTZW50TWFpbFwiXToge1xuXHRcdHBhcnRzOk1vZGVsVHlwZXNbXCJGaWxlQ29udGVudFBhcnRcIl1bXSxcblx0a2V5OnN0cmluZyxcblx0bWQ1OnN0cmluZyxcblx0bWQ1RW5jcnlwdGVkOnN0cmluZyxcblx0dG90YWxTaXplOk1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdHR5cGU6TW9kZWxUeXBlc1tcIkZpbGVDb250ZW50VHlwZVwiXVxufTtcblx0W1wiRmlsZUNvbnRlbnRUeXBlXCJdOiBHcmFwaFFMVHlwZXNbXCJGaWxlQ29udGVudFR5cGVcIl07XG5cdFtcIkZpbGVQYXJ0XCJdOiB7XG5cdFx0aWQ6c3RyaW5nLFxuXHRmaWxlOk1vZGVsVHlwZXNbXCJGaWxlXCJdLFxuXHRmaWxlSWQ6c3RyaW5nLFxuXHRzaXplOk1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdG9yZGVyOm51bWJlcixcblx0bWQ1OnN0cmluZyxcblx0dmFsaWRhdGVkQXQ/Ok1vZGVsVHlwZXNbXCJEYXRlVGltZVwiXVxufTtcblx0W1wiRmlsZVBhcnRSZXNwb25zZVwiXToge1xuXHRcdGZpZWxkczpNb2RlbFR5cGVzW1wiSnNvblwiXSxcblx0dXJsOnN0cmluZyxcblx0b3JkZXI6bnVtYmVyXG59O1xuXHRbXCJGaWxlUmVzcG9uc2VcIl06IHtcblx0XHRmaWxlSWQ6c3RyaW5nLFxuXHRwYXJ0czpNb2RlbFR5cGVzW1wiRmlsZVBhcnRSZXNwb25zZVwiXVtdLFxuXHRmaWxlUGFydFNpemU6TW9kZWxUeXBlc1tcIkJpZ0ludFwiXVxufTtcblx0W1wiRmlsZVNoYXJlZFwiXToge1xuXHRcdHVzZXJJZDpzdHJpbmcsXG5cdG1lc3NhZ2U/OnN0cmluZyxcblx0YXBwSWQ6c3RyaW5nLFxuXHRpZDpzdHJpbmcsXG5cdGZpbGVuYW1lOnN0cmluZyxcblx0c2l6ZTpudW1iZXIsXG5cdHNpemVCZWZvcmU6bnVtYmVyXG59O1xuXHRbXCJGaWxlU2hhcmVkQ29udGVudFwiXToge1xuXHRcdG93bmVySWQ/OnN0cmluZyxcblx0cHViS2V5PzpzdHJpbmcsXG5cdG1lc3NhZ2U/OnN0cmluZyxcblx0YXBwSWQ6c3RyaW5nLFxuXHRpZDpzdHJpbmcsXG5cdHR5cGU6c3RyaW5nLFxuXHRmaWxlbmFtZTpzdHJpbmcsXG5cdGNvbnRlbnRVcmw6c3RyaW5nLFxuXHRrZXk6c3RyaW5nLFxuXHRzaXplOm51bWJlcixcblx0c2l6ZUJlZm9yZTpudW1iZXJcbn07XG5cdFtcIkZpbGVzT25NYWlsc1wiXToge1xuXHRcdGZpbGU6TW9kZWxUeXBlc1tcIkZpbGVcIl0sXG5cdGZpbGVLZXk6c3RyaW5nLFxuXHRmaWxlbmFtZTpzdHJpbmcsXG5cdG1haWw6TW9kZWxUeXBlc1tcIk1haWxcIl1cbn07XG5cdFtcIkZpbGVzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdOiB7XG5cdFx0ZmlsZTpNb2RlbFR5cGVzW1wiRmlsZVwiXSxcblx0dXNlckFwcDpNb2RlbFR5cGVzW1wiQXBwbGljYXRpb25zT25Vc2Vyc1wiXSxcblx0LyoqIEVuY3J5cHRlZCB3aXRoIFVzZXJBcHAga2V5cyAqL1xuXHRrZXk6c3RyaW5nXG59O1xuXHRbXCJGb2xkZXJcIl06IHtcblx0XHRpZDpzdHJpbmcsXG5cdGlzRmF2b3JpdGU6Ym9vbGVhbixcblx0Y3JlYXRlZEF0Ok1vZGVsVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0ZGVsZXRlZEF0PzpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdHVwZGF0ZWRBdDpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGNyZWF0ZWRCeTpNb2RlbFR5cGVzW1wiQXBwbGljYXRpb25zT25Vc2Vyc1wiXSxcblx0dXNlckFwcHM6TW9kZWxUeXBlc1tcIkZvbGRlcnNPblVzZXJzT25BcHBsaWNhdGlvbnNcIl1bXSxcblx0dXNlckFwcD86TW9kZWxUeXBlc1tcIkZvbGRlcnNPblVzZXJzT25BcHBsaWNhdGlvbnNcIl0sXG5cdG5hbWU6c3RyaW5nLFxuXHRwYXJlbnRGb2xkZXI/Ok1vZGVsVHlwZXNbXCJGb2xkZXJcIl0sXG5cdHN1YmZvbGRlcnM6TW9kZWxUeXBlc1tcIkZvbGRlclwiXVtdLFxuXHR2RmlsZXM6TW9kZWxUeXBlc1tcIlZGaWxlXCJdW10sXG5cdGJyZWFkY3J1bWI6TW9kZWxUeXBlc1tcIkZvbGRlckJyZWFkY3J1bWJJdGVtXCJdW11cbn07XG5cdFtcIkZvbGRlckJyZWFkY3J1bWJJdGVtXCJdOiB7XG5cdFx0aWQ6c3RyaW5nLFxuXHRuYW1lOnN0cmluZyxcblx0cHViS2V5OnN0cmluZyxcblx0bmFtZUtleT86c3RyaW5nXG59O1xuXHRbXCJGb2xkZXJTaXplXCJdOiB7XG5cdFx0c2l6ZTpNb2RlbFR5cGVzW1wiQmlnSW50XCJdLFxuXHRzaXplQmVmb3JlOk1vZGVsVHlwZXNbXCJCaWdJbnRcIl1cbn07XG5cdFtcIkZvbGRlcnNPblVzZXJzT25BcHBsaWNhdGlvbnNcIl06IHtcblx0XHRmb2xkZXI6TW9kZWxUeXBlc1tcIkZvbGRlclwiXSxcblx0dXNlckFwcDpNb2RlbFR5cGVzW1wiQXBwbGljYXRpb25zT25Vc2Vyc1wiXSxcblx0cmlnaHRzOk1vZGVsVHlwZXNbXCJSaWdodHNcIl0sXG5cdG5hbWVLZXk/OnN0cmluZyxcblx0aXNSb290OmJvb2xlYW5cbn07XG5cdFtcIk1haWxGaWxlSW5wdXRcIl06IEdyYXBoUUxUeXBlc1tcIk1haWxGaWxlSW5wdXRcIl07XG5cdFtcIk1haWxSZWNpcGllbnRJbnB1dFwiXTogR3JhcGhRTFR5cGVzW1wiTWFpbFJlY2lwaWVudElucHV0XCJdO1xuXHRbXCJOYW1lS2V5SW5wdXRcIl06IEdyYXBoUUxUeXBlc1tcIk5hbWVLZXlJbnB1dFwiXTtcblx0W1wiTmFtZUtleUlucHV0Rm9sZGVyc1wiXTogR3JhcGhRTFR5cGVzW1wiTmFtZUtleUlucHV0Rm9sZGVyc1wiXTtcblx0W1wiUGF5SW5wdXRcIl06IEdyYXBoUUxUeXBlc1tcIlBheUlucHV0XCJdO1xuXHRbXCJQYXlJbnB1dFR5cGVcIl06IEdyYXBoUUxUeXBlc1tcIlBheUlucHV0VHlwZVwiXTtcblx0W1wiU2hhcmVGaWxlSW5IaXN0b3J5SW5wdXRcIl06IEdyYXBoUUxUeXBlc1tcIlNoYXJlRmlsZUluSGlzdG9yeUlucHV0XCJdO1xuXHRbXCJTaGFyZUZpbGVLZXlJbnB1dFwiXTogR3JhcGhRTFR5cGVzW1wiU2hhcmVGaWxlS2V5SW5wdXRcIl07XG5cdFtcIlNoYXJlRm9sZGVyc0lucHV0XCJdOiBHcmFwaFFMVHlwZXNbXCJTaGFyZUZvbGRlcnNJbnB1dFwiXTtcblx0W1wiTGltaXRzXCJdOiB7XG5cdFx0ZG93bmxvYWRCYW5kd2lkdGg/Ok1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdGRvd25sb2FkQ291bnQ/Ok1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdGhhcmRGaWxlQ291bnQ/Ok1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdGhhcmRGaWxlU2l6ZT86TW9kZWxUeXBlc1tcIkJpZ0ludFwiXSxcblx0cGVyRmlsZVNpemU/Ok1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdHJlY2VpdmVkTWFpbHM6TW9kZWxUeXBlc1tcIk1haWxMaW1pdHNcIl0sXG5cdHNlbnRNYWlsczpNb2RlbFR5cGVzW1wiTWFpbExpbWl0c1wiXSxcblx0dXBsb2FkQmFuZHdpZHRoPzpNb2RlbFR5cGVzW1wiQmlnSW50XCJdLFxuXHR1cGxvYWRDb3VudD86TW9kZWxUeXBlc1tcIkJpZ0ludFwiXVxufTtcblx0W1wiTWFpbExpbWl0c1wiXToge1xuXHRcdGNvdW50PzpNb2RlbFR5cGVzW1wiQmlnSW50XCJdLFxuXHRmaWxlQ291bnQ/Ok1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdGZpbGVTaXplPzpNb2RlbFR5cGVzW1wiQmlnSW50XCJdLFxuXHRoYXJkQ291bnQ/Ok1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdGhhcmRGaWxlQ291bnQ/Ok1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdGhhcmRGaWxlU2l6ZT86TW9kZWxUeXBlc1tcIkJpZ0ludFwiXSxcblx0cGVyRmlsZVNpemU/Ok1vZGVsVHlwZXNbXCJCaWdJbnRcIl1cbn07XG5cdFtcIk1haWxMaW1pdHNWYWx1ZXNcIl06IHtcblx0XHRjb3VudDpNb2RlbFR5cGVzW1wiQmlnSW50XCJdLFxuXHRtYXhDb3VudD86TW9kZWxUeXBlc1tcIkJpZ0ludFwiXSxcblx0ZmlsZUNvdW50Ok1vZGVsVHlwZXNbXCJCaWdJbnRcIl0sXG5cdG1heEZpbGVDb3VudD86TW9kZWxUeXBlc1tcIkJpZ0ludFwiXSxcblx0ZmlsZVNpemU6TW9kZWxUeXBlc1tcIkJpZ0ludFwiXSxcblx0bWF4RmlsZVNpemU/Ok1vZGVsVHlwZXNbXCJCaWdJbnRcIl1cbn07XG5cdFtcIlF1ZXJ5TGltaXRzXCJdOiB7XG5cdFx0Y2xvdWQ6TW9kZWxUeXBlc1tcIkNsb3VkTGltaXRzXCJdLFxuXHRtYWlsOk1vZGVsVHlwZXNbXCJVc2VyTWFpbExpbWl0c1wiXVxufTtcblx0W1wiVXNlck1haWxMaW1pdHNcIl06IHtcblx0XHRzZW50Ok1vZGVsVHlwZXNbXCJNYWlsTGltaXRzVmFsdWVzXCJdLFxuXHRyZWNlaXZlZDpNb2RlbFR5cGVzW1wiTWFpbExpbWl0c1ZhbHVlc1wiXVxufTtcblx0W1wiTWFpbFwiXToge1xuXHRcdGlkOnN0cmluZyxcblx0YXBwOk1vZGVsVHlwZXNbXCJBcHBsaWNhdGlvblwiXSxcblx0Ym9keTpzdHJpbmcsXG5cdGNyZWF0ZWRBdDpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGRlbGV0ZWRBdD86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRmaWxlczpNb2RlbFR5cGVzW1wiRmlsZXNPbk1haWxzXCJdW10sXG5cdG1haWxJbnRlZ3JpdHk/Ok1vZGVsVHlwZXNbXCJNYWlsSW50ZWdyaXR5XCJdLFxuXHRtYWlsSW50ZWdyaXR5RHJhZnQ/Ok1vZGVsVHlwZXNbXCJNYWlsSW50ZWdyaXR5RHJhZnRcIl0sXG5cdG9wZW5lZEF0PzpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdHJlY2lwaWVudDpNb2RlbFR5cGVzW1wiVXNlclwiXSxcblx0c2VuZGVyOk1vZGVsVHlwZXNbXCJVc2VyXCJdLFxuXHRzdWJqZWN0OnN0cmluZyxcblx0dHlwZTpNb2RlbFR5cGVzW1wiTWFpbFR5cGVcIl0sXG5cdHJlY2lwaWVudHM6TW9kZWxUeXBlc1tcIlVzZXJcIl1bXVxufTtcblx0W1wiTWFpbEludGVncml0eVwiXToge1xuXHRcdGlkOnN0cmluZyxcblx0aGFzaDpzdHJpbmcsXG5cdGhhc2hLZXk6c3RyaW5nLFxuXHRhbnN3ZXJzOk1vZGVsVHlwZXNbXCJNYWlsSW50ZWdyaXR5XCJdW10sXG5cdGFwcDpNb2RlbFR5cGVzW1wiQXBwbGljYXRpb25cIl0sXG5cdG1haWxzOk1vZGVsVHlwZXNbXCJNYWlsXCJdW10sXG5cdHJlY2lwaWVudHM6TW9kZWxUeXBlc1tcIlVzZXJcIl1bXSxcblx0dGVtcG9yYXJ5UmVjaXBpZW50czpNb2RlbFR5cGVzW1wiVGVtcG9yYXJ5VXNlclwiXVtdLFxuXHRyZXBseVRvPzpNb2RlbFR5cGVzW1wiTWFpbEludGVncml0eVwiXVxufTtcblx0W1wiTWFpbEludGVncml0eURyYWZ0XCJdOiB7XG5cdFx0aWQ6c3RyaW5nLFxuXHRoYXNoOnN0cmluZyxcblx0aGFzaEtleTpzdHJpbmcsXG5cdGFwcDpNb2RlbFR5cGVzW1wiQXBwbGljYXRpb25cIl0sXG5cdG1haWw6TW9kZWxUeXBlc1tcIk1haWxcIl0sXG5cdHJlY2lwaWVudHM6TW9kZWxUeXBlc1tcIlVzZXJcIl1bXSxcblx0dGVtcG9yYXJ5UmVjaXBpZW50czpNb2RlbFR5cGVzW1wiVGVtcG9yYXJ5VXNlclwiXVtdLFxuXHRyZXBseVRvPzpNb2RlbFR5cGVzW1wiTWFpbEludGVncml0eVwiXVxufTtcblx0W1wiUGxhblwiXToge1xuXHRcdGlkOnN0cmluZyxcblx0a2luZDpNb2RlbFR5cGVzW1wiUGxhbktpbmRcIl0sXG5cdGNvZGVzOnN0cmluZ1tdLFxuXHRsaW1pdHM6TW9kZWxUeXBlc1tcIkxpbWl0c1wiXVxufTtcblx0W1wiUmVwb3J0XCJdOiB7XG5cdFx0aWQ6c3RyaW5nLFxuXHR1c2VyOk1vZGVsVHlwZXNbXCJVc2VyXCJdLFxuXHRyZXBvcnRlZFVzZXI6TW9kZWxUeXBlc1tcIlVzZXJcIl0sXG5cdGN1c3RvbU1lc3NhZ2U/OnN0cmluZ1xufTtcblx0W1wiVGVtcG9yYXJ5VXNlclwiXToge1xuXHRcdGlkOnN0cmluZyxcblx0bWFpbHM6TW9kZWxUeXBlc1tcIk1haWxJbnRlZ3JpdHlcIl1bXSxcblx0ZHJhZnRNYWlsczpNb2RlbFR5cGVzW1wiTWFpbEludGVncml0eURyYWZ0XCJdW10sXG5cdGVtYWlsPzpzdHJpbmdcbn07XG5cdFtcIlVzZXJcIl06IHtcblx0XHRpZDpzdHJpbmcsXG5cdGRlbGV0ZWRBdD86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRsYW5nOk1vZGVsVHlwZXNbXCJMYW5nXCJdLFxuXHRyZXBvcnRTZW50Ok1vZGVsVHlwZXNbXCJSZXBvcnRcIl1bXSxcblx0Z29kRmF0aGVyPzpNb2RlbFR5cGVzW1wiVXNlclwiXSxcblx0Z29kQ2hpbGRyZW46TW9kZWxUeXBlc1tcIlVzZXJcIl1bXSxcblx0Zmlyc3RuYW1lOnN0cmluZyxcblx0bGFzdG5hbWU6c3RyaW5nLFxuXHRlbWFpbDpzdHJpbmcsXG5cdHBob25lOnN0cmluZyxcblx0bGFzdExvZ2luOk1vZGVsVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0cm9sZTpNb2RlbFR5cGVzW1wiVXNlclJvbGVcIl0sXG5cdHNlc3Npb25zOk1vZGVsVHlwZXNbXCJVc2VyU2Vzc2lvblwiXVtdLFxuXHRjcmVhdGVkQXQ6TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRyZWNlaXZlZE1haWxzOk1vZGVsVHlwZXNbXCJNYWlsXCJdW10sXG5cdHdhaXRpbmdSZWNlaXZlZE1haWxzOk1vZGVsVHlwZXNbXCJXYWl0aW5nUmVjZWl2ZWRNYWlsXCJdW10sXG5cdHNlbnRNYWlsczpNb2RlbFR5cGVzW1wiTWFpbFwiXVtdLFxuXHRkcmFmdE1haWxzOk1vZGVsVHlwZXNbXCJNYWlsXCJdW10sXG5cdGFwcFNldHRpbmdzPzpNb2RlbFR5cGVzW1wiVXNlckFwcFNldHRpbmdzXCJdLFxuXHRhcHBsaWNhdGlvbnM6TW9kZWxUeXBlc1tcIkFwcGxpY2F0aW9uc09uVXNlcnNcIl1bXSxcblx0cHVibGljS2V5OnN0cmluZ1xufTtcblx0W1wiVXNlckFwcE5vdGlmaWNhdGlvbnNcIl06IHtcblx0XHRpZDpzdHJpbmcsXG5cdGVuYWJsZUFsbDpib29sZWFuLFxuXHRtYWlsOmJvb2xlYW4sXG5cdGNsb3VkOmJvb2xlYW4sXG5cdGRpc2FibGVBbGxVbnRpbD86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdXG59O1xuXHRbXCJVc2VyQXBwU2V0dGluZ3NcIl06IHtcblx0XHRpZDpzdHJpbmcsXG5cdGNsb3VkRmlsZURheXNGb3JEZWxldGU6bnVtYmVyLFxuXHRjbG91ZEZvbGRlckRheXNGb3JEZWxldGU6bnVtYmVyLFxuXHRoaXN0b3J5RmlsZURheXNGb3JEZWxldGU/Om51bWJlcixcblx0aGlzdG9yeU1heEZpbGVDb3VudDpudW1iZXIsXG5cdGF1dG9EaXNjb25uZWN0RGVsYXk/Om51bWJlclxufTtcblx0W1wiVXNlclNlc3Npb25cIl06IHtcblx0XHRpZDpzdHJpbmcsXG5cdGFwcFNlc3Npb25zOk1vZGVsVHlwZXNbXCJBcHBTZXNzaW9uXCJdW10sXG5cdGxhc3RBY3Rpdml0eT86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHR1c2VyQWdlbnQ/OnN0cmluZyxcblx0aXA/OnN0cmluZyxcblx0Y2l0eT86c3RyaW5nLFxuXHRjb3VudHJ5PzpzdHJpbmcsXG5cdGNyZWF0ZWRBdDpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl1cbn07XG5cdFtcIlZGaWxlXCJdOiB7XG5cdFx0aWQ6c3RyaW5nLFxuXHRpc0Zhdm9yaXRlOmJvb2xlYW4sXG5cdGNyZWF0ZWRBdDpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGRlbGV0ZWRBdD86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRmaWxlbmFtZTpzdHJpbmcsXG5cdHVzZXJBcHBzOk1vZGVsVHlwZXNbXCJWRmlsZXNPblVzZXJzT25BcHBsaWNhdGlvbnNcIl1bXSxcblx0Y3JlYXRlZEJ5Ok1vZGVsVHlwZXNbXCJBcHBsaWNhdGlvbnNPblVzZXJzXCJdLFxuXHR1c2VyQXBwPzpNb2RlbFR5cGVzW1wiVkZpbGVzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdLFxuXHRmb2xkZXI6TW9kZWxUeXBlc1tcIkZvbGRlclwiXSxcblx0aGlzdG9yeTpNb2RlbFR5cGVzW1wiRmlsZVwiXVtdLFxuXHRjdXJyZW50PzpNb2RlbFR5cGVzW1wiRmlsZVwiXSxcblx0dXBkYXRlZEF0Ok1vZGVsVHlwZXNbXCJEYXRlVGltZVwiXVxufTtcblx0W1wiVkZpbGVzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdOiB7XG5cdFx0dkZpbGU6TW9kZWxUeXBlc1tcIlZGaWxlXCJdLFxuXHR1c2VyQXBwOk1vZGVsVHlwZXNbXCJBcHBsaWNhdGlvbnNPblVzZXJzXCJdLFxuXHRyaWdodHM6TW9kZWxUeXBlc1tcIlJpZ2h0c1wiXSxcblx0bmFtZUtleTpzdHJpbmcsXG5cdGlzUm9vdDpib29sZWFuXG59O1xuXHRbXCJXYWl0aW5nUmVjZWl2ZWRNYWlsXCJdOiB7XG5cdFx0c2VuZGVyOk1vZGVsVHlwZXNbXCJVc2VyXCJdLFxuXHRkYXRlOk1vZGVsVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0cmVjaXBpZW50czpNb2RlbFR5cGVzW1wiVXNlclwiXVtdLFxuXHR0ZW1wb3JhcnlSZWNpcGllbnRzOk1vZGVsVHlwZXNbXCJUZW1wb3JhcnlVc2VyXCJdW10sXG5cdGF0dGFjaG1lbnRzQ291bnQ6bnVtYmVyXG59O1xuXHRbXCJQYXltZW50SW5mb3NcIl06IHtcblx0XHRob3N0ZWRVcmw6c3RyaW5nLFxuXHRjdXJyZW50U3Vic2NyaXB0aW9uOk1vZGVsVHlwZXNbXCJSZWN1cmx5U3Vic2NyaXB0aW9uXCJdLFxuXHRpbnZvaWNlczpNb2RlbFR5cGVzW1wiUmVjdXJseUludm9pY2VzXCJdW11cbn07XG5cdFtcIlJlY3VybHlJbnZvaWNlc1wiXToge1xuXHRcdHBkZjpzdHJpbmcsXG5cdGRhdGU6TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRkdWU6TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRzdGF0dXM6c3RyaW5nLFxuXHR0b3RhbDpudW1iZXIsXG5cdG5hbWU6c3RyaW5nLFxuXHRjdXJyZW5jeTpzdHJpbmdcbn07XG5cdFtcIlJlY3VybHlTdWJzY3JpcHRpb25cIl06IHtcblx0XHRhdXRvcmVuZXc6Ym9vbGVhbixcblx0YWN0aXZhdGVkQXQ/Ok1vZGVsVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0Y3VycmVudFBlcmlvZEVuZHNBdD86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRjdXJyZW50UGVyaW9kU3RhcnRlZEF0PzpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGNhbmNlbGVkQXQ/Ok1vZGVsVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0Y3JlYXRlZEF0PzpNb2RlbFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGV4cGlyZXNBdD86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRwYXVzZWRBdD86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHR0cmlhbEVuZHNBdD86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHR0cmlhbFN0YXJ0ZWRBdD86TW9kZWxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHR1cGRhdGVkQXQ/Ok1vZGVsVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0c3RhdGU6c3RyaW5nLFxuXHRjb2xsZWN0aW9uTWV0aG9kOnN0cmluZyxcblx0cGxhbj86c3RyaW5nLFxuXHRwbGFuQ29kZT86c3RyaW5nLFxuXHR0b3RhbD86bnVtYmVyXG59O1xuXHRbXCJTaGFyZUZvbGRlclJlc3BvbnNlXCJdOiB7XG5cdFx0Zm9sZGVyczpzdHJpbmdbXSxcblx0dkZpbGVzOnN0cmluZ1tdXG59O1xuXHRbXCJRdWVyeVwiXToge1xuXHRcdGFwcE5vdGlmaWNhdGlvbnM/Ok1vZGVsVHlwZXNbXCJVc2VyQXBwTm90aWZpY2F0aW9uc1wiXSxcblx0YmxvZzpNb2RlbFR5cGVzW1wiQmxvZ0l0ZW1cIl1bXSxcblx0ZGJDb25maWc/Ok1vZGVsVHlwZXNbXCJKc29uXCJdLFxuXHRkYkdldD86TW9kZWxUeXBlc1tcIkpzb25cIl0sXG5cdGRiU2VhcmNoOk1vZGVsVHlwZXNbXCJKc29uXCJdW10sXG5cdGRlbGV0ZWRGb2xkZXJzOk1vZGVsVHlwZXNbXCJGb2xkZXJcIl1bXSxcblx0ZGVsZXRlZE1haWxzOk1vZGVsVHlwZXNbXCJNYWlsXCJdW10sXG5cdGRlbGV0ZWRWRmlsZXM6TW9kZWxUeXBlc1tcIlZGaWxlXCJdW10sXG5cdGZhcTpNb2RlbFR5cGVzW1wiRmFxSXRlbVwiXVtdLFxuXHRmaWxlPzpNb2RlbFR5cGVzW1wiRmlsZVwiXSxcblx0ZmlsZUNvbnRlbnQ/Ok1vZGVsVHlwZXNbXCJGaWxlQ29udGVudFwiXSxcblx0ZmlsZXNTaGFyZWRXaXRoTWU6TW9kZWxUeXBlc1tcIkZpbGVTaGFyZWRDb250ZW50XCJdW10sXG5cdGZvbGRlcj86TW9kZWxUeXBlc1tcIkZvbGRlclwiXSxcblx0Zm9sZGVyU2l6ZT86TW9kZWxUeXBlc1tcIkZvbGRlclNpemVcIl0sXG5cdGZvbGRlcnNTaGFyZWRXaXRoTWU6TW9kZWxUeXBlc1tcIkZvbGRlclwiXVtdLFxuXHRsaW1pdHM/Ok1vZGVsVHlwZXNbXCJRdWVyeUxpbWl0c1wiXSxcblx0bWFpbD86TW9kZWxUeXBlc1tcIk1haWxcIl0sXG5cdHBheW1lbnRJbmZvcz86TW9kZWxUeXBlc1tcIlBheW1lbnRJbmZvc1wiXSxcblx0cGxhbnM6TW9kZWxUeXBlc1tcIlBsYW5cIl1bXSxcblx0c2hhcmVkRm9sZGVyczpNb2RlbFR5cGVzW1wiRm9sZGVyXCJdW10sXG5cdHNoYXJlZFZGaWxlczpNb2RlbFR5cGVzW1wiVkZpbGVcIl1bXSxcblx0dGVzdD86Ym9vbGVhbixcblx0dW5yZWFkUmVjZWl2ZWRNYWlsc0NvdW50PzpudW1iZXIsXG5cdHVzZXI/Ok1vZGVsVHlwZXNbXCJVc2VyXCJdLFxuXHR2RmlsZT86TW9kZWxUeXBlc1tcIlZGaWxlXCJdLFxuXHR2RmlsZXNTaGFyZWRXaXRoTWU6TW9kZWxUeXBlc1tcIlZGaWxlXCJdW10sXG5cdHVzZXJMaXN0Ok1vZGVsVHlwZXNbXCJVc2VyXCJdW11cbn07XG5cdFtcIk11dGF0aW9uXCJdOiB7XG5cdFx0YWRkRmlsZVRvSGlzdG9yeTpNb2RlbFR5cGVzW1wiVkZpbGVcIl0sXG5cdGNhbmNlbFBheW1lbnQ/OmJvb2xlYW4sXG5cdGNyZWF0ZUFwcGxpY2F0aW9uPzpzdHJpbmcsXG5cdGNyZWF0ZURyYWZ0TWFpbD86TW9kZWxUeXBlc1tcIk1haWxcIl0sXG5cdGNyZWF0ZUZvbGRlcj86TW9kZWxUeXBlc1tcIkZvbGRlclwiXSxcblx0ZGJDb25maWc6TW9kZWxUeXBlc1tcIkpzb25cIl0sXG5cdGRiU2V0PzpNb2RlbFR5cGVzW1wiSnNvblwiXSxcblx0ZGVsZXRlRHJhZnRNYWlsPzpib29sZWFuLFxuXHRkZWxldGVGaWxlOmJvb2xlYW4sXG5cdGRlbGV0ZUZvbGRlcj86Ym9vbGVhbixcblx0ZGVsZXRlRm9sZGVyQ2xvdWRUcmFzaD86Ym9vbGVhbixcblx0ZGVsZXRlRm9sZGVyU2hhcmluZzpib29sZWFuLFxuXHRkZWxldGVNYWlsOmJvb2xlYW4sXG5cdGRlbGV0ZU1haWxUcmFzaDpib29sZWFuLFxuXHRkZWxldGVVc2VyPzpib29sZWFuLFxuXHRkZWxldGVWRmlsZTpib29sZWFuLFxuXHRkZWxldGVWRmlsZUNsb3VkVHJhc2g/OmJvb2xlYW4sXG5cdGRlbGV0ZVZGaWxlU2hhcmluZzpib29sZWFuLFxuXHRkdXBsaWNhdGVWRmlsZTpib29sZWFuLFxuXHRlbXB0eUNsb3VkVHJhc2g/OmJvb2xlYW4sXG5cdGVtcHR5TWFpbFRyYXNoPzpib29sZWFuLFxuXHRsb2dvdXQ/OmJvb2xlYW4sXG5cdG1vdmVGaWxlcz86Ym9vbGVhbixcblx0bW92ZUZvbGRlcnM/OmJvb2xlYW4sXG5cdHBheTpib29sZWFuLFxuXHRyZWFkTWFpbD86Ym9vbGVhbixcblx0cmVjb3ZlckZvbGRlcj86Ym9vbGVhbixcblx0cmVjb3Zlck1haWw6Ym9vbGVhbixcblx0cmVjb3ZlclZGaWxlOmJvb2xlYW4sXG5cdHNhdmVJbkNsb3VkOk1vZGVsVHlwZXNbXCJWRmlsZVwiXSxcblx0c2VuZERyYWZ0TWFpbD86Ym9vbGVhbixcblx0c2VuZE9uZU1haWw/OmJvb2xlYW4sXG5cdHNlbmRSZXBvcnQ/Ok1vZGVsVHlwZXNbXCJSZXBvcnRcIl0sXG5cdHNoYXJlRmlsZUluSGlzdG9yeTpib29sZWFuLFxuXHRzaGFyZUZvbGRlcjpNb2RlbFR5cGVzW1wiU2hhcmVGb2xkZXJSZXNwb25zZVwiXSxcblx0c2hhcmVGb2xkZXJGaW5pc2g/OmJvb2xlYW4sXG5cdHNoYXJlVkZpbGU/OmJvb2xlYW4sXG5cdHVucmVhZE1haWw/OmJvb2xlYW4sXG5cdHVwZGF0ZUFwcE5vdGlmaWNhdGlvbnM/Ok1vZGVsVHlwZXNbXCJVc2VyQXBwTm90aWZpY2F0aW9uc1wiXSxcblx0dXBkYXRlQXBwU2V0dGluZ3M6TW9kZWxUeXBlc1tcIlVzZXJBcHBTZXR0aW5nc1wiXSxcblx0dXBkYXRlRHJhZnRNYWlsPzpNb2RlbFR5cGVzW1wiTWFpbFwiXSxcblx0dXBkYXRlRmlsZT86TW9kZWxUeXBlc1tcIlZGaWxlXCJdLFxuXHR1cGRhdGVGb2xkZXI/Ok1vZGVsVHlwZXNbXCJGb2xkZXJcIl0sXG5cdHVwZGF0ZVByb2ZpbGU/Ok1vZGVsVHlwZXNbXCJVc2VyXCJdLFxuXHR1cGxvYWRBbm9ueW1vdXM/Ok1vZGVsVHlwZXNbXCJGaWxlUmVzcG9uc2VcIl0sXG5cdHVwbG9hZEZpbGU/Ok1vZGVsVHlwZXNbXCJGaWxlUmVzcG9uc2VcIl0sXG5cdHVwbG9hZEZpbGVFbmQ/OnN0cmluZyxcblx0dXBsb2FkRmlsZVBhcnRFbmQ6Ym9vbGVhbixcblx0Y2hhbmdlVXNlclBsYW4/Ok1vZGVsVHlwZXNbXCJVc2VyXCJdXG59O1xuXHRbXCJTdWJzY3JpcHRpb25cIl06IHtcblx0XHR0ZXN0OmJvb2xlYW5cbn1cbiAgICB9XG5cbmV4cG9ydCB0eXBlIEdyYXBoUUxUeXBlcyA9IHtcbiAgICAvKiogVGhlIGBCaWdJbnRgIHNjYWxhciB0eXBlIHJlcHJlc2VudHMgbm9uLWZyYWN0aW9uYWwgc2lnbmVkIHdob2xlIG51bWVyaWMgdmFsdWVzLlxuQHNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9CaWdJbnQgKi9cbltcIkJpZ0ludFwiXTphbnk7XG5cdC8qKiBUaGUgYEJ5dGVgIHNjYWxhciB0eXBlIHJlcHJlc2VudHMgYnl0ZSB2YWx1ZSBhcyBhIEJ1ZmZlciAqL1xuW1wiQnl0ZXNcIl06YW55O1xuXHQvKiogQSBkYXRlLXRpbWUgc3RyaW5nIGF0IFVUQywgc3VjaCBhcyAyMDA3LTEyLTAzVDEwOjE1OjMwWiwgY29tcGxpYW50IHdpdGggdGhlIGBkYXRlLXRpbWVgIGZvcm1hdCBvdXRsaW5lZCBpbiBzZWN0aW9uIDUuNiBvZiB0aGUgUkZDIDMzMzkgcHJvZmlsZSBvZiB0aGUgSVNPIDg2MDEgc3RhbmRhcmQgZm9yIHJlcHJlc2VudGF0aW9uIG9mIGRhdGVzIGFuZCB0aW1lcyB1c2luZyB0aGUgR3JlZ29yaWFuIGNhbGVuZGFyLiAqL1xuW1wiRGF0ZVRpbWVcIl06YW55O1xuXHQvKiogQW4gYXJiaXRyYXJ5LXByZWNpc2lvbiBEZWNpbWFsIHR5cGUgKi9cbltcIkRlY2ltYWxcIl06YW55O1xuXHQvKiogVGhlIGBKU09OT2JqZWN0YCBzY2FsYXIgdHlwZSByZXByZXNlbnRzIEpTT04gb2JqZWN0cyBhcyBzcGVjaWZpZWQgYnkgW0VDTUEtNDA0XShodHRwOi8vd3d3LmVjbWEtaW50ZXJuYXRpb25hbC5vcmcvcHVibGljYXRpb25zL2ZpbGVzL0VDTUEtU1QvRUNNQS00MDQucGRmKS4gKi9cbltcIkpzb25cIl06YW55O1xuXHRbXCJMYW5nXCJdOiBMYW5nO1xuXHRbXCJQbGFuS2luZFwiXTogUGxhbktpbmQ7XG5cdFtcIlVzZXJSb2xlXCJdOiBVc2VyUm9sZTtcblx0W1wiTWFpbFR5cGVcIl06IE1haWxUeXBlO1xuXHRbXCJSaWdodHNcIl06IFJpZ2h0cztcblx0W1wiQXBwS2V5UGFpclwiXToge1xuXHRfX3R5cGVuYW1lOiBcIkFwcEtleVBhaXJcIixcblx0cHViOiBzdHJpbmdcbn07XG5cdFtcIkFwcFNlc3Npb25cIl06IHtcblx0X190eXBlbmFtZTogXCJBcHBTZXNzaW9uXCIsXG5cdGlkOiBzdHJpbmcsXG5cdGxhc3RBY3Rpdml0eT86IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHR1c2VyQWdlbnQ/OiBzdHJpbmcsXG5cdGlwPzogc3RyaW5nLFxuXHRjaXR5Pzogc3RyaW5nLFxuXHRjb3VudHJ5Pzogc3RyaW5nLFxuXHR1c2VyU2Vzc2lvbjogR3JhcGhRTFR5cGVzW1wiVXNlclNlc3Npb25cIl0sXG5cdHVzZXJBcHA/OiBHcmFwaFFMVHlwZXNbXCJBcHBsaWNhdGlvbnNPblVzZXJzXCJdLFxuXHRjcmVhdGVkQXQ6IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdXG59O1xuXHRbXCJBcHBsaWNhdGlvblwiXToge1xuXHRfX3R5cGVuYW1lOiBcIkFwcGxpY2F0aW9uXCIsXG5cdGlkOiBzdHJpbmcsXG5cdG5hbWU6IHN0cmluZ1xufTtcblx0W1wiQXBwbGljYXRpb25zT25Vc2Vyc1wiXToge1xuXHRfX3R5cGVuYW1lOiBcIkFwcGxpY2F0aW9uc09uVXNlcnNcIixcblx0ZmFrZVVzZXJJZDogc3RyaW5nLFxuXHRrZXlQYWlyPzogR3JhcGhRTFR5cGVzW1wiQXBwS2V5UGFpclwiXSxcblx0c2Vzc2lvbnM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIkFwcFNlc3Npb25cIl0+LFxuXHRhcHA6IEdyYXBoUUxUeXBlc1tcIkFwcGxpY2F0aW9uXCJdLFxuXHR1c2VyOiBHcmFwaFFMVHlwZXNbXCJVc2VyXCJdLFxuXHRmb2xkZXJzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJGb2xkZXJzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdPixcblx0c2V0dGluZ3M6IEdyYXBoUUxUeXBlc1tcIlVzZXJBcHBTZXR0aW5nc1wiXVxufTtcblx0W1wiQmxvZ1wiXToge1xuXHRfX3R5cGVuYW1lOiBcIkJsb2dcIixcblx0aWQ6IHN0cmluZyxcblx0b3JkZXI6IG51bWJlcixcblx0ZW50cmllczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiQmxvZ0VudHJ5XCJdPlxufTtcblx0W1wiQmxvZ0VudHJ5XCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiQmxvZ0VudHJ5XCIsXG5cdGlkOiBzdHJpbmcsXG5cdGxhbmc6IEdyYXBoUUxUeXBlc1tcIkxhbmdcIl0sXG5cdGF1dGhvcjogc3RyaW5nLFxuXHRib2R5OiBzdHJpbmcsXG5cdGRhdGU6IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRpbWFnZTogc3RyaW5nLFxuXHRzdW1tYXJ5OiBzdHJpbmcsXG5cdHRpdGxlOiBzdHJpbmdcbn07XG5cdFtcIkJsb2dJdGVtXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiQmxvZ0l0ZW1cIixcblx0aWQ6IHN0cmluZyxcblx0YmxvZ0lkOiBzdHJpbmcsXG5cdG9yZGVyOiBudW1iZXIsXG5cdHRpdGxlOiBzdHJpbmcsXG5cdGJvZHk6IHN0cmluZyxcblx0YXV0aG9yOiBzdHJpbmcsXG5cdGltYWdlOiBzdHJpbmcsXG5cdGltYWdlQWx0OiBzdHJpbmcsXG5cdHN1bW1hcnk6IHN0cmluZyxcblx0ZGF0ZTogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl1cbn07XG5cdFtcIkNsb3VkTGltaXRzXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiQ2xvdWRMaW1pdHNcIixcblx0c2l6ZTogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRtYXhTaXplPzogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRjb3VudDogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRtYXhDb3VudD86IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXVxufTtcblx0W1wiRmFxXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiRmFxXCIsXG5cdGlkOiBzdHJpbmcsXG5cdG9yZGVyOiBudW1iZXIsXG5cdGVudHJpZXM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIkZhcUVudHJ5XCJdPlxufTtcblx0W1wiRmFxRW50cnlcIl06IHtcblx0X190eXBlbmFtZTogXCJGYXFFbnRyeVwiLFxuXHRpZDogc3RyaW5nLFxuXHRsYW5nOiBHcmFwaFFMVHlwZXNbXCJMYW5nXCJdLFxuXHRxdWVzdGlvbjogc3RyaW5nLFxuXHRhbnN3ZXI6IHN0cmluZyxcblx0ZmFxOiBHcmFwaFFMVHlwZXNbXCJGYXFcIl1cbn07XG5cdFtcIkZhcUl0ZW1cIl06IHtcblx0X190eXBlbmFtZTogXCJGYXFJdGVtXCIsXG5cdG9yZGVyOiBudW1iZXIsXG5cdHF1ZXN0aW9uOiBzdHJpbmcsXG5cdGFuc3dlcjogc3RyaW5nXG59O1xuXHRbXCJGaWxlXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiRmlsZVwiLFxuXHRpZDogc3RyaW5nLFxuXHRzaXplOiBHcmFwaFFMVHlwZXNbXCJCaWdJbnRcIl0sXG5cdHNpemVCZWZvcmU6IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXSxcblx0Y3JlYXRlZEF0OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0dkZpbGVzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJWRmlsZVwiXT4sXG5cdHZGaWxlc0N1cnJlbnQ6IEFycmF5PEdyYXBoUUxUeXBlc1tcIlZGaWxlXCJdPixcblx0dXNlcnM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIkZpbGVzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdPixcblx0bWQ1OiBzdHJpbmcsXG5cdG1kNUVuY3J5cHRlZDogc3RyaW5nLFxuXHRkZWxldGVkQXQ/OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0dXNlckFwcDogR3JhcGhRTFR5cGVzW1wiQXBwbGljYXRpb25zT25Vc2Vyc1wiXSxcblx0bWFpbHM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIkZpbGVzT25NYWlsc1wiXT4sXG5cdHZhbGlkYXRlZEF0PzogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdHVzZXI/OiBHcmFwaFFMVHlwZXNbXCJGaWxlc09uVXNlcnNPbkFwcGxpY2F0aW9uc1wiXVxufTtcblx0W1wiRmlsZUNvbnRlbnRcIl06e1xuXHRfX3R5cGVuYW1lOlwiRmlsZUNvbnRlbnRDbG91ZFwiIHwgXCJGaWxlQ29udGVudFJlY2VpdmVkTWFpbFwiIHwgXCJGaWxlQ29udGVudFNlbnRNYWlsXCJcblx0WycuLi5vbiBGaWxlQ29udGVudENsb3VkJ106ICdfX3VuaW9uJyAmIEdyYXBoUUxUeXBlc1tcIkZpbGVDb250ZW50Q2xvdWRcIl07XG5cdFsnLi4ub24gRmlsZUNvbnRlbnRSZWNlaXZlZE1haWwnXTogJ19fdW5pb24nICYgR3JhcGhRTFR5cGVzW1wiRmlsZUNvbnRlbnRSZWNlaXZlZE1haWxcIl07XG5cdFsnLi4ub24gRmlsZUNvbnRlbnRTZW50TWFpbCddOiAnX191bmlvbicgJiBHcmFwaFFMVHlwZXNbXCJGaWxlQ29udGVudFNlbnRNYWlsXCJdO1xufTtcblx0W1wiRmlsZUNvbnRlbnRCYXNlXCJdOiB7XG5cdF9fdHlwZW5hbWU6XCJGaWxlQ29udGVudENsb3VkXCIgfCBcIkZpbGVDb250ZW50UmVjZWl2ZWRNYWlsXCIgfCBcIkZpbGVDb250ZW50U2VudE1haWxcIixcblx0cGFydHM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIkZpbGVDb250ZW50UGFydFwiXT4sXG5cdGtleTogc3RyaW5nLFxuXHRtZDU6IHN0cmluZyxcblx0bWQ1RW5jcnlwdGVkOiBzdHJpbmcsXG5cdHRvdGFsU2l6ZTogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHR0eXBlOiBHcmFwaFFMVHlwZXNbXCJGaWxlQ29udGVudFR5cGVcIl1cblx0WycuLi5vbiBGaWxlQ29udGVudENsb3VkJ106ICdfX3VuaW9uJyAmIEdyYXBoUUxUeXBlc1tcIkZpbGVDb250ZW50Q2xvdWRcIl07XG5cdFsnLi4ub24gRmlsZUNvbnRlbnRSZWNlaXZlZE1haWwnXTogJ19fdW5pb24nICYgR3JhcGhRTFR5cGVzW1wiRmlsZUNvbnRlbnRSZWNlaXZlZE1haWxcIl07XG5cdFsnLi4ub24gRmlsZUNvbnRlbnRTZW50TWFpbCddOiAnX191bmlvbicgJiBHcmFwaFFMVHlwZXNbXCJGaWxlQ29udGVudFNlbnRNYWlsXCJdO1xufTtcblx0W1wiRmlsZUNvbnRlbnRDbG91ZFwiXToge1xuXHRfX3R5cGVuYW1lOiBcIkZpbGVDb250ZW50Q2xvdWRcIixcblx0cGFydHM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIkZpbGVDb250ZW50UGFydFwiXT4sXG5cdGtleTogc3RyaW5nLFxuXHRtZDU6IHN0cmluZyxcblx0bWQ1RW5jcnlwdGVkOiBzdHJpbmcsXG5cdHRvdGFsU2l6ZTogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHR0eXBlOiBHcmFwaFFMVHlwZXNbXCJGaWxlQ29udGVudFR5cGVcIl0sXG5cdHB1YmxpY0tleTogc3RyaW5nXG59O1xuXHRbXCJGaWxlQ29udGVudFBhcnRcIl06IHtcblx0X190eXBlbmFtZTogXCJGaWxlQ29udGVudFBhcnRcIixcblx0Y29udGVudFVybDogc3RyaW5nLFxuXHRvcmRlcjogbnVtYmVyLFxuXHRtZDU6IHN0cmluZ1xufTtcblx0W1wiRmlsZUNvbnRlbnRSZWNlaXZlZE1haWxcIl06IHtcblx0X190eXBlbmFtZTogXCJGaWxlQ29udGVudFJlY2VpdmVkTWFpbFwiLFxuXHRwYXJ0czogQXJyYXk8R3JhcGhRTFR5cGVzW1wiRmlsZUNvbnRlbnRQYXJ0XCJdPixcblx0a2V5OiBzdHJpbmcsXG5cdG1kNTogc3RyaW5nLFxuXHRtZDVFbmNyeXB0ZWQ6IHN0cmluZyxcblx0dG90YWxTaXplOiBHcmFwaFFMVHlwZXNbXCJCaWdJbnRcIl0sXG5cdHR5cGU6IEdyYXBoUUxUeXBlc1tcIkZpbGVDb250ZW50VHlwZVwiXSxcblx0c2VuZGVyUHVibGljS2V5OiBzdHJpbmdcbn07XG5cdFtcIkZpbGVDb250ZW50U2VudE1haWxcIl06IHtcblx0X190eXBlbmFtZTogXCJGaWxlQ29udGVudFNlbnRNYWlsXCIsXG5cdHBhcnRzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJGaWxlQ29udGVudFBhcnRcIl0+LFxuXHRrZXk6IHN0cmluZyxcblx0bWQ1OiBzdHJpbmcsXG5cdG1kNUVuY3J5cHRlZDogc3RyaW5nLFxuXHR0b3RhbFNpemU6IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXSxcblx0dHlwZTogR3JhcGhRTFR5cGVzW1wiRmlsZUNvbnRlbnRUeXBlXCJdXG59O1xuXHRbXCJGaWxlQ29udGVudFR5cGVcIl06IEZpbGVDb250ZW50VHlwZTtcblx0W1wiRmlsZVBhcnRcIl06IHtcblx0X190eXBlbmFtZTogXCJGaWxlUGFydFwiLFxuXHRpZDogc3RyaW5nLFxuXHRmaWxlOiBHcmFwaFFMVHlwZXNbXCJGaWxlXCJdLFxuXHRmaWxlSWQ6IHN0cmluZyxcblx0c2l6ZTogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRvcmRlcjogbnVtYmVyLFxuXHRtZDU6IHN0cmluZyxcblx0dmFsaWRhdGVkQXQ/OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXVxufTtcblx0W1wiRmlsZVBhcnRSZXNwb25zZVwiXToge1xuXHRfX3R5cGVuYW1lOiBcIkZpbGVQYXJ0UmVzcG9uc2VcIixcblx0ZmllbGRzOiBHcmFwaFFMVHlwZXNbXCJKc29uXCJdLFxuXHR1cmw6IHN0cmluZyxcblx0b3JkZXI6IG51bWJlclxufTtcblx0W1wiRmlsZVJlc3BvbnNlXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiRmlsZVJlc3BvbnNlXCIsXG5cdGZpbGVJZDogc3RyaW5nLFxuXHRwYXJ0czogQXJyYXk8R3JhcGhRTFR5cGVzW1wiRmlsZVBhcnRSZXNwb25zZVwiXT4sXG5cdGZpbGVQYXJ0U2l6ZTogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdXG59O1xuXHRbXCJGaWxlU2hhcmVkXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiRmlsZVNoYXJlZFwiLFxuXHR1c2VySWQ6IHN0cmluZyxcblx0bWVzc2FnZT86IHN0cmluZyxcblx0YXBwSWQ6IHN0cmluZyxcblx0aWQ6IHN0cmluZyxcblx0ZmlsZW5hbWU6IHN0cmluZyxcblx0c2l6ZTogbnVtYmVyLFxuXHRzaXplQmVmb3JlOiBudW1iZXJcbn07XG5cdFtcIkZpbGVTaGFyZWRDb250ZW50XCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiRmlsZVNoYXJlZENvbnRlbnRcIixcblx0b3duZXJJZD86IHN0cmluZyxcblx0cHViS2V5Pzogc3RyaW5nLFxuXHRtZXNzYWdlPzogc3RyaW5nLFxuXHRhcHBJZDogc3RyaW5nLFxuXHRpZDogc3RyaW5nLFxuXHR0eXBlOiBzdHJpbmcsXG5cdGZpbGVuYW1lOiBzdHJpbmcsXG5cdGNvbnRlbnRVcmw6IHN0cmluZyxcblx0a2V5OiBzdHJpbmcsXG5cdHNpemU6IG51bWJlcixcblx0c2l6ZUJlZm9yZTogbnVtYmVyXG59O1xuXHRbXCJGaWxlc09uTWFpbHNcIl06IHtcblx0X190eXBlbmFtZTogXCJGaWxlc09uTWFpbHNcIixcblx0ZmlsZTogR3JhcGhRTFR5cGVzW1wiRmlsZVwiXSxcblx0ZmlsZUtleTogc3RyaW5nLFxuXHRmaWxlbmFtZTogc3RyaW5nLFxuXHRtYWlsOiBHcmFwaFFMVHlwZXNbXCJNYWlsXCJdXG59O1xuXHRbXCJGaWxlc09uVXNlcnNPbkFwcGxpY2F0aW9uc1wiXToge1xuXHRfX3R5cGVuYW1lOiBcIkZpbGVzT25Vc2Vyc09uQXBwbGljYXRpb25zXCIsXG5cdGZpbGU6IEdyYXBoUUxUeXBlc1tcIkZpbGVcIl0sXG5cdHVzZXJBcHA6IEdyYXBoUUxUeXBlc1tcIkFwcGxpY2F0aW9uc09uVXNlcnNcIl0sXG5cdC8qKiBFbmNyeXB0ZWQgd2l0aCBVc2VyQXBwIGtleXMgKi9cblx0a2V5OiBzdHJpbmdcbn07XG5cdFtcIkZvbGRlclwiXToge1xuXHRfX3R5cGVuYW1lOiBcIkZvbGRlclwiLFxuXHRpZDogc3RyaW5nLFxuXHRpc0Zhdm9yaXRlOiBib29sZWFuLFxuXHRjcmVhdGVkQXQ6IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRkZWxldGVkQXQ/OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0dXBkYXRlZEF0OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0Y3JlYXRlZEJ5OiBHcmFwaFFMVHlwZXNbXCJBcHBsaWNhdGlvbnNPblVzZXJzXCJdLFxuXHR1c2VyQXBwczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiRm9sZGVyc09uVXNlcnNPbkFwcGxpY2F0aW9uc1wiXT4sXG5cdHVzZXJBcHA/OiBHcmFwaFFMVHlwZXNbXCJGb2xkZXJzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdLFxuXHRuYW1lOiBzdHJpbmcsXG5cdHBhcmVudEZvbGRlcj86IEdyYXBoUUxUeXBlc1tcIkZvbGRlclwiXSxcblx0c3ViZm9sZGVyczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiRm9sZGVyXCJdPixcblx0dkZpbGVzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJWRmlsZVwiXT4sXG5cdGJyZWFkY3J1bWI6IEFycmF5PEdyYXBoUUxUeXBlc1tcIkZvbGRlckJyZWFkY3J1bWJJdGVtXCJdPlxufTtcblx0W1wiRm9sZGVyQnJlYWRjcnVtYkl0ZW1cIl06IHtcblx0X190eXBlbmFtZTogXCJGb2xkZXJCcmVhZGNydW1iSXRlbVwiLFxuXHRpZDogc3RyaW5nLFxuXHRuYW1lOiBzdHJpbmcsXG5cdHB1YktleTogc3RyaW5nLFxuXHRuYW1lS2V5Pzogc3RyaW5nXG59O1xuXHRbXCJGb2xkZXJTaXplXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiRm9sZGVyU2l6ZVwiLFxuXHRzaXplOiBHcmFwaFFMVHlwZXNbXCJCaWdJbnRcIl0sXG5cdHNpemVCZWZvcmU6IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXVxufTtcblx0W1wiRm9sZGVyc09uVXNlcnNPbkFwcGxpY2F0aW9uc1wiXToge1xuXHRfX3R5cGVuYW1lOiBcIkZvbGRlcnNPblVzZXJzT25BcHBsaWNhdGlvbnNcIixcblx0Zm9sZGVyOiBHcmFwaFFMVHlwZXNbXCJGb2xkZXJcIl0sXG5cdHVzZXJBcHA6IEdyYXBoUUxUeXBlc1tcIkFwcGxpY2F0aW9uc09uVXNlcnNcIl0sXG5cdHJpZ2h0czogR3JhcGhRTFR5cGVzW1wiUmlnaHRzXCJdLFxuXHRuYW1lS2V5Pzogc3RyaW5nLFxuXHRpc1Jvb3Q6IGJvb2xlYW5cbn07XG5cdFtcIk1haWxGaWxlSW5wdXRcIl06IHtcblx0XHRpZDogc3RyaW5nLFxuXHRuYW1lOiBzdHJpbmcsXG5cdGZpbGVLZXk6IHN0cmluZ1xufTtcblx0W1wiTWFpbFJlY2lwaWVudElucHV0XCJdOiB7XG5cdFx0Ym9keTogc3RyaW5nLFxuXHRzdWJqZWN0OiBzdHJpbmcsXG5cdHJlY2lwaWVudElkOiBzdHJpbmcsXG5cdGZpbGVzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJNYWlsRmlsZUlucHV0XCJdPlxufTtcblx0W1wiTmFtZUtleUlucHV0XCJdOiB7XG5cdFx0aWQ6IHN0cmluZyxcblx0bmFtZUtleTogc3RyaW5nLFxuXHRmaWxlczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiU2hhcmVGaWxlS2V5SW5wdXRcIl0+XG59O1xuXHRbXCJOYW1lS2V5SW5wdXRGb2xkZXJzXCJdOiB7XG5cdFx0aWQ6IHN0cmluZyxcblx0bmFtZUtleTogc3RyaW5nXG59O1xuXHRbXCJQYXlJbnB1dFwiXToge1xuXHRcdHR5cGU6IEdyYXBoUUxUeXBlc1tcIlBheUlucHV0VHlwZVwiXSxcblx0dG9rZW46IHN0cmluZyxcblx0Zmlyc3ROYW1lOiBzdHJpbmcsXG5cdGxhc3ROYW1lOiBzdHJpbmcsXG5cdHN0cmVldDogc3RyaW5nLFxuXHRwb3N0YWxDb2RlOiBzdHJpbmcsXG5cdGNpdHk6IHN0cmluZyxcblx0Y291bnRyeTogc3RyaW5nLFxuXHRudW1iZXI6IHN0cmluZyxcblx0bW9udGg6IHN0cmluZyxcblx0eWVhcjogc3RyaW5nLFxuXHRjdnY6IHN0cmluZ1xufTtcblx0W1wiUGF5SW5wdXRUeXBlXCJdOiBQYXlJbnB1dFR5cGU7XG5cdFtcIlNoYXJlRmlsZUluSGlzdG9yeUlucHV0XCJdOiB7XG5cdFx0ZmlsZUlkOiBzdHJpbmcsXG5cdHVzZXJzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJTaGFyZUZpbGVLZXlJbnB1dFwiXT5cbn07XG5cdFtcIlNoYXJlRmlsZUtleUlucHV0XCJdOiB7XG5cdFx0aWQ6IHN0cmluZyxcblx0a2V5OiBzdHJpbmdcbn07XG5cdFtcIlNoYXJlRm9sZGVyc0lucHV0XCJdOiB7XG5cdFx0Zm9sZGVyczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiTmFtZUtleUlucHV0Rm9sZGVyc1wiXT4sXG5cdHZGaWxlczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiTmFtZUtleUlucHV0XCJdPlxufTtcblx0W1wiTGltaXRzXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiTGltaXRzXCIsXG5cdGRvd25sb2FkQmFuZHdpZHRoPzogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRkb3dubG9hZENvdW50PzogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRoYXJkRmlsZUNvdW50PzogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRoYXJkRmlsZVNpemU/OiBHcmFwaFFMVHlwZXNbXCJCaWdJbnRcIl0sXG5cdHBlckZpbGVTaXplPzogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRyZWNlaXZlZE1haWxzOiBHcmFwaFFMVHlwZXNbXCJNYWlsTGltaXRzXCJdLFxuXHRzZW50TWFpbHM6IEdyYXBoUUxUeXBlc1tcIk1haWxMaW1pdHNcIl0sXG5cdHVwbG9hZEJhbmR3aWR0aD86IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXSxcblx0dXBsb2FkQ291bnQ/OiBHcmFwaFFMVHlwZXNbXCJCaWdJbnRcIl1cbn07XG5cdFtcIk1haWxMaW1pdHNcIl06IHtcblx0X190eXBlbmFtZTogXCJNYWlsTGltaXRzXCIsXG5cdGNvdW50PzogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRmaWxlQ291bnQ/OiBHcmFwaFFMVHlwZXNbXCJCaWdJbnRcIl0sXG5cdGZpbGVTaXplPzogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRoYXJkQ291bnQ/OiBHcmFwaFFMVHlwZXNbXCJCaWdJbnRcIl0sXG5cdGhhcmRGaWxlQ291bnQ/OiBHcmFwaFFMVHlwZXNbXCJCaWdJbnRcIl0sXG5cdGhhcmRGaWxlU2l6ZT86IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXSxcblx0cGVyRmlsZVNpemU/OiBHcmFwaFFMVHlwZXNbXCJCaWdJbnRcIl1cbn07XG5cdFtcIk1haWxMaW1pdHNWYWx1ZXNcIl06IHtcblx0X190eXBlbmFtZTogXCJNYWlsTGltaXRzVmFsdWVzXCIsXG5cdGNvdW50OiBHcmFwaFFMVHlwZXNbXCJCaWdJbnRcIl0sXG5cdG1heENvdW50PzogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRmaWxlQ291bnQ6IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXSxcblx0bWF4RmlsZUNvdW50PzogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRmaWxlU2l6ZTogR3JhcGhRTFR5cGVzW1wiQmlnSW50XCJdLFxuXHRtYXhGaWxlU2l6ZT86IEdyYXBoUUxUeXBlc1tcIkJpZ0ludFwiXVxufTtcblx0W1wiUXVlcnlMaW1pdHNcIl06IHtcblx0X190eXBlbmFtZTogXCJRdWVyeUxpbWl0c1wiLFxuXHRjbG91ZDogR3JhcGhRTFR5cGVzW1wiQ2xvdWRMaW1pdHNcIl0sXG5cdG1haWw6IEdyYXBoUUxUeXBlc1tcIlVzZXJNYWlsTGltaXRzXCJdXG59O1xuXHRbXCJVc2VyTWFpbExpbWl0c1wiXToge1xuXHRfX3R5cGVuYW1lOiBcIlVzZXJNYWlsTGltaXRzXCIsXG5cdHNlbnQ6IEdyYXBoUUxUeXBlc1tcIk1haWxMaW1pdHNWYWx1ZXNcIl0sXG5cdHJlY2VpdmVkOiBHcmFwaFFMVHlwZXNbXCJNYWlsTGltaXRzVmFsdWVzXCJdXG59O1xuXHRbXCJNYWlsXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiTWFpbFwiLFxuXHRpZDogc3RyaW5nLFxuXHRhcHA6IEdyYXBoUUxUeXBlc1tcIkFwcGxpY2F0aW9uXCJdLFxuXHRib2R5OiBzdHJpbmcsXG5cdGNyZWF0ZWRBdDogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGRlbGV0ZWRBdD86IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRmaWxlczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiRmlsZXNPbk1haWxzXCJdPixcblx0bWFpbEludGVncml0eT86IEdyYXBoUUxUeXBlc1tcIk1haWxJbnRlZ3JpdHlcIl0sXG5cdG1haWxJbnRlZ3JpdHlEcmFmdD86IEdyYXBoUUxUeXBlc1tcIk1haWxJbnRlZ3JpdHlEcmFmdFwiXSxcblx0b3BlbmVkQXQ/OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0cmVjaXBpZW50OiBHcmFwaFFMVHlwZXNbXCJVc2VyXCJdLFxuXHRzZW5kZXI6IEdyYXBoUUxUeXBlc1tcIlVzZXJcIl0sXG5cdHN1YmplY3Q6IHN0cmluZyxcblx0dHlwZTogR3JhcGhRTFR5cGVzW1wiTWFpbFR5cGVcIl0sXG5cdHJlY2lwaWVudHM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIlVzZXJcIl0+XG59O1xuXHRbXCJNYWlsSW50ZWdyaXR5XCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiTWFpbEludGVncml0eVwiLFxuXHRpZDogc3RyaW5nLFxuXHRoYXNoOiBzdHJpbmcsXG5cdGhhc2hLZXk6IHN0cmluZyxcblx0YW5zd2VyczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiTWFpbEludGVncml0eVwiXT4sXG5cdGFwcDogR3JhcGhRTFR5cGVzW1wiQXBwbGljYXRpb25cIl0sXG5cdG1haWxzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJNYWlsXCJdPixcblx0cmVjaXBpZW50czogQXJyYXk8R3JhcGhRTFR5cGVzW1wiVXNlclwiXT4sXG5cdHRlbXBvcmFyeVJlY2lwaWVudHM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIlRlbXBvcmFyeVVzZXJcIl0+LFxuXHRyZXBseVRvPzogR3JhcGhRTFR5cGVzW1wiTWFpbEludGVncml0eVwiXVxufTtcblx0W1wiTWFpbEludGVncml0eURyYWZ0XCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiTWFpbEludGVncml0eURyYWZ0XCIsXG5cdGlkOiBzdHJpbmcsXG5cdGhhc2g6IHN0cmluZyxcblx0aGFzaEtleTogc3RyaW5nLFxuXHRhcHA6IEdyYXBoUUxUeXBlc1tcIkFwcGxpY2F0aW9uXCJdLFxuXHRtYWlsOiBHcmFwaFFMVHlwZXNbXCJNYWlsXCJdLFxuXHRyZWNpcGllbnRzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJVc2VyXCJdPixcblx0dGVtcG9yYXJ5UmVjaXBpZW50czogQXJyYXk8R3JhcGhRTFR5cGVzW1wiVGVtcG9yYXJ5VXNlclwiXT4sXG5cdHJlcGx5VG8/OiBHcmFwaFFMVHlwZXNbXCJNYWlsSW50ZWdyaXR5XCJdXG59O1xuXHRbXCJQbGFuXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiUGxhblwiLFxuXHRpZDogc3RyaW5nLFxuXHRraW5kOiBHcmFwaFFMVHlwZXNbXCJQbGFuS2luZFwiXSxcblx0Y29kZXM6IEFycmF5PHN0cmluZz4sXG5cdGxpbWl0czogR3JhcGhRTFR5cGVzW1wiTGltaXRzXCJdXG59O1xuXHRbXCJSZXBvcnRcIl06IHtcblx0X190eXBlbmFtZTogXCJSZXBvcnRcIixcblx0aWQ6IHN0cmluZyxcblx0dXNlcjogR3JhcGhRTFR5cGVzW1wiVXNlclwiXSxcblx0cmVwb3J0ZWRVc2VyOiBHcmFwaFFMVHlwZXNbXCJVc2VyXCJdLFxuXHRjdXN0b21NZXNzYWdlPzogc3RyaW5nXG59O1xuXHRbXCJUZW1wb3JhcnlVc2VyXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiVGVtcG9yYXJ5VXNlclwiLFxuXHRpZDogc3RyaW5nLFxuXHRtYWlsczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiTWFpbEludGVncml0eVwiXT4sXG5cdGRyYWZ0TWFpbHM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIk1haWxJbnRlZ3JpdHlEcmFmdFwiXT4sXG5cdGVtYWlsPzogc3RyaW5nXG59O1xuXHRbXCJVc2VyXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiVXNlclwiLFxuXHRpZDogc3RyaW5nLFxuXHRkZWxldGVkQXQ/OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0bGFuZzogR3JhcGhRTFR5cGVzW1wiTGFuZ1wiXSxcblx0cmVwb3J0U2VudDogQXJyYXk8R3JhcGhRTFR5cGVzW1wiUmVwb3J0XCJdPixcblx0Z29kRmF0aGVyPzogR3JhcGhRTFR5cGVzW1wiVXNlclwiXSxcblx0Z29kQ2hpbGRyZW46IEFycmF5PEdyYXBoUUxUeXBlc1tcIlVzZXJcIl0+LFxuXHRmaXJzdG5hbWU6IHN0cmluZyxcblx0bGFzdG5hbWU6IHN0cmluZyxcblx0ZW1haWw6IHN0cmluZyxcblx0cGhvbmU6IHN0cmluZyxcblx0bGFzdExvZ2luOiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0cm9sZTogR3JhcGhRTFR5cGVzW1wiVXNlclJvbGVcIl0sXG5cdHNlc3Npb25zOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJVc2VyU2Vzc2lvblwiXT4sXG5cdGNyZWF0ZWRBdDogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdHJlY2VpdmVkTWFpbHM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIk1haWxcIl0+LFxuXHR3YWl0aW5nUmVjZWl2ZWRNYWlsczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiV2FpdGluZ1JlY2VpdmVkTWFpbFwiXT4sXG5cdHNlbnRNYWlsczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiTWFpbFwiXT4sXG5cdGRyYWZ0TWFpbHM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIk1haWxcIl0+LFxuXHRhcHBTZXR0aW5ncz86IEdyYXBoUUxUeXBlc1tcIlVzZXJBcHBTZXR0aW5nc1wiXSxcblx0YXBwbGljYXRpb25zOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJBcHBsaWNhdGlvbnNPblVzZXJzXCJdPixcblx0cHVibGljS2V5OiBzdHJpbmdcbn07XG5cdFtcIlVzZXJBcHBOb3RpZmljYXRpb25zXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiVXNlckFwcE5vdGlmaWNhdGlvbnNcIixcblx0aWQ6IHN0cmluZyxcblx0ZW5hYmxlQWxsOiBib29sZWFuLFxuXHRtYWlsOiBib29sZWFuLFxuXHRjbG91ZDogYm9vbGVhbixcblx0ZGlzYWJsZUFsbFVudGlsPzogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl1cbn07XG5cdFtcIlVzZXJBcHBTZXR0aW5nc1wiXToge1xuXHRfX3R5cGVuYW1lOiBcIlVzZXJBcHBTZXR0aW5nc1wiLFxuXHRpZDogc3RyaW5nLFxuXHRjbG91ZEZpbGVEYXlzRm9yRGVsZXRlOiBudW1iZXIsXG5cdGNsb3VkRm9sZGVyRGF5c0ZvckRlbGV0ZTogbnVtYmVyLFxuXHRoaXN0b3J5RmlsZURheXNGb3JEZWxldGU/OiBudW1iZXIsXG5cdGhpc3RvcnlNYXhGaWxlQ291bnQ6IG51bWJlcixcblx0YXV0b0Rpc2Nvbm5lY3REZWxheT86IG51bWJlclxufTtcblx0W1wiVXNlclNlc3Npb25cIl06IHtcblx0X190eXBlbmFtZTogXCJVc2VyU2Vzc2lvblwiLFxuXHRpZDogc3RyaW5nLFxuXHRhcHBTZXNzaW9uczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiQXBwU2Vzc2lvblwiXT4sXG5cdGxhc3RBY3Rpdml0eT86IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHR1c2VyQWdlbnQ/OiBzdHJpbmcsXG5cdGlwPzogc3RyaW5nLFxuXHRjaXR5Pzogc3RyaW5nLFxuXHRjb3VudHJ5Pzogc3RyaW5nLFxuXHRjcmVhdGVkQXQ6IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdXG59O1xuXHRbXCJWRmlsZVwiXToge1xuXHRfX3R5cGVuYW1lOiBcIlZGaWxlXCIsXG5cdGlkOiBzdHJpbmcsXG5cdGlzRmF2b3JpdGU6IGJvb2xlYW4sXG5cdGNyZWF0ZWRBdDogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGRlbGV0ZWRBdD86IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRmaWxlbmFtZTogc3RyaW5nLFxuXHR1c2VyQXBwczogQXJyYXk8R3JhcGhRTFR5cGVzW1wiVkZpbGVzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdPixcblx0Y3JlYXRlZEJ5OiBHcmFwaFFMVHlwZXNbXCJBcHBsaWNhdGlvbnNPblVzZXJzXCJdLFxuXHR1c2VyQXBwPzogR3JhcGhRTFR5cGVzW1wiVkZpbGVzT25Vc2Vyc09uQXBwbGljYXRpb25zXCJdLFxuXHRmb2xkZXI6IEdyYXBoUUxUeXBlc1tcIkZvbGRlclwiXSxcblx0aGlzdG9yeTogQXJyYXk8R3JhcGhRTFR5cGVzW1wiRmlsZVwiXT4sXG5cdGN1cnJlbnQ/OiBHcmFwaFFMVHlwZXNbXCJGaWxlXCJdLFxuXHR1cGRhdGVkQXQ6IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdXG59O1xuXHRbXCJWRmlsZXNPblVzZXJzT25BcHBsaWNhdGlvbnNcIl06IHtcblx0X190eXBlbmFtZTogXCJWRmlsZXNPblVzZXJzT25BcHBsaWNhdGlvbnNcIixcblx0dkZpbGU6IEdyYXBoUUxUeXBlc1tcIlZGaWxlXCJdLFxuXHR1c2VyQXBwOiBHcmFwaFFMVHlwZXNbXCJBcHBsaWNhdGlvbnNPblVzZXJzXCJdLFxuXHRyaWdodHM6IEdyYXBoUUxUeXBlc1tcIlJpZ2h0c1wiXSxcblx0bmFtZUtleTogc3RyaW5nLFxuXHRpc1Jvb3Q6IGJvb2xlYW5cbn07XG5cdFtcIldhaXRpbmdSZWNlaXZlZE1haWxcIl06IHtcblx0X190eXBlbmFtZTogXCJXYWl0aW5nUmVjZWl2ZWRNYWlsXCIsXG5cdHNlbmRlcjogR3JhcGhRTFR5cGVzW1wiVXNlclwiXSxcblx0ZGF0ZTogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdHJlY2lwaWVudHM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIlVzZXJcIl0+LFxuXHR0ZW1wb3JhcnlSZWNpcGllbnRzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJUZW1wb3JhcnlVc2VyXCJdPixcblx0YXR0YWNobWVudHNDb3VudDogbnVtYmVyXG59O1xuXHRbXCJQYXltZW50SW5mb3NcIl06IHtcblx0X190eXBlbmFtZTogXCJQYXltZW50SW5mb3NcIixcblx0aG9zdGVkVXJsOiBzdHJpbmcsXG5cdGN1cnJlbnRTdWJzY3JpcHRpb246IEdyYXBoUUxUeXBlc1tcIlJlY3VybHlTdWJzY3JpcHRpb25cIl0sXG5cdGludm9pY2VzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJSZWN1cmx5SW52b2ljZXNcIl0+XG59O1xuXHRbXCJSZWN1cmx5SW52b2ljZXNcIl06IHtcblx0X190eXBlbmFtZTogXCJSZWN1cmx5SW52b2ljZXNcIixcblx0cGRmOiBzdHJpbmcsXG5cdGRhdGU6IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRkdWU6IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRzdGF0dXM6IHN0cmluZyxcblx0dG90YWw6IG51bWJlcixcblx0bmFtZTogc3RyaW5nLFxuXHRjdXJyZW5jeTogc3RyaW5nXG59O1xuXHRbXCJSZWN1cmx5U3Vic2NyaXB0aW9uXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiUmVjdXJseVN1YnNjcmlwdGlvblwiLFxuXHRhdXRvcmVuZXc6IGJvb2xlYW4sXG5cdGFjdGl2YXRlZEF0PzogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGN1cnJlbnRQZXJpb2RFbmRzQXQ/OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0Y3VycmVudFBlcmlvZFN0YXJ0ZWRBdD86IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRjYW5jZWxlZEF0PzogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdGNyZWF0ZWRBdD86IEdyYXBoUUxUeXBlc1tcIkRhdGVUaW1lXCJdLFxuXHRleHBpcmVzQXQ/OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0cGF1c2VkQXQ/OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0dHJpYWxFbmRzQXQ/OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0dHJpYWxTdGFydGVkQXQ/OiBHcmFwaFFMVHlwZXNbXCJEYXRlVGltZVwiXSxcblx0dXBkYXRlZEF0PzogR3JhcGhRTFR5cGVzW1wiRGF0ZVRpbWVcIl0sXG5cdHN0YXRlOiBzdHJpbmcsXG5cdGNvbGxlY3Rpb25NZXRob2Q6IHN0cmluZyxcblx0cGxhbj86IHN0cmluZyxcblx0cGxhbkNvZGU/OiBzdHJpbmcsXG5cdHRvdGFsPzogbnVtYmVyXG59O1xuXHRbXCJTaGFyZUZvbGRlclJlc3BvbnNlXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiU2hhcmVGb2xkZXJSZXNwb25zZVwiLFxuXHRmb2xkZXJzOiBBcnJheTxzdHJpbmc+LFxuXHR2RmlsZXM6IEFycmF5PHN0cmluZz5cbn07XG5cdFtcIlF1ZXJ5XCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiUXVlcnlcIixcblx0YXBwTm90aWZpY2F0aW9ucz86IEdyYXBoUUxUeXBlc1tcIlVzZXJBcHBOb3RpZmljYXRpb25zXCJdLFxuXHRibG9nOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJCbG9nSXRlbVwiXT4sXG5cdGRiQ29uZmlnPzogR3JhcGhRTFR5cGVzW1wiSnNvblwiXSxcblx0ZGJHZXQ/OiBHcmFwaFFMVHlwZXNbXCJKc29uXCJdLFxuXHRkYlNlYXJjaDogQXJyYXk8R3JhcGhRTFR5cGVzW1wiSnNvblwiXT4sXG5cdGRlbGV0ZWRGb2xkZXJzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJGb2xkZXJcIl0+LFxuXHRkZWxldGVkTWFpbHM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIk1haWxcIl0+LFxuXHRkZWxldGVkVkZpbGVzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJWRmlsZVwiXT4sXG5cdGZhcTogQXJyYXk8R3JhcGhRTFR5cGVzW1wiRmFxSXRlbVwiXT4sXG5cdGZpbGU/OiBHcmFwaFFMVHlwZXNbXCJGaWxlXCJdLFxuXHRmaWxlQ29udGVudD86IEdyYXBoUUxUeXBlc1tcIkZpbGVDb250ZW50XCJdLFxuXHRmaWxlc1NoYXJlZFdpdGhNZTogQXJyYXk8R3JhcGhRTFR5cGVzW1wiRmlsZVNoYXJlZENvbnRlbnRcIl0+LFxuXHRmb2xkZXI/OiBHcmFwaFFMVHlwZXNbXCJGb2xkZXJcIl0sXG5cdGZvbGRlclNpemU/OiBHcmFwaFFMVHlwZXNbXCJGb2xkZXJTaXplXCJdLFxuXHRmb2xkZXJzU2hhcmVkV2l0aE1lOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJGb2xkZXJcIl0+LFxuXHRsaW1pdHM/OiBHcmFwaFFMVHlwZXNbXCJRdWVyeUxpbWl0c1wiXSxcblx0bWFpbD86IEdyYXBoUUxUeXBlc1tcIk1haWxcIl0sXG5cdHBheW1lbnRJbmZvcz86IEdyYXBoUUxUeXBlc1tcIlBheW1lbnRJbmZvc1wiXSxcblx0cGxhbnM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIlBsYW5cIl0+LFxuXHRzaGFyZWRGb2xkZXJzOiBBcnJheTxHcmFwaFFMVHlwZXNbXCJGb2xkZXJcIl0+LFxuXHRzaGFyZWRWRmlsZXM6IEFycmF5PEdyYXBoUUxUeXBlc1tcIlZGaWxlXCJdPixcblx0dGVzdD86IGJvb2xlYW4sXG5cdHVucmVhZFJlY2VpdmVkTWFpbHNDb3VudD86IG51bWJlcixcblx0dXNlcj86IEdyYXBoUUxUeXBlc1tcIlVzZXJcIl0sXG5cdHZGaWxlPzogR3JhcGhRTFR5cGVzW1wiVkZpbGVcIl0sXG5cdHZGaWxlc1NoYXJlZFdpdGhNZTogQXJyYXk8R3JhcGhRTFR5cGVzW1wiVkZpbGVcIl0+LFxuXHR1c2VyTGlzdDogQXJyYXk8R3JhcGhRTFR5cGVzW1wiVXNlclwiXT5cbn07XG5cdFtcIk11dGF0aW9uXCJdOiB7XG5cdF9fdHlwZW5hbWU6IFwiTXV0YXRpb25cIixcblx0YWRkRmlsZVRvSGlzdG9yeTogR3JhcGhRTFR5cGVzW1wiVkZpbGVcIl0sXG5cdGNhbmNlbFBheW1lbnQ/OiBib29sZWFuLFxuXHRjcmVhdGVBcHBsaWNhdGlvbj86IHN0cmluZyxcblx0Y3JlYXRlRHJhZnRNYWlsPzogR3JhcGhRTFR5cGVzW1wiTWFpbFwiXSxcblx0Y3JlYXRlRm9sZGVyPzogR3JhcGhRTFR5cGVzW1wiRm9sZGVyXCJdLFxuXHRkYkNvbmZpZzogR3JhcGhRTFR5cGVzW1wiSnNvblwiXSxcblx0ZGJTZXQ/OiBHcmFwaFFMVHlwZXNbXCJKc29uXCJdLFxuXHRkZWxldGVEcmFmdE1haWw/OiBib29sZWFuLFxuXHRkZWxldGVGaWxlOiBib29sZWFuLFxuXHRkZWxldGVGb2xkZXI/OiBib29sZWFuLFxuXHRkZWxldGVGb2xkZXJDbG91ZFRyYXNoPzogYm9vbGVhbixcblx0ZGVsZXRlRm9sZGVyU2hhcmluZzogYm9vbGVhbixcblx0ZGVsZXRlTWFpbDogYm9vbGVhbixcblx0ZGVsZXRlTWFpbFRyYXNoOiBib29sZWFuLFxuXHRkZWxldGVVc2VyPzogYm9vbGVhbixcblx0ZGVsZXRlVkZpbGU6IGJvb2xlYW4sXG5cdGRlbGV0ZVZGaWxlQ2xvdWRUcmFzaD86IGJvb2xlYW4sXG5cdGRlbGV0ZVZGaWxlU2hhcmluZzogYm9vbGVhbixcblx0ZHVwbGljYXRlVkZpbGU6IGJvb2xlYW4sXG5cdGVtcHR5Q2xvdWRUcmFzaD86IGJvb2xlYW4sXG5cdGVtcHR5TWFpbFRyYXNoPzogYm9vbGVhbixcblx0bG9nb3V0PzogYm9vbGVhbixcblx0bW92ZUZpbGVzPzogYm9vbGVhbixcblx0bW92ZUZvbGRlcnM/OiBib29sZWFuLFxuXHRwYXk6IGJvb2xlYW4sXG5cdHJlYWRNYWlsPzogYm9vbGVhbixcblx0cmVjb3ZlckZvbGRlcj86IGJvb2xlYW4sXG5cdHJlY292ZXJNYWlsOiBib29sZWFuLFxuXHRyZWNvdmVyVkZpbGU6IGJvb2xlYW4sXG5cdHNhdmVJbkNsb3VkOiBHcmFwaFFMVHlwZXNbXCJWRmlsZVwiXSxcblx0c2VuZERyYWZ0TWFpbD86IGJvb2xlYW4sXG5cdHNlbmRPbmVNYWlsPzogYm9vbGVhbixcblx0c2VuZFJlcG9ydD86IEdyYXBoUUxUeXBlc1tcIlJlcG9ydFwiXSxcblx0c2hhcmVGaWxlSW5IaXN0b3J5OiBib29sZWFuLFxuXHRzaGFyZUZvbGRlcjogR3JhcGhRTFR5cGVzW1wiU2hhcmVGb2xkZXJSZXNwb25zZVwiXSxcblx0c2hhcmVGb2xkZXJGaW5pc2g/OiBib29sZWFuLFxuXHRzaGFyZVZGaWxlPzogYm9vbGVhbixcblx0dW5yZWFkTWFpbD86IGJvb2xlYW4sXG5cdHVwZGF0ZUFwcE5vdGlmaWNhdGlvbnM/OiBHcmFwaFFMVHlwZXNbXCJVc2VyQXBwTm90aWZpY2F0aW9uc1wiXSxcblx0dXBkYXRlQXBwU2V0dGluZ3M6IEdyYXBoUUxUeXBlc1tcIlVzZXJBcHBTZXR0aW5nc1wiXSxcblx0dXBkYXRlRHJhZnRNYWlsPzogR3JhcGhRTFR5cGVzW1wiTWFpbFwiXSxcblx0dXBkYXRlRmlsZT86IEdyYXBoUUxUeXBlc1tcIlZGaWxlXCJdLFxuXHR1cGRhdGVGb2xkZXI/OiBHcmFwaFFMVHlwZXNbXCJGb2xkZXJcIl0sXG5cdHVwZGF0ZVByb2ZpbGU/OiBHcmFwaFFMVHlwZXNbXCJVc2VyXCJdLFxuXHR1cGxvYWRBbm9ueW1vdXM/OiBHcmFwaFFMVHlwZXNbXCJGaWxlUmVzcG9uc2VcIl0sXG5cdHVwbG9hZEZpbGU/OiBHcmFwaFFMVHlwZXNbXCJGaWxlUmVzcG9uc2VcIl0sXG5cdHVwbG9hZEZpbGVFbmQ/OiBzdHJpbmcsXG5cdHVwbG9hZEZpbGVQYXJ0RW5kOiBib29sZWFuLFxuXHRjaGFuZ2VVc2VyUGxhbj86IEdyYXBoUUxUeXBlc1tcIlVzZXJcIl1cbn07XG5cdFtcIlN1YnNjcmlwdGlvblwiXToge1xuXHRfX3R5cGVuYW1lOiBcIlN1YnNjcmlwdGlvblwiLFxuXHR0ZXN0OiBib29sZWFuXG59XG4gICAgfVxuZXhwb3J0IGVudW0gTGFuZyB7XG5cdGZyID0gXCJmclwiLFxuXHRlbiA9IFwiZW5cIixcblx0aXQgPSBcIml0XCIsXG5cdGRlID0gXCJkZVwiLFxuXHRwdCA9IFwicHRcIixcblx0amEgPSBcImphXCIsXG5cdGVzID0gXCJlc1wiLFxuXHRubCA9IFwibmxcIixcblx0cGwgPSBcInBsXCIsXG5cdHJ1ID0gXCJydVwiLFxuXHR6aCA9IFwiemhcIixcblx0YXIgPSBcImFyXCIsXG5cdGhlID0gXCJoZVwiLFxuXHRoaSA9IFwiaGlcIixcblx0a28gPSBcImtvXCJcbn1cbmV4cG9ydCBlbnVtIFBsYW5LaW5kIHtcblx0ZnJlZSA9IFwiZnJlZVwiLFxuXHRiYXNpYyA9IFwiYmFzaWNcIixcblx0YWR2YW5jZWQgPSBcImFkdmFuY2VkXCIsXG5cdHBybyA9IFwicHJvXCJcbn1cbmV4cG9ydCBlbnVtIFVzZXJSb2xlIHtcblx0dXNlciA9IFwidXNlclwiLFxuXHRhZG1pbiA9IFwiYWRtaW5cIlxufVxuZXhwb3J0IGVudW0gTWFpbFR5cGUge1xuXHRzZW50ID0gXCJzZW50XCIsXG5cdHJlY2VpdmVkID0gXCJyZWNlaXZlZFwiXG59XG5leHBvcnQgZW51bSBSaWdodHMge1xuXHRhZG1pbiA9IFwiYWRtaW5cIixcblx0d3JpdGUgPSBcIndyaXRlXCIsXG5cdHJlYWQgPSBcInJlYWRcIlxufVxuZXhwb3J0IGVudW0gRmlsZUNvbnRlbnRUeXBlIHtcblx0Y2xvdWQgPSBcImNsb3VkXCIsXG5cdHNlbnRfbWFpbCA9IFwic2VudF9tYWlsXCIsXG5cdHJlY2VpdmVkX21haWwgPSBcInJlY2VpdmVkX21haWxcIlxufVxuZXhwb3J0IGVudW0gUGF5SW5wdXRUeXBlIHtcblx0c2VjdXJlID0gXCJzZWN1cmVcIixcblx0Y2xhc3NpYyA9IFwiY2xhc3NpY1wiXG59XG5leHBvcnQgY2xhc3MgR3JhcGhRTEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyByZXNwb25zZTogR3JhcGhRTFJlc3BvbnNlKSB7XG4gICAgICBzdXBlcihcIlwiKTtcbiAgICAgIGNvbnNvbGUuZXJyb3IocmVzcG9uc2UpO1xuICAgIH1cbiAgICB0b1N0cmluZygpIHtcbiAgICAgIHJldHVybiBcIkdyYXBoUUwgUmVzcG9uc2UgRXJyb3JcIjtcbiAgICB9XG4gIH1cblxuXG5leHBvcnQgdHlwZSBVbndyYXBQcm9taXNlPFQ+ID0gVCBleHRlbmRzIFByb21pc2U8aW5mZXIgUj4gPyBSIDogVDtcbmV4cG9ydCB0eXBlIFpldXNTdGF0ZTxUIGV4dGVuZHMgKC4uLmFyZ3M6IGFueVtdKSA9PiBQcm9taXNlPGFueT4+ID0gTm9uTnVsbGFibGU8XG4gIFVud3JhcFByb21pc2U8UmV0dXJuVHlwZTxUPj5cbj47XG5leHBvcnQgdHlwZSBaZXVzSG9vazxcbiAgVCBleHRlbmRzIChcbiAgICAuLi5hcmdzOiBhbnlbXVxuICApID0+IFJlY29yZDxzdHJpbmcsICguLi5hcmdzOiBhbnlbXSkgPT4gUHJvbWlzZTxhbnk+PixcbiAgTiBleHRlbmRzIGtleW9mIFJldHVyblR5cGU8VD5cbj4gPSBaZXVzU3RhdGU8UmV0dXJuVHlwZTxUPltOXT47XG5cbnR5cGUgV2l0aFR5cGVOYW1lVmFsdWU8VD4gPSBUICYge1xuICBfX3R5cGVuYW1lPzogYm9vbGVhbjtcbn07XG50eXBlIEFsaWFzVHlwZTxUPiA9IFdpdGhUeXBlTmFtZVZhbHVlPFQ+ICYge1xuICBfX2FsaWFzPzogUmVjb3JkPHN0cmluZywgV2l0aFR5cGVOYW1lVmFsdWU8VD4+O1xufTtcbmV4cG9ydCBpbnRlcmZhY2UgR3JhcGhRTFJlc3BvbnNlIHtcbiAgZGF0YT86IFJlY29yZDxzdHJpbmcsIGFueT47XG4gIGVycm9ycz86IEFycmF5PHtcbiAgICBtZXNzYWdlOiBzdHJpbmc7XG4gIH0+O1xufVxudHlwZSBEZWVwQW5pZnk8VD4gPSB7XG4gIFtQIGluIGtleW9mIFRdPzogYW55O1xufTtcbnR5cGUgSXNQYXlMb2FkPFQ+ID0gVCBleHRlbmRzIFthbnksIGluZmVyIFBheUxvYWRdID8gUGF5TG9hZCA6IFQ7XG50eXBlIElzQXJyYXk8VCwgVT4gPSBUIGV4dGVuZHMgQXJyYXk8aW5mZXIgUj4gPyBJbnB1dFR5cGU8UiwgVT5bXSA6IElucHV0VHlwZTxULCBVPjtcbnR5cGUgRmxhdHRlbkFycmF5PFQ+ID0gVCBleHRlbmRzIEFycmF5PGluZmVyIFI+ID8gUiA6IFQ7XG5cbnR5cGUgSXNJbnRlcmZhY2VkPFNSQyBleHRlbmRzIERlZXBBbmlmeTxEU1Q+LCBEU1Q+ID0gRmxhdHRlbkFycmF5PFNSQz4gZXh0ZW5kcyBaRVVTX0lOVEVSRkFDRVMgfCBaRVVTX1VOSU9OU1xuICA/IHtcbiAgICAgIFtQIGluIGtleW9mIFNSQ106IFNSQ1tQXSBleHRlbmRzICdfX3VuaW9uJyAmIGluZmVyIFJcbiAgICAgICAgPyBQIGV4dGVuZHMga2V5b2YgRFNUXG4gICAgICAgICAgPyBJc0FycmF5PFIsICdfX3R5cGVuYW1lJyBleHRlbmRzIGtleW9mIERTVCA/IERTVFtQXSAmIHsgX190eXBlbmFtZTogdHJ1ZSB9IDogRFNUW1BdPlxuICAgICAgICAgIDoge31cbiAgICAgICAgOiBuZXZlcjtcbiAgICB9W2tleW9mIERTVF0gJlxuICAgICAge1xuICAgICAgICBbUCBpbiBrZXlvZiBPbWl0PFxuICAgICAgICAgIFBpY2s8XG4gICAgICAgICAgICBTUkMsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIFtQIGluIGtleW9mIERTVF06IFNSQ1tQXSBleHRlbmRzICdfX3VuaW9uJyA/IG5ldmVyIDogUDtcbiAgICAgICAgICAgIH1ba2V5b2YgRFNUXVxuICAgICAgICAgID4sXG4gICAgICAgICAgJ19fdHlwZW5hbWUnXG4gICAgICAgID5dOiBJc1BheUxvYWQ8RFNUW1BdPiBleHRlbmRzIGJvb2xlYW4gPyBTUkNbUF0gOiBJc0FycmF5PFNSQ1tQXSwgRFNUW1BdPjtcbiAgICAgIH1cbiAgOiB7XG4gICAgICBbUCBpbiBrZXlvZiBQaWNrPFNSQywga2V5b2YgRFNUPl06IElzUGF5TG9hZDxEU1RbUF0+IGV4dGVuZHMgYm9vbGVhbiA/IFNSQ1tQXSA6IElzQXJyYXk8U1JDW1BdLCBEU1RbUF0+O1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIE1hcFR5cGU8U1JDLCBEU1Q+ID0gU1JDIGV4dGVuZHMgRGVlcEFuaWZ5PERTVD4gPyBJc0ludGVyZmFjZWQ8U1JDLCBEU1Q+IDogbmV2ZXI7XG5leHBvcnQgdHlwZSBJbnB1dFR5cGU8U1JDLCBEU1Q+ID0gSXNQYXlMb2FkPERTVD4gZXh0ZW5kcyB7IF9fYWxpYXM6IGluZmVyIFIgfVxuICA/IHtcbiAgICAgIFtQIGluIGtleW9mIFJdOiBNYXBUeXBlPFNSQywgUltQXT47XG4gICAgfSAmXG4gICAgICBNYXBUeXBlPFNSQywgT21pdDxJc1BheUxvYWQ8RFNUPiwgJ19fYWxpYXMnPj5cbiAgOiBNYXBUeXBlPFNSQywgSXNQYXlMb2FkPERTVD4+O1xudHlwZSBGdW5jPFAgZXh0ZW5kcyBhbnlbXSwgUj4gPSAoLi4uYXJnczogUCkgPT4gUjtcbnR5cGUgQW55RnVuYyA9IEZ1bmM8YW55LCBhbnk+O1xuZXhwb3J0IHR5cGUgQXJnc1R5cGU8RiBleHRlbmRzIEFueUZ1bmM+ID0gRiBleHRlbmRzIEZ1bmM8aW5mZXIgUCwgYW55PiA/IFAgOiBuZXZlcjtcbmV4cG9ydCB0eXBlIE9wZXJhdGlvbk9wdGlvbnMgPSB7XG4gIHZhcmlhYmxlcz86IFJlY29yZDxzdHJpbmcsIGFueT47XG4gIG9wZXJhdGlvbk5hbWU/OiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgU3Vic2NyaXB0aW9uVG9HcmFwaFFMPFosIFQ+ID0ge1xuICB3czogV2ViU29ja2V0O1xuICBvbjogKGZuOiAoYXJnczogSW5wdXRUeXBlPFQsIFo+KSA9PiB2b2lkKSA9PiB2b2lkO1xuICBvZmY6IChmbjogKGU6IHsgZGF0YT86IElucHV0VHlwZTxULCBaPjsgY29kZT86IG51bWJlcjsgcmVhc29uPzogc3RyaW5nOyBtZXNzYWdlPzogc3RyaW5nIH0pID0+IHZvaWQpID0+IHZvaWQ7XG4gIGVycm9yOiAoZm46IChlOiB7IGRhdGE/OiBJbnB1dFR5cGU8VCwgWj47IGVycm9ycz86IHN0cmluZ1tdIH0pID0+IHZvaWQpID0+IHZvaWQ7XG4gIG9wZW46ICgpID0+IHZvaWQ7XG59O1xuZXhwb3J0IHR5cGUgU2VsZWN0aW9uRnVuY3Rpb248Vj4gPSA8VD4odDogVCB8IFYpID0+IFQ7XG5leHBvcnQgdHlwZSBmZXRjaE9wdGlvbnMgPSBBcmdzVHlwZTx0eXBlb2YgZmV0Y2g+O1xudHlwZSB3ZWJzb2NrZXRPcHRpb25zID0gdHlwZW9mIFdlYlNvY2tldCBleHRlbmRzIG5ldyAoXG4gIC4uLmFyZ3M6IGluZmVyIFJcbikgPT4gV2ViU29ja2V0XG4gID8gUlxuICA6IG5ldmVyO1xuZXhwb3J0IHR5cGUgY2hhaW5PcHRpb25zID1cbiAgfCBbZmV0Y2hPcHRpb25zWzBdLCBmZXRjaE9wdGlvbnNbMV0gJiB7d2Vic29ja2V0Pzogd2Vic29ja2V0T3B0aW9uc31dXG4gIHwgW2ZldGNoT3B0aW9uc1swXV07XG5leHBvcnQgdHlwZSBGZXRjaEZ1bmN0aW9uID0gKFxuICBxdWVyeTogc3RyaW5nLFxuICB2YXJpYWJsZXM/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+LFxuKSA9PiBQcm9taXNlPGFueT47XG5leHBvcnQgdHlwZSBTdWJzY3JpcHRpb25GdW5jdGlvbiA9IChxdWVyeTogc3RyaW5nKSA9PiBhbnk7XG50eXBlIE5vdFVuZGVmaW5lZDxUPiA9IFQgZXh0ZW5kcyB1bmRlZmluZWQgPyBuZXZlciA6IFQ7XG5leHBvcnQgdHlwZSBSZXNvbHZlclR5cGU8Rj4gPSBOb3RVbmRlZmluZWQ8RiBleHRlbmRzIFtpbmZlciBBUkdTLCBhbnldID8gQVJHUyA6IHVuZGVmaW5lZD47XG5cblxuXG5leHBvcnQgY29uc3QgWmV1c1NlbGVjdCA9IDxUPigpID0+ICgodDogYW55KSA9PiB0KSBhcyBTZWxlY3Rpb25GdW5jdGlvbjxUPjtcblxuZXhwb3J0IGNvbnN0IFNjYWxhclJlc29sdmVyID0gKHNjYWxhcjogc3RyaW5nLCB2YWx1ZTogYW55KSA9PiB7XG4gIHN3aXRjaCAoc2NhbGFyKSB7XG4gICAgY2FzZSAnU3RyaW5nJzpcbiAgICAgIHJldHVybiAgYCR7SlNPTi5zdHJpbmdpZnkodmFsdWUpfWA7XG4gICAgY2FzZSAnSW50JzpcbiAgICAgIHJldHVybiBgJHt2YWx1ZX1gO1xuICAgIGNhc2UgJ0Zsb2F0JzpcbiAgICAgIHJldHVybiBgJHt2YWx1ZX1gO1xuICAgIGNhc2UgJ0Jvb2xlYW4nOlxuICAgICAgcmV0dXJuIGAke3ZhbHVlfWA7XG4gICAgY2FzZSAnSUQnOlxuICAgICAgcmV0dXJuIGBcIiR7dmFsdWV9XCJgO1xuICAgIGNhc2UgJ2VudW0nOlxuICAgICAgcmV0dXJuIGAke3ZhbHVlfWA7XG4gICAgY2FzZSAnc2NhbGFyJzpcbiAgICAgIHJldHVybiBgJHt2YWx1ZX1gO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn07XG5cblxuZXhwb3J0IGNvbnN0IFR5cGVzUHJvcHNSZXNvbHZlciA9ICh7XG4gICAgdmFsdWUsXG4gICAgdHlwZSxcbiAgICBuYW1lLFxuICAgIGtleSxcbiAgICBibG9ja0FycmF5c1xufToge1xuICAgIHZhbHVlOiBhbnk7XG4gICAgdHlwZTogc3RyaW5nO1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBrZXk/OiBzdHJpbmc7XG4gICAgYmxvY2tBcnJheXM/OiBib29sZWFuO1xufSk6IHN0cmluZyA9PiB7XG4gICAgaWYgKHZhbHVlID09PSBudWxsKSB7XG4gICAgICAgIHJldHVybiBgbnVsbGA7XG4gICAgfVxuICAgIGxldCByZXNvbHZlZFZhbHVlID0gQWxsVHlwZXNQcm9wc1t0eXBlXVtuYW1lXTtcbiAgICBpZiAoa2V5KSB7XG4gICAgICAgIHJlc29sdmVkVmFsdWUgPSByZXNvbHZlZFZhbHVlW2tleV07XG4gICAgfVxuICAgIGlmICghcmVzb2x2ZWRWYWx1ZSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCByZXNvbHZlICR7dHlwZX0gJHtuYW1lfSR7a2V5ID8gYCAke2tleX1gIDogJyd9YClcbiAgICB9XG4gICAgY29uc3QgdHlwZVJlc29sdmVkID0gcmVzb2x2ZWRWYWx1ZS50eXBlO1xuICAgIGNvbnN0IGlzQXJyYXkgPSByZXNvbHZlZFZhbHVlLmFycmF5O1xuICAgIGNvbnN0IGlzQXJyYXlSZXF1aXJlZCA9IHJlc29sdmVkVmFsdWUuYXJyYXlSZXF1aXJlZDtcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyAmJiB2YWx1ZS5zdGFydHNXaXRoKGBaRVVTX1ZBUiRgKSkge1xuICAgICAgICBjb25zdCBpc1JlcXVpcmVkID0gcmVzb2x2ZWRWYWx1ZS5yZXF1aXJlZCA/ICchJyA6ICcnO1xuICAgICAgICBsZXQgdCA9IGAke3R5cGVSZXNvbHZlZH1gO1xuICAgICAgICBpZiAoaXNBcnJheSkge1xuICAgICAgICAgIGlmIChpc1JlcXVpcmVkKSB7XG4gICAgICAgICAgICAgIHQgPSBgJHt0fSFgO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0ID0gYFske3R9XWA7XG4gICAgICAgICAgaWYoaXNBcnJheVJlcXVpcmVkKXtcbiAgICAgICAgICAgIHQgPSBgJHt0fSFgO1xuICAgICAgICAgIH1cbiAgICAgICAgfWVsc2V7XG4gICAgICAgICAgaWYgKGlzUmVxdWlyZWQpIHtcbiAgICAgICAgICAgICAgICB0ID0gYCR7dH0hYDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGBcXCQke3ZhbHVlLnNwbGl0KGBaRVVTX1ZBUiRgKVsxXX1fX1pFVVNfVkFSX18ke3R9YDtcbiAgICB9XG4gICAgaWYgKGlzQXJyYXkgJiYgIWJsb2NrQXJyYXlzKSB7XG4gICAgICAgIHJldHVybiBgWyR7dmFsdWVcbiAgICAgICAgLm1hcCgodjogYW55KSA9PiBUeXBlc1Byb3BzUmVzb2x2ZXIoeyB2YWx1ZTogdiwgdHlwZSwgbmFtZSwga2V5LCBibG9ja0FycmF5czogdHJ1ZSB9KSlcbiAgICAgICAgLmpvaW4oJywnKX1dYDtcbiAgICB9XG4gICAgY29uc3QgcmVzbG92ZWRTY2FsYXIgPSBTY2FsYXJSZXNvbHZlcih0eXBlUmVzb2x2ZWQsIHZhbHVlKTtcbiAgICBpZiAoIXJlc2xvdmVkU2NhbGFyKSB7XG4gICAgICAgIGNvbnN0IHJlc29sdmVkVHlwZSA9IEFsbFR5cGVzUHJvcHNbdHlwZVJlc29sdmVkXTtcbiAgICAgICAgaWYgKHR5cGVvZiByZXNvbHZlZFR5cGUgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIGNvbnN0IGFyZ3NLZXlzID0gT2JqZWN0LmtleXMocmVzb2x2ZWRUeXBlKTtcbiAgICAgICAgcmV0dXJuIGB7JHthcmdzS2V5c1xuICAgICAgICAgICAgLmZpbHRlcigoYWspID0+IHZhbHVlW2FrXSAhPT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgLm1hcChcbiAgICAgICAgICAgIChhaykgPT4gYCR7YWt9OiR7VHlwZXNQcm9wc1Jlc29sdmVyKHsgdmFsdWU6IHZhbHVlW2FrXSwgdHlwZTogdHlwZVJlc29sdmVkLCBuYW1lOiBhayB9KX1gXG4gICAgICAgICAgICApfX1gO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBTY2FsYXJSZXNvbHZlcihBbGxUeXBlc1Byb3BzW3R5cGVSZXNvbHZlZF0sIHZhbHVlKSBhcyBzdHJpbmc7XG4gICAgfVxuICAgIHJldHVybiByZXNsb3ZlZFNjYWxhcjtcbn07XG5cblxuY29uc3QgaXNBcnJheUZ1bmN0aW9uID0gKFxuICBwYXJlbnQ6IHN0cmluZ1tdLFxuICBhOiBhbnlbXVxuKSA9PiB7XG4gIGNvbnN0IFt2YWx1ZXMsIHJdID0gYTtcbiAgY29uc3QgW21haW5LZXksIGtleSwgLi4ua2V5c10gPSBwYXJlbnQ7XG4gIGNvbnN0IGtleVZhbHVlcyA9IE9iamVjdC5rZXlzKHZhbHVlcykuZmlsdGVyKChrKSA9PiB0eXBlb2YgdmFsdWVzW2tdICE9PSAndW5kZWZpbmVkJyk7XG5cbiAgaWYgKCFrZXlzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIGtleVZhbHVlcy5sZW5ndGggPiAwXG4gICAgICAgID8gYCgke2tleVZhbHVlc1xuICAgICAgICAgICAgLm1hcChcbiAgICAgICAgICAgICAgKHYpID0+XG4gICAgICAgICAgICAgICAgYCR7dn06JHtUeXBlc1Byb3BzUmVzb2x2ZXIoe1xuICAgICAgICAgICAgICAgICAgdmFsdWU6IHZhbHVlc1t2XSxcbiAgICAgICAgICAgICAgICAgIHR5cGU6IG1haW5LZXksXG4gICAgICAgICAgICAgICAgICBuYW1lOiBrZXksXG4gICAgICAgICAgICAgICAgICBrZXk6IHZcbiAgICAgICAgICAgICAgICB9KX1gXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuam9pbignLCcpfSkke3IgPyB0cmF2ZXJzZVRvU2Vla0FycmF5cyhwYXJlbnQsIHIpIDogJyd9YFxuICAgICAgICA6IHRyYXZlcnNlVG9TZWVrQXJyYXlzKHBhcmVudCwgcik7XG4gICAgfVxuXG4gIGNvbnN0IFt0eXBlUmVzb2x2ZXJLZXldID0ga2V5cy5zcGxpY2Uoa2V5cy5sZW5ndGggLSAxLCAxKTtcbiAgbGV0IHZhbHVlVG9SZXNvbHZlID0gUmV0dXJuVHlwZXNbbWFpbktleV1ba2V5XTtcbiAgZm9yIChjb25zdCBrIG9mIGtleXMpIHtcbiAgICB2YWx1ZVRvUmVzb2x2ZSA9IFJldHVyblR5cGVzW3ZhbHVlVG9SZXNvbHZlXVtrXTtcbiAgfVxuXG4gIGNvbnN0IGFyZ3VtZW50U3RyaW5nID1cbiAgICBrZXlWYWx1ZXMubGVuZ3RoID4gMFxuICAgICAgPyBgKCR7a2V5VmFsdWVzXG4gICAgICAgICAgLm1hcChcbiAgICAgICAgICAgICh2KSA9PlxuICAgICAgICAgICAgICBgJHt2fToke1R5cGVzUHJvcHNSZXNvbHZlcih7XG4gICAgICAgICAgICAgICAgdmFsdWU6IHZhbHVlc1t2XSxcbiAgICAgICAgICAgICAgICB0eXBlOiB2YWx1ZVRvUmVzb2x2ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiB0eXBlUmVzb2x2ZXJLZXksXG4gICAgICAgICAgICAgICAga2V5OiB2XG4gICAgICAgICAgICAgIH0pfWBcbiAgICAgICAgICApXG4gICAgICAgICAgLmpvaW4oJywnKX0pJHtyID8gdHJhdmVyc2VUb1NlZWtBcnJheXMocGFyZW50LCByKSA6ICcnfWBcbiAgICAgIDogdHJhdmVyc2VUb1NlZWtBcnJheXMocGFyZW50LCByKTtcbiAgcmV0dXJuIGFyZ3VtZW50U3RyaW5nO1xufTtcblxuXG5jb25zdCByZXNvbHZlS1YgPSAoazogc3RyaW5nLCB2OiBib29sZWFuIHwgc3RyaW5nIHwgeyBbeDogc3RyaW5nXTogYm9vbGVhbiB8IHN0cmluZyB9KSA9PlxuICB0eXBlb2YgdiA9PT0gJ2Jvb2xlYW4nID8gayA6IHR5cGVvZiB2ID09PSAnb2JqZWN0JyA/IGAke2t9eyR7b2JqZWN0VG9UcmVlKHYpfX1gIDogYCR7a30ke3Z9YDtcblxuXG5jb25zdCBvYmplY3RUb1RyZWUgPSAobzogeyBbeDogc3RyaW5nXTogYm9vbGVhbiB8IHN0cmluZyB9KTogc3RyaW5nID0+XG4gIGB7JHtPYmplY3Qua2V5cyhvKS5tYXAoKGspID0+IGAke3Jlc29sdmVLVihrLCBvW2tdKX1gKS5qb2luKCcgJyl9fWA7XG5cblxuY29uc3QgdHJhdmVyc2VUb1NlZWtBcnJheXMgPSAocGFyZW50OiBzdHJpbmdbXSwgYT86IGFueSk6IHN0cmluZyA9PiB7XG4gIGlmICghYSkgcmV0dXJuICcnO1xuICBpZiAoT2JqZWN0LmtleXMoYSkubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuICcnO1xuICB9XG4gIGxldCBiOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XG4gIGlmIChBcnJheS5pc0FycmF5KGEpKSB7XG4gICAgcmV0dXJuIGlzQXJyYXlGdW5jdGlvbihbLi4ucGFyZW50XSwgYSk7XG4gIH0gZWxzZSB7XG4gICAgaWYgKHR5cGVvZiBhID09PSAnb2JqZWN0Jykge1xuICAgICAgT2JqZWN0LmtleXMoYSlcbiAgICAgICAgLmZpbHRlcigoaykgPT4gdHlwZW9mIGFba10gIT09ICd1bmRlZmluZWQnKVxuICAgICAgICAuZm9yRWFjaCgoaykgPT4ge1xuICAgICAgICBpZiAoayA9PT0gJ19fYWxpYXMnKSB7XG4gICAgICAgICAgT2JqZWN0LmtleXMoYVtrXSkuZm9yRWFjaCgoYWxpYXNLZXkpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGFsaWFzT3BlcmF0aW9ucyA9IGFba11bYWxpYXNLZXldO1xuICAgICAgICAgICAgY29uc3QgYWxpYXNPcGVyYXRpb25OYW1lID0gT2JqZWN0LmtleXMoYWxpYXNPcGVyYXRpb25zKVswXTtcbiAgICAgICAgICAgIGNvbnN0IGFsaWFzT3BlcmF0aW9uID0gYWxpYXNPcGVyYXRpb25zW2FsaWFzT3BlcmF0aW9uTmFtZV07XG4gICAgICAgICAgICBiW1xuICAgICAgICAgICAgICBgJHthbGlhc09wZXJhdGlvbk5hbWV9X19hbGlhc19fJHthbGlhc0tleX06ICR7YWxpYXNPcGVyYXRpb25OYW1lfWBcbiAgICAgICAgICAgIF0gPSB0cmF2ZXJzZVRvU2Vla0FycmF5cyhbLi4ucGFyZW50LCBhbGlhc09wZXJhdGlvbk5hbWVdLCBhbGlhc09wZXJhdGlvbik7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgYltrXSA9IHRyYXZlcnNlVG9TZWVrQXJyYXlzKFsuLi5wYXJlbnQsIGtdLCBhW2tdKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG9iamVjdFRvVHJlZShiKTtcbn07XG5cblxuY29uc3QgYnVpbGRRdWVyeSA9ICh0eXBlOiBzdHJpbmcsIGE/OiBSZWNvcmQ8YW55LCBhbnk+KSA9PlxuICB0cmF2ZXJzZVRvU2Vla0FycmF5cyhbdHlwZV0sIGEpO1xuXG5cbmNvbnN0IGluc3BlY3RWYXJpYWJsZXMgPSAocXVlcnk6IHN0cmluZykgPT4ge1xuICBjb25zdCByZWdleCA9IC9cXCRcXGJcXHcqX19aRVVTX1ZBUl9fXFxbP1teIV5cXF1eXFxzXixeXFwpXlxcfV0qWyFdP1tcXF1dP1shXT8vZztcbiAgbGV0IHJlc3VsdDtcbiAgY29uc3QgQWxsVmFyaWFibGVzOiBzdHJpbmdbXSA9IFtdO1xuICB3aGlsZSAoKHJlc3VsdCA9IHJlZ2V4LmV4ZWMocXVlcnkpKSkge1xuICAgIGlmIChBbGxWYXJpYWJsZXMuaW5jbHVkZXMocmVzdWx0WzBdKSkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuICAgIEFsbFZhcmlhYmxlcy5wdXNoKHJlc3VsdFswXSk7XG4gIH1cbiAgaWYgKCFBbGxWYXJpYWJsZXMubGVuZ3RoKSB7XG4gICAgcmV0dXJuIHF1ZXJ5O1xuICB9XG4gIGxldCBmaWx0ZXJlZFF1ZXJ5ID0gcXVlcnk7XG4gIEFsbFZhcmlhYmxlcy5mb3JFYWNoKCh2YXJpYWJsZSkgPT4ge1xuICAgIHdoaWxlIChmaWx0ZXJlZFF1ZXJ5LmluY2x1ZGVzKHZhcmlhYmxlKSkge1xuICAgICAgZmlsdGVyZWRRdWVyeSA9IGZpbHRlcmVkUXVlcnkucmVwbGFjZSh2YXJpYWJsZSwgdmFyaWFibGUuc3BsaXQoJ19fWkVVU19WQVJfXycpWzBdKTtcbiAgICB9XG4gIH0pO1xuICByZXR1cm4gYCgke0FsbFZhcmlhYmxlcy5tYXAoKGEpID0+IGEuc3BsaXQoJ19fWkVVU19WQVJfXycpKVxuICAgIC5tYXAoKFt2YXJpYWJsZU5hbWUsIHZhcmlhYmxlVHlwZV0pID0+IGAke3ZhcmlhYmxlTmFtZX06JHt2YXJpYWJsZVR5cGV9YClcbiAgICAuam9pbignLCAnKX0pJHtmaWx0ZXJlZFF1ZXJ5fWA7XG59O1xuXG5cbmV4cG9ydCBjb25zdCBxdWVyeUNvbnN0cnVjdCA9ICh0OiAncXVlcnknIHwgJ211dGF0aW9uJyB8ICdzdWJzY3JpcHRpb24nLCB0TmFtZTogc3RyaW5nLCBvcGVyYXRpb25OYW1lPzogc3RyaW5nKSA9PiAobzogUmVjb3JkPGFueSwgYW55PikgPT5cbiAgYCR7dC50b0xvd2VyQ2FzZSgpfSR7b3BlcmF0aW9uTmFtZSA/ICcgJyArIG9wZXJhdGlvbk5hbWUgOiAnJ30ke2luc3BlY3RWYXJpYWJsZXMoYnVpbGRRdWVyeSh0TmFtZSwgbykpfWA7XG5cblxuZXhwb3J0IGNvbnN0IGZ1bGxDaGFpbkNvbnN0cnVjdCA9IChmbjogRmV0Y2hGdW5jdGlvbikgPT4gKHQ6ICdxdWVyeScgfCAnbXV0YXRpb24nIHwgJ3N1YnNjcmlwdGlvbicsIHROYW1lOiBzdHJpbmcpID0+IChcbiAgbzogUmVjb3JkPGFueSwgYW55PixcbiAgb3B0aW9ucz86IE9wZXJhdGlvbk9wdGlvbnMsXG4pID0+IGZuKHF1ZXJ5Q29uc3RydWN0KHQsIHROYW1lLCBvcHRpb25zPy5vcGVyYXRpb25OYW1lKShvKSwgb3B0aW9ucz8udmFyaWFibGVzKS50aGVuKChyOmFueSkgPT4ge1xuICBzZWVrRm9yQWxpYXNlcyhyKVxuICByZXR1cm4gclxufSk7XG5cblxuZXhwb3J0IGNvbnN0IGZ1bGxTdWJzY3JpcHRpb25Db25zdHJ1Y3QgPSAoZm46IFN1YnNjcmlwdGlvbkZ1bmN0aW9uKSA9PiAoXG4gIHQ6ICdxdWVyeScgfCAnbXV0YXRpb24nIHwgJ3N1YnNjcmlwdGlvbicsXG4gIHROYW1lOiBzdHJpbmcsXG4pID0+IChvOiBSZWNvcmQ8YW55LCBhbnk+LCBvcHRpb25zPzogT3BlcmF0aW9uT3B0aW9ucykgPT5cbiAgZm4ocXVlcnlDb25zdHJ1Y3QodCwgdE5hbWUsIG9wdGlvbnM/Lm9wZXJhdGlvbk5hbWUpKG8pKTtcblxuXG5jb25zdCBzZWVrRm9yQWxpYXNlcyA9IChyZXNwb25zZTogYW55KSA9PiB7XG4gIGNvbnN0IHRyYXZlcnNlQWxpYXMgPSAodmFsdWU6IGFueSkgPT4ge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgdmFsdWUuZm9yRWFjaChzZWVrRm9yQWxpYXNlcyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIHNlZWtGb3JBbGlhc2VzKHZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG4gIGlmICh0eXBlb2YgcmVzcG9uc2UgPT09ICdvYmplY3QnICYmIHJlc3BvbnNlKSB7XG4gICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKHJlc3BvbnNlKTtcbiAgICBpZiAoa2V5cy5sZW5ndGggPCAxKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGtleXMuZm9yRWFjaCgoaykgPT4ge1xuICAgICAgY29uc3QgdmFsdWUgPSByZXNwb25zZVtrXTtcbiAgICAgIGlmIChrLmluZGV4T2YoJ19fYWxpYXNfXycpICE9PSAtMSkge1xuICAgICAgICBjb25zdCBbb3BlcmF0aW9uLCBhbGlhc10gPSBrLnNwbGl0KCdfX2FsaWFzX18nKTtcbiAgICAgICAgcmVzcG9uc2VbYWxpYXNdID0ge1xuICAgICAgICAgIFtvcGVyYXRpb25dOiB2YWx1ZSxcbiAgICAgICAgfTtcbiAgICAgICAgZGVsZXRlIHJlc3BvbnNlW2tdO1xuICAgICAgfVxuICAgICAgdHJhdmVyc2VBbGlhcyh2YWx1ZSk7XG4gICAgfSk7XG4gIH1cbn07XG5cblxuZXhwb3J0IGNvbnN0ICQgPSAodDogVGVtcGxhdGVTdHJpbmdzQXJyYXkpOiBhbnkgPT4gYFpFVVNfVkFSJCR7dC5qb2luKCcnKX1gO1xuXG5cbmV4cG9ydCBjb25zdCByZXNvbHZlckZvciA9IDxcbiAgWCxcbiAgVCBleHRlbmRzIGtleW9mIFZhbHVlVHlwZXMsXG4gIFogZXh0ZW5kcyBrZXlvZiBWYWx1ZVR5cGVzW1RdLFxuPihcbiAgX3R5cGU6IFQsXG4gIF9maWVsZDogWixcbiAgZm46IChcbiAgICBhcmdzOiBSZXF1aXJlZDxWYWx1ZVR5cGVzW1RdPltaXSBleHRlbmRzIFtpbmZlciBJbnB1dCwgYW55XSA/IElucHV0IDogYW55LFxuICAgIHNvdXJjZTogYW55LFxuICApID0+IFogZXh0ZW5kcyBrZXlvZiBNb2RlbFR5cGVzW1RdID8gTW9kZWxUeXBlc1tUXVtaXSB8IFByb21pc2U8TW9kZWxUeXBlc1tUXVtaXT4gfCBYIDogYW55LFxuKSA9PiBmbiBhcyAoYXJncz86IGFueSxzb3VyY2U/OiBhbnkpID0+IGFueTtcblxuXG5jb25zdCBoYW5kbGVGZXRjaFJlc3BvbnNlID0gKFxuICByZXNwb25zZTogUGFyYW1ldGVyczxFeHRyYWN0PFBhcmFtZXRlcnM8UmV0dXJuVHlwZTx0eXBlb2YgZmV0Y2g+Wyd0aGVuJ10+WzBdLCBGdW5jdGlvbj4+WzBdXG4pOiBQcm9taXNlPEdyYXBoUUxSZXNwb25zZT4gPT4ge1xuICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChfLCByZWplY3QpID0+IHtcbiAgICAgIHJlc3BvbnNlLnRleHQoKS50aGVuKHRleHQgPT4ge1xuICAgICAgICB0cnkgeyByZWplY3QoSlNPTi5wYXJzZSh0ZXh0KSk7IH1cbiAgICAgICAgY2F0Y2ggKGVycikgeyByZWplY3QodGV4dCk7IH1cbiAgICAgIH0pLmNhdGNoKHJlamVjdCk7XG4gICAgfSk7XG4gIH1cbiAgcmV0dXJuIHJlc3BvbnNlLmpzb24oKTtcbn07XG5cbmV4cG9ydCBjb25zdCBhcGlGZXRjaCA9IChvcHRpb25zOiBmZXRjaE9wdGlvbnMpID0+IChxdWVyeTogc3RyaW5nLCB2YXJpYWJsZXM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fSkgPT4ge1xuICAgIGxldCBmZXRjaEZ1bmN0aW9uID0gZmV0Y2g7XG4gICAgbGV0IHF1ZXJ5U3RyaW5nID0gcXVlcnk7XG4gICAgbGV0IGZldGNoT3B0aW9ucyA9IG9wdGlvbnNbMV0gfHwge307XG4gICAgaWYgKGZldGNoT3B0aW9ucy5tZXRob2QgJiYgZmV0Y2hPcHRpb25zLm1ldGhvZCA9PT0gJ0dFVCcpIHtcbiAgICAgIHF1ZXJ5U3RyaW5nID0gZW5jb2RlVVJJQ29tcG9uZW50KHF1ZXJ5KTtcbiAgICAgIHJldHVybiBmZXRjaEZ1bmN0aW9uKGAke29wdGlvbnNbMF19P3F1ZXJ5PSR7cXVlcnlTdHJpbmd9YCwgZmV0Y2hPcHRpb25zKVxuICAgICAgICAudGhlbihoYW5kbGVGZXRjaFJlc3BvbnNlKVxuICAgICAgICAudGhlbigocmVzcG9uc2U6IEdyYXBoUUxSZXNwb25zZSkgPT4ge1xuICAgICAgICAgIGlmIChyZXNwb25zZS5lcnJvcnMpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBHcmFwaFFMRXJyb3IocmVzcG9uc2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBmZXRjaEZ1bmN0aW9uKGAke29wdGlvbnNbMF19YCwge1xuICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyBxdWVyeTogcXVlcnlTdHJpbmcsIHZhcmlhYmxlcyB9KSxcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczoge1xuICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nXG4gICAgICB9LFxuICAgICAgLi4uZmV0Y2hPcHRpb25zXG4gICAgfSlcbiAgICAgIC50aGVuKGhhbmRsZUZldGNoUmVzcG9uc2UpXG4gICAgICAudGhlbigocmVzcG9uc2U6IEdyYXBoUUxSZXNwb25zZSkgPT4ge1xuICAgICAgICBpZiAocmVzcG9uc2UuZXJyb3JzKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEdyYXBoUUxFcnJvcihyZXNwb25zZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgICB9KTtcbiAgfTtcblxuXG5leHBvcnQgY29uc3QgYXBpU3Vic2NyaXB0aW9uID0gKG9wdGlvbnM6IGNoYWluT3B0aW9ucykgPT4gKFxuICAgIHF1ZXJ5OiBzdHJpbmcsXG4gICkgPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBxdWVyeVN0cmluZyA9IG9wdGlvbnNbMF0gKyAnP3F1ZXJ5PScgKyBlbmNvZGVVUklDb21wb25lbnQocXVlcnkpO1xuICAgICAgY29uc3Qgd3NTdHJpbmcgPSBxdWVyeVN0cmluZy5yZXBsYWNlKCdodHRwJywgJ3dzJyk7XG4gICAgICBjb25zdCBob3N0ID0gKG9wdGlvbnMubGVuZ3RoID4gMSAmJiBvcHRpb25zWzFdPy53ZWJzb2NrZXQ/LlswXSkgfHwgd3NTdHJpbmc7XG4gICAgICBjb25zdCB3ZWJTb2NrZXRPcHRpb25zID0gb3B0aW9uc1sxXT8ud2Vic29ja2V0IHx8IFtob3N0XTtcbiAgICAgIGNvbnN0IHdzID0gbmV3IFdlYlNvY2tldCguLi53ZWJTb2NrZXRPcHRpb25zKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHdzLFxuICAgICAgICBvbjogKGU6IChhcmdzOiBhbnkpID0+IHZvaWQpID0+IHtcbiAgICAgICAgICB3cy5vbm1lc3NhZ2UgPSAoZXZlbnQ6YW55KSA9PiB7XG4gICAgICAgICAgICBpZihldmVudC5kYXRhKXtcbiAgICAgICAgICAgICAgY29uc3QgcGFyc2VkID0gSlNPTi5wYXJzZShldmVudC5kYXRhKVxuICAgICAgICAgICAgICBjb25zdCBkYXRhID0gcGFyc2VkLmRhdGFcbiAgICAgICAgICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgICAgICAgICBzZWVrRm9yQWxpYXNlcyhkYXRhKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICByZXR1cm4gZShkYXRhKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9O1xuICAgICAgICB9LFxuICAgICAgICBvZmY6IChlOiAoYXJnczogYW55KSA9PiB2b2lkKSA9PiB7XG4gICAgICAgICAgd3Mub25jbG9zZSA9IGU7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yOiAoZTogKGFyZ3M6IGFueSkgPT4gdm9pZCkgPT4ge1xuICAgICAgICAgIHdzLm9uZXJyb3IgPSBlO1xuICAgICAgICB9LFxuICAgICAgICBvcGVuOiAoZTogKCkgPT4gdm9pZCkgPT4ge1xuICAgICAgICAgIHdzLm9ub3BlbiA9IGU7XG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH0gY2F0Y2gge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdObyB3ZWJzb2NrZXRzIGltcGxlbWVudGVkJyk7XG4gICAgfVxuICB9O1xuXG5cblxuY29uc3QgYWxsT3BlcmF0aW9ucyA9IHtcbiAgICBcInF1ZXJ5XCI6IFwiUXVlcnlcIixcbiAgICBcIm11dGF0aW9uXCI6IFwiTXV0YXRpb25cIixcbiAgICBcInN1YnNjcmlwdGlvblwiOiBcIlN1YnNjcmlwdGlvblwiXG59XG5cbmV4cG9ydCB0eXBlIEdlbmVyaWNPcGVyYXRpb248Tz4gPSBPIGV4dGVuZHMgJ3F1ZXJ5J1xuICA/IFwiUXVlcnlcIlxuICA6IE8gZXh0ZW5kcyAnbXV0YXRpb24nXG4gID8gXCJNdXRhdGlvblwiXG4gIDogXCJTdWJzY3JpcHRpb25cIlxuXG5leHBvcnQgY29uc3QgVGh1bmRlciA9IChmbjogRmV0Y2hGdW5jdGlvbikgPT4gPFxuICBPIGV4dGVuZHMgJ3F1ZXJ5JyB8ICdtdXRhdGlvbicgfCAnc3Vic2NyaXB0aW9uJyxcbiAgUiBleHRlbmRzIGtleW9mIFZhbHVlVHlwZXMgPSBHZW5lcmljT3BlcmF0aW9uPE8+XG4+KFxuICBvcGVyYXRpb246IE8sXG4pID0+IDxaIGV4dGVuZHMgVmFsdWVUeXBlc1tSXT4obzogWiB8IFZhbHVlVHlwZXNbUl0sIG9wcz86IE9wZXJhdGlvbk9wdGlvbnMpID0+XG4gIGZ1bGxDaGFpbkNvbnN0cnVjdChmbikob3BlcmF0aW9uLCBhbGxPcGVyYXRpb25zW29wZXJhdGlvbl0pKG8gYXMgYW55LCBvcHMpIGFzIFByb21pc2U8SW5wdXRUeXBlPEdyYXBoUUxUeXBlc1tSXSwgWj4+O1xuXG5leHBvcnQgY29uc3QgQ2hhaW4gPSAoLi4ub3B0aW9uczogY2hhaW5PcHRpb25zKSA9PiBUaHVuZGVyKGFwaUZldGNoKG9wdGlvbnMpKTtcblxuZXhwb3J0IGNvbnN0IFN1YnNjcmlwdGlvblRodW5kZXIgPSAoZm46IFN1YnNjcmlwdGlvbkZ1bmN0aW9uKSA9PiA8XG4gIE8gZXh0ZW5kcyAncXVlcnknIHwgJ211dGF0aW9uJyB8ICdzdWJzY3JpcHRpb24nLFxuICBSIGV4dGVuZHMga2V5b2YgVmFsdWVUeXBlcyA9IEdlbmVyaWNPcGVyYXRpb248Tz5cbj4oXG4gIG9wZXJhdGlvbjogTyxcbikgPT4gPFogZXh0ZW5kcyBWYWx1ZVR5cGVzW1JdPihcbiAgbzogWiB8IFZhbHVlVHlwZXNbUl0sXG4gIG9wcz86IE9wZXJhdGlvbk9wdGlvbnNcbik9PlxuICBmdWxsU3Vic2NyaXB0aW9uQ29uc3RydWN0KGZuKShvcGVyYXRpb24sIGFsbE9wZXJhdGlvbnNbb3BlcmF0aW9uXSkoXG4gICAgbyBhcyBhbnksXG4gICAgb3BzLFxuICApIGFzIFN1YnNjcmlwdGlvblRvR3JhcGhRTDxaLCBHcmFwaFFMVHlwZXNbUl0+O1xuXG5leHBvcnQgY29uc3QgU3Vic2NyaXB0aW9uID0gKC4uLm9wdGlvbnM6IGNoYWluT3B0aW9ucykgPT4gU3Vic2NyaXB0aW9uVGh1bmRlcihhcGlTdWJzY3JpcHRpb24ob3B0aW9ucykpO1xuZXhwb3J0IGNvbnN0IFpldXMgPSA8XG4gIFogZXh0ZW5kcyBWYWx1ZVR5cGVzW1JdLFxuICBPIGV4dGVuZHMgJ3F1ZXJ5JyB8ICdtdXRhdGlvbicgfCAnc3Vic2NyaXB0aW9uJyxcbiAgUiBleHRlbmRzIGtleW9mIFZhbHVlVHlwZXMgPSBHZW5lcmljT3BlcmF0aW9uPE8+XG4+KFxuICBvcGVyYXRpb246IE8sXG4gIG86IFogfCBWYWx1ZVR5cGVzW1JdLFxuICBvcGVyYXRpb25OYW1lPzogc3RyaW5nLFxuKSA9PiBxdWVyeUNvbnN0cnVjdChvcGVyYXRpb24sIGFsbE9wZXJhdGlvbnNbb3BlcmF0aW9uXSwgb3BlcmF0aW9uTmFtZSkobyBhcyBhbnkpO1xuZXhwb3J0IGNvbnN0IFNlbGVjdG9yID0gPFQgZXh0ZW5kcyBrZXlvZiBWYWx1ZVR5cGVzPihfa2V5OiBUKSA9PiBaZXVzU2VsZWN0PFZhbHVlVHlwZXNbVF0+KCk7XG5cblxuZXhwb3J0IGNvbnN0IEdxbCA9IENoYWluKCdodHRwOi8vbG9jYWxob3N0OjQwMDAvZ3JhcGhxbCcpXG4iXX0=
|