tt-entities 0.0.41 → 0.0.43

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/dist/src/main.js CHANGED
@@ -1402,7 +1402,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
1402
1402
  var __metadata = (this && this.__metadata) || function (k, v) {
1403
1403
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
1404
1404
  };
1405
- var _a;
1405
+ var _a, _b;
1406
1406
  Object.defineProperty(exports, "__esModule", ({ value: true }));
1407
1407
  exports.Inventory = void 0;
1408
1408
  const sequelize_typescript_1 = __webpack_require__(/*! sequelize-typescript */ "sequelize-typescript");
@@ -1410,6 +1410,7 @@ const inventory_stock_entity_1 = __webpack_require__(/*! ./inventory-stock.entit
1410
1410
  const store_inventory_entity_1 = __webpack_require__(/*! ./store-inventory.entity */ "./libs/tatayab-entities-library/src/entities/store-inventory.entity.ts");
1411
1411
  const store_entity_1 = __webpack_require__(/*! ./store.entity */ "./libs/tatayab-entities-library/src/entities/store.entity.ts");
1412
1412
  const status_1 = __webpack_require__(/*! ../utils/enums/status */ "./libs/tatayab-entities-library/src/utils/enums/status.ts");
1413
+ const country_entity_1 = __webpack_require__(/*! ./country.entity */ "./libs/tatayab-entities-library/src/entities/country.entity.ts");
1413
1414
  let Inventory = class Inventory extends sequelize_typescript_1.Model {
1414
1415
  };
1415
1416
  exports.Inventory = Inventory;
@@ -1444,6 +1445,15 @@ __decorate([
1444
1445
  }),
1445
1446
  __metadata("design:type", typeof (_a = typeof status_1.Status !== "undefined" && status_1.Status) === "function" ? _a : Object)
1446
1447
  ], Inventory.prototype, "status", void 0);
1448
+ __decorate([
1449
+ (0, sequelize_typescript_1.ForeignKey)(() => country_entity_1.Country),
1450
+ (0, sequelize_typescript_1.Column)({ allowNull: true }),
1451
+ __metadata("design:type", Number)
1452
+ ], Inventory.prototype, "countryId", void 0);
1453
+ __decorate([
1454
+ (0, sequelize_typescript_1.BelongsTo)(() => country_entity_1.Country),
1455
+ __metadata("design:type", typeof (_b = typeof country_entity_1.Country !== "undefined" && country_entity_1.Country) === "function" ? _b : Object)
1456
+ ], Inventory.prototype, "country", void 0);
1447
1457
  __decorate([
1448
1458
  (0, sequelize_typescript_1.HasMany)(() => inventory_stock_entity_1.InventoryStock),
1449
1459
  __metadata("design:type", Array)
@@ -2125,6 +2135,7 @@ var PaymentGatewayType;
2125
2135
  PaymentGatewayType["KNET"] = "knet";
2126
2136
  PaymentGatewayType["WALLET"] = "wallet";
2127
2137
  PaymentGatewayType["BANK"] = "bank";
2138
+ PaymentGatewayType["OFFLINE_PAYMENT"] = "offline_payment";
2128
2139
  })(PaymentGatewayType || (exports.PaymentGatewayType = PaymentGatewayType = {}));
2129
2140
  let PaymentGateway = class PaymentGateway extends sequelize_typescript_1.Model {
2130
2141
  };
@@ -3345,6 +3356,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
3345
3356
  var __metadata = (this && this.__metadata) || function (k, v) {
3346
3357
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
3347
3358
  };
3359
+ var _a, _b;
3348
3360
  Object.defineProperty(exports, "__esModule", ({ value: true }));
3349
3361
  exports.StoreInventory = void 0;
3350
3362
  const sequelize_typescript_1 = __webpack_require__(/*! sequelize-typescript */ "sequelize-typescript");
@@ -3367,6 +3379,14 @@ __decorate([
3367
3379
  (0, sequelize_typescript_1.Column)({ defaultValue: 1 }),
3368
3380
  __metadata("design:type", Number)
3369
3381
  ], StoreInventory.prototype, "priority", void 0);
3382
+ __decorate([
3383
+ (0, sequelize_typescript_1.BelongsTo)(() => inventory_entity_1.Inventory),
3384
+ __metadata("design:type", typeof (_a = typeof inventory_entity_1.Inventory !== "undefined" && inventory_entity_1.Inventory) === "function" ? _a : Object)
3385
+ ], StoreInventory.prototype, "inventory", void 0);
3386
+ __decorate([
3387
+ (0, sequelize_typescript_1.BelongsTo)(() => store_entity_1.Store),
3388
+ __metadata("design:type", typeof (_b = typeof store_entity_1.Store !== "undefined" && store_entity_1.Store) === "function" ? _b : Object)
3389
+ ], StoreInventory.prototype, "store", void 0);
3370
3390
  exports.StoreInventory = StoreInventory = __decorate([
3371
3391
  sequelize_typescript_1.Table
3372
3392
  ], StoreInventory);
@@ -5165,4 +5185,4 @@ bootstrap();
5165
5185
 
5166
5186
  /******/ })()
5167
5187
  ;
5168
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUFLO2dCQUNkLE1BQU0sRUFBRTtvQkFDTixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLElBQUk7aUJBQ2Y7YUFDRixDQUFDO1NBQ0g7UUFDRCxTQUFTLEVBQUUsRUFBRTtLQUNkLENBQUM7R0FDVyxTQUFTLENBQUc7Ozs7Ozs7Ozs7O0FDN0J6QiwyQzs7Ozs7Ozs7OztBQ0FBLDJDOzs7Ozs7Ozs7O0FDQUEseUM7Ozs7Ozs7Ozs7QUNBQSw4Qzs7Ozs7Ozs7OztBQ0FBLGlEOzs7Ozs7Ozs7O0FDQUEsb0Q7Ozs7OztVQ0FBO1VBQ0E7O1VBRUE7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7O1VBRUE7VUFDQTs7VUFFQTtVQUNBO1VBQ0E7Ozs7Ozs7Ozs7OztBQzVCQSw4RUFBaUM7QUFDakMsdUVBQTJDO0FBQzNDLG9GQUF5QztBQUN6Qyx1R0FBaUQ7QUFFakQsS0FBSyxVQUFVLFNBQVM7SUFDdEIsTUFBTSxHQUFHLEdBQUcsTUFBTSxrQkFBVyxDQUFDLE1BQU0sQ0FBQyxzQkFBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDaEUsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxnQ0FBUyxDQUFDLENBQUM7SUFDckMsTUFBTSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDdEMsTUFBTSxHQUFHLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxDQUFDO0FBQ3BELENBQUM7QUFDRCxTQUFTLEVBQUUsQ0FBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2FwaWtleS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvYXBwLWNvbmZpZy5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvYXJlYS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvYmFubmVyLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9icmFuZC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvYnVuZGxlLXByb2R1Y3QuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2J1bmRsZS1zdG9yZS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvYnVuZGxlLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9jYXJ0LWl0ZW0tYnVuZGxlLXNlbGVjdGlvbi5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvY2FydC1pdGVtLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9jYXJ0LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9jYXRlZ29yeS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvY291bnRyeS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvY291cG9uLXByb2R1Y3QuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2NvdXBvbi1zdG9yZS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvY291cG9uLXVzZXIuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2NvdXBvbi5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvaW52ZW50b3J5LXN0b2NrLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9pbnZlbnRvcnkuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL29yZGVyLWl0ZW0tYnVuZGxlLXNlbGVjdGlvbi5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvb3JkZXItaXRlbS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvb3JkZXItc3RhdHVzLWhpc3RvcnkuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL29yZGVyLXN0YXR1cy5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvb3JkZXIuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3BheW1lbnQtZ2F0ZXdheS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcGF5bWVudC1tZXRob2QtY291bnRyeS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcGF5bWVudC1tZXRob2QuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3Blcm1pc3Npb24uZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3Byb2R1Y3QtbWVkaWEuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3Byb2R1Y3Qtc3RvcmUuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3Byb2R1Y3QtdGFnLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wcm9kdWN0LXZhcmlhbnQtb3B0aW9uLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wcm9kdWN0LXZhcmlhbnQuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3Byb2R1Y3QuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3B1cmNoYXNlLW9yZGVyLWl0ZW0uZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3B1cmNoYXNlLW9yZGVyLW9yZGVyLWl0ZW0uZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3B1cmNoYXNlLW9yZGVyLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9yb2xlLXBlcm1pc3Npb24uZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3NoaXBwaW5nLXJ1bGUuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3N0b2NrLW1vdmVtZW50LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9zdG9yZS1pbnZlbnRvcnkuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3N0b3JlLXBheW1lbnQtbWV0aG9kLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9zdG9yZS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvc3lzLnJvbGUuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3N5cy51c2VyLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy90YWcuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3VzZXItYWRkcmVzcy5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdXNlci1mYXZvcml0ZS1jYXRhbG9nLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy91c2VyLWZhdm9yaXRlLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy91c2VyLXRyYW5zYWN0aW9uLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy91c2VyLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy91c2VyRGV2aWNlLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy92YXJpYW50LW9wdGlvbi5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdmFyaWFudC10eXBlLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy92ZW5kb3ItcHJvZHVjdC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdmVuZG9yLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9pbmRleC50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy91dGlscy9lbnVtcy9nZW5kZXIudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvdXRpbHMvZW51bXMvbGFuZ3VhZ2UudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvdXRpbHMvZW51bXMvb3NOYW1lLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL3V0aWxzL2VudW1zL3Byb2R1Y3RBcHAudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvdXRpbHMvZW51bXMvcHVyY2hhc2VPcmRlclN0YXR1cy50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy91dGlscy9lbnVtcy9zdGF0dXMudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvdXRpbHMvZW51bXMvc3RvY2tNb3ZlbWVudFR5cGUudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvdXRpbHMvZW51bXMvdmVyc2lvbnR5cGUudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9zcmMvYXBwLm1vZHVsZS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy9leHRlcm5hbCBjb21tb25qcyBcIkBuZXN0anMvY29tbW9uXCIiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvZXh0ZXJuYWwgY29tbW9uanMgXCJAbmVzdGpzL2NvbmZpZ1wiIiwid2VicGFjazovL3R0LWVudGl0aWVzL2V4dGVybmFsIGNvbW1vbmpzIFwiQG5lc3Rqcy9jb3JlXCIiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvZXh0ZXJuYWwgY29tbW9uanMgXCJAbmVzdGpzL3NlcXVlbGl6ZVwiIiwid2VicGFjazovL3R0LWVudGl0aWVzL2V4dGVybmFsIGNvbW1vbmpzIFwic2VxdWVsaXplLXR5cGVzY3JpcHRcIiIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy9leHRlcm5hbCBjb21tb25qcyBcInRzY29uZmlnLXBhdGhzL3JlZ2lzdGVyXCIiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvd2VicGFjay9ib290c3RyYXAiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9zcmMvbWFpbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2x1bW4sIERhdGFUeXBlLCBNb2RlbCwgVGFibGUgfSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuaW1wb3J0IHsgVmVyc2lvblR5cGUgfSBmcm9tICcuLi91dGlscy9lbnVtcy92ZXJzaW9udHlwZSc7XG5pbXBvcnQgeyBPc05hbWUgfSBmcm9tICcuLi91dGlscy9lbnVtcy9vc05hbWUnO1xuaW1wb3J0IHsgUHJvZHVjdEFwcCB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3Byb2R1Y3RBcHAnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBBcGlLZXkgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBoYXNoZWRBcGlLZXk6IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKE9zTmFtZSkpIH0pXG4gIGRlY2xhcmUgb3NOYW1lOiBPc05hbWU7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhQcm9kdWN0QXBwKSkgfSlcbiAgZGVjbGFyZSBhcHBOYW1lOiBQcm9kdWN0QXBwO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBhcHBWZXJzaW9uOiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIGV4cGlyeURhdGU6IERhdGU7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGlzUmVsZWFzZWQ6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFZlcnNpb25UeXBlKSksXG4gICAgZGVmYXVsdFZhbHVlOiBWZXJzaW9uVHlwZS5PUFRJT05BTCxcbiAgfSlcbiAgZGVjbGFyZSB2ZXJzaW9uVHlwZTogVmVyc2lvblR5cGU7XG59XG4iLCJpbXBvcnQgeyBDb2x1bW4sIERhdGFUeXBlLCBNb2RlbCwgVGFibGUgfSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIEFwcENvbmZpZyBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtbih7IHVuaXF1ZTogdHJ1ZSB9KVxuICBrZXk6IHN0cmluZztcbiAgQENvbHVtbihEYXRhVHlwZS5KU09OKVxuICB2YWx1ZTogSlNPTjtcbn1cbiIsImltcG9ydCB7XG4gIEJlbG9uZ3NUbyxcbiAgQ29sdW1uLFxuICBGb3JlaWduS2V5LFxuICBNb2RlbCxcbiAgVGFibGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IENvdW50cnkgfSBmcm9tICcuL2NvdW50cnkuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgQXJlYSBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lRW46IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVBcjogc3RyaW5nO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IENvdW50cnkpXG4gIEBDb2x1bW4oe1xuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gICAgdmFsaWRhdGU6IHsgbm90TnVsbDogeyBtc2c6ICdDb3VudHkgSWQgUmVxdWlyZWQnIH0gfSxcbiAgfSlcbiAgZGVjbGFyZSBjb3VudHJ5SWQ6IG51bWJlcjtcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgcGFyZW50SWQ/OiBudW1iZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBDb3VudHJ5KVxuICBkZWNsYXJlIGNvdW50cnk6IENvdW50cnk7XG59XG4iLCJpbXBvcnQge1xuICBNb2RlbCxcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgRGF0YVR5cGUsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuXG4vLyDilIDilIAgV2hlcmUgdGhlIGJhbm5lciBhcHBlYXJzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuZXhwb3J0IGVudW0gQmFubmVyUGxhY2VtZW50IHtcbiAgSE9NRSA9ICdob21lJywgLy8gaG9yaXpvbnRhbCBsaXN0IG9uIHRoZSBob21lIHBhZ2VcbiAgQ0FURUdPUlkgPSAnY2F0ZWdvcnknLCAvLyB0b3Agb2YgYSBzcGVjaWZpYyBjYXRlZ29yeSBwYWdlXG4gIEJSQU5EID0gJ2JyYW5kJywgLy8gdG9wIG9mIGEgc3BlY2lmaWMgYnJhbmQgcGFnZVxuICBTRUFSQ0ggPSAnc2VhcmNoJywgLy8gc2VhcmNoIHJlc3VsdHMgcGFnZVxuICBDVVNUT00gPSAnY3VzdG9tJywgLy8gYW55IGZ1dHVyZSBwbGFjZW1lbnQg4oCUIGlkZW50aWZpZWQgYnkgcGxhY2VtZW50S2V5XG59XG5cbmV4cG9ydCBlbnVtIEJhbm5lclN0YXR1cyB7XG4gIEFDVElWRSA9ICdhY3RpdmUnLFxuICBJTkFDVElWRSA9ICdpbmFjdGl2ZScsXG4gIERSQUZUID0gJ2RyYWZ0Jyxcbn1cblxuLy8g4pSA4pSAIEZpbHRlciBzaGFwZSBzdG9yZWQgaW4gdGhlIEpTT04gY29sdW1uIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuLy8gQWxsIGZpZWxkcyBhcmUgb3B0aW9uYWwg4oCUIGFueSBjb21iaW5hdGlvbiBpcyB2YWxpZC5cbi8vIEFuIGVtcHR5IG9iamVjdCB7fSBtZWFucyBcInNob3cgZXZlcnl0aGluZ1wiIChubyBmaWx0ZXIpLlxuZXhwb3J0IGludGVyZmFjZSBCYW5uZXJGaWx0ZXJzIHtcbiAgY2F0ZWdvcnlJZHM/OiBudW1iZXJbXTsgLy8gcHJvZHVjdHMvYnVuZGxlcyBpbiB0aGVzZSBjYXRlZ29yaWVzXG4gIGJyYW5kSWRzPzogbnVtYmVyW107IC8vIHByb2R1Y3RzIGJlbG9uZ2luZyB0byB0aGVzZSBicmFuZHNcbiAgdGFnU2x1Z3M/OiBzdHJpbmdbXTsgLy8gcHJvZHVjdHMgdGFnZ2VkIHdpdGggYW55IG9mIHRoZXNlIHNsdWdzXG4gIHR5cGVzPzogKCdwcm9kdWN0JyB8ICdidW5kbGUnKVtdOyAvLyBsaW1pdCB0byBvbmx5IHByb2R1Y3RzIG9yIG9ubHkgYnVuZGxlc1xuICBpc0ZlYXR1cmVkPzogYm9vbGVhbjsgLy8gb25seSBmZWF0dXJlZCBpdGVtc1xuICBtaW5QcmljZT86IG51bWJlcjtcbiAgbWF4UHJpY2U/OiBudW1iZXI7XG4gIC8vIEZ1dHVyZTogY29sbGVjdGlvbklkLCBwcm9tb3Rpb25JZCwgZXRjLlxufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBCYW5uZXIgZXh0ZW5kcyBNb2RlbCB7XG4gIC8vIOKUgOKUgCBJZGVudGl0eSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB0aXRsZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB0aXRsZUFyOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHN1YnRpdGxlRW46IHN0cmluZyB8IG51bGw7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHN1YnRpdGxlQXI6IHN0cmluZyB8IG51bGw7XG5cbiAgLy8g4pSA4pSAIE1lZGlhIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGNvdmVySW1hZ2U6IHN0cmluZzsgLy8gUzMgVVJMXG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvdmVySW1hZ2VNb2JpbGU6IHN0cmluZyB8IG51bGw7IC8vIG9wdGlvbmFsIHNlcGFyYXRlIG1vYmlsZSBjcm9wXG5cbiAgLy8g4pSA4pSAIFBsYWNlbWVudCDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgLy8gV0hFUkUgdGhpcyBiYW5uZXIgYXBwZWFyc1xuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoQmFubmVyUGxhY2VtZW50KSksXG4gICAgYWxsb3dOdWxsOiBmYWxzZSxcbiAgICBkZWZhdWx0VmFsdWU6IEJhbm5lclBsYWNlbWVudC5IT01FLFxuICB9KVxuICBkZWNsYXJlIHBsYWNlbWVudDogQmFubmVyUGxhY2VtZW50O1xuXG4gIC8vIEZvciBwbGFjZW1lbnQ9Y2F0ZWdvcnkg4oaSIHBsYWNlbWVudFJlZklkID0gY2F0ZWdvcnlJZFxuICAvLyBGb3IgcGxhY2VtZW50PWJyYW5kICAgIOKGkiBwbGFjZW1lbnRSZWZJZCA9IGJyYW5kSWRcbiAgLy8gRm9yIHBsYWNlbWVudD1ob21lL3NlYXJjaC9jdXN0b20g4oaSIG51bGxcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHBsYWNlbWVudFJlZklkPzogbnVtYmVyO1xuXG4gIC8vIEh1bWFuLXJlYWRhYmxlIGtleSBmb3IgY3VzdG9tIHBsYWNlbWVudHMgKGUuZy4gXCJyYW1hZGFuX3NhbGVcIiwgXCJjaGVja291dF90b3BcIilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHBsYWNlbWVudEtleT86IHN0cmluZztcblxuICAvLyDilIDilIAgQ2F0YWxvZyBmaWx0ZXJzICh3aGF0IHByb2R1Y3RzL2J1bmRsZXMgYXBwZWFyIElOU0lERSB0aGUgYmFubmVyKSDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgLy8gU3RvcmVkIGFzIEpTT04g4oCUIHJlc29sdmVkIGF0IHJ1bnRpbWUgdmlhIENhdGFsb2dMaXN0U2VydmljZVxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5KU09OLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gICAgZGVmYXVsdFZhbHVlOiB7fSxcbiAgfSlcbiAgZGVjbGFyZSBmaWx0ZXJzOiBCYW5uZXJGaWx0ZXJzO1xuXG4gIC8vIE1heCBudW1iZXIgb2YgaXRlbXMgdG8gcmV0dXJuIGluc2lkZSB0aGUgYmFubmVyIChudWxsID0gdXNlIEFQSSBkZWZhdWx0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgaXRlbUxpbWl0PzogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgCBDVEEgKG9wdGlvbmFsIHRhcCBhY3Rpb24gb24gdGhlIGJhbm5lciBjb3ZlciBpdHNlbGYpIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY3RhTGFiZWxFbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY3RhTGFiZWxBcj86IHN0cmluZztcblxuICAvLyBEZWVwIGxpbmsgb3Igd2ViIFVSTCB0aGUgY292ZXIgaW1hZ2UgdGFwcyB0b1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY3RhVXJsPzogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgCBTY2hlZHVsaW5nIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREFURSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgc3RhcnREYXRlPzogRGF0ZTsgLy8gbnVsbCA9IHNob3cgaW1tZWRpYXRlbHlcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREFURSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZW5kRGF0ZT86IERhdGU7IC8vIG51bGwgPSBzaG93IGluZGVmaW5pdGVseVxuXG4gIC8vIOKUgOKUgCBEaXNwbGF5IOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgc29ydE9yZGVyOiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKEJhbm5lclN0YXR1cykpLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gICAgZGVmYXVsdFZhbHVlOiBCYW5uZXJTdGF0dXMuRFJBRlQsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBCYW5uZXJTdGF0dXM7XG59XG4iLCJpbXBvcnQgeyBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgRGF0YVR5cGUsIEhhc01hbnkgfSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBCcmFuZCBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lRW46IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVBcjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkVuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkFyPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBsb2dvPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSB3ZWJzaXRlPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBTdGF0dXMuQUNUSVZFLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogU3RhdHVzO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsIENvbHVtbiwgTW9kZWwsIEZvcmVpZ25LZXksIEJlbG9uZ3NUbywgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IEJ1bmRsZSB9IGZyb20gJy4vYnVuZGxlLmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0VmFyaWFudCB9IGZyb20gJy4vcHJvZHVjdC12YXJpYW50LmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIEJ1bmRsZVByb2R1Y3QgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IEJ1bmRsZSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBidW5kbGVJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3QpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdElkOiBudW1iZXI7XG5cbiAgLy8gT3B0aW9uYWwg4oCUIGlmIHNldCwgb25seSB0aGlzIHNwZWNpZmljIHZhcmlhbnQgaXMgcGFydCBvZiB0aGUgYnVuZGxlXG4gIC8vIG51bGwgPSBjdXN0b21lciBjYW4gcGljayBhbnkgdmFyaWFudCBvZiB0aGlzIHByb2R1Y3RcbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcm9kdWN0VmFyaWFudElkPzogbnVtYmVyO1xuXG4gIC8vIERpc3BsYXkgb3JkZXIgaW5zaWRlIHRoZSBidW5kbGUgcGlja2VyIFVJXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQnVuZGxlKVxuICBkZWNsYXJlIGJ1bmRsZTogQnVuZGxlO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdClcbiAgZGVjbGFyZSBwcm9kdWN0OiBQcm9kdWN0O1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIGRlY2xhcmUgdmFyaWFudD86IFByb2R1Y3RWYXJpYW50O1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsIENvbHVtbiwgTW9kZWwsIEZvcmVpZ25LZXksIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBCdW5kbGUgfSBmcm9tICcuL2J1bmRsZS5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuL3N0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBCdW5kbGVTdG9yZSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gQnVuZGxlKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGJ1bmRsZUlkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3RvcmUpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgc3RvcmVJZDogbnVtYmVyO1xuXG4gIC8vIFN0b3JlLXNwZWNpZmljIHJlZ3VsYXIgcHJpY2Ug4oCUIG51bGwgPSB1c2UgYnVuZGxlLmRlZmF1bHRQcmljZVxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByaWNlPzogbnVtYmVyO1xuXG4gIC8vIFNhbGUgcHJpY2Ug4oCUIGFjdGl2ZSBvbmx5IHdpdGhpbiBzYWxlU3RhcnREYXRlIOKGkiBzYWxlRW5kRGF0ZVxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHNhbGVQcmljZT86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREFURSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2FsZVN0YXJ0RGF0ZT86IERhdGU7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRBVEUsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHNhbGVFbmREYXRlPzogRGF0ZTtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBTdGF0dXMuQUNUSVZFLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogU3RhdHVzO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsIENvbHVtbiwgTW9kZWwsIEZvcmVpZ25LZXksIEJlbG9uZ3NUbyxcbiAgSGFzTWFueSwgQmVsb25nc1RvTWFueSwgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IENhdGVnb3J5IH0gZnJvbSAnLi9jYXRlZ29yeS5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuL3N0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBCdW5kbGVQcm9kdWN0IH0gZnJvbSAnLi9idW5kbGUtcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgQnVuZGxlU3RvcmUgfSBmcm9tICcuL2J1bmRsZS1zdG9yZS5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgQnVuZGxlIGV4dGVuZHMgTW9kZWwge1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdW5pcXVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2t1OiBzdHJpbmc7IC8vIEJ1bmRsZSBTS1UgZS5nLiBCTkRMLTAwMVxuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Fbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Bcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgaW1hZ2U/OiBzdHJpbmc7XG5cbiAgLy8gVG90YWwgcHJvZHVjdHMgYXZhaWxhYmxlIHRvIGNob29zZSBmcm9tIGluIHRoaXMgYnVuZGxlXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSB0b3RhbFByb2R1Y3RzOiBudW1iZXI7XG5cbiAgLy8gSG93IG1hbnkgdGhlIGN1c3RvbWVyIG11c3QgY2hvb3NlXG4gIC8vIGUuZy4gdG90YWxQcm9kdWN0cz0xMCwgY2hvaWNlQ291bnQ9MyDihpIgcGljayBhbnkgMyBmcm9tIDEwXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDEgfSlcbiAgZGVjbGFyZSBjaG9pY2VDb3VudDogbnVtYmVyO1xuXG4gIC8vIERlZmF1bHQgcHJpY2UgKGZhbGxiYWNrIGlmIG5vIHN0b3JlLXNwZWNpZmljIHByaWNlKVxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIGRlZmF1bHRQcmljZTogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IENhdGVnb3J5KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY2F0ZWdvcnlJZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgc29ydE9yZGVyOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc0ZlYXR1cmVkOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IENhdGVnb3J5KVxuICBkZWNsYXJlIGNhdGVnb3J5PzogQ2F0ZWdvcnk7XG5cbiAgQEhhc01hbnkoKCkgPT4gQnVuZGxlUHJvZHVjdClcbiAgZGVjbGFyZSBidW5kbGVQcm9kdWN0czogQnVuZGxlUHJvZHVjdFtdO1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFByb2R1Y3QsICgpID0+IEJ1bmRsZVByb2R1Y3QpXG4gIGRlY2xhcmUgcHJvZHVjdHM6IFByb2R1Y3RbXTtcblxuICBASGFzTWFueSgoKSA9PiBCdW5kbGVTdG9yZSlcbiAgZGVjbGFyZSBidW5kbGVTdG9yZXM6IEJ1bmRsZVN0b3JlW107XG5cbiAgQEJlbG9uZ3NUb01hbnkoKCkgPT4gU3RvcmUsICgpID0+IEJ1bmRsZVN0b3JlKVxuICBkZWNsYXJlIHN0b3JlczogU3RvcmVbXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBGb3JlaWduS2V5LCBCZWxvbmdzVG8sXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IENhcnRJdGVtIH0gZnJvbSAnLi9jYXJ0LWl0ZW0uZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgQ2FydEl0ZW1CdW5kbGVTZWxlY3Rpb24gZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IENhcnRJdGVtKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGNhcnRJdGVtSWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdFZhcmlhbnRJZD86IG51bWJlcjtcblxuICAvLyBEaXNwbGF5IG9yZGVyIHdpdGhpbiB0aGUgYnVuZGxlIHNlbGVjdGlvblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgc29ydE9yZGVyOiBudW1iZXI7XG5cbiAgLy8g4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IENhcnRJdGVtKVxuICBkZWNsYXJlIGNhcnRJdGVtOiBDYXJ0SXRlbTtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3QpXG4gIGRlY2xhcmUgcHJvZHVjdDogUHJvZHVjdDtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBkZWNsYXJlIHZhcmlhbnQ/OiBQcm9kdWN0VmFyaWFudDtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBGb3JlaWduS2V5LCBCZWxvbmdzVG8sXG4gIEhhc01hbnksIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBDYXJ0IH0gZnJvbSAnLi9jYXJ0LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0VmFyaWFudCB9IGZyb20gJy4vcHJvZHVjdC12YXJpYW50LmVudGl0eSc7XG5pbXBvcnQgeyBCdW5kbGUgfSBmcm9tICcuL2J1bmRsZS5lbnRpdHknO1xuaW1wb3J0IHsgQ2FydEl0ZW1CdW5kbGVTZWxlY3Rpb24gfSBmcm9tICcuL2NhcnQtaXRlbS1idW5kbGUtc2VsZWN0aW9uLmVudGl0eSc7XG5cbmV4cG9ydCBlbnVtIENhcnRJdGVtVHlwZSB7XG4gIFBST0RVQ1QgPSAncHJvZHVjdCcsXG4gIEJVTkRMRSAgPSAnYnVuZGxlJyxcbn1cblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgQ2FydEl0ZW0gZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IENhcnQpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgY2FydElkOiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKENhcnRJdGVtVHlwZSkpLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gIH0pXG4gIGRlY2xhcmUgaXRlbVR5cGU6IENhcnRJdGVtVHlwZTtcblxuICAvLyDilIDilIAgUHJvZHVjdCBmaWVsZHMgKG51bGwgd2hlbiBpdGVtVHlwZSA9IGJ1bmRsZSkg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3QpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcm9kdWN0SWQ/OiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcm9kdWN0VmFyaWFudElkPzogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgCBCdW5kbGUgZmllbGRzIChudWxsIHdoZW4gaXRlbVR5cGUgPSBwcm9kdWN0KSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQEZvcmVpZ25LZXkoKCkgPT4gQnVuZGxlKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgYnVuZGxlSWQ/OiBudW1iZXI7XG5cbiAgLy8gQ29tcG9zZWQgU0tVIGJ1aWx0IGF0IHNlbGVjdGlvbiB0aW1lIGUuZy4gQk5ETC0wMDErUEVSRi1NLTAwMS1WMytQRVJGLVctMDAyXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjb21wb3NlZFNrdT86IHN0cmluZztcblxuICAvLyDilIDilIAgU2hhcmVkIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAxIH0pXG4gIGRlY2xhcmUgcXVhbnRpdHk6IG51bWJlcjtcblxuICAvLyBQcmljZSBjYXB0dXJlZCBhdCB0aW1lIG9mIGFkZGluZyDigJQgc28gcHJpY2UgY2hhbmdlcyBkb24ndCBzaWxlbnRseSB1cGRhdGUgY2FydFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB1bml0UHJpY2U6IG51bWJlcjtcblxuICAvLyDilIDilIAgU3RvY2sgZmxhZyDigJQgc2V0IHRydWUgYnkgdGhlIHN0b2NrLWNoZWNrIGVuZHBvaW50IOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICAvLyBDbGVhcmVkIHdoZW4gdXNlciB1cGRhdGVzIHF0eSBvciBpdGVtIGlzIHJlLXZhbGlkYXRlZFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGlzT3V0T2ZTdG9jazogYm9vbGVhbjtcblxuICAvLyDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ2FydClcbiAgZGVjbGFyZSBjYXJ0OiBDYXJ0O1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdClcbiAgZGVjbGFyZSBwcm9kdWN0PzogUHJvZHVjdDtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBkZWNsYXJlIHZhcmlhbnQ/OiBQcm9kdWN0VmFyaWFudDtcblxuICBAQmVsb25nc1RvKCgpID0+IEJ1bmRsZSlcbiAgZGVjbGFyZSBidW5kbGU/OiBCdW5kbGU7XG5cbiAgQEhhc01hbnkoKCkgPT4gQ2FydEl0ZW1CdW5kbGVTZWxlY3Rpb24pXG4gIGRlY2xhcmUgYnVuZGxlU2VsZWN0aW9uczogQ2FydEl0ZW1CdW5kbGVTZWxlY3Rpb25bXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBGb3JlaWduS2V5LCBCZWxvbmdzVG8sXG4gIEhhc01hbnksIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi91c2VyLmVudGl0eSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4vc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IENhcnRJdGVtIH0gZnJvbSAnLi9jYXJ0LWl0ZW0uZW50aXR5JztcblxuZXhwb3J0IGVudW0gQ2FydFN0YXR1cyB7XG4gIEFDVElWRSA9ICdhY3RpdmUnLCAvLyBJbiB1c2VcbiAgUEVORElOR19QQVlNRU5UID0gJ3BlbmRpbmdfcGF5bWVudCcsIC8vIE9yZGVyIHBsYWNlZCwgYXdhaXRpbmcgcGF5bWVudCDigJQgY2FydCBmcm96ZW4gYnV0IHJlY292ZXJhYmxlXG4gIE1FUkdFRCA9ICdtZXJnZWQnLCAvLyBHdWVzdCBjYXJ0IG1lcmdlZCBpbnRvIHVzZXIgY2FydFxuICBDT05WRVJURUQgPSAnY29udmVydGVkJywgLy8gQ29udmVydGVkIHRvIGFuIG9yZGVyXG4gIEFCQU5ET05FRCA9ICdhYmFuZG9uZWQnLCAvLyBFeHBpcmVkIC8gbm90IHVzZWRcbn1cblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgQ2FydCBleHRlbmRzIE1vZGVsIHtcbiAgLy8g4pSA4pSAIElkZW50aXR5IOKAlCBvbmUgb2YgdGhlc2UgdHdvIHdpbGwgYWx3YXlzIGJlIHNldCwgbmV2ZXIgYm90aCBudWxsIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIC8vIExvZ2dlZC1pbiB1c2VyIOKAlCBudWxsIGZvciBndWVzdHNcbiAgQEZvcmVpZ25LZXkoKCkgPT4gVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHVzZXJJZD86IG51bWJlcjtcblxuICAvLyBHdWVzdCBpZGVudGlmaWVyIOKAlCBVVUlEIGdlbmVyYXRlZCBvbiBmaXJzdCBjYXJ0IGNyZWF0aW9uLCBzdG9yZWQgb24gZGV2aWNlXG4gIC8vIG51bGwgb25jZSBjYXJ0IGlzIG1lcmdlZC9jbGFpbWVkIGJ5IGEgbG9nZ2VkLWluIHVzZXJcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGd1ZXN0VG9rZW4/OiBzdHJpbmc7XG5cbiAgLy8g4pSA4pSAIFN0b3JlIHNjb3BlIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBARm9yZWlnbktleSgoKSA9PiBTdG9yZSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBzdG9yZUlkOiBudW1iZXI7XG5cbiAgLy8g4pSA4pSAIFN0YXRlIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoQ2FydFN0YXR1cykpLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gICAgZGVmYXVsdFZhbHVlOiBDYXJ0U3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IENhcnRTdGF0dXM7XG5cbiAgLy8gR3Vlc3QgY2FydHMgZXhwaXJlIGFmdGVyIDMwIGRheXMgb2YgaW5hY3Rpdml0eVxuICAvLyBVc2VyIGNhcnRzIGV4cGlyZSBhZnRlciA5MCBkYXlzXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBleHBpcmVzQXQ/OiBEYXRlO1xuXG4gIC8vIOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBVc2VyKVxuICBkZWNsYXJlIHVzZXI/OiBVc2VyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gU3RvcmUpXG4gIGRlY2xhcmUgc3RvcmU6IFN0b3JlO1xuXG4gIEBIYXNNYW55KCgpID0+IENhcnRJdGVtKVxuICBkZWNsYXJlIGl0ZW1zOiBDYXJ0SXRlbVtdO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIERhdGFUeXBlLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIEhhc01hbnksXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIENhdGVnb3J5IGV4dGVuZHMgTW9kZWwge1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVFbjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUFyOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlc2NyaXB0aW9uRW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlc2NyaXB0aW9uQXI/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGltYWdlPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBTdGF0dXMuQUNUSVZFLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogU3RhdHVzO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IENhdGVnb3J5KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcGFyZW50SWQ/OiBudW1iZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBDYXRlZ29yeSwgeyBmb3JlaWduS2V5OiAncGFyZW50SWQnLCBhczogJ3BhcmVudCcgfSlcbiAgZGVjbGFyZSBwYXJlbnQ/OiBDYXRlZ29yeTtcblxuICBASGFzTWFueSgoKSA9PiBDYXRlZ29yeSwgeyBmb3JlaWduS2V5OiAncGFyZW50SWQnLCBhczogJ2NoaWxkcmVuJyB9KVxuICBkZWNsYXJlIGNoaWxkcmVuPzogQ2F0ZWdvcnlbXTtcbn1cbiIsImltcG9ydCB7IEJlbG9uZ3NUb01hbnksIENvbHVtbiwgTW9kZWwsIFRhYmxlIH0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgUGF5bWVudE1ldGhvZCB9IGZyb20gJy4vcGF5bWVudC1tZXRob2QuZW50aXR5JztcbmltcG9ydCB7IFBheW1lbnRNZXRob2RDb3VudHJ5IH0gZnJvbSAnLi9wYXltZW50LW1ldGhvZC1jb3VudHJ5LmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIENvdW50cnkgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBuYW1lRW46IHN0cmluZztcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgbmFtZUFyOiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIGZsYWdJY29uOiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIGlzb0NvZGU6IHN0cmluZztcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgcGhvbmVFeHQ6IHN0cmluZztcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgY3VycmVuY3k6IHN0cmluZztcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgZXhjaGFuZ2VSYXRlVG9Ld2Q6IG51bWJlcjtcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFBheW1lbnRNZXRob2QsICgpID0+IFBheW1lbnRNZXRob2RDb3VudHJ5KVxuICBkZWNsYXJlIHBheW1lbnRNZXRob2RzOiBQYXltZW50TWV0aG9kW107XG59XG4iLCJpbXBvcnQgeyBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgRm9yZWlnbktleSwgQmVsb25nc1RvIH0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgQ291cG9uIH0gZnJvbSAnLi9jb3Vwb24uZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgQ291cG9uUHJvZHVjdCBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gQ291cG9uKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGNvdXBvbklkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwcm9kdWN0SWQ6IG51bWJlcjtcblxuICAvLyBudWxsID0gYXBwbGllcyB0byBhbGwgdmFyaWFudHMgb2YgdGhpcyBwcm9kdWN0XG4gIC8vIHNldCA9IGFwcGxpZXMgb25seSB0byB0aGlzIHNwZWNpZmljIHZhcmlhbnRcbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcm9kdWN0VmFyaWFudElkPzogbnVtYmVyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ291cG9uKSAgICAgICAgIGRlY2xhcmUgY291cG9uOiBDb3Vwb247XG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdCkgICAgICAgIGRlY2xhcmUgcHJvZHVjdDogUHJvZHVjdDtcbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0VmFyaWFudCkgZGVjbGFyZSB2YXJpYW50PzogUHJvZHVjdFZhcmlhbnQ7XG59XG4iLCJpbXBvcnQgeyBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgRm9yZWlnbktleSwgQmVsb25nc1RvIH0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgQ291cG9uIH0gZnJvbSAnLi9jb3Vwb24uZW50aXR5JztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnLi9zdG9yZS5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBDb3Vwb25TdG9yZSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gQ291cG9uKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGNvdXBvbklkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3RvcmUpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgc3RvcmVJZDogbnVtYmVyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ291cG9uKSBkZWNsYXJlIGNvdXBvbjogQ291cG9uO1xuICBAQmVsb25nc1RvKCgpID0+IFN0b3JlKSAgZGVjbGFyZSBzdG9yZTogU3RvcmU7XG59XG4iLCJpbXBvcnQgeyBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgRm9yZWlnbktleSwgQmVsb25nc1RvIH0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgQ291cG9uIH0gZnJvbSAnLi9jb3Vwb24uZW50aXR5JztcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuL3VzZXIuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgQ291cG9uVXNlciBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gQ291cG9uKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGNvdXBvbklkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB1c2VySWQ6IG51bWJlcjtcblxuICAvLyBIb3cgbWFueSB0aW1lcyB0aGlzIHNwZWNpZmljIHVzZXIgaGFzIHVzZWQgdGhpcyBjb3Vwb25cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHVzZWRDb3VudDogbnVtYmVyO1xuXG4gIC8vIFdoZXRoZXIgdGhpcyBjb3Vwb24gd2FzIHByZS1hc3NpZ25lZCB0byB0aGlzIHVzZXJcbiAgLy8gdHJ1ZSA9IHVzZXItc3BlY2lmaWMgY291cG9uIChpc1VzZXJTcGVjaWZpYz10cnVlIG9uIGNvdXBvbilcbiAgLy8gZmFsc2UgPSBqdXN0IHRyYWNraW5nIHVzYWdlIG9mIGEgcHVibGljIGNvdXBvblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGlzUHJlQXNzaWduZWQ6IGJvb2xlYW47XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBDb3Vwb24pIGRlY2xhcmUgY291cG9uOiBDb3Vwb247XG4gIEBCZWxvbmdzVG8oKCkgPT4gVXNlcikgICBkZWNsYXJlIHVzZXI6IFVzZXI7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgSGFzTWFueSwgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IENvdXBvblN0b3JlIH0gZnJvbSAnLi9jb3Vwb24tc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IENvdXBvblByb2R1Y3QgfSBmcm9tICcuL2NvdXBvbi1wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBDb3Vwb25Vc2VyIH0gZnJvbSAnLi9jb3Vwb24tdXNlci5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBDb3Vwb25EaXNjb3VudFR5cGUge1xuICBGSVhFRCAgICAgID0gJ2ZpeGVkJywgICAgICAvLyBGaXhlZCBhbW91bnQgZGVkdWN0ZWQgZS5nLiBLRCAyLjAwMFxuICBQRVJDRU5UQUdFID0gJ3BlcmNlbnRhZ2UnLCAvLyBQZXJjZW50YWdlIGUuZy4gMTUlIG9mZlxufVxuXG5leHBvcnQgZW51bSBDb3Vwb25BcHBsaWVzVG8ge1xuICBTVUJUT1RBTCAgPSAnc3VidG90YWwnLCAgLy8gQXBwbGllcyB0byBjYXJ0IGl0ZW0gdG90YWxcbiAgREVMSVZFUlkgID0gJ2RlbGl2ZXJ5JywgIC8vIEFwcGxpZXMgdG8gc2hpcHBpbmcgZmVlIG9ubHlcbiAgVkFUICAgICAgID0gJ3ZhdCcsICAgICAgIC8vIFZBVCBmcmVlIChyZW1vdmVzIFZBVCBhbW91bnQpXG59XG5cbmV4cG9ydCBlbnVtIENvdXBvbk9zVGFyZ2V0IHtcbiAgQUxMICAgICA9ICdhbGwnLFxuICBJT1MgICAgID0gJ2lvcycsXG4gIEFORFJPSUQgPSAnYW5kcm9pZCcsXG4gIFdFQiAgICAgPSAnd2ViJyxcbn1cblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgQ291cG9uIGV4dGVuZHMgTW9kZWwge1xuICAvLyDilIDilIAgSWRlbnRpdHkg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCB1bmlxdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBjb2RlOiBzdHJpbmc7IC8vIFRoZSBjb2RlIHRoZSB1c2VyIHR5cGVzIGUuZy4gV0VMQ09NRTIwXG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lRW46IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVBcjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkVuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkFyPzogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgCBWYWxpZGl0eSBwZXJpb2Qg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgc3RhcnRzQXQ6IERhdGU7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRBVEUsIGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBleHBpcmVzQXQ6IERhdGU7XG5cbiAgLy8g4pSA4pSAIERpc2NvdW50IOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoQ291cG9uRGlzY291bnRUeXBlKSksXG4gICAgYWxsb3dOdWxsOiBmYWxzZSxcbiAgICBkZWZhdWx0VmFsdWU6IENvdXBvbkRpc2NvdW50VHlwZS5QRVJDRU5UQUdFLFxuICB9KVxuICBkZWNsYXJlIGRpc2NvdW50VHlwZTogQ291cG9uRGlzY291bnRUeXBlO1xuXG4gIC8vIFRoZSBhbW91bnQgb3IgcGVyY2VudGFnZSB2YWx1ZVxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBkaXNjb3VudFZhbHVlOiBudW1iZXI7XG5cbiAgLy8gTWF4IGRlZHVjdGlvbiBjYXAgKG9ubHkgcmVsZXZhbnQgZm9yIHBlcmNlbnRhZ2UgdHlwZSlcbiAgLy8gZS5nLiAyMCUgb2ZmIGJ1dCBtYXggS0QgNSBkZWR1Y3Rpb25cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBtYXhEaXNjb3VudEFtb3VudD86IG51bWJlcjtcblxuICAvLyDilIDilIAgQXBwbGllcyB0byDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKENvdXBvbkFwcGxpZXNUbykpLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gICAgZGVmYXVsdFZhbHVlOiBDb3Vwb25BcHBsaWVzVG8uU1VCVE9UQUwsXG4gIH0pXG4gIGRlY2xhcmUgYXBwbGllc1RvOiBDb3Vwb25BcHBsaWVzVG87XG5cbiAgLy8g4pSA4pSAIE1pbmltdW0gb3JkZXIgdmFsdWUgcmVxdWlyZWQg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiB0cnVlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBtaW5PcmRlckFtb3VudD86IG51bWJlcjtcblxuICAvLyDilIDilIAgT1MgdGFyZ2V0aW5nIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoQ291cG9uT3NUYXJnZXQpKSxcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICAgIGRlZmF1bHRWYWx1ZTogQ291cG9uT3NUYXJnZXQuQUxMLFxuICB9KVxuICBkZWNsYXJlIG9zVGFyZ2V0OiBDb3Vwb25Pc1RhcmdldDtcblxuICAvLyDilIDilIAgVXNhZ2UgbGltaXRzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICAvLyBudWxsID0gdW5saW1pdGVkIHVzZXMgZ2xvYmFsbHlcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLklOVEVHRVIsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG1heFVzZXNUb3RhbD86IG51bWJlcjtcblxuICAvLyBudWxsID0gdW5saW1pdGVkIHBlciB1c2VyXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5JTlRFR0VSLCBhbGxvd051bGw6IHRydWUsIGRlZmF1bHRWYWx1ZTogMSB9KVxuICBkZWNsYXJlIG1heFVzZXNQZXJVc2VyPzogbnVtYmVyO1xuXG4gIC8vIENvdW50ZXIg4oCUIGluY3JlbWVudGVkIG9uIGVhY2ggc3VjY2Vzc2Z1bCB1c2UgKGNoZWNrZWQgYWdhaW5zdCBtYXhVc2VzVG90YWwpXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5JTlRFR0VSLCBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSB0b3RhbFVzZWQ6IG51bWJlcjtcblxuICAvLyDilIDilIAgU2NvcGUgZmxhZ3Mg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIC8vIFdoZW4gdHJ1ZTogYXBwbGllcyBvbmx5IHRvIHByb2R1Y3RzL3N0b3Jlcy91c2VycyBpbiB0aGUganVuY3Rpb24gdGFibGVzXG4gIC8vIFdoZW4gZmFsc2U6IGFwcGxpZXMgZ2xvYmFsbHkgcmVnYXJkbGVzcyBvZiBqdW5jdGlvbiB0YWJsZSBjb250ZW50c1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGlzU3RvcmVTcGVjaWZpYzogYm9vbGVhbjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGlzUHJvZHVjdFNwZWNpZmljOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaXNVc2VyU3BlY2lmaWM6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogdHJ1ZSB9KVxuICBkZWNsYXJlIGlzQWN0aXZlOiBib29sZWFuO1xuXG4gIC8vIOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEhhc01hbnkoKCkgPT4gQ291cG9uU3RvcmUpXG4gIGRlY2xhcmUgY291cG9uU3RvcmVzOiBDb3Vwb25TdG9yZVtdO1xuXG4gIEBIYXNNYW55KCgpID0+IENvdXBvblByb2R1Y3QpXG4gIGRlY2xhcmUgY291cG9uUHJvZHVjdHM6IENvdXBvblByb2R1Y3RbXTtcblxuICBASGFzTWFueSgoKSA9PiBDb3Vwb25Vc2VyKVxuICBkZWNsYXJlIGNvdXBvblVzZXJzOiBDb3Vwb25Vc2VyW107XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgSW52ZW50b3J5IH0gZnJvbSAnLi9pbnZlbnRvcnkuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgSW52ZW50b3J5U3RvY2sgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IEludmVudG9yeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBpbnZlbnRvcnlJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3QpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdElkOiBudW1iZXI7XG5cbiAgLy8gbnVsbCA9IHByb2R1Y3QgaGFzIG5vIHZhcmlhbnRzXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdFZhcmlhbnRJZD86IG51bWJlcjtcblxuICAvLyBQaHlzaWNhbCBzdG9jayBjdXJyZW50bHkgb24gc2hlbGYgaW4gdGhpcyBpbnZlbnRvcnlcbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHBoeXNpY2FsUXVhbnRpdHk6IG51bWJlcjtcblxuICAvLyBVbml0cyByZXNlcnZlZCBmb3IgcGVuZGluZyBvcmRlcnMgKHdhaXRpbmcgUE8gZnVsZmlsbWVudCBvciBwYWNraW5nKVxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgcmVzZXJ2ZWRRdWFudGl0eTogbnVtYmVyO1xuXG4gIC8vIEF2YWlsYWJsZSA9IHBoeXNpY2FsUXVhbnRpdHkgLSByZXNlcnZlZFF1YW50aXR5IChjb21wdXRlZCBpbiBzZXJ2aWNlIGxheWVyKVxuXG4gIC8vIEZsYWc6IGNhbiB0aGlzIGl0ZW0gYmUgc291cmNlZCBmcm9tIGEgdmVuZG9yIGlmIHBoeXNpY2FsIHN0b2NrIGlzIDA/XG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG4gIGRlY2xhcmUgYXZhaWxhYmxlRnJvbVZlbmRvcjogYm9vbGVhbjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbG93U3RvY2tUaHJlc2hvbGQ/OiBudW1iZXI7XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IEludmVudG9yeSlcbiAgZGVjbGFyZSBpbnZlbnRvcnk6IEludmVudG9yeTtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3QpXG4gIGRlY2xhcmUgcHJvZHVjdDogUHJvZHVjdDtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBkZWNsYXJlIHZhcmlhbnQ/OiBQcm9kdWN0VmFyaWFudDtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBIYXNNYW55LFxuICBCZWxvbmdzVG9NYW55LFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgSW52ZW50b3J5U3RvY2sgfSBmcm9tICcuL2ludmVudG9yeS1zdG9jay5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmVJbnZlbnRvcnkgfSBmcm9tICcuL3N0b3JlLWludmVudG9yeS5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuL3N0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBJbnZlbnRvcnkgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgYWRkcmVzc0VuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBhZGRyZXNzQXI/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvbnRhY3RQaG9uZT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY29udGFjdEVtYWlsPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBASGFzTWFueSgoKSA9PiBJbnZlbnRvcnlTdG9jaylcbiAgZGVjbGFyZSBzdG9ja3M6IEludmVudG9yeVN0b2NrW107XG5cbiAgQEJlbG9uZ3NUb01hbnkoKCkgPT4gU3RvcmUsICgpID0+IFN0b3JlSW52ZW50b3J5KVxuICBkZWNsYXJlIHN0b3JlczogU3RvcmVbXTtcbn1cbiIsImltcG9ydCB7IFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBGb3JlaWduS2V5LCBCZWxvbmdzVG8gfSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBPcmRlckl0ZW0gfSBmcm9tICcuL29yZGVyLWl0ZW0uZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgT3JkZXJJdGVtQnVuZGxlU2VsZWN0aW9uIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBPcmRlckl0ZW0pXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgb3JkZXJJdGVtSWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdFZhcmlhbnRJZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdE5hbWVFbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdE5hbWVBcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgdmFyaWFudExhYmVsRW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHZhcmlhbnRMYWJlbEFyPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IE9yZGVySXRlbSkgIGRlY2xhcmUgb3JkZXJJdGVtOiBPcmRlckl0ZW07XG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdCkgICAgZGVjbGFyZSBwcm9kdWN0OiBQcm9kdWN0O1xuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3RWYXJpYW50KSBkZWNsYXJlIHZhcmlhbnQ/OiBQcm9kdWN0VmFyaWFudDtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIEhhc01hbnksXG4gIEhhc09uZSxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IE9yZGVyIH0gZnJvbSAnLi9vcmRlci5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFZhcmlhbnQgfSBmcm9tICcuL3Byb2R1Y3QtdmFyaWFudC5lbnRpdHknO1xuaW1wb3J0IHsgQnVuZGxlIH0gZnJvbSAnLi9idW5kbGUuZW50aXR5JztcbmltcG9ydCB7IE9yZGVySXRlbUJ1bmRsZVNlbGVjdGlvbiB9IGZyb20gJy4vb3JkZXItaXRlbS1idW5kbGUtc2VsZWN0aW9uLmVudGl0eSc7XG5pbXBvcnQgeyBQdXJjaGFzZU9yZGVyT3JkZXJJdGVtIH0gZnJvbSAnLi9wdXJjaGFzZS1vcmRlci1vcmRlci1pdGVtLmVudGl0eSc7XG5cbmV4cG9ydCBlbnVtIE9yZGVySXRlbVR5cGUge1xuICBQUk9EVUNUID0gJ3Byb2R1Y3QnLFxuICBCVU5ETEUgPSAnYnVuZGxlJyxcbn1cblxuZXhwb3J0IGVudW0gT3JkZXJJdGVtRnVsZmlsbG1lbnRTdGF0dXMge1xuICBQRU5ESU5HID0gJ3BlbmRpbmcnLFxuICBBV0FJVElOR19TVE9DSyA9ICdhd2FpdGluZ19zdG9jaycsIC8vIG5lZWRzIHZlbmRvciBQT1xuICBQT19MSU5LRUQgPSAncG9fbGlua2VkJywgLy8gUE8gY3JlYXRlZCBhbmQgbGlua2VkXG4gIFBPX1JFQ0VJVkVEID0gJ3BvX3JlY2VpdmVkJywgLy8gUE8gcmVjZWl2ZWQgZm9yIHRoaXMgaXRlbVxuICBTVE9DS19SRVNFUlZFRCA9ICdzdG9ja19yZXNlcnZlZCcsIC8vIHBoeXNpY2FsIHN0b2NrIGxvY2tlZCBpbiBpbnZlbnRvcnlcbiAgUEFDS0VEID0gJ3BhY2tlZCcsXG4gIFNISVBQRUQgPSAnc2hpcHBlZCcsXG4gIERFTElWRVJFRCA9ICdkZWxpdmVyZWQnLFxuICBDQU5DRUxMRUQgPSAnY2FuY2VsbGVkJyxcbiAgUkVUVVJOX1JFUVVFU1RFRCA9ICdyZXR1cm5fcmVxdWVzdGVkJyxcbiAgUkVUVVJORUQgPSAncmV0dXJuZWQnLFxufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBPcmRlckl0ZW0gZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IE9yZGVyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG9yZGVySWQ6IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoT3JkZXJJdGVtVHlwZSkpLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gICAgZGVmYXVsdFZhbHVlOiBPcmRlckl0ZW1UeXBlLlBST0RVQ1QsXG4gIH0pXG4gIGRlY2xhcmUgaXRlbVR5cGU6IE9yZGVySXRlbVR5cGU7XG5cbiAgLy8g4pSA4pSAIFByb2R1Y3QgZmllbGRzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdElkPzogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdFZhcmlhbnRJZD86IG51bWJlcjtcblxuICAvLyDilIDilIAgQnVuZGxlIGZpZWxkcyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQEZvcmVpZ25LZXkoKCkgPT4gQnVuZGxlKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgYnVuZGxlSWQ/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvbXBvc2VkU2t1Pzogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgCBTbmFwc2hvdHMgYXQgb3JkZXIgdGltZSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByb2R1Y3ROYW1lRW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByb2R1Y3ROYW1lQXI/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHNrdT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgdmFyaWFudExhYmVsRW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHZhcmlhbnRMYWJlbEFyPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcm9kdWN0SW1hZ2U/OiBzdHJpbmc7XG5cbiAgLy8g4pSA4pSAIFByaWNpbmcg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDEgfSlcbiAgZGVjbGFyZSBxdWFudGl0eTogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHVuaXRQcmljZTogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGxpbmVUb3RhbDogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgCBGdWxmaWxsbWVudCBhc3NpZ25tZW50IOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICAvLyBXaGljaCBpbnZlbnRvcnkgaXMgcmVzcG9uc2libGUgZm9yIHRoaXMgaXRlbVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZnVsZmlsbG1lbnRJbnZlbnRvcnlJZD86IG51bWJlcjtcblxuICAvLyBTaGlwbWVudCBncm91cCDigJQgaXRlbXMgd2l0aCB0aGUgc2FtZSBncm91cCBzaGlwIHRvZ2V0aGVyIGZyb20gdGhlIHNhbWUgaW52ZW50b3J5XG4gIC8vIFVzdWFsbHkgJzEnIGZvciBzaW5nbGUtaW52ZW50b3J5IG9yZGVyczsgJzInIGlmIGEgc2Vjb25kIGludmVudG9yeSBpcyBuZWVkZWRcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMSB9KVxuICBkZWNsYXJlIHNoaXBtZW50R3JvdXA6IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoT3JkZXJJdGVtRnVsZmlsbG1lbnRTdGF0dXMpKSxcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICAgIGRlZmF1bHRWYWx1ZTogT3JkZXJJdGVtRnVsZmlsbG1lbnRTdGF0dXMuUEVORElORyxcbiAgfSlcbiAgZGVjbGFyZSBmdWxmaWxsbWVudFN0YXR1czogT3JkZXJJdGVtRnVsZmlsbG1lbnRTdGF0dXM7XG5cbiAgLy8g4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IE9yZGVyKVxuICBkZWNsYXJlIG9yZGVyOiBPcmRlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3QpXG4gIGRlY2xhcmUgcHJvZHVjdD86IFByb2R1Y3Q7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgZGVjbGFyZSB2YXJpYW50PzogUHJvZHVjdFZhcmlhbnQ7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBCdW5kbGUpXG4gIGRlY2xhcmUgYnVuZGxlPzogQnVuZGxlO1xuXG4gIEBIYXNNYW55KCgpID0+IE9yZGVySXRlbUJ1bmRsZVNlbGVjdGlvbilcbiAgZGVjbGFyZSBidW5kbGVTZWxlY3Rpb25zOiBPcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb25bXTtcblxuICBASGFzT25lKCgpID0+IFB1cmNoYXNlT3JkZXJPcmRlckl0ZW0pXG4gIGRlY2xhcmUgcG9MaW5rPzogUHVyY2hhc2VPcmRlck9yZGVySXRlbTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBGb3JlaWduS2V5LCBCZWxvbmdzVG8sIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBPcmRlciB9IGZyb20gJy4vb3JkZXIuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgT3JkZXJTdGF0dXNIaXN0b3J5IGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBPcmRlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBvcmRlcklkOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGZyb21TdGF0dXM/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB0b1N0YXR1czogc3RyaW5nO1xuXG4gIC8vIEJpbGluZ3VhbCBsYWJlbCBzbmFwc2hvdHMgc28gaGlzdG9yeSBpcyByZWFkYWJsZSBldmVuIGlmIHN0YXR1cyBsYWJlbHMgY2hhbmdlXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSB0b0xhYmVsRW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHRvTGFiZWxBcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbm90ZT86IHN0cmluZztcblxuICAvLyBXaG8gbWFkZSB0aGUgY2hhbmdlOiAnc3lzdGVtJywgJ3VzZXInLCBvciAnYWRtaW46PGlkPidcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNoYW5nZWRCeT86IHN0cmluZztcblxuICBAQmVsb25nc1RvKCgpID0+IE9yZGVyKVxuICBkZWNsYXJlIG9yZGVyOiBPcmRlcjtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBIYXNNYW55LCBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgT3JkZXIgfSBmcm9tICcuL29yZGVyLmVudGl0eSc7XG5cbi8vIEFsbCBwb3NzaWJsZSBvcmRlciBzdGF0dXNlcyBpbiB0aGUgc3lzdGVtXG5leHBvcnQgZW51bSBPcmRlclN0YXR1c0NvZGUge1xuICBQRU5ESU5HX1BBWU1FTlQgICAgICA9ICdwZW5kaW5nX3BheW1lbnQnLFxuICBQQUlEICAgICAgICAgICAgICAgICA9ICdwYWlkJyxcbiAgUFJPQ0VTU0lORyAgICAgICAgICAgPSAncHJvY2Vzc2luZycsXG4gIEFXQUlUSU5HX0ZVTEZJTExNRU5UID0gJ2F3YWl0aW5nX2Z1bGZpbGxtZW50JyxcbiAgUEVORElOR19WRU5ET1IgICAgICAgPSAncGVuZGluZ192ZW5kb3InLFxuICBWRU5ET1JfT1JERVJFRCAgICAgICA9ICd2ZW5kb3Jfb3JkZXJlZCcsXG4gIFNUT0NLX1JFQ0VJVkVEICAgICAgID0gJ3N0b2NrX3JlY2VpdmVkJyxcbiAgUEFDS0VEICAgICAgICAgICAgICAgPSAncGFja2VkJyxcbiAgU0hJUFBFRCAgICAgICAgICAgICAgPSAnc2hpcHBlZCcsXG4gIE9VVF9GT1JfREVMSVZFUlkgICAgID0gJ291dF9mb3JfZGVsaXZlcnknLFxuICBERUxJVkVSRUQgICAgICAgICAgICA9ICdkZWxpdmVyZWQnLFxuICBDT01QTEVURUQgICAgICAgICAgICA9ICdjb21wbGV0ZWQnLFxuICBDQU5DRUxMRUQgICAgICAgICAgICA9ICdjYW5jZWxsZWQnLFxuICBSRVRVUk5fUkVRVUVTVEVEICAgICA9ICdyZXR1cm5fcmVxdWVzdGVkJyxcbiAgUkVUVVJOX0FQUFJPVkVEICAgICAgPSAncmV0dXJuX2FwcHJvdmVkJyxcbiAgUkVUVVJORUQgICAgICAgICAgICAgPSAncmV0dXJuZWQnLFxuICBSRUZVTkRFRCAgICAgICAgICAgICA9ICdyZWZ1bmRlZCcsXG4gIEZBSUxFRCAgICAgICAgICAgICAgID0gJ2ZhaWxlZCcsXG59XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIE9yZGVyU3RhdHVzIGV4dGVuZHMgTW9kZWwge1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdW5pcXVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgY29kZTogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbGFiZWxFbjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbGFiZWxBcjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkVuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkFyPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjb2xvcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgaWNvbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbmV4dFN0YXR1c2VzPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcmV2U3RhdHVzZXM/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc1Rlcm1pbmFsOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBpc1Zpc2libGVUb1VzZXI6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHNvcnRPcmRlcjogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEhhc01hbnkoKCkgPT4gT3JkZXIsIHsgZm9yZWlnbktleTogJ3N0YXR1c0lkJyB9KVxuICBkZWNsYXJlIG9yZGVyczogT3JkZXJbXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBGb3JlaWduS2V5LCBCZWxvbmdzVG8sXG4gIEhhc01hbnksIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi91c2VyLmVudGl0eSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4vc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IENvdW50cnkgfSBmcm9tICcuL2NvdW50cnkuZW50aXR5JztcbmltcG9ydCB7IE9yZGVyU3RhdHVzIH0gZnJvbSAnLi9vcmRlci1zdGF0dXMuZW50aXR5JztcbmltcG9ydCB7IE9yZGVySXRlbSB9IGZyb20gJy4vb3JkZXItaXRlbS5lbnRpdHknO1xuaW1wb3J0IHsgT3JkZXJTdGF0dXNIaXN0b3J5IH0gZnJvbSAnLi9vcmRlci1zdGF0dXMtaGlzdG9yeS5lbnRpdHknO1xuaW1wb3J0IHsgVXNlclRyYW5zYWN0aW9uIH0gZnJvbSAnLi91c2VyLXRyYW5zYWN0aW9uLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIE9yZGVyIGV4dGVuZHMgTW9kZWwge1xuICAvLyDilIDilIAgSWRlbnRpdHkg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCB1bmlxdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBvcmRlck51bWJlcjogc3RyaW5nOyAvLyBlLmcuIFRBVC0yMDI2LTAwMDAxXG5cbiAgLy8gTnVsbCBmb3IgZ3Vlc3Qgb3JkZXJzIOKAlCBsaW5rZWQgb24gYWNjb3VudCBjcmVhdGlvblxuICBARm9yZWlnbktleSgoKSA9PiBVc2VyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgdXNlcklkPzogbnVtYmVyO1xuXG4gIC8vIEd1ZXN0IHRva2VuIGZvciBndWVzdCBvcmRlcnNcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGd1ZXN0VG9rZW4/OiBzdHJpbmc7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3RvcmUpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgc3RvcmVJZDogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgCBTdGF0dXMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIC8vIFByb3BlciBGSyB0byBvcmRlcl9zdGF0dXNlcyBzbyB3ZSBjYW4gZWFnZXIgbG9hZCB3aXRoIGluY2x1ZGU6IFtPcmRlclN0YXR1c11cbiAgQEZvcmVpZ25LZXkoKCkgPT4gT3JkZXJTdGF0dXMpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgc3RhdHVzSWQ6IG51bWJlcjtcblxuICAvLyBLZWVwIHN0YXR1c0NvZGUgYXMgYSBjb252ZW5pZW5jZSBjb2x1bW4g4oCUIHN5bmNlZCB3aXRoIHN0YXR1c0lkIGF0IGFsbCB0aW1lc1xuICAvLyBBbGxvd3MgZmlsdGVyaW5nIGJ5IGNvZGUgc3RyaW5nIHdpdGhvdXQgYSBqb2luOiB3aGVyZSh7IHN0YXR1c0NvZGU6ICdzaGlwcGVkJyB9KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAncGVuZGluZ19wYXltZW50JyB9KVxuICBkZWNsYXJlIHN0YXR1c0NvZGU6IHN0cmluZztcblxuICAvLyDilIDilIAgRGVsaXZlcnkgYWRkcmVzcyAoc25hcHNob3QgYXQgb3JkZXIgdGltZSkg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBGb3JlaWduS2V5KCgpID0+IENvdW50cnkpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZWxpdmVyeUNvdW50cnlJZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlGdWxsTmFtZT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlQaG9uZUV4dD86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlQaG9uZT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlDaXR5Pzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZWxpdmVyeUJsb2NrPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZWxpdmVyeVN0cmVldD86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlCdWlsZGluZz86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlGbG9vcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlBcGFydG1lbnQ/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5QWRkaXRpb25hbEluZm8/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoOSwgNiksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5TGF0aXR1ZGU/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoOSwgNiksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5TG9uZ2l0dWRlPzogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgCBGaW5hbmNpYWxzIChhbGwgaW4gc3RvcmUgY3VycmVuY3kpIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHN1YnRvdGFsOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzaGlwcGluZ0ZlZTogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgdmF0QW1vdW50OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBkaXNjb3VudEFtb3VudDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgdG90YWw6IG51bWJlcjtcblxuICAvLyBDdXJyZW5jeSBzbmFwc2hvdFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGN1cnJlbmN5OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGN1cnJlbmN5U3ltYm9sRW4/OiBzdHJpbmc7XG5cbiAgLy8g4pSA4pSAIENvdXBvbiDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvdXBvbkNvZGU/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvdXBvbklkPzogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgCBQYXltZW50IOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcGF5bWVudE1ldGhvZFNsdWc/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHBheW1lbnRTdGF0dXM/OiBzdHJpbmc7IC8vIHBlbmRpbmcgfCBwYWlkIHwgZmFpbGVkIHwgcmVmdW5kZWRcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcGF5bWVudFJlZmVyZW5jZT86IHN0cmluZzsgLy8gR2F0ZXdheSB0cmFuc2FjdGlvbiBJRFxuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwYWlkQXQ/OiBEYXRlO1xuXG4gIC8vIOKUgOKUgCBTaGlwcGluZyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNhcnJpZXJOYW1lPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSB0cmFja2luZ051bWJlcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgdHJhY2tpbmdVcmw/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRBVEUsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGVzdGltYXRlZERlbGl2ZXJ5RGF0ZT86IERhdGU7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRBVEUsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHNoaXBwZWRBdD86IERhdGU7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRBVEUsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJlZEF0PzogRGF0ZTtcblxuICAvLyDilIDilIAgTm90ZXMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjdXN0b21lck5vdGVzPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBpbnRlcm5hbE5vdGVzPzogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBVc2VyKVxuICBkZWNsYXJlIHVzZXI/OiBVc2VyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gU3RvcmUpXG4gIGRlY2xhcmUgc3RvcmU6IFN0b3JlO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gT3JkZXJTdGF0dXMsIHsgZm9yZWlnbktleTogJ3N0YXR1c0lkJyB9KVxuICBkZWNsYXJlIHN0YXR1czogT3JkZXJTdGF0dXM7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBDb3VudHJ5KVxuICBkZWNsYXJlIGRlbGl2ZXJ5Q291bnRyeT86IENvdW50cnk7XG5cbiAgQEhhc01hbnkoKCkgPT4gT3JkZXJJdGVtKVxuICBkZWNsYXJlIGl0ZW1zOiBPcmRlckl0ZW1bXTtcblxuICBASGFzTWFueSgoKSA9PiBPcmRlclN0YXR1c0hpc3RvcnkpXG4gIGRlY2xhcmUgc3RhdHVzSGlzdG9yeTogT3JkZXJTdGF0dXNIaXN0b3J5W107XG5cbiAgQEhhc01hbnkoKCkgPT4gVXNlclRyYW5zYWN0aW9uKVxuICBkZWNsYXJlIHRyYW5zYWN0aW9uczogVXNlclRyYW5zYWN0aW9uW107XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgSGFzTWFueSwgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFBheW1lbnRNZXRob2QgfSBmcm9tICcuL3BheW1lbnQtbWV0aG9kLmVudGl0eSc7XG5cbmV4cG9ydCBlbnVtIFBheW1lbnRHYXRld2F5VHlwZSB7XG4gIEJOUEwgICAgICAgID0gJ2JucGwnLCAgICAgICAgLy8gQnV5IE5vdyBQYXkgTGF0ZXIg4oCUIFRhYmJ5LCBUYW1hcmEsIFRhbHksIERlZW1hXG4gIENBUkQgICAgICAgID0gJ2NhcmQnLCAgICAgICAgLy8gVmlzYS9NYXN0ZXJjYXJkIOKAlCB1UGF5bWVudFxuICBLTkVUICAgICAgICA9ICdrbmV0JywgICAgICAgIC8vIEstTmV0IOKAlCBLRkhcbiAgV0FMTEVUICAgICAgPSAnd2FsbGV0JywgICAgICAvLyBBcHBsZSBQYXksIEdvb2dsZSBQYXlcbiAgQkFOSyAgICAgICAgPSAnYmFuaycsICAgICAgICAvLyBCYW5rIHRyYW5zZmVyXG59XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFBheW1lbnRHYXRld2F5IGV4dGVuZHMgTW9kZWwge1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdW5pcXVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2x1Zzogc3RyaW5nOyAvLyBlLmcuICd0YWJieScsICd0YW1hcmEnLCAndXBheW1lbnQnLCAna2ZoJ1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoUGF5bWVudEdhdGV3YXlUeXBlKSksXG4gICAgYWxsb3dOdWxsOiBmYWxzZSxcbiAgfSlcbiAgZGVjbGFyZSB0eXBlOiBQYXltZW50R2F0ZXdheVR5cGU7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGxvZ28/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHdlYnNpdGU/OiBzdHJpbmc7XG5cbiAgLy8gQ3JlZGVudGlhbHMgc3RvcmVkIGFzIEpTT04g4oCUIG1hbmFnZWQgYnkgYWRtaW4gb25seSwgbmV2ZXIgZXhwb3NlZCB0byB1c2Vyc1xuICAvLyBlLmcuIHsgXCJwdWJsaWNLZXlcIjogXCIuLi5cIiwgXCJzZWNyZXRLZXlcIjogXCIuLi5cIiwgXCJtZXJjaGFudElkXCI6IFwiLi4uXCIgfVxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuSlNPTiwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY3JlZGVudGlhbHM/OiBvYmplY3Q7XG5cbiAgLy8gU2FuZGJveC9Qcm9kdWN0aW9uIG1vZGVcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc1NhbmRib3g6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHNvcnRPcmRlcjogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBpc0FjdGl2ZTogYm9vbGVhbjtcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBIYXNNYW55KCgpID0+IFBheW1lbnRNZXRob2QpXG4gIGRlY2xhcmUgbWV0aG9kczogUGF5bWVudE1ldGhvZFtdO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsIENvbHVtbiwgTW9kZWwsIEZvcmVpZ25LZXksXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFBheW1lbnRNZXRob2QgfSBmcm9tICcuL3BheW1lbnQtbWV0aG9kLmVudGl0eSc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFBheW1lbnRNZXRob2RDb3VudHJ5IGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQYXltZW50TWV0aG9kKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHBheW1lbnRNZXRob2RJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IENvdW50cnkpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgY291bnRyeUlkOiBudW1iZXI7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgRm9yZWlnbktleSwgQmVsb25nc1RvLFxuICBCZWxvbmdzVG9NYW55LCBIYXNNYW55LCBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgUGF5bWVudEdhdGV3YXkgfSBmcm9tICcuL3BheW1lbnQtZ2F0ZXdheS5lbnRpdHknO1xuaW1wb3J0IHsgQ291bnRyeSB9IGZyb20gJy4vY291bnRyeS5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuL3N0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kQ291bnRyeSB9IGZyb20gJy4vcGF5bWVudC1tZXRob2QtY291bnRyeS5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmVQYXltZW50TWV0aG9kIH0gZnJvbSAnLi9zdG9yZS1wYXltZW50LW1ldGhvZC5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBQYXltZW50TWV0aG9kVHlwZSB7XG4gIFBBWV9MQVRFUiAgICAgICA9ICdwYXlfbGF0ZXInLCAgICAgICAgLy8gVGFiYnkgUGF5IExhdGVyLCBUYW1hcmFcbiAgSU5TVEFMTE1FTlQgICAgID0gJ2luc3RhbGxtZW50JywgICAgICAvLyBUYWJieSBJbnN0YWxsbWVudHMsIERlZW1hXG4gIENSRURJVF9DQVJEICAgICA9ICdjcmVkaXRfY2FyZCcsICAgICAgLy8gVmlzYSwgTWFzdGVyY2FyZFxuICBERUJJVF9DQVJEICAgICAgPSAnZGViaXRfY2FyZCcsICAgICAgIC8vIERlYml0IGNhcmRzXG4gIEtORVQgICAgICAgICAgICA9ICdrbmV0JywgICAgICAgICAgICAgLy8gSy1OZXRcbiAgQVBQTEVfUEFZICAgICAgID0gJ2FwcGxlX3BheScsXG4gIEdPT0dMRV9QQVkgICAgICA9ICdnb29nbGVfcGF5JyxcbiAgQkFOS19UUkFOU0ZFUiAgID0gJ2JhbmtfdHJhbnNmZXInLFxufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBQYXltZW50TWV0aG9kIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQYXltZW50R2F0ZXdheSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwYXltZW50R2F0ZXdheUlkOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIHVuaXF1ZTogdHJ1ZSB9KVxuICBkZWNsYXJlIHNsdWc6IHN0cmluZzsgLy8gZS5nLiAndGFiYnlfcGF5X2xhdGVyJywgJ2tuZXQnLCAndmlzYSdcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVFbjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUFyOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlc2NyaXB0aW9uRW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlc2NyaXB0aW9uQXI/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFBheW1lbnRNZXRob2RUeXBlKSksXG4gICAgYWxsb3dOdWxsOiBmYWxzZSxcbiAgfSlcbiAgZGVjbGFyZSB0eXBlOiBQYXltZW50TWV0aG9kVHlwZTtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbG9nbz86IHN0cmluZztcblxuICAvLyBQcm9jZXNzaW5nIGZlZSBwZXJjZW50YWdlIGUuZy4gMS41IG1lYW5zIDEuNSVcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoNSwgMiksIGFsbG93TnVsbDogdHJ1ZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgZmVlUGVyY2VudGFnZT86IG51bWJlcjtcblxuICAvLyBGaXhlZCBmZWUgZS5nLiAwLjEwMCBLV0RcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IHRydWUsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIGZlZUZpeGVkPzogbnVtYmVyO1xuXG4gIC8vIE1pbmltdW0gb3JkZXIgYW1vdW50IHRvIHVzZSB0aGlzIG1ldGhvZFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG1pbk9yZGVyQW1vdW50PzogbnVtYmVyO1xuXG4gIC8vIE1heGltdW0gb3JkZXIgYW1vdW50IHRvIHVzZSB0aGlzIG1ldGhvZFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG1heE9yZGVyQW1vdW50PzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgaXNBY3RpdmU6IGJvb2xlYW47XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IFBheW1lbnRHYXRld2F5KVxuICBkZWNsYXJlIGdhdGV3YXk6IFBheW1lbnRHYXRld2F5O1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IENvdW50cnksICgpID0+IFBheW1lbnRNZXRob2RDb3VudHJ5KVxuICBkZWNsYXJlIGNvdW50cmllczogQ291bnRyeVtdO1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFN0b3JlLCAoKSA9PiBTdG9yZVBheW1lbnRNZXRob2QpXG4gIGRlY2xhcmUgc3RvcmVzOiBTdG9yZVtdO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEJlbG9uZ3NUb01hbnksXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFN5c1JvbGUgfSBmcm9tICcuL3N5cy5yb2xlLmVudGl0eSc7XG5pbXBvcnQgeyBSb2xlUGVybWlzc2lvbiB9IGZyb20gJy4vcm9sZS1wZXJtaXNzaW9uLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFBlcm1pc3Npb24gZXh0ZW5kcyBNb2RlbCB7XG4gIC8vIGUuZy4gJ3Byb2R1Y3RzLnZpZXcnLCAncHJvZHVjdHMuY3JlYXRlJywgJ2ludmVudG9yeS5hZGp1c3QnXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCB1bmlxdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBuYW1lOiBzdHJpbmc7XG5cbiAgLy8gSHVtYW4gcmVhZGFibGUgZS5nLiAnVmlldyBQcm9kdWN0cydcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBkaXNwbGF5TmFtZTogc3RyaW5nO1xuXG4gIC8vIEdyb3VwaW5nIGZvciBVSSBlLmcuICdQcm9kdWN0cycsICdJbnZlbnRvcnknLCAnUHVyY2hhc2luZydcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBncm91cDogc3RyaW5nO1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFN5c1JvbGUsICgpID0+IFJvbGVQZXJtaXNzaW9uKVxuICBkZWNsYXJlIHJvbGVzOiBTeXNSb2xlW107XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vcHJvZHVjdC5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBNZWRpYVR5cGUge1xuICBJTUFHRSA9ICdpbWFnZScsXG4gIFZJREVPID0gJ3ZpZGVvJyxcbn1cblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUHJvZHVjdE1lZGlhIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdXJsOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKE1lZGlhVHlwZSkpLFxuICAgIGRlZmF1bHRWYWx1ZTogTWVkaWFUeXBlLklNQUdFLFxuICB9KVxuICBkZWNsYXJlIHR5cGU6IE1lZGlhVHlwZTtcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGlzRGVmYXVsdDogYm9vbGVhbjtcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgc29ydE9yZGVyOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGFsdEVuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBhbHRBcj86IHN0cmluZztcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3QpXG4gIGRlY2xhcmUgcHJvZHVjdDogUHJvZHVjdDtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuL3N0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBQcm9kdWN0U3RvcmUgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3QpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdElkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3RvcmUpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgc3RvcmVJZDogbnVtYmVyO1xuXG4gIC8vIFN0b3JlLXNwZWNpZmljIHJlZ3VsYXIgcHJpY2Ug4oCUIG51bGwgbWVhbnMgdXNlIHByb2R1Y3QuZGVmYXVsdFByaWNlXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJpY2U/OiBudW1iZXI7XG5cbiAgLy8gU2FsZSBwcmljZSDigJQgb25seSBhY3RpdmUgd2hlbiB0b2RheSBpcyBiZXR3ZWVuIHNhbGVTdGFydERhdGUgYW5kIHNhbGVFbmREYXRlXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2FsZVByaWNlPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBzYWxlU3RhcnREYXRlPzogRGF0ZTtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREFURSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2FsZUVuZERhdGU/OiBEYXRlO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgVGFnIH0gZnJvbSAnLi90YWcuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUHJvZHVjdFRhZyBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwcm9kdWN0SWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBUYWcpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdGFnSWQ6IG51bWJlcjtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQcm9kdWN0VmFyaWFudCB9IGZyb20gJy4vcHJvZHVjdC12YXJpYW50LmVudGl0eSc7XG5pbXBvcnQgeyBWYXJpYW50T3B0aW9uIH0gZnJvbSAnLi92YXJpYW50LW9wdGlvbi5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBQcm9kdWN0VmFyaWFudE9wdGlvbiBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdFZhcmlhbnRJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFZhcmlhbnRPcHRpb24pXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdmFyaWFudE9wdGlvbklkOiBudW1iZXI7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBCZWxvbmdzVG9NYW55LFxuICBIYXNNYW55LFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgVmFyaWFudE9wdGlvbiB9IGZyb20gJy4vdmFyaWFudC1vcHRpb24uZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50T3B0aW9uIH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQtb3B0aW9uLmVudGl0eSc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBQcm9kdWN0VmFyaWFudCBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwcm9kdWN0SWQ6IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2t1Pzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBiYXJjb2RlPzogc3RyaW5nO1xuXG4gIC8vIE92ZXJyaWRlIGRlZmF1bHQgcHJvZHVjdCBwcmljZSBwZXIgdmFyaWFudCBpZiBuZWVkZWRcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcmljZU92ZXJyaWRlPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBpbWFnZT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgc29ydE9yZGVyOiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdClcbiAgZGVjbGFyZSBwcm9kdWN0OiBQcm9kdWN0O1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFZhcmlhbnRPcHRpb24sICgpID0+IFByb2R1Y3RWYXJpYW50T3B0aW9uKVxuICBkZWNsYXJlIG9wdGlvbnM6IFZhcmlhbnRPcHRpb25bXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIEhhc01hbnksXG4gIEJlbG9uZ3NUb01hbnksXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBCcmFuZCB9IGZyb20gJy4vYnJhbmQuZW50aXR5JztcbmltcG9ydCB7IENhdGVnb3J5IH0gZnJvbSAnLi9jYXRlZ29yeS5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdE1lZGlhIH0gZnJvbSAnLi9wcm9kdWN0LW1lZGlhLmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0VmFyaWFudCB9IGZyb20gJy4vcHJvZHVjdC12YXJpYW50LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0U3RvcmUgfSBmcm9tICcuL3Byb2R1Y3Qtc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RUYWcgfSBmcm9tICcuL3Byb2R1Y3QtdGFnLmVudGl0eSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4vc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IFRhZyB9IGZyb20gJy4vdGFnLmVudGl0eSc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuaW1wb3J0IHsgVXNlckZhdm9yaXRlIH0gZnJvbSAnLi91c2VyLWZhdm9yaXRlLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFByb2R1Y3QgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Fbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Bcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2t1Pzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBiYXJjb2RlPzogc3RyaW5nO1xuXG4gIC8vIERlZmF1bHQgcHJpY2UgdXNlZCB3aGVuIG5vIHN0b3JlLXNwZWNpZmljIHByaWNlIGlzIHNldFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIGRlZmF1bHRQcmljZTogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IEJyYW5kKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgYnJhbmRJZD86IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBDYXRlZ29yeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNhdGVnb3J5SWQ/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHNvcnRPcmRlcjogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaXNGZWF0dXJlZDogYm9vbGVhbjtcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGhhc1ZhcmlhbnRzOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IEJyYW5kKVxuICBkZWNsYXJlIGJyYW5kOiBCcmFuZDtcblxuICBAQmVsb25nc1RvKCgpID0+IENhdGVnb3J5KVxuICBkZWNsYXJlIGNhdGVnb3J5OiBDYXRlZ29yeTtcblxuICBASGFzTWFueSgoKSA9PiBQcm9kdWN0TWVkaWEpXG4gIGRlY2xhcmUgbWVkaWE6IFByb2R1Y3RNZWRpYVtdO1xuXG4gIEBIYXNNYW55KCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBkZWNsYXJlIHZhcmlhbnRzOiBQcm9kdWN0VmFyaWFudFtdO1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFN0b3JlLCAoKSA9PiBQcm9kdWN0U3RvcmUpXG4gIGRlY2xhcmUgc3RvcmVzOiBTdG9yZVtdO1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFRhZywgKCkgPT4gUHJvZHVjdFRhZylcbiAgZGVjbGFyZSB0YWdzOiBUYWdbXTtcblxuICBASGFzTWFueSgoKSA9PiBVc2VyRmF2b3JpdGUpXG4gIGRlY2xhcmUgdXNlckZhdm9yaXRlczogVXNlckZhdm9yaXRlW107XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgUHVyY2hhc2VPcmRlciB9IGZyb20gJy4vcHVyY2hhc2Utb3JkZXIuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcblxuZXhwb3J0IGVudW0gUHVyY2hhc2VPcmRlckl0ZW1TdGF0dXMge1xuICBQRU5ESU5HID0gJ3BlbmRpbmcnLFxuICBQQVJUSUFMTFlfUkVDRUlWRUQgPSAncGFydGlhbGx5X3JlY2VpdmVkJyxcbiAgRlVMTFlfUkVDRUlWRUQgPSAnZnVsbHlfcmVjZWl2ZWQnLFxuICBDQU5DRUxMRUQgPSAnY2FuY2VsbGVkJyxcbn1cblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUHVyY2hhc2VPcmRlckl0ZW0gZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFB1cmNoYXNlT3JkZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHVyY2hhc2VPcmRlcklkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwcm9kdWN0SWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RWYXJpYW50SWQ/OiBudW1iZXI7XG5cbiAgLy8gSG93IG1hbnkgdW5pdHMgd2VyZSBvcmRlcmVkIGZyb20gdmVuZG9yXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgb3JkZXJlZFF1YW50aXR5OiBudW1iZXI7XG5cbiAgLy8gSG93IG1hbnkgdW5pdHMgaGF2ZSBiZWVuIHJlY2VpdmVkIHNvIGZhciAodXBkYXRlZCBvbiBlYWNoIHJlY2VpcHQpXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSByZWNlaXZlZFF1YW50aXR5OiBudW1iZXI7XG5cbiAgLy8gSG93IG1hbnkgb2YgdGhlc2UgYXJlIHJlc2VydmVkIGZvciBhIHNwZWNpZmljIGN1c3RvbWVyIG9yZGVyXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSByZXNlcnZlZFF1YW50aXR5OiBudW1iZXI7XG5cbiAgLy8gVmVuZG9yJ3MgY29zdCBwcmljZSBwZXIgdW5pdCBhdCB0aW1lIG9mIFBPXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHVuaXRDb3N0UHJpY2U6IG51bWJlcjtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHRvdGFsQ29zdFByaWNlOiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFB1cmNoYXNlT3JkZXJJdGVtU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBQdXJjaGFzZU9yZGVySXRlbVN0YXR1cy5QRU5ESU5HLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogUHVyY2hhc2VPcmRlckl0ZW1TdGF0dXM7XG5cbiAgLy8gUmVmZXJlbmNlIHRvIHRoZSBjdXN0b21lciBvcmRlciB0aGF0IHRyaWdnZXJlZCB0aGlzIFBPIGl0ZW0gKG51bGxhYmxlID0gcHJvYWN0aXZlIHN0b2NrIHJlcGxlbmlzaG1lbnQpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSB0cmlnZ2VyT3JkZXJJZD86IG51bWJlcjtcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gUHVyY2hhc2VPcmRlcilcbiAgZGVjbGFyZSBwdXJjaGFzZU9yZGVyOiBQdXJjaGFzZU9yZGVyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdClcbiAgZGVjbGFyZSBwcm9kdWN0OiBQcm9kdWN0O1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIGRlY2xhcmUgdmFyaWFudD86IFByb2R1Y3RWYXJpYW50O1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsIENvbHVtbiwgTW9kZWwsIEZvcmVpZ25LZXksIEJlbG9uZ3NUbywgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFB1cmNoYXNlT3JkZXIgfSBmcm9tICcuL3B1cmNoYXNlLW9yZGVyLmVudGl0eSc7XG5pbXBvcnQgeyBQdXJjaGFzZU9yZGVySXRlbSB9IGZyb20gJy4vcHVyY2hhc2Utb3JkZXItaXRlbS5lbnRpdHknO1xuaW1wb3J0IHsgT3JkZXJJdGVtIH0gZnJvbSAnLi9vcmRlci1pdGVtLmVudGl0eSc7XG5pbXBvcnQgeyBPcmRlciB9IGZyb20gJy4vb3JkZXIuZW50aXR5JztcblxuLy8gSnVuY3Rpb24gdGFibGU6IGxpbmtzIGEgUE8gaXRlbSB0byB0aGUgb3JkZXIgaXRlbShzKSBpdCB3aWxsIGZ1bGZpbGxcbi8vIE9uZSBQTyBpdGVtIGNhbiBjb3ZlciBpdGVtcyBmcm9tIG11bHRpcGxlIG9yZGVyc1xuLy8gT25lIG9yZGVyIGl0ZW0gaXMgbGlua2VkIHRvIGV4YWN0bHkgb25lIFBPIGl0ZW1cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFB1cmNoYXNlT3JkZXJPcmRlckl0ZW0gZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFB1cmNoYXNlT3JkZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHVyY2hhc2VPcmRlcklkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHVyY2hhc2VPcmRlckl0ZW0pXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHVyY2hhc2VPcmRlckl0ZW1JZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IE9yZGVyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG9yZGVySWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBPcmRlckl0ZW0pXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgb3JkZXJJdGVtSWQ6IG51bWJlcjtcblxuICAvLyBIb3cgbWFueSB1bml0cyBvZiB0aGlzIFBPIGl0ZW0gYXJlIGFsbG9jYXRlZCB0byB0aGlzIG9yZGVyIGl0ZW1cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMSB9KVxuICBkZWNsYXJlIGFsbG9jYXRlZFF1YW50aXR5OiBudW1iZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQdXJjaGFzZU9yZGVyKSAgICAgZGVjbGFyZSBwdXJjaGFzZU9yZGVyOiBQdXJjaGFzZU9yZGVyO1xuICBAQmVsb25nc1RvKCgpID0+IFB1cmNoYXNlT3JkZXJJdGVtKSBkZWNsYXJlIHB1cmNoYXNlT3JkZXJJdGVtOiBQdXJjaGFzZU9yZGVySXRlbTtcbiAgQEJlbG9uZ3NUbygoKSA9PiBPcmRlcikgICAgICAgICAgICAgZGVjbGFyZSBvcmRlcjogT3JkZXI7XG4gIEBCZWxvbmdzVG8oKCkgPT4gT3JkZXJJdGVtKSAgICAgICAgIGRlY2xhcmUgb3JkZXJJdGVtOiBPcmRlckl0ZW07XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBIYXNNYW55LFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgVmVuZG9yIH0gZnJvbSAnLi92ZW5kb3IuZW50aXR5JztcbmltcG9ydCB7IEludmVudG9yeSB9IGZyb20gJy4vaW52ZW50b3J5LmVudGl0eSc7XG5pbXBvcnQgeyBTeXNVc2VyIH0gZnJvbSAnLi9zeXMudXNlci5lbnRpdHknO1xuaW1wb3J0IHsgUHVyY2hhc2VPcmRlckl0ZW0gfSBmcm9tICcuL3B1cmNoYXNlLW9yZGVyLWl0ZW0uZW50aXR5JztcbmltcG9ydCB7IFB1cmNoYXNlT3JkZXJTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9wdXJjaGFzZU9yZGVyU3RhdHVzJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUHVyY2hhc2VPcmRlciBleHRlbmRzIE1vZGVsIHtcbiAgLy8gQXV0by1nZW5lcmF0ZWQgUE8gbnVtYmVyIGUuZy4gUE8tMjAyNi0wMDAwMVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdW5pcXVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgcG9OdW1iZXI6IHN0cmluZztcblxuICBARm9yZWlnbktleSgoKSA9PiBWZW5kb3IpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdmVuZG9ySWQ6IG51bWJlcjtcblxuICAvLyBUYXJnZXQgaW52ZW50b3J5IHdoZXJlIHJlY2VpdmVkIHN0b2NrIHdpbGwgYmUgc3RvcmVkXG4gIEBGb3JlaWduS2V5KCgpID0+IEludmVudG9yeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBpbnZlbnRvcnlJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhQdXJjaGFzZU9yZGVyU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBQdXJjaGFzZU9yZGVyU3RhdHVzLkRSQUZULFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogUHVyY2hhc2VPcmRlclN0YXR1cztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHRvdGFsQW1vdW50OiBudW1iZXI7XG5cbiAgLy8gQ3VycmVuY3kgb2YgdGhlIFBPICh2ZW5kb3IncyBjdXJyZW5jeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogJ1VTRCcgfSlcbiAgZGVjbGFyZSBjdXJyZW5jeTogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBleHBlY3RlZERlbGl2ZXJ5RGF0ZT86IERhdGU7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHNlbnRBdD86IERhdGU7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNsb3NlZEF0PzogRGF0ZTtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY2FuY2VsbGVkQXQ/OiBEYXRlO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjYW5jZWxsYXRpb25SZWFzb24/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG5vdGVzPzogc3RyaW5nO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFN5c1VzZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjcmVhdGVkQnk/OiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3lzVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHNlbnRCeT86IG51bWJlcjtcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gVmVuZG9yKVxuICBkZWNsYXJlIHZlbmRvcjogVmVuZG9yO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gSW52ZW50b3J5KVxuICBkZWNsYXJlIGludmVudG9yeTogSW52ZW50b3J5O1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gU3lzVXNlciwgeyBmb3JlaWduS2V5OiAnY3JlYXRlZEJ5JywgYXM6ICdjcmVhdG9yJyB9KVxuICBkZWNsYXJlIGNyZWF0b3I/OiBTeXNVc2VyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gU3lzVXNlciwgeyBmb3JlaWduS2V5OiAnc2VudEJ5JywgYXM6ICdzZW5kZXInIH0pXG4gIGRlY2xhcmUgc2VuZGVyPzogU3lzVXNlcjtcblxuICBASGFzTWFueSgoKSA9PiBQdXJjaGFzZU9yZGVySXRlbSlcbiAgZGVjbGFyZSBpdGVtczogUHVyY2hhc2VPcmRlckl0ZW1bXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBTeXNSb2xlIH0gZnJvbSAnLi9zeXMucm9sZS5lbnRpdHknO1xuaW1wb3J0IHsgUGVybWlzc2lvbiB9IGZyb20gJy4vcGVybWlzc2lvbi5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBSb2xlUGVybWlzc2lvbiBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3lzUm9sZSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBzeXNSb2xlSWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQZXJtaXNzaW9uKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHBlcm1pc3Npb25JZDogbnVtYmVyO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IEludmVudG9yeSB9IGZyb20gJy4vaW52ZW50b3J5LmVudGl0eSc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4vc3RvcmUuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgU2hpcHBpbmdSdWxlIGV4dGVuZHMgTW9kZWwge1xuICAvLyBGcm9tIHdoaWNoIGludmVudG9yeVxuICBARm9yZWlnbktleSgoKSA9PiBJbnZlbnRvcnkpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaW52ZW50b3J5SWQ6IG51bWJlcjtcblxuICAvLyBUbyB3aGljaCBjb3VudHJ5XG4gIEBGb3JlaWduS2V5KCgpID0+IENvdW50cnkpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgY291bnRyeUlkOiBudW1iZXI7XG5cbiAgLy8gT3B0aW9uYWw6IG92ZXJyaWRlIGZvciBhIHNwZWNpZmljIHN0b3JlXG4gIC8vIG51bGwgPSBhcHBsaWVzIHRvIGFsbCBzdG9yZXMgc2hpcHBpbmcgZnJvbSB0aGlzIGludmVudG9yeSB0byB0aGlzIGNvdW50cnlcbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3RvcmUpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBzdG9yZUlkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDEgfSlcbiAgZGVjbGFyZSBtaW5EYXlzOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMyB9KVxuICBkZWNsYXJlIG1heERheXM6IG51bWJlcjtcblxuICAvLyBDYXJyaWVyIG5hbWUgZS5nLiBBcmFtZXgsIERITCwgRmVkRXgsIEludGVybmFsXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjYXJyaWVyTmFtZT86IHN0cmluZztcblxuICAvLyBTaGlwcGluZyBjb3N0IGluIHRoZSBpbnZlbnRvcnkncyBiYXNlIGN1cnJlbmN5IChLV0QpXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiB0cnVlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzaGlwcGluZ0Nvc3Q/OiBudW1iZXI7XG5cbiAgLy8gRnJlZSBzaGlwcGluZyB0aHJlc2hvbGQg4oCUIG51bGwgbWVhbnMgbmV2ZXIgZnJlZVxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGZyZWVTaGlwcGluZ1RocmVzaG9sZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgaXNBY3RpdmU6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG5vdGVzPzogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBJbnZlbnRvcnkpXG4gIGRlY2xhcmUgaW52ZW50b3J5OiBJbnZlbnRvcnk7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBDb3VudHJ5KVxuICBkZWNsYXJlIGNvdW50cnk6IENvdW50cnk7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBTdG9yZSlcbiAgZGVjbGFyZSBzdG9yZT86IFN0b3JlO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IEludmVudG9yeSB9IGZyb20gJy4vaW52ZW50b3J5LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0VmFyaWFudCB9IGZyb20gJy4vcHJvZHVjdC12YXJpYW50LmVudGl0eSc7XG5pbXBvcnQgeyBTeXNVc2VyIH0gZnJvbSAnLi9zeXMudXNlci5lbnRpdHknO1xuaW1wb3J0IHsgU3RvY2tNb3ZlbWVudFR5cGUgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdG9ja01vdmVtZW50VHlwZSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFN0b2NrTW92ZW1lbnQgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IEludmVudG9yeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBpbnZlbnRvcnlJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3QpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdElkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcm9kdWN0VmFyaWFudElkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdG9ja01vdmVtZW50VHlwZSkpLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gIH0pXG4gIGRlY2xhcmUgbW92ZW1lbnRUeXBlOiBTdG9ja01vdmVtZW50VHlwZTtcblxuICAvLyBQb3NpdGl2ZSA9IHN0b2NrIGluLCBOZWdhdGl2ZSA9IHN0b2NrIG91dFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHF1YW50aXR5OiBudW1iZXI7XG5cbiAgLy8gU25hcHNob3Qgb2YgcXVhbnRpdHkgYmVmb3JlIHRoaXMgbW92ZW1lbnRcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBxdWFudGl0eUJlZm9yZTogbnVtYmVyO1xuXG4gIC8vIFNuYXBzaG90IG9mIHF1YW50aXR5IGFmdGVyIHRoaXMgbW92ZW1lbnRcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBxdWFudGl0eUFmdGVyOiBudW1iZXI7XG5cbiAgLy8gUmVmZXJlbmNlIHRvIHNvdXJjZSBkb2N1bWVudCAoUE8gaWQsIG9yZGVyIGlkLCBldGMuKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcmVmZXJlbmNlVHlwZT86IHN0cmluZzsgLy8gJ3B1cmNoYXNlX29yZGVyJyB8ICdvcmRlcicgfCAnbWFudWFsJyB8ICd0cmFuc2ZlcidcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcmVmZXJlbmNlSWQ/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG5vdGVzPzogc3RyaW5nO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFN5c1VzZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjcmVhdGVkQnk/OiBudW1iZXI7XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IEludmVudG9yeSlcbiAgZGVjbGFyZSBpbnZlbnRvcnk6IEludmVudG9yeTtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3QpXG4gIGRlY2xhcmUgcHJvZHVjdDogUHJvZHVjdDtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBkZWNsYXJlIHZhcmlhbnQ/OiBQcm9kdWN0VmFyaWFudDtcblxuICBAQmVsb25nc1RvKCgpID0+IFN5c1VzZXIpXG4gIGRlY2xhcmUgY3JlYXRlZEJ5VXNlcj86IFN5c1VzZXI7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnLi9zdG9yZS5lbnRpdHknO1xuaW1wb3J0IHsgSW52ZW50b3J5IH0gZnJvbSAnLi9pbnZlbnRvcnkuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgU3RvcmVJbnZlbnRvcnkgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFN0b3JlKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHN0b3JlSWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBJbnZlbnRvcnkpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaW52ZW50b3J5SWQ6IG51bWJlcjtcblxuICAvLyBQcmlvcml0eSDigJQgbG93ZXIgbnVtYmVyID0gcHJlZmVycmVkIGludmVudG9yeSBmb3IgdGhpcyBzdG9yZVxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAxIH0pXG4gIGRlY2xhcmUgcHJpb3JpdHk6IG51bWJlcjtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBGb3JlaWduS2V5LCBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuL3N0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kIH0gZnJvbSAnLi9wYXltZW50LW1ldGhvZC5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBTdG9yZVBheW1lbnRNZXRob2QgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFN0b3JlKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHN0b3JlSWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQYXltZW50TWV0aG9kKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHBheW1lbnRNZXRob2RJZDogbnVtYmVyO1xuXG4gIC8vIFN0b3JlIGNhbiBvdmVycmlkZSBzb3J0IG9yZGVyIGZvciBkaXNwbGF5XG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICAvLyBTdG9yZSBjYW4gZW5hYmxlL2Rpc2FibGUgaW5kZXBlbmRlbnRseSBvZiBnbG9iYWwgaXNBY3RpdmVcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogdHJ1ZSB9KVxuICBkZWNsYXJlIGlzRW5hYmxlZDogYm9vbGVhbjtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIEhhc01hbnksXG4gIEJlbG9uZ3NUb01hbnksXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0U3RvcmUgfSBmcm9tICcuL3Byb2R1Y3Qtc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFN0b3JlSW52ZW50b3J5IH0gZnJvbSAnLi9zdG9yZS1pbnZlbnRvcnkuZW50aXR5JztcbmltcG9ydCB7IEludmVudG9yeSB9IGZyb20gJy4vaW52ZW50b3J5LmVudGl0eSc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuaW1wb3J0IHsgUGF5bWVudE1ldGhvZCB9IGZyb20gJy4vcGF5bWVudC1tZXRob2QuZW50aXR5JztcbmltcG9ydCB7IFN0b3JlUGF5bWVudE1ldGhvZCB9IGZyb20gJy4vc3RvcmUtcGF5bWVudC1tZXRob2QuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgU3RvcmUgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Fbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Bcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbG9nbz86IHN0cmluZztcblxuICAvLyBJU08gY3VycmVuY3kgY29kZSBlLmcuIEtXRCwgU0FSLCBRQVIsIFVTRFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAnVVNEJyB9KVxuICBkZWNsYXJlIGN1cnJlbmN5OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGN1cnJlbmN5U3ltYm9sRW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGN1cnJlbmN5U3ltYm9sQXI/OiBzdHJpbmc7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gQ291bnRyeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvdW50cnlJZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGlzR2xvYmFsOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IENvdW50cnkpXG4gIGRlY2xhcmUgY291bnRyeTogQ291bnRyeTtcblxuICBAQmVsb25nc1RvTWFueSgoKSA9PiBQcm9kdWN0LCAoKSA9PiBQcm9kdWN0U3RvcmUpXG4gIGRlY2xhcmUgcHJvZHVjdHM6IFByb2R1Y3RbXTtcblxuICBAQmVsb25nc1RvTWFueSgoKSA9PiBJbnZlbnRvcnksICgpID0+IFN0b3JlSW52ZW50b3J5KVxuICBkZWNsYXJlIGludmVudG9yaWVzOiBJbnZlbnRvcnlbXTtcblxuICBAQmVsb25nc1RvTWFueSgoKSA9PiBQYXltZW50TWV0aG9kLCAoKSA9PiBTdG9yZVBheW1lbnRNZXRob2QpXG4gIGRlY2xhcmUgcGF5bWVudE1ldGhvZHM6IFBheW1lbnRNZXRob2RbXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBCZWxvbmdzVG9NYW55LFxuICBIYXNNYW55LFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uIH0gZnJvbSAnLi9wZXJtaXNzaW9uLmVudGl0eSc7XG5pbXBvcnQgeyBSb2xlUGVybWlzc2lvbiB9IGZyb20gJy4vcm9sZS1wZXJtaXNzaW9uLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFN5c1JvbGUgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCB1bmlxdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBuYW1lOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRpc3BsYXlOYW1lPzogc3RyaW5nO1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFBlcm1pc3Npb24sICgpID0+IFJvbGVQZXJtaXNzaW9uKVxuICBkZWNsYXJlIHBlcm1pc3Npb25zOiBQZXJtaXNzaW9uW107XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3lzUm9sZSB9IGZyb20gJy4vc3lzLnJvbGUuZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFN5c1VzZXIgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBuYW1lOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB1c2VybmFtZTogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCB1bmlxdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBlbWFpbDogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcGhvbmVFeHQ6IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHBob25lOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwYXNzd29yZDogc3RyaW5nO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBwcm9maWxlUGljdHVyZT86IHN0cmluZztcblxuICBARm9yZWlnbktleSgoKSA9PiBTeXNSb2xlKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcm9sZUlkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGxhc3RMb2dpbj86IERhdGU7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBTeXNSb2xlKVxuICBkZWNsYXJlIHJvbGU/OiBTeXNSb2xlO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEJlbG9uZ3NUb01hbnksXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0VGFnIH0gZnJvbSAnLi9wcm9kdWN0LXRhZy5lbnRpdHknO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgVGFnIGV4dGVuZHMgTW9kZWwge1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdW5pcXVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2x1Zzogc3RyaW5nOyAvLyBlLmcuICdiZXN0X3NlbGxlcicsICduZXdfYXJyaXZhbCcsICdkaXNjb3VudCdcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVFbjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUFyOiBzdHJpbmc7XG5cbiAgLy8gT3B0aW9uYWwgY29sb3IgZm9yIFVJIGJhZGdlIGRpc3BsYXkgZS5nLiAnI0ZGMDAwMCdcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvbG9yPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBTdGF0dXMuQUNUSVZFLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogU3RhdHVzO1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFByb2R1Y3QsICgpID0+IFByb2R1Y3RUYWcpXG4gIGRlY2xhcmUgcHJvZHVjdHM6IFByb2R1Y3RbXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi91c2VyLmVudGl0eSc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5pbXBvcnQgeyBBcmVhIH0gZnJvbSAnLi9hcmVhLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFVzZXJBZGRyZXNzIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBVc2VyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHVzZXJJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbGFiZWw6IHN0cmluZzsgLy8gZS5nLiAnSG9tZScsICdXb3JrJywgJ090aGVyJ1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgZnVsbE5hbWU6IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHBob25lRXh0OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwaG9uZTogc3RyaW5nO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IENvdW50cnkpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgY291bnRyeUlkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gQXJlYSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGFyZWFJZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY2l0eT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgYmxvY2s/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHN0cmVldD86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgYnVpbGRpbmc/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGZsb29yPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBhcGFydG1lbnQ/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGFkZGl0aW9uYWxJbmZvPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDksIDYpLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBsYXRpdHVkZT86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCg5LCA2KSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbG9uZ2l0dWRlPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaXNEZWZhdWx0OiBib29sZWFuO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBVc2VyKVxuICBkZWNsYXJlIHVzZXI6IFVzZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBDb3VudHJ5KVxuICBkZWNsYXJlIGNvdW50cnk6IENvdW50cnk7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBBcmVhKVxuICBkZWNsYXJlIGFyZWE/OiBBcmVhO1xufVxuIiwiaW1wb3J0IHtcbiAgTW9kZWwsIFRhYmxlLCBDb2x1bW4sIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbywgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuL3VzZXIuZW50aXR5JztcblxuZXhwb3J0IGVudW0gRmF2b3JpdGVDYXRhbG9nSXRlbVR5cGUge1xuICBQUk9EVUNUID0gJ3Byb2R1Y3QnLFxuICBCVU5ETEUgID0gJ2J1bmRsZScsXG59XG5cbkBUYWJsZSh7XG4gIHBhcmFub2lkOiBmYWxzZSwgLy8gaGFyZCBkZWxldGUgb25seSDigJQgc29mdCBkZWxldGUgYnJlYWtzIHRoZSB1bmlxdWUgY29uc3RyYWludCBvbiByZS1hZGRcbiAgdGltZXN0YW1wczogdHJ1ZSwgLy8ga2VlcHMgY3JlYXRlZEF0IC8gdXBkYXRlZEF0LCBubyBkZWxldGVkQXQgY29sdW1uXG4gIGluZGV4ZXM6IFtcbiAgICB7XG4gICAgICAvLyBQcmV2ZW50IGR1cGxpY2F0ZSBmYXZvcml0ZXMgZm9yIHRoZSBzYW1lIGl0ZW1cbiAgICAgIHVuaXF1ZTogdHJ1ZSxcbiAgICAgIGZpZWxkczogWyd1c2VySWQnLCAnaXRlbVR5cGUnLCAnaXRlbUlkJ10sXG4gICAgICBuYW1lOiAndXFfdXNlcl9mYXZvcml0ZV9jYXRhbG9nX2l0ZW0nLFxuICAgIH0sXG4gICAge1xuICAgICAgLy8gRmFzdCBsb29rdXAgZm9yIGFsbCBmYXZvcml0ZXMgb2YgYSB1c2VyXG4gICAgICBmaWVsZHM6IFsndXNlcklkJ10sXG4gICAgICBuYW1lOiAnaWR4X3VzZXJfZmF2b3JpdGVfY2F0YWxvZ191c2VySWQnLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFVzZXJGYXZvcml0ZUNhdGFsb2cgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFVzZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdXNlcklkOiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKEZhdm9yaXRlQ2F0YWxvZ0l0ZW1UeXBlKSksXG4gICAgYWxsb3dOdWxsOiBmYWxzZSxcbiAgfSlcbiAgZGVjbGFyZSBpdGVtVHlwZTogRmF2b3JpdGVDYXRhbG9nSXRlbVR5cGU7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBpdGVtSWQ6IG51bWJlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IFVzZXIpXG4gIGRlY2xhcmUgdXNlcjogVXNlcjtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuL3VzZXIuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgVXNlckZhdm9yaXRlIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBVc2VyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHVzZXJJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3QpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdElkOiBudW1iZXI7XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IFVzZXIpXG4gIGRlY2xhcmUgdXNlcjogVXNlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3QpXG4gIGRlY2xhcmUgcHJvZHVjdDogUHJvZHVjdDtcblxuXG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgRm9yZWlnbktleSwgQmVsb25nc1RvLCBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4vdXNlci5lbnRpdHknO1xuaW1wb3J0IHsgT3JkZXIgfSBmcm9tICcuL29yZGVyLmVudGl0eSc7XG5cbmV4cG9ydCBlbnVtIFRyYW5zYWN0aW9uVHlwZSB7XG4gIERFQklUICA9ICdkZWJpdCcsICAgLy8gbW9uZXkgbGVhdmVzIHVzZXIgYmFsYW5jZVxuICBDUkVESVQgPSAnY3JlZGl0JywgIC8vIG1vbmV5IGVudGVycyB1c2VyIGJhbGFuY2Vcbn1cblxuZXhwb3J0IGVudW0gVHJhbnNhY3Rpb25DYXRlZ29yeSB7XG4gIE9SREVSX1BBWU1FTlQgICAgICA9ICdvcmRlcl9wYXltZW50JywgICAgICAvLyBERUJJVDogcGFpZCBmb3Igb3JkZXJcbiAgT1JERVJfUkVGVU5EICAgICAgID0gJ29yZGVyX3JlZnVuZCcsICAgICAgIC8vIENSRURJVDogcmVmdW5kIHJlY2VpdmVkXG4gIEdJRlRfU0VOVCAgICAgICAgICA9ICdnaWZ0X3NlbnQnLCAgICAgICAgICAvLyBERUJJVDogc2VudCBnaWZ0IHRvIHNvbWVvbmVcbiAgR0lGVF9SRUNFSVZFRCAgICAgID0gJ2dpZnRfcmVjZWl2ZWQnLCAgICAgIC8vIENSRURJVDogcmVjZWl2ZWQgYSBnaWZ0XG4gIEJBTEFOQ0VfVE9QX1VQICAgICA9ICdiYWxhbmNlX3RvcF91cCcsICAgICAvLyBDUkVESVQ6IHRvcHBlZCB1cCB3YWxsZXRcbiAgQkFMQU5DRV9XSVRIRFJBV0FMID0gJ2JhbGFuY2Vfd2l0aGRyYXdhbCcsIC8vIERFQklUOiB3aXRoZHJldyBiYWxhbmNlXG4gIENPVVBPTl9DUkVESVQgICAgICA9ICdjb3Vwb25fY3JlZGl0JywgICAgICAvLyBDUkVESVQ6IGNvdXBvbiBjYXNoYmFja1xuICBBREpVU1RNRU5UICAgICAgICAgPSAnYWRqdXN0bWVudCcsICAgICAgICAgLy8gREVCSVQgb3IgQ1JFRElUOiBtYW51YWwgYWRtaW4gYWRqdXN0bWVudFxuICBDQVNIQkFDSyAgICAgICAgICAgPSAnY2FzaGJhY2snLCAgICAgICAgICAgLy8gQ1JFRElUOiBsb3lhbHR5IGNhc2hiYWNrXG59XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFVzZXJUcmFuc2FjdGlvbiBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB1c2VySWQ6IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoVHJhbnNhY3Rpb25UeXBlKSksXG4gICAgYWxsb3dOdWxsOiBmYWxzZSxcbiAgfSlcbiAgZGVjbGFyZSB0eXBlOiBUcmFuc2FjdGlvblR5cGU7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFRyYW5zYWN0aW9uQ2F0ZWdvcnkpKSxcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICB9KVxuICBkZWNsYXJlIGNhdGVnb3J5OiBUcmFuc2FjdGlvbkNhdGVnb3J5O1xuXG4gIC8vIFRyYW5zYWN0aW9uIGFtb3VudCAoYWx3YXlzIHBvc2l0aXZlIOKAlCB0eXBlIGRldGVybWluZXMgZGlyZWN0aW9uKVxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBhbW91bnQ6IG51bWJlcjtcblxuICAvLyBSdW5uaW5nIGJhbGFuY2UgQUZURVIgdGhpcyB0cmFuc2FjdGlvblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIGJhbGFuY2VBZnRlcjogbnVtYmVyO1xuXG4gIC8vIEN1cnJlbmN5IG9mIHRoZSB0cmFuc2FjdGlvblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAnS1dEJyB9KVxuICBkZWNsYXJlIGN1cnJlbmN5OiBzdHJpbmc7XG5cbiAgLy8gQmlsaW5ndWFsIGRlc2NyaXB0aW9uIHNob3duIGluIHRoZSBhcHBcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkFyOiBzdHJpbmc7XG5cbiAgLy8gUmVmZXJlbmNlIHRvIHRoZSByZWxhdGVkIG9yZGVyIChpZiBhcHBsaWNhYmxlKVxuICBARm9yZWlnbktleSgoKSA9PiBPcmRlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG9yZGVySWQ/OiBudW1iZXI7XG5cbiAgLy8gRXh0ZXJuYWwgcmVmZXJlbmNlIChwYXltZW50IGdhdGV3YXkgdHJhbnNhY3Rpb24gSUQsIGV0Yy4pXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBleHRlcm5hbFJlZmVyZW5jZT86IHN0cmluZztcblxuICAvLyBTdGF0dXM6IHBlbmRpbmcgfCBjb21wbGV0ZWQgfCBmYWlsZWQgfCByZXZlcnNlZFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAnY29tcGxldGVkJyB9KVxuICBkZWNsYXJlIHN0YXR1czogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBVc2VyKVxuICBkZWNsYXJlIHVzZXI6IFVzZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBPcmRlcilcbiAgZGVjbGFyZSBvcmRlcj86IE9yZGVyO1xufVxuIiwiaW1wb3J0IHtcbiAgTW9kZWwsXG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgRGF0YVR5cGUsXG4gIEhhc01hbnksXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5pbXBvcnQgeyBMYW5ndWFnZSB9IGZyb20gJy4uL3V0aWxzL2VudW1zL2xhbmd1YWdlJztcbmltcG9ydCB7IENvdW50cnkgfSBmcm9tICcuL2NvdW50cnkuZW50aXR5JztcbmltcG9ydCB7IEdlbmRlciB9IGZyb20gJy4uL3V0aWxzL2VudW1zL2dlbmRlcic7XG5pbXBvcnQgeyBVc2VyQWRkcmVzcyB9IGZyb20gJy4vdXNlci1hZGRyZXNzLmVudGl0eSc7XG5pbXBvcnQgeyBDYXJ0IH0gZnJvbSAnLi9jYXJ0LmVudGl0eSc7XG5pbXBvcnQgeyBPcmRlciB9IGZyb20gJy4vb3JkZXIuZW50aXR5JztcbmltcG9ydCB7IFVzZXJUcmFuc2FjdGlvbiB9IGZyb20gJy4vdXNlci10cmFuc2FjdGlvbi5lbnRpdHknO1xuaW1wb3J0IHsgVXNlckZhdm9yaXRlQ2F0YWxvZyB9IGZyb20gJy4vdXNlci1mYXZvcml0ZS1jYXRhbG9nLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFVzZXIgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBmaXJzdE5hbWU/OiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIGxhc3ROYW1lPzogc3RyaW5nO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBwYXNzd29yZDogc3RyaW5nO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIHZhbGlkYXRlOiB7IGlzRW1haWw6IHsgbXNnOiAnSW52YWxpZCBFbWFpbCcgfSB9IH0pXG4gIGRlY2xhcmUgZW1haWw6IHN0cmluZztcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgcGhvbmU/OiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIHBob25lRXh0Pzogc3RyaW5nO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBiaXJ0aGRheT86IERhdGU7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIGZhY2Vib29rSWQ/OiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIGdvb2dsZUlkPzogc3RyaW5nO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBhcHBsZUlkPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhMYW5ndWFnZSkpLFxuICAgIGRlZmF1bHRWYWx1ZTogTGFuZ3VhZ2UuRU5HTElTSCxcbiAgfSlcbiAgZGVjbGFyZSBwcmVmZXJyZWRMYW5ndWFnZTogTGFuZ3VhZ2U7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gQ291bnRyeSlcbiAgQENvbHVtblxuICBkZWNsYXJlIHByZWZlcnJlZENvdW50cnlJZD86IG51bWJlcjtcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgcHJvZmlsZVBpYz86IHN0cmluZztcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgbGFzdExvZ2luOiBEYXRlO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaXNCbG9ja2VkOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaXNWZXJpZmllZDogYm9vbGVhbjtcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgcmVmQ29kZTogc3RyaW5nO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhHZW5kZXIpKSxcbiAgICBkZWZhdWx0VmFsdWU6IEdlbmRlci5QUkVGRVJfTk9UX1RPX1NBWSxcbiAgfSlcbiAgZGVjbGFyZSBnZW5kZXI6IEdlbmRlcjtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHdhbGxldEJhbGFuY2U6IG51bWJlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IENvdW50cnkpXG4gIGRlY2xhcmUgY291bnRyeTogQ291bnRyeTtcblxuICBASGFzTWFueSgoKSA9PiBVc2VyQWRkcmVzcylcbiAgZGVjbGFyZSBhZGRyZXNzZXM6IFVzZXJBZGRyZXNzW107XG5cbiAgQEhhc01hbnkoKCkgPT4gVXNlckZhdm9yaXRlQ2F0YWxvZylcbiAgZGVjbGFyZSBmYXZvcml0ZXM6IFVzZXJGYXZvcml0ZUNhdGFsb2dbXTtcblxuICBASGFzTWFueSgoKSA9PiBDYXJ0KVxuICBkZWNsYXJlIGNhcnRzOiBDYXJ0W107XG5cbiAgQEhhc01hbnkoKCkgPT4gT3JkZXIpXG4gIGRlY2xhcmUgb3JkZXJzOiBPcmRlcltdO1xuXG4gIEBIYXNNYW55KCgpID0+IFVzZXJUcmFuc2FjdGlvbilcbiAgZGVjbGFyZSB0cmFuc2FjdGlvbnM6IFVzZXJUcmFuc2FjdGlvbltdO1xufVxuIiwiaW1wb3J0IHtcbiAgTW9kZWwsXG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIFByaW1hcnlLZXksXG4gIEF1dG9JbmNyZW1lbnQsXG4gIENyZWF0ZWRBdCxcbiAgVXBkYXRlZEF0LFxuICBEZWxldGVkQXQsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgQmVsb25nc1RvTWFueSxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuL3VzZXIuZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5pbXBvcnQgeyBPc05hbWUgfSBmcm9tICcuLi91dGlscy9lbnVtcy9vc05hbWUnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBVc2VyRGV2aWNlIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBVc2VyKVxuICBAQ29sdW1uXG4gIGRlY2xhcmUgdXNlcklkOiBudW1iZXI7XG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBkZXZpY2VJZD86IHN0cmluZztcbiAgQENvbHVtblxuICBkZWNsYXJlIGZjbVRva2VuPzogc3RyaW5nO1xuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBTdGF0dXMuQUNUSVZFLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogU3RhdHVzO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhPc05hbWUpKSxcbiAgICBhbGxvd051bGw6IHRydWUsXG4gIH0pXG4gIGRlY2xhcmUgb3NTeXN0ZW06IHN0cmluZztcbiAgQEJlbG9uZ3NUbygoKSA9PiBVc2VyKVxuICBkZWNsYXJlIHVzZXI6IFVzZXI7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgVmFyaWFudFR5cGUgfSBmcm9tICcuL3ZhcmlhbnQtdHlwZS5lbnRpdHknO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgVmFyaWFudE9wdGlvbiBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gVmFyaWFudFR5cGUpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdmFyaWFudFR5cGVJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgc29ydE9yZGVyOiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcblxuICBAQmVsb25nc1RvKCgpID0+IFZhcmlhbnRUeXBlKVxuICBkZWNsYXJlIHZhcmlhbnRUeXBlOiBWYXJpYW50VHlwZTtcbn1cbiIsImltcG9ydCB7IFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBIYXNNYW55IH0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcbmltcG9ydCB7IERhdGFUeXBlIH0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBWYXJpYW50VHlwZSBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lRW46IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVBcjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgVmVuZG9yIH0gZnJvbSAnLi92ZW5kb3IuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFZlbmRvclByb2R1Y3QgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFZlbmRvcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB2ZW5kb3JJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3QpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdElkOiBudW1iZXI7XG5cbiAgLy8gbnVsbCA9IGFwcGxpZXMgdG8gcHJvZHVjdCB3aXRoIG5vIHZhcmlhbnRzXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdFZhcmlhbnRJZD86IG51bWJlcjtcblxuICAvLyBWZW5kb3IncyBjb3N0IHByaWNlIHRvIHVzXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGNvc3RQcmljZTogbnVtYmVyO1xuXG4gIC8vIFZlbmRvcidzIFNLVS9yZWZlcmVuY2UgY29kZSBmb3IgdGhpcyBwcm9kdWN0XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSB2ZW5kb3JTa3U/OiBzdHJpbmc7XG5cbiAgLy8gVHlwaWNhbCBsZWFkIHRpbWUgaW4gZGF5cyBmcm9tIHRoaXMgdmVuZG9yXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBsZWFkVGltZURheXM/OiBudW1iZXI7XG5cbiAgLy8gTWluaW11bSBvcmRlciBxdWFudGl0eVxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAxIH0pXG4gIGRlY2xhcmUgbW9xOiBudW1iZXI7XG5cbiAgLy8gSXMgdGhpcyB0aGUgcHJlZmVycmVkL2RlZmF1bHQgdmVuZG9yIGZvciB0aGlzIHByb2R1Y3Q/XG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaXNQcmVmZXJyZWQ6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gVmVuZG9yKVxuICBkZWNsYXJlIHZlbmRvcjogVmVuZG9yO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdClcbiAgZGVjbGFyZSBwcm9kdWN0OiBQcm9kdWN0O1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIGRlY2xhcmUgdmFyaWFudD86IFByb2R1Y3RWYXJpYW50O1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgSGFzTWFueSxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IENvdW50cnkgfSBmcm9tICcuL2NvdW50cnkuZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFZlbmRvciBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lRW46IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVBcjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjb250YWN0UGVyc29uPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBlbWFpbD86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcGhvbmU/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGFkZHJlc3NFbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgYWRkcmVzc0FyPzogc3RyaW5nO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IENvdW50cnkpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjb3VudHJ5SWQ/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHRheE51bWJlcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY29tbWVyY2lhbFJlZ051bWJlcj86IHN0cmluZztcblxuICAvLyBEZWZhdWx0IHBheW1lbnQgdGVybXMgaW4gZGF5cyAoZS5nLiAzMCA9IE5FVDMwKVxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgcGF5bWVudFRlcm1zRGF5czogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBub3Rlcz86IHN0cmluZztcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBTdGF0dXMuQUNUSVZFLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogU3RhdHVzO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBDb3VudHJ5KVxuICBkZWNsYXJlIGNvdW50cnk6IENvdW50cnk7XG59XG4iLCJpbXBvcnQgeyBNb2RlbEN0b3IgfSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5cbi8vIOKUgOKUgOKUgCBFeGlzdGluZyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmltcG9ydCB7IENvdW50cnkgfSBmcm9tICcuL2VudGl0aWVzL2NvdW50cnkuZW50aXR5JztcbmltcG9ydCB7IEFyZWEgfSBmcm9tICcuL2VudGl0aWVzL2FyZWEuZW50aXR5JztcbmltcG9ydCB7IFN5c1JvbGUgfSBmcm9tICcuL2VudGl0aWVzL3N5cy5yb2xlLmVudGl0eSc7XG5pbXBvcnQgeyBTeXNVc2VyIH0gZnJvbSAnLi9lbnRpdGllcy9zeXMudXNlci5lbnRpdHknO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4vZW50aXRpZXMvdXNlci5lbnRpdHknO1xuaW1wb3J0IHsgVXNlckRldmljZSB9IGZyb20gJy4vZW50aXRpZXMvdXNlckRldmljZS5lbnRpdHknO1xuaW1wb3J0IHsgQXBpS2V5IH0gZnJvbSAnLi9lbnRpdGllcy9hcGlrZXkuZW50aXR5JztcbmltcG9ydCB7IFVzZXJBZGRyZXNzIH0gZnJvbSAnLi9lbnRpdGllcy91c2VyLWFkZHJlc3MuZW50aXR5JztcbmltcG9ydCB7IFVzZXJGYXZvcml0ZSB9IGZyb20gJy4vZW50aXRpZXMvdXNlci1mYXZvcml0ZS5lbnRpdHknO1xuaW1wb3J0IHsgVXNlckZhdm9yaXRlQ2F0YWxvZyB9IGZyb20gJy4vZW50aXRpZXMvdXNlci1mYXZvcml0ZS1jYXRhbG9nLmVudGl0eSc7XG5pbXBvcnQgeyBCYW5uZXIgfSBmcm9tICcuL2VudGl0aWVzL2Jhbm5lci5lbnRpdHknO1xuaW1wb3J0IHsgQXBwQ29uZmlnIH0gZnJvbSAnLi9lbnRpdGllcy9hcHAtY29uZmlnLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBDYXRhbG9ndWUg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5pbXBvcnQgeyBDYXRlZ29yeSB9IGZyb20gJy4vZW50aXRpZXMvY2F0ZWdvcnkuZW50aXR5JztcbmltcG9ydCB7IEJyYW5kIH0gZnJvbSAnLi9lbnRpdGllcy9icmFuZC5lbnRpdHknO1xuaW1wb3J0IHsgVmFyaWFudFR5cGUgfSBmcm9tICcuL2VudGl0aWVzL3ZhcmlhbnQtdHlwZS5lbnRpdHknO1xuaW1wb3J0IHsgVmFyaWFudE9wdGlvbiB9IGZyb20gJy4vZW50aXRpZXMvdmFyaWFudC1vcHRpb24uZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL2VudGl0aWVzL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RNZWRpYSB9IGZyb20gJy4vZW50aXRpZXMvcHJvZHVjdC1tZWRpYS5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFZhcmlhbnQgfSBmcm9tICcuL2VudGl0aWVzL3Byb2R1Y3QtdmFyaWFudC5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFZhcmlhbnRPcHRpb24gfSBmcm9tICcuL2VudGl0aWVzL3Byb2R1Y3QtdmFyaWFudC1vcHRpb24uZW50aXR5JztcbmltcG9ydCB7IFRhZyB9IGZyb20gJy4vZW50aXRpZXMvdGFnLmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0VGFnIH0gZnJvbSAnLi9lbnRpdGllcy9wcm9kdWN0LXRhZy5lbnRpdHknO1xuaW1wb3J0IHsgQnVuZGxlIH0gZnJvbSAnLi9lbnRpdGllcy9idW5kbGUuZW50aXR5JztcbmltcG9ydCB7IEJ1bmRsZVByb2R1Y3QgfSBmcm9tICcuL2VudGl0aWVzL2J1bmRsZS1wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBCdW5kbGVTdG9yZSB9IGZyb20gJy4vZW50aXRpZXMvYnVuZGxlLXN0b3JlLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBTdG9yZXMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4vZW50aXRpZXMvc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RTdG9yZSB9IGZyb20gJy4vZW50aXRpZXMvcHJvZHVjdC1zdG9yZS5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgSW52ZW50b3J5IOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuaW1wb3J0IHsgSW52ZW50b3J5IH0gZnJvbSAnLi9lbnRpdGllcy9pbnZlbnRvcnkuZW50aXR5JztcbmltcG9ydCB7IFN0b3JlSW52ZW50b3J5IH0gZnJvbSAnLi9lbnRpdGllcy9zdG9yZS1pbnZlbnRvcnkuZW50aXR5JztcbmltcG9ydCB7IEludmVudG9yeVN0b2NrIH0gZnJvbSAnLi9lbnRpdGllcy9pbnZlbnRvcnktc3RvY2suZW50aXR5JztcbmltcG9ydCB7IFN0b2NrTW92ZW1lbnQgfSBmcm9tICcuL2VudGl0aWVzL3N0b2NrLW1vdmVtZW50LmVudGl0eSc7XG5pbXBvcnQgeyBTaGlwcGluZ1J1bGUgfSBmcm9tICcuL2VudGl0aWVzL3NoaXBwaW5nLXJ1bGUuZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIFB1cmNoYXNpbmcg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5pbXBvcnQgeyBWZW5kb3IgfSBmcm9tICcuL2VudGl0aWVzL3ZlbmRvci5lbnRpdHknO1xuaW1wb3J0IHsgVmVuZG9yUHJvZHVjdCB9IGZyb20gJy4vZW50aXRpZXMvdmVuZG9yLXByb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFB1cmNoYXNlT3JkZXIgfSBmcm9tICcuL2VudGl0aWVzL3B1cmNoYXNlLW9yZGVyLmVudGl0eSc7XG5pbXBvcnQgeyBQdXJjaGFzZU9yZGVySXRlbSB9IGZyb20gJy4vZW50aXRpZXMvcHVyY2hhc2Utb3JkZXItaXRlbS5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgUGVybWlzc2lvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5pbXBvcnQgeyBQZXJtaXNzaW9uIH0gZnJvbSAnLi9lbnRpdGllcy9wZXJtaXNzaW9uLmVudGl0eSc7XG5pbXBvcnQgeyBSb2xlUGVybWlzc2lvbiB9IGZyb20gJy4vZW50aXRpZXMvcm9sZS1wZXJtaXNzaW9uLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBQYXltZW50IE1ldGhvZHMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5pbXBvcnQgeyBQYXltZW50R2F0ZXdheSB9IGZyb20gJy4vZW50aXRpZXMvcGF5bWVudC1nYXRld2F5LmVudGl0eSc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kIH0gZnJvbSAnLi9lbnRpdGllcy9wYXltZW50LW1ldGhvZC5lbnRpdHknO1xuaW1wb3J0IHsgUGF5bWVudE1ldGhvZENvdW50cnkgfSBmcm9tICcuL2VudGl0aWVzL3BheW1lbnQtbWV0aG9kLWNvdW50cnkuZW50aXR5JztcbmltcG9ydCB7IFN0b3JlUGF5bWVudE1ldGhvZCB9IGZyb20gJy4vZW50aXRpZXMvc3RvcmUtcGF5bWVudC1tZXRob2QuZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIENhcnRzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuaW1wb3J0IHsgQ2FydCB9IGZyb20gJy4vZW50aXRpZXMvY2FydC5lbnRpdHknO1xuaW1wb3J0IHsgQ2FydEl0ZW0gfSBmcm9tICcuL2VudGl0aWVzL2NhcnQtaXRlbS5lbnRpdHknO1xuaW1wb3J0IHsgQ2FydEl0ZW1CdW5kbGVTZWxlY3Rpb24gfSBmcm9tICcuL2VudGl0aWVzL2NhcnQtaXRlbS1idW5kbGUtc2VsZWN0aW9uLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBDb3Vwb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuaW1wb3J0IHsgQ291cG9uIH0gZnJvbSAnLi9lbnRpdGllcy9jb3Vwb24uZW50aXR5JztcbmltcG9ydCB7IENvdXBvblN0b3JlIH0gZnJvbSAnLi9lbnRpdGllcy9jb3Vwb24tc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IENvdXBvblByb2R1Y3QgfSBmcm9tICcuL2VudGl0aWVzL2NvdXBvbi1wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBDb3Vwb25Vc2VyIH0gZnJvbSAnLi9lbnRpdGllcy9jb3Vwb24tdXNlci5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgT3JkZXJzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuaW1wb3J0IHsgT3JkZXJTdGF0dXMgfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLXN0YXR1cy5lbnRpdHknO1xuaW1wb3J0IHsgT3JkZXIgfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLmVudGl0eSc7XG5pbXBvcnQgeyBPcmRlckl0ZW0gfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLWl0ZW0uZW50aXR5JztcbmltcG9ydCB7IE9yZGVySXRlbUJ1bmRsZVNlbGVjdGlvbiB9IGZyb20gJy4vZW50aXRpZXMvb3JkZXItaXRlbS1idW5kbGUtc2VsZWN0aW9uLmVudGl0eSc7XG5pbXBvcnQgeyBPcmRlclN0YXR1c0hpc3RvcnkgfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLXN0YXR1cy1oaXN0b3J5LmVudGl0eSc7XG5pbXBvcnQgeyBVc2VyVHJhbnNhY3Rpb24gfSBmcm9tICcuL2VudGl0aWVzL3VzZXItdHJhbnNhY3Rpb24uZW50aXR5JztcbmltcG9ydCB7IFB1cmNoYXNlT3JkZXJPcmRlckl0ZW0gfSBmcm9tICcuL2VudGl0aWVzL3B1cmNoYXNlLW9yZGVyLW9yZGVyLWl0ZW0uZW50aXR5JztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEVYUE9SVFNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIOKUgOKUgOKUgCBFeGlzdGluZyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7IEFwaUtleSB9IGZyb20gJy4vZW50aXRpZXMvYXBpa2V5LmVudGl0eSc7XG5leHBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9lbnRpdGllcy9jb3VudHJ5LmVudGl0eSc7XG5leHBvcnQgeyBBcmVhIH0gZnJvbSAnLi9lbnRpdGllcy9hcmVhLmVudGl0eSc7XG5leHBvcnQgeyBTeXNSb2xlIH0gZnJvbSAnLi9lbnRpdGllcy9zeXMucm9sZS5lbnRpdHknO1xuZXhwb3J0IHsgU3lzVXNlciB9IGZyb20gJy4vZW50aXRpZXMvc3lzLnVzZXIuZW50aXR5JztcbmV4cG9ydCB7IFVzZXIgfSBmcm9tICcuL2VudGl0aWVzL3VzZXIuZW50aXR5JztcbmV4cG9ydCB7IFVzZXJEZXZpY2UgfSBmcm9tICcuL2VudGl0aWVzL3VzZXJEZXZpY2UuZW50aXR5JztcbmV4cG9ydCB7IFVzZXJBZGRyZXNzIH0gZnJvbSAnLi9lbnRpdGllcy91c2VyLWFkZHJlc3MuZW50aXR5JztcbmV4cG9ydCB7IFVzZXJGYXZvcml0ZSB9IGZyb20gJy4vZW50aXRpZXMvdXNlci1mYXZvcml0ZS5lbnRpdHknO1xuZXhwb3J0IHtcbiAgVXNlckZhdm9yaXRlQ2F0YWxvZyxcbiAgRmF2b3JpdGVDYXRhbG9nSXRlbVR5cGUsXG59IGZyb20gJy4vZW50aXRpZXMvdXNlci1mYXZvcml0ZS1jYXRhbG9nLmVudGl0eSc7XG5leHBvcnQge1xuICBCYW5uZXIsXG4gIEJhbm5lclBsYWNlbWVudCxcbiAgQmFubmVyU3RhdHVzLFxuICBCYW5uZXJGaWx0ZXJzLFxufSBmcm9tICcuL2VudGl0aWVzL2Jhbm5lci5lbnRpdHknO1xuZXhwb3J0IHsgQXBwQ29uZmlnIH0gZnJvbSAnLi9lbnRpdGllcy9hcHAtY29uZmlnLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBDYXRhbG9ndWUg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5leHBvcnQgeyBDYXRlZ29yeSB9IGZyb20gJy4vZW50aXRpZXMvY2F0ZWdvcnkuZW50aXR5JztcbmV4cG9ydCB7IEJyYW5kIH0gZnJvbSAnLi9lbnRpdGllcy9icmFuZC5lbnRpdHknO1xuZXhwb3J0IHsgVmFyaWFudFR5cGUgfSBmcm9tICcuL2VudGl0aWVzL3ZhcmlhbnQtdHlwZS5lbnRpdHknO1xuZXhwb3J0IHsgVmFyaWFudE9wdGlvbiB9IGZyb20gJy4vZW50aXRpZXMvdmFyaWFudC1vcHRpb24uZW50aXR5JztcbmV4cG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL2VudGl0aWVzL3Byb2R1Y3QuZW50aXR5JztcbmV4cG9ydCB7IFByb2R1Y3RNZWRpYSwgTWVkaWFUeXBlIH0gZnJvbSAnLi9lbnRpdGllcy9wcm9kdWN0LW1lZGlhLmVudGl0eSc7XG5leHBvcnQgeyBQcm9kdWN0VmFyaWFudCB9IGZyb20gJy4vZW50aXRpZXMvcHJvZHVjdC12YXJpYW50LmVudGl0eSc7XG5leHBvcnQgeyBQcm9kdWN0VmFyaWFudE9wdGlvbiB9IGZyb20gJy4vZW50aXRpZXMvcHJvZHVjdC12YXJpYW50LW9wdGlvbi5lbnRpdHknO1xuZXhwb3J0IHsgVGFnIH0gZnJvbSAnLi9lbnRpdGllcy90YWcuZW50aXR5JztcbmV4cG9ydCB7IFByb2R1Y3RUYWcgfSBmcm9tICcuL2VudGl0aWVzL3Byb2R1Y3QtdGFnLmVudGl0eSc7XG5leHBvcnQgeyBCdW5kbGUgfSBmcm9tICcuL2VudGl0aWVzL2J1bmRsZS5lbnRpdHknO1xuZXhwb3J0IHsgQnVuZGxlUHJvZHVjdCB9IGZyb20gJy4vZW50aXRpZXMvYnVuZGxlLXByb2R1Y3QuZW50aXR5JztcbmV4cG9ydCB7IEJ1bmRsZVN0b3JlIH0gZnJvbSAnLi9lbnRpdGllcy9idW5kbGUtc3RvcmUuZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIFN0b3JlcyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7IFN0b3JlIH0gZnJvbSAnLi9lbnRpdGllcy9zdG9yZS5lbnRpdHknO1xuZXhwb3J0IHsgUHJvZHVjdFN0b3JlIH0gZnJvbSAnLi9lbnRpdGllcy9wcm9kdWN0LXN0b3JlLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBJbnZlbnRvcnkg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5leHBvcnQgeyBJbnZlbnRvcnkgfSBmcm9tICcuL2VudGl0aWVzL2ludmVudG9yeS5lbnRpdHknO1xuZXhwb3J0IHsgU3RvcmVJbnZlbnRvcnkgfSBmcm9tICcuL2VudGl0aWVzL3N0b3JlLWludmVudG9yeS5lbnRpdHknO1xuZXhwb3J0IHsgSW52ZW50b3J5U3RvY2sgfSBmcm9tICcuL2VudGl0aWVzL2ludmVudG9yeS1zdG9jay5lbnRpdHknO1xuZXhwb3J0IHsgU3RvY2tNb3ZlbWVudCB9IGZyb20gJy4vZW50aXRpZXMvc3RvY2stbW92ZW1lbnQuZW50aXR5JztcbmV4cG9ydCB7IFNoaXBwaW5nUnVsZSB9IGZyb20gJy4vZW50aXRpZXMvc2hpcHBpbmctcnVsZS5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgUHVyY2hhc2luZyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7IFZlbmRvciB9IGZyb20gJy4vZW50aXRpZXMvdmVuZG9yLmVudGl0eSc7XG5leHBvcnQgeyBWZW5kb3JQcm9kdWN0IH0gZnJvbSAnLi9lbnRpdGllcy92ZW5kb3ItcHJvZHVjdC5lbnRpdHknO1xuZXhwb3J0IHsgUHVyY2hhc2VPcmRlciB9IGZyb20gJy4vZW50aXRpZXMvcHVyY2hhc2Utb3JkZXIuZW50aXR5JztcbmV4cG9ydCB7XG4gIFB1cmNoYXNlT3JkZXJJdGVtLFxuICBQdXJjaGFzZU9yZGVySXRlbVN0YXR1cyxcbn0gZnJvbSAnLi9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci1pdGVtLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBQZXJtaXNzaW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuZXhwb3J0IHsgUGVybWlzc2lvbiB9IGZyb20gJy4vZW50aXRpZXMvcGVybWlzc2lvbi5lbnRpdHknO1xuZXhwb3J0IHsgUm9sZVBlcm1pc3Npb24gfSBmcm9tICcuL2VudGl0aWVzL3JvbGUtcGVybWlzc2lvbi5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgUGF5bWVudCBNZXRob2RzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuZXhwb3J0IHtcbiAgUGF5bWVudEdhdGV3YXksXG4gIFBheW1lbnRHYXRld2F5VHlwZSxcbn0gZnJvbSAnLi9lbnRpdGllcy9wYXltZW50LWdhdGV3YXkuZW50aXR5JztcbmV4cG9ydCB7XG4gIFBheW1lbnRNZXRob2QsXG4gIFBheW1lbnRNZXRob2RUeXBlLFxufSBmcm9tICcuL2VudGl0aWVzL3BheW1lbnQtbWV0aG9kLmVudGl0eSc7XG5leHBvcnQgeyBQYXltZW50TWV0aG9kQ291bnRyeSB9IGZyb20gJy4vZW50aXRpZXMvcGF5bWVudC1tZXRob2QtY291bnRyeS5lbnRpdHknO1xuZXhwb3J0IHsgU3RvcmVQYXltZW50TWV0aG9kIH0gZnJvbSAnLi9lbnRpdGllcy9zdG9yZS1wYXltZW50LW1ldGhvZC5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgQ2FydHMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5leHBvcnQgeyBDYXJ0LCBDYXJ0U3RhdHVzIH0gZnJvbSAnLi9lbnRpdGllcy9jYXJ0LmVudGl0eSc7XG5leHBvcnQgeyBDYXJ0SXRlbSwgQ2FydEl0ZW1UeXBlIH0gZnJvbSAnLi9lbnRpdGllcy9jYXJ0LWl0ZW0uZW50aXR5JztcbmV4cG9ydCB7IENhcnRJdGVtQnVuZGxlU2VsZWN0aW9uIH0gZnJvbSAnLi9lbnRpdGllcy9jYXJ0LWl0ZW0tYnVuZGxlLXNlbGVjdGlvbi5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgQ291cG9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7XG4gIENvdXBvbixcbiAgQ291cG9uRGlzY291bnRUeXBlLFxuICBDb3Vwb25BcHBsaWVzVG8sXG4gIENvdXBvbk9zVGFyZ2V0LFxufSBmcm9tICcuL2VudGl0aWVzL2NvdXBvbi5lbnRpdHknO1xuZXhwb3J0IHsgQ291cG9uU3RvcmUgfSBmcm9tICcuL2VudGl0aWVzL2NvdXBvbi1zdG9yZS5lbnRpdHknO1xuZXhwb3J0IHsgQ291cG9uUHJvZHVjdCB9IGZyb20gJy4vZW50aXRpZXMvY291cG9uLXByb2R1Y3QuZW50aXR5JztcbmV4cG9ydCB7IENvdXBvblVzZXIgfSBmcm9tICcuL2VudGl0aWVzL2NvdXBvbi11c2VyLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBPcmRlcnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5leHBvcnQgeyBPcmRlclN0YXR1cywgT3JkZXJTdGF0dXNDb2RlIH0gZnJvbSAnLi9lbnRpdGllcy9vcmRlci1zdGF0dXMuZW50aXR5JztcbmV4cG9ydCB7IE9yZGVyIH0gZnJvbSAnLi9lbnRpdGllcy9vcmRlci5lbnRpdHknO1xuZXhwb3J0IHtcbiAgT3JkZXJJdGVtLFxuICBPcmRlckl0ZW1UeXBlLFxuICBPcmRlckl0ZW1GdWxmaWxsbWVudFN0YXR1cyxcbn0gZnJvbSAnLi9lbnRpdGllcy9vcmRlci1pdGVtLmVudGl0eSc7XG5leHBvcnQgeyBPcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb24gfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLWl0ZW0tYnVuZGxlLXNlbGVjdGlvbi5lbnRpdHknO1xuZXhwb3J0IHsgT3JkZXJTdGF0dXNIaXN0b3J5IH0gZnJvbSAnLi9lbnRpdGllcy9vcmRlci1zdGF0dXMtaGlzdG9yeS5lbnRpdHknO1xuZXhwb3J0IHtcbiAgVXNlclRyYW5zYWN0aW9uLFxuICBUcmFuc2FjdGlvblR5cGUsXG4gIFRyYW5zYWN0aW9uQ2F0ZWdvcnksXG59IGZyb20gJy4vZW50aXRpZXMvdXNlci10cmFuc2FjdGlvbi5lbnRpdHknO1xuZXhwb3J0IHsgUHVyY2hhc2VPcmRlck9yZGVySXRlbSB9IGZyb20gJy4vZW50aXRpZXMvcHVyY2hhc2Utb3JkZXItb3JkZXItaXRlbS5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgRW51bXMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5leHBvcnQgeyBPc05hbWUgfSBmcm9tICcuL3V0aWxzL2VudW1zL29zTmFtZSc7XG5leHBvcnQgeyBQcm9kdWN0QXBwIH0gZnJvbSAnLi91dGlscy9lbnVtcy9wcm9kdWN0QXBwJztcbmV4cG9ydCB7IFZlcnNpb25UeXBlIH0gZnJvbSAnLi91dGlscy9lbnVtcy92ZXJzaW9udHlwZSc7XG5leHBvcnQgeyBMYW5ndWFnZSB9IGZyb20gJy4vdXRpbHMvZW51bXMvbGFuZ3VhZ2UnO1xuZXhwb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuZXhwb3J0IHsgR2VuZGVyIH0gZnJvbSAnLi91dGlscy9lbnVtcy9nZW5kZXInO1xuZXhwb3J0IHsgUHVyY2hhc2VPcmRlclN0YXR1cyB9IGZyb20gJy4vdXRpbHMvZW51bXMvcHVyY2hhc2VPcmRlclN0YXR1cyc7XG5leHBvcnQgeyBTdG9ja01vdmVtZW50VHlwZSB9IGZyb20gJy4vdXRpbHMvZW51bXMvc3RvY2tNb3ZlbWVudFR5cGUnO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTU9ERUwgUkVHSVNUUllcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXREYk1vZGVscygpOiBNb2RlbEN0b3JbXSB7XG4gIHJldHVybiBbXG4gICAgLy8gRXhpc3RpbmdcbiAgICBBcGlLZXksXG4gICAgQXJlYSxcbiAgICBDb3VudHJ5LFxuICAgIFN5c1JvbGUsXG4gICAgU3lzVXNlcixcbiAgICBVc2VyLFxuICAgIFVzZXJEZXZpY2UsXG4gICAgVXNlckFkZHJlc3MsXG4gICAgVXNlckZhdm9yaXRlLFxuICAgIFVzZXJGYXZvcml0ZUNhdGFsb2csXG5cbiAgICAvLyBDYXRhbG9ndWVcbiAgICBDYXRlZ29yeSxcbiAgICBCcmFuZCxcbiAgICBWYXJpYW50VHlwZSxcbiAgICBWYXJpYW50T3B0aW9uLFxuICAgIFByb2R1Y3QsXG4gICAgUHJvZHVjdE1lZGlhLFxuICAgIFByb2R1Y3RWYXJpYW50LFxuICAgIFByb2R1Y3RWYXJpYW50T3B0aW9uLFxuICAgIFRhZyxcbiAgICBQcm9kdWN0VGFnLFxuICAgIEJ1bmRsZSxcbiAgICBCdW5kbGVQcm9kdWN0LFxuICAgIEJ1bmRsZVN0b3JlLFxuXG4gICAgLy8gU3RvcmVzXG4gICAgU3RvcmUsXG4gICAgUHJvZHVjdFN0b3JlLFxuXG4gICAgLy8gSW52ZW50b3J5XG4gICAgSW52ZW50b3J5LFxuICAgIFN0b3JlSW52ZW50b3J5LFxuICAgIEludmVudG9yeVN0b2NrLFxuICAgIFN0b2NrTW92ZW1lbnQsXG4gICAgU2hpcHBpbmdSdWxlLFxuXG4gICAgLy8gUHVyY2hhc2luZ1xuICAgIFZlbmRvcixcbiAgICBWZW5kb3JQcm9kdWN0LFxuICAgIFB1cmNoYXNlT3JkZXIsXG4gICAgUHVyY2hhc2VPcmRlckl0ZW0sXG5cbiAgICAvLyBQZXJtaXNzaW9uc1xuICAgIFBlcm1pc3Npb24sXG4gICAgUm9sZVBlcm1pc3Npb24sXG5cbiAgICAvLyBQYXltZW50XG4gICAgUGF5bWVudEdhdGV3YXksXG4gICAgUGF5bWVudE1ldGhvZCxcbiAgICBQYXltZW50TWV0aG9kQ291bnRyeSxcbiAgICBTdG9yZVBheW1lbnRNZXRob2QsXG5cbiAgICAvLyBDYXJ0XG4gICAgQ2FydCxcbiAgICBDYXJ0SXRlbSxcbiAgICBDYXJ0SXRlbUJ1bmRsZVNlbGVjdGlvbixcblxuICAgIC8vQ291cG9uXG4gICAgQ291cG9uLFxuICAgIENvdXBvblN0b3JlLFxuICAgIENvdXBvblByb2R1Y3QsXG4gICAgQ291cG9uVXNlcixcblxuICAgIC8vIE9yZGVyc1xuICAgIE9yZGVyU3RhdHVzLFxuICAgIE9yZGVyLFxuICAgIE9yZGVySXRlbSxcbiAgICBPcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb24sXG4gICAgT3JkZXJTdGF0dXNIaXN0b3J5LFxuICAgIFVzZXJUcmFuc2FjdGlvbixcbiAgICBQdXJjaGFzZU9yZGVyT3JkZXJJdGVtLFxuXG4gICAgLy8gQmFubmVyc1xuICAgIEJhbm5lcixcblxuICAgIEFwcENvbmZpZyxcbiAgXTtcbn1cbiIsImV4cG9ydCBlbnVtIEdlbmRlciB7XG4gIE1BTEUgPSAnTWFsZScsXG4gIEZFTUFMRSA9ICdGZW1hbGUnLFxuICBQUkVGRVJfTk9UX1RPX1NBWSA9ICdQcmVmZXIgbm90IHRvIHNheScsXG59XG4iLCJleHBvcnQgZW51bSBMYW5ndWFnZSB7XG4gIEVOR0xJU0ggPSAnZW4nLFxuICBBUkFCSUMgPSAnYXInLFxufVxuIiwiZXhwb3J0IGVudW0gT3NOYW1lIHtcbiAgQU5EUk9JRCA9ICdhbmRyb2lkJyxcbiAgSU9TID0gJ2lPUycsXG4gIFdFQiA9ICd3ZWInLFxufVxuIiwiZXhwb3J0IGVudW0gUHJvZHVjdEFwcCB7XG4gIERBU0hCT0FSRCA9ICdkYXNoYm9hcmQnLFxuICBVU0VSX0FQUCA9ICd1c2VyYXBwJyxcbn1cbiIsImV4cG9ydCBlbnVtIFB1cmNoYXNlT3JkZXJTdGF0dXMge1xuICBEUkFGVCA9ICdkcmFmdCcsXG4gIFNFTlRfVE9fVkVORE9SID0gJ3NlbnRfdG9fdmVuZG9yJyxcbiAgUEFSVElBTExZX1JFQ0VJVkVEID0gJ3BhcnRpYWxseV9yZWNlaXZlZCcsXG4gIEZVTExZX1JFQ0VJVkVEID0gJ2Z1bGx5X3JlY2VpdmVkJyxcbiAgQ0xPU0VEID0gJ2Nsb3NlZCcsXG4gIENBTkNFTExFRCA9ICdjYW5jZWxsZWQnLFxufVxuIiwiZXhwb3J0IGVudW0gU3RhdHVzIHtcbiAgQUNUSVZFID0gJ2FjdGl2ZScsXG4gIElOX0FDVElWRSA9ICdpbmFjdGl2ZScsXG59XG4iLCJleHBvcnQgZW51bSBTdG9ja01vdmVtZW50VHlwZSB7XG4gIC8vIFN0b2NrIGNvbWluZyBpblxuICBSRUNFSVZFRCA9ICdyZWNlaXZlZCcsICAgICAgICAgICAvLyBQTyByZWNlaXZlZCBpbnRvIGludmVudG9yeVxuXG4gIC8vIFN0b2NrIGdvaW5nIG91dCBvciBiZWluZyBoZWxkXG4gIFJFU0VSVkVEID0gJ3Jlc2VydmVkJywgICAgICAgICAgIC8vIFJlc2VydmVkIGZvciBhIHBlbmRpbmcgb3JkZXJcbiAgUkVTRVJWQVRJT05fUkVMRUFTRUQgPSAncmVzZXJ2YXRpb25fcmVsZWFzZWQnLCAvLyBPcmRlciBjYW5jZWxsZWQsIHN0b2NrIGZyZWVkXG5cbiAgLy8gTWFudWFsIGFkanVzdG1lbnRzXG4gIEFESlVTVE1FTlRfQUREID0gJ2FkanVzdG1lbnRfYWRkJywgICAgICAgLy8gTWFudWFsIHN0b2NrIGluY3JlYXNlXG4gIEFESlVTVE1FTlRfUkVNT1ZFID0gJ2FkanVzdG1lbnRfcmVtb3ZlJywgLy8gTWFudWFsIHN0b2NrIGRlY3JlYXNlIChkYW1hZ2UsIGxvc3MpXG5cbiAgLy8gUmV0dXJuc1xuICBSRVRVUk5FRF9GUk9NX0NVU1RPTUVSID0gJ3JldHVybmVkX2Zyb21fY3VzdG9tZXInLFxuICBSRVRVUk5FRF9UT19WRU5ET1IgPSAncmV0dXJuZWRfdG9fdmVuZG9yJyxcblxuICAvLyBUcmFuc2ZlcnNcbiAgVFJBTlNGRVJfSU4gPSAndHJhbnNmZXJfaW4nLCAgIC8vIE1vdmVkIGluIGZyb20gYW5vdGhlciBpbnZlbnRvcnlcbiAgVFJBTlNGRVJfT1VUID0gJ3RyYW5zZmVyX291dCcsIC8vIE1vdmVkIG91dCB0byBhbm90aGVyIGludmVudG9yeVxufVxuIiwiZXhwb3J0IGVudW0gVmVyc2lvblR5cGUge1xuICBPUFRJT05BTCA9ICdvcHRpb25hbCcsXG4gIE1BTkRBVE9SWSA9ICdtYW5kYXRvcnknLFxufVxuIiwiaW1wb3J0IHsgTW9kdWxlIH0gZnJvbSAnQG5lc3Rqcy9jb21tb24nO1xuaW1wb3J0IHsgU2VxdWVsaXplTW9kdWxlIH0gZnJvbSAnQG5lc3Rqcy9zZXF1ZWxpemUnO1xuaW1wb3J0IHsgQ29uZmlnTW9kdWxlIH0gZnJvbSAnQG5lc3Rqcy9jb25maWcnO1xuaW1wb3J0IHsgZ2V0RGJNb2RlbHMgfSBmcm9tICdAYXBwL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeSc7XG5cbkBNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29uZmlnTW9kdWxlLmZvclJvb3Qoe1xuICAgICAgaXNHbG9iYWw6IHRydWUsXG4gICAgfSksXG4gICAgU2VxdWVsaXplTW9kdWxlLmZvclJvb3Qoe1xuICAgICAgZGlhbGVjdDogJ215c3FsJyxcbiAgICAgIGhvc3Q6IHByb2Nlc3MuZW52Lk1ZU1FMX0hPU1QsXG4gICAgICBkYXRhYmFzZTogcHJvY2Vzcy5lbnYuTVlTUUxfREFUQUJBU0UsXG4gICAgICB1c2VybmFtZTogcHJvY2Vzcy5lbnYuTVlTUUxfVVNFUixcbiAgICAgIHBhc3N3b3JkOiBwcm9jZXNzLmVudi5NWVNRTF9QQVNTV09SRCxcbiAgICAgIHBvcnQ6IDMzMDYsXG4gICAgICBtb2RlbHM6IGdldERiTW9kZWxzKCksXG4gICAgICBhdXRvTG9hZE1vZGVsczogdHJ1ZSxcbiAgICAgIHN5bmNocm9uaXplOiB0cnVlLFxuICAgICAgbG9nZ2luZzogZmFsc2UsXG4gICAgICBkZWZpbmU6IHtcbiAgICAgICAgdGltZXN0YW1wczogdHJ1ZSxcbiAgICAgICAgcGFyYW5vaWQ6IHRydWUsXG4gICAgICB9LFxuICAgIH0pLFxuICBdLFxuICBwcm92aWRlcnM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBBcHBNb2R1bGUge31cbiIsIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIkBuZXN0anMvY29tbW9uXCIpOyIsIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIkBuZXN0anMvY29uZmlnXCIpOyIsIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIkBuZXN0anMvY29yZVwiKTsiLCJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCJAbmVzdGpzL3NlcXVlbGl6ZVwiKTsiLCJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCJzZXF1ZWxpemUtdHlwZXNjcmlwdFwiKTsiLCJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCJ0c2NvbmZpZy1wYXRocy9yZWdpc3RlclwiKTsiLCIvLyBUaGUgbW9kdWxlIGNhY2hlXG52YXIgX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fID0ge307XG5cbi8vIFRoZSByZXF1aXJlIGZ1bmN0aW9uXG5mdW5jdGlvbiBfX3dlYnBhY2tfcmVxdWlyZV9fKG1vZHVsZUlkKSB7XG5cdC8vIENoZWNrIGlmIG1vZHVsZSBpcyBpbiBjYWNoZVxuXHR2YXIgY2FjaGVkTW9kdWxlID0gX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fW21vZHVsZUlkXTtcblx0aWYgKGNhY2hlZE1vZHVsZSAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0cmV0dXJuIGNhY2hlZE1vZHVsZS5leHBvcnRzO1xuXHR9XG5cdC8vIENoZWNrIGlmIG1vZHVsZSBleGlzdHMgKGRldmVsb3BtZW50IG9ubHkpXG5cdGlmIChfX3dlYnBhY2tfbW9kdWxlc19fW21vZHVsZUlkXSA9PT0gdW5kZWZpbmVkKSB7XG5cdFx0dmFyIGUgPSBuZXcgRXJyb3IoXCJDYW5ub3QgZmluZCBtb2R1bGUgJ1wiICsgbW9kdWxlSWQgKyBcIidcIik7XG5cdFx0ZS5jb2RlID0gJ01PRFVMRV9OT1RfRk9VTkQnO1xuXHRcdHRocm93IGU7XG5cdH1cblx0Ly8gQ3JlYXRlIGEgbmV3IG1vZHVsZSAoYW5kIHB1dCBpdCBpbnRvIHRoZSBjYWNoZSlcblx0dmFyIG1vZHVsZSA9IF9fd2VicGFja19tb2R1bGVfY2FjaGVfX1ttb2R1bGVJZF0gPSB7XG5cdFx0Ly8gbm8gbW9kdWxlLmlkIG5lZWRlZFxuXHRcdC8vIG5vIG1vZHVsZS5sb2FkZWQgbmVlZGVkXG5cdFx0ZXhwb3J0czoge31cblx0fTtcblxuXHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cblx0X193ZWJwYWNrX21vZHVsZXNfX1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXyk7XG5cblx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcblx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xufVxuXG4iLCJpbXBvcnQgJ3RzY29uZmlnLXBhdGhzL3JlZ2lzdGVyJztcbmltcG9ydCB7IE5lc3RGYWN0b3J5IH0gZnJvbSAnQG5lc3Rqcy9jb3JlJztcbmltcG9ydCB7IEFwcE1vZHVsZSB9IGZyb20gJy4vYXBwLm1vZHVsZSc7XG5pbXBvcnQgeyBTZXF1ZWxpemUgfSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5cbmFzeW5jIGZ1bmN0aW9uIGJvb3RzdHJhcCgpIHtcbiAgY29uc3QgYXBwID0gYXdhaXQgTmVzdEZhY3RvcnkuY3JlYXRlKEFwcE1vZHVsZSwgeyBjb3JzOiB0cnVlIH0pO1xuICBjb25zdCBzZXF1ZWxpemUgPSBhcHAuZ2V0KFNlcXVlbGl6ZSk7XG4gIGF3YWl0IHNlcXVlbGl6ZS5zeW5jKHsgYWx0ZXI6IHRydWUgfSk7XG4gIGF3YWl0IGFwcC5saXN0ZW4ocHJvY2Vzcy5lbnYuU0VSVkVSX1BPUlQgPz8gOTAwNCk7XG59XG5ib290c3RyYXAoKTtcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=
5188
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ2hFLE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsZ0NBQVMsQ0FBQyxDQUFDO0lBQ3JDLE1BQU0sU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3RDLE1BQU0sR0FBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsQ0FBQztBQUNwRCxDQUFDO0FBQ0QsU0FBUyxFQUFFLENBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9hcGlrZXkuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2FwcC1jb25maWcuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2FyZWEuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2Jhbm5lci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvYnJhbmQuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2J1bmRsZS1wcm9kdWN0LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9idW5kbGUtc3RvcmUuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2J1bmRsZS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvY2FydC1pdGVtLWJ1bmRsZS1zZWxlY3Rpb24uZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2NhcnQtaXRlbS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvY2FydC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvY2F0ZWdvcnkuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2NvdW50cnkuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2NvdXBvbi1wcm9kdWN0LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9jb3Vwb24tc3RvcmUuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2NvdXBvbi11c2VyLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9jb3Vwb24uZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2ludmVudG9yeS1zdG9jay5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvaW52ZW50b3J5LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9vcmRlci1pdGVtLWJ1bmRsZS1zZWxlY3Rpb24uZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL29yZGVyLWl0ZW0uZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL29yZGVyLXN0YXR1cy1oaXN0b3J5LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9vcmRlci1zdGF0dXMuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL29yZGVyLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wYXltZW50LWdhdGV3YXkuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3BheW1lbnQtbWV0aG9kLWNvdW50cnkuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3BheW1lbnQtbWV0aG9kLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wZXJtaXNzaW9uLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wcm9kdWN0LW1lZGlhLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wcm9kdWN0LXN0b3JlLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wcm9kdWN0LXRhZy5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcHJvZHVjdC12YXJpYW50LW9wdGlvbi5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcHJvZHVjdC12YXJpYW50LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wcm9kdWN0LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci1pdGVtLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci1vcmRlci1pdGVtLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcm9sZS1wZXJtaXNzaW9uLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9zaGlwcGluZy1ydWxlLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9zdG9jay1tb3ZlbWVudC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvc3RvcmUtaW52ZW50b3J5LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9zdG9yZS1wYXltZW50LW1ldGhvZC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvc3RvcmUuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3N5cy5yb2xlLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9zeXMudXNlci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdGFnLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy91c2VyLWFkZHJlc3MuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3VzZXItZmF2b3JpdGUtY2F0YWxvZy5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdXNlci1mYXZvcml0ZS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdXNlci10cmFuc2FjdGlvbi5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdXNlci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdXNlckRldmljZS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdmFyaWFudC1vcHRpb24uZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3ZhcmlhbnQtdHlwZS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdmVuZG9yLXByb2R1Y3QuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3ZlbmRvci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvaW5kZXgudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvdXRpbHMvZW51bXMvZ2VuZGVyLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL3V0aWxzL2VudW1zL2xhbmd1YWdlLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL3V0aWxzL2VudW1zL29zTmFtZS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy91dGlscy9lbnVtcy9wcm9kdWN0QXBwLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL3V0aWxzL2VudW1zL3B1cmNoYXNlT3JkZXJTdGF0dXMudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvdXRpbHMvZW51bXMvc3RhdHVzLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL3V0aWxzL2VudW1zL3N0b2NrTW92ZW1lbnRUeXBlLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL3V0aWxzL2VudW1zL3ZlcnNpb250eXBlLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vc3JjL2FwcC5tb2R1bGUudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvZXh0ZXJuYWwgY29tbW9uanMgXCJAbmVzdGpzL2NvbW1vblwiIiwid2VicGFjazovL3R0LWVudGl0aWVzL2V4dGVybmFsIGNvbW1vbmpzIFwiQG5lc3Rqcy9jb25maWdcIiIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy9leHRlcm5hbCBjb21tb25qcyBcIkBuZXN0anMvY29yZVwiIiwid2VicGFjazovL3R0LWVudGl0aWVzL2V4dGVybmFsIGNvbW1vbmpzIFwiQG5lc3Rqcy9zZXF1ZWxpemVcIiIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy9leHRlcm5hbCBjb21tb25qcyBcInNlcXVlbGl6ZS10eXBlc2NyaXB0XCIiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvZXh0ZXJuYWwgY29tbW9uanMgXCJ0c2NvbmZpZy1wYXRocy9yZWdpc3RlclwiIiwid2VicGFjazovL3R0LWVudGl0aWVzL3dlYnBhY2svYm9vdHN0cmFwIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vc3JjL21haW4udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sdW1uLCBEYXRhVHlwZSwgTW9kZWwsIFRhYmxlIH0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcbmltcG9ydCB7IFZlcnNpb25UeXBlIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvdmVyc2lvbnR5cGUnO1xuaW1wb3J0IHsgT3NOYW1lIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvb3NOYW1lJztcbmltcG9ydCB7IFByb2R1Y3RBcHAgfSBmcm9tICcuLi91dGlscy9lbnVtcy9wcm9kdWN0QXBwJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgQXBpS2V5IGV4dGVuZHMgTW9kZWwge1xuICBAQ29sdW1uXG4gIGRlY2xhcmUgaGFzaGVkQXBpS2V5OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhPc05hbWUpKSB9KVxuICBkZWNsYXJlIG9zTmFtZTogT3NOYW1lO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoUHJvZHVjdEFwcCkpIH0pXG4gIGRlY2xhcmUgYXBwTmFtZTogUHJvZHVjdEFwcDtcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgYXBwVmVyc2lvbjogc3RyaW5nO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBleHBpcnlEYXRlOiBEYXRlO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc1JlbGVhc2VkOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhWZXJzaW9uVHlwZSkpLFxuICAgIGRlZmF1bHRWYWx1ZTogVmVyc2lvblR5cGUuT1BUSU9OQUwsXG4gIH0pXG4gIGRlY2xhcmUgdmVyc2lvblR5cGU6IFZlcnNpb25UeXBlO1xufVxuIiwiaW1wb3J0IHsgQ29sdW1uLCBEYXRhVHlwZSwgTW9kZWwsIFRhYmxlIH0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBBcHBDb25maWcgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyB1bmlxdWU6IHRydWUgfSlcbiAga2V5OiBzdHJpbmc7XG4gIEBDb2x1bW4oRGF0YVR5cGUuSlNPTilcbiAgdmFsdWU6IEpTT047XG59XG4iLCJpbXBvcnQge1xuICBCZWxvbmdzVG8sXG4gIENvbHVtbixcbiAgRm9yZWlnbktleSxcbiAgTW9kZWwsXG4gIFRhYmxlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIEFyZWEgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBARm9yZWlnbktleSgoKSA9PiBDb3VudHJ5KVxuICBAQ29sdW1uKHtcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICAgIHZhbGlkYXRlOiB7IG5vdE51bGw6IHsgbXNnOiAnQ291bnR5IElkIFJlcXVpcmVkJyB9IH0sXG4gIH0pXG4gIGRlY2xhcmUgY291bnRyeUlkOiBudW1iZXI7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIHBhcmVudElkPzogbnVtYmVyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ291bnRyeSlcbiAgZGVjbGFyZSBjb3VudHJ5OiBDb3VudHJ5O1xufVxuIiwiaW1wb3J0IHtcbiAgTW9kZWwsXG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIERhdGFUeXBlLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcblxuLy8g4pSA4pSAIFdoZXJlIHRoZSBiYW5uZXIgYXBwZWFycyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCBlbnVtIEJhbm5lclBsYWNlbWVudCB7XG4gIEhPTUUgPSAnaG9tZScsIC8vIGhvcml6b250YWwgbGlzdCBvbiB0aGUgaG9tZSBwYWdlXG4gIENBVEVHT1JZID0gJ2NhdGVnb3J5JywgLy8gdG9wIG9mIGEgc3BlY2lmaWMgY2F0ZWdvcnkgcGFnZVxuICBCUkFORCA9ICdicmFuZCcsIC8vIHRvcCBvZiBhIHNwZWNpZmljIGJyYW5kIHBhZ2VcbiAgU0VBUkNIID0gJ3NlYXJjaCcsIC8vIHNlYXJjaCByZXN1bHRzIHBhZ2VcbiAgQ1VTVE9NID0gJ2N1c3RvbScsIC8vIGFueSBmdXR1cmUgcGxhY2VtZW50IOKAlCBpZGVudGlmaWVkIGJ5IHBsYWNlbWVudEtleVxufVxuXG5leHBvcnQgZW51bSBCYW5uZXJTdGF0dXMge1xuICBBQ1RJVkUgPSAnYWN0aXZlJyxcbiAgSU5BQ1RJVkUgPSAnaW5hY3RpdmUnLFxuICBEUkFGVCA9ICdkcmFmdCcsXG59XG5cbi8vIOKUgOKUgCBGaWx0ZXIgc2hhcGUgc3RvcmVkIGluIHRoZSBKU09OIGNvbHVtbiDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbi8vIEFsbCBmaWVsZHMgYXJlIG9wdGlvbmFsIOKAlCBhbnkgY29tYmluYXRpb24gaXMgdmFsaWQuXG4vLyBBbiBlbXB0eSBvYmplY3Qge30gbWVhbnMgXCJzaG93IGV2ZXJ5dGhpbmdcIiAobm8gZmlsdGVyKS5cbmV4cG9ydCBpbnRlcmZhY2UgQmFubmVyRmlsdGVycyB7XG4gIGNhdGVnb3J5SWRzPzogbnVtYmVyW107IC8vIHByb2R1Y3RzL2J1bmRsZXMgaW4gdGhlc2UgY2F0ZWdvcmllc1xuICBicmFuZElkcz86IG51bWJlcltdOyAvLyBwcm9kdWN0cyBiZWxvbmdpbmcgdG8gdGhlc2UgYnJhbmRzXG4gIHRhZ1NsdWdzPzogc3RyaW5nW107IC8vIHByb2R1Y3RzIHRhZ2dlZCB3aXRoIGFueSBvZiB0aGVzZSBzbHVnc1xuICB0eXBlcz86ICgncHJvZHVjdCcgfCAnYnVuZGxlJylbXTsgLy8gbGltaXQgdG8gb25seSBwcm9kdWN0cyBvciBvbmx5IGJ1bmRsZXNcbiAgaXNGZWF0dXJlZD86IGJvb2xlYW47IC8vIG9ubHkgZmVhdHVyZWQgaXRlbXNcbiAgbWluUHJpY2U/OiBudW1iZXI7XG4gIG1heFByaWNlPzogbnVtYmVyO1xuICAvLyBGdXR1cmU6IGNvbGxlY3Rpb25JZCwgcHJvbW90aW9uSWQsIGV0Yy5cbn1cblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgQmFubmVyIGV4dGVuZHMgTW9kZWwge1xuICAvLyDilIDilIAgSWRlbnRpdHkg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdGl0bGVFbjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdGl0bGVBcjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBzdWJ0aXRsZUVuOiBzdHJpbmcgfCBudWxsO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBzdWJ0aXRsZUFyOiBzdHJpbmcgfCBudWxsO1xuXG4gIC8vIOKUgOKUgCBNZWRpYSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBjb3ZlckltYWdlOiBzdHJpbmc7IC8vIFMzIFVSTFxuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjb3ZlckltYWdlTW9iaWxlOiBzdHJpbmcgfCBudWxsOyAvLyBvcHRpb25hbCBzZXBhcmF0ZSBtb2JpbGUgY3JvcFxuXG4gIC8vIOKUgOKUgCBQbGFjZW1lbnQg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIC8vIFdIRVJFIHRoaXMgYmFubmVyIGFwcGVhcnNcbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKEJhbm5lclBsYWNlbWVudCkpLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gICAgZGVmYXVsdFZhbHVlOiBCYW5uZXJQbGFjZW1lbnQuSE9NRSxcbiAgfSlcbiAgZGVjbGFyZSBwbGFjZW1lbnQ6IEJhbm5lclBsYWNlbWVudDtcblxuICAvLyBGb3IgcGxhY2VtZW50PWNhdGVnb3J5IOKGkiBwbGFjZW1lbnRSZWZJZCA9IGNhdGVnb3J5SWRcbiAgLy8gRm9yIHBsYWNlbWVudD1icmFuZCAgICDihpIgcGxhY2VtZW50UmVmSWQgPSBicmFuZElkXG4gIC8vIEZvciBwbGFjZW1lbnQ9aG9tZS9zZWFyY2gvY3VzdG9tIOKGkiBudWxsXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwbGFjZW1lbnRSZWZJZD86IG51bWJlcjtcblxuICAvLyBIdW1hbi1yZWFkYWJsZSBrZXkgZm9yIGN1c3RvbSBwbGFjZW1lbnRzIChlLmcuIFwicmFtYWRhbl9zYWxlXCIsIFwiY2hlY2tvdXRfdG9wXCIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwbGFjZW1lbnRLZXk/OiBzdHJpbmc7XG5cbiAgLy8g4pSA4pSAIENhdGFsb2cgZmlsdGVycyAod2hhdCBwcm9kdWN0cy9idW5kbGVzIGFwcGVhciBJTlNJREUgdGhlIGJhbm5lcikg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIC8vIFN0b3JlZCBhcyBKU09OIOKAlCByZXNvbHZlZCBhdCBydW50aW1lIHZpYSBDYXRhbG9nTGlzdFNlcnZpY2VcbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuSlNPTixcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICAgIGRlZmF1bHRWYWx1ZToge30sXG4gIH0pXG4gIGRlY2xhcmUgZmlsdGVyczogQmFubmVyRmlsdGVycztcblxuICAvLyBNYXggbnVtYmVyIG9mIGl0ZW1zIHRvIHJldHVybiBpbnNpZGUgdGhlIGJhbm5lciAobnVsbCA9IHVzZSBBUEkgZGVmYXVsdClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGl0ZW1MaW1pdD86IG51bWJlcjtcblxuICAvLyDilIDilIAgQ1RBIChvcHRpb25hbCB0YXAgYWN0aW9uIG9uIHRoZSBiYW5uZXIgY292ZXIgaXRzZWxmKSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGN0YUxhYmVsRW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGN0YUxhYmVsQXI/OiBzdHJpbmc7XG5cbiAgLy8gRGVlcCBsaW5rIG9yIHdlYiBVUkwgdGhlIGNvdmVyIGltYWdlIHRhcHMgdG9cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGN0YVVybD86IHN0cmluZztcblxuICAvLyDilIDilIAgU2NoZWR1bGluZyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRBVEUsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHN0YXJ0RGF0ZT86IERhdGU7IC8vIG51bGwgPSBzaG93IGltbWVkaWF0ZWx5XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRBVEUsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGVuZERhdGU/OiBEYXRlOyAvLyBudWxsID0gc2hvdyBpbmRlZmluaXRlbHlcblxuICAvLyDilIDilIAgRGlzcGxheSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHNvcnRPcmRlcjogbnVtYmVyO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhCYW5uZXJTdGF0dXMpKSxcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICAgIGRlZmF1bHRWYWx1ZTogQmFubmVyU3RhdHVzLkRSQUZULFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogQmFubmVyU3RhdHVzO1xufVxuIiwiaW1wb3J0IHsgVGFibGUsIENvbHVtbiwgTW9kZWwsIERhdGFUeXBlLCBIYXNNYW55IH0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgQnJhbmQgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Fbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Bcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbG9nbz86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgd2Vic2l0ZT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgc29ydE9yZGVyOiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBGb3JlaWduS2V5LCBCZWxvbmdzVG8sIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBCdW5kbGUgfSBmcm9tICcuL2J1bmRsZS5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFZhcmlhbnQgfSBmcm9tICcuL3Byb2R1Y3QtdmFyaWFudC5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBCdW5kbGVQcm9kdWN0IGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBCdW5kbGUpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgYnVuZGxlSWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIC8vIE9wdGlvbmFsIOKAlCBpZiBzZXQsIG9ubHkgdGhpcyBzcGVjaWZpYyB2YXJpYW50IGlzIHBhcnQgb2YgdGhlIGJ1bmRsZVxuICAvLyBudWxsID0gY3VzdG9tZXIgY2FuIHBpY2sgYW55IHZhcmlhbnQgb2YgdGhpcyBwcm9kdWN0XG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdFZhcmlhbnRJZD86IG51bWJlcjtcblxuICAvLyBEaXNwbGF5IG9yZGVyIGluc2lkZSB0aGUgYnVuZGxlIHBpY2tlciBVSVxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgc29ydE9yZGVyOiBudW1iZXI7XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IEJ1bmRsZSlcbiAgZGVjbGFyZSBidW5kbGU6IEJ1bmRsZTtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3QpXG4gIGRlY2xhcmUgcHJvZHVjdDogUHJvZHVjdDtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBkZWNsYXJlIHZhcmlhbnQ/OiBQcm9kdWN0VmFyaWFudDtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBGb3JlaWduS2V5LCBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgQnVuZGxlIH0gZnJvbSAnLi9idW5kbGUuZW50aXR5JztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnLi9zdG9yZS5lbnRpdHknO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgQnVuZGxlU3RvcmUgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IEJ1bmRsZSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBidW5kbGVJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFN0b3JlKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHN0b3JlSWQ6IG51bWJlcjtcblxuICAvLyBTdG9yZS1zcGVjaWZpYyByZWd1bGFyIHByaWNlIOKAlCBudWxsID0gdXNlIGJ1bmRsZS5kZWZhdWx0UHJpY2VcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcmljZT86IG51bWJlcjtcblxuICAvLyBTYWxlIHByaWNlIOKAlCBhY3RpdmUgb25seSB3aXRoaW4gc2FsZVN0YXJ0RGF0ZSDihpIgc2FsZUVuZERhdGVcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBzYWxlUHJpY2U/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRBVEUsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHNhbGVTdGFydERhdGU/OiBEYXRlO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBzYWxlRW5kRGF0ZT86IERhdGU7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBGb3JlaWduS2V5LCBCZWxvbmdzVG8sXG4gIEhhc01hbnksIEJlbG9uZ3NUb01hbnksIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBDYXRlZ29yeSB9IGZyb20gJy4vY2F0ZWdvcnkuZW50aXR5JztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnLi9zdG9yZS5lbnRpdHknO1xuaW1wb3J0IHsgQnVuZGxlUHJvZHVjdCB9IGZyb20gJy4vYnVuZGxlLXByb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IEJ1bmRsZVN0b3JlIH0gZnJvbSAnLi9idW5kbGUtc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIEJ1bmRsZSBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIHVuaXF1ZTogdHJ1ZSB9KVxuICBkZWNsYXJlIHNrdTogc3RyaW5nOyAvLyBCdW5kbGUgU0tVIGUuZy4gQk5ETC0wMDFcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVFbjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUFyOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlc2NyaXB0aW9uRW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlc2NyaXB0aW9uQXI/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGltYWdlPzogc3RyaW5nO1xuXG4gIC8vIFRvdGFsIHByb2R1Y3RzIGF2YWlsYWJsZSB0byBjaG9vc2UgZnJvbSBpbiB0aGlzIGJ1bmRsZVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgdG90YWxQcm9kdWN0czogbnVtYmVyO1xuXG4gIC8vIEhvdyBtYW55IHRoZSBjdXN0b21lciBtdXN0IGNob29zZVxuICAvLyBlLmcuIHRvdGFsUHJvZHVjdHM9MTAsIGNob2ljZUNvdW50PTMg4oaSIHBpY2sgYW55IDMgZnJvbSAxMFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAxIH0pXG4gIGRlY2xhcmUgY2hvaWNlQ291bnQ6IG51bWJlcjtcblxuICAvLyBEZWZhdWx0IHByaWNlIChmYWxsYmFjayBpZiBubyBzdG9yZS1zcGVjaWZpYyBwcmljZSlcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBkZWZhdWx0UHJpY2U6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBDYXRlZ29yeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNhdGVnb3J5SWQ/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHNvcnRPcmRlcjogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaXNGZWF0dXJlZDogYm9vbGVhbjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBTdGF0dXMuQUNUSVZFLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogU3RhdHVzO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBDYXRlZ29yeSlcbiAgZGVjbGFyZSBjYXRlZ29yeT86IENhdGVnb3J5O1xuXG4gIEBIYXNNYW55KCgpID0+IEJ1bmRsZVByb2R1Y3QpXG4gIGRlY2xhcmUgYnVuZGxlUHJvZHVjdHM6IEJ1bmRsZVByb2R1Y3RbXTtcblxuICBAQmVsb25nc1RvTWFueSgoKSA9PiBQcm9kdWN0LCAoKSA9PiBCdW5kbGVQcm9kdWN0KVxuICBkZWNsYXJlIHByb2R1Y3RzOiBQcm9kdWN0W107XG5cbiAgQEhhc01hbnkoKCkgPT4gQnVuZGxlU3RvcmUpXG4gIGRlY2xhcmUgYnVuZGxlU3RvcmVzOiBCdW5kbGVTdG9yZVtdO1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFN0b3JlLCAoKSA9PiBCdW5kbGVTdG9yZSlcbiAgZGVjbGFyZSBzdG9yZXM6IFN0b3JlW107XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgRm9yZWlnbktleSwgQmVsb25nc1RvLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBDYXJ0SXRlbSB9IGZyb20gJy4vY2FydC1pdGVtLmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0VmFyaWFudCB9IGZyb20gJy4vcHJvZHVjdC12YXJpYW50LmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIENhcnRJdGVtQnVuZGxlU2VsZWN0aW9uIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBDYXJ0SXRlbSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBjYXJ0SXRlbUlkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwcm9kdWN0SWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RWYXJpYW50SWQ/OiBudW1iZXI7XG5cbiAgLy8gRGlzcGxheSBvcmRlciB3aXRoaW4gdGhlIGJ1bmRsZSBzZWxlY3Rpb25cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHNvcnRPcmRlcjogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBDYXJ0SXRlbSlcbiAgZGVjbGFyZSBjYXJ0SXRlbTogQ2FydEl0ZW07XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0KVxuICBkZWNsYXJlIHByb2R1Y3Q6IFByb2R1Y3Q7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgZGVjbGFyZSB2YXJpYW50PzogUHJvZHVjdFZhcmlhbnQ7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgRm9yZWlnbktleSwgQmVsb25nc1RvLFxuICBIYXNNYW55LCBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgQ2FydCB9IGZyb20gJy4vY2FydC5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFZhcmlhbnQgfSBmcm9tICcuL3Byb2R1Y3QtdmFyaWFudC5lbnRpdHknO1xuaW1wb3J0IHsgQnVuZGxlIH0gZnJvbSAnLi9idW5kbGUuZW50aXR5JztcbmltcG9ydCB7IENhcnRJdGVtQnVuZGxlU2VsZWN0aW9uIH0gZnJvbSAnLi9jYXJ0LWl0ZW0tYnVuZGxlLXNlbGVjdGlvbi5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBDYXJ0SXRlbVR5cGUge1xuICBQUk9EVUNUID0gJ3Byb2R1Y3QnLFxuICBCVU5ETEUgID0gJ2J1bmRsZScsXG59XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIENhcnRJdGVtIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBDYXJ0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGNhcnRJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhDYXJ0SXRlbVR5cGUpKSxcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICB9KVxuICBkZWNsYXJlIGl0ZW1UeXBlOiBDYXJ0SXRlbVR5cGU7XG5cbiAgLy8g4pSA4pSAIFByb2R1Y3QgZmllbGRzIChudWxsIHdoZW4gaXRlbVR5cGUgPSBidW5kbGUpIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdElkPzogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdFZhcmlhbnRJZD86IG51bWJlcjtcblxuICAvLyDilIDilIAgQnVuZGxlIGZpZWxkcyAobnVsbCB3aGVuIGl0ZW1UeXBlID0gcHJvZHVjdCkg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBGb3JlaWduS2V5KCgpID0+IEJ1bmRsZSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGJ1bmRsZUlkPzogbnVtYmVyO1xuXG4gIC8vIENvbXBvc2VkIFNLVSBidWlsdCBhdCBzZWxlY3Rpb24gdGltZSBlLmcuIEJOREwtMDAxK1BFUkYtTS0wMDEtVjMrUEVSRi1XLTAwMlxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY29tcG9zZWRTa3U/OiBzdHJpbmc7XG5cbiAgLy8g4pSA4pSAIFNoYXJlZCDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMSB9KVxuICBkZWNsYXJlIHF1YW50aXR5OiBudW1iZXI7XG5cbiAgLy8gUHJpY2UgY2FwdHVyZWQgYXQgdGltZSBvZiBhZGRpbmcg4oCUIHNvIHByaWNlIGNoYW5nZXMgZG9uJ3Qgc2lsZW50bHkgdXBkYXRlIGNhcnRcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdW5pdFByaWNlOiBudW1iZXI7XG5cbiAgLy8g4pSA4pSAIFN0b2NrIGZsYWcg4oCUIHNldCB0cnVlIGJ5IHRoZSBzdG9jay1jaGVjayBlbmRwb2ludCDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgLy8gQ2xlYXJlZCB3aGVuIHVzZXIgdXBkYXRlcyBxdHkgb3IgaXRlbSBpcyByZS12YWxpZGF0ZWRcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc091dE9mU3RvY2s6IGJvb2xlYW47XG5cbiAgLy8g4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IENhcnQpXG4gIGRlY2xhcmUgY2FydDogQ2FydDtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3QpXG4gIGRlY2xhcmUgcHJvZHVjdD86IFByb2R1Y3Q7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgZGVjbGFyZSB2YXJpYW50PzogUHJvZHVjdFZhcmlhbnQ7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBCdW5kbGUpXG4gIGRlY2xhcmUgYnVuZGxlPzogQnVuZGxlO1xuXG4gIEBIYXNNYW55KCgpID0+IENhcnRJdGVtQnVuZGxlU2VsZWN0aW9uKVxuICBkZWNsYXJlIGJ1bmRsZVNlbGVjdGlvbnM6IENhcnRJdGVtQnVuZGxlU2VsZWN0aW9uW107XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgRm9yZWlnbktleSwgQmVsb25nc1RvLFxuICBIYXNNYW55LCBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4vdXNlci5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuL3N0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBDYXJ0SXRlbSB9IGZyb20gJy4vY2FydC1pdGVtLmVudGl0eSc7XG5cbmV4cG9ydCBlbnVtIENhcnRTdGF0dXMge1xuICBBQ1RJVkUgPSAnYWN0aXZlJywgLy8gSW4gdXNlXG4gIFBFTkRJTkdfUEFZTUVOVCA9ICdwZW5kaW5nX3BheW1lbnQnLCAvLyBPcmRlciBwbGFjZWQsIGF3YWl0aW5nIHBheW1lbnQg4oCUIGNhcnQgZnJvemVuIGJ1dCByZWNvdmVyYWJsZVxuICBNRVJHRUQgPSAnbWVyZ2VkJywgLy8gR3Vlc3QgY2FydCBtZXJnZWQgaW50byB1c2VyIGNhcnRcbiAgQ09OVkVSVEVEID0gJ2NvbnZlcnRlZCcsIC8vIENvbnZlcnRlZCB0byBhbiBvcmRlclxuICBBQkFORE9ORUQgPSAnYWJhbmRvbmVkJywgLy8gRXhwaXJlZCAvIG5vdCB1c2VkXG59XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIENhcnQgZXh0ZW5kcyBNb2RlbCB7XG4gIC8vIOKUgOKUgCBJZGVudGl0eSDigJQgb25lIG9mIHRoZXNlIHR3byB3aWxsIGFsd2F5cyBiZSBzZXQsIG5ldmVyIGJvdGggbnVsbCDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICAvLyBMb2dnZWQtaW4gdXNlciDigJQgbnVsbCBmb3IgZ3Vlc3RzXG4gIEBGb3JlaWduS2V5KCgpID0+IFVzZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSB1c2VySWQ/OiBudW1iZXI7XG5cbiAgLy8gR3Vlc3QgaWRlbnRpZmllciDigJQgVVVJRCBnZW5lcmF0ZWQgb24gZmlyc3QgY2FydCBjcmVhdGlvbiwgc3RvcmVkIG9uIGRldmljZVxuICAvLyBudWxsIG9uY2UgY2FydCBpcyBtZXJnZWQvY2xhaW1lZCBieSBhIGxvZ2dlZC1pbiB1c2VyXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBndWVzdFRva2VuPzogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgCBTdG9yZSBzY29wZSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3RvcmUpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgc3RvcmVJZDogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgCBTdGF0ZSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKENhcnRTdGF0dXMpKSxcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICAgIGRlZmF1bHRWYWx1ZTogQ2FydFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBDYXJ0U3RhdHVzO1xuXG4gIC8vIEd1ZXN0IGNhcnRzIGV4cGlyZSBhZnRlciAzMCBkYXlzIG9mIGluYWN0aXZpdHlcbiAgLy8gVXNlciBjYXJ0cyBleHBpcmUgYWZ0ZXIgOTAgZGF5c1xuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREFURSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZXhwaXJlc0F0PzogRGF0ZTtcblxuICAvLyDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gVXNlcilcbiAgZGVjbGFyZSB1c2VyPzogVXNlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IFN0b3JlKVxuICBkZWNsYXJlIHN0b3JlOiBTdG9yZTtcblxuICBASGFzTWFueSgoKSA9PiBDYXJ0SXRlbSlcbiAgZGVjbGFyZSBpdGVtczogQ2FydEl0ZW1bXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBEYXRhVHlwZSxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBIYXNNYW55LFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBDYXRlZ29yeSBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lRW46IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVBcjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkVuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkFyPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBpbWFnZT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgc29ydE9yZGVyOiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcblxuICBARm9yZWlnbktleSgoKSA9PiBDYXRlZ29yeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHBhcmVudElkPzogbnVtYmVyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ2F0ZWdvcnksIHsgZm9yZWlnbktleTogJ3BhcmVudElkJywgYXM6ICdwYXJlbnQnIH0pXG4gIGRlY2xhcmUgcGFyZW50PzogQ2F0ZWdvcnk7XG5cbiAgQEhhc01hbnkoKCkgPT4gQ2F0ZWdvcnksIHsgZm9yZWlnbktleTogJ3BhcmVudElkJywgYXM6ICdjaGlsZHJlbicgfSlcbiAgZGVjbGFyZSBjaGlsZHJlbj86IENhdGVnb3J5W107XG59XG4iLCJpbXBvcnQgeyBCZWxvbmdzVG9NYW55LCBDb2x1bW4sIE1vZGVsLCBUYWJsZSB9IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFBheW1lbnRNZXRob2QgfSBmcm9tICcuL3BheW1lbnQtbWV0aG9kLmVudGl0eSc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kQ291bnRyeSB9IGZyb20gJy4vcGF5bWVudC1tZXRob2QtY291bnRyeS5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBDb3VudHJ5IGV4dGVuZHMgTW9kZWwge1xuICBAQ29sdW1uXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIG5hbWVBcjogc3RyaW5nO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBmbGFnSWNvbjogc3RyaW5nO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBpc29Db2RlOiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIHBob25lRXh0OiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIGN1cnJlbmN5OiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIGV4Y2hhbmdlUmF0ZVRvS3dkOiBudW1iZXI7XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvTWFueSgoKSA9PiBQYXltZW50TWV0aG9kLCAoKSA9PiBQYXltZW50TWV0aG9kQ291bnRyeSlcbiAgZGVjbGFyZSBwYXltZW50TWV0aG9kczogUGF5bWVudE1ldGhvZFtdO1xufVxuIiwiaW1wb3J0IHsgVGFibGUsIENvbHVtbiwgTW9kZWwsIEZvcmVpZ25LZXksIEJlbG9uZ3NUbyB9IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IENvdXBvbiB9IGZyb20gJy4vY291cG9uLmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0VmFyaWFudCB9IGZyb20gJy4vcHJvZHVjdC12YXJpYW50LmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIENvdXBvblByb2R1Y3QgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IENvdXBvbilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBjb3Vwb25JZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3QpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdElkOiBudW1iZXI7XG5cbiAgLy8gbnVsbCA9IGFwcGxpZXMgdG8gYWxsIHZhcmlhbnRzIG9mIHRoaXMgcHJvZHVjdFxuICAvLyBzZXQgPSBhcHBsaWVzIG9ubHkgdG8gdGhpcyBzcGVjaWZpYyB2YXJpYW50XG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdFZhcmlhbnRJZD86IG51bWJlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IENvdXBvbikgICAgICAgICBkZWNsYXJlIGNvdXBvbjogQ291cG9uO1xuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3QpICAgICAgICBkZWNsYXJlIHByb2R1Y3Q6IFByb2R1Y3Q7XG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdFZhcmlhbnQpIGRlY2xhcmUgdmFyaWFudD86IFByb2R1Y3RWYXJpYW50O1xufVxuIiwiaW1wb3J0IHsgVGFibGUsIENvbHVtbiwgTW9kZWwsIEZvcmVpZ25LZXksIEJlbG9uZ3NUbyB9IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IENvdXBvbiB9IGZyb20gJy4vY291cG9uLmVudGl0eSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4vc3RvcmUuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgQ291cG9uU3RvcmUgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IENvdXBvbilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBjb3Vwb25JZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFN0b3JlKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHN0b3JlSWQ6IG51bWJlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IENvdXBvbikgZGVjbGFyZSBjb3Vwb246IENvdXBvbjtcbiAgQEJlbG9uZ3NUbygoKSA9PiBTdG9yZSkgIGRlY2xhcmUgc3RvcmU6IFN0b3JlO1xufVxuIiwiaW1wb3J0IHsgVGFibGUsIENvbHVtbiwgTW9kZWwsIEZvcmVpZ25LZXksIEJlbG9uZ3NUbyB9IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IENvdXBvbiB9IGZyb20gJy4vY291cG9uLmVudGl0eSc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi91c2VyLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIENvdXBvblVzZXIgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IENvdXBvbilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBjb3Vwb25JZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFVzZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdXNlcklkOiBudW1iZXI7XG5cbiAgLy8gSG93IG1hbnkgdGltZXMgdGhpcyBzcGVjaWZpYyB1c2VyIGhhcyB1c2VkIHRoaXMgY291cG9uXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSB1c2VkQ291bnQ6IG51bWJlcjtcblxuICAvLyBXaGV0aGVyIHRoaXMgY291cG9uIHdhcyBwcmUtYXNzaWduZWQgdG8gdGhpcyB1c2VyXG4gIC8vIHRydWUgPSB1c2VyLXNwZWNpZmljIGNvdXBvbiAoaXNVc2VyU3BlY2lmaWM9dHJ1ZSBvbiBjb3Vwb24pXG4gIC8vIGZhbHNlID0ganVzdCB0cmFja2luZyB1c2FnZSBvZiBhIHB1YmxpYyBjb3Vwb25cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc1ByZUFzc2lnbmVkOiBib29sZWFuO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ291cG9uKSBkZWNsYXJlIGNvdXBvbjogQ291cG9uO1xuICBAQmVsb25nc1RvKCgpID0+IFVzZXIpICAgZGVjbGFyZSB1c2VyOiBVc2VyO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsIENvbHVtbiwgTW9kZWwsIEhhc01hbnksIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBDb3Vwb25TdG9yZSB9IGZyb20gJy4vY291cG9uLXN0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBDb3Vwb25Qcm9kdWN0IH0gZnJvbSAnLi9jb3Vwb24tcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgQ291cG9uVXNlciB9IGZyb20gJy4vY291cG9uLXVzZXIuZW50aXR5JztcblxuZXhwb3J0IGVudW0gQ291cG9uRGlzY291bnRUeXBlIHtcbiAgRklYRUQgICAgICA9ICdmaXhlZCcsICAgICAgLy8gRml4ZWQgYW1vdW50IGRlZHVjdGVkIGUuZy4gS0QgMi4wMDBcbiAgUEVSQ0VOVEFHRSA9ICdwZXJjZW50YWdlJywgLy8gUGVyY2VudGFnZSBlLmcuIDE1JSBvZmZcbn1cblxuZXhwb3J0IGVudW0gQ291cG9uQXBwbGllc1RvIHtcbiAgU1VCVE9UQUwgID0gJ3N1YnRvdGFsJywgIC8vIEFwcGxpZXMgdG8gY2FydCBpdGVtIHRvdGFsXG4gIERFTElWRVJZICA9ICdkZWxpdmVyeScsICAvLyBBcHBsaWVzIHRvIHNoaXBwaW5nIGZlZSBvbmx5XG4gIFZBVCAgICAgICA9ICd2YXQnLCAgICAgICAvLyBWQVQgZnJlZSAocmVtb3ZlcyBWQVQgYW1vdW50KVxufVxuXG5leHBvcnQgZW51bSBDb3Vwb25Pc1RhcmdldCB7XG4gIEFMTCAgICAgPSAnYWxsJyxcbiAgSU9TICAgICA9ICdpb3MnLFxuICBBTkRST0lEID0gJ2FuZHJvaWQnLFxuICBXRUIgICAgID0gJ3dlYicsXG59XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIENvdXBvbiBleHRlbmRzIE1vZGVsIHtcbiAgLy8g4pSA4pSAIElkZW50aXR5IOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdW5pcXVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgY29kZTogc3RyaW5nOyAvLyBUaGUgY29kZSB0aGUgdXNlciB0eXBlcyBlLmcuIFdFTENPTUUyMFxuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Fbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Bcj86IHN0cmluZztcblxuICAvLyDilIDilIAgVmFsaWRpdHkgcGVyaW9kIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREFURSwgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHN0YXJ0c0F0OiBEYXRlO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgZXhwaXJlc0F0OiBEYXRlO1xuXG4gIC8vIOKUgOKUgCBEaXNjb3VudCDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKENvdXBvbkRpc2NvdW50VHlwZSkpLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gICAgZGVmYXVsdFZhbHVlOiBDb3Vwb25EaXNjb3VudFR5cGUuUEVSQ0VOVEFHRSxcbiAgfSlcbiAgZGVjbGFyZSBkaXNjb3VudFR5cGU6IENvdXBvbkRpc2NvdW50VHlwZTtcblxuICAvLyBUaGUgYW1vdW50IG9yIHBlcmNlbnRhZ2UgdmFsdWVcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgZGlzY291bnRWYWx1ZTogbnVtYmVyO1xuXG4gIC8vIE1heCBkZWR1Y3Rpb24gY2FwIChvbmx5IHJlbGV2YW50IGZvciBwZXJjZW50YWdlIHR5cGUpXG4gIC8vIGUuZy4gMjAlIG9mZiBidXQgbWF4IEtEIDUgZGVkdWN0aW9uXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbWF4RGlzY291bnRBbW91bnQ/OiBudW1iZXI7XG5cbiAgLy8g4pSA4pSAIEFwcGxpZXMgdG8g4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhDb3Vwb25BcHBsaWVzVG8pKSxcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICAgIGRlZmF1bHRWYWx1ZTogQ291cG9uQXBwbGllc1RvLlNVQlRPVEFMLFxuICB9KVxuICBkZWNsYXJlIGFwcGxpZXNUbzogQ291cG9uQXBwbGllc1RvO1xuXG4gIC8vIOKUgOKUgCBNaW5pbXVtIG9yZGVyIHZhbHVlIHJlcXVpcmVkIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogdHJ1ZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgbWluT3JkZXJBbW91bnQ/OiBudW1iZXI7XG5cbiAgLy8g4pSA4pSAIE9TIHRhcmdldGluZyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKENvdXBvbk9zVGFyZ2V0KSksXG4gICAgYWxsb3dOdWxsOiBmYWxzZSxcbiAgICBkZWZhdWx0VmFsdWU6IENvdXBvbk9zVGFyZ2V0LkFMTCxcbiAgfSlcbiAgZGVjbGFyZSBvc1RhcmdldDogQ291cG9uT3NUYXJnZXQ7XG5cbiAgLy8g4pSA4pSAIFVzYWdlIGxpbWl0cyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgLy8gbnVsbCA9IHVubGltaXRlZCB1c2VzIGdsb2JhbGx5XG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5JTlRFR0VSLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBtYXhVc2VzVG90YWw/OiBudW1iZXI7XG5cbiAgLy8gbnVsbCA9IHVubGltaXRlZCBwZXIgdXNlclxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuSU5URUdFUiwgYWxsb3dOdWxsOiB0cnVlLCBkZWZhdWx0VmFsdWU6IDEgfSlcbiAgZGVjbGFyZSBtYXhVc2VzUGVyVXNlcj86IG51bWJlcjtcblxuICAvLyBDb3VudGVyIOKAlCBpbmNyZW1lbnRlZCBvbiBlYWNoIHN1Y2Nlc3NmdWwgdXNlIChjaGVja2VkIGFnYWluc3QgbWF4VXNlc1RvdGFsKVxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuSU5URUdFUiwgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgdG90YWxVc2VkOiBudW1iZXI7XG5cbiAgLy8g4pSA4pSAIFNjb3BlIGZsYWdzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICAvLyBXaGVuIHRydWU6IGFwcGxpZXMgb25seSB0byBwcm9kdWN0cy9zdG9yZXMvdXNlcnMgaW4gdGhlIGp1bmN0aW9uIHRhYmxlc1xuICAvLyBXaGVuIGZhbHNlOiBhcHBsaWVzIGdsb2JhbGx5IHJlZ2FyZGxlc3Mgb2YganVuY3Rpb24gdGFibGUgY29udGVudHNcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc1N0b3JlU3BlY2lmaWM6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc1Byb2R1Y3RTcGVjaWZpYzogYm9vbGVhbjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGlzVXNlclNwZWNpZmljOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBpc0FjdGl2ZTogYm9vbGVhbjtcblxuICAvLyDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBIYXNNYW55KCgpID0+IENvdXBvblN0b3JlKVxuICBkZWNsYXJlIGNvdXBvblN0b3JlczogQ291cG9uU3RvcmVbXTtcblxuICBASGFzTWFueSgoKSA9PiBDb3Vwb25Qcm9kdWN0KVxuICBkZWNsYXJlIGNvdXBvblByb2R1Y3RzOiBDb3Vwb25Qcm9kdWN0W107XG5cbiAgQEhhc01hbnkoKCkgPT4gQ291cG9uVXNlcilcbiAgZGVjbGFyZSBjb3Vwb25Vc2VyczogQ291cG9uVXNlcltdO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IEludmVudG9yeSB9IGZyb20gJy4vaW52ZW50b3J5LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0VmFyaWFudCB9IGZyb20gJy4vcHJvZHVjdC12YXJpYW50LmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIEludmVudG9yeVN0b2NrIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBJbnZlbnRvcnkpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaW52ZW50b3J5SWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIC8vIG51bGwgPSBwcm9kdWN0IGhhcyBubyB2YXJpYW50c1xuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RWYXJpYW50SWQ/OiBudW1iZXI7XG5cbiAgLy8gUGh5c2ljYWwgc3RvY2sgY3VycmVudGx5IG9uIHNoZWxmIGluIHRoaXMgaW52ZW50b3J5XG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBwaHlzaWNhbFF1YW50aXR5OiBudW1iZXI7XG5cbiAgLy8gVW5pdHMgcmVzZXJ2ZWQgZm9yIHBlbmRpbmcgb3JkZXJzICh3YWl0aW5nIFBPIGZ1bGZpbG1lbnQgb3IgcGFja2luZylcbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHJlc2VydmVkUXVhbnRpdHk6IG51bWJlcjtcblxuICAvLyBBdmFpbGFibGUgPSBwaHlzaWNhbFF1YW50aXR5IC0gcmVzZXJ2ZWRRdWFudGl0eSAoY29tcHV0ZWQgaW4gc2VydmljZSBsYXllcilcblxuICAvLyBGbGFnOiBjYW4gdGhpcyBpdGVtIGJlIHNvdXJjZWQgZnJvbSBhIHZlbmRvciBpZiBwaHlzaWNhbCBzdG9jayBpcyAwP1xuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGF2YWlsYWJsZUZyb21WZW5kb3I6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGxvd1N0b2NrVGhyZXNob2xkPzogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBJbnZlbnRvcnkpXG4gIGRlY2xhcmUgaW52ZW50b3J5OiBJbnZlbnRvcnk7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0KVxuICBkZWNsYXJlIHByb2R1Y3Q6IFByb2R1Y3Q7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgZGVjbGFyZSB2YXJpYW50PzogUHJvZHVjdFZhcmlhbnQ7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgSGFzTWFueSxcbiAgQmVsb25nc1RvTWFueSxcbiAgRGF0YVR5cGUsXG4gIEJlbG9uZ3NUbyxcbiAgRm9yZWlnbktleSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgSW52ZW50b3J5U3RvY2sgfSBmcm9tICcuL2ludmVudG9yeS1zdG9jay5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmVJbnZlbnRvcnkgfSBmcm9tICcuL3N0b3JlLWludmVudG9yeS5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuL3N0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuaW1wb3J0IHsgQ291bnRyeSB9IGZyb20gJy4vY291bnRyeS5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBJbnZlbnRvcnkgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgYWRkcmVzc0VuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBhZGRyZXNzQXI/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvbnRhY3RQaG9uZT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY29udGFjdEVtYWlsPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gQ291bnRyeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBjb3VudHJ5SWQ6IG51bWJlcjtcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ291bnRyeSlcbiAgY291bnRyeTogQ291bnRyeTtcblxuICBASGFzTWFueSgoKSA9PiBJbnZlbnRvcnlTdG9jaylcbiAgZGVjbGFyZSBzdG9ja3M6IEludmVudG9yeVN0b2NrW107XG5cbiAgQEJlbG9uZ3NUb01hbnkoKCkgPT4gU3RvcmUsICgpID0+IFN0b3JlSW52ZW50b3J5KVxuICBkZWNsYXJlIHN0b3JlczogU3RvcmVbXTtcbn1cbiIsImltcG9ydCB7IFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBGb3JlaWduS2V5LCBCZWxvbmdzVG8gfSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBPcmRlckl0ZW0gfSBmcm9tICcuL29yZGVyLWl0ZW0uZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgT3JkZXJJdGVtQnVuZGxlU2VsZWN0aW9uIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBPcmRlckl0ZW0pXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgb3JkZXJJdGVtSWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdFZhcmlhbnRJZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdE5hbWVFbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdE5hbWVBcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgdmFyaWFudExhYmVsRW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHZhcmlhbnRMYWJlbEFyPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IE9yZGVySXRlbSkgIGRlY2xhcmUgb3JkZXJJdGVtOiBPcmRlckl0ZW07XG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdCkgICAgZGVjbGFyZSBwcm9kdWN0OiBQcm9kdWN0O1xuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3RWYXJpYW50KSBkZWNsYXJlIHZhcmlhbnQ/OiBQcm9kdWN0VmFyaWFudDtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIEhhc01hbnksXG4gIEhhc09uZSxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IE9yZGVyIH0gZnJvbSAnLi9vcmRlci5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFZhcmlhbnQgfSBmcm9tICcuL3Byb2R1Y3QtdmFyaWFudC5lbnRpdHknO1xuaW1wb3J0IHsgQnVuZGxlIH0gZnJvbSAnLi9idW5kbGUuZW50aXR5JztcbmltcG9ydCB7IE9yZGVySXRlbUJ1bmRsZVNlbGVjdGlvbiB9IGZyb20gJy4vb3JkZXItaXRlbS1idW5kbGUtc2VsZWN0aW9uLmVudGl0eSc7XG5pbXBvcnQgeyBQdXJjaGFzZU9yZGVyT3JkZXJJdGVtIH0gZnJvbSAnLi9wdXJjaGFzZS1vcmRlci1vcmRlci1pdGVtLmVudGl0eSc7XG5cbmV4cG9ydCBlbnVtIE9yZGVySXRlbVR5cGUge1xuICBQUk9EVUNUID0gJ3Byb2R1Y3QnLFxuICBCVU5ETEUgPSAnYnVuZGxlJyxcbn1cblxuZXhwb3J0IGVudW0gT3JkZXJJdGVtRnVsZmlsbG1lbnRTdGF0dXMge1xuICBQRU5ESU5HID0gJ3BlbmRpbmcnLFxuICBBV0FJVElOR19TVE9DSyA9ICdhd2FpdGluZ19zdG9jaycsIC8vIG5lZWRzIHZlbmRvciBQT1xuICBQT19MSU5LRUQgPSAncG9fbGlua2VkJywgLy8gUE8gY3JlYXRlZCBhbmQgbGlua2VkXG4gIFBPX1JFQ0VJVkVEID0gJ3BvX3JlY2VpdmVkJywgLy8gUE8gcmVjZWl2ZWQgZm9yIHRoaXMgaXRlbVxuICBTVE9DS19SRVNFUlZFRCA9ICdzdG9ja19yZXNlcnZlZCcsIC8vIHBoeXNpY2FsIHN0b2NrIGxvY2tlZCBpbiBpbnZlbnRvcnlcbiAgUEFDS0VEID0gJ3BhY2tlZCcsXG4gIFNISVBQRUQgPSAnc2hpcHBlZCcsXG4gIERFTElWRVJFRCA9ICdkZWxpdmVyZWQnLFxuICBDQU5DRUxMRUQgPSAnY2FuY2VsbGVkJyxcbiAgUkVUVVJOX1JFUVVFU1RFRCA9ICdyZXR1cm5fcmVxdWVzdGVkJyxcbiAgUkVUVVJORUQgPSAncmV0dXJuZWQnLFxufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBPcmRlckl0ZW0gZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IE9yZGVyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG9yZGVySWQ6IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoT3JkZXJJdGVtVHlwZSkpLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gICAgZGVmYXVsdFZhbHVlOiBPcmRlckl0ZW1UeXBlLlBST0RVQ1QsXG4gIH0pXG4gIGRlY2xhcmUgaXRlbVR5cGU6IE9yZGVySXRlbVR5cGU7XG5cbiAgLy8g4pSA4pSAIFByb2R1Y3QgZmllbGRzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdElkPzogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdFZhcmlhbnRJZD86IG51bWJlcjtcblxuICAvLyDilIDilIAgQnVuZGxlIGZpZWxkcyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQEZvcmVpZ25LZXkoKCkgPT4gQnVuZGxlKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgYnVuZGxlSWQ/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvbXBvc2VkU2t1Pzogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgCBTbmFwc2hvdHMgYXQgb3JkZXIgdGltZSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByb2R1Y3ROYW1lRW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByb2R1Y3ROYW1lQXI/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHNrdT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgdmFyaWFudExhYmVsRW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHZhcmlhbnRMYWJlbEFyPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcm9kdWN0SW1hZ2U/OiBzdHJpbmc7XG5cbiAgLy8g4pSA4pSAIFByaWNpbmcg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDEgfSlcbiAgZGVjbGFyZSBxdWFudGl0eTogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHVuaXRQcmljZTogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGxpbmVUb3RhbDogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgCBGdWxmaWxsbWVudCBhc3NpZ25tZW50IOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICAvLyBXaGljaCBpbnZlbnRvcnkgaXMgcmVzcG9uc2libGUgZm9yIHRoaXMgaXRlbVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZnVsZmlsbG1lbnRJbnZlbnRvcnlJZD86IG51bWJlcjtcblxuICAvLyBTaGlwbWVudCBncm91cCDigJQgaXRlbXMgd2l0aCB0aGUgc2FtZSBncm91cCBzaGlwIHRvZ2V0aGVyIGZyb20gdGhlIHNhbWUgaW52ZW50b3J5XG4gIC8vIFVzdWFsbHkgJzEnIGZvciBzaW5nbGUtaW52ZW50b3J5IG9yZGVyczsgJzInIGlmIGEgc2Vjb25kIGludmVudG9yeSBpcyBuZWVkZWRcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMSB9KVxuICBkZWNsYXJlIHNoaXBtZW50R3JvdXA6IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoT3JkZXJJdGVtRnVsZmlsbG1lbnRTdGF0dXMpKSxcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICAgIGRlZmF1bHRWYWx1ZTogT3JkZXJJdGVtRnVsZmlsbG1lbnRTdGF0dXMuUEVORElORyxcbiAgfSlcbiAgZGVjbGFyZSBmdWxmaWxsbWVudFN0YXR1czogT3JkZXJJdGVtRnVsZmlsbG1lbnRTdGF0dXM7XG5cbiAgLy8g4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IE9yZGVyKVxuICBkZWNsYXJlIG9yZGVyOiBPcmRlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3QpXG4gIGRlY2xhcmUgcHJvZHVjdD86IFByb2R1Y3Q7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgZGVjbGFyZSB2YXJpYW50PzogUHJvZHVjdFZhcmlhbnQ7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBCdW5kbGUpXG4gIGRlY2xhcmUgYnVuZGxlPzogQnVuZGxlO1xuXG4gIEBIYXNNYW55KCgpID0+IE9yZGVySXRlbUJ1bmRsZVNlbGVjdGlvbilcbiAgZGVjbGFyZSBidW5kbGVTZWxlY3Rpb25zOiBPcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb25bXTtcblxuICBASGFzT25lKCgpID0+IFB1cmNoYXNlT3JkZXJPcmRlckl0ZW0pXG4gIGRlY2xhcmUgcG9MaW5rPzogUHVyY2hhc2VPcmRlck9yZGVySXRlbTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBGb3JlaWduS2V5LCBCZWxvbmdzVG8sIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBPcmRlciB9IGZyb20gJy4vb3JkZXIuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgT3JkZXJTdGF0dXNIaXN0b3J5IGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBPcmRlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBvcmRlcklkOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGZyb21TdGF0dXM/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB0b1N0YXR1czogc3RyaW5nO1xuXG4gIC8vIEJpbGluZ3VhbCBsYWJlbCBzbmFwc2hvdHMgc28gaGlzdG9yeSBpcyByZWFkYWJsZSBldmVuIGlmIHN0YXR1cyBsYWJlbHMgY2hhbmdlXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSB0b0xhYmVsRW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHRvTGFiZWxBcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbm90ZT86IHN0cmluZztcblxuICAvLyBXaG8gbWFkZSB0aGUgY2hhbmdlOiAnc3lzdGVtJywgJ3VzZXInLCBvciAnYWRtaW46PGlkPidcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNoYW5nZWRCeT86IHN0cmluZztcblxuICBAQmVsb25nc1RvKCgpID0+IE9yZGVyKVxuICBkZWNsYXJlIG9yZGVyOiBPcmRlcjtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBIYXNNYW55LCBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgT3JkZXIgfSBmcm9tICcuL29yZGVyLmVudGl0eSc7XG5cbi8vIEFsbCBwb3NzaWJsZSBvcmRlciBzdGF0dXNlcyBpbiB0aGUgc3lzdGVtXG5leHBvcnQgZW51bSBPcmRlclN0YXR1c0NvZGUge1xuICBQRU5ESU5HX1BBWU1FTlQgICAgICA9ICdwZW5kaW5nX3BheW1lbnQnLFxuICBQQUlEICAgICAgICAgICAgICAgICA9ICdwYWlkJyxcbiAgUFJPQ0VTU0lORyAgICAgICAgICAgPSAncHJvY2Vzc2luZycsXG4gIEFXQUlUSU5HX0ZVTEZJTExNRU5UID0gJ2F3YWl0aW5nX2Z1bGZpbGxtZW50JyxcbiAgUEVORElOR19WRU5ET1IgICAgICAgPSAncGVuZGluZ192ZW5kb3InLFxuICBWRU5ET1JfT1JERVJFRCAgICAgICA9ICd2ZW5kb3Jfb3JkZXJlZCcsXG4gIFNUT0NLX1JFQ0VJVkVEICAgICAgID0gJ3N0b2NrX3JlY2VpdmVkJyxcbiAgUEFDS0VEICAgICAgICAgICAgICAgPSAncGFja2VkJyxcbiAgU0hJUFBFRCAgICAgICAgICAgICAgPSAnc2hpcHBlZCcsXG4gIE9VVF9GT1JfREVMSVZFUlkgICAgID0gJ291dF9mb3JfZGVsaXZlcnknLFxuICBERUxJVkVSRUQgICAgICAgICAgICA9ICdkZWxpdmVyZWQnLFxuICBDT01QTEVURUQgICAgICAgICAgICA9ICdjb21wbGV0ZWQnLFxuICBDQU5DRUxMRUQgICAgICAgICAgICA9ICdjYW5jZWxsZWQnLFxuICBSRVRVUk5fUkVRVUVTVEVEICAgICA9ICdyZXR1cm5fcmVxdWVzdGVkJyxcbiAgUkVUVVJOX0FQUFJPVkVEICAgICAgPSAncmV0dXJuX2FwcHJvdmVkJyxcbiAgUkVUVVJORUQgICAgICAgICAgICAgPSAncmV0dXJuZWQnLFxuICBSRUZVTkRFRCAgICAgICAgICAgICA9ICdyZWZ1bmRlZCcsXG4gIEZBSUxFRCAgICAgICAgICAgICAgID0gJ2ZhaWxlZCcsXG59XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIE9yZGVyU3RhdHVzIGV4dGVuZHMgTW9kZWwge1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdW5pcXVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgY29kZTogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbGFiZWxFbjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbGFiZWxBcjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkVuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkFyPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjb2xvcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgaWNvbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbmV4dFN0YXR1c2VzPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcmV2U3RhdHVzZXM/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc1Rlcm1pbmFsOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBpc1Zpc2libGVUb1VzZXI6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHNvcnRPcmRlcjogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEhhc01hbnkoKCkgPT4gT3JkZXIsIHsgZm9yZWlnbktleTogJ3N0YXR1c0lkJyB9KVxuICBkZWNsYXJlIG9yZGVyczogT3JkZXJbXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBGb3JlaWduS2V5LCBCZWxvbmdzVG8sXG4gIEhhc01hbnksIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi91c2VyLmVudGl0eSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4vc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IENvdW50cnkgfSBmcm9tICcuL2NvdW50cnkuZW50aXR5JztcbmltcG9ydCB7IE9yZGVyU3RhdHVzIH0gZnJvbSAnLi9vcmRlci1zdGF0dXMuZW50aXR5JztcbmltcG9ydCB7IE9yZGVySXRlbSB9IGZyb20gJy4vb3JkZXItaXRlbS5lbnRpdHknO1xuaW1wb3J0IHsgT3JkZXJTdGF0dXNIaXN0b3J5IH0gZnJvbSAnLi9vcmRlci1zdGF0dXMtaGlzdG9yeS5lbnRpdHknO1xuaW1wb3J0IHsgVXNlclRyYW5zYWN0aW9uIH0gZnJvbSAnLi91c2VyLXRyYW5zYWN0aW9uLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIE9yZGVyIGV4dGVuZHMgTW9kZWwge1xuICAvLyDilIDilIAgSWRlbnRpdHkg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCB1bmlxdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBvcmRlck51bWJlcjogc3RyaW5nOyAvLyBlLmcuIFRBVC0yMDI2LTAwMDAxXG5cbiAgLy8gTnVsbCBmb3IgZ3Vlc3Qgb3JkZXJzIOKAlCBsaW5rZWQgb24gYWNjb3VudCBjcmVhdGlvblxuICBARm9yZWlnbktleSgoKSA9PiBVc2VyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgdXNlcklkPzogbnVtYmVyO1xuXG4gIC8vIEd1ZXN0IHRva2VuIGZvciBndWVzdCBvcmRlcnNcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGd1ZXN0VG9rZW4/OiBzdHJpbmc7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3RvcmUpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgc3RvcmVJZDogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgCBTdGF0dXMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIC8vIFByb3BlciBGSyB0byBvcmRlcl9zdGF0dXNlcyBzbyB3ZSBjYW4gZWFnZXIgbG9hZCB3aXRoIGluY2x1ZGU6IFtPcmRlclN0YXR1c11cbiAgQEZvcmVpZ25LZXkoKCkgPT4gT3JkZXJTdGF0dXMpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgc3RhdHVzSWQ6IG51bWJlcjtcblxuICAvLyBLZWVwIHN0YXR1c0NvZGUgYXMgYSBjb252ZW5pZW5jZSBjb2x1bW4g4oCUIHN5bmNlZCB3aXRoIHN0YXR1c0lkIGF0IGFsbCB0aW1lc1xuICAvLyBBbGxvd3MgZmlsdGVyaW5nIGJ5IGNvZGUgc3RyaW5nIHdpdGhvdXQgYSBqb2luOiB3aGVyZSh7IHN0YXR1c0NvZGU6ICdzaGlwcGVkJyB9KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAncGVuZGluZ19wYXltZW50JyB9KVxuICBkZWNsYXJlIHN0YXR1c0NvZGU6IHN0cmluZztcblxuICAvLyDilIDilIAgRGVsaXZlcnkgYWRkcmVzcyAoc25hcHNob3QgYXQgb3JkZXIgdGltZSkg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBGb3JlaWduS2V5KCgpID0+IENvdW50cnkpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZWxpdmVyeUNvdW50cnlJZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlGdWxsTmFtZT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlQaG9uZUV4dD86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlQaG9uZT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlDaXR5Pzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZWxpdmVyeUJsb2NrPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZWxpdmVyeVN0cmVldD86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlCdWlsZGluZz86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlGbG9vcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlBcGFydG1lbnQ/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5QWRkaXRpb25hbEluZm8/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoOSwgNiksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5TGF0aXR1ZGU/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoOSwgNiksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5TG9uZ2l0dWRlPzogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgCBGaW5hbmNpYWxzIChhbGwgaW4gc3RvcmUgY3VycmVuY3kpIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHN1YnRvdGFsOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzaGlwcGluZ0ZlZTogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgdmF0QW1vdW50OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBkaXNjb3VudEFtb3VudDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgdG90YWw6IG51bWJlcjtcblxuICAvLyBDdXJyZW5jeSBzbmFwc2hvdFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGN1cnJlbmN5OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGN1cnJlbmN5U3ltYm9sRW4/OiBzdHJpbmc7XG5cbiAgLy8g4pSA4pSAIENvdXBvbiDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvdXBvbkNvZGU/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvdXBvbklkPzogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgCBQYXltZW50IOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcGF5bWVudE1ldGhvZFNsdWc/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHBheW1lbnRTdGF0dXM/OiBzdHJpbmc7IC8vIHBlbmRpbmcgfCBwYWlkIHwgZmFpbGVkIHwgcmVmdW5kZWRcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcGF5bWVudFJlZmVyZW5jZT86IHN0cmluZzsgLy8gR2F0ZXdheSB0cmFuc2FjdGlvbiBJRFxuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwYWlkQXQ/OiBEYXRlO1xuXG4gIC8vIOKUgOKUgCBTaGlwcGluZyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNhcnJpZXJOYW1lPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSB0cmFja2luZ051bWJlcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgdHJhY2tpbmdVcmw/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRBVEUsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGVzdGltYXRlZERlbGl2ZXJ5RGF0ZT86IERhdGU7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRBVEUsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHNoaXBwZWRBdD86IERhdGU7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRBVEUsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJlZEF0PzogRGF0ZTtcblxuICAvLyDilIDilIAgTm90ZXMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjdXN0b21lck5vdGVzPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBpbnRlcm5hbE5vdGVzPzogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBVc2VyKVxuICBkZWNsYXJlIHVzZXI/OiBVc2VyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gU3RvcmUpXG4gIGRlY2xhcmUgc3RvcmU6IFN0b3JlO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gT3JkZXJTdGF0dXMsIHsgZm9yZWlnbktleTogJ3N0YXR1c0lkJyB9KVxuICBkZWNsYXJlIHN0YXR1czogT3JkZXJTdGF0dXM7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBDb3VudHJ5KVxuICBkZWNsYXJlIGRlbGl2ZXJ5Q291bnRyeT86IENvdW50cnk7XG5cbiAgQEhhc01hbnkoKCkgPT4gT3JkZXJJdGVtKVxuICBkZWNsYXJlIGl0ZW1zOiBPcmRlckl0ZW1bXTtcblxuICBASGFzTWFueSgoKSA9PiBPcmRlclN0YXR1c0hpc3RvcnkpXG4gIGRlY2xhcmUgc3RhdHVzSGlzdG9yeTogT3JkZXJTdGF0dXNIaXN0b3J5W107XG5cbiAgQEhhc01hbnkoKCkgPT4gVXNlclRyYW5zYWN0aW9uKVxuICBkZWNsYXJlIHRyYW5zYWN0aW9uczogVXNlclRyYW5zYWN0aW9uW107XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgSGFzTWFueSwgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFBheW1lbnRNZXRob2QgfSBmcm9tICcuL3BheW1lbnQtbWV0aG9kLmVudGl0eSc7XG5cbmV4cG9ydCBlbnVtIFBheW1lbnRHYXRld2F5VHlwZSB7XG4gIEJOUEwgICAgICAgID0gJ2JucGwnLCAgICAgICAgLy8gQnV5IE5vdyBQYXkgTGF0ZXIg4oCUIFRhYmJ5LCBUYW1hcmEsIFRhbHksIERlZW1hXG4gIENBUkQgICAgICAgID0gJ2NhcmQnLCAgICAgICAgLy8gVmlzYS9NYXN0ZXJjYXJkIOKAlCB1UGF5bWVudFxuICBLTkVUICAgICAgICA9ICdrbmV0JywgICAgICAgIC8vIEstTmV0IOKAlCBLRkhcbiAgV0FMTEVUICAgICAgPSAnd2FsbGV0JywgICAgICAvLyBBcHBsZSBQYXksIEdvb2dsZSBQYXlcbiAgQkFOSyAgICAgICAgPSAnYmFuaycsICAgICAgICAvLyBCYW5rIHRyYW5zZmVyXG4gIE9GRkxJTkVfUEFZTUVOVCA9ICdvZmZsaW5lX3BheW1lbnQnXG5cbn1cblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUGF5bWVudEdhdGV3YXkgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCB1bmlxdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBzbHVnOiBzdHJpbmc7IC8vIGUuZy4gJ3RhYmJ5JywgJ3RhbWFyYScsICd1cGF5bWVudCcsICdrZmgnXG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lRW46IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVBcjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhQYXltZW50R2F0ZXdheVR5cGUpKSxcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICB9KVxuICBkZWNsYXJlIHR5cGU6IFBheW1lbnRHYXRld2F5VHlwZTtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbG9nbz86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgd2Vic2l0ZT86IHN0cmluZztcblxuICAvLyBDcmVkZW50aWFscyBzdG9yZWQgYXMgSlNPTiDigJQgbWFuYWdlZCBieSBhZG1pbiBvbmx5LCBuZXZlciBleHBvc2VkIHRvIHVzZXJzXG4gIC8vIGUuZy4geyBcInB1YmxpY0tleVwiOiBcIi4uLlwiLCBcInNlY3JldEtleVwiOiBcIi4uLlwiLCBcIm1lcmNoYW50SWRcIjogXCIuLi5cIiB9XG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5KU09OLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjcmVkZW50aWFscz86IG9iamVjdDtcblxuICAvLyBTYW5kYm94L1Byb2R1Y3Rpb24gbW9kZVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGlzU2FuZGJveDogYm9vbGVhbjtcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgc29ydE9yZGVyOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogdHJ1ZSB9KVxuICBkZWNsYXJlIGlzQWN0aXZlOiBib29sZWFuO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEhhc01hbnkoKCkgPT4gUGF5bWVudE1ldGhvZClcbiAgZGVjbGFyZSBtZXRob2RzOiBQYXltZW50TWV0aG9kW107XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgRm9yZWlnbktleSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgUGF5bWVudE1ldGhvZCB9IGZyb20gJy4vcGF5bWVudC1tZXRob2QuZW50aXR5JztcbmltcG9ydCB7IENvdW50cnkgfSBmcm9tICcuL2NvdW50cnkuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUGF5bWVudE1ldGhvZENvdW50cnkgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFBheW1lbnRNZXRob2QpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcGF5bWVudE1ldGhvZElkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gQ291bnRyeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBjb3VudHJ5SWQ6IG51bWJlcjtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBGb3JlaWduS2V5LCBCZWxvbmdzVG8sXG4gIEJlbG9uZ3NUb01hbnksIEhhc01hbnksIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQYXltZW50R2F0ZXdheSB9IGZyb20gJy4vcGF5bWVudC1nYXRld2F5LmVudGl0eSc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4vc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IFBheW1lbnRNZXRob2RDb3VudHJ5IH0gZnJvbSAnLi9wYXltZW50LW1ldGhvZC1jb3VudHJ5LmVudGl0eSc7XG5pbXBvcnQgeyBTdG9yZVBheW1lbnRNZXRob2QgfSBmcm9tICcuL3N0b3JlLXBheW1lbnQtbWV0aG9kLmVudGl0eSc7XG5cbmV4cG9ydCBlbnVtIFBheW1lbnRNZXRob2RUeXBlIHtcbiAgUEFZX0xBVEVSICAgICAgID0gJ3BheV9sYXRlcicsICAgICAgICAvLyBUYWJieSBQYXkgTGF0ZXIsIFRhbWFyYVxuICBJTlNUQUxMTUVOVCAgICAgPSAnaW5zdGFsbG1lbnQnLCAgICAgIC8vIFRhYmJ5IEluc3RhbGxtZW50cywgRGVlbWFcbiAgQ1JFRElUX0NBUkQgICAgID0gJ2NyZWRpdF9jYXJkJywgICAgICAvLyBWaXNhLCBNYXN0ZXJjYXJkXG4gIERFQklUX0NBUkQgICAgICA9ICdkZWJpdF9jYXJkJywgICAgICAgLy8gRGViaXQgY2FyZHNcbiAgS05FVCAgICAgICAgICAgID0gJ2tuZXQnLCAgICAgICAgICAgICAvLyBLLU5ldFxuICBBUFBMRV9QQVkgICAgICAgPSAnYXBwbGVfcGF5JyxcbiAgR09PR0xFX1BBWSAgICAgID0gJ2dvb2dsZV9wYXknLFxuICBCQU5LX1RSQU5TRkVSICAgPSAnYmFua190cmFuc2ZlcicsXG59XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFBheW1lbnRNZXRob2QgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFBheW1lbnRHYXRld2F5KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHBheW1lbnRHYXRld2F5SWQ6IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdW5pcXVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2x1Zzogc3RyaW5nOyAvLyBlLmcuICd0YWJieV9wYXlfbGF0ZXInLCAna25ldCcsICd2aXNhJ1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Fbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Bcj86IHN0cmluZztcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoUGF5bWVudE1ldGhvZFR5cGUpKSxcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICB9KVxuICBkZWNsYXJlIHR5cGU6IFBheW1lbnRNZXRob2RUeXBlO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBsb2dvPzogc3RyaW5nO1xuXG4gIC8vIFByb2Nlc3NpbmcgZmVlIHBlcmNlbnRhZ2UgZS5nLiAxLjUgbWVhbnMgMS41JVxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCg1LCAyKSwgYWxsb3dOdWxsOiB0cnVlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBmZWVQZXJjZW50YWdlPzogbnVtYmVyO1xuXG4gIC8vIEZpeGVkIGZlZSBlLmcuIDAuMTAwIEtXRFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogdHJ1ZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgZmVlRml4ZWQ/OiBudW1iZXI7XG5cbiAgLy8gTWluaW11bSBvcmRlciBhbW91bnQgdG8gdXNlIHRoaXMgbWV0aG9kXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbWluT3JkZXJBbW91bnQ/OiBudW1iZXI7XG5cbiAgLy8gTWF4aW11bSBvcmRlciBhbW91bnQgdG8gdXNlIHRoaXMgbWV0aG9kXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbWF4T3JkZXJBbW91bnQ/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHNvcnRPcmRlcjogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBpc0FjdGl2ZTogYm9vbGVhbjtcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gUGF5bWVudEdhdGV3YXkpXG4gIGRlY2xhcmUgZ2F0ZXdheTogUGF5bWVudEdhdGV3YXk7XG5cbiAgQEJlbG9uZ3NUb01hbnkoKCkgPT4gQ291bnRyeSwgKCkgPT4gUGF5bWVudE1ldGhvZENvdW50cnkpXG4gIGRlY2xhcmUgY291bnRyaWVzOiBDb3VudHJ5W107XG5cbiAgQEJlbG9uZ3NUb01hbnkoKCkgPT4gU3RvcmUsICgpID0+IFN0b3JlUGF5bWVudE1ldGhvZClcbiAgZGVjbGFyZSBzdG9yZXM6IFN0b3JlW107XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgQmVsb25nc1RvTWFueSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3lzUm9sZSB9IGZyb20gJy4vc3lzLnJvbGUuZW50aXR5JztcbmltcG9ydCB7IFJvbGVQZXJtaXNzaW9uIH0gZnJvbSAnLi9yb2xlLXBlcm1pc3Npb24uZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUGVybWlzc2lvbiBleHRlbmRzIE1vZGVsIHtcbiAgLy8gZS5nLiAncHJvZHVjdHMudmlldycsICdwcm9kdWN0cy5jcmVhdGUnLCAnaW52ZW50b3J5LmFkanVzdCdcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIHVuaXF1ZTogdHJ1ZSB9KVxuICBkZWNsYXJlIG5hbWU6IHN0cmluZztcblxuICAvLyBIdW1hbiByZWFkYWJsZSBlLmcuICdWaWV3IFByb2R1Y3RzJ1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGRpc3BsYXlOYW1lOiBzdHJpbmc7XG5cbiAgLy8gR3JvdXBpbmcgZm9yIFVJIGUuZy4gJ1Byb2R1Y3RzJywgJ0ludmVudG9yeScsICdQdXJjaGFzaW5nJ1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGdyb3VwOiBzdHJpbmc7XG5cbiAgQEJlbG9uZ3NUb01hbnkoKCkgPT4gU3lzUm9sZSwgKCkgPT4gUm9sZVBlcm1pc3Npb24pXG4gIGRlY2xhcmUgcm9sZXM6IFN5c1JvbGVbXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5cbmV4cG9ydCBlbnVtIE1lZGlhVHlwZSB7XG4gIElNQUdFID0gJ2ltYWdlJyxcbiAgVklERU8gPSAndmlkZW8nLFxufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBQcm9kdWN0TWVkaWEgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3QpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdElkOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB1cmw6IHN0cmluZztcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoTWVkaWFUeXBlKSksXG4gICAgZGVmYXVsdFZhbHVlOiBNZWRpYVR5cGUuSU1BR0UsXG4gIH0pXG4gIGRlY2xhcmUgdHlwZTogTWVkaWFUeXBlO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaXNEZWZhdWx0OiBib29sZWFuO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgYWx0RW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGFsdEFyPzogc3RyaW5nO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdClcbiAgZGVjbGFyZSBwcm9kdWN0OiBQcm9kdWN0O1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4vc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFByb2R1Y3RTdG9yZSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwcm9kdWN0SWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBTdG9yZSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBzdG9yZUlkOiBudW1iZXI7XG5cbiAgLy8gU3RvcmUtc3BlY2lmaWMgcmVndWxhciBwcmljZSDigJQgbnVsbCBtZWFucyB1c2UgcHJvZHVjdC5kZWZhdWx0UHJpY2VcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcmljZT86IG51bWJlcjtcblxuICAvLyBTYWxlIHByaWNlIOKAlCBvbmx5IGFjdGl2ZSB3aGVuIHRvZGF5IGlzIGJldHdlZW4gc2FsZVN0YXJ0RGF0ZSBhbmQgc2FsZUVuZERhdGVcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBzYWxlUHJpY2U/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRBVEUsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHNhbGVTdGFydERhdGU/OiBEYXRlO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBzYWxlRW5kRGF0ZT86IERhdGU7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBUYWcgfSBmcm9tICcuL3RhZy5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBQcm9kdWN0VGFnIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFRhZylcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB0YWdJZDogbnVtYmVyO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmltcG9ydCB7IFZhcmlhbnRPcHRpb24gfSBmcm9tICcuL3ZhcmlhbnQtb3B0aW9uLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFByb2R1Y3RWYXJpYW50T3B0aW9uIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwcm9kdWN0VmFyaWFudElkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gVmFyaWFudE9wdGlvbilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB2YXJpYW50T3B0aW9uSWQ6IG51bWJlcjtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIEJlbG9uZ3NUb01hbnksXG4gIEhhc01hbnksXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBWYXJpYW50T3B0aW9uIH0gZnJvbSAnLi92YXJpYW50LW9wdGlvbi5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFZhcmlhbnRPcHRpb24gfSBmcm9tICcuL3Byb2R1Y3QtdmFyaWFudC1vcHRpb24uZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFByb2R1Y3RWYXJpYW50IGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBza3U/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGJhcmNvZGU/OiBzdHJpbmc7XG5cbiAgLy8gT3ZlcnJpZGUgZGVmYXVsdCBwcm9kdWN0IHByaWNlIHBlciB2YXJpYW50IGlmIG5lZWRlZFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByaWNlT3ZlcnJpZGU/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGltYWdlPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBTdGF0dXMuQUNUSVZFLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogU3RhdHVzO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0KVxuICBkZWNsYXJlIHByb2R1Y3Q6IFByb2R1Y3Q7XG5cbiAgQEJlbG9uZ3NUb01hbnkoKCkgPT4gVmFyaWFudE9wdGlvbiwgKCkgPT4gUHJvZHVjdFZhcmlhbnRPcHRpb24pXG4gIGRlY2xhcmUgb3B0aW9uczogVmFyaWFudE9wdGlvbltdO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgSGFzTWFueSxcbiAgQmVsb25nc1RvTWFueSxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IEJyYW5kIH0gZnJvbSAnLi9icmFuZC5lbnRpdHknO1xuaW1wb3J0IHsgQ2F0ZWdvcnkgfSBmcm9tICcuL2NhdGVnb3J5LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0TWVkaWEgfSBmcm9tICcuL3Byb2R1Y3QtbWVkaWEuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RTdG9yZSB9IGZyb20gJy4vcHJvZHVjdC1zdG9yZS5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFRhZyB9IGZyb20gJy4vcHJvZHVjdC10YWcuZW50aXR5JztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnLi9zdG9yZS5lbnRpdHknO1xuaW1wb3J0IHsgVGFnIH0gZnJvbSAnLi90YWcuZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5pbXBvcnQgeyBVc2VyRmF2b3JpdGUgfSBmcm9tICcuL3VzZXItZmF2b3JpdGUuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUHJvZHVjdCBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lRW46IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVBcjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkVuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkFyPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBza3U/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGJhcmNvZGU/OiBzdHJpbmc7XG5cbiAgLy8gRGVmYXVsdCBwcmljZSB1c2VkIHdoZW4gbm8gc3RvcmUtc3BlY2lmaWMgcHJpY2UgaXMgc2V0XG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgZGVmYXVsdFByaWNlOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gQnJhbmQpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBicmFuZElkPzogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IENhdGVnb3J5KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY2F0ZWdvcnlJZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgc29ydE9yZGVyOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc0ZlYXR1cmVkOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaGFzVmFyaWFudHM6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQnJhbmQpXG4gIGRlY2xhcmUgYnJhbmQ6IEJyYW5kO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ2F0ZWdvcnkpXG4gIGRlY2xhcmUgY2F0ZWdvcnk6IENhdGVnb3J5O1xuXG4gIEBIYXNNYW55KCgpID0+IFByb2R1Y3RNZWRpYSlcbiAgZGVjbGFyZSBtZWRpYTogUHJvZHVjdE1lZGlhW107XG5cbiAgQEhhc01hbnkoKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIGRlY2xhcmUgdmFyaWFudHM6IFByb2R1Y3RWYXJpYW50W107XG5cbiAgQEJlbG9uZ3NUb01hbnkoKCkgPT4gU3RvcmUsICgpID0+IFByb2R1Y3RTdG9yZSlcbiAgZGVjbGFyZSBzdG9yZXM6IFN0b3JlW107XG5cbiAgQEJlbG9uZ3NUb01hbnkoKCkgPT4gVGFnLCAoKSA9PiBQcm9kdWN0VGFnKVxuICBkZWNsYXJlIHRhZ3M6IFRhZ1tdO1xuXG4gIEBIYXNNYW55KCgpID0+IFVzZXJGYXZvcml0ZSlcbiAgZGVjbGFyZSB1c2VyRmF2b3JpdGVzOiBVc2VyRmF2b3JpdGVbXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQdXJjaGFzZU9yZGVyIH0gZnJvbSAnLi9wdXJjaGFzZS1vcmRlci5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFZhcmlhbnQgfSBmcm9tICcuL3Byb2R1Y3QtdmFyaWFudC5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBQdXJjaGFzZU9yZGVySXRlbVN0YXR1cyB7XG4gIFBFTkRJTkcgPSAncGVuZGluZycsXG4gIFBBUlRJQUxMWV9SRUNFSVZFRCA9ICdwYXJ0aWFsbHlfcmVjZWl2ZWQnLFxuICBGVUxMWV9SRUNFSVZFRCA9ICdmdWxseV9yZWNlaXZlZCcsXG4gIENBTkNFTExFRCA9ICdjYW5jZWxsZWQnLFxufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBQdXJjaGFzZU9yZGVySXRlbSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHVyY2hhc2VPcmRlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwdXJjaGFzZU9yZGVySWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdFZhcmlhbnRJZD86IG51bWJlcjtcblxuICAvLyBIb3cgbWFueSB1bml0cyB3ZXJlIG9yZGVyZWQgZnJvbSB2ZW5kb3JcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBvcmRlcmVkUXVhbnRpdHk6IG51bWJlcjtcblxuICAvLyBIb3cgbWFueSB1bml0cyBoYXZlIGJlZW4gcmVjZWl2ZWQgc28gZmFyICh1cGRhdGVkIG9uIGVhY2ggcmVjZWlwdClcbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHJlY2VpdmVkUXVhbnRpdHk6IG51bWJlcjtcblxuICAvLyBIb3cgbWFueSBvZiB0aGVzZSBhcmUgcmVzZXJ2ZWQgZm9yIGEgc3BlY2lmaWMgY3VzdG9tZXIgb3JkZXJcbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHJlc2VydmVkUXVhbnRpdHk6IG51bWJlcjtcblxuICAvLyBWZW5kb3IncyBjb3N0IHByaWNlIHBlciB1bml0IGF0IHRpbWUgb2YgUE9cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdW5pdENvc3RQcmljZTogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgdG90YWxDb3N0UHJpY2U6IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoUHVyY2hhc2VPcmRlckl0ZW1TdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFB1cmNoYXNlT3JkZXJJdGVtU3RhdHVzLlBFTkRJTkcsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBQdXJjaGFzZU9yZGVySXRlbVN0YXR1cztcblxuICAvLyBSZWZlcmVuY2UgdG8gdGhlIGN1c3RvbWVyIG9yZGVyIHRoYXQgdHJpZ2dlcmVkIHRoaXMgUE8gaXRlbSAobnVsbGFibGUgPSBwcm9hY3RpdmUgc3RvY2sgcmVwbGVuaXNobWVudClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHRyaWdnZXJPcmRlcklkPzogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQdXJjaGFzZU9yZGVyKVxuICBkZWNsYXJlIHB1cmNoYXNlT3JkZXI6IFB1cmNoYXNlT3JkZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0KVxuICBkZWNsYXJlIHByb2R1Y3Q6IFByb2R1Y3Q7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgZGVjbGFyZSB2YXJpYW50PzogUHJvZHVjdFZhcmlhbnQ7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgRm9yZWlnbktleSwgQmVsb25nc1RvLCBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgUHVyY2hhc2VPcmRlciB9IGZyb20gJy4vcHVyY2hhc2Utb3JkZXIuZW50aXR5JztcbmltcG9ydCB7IFB1cmNoYXNlT3JkZXJJdGVtIH0gZnJvbSAnLi9wdXJjaGFzZS1vcmRlci1pdGVtLmVudGl0eSc7XG5pbXBvcnQgeyBPcmRlckl0ZW0gfSBmcm9tICcuL29yZGVyLWl0ZW0uZW50aXR5JztcbmltcG9ydCB7IE9yZGVyIH0gZnJvbSAnLi9vcmRlci5lbnRpdHknO1xuXG4vLyBKdW5jdGlvbiB0YWJsZTogbGlua3MgYSBQTyBpdGVtIHRvIHRoZSBvcmRlciBpdGVtKHMpIGl0IHdpbGwgZnVsZmlsbFxuLy8gT25lIFBPIGl0ZW0gY2FuIGNvdmVyIGl0ZW1zIGZyb20gbXVsdGlwbGUgb3JkZXJzXG4vLyBPbmUgb3JkZXIgaXRlbSBpcyBsaW5rZWQgdG8gZXhhY3RseSBvbmUgUE8gaXRlbVxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUHVyY2hhc2VPcmRlck9yZGVySXRlbSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHVyY2hhc2VPcmRlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwdXJjaGFzZU9yZGVySWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQdXJjaGFzZU9yZGVySXRlbSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwdXJjaGFzZU9yZGVySXRlbUlkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gT3JkZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgb3JkZXJJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IE9yZGVySXRlbSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBvcmRlckl0ZW1JZDogbnVtYmVyO1xuXG4gIC8vIEhvdyBtYW55IHVuaXRzIG9mIHRoaXMgUE8gaXRlbSBhcmUgYWxsb2NhdGVkIHRvIHRoaXMgb3JkZXIgaXRlbVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAxIH0pXG4gIGRlY2xhcmUgYWxsb2NhdGVkUXVhbnRpdHk6IG51bWJlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IFB1cmNoYXNlT3JkZXIpICAgICBkZWNsYXJlIHB1cmNoYXNlT3JkZXI6IFB1cmNoYXNlT3JkZXI7XG4gIEBCZWxvbmdzVG8oKCkgPT4gUHVyY2hhc2VPcmRlckl0ZW0pIGRlY2xhcmUgcHVyY2hhc2VPcmRlckl0ZW06IFB1cmNoYXNlT3JkZXJJdGVtO1xuICBAQmVsb25nc1RvKCgpID0+IE9yZGVyKSAgICAgICAgICAgICBkZWNsYXJlIG9yZGVyOiBPcmRlcjtcbiAgQEJlbG9uZ3NUbygoKSA9PiBPcmRlckl0ZW0pICAgICAgICAgZGVjbGFyZSBvcmRlckl0ZW06IE9yZGVySXRlbTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIEhhc01hbnksXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBWZW5kb3IgfSBmcm9tICcuL3ZlbmRvci5lbnRpdHknO1xuaW1wb3J0IHsgSW52ZW50b3J5IH0gZnJvbSAnLi9pbnZlbnRvcnkuZW50aXR5JztcbmltcG9ydCB7IFN5c1VzZXIgfSBmcm9tICcuL3N5cy51c2VyLmVudGl0eSc7XG5pbXBvcnQgeyBQdXJjaGFzZU9yZGVySXRlbSB9IGZyb20gJy4vcHVyY2hhc2Utb3JkZXItaXRlbS5lbnRpdHknO1xuaW1wb3J0IHsgUHVyY2hhc2VPcmRlclN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3B1cmNoYXNlT3JkZXJTdGF0dXMnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBQdXJjaGFzZU9yZGVyIGV4dGVuZHMgTW9kZWwge1xuICAvLyBBdXRvLWdlbmVyYXRlZCBQTyBudW1iZXIgZS5nLiBQTy0yMDI2LTAwMDAxXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCB1bmlxdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBwb051bWJlcjogc3RyaW5nO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFZlbmRvcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB2ZW5kb3JJZDogbnVtYmVyO1xuXG4gIC8vIFRhcmdldCBpbnZlbnRvcnkgd2hlcmUgcmVjZWl2ZWQgc3RvY2sgd2lsbCBiZSBzdG9yZWRcbiAgQEZvcmVpZ25LZXkoKCkgPT4gSW52ZW50b3J5KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGludmVudG9yeUlkOiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFB1cmNoYXNlT3JkZXJTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFB1cmNoYXNlT3JkZXJTdGF0dXMuRFJBRlQsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBQdXJjaGFzZU9yZGVyU3RhdHVzO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgdG90YWxBbW91bnQ6IG51bWJlcjtcblxuICAvLyBDdXJyZW5jeSBvZiB0aGUgUE8gKHZlbmRvcidzIGN1cnJlbmN5KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAnVVNEJyB9KVxuICBkZWNsYXJlIGN1cnJlbmN5OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGV4cGVjdGVkRGVsaXZlcnlEYXRlPzogRGF0ZTtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2VudEF0PzogRGF0ZTtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY2xvc2VkQXQ/OiBEYXRlO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjYW5jZWxsZWRBdD86IERhdGU7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNhbmNlbGxhdGlvblJlYXNvbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbm90ZXM/OiBzdHJpbmc7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3lzVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNyZWF0ZWRCeT86IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBTeXNVc2VyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2VudEJ5PzogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBWZW5kb3IpXG4gIGRlY2xhcmUgdmVuZG9yOiBWZW5kb3I7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBJbnZlbnRvcnkpXG4gIGRlY2xhcmUgaW52ZW50b3J5OiBJbnZlbnRvcnk7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBTeXNVc2VyLCB7IGZvcmVpZ25LZXk6ICdjcmVhdGVkQnknLCBhczogJ2NyZWF0b3InIH0pXG4gIGRlY2xhcmUgY3JlYXRvcj86IFN5c1VzZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBTeXNVc2VyLCB7IGZvcmVpZ25LZXk6ICdzZW50QnknLCBhczogJ3NlbmRlcicgfSlcbiAgZGVjbGFyZSBzZW5kZXI/OiBTeXNVc2VyO1xuXG4gIEBIYXNNYW55KCgpID0+IFB1cmNoYXNlT3JkZXJJdGVtKVxuICBkZWNsYXJlIGl0ZW1zOiBQdXJjaGFzZU9yZGVySXRlbVtdO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFN5c1JvbGUgfSBmcm9tICcuL3N5cy5yb2xlLmVudGl0eSc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uIH0gZnJvbSAnLi9wZXJtaXNzaW9uLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFJvbGVQZXJtaXNzaW9uIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBTeXNSb2xlKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHN5c1JvbGVJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFBlcm1pc3Npb24pXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcGVybWlzc2lvbklkOiBudW1iZXI7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgSW52ZW50b3J5IH0gZnJvbSAnLi9pbnZlbnRvcnkuZW50aXR5JztcbmltcG9ydCB7IENvdW50cnkgfSBmcm9tICcuL2NvdW50cnkuZW50aXR5JztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnLi9zdG9yZS5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBTaGlwcGluZ1J1bGUgZXh0ZW5kcyBNb2RlbCB7XG4gIC8vIEZyb20gd2hpY2ggaW52ZW50b3J5XG4gIEBGb3JlaWduS2V5KCgpID0+IEludmVudG9yeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBpbnZlbnRvcnlJZDogbnVtYmVyO1xuXG4gIC8vIFRvIHdoaWNoIGNvdW50cnlcbiAgQEZvcmVpZ25LZXkoKCkgPT4gQ291bnRyeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBjb3VudHJ5SWQ6IG51bWJlcjtcblxuICAvLyBPcHRpb25hbDogb3ZlcnJpZGUgZm9yIGEgc3BlY2lmaWMgc3RvcmVcbiAgLy8gbnVsbCA9IGFwcGxpZXMgdG8gYWxsIHN0b3JlcyBzaGlwcGluZyBmcm9tIHRoaXMgaW52ZW50b3J5IHRvIHRoaXMgY291bnRyeVxuICBARm9yZWlnbktleSgoKSA9PiBTdG9yZSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHN0b3JlSWQ/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMSB9KVxuICBkZWNsYXJlIG1pbkRheXM6IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAzIH0pXG4gIGRlY2xhcmUgbWF4RGF5czogbnVtYmVyO1xuXG4gIC8vIENhcnJpZXIgbmFtZSBlLmcuIEFyYW1leCwgREhMLCBGZWRFeCwgSW50ZXJuYWxcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNhcnJpZXJOYW1lPzogc3RyaW5nO1xuXG4gIC8vIFNoaXBwaW5nIGNvc3QgaW4gdGhlIGludmVudG9yeSdzIGJhc2UgY3VycmVuY3kgKEtXRClcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IHRydWUsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHNoaXBwaW5nQ29zdD86IG51bWJlcjtcblxuICAvLyBGcmVlIHNoaXBwaW5nIHRocmVzaG9sZCDigJQgbnVsbCBtZWFucyBuZXZlciBmcmVlXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZnJlZVNoaXBwaW5nVGhyZXNob2xkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBpc0FjdGl2ZTogYm9vbGVhbjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbm90ZXM/OiBzdHJpbmc7XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IEludmVudG9yeSlcbiAgZGVjbGFyZSBpbnZlbnRvcnk6IEludmVudG9yeTtcblxuICBAQmVsb25nc1RvKCgpID0+IENvdW50cnkpXG4gIGRlY2xhcmUgY291bnRyeTogQ291bnRyeTtcblxuICBAQmVsb25nc1RvKCgpID0+IFN0b3JlKVxuICBkZWNsYXJlIHN0b3JlPzogU3RvcmU7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgSW52ZW50b3J5IH0gZnJvbSAnLi9pbnZlbnRvcnkuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmltcG9ydCB7IFN5c1VzZXIgfSBmcm9tICcuL3N5cy51c2VyLmVudGl0eSc7XG5pbXBvcnQgeyBTdG9ja01vdmVtZW50VHlwZSB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0b2NrTW92ZW1lbnRUeXBlJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgU3RvY2tNb3ZlbWVudCBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gSW52ZW50b3J5KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGludmVudG9yeUlkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwcm9kdWN0SWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RWYXJpYW50SWQ/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0b2NrTW92ZW1lbnRUeXBlKSksXG4gICAgYWxsb3dOdWxsOiBmYWxzZSxcbiAgfSlcbiAgZGVjbGFyZSBtb3ZlbWVudFR5cGU6IFN0b2NrTW92ZW1lbnRUeXBlO1xuXG4gIC8vIFBvc2l0aXZlID0gc3RvY2sgaW4sIE5lZ2F0aXZlID0gc3RvY2sgb3V0XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcXVhbnRpdHk6IG51bWJlcjtcblxuICAvLyBTbmFwc2hvdCBvZiBxdWFudGl0eSBiZWZvcmUgdGhpcyBtb3ZlbWVudFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHF1YW50aXR5QmVmb3JlOiBudW1iZXI7XG5cbiAgLy8gU25hcHNob3Qgb2YgcXVhbnRpdHkgYWZ0ZXIgdGhpcyBtb3ZlbWVudFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHF1YW50aXR5QWZ0ZXI6IG51bWJlcjtcblxuICAvLyBSZWZlcmVuY2UgdG8gc291cmNlIGRvY3VtZW50IChQTyBpZCwgb3JkZXIgaWQsIGV0Yy4pXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSByZWZlcmVuY2VUeXBlPzogc3RyaW5nOyAvLyAncHVyY2hhc2Vfb3JkZXInIHwgJ29yZGVyJyB8ICdtYW51YWwnIHwgJ3RyYW5zZmVyJ1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSByZWZlcmVuY2VJZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbm90ZXM/OiBzdHJpbmc7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3lzVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNyZWF0ZWRCeT86IG51bWJlcjtcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gSW52ZW50b3J5KVxuICBkZWNsYXJlIGludmVudG9yeTogSW52ZW50b3J5O1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdClcbiAgZGVjbGFyZSBwcm9kdWN0OiBQcm9kdWN0O1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIGRlY2xhcmUgdmFyaWFudD86IFByb2R1Y3RWYXJpYW50O1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gU3lzVXNlcilcbiAgZGVjbGFyZSBjcmVhdGVkQnlVc2VyPzogU3lzVXNlcjtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBEYXRhVHlwZSxcbiAgQmVsb25nc1RvLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4vc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IEludmVudG9yeSB9IGZyb20gJy4vaW52ZW50b3J5LmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFN0b3JlSW52ZW50b3J5IGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBTdG9yZSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBzdG9yZUlkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gSW52ZW50b3J5KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGludmVudG9yeUlkOiBudW1iZXI7XG5cbiAgLy8gUHJpb3JpdHkg4oCUIGxvd2VyIG51bWJlciA9IHByZWZlcnJlZCBpbnZlbnRvcnkgZm9yIHRoaXMgc3RvcmVcbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMSB9KVxuICBkZWNsYXJlIHByaW9yaXR5OiBudW1iZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBJbnZlbnRvcnkpIC8vIOKGkCBhZGQgdGhpcyBhc3NvY2lhdGlvblxuICBpbnZlbnRvcnk6IEludmVudG9yeTtcblxuICBAQmVsb25nc1RvKCgpID0+IFN0b3JlKSAvLyDihpAgYWRkIHRoaXMgYXNzb2NpYXRpb25cbiAgc3RvcmU6IFN0b3JlO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsIENvbHVtbiwgTW9kZWwsIEZvcmVpZ25LZXksIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4vc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IFBheW1lbnRNZXRob2QgfSBmcm9tICcuL3BheW1lbnQtbWV0aG9kLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFN0b3JlUGF5bWVudE1ldGhvZCBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3RvcmUpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgc3RvcmVJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFBheW1lbnRNZXRob2QpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcGF5bWVudE1ldGhvZElkOiBudW1iZXI7XG5cbiAgLy8gU3RvcmUgY2FuIG92ZXJyaWRlIHNvcnQgb3JkZXIgZm9yIGRpc3BsYXlcbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHNvcnRPcmRlcjogbnVtYmVyO1xuXG4gIC8vIFN0b3JlIGNhbiBlbmFibGUvZGlzYWJsZSBpbmRlcGVuZGVudGx5IG9mIGdsb2JhbCBpc0FjdGl2ZVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgaXNFbmFibGVkOiBib29sZWFuO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgSGFzTWFueSxcbiAgQmVsb25nc1RvTWFueSxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IENvdW50cnkgfSBmcm9tICcuL2NvdW50cnkuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RTdG9yZSB9IGZyb20gJy4vcHJvZHVjdC1zdG9yZS5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmVJbnZlbnRvcnkgfSBmcm9tICcuL3N0b3JlLWludmVudG9yeS5lbnRpdHknO1xuaW1wb3J0IHsgSW52ZW50b3J5IH0gZnJvbSAnLi9pbnZlbnRvcnkuZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kIH0gZnJvbSAnLi9wYXltZW50LW1ldGhvZC5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmVQYXltZW50TWV0aG9kIH0gZnJvbSAnLi9zdG9yZS1wYXltZW50LW1ldGhvZC5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBTdG9yZSBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lRW46IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVBcjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkVuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkFyPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBsb2dvPzogc3RyaW5nO1xuXG4gIC8vIElTTyBjdXJyZW5jeSBjb2RlIGUuZy4gS1dELCBTQVIsIFFBUiwgVVNEXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6ICdVU0QnIH0pXG4gIGRlY2xhcmUgY3VycmVuY3k6IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY3VycmVuY3lTeW1ib2xFbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY3VycmVuY3lTeW1ib2xBcj86IHN0cmluZztcblxuICBARm9yZWlnbktleSgoKSA9PiBDb3VudHJ5KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY291bnRyeUlkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaXNHbG9iYWw6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ291bnRyeSlcbiAgZGVjbGFyZSBjb3VudHJ5OiBDb3VudHJ5O1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFByb2R1Y3QsICgpID0+IFByb2R1Y3RTdG9yZSlcbiAgZGVjbGFyZSBwcm9kdWN0czogUHJvZHVjdFtdO1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IEludmVudG9yeSwgKCkgPT4gU3RvcmVJbnZlbnRvcnkpXG4gIGRlY2xhcmUgaW52ZW50b3JpZXM6IEludmVudG9yeVtdO1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFBheW1lbnRNZXRob2QsICgpID0+IFN0b3JlUGF5bWVudE1ldGhvZClcbiAgZGVjbGFyZSBwYXltZW50TWV0aG9kczogUGF5bWVudE1ldGhvZFtdO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEJlbG9uZ3NUb01hbnksXG4gIEhhc01hbnksXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFBlcm1pc3Npb24gfSBmcm9tICcuL3Blcm1pc3Npb24uZW50aXR5JztcbmltcG9ydCB7IFJvbGVQZXJtaXNzaW9uIH0gZnJvbSAnLi9yb2xlLXBlcm1pc3Npb24uZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgU3lzUm9sZSBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIHVuaXF1ZTogdHJ1ZSB9KVxuICBkZWNsYXJlIG5hbWU6IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGlzcGxheU5hbWU/OiBzdHJpbmc7XG5cbiAgQEJlbG9uZ3NUb01hbnkoKCkgPT4gUGVybWlzc2lvbiwgKCkgPT4gUm9sZVBlcm1pc3Npb24pXG4gIGRlY2xhcmUgcGVybWlzc2lvbnM6IFBlcm1pc3Npb25bXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBTeXNSb2xlIH0gZnJvbSAnLi9zeXMucm9sZS5lbnRpdHknO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgU3lzVXNlciBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtblxuICBkZWNsYXJlIG5hbWU6IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHVzZXJuYW1lOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIHVuaXF1ZTogdHJ1ZSB9KVxuICBkZWNsYXJlIGVtYWlsOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwaG9uZUV4dDogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcGhvbmU6IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHBhc3N3b3JkOiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIHByb2ZpbGVQaWN0dXJlPzogc3RyaW5nO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFN5c1JvbGUpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSByb2xlSWQ/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbGFzdExvZ2luPzogRGF0ZTtcblxuICBAQmVsb25nc1RvKCgpID0+IFN5c1JvbGUpXG4gIGRlY2xhcmUgcm9sZT86IFN5c1JvbGU7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgQmVsb25nc1RvTWFueSxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RUYWcgfSBmcm9tICcuL3Byb2R1Y3QtdGFnLmVudGl0eSc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBUYWcgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCB1bmlxdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBzbHVnOiBzdHJpbmc7IC8vIGUuZy4gJ2Jlc3Rfc2VsbGVyJywgJ25ld19hcnJpdmFsJywgJ2Rpc2NvdW50J1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICAvLyBPcHRpb25hbCBjb2xvciBmb3IgVUkgYmFkZ2UgZGlzcGxheSBlLmcuICcjRkYwMDAwJ1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY29sb3I/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHNvcnRPcmRlcjogbnVtYmVyO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgQEJlbG9uZ3NUb01hbnkoKCkgPT4gUHJvZHVjdCwgKCkgPT4gUHJvZHVjdFRhZylcbiAgZGVjbGFyZSBwcm9kdWN0czogUHJvZHVjdFtdO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuL3VzZXIuZW50aXR5JztcbmltcG9ydCB7IENvdW50cnkgfSBmcm9tICcuL2NvdW50cnkuZW50aXR5JztcbmltcG9ydCB7IEFyZWEgfSBmcm9tICcuL2FyZWEuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgVXNlckFkZHJlc3MgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFVzZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdXNlcklkOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBsYWJlbDogc3RyaW5nOyAvLyBlLmcuICdIb21lJywgJ1dvcmsnLCAnT3RoZXInXG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBmdWxsTmFtZTogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcGhvbmVFeHQ6IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHBob25lOiBzdHJpbmc7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gQ291bnRyeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBjb3VudHJ5SWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBBcmVhKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgYXJlYUlkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjaXR5Pzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBibG9jaz86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgc3RyZWV0Pzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBidWlsZGluZz86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZmxvb3I/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGFwYXJ0bWVudD86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgYWRkaXRpb25hbEluZm8/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoOSwgNiksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGxhdGl0dWRlPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDksIDYpLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBsb25naXR1ZGU/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc0RlZmF1bHQ6IGJvb2xlYW47XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IFVzZXIpXG4gIGRlY2xhcmUgdXNlcjogVXNlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IENvdW50cnkpXG4gIGRlY2xhcmUgY291bnRyeTogQ291bnRyeTtcblxuICBAQmVsb25nc1RvKCgpID0+IEFyZWEpXG4gIGRlY2xhcmUgYXJlYT86IEFyZWE7XG59XG4iLCJpbXBvcnQge1xuICBNb2RlbCwgVGFibGUsIENvbHVtbiwgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLCBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4vdXNlci5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBGYXZvcml0ZUNhdGFsb2dJdGVtVHlwZSB7XG4gIFBST0RVQ1QgPSAncHJvZHVjdCcsXG4gIEJVTkRMRSAgPSAnYnVuZGxlJyxcbn1cblxuQFRhYmxlKHtcbiAgcGFyYW5vaWQ6IGZhbHNlLCAvLyBoYXJkIGRlbGV0ZSBvbmx5IOKAlCBzb2Z0IGRlbGV0ZSBicmVha3MgdGhlIHVuaXF1ZSBjb25zdHJhaW50IG9uIHJlLWFkZFxuICB0aW1lc3RhbXBzOiB0cnVlLCAvLyBrZWVwcyBjcmVhdGVkQXQgLyB1cGRhdGVkQXQsIG5vIGRlbGV0ZWRBdCBjb2x1bW5cbiAgaW5kZXhlczogW1xuICAgIHtcbiAgICAgIC8vIFByZXZlbnQgZHVwbGljYXRlIGZhdm9yaXRlcyBmb3IgdGhlIHNhbWUgaXRlbVxuICAgICAgdW5pcXVlOiB0cnVlLFxuICAgICAgZmllbGRzOiBbJ3VzZXJJZCcsICdpdGVtVHlwZScsICdpdGVtSWQnXSxcbiAgICAgIG5hbWU6ICd1cV91c2VyX2Zhdm9yaXRlX2NhdGFsb2dfaXRlbScsXG4gICAgfSxcbiAgICB7XG4gICAgICAvLyBGYXN0IGxvb2t1cCBmb3IgYWxsIGZhdm9yaXRlcyBvZiBhIHVzZXJcbiAgICAgIGZpZWxkczogWyd1c2VySWQnXSxcbiAgICAgIG5hbWU6ICdpZHhfdXNlcl9mYXZvcml0ZV9jYXRhbG9nX3VzZXJJZCcsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVXNlckZhdm9yaXRlQ2F0YWxvZyBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB1c2VySWQ6IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoRmF2b3JpdGVDYXRhbG9nSXRlbVR5cGUpKSxcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICB9KVxuICBkZWNsYXJlIGl0ZW1UeXBlOiBGYXZvcml0ZUNhdGFsb2dJdGVtVHlwZTtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGl0ZW1JZDogbnVtYmVyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gVXNlcilcbiAgZGVjbGFyZSB1c2VyOiBVc2VyO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4vdXNlci5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vcHJvZHVjdC5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBVc2VyRmF2b3JpdGUgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFVzZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdXNlcklkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwcm9kdWN0SWQ6IG51bWJlcjtcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gVXNlcilcbiAgZGVjbGFyZSB1c2VyOiBVc2VyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdClcbiAgZGVjbGFyZSBwcm9kdWN0OiBQcm9kdWN0O1xuXG5cbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBGb3JlaWduS2V5LCBCZWxvbmdzVG8sIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi91c2VyLmVudGl0eSc7XG5pbXBvcnQgeyBPcmRlciB9IGZyb20gJy4vb3JkZXIuZW50aXR5JztcblxuZXhwb3J0IGVudW0gVHJhbnNhY3Rpb25UeXBlIHtcbiAgREVCSVQgID0gJ2RlYml0JywgICAvLyBtb25leSBsZWF2ZXMgdXNlciBiYWxhbmNlXG4gIENSRURJVCA9ICdjcmVkaXQnLCAgLy8gbW9uZXkgZW50ZXJzIHVzZXIgYmFsYW5jZVxufVxuXG5leHBvcnQgZW51bSBUcmFuc2FjdGlvbkNhdGVnb3J5IHtcbiAgT1JERVJfUEFZTUVOVCAgICAgID0gJ29yZGVyX3BheW1lbnQnLCAgICAgIC8vIERFQklUOiBwYWlkIGZvciBvcmRlclxuICBPUkRFUl9SRUZVTkQgICAgICAgPSAnb3JkZXJfcmVmdW5kJywgICAgICAgLy8gQ1JFRElUOiByZWZ1bmQgcmVjZWl2ZWRcbiAgR0lGVF9TRU5UICAgICAgICAgID0gJ2dpZnRfc2VudCcsICAgICAgICAgIC8vIERFQklUOiBzZW50IGdpZnQgdG8gc29tZW9uZVxuICBHSUZUX1JFQ0VJVkVEICAgICAgPSAnZ2lmdF9yZWNlaXZlZCcsICAgICAgLy8gQ1JFRElUOiByZWNlaXZlZCBhIGdpZnRcbiAgQkFMQU5DRV9UT1BfVVAgICAgID0gJ2JhbGFuY2VfdG9wX3VwJywgICAgIC8vIENSRURJVDogdG9wcGVkIHVwIHdhbGxldFxuICBCQUxBTkNFX1dJVEhEUkFXQUwgPSAnYmFsYW5jZV93aXRoZHJhd2FsJywgLy8gREVCSVQ6IHdpdGhkcmV3IGJhbGFuY2VcbiAgQ09VUE9OX0NSRURJVCAgICAgID0gJ2NvdXBvbl9jcmVkaXQnLCAgICAgIC8vIENSRURJVDogY291cG9uIGNhc2hiYWNrXG4gIEFESlVTVE1FTlQgICAgICAgICA9ICdhZGp1c3RtZW50JywgICAgICAgICAvLyBERUJJVCBvciBDUkVESVQ6IG1hbnVhbCBhZG1pbiBhZGp1c3RtZW50XG4gIENBU0hCQUNLICAgICAgICAgICA9ICdjYXNoYmFjaycsICAgICAgICAgICAvLyBDUkVESVQ6IGxveWFsdHkgY2FzaGJhY2tcbn1cblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgVXNlclRyYW5zYWN0aW9uIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBVc2VyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHVzZXJJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhUcmFuc2FjdGlvblR5cGUpKSxcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICB9KVxuICBkZWNsYXJlIHR5cGU6IFRyYW5zYWN0aW9uVHlwZTtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoVHJhbnNhY3Rpb25DYXRlZ29yeSkpLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gIH0pXG4gIGRlY2xhcmUgY2F0ZWdvcnk6IFRyYW5zYWN0aW9uQ2F0ZWdvcnk7XG5cbiAgLy8gVHJhbnNhY3Rpb24gYW1vdW50IChhbHdheXMgcG9zaXRpdmUg4oCUIHR5cGUgZGV0ZXJtaW5lcyBkaXJlY3Rpb24pXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGFtb3VudDogbnVtYmVyO1xuXG4gIC8vIFJ1bm5pbmcgYmFsYW5jZSBBRlRFUiB0aGlzIHRyYW5zYWN0aW9uXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgYmFsYW5jZUFmdGVyOiBudW1iZXI7XG5cbiAgLy8gQ3VycmVuY3kgb2YgdGhlIHRyYW5zYWN0aW9uXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6ICdLV0QnIH0pXG4gIGRlY2xhcmUgY3VycmVuY3k6IHN0cmluZztcblxuICAvLyBCaWxpbmd1YWwgZGVzY3JpcHRpb24gc2hvd24gaW4gdGhlIGFwcFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGRlc2NyaXB0aW9uRW46IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGRlc2NyaXB0aW9uQXI6IHN0cmluZztcblxuICAvLyBSZWZlcmVuY2UgdG8gdGhlIHJlbGF0ZWQgb3JkZXIgKGlmIGFwcGxpY2FibGUpXG4gIEBGb3JlaWduS2V5KCgpID0+IE9yZGVyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgb3JkZXJJZD86IG51bWJlcjtcblxuICAvLyBFeHRlcm5hbCByZWZlcmVuY2UgKHBheW1lbnQgZ2F0ZXdheSB0cmFuc2FjdGlvbiBJRCwgZXRjLilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGV4dGVybmFsUmVmZXJlbmNlPzogc3RyaW5nO1xuXG4gIC8vIFN0YXR1czogcGVuZGluZyB8IGNvbXBsZXRlZCB8IGZhaWxlZCB8IHJldmVyc2VkXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6ICdjb21wbGV0ZWQnIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBzdHJpbmc7XG5cbiAgLy8g4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IFVzZXIpXG4gIGRlY2xhcmUgdXNlcjogVXNlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IE9yZGVyKVxuICBkZWNsYXJlIG9yZGVyPzogT3JkZXI7XG59XG4iLCJpbXBvcnQge1xuICBNb2RlbCxcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBEYXRhVHlwZSxcbiAgSGFzTWFueSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcbmltcG9ydCB7IExhbmd1YWdlIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvbGFuZ3VhZ2UnO1xuaW1wb3J0IHsgQ291bnRyeSB9IGZyb20gJy4vY291bnRyeS5lbnRpdHknO1xuaW1wb3J0IHsgR2VuZGVyIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvZ2VuZGVyJztcbmltcG9ydCB7IFVzZXJBZGRyZXNzIH0gZnJvbSAnLi91c2VyLWFkZHJlc3MuZW50aXR5JztcbmltcG9ydCB7IENhcnQgfSBmcm9tICcuL2NhcnQuZW50aXR5JztcbmltcG9ydCB7IE9yZGVyIH0gZnJvbSAnLi9vcmRlci5lbnRpdHknO1xuaW1wb3J0IHsgVXNlclRyYW5zYWN0aW9uIH0gZnJvbSAnLi91c2VyLXRyYW5zYWN0aW9uLmVudGl0eSc7XG5pbXBvcnQgeyBVc2VyRmF2b3JpdGVDYXRhbG9nIH0gZnJvbSAnLi91c2VyLWZhdm9yaXRlLWNhdGFsb2cuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgVXNlciBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtblxuICBkZWNsYXJlIGZpcnN0TmFtZT86IHN0cmluZztcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgbGFzdE5hbWU/OiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIHBhc3N3b3JkOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdmFsaWRhdGU6IHsgaXNFbWFpbDogeyBtc2c6ICdJbnZhbGlkIEVtYWlsJyB9IH0gfSlcbiAgZGVjbGFyZSBlbWFpbDogc3RyaW5nO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBwaG9uZT86IHN0cmluZztcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgcGhvbmVFeHQ/OiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIGJpcnRoZGF5PzogRGF0ZTtcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgZmFjZWJvb2tJZD86IHN0cmluZztcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgZ29vZ2xlSWQ/OiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIGFwcGxlSWQ/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKExhbmd1YWdlKSksXG4gICAgZGVmYXVsdFZhbHVlOiBMYW5ndWFnZS5FTkdMSVNILFxuICB9KVxuICBkZWNsYXJlIHByZWZlcnJlZExhbmd1YWdlOiBMYW5ndWFnZTtcblxuICBARm9yZWlnbktleSgoKSA9PiBDb3VudHJ5KVxuICBAQ29sdW1uXG4gIGRlY2xhcmUgcHJlZmVycmVkQ291bnRyeUlkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBwcm9maWxlUGljPzogc3RyaW5nO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBsYXN0TG9naW46IERhdGU7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc0Jsb2NrZWQ6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc1ZlcmlmaWVkOiBib29sZWFuO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSByZWZDb2RlOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKEdlbmRlcikpLFxuICAgIGRlZmF1bHRWYWx1ZTogR2VuZGVyLlBSRUZFUl9OT1RfVE9fU0FZLFxuICB9KVxuICBkZWNsYXJlIGdlbmRlcjogR2VuZGVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgd2FsbGV0QmFsYW5jZTogbnVtYmVyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ291bnRyeSlcbiAgZGVjbGFyZSBjb3VudHJ5OiBDb3VudHJ5O1xuXG4gIEBIYXNNYW55KCgpID0+IFVzZXJBZGRyZXNzKVxuICBkZWNsYXJlIGFkZHJlc3NlczogVXNlckFkZHJlc3NbXTtcblxuICBASGFzTWFueSgoKSA9PiBVc2VyRmF2b3JpdGVDYXRhbG9nKVxuICBkZWNsYXJlIGZhdm9yaXRlczogVXNlckZhdm9yaXRlQ2F0YWxvZ1tdO1xuXG4gIEBIYXNNYW55KCgpID0+IENhcnQpXG4gIGRlY2xhcmUgY2FydHM6IENhcnRbXTtcblxuICBASGFzTWFueSgoKSA9PiBPcmRlcilcbiAgZGVjbGFyZSBvcmRlcnM6IE9yZGVyW107XG5cbiAgQEhhc01hbnkoKCkgPT4gVXNlclRyYW5zYWN0aW9uKVxuICBkZWNsYXJlIHRyYW5zYWN0aW9uczogVXNlclRyYW5zYWN0aW9uW107XG59XG4iLCJpbXBvcnQge1xuICBNb2RlbCxcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgUHJpbWFyeUtleSxcbiAgQXV0b0luY3JlbWVudCxcbiAgQ3JlYXRlZEF0LFxuICBVcGRhdGVkQXQsXG4gIERlbGV0ZWRBdCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBCZWxvbmdzVG9NYW55LFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4vdXNlci5lbnRpdHknO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcbmltcG9ydCB7IE9zTmFtZSB9IGZyb20gJy4uL3V0aWxzL2VudW1zL29zTmFtZSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFVzZXJEZXZpY2UgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFVzZXIpXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSB1c2VySWQ6IG51bWJlcjtcbiAgQENvbHVtblxuICBkZWNsYXJlIGRldmljZUlkPzogc3RyaW5nO1xuICBAQ29sdW1uXG4gIGRlY2xhcmUgZmNtVG9rZW4/OiBzdHJpbmc7XG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKE9zTmFtZSkpLFxuICAgIGFsbG93TnVsbDogdHJ1ZSxcbiAgfSlcbiAgZGVjbGFyZSBvc1N5c3RlbTogc3RyaW5nO1xuICBAQmVsb25nc1RvKCgpID0+IFVzZXIpXG4gIGRlY2xhcmUgdXNlcjogVXNlcjtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBWYXJpYW50VHlwZSB9IGZyb20gJy4vdmFyaWFudC10eXBlLmVudGl0eSc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBWYXJpYW50T3B0aW9uIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBWYXJpYW50VHlwZSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB2YXJpYW50VHlwZUlkOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lRW46IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVBcjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBTdGF0dXMuQUNUSVZFLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogU3RhdHVzO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gVmFyaWFudFR5cGUpXG4gIGRlY2xhcmUgdmFyaWFudFR5cGU6IFZhcmlhbnRUeXBlO1xufVxuIiwiaW1wb3J0IHsgVGFibGUsIENvbHVtbiwgTW9kZWwsIEhhc01hbnkgfSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuaW1wb3J0IHsgRGF0YVR5cGUgfSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFZhcmlhbnRUeXBlIGV4dGVuZHMgTW9kZWwge1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVFbjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUFyOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBWZW5kb3IgfSBmcm9tICcuL3ZlbmRvci5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFZhcmlhbnQgfSBmcm9tICcuL3Byb2R1Y3QtdmFyaWFudC5lbnRpdHknO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgVmVuZG9yUHJvZHVjdCBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gVmVuZG9yKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHZlbmRvcklkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwcm9kdWN0SWQ6IG51bWJlcjtcblxuICAvLyBudWxsID0gYXBwbGllcyB0byBwcm9kdWN0IHdpdGggbm8gdmFyaWFudHNcbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcm9kdWN0VmFyaWFudElkPzogbnVtYmVyO1xuXG4gIC8vIFZlbmRvcidzIGNvc3QgcHJpY2UgdG8gdXNcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgY29zdFByaWNlOiBudW1iZXI7XG5cbiAgLy8gVmVuZG9yJ3MgU0tVL3JlZmVyZW5jZSBjb2RlIGZvciB0aGlzIHByb2R1Y3RcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHZlbmRvclNrdT86IHN0cmluZztcblxuICAvLyBUeXBpY2FsIGxlYWQgdGltZSBpbiBkYXlzIGZyb20gdGhpcyB2ZW5kb3JcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGxlYWRUaW1lRGF5cz86IG51bWJlcjtcblxuICAvLyBNaW5pbXVtIG9yZGVyIHF1YW50aXR5XG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDEgfSlcbiAgZGVjbGFyZSBtb3E6IG51bWJlcjtcblxuICAvLyBJcyB0aGlzIHRoZSBwcmVmZXJyZWQvZGVmYXVsdCB2ZW5kb3IgZm9yIHRoaXMgcHJvZHVjdD9cbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc1ByZWZlcnJlZDogYm9vbGVhbjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBTdGF0dXMuQUNUSVZFLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogU3RhdHVzO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBWZW5kb3IpXG4gIGRlY2xhcmUgdmVuZG9yOiBWZW5kb3I7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0KVxuICBkZWNsYXJlIHByb2R1Y3Q6IFByb2R1Y3Q7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgZGVjbGFyZSB2YXJpYW50PzogUHJvZHVjdFZhcmlhbnQ7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBIYXNNYW55LFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgQ291bnRyeSB9IGZyb20gJy4vY291bnRyeS5lbnRpdHknO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgVmVuZG9yIGV4dGVuZHMgTW9kZWwge1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVFbjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUFyOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvbnRhY3RQZXJzb24/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGVtYWlsPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwaG9uZT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgYWRkcmVzc0VuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBhZGRyZXNzQXI/OiBzdHJpbmc7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gQ291bnRyeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvdW50cnlJZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgdGF4TnVtYmVyPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjb21tZXJjaWFsUmVnTnVtYmVyPzogc3RyaW5nO1xuXG4gIC8vIERlZmF1bHQgcGF5bWVudCB0ZXJtcyBpbiBkYXlzIChlLmcuIDMwID0gTkVUMzApXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBwYXltZW50VGVybXNEYXlzOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG5vdGVzPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IENvdW50cnkpXG4gIGRlY2xhcmUgY291bnRyeTogQ291bnRyeTtcbn1cbiIsImltcG9ydCB7IE1vZGVsQ3RvciB9IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcblxuLy8g4pSA4pSA4pSAIEV4aXN0aW5nIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuaW1wb3J0IHsgQ291bnRyeSB9IGZyb20gJy4vZW50aXRpZXMvY291bnRyeS5lbnRpdHknO1xuaW1wb3J0IHsgQXJlYSB9IGZyb20gJy4vZW50aXRpZXMvYXJlYS5lbnRpdHknO1xuaW1wb3J0IHsgU3lzUm9sZSB9IGZyb20gJy4vZW50aXRpZXMvc3lzLnJvbGUuZW50aXR5JztcbmltcG9ydCB7IFN5c1VzZXIgfSBmcm9tICcuL2VudGl0aWVzL3N5cy51c2VyLmVudGl0eSc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi9lbnRpdGllcy91c2VyLmVudGl0eSc7XG5pbXBvcnQgeyBVc2VyRGV2aWNlIH0gZnJvbSAnLi9lbnRpdGllcy91c2VyRGV2aWNlLmVudGl0eSc7XG5pbXBvcnQgeyBBcGlLZXkgfSBmcm9tICcuL2VudGl0aWVzL2FwaWtleS5lbnRpdHknO1xuaW1wb3J0IHsgVXNlckFkZHJlc3MgfSBmcm9tICcuL2VudGl0aWVzL3VzZXItYWRkcmVzcy5lbnRpdHknO1xuaW1wb3J0IHsgVXNlckZhdm9yaXRlIH0gZnJvbSAnLi9lbnRpdGllcy91c2VyLWZhdm9yaXRlLmVudGl0eSc7XG5pbXBvcnQgeyBVc2VyRmF2b3JpdGVDYXRhbG9nIH0gZnJvbSAnLi9lbnRpdGllcy91c2VyLWZhdm9yaXRlLWNhdGFsb2cuZW50aXR5JztcbmltcG9ydCB7IEJhbm5lciB9IGZyb20gJy4vZW50aXRpZXMvYmFubmVyLmVudGl0eSc7XG5pbXBvcnQgeyBBcHBDb25maWcgfSBmcm9tICcuL2VudGl0aWVzL2FwcC1jb25maWcuZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIENhdGFsb2d1ZSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmltcG9ydCB7IENhdGVnb3J5IH0gZnJvbSAnLi9lbnRpdGllcy9jYXRlZ29yeS5lbnRpdHknO1xuaW1wb3J0IHsgQnJhbmQgfSBmcm9tICcuL2VudGl0aWVzL2JyYW5kLmVudGl0eSc7XG5pbXBvcnQgeyBWYXJpYW50VHlwZSB9IGZyb20gJy4vZW50aXRpZXMvdmFyaWFudC10eXBlLmVudGl0eSc7XG5pbXBvcnQgeyBWYXJpYW50T3B0aW9uIH0gZnJvbSAnLi9lbnRpdGllcy92YXJpYW50LW9wdGlvbi5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vZW50aXRpZXMvcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdE1lZGlhIH0gZnJvbSAnLi9lbnRpdGllcy9wcm9kdWN0LW1lZGlhLmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0VmFyaWFudCB9IGZyb20gJy4vZW50aXRpZXMvcHJvZHVjdC12YXJpYW50LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0VmFyaWFudE9wdGlvbiB9IGZyb20gJy4vZW50aXRpZXMvcHJvZHVjdC12YXJpYW50LW9wdGlvbi5lbnRpdHknO1xuaW1wb3J0IHsgVGFnIH0gZnJvbSAnLi9lbnRpdGllcy90YWcuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RUYWcgfSBmcm9tICcuL2VudGl0aWVzL3Byb2R1Y3QtdGFnLmVudGl0eSc7XG5pbXBvcnQgeyBCdW5kbGUgfSBmcm9tICcuL2VudGl0aWVzL2J1bmRsZS5lbnRpdHknO1xuaW1wb3J0IHsgQnVuZGxlUHJvZHVjdCB9IGZyb20gJy4vZW50aXRpZXMvYnVuZGxlLXByb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IEJ1bmRsZVN0b3JlIH0gZnJvbSAnLi9lbnRpdGllcy9idW5kbGUtc3RvcmUuZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIFN0b3JlcyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnLi9lbnRpdGllcy9zdG9yZS5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFN0b3JlIH0gZnJvbSAnLi9lbnRpdGllcy9wcm9kdWN0LXN0b3JlLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBJbnZlbnRvcnkg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5pbXBvcnQgeyBJbnZlbnRvcnkgfSBmcm9tICcuL2VudGl0aWVzL2ludmVudG9yeS5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmVJbnZlbnRvcnkgfSBmcm9tICcuL2VudGl0aWVzL3N0b3JlLWludmVudG9yeS5lbnRpdHknO1xuaW1wb3J0IHsgSW52ZW50b3J5U3RvY2sgfSBmcm9tICcuL2VudGl0aWVzL2ludmVudG9yeS1zdG9jay5lbnRpdHknO1xuaW1wb3J0IHsgU3RvY2tNb3ZlbWVudCB9IGZyb20gJy4vZW50aXRpZXMvc3RvY2stbW92ZW1lbnQuZW50aXR5JztcbmltcG9ydCB7IFNoaXBwaW5nUnVsZSB9IGZyb20gJy4vZW50aXRpZXMvc2hpcHBpbmctcnVsZS5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgUHVyY2hhc2luZyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmltcG9ydCB7IFZlbmRvciB9IGZyb20gJy4vZW50aXRpZXMvdmVuZG9yLmVudGl0eSc7XG5pbXBvcnQgeyBWZW5kb3JQcm9kdWN0IH0gZnJvbSAnLi9lbnRpdGllcy92ZW5kb3ItcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgUHVyY2hhc2VPcmRlciB9IGZyb20gJy4vZW50aXRpZXMvcHVyY2hhc2Utb3JkZXIuZW50aXR5JztcbmltcG9ydCB7IFB1cmNoYXNlT3JkZXJJdGVtIH0gZnJvbSAnLi9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci1pdGVtLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBQZXJtaXNzaW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmltcG9ydCB7IFBlcm1pc3Npb24gfSBmcm9tICcuL2VudGl0aWVzL3Blcm1pc3Npb24uZW50aXR5JztcbmltcG9ydCB7IFJvbGVQZXJtaXNzaW9uIH0gZnJvbSAnLi9lbnRpdGllcy9yb2xlLXBlcm1pc3Npb24uZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIFBheW1lbnQgTWV0aG9kcyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmltcG9ydCB7IFBheW1lbnRHYXRld2F5IH0gZnJvbSAnLi9lbnRpdGllcy9wYXltZW50LWdhdGV3YXkuZW50aXR5JztcbmltcG9ydCB7IFBheW1lbnRNZXRob2QgfSBmcm9tICcuL2VudGl0aWVzL3BheW1lbnQtbWV0aG9kLmVudGl0eSc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kQ291bnRyeSB9IGZyb20gJy4vZW50aXRpZXMvcGF5bWVudC1tZXRob2QtY291bnRyeS5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmVQYXltZW50TWV0aG9kIH0gZnJvbSAnLi9lbnRpdGllcy9zdG9yZS1wYXltZW50LW1ldGhvZC5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgQ2FydHMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5pbXBvcnQgeyBDYXJ0IH0gZnJvbSAnLi9lbnRpdGllcy9jYXJ0LmVudGl0eSc7XG5pbXBvcnQgeyBDYXJ0SXRlbSB9IGZyb20gJy4vZW50aXRpZXMvY2FydC1pdGVtLmVudGl0eSc7XG5pbXBvcnQgeyBDYXJ0SXRlbUJ1bmRsZVNlbGVjdGlvbiB9IGZyb20gJy4vZW50aXRpZXMvY2FydC1pdGVtLWJ1bmRsZS1zZWxlY3Rpb24uZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIENvdXBvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5pbXBvcnQgeyBDb3Vwb24gfSBmcm9tICcuL2VudGl0aWVzL2NvdXBvbi5lbnRpdHknO1xuaW1wb3J0IHsgQ291cG9uU3RvcmUgfSBmcm9tICcuL2VudGl0aWVzL2NvdXBvbi1zdG9yZS5lbnRpdHknO1xuaW1wb3J0IHsgQ291cG9uUHJvZHVjdCB9IGZyb20gJy4vZW50aXRpZXMvY291cG9uLXByb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IENvdXBvblVzZXIgfSBmcm9tICcuL2VudGl0aWVzL2NvdXBvbi11c2VyLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBPcmRlcnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5pbXBvcnQgeyBPcmRlclN0YXR1cyB9IGZyb20gJy4vZW50aXRpZXMvb3JkZXItc3RhdHVzLmVudGl0eSc7XG5pbXBvcnQgeyBPcmRlciB9IGZyb20gJy4vZW50aXRpZXMvb3JkZXIuZW50aXR5JztcbmltcG9ydCB7IE9yZGVySXRlbSB9IGZyb20gJy4vZW50aXRpZXMvb3JkZXItaXRlbS5lbnRpdHknO1xuaW1wb3J0IHsgT3JkZXJJdGVtQnVuZGxlU2VsZWN0aW9uIH0gZnJvbSAnLi9lbnRpdGllcy9vcmRlci1pdGVtLWJ1bmRsZS1zZWxlY3Rpb24uZW50aXR5JztcbmltcG9ydCB7IE9yZGVyU3RhdHVzSGlzdG9yeSB9IGZyb20gJy4vZW50aXRpZXMvb3JkZXItc3RhdHVzLWhpc3RvcnkuZW50aXR5JztcbmltcG9ydCB7IFVzZXJUcmFuc2FjdGlvbiB9IGZyb20gJy4vZW50aXRpZXMvdXNlci10cmFuc2FjdGlvbi5lbnRpdHknO1xuaW1wb3J0IHsgUHVyY2hhc2VPcmRlck9yZGVySXRlbSB9IGZyb20gJy4vZW50aXRpZXMvcHVyY2hhc2Utb3JkZXItb3JkZXItaXRlbS5lbnRpdHknO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRVhQT1JUU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8g4pSA4pSA4pSAIEV4aXN0aW5nIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuZXhwb3J0IHsgQXBpS2V5IH0gZnJvbSAnLi9lbnRpdGllcy9hcGlrZXkuZW50aXR5JztcbmV4cG9ydCB7IENvdW50cnkgfSBmcm9tICcuL2VudGl0aWVzL2NvdW50cnkuZW50aXR5JztcbmV4cG9ydCB7IEFyZWEgfSBmcm9tICcuL2VudGl0aWVzL2FyZWEuZW50aXR5JztcbmV4cG9ydCB7IFN5c1JvbGUgfSBmcm9tICcuL2VudGl0aWVzL3N5cy5yb2xlLmVudGl0eSc7XG5leHBvcnQgeyBTeXNVc2VyIH0gZnJvbSAnLi9lbnRpdGllcy9zeXMudXNlci5lbnRpdHknO1xuZXhwb3J0IHsgVXNlciB9IGZyb20gJy4vZW50aXRpZXMvdXNlci5lbnRpdHknO1xuZXhwb3J0IHsgVXNlckRldmljZSB9IGZyb20gJy4vZW50aXRpZXMvdXNlckRldmljZS5lbnRpdHknO1xuZXhwb3J0IHsgVXNlckFkZHJlc3MgfSBmcm9tICcuL2VudGl0aWVzL3VzZXItYWRkcmVzcy5lbnRpdHknO1xuZXhwb3J0IHsgVXNlckZhdm9yaXRlIH0gZnJvbSAnLi9lbnRpdGllcy91c2VyLWZhdm9yaXRlLmVudGl0eSc7XG5leHBvcnQge1xuICBVc2VyRmF2b3JpdGVDYXRhbG9nLFxuICBGYXZvcml0ZUNhdGFsb2dJdGVtVHlwZSxcbn0gZnJvbSAnLi9lbnRpdGllcy91c2VyLWZhdm9yaXRlLWNhdGFsb2cuZW50aXR5JztcbmV4cG9ydCB7XG4gIEJhbm5lcixcbiAgQmFubmVyUGxhY2VtZW50LFxuICBCYW5uZXJTdGF0dXMsXG4gIEJhbm5lckZpbHRlcnMsXG59IGZyb20gJy4vZW50aXRpZXMvYmFubmVyLmVudGl0eSc7XG5leHBvcnQgeyBBcHBDb25maWcgfSBmcm9tICcuL2VudGl0aWVzL2FwcC1jb25maWcuZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIENhdGFsb2d1ZSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7IENhdGVnb3J5IH0gZnJvbSAnLi9lbnRpdGllcy9jYXRlZ29yeS5lbnRpdHknO1xuZXhwb3J0IHsgQnJhbmQgfSBmcm9tICcuL2VudGl0aWVzL2JyYW5kLmVudGl0eSc7XG5leHBvcnQgeyBWYXJpYW50VHlwZSB9IGZyb20gJy4vZW50aXRpZXMvdmFyaWFudC10eXBlLmVudGl0eSc7XG5leHBvcnQgeyBWYXJpYW50T3B0aW9uIH0gZnJvbSAnLi9lbnRpdGllcy92YXJpYW50LW9wdGlvbi5lbnRpdHknO1xuZXhwb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vZW50aXRpZXMvcHJvZHVjdC5lbnRpdHknO1xuZXhwb3J0IHsgUHJvZHVjdE1lZGlhLCBNZWRpYVR5cGUgfSBmcm9tICcuL2VudGl0aWVzL3Byb2R1Y3QtbWVkaWEuZW50aXR5JztcbmV4cG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9lbnRpdGllcy9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmV4cG9ydCB7IFByb2R1Y3RWYXJpYW50T3B0aW9uIH0gZnJvbSAnLi9lbnRpdGllcy9wcm9kdWN0LXZhcmlhbnQtb3B0aW9uLmVudGl0eSc7XG5leHBvcnQgeyBUYWcgfSBmcm9tICcuL2VudGl0aWVzL3RhZy5lbnRpdHknO1xuZXhwb3J0IHsgUHJvZHVjdFRhZyB9IGZyb20gJy4vZW50aXRpZXMvcHJvZHVjdC10YWcuZW50aXR5JztcbmV4cG9ydCB7IEJ1bmRsZSB9IGZyb20gJy4vZW50aXRpZXMvYnVuZGxlLmVudGl0eSc7XG5leHBvcnQgeyBCdW5kbGVQcm9kdWN0IH0gZnJvbSAnLi9lbnRpdGllcy9idW5kbGUtcHJvZHVjdC5lbnRpdHknO1xuZXhwb3J0IHsgQnVuZGxlU3RvcmUgfSBmcm9tICcuL2VudGl0aWVzL2J1bmRsZS1zdG9yZS5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgU3RvcmVzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuZXhwb3J0IHsgU3RvcmUgfSBmcm9tICcuL2VudGl0aWVzL3N0b3JlLmVudGl0eSc7XG5leHBvcnQgeyBQcm9kdWN0U3RvcmUgfSBmcm9tICcuL2VudGl0aWVzL3Byb2R1Y3Qtc3RvcmUuZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIEludmVudG9yeSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7IEludmVudG9yeSB9IGZyb20gJy4vZW50aXRpZXMvaW52ZW50b3J5LmVudGl0eSc7XG5leHBvcnQgeyBTdG9yZUludmVudG9yeSB9IGZyb20gJy4vZW50aXRpZXMvc3RvcmUtaW52ZW50b3J5LmVudGl0eSc7XG5leHBvcnQgeyBJbnZlbnRvcnlTdG9jayB9IGZyb20gJy4vZW50aXRpZXMvaW52ZW50b3J5LXN0b2NrLmVudGl0eSc7XG5leHBvcnQgeyBTdG9ja01vdmVtZW50IH0gZnJvbSAnLi9lbnRpdGllcy9zdG9jay1tb3ZlbWVudC5lbnRpdHknO1xuZXhwb3J0IHsgU2hpcHBpbmdSdWxlIH0gZnJvbSAnLi9lbnRpdGllcy9zaGlwcGluZy1ydWxlLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBQdXJjaGFzaW5nIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuZXhwb3J0IHsgVmVuZG9yIH0gZnJvbSAnLi9lbnRpdGllcy92ZW5kb3IuZW50aXR5JztcbmV4cG9ydCB7IFZlbmRvclByb2R1Y3QgfSBmcm9tICcuL2VudGl0aWVzL3ZlbmRvci1wcm9kdWN0LmVudGl0eSc7XG5leHBvcnQgeyBQdXJjaGFzZU9yZGVyIH0gZnJvbSAnLi9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci5lbnRpdHknO1xuZXhwb3J0IHtcbiAgUHVyY2hhc2VPcmRlckl0ZW0sXG4gIFB1cmNoYXNlT3JkZXJJdGVtU3RhdHVzLFxufSBmcm9tICcuL2VudGl0aWVzL3B1cmNoYXNlLW9yZGVyLWl0ZW0uZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIFBlcm1pc3Npb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG5leHBvcnQgeyBQZXJtaXNzaW9uIH0gZnJvbSAnLi9lbnRpdGllcy9wZXJtaXNzaW9uLmVudGl0eSc7XG5leHBvcnQgeyBSb2xlUGVybWlzc2lvbiB9IGZyb20gJy4vZW50aXRpZXMvcm9sZS1wZXJtaXNzaW9uLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBQYXltZW50IE1ldGhvZHMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5leHBvcnQge1xuICBQYXltZW50R2F0ZXdheSxcbiAgUGF5bWVudEdhdGV3YXlUeXBlLFxufSBmcm9tICcuL2VudGl0aWVzL3BheW1lbnQtZ2F0ZXdheS5lbnRpdHknO1xuZXhwb3J0IHtcbiAgUGF5bWVudE1ldGhvZCxcbiAgUGF5bWVudE1ldGhvZFR5cGUsXG59IGZyb20gJy4vZW50aXRpZXMvcGF5bWVudC1tZXRob2QuZW50aXR5JztcbmV4cG9ydCB7IFBheW1lbnRNZXRob2RDb3VudHJ5IH0gZnJvbSAnLi9lbnRpdGllcy9wYXltZW50LW1ldGhvZC1jb3VudHJ5LmVudGl0eSc7XG5leHBvcnQgeyBTdG9yZVBheW1lbnRNZXRob2QgfSBmcm9tICcuL2VudGl0aWVzL3N0b3JlLXBheW1lbnQtbWV0aG9kLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBDYXJ0cyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7IENhcnQsIENhcnRTdGF0dXMgfSBmcm9tICcuL2VudGl0aWVzL2NhcnQuZW50aXR5JztcbmV4cG9ydCB7IENhcnRJdGVtLCBDYXJ0SXRlbVR5cGUgfSBmcm9tICcuL2VudGl0aWVzL2NhcnQtaXRlbS5lbnRpdHknO1xuZXhwb3J0IHsgQ2FydEl0ZW1CdW5kbGVTZWxlY3Rpb24gfSBmcm9tICcuL2VudGl0aWVzL2NhcnQtaXRlbS1idW5kbGUtc2VsZWN0aW9uLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBDb3Vwb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuZXhwb3J0IHtcbiAgQ291cG9uLFxuICBDb3Vwb25EaXNjb3VudFR5cGUsXG4gIENvdXBvbkFwcGxpZXNUbyxcbiAgQ291cG9uT3NUYXJnZXQsXG59IGZyb20gJy4vZW50aXRpZXMvY291cG9uLmVudGl0eSc7XG5leHBvcnQgeyBDb3Vwb25TdG9yZSB9IGZyb20gJy4vZW50aXRpZXMvY291cG9uLXN0b3JlLmVudGl0eSc7XG5leHBvcnQgeyBDb3Vwb25Qcm9kdWN0IH0gZnJvbSAnLi9lbnRpdGllcy9jb3Vwb24tcHJvZHVjdC5lbnRpdHknO1xuZXhwb3J0IHsgQ291cG9uVXNlciB9IGZyb20gJy4vZW50aXRpZXMvY291cG9uLXVzZXIuZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIE9yZGVycyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7IE9yZGVyU3RhdHVzLCBPcmRlclN0YXR1c0NvZGUgfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLXN0YXR1cy5lbnRpdHknO1xuZXhwb3J0IHsgT3JkZXIgfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLmVudGl0eSc7XG5leHBvcnQge1xuICBPcmRlckl0ZW0sXG4gIE9yZGVySXRlbVR5cGUsXG4gIE9yZGVySXRlbUZ1bGZpbGxtZW50U3RhdHVzLFxufSBmcm9tICcuL2VudGl0aWVzL29yZGVyLWl0ZW0uZW50aXR5JztcbmV4cG9ydCB7IE9yZGVySXRlbUJ1bmRsZVNlbGVjdGlvbiB9IGZyb20gJy4vZW50aXRpZXMvb3JkZXItaXRlbS1idW5kbGUtc2VsZWN0aW9uLmVudGl0eSc7XG5leHBvcnQgeyBPcmRlclN0YXR1c0hpc3RvcnkgfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLXN0YXR1cy1oaXN0b3J5LmVudGl0eSc7XG5leHBvcnQge1xuICBVc2VyVHJhbnNhY3Rpb24sXG4gIFRyYW5zYWN0aW9uVHlwZSxcbiAgVHJhbnNhY3Rpb25DYXRlZ29yeSxcbn0gZnJvbSAnLi9lbnRpdGllcy91c2VyLXRyYW5zYWN0aW9uLmVudGl0eSc7XG5leHBvcnQgeyBQdXJjaGFzZU9yZGVyT3JkZXJJdGVtIH0gZnJvbSAnLi9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci1vcmRlci1pdGVtLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBFbnVtcyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7IE9zTmFtZSB9IGZyb20gJy4vdXRpbHMvZW51bXMvb3NOYW1lJztcbmV4cG9ydCB7IFByb2R1Y3RBcHAgfSBmcm9tICcuL3V0aWxzL2VudW1zL3Byb2R1Y3RBcHAnO1xuZXhwb3J0IHsgVmVyc2lvblR5cGUgfSBmcm9tICcuL3V0aWxzL2VudW1zL3ZlcnNpb250eXBlJztcbmV4cG9ydCB7IExhbmd1YWdlIH0gZnJvbSAnLi91dGlscy9lbnVtcy9sYW5ndWFnZSc7XG5leHBvcnQgeyBTdGF0dXMgfSBmcm9tICcuL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5leHBvcnQgeyBHZW5kZXIgfSBmcm9tICcuL3V0aWxzL2VudW1zL2dlbmRlcic7XG5leHBvcnQgeyBQdXJjaGFzZU9yZGVyU3RhdHVzIH0gZnJvbSAnLi91dGlscy9lbnVtcy9wdXJjaGFzZU9yZGVyU3RhdHVzJztcbmV4cG9ydCB7IFN0b2NrTW92ZW1lbnRUeXBlIH0gZnJvbSAnLi91dGlscy9lbnVtcy9zdG9ja01vdmVtZW50VHlwZSc7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNT0RFTCBSRUdJU1RSWVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldERiTW9kZWxzKCk6IE1vZGVsQ3RvcltdIHtcbiAgcmV0dXJuIFtcbiAgICAvLyBFeGlzdGluZ1xuICAgIEFwaUtleSxcbiAgICBBcmVhLFxuICAgIENvdW50cnksXG4gICAgU3lzUm9sZSxcbiAgICBTeXNVc2VyLFxuICAgIFVzZXIsXG4gICAgVXNlckRldmljZSxcbiAgICBVc2VyQWRkcmVzcyxcbiAgICBVc2VyRmF2b3JpdGUsXG4gICAgVXNlckZhdm9yaXRlQ2F0YWxvZyxcblxuICAgIC8vIENhdGFsb2d1ZVxuICAgIENhdGVnb3J5LFxuICAgIEJyYW5kLFxuICAgIFZhcmlhbnRUeXBlLFxuICAgIFZhcmlhbnRPcHRpb24sXG4gICAgUHJvZHVjdCxcbiAgICBQcm9kdWN0TWVkaWEsXG4gICAgUHJvZHVjdFZhcmlhbnQsXG4gICAgUHJvZHVjdFZhcmlhbnRPcHRpb24sXG4gICAgVGFnLFxuICAgIFByb2R1Y3RUYWcsXG4gICAgQnVuZGxlLFxuICAgIEJ1bmRsZVByb2R1Y3QsXG4gICAgQnVuZGxlU3RvcmUsXG5cbiAgICAvLyBTdG9yZXNcbiAgICBTdG9yZSxcbiAgICBQcm9kdWN0U3RvcmUsXG5cbiAgICAvLyBJbnZlbnRvcnlcbiAgICBJbnZlbnRvcnksXG4gICAgU3RvcmVJbnZlbnRvcnksXG4gICAgSW52ZW50b3J5U3RvY2ssXG4gICAgU3RvY2tNb3ZlbWVudCxcbiAgICBTaGlwcGluZ1J1bGUsXG5cbiAgICAvLyBQdXJjaGFzaW5nXG4gICAgVmVuZG9yLFxuICAgIFZlbmRvclByb2R1Y3QsXG4gICAgUHVyY2hhc2VPcmRlcixcbiAgICBQdXJjaGFzZU9yZGVySXRlbSxcblxuICAgIC8vIFBlcm1pc3Npb25zXG4gICAgUGVybWlzc2lvbixcbiAgICBSb2xlUGVybWlzc2lvbixcblxuICAgIC8vIFBheW1lbnRcbiAgICBQYXltZW50R2F0ZXdheSxcbiAgICBQYXltZW50TWV0aG9kLFxuICAgIFBheW1lbnRNZXRob2RDb3VudHJ5LFxuICAgIFN0b3JlUGF5bWVudE1ldGhvZCxcblxuICAgIC8vIENhcnRcbiAgICBDYXJ0LFxuICAgIENhcnRJdGVtLFxuICAgIENhcnRJdGVtQnVuZGxlU2VsZWN0aW9uLFxuXG4gICAgLy9Db3Vwb25cbiAgICBDb3Vwb24sXG4gICAgQ291cG9uU3RvcmUsXG4gICAgQ291cG9uUHJvZHVjdCxcbiAgICBDb3Vwb25Vc2VyLFxuXG4gICAgLy8gT3JkZXJzXG4gICAgT3JkZXJTdGF0dXMsXG4gICAgT3JkZXIsXG4gICAgT3JkZXJJdGVtLFxuICAgIE9yZGVySXRlbUJ1bmRsZVNlbGVjdGlvbixcbiAgICBPcmRlclN0YXR1c0hpc3RvcnksXG4gICAgVXNlclRyYW5zYWN0aW9uLFxuICAgIFB1cmNoYXNlT3JkZXJPcmRlckl0ZW0sXG5cbiAgICAvLyBCYW5uZXJzXG4gICAgQmFubmVyLFxuXG4gICAgQXBwQ29uZmlnLFxuICBdO1xufVxuIiwiZXhwb3J0IGVudW0gR2VuZGVyIHtcbiAgTUFMRSA9ICdNYWxlJyxcbiAgRkVNQUxFID0gJ0ZlbWFsZScsXG4gIFBSRUZFUl9OT1RfVE9fU0FZID0gJ1ByZWZlciBub3QgdG8gc2F5Jyxcbn1cbiIsImV4cG9ydCBlbnVtIExhbmd1YWdlIHtcbiAgRU5HTElTSCA9ICdlbicsXG4gIEFSQUJJQyA9ICdhcicsXG59XG4iLCJleHBvcnQgZW51bSBPc05hbWUge1xuICBBTkRST0lEID0gJ2FuZHJvaWQnLFxuICBJT1MgPSAnaU9TJyxcbiAgV0VCID0gJ3dlYicsXG59XG4iLCJleHBvcnQgZW51bSBQcm9kdWN0QXBwIHtcbiAgREFTSEJPQVJEID0gJ2Rhc2hib2FyZCcsXG4gIFVTRVJfQVBQID0gJ3VzZXJhcHAnLFxufVxuIiwiZXhwb3J0IGVudW0gUHVyY2hhc2VPcmRlclN0YXR1cyB7XG4gIERSQUZUID0gJ2RyYWZ0JyxcbiAgU0VOVF9UT19WRU5ET1IgPSAnc2VudF90b192ZW5kb3InLFxuICBQQVJUSUFMTFlfUkVDRUlWRUQgPSAncGFydGlhbGx5X3JlY2VpdmVkJyxcbiAgRlVMTFlfUkVDRUlWRUQgPSAnZnVsbHlfcmVjZWl2ZWQnLFxuICBDTE9TRUQgPSAnY2xvc2VkJyxcbiAgQ0FOQ0VMTEVEID0gJ2NhbmNlbGxlZCcsXG59XG4iLCJleHBvcnQgZW51bSBTdGF0dXMge1xuICBBQ1RJVkUgPSAnYWN0aXZlJyxcbiAgSU5fQUNUSVZFID0gJ2luYWN0aXZlJyxcbn1cbiIsImV4cG9ydCBlbnVtIFN0b2NrTW92ZW1lbnRUeXBlIHtcbiAgLy8gU3RvY2sgY29taW5nIGluXG4gIFJFQ0VJVkVEID0gJ3JlY2VpdmVkJywgICAgICAgICAgIC8vIFBPIHJlY2VpdmVkIGludG8gaW52ZW50b3J5XG5cbiAgLy8gU3RvY2sgZ29pbmcgb3V0IG9yIGJlaW5nIGhlbGRcbiAgUkVTRVJWRUQgPSAncmVzZXJ2ZWQnLCAgICAgICAgICAgLy8gUmVzZXJ2ZWQgZm9yIGEgcGVuZGluZyBvcmRlclxuICBSRVNFUlZBVElPTl9SRUxFQVNFRCA9ICdyZXNlcnZhdGlvbl9yZWxlYXNlZCcsIC8vIE9yZGVyIGNhbmNlbGxlZCwgc3RvY2sgZnJlZWRcblxuICAvLyBNYW51YWwgYWRqdXN0bWVudHNcbiAgQURKVVNUTUVOVF9BREQgPSAnYWRqdXN0bWVudF9hZGQnLCAgICAgICAvLyBNYW51YWwgc3RvY2sgaW5jcmVhc2VcbiAgQURKVVNUTUVOVF9SRU1PVkUgPSAnYWRqdXN0bWVudF9yZW1vdmUnLCAvLyBNYW51YWwgc3RvY2sgZGVjcmVhc2UgKGRhbWFnZSwgbG9zcylcblxuICAvLyBSZXR1cm5zXG4gIFJFVFVSTkVEX0ZST01fQ1VTVE9NRVIgPSAncmV0dXJuZWRfZnJvbV9jdXN0b21lcicsXG4gIFJFVFVSTkVEX1RPX1ZFTkRPUiA9ICdyZXR1cm5lZF90b192ZW5kb3InLFxuXG4gIC8vIFRyYW5zZmVyc1xuICBUUkFOU0ZFUl9JTiA9ICd0cmFuc2Zlcl9pbicsICAgLy8gTW92ZWQgaW4gZnJvbSBhbm90aGVyIGludmVudG9yeVxuICBUUkFOU0ZFUl9PVVQgPSAndHJhbnNmZXJfb3V0JywgLy8gTW92ZWQgb3V0IHRvIGFub3RoZXIgaW52ZW50b3J5XG59XG4iLCJleHBvcnQgZW51bSBWZXJzaW9uVHlwZSB7XG4gIE9QVElPTkFMID0gJ29wdGlvbmFsJyxcbiAgTUFOREFUT1JZID0gJ21hbmRhdG9yeScsXG59XG4iLCJpbXBvcnQgeyBNb2R1bGUgfSBmcm9tICdAbmVzdGpzL2NvbW1vbic7XG5pbXBvcnQgeyBTZXF1ZWxpemVNb2R1bGUgfSBmcm9tICdAbmVzdGpzL3NlcXVlbGl6ZSc7XG5pbXBvcnQgeyBDb25maWdNb2R1bGUgfSBmcm9tICdAbmVzdGpzL2NvbmZpZyc7XG5pbXBvcnQgeyBnZXREYk1vZGVscyB9IGZyb20gJ0BhcHAvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5JztcblxuQE1vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb25maWdNb2R1bGUuZm9yUm9vdCh7XG4gICAgICBpc0dsb2JhbDogdHJ1ZSxcbiAgICB9KSxcbiAgICBTZXF1ZWxpemVNb2R1bGUuZm9yUm9vdCh7XG4gICAgICBkaWFsZWN0OiAnbXlzcWwnLFxuICAgICAgaG9zdDogcHJvY2Vzcy5lbnYuTVlTUUxfSE9TVCxcbiAgICAgIGRhdGFiYXNlOiBwcm9jZXNzLmVudi5NWVNRTF9EQVRBQkFTRSxcbiAgICAgIHVzZXJuYW1lOiBwcm9jZXNzLmVudi5NWVNRTF9VU0VSLFxuICAgICAgcGFzc3dvcmQ6IHByb2Nlc3MuZW52Lk1ZU1FMX1BBU1NXT1JELFxuICAgICAgcG9ydDogMzMwNixcbiAgICAgIG1vZGVsczogZ2V0RGJNb2RlbHMoKSxcbiAgICAgIGF1dG9Mb2FkTW9kZWxzOiB0cnVlLFxuICAgICAgc3luY2hyb25pemU6IHRydWUsXG4gICAgICBsb2dnaW5nOiBmYWxzZSxcbiAgICAgIGRlZmluZToge1xuICAgICAgICB0aW1lc3RhbXBzOiB0cnVlLFxuICAgICAgICBwYXJhbm9pZDogdHJ1ZSxcbiAgICAgIH0sXG4gICAgfSksXG4gIF0sXG4gIHByb3ZpZGVyczogW10sXG59KVxuZXhwb3J0IGNsYXNzIEFwcE1vZHVsZSB7fVxuIiwibW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiQG5lc3Rqcy9jb21tb25cIik7IiwibW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiQG5lc3Rqcy9jb25maWdcIik7IiwibW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiQG5lc3Rqcy9jb3JlXCIpOyIsIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIkBuZXN0anMvc2VxdWVsaXplXCIpOyIsIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcInNlcXVlbGl6ZS10eXBlc2NyaXB0XCIpOyIsIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcInRzY29uZmlnLXBhdGhzL3JlZ2lzdGVyXCIpOyIsIi8vIFRoZSBtb2R1bGUgY2FjaGVcbnZhciBfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX18gPSB7fTtcblxuLy8gVGhlIHJlcXVpcmUgZnVuY3Rpb25cbmZ1bmN0aW9uIF9fd2VicGFja19yZXF1aXJlX18obW9kdWxlSWQpIHtcblx0Ly8gQ2hlY2sgaWYgbW9kdWxlIGlzIGluIGNhY2hlXG5cdHZhciBjYWNoZWRNb2R1bGUgPSBfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX19bbW9kdWxlSWRdO1xuXHRpZiAoY2FjaGVkTW9kdWxlICE9PSB1bmRlZmluZWQpIHtcblx0XHRyZXR1cm4gY2FjaGVkTW9kdWxlLmV4cG9ydHM7XG5cdH1cblx0Ly8gQ2hlY2sgaWYgbW9kdWxlIGV4aXN0cyAoZGV2ZWxvcG1lbnQgb25seSlcblx0aWYgKF9fd2VicGFja19tb2R1bGVzX19bbW9kdWxlSWRdID09PSB1bmRlZmluZWQpIHtcblx0XHR2YXIgZSA9IG5ldyBFcnJvcihcIkNhbm5vdCBmaW5kIG1vZHVsZSAnXCIgKyBtb2R1bGVJZCArIFwiJ1wiKTtcblx0XHRlLmNvZGUgPSAnTU9EVUxFX05PVF9GT1VORCc7XG5cdFx0dGhyb3cgZTtcblx0fVxuXHQvLyBDcmVhdGUgYSBuZXcgbW9kdWxlIChhbmQgcHV0IGl0IGludG8gdGhlIGNhY2hlKVxuXHR2YXIgbW9kdWxlID0gX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fW21vZHVsZUlkXSA9IHtcblx0XHQvLyBubyBtb2R1bGUuaWQgbmVlZGVkXG5cdFx0Ly8gbm8gbW9kdWxlLmxvYWRlZCBuZWVkZWRcblx0XHRleHBvcnRzOiB7fVxuXHR9O1xuXG5cdC8vIEV4ZWN1dGUgdGhlIG1vZHVsZSBmdW5jdGlvblxuXHRfX3dlYnBhY2tfbW9kdWxlc19fW21vZHVsZUlkXS5jYWxsKG1vZHVsZS5leHBvcnRzLCBtb2R1bGUsIG1vZHVsZS5leHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKTtcblxuXHQvLyBSZXR1cm4gdGhlIGV4cG9ydHMgb2YgdGhlIG1vZHVsZVxuXHRyZXR1cm4gbW9kdWxlLmV4cG9ydHM7XG59XG5cbiIsImltcG9ydCAndHNjb25maWctcGF0aHMvcmVnaXN0ZXInO1xuaW1wb3J0IHsgTmVzdEZhY3RvcnkgfSBmcm9tICdAbmVzdGpzL2NvcmUnO1xuaW1wb3J0IHsgQXBwTW9kdWxlIH0gZnJvbSAnLi9hcHAubW9kdWxlJztcbmltcG9ydCB7IFNlcXVlbGl6ZSB9IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcblxuYXN5bmMgZnVuY3Rpb24gYm9vdHN0cmFwKCkge1xuICBjb25zdCBhcHAgPSBhd2FpdCBOZXN0RmFjdG9yeS5jcmVhdGUoQXBwTW9kdWxlLCB7IGNvcnM6IHRydWUgfSk7XG4gIGNvbnN0IHNlcXVlbGl6ZSA9IGFwcC5nZXQoU2VxdWVsaXplKTtcbiAgYXdhaXQgc2VxdWVsaXplLnN5bmMoeyBhbHRlcjogdHJ1ZSB9KTtcbiAgYXdhaXQgYXBwLmxpc3Rlbihwcm9jZXNzLmVudi5TRVJWRVJfUE9SVCA/PyA5MDA0KTtcbn1cbmJvb3RzdHJhcCgpO1xuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==