tt-entities 0.0.53 → 0.0.55
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/libs/tatayab-entities-library/entities/user-transaction.entity.d.ts +3 -0
- package/dist/libs/tatayab-entities-library/entities/user-transaction.entity.js +10 -0
- package/dist/libs/tatayab-entities-library/entities/user-transaction.entity.js.map +1 -1
- package/dist/libs/tatayab-entities-library/entities/user-wallet-balance.entity.d.ts +11 -0
- package/dist/libs/tatayab-entities-library/entities/user-wallet-balance.entity.js +48 -0
- package/dist/libs/tatayab-entities-library/entities/user-wallet-balance.entity.js.map +1 -0
- package/dist/libs/tatayab-entities-library/entities/user.entity.d.ts +1 -0
- package/dist/libs/tatayab-entities-library/entities/user.entity.js +4 -0
- package/dist/libs/tatayab-entities-library/entities/user.entity.js.map +1 -1
- package/dist/libs/tatayab-entities-library/index.d.ts +1 -0
- package/dist/libs/tatayab-entities-library/index.js +7 -3
- package/dist/libs/tatayab-entities-library/index.js.map +1 -1
- package/dist/src/main.js +82 -6
- package/libs/tatayab-entities-library/src/entities/user-transaction.entity.ts +23 -10
- package/libs/tatayab-entities-library/src/entities/user-wallet-balance.entity.ts +50 -0
- package/libs/tatayab-entities-library/src/entities/user.entity.ts +3 -0
- package/libs/tatayab-entities-library/src/index.ts +5 -1
- package/package.json +1 -1
package/dist/src/main.js
CHANGED
|
@@ -4491,12 +4491,13 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4491
4491
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
4492
4492
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
4493
4493
|
};
|
|
4494
|
-
var _a, _b;
|
|
4494
|
+
var _a, _b, _c;
|
|
4495
4495
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
4496
4496
|
exports.UserTransaction = exports.TransactionCategory = exports.TransactionType = void 0;
|
|
4497
4497
|
const sequelize_typescript_1 = __webpack_require__(/*! sequelize-typescript */ "sequelize-typescript");
|
|
4498
4498
|
const user_entity_1 = __webpack_require__(/*! ./user.entity */ "./libs/tatayab-entities-library/src/entities/user.entity.ts");
|
|
4499
4499
|
const order_entity_1 = __webpack_require__(/*! ./order.entity */ "./libs/tatayab-entities-library/src/entities/order.entity.ts");
|
|
4500
|
+
const store_entity_1 = __webpack_require__(/*! ./store.entity */ "./libs/tatayab-entities-library/src/entities/store.entity.ts");
|
|
4500
4501
|
var TransactionType;
|
|
4501
4502
|
(function (TransactionType) {
|
|
4502
4503
|
TransactionType["DEBIT"] = "debit";
|
|
@@ -4522,6 +4523,11 @@ __decorate([
|
|
|
4522
4523
|
(0, sequelize_typescript_1.Column)({ allowNull: false }),
|
|
4523
4524
|
__metadata("design:type", Number)
|
|
4524
4525
|
], UserTransaction.prototype, "userId", void 0);
|
|
4526
|
+
__decorate([
|
|
4527
|
+
(0, sequelize_typescript_1.ForeignKey)(() => store_entity_1.Store),
|
|
4528
|
+
(0, sequelize_typescript_1.Column)({ allowNull: true }),
|
|
4529
|
+
__metadata("design:type", Number)
|
|
4530
|
+
], UserTransaction.prototype, "storeId", void 0);
|
|
4525
4531
|
__decorate([
|
|
4526
4532
|
(0, sequelize_typescript_1.Column)({
|
|
4527
4533
|
type: sequelize_typescript_1.DataType.ENUM(...Object.values(TransactionType)),
|
|
@@ -4573,15 +4579,77 @@ __decorate([
|
|
|
4573
4579
|
(0, sequelize_typescript_1.BelongsTo)(() => user_entity_1.User),
|
|
4574
4580
|
__metadata("design:type", typeof (_a = typeof user_entity_1.User !== "undefined" && user_entity_1.User) === "function" ? _a : Object)
|
|
4575
4581
|
], UserTransaction.prototype, "user", void 0);
|
|
4582
|
+
__decorate([
|
|
4583
|
+
(0, sequelize_typescript_1.BelongsTo)(() => store_entity_1.Store),
|
|
4584
|
+
__metadata("design:type", typeof (_b = typeof store_entity_1.Store !== "undefined" && store_entity_1.Store) === "function" ? _b : Object)
|
|
4585
|
+
], UserTransaction.prototype, "store", void 0);
|
|
4576
4586
|
__decorate([
|
|
4577
4587
|
(0, sequelize_typescript_1.BelongsTo)(() => order_entity_1.Order),
|
|
4578
|
-
__metadata("design:type", typeof (
|
|
4588
|
+
__metadata("design:type", typeof (_c = typeof order_entity_1.Order !== "undefined" && order_entity_1.Order) === "function" ? _c : Object)
|
|
4579
4589
|
], UserTransaction.prototype, "order", void 0);
|
|
4580
4590
|
exports.UserTransaction = UserTransaction = __decorate([
|
|
4581
4591
|
sequelize_typescript_1.Table
|
|
4582
4592
|
], UserTransaction);
|
|
4583
4593
|
|
|
4584
4594
|
|
|
4595
|
+
/***/ },
|
|
4596
|
+
|
|
4597
|
+
/***/ "./libs/tatayab-entities-library/src/entities/user-wallet-balance.entity.ts"
|
|
4598
|
+
/*!**********************************************************************************!*\
|
|
4599
|
+
!*** ./libs/tatayab-entities-library/src/entities/user-wallet-balance.entity.ts ***!
|
|
4600
|
+
\**********************************************************************************/
|
|
4601
|
+
(__unused_webpack_module, exports, __webpack_require__) {
|
|
4602
|
+
|
|
4603
|
+
|
|
4604
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
4605
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4606
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4607
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
4608
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
4609
|
+
};
|
|
4610
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
4611
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
4612
|
+
};
|
|
4613
|
+
var _a, _b;
|
|
4614
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
4615
|
+
exports.UserWalletBalance = void 0;
|
|
4616
|
+
const sequelize_typescript_1 = __webpack_require__(/*! sequelize-typescript */ "sequelize-typescript");
|
|
4617
|
+
const user_entity_1 = __webpack_require__(/*! ./user.entity */ "./libs/tatayab-entities-library/src/entities/user.entity.ts");
|
|
4618
|
+
const store_entity_1 = __webpack_require__(/*! ./store.entity */ "./libs/tatayab-entities-library/src/entities/store.entity.ts");
|
|
4619
|
+
let UserWalletBalance = class UserWalletBalance extends sequelize_typescript_1.Model {
|
|
4620
|
+
};
|
|
4621
|
+
exports.UserWalletBalance = UserWalletBalance;
|
|
4622
|
+
__decorate([
|
|
4623
|
+
(0, sequelize_typescript_1.ForeignKey)(() => user_entity_1.User),
|
|
4624
|
+
(0, sequelize_typescript_1.Column)({ allowNull: false }),
|
|
4625
|
+
__metadata("design:type", Number)
|
|
4626
|
+
], UserWalletBalance.prototype, "userId", void 0);
|
|
4627
|
+
__decorate([
|
|
4628
|
+
(0, sequelize_typescript_1.ForeignKey)(() => store_entity_1.Store),
|
|
4629
|
+
(0, sequelize_typescript_1.Column)({ allowNull: false }),
|
|
4630
|
+
__metadata("design:type", Number)
|
|
4631
|
+
], UserWalletBalance.prototype, "storeId", void 0);
|
|
4632
|
+
__decorate([
|
|
4633
|
+
(0, sequelize_typescript_1.Column)({ type: sequelize_typescript_1.DataType.DECIMAL(10, 3), allowNull: false, defaultValue: 0 }),
|
|
4634
|
+
__metadata("design:type", Number)
|
|
4635
|
+
], UserWalletBalance.prototype, "balance", void 0);
|
|
4636
|
+
__decorate([
|
|
4637
|
+
(0, sequelize_typescript_1.Column)({ allowNull: false, defaultValue: 'KWD' }),
|
|
4638
|
+
__metadata("design:type", String)
|
|
4639
|
+
], UserWalletBalance.prototype, "currency", void 0);
|
|
4640
|
+
__decorate([
|
|
4641
|
+
(0, sequelize_typescript_1.BelongsTo)(() => user_entity_1.User),
|
|
4642
|
+
__metadata("design:type", typeof (_a = typeof user_entity_1.User !== "undefined" && user_entity_1.User) === "function" ? _a : Object)
|
|
4643
|
+
], UserWalletBalance.prototype, "user", void 0);
|
|
4644
|
+
__decorate([
|
|
4645
|
+
(0, sequelize_typescript_1.BelongsTo)(() => store_entity_1.Store),
|
|
4646
|
+
__metadata("design:type", typeof (_b = typeof store_entity_1.Store !== "undefined" && store_entity_1.Store) === "function" ? _b : Object)
|
|
4647
|
+
], UserWalletBalance.prototype, "store", void 0);
|
|
4648
|
+
exports.UserWalletBalance = UserWalletBalance = __decorate([
|
|
4649
|
+
sequelize_typescript_1.Table
|
|
4650
|
+
], UserWalletBalance);
|
|
4651
|
+
|
|
4652
|
+
|
|
4585
4653
|
/***/ },
|
|
4586
4654
|
|
|
4587
4655
|
/***/ "./libs/tatayab-entities-library/src/entities/user.entity.ts"
|
|
@@ -4628,6 +4696,10 @@ __decorate([
|
|
|
4628
4696
|
sequelize_typescript_1.Column,
|
|
4629
4697
|
__metadata("design:type", String)
|
|
4630
4698
|
], User.prototype, "password", void 0);
|
|
4699
|
+
__decorate([
|
|
4700
|
+
(0, sequelize_typescript_1.Column)({ allowNull: true, defaultValue: null }),
|
|
4701
|
+
__metadata("design:type", String)
|
|
4702
|
+
], User.prototype, "legacyPasswordHash", void 0);
|
|
4631
4703
|
__decorate([
|
|
4632
4704
|
(0, sequelize_typescript_1.Column)({
|
|
4633
4705
|
type: sequelize_typescript_1.DataType.ENUM(...Object.values(status_1.Status)),
|
|
@@ -5096,8 +5168,8 @@ exports.Vendor = Vendor = __decorate([
|
|
|
5096
5168
|
|
|
5097
5169
|
|
|
5098
5170
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
5099
|
-
exports.
|
|
5100
|
-
exports.StockMovementType = exports.PurchaseOrderStatus = exports.Gender = exports.Status = exports.Language = exports.VersionType = exports.ProductApp = exports.OsName = exports.PurchaseOrderReceiptItem = exports.PurchaseOrderReceipt = exports.PurchaseOrderOrderItem = exports.TransactionCategory = exports.TransactionType = exports.UserTransaction = exports.OrderStatusHistory = exports.OrderItemBundleSelection = exports.OrderItemFulfillmentStatus = exports.OrderItemType = exports.OrderItem = exports.Order = exports.OrderStatusCode = exports.OrderStatus = exports.CouponUser = exports.CouponProduct = exports.CouponStore = exports.CouponOsTarget = exports.CouponAppliesTo = exports.CouponDiscountType = exports.Coupon = exports.CartItemBundleSelection = exports.CartItemType = exports.CartItem = exports.CartStatus = exports.Cart = exports.StorePaymentMethod = exports.PaymentMethodCountry = exports.PaymentMethodType = exports.PaymentMethod = exports.PaymentGatewayType = exports.PaymentGateway = exports.RolePermission = void 0;
|
|
5171
|
+
exports.PurchaseOrderItemStatus = exports.PurchaseOrderItem = exports.PurchaseOrder = exports.VendorProduct = exports.Vendor = exports.ShippingRule = exports.StockMovement = exports.InventoryStock = exports.StoreInventory = exports.Inventory = exports.ProductStore = exports.Store = exports.BundleStore = exports.BundleProduct = exports.Bundle = exports.ProductTag = exports.Tag = exports.ProductVariantOption = exports.ProductVariant = exports.MediaType = exports.ProductMedia = exports.Product = exports.VariantOption = exports.VariantType = exports.Brand = exports.Category = exports.UserWalletBalance = exports.RefundStatus = exports.RefundMethod = exports.Refund = exports.RunSheetOrderStatus = exports.RunSheetOrder = exports.RunSheetStatus = exports.RunSheet = exports.AppConfig = exports.BannerFilters = exports.BannerStatus = exports.BannerPlacement = exports.Banner = exports.FavoriteCatalogItemType = exports.UserFavoriteCatalog = exports.UserFavorite = exports.UserAddress = exports.UserDevice = exports.User = exports.SysUser = exports.SysRole = exports.Area = exports.Country = exports.ApiKey = void 0;
|
|
5172
|
+
exports.StockMovementType = exports.PurchaseOrderStatus = exports.Gender = exports.Status = exports.Language = exports.VersionType = exports.ProductApp = exports.OsName = exports.PurchaseOrderReceiptItem = exports.PurchaseOrderReceipt = exports.PurchaseOrderOrderItem = exports.TransactionCategory = exports.TransactionType = exports.UserTransaction = exports.OrderStatusHistory = exports.OrderItemBundleSelection = exports.OrderItemFulfillmentStatus = exports.OrderItemType = exports.OrderItem = exports.Order = exports.OrderStatusCode = exports.OrderStatus = exports.CouponUser = exports.CouponProduct = exports.CouponStore = exports.CouponOsTarget = exports.CouponAppliesTo = exports.CouponDiscountType = exports.Coupon = exports.CartItemBundleSelection = exports.CartItemType = exports.CartItem = exports.CartStatus = exports.Cart = exports.StorePaymentMethod = exports.PaymentMethodCountry = exports.PaymentMethodType = exports.PaymentMethod = exports.PaymentGatewayType = exports.PaymentGateway = exports.RolePermission = exports.Permission = void 0;
|
|
5101
5173
|
exports.getDbModels = getDbModels;
|
|
5102
5174
|
const country_entity_1 = __webpack_require__(/*! ./entities/country.entity */ "./libs/tatayab-entities-library/src/entities/country.entity.ts");
|
|
5103
5175
|
const area_entity_1 = __webpack_require__(/*! ./entities/area.entity */ "./libs/tatayab-entities-library/src/entities/area.entity.ts");
|
|
@@ -5160,6 +5232,7 @@ const run_sheet_order_entity_1 = __webpack_require__(/*! ./entities/run-sheet-or
|
|
|
5160
5232
|
const refund_entity_1 = __webpack_require__(/*! ./entities/refund.entity */ "./libs/tatayab-entities-library/src/entities/refund.entity.ts");
|
|
5161
5233
|
const purchase_order_receipt_entity_1 = __webpack_require__(/*! ./entities/purchase-order-receipt.entity */ "./libs/tatayab-entities-library/src/entities/purchase-order-receipt.entity.ts");
|
|
5162
5234
|
const purchase_order_receipt_item_entity_1 = __webpack_require__(/*! ./entities/purchase-order-receipt-item.entity */ "./libs/tatayab-entities-library/src/entities/purchase-order-receipt-item.entity.ts");
|
|
5235
|
+
const user_wallet_balance_entity_1 = __webpack_require__(/*! ./entities/user-wallet-balance.entity */ "./libs/tatayab-entities-library/src/entities/user-wallet-balance.entity.ts");
|
|
5163
5236
|
var apikey_entity_2 = __webpack_require__(/*! ./entities/apikey.entity */ "./libs/tatayab-entities-library/src/entities/apikey.entity.ts");
|
|
5164
5237
|
Object.defineProperty(exports, "ApiKey", ({ enumerable: true, get: function () { return apikey_entity_2.ApiKey; } }));
|
|
5165
5238
|
var country_entity_2 = __webpack_require__(/*! ./entities/country.entity */ "./libs/tatayab-entities-library/src/entities/country.entity.ts");
|
|
@@ -5198,6 +5271,8 @@ var refund_entity_2 = __webpack_require__(/*! ./entities/refund.entity */ "./lib
|
|
|
5198
5271
|
Object.defineProperty(exports, "Refund", ({ enumerable: true, get: function () { return refund_entity_2.Refund; } }));
|
|
5199
5272
|
Object.defineProperty(exports, "RefundMethod", ({ enumerable: true, get: function () { return refund_entity_2.RefundMethod; } }));
|
|
5200
5273
|
Object.defineProperty(exports, "RefundStatus", ({ enumerable: true, get: function () { return refund_entity_2.RefundStatus; } }));
|
|
5274
|
+
var user_wallet_balance_entity_2 = __webpack_require__(/*! ./entities/user-wallet-balance.entity */ "./libs/tatayab-entities-library/src/entities/user-wallet-balance.entity.ts");
|
|
5275
|
+
Object.defineProperty(exports, "UserWalletBalance", ({ enumerable: true, get: function () { return user_wallet_balance_entity_2.UserWalletBalance; } }));
|
|
5201
5276
|
var category_entity_2 = __webpack_require__(/*! ./entities/category.entity */ "./libs/tatayab-entities-library/src/entities/category.entity.ts");
|
|
5202
5277
|
Object.defineProperty(exports, "Category", ({ enumerable: true, get: function () { return category_entity_2.Category; } }));
|
|
5203
5278
|
var brand_entity_2 = __webpack_require__(/*! ./entities/brand.entity */ "./libs/tatayab-entities-library/src/entities/brand.entity.ts");
|
|
@@ -5332,6 +5407,8 @@ function getDbModels() {
|
|
|
5332
5407
|
user_address_entity_1.UserAddress,
|
|
5333
5408
|
user_favorite_entity_1.UserFavorite,
|
|
5334
5409
|
user_favorite_catalog_entity_1.UserFavoriteCatalog,
|
|
5410
|
+
user_transaction_entity_1.UserTransaction,
|
|
5411
|
+
user_wallet_balance_entity_1.UserWalletBalance,
|
|
5335
5412
|
category_entity_1.Category,
|
|
5336
5413
|
brand_entity_1.Brand,
|
|
5337
5414
|
variant_type_entity_1.VariantType,
|
|
@@ -5374,7 +5451,6 @@ function getDbModels() {
|
|
|
5374
5451
|
order_item_entity_1.OrderItem,
|
|
5375
5452
|
order_item_bundle_selection_entity_1.OrderItemBundleSelection,
|
|
5376
5453
|
order_status_history_entity_1.OrderStatusHistory,
|
|
5377
|
-
user_transaction_entity_1.UserTransaction,
|
|
5378
5454
|
purchase_order_order_item_entity_1.PurchaseOrderOrderItem,
|
|
5379
5455
|
banner_entity_1.Banner,
|
|
5380
5456
|
app_config_entity_1.AppConfig,
|
|
@@ -5716,4 +5792,4 @@ bootstrap();
|
|
|
5716
5792
|
|
|
5717
5793
|
/******/ })()
|
|
5718
5794
|
;
|
|
5719
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,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OztVQUVBO1VBQ0E7VUFDQTs7Ozs7Ozs7Ozs7O0FDNUJBLDhFQUFpQztBQUNqQyx1RUFBMkM7QUFDM0Msb0ZBQXlDO0FBQ3pDLHVHQUFpRDtBQUVqRCxLQUFLLFVBQVUsU0FBUztJQUN0QixNQUFNLEdBQUcsR0FBRyxNQUFNLGtCQUFXLENBQUMsTUFBTSxDQUFDLHNCQUFTLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNoRSxNQUFNLFNBQVMsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLGdDQUFTLENBQUMsQ0FBQztJQUNyQyxNQUFNLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN0QyxNQUFNLEdBQUcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLENBQUM7QUFDcEQsQ0FBQztBQUNELFNBQVMsRUFBRSxDQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvYXBpa2V5LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9hcHAtY29uZmlnLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9hcmVhLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9iYW5uZXIuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2JyYW5kLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9idW5kbGUtcHJvZHVjdC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvYnVuZGxlLXN0b3JlLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9idW5kbGUuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2NhcnQtaXRlbS1idW5kbGUtc2VsZWN0aW9uLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9jYXJ0LWl0ZW0uZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2NhcnQuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2NhdGVnb3J5LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9jb3VudHJ5LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9jb3Vwb24tcHJvZHVjdC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvY291cG9uLXN0b3JlLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9jb3Vwb24tdXNlci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvY291cG9uLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9pbnZlbnRvcnktc3RvY2suZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2ludmVudG9yeS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvb3JkZXItaXRlbS1idW5kbGUtc2VsZWN0aW9uLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9vcmRlci1pdGVtLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9vcmRlci1zdGF0dXMtaGlzdG9yeS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvb3JkZXItc3RhdHVzLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9vcmRlci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcGF5bWVudC1nYXRld2F5LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wYXltZW50LW1ldGhvZC1jb3VudHJ5LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wYXltZW50LW1ldGhvZC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcGVybWlzc2lvbi5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcHJvZHVjdC1tZWRpYS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcHJvZHVjdC1zdG9yZS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcHJvZHVjdC10YWcuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3Byb2R1Y3QtdmFyaWFudC1vcHRpb24uZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3Byb2R1Y3QtdmFyaWFudC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcHJvZHVjdC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcHVyY2hhc2Utb3JkZXItaXRlbS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcHVyY2hhc2Utb3JkZXItb3JkZXItaXRlbS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcHVyY2hhc2Utb3JkZXItcmVjZWlwdC1pdGVtLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci1yZWNlaXB0LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcmVmdW5kLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9yb2xlLXBlcm1pc3Npb24uZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3J1bi1zaGVldC1vcmRlci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcnVuLXNoZWV0LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9zaGlwcGluZy1ydWxlLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9zdG9jay1tb3ZlbWVudC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvc3RvcmUtaW52ZW50b3J5LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9zdG9yZS1wYXltZW50LW1ldGhvZC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvc3RvcmUuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3N5cy5yb2xlLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9zeXMudXNlci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdGFnLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy91c2VyLWFkZHJlc3MuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3VzZXItZmF2b3JpdGUtY2F0YWxvZy5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdXNlci1mYXZvcml0ZS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdXNlci10cmFuc2FjdGlvbi5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdXNlci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdXNlckRldmljZS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdmFyaWFudC1vcHRpb24uZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3ZhcmlhbnQtdHlwZS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdmVuZG9yLXByb2R1Y3QuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3ZlbmRvci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvaW5kZXgudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvdXRpbHMvZW51bXMvZ2VuZGVyLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL3V0aWxzL2VudW1zL2xhbmd1YWdlLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL3V0aWxzL2VudW1zL29zTmFtZS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy91dGlscy9lbnVtcy9wcm9kdWN0QXBwLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL3V0aWxzL2VudW1zL3B1cmNoYXNlT3JkZXJTdGF0dXMudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvdXRpbHMvZW51bXMvc3RhdHVzLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL3V0aWxzL2VudW1zL3N0b2NrTW92ZW1lbnRUeXBlLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL3V0aWxzL2VudW1zL3ZlcnNpb250eXBlLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vc3JjL2FwcC5tb2R1bGUudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvZXh0ZXJuYWwgY29tbW9uanMgXCJAbmVzdGpzL2NvbW1vblwiIiwid2VicGFjazovL3R0LWVudGl0aWVzL2V4dGVybmFsIGNvbW1vbmpzIFwiQG5lc3Rqcy9jb25maWdcIiIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy9leHRlcm5hbCBjb21tb25qcyBcIkBuZXN0anMvY29yZVwiIiwid2VicGFjazovL3R0LWVudGl0aWVzL2V4dGVybmFsIGNvbW1vbmpzIFwiQG5lc3Rqcy9zZXF1ZWxpemVcIiIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy9leHRlcm5hbCBjb21tb25qcyBcInNlcXVlbGl6ZS10eXBlc2NyaXB0XCIiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvZXh0ZXJuYWwgY29tbW9uanMgXCJ0c2NvbmZpZy1wYXRocy9yZWdpc3RlclwiIiwid2VicGFjazovL3R0LWVudGl0aWVzL3dlYnBhY2svYm9vdHN0cmFwIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vc3JjL21haW4udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sdW1uLCBEYXRhVHlwZSwgTW9kZWwsIFRhYmxlIH0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcbmltcG9ydCB7IFZlcnNpb25UeXBlIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvdmVyc2lvbnR5cGUnO1xuaW1wb3J0IHsgT3NOYW1lIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvb3NOYW1lJztcbmltcG9ydCB7IFByb2R1Y3RBcHAgfSBmcm9tICcuLi91dGlscy9lbnVtcy9wcm9kdWN0QXBwJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgQXBpS2V5IGV4dGVuZHMgTW9kZWwge1xuICBAQ29sdW1uXG4gIGRlY2xhcmUgaGFzaGVkQXBpS2V5OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhPc05hbWUpKSB9KVxuICBkZWNsYXJlIG9zTmFtZTogT3NOYW1lO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoUHJvZHVjdEFwcCkpIH0pXG4gIGRlY2xhcmUgYXBwTmFtZTogUHJvZHVjdEFwcDtcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgYXBwVmVyc2lvbjogc3RyaW5nO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBleHBpcnlEYXRlOiBEYXRlO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc1JlbGVhc2VkOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhWZXJzaW9uVHlwZSkpLFxuICAgIGRlZmF1bHRWYWx1ZTogVmVyc2lvblR5cGUuT1BUSU9OQUwsXG4gIH0pXG4gIGRlY2xhcmUgdmVyc2lvblR5cGU6IFZlcnNpb25UeXBlO1xufVxuIiwiaW1wb3J0IHsgQ29sdW1uLCBEYXRhVHlwZSwgTW9kZWwsIFRhYmxlIH0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBBcHBDb25maWcgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyB1bmlxdWU6IHRydWUgfSlcbiAga2V5OiBzdHJpbmc7XG4gIEBDb2x1bW4oRGF0YVR5cGUuSlNPTilcbiAgdmFsdWU6IEpTT047XG59XG4iLCJpbXBvcnQge1xuICBCZWxvbmdzVG8sXG4gIENvbHVtbixcbiAgRm9yZWlnbktleSxcbiAgTW9kZWwsXG4gIFRhYmxlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIEFyZWEgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBARm9yZWlnbktleSgoKSA9PiBDb3VudHJ5KVxuICBAQ29sdW1uKHtcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICAgIHZhbGlkYXRlOiB7IG5vdE51bGw6IHsgbXNnOiAnQ291bnR5IElkIFJlcXVpcmVkJyB9IH0sXG4gIH0pXG4gIGRlY2xhcmUgY291bnRyeUlkOiBudW1iZXI7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIHBhcmVudElkPzogbnVtYmVyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ291bnRyeSlcbiAgZGVjbGFyZSBjb3VudHJ5OiBDb3VudHJ5O1xufVxuIiwiaW1wb3J0IHtcbiAgTW9kZWwsXG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIERhdGFUeXBlLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcblxuLy8g4pSA4pSAIFdoZXJlIHRoZSBiYW5uZXIgYXBwZWFycyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCBlbnVtIEJhbm5lclBsYWNlbWVudCB7XG4gIEhPTUUgPSAnaG9tZScsIC8vIGhvcml6b250YWwgbGlzdCBvbiB0aGUgaG9tZSBwYWdlXG4gIENBVEVHT1JZID0gJ2NhdGVnb3J5JywgLy8gdG9wIG9mIGEgc3BlY2lmaWMgY2F0ZWdvcnkgcGFnZVxuICBCUkFORCA9ICdicmFuZCcsIC8vIHRvcCBvZiBhIHNwZWNpZmljIGJyYW5kIHBhZ2VcbiAgU0VBUkNIID0gJ3NlYXJjaCcsIC8vIHNlYXJjaCByZXN1bHRzIHBhZ2VcbiAgQ1VTVE9NID0gJ2N1c3RvbScsIC8vIGFueSBmdXR1cmUgcGxhY2VtZW50IOKAlCBpZGVudGlmaWVkIGJ5IHBsYWNlbWVudEtleVxufVxuXG5leHBvcnQgZW51bSBCYW5uZXJTdGF0dXMge1xuICBBQ1RJVkUgPSAnYWN0aXZlJyxcbiAgSU5BQ1RJVkUgPSAnaW5hY3RpdmUnLFxuICBEUkFGVCA9ICdkcmFmdCcsXG59XG5cbi8vIOKUgOKUgCBGaWx0ZXIgc2hhcGUgc3RvcmVkIGluIHRoZSBKU09OIGNvbHVtbiDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbi8vIEFsbCBmaWVsZHMgYXJlIG9wdGlvbmFsIOKAlCBhbnkgY29tYmluYXRpb24gaXMgdmFsaWQuXG4vLyBBbiBlbXB0eSBvYmplY3Qge30gbWVhbnMgXCJzaG93IGV2ZXJ5dGhpbmdcIiAobm8gZmlsdGVyKS5cbmV4cG9ydCBpbnRlcmZhY2UgQmFubmVyRmlsdGVycyB7XG4gIGNhdGVnb3J5SWRzPzogbnVtYmVyW107IC8vIHByb2R1Y3RzL2J1bmRsZXMgaW4gdGhlc2UgY2F0ZWdvcmllc1xuICBicmFuZElkcz86IG51bWJlcltdOyAvLyBwcm9kdWN0cyBiZWxvbmdpbmcgdG8gdGhlc2UgYnJhbmRzXG4gIHRhZ1NsdWdzPzogc3RyaW5nW107IC8vIHByb2R1Y3RzIHRhZ2dlZCB3aXRoIGFueSBvZiB0aGVzZSBzbHVnc1xuICB0eXBlcz86ICgncHJvZHVjdCcgfCAnYnVuZGxlJylbXTsgLy8gbGltaXQgdG8gb25seSBwcm9kdWN0cyBvciBvbmx5IGJ1bmRsZXNcbiAgaXNGZWF0dXJlZD86IGJvb2xlYW47IC8vIG9ubHkgZmVhdHVyZWQgaXRlbXNcbiAgbWluUHJpY2U/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+IFN0b3JlSW52ZW50b3J5KVxuICBkZWNsYXJlIHN0b3JlczogU3RvcmVbXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBPcmRlckl0ZW0gfSBmcm9tICcuL29yZGVyLWl0ZW0uZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmltcG9ydCB7IFB1cmNoYXNlT3JkZXJJdGVtIH0gZnJvbSAnLi9wdXJjaGFzZS1vcmRlci1pdGVtLmVudGl0eSc7XG5cbmV4cG9ydCBlbnVtIEJ1bmRsZVNlbGVjdGlvbkZ1bGZpbGxtZW50U3RhdHVzIHtcbiAgUEVORElORyA9ICdwZW5kaW5nJyxcbiAgQVdBSVRJTkdfU1RPQ0sgPSAnYXdhaXRpbmdfc3RvY2snLCAvLyBuZWVkcyB2ZW5kb3IgUE9cbiAgUE9fTElOS0VEID0gJ3BvX2xpbmtlZCcsIC8vIFBPIGNyZWF0ZWQgYW5kIGxpbmtlZFxuICBQT19SRUNFSVZFRCA9ICdwb19yZWNlaXZlZCcsIC8vIHN0b2NrIGFycml2ZWRcbiAgU1RPQ0tfUkVTRVJWRUQgPSAnc3RvY2tfcmVzZXJ2ZWQnLCAvLyBzdG9jayBsb2NrZWQgZm9yIHRoaXMgb3JkZXJcbiAgUEFDS0VEID0gJ3BhY2tlZCcsXG4gIFNISVBQRUQgPSAnc2hpcHBlZCcsXG4gIERFTElWRVJFRCA9ICdkZWxpdmVyZWQnLFxufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBPcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb24gZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IE9yZGVySXRlbSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBvcmRlckl0ZW1JZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3QpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdElkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcm9kdWN0VmFyaWFudElkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSkgZGVjbGFyZSBwcm9kdWN0TmFtZUVuPzogc3RyaW5nO1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pIGRlY2xhcmUgcHJvZHVjdE5hbWVBcj86IHN0cmluZztcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KSBkZWNsYXJlIHZhcmlhbnRMYWJlbEVuPzogc3RyaW5nO1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pIGRlY2xhcmUgdmFyaWFudExhYmVsQXI/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHNvcnRPcmRlcjogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgCBORVc6IHBlci1zZWxlY3Rpb24gZnVsZmlsbG1lbnQgdHJhY2tpbmcg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhCdW5kbGVTZWxlY3Rpb25GdWxmaWxsbWVudFN0YXR1cykpLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gICAgZGVmYXVsdFZhbHVlOiBCdW5kbGVTZWxlY3Rpb25GdWxmaWxsbWVudFN0YXR1cy5QRU5ESU5HLFxuICB9KVxuICBkZWNsYXJlIGZ1bGZpbGxtZW50U3RhdHVzOiBCdW5kbGVTZWxlY3Rpb25GdWxmaWxsbWVudFN0YXR1cztcblxuICAvLyBXaGljaCBQTyBpdGVtIGlzIGZ1bGZpbGxpbmcgdGhpcyBzZWxlY3Rpb24gKHNldCB3aGVuIFBPIGlzIGNyZWF0ZWQpXG4gIEBGb3JlaWduS2V5KCgpID0+IFB1cmNoYXNlT3JkZXJJdGVtKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHVyY2hhc2VPcmRlckl0ZW1JZD86IG51bWJlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IE9yZGVySXRlbSkgZGVjbGFyZSBvcmRlckl0ZW06IE9yZGVySXRlbTtcbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0KSBkZWNsYXJlIHByb2R1Y3Q6IFByb2R1Y3Q7XG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdFZhcmlhbnQpIGRlY2xhcmUgdmFyaWFudD86IFByb2R1Y3RWYXJpYW50O1xuICBAQmVsb25nc1RvKCgpID0+IFB1cmNoYXNlT3JkZXJJdGVtKVxuICBkZWNsYXJlIHB1cmNoYXNlT3JkZXJJdGVtPzogUHVyY2hhc2VPcmRlckl0ZW07XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBIYXNNYW55LFxuICBIYXNPbmUsXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBPcmRlciB9IGZyb20gJy4vb3JkZXIuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmltcG9ydCB7IEJ1bmRsZSB9IGZyb20gJy4vYnVuZGxlLmVudGl0eSc7XG5pbXBvcnQgeyBPcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb24gfSBmcm9tICcuL29yZGVyLWl0ZW0tYnVuZGxlLXNlbGVjdGlvbi5lbnRpdHknO1xuaW1wb3J0IHsgUHVyY2hhc2VPcmRlck9yZGVySXRlbSB9IGZyb20gJy4vcHVyY2hhc2Utb3JkZXItb3JkZXItaXRlbS5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBPcmRlckl0ZW1UeXBlIHtcbiAgUFJPRFVDVCA9ICdwcm9kdWN0JyxcbiAgQlVORExFID0gJ2J1bmRsZScsXG59XG5cbmV4cG9ydCBlbnVtIE9yZGVySXRlbUZ1bGZpbGxtZW50U3RhdHVzIHtcbiAgUEVORElORyA9ICdwZW5kaW5nJyxcbiAgQVdBSVRJTkdfU1RPQ0sgPSAnYXdhaXRpbmdfc3RvY2snLCAvLyBuZWVkcyB2ZW5kb3IgUE9cbiAgUE9fTElOS0VEID0gJ3BvX2xpbmtlZCcsIC8vIFBPIGNyZWF0ZWQgYW5kIGxpbmtlZFxuICBQT19SRUNFSVZFRCA9ICdwb19yZWNlaXZlZCcsIC8vIFBPIHJlY2VpdmVkIGZvciB0aGlzIGl0ZW1cbiAgU1RPQ0tfUkVTRVJWRUQgPSAnc3RvY2tfcmVzZXJ2ZWQnLCAvLyBwaHlzaWNhbCBzdG9jayBsb2NrZWQgaW4gaW52ZW50b3J5XG4gIFBBQ0tFRCA9ICdwYWNrZWQnLFxuICBTSElQUEVEID0gJ3NoaXBwZWQnLFxuICBERUxJVkVSRUQgPSAnZGVsaXZlcmVkJyxcbiAgQ0FOQ0VMTEVEID0gJ2NhbmNlbGxlZCcsXG4gIFJFVFVSTl9SRVFVRVNURUQgPSAncmV0dXJuX3JlcXVlc3RlZCcsXG4gIFJFVFVSTkVEID0gJ3JldHVybmVkJyxcbn1cblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgT3JkZXJJdGVtIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBPcmRlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBvcmRlcklkOiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKE9yZGVySXRlbVR5cGUpKSxcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICAgIGRlZmF1bHRWYWx1ZTogT3JkZXJJdGVtVHlwZS5QUk9EVUNULFxuICB9KVxuICBkZWNsYXJlIGl0ZW1UeXBlOiBPcmRlckl0ZW1UeXBlO1xuXG4gIC8vIOKUgOKUgCBQcm9kdWN0IGZpZWxkcyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZD86IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RWYXJpYW50SWQ/OiBudW1iZXI7XG5cbiAgLy8g4pSA4pSAIEJ1bmRsZSBmaWVsZHMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBGb3JlaWduS2V5KCgpID0+IEJ1bmRsZSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGJ1bmRsZUlkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjb21wb3NlZFNrdT86IHN0cmluZztcblxuICAvLyDilIDilIAgU25hcHNob3RzIGF0IG9yZGVyIHRpbWUg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcm9kdWN0TmFtZUVuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcm9kdWN0TmFtZUFyPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBza3U/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHZhcmlhbnRMYWJlbEVuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSB2YXJpYW50TGFiZWxBcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdEltYWdlPzogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgCBQcmljaW5nIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAxIH0pXG4gIGRlY2xhcmUgcXVhbnRpdHk6IG51bWJlcjtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB1bml0UHJpY2U6IG51bWJlcjtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBsaW5lVG90YWw6IG51bWJlcjtcblxuICAvLyDilIDilIAgRnVsZmlsbG1lbnQgYXNzaWdubWVudCDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgLy8gV2hpY2ggaW52ZW50b3J5IGlzIHJlc3BvbnNpYmxlIGZvciB0aGlzIGl0ZW1cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGZ1bGZpbGxtZW50SW52ZW50b3J5SWQ/OiBudW1iZXI7XG5cbiAgLy8gU2hpcG1lbnQgZ3JvdXAg4oCUIGl0ZW1zIHdpdGggdGhlIHNhbWUgZ3JvdXAgc2hpcCB0b2dldGhlciBmcm9tIHRoZSBzYW1lIGludmVudG9yeVxuICAvLyBVc3VhbGx5ICcxJyBmb3Igc2luZ2xlLWludmVudG9yeSBvcmRlcnM7ICcyJyBpZiBhIHNlY29uZCBpbnZlbnRvcnkgaXMgbmVlZGVkXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDEgfSlcbiAgZGVjbGFyZSBzaGlwbWVudEdyb3VwOiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKE9yZGVySXRlbUZ1bGZpbGxtZW50U3RhdHVzKSksXG4gICAgYWxsb3dOdWxsOiBmYWxzZSxcbiAgICBkZWZhdWx0VmFsdWU6IE9yZGVySXRlbUZ1bGZpbGxtZW50U3RhdHVzLlBFTkRJTkcsXG4gIH0pXG4gIGRlY2xhcmUgZnVsZmlsbG1lbnRTdGF0dXM6IE9yZGVySXRlbUZ1bGZpbGxtZW50U3RhdHVzO1xuXG4gIC8vIOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBPcmRlcilcbiAgZGVjbGFyZSBvcmRlcjogT3JkZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0KVxuICBkZWNsYXJlIHByb2R1Y3Q/OiBQcm9kdWN0O1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIGRlY2xhcmUgdmFyaWFudD86IFByb2R1Y3RWYXJpYW50O1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQnVuZGxlKVxuICBkZWNsYXJlIGJ1bmRsZT86IEJ1bmRsZTtcblxuICBASGFzTWFueSgoKSA9PiBPcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb24pXG4gIGRlY2xhcmUgYnVuZGxlU2VsZWN0aW9uczogT3JkZXJJdGVtQnVuZGxlU2VsZWN0aW9uW107XG5cbiAgQEhhc09uZSgoKSA9PiBQdXJjaGFzZU9yZGVyT3JkZXJJdGVtKVxuICBkZWNsYXJlIHBvTGluaz86IFB1cmNoYXNlT3JkZXJPcmRlckl0ZW07XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgRm9yZWlnbktleSwgQmVsb25nc1RvLCBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgT3JkZXIgfSBmcm9tICcuL29yZGVyLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIE9yZGVyU3RhdHVzSGlzdG9yeSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gT3JkZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgb3JkZXJJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBmcm9tU3RhdHVzPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdG9TdGF0dXM6IHN0cmluZztcblxuICAvLyBCaWxpbmd1YWwgbGFiZWwgc25hcHNob3RzIHNvIGhpc3RvcnkgaXMgcmVhZGFibGUgZXZlbiBpZiBzdGF0dXMgbGFiZWxzIGNoYW5nZVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgdG9MYWJlbEVuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSB0b0xhYmVsQXI/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG5vdGU/OiBzdHJpbmc7XG5cbiAgLy8gV2hvIG1hZGUgdGhlIGNoYW5nZTogJ3N5c3RlbScsICd1c2VyJywgb3IgJ2FkbWluOjxpZD4nXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjaGFuZ2VkQnk/OiBzdHJpbmc7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBPcmRlcilcbiAgZGVjbGFyZSBvcmRlcjogT3JkZXI7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgSGFzTWFueSwgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IE9yZGVyIH0gZnJvbSAnLi9vcmRlci5lbnRpdHknO1xuXG4vLyBBbGwgcG9zc2libGUgb3JkZXIgc3RhdHVzZXMgaW4gdGhlIHN5c3RlbVxuZXhwb3J0IGVudW0gT3JkZXJTdGF0dXNDb2RlIHtcbiAgUEVORElOR19QQVlNRU5UICAgICAgPSAncGVuZGluZ19wYXltZW50JyxcbiAgUEFJRCAgICAgICAgICAgICAgICAgPSAncGFpZCcsXG4gIFBST0NFU1NJTkcgICAgICAgICAgID0gJ3Byb2Nlc3NpbmcnLFxuICBBV0FJVElOR19GVUxGSUxMTUVOVCA9ICdhd2FpdGluZ19mdWxmaWxsbWVudCcsXG4gIFBFTkRJTkdfVkVORE9SICAgICAgID0gJ3BlbmRpbmdfdmVuZG9yJyxcbiAgVkVORE9SX09SREVSRUQgICAgICAgPSAndmVuZG9yX29yZGVyZWQnLFxuICBTVE9DS19SRUNFSVZFRCAgICAgICA9ICdzdG9ja19yZWNlaXZlZCcsXG4gIFBBQ0tFRCAgICAgICAgICAgICAgID0gJ3BhY2tlZCcsXG4gIFNISVBQRUQgICAgICAgICAgICAgID0gJ3NoaXBwZWQnLFxuICBPVVRfRk9SX0RFTElWRVJZICAgICA9ICdvdXRfZm9yX2RlbGl2ZXJ5JyxcbiAgREVMSVZFUkVEICAgICAgICAgICAgPSAnZGVsaXZlcmVkJyxcbiAgQ09NUExFVEVEICAgICAgICAgICAgPSAnY29tcGxldGVkJyxcbiAgQ0FOQ0VMTEVEICAgICAgICAgICAgPSAnY2FuY2VsbGVkJyxcbiAgUkVUVVJOX1JFUVVFU1RFRCAgICAgPSAncmV0dXJuX3JlcXVlc3RlZCcsXG4gIFJFVFVSTl9BUFBST1ZFRCAgICAgID0gJ3JldHVybl9hcHByb3ZlZCcsXG4gIFJFVFVSTkVEICAgICAgICAgICAgID0gJ3JldHVybmVkJyxcbiAgUkVGVU5ERUQgICAgICAgICAgICAgPSAncmVmdW5kZWQnLFxuICBGQUlMRUQgICAgICAgICAgICAgICA9ICdmYWlsZWQnLFxufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBPcmRlclN0YXR1cyBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIHVuaXF1ZTogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvZGU6IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGxhYmVsRW46IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGxhYmVsQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Fbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Bcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY29sb3I/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGljb24/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG5leHRTdGF0dXNlcz86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJldlN0YXR1c2VzPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaXNUZXJtaW5hbDogYm9vbGVhbjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgaXNWaXNpYmxlVG9Vc2VyOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBIYXNNYW55KCgpID0+IE9yZGVyLCB7IGZvcmVpZ25LZXk6ICdzdGF0dXNJZCcgfSlcbiAgZGVjbGFyZSBvcmRlcnM6IE9yZGVyW107XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBIYXNNYW55LFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4vdXNlci5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuL3N0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5pbXBvcnQgeyBPcmRlclN0YXR1cyB9IGZyb20gJy4vb3JkZXItc3RhdHVzLmVudGl0eSc7XG5pbXBvcnQgeyBPcmRlckl0ZW0gfSBmcm9tICcuL29yZGVyLWl0ZW0uZW50aXR5JztcbmltcG9ydCB7IE9yZGVyU3RhdHVzSGlzdG9yeSB9IGZyb20gJy4vb3JkZXItc3RhdHVzLWhpc3RvcnkuZW50aXR5JztcbmltcG9ydCB7IFVzZXJUcmFuc2FjdGlvbiB9IGZyb20gJy4vdXNlci10cmFuc2FjdGlvbi5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBPcmRlciBleHRlbmRzIE1vZGVsIHtcbiAgLy8g4pSA4pSAIElkZW50aXR5IOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdW5pcXVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgb3JkZXJOdW1iZXI6IHN0cmluZzsgLy8gZS5nLiBUQVQtMjAyNi0wMDAwMVxuXG4gIC8vIE51bGwgZm9yIGd1ZXN0IG9yZGVycyDigJQgbGlua2VkIG9uIGFjY291bnQgY3JlYXRpb25cbiAgQEZvcmVpZ25LZXkoKCkgPT4gVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHVzZXJJZD86IG51bWJlcjtcblxuICAvLyBHdWVzdCB0b2tlbiBmb3IgZ3Vlc3Qgb3JkZXJzXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBndWVzdFRva2VuPzogc3RyaW5nO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFN0b3JlKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHN0b3JlSWQ6IG51bWJlcjtcblxuICAvLyDilIDilIAgU3RhdHVzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICAvLyBQcm9wZXIgRksgdG8gb3JkZXJfc3RhdHVzZXMgc28gd2UgY2FuIGVhZ2VyIGxvYWQgd2l0aCBpbmNsdWRlOiBbT3JkZXJTdGF0dXNdXG4gIEBGb3JlaWduS2V5KCgpID0+IE9yZGVyU3RhdHVzKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHN0YXR1c0lkOiBudW1iZXI7XG5cbiAgLy8gS2VlcCBzdGF0dXNDb2RlIGFzIGEgY29udmVuaWVuY2UgY29sdW1uIOKAlCBzeW5jZWQgd2l0aCBzdGF0dXNJZCBhdCBhbGwgdGltZXNcbiAgLy8gQWxsb3dzIGZpbHRlcmluZyBieSBjb2RlIHN0cmluZyB3aXRob3V0IGEgam9pbjogd2hlcmUoeyBzdGF0dXNDb2RlOiAnc2hpcHBlZCcgfSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogJ3BlbmRpbmdfcGF5bWVudCcgfSlcbiAgZGVjbGFyZSBzdGF0dXNDb2RlOiBzdHJpbmc7XG5cbiAgLy8g4pSA4pSAIERlbGl2ZXJ5IGFkZHJlc3MgKHNuYXBzaG90IGF0IG9yZGVyIHRpbWUpIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBARm9yZWlnbktleSgoKSA9PiBDb3VudHJ5KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlDb3VudHJ5SWQ/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5RnVsbE5hbWU/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5UGhvbmVFeHQ/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5UGhvbmU/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5Q2l0eT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlCbG9jaz86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlTdHJlZXQ/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5QnVpbGRpbmc/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5Rmxvb3I/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5QXBhcnRtZW50Pzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZWxpdmVyeUFkZGl0aW9uYWxJbmZvPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDksIDYpLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZWxpdmVyeUxhdGl0dWRlPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDksIDYpLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZWxpdmVyeUxvbmdpdHVkZT86IG51bWJlcjtcblxuICAvLyDilIDilIAgRmluYW5jaWFscyAoYWxsIGluIHN0b3JlIGN1cnJlbmN5KSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzdWJ0b3RhbDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgc2hpcHBpbmdGZWU6IG51bWJlcjtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHZhdEFtb3VudDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgZGlzY291bnRBbW91bnQ6IG51bWJlcjtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHRvdGFsOiBudW1iZXI7XG5cbiAgLy8gQ3VycmVuY3kgc25hcHNob3RcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBjdXJyZW5jeTogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjdXJyZW5jeVN5bWJvbEVuPzogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgCBDb3Vwb24g4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjb3Vwb25Db2RlPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjb3Vwb25JZD86IG51bWJlcjtcblxuICAvLyDilIDilIAgUGF5bWVudCDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHBheW1lbnRNZXRob2RTbHVnPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwYXltZW50U3RhdHVzPzogc3RyaW5nOyAvLyBwZW5kaW5nIHwgcGFpZCB8IGZhaWxlZCB8IHJlZnVuZGVkXG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHBheW1lbnRSZWZlcmVuY2U/OiBzdHJpbmc7IC8vIEdhdGV3YXkgdHJhbnNhY3Rpb24gSURcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREFURSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcGFpZEF0PzogRGF0ZTtcblxuICAvLyDilIDilIAgU2hpcHBpbmcg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjYXJyaWVyTmFtZT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgdHJhY2tpbmdOdW1iZXI/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHRyYWNraW5nVXJsPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBlc3RpbWF0ZWREZWxpdmVyeURhdGU/OiBEYXRlO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBzaGlwcGVkQXQ/OiBEYXRlO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZWxpdmVyZWRBdD86IERhdGU7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTShcbiAgICAgICdub25lJyxcbiAgICAgICdwZW5kaW5nX2JhbmtfcmVmdW5kJyxcbiAgICAgICd3YWxsZXRfY3JlZGl0ZWQnLFxuICAgICAgJ2JhbmtfcmVmdW5kZWQnLFxuICAgICksXG4gICAgZGVmYXVsdFZhbHVlOiAnbm9uZScsXG4gIH0pXG4gIGRlY2xhcmUgcmVmdW5kU3RhdHVzOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkJPT0xFQU4sIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBjYXNoQ29sbGVjdGVkOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjYXNoQ29sbGVjdGVkQXQ/OiBEYXRlO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjYXNoQ29sbGVjdGVkQnk/OiBudW1iZXI7XG5cbiAgLy8g4pSA4pSAIE5vdGVzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY3VzdG9tZXJOb3Rlcz86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgaW50ZXJuYWxOb3Rlcz86IHN0cmluZztcblxuICAvLyDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gVXNlcilcbiAgZGVjbGFyZSB1c2VyPzogVXNlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IFN0b3JlKVxuICBkZWNsYXJlIHN0b3JlOiBTdG9yZTtcblxuICBAQmVsb25nc1RvKCgpID0+IE9yZGVyU3RhdHVzLCB7IGZvcmVpZ25LZXk6ICdzdGF0dXNJZCcgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IE9yZGVyU3RhdHVzO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ291bnRyeSlcbiAgZGVjbGFyZSBkZWxpdmVyeUNvdW50cnk/OiBDb3VudHJ5O1xuXG4gIEBIYXNNYW55KCgpID0+IE9yZGVySXRlbSlcbiAgZGVjbGFyZSBpdGVtczogT3JkZXJJdGVtW107XG5cbiAgQEhhc01hbnkoKCkgPT4gT3JkZXJTdGF0dXNIaXN0b3J5KVxuICBkZWNsYXJlIHN0YXR1c0hpc3Rvcnk6IE9yZGVyU3RhdHVzSGlzdG9yeVtdO1xuXG4gIEBIYXNNYW55KCgpID0+IFVzZXJUcmFuc2FjdGlvbilcbiAgZGVjbGFyZSB0cmFuc2FjdGlvbnM6IFVzZXJUcmFuc2FjdGlvbltdO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsIENvbHVtbiwgTW9kZWwsIEhhc01hbnksIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kIH0gZnJvbSAnLi9wYXltZW50LW1ldGhvZC5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBQYXltZW50R2F0ZXdheVR5cGUge1xuICBCTlBMICAgICAgICA9ICdibnBsJywgICAgICAgIC8vIEJ1eSBOb3cgUGF5IExhdGVyIOKAlCBUYWJieSwgVGFtYXJhLCBUYWx5LCBEZWVtYVxuICBDQVJEICAgICAgICA9ICdjYXJkJywgICAgICAgIC8vIFZpc2EvTWFzdGVyY2FyZCDigJQgdVBheW1lbnRcbiAgS05FVCAgICAgICAgPSAna25ldCcsICAgICAgICAvLyBLLU5ldCDigJQgS0ZIXG4gIFdBTExFVCAgICAgID0gJ3dhbGxldCcsICAgICAgLy8gQXBwbGUgUGF5LCBHb29nbGUgUGF5XG4gIEJBTksgICAgICAgID0gJ2JhbmsnLCAgICAgICAgLy8gQmFuayB0cmFuc2ZlclxuICBPRkZMSU5FX1BBWU1FTlQgPSAnb2ZmbGluZV9wYXltZW50J1xuXG59XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFBheW1lbnRHYXRld2F5IGV4dGVuZHMgTW9kZWwge1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdW5pcXVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2x1Zzogc3RyaW5nOyAvLyBlLmcuICd0YWJieScsICd0YW1hcmEnLCAndXBheW1lbnQnLCAna2ZoJ1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoUGF5bWVudEdhdGV3YXlUeXBlKSksXG4gICAgYWxsb3dOdWxsOiBmYWxzZSxcbiAgfSlcbiAgZGVjbGFyZSB0eXBlOiBQYXltZW50R2F0ZXdheVR5cGU7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGxvZ28/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHdlYnNpdGU/OiBzdHJpbmc7XG5cbiAgLy8gQ3JlZGVudGlhbHMgc3RvcmVkIGFzIEpTT04g4oCUIG1hbmFnZWQgYnkgYWRtaW4gb25seSwgbmV2ZXIgZXhwb3NlZCB0byB1c2Vyc1xuICAvLyBlLmcuIHsgXCJwdWJsaWNLZXlcIjogXCIuLi5cIiwgXCJzZWNyZXRLZXlcIjogXCIuLi5cIiwgXCJtZXJjaGFudElkXCI6IFwiLi4uXCIgfVxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuSlNPTiwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY3JlZGVudGlhbHM/OiBvYmplY3Q7XG5cbiAgLy8gU2FuZGJveC9Qcm9kdWN0aW9uIG1vZGVcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc1NhbmRib3g6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHNvcnRPcmRlcjogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBpc0FjdGl2ZTogYm9vbGVhbjtcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBIYXNNYW55KCgpID0+IFBheW1lbnRNZXRob2QpXG4gIGRlY2xhcmUgbWV0aG9kczogUGF5bWVudE1ldGhvZFtdO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsIENvbHVtbiwgTW9kZWwsIEZvcmVpZ25LZXksXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFBheW1lbnRNZXRob2QgfSBmcm9tICcuL3BheW1lbnQtbWV0aG9kLmVudGl0eSc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFBheW1lbnRNZXRob2RDb3VudHJ5IGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQYXltZW50TWV0aG9kKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHBheW1lbnRNZXRob2RJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IENvdW50cnkpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgY291bnRyeUlkOiBudW1iZXI7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgRm9yZWlnbktleSwgQmVsb25nc1RvLFxuICBCZWxvbmdzVG9NYW55LCBIYXNNYW55LCBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgUGF5bWVudEdhdGV3YXkgfSBmcm9tICcuL3BheW1lbnQtZ2F0ZXdheS5lbnRpdHknO1xuaW1wb3J0IHsgQ291bnRyeSB9IGZyb20gJy4vY291bnRyeS5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuL3N0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kQ291bnRyeSB9IGZyb20gJy4vcGF5bWVudC1tZXRob2QtY291bnRyeS5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmVQYXltZW50TWV0aG9kIH0gZnJvbSAnLi9zdG9yZS1wYXltZW50LW1ldGhvZC5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBQYXltZW50TWV0aG9kVHlwZSB7XG4gIFBBWV9MQVRFUiAgICAgICA9ICdwYXlfbGF0ZXInLCAgICAgICAgLy8gVGFiYnkgUGF5IExhdGVyLCBUYW1hcmFcbiAgSU5TVEFMTE1FTlQgICAgID0gJ2luc3RhbGxtZW50JywgICAgICAvLyBUYWJieSBJbnN0YWxsbWVudHMsIERlZW1hXG4gIENSRURJVF9DQVJEICAgICA9ICdjcmVkaXRfY2FyZCcsICAgICAgLy8gVmlzYSwgTWFzdGVyY2FyZFxuICBERUJJVF9DQVJEICAgICAgPSAnZGViaXRfY2FyZCcsICAgICAgIC8vIERlYml0IGNhcmRzXG4gIEtORVQgICAgICAgICAgICA9ICdrbmV0JywgICAgICAgICAgICAgLy8gSy1OZXRcbiAgQVBQTEVfUEFZICAgICAgID0gJ2FwcGxlX3BheScsXG4gIEdPT0dMRV9QQVkgICAgICA9ICdnb29nbGVfcGF5JyxcbiAgQkFOS19UUkFOU0ZFUiAgID0gJ2JhbmtfdHJhbnNmZXInLFxufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBQYXltZW50TWV0aG9kIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQYXltZW50R2F0ZXdheSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwYXltZW50R2F0ZXdheUlkOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIHVuaXF1ZTogdHJ1ZSB9KVxuICBkZWNsYXJlIHNsdWc6IHN0cmluZzsgLy8gZS5nLiAndGFiYnlfcGF5X2xhdGVyJywgJ2tuZXQnLCAndmlzYSdcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVFbjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUFyOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlc2NyaXB0aW9uRW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlc2NyaXB0aW9uQXI/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFBheW1lbnRNZXRob2RUeXBlKSksXG4gICAgYWxsb3dOdWxsOiBmYWxzZSxcbiAgfSlcbiAgZGVjbGFyZSB0eXBlOiBQYXltZW50TWV0aG9kVHlwZTtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbG9nbz86IHN0cmluZztcblxuICAvLyBQcm9jZXNzaW5nIGZlZSBwZXJjZW50YWdlIGUuZy4gMS41IG1lYW5zIDEuNSVcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoNSwgMiksIGFsbG93TnVsbDogdHJ1ZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgZmVlUGVyY2VudGFnZT86IG51bWJlcjtcblxuICAvLyBGaXhlZCBmZWUgZS5nLiAwLjEwMCBLV0RcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IHRydWUsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIGZlZUZpeGVkPzogbnVtYmVyO1xuXG4gIC8vIE1pbmltdW0gb3JkZXIgYW1vdW50IHRvIHVzZSB0aGlzIG1ldGhvZFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG1pbk9yZGVyQW1vdW50PzogbnVtYmVyO1xuXG4gIC8vIE1heGltdW0gb3JkZXIgYW1vdW50IHRvIHVzZSB0aGlzIG1ldGhvZFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG1heE9yZGVyQW1vdW50PzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgaXNBY3RpdmU6IGJvb2xlYW47XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IFBheW1lbnRHYXRld2F5KVxuICBkZWNsYXJlIGdhdGV3YXk6IFBheW1lbnRHYXRld2F5O1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IENvdW50cnksICgpID0+IFBheW1lbnRNZXRob2RDb3VudHJ5KVxuICBkZWNsYXJlIGNvdW50cmllczogQ291bnRyeVtdO1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFN0b3JlLCAoKSA9PiBTdG9yZVBheW1lbnRNZXRob2QpXG4gIGRlY2xhcmUgc3RvcmVzOiBTdG9yZVtdO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEJlbG9uZ3NUb01hbnksXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFN5c1JvbGUgfSBmcm9tICcuL3N5cy5yb2xlLmVudGl0eSc7XG5pbXBvcnQgeyBSb2xlUGVybWlzc2lvbiB9IGZyb20gJy4vcm9sZS1wZXJtaXNzaW9uLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFBlcm1pc3Npb24gZXh0ZW5kcyBNb2RlbCB7XG4gIC8vIGUuZy4gJ3Byb2R1Y3RzLnZpZXcnLCAncHJvZHVjdHMuY3JlYXRlJywgJ2ludmVudG9yeS5hZGp1c3QnXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCB1bmlxdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBuYW1lOiBzdHJpbmc7XG5cbiAgLy8gSHVtYW4gcmVhZGFibGUgZS5nLiAnVmlldyBQcm9kdWN0cydcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBkaXNwbGF5TmFtZTogc3RyaW5nO1xuXG4gIC8vIEdyb3VwaW5nIGZvciBVSSBlLmcuICdQcm9kdWN0cycsICdJbnZlbnRvcnknLCAnUHVyY2hhc2luZydcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBncm91cDogc3RyaW5nO1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFN5c1JvbGUsICgpID0+IFJvbGVQZXJtaXNzaW9uKVxuICBkZWNsYXJlIHJvbGVzOiBTeXNSb2xlW107XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vcHJvZHVjdC5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBNZWRpYVR5cGUge1xuICBJTUFHRSA9ICdpbWFnZScsXG4gIFZJREVPID0gJ3ZpZGVvJyxcbn1cblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUHJvZHVjdE1lZGlhIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdXJsOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKE1lZGlhVHlwZSkpLFxuICAgIGRlZmF1bHRWYWx1ZTogTWVkaWFUeXBlLklNQUdFLFxuICB9KVxuICBkZWNsYXJlIHR5cGU6IE1lZGlhVHlwZTtcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGlzRGVmYXVsdDogYm9vbGVhbjtcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgc29ydE9yZGVyOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGFsdEVuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBhbHRBcj86IHN0cmluZztcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3QpXG4gIGRlY2xhcmUgcHJvZHVjdDogUHJvZHVjdDtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4vc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFByb2R1Y3RTdG9yZSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwcm9kdWN0SWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBTdG9yZSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBzdG9yZUlkOiBudW1iZXI7XG5cbiAgLy8g4pSA4pSAIFZhcmlhbnQgZGltZW5zaW9uIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICAvLyBudWxsICA9IHRoaXMgcHJpY2luZyByb3cgaXMgdGhlIHByb2R1Y3QtbGV2ZWwgZmFsbGJhY2tcbiAgLy8gICAgICAgICAodXNlZCB3aGVuIHByb2R1Y3QuaGFzVmFyaWFudHMgPSBmYWxzZSwgT1IgYXMgZmFsbGJhY2sgZm9yIGFueVxuICAvLyAgICAgICAgICB2YXJpYW50IHRoYXQgZG9lcyBOT1QgaGF2ZSBpdHMgb3duIHNwZWNpZmljIHByaWNpbmcgcm93KVxuICAvLyBzZXQgICA9IHRoaXMgcHJpY2luZyByb3cgYXBwbGllcyB0byBPTkUgc3BlY2lmaWMgdmFyaWFudCBvbmx5XG4gIC8vICAgICAgICAgKHVzZWQgd2hlbiBwcm9kdWN0Lmhhc1ZhcmlhbnRzID0gdHJ1ZSDigJQgc2V0IGEgZGlmZmVyZW50IHByaWNlXG4gIC8vICAgICAgICAgIGZvciBlYWNoIHZhcmlhbnQgZS5nLiA1MG1sPTUuMDAwLCAxMDBtbD04LjAwMCwgMjAwbWw9MTIuMDAwKVxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RWYXJpYW50SWQ/OiBudW1iZXI7XG5cbiAgLy8gU3RvcmUtc3BlY2lmaWMgcmVndWxhciBwcmljZVxuICAvLyBudWxsID0gdXNlIHZhcmlhbnQucHJpY2VPdmVycmlkZSwgdGhlbiBwcm9kdWN0LmRlZmF1bHRQcmljZVxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByaWNlPzogbnVtYmVyO1xuXG4gIC8vIFNhbGUgcHJpY2Ug4oCUIG9ubHkgYWN0aXZlIHdoZW4gdG9kYXkgaXMgd2l0aGluIHNhbGVTdGFydERhdGUg4oaSIHNhbGVFbmREYXRlXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2FsZVByaWNlPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBzYWxlU3RhcnREYXRlPzogRGF0ZTtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREFURSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2FsZUVuZERhdGU/OiBEYXRlO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3QpXG4gIGRlY2xhcmUgcHJvZHVjdDogUHJvZHVjdDtcblxuICBAQmVsb25nc1RvKCgpID0+IFN0b3JlKVxuICBkZWNsYXJlIHN0b3JlOiBTdG9yZTtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBkZWNsYXJlIHZhcmlhbnQ/OiBQcm9kdWN0VmFyaWFudDtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBUYWcgfSBmcm9tICcuL3RhZy5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBQcm9kdWN0VGFnIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFRhZylcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB0YWdJZDogbnVtYmVyO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmltcG9ydCB7IFZhcmlhbnRPcHRpb24gfSBmcm9tICcuL3ZhcmlhbnQtb3B0aW9uLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFByb2R1Y3RWYXJpYW50T3B0aW9uIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwcm9kdWN0VmFyaWFudElkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gVmFyaWFudE9wdGlvbilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB2YXJpYW50T3B0aW9uSWQ6IG51bWJlcjtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIEJlbG9uZ3NUb01hbnksXG4gIEhhc01hbnksXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBWYXJpYW50T3B0aW9uIH0gZnJvbSAnLi92YXJpYW50LW9wdGlvbi5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFZhcmlhbnRPcHRpb24gfSBmcm9tICcuL3Byb2R1Y3QtdmFyaWFudC1vcHRpb24uZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFByb2R1Y3RWYXJpYW50IGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBza3U/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGJhcmNvZGU/OiBzdHJpbmc7XG5cbiAgLy8gT3ZlcnJpZGUgZGVmYXVsdCBwcm9kdWN0IHByaWNlIHBlciB2YXJpYW50IGlmIG5lZWRlZFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByaWNlT3ZlcnJpZGU/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGltYWdlPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBTdGF0dXMuQUNUSVZFLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogU3RhdHVzO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0KVxuICBkZWNsYXJlIHByb2R1Y3Q6IFByb2R1Y3Q7XG5cbiAgQEJlbG9uZ3NUb01hbnkoKCkgPT4gVmFyaWFudE9wdGlvbiwgKCkgPT4gUHJvZHVjdFZhcmlhbnRPcHRpb24pXG4gIGRlY2xhcmUgb3B0aW9uczogVmFyaWFudE9wdGlvbltdO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgSGFzTWFueSxcbiAgQmVsb25nc1RvTWFueSxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IEJyYW5kIH0gZnJvbSAnLi9icmFuZC5lbnRpdHknO1xuaW1wb3J0IHsgQ2F0ZWdvcnkgfSBmcm9tICcuL2NhdGVnb3J5LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0TWVkaWEgfSBmcm9tICcuL3Byb2R1Y3QtbWVkaWEuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RTdG9yZSB9IGZyb20gJy4vcHJvZHVjdC1zdG9yZS5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFRhZyB9IGZyb20gJy4vcHJvZHVjdC10YWcuZW50aXR5JztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnLi9zdG9yZS5lbnRpdHknO1xuaW1wb3J0IHsgVGFnIH0gZnJvbSAnLi90YWcuZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5pbXBvcnQgeyBVc2VyRmF2b3JpdGUgfSBmcm9tICcuL3VzZXItZmF2b3JpdGUuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUHJvZHVjdCBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lRW46IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVBcjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkVuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkFyPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBza3U/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGJhcmNvZGU/OiBzdHJpbmc7XG5cbiAgLy8gRGVmYXVsdCBwcmljZSB1c2VkIHdoZW4gbm8gc3RvcmUtc3BlY2lmaWMgcHJpY2UgaXMgc2V0XG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgZGVmYXVsdFByaWNlOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gQnJhbmQpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBicmFuZElkPzogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IENhdGVnb3J5KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY2F0ZWdvcnlJZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgc29ydE9yZGVyOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc0ZlYXR1cmVkOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaGFzVmFyaWFudHM6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQnJhbmQpXG4gIGRlY2xhcmUgYnJhbmQ6IEJyYW5kO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ2F0ZWdvcnkpXG4gIGRlY2xhcmUgY2F0ZWdvcnk6IENhdGVnb3J5O1xuXG4gIEBIYXNNYW55KCgpID0+IFByb2R1Y3RNZWRpYSlcbiAgZGVjbGFyZSBtZWRpYTogUHJvZHVjdE1lZGlhW107XG5cbiAgQEhhc01hbnkoKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIGRlY2xhcmUgdmFyaWFudHM6IFByb2R1Y3RWYXJpYW50W107XG5cbiAgQEJlbG9uZ3NUb01hbnkoKCkgPT4gU3RvcmUsICgpID0+IFByb2R1Y3RTdG9yZSlcbiAgZGVjbGFyZSBzdG9yZXM6IFN0b3JlW107XG5cbiAgQEJlbG9uZ3NUb01hbnkoKCkgPT4gVGFnLCAoKSA9PiBQcm9kdWN0VGFnKVxuICBkZWNsYXJlIHRhZ3M6IFRhZ1tdO1xuXG4gIEBIYXNNYW55KCgpID0+IFVzZXJGYXZvcml0ZSlcbiAgZGVjbGFyZSB1c2VyRmF2b3JpdGVzOiBVc2VyRmF2b3JpdGVbXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQdXJjaGFzZU9yZGVyIH0gZnJvbSAnLi9wdXJjaGFzZS1vcmRlci5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFZhcmlhbnQgfSBmcm9tICcuL3Byb2R1Y3QtdmFyaWFudC5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBQdXJjaGFzZU9yZGVySXRlbVN0YXR1cyB7XG4gIFBFTkRJTkcgPSAncGVuZGluZycsXG4gIFBBUlRJQUxMWV9SRUNFSVZFRCA9ICdwYXJ0aWFsbHlfcmVjZWl2ZWQnLFxuICBGVUxMWV9SRUNFSVZFRCA9ICdmdWxseV9yZWNlaXZlZCcsXG4gIENBTkNFTExFRCA9ICdjYW5jZWxsZWQnLFxufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBQdXJjaGFzZU9yZGVySXRlbSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHVyY2hhc2VPcmRlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwdXJjaGFzZU9yZGVySWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdFZhcmlhbnRJZD86IG51bWJlcjtcblxuICAvLyBIb3cgbWFueSB1bml0cyB3ZXJlIG9yZGVyZWQgZnJvbSB2ZW5kb3JcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBvcmRlcmVkUXVhbnRpdHk6IG51bWJlcjtcblxuICAvLyBIb3cgbWFueSB1bml0cyBoYXZlIGJlZW4gcmVjZWl2ZWQgc28gZmFyICh1cGRhdGVkIG9uIGVhY2ggcmVjZWlwdClcbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHJlY2VpdmVkUXVhbnRpdHk6IG51bWJlcjtcblxuICAvLyBIb3cgbWFueSBvZiB0aGVzZSBhcmUgcmVzZXJ2ZWQgZm9yIGEgc3BlY2lmaWMgY3VzdG9tZXIgb3JkZXJcbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHJlc2VydmVkUXVhbnRpdHk6IG51bWJlcjtcblxuICAvLyBWZW5kb3IncyBjb3N0IHByaWNlIHBlciB1bml0IGF0IHRpbWUgb2YgUE9cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdW5pdENvc3RQcmljZTogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgdG90YWxDb3N0UHJpY2U6IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoUHVyY2hhc2VPcmRlckl0ZW1TdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFB1cmNoYXNlT3JkZXJJdGVtU3RhdHVzLlBFTkRJTkcsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBQdXJjaGFzZU9yZGVySXRlbVN0YXR1cztcblxuICAvLyBSZWZlcmVuY2UgdG8gdGhlIGN1c3RvbWVyIG9yZGVyIHRoYXQgdHJpZ2dlcmVkIHRoaXMgUE8gaXRlbSAobnVsbGFibGUgPSBwcm9hY3RpdmUgc3RvY2sgcmVwbGVuaXNobWVudClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHRyaWdnZXJPcmRlcklkPzogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQdXJjaGFzZU9yZGVyKVxuICBkZWNsYXJlIHB1cmNoYXNlT3JkZXI6IFB1cmNoYXNlT3JkZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0KVxuICBkZWNsYXJlIHByb2R1Y3Q6IFByb2R1Y3Q7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgZGVjbGFyZSB2YXJpYW50PzogUHJvZHVjdFZhcmlhbnQ7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQdXJjaGFzZU9yZGVyIH0gZnJvbSAnLi9wdXJjaGFzZS1vcmRlci5lbnRpdHknO1xuaW1wb3J0IHsgUHVyY2hhc2VPcmRlckl0ZW0gfSBmcm9tICcuL3B1cmNoYXNlLW9yZGVyLWl0ZW0uZW50aXR5JztcbmltcG9ydCB7IE9yZGVySXRlbSB9IGZyb20gJy4vb3JkZXItaXRlbS5lbnRpdHknO1xuaW1wb3J0IHsgT3JkZXIgfSBmcm9tICcuL29yZGVyLmVudGl0eSc7XG5pbXBvcnQgeyBPcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb24gfSBmcm9tICcuL29yZGVyLWl0ZW0tYnVuZGxlLXNlbGVjdGlvbi5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBQdXJjaGFzZU9yZGVyT3JkZXJJdGVtIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQdXJjaGFzZU9yZGVyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHB1cmNoYXNlT3JkZXJJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFB1cmNoYXNlT3JkZXJJdGVtKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHB1cmNoYXNlT3JkZXJJdGVtSWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBPcmRlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBvcmRlcklkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gT3JkZXJJdGVtKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG9yZGVySXRlbUlkOiBudW1iZXI7XG5cbiAgLy8gTkVXOiBGb3IgYnVuZGxlIGl0ZW1zLCB3aGljaCBzcGVjaWZpYyBzZWxlY3Rpb24gdGhpcyBQTyBpdGVtIGZ1bGZpbGxzXG4gIC8vIG51bGwgPSBkaXJlY3QgcHJvZHVjdCBvcmRlciBpdGVtIChub3QgYSBidW5kbGUgc2VsZWN0aW9uKVxuICBARm9yZWlnbktleSgoKSA9PiBPcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb24pXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBvcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb25JZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAxIH0pXG4gIGRlY2xhcmUgYWxsb2NhdGVkUXVhbnRpdHk6IG51bWJlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IFB1cmNoYXNlT3JkZXIpIGRlY2xhcmUgcHVyY2hhc2VPcmRlcjogUHVyY2hhc2VPcmRlcjtcbiAgQEJlbG9uZ3NUbygoKSA9PiBQdXJjaGFzZU9yZGVySXRlbSlcbiAgZGVjbGFyZSBwdXJjaGFzZU9yZGVySXRlbTogUHVyY2hhc2VPcmRlckl0ZW07XG4gIEBCZWxvbmdzVG8oKCkgPT4gT3JkZXIpIGRlY2xhcmUgb3JkZXI6IE9yZGVyO1xuICBAQmVsb25nc1RvKCgpID0+IE9yZGVySXRlbSkgZGVjbGFyZSBvcmRlckl0ZW06IE9yZGVySXRlbTtcbiAgQEJlbG9uZ3NUbygoKSA9PiBPcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb24pXG4gIGRlY2xhcmUgYnVuZGxlU2VsZWN0aW9uPzogT3JkZXJJdGVtQnVuZGxlU2VsZWN0aW9uO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgUHVyY2hhc2VPcmRlclJlY2VpcHQgfSBmcm9tICcuL3B1cmNoYXNlLW9yZGVyLXJlY2VpcHQuZW50aXR5JztcbmltcG9ydCB7IFB1cmNoYXNlT3JkZXJJdGVtIH0gZnJvbSAnLi9wdXJjaGFzZS1vcmRlci1pdGVtLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFB1cmNoYXNlT3JkZXJSZWNlaXB0SXRlbSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHVyY2hhc2VPcmRlclJlY2VpcHQpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcmVjZWlwdElkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHVyY2hhc2VPcmRlckl0ZW0pXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHVyY2hhc2VPcmRlckl0ZW1JZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSByZWNlaXZlZFF1YW50aXR5OiBudW1iZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQdXJjaGFzZU9yZGVyUmVjZWlwdCkgZGVjbGFyZSByZWNlaXB0OiBQdXJjaGFzZU9yZGVyUmVjZWlwdDtcbiAgQEJlbG9uZ3NUbygoKSA9PiBQdXJjaGFzZU9yZGVySXRlbSkgZGVjbGFyZSBwb0l0ZW06IFB1cmNoYXNlT3JkZXJJdGVtO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgSGFzTWFueSxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFB1cmNoYXNlT3JkZXIgfSBmcm9tICcuL3B1cmNoYXNlLW9yZGVyLmVudGl0eSc7XG5pbXBvcnQgeyBTeXNVc2VyIH0gZnJvbSAnLi9zeXMudXNlci5lbnRpdHknO1xuaW1wb3J0IHsgUHVyY2hhc2VPcmRlclJlY2VpcHRJdGVtIH0gZnJvbSAnLi9wdXJjaGFzZS1vcmRlci1yZWNlaXB0LWl0ZW0uZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUHVyY2hhc2VPcmRlclJlY2VpcHQgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFB1cmNoYXNlT3JkZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHVyY2hhc2VPcmRlcklkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3lzVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHJlY2VpdmVkQnk/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG5vdGVzPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBpbnZvaWNlVXJsPzogc3RyaW5nOyAvLyBvcHRpb25hbFxuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcmVjZWl2aW5nRG9jdW1lbnRVcmw6IHN0cmluZzsgLy8gTUFOREFUT1JZXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQdXJjaGFzZU9yZGVyKSBkZWNsYXJlIHB1cmNoYXNlT3JkZXI6IFB1cmNoYXNlT3JkZXI7XG4gIEBCZWxvbmdzVG8oKCkgPT4gU3lzVXNlcikgZGVjbGFyZSByZWNlaXZlcj86IFN5c1VzZXI7XG4gIEBIYXNNYW55KCgpID0+IFB1cmNoYXNlT3JkZXJSZWNlaXB0SXRlbSlcbiAgZGVjbGFyZSBpdGVtczogUHVyY2hhc2VPcmRlclJlY2VpcHRJdGVtW107XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBIYXNNYW55LFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgVmVuZG9yIH0gZnJvbSAnLi92ZW5kb3IuZW50aXR5JztcbmltcG9ydCB7IEludmVudG9yeSB9IGZyb20gJy4vaW52ZW50b3J5LmVudGl0eSc7XG5pbXBvcnQgeyBTeXNVc2VyIH0gZnJvbSAnLi9zeXMudXNlci5lbnRpdHknO1xuaW1wb3J0IHsgUHVyY2hhc2VPcmRlckl0ZW0gfSBmcm9tICcuL3B1cmNoYXNlLW9yZGVyLWl0ZW0uZW50aXR5JztcbmltcG9ydCB7IFB1cmNoYXNlT3JkZXJTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9wdXJjaGFzZU9yZGVyU3RhdHVzJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUHVyY2hhc2VPcmRlciBleHRlbmRzIE1vZGVsIHtcbiAgLy8gQXV0by1nZW5lcmF0ZWQgUE8gbnVtYmVyIGUuZy4gUE8tMjAyNi0wMDAwMVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdW5pcXVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgcG9OdW1iZXI6IHN0cmluZztcblxuICBARm9yZWlnbktleSgoKSA9PiBWZW5kb3IpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdmVuZG9ySWQ6IG51bWJlcjtcblxuICAvLyBUYXJnZXQgaW52ZW50b3J5IHdoZXJlIHJlY2VpdmVkIHN0b2NrIHdpbGwgYmUgc3RvcmVkXG4gIEBGb3JlaWduS2V5KCgpID0+IEludmVudG9yeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBpbnZlbnRvcnlJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhQdXJjaGFzZU9yZGVyU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBQdXJjaGFzZU9yZGVyU3RhdHVzLkRSQUZULFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogUHVyY2hhc2VPcmRlclN0YXR1cztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHRvdGFsQW1vdW50OiBudW1iZXI7XG5cbiAgLy8gQ3VycmVuY3kgb2YgdGhlIFBPICh2ZW5kb3IncyBjdXJyZW5jeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogJ1VTRCcgfSlcbiAgZGVjbGFyZSBjdXJyZW5jeTogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBleHBlY3RlZERlbGl2ZXJ5RGF0ZT86IERhdGU7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHNlbnRBdD86IERhdGU7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNsb3NlZEF0PzogRGF0ZTtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY2FuY2VsbGVkQXQ/OiBEYXRlO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjYW5jZWxsYXRpb25SZWFzb24/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG5vdGVzPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBpbnZvaWNlVXJsPzogc3RyaW5nO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFN5c1VzZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjcmVhdGVkQnk/OiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3lzVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHNlbnRCeT86IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKCdvcmRlcl9mdWxmaWxsbWVudCcsICdzdG9ja19yZXBsZW5pc2htZW50JyksXG4gICAgZGVmYXVsdFZhbHVlOiAnb3JkZXJfZnVsZmlsbG1lbnQnLFxuICB9KVxuICBkZWNsYXJlIHBvVHlwZTogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBWZW5kb3IpXG4gIGRlY2xhcmUgdmVuZG9yOiBWZW5kb3I7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBJbnZlbnRvcnkpXG4gIGRlY2xhcmUgaW52ZW50b3J5OiBJbnZlbnRvcnk7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBTeXNVc2VyLCB7IGZvcmVpZ25LZXk6ICdjcmVhdGVkQnknLCBhczogJ2NyZWF0b3InIH0pXG4gIGRlY2xhcmUgY3JlYXRvcj86IFN5c1VzZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBTeXNVc2VyLCB7IGZvcmVpZ25LZXk6ICdzZW50QnknLCBhczogJ3NlbmRlcicgfSlcbiAgZGVjbGFyZSBzZW5kZXI/OiBTeXNVc2VyO1xuXG4gIEBIYXNNYW55KCgpID0+IFB1cmNoYXNlT3JkZXJJdGVtKVxuICBkZWNsYXJlIGl0ZW1zOiBQdXJjaGFzZU9yZGVySXRlbVtdO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IE9yZGVyIH0gZnJvbSAnLi9vcmRlci5lbnRpdHknO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4vdXNlci5lbnRpdHknO1xuaW1wb3J0IHsgU3lzVXNlciB9IGZyb20gJy4vc3lzLnVzZXIuZW50aXR5JztcblxuZXhwb3J0IGVudW0gUmVmdW5kTWV0aG9kIHtcbiAgV0FMTEVUID0gJ3dhbGxldCcsXG4gIEJBTksgPSAnYmFuaycsXG59XG5leHBvcnQgZW51bSBSZWZ1bmRTdGF0dXMge1xuICBQRU5ESU5HID0gJ3BlbmRpbmcnLFxuICBQUk9DRVNTSU5HID0gJ3Byb2Nlc3NpbmcnLFxuICBSRUZVTkRFRCA9ICdyZWZ1bmRlZCcsXG4gIEZBSUxFRCA9ICdmYWlsZWQnLFxufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBSZWZ1bmQgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IE9yZGVyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG9yZGVySWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBVc2VyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgdXNlcklkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGFtb3VudDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6ICdLV0QnIH0pXG4gIGRlY2xhcmUgY3VycmVuY3k6IHN0cmluZztcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoUmVmdW5kTWV0aG9kKSksXG4gICAgYWxsb3dOdWxsOiBmYWxzZSxcbiAgfSlcbiAgZGVjbGFyZSBtZXRob2Q6IFJlZnVuZE1ldGhvZDtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoUmVmdW5kU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBSZWZ1bmRTdGF0dXMuUEVORElORyxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFJlZnVuZFN0YXR1cztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcmVmdW5kUmVmZXJlbmNlPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBub3Rlcz86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREFURSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvY2Vzc2VkQXQ/OiBEYXRlO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFN5c1VzZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcm9jZXNzZWRCeT86IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBTeXNVc2VyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY3JlYXRlZEJ5PzogbnVtYmVyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gT3JkZXIpIGRlY2xhcmUgb3JkZXI6IE9yZGVyO1xuICBAQmVsb25nc1RvKCgpID0+IFVzZXIpIGRlY2xhcmUgdXNlcj86IFVzZXI7XG4gIEBCZWxvbmdzVG8oKCkgPT4gU3lzVXNlciwgeyBmb3JlaWduS2V5OiAncHJvY2Vzc2VkQnknLCBhczogJ3Byb2Nlc3NvcicgfSlcbiAgZGVjbGFyZSBwcm9jZXNzb3I/OiBTeXNVc2VyO1xuICBAQmVsb25nc1RvKCgpID0+IFN5c1VzZXIsIHsgZm9yZWlnbktleTogJ2NyZWF0ZWRCeScsIGFzOiAnY3JlYXRvcicgfSlcbiAgZGVjbGFyZSBjcmVhdG9yPzogU3lzVXNlcjtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBTeXNSb2xlIH0gZnJvbSAnLi9zeXMucm9sZS5lbnRpdHknO1xuaW1wb3J0IHsgUGVybWlzc2lvbiB9IGZyb20gJy4vcGVybWlzc2lvbi5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBSb2xlUGVybWlzc2lvbiBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3lzUm9sZSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBzeXNSb2xlSWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQZXJtaXNzaW9uKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHBlcm1pc3Npb25JZDogbnVtYmVyO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFJ1blNoZWV0IH0gZnJvbSAnLi9ydW4tc2hlZXQuZW50aXR5JztcbmltcG9ydCB7IE9yZGVyIH0gZnJvbSAnLi9vcmRlci5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBSdW5TaGVldE9yZGVyU3RhdHVzIHtcbiAgQVNTSUdORUQgPSAnYXNzaWduZWQnLCAvLyBPcmRlciBhZGRlZCB0byBydW5zaGVldCwgbWFya2VkIHNoaXBwZWRcbiAgREVMSVZFUkVEID0gJ2RlbGl2ZXJlZCcsIC8vIENvbmZpcm1lZCBkZWxpdmVyZWQgb24gY29tcGxldGlvblxuICBSRVRVUk5FRCA9ICdyZXR1cm5lZCcsIC8vIE5vdCBkZWxpdmVyZWQg4oCUIHJldHVybmVkIHRvIHBhY2tlZFxufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBSdW5TaGVldE9yZGVyIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBSdW5TaGVldClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBydW5TaGVldElkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gT3JkZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pIC8vIG9uZSBvcmRlciBiZWxvbmdzIHRvIG9uZSBydW5zaGVldCBhdCBhIHRpbWVcbiAgZGVjbGFyZSBvcmRlcklkOiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFJ1blNoZWV0T3JkZXJTdGF0dXMpKSxcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICAgIGRlZmF1bHRWYWx1ZTogUnVuU2hlZXRPcmRlclN0YXR1cy5BU1NJR05FRCxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFJ1blNoZWV0T3JkZXJTdGF0dXM7XG5cbiAgLy8gRmlsbGVkIHdoZW4gc3RhdHVzID0gcmV0dXJuZWQg4oCUIHdoeSB3YXMgdGhpcyBvcmRlciBub3QgZGVsaXZlcmVkXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSByZXR1cm5SZWFzb24/OiBzdHJpbmc7XG5cbiAgLy8gU25hcHNob3Qgb2Ygb3JkZXIgbnVtYmVyIGZvciBkaXNwbGF5IGV2ZW4gaWYgb3JkZXIgaXMgbW9kaWZpZWRcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG9yZGVyTnVtYmVyPzogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBSdW5TaGVldClcbiAgZGVjbGFyZSBydW5TaGVldDogUnVuU2hlZXQ7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBPcmRlcilcbiAgZGVjbGFyZSBvcmRlcjogT3JkZXI7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgRm9yZWlnbktleSwgQmVsb25nc1RvLFxuICBIYXNNYW55LCBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3lzVXNlciB9IGZyb20gJy4vc3lzLnVzZXIuZW50aXR5JztcbmltcG9ydCB7IFJ1blNoZWV0T3JkZXIgfSBmcm9tICcuL3J1bi1zaGVldC1vcmRlci5lbnRpdHknO1xuaW1wb3J0IHsgSW52ZW50b3J5IH0gZnJvbSAnLi9pbnZlbnRvcnkuZW50aXR5JztcblxuZXhwb3J0IGVudW0gUnVuU2hlZXRTdGF0dXMge1xuICBPUEVOICAgICAgICA9ICdvcGVuJywgICAgICAgICAvLyBDcmVhdGVkLCBvcmRlcnMgYXNzaWduZWQsIGFsbCBtb3ZlZCB0byBzaGlwcGVkXG4gIE9VVF9GT1JfREVMSVZFUlkgPSAnb3V0X2Zvcl9kZWxpdmVyeScsIC8vIERyaXZlciBpcyBvbiB0aGUgcm9hZFxuICBDT01QTEVURUQgICA9ICdjb21wbGV0ZWQnLCAgICAvLyBBbGwgb3JkZXJzIGRlbGl2ZXJlZFxuICBQQVJUSUFMTFlfQ09NUExFVEVEID0gJ3BhcnRpYWxseV9jb21wbGV0ZWQnLCAvLyBTb21lIGRlbGl2ZXJlZCwgc29tZSByZXR1cm5lZCB0byBwYWNrZWRcbiAgQ0FOQ0VMTEVEICAgPSAnY2FuY2VsbGVkJyxcbn1cblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUnVuU2hlZXQgZXh0ZW5kcyBNb2RlbCB7XG4gIC8vIEF1dG8tZ2VuZXJhdGVkIGUuZy4gUlMtMjAyNi0wMDAwMVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdW5pcXVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgcnVuU2hlZXROdW1iZXI6IHN0cmluZztcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoUnVuU2hlZXRTdGF0dXMpKSxcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICAgIGRlZmF1bHRWYWx1ZTogUnVuU2hlZXRTdGF0dXMuT1BFTixcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFJ1blNoZWV0U3RhdHVzO1xuXG4gIC8vIERyaXZlciAvIGRlbGl2ZXJ5IHBlcnNvbiBuYW1lXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkcml2ZXJOYW1lPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkcml2ZXJQaG9uZT86IHN0cmluZztcblxuICAvLyBWZWhpY2xlIC8gcm91dGUgcmVmZXJlbmNlXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSB2ZWhpY2xlUmVmPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBub3Rlcz86IHN0cmluZztcblxuICAvLyBUaW1lc3RhbXBzIGZvciBsaWZlY3ljbGVcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRBVEUsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRpc3BhdGNoZWRBdD86IERhdGU7IC8vIHdoZW4gbW92ZWQgdG8gb3V0X2Zvcl9kZWxpdmVyeVxuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjb21wbGV0ZWRBdD86IERhdGU7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3lzVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNyZWF0ZWRCeT86IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBTeXNVc2VyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY29tcGxldGVkQnk/OiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gSW52ZW50b3J5KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgaW52ZW50b3J5SWQ/OiBudW1iZXI7XG5cbiAgLy8g4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IFN5c1VzZXIsIHsgZm9yZWlnbktleTogJ2NyZWF0ZWRCeScsIGFzOiAnY3JlYXRvcicgfSlcbiAgZGVjbGFyZSBjcmVhdG9yPzogU3lzVXNlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IFN5c1VzZXIsIHsgZm9yZWlnbktleTogJ2NvbXBsZXRlZEJ5JywgYXM6ICdjb21wbGV0ZXInIH0pXG4gIGRlY2xhcmUgY29tcGxldGVyPzogU3lzVXNlcjtcblxuICBASGFzTWFueSgoKSA9PiBSdW5TaGVldE9yZGVyKVxuICBkZWNsYXJlIHJ1blNoZWV0T3JkZXJzOiBSdW5TaGVldE9yZGVyW107XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBJbnZlbnRvcnkpXG4gIGRlY2xhcmUgaW52ZW50b3J5PzogSW52ZW50b3J5O1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IEludmVudG9yeSB9IGZyb20gJy4vaW52ZW50b3J5LmVudGl0eSc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4vc3RvcmUuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgU2hpcHBpbmdSdWxlIGV4dGVuZHMgTW9kZWwge1xuICAvLyBGcm9tIHdoaWNoIGludmVudG9yeVxuICBARm9yZWlnbktleSgoKSA9PiBJbnZlbnRvcnkpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaW52ZW50b3J5SWQ6IG51bWJlcjtcblxuICAvLyBUbyB3aGljaCBjb3VudHJ5XG4gIEBGb3JlaWduS2V5KCgpID0+IENvdW50cnkpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgY291bnRyeUlkOiBudW1iZXI7XG5cbiAgLy8gT3B0aW9uYWw6IG92ZXJyaWRlIGZvciBhIHNwZWNpZmljIHN0b3JlXG4gIC8vIG51bGwgPSBhcHBsaWVzIHRvIGFsbCBzdG9yZXMgc2hpcHBpbmcgZnJvbSB0aGlzIGludmVudG9yeSB0byB0aGlzIGNvdW50cnlcbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3RvcmUpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBzdG9yZUlkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDEgfSlcbiAgZGVjbGFyZSBtaW5EYXlzOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMyB9KVxuICBkZWNsYXJlIG1heERheXM6IG51bWJlcjtcblxuICAvLyBDYXJyaWVyIG5hbWUgZS5nLiBBcmFtZXgsIERITCwgRmVkRXgsIEludGVybmFsXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjYXJyaWVyTmFtZT86IHN0cmluZztcblxuICAvLyBTaGlwcGluZyBjb3N0IGluIHRoZSBpbnZlbnRvcnkncyBiYXNlIGN1cnJlbmN5IChLV0QpXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiB0cnVlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzaGlwcGluZ0Nvc3Q/OiBudW1iZXI7XG5cbiAgLy8gRnJlZSBzaGlwcGluZyB0aHJlc2hvbGQg4oCUIG51bGwgbWVhbnMgbmV2ZXIgZnJlZVxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGZyZWVTaGlwcGluZ1RocmVzaG9sZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgaXNBY3RpdmU6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG5vdGVzPzogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBJbnZlbnRvcnkpXG4gIGRlY2xhcmUgaW52ZW50b3J5OiBJbnZlbnRvcnk7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBDb3VudHJ5KVxuICBkZWNsYXJlIGNvdW50cnk6IENvdW50cnk7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBTdG9yZSlcbiAgZGVjbGFyZSBzdG9yZT86IFN0b3JlO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IEludmVudG9yeSB9IGZyb20gJy4vaW52ZW50b3J5LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0VmFyaWFudCB9IGZyb20gJy4vcHJvZHVjdC12YXJpYW50LmVudGl0eSc7XG5pbXBvcnQgeyBTeXNVc2VyIH0gZnJvbSAnLi9zeXMudXNlci5lbnRpdHknO1xuaW1wb3J0IHsgU3RvY2tNb3ZlbWVudFR5cGUgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdG9ja01vdmVtZW50VHlwZSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFN0b2NrTW92ZW1lbnQgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IEludmVudG9yeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBpbnZlbnRvcnlJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3QpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdElkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcm9kdWN0VmFyaWFudElkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdG9ja01vdmVtZW50VHlwZSkpLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gIH0pXG4gIGRlY2xhcmUgbW92ZW1lbnRUeXBlOiBTdG9ja01vdmVtZW50VHlwZTtcblxuICAvLyBQb3NpdGl2ZSA9IHN0b2NrIGluLCBOZWdhdGl2ZSA9IHN0b2NrIG91dFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHF1YW50aXR5OiBudW1iZXI7XG5cbiAgLy8gU25hcHNob3Qgb2YgcXVhbnRpdHkgYmVmb3JlIHRoaXMgbW92ZW1lbnRcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBxdWFudGl0eUJlZm9yZTogbnVtYmVyO1xuXG4gIC8vIFNuYXBzaG90IG9mIHF1YW50aXR5IGFmdGVyIHRoaXMgbW92ZW1lbnRcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBxdWFudGl0eUFmdGVyOiBudW1iZXI7XG5cbiAgLy8gUmVmZXJlbmNlIHRvIHNvdXJjZSBkb2N1bWVudCAoUE8gaWQsIG9yZGVyIGlkLCBldGMuKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcmVmZXJlbmNlVHlwZT86IHN0cmluZzsgLy8gJ3B1cmNoYXNlX29yZGVyJyB8ICdvcmRlcicgfCAnbWFudWFsJyB8ICd0cmFuc2ZlcidcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcmVmZXJlbmNlSWQ/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG5vdGVzPzogc3RyaW5nO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFN5c1VzZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjcmVhdGVkQnk/OiBudW1iZXI7XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IEludmVudG9yeSlcbiAgZGVjbGFyZSBpbnZlbnRvcnk6IEludmVudG9yeTtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3QpXG4gIGRlY2xhcmUgcHJvZHVjdDogUHJvZHVjdDtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBkZWNsYXJlIHZhcmlhbnQ/OiBQcm9kdWN0VmFyaWFudDtcblxuICBAQmVsb25nc1RvKCgpID0+IFN5c1VzZXIpXG4gIGRlY2xhcmUgY3JlYXRlZEJ5VXNlcj86IFN5c1VzZXI7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgRGF0YVR5cGUsXG4gIEJlbG9uZ3NUbyxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuL3N0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBJbnZlbnRvcnkgfSBmcm9tICcuL2ludmVudG9yeS5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBTdG9yZUludmVudG9yeSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3RvcmUpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgc3RvcmVJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IEludmVudG9yeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBpbnZlbnRvcnlJZDogbnVtYmVyO1xuXG4gIC8vIFByaW9yaXR5IOKAlCBsb3dlciBudW1iZXIgPSBwcmVmZXJyZWQgaW52ZW50b3J5IGZvciB0aGlzIHN0b3JlXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDEgfSlcbiAgZGVjbGFyZSBwcmlvcml0eTogbnVtYmVyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gSW52ZW50b3J5KSAvLyDihpAgYWRkIHRoaXMgYXNzb2NpYXRpb25cbiAgaW52ZW50b3J5OiBJbnZlbnRvcnk7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBTdG9yZSkgLy8g4oaQIGFkZCB0aGlzIGFzc29jaWF0aW9uXG4gIHN0b3JlOiBTdG9yZTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBGb3JlaWduS2V5LCBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuL3N0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kIH0gZnJvbSAnLi9wYXltZW50LW1ldGhvZC5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBTdG9yZVBheW1lbnRNZXRob2QgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFN0b3JlKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHN0b3JlSWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQYXltZW50TWV0aG9kKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHBheW1lbnRNZXRob2RJZDogbnVtYmVyO1xuXG4gIC8vIFN0b3JlIGNhbiBvdmVycmlkZSBzb3J0IG9yZGVyIGZvciBkaXNwbGF5XG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICAvLyBTdG9yZSBjYW4gZW5hYmxlL2Rpc2FibGUgaW5kZXBlbmRlbnRseSBvZiBnbG9iYWwgaXNBY3RpdmVcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogdHJ1ZSB9KVxuICBkZWNsYXJlIGlzRW5hYmxlZDogYm9vbGVhbjtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIEhhc01hbnksXG4gIEJlbG9uZ3NUb01hbnksXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0U3RvcmUgfSBmcm9tICcuL3Byb2R1Y3Qtc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFN0b3JlSW52ZW50b3J5IH0gZnJvbSAnLi9zdG9yZS1pbnZlbnRvcnkuZW50aXR5JztcbmltcG9ydCB7IEludmVudG9yeSB9IGZyb20gJy4vaW52ZW50b3J5LmVudGl0eSc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuaW1wb3J0IHsgUGF5bWVudE1ldGhvZCB9IGZyb20gJy4vcGF5bWVudC1tZXRob2QuZW50aXR5JztcbmltcG9ydCB7IFN0b3JlUGF5bWVudE1ldGhvZCB9IGZyb20gJy4vc3RvcmUtcGF5bWVudC1tZXRob2QuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgU3RvcmUgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Fbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Bcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbG9nbz86IHN0cmluZztcblxuICAvLyBJU08gY3VycmVuY3kgY29kZSBlLmcuIEtXRCwgU0FSLCBRQVIsIFVTRFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAnVVNEJyB9KVxuICBkZWNsYXJlIGN1cnJlbmN5OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGN1cnJlbmN5U3ltYm9sRW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGN1cnJlbmN5U3ltYm9sQXI/OiBzdHJpbmc7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gQ291bnRyeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvdW50cnlJZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGlzR2xvYmFsOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IENvdW50cnkpXG4gIGRlY2xhcmUgY291bnRyeTogQ291bnRyeTtcblxuICBAQmVsb25nc1RvTWFueSgoKSA9PiBQcm9kdWN0LCAoKSA9PiBQcm9kdWN0U3RvcmUpXG4gIGRlY2xhcmUgcHJvZHVjdHM6IFByb2R1Y3RbXTtcblxuICBAQmVsb25nc1RvTWFueSgoKSA9PiBJbnZlbnRvcnksICgpID0+IFN0b3JlSW52ZW50b3J5KVxuICBkZWNsYXJlIGludmVudG9yaWVzOiBJbnZlbnRvcnlbXTtcblxuICBAQmVsb25nc1RvTWFueSgoKSA9PiBQYXltZW50TWV0aG9kLCAoKSA9PiBTdG9yZVBheW1lbnRNZXRob2QpXG4gIGRlY2xhcmUgcGF5bWVudE1ldGhvZHM6IFBheW1lbnRNZXRob2RbXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBCZWxvbmdzVG9NYW55LFxuICBIYXNNYW55LFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uIH0gZnJvbSAnLi9wZXJtaXNzaW9uLmVudGl0eSc7XG5pbXBvcnQgeyBSb2xlUGVybWlzc2lvbiB9IGZyb20gJy4vcm9sZS1wZXJtaXNzaW9uLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFN5c1JvbGUgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCB1bmlxdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBuYW1lOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRpc3BsYXlOYW1lPzogc3RyaW5nO1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFBlcm1pc3Npb24sICgpID0+IFJvbGVQZXJtaXNzaW9uKVxuICBkZWNsYXJlIHBlcm1pc3Npb25zOiBQZXJtaXNzaW9uW107XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3lzUm9sZSB9IGZyb20gJy4vc3lzLnJvbGUuZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFN5c1VzZXIgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBuYW1lOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB1c2VybmFtZTogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCB1bmlxdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBlbWFpbDogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcGhvbmVFeHQ6IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHBob25lOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwYXNzd29yZDogc3RyaW5nO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBwcm9maWxlUGljdHVyZT86IHN0cmluZztcblxuICBARm9yZWlnbktleSgoKSA9PiBTeXNSb2xlKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcm9sZUlkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGxhc3RMb2dpbj86IERhdGU7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBTeXNSb2xlKVxuICBkZWNsYXJlIHJvbGU/OiBTeXNSb2xlO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEJlbG9uZ3NUb01hbnksXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0VGFnIH0gZnJvbSAnLi9wcm9kdWN0LXRhZy5lbnRpdHknO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgVGFnIGV4dGVuZHMgTW9kZWwge1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdW5pcXVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2x1Zzogc3RyaW5nOyAvLyBlLmcuICdiZXN0X3NlbGxlcicsICduZXdfYXJyaXZhbCcsICdkaXNjb3VudCdcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVFbjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUFyOiBzdHJpbmc7XG5cbiAgLy8gT3B0aW9uYWwgY29sb3IgZm9yIFVJIGJhZGdlIGRpc3BsYXkgZS5nLiAnI0ZGMDAwMCdcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvbG9yPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBTdGF0dXMuQUNUSVZFLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogU3RhdHVzO1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFByb2R1Y3QsICgpID0+IFByb2R1Y3RUYWcpXG4gIGRlY2xhcmUgcHJvZHVjdHM6IFByb2R1Y3RbXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi91c2VyLmVudGl0eSc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5pbXBvcnQgeyBBcmVhIH0gZnJvbSAnLi9hcmVhLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFVzZXJBZGRyZXNzIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBVc2VyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHVzZXJJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbGFiZWw6IHN0cmluZzsgLy8gZS5nLiAnSG9tZScsICdXb3JrJywgJ090aGVyJ1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgZnVsbE5hbWU6IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHBob25lRXh0OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwaG9uZTogc3RyaW5nO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IENvdW50cnkpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgY291bnRyeUlkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gQXJlYSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGFyZWFJZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY2l0eT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgYmxvY2s/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHN0cmVldD86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgYnVpbGRpbmc/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGZsb29yPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBhcGFydG1lbnQ/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGFkZGl0aW9uYWxJbmZvPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDksIDYpLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBsYXRpdHVkZT86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCg5LCA2KSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbG9uZ2l0dWRlPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBtYXBJbWFnZT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGlzRGVmYXVsdDogYm9vbGVhbjtcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gVXNlcilcbiAgZGVjbGFyZSB1c2VyOiBVc2VyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ291bnRyeSlcbiAgZGVjbGFyZSBjb3VudHJ5OiBDb3VudHJ5O1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQXJlYSlcbiAgZGVjbGFyZSBhcmVhPzogQXJlYTtcbn1cbiIsImltcG9ydCB7XG4gIE1vZGVsLCBUYWJsZSwgQ29sdW1uLCBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi91c2VyLmVudGl0eSc7XG5cbmV4cG9ydCBlbnVtIEZhdm9yaXRlQ2F0YWxvZ0l0ZW1UeXBlIHtcbiAgUFJPRFVDVCA9ICdwcm9kdWN0JyxcbiAgQlVORExFICA9ICdidW5kbGUnLFxufVxuXG5AVGFibGUoe1xuICBwYXJhbm9pZDogZmFsc2UsIC8vIGhhcmQgZGVsZXRlIG9ubHkg4oCUIHNvZnQgZGVsZXRlIGJyZWFrcyB0aGUgdW5pcXVlIGNvbnN0cmFpbnQgb24gcmUtYWRkXG4gIHRpbWVzdGFtcHM6IHRydWUsIC8vIGtlZXBzIGNyZWF0ZWRBdCAvIHVwZGF0ZWRBdCwgbm8gZGVsZXRlZEF0IGNvbHVtblxuICBpbmRleGVzOiBbXG4gICAge1xuICAgICAgLy8gUHJldmVudCBkdXBsaWNhdGUgZmF2b3JpdGVzIGZvciB0aGUgc2FtZSBpdGVtXG4gICAgICB1bmlxdWU6IHRydWUsXG4gICAgICBmaWVsZHM6IFsndXNlcklkJywgJ2l0ZW1UeXBlJywgJ2l0ZW1JZCddLFxuICAgICAgbmFtZTogJ3VxX3VzZXJfZmF2b3JpdGVfY2F0YWxvZ19pdGVtJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIC8vIEZhc3QgbG9va3VwIGZvciBhbGwgZmF2b3JpdGVzIG9mIGEgdXNlclxuICAgICAgZmllbGRzOiBbJ3VzZXJJZCddLFxuICAgICAgbmFtZTogJ2lkeF91c2VyX2Zhdm9yaXRlX2NhdGFsb2dfdXNlcklkJyxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBVc2VyRmF2b3JpdGVDYXRhbG9nIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBVc2VyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHVzZXJJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhGYXZvcml0ZUNhdGFsb2dJdGVtVHlwZSkpLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gIH0pXG4gIGRlY2xhcmUgaXRlbVR5cGU6IEZhdm9yaXRlQ2F0YWxvZ0l0ZW1UeXBlO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaXRlbUlkOiBudW1iZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBVc2VyKVxuICBkZWNsYXJlIHVzZXI6IFVzZXI7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi91c2VyLmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFVzZXJGYXZvcml0ZSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB1c2VySWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBVc2VyKVxuICBkZWNsYXJlIHVzZXI6IFVzZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0KVxuICBkZWNsYXJlIHByb2R1Y3Q6IFByb2R1Y3Q7XG5cblxufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsIENvbHVtbiwgTW9kZWwsIEZvcmVpZ25LZXksIEJlbG9uZ3NUbywgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuL3VzZXIuZW50aXR5JztcbmltcG9ydCB7IE9yZGVyIH0gZnJvbSAnLi9vcmRlci5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBUcmFuc2FjdGlvblR5cGUge1xuICBERUJJVCAgPSAnZGViaXQnLCAgIC8vIG1vbmV5IGxlYXZlcyB1c2VyIGJhbGFuY2VcbiAgQ1JFRElUID0gJ2NyZWRpdCcsICAvLyBtb25leSBlbnRlcnMgdXNlciBiYWxhbmNlXG59XG5cbmV4cG9ydCBlbnVtIFRyYW5zYWN0aW9uQ2F0ZWdvcnkge1xuICBPUkRFUl9QQVlNRU5UICAgICAgPSAnb3JkZXJfcGF5bWVudCcsICAgICAgLy8gREVCSVQ6IHBhaWQgZm9yIG9yZGVyXG4gIE9SREVSX1JFRlVORCAgICAgICA9ICdvcmRlcl9yZWZ1bmQnLCAgICAgICAvLyBDUkVESVQ6IHJlZnVuZCByZWNlaXZlZFxuICBHSUZUX1NFTlQgICAgICAgICAgPSAnZ2lmdF9zZW50JywgICAgICAgICAgLy8gREVCSVQ6IHNlbnQgZ2lmdCB0byBzb21lb25lXG4gIEdJRlRfUkVDRUlWRUQgICAgICA9ICdnaWZ0X3JlY2VpdmVkJywgICAgICAvLyBDUkVESVQ6IHJlY2VpdmVkIGEgZ2lmdFxuICBCQUxBTkNFX1RPUF9VUCAgICAgPSAnYmFsYW5jZV90b3BfdXAnLCAgICAgLy8gQ1JFRElUOiB0b3BwZWQgdXAgd2FsbGV0XG4gIEJBTEFOQ0VfV0lUSERSQVdBTCA9ICdiYWxhbmNlX3dpdGhkcmF3YWwnLCAvLyBERUJJVDogd2l0aGRyZXcgYmFsYW5jZVxuICBDT1VQT05fQ1JFRElUICAgICAgPSAnY291cG9uX2NyZWRpdCcsICAgICAgLy8gQ1JFRElUOiBjb3Vwb24gY2FzaGJhY2tcbiAgQURKVVNUTUVOVCAgICAgICAgID0gJ2FkanVzdG1lbnQnLCAgICAgICAgIC8vIERFQklUIG9yIENSRURJVDogbWFudWFsIGFkbWluIGFkanVzdG1lbnRcbiAgQ0FTSEJBQ0sgICAgICAgICAgID0gJ2Nhc2hiYWNrJywgICAgICAgICAgIC8vIENSRURJVDogbG95YWx0eSBjYXNoYmFja1xufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBVc2VyVHJhbnNhY3Rpb24gZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFVzZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdXNlcklkOiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFRyYW5zYWN0aW9uVHlwZSkpLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gIH0pXG4gIGRlY2xhcmUgdHlwZTogVHJhbnNhY3Rpb25UeXBlO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhUcmFuc2FjdGlvbkNhdGVnb3J5KSksXG4gICAgYWxsb3dOdWxsOiBmYWxzZSxcbiAgfSlcbiAgZGVjbGFyZSBjYXRlZ29yeTogVHJhbnNhY3Rpb25DYXRlZ29yeTtcblxuICAvLyBUcmFuc2FjdGlvbiBhbW91bnQgKGFsd2F5cyBwb3NpdGl2ZSDigJQgdHlwZSBkZXRlcm1pbmVzIGRpcmVjdGlvbilcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgYW1vdW50OiBudW1iZXI7XG5cbiAgLy8gUnVubmluZyBiYWxhbmNlIEFGVEVSIHRoaXMgdHJhbnNhY3Rpb25cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBiYWxhbmNlQWZ0ZXI6IG51bWJlcjtcblxuICAvLyBDdXJyZW5jeSBvZiB0aGUgdHJhbnNhY3Rpb25cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogJ0tXRCcgfSlcbiAgZGVjbGFyZSBjdXJyZW5jeTogc3RyaW5nO1xuXG4gIC8vIEJpbGluZ3VhbCBkZXNjcmlwdGlvbiBzaG93biBpbiB0aGUgYXBwXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Fbjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Bcjogc3RyaW5nO1xuXG4gIC8vIFJlZmVyZW5jZSB0byB0aGUgcmVsYXRlZCBvcmRlciAoaWYgYXBwbGljYWJsZSlcbiAgQEZvcmVpZ25LZXkoKCkgPT4gT3JkZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBvcmRlcklkPzogbnVtYmVyO1xuXG4gIC8vIEV4dGVybmFsIHJlZmVyZW5jZSAocGF5bWVudCBnYXRld2F5IHRyYW5zYWN0aW9uIElELCBldGMuKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZXh0ZXJuYWxSZWZlcmVuY2U/OiBzdHJpbmc7XG5cbiAgLy8gU3RhdHVzOiBwZW5kaW5nIHwgY29tcGxldGVkIHwgZmFpbGVkIHwgcmV2ZXJzZWRcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogJ2NvbXBsZXRlZCcgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IHN0cmluZztcblxuICAvLyDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gVXNlcilcbiAgZGVjbGFyZSB1c2VyOiBVc2VyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gT3JkZXIpXG4gIGRlY2xhcmUgb3JkZXI/OiBPcmRlcjtcbn1cbiIsImltcG9ydCB7XG4gIE1vZGVsLFxuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIERhdGFUeXBlLFxuICBIYXNNYW55LFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuaW1wb3J0IHsgTGFuZ3VhZ2UgfSBmcm9tICcuLi91dGlscy9lbnVtcy9sYW5ndWFnZSc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5pbXBvcnQgeyBHZW5kZXIgfSBmcm9tICcuLi91dGlscy9lbnVtcy9nZW5kZXInO1xuaW1wb3J0IHsgVXNlckFkZHJlc3MgfSBmcm9tICcuL3VzZXItYWRkcmVzcy5lbnRpdHknO1xuaW1wb3J0IHsgQ2FydCB9IGZyb20gJy4vY2FydC5lbnRpdHknO1xuaW1wb3J0IHsgT3JkZXIgfSBmcm9tICcuL29yZGVyLmVudGl0eSc7XG5pbXBvcnQgeyBVc2VyVHJhbnNhY3Rpb24gfSBmcm9tICcuL3VzZXItdHJhbnNhY3Rpb24uZW50aXR5JztcbmltcG9ydCB7IFVzZXJGYXZvcml0ZUNhdGFsb2cgfSBmcm9tICcuL3VzZXItZmF2b3JpdGUtY2F0YWxvZy5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBVc2VyIGV4dGVuZHMgTW9kZWwge1xuICBAQ29sdW1uXG4gIGRlY2xhcmUgZmlyc3ROYW1lPzogc3RyaW5nO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBsYXN0TmFtZT86IHN0cmluZztcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgcGFzc3dvcmQ6IHN0cmluZztcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBTdGF0dXMuQUNUSVZFLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogU3RhdHVzO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCB2YWxpZGF0ZTogeyBpc0VtYWlsOiB7IG1zZzogJ0ludmFsaWQgRW1haWwnIH0gfSB9KVxuICBkZWNsYXJlIGVtYWlsOiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIHBob25lPzogc3RyaW5nO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBwaG9uZUV4dD86IHN0cmluZztcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgYmlydGhkYXk/OiBEYXRlO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBmYWNlYm9va0lkPzogc3RyaW5nO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBnb29nbGVJZD86IHN0cmluZztcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgYXBwbGVJZD86IHN0cmluZztcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoTGFuZ3VhZ2UpKSxcbiAgICBkZWZhdWx0VmFsdWU6IExhbmd1YWdlLkVOR0xJU0gsXG4gIH0pXG4gIGRlY2xhcmUgcHJlZmVycmVkTGFuZ3VhZ2U6IExhbmd1YWdlO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IENvdW50cnkpXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBwcmVmZXJyZWRDb3VudHJ5SWQ/OiBudW1iZXI7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIHByb2ZpbGVQaWM/OiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIGxhc3RMb2dpbjogRGF0ZTtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGlzQmxvY2tlZDogYm9vbGVhbjtcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGlzVmVyaWZpZWQ6IGJvb2xlYW47XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIHJlZkNvZGU6IHN0cmluZztcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoR2VuZGVyKSksXG4gICAgZGVmYXVsdFZhbHVlOiBHZW5kZXIuUFJFRkVSX05PVF9UT19TQVksXG4gIH0pXG4gIGRlY2xhcmUgZ2VuZGVyOiBHZW5kZXI7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSB3YWxsZXRCYWxhbmNlOiBudW1iZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBDb3VudHJ5KVxuICBkZWNsYXJlIGNvdW50cnk6IENvdW50cnk7XG5cbiAgQEhhc01hbnkoKCkgPT4gVXNlckFkZHJlc3MpXG4gIGRlY2xhcmUgYWRkcmVzc2VzOiBVc2VyQWRkcmVzc1tdO1xuXG4gIEBIYXNNYW55KCgpID0+IFVzZXJGYXZvcml0ZUNhdGFsb2cpXG4gIGRlY2xhcmUgZmF2b3JpdGVzOiBVc2VyRmF2b3JpdGVDYXRhbG9nW107XG5cbiAgQEhhc01hbnkoKCkgPT4gQ2FydClcbiAgZGVjbGFyZSBjYXJ0czogQ2FydFtdO1xuXG4gIEBIYXNNYW55KCgpID0+IE9yZGVyKVxuICBkZWNsYXJlIG9yZGVyczogT3JkZXJbXTtcblxuICBASGFzTWFueSgoKSA9PiBVc2VyVHJhbnNhY3Rpb24pXG4gIGRlY2xhcmUgdHJhbnNhY3Rpb25zOiBVc2VyVHJhbnNhY3Rpb25bXTtcbn1cbiIsImltcG9ydCB7XG4gIE1vZGVsLFxuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBQcmltYXJ5S2V5LFxuICBBdXRvSW5jcmVtZW50LFxuICBDcmVhdGVkQXQsXG4gIFVwZGF0ZWRBdCxcbiAgRGVsZXRlZEF0LFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIEJlbG9uZ3NUb01hbnksXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi91c2VyLmVudGl0eSc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuaW1wb3J0IHsgT3NOYW1lIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvb3NOYW1lJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgVXNlckRldmljZSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gVXNlcilcbiAgQENvbHVtblxuICBkZWNsYXJlIHVzZXJJZDogbnVtYmVyO1xuICBAQ29sdW1uXG4gIGRlY2xhcmUgZGV2aWNlSWQ/OiBzdHJpbmc7XG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBmY21Ub2tlbj86IHN0cmluZztcbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoT3NOYW1lKSksXG4gICAgYWxsb3dOdWxsOiB0cnVlLFxuICB9KVxuICBkZWNsYXJlIG9zU3lzdGVtOiBzdHJpbmc7XG4gIEBCZWxvbmdzVG8oKCkgPT4gVXNlcilcbiAgZGVjbGFyZSB1c2VyOiBVc2VyO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFZhcmlhbnRUeXBlIH0gZnJvbSAnLi92YXJpYW50LXR5cGUuZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFZhcmlhbnRPcHRpb24gZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFZhcmlhbnRUeXBlKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHZhcmlhbnRUeXBlSWQ6IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVFbjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUFyOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHNvcnRPcmRlcjogbnVtYmVyO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBWYXJpYW50VHlwZSlcbiAgZGVjbGFyZSB2YXJpYW50VHlwZTogVmFyaWFudFR5cGU7XG59XG4iLCJpbXBvcnQgeyBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgSGFzTWFueSB9IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5pbXBvcnQgeyBEYXRhVHlwZSB9IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgVmFyaWFudFR5cGUgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBTdGF0dXMuQUNUSVZFLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogU3RhdHVzO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFZlbmRvciB9IGZyb20gJy4vdmVuZG9yLmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0VmFyaWFudCB9IGZyb20gJy4vcHJvZHVjdC12YXJpYW50LmVudGl0eSc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBWZW5kb3JQcm9kdWN0IGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBWZW5kb3IpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdmVuZG9ySWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIC8vIG51bGwgPSBhcHBsaWVzIHRvIHByb2R1Y3Qgd2l0aCBubyB2YXJpYW50c1xuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RWYXJpYW50SWQ/OiBudW1iZXI7XG5cbiAgLy8gVmVuZG9yJ3MgY29zdCBwcmljZSB0byB1c1xuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBjb3N0UHJpY2U6IG51bWJlcjtcblxuICAvLyBWZW5kb3IncyBTS1UvcmVmZXJlbmNlIGNvZGUgZm9yIHRoaXMgcHJvZHVjdFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgdmVuZG9yU2t1Pzogc3RyaW5nO1xuXG4gIC8vIFR5cGljYWwgbGVhZCB0aW1lIGluIGRheXMgZnJvbSB0aGlzIHZlbmRvclxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbGVhZFRpbWVEYXlzPzogbnVtYmVyO1xuXG4gIC8vIE1pbmltdW0gb3JkZXIgcXVhbnRpdHlcbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMSB9KVxuICBkZWNsYXJlIG1vcTogbnVtYmVyO1xuXG4gIC8vIElzIHRoaXMgdGhlIHByZWZlcnJlZC9kZWZhdWx0IHZlbmRvciBmb3IgdGhpcyBwcm9kdWN0P1xuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGlzUHJlZmVycmVkOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IFZlbmRvcilcbiAgZGVjbGFyZSB2ZW5kb3I6IFZlbmRvcjtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3QpXG4gIGRlY2xhcmUgcHJvZHVjdDogUHJvZHVjdDtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBkZWNsYXJlIHZhcmlhbnQ/OiBQcm9kdWN0VmFyaWFudDtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIEhhc01hbnksXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBWZW5kb3IgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY29udGFjdFBlcnNvbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZW1haWw/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHBob25lPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBhZGRyZXNzRW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGFkZHJlc3NBcj86IHN0cmluZztcblxuICBARm9yZWlnbktleSgoKSA9PiBDb3VudHJ5KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY291bnRyeUlkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSB0YXhOdW1iZXI/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvbW1lcmNpYWxSZWdOdW1iZXI/OiBzdHJpbmc7XG5cbiAgLy8gRGVmYXVsdCBwYXltZW50IHRlcm1zIGluIGRheXMgKGUuZy4gMzAgPSBORVQzMClcbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHBheW1lbnRUZXJtc0RheXM6IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbm90ZXM/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ291bnRyeSlcbiAgZGVjbGFyZSBjb3VudHJ5OiBDb3VudHJ5O1xufVxuIiwiaW1wb3J0IHsgTW9kZWxDdG9yIH0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuXG4vLyDilIDilIDilIAgRXhpc3Rpbmcg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9lbnRpdGllcy9jb3VudHJ5LmVudGl0eSc7XG5pbXBvcnQgeyBBcmVhIH0gZnJvbSAnLi9lbnRpdGllcy9hcmVhLmVudGl0eSc7XG5pbXBvcnQgeyBTeXNSb2xlIH0gZnJvbSAnLi9lbnRpdGllcy9zeXMucm9sZS5lbnRpdHknO1xuaW1wb3J0IHsgU3lzVXNlciB9IGZyb20gJy4vZW50aXRpZXMvc3lzLnVzZXIuZW50aXR5JztcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuL2VudGl0aWVzL3VzZXIuZW50aXR5JztcbmltcG9ydCB7IFVzZXJEZXZpY2UgfSBmcm9tICcuL2VudGl0aWVzL3VzZXJEZXZpY2UuZW50aXR5JztcbmltcG9ydCB7IEFwaUtleSB9IGZyb20gJy4vZW50aXRpZXMvYXBpa2V5LmVudGl0eSc7XG5pbXBvcnQgeyBVc2VyQWRkcmVzcyB9IGZyb20gJy4vZW50aXRpZXMvdXNlci1hZGRyZXNzLmVudGl0eSc7XG5pbXBvcnQgeyBVc2VyRmF2b3JpdGUgfSBmcm9tICcuL2VudGl0aWVzL3VzZXItZmF2b3JpdGUuZW50aXR5JztcbmltcG9ydCB7IFVzZXJGYXZvcml0ZUNhdGFsb2cgfSBmcm9tICcuL2VudGl0aWVzL3VzZXItZmF2b3JpdGUtY2F0YWxvZy5lbnRpdHknO1xuaW1wb3J0IHsgQmFubmVyIH0gZnJvbSAnLi9lbnRpdGllcy9iYW5uZXIuZW50aXR5JztcbmltcG9ydCB7IEFwcENvbmZpZyB9IGZyb20gJy4vZW50aXRpZXMvYXBwLWNvbmZpZy5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgQ2F0YWxvZ3VlIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuaW1wb3J0IHsgQ2F0ZWdvcnkgfSBmcm9tICcuL2VudGl0aWVzL2NhdGVnb3J5LmVudGl0eSc7XG5pbXBvcnQgeyBCcmFuZCB9IGZyb20gJy4vZW50aXRpZXMvYnJhbmQuZW50aXR5JztcbmltcG9ydCB7IFZhcmlhbnRUeXBlIH0gZnJvbSAnLi9lbnRpdGllcy92YXJpYW50LXR5cGUuZW50aXR5JztcbmltcG9ydCB7IFZhcmlhbnRPcHRpb24gfSBmcm9tICcuL2VudGl0aWVzL3ZhcmlhbnQtb3B0aW9uLmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9lbnRpdGllcy9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0TWVkaWEgfSBmcm9tICcuL2VudGl0aWVzL3Byb2R1Y3QtbWVkaWEuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9lbnRpdGllcy9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50T3B0aW9uIH0gZnJvbSAnLi9lbnRpdGllcy9wcm9kdWN0LXZhcmlhbnQtb3B0aW9uLmVudGl0eSc7XG5pbXBvcnQgeyBUYWcgfSBmcm9tICcuL2VudGl0aWVzL3RhZy5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFRhZyB9IGZyb20gJy4vZW50aXRpZXMvcHJvZHVjdC10YWcuZW50aXR5JztcbmltcG9ydCB7IEJ1bmRsZSB9IGZyb20gJy4vZW50aXRpZXMvYnVuZGxlLmVudGl0eSc7XG5pbXBvcnQgeyBCdW5kbGVQcm9kdWN0IH0gZnJvbSAnLi9lbnRpdGllcy9idW5kbGUtcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgQnVuZGxlU3RvcmUgfSBmcm9tICcuL2VudGl0aWVzL2J1bmRsZS1zdG9yZS5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgU3RvcmVzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuL2VudGl0aWVzL3N0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0U3RvcmUgfSBmcm9tICcuL2VudGl0aWVzL3Byb2R1Y3Qtc3RvcmUuZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIEludmVudG9yeSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmltcG9ydCB7IEludmVudG9yeSB9IGZyb20gJy4vZW50aXRpZXMvaW52ZW50b3J5LmVudGl0eSc7XG5pbXBvcnQgeyBTdG9yZUludmVudG9yeSB9IGZyb20gJy4vZW50aXRpZXMvc3RvcmUtaW52ZW50b3J5LmVudGl0eSc7XG5pbXBvcnQgeyBJbnZlbnRvcnlTdG9jayB9IGZyb20gJy4vZW50aXRpZXMvaW52ZW50b3J5LXN0b2NrLmVudGl0eSc7XG5pbXBvcnQgeyBTdG9ja01vdmVtZW50IH0gZnJvbSAnLi9lbnRpdGllcy9zdG9jay1tb3ZlbWVudC5lbnRpdHknO1xuaW1wb3J0IHsgU2hpcHBpbmdSdWxlIH0gZnJvbSAnLi9lbnRpdGllcy9zaGlwcGluZy1ydWxlLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBQdXJjaGFzaW5nIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuaW1wb3J0IHsgVmVuZG9yIH0gZnJvbSAnLi9lbnRpdGllcy92ZW5kb3IuZW50aXR5JztcbmltcG9ydCB7IFZlbmRvclByb2R1Y3QgfSBmcm9tICcuL2VudGl0aWVzL3ZlbmRvci1wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBQdXJjaGFzZU9yZGVyIH0gZnJvbSAnLi9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci5lbnRpdHknO1xuaW1wb3J0IHsgUHVyY2hhc2VPcmRlckl0ZW0gfSBmcm9tICcuL2VudGl0aWVzL3B1cmNoYXNlLW9yZGVyLWl0ZW0uZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIFBlcm1pc3Npb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuaW1wb3J0IHsgUGVybWlzc2lvbiB9IGZyb20gJy4vZW50aXRpZXMvcGVybWlzc2lvbi5lbnRpdHknO1xuaW1wb3J0IHsgUm9sZVBlcm1pc3Npb24gfSBmcm9tICcuL2VudGl0aWVzL3JvbGUtcGVybWlzc2lvbi5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgUGF5bWVudCBNZXRob2RzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuaW1wb3J0IHsgUGF5bWVudEdhdGV3YXkgfSBmcm9tICcuL2VudGl0aWVzL3BheW1lbnQtZ2F0ZXdheS5lbnRpdHknO1xuaW1wb3J0IHsgUGF5bWVudE1ldGhvZCB9IGZyb20gJy4vZW50aXRpZXMvcGF5bWVudC1tZXRob2QuZW50aXR5JztcbmltcG9ydCB7IFBheW1lbnRNZXRob2RDb3VudHJ5IH0gZnJvbSAnLi9lbnRpdGllcy9wYXltZW50LW1ldGhvZC1jb3VudHJ5LmVudGl0eSc7XG5pbXBvcnQgeyBTdG9yZVBheW1lbnRNZXRob2QgfSBmcm9tICcuL2VudGl0aWVzL3N0b3JlLXBheW1lbnQtbWV0aG9kLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBDYXJ0cyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmltcG9ydCB7IENhcnQgfSBmcm9tICcuL2VudGl0aWVzL2NhcnQuZW50aXR5JztcbmltcG9ydCB7IENhcnRJdGVtIH0gZnJvbSAnLi9lbnRpdGllcy9jYXJ0LWl0ZW0uZW50aXR5JztcbmltcG9ydCB7IENhcnRJdGVtQnVuZGxlU2VsZWN0aW9uIH0gZnJvbSAnLi9lbnRpdGllcy9jYXJ0LWl0ZW0tYnVuZGxlLXNlbGVjdGlvbi5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgQ291cG9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmltcG9ydCB7IENvdXBvbiB9IGZyb20gJy4vZW50aXRpZXMvY291cG9uLmVudGl0eSc7XG5pbXBvcnQgeyBDb3Vwb25TdG9yZSB9IGZyb20gJy4vZW50aXRpZXMvY291cG9uLXN0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBDb3Vwb25Qcm9kdWN0IH0gZnJvbSAnLi9lbnRpdGllcy9jb3Vwb24tcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgQ291cG9uVXNlciB9IGZyb20gJy4vZW50aXRpZXMvY291cG9uLXVzZXIuZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIE9yZGVycyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmltcG9ydCB7IE9yZGVyU3RhdHVzIH0gZnJvbSAnLi9lbnRpdGllcy9vcmRlci1zdGF0dXMuZW50aXR5JztcbmltcG9ydCB7IE9yZGVyIH0gZnJvbSAnLi9lbnRpdGllcy9vcmRlci5lbnRpdHknO1xuaW1wb3J0IHsgT3JkZXJJdGVtIH0gZnJvbSAnLi9lbnRpdGllcy9vcmRlci1pdGVtLmVudGl0eSc7XG5pbXBvcnQgeyBPcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb24gfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLWl0ZW0tYnVuZGxlLXNlbGVjdGlvbi5lbnRpdHknO1xuaW1wb3J0IHsgT3JkZXJTdGF0dXNIaXN0b3J5IH0gZnJvbSAnLi9lbnRpdGllcy9vcmRlci1zdGF0dXMtaGlzdG9yeS5lbnRpdHknO1xuaW1wb3J0IHsgVXNlclRyYW5zYWN0aW9uIH0gZnJvbSAnLi9lbnRpdGllcy91c2VyLXRyYW5zYWN0aW9uLmVudGl0eSc7XG5pbXBvcnQgeyBQdXJjaGFzZU9yZGVyT3JkZXJJdGVtIH0gZnJvbSAnLi9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci1vcmRlci1pdGVtLmVudGl0eSc7XG5pbXBvcnQgeyBSdW5TaGVldCB9IGZyb20gJy4vZW50aXRpZXMvcnVuLXNoZWV0LmVudGl0eSc7XG5pbXBvcnQgeyBSdW5TaGVldE9yZGVyIH0gZnJvbSAnLi9lbnRpdGllcy9ydW4tc2hlZXQtb3JkZXIuZW50aXR5JztcbmltcG9ydCB7IFJlZnVuZCB9IGZyb20gJy4vZW50aXRpZXMvcmVmdW5kLmVudGl0eSc7XG5pbXBvcnQgeyBQdXJjaGFzZU9yZGVyUmVjZWlwdCB9IGZyb20gJy4vZW50aXRpZXMvcHVyY2hhc2Utb3JkZXItcmVjZWlwdC5lbnRpdHknO1xuaW1wb3J0IHsgUHVyY2hhc2VPcmRlclJlY2VpcHRJdGVtIH0gZnJvbSAnLi9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci1yZWNlaXB0LWl0ZW0uZW50aXR5JztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEVYUE9SVFNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIOKUgOKUgOKUgCBFeGlzdGluZyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7IEFwaUtleSB9IGZyb20gJy4vZW50aXRpZXMvYXBpa2V5LmVudGl0eSc7XG5leHBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9lbnRpdGllcy9jb3VudHJ5LmVudGl0eSc7XG5leHBvcnQgeyBBcmVhIH0gZnJvbSAnLi9lbnRpdGllcy9hcmVhLmVudGl0eSc7XG5leHBvcnQgeyBTeXNSb2xlIH0gZnJvbSAnLi9lbnRpdGllcy9zeXMucm9sZS5lbnRpdHknO1xuZXhwb3J0IHsgU3lzVXNlciB9IGZyb20gJy4vZW50aXRpZXMvc3lzLnVzZXIuZW50aXR5JztcbmV4cG9ydCB7IFVzZXIgfSBmcm9tICcuL2VudGl0aWVzL3VzZXIuZW50aXR5JztcbmV4cG9ydCB7IFVzZXJEZXZpY2UgfSBmcm9tICcuL2VudGl0aWVzL3VzZXJEZXZpY2UuZW50aXR5JztcbmV4cG9ydCB7IFVzZXJBZGRyZXNzIH0gZnJvbSAnLi9lbnRpdGllcy91c2VyLWFkZHJlc3MuZW50aXR5JztcbmV4cG9ydCB7IFVzZXJGYXZvcml0ZSB9IGZyb20gJy4vZW50aXRpZXMvdXNlci1mYXZvcml0ZS5lbnRpdHknO1xuZXhwb3J0IHtcbiAgVXNlckZhdm9yaXRlQ2F0YWxvZyxcbiAgRmF2b3JpdGVDYXRhbG9nSXRlbVR5cGUsXG59IGZyb20gJy4vZW50aXRpZXMvdXNlci1mYXZvcml0ZS1jYXRhbG9nLmVudGl0eSc7XG5leHBvcnQge1xuICBCYW5uZXIsXG4gIEJhbm5lclBsYWNlbWVudCxcbiAgQmFubmVyU3RhdHVzLFxuICBCYW5uZXJGaWx0ZXJzLFxufSBmcm9tICcuL2VudGl0aWVzL2Jhbm5lci5lbnRpdHknO1xuZXhwb3J0IHsgQXBwQ29uZmlnIH0gZnJvbSAnLi9lbnRpdGllcy9hcHAtY29uZmlnLmVudGl0eSc7XG5leHBvcnQgeyBSdW5TaGVldCwgUnVuU2hlZXRTdGF0dXMgfSBmcm9tICcuL2VudGl0aWVzL3J1bi1zaGVldC5lbnRpdHknO1xuZXhwb3J0IHtcbiAgUnVuU2hlZXRPcmRlcixcbiAgUnVuU2hlZXRPcmRlclN0YXR1cyxcbn0gZnJvbSAnLi9lbnRpdGllcy9ydW4tc2hlZXQtb3JkZXIuZW50aXR5JztcblxuZXhwb3J0IHsgUmVmdW5kLCBSZWZ1bmRNZXRob2QsIFJlZnVuZFN0YXR1cyB9IGZyb20gJy4vZW50aXRpZXMvcmVmdW5kLmVudGl0eSc7XG5cblxuLy8g4pSA4pSA4pSAIENhdGFsb2d1ZSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7IENhdGVnb3J5IH0gZnJvbSAnLi9lbnRpdGllcy9jYXRlZ29yeS5lbnRpdHknO1xuZXhwb3J0IHsgQnJhbmQgfSBmcm9tICcuL2VudGl0aWVzL2JyYW5kLmVudGl0eSc7XG5leHBvcnQgeyBWYXJpYW50VHlwZSB9IGZyb20gJy4vZW50aXRpZXMvdmFyaWFudC10eXBlLmVudGl0eSc7XG5leHBvcnQgeyBWYXJpYW50T3B0aW9uIH0gZnJvbSAnLi9lbnRpdGllcy92YXJpYW50LW9wdGlvbi5lbnRpdHknO1xuZXhwb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vZW50aXRpZXMvcHJvZHVjdC5lbnRpdHknO1xuZXhwb3J0IHsgUHJvZHVjdE1lZGlhLCBNZWRpYVR5cGUgfSBmcm9tICcuL2VudGl0aWVzL3Byb2R1Y3QtbWVkaWEuZW50aXR5JztcbmV4cG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9lbnRpdGllcy9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmV4cG9ydCB7IFByb2R1Y3RWYXJpYW50T3B0aW9uIH0gZnJvbSAnLi9lbnRpdGllcy9wcm9kdWN0LXZhcmlhbnQtb3B0aW9uLmVudGl0eSc7XG5leHBvcnQgeyBUYWcgfSBmcm9tICcuL2VudGl0aWVzL3RhZy5lbnRpdHknO1xuZXhwb3J0IHsgUHJvZHVjdFRhZyB9IGZyb20gJy4vZW50aXRpZXMvcHJvZHVjdC10YWcuZW50aXR5JztcbmV4cG9ydCB7IEJ1bmRsZSB9IGZyb20gJy4vZW50aXRpZXMvYnVuZGxlLmVudGl0eSc7XG5leHBvcnQgeyBCdW5kbGVQcm9kdWN0IH0gZnJvbSAnLi9lbnRpdGllcy9idW5kbGUtcHJvZHVjdC5lbnRpdHknO1xuZXhwb3J0IHsgQnVuZGxlU3RvcmUgfSBmcm9tICcuL2VudGl0aWVzL2J1bmRsZS1zdG9yZS5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgU3RvcmVzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuZXhwb3J0IHsgU3RvcmUgfSBmcm9tICcuL2VudGl0aWVzL3N0b3JlLmVudGl0eSc7XG5leHBvcnQgeyBQcm9kdWN0U3RvcmUgfSBmcm9tICcuL2VudGl0aWVzL3Byb2R1Y3Qtc3RvcmUuZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIEludmVudG9yeSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7IEludmVudG9yeSB9IGZyb20gJy4vZW50aXRpZXMvaW52ZW50b3J5LmVudGl0eSc7XG5leHBvcnQgeyBTdG9yZUludmVudG9yeSB9IGZyb20gJy4vZW50aXRpZXMvc3RvcmUtaW52ZW50b3J5LmVudGl0eSc7XG5leHBvcnQgeyBJbnZlbnRvcnlTdG9jayB9IGZyb20gJy4vZW50aXRpZXMvaW52ZW50b3J5LXN0b2NrLmVudGl0eSc7XG5leHBvcnQgeyBTdG9ja01vdmVtZW50IH0gZnJvbSAnLi9lbnRpdGllcy9zdG9jay1tb3ZlbWVudC5lbnRpdHknO1xuZXhwb3J0IHsgU2hpcHBpbmdSdWxlIH0gZnJvbSAnLi9lbnRpdGllcy9zaGlwcGluZy1ydWxlLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBQdXJjaGFzaW5nIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuZXhwb3J0IHsgVmVuZG9yIH0gZnJvbSAnLi9lbnRpdGllcy92ZW5kb3IuZW50aXR5JztcbmV4cG9ydCB7IFZlbmRvclByb2R1Y3QgfSBmcm9tICcuL2VudGl0aWVzL3ZlbmRvci1wcm9kdWN0LmVudGl0eSc7XG5leHBvcnQgeyBQdXJjaGFzZU9yZGVyIH0gZnJvbSAnLi9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci5lbnRpdHknO1xuZXhwb3J0IHtcbiAgUHVyY2hhc2VPcmRlckl0ZW0sXG4gIFB1cmNoYXNlT3JkZXJJdGVtU3RhdHVzLFxufSBmcm9tICcuL2VudGl0aWVzL3B1cmNoYXNlLW9yZGVyLWl0ZW0uZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIFBlcm1pc3Npb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG5leHBvcnQgeyBQZXJtaXNzaW9uIH0gZnJvbSAnLi9lbnRpdGllcy9wZXJtaXNzaW9uLmVudGl0eSc7XG5leHBvcnQgeyBSb2xlUGVybWlzc2lvbiB9IGZyb20gJy4vZW50aXRpZXMvcm9sZS1wZXJtaXNzaW9uLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBQYXltZW50IE1ldGhvZHMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5leHBvcnQge1xuICBQYXltZW50R2F0ZXdheSxcbiAgUGF5bWVudEdhdGV3YXlUeXBlLFxufSBmcm9tICcuL2VudGl0aWVzL3BheW1lbnQtZ2F0ZXdheS5lbnRpdHknO1xuZXhwb3J0IHtcbiAgUGF5bWVudE1ldGhvZCxcbiAgUGF5bWVudE1ldGhvZFR5cGUsXG59IGZyb20gJy4vZW50aXRpZXMvcGF5bWVudC1tZXRob2QuZW50aXR5JztcbmV4cG9ydCB7IFBheW1lbnRNZXRob2RDb3VudHJ5IH0gZnJvbSAnLi9lbnRpdGllcy9wYXltZW50LW1ldGhvZC1jb3VudHJ5LmVudGl0eSc7XG5leHBvcnQgeyBTdG9yZVBheW1lbnRNZXRob2QgfSBmcm9tICcuL2VudGl0aWVzL3N0b3JlLXBheW1lbnQtbWV0aG9kLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBDYXJ0cyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7IENhcnQsIENhcnRTdGF0dXMgfSBmcm9tICcuL2VudGl0aWVzL2NhcnQuZW50aXR5JztcbmV4cG9ydCB7IENhcnRJdGVtLCBDYXJ0SXRlbVR5cGUgfSBmcm9tICcuL2VudGl0aWVzL2NhcnQtaXRlbS5lbnRpdHknO1xuZXhwb3J0IHsgQ2FydEl0ZW1CdW5kbGVTZWxlY3Rpb24gfSBmcm9tICcuL2VudGl0aWVzL2NhcnQtaXRlbS1idW5kbGUtc2VsZWN0aW9uLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBDb3Vwb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuZXhwb3J0IHtcbiAgQ291cG9uLFxuICBDb3Vwb25EaXNjb3VudFR5cGUsXG4gIENvdXBvbkFwcGxpZXNUbyxcbiAgQ291cG9uT3NUYXJnZXQsXG59IGZyb20gJy4vZW50aXRpZXMvY291cG9uLmVudGl0eSc7XG5leHBvcnQgeyBDb3Vwb25TdG9yZSB9IGZyb20gJy4vZW50aXRpZXMvY291cG9uLXN0b3JlLmVudGl0eSc7XG5leHBvcnQgeyBDb3Vwb25Qcm9kdWN0IH0gZnJvbSAnLi9lbnRpdGllcy9jb3Vwb24tcHJvZHVjdC5lbnRpdHknO1xuZXhwb3J0IHsgQ291cG9uVXNlciB9IGZyb20gJy4vZW50aXRpZXMvY291cG9uLXVzZXIuZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIE9yZGVycyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7IE9yZGVyU3RhdHVzLCBPcmRlclN0YXR1c0NvZGUgfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLXN0YXR1cy5lbnRpdHknO1xuZXhwb3J0IHsgT3JkZXIgfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLmVudGl0eSc7XG5leHBvcnQge1xuICBPcmRlckl0ZW0sXG4gIE9yZGVySXRlbVR5cGUsXG4gIE9yZGVySXRlbUZ1bGZpbGxtZW50U3RhdHVzLFxufSBmcm9tICcuL2VudGl0aWVzL29yZGVyLWl0ZW0uZW50aXR5JztcbmV4cG9ydCB7IE9yZGVySXRlbUJ1bmRsZVNlbGVjdGlvbiB9IGZyb20gJy4vZW50aXRpZXMvb3JkZXItaXRlbS1idW5kbGUtc2VsZWN0aW9uLmVudGl0eSc7XG5leHBvcnQgeyBPcmRlclN0YXR1c0hpc3RvcnkgfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLXN0YXR1cy1oaXN0b3J5LmVudGl0eSc7XG5leHBvcnQge1xuICBVc2VyVHJhbnNhY3Rpb24sXG4gIFRyYW5zYWN0aW9uVHlwZSxcbiAgVHJhbnNhY3Rpb25DYXRlZ29yeSxcbn0gZnJvbSAnLi9lbnRpdGllcy91c2VyLXRyYW5zYWN0aW9uLmVudGl0eSc7XG5leHBvcnQgeyBQdXJjaGFzZU9yZGVyT3JkZXJJdGVtIH0gZnJvbSAnLi9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci1vcmRlci1pdGVtLmVudGl0eSc7XG5leHBvcnQgeyBQdXJjaGFzZU9yZGVyUmVjZWlwdCB9IGZyb20gJy4vZW50aXRpZXMvcHVyY2hhc2Utb3JkZXItcmVjZWlwdC5lbnRpdHknO1xuZXhwb3J0IHsgUHVyY2hhc2VPcmRlclJlY2VpcHRJdGVtIH0gZnJvbSAnLi9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci1yZWNlaXB0LWl0ZW0uZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIEVudW1zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuZXhwb3J0IHsgT3NOYW1lIH0gZnJvbSAnLi91dGlscy9lbnVtcy9vc05hbWUnO1xuZXhwb3J0IHsgUHJvZHVjdEFwcCB9IGZyb20gJy4vdXRpbHMvZW51bXMvcHJvZHVjdEFwcCc7XG5leHBvcnQgeyBWZXJzaW9uVHlwZSB9IGZyb20gJy4vdXRpbHMvZW51bXMvdmVyc2lvbnR5cGUnO1xuZXhwb3J0IHsgTGFuZ3VhZ2UgfSBmcm9tICcuL3V0aWxzL2VudW1zL2xhbmd1YWdlJztcbmV4cG9ydCB7IFN0YXR1cyB9IGZyb20gJy4vdXRpbHMvZW51bXMvc3RhdHVzJztcbmV4cG9ydCB7IEdlbmRlciB9IGZyb20gJy4vdXRpbHMvZW51bXMvZ2VuZGVyJztcbmV4cG9ydCB7IFB1cmNoYXNlT3JkZXJTdGF0dXMgfSBmcm9tICcuL3V0aWxzL2VudW1zL3B1cmNoYXNlT3JkZXJTdGF0dXMnO1xuZXhwb3J0IHsgU3RvY2tNb3ZlbWVudFR5cGUgfSBmcm9tICcuL3V0aWxzL2VudW1zL3N0b2NrTW92ZW1lbnRUeXBlJztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1PREVMIFJFR0lTVFJZXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGJNb2RlbHMoKTogTW9kZWxDdG9yW10ge1xuICByZXR1cm4gW1xuICAgIC8vIEV4aXN0aW5nXG4gICAgQXBpS2V5LFxuICAgIEFyZWEsXG4gICAgQ291bnRyeSxcbiAgICBTeXNSb2xlLFxuICAgIFN5c1VzZXIsXG4gICAgVXNlcixcbiAgICBVc2VyRGV2aWNlLFxuICAgIFVzZXJBZGRyZXNzLFxuICAgIFVzZXJGYXZvcml0ZSxcbiAgICBVc2VyRmF2b3JpdGVDYXRhbG9nLFxuXG4gICAgLy8gQ2F0YWxvZ3VlXG4gICAgQ2F0ZWdvcnksXG4gICAgQnJhbmQsXG4gICAgVmFyaWFudFR5cGUsXG4gICAgVmFyaWFudE9wdGlvbixcbiAgICBQcm9kdWN0LFxuICAgIFByb2R1Y3RNZWRpYSxcbiAgICBQcm9kdWN0VmFyaWFudCxcbiAgICBQcm9kdWN0VmFyaWFudE9wdGlvbixcbiAgICBUYWcsXG4gICAgUHJvZHVjdFRhZyxcbiAgICBCdW5kbGUsXG4gICAgQnVuZGxlUHJvZHVjdCxcbiAgICBCdW5kbGVTdG9yZSxcblxuICAgIC8vIFN0b3Jlc1xuICAgIFN0b3JlLFxuICAgIFByb2R1Y3RTdG9yZSxcblxuICAgIC8vIEludmVudG9yeVxuICAgIEludmVudG9yeSxcbiAgICBTdG9yZUludmVudG9yeSxcbiAgICBJbnZlbnRvcnlTdG9jayxcbiAgICBTdG9ja01vdmVtZW50LFxuICAgIFNoaXBwaW5nUnVsZSxcblxuICAgIC8vIFB1cmNoYXNpbmdcbiAgICBWZW5kb3IsXG4gICAgVmVuZG9yUHJvZHVjdCxcbiAgICBQdXJjaGFzZU9yZGVyLFxuICAgIFB1cmNoYXNlT3JkZXJJdGVtLFxuXG4gICAgLy8gUGVybWlzc2lvbnNcbiAgICBQZXJtaXNzaW9uLFxuICAgIFJvbGVQZXJtaXNzaW9uLFxuXG4gICAgLy8gUGF5bWVudFxuICAgIFBheW1lbnRHYXRld2F5LFxuICAgIFBheW1lbnRNZXRob2QsXG4gICAgUGF5bWVudE1ldGhvZENvdW50cnksXG4gICAgU3RvcmVQYXltZW50TWV0aG9kLFxuXG4gICAgLy8gQ2FydFxuICAgIENhcnQsXG4gICAgQ2FydEl0ZW0sXG4gICAgQ2FydEl0ZW1CdW5kbGVTZWxlY3Rpb24sXG5cbiAgICAvL0NvdXBvblxuICAgIENvdXBvbixcbiAgICBDb3Vwb25TdG9yZSxcbiAgICBDb3Vwb25Qcm9kdWN0LFxuICAgIENvdXBvblVzZXIsXG5cbiAgICAvLyBPcmRlcnNcbiAgICBPcmRlclN0YXR1cyxcbiAgICBPcmRlcixcbiAgICBPcmRlckl0ZW0sXG4gICAgT3JkZXJJdGVtQnVuZGxlU2VsZWN0aW9uLFxuICAgIE9yZGVyU3RhdHVzSGlzdG9yeSxcbiAgICBVc2VyVHJhbnNhY3Rpb24sXG4gICAgUHVyY2hhc2VPcmRlck9yZGVySXRlbSxcblxuICAgIC8vIEJhbm5lcnNcbiAgICBCYW5uZXIsXG5cbiAgICBBcHBDb25maWcsXG5cbiAgICBSdW5TaGVldCxcbiAgICBSdW5TaGVldE9yZGVyLFxuXG4gICAgUmVmdW5kLFxuICAgIFB1cmNoYXNlT3JkZXJSZWNlaXB0LFxuICAgIFB1cmNoYXNlT3JkZXJSZWNlaXB0SXRlbSxcbiAgXTtcbn1cbiIsImV4cG9ydCBlbnVtIEdlbmRlciB7XG4gIE1BTEUgPSAnTWFsZScsXG4gIEZFTUFMRSA9ICdGZW1hbGUnLFxuICBQUkVGRVJfTk9UX1RPX1NBWSA9ICdQcmVmZXIgbm90IHRvIHNheScsXG59XG4iLCJleHBvcnQgZW51bSBMYW5ndWFnZSB7XG4gIEVOR0xJU0ggPSAnZW4nLFxuICBBUkFCSUMgPSAnYXInLFxufVxuIiwiZXhwb3J0IGVudW0gT3NOYW1lIHtcbiAgQU5EUk9JRCA9ICdhbmRyb2lkJyxcbiAgSU9TID0gJ2lPUycsXG4gIFdFQiA9ICd3ZWInLFxufVxuIiwiZXhwb3J0IGVudW0gUHJvZHVjdEFwcCB7XG4gIERBU0hCT0FSRCA9ICdkYXNoYm9hcmQnLFxuICBVU0VSX0FQUCA9ICd1c2VyYXBwJyxcbn1cbiIsImV4cG9ydCBlbnVtIFB1cmNoYXNlT3JkZXJTdGF0dXMge1xuICBEUkFGVCA9ICdkcmFmdCcsXG4gIFNFTlRfVE9fVkVORE9SID0gJ3NlbnRfdG9fdmVuZG9yJyxcbiAgUEFSVElBTExZX1JFQ0VJVkVEID0gJ3BhcnRpYWxseV9yZWNlaXZlZCcsXG4gIEZVTExZX1JFQ0VJVkVEID0gJ2Z1bGx5X3JlY2VpdmVkJyxcbiAgQ0xPU0VEID0gJ2Nsb3NlZCcsXG4gIENBTkNFTExFRCA9ICdjYW5jZWxsZWQnLFxufVxuIiwiZXhwb3J0IGVudW0gU3RhdHVzIHtcbiAgQUNUSVZFID0gJ2FjdGl2ZScsXG4gIElOX0FDVElWRSA9ICdpbmFjdGl2ZScsXG59XG4iLCJleHBvcnQgZW51bSBTdG9ja01vdmVtZW50VHlwZSB7XG4gIC8vIFN0b2NrIGNvbWluZyBpblxuICBSRUNFSVZFRCA9ICdyZWNlaXZlZCcsICAgICAgICAgICAvLyBQTyByZWNlaXZlZCBpbnRvIGludmVudG9yeVxuXG4gIC8vIFN0b2NrIGdvaW5nIG91dCBvciBiZWluZyBoZWxkXG4gIFJFU0VSVkVEID0gJ3Jlc2VydmVkJywgICAgICAgICAgIC8vIFJlc2VydmVkIGZvciBhIHBlbmRpbmcgb3JkZXJcbiAgUkVTRVJWQVRJT05fUkVMRUFTRUQgPSAncmVzZXJ2YXRpb25fcmVsZWFzZWQnLCAvLyBPcmRlciBjYW5jZWxsZWQsIHN0b2NrIGZyZWVkXG5cbiAgLy8gTWFudWFsIGFkanVzdG1lbnRzXG4gIEFESlVTVE1FTlRfQUREID0gJ2FkanVzdG1lbnRfYWRkJywgICAgICAgLy8gTWFudWFsIHN0b2NrIGluY3JlYXNlXG4gIEFESlVTVE1FTlRfUkVNT1ZFID0gJ2FkanVzdG1lbnRfcmVtb3ZlJywgLy8gTWFudWFsIHN0b2NrIGRlY3JlYXNlIChkYW1hZ2UsIGxvc3MpXG5cbiAgLy8gUmV0dXJuc1xuICBSRVRVUk5FRF9GUk9NX0NVU1RPTUVSID0gJ3JldHVybmVkX2Zyb21fY3VzdG9tZXInLFxuICBSRVRVUk5FRF9UT19WRU5ET1IgPSAncmV0dXJuZWRfdG9fdmVuZG9yJyxcblxuICAvLyBUcmFuc2ZlcnNcbiAgVFJBTlNGRVJfSU4gPSAndHJhbnNmZXJfaW4nLCAgIC8vIE1vdmVkIGluIGZyb20gYW5vdGhlciBpbnZlbnRvcnlcbiAgVFJBTlNGRVJfT1VUID0gJ3RyYW5zZmVyX291dCcsIC8vIE1vdmVkIG91dCB0byBhbm90aGVyIGludmVudG9yeVxufVxuIiwiZXhwb3J0IGVudW0gVmVyc2lvblR5cGUge1xuICBPUFRJT05BTCA9ICdvcHRpb25hbCcsXG4gIE1BTkRBVE9SWSA9ICdtYW5kYXRvcnknLFxufVxuIiwiaW1wb3J0IHsgTW9kdWxlIH0gZnJvbSAnQG5lc3Rqcy9jb21tb24nO1xuaW1wb3J0IHsgU2VxdWVsaXplTW9kdWxlIH0gZnJvbSAnQG5lc3Rqcy9zZXF1ZWxpemUnO1xuaW1wb3J0IHsgQ29uZmlnTW9kdWxlIH0gZnJvbSAnQG5lc3Rqcy9jb25maWcnO1xuaW1wb3J0IHsgZ2V0RGJNb2RlbHMgfSBmcm9tICdAYXBwL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeSc7XG5cbkBNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29uZmlnTW9kdWxlLmZvclJvb3Qoe1xuICAgICAgaXNHbG9iYWw6IHRydWUsXG4gICAgfSksXG4gICAgU2VxdWVsaXplTW9kdWxlLmZvclJvb3Qoe1xuICAgICAgZGlhbGVjdDogJ215c3FsJyxcbiAgICAgIGhvc3Q6IHByb2Nlc3MuZW52Lk1ZU1FMX0hPU1QsXG4gICAgICBkYXRhYmFzZTogcHJvY2Vzcy5lbnYuTVlTUUxfREFUQUJBU0UsXG4gICAgICB1c2VybmFtZTogcHJvY2Vzcy5lbnYuTVlTUUxfVVNFUixcbiAgICAgIHBhc3N3b3JkOiBwcm9jZXNzLmVudi5NWVNRTF9QQVNTV09SRCxcbiAgICAgIHBvcnQ6IDMzMDYsXG4gICAgICBtb2RlbHM6IGdldERiTW9kZWxzKCksXG4gICAgICBhdXRvTG9hZE1vZGVsczogdHJ1ZSxcbiAgICAgIHN5bmNocm9uaXplOiB0cnVlLFxuICAgICAgbG9nZ2luZzogZmFsc2UsXG4gICAgICBkZWZpbmU6IHtcbiAgICAgICAgdGltZXN0YW1wczogdHJ1ZSxcbiAgICAgICAgcGFyYW5vaWQ6IHRydWUsXG4gICAgICB9LFxuICAgIH0pLFxuICBdLFxuICBwcm92aWRlcnM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBBcHBNb2R1bGUge31cbiIsIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIkBuZXN0anMvY29tbW9uXCIpOyIsIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIkBuZXN0anMvY29uZmlnXCIpOyIsIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIkBuZXN0anMvY29yZVwiKTsiLCJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCJAbmVzdGpzL3NlcXVlbGl6ZVwiKTsiLCJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCJzZXF1ZWxpemUtdHlwZXNjcmlwdFwiKTsiLCJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCJ0c2NvbmZpZy1wYXRocy9yZWdpc3RlclwiKTsiLCIvLyBUaGUgbW9kdWxlIGNhY2hlXG52YXIgX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fID0ge307XG5cbi8vIFRoZSByZXF1aXJlIGZ1bmN0aW9uXG5mdW5jdGlvbiBfX3dlYnBhY2tfcmVxdWlyZV9fKG1vZHVsZUlkKSB7XG5cdC8vIENoZWNrIGlmIG1vZHVsZSBpcyBpbiBjYWNoZVxuXHR2YXIgY2FjaGVkTW9kdWxlID0gX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fW21vZHVsZUlkXTtcblx0aWYgKGNhY2hlZE1vZHVsZSAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0cmV0dXJuIGNhY2hlZE1vZHVsZS5leHBvcnRzO1xuXHR9XG5cdC8vIENoZWNrIGlmIG1vZHVsZSBleGlzdHMgKGRldmVsb3BtZW50IG9ubHkpXG5cdGlmIChfX3dlYnBhY2tfbW9kdWxlc19fW21vZHVsZUlkXSA9PT0gdW5kZWZpbmVkKSB7XG5cdFx0dmFyIGUgPSBuZXcgRXJyb3IoXCJDYW5ub3QgZmluZCBtb2R1bGUgJ1wiICsgbW9kdWxlSWQgKyBcIidcIik7XG5cdFx0ZS5jb2RlID0gJ01PRFVMRV9OT1RfRk9VTkQnO1xuXHRcdHRocm93IGU7XG5cdH1cblx0Ly8gQ3JlYXRlIGEgbmV3IG1vZHVsZSAoYW5kIHB1dCBpdCBpbnRvIHRoZSBjYWNoZSlcblx0dmFyIG1vZHVsZSA9IF9fd2VicGFja19tb2R1bGVfY2FjaGVfX1ttb2R1bGVJZF0gPSB7XG5cdFx0Ly8gbm8gbW9kdWxlLmlkIG5lZWRlZFxuXHRcdC8vIG5vIG1vZHVsZS5sb2FkZWQgbmVlZGVkXG5cdFx0ZXhwb3J0czoge31cblx0fTtcblxuXHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cblx0X193ZWJwYWNrX21vZHVsZXNfX1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXyk7XG5cblx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcblx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xufVxuXG4iLCJpbXBvcnQgJ3RzY29uZmlnLXBhdGhzL3JlZ2lzdGVyJztcbmltcG9ydCB7IE5lc3RGYWN0b3J5IH0gZnJvbSAnQG5lc3Rqcy9jb3JlJztcbmltcG9ydCB7IEFwcE1vZHVsZSB9IGZyb20gJy4vYXBwLm1vZHVsZSc7XG5pbXBvcnQgeyBTZXF1ZWxpemUgfSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5cbmFzeW5jIGZ1bmN0aW9uIGJvb3RzdHJhcCgpIHtcbiAgY29uc3QgYXBwID0gYXdhaXQgTmVzdEZhY3RvcnkuY3JlYXRlKEFwcE1vZHVsZSwgeyBjb3JzOiB0cnVlIH0pO1xuICBjb25zdCBzZXF1ZWxpemUgPSBhcHAuZ2V0KFNlcXVlbGl6ZSk7XG4gIGF3YWl0IHNlcXVlbGl6ZS5zeW5jKHsgYWx0ZXI6IHRydWUgfSk7XG4gIGF3YWl0IGFwcC5saXN0ZW4ocHJvY2Vzcy5lbnYuU0VSVkVSX1BPUlQgPz8gOTAwNCk7XG59XG5ib290c3RyYXAoKTtcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=
|
|
5795
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,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Ozs7Ozs7OztBQ0FBLDhDOzs7Ozs7Ozs7O0FDQUEsaUQ7Ozs7Ozs7Ozs7QUNBQSxvRDs7Ozs7O1VDQUE7VUFDQTs7VUFFQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTs7VUFFQTtVQUNBOztVQUVBO1VBQ0E7VUFDQTs7Ozs7Ozs7Ozs7O0FDNUJBLDhFQUFpQztBQUNqQyx1RUFBMkM7QUFDM0Msb0ZBQXlDO0FBQ3pDLHVHQUFpRDtBQUVqRCxLQUFLLFVBQVUsU0FBUztJQUN0QixNQUFNLEdBQUcsR0FBRyxNQUFNLGtCQUFXLENBQUMsTUFBTSxDQUFDLHNCQUFTLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNoRSxNQUFNLFNBQVMsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLGdDQUFTLENBQUMsQ0FBQztJQUNyQyxNQUFNLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN0QyxNQUFNLEdBQUcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLENBQUM7QUFDcEQsQ0FBQztBQUNELFNBQVMsRUFBRSxDQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvYXBpa2V5LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9hcHAtY29uZmlnLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9hcmVhLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9iYW5uZXIuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2JyYW5kLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9idW5kbGUtcHJvZHVjdC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvYnVuZGxlLXN0b3JlLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9idW5kbGUuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2NhcnQtaXRlbS1idW5kbGUtc2VsZWN0aW9uLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9jYXJ0LWl0ZW0uZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2NhcnQuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2NhdGVnb3J5LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9jb3VudHJ5LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9jb3Vwb24tcHJvZHVjdC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvY291cG9uLXN0b3JlLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9jb3Vwb24tdXNlci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvY291cG9uLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9pbnZlbnRvcnktc3RvY2suZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL2ludmVudG9yeS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvb3JkZXItaXRlbS1idW5kbGUtc2VsZWN0aW9uLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9vcmRlci1pdGVtLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9vcmRlci1zdGF0dXMtaGlzdG9yeS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvb3JkZXItc3RhdHVzLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9vcmRlci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcGF5bWVudC1nYXRld2F5LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wYXltZW50LW1ldGhvZC1jb3VudHJ5LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wYXltZW50LW1ldGhvZC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcGVybWlzc2lvbi5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcHJvZHVjdC1tZWRpYS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcHJvZHVjdC1zdG9yZS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcHJvZHVjdC10YWcuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3Byb2R1Y3QtdmFyaWFudC1vcHRpb24uZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3Byb2R1Y3QtdmFyaWFudC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcHJvZHVjdC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcHVyY2hhc2Utb3JkZXItaXRlbS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcHVyY2hhc2Utb3JkZXItb3JkZXItaXRlbS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcHVyY2hhc2Utb3JkZXItcmVjZWlwdC1pdGVtLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci1yZWNlaXB0LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcmVmdW5kLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9yb2xlLXBlcm1pc3Npb24uZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3J1bi1zaGVldC1vcmRlci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvcnVuLXNoZWV0LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9zaGlwcGluZy1ydWxlLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9zdG9jay1tb3ZlbWVudC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvc3RvcmUtaW52ZW50b3J5LmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9zdG9yZS1wYXltZW50LW1ldGhvZC5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvc3RvcmUuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3N5cy5yb2xlLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy9zeXMudXNlci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdGFnLmVudGl0eS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy9lbnRpdGllcy91c2VyLWFkZHJlc3MuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3VzZXItZmF2b3JpdGUtY2F0YWxvZy5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdXNlci1mYXZvcml0ZS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdXNlci10cmFuc2FjdGlvbi5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdXNlci13YWxsZXQtYmFsYW5jZS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdXNlci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdXNlckRldmljZS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdmFyaWFudC1vcHRpb24uZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3ZhcmlhbnQtdHlwZS5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvZW50aXRpZXMvdmVuZG9yLXByb2R1Y3QuZW50aXR5LnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL2VudGl0aWVzL3ZlbmRvci5lbnRpdHkudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvaW5kZXgudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvdXRpbHMvZW51bXMvZ2VuZGVyLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL3V0aWxzL2VudW1zL2xhbmd1YWdlLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL3V0aWxzL2VudW1zL29zTmFtZS50cyIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy8uL2xpYnMvdGF0YXlhYi1lbnRpdGllcy1saWJyYXJ5L3NyYy91dGlscy9lbnVtcy9wcm9kdWN0QXBwLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL3V0aWxzL2VudW1zL3B1cmNoYXNlT3JkZXJTdGF0dXMudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvLi9saWJzL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeS9zcmMvdXRpbHMvZW51bXMvc3RhdHVzLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL3V0aWxzL2VudW1zL3N0b2NrTW92ZW1lbnRUeXBlLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vbGlicy90YXRheWFiLWVudGl0aWVzLWxpYnJhcnkvc3JjL3V0aWxzL2VudW1zL3ZlcnNpb250eXBlLnRzIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vc3JjL2FwcC5tb2R1bGUudHMiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvZXh0ZXJuYWwgY29tbW9uanMgXCJAbmVzdGpzL2NvbW1vblwiIiwid2VicGFjazovL3R0LWVudGl0aWVzL2V4dGVybmFsIGNvbW1vbmpzIFwiQG5lc3Rqcy9jb25maWdcIiIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy9leHRlcm5hbCBjb21tb25qcyBcIkBuZXN0anMvY29yZVwiIiwid2VicGFjazovL3R0LWVudGl0aWVzL2V4dGVybmFsIGNvbW1vbmpzIFwiQG5lc3Rqcy9zZXF1ZWxpemVcIiIsIndlYnBhY2s6Ly90dC1lbnRpdGllcy9leHRlcm5hbCBjb21tb25qcyBcInNlcXVlbGl6ZS10eXBlc2NyaXB0XCIiLCJ3ZWJwYWNrOi8vdHQtZW50aXRpZXMvZXh0ZXJuYWwgY29tbW9uanMgXCJ0c2NvbmZpZy1wYXRocy9yZWdpc3RlclwiIiwid2VicGFjazovL3R0LWVudGl0aWVzL3dlYnBhY2svYm9vdHN0cmFwIiwid2VicGFjazovL3R0LWVudGl0aWVzLy4vc3JjL21haW4udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sdW1uLCBEYXRhVHlwZSwgTW9kZWwsIFRhYmxlIH0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcbmltcG9ydCB7IFZlcnNpb25UeXBlIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvdmVyc2lvbnR5cGUnO1xuaW1wb3J0IHsgT3NOYW1lIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvb3NOYW1lJztcbmltcG9ydCB7IFByb2R1Y3RBcHAgfSBmcm9tICcuLi91dGlscy9lbnVtcy9wcm9kdWN0QXBwJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgQXBpS2V5IGV4dGVuZHMgTW9kZWwge1xuICBAQ29sdW1uXG4gIGRlY2xhcmUgaGFzaGVkQXBpS2V5OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhPc05hbWUpKSB9KVxuICBkZWNsYXJlIG9zTmFtZTogT3NOYW1lO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoUHJvZHVjdEFwcCkpIH0pXG4gIGRlY2xhcmUgYXBwTmFtZTogUHJvZHVjdEFwcDtcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgYXBwVmVyc2lvbjogc3RyaW5nO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBleHBpcnlEYXRlOiBEYXRlO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc1JlbGVhc2VkOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhWZXJzaW9uVHlwZSkpLFxuICAgIGRlZmF1bHRWYWx1ZTogVmVyc2lvblR5cGUuT1BUSU9OQUwsXG4gIH0pXG4gIGRlY2xhcmUgdmVyc2lvblR5cGU6IFZlcnNpb25UeXBlO1xufVxuIiwiaW1wb3J0IHsgQ29sdW1uLCBEYXRhVHlwZSwgTW9kZWwsIFRhYmxlIH0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBBcHBDb25maWcgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyB1bmlxdWU6IHRydWUgfSlcbiAga2V5OiBzdHJpbmc7XG4gIEBDb2x1bW4oRGF0YVR5cGUuSlNPTilcbiAgdmFsdWU6IEpTT047XG59XG4iLCJpbXBvcnQge1xuICBCZWxvbmdzVG8sXG4gIENvbHVtbixcbiAgRm9yZWlnbktleSxcbiAgTW9kZWwsXG4gIFRhYmxlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIEFyZWEgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBARm9yZWlnbktleSgoKSA9PiBDb3VudHJ5KVxuICBAQ29sdW1uKHtcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICAgIHZhbGlkYXRlOiB7IG5vdE51bGw6IHsgbXNnOiAnQ291bnR5IElkIFJlcXVpcmVkJyB9IH0sXG4gIH0pXG4gIGRlY2xhcmUgY291bnRyeUlkOiBudW1iZXI7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIHBhcmVudElkPzogbnVtYmVyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ291bnRyeSlcbiAgZGVjbGFyZSBjb3VudHJ5OiBDb3VudHJ5O1xufVxuIiwiaW1wb3J0IHtcbiAgTW9kZWwsXG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIERhdGFUeXBlLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcblxuLy8g4pSA4pSAIFdoZXJlIHRoZSBiYW5uZXIgYXBwZWFycyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCBlbnVtIEJhbm5lclBsYWNlbWVudCB7XG4gIEhPTUUgPSAnaG9tZScsIC8vIGhvcml6b250YWwgbGlzdCBvbiB0aGUgaG9tZSBwYWdlXG4gIENBVEVHT1JZID0gJ2NhdGVnb3J5JywgLy8gdG9wIG9mIGEgc3BlY2lmaWMgY2F0ZWdvcnkgcGFnZVxuICBCUkFORCA9ICdicmFuZCcsIC8vIHRvcCBvZiBhIHNwZWNpZmljIGJyYW5kIHBhZ2VcbiAgU0VBUkNIID0gJ3NlYXJjaCcsIC8vIHNlYXJjaCByZXN1bHRzIHBhZ2VcbiAgQ1VTVE9NID0gJ2N1c3RvbScsIC8vIGFueSBmdXR1cmUgcGxhY2VtZW50IOKAlCBpZGVudGlmaWVkIGJ5IHBsYWNlbWVudEtleVxufVxuXG5leHBvcnQgZW51bSBCYW5uZXJTdGF0dXMge1xuICBBQ1RJVkUgPSAnYWN0aXZlJyxcbiAgSU5BQ1RJVkUgPSAnaW5hY3RpdmUnLFxuICBEUkFGVCA9ICdkcmFmdCcsXG59XG5cbi8vIOKUgOKUgCBGaWx0ZXIgc2hhcGUgc3RvcmVkIGluIHRoZSBKU09OIGNvbHVtbiDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbi8vIEFsbCBmaWVsZHMgYXJlIG9wdGlvbmFsIOKAlCBhbnkgY29tYmluYXRpb24gaXMgdmFsaWQuXG4vLyBBbiBlbXB0eSBvYmplY3Qge30gbWVhbnMgXCJzaG93IGV2ZXJ5dGhpbmdcIiAobm8gZmlsdGVyKS5cbmV4cG9ydCBpbnRlcmZhY2UgQmFubmVyRmlsdGVycyB7XG4gIGNhdGVnb3J5SWRzPzogbnVtYmVyW107IC8vIHByb2R1Y3RzL2J1bmRsZXMgaW4gdGhlc2UgY2F0ZWdvcmllc1xuICBicmFuZElkcz86IG51bWJlcltdOyAvLyBwcm9kdWN0cyBiZWxvbmdpbmcgdG8gdGhlc2UgYnJhbmRzXG4gIHRhZ1NsdWdzPzogc3RyaW5nW107IC8vIHByb2R1Y3RzIHRhZ2dlZCB3aXRoIGFueSBvZiB0aGVzZSBzbHVnc1xuICB0eXBlcz86ICgncHJvZHVjdCcgfCAnYnVuZGxlJylbXTsgLy8gbGltaXQgdG8gb25seSBwcm9kdWN0cyBvciBvbmx5IGJ1bmRsZXNcbiAgaXNGZWF0dXJlZD86IGJvb2xlYW47IC8vIG9ubHkgZmVhdHVyZWQgaXRlbXNcbiAgbWluUHJpY2U/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+IFN0b3JlSW52ZW50b3J5KVxuICBkZWNsYXJlIHN0b3JlczogU3RvcmVbXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBPcmRlckl0ZW0gfSBmcm9tICcuL29yZGVyLWl0ZW0uZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmltcG9ydCB7IFB1cmNoYXNlT3JkZXJJdGVtIH0gZnJvbSAnLi9wdXJjaGFzZS1vcmRlci1pdGVtLmVudGl0eSc7XG5cbmV4cG9ydCBlbnVtIEJ1bmRsZVNlbGVjdGlvbkZ1bGZpbGxtZW50U3RhdHVzIHtcbiAgUEVORElORyA9ICdwZW5kaW5nJyxcbiAgQVdBSVRJTkdfU1RPQ0sgPSAnYXdhaXRpbmdfc3RvY2snLCAvLyBuZWVkcyB2ZW5kb3IgUE9cbiAgUE9fTElOS0VEID0gJ3BvX2xpbmtlZCcsIC8vIFBPIGNyZWF0ZWQgYW5kIGxpbmtlZFxuICBQT19SRUNFSVZFRCA9ICdwb19yZWNlaXZlZCcsIC8vIHN0b2NrIGFycml2ZWRcbiAgU1RPQ0tfUkVTRVJWRUQgPSAnc3RvY2tfcmVzZXJ2ZWQnLCAvLyBzdG9jayBsb2NrZWQgZm9yIHRoaXMgb3JkZXJcbiAgUEFDS0VEID0gJ3BhY2tlZCcsXG4gIFNISVBQRUQgPSAnc2hpcHBlZCcsXG4gIERFTElWRVJFRCA9ICdkZWxpdmVyZWQnLFxufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBPcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb24gZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IE9yZGVySXRlbSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBvcmRlckl0ZW1JZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3QpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdElkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcm9kdWN0VmFyaWFudElkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSkgZGVjbGFyZSBwcm9kdWN0TmFtZUVuPzogc3RyaW5nO1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pIGRlY2xhcmUgcHJvZHVjdE5hbWVBcj86IHN0cmluZztcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KSBkZWNsYXJlIHZhcmlhbnRMYWJlbEVuPzogc3RyaW5nO1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pIGRlY2xhcmUgdmFyaWFudExhYmVsQXI/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHNvcnRPcmRlcjogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgCBORVc6IHBlci1zZWxlY3Rpb24gZnVsZmlsbG1lbnQgdHJhY2tpbmcg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhCdW5kbGVTZWxlY3Rpb25GdWxmaWxsbWVudFN0YXR1cykpLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gICAgZGVmYXVsdFZhbHVlOiBCdW5kbGVTZWxlY3Rpb25GdWxmaWxsbWVudFN0YXR1cy5QRU5ESU5HLFxuICB9KVxuICBkZWNsYXJlIGZ1bGZpbGxtZW50U3RhdHVzOiBCdW5kbGVTZWxlY3Rpb25GdWxmaWxsbWVudFN0YXR1cztcblxuICAvLyBXaGljaCBQTyBpdGVtIGlzIGZ1bGZpbGxpbmcgdGhpcyBzZWxlY3Rpb24gKHNldCB3aGVuIFBPIGlzIGNyZWF0ZWQpXG4gIEBGb3JlaWduS2V5KCgpID0+IFB1cmNoYXNlT3JkZXJJdGVtKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHVyY2hhc2VPcmRlckl0ZW1JZD86IG51bWJlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IE9yZGVySXRlbSkgZGVjbGFyZSBvcmRlckl0ZW06IE9yZGVySXRlbTtcbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0KSBkZWNsYXJlIHByb2R1Y3Q6IFByb2R1Y3Q7XG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdFZhcmlhbnQpIGRlY2xhcmUgdmFyaWFudD86IFByb2R1Y3RWYXJpYW50O1xuICBAQmVsb25nc1RvKCgpID0+IFB1cmNoYXNlT3JkZXJJdGVtKVxuICBkZWNsYXJlIHB1cmNoYXNlT3JkZXJJdGVtPzogUHVyY2hhc2VPcmRlckl0ZW07XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBIYXNNYW55LFxuICBIYXNPbmUsXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBPcmRlciB9IGZyb20gJy4vb3JkZXIuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmltcG9ydCB7IEJ1bmRsZSB9IGZyb20gJy4vYnVuZGxlLmVudGl0eSc7XG5pbXBvcnQgeyBPcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb24gfSBmcm9tICcuL29yZGVyLWl0ZW0tYnVuZGxlLXNlbGVjdGlvbi5lbnRpdHknO1xuaW1wb3J0IHsgUHVyY2hhc2VPcmRlck9yZGVySXRlbSB9IGZyb20gJy4vcHVyY2hhc2Utb3JkZXItb3JkZXItaXRlbS5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBPcmRlckl0ZW1UeXBlIHtcbiAgUFJPRFVDVCA9ICdwcm9kdWN0JyxcbiAgQlVORExFID0gJ2J1bmRsZScsXG59XG5cbmV4cG9ydCBlbnVtIE9yZGVySXRlbUZ1bGZpbGxtZW50U3RhdHVzIHtcbiAgUEVORElORyA9ICdwZW5kaW5nJyxcbiAgQVdBSVRJTkdfU1RPQ0sgPSAnYXdhaXRpbmdfc3RvY2snLCAvLyBuZWVkcyB2ZW5kb3IgUE9cbiAgUE9fTElOS0VEID0gJ3BvX2xpbmtlZCcsIC8vIFBPIGNyZWF0ZWQgYW5kIGxpbmtlZFxuICBQT19SRUNFSVZFRCA9ICdwb19yZWNlaXZlZCcsIC8vIFBPIHJlY2VpdmVkIGZvciB0aGlzIGl0ZW1cbiAgU1RPQ0tfUkVTRVJWRUQgPSAnc3RvY2tfcmVzZXJ2ZWQnLCAvLyBwaHlzaWNhbCBzdG9jayBsb2NrZWQgaW4gaW52ZW50b3J5XG4gIFBBQ0tFRCA9ICdwYWNrZWQnLFxuICBTSElQUEVEID0gJ3NoaXBwZWQnLFxuICBERUxJVkVSRUQgPSAnZGVsaXZlcmVkJyxcbiAgQ0FOQ0VMTEVEID0gJ2NhbmNlbGxlZCcsXG4gIFJFVFVSTl9SRVFVRVNURUQgPSAncmV0dXJuX3JlcXVlc3RlZCcsXG4gIFJFVFVSTkVEID0gJ3JldHVybmVkJyxcbn1cblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgT3JkZXJJdGVtIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBPcmRlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBvcmRlcklkOiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKE9yZGVySXRlbVR5cGUpKSxcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICAgIGRlZmF1bHRWYWx1ZTogT3JkZXJJdGVtVHlwZS5QUk9EVUNULFxuICB9KVxuICBkZWNsYXJlIGl0ZW1UeXBlOiBPcmRlckl0ZW1UeXBlO1xuXG4gIC8vIOKUgOKUgCBQcm9kdWN0IGZpZWxkcyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZD86IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RWYXJpYW50SWQ/OiBudW1iZXI7XG5cbiAgLy8g4pSA4pSAIEJ1bmRsZSBmaWVsZHMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBGb3JlaWduS2V5KCgpID0+IEJ1bmRsZSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGJ1bmRsZUlkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjb21wb3NlZFNrdT86IHN0cmluZztcblxuICAvLyDilIDilIAgU25hcHNob3RzIGF0IG9yZGVyIHRpbWUg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcm9kdWN0TmFtZUVuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcm9kdWN0TmFtZUFyPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBza3U/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHZhcmlhbnRMYWJlbEVuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSB2YXJpYW50TGFiZWxBcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdEltYWdlPzogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgCBQcmljaW5nIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAxIH0pXG4gIGRlY2xhcmUgcXVhbnRpdHk6IG51bWJlcjtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB1bml0UHJpY2U6IG51bWJlcjtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBsaW5lVG90YWw6IG51bWJlcjtcblxuICAvLyDilIDilIAgRnVsZmlsbG1lbnQgYXNzaWdubWVudCDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgLy8gV2hpY2ggaW52ZW50b3J5IGlzIHJlc3BvbnNpYmxlIGZvciB0aGlzIGl0ZW1cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGZ1bGZpbGxtZW50SW52ZW50b3J5SWQ/OiBudW1iZXI7XG5cbiAgLy8gU2hpcG1lbnQgZ3JvdXAg4oCUIGl0ZW1zIHdpdGggdGhlIHNhbWUgZ3JvdXAgc2hpcCB0b2dldGhlciBmcm9tIHRoZSBzYW1lIGludmVudG9yeVxuICAvLyBVc3VhbGx5ICcxJyBmb3Igc2luZ2xlLWludmVudG9yeSBvcmRlcnM7ICcyJyBpZiBhIHNlY29uZCBpbnZlbnRvcnkgaXMgbmVlZGVkXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDEgfSlcbiAgZGVjbGFyZSBzaGlwbWVudEdyb3VwOiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKE9yZGVySXRlbUZ1bGZpbGxtZW50U3RhdHVzKSksXG4gICAgYWxsb3dOdWxsOiBmYWxzZSxcbiAgICBkZWZhdWx0VmFsdWU6IE9yZGVySXRlbUZ1bGZpbGxtZW50U3RhdHVzLlBFTkRJTkcsXG4gIH0pXG4gIGRlY2xhcmUgZnVsZmlsbG1lbnRTdGF0dXM6IE9yZGVySXRlbUZ1bGZpbGxtZW50U3RhdHVzO1xuXG4gIC8vIOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBPcmRlcilcbiAgZGVjbGFyZSBvcmRlcjogT3JkZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0KVxuICBkZWNsYXJlIHByb2R1Y3Q/OiBQcm9kdWN0O1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIGRlY2xhcmUgdmFyaWFudD86IFByb2R1Y3RWYXJpYW50O1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQnVuZGxlKVxuICBkZWNsYXJlIGJ1bmRsZT86IEJ1bmRsZTtcblxuICBASGFzTWFueSgoKSA9PiBPcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb24pXG4gIGRlY2xhcmUgYnVuZGxlU2VsZWN0aW9uczogT3JkZXJJdGVtQnVuZGxlU2VsZWN0aW9uW107XG5cbiAgQEhhc09uZSgoKSA9PiBQdXJjaGFzZU9yZGVyT3JkZXJJdGVtKVxuICBkZWNsYXJlIHBvTGluaz86IFB1cmNoYXNlT3JkZXJPcmRlckl0ZW07XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgRm9yZWlnbktleSwgQmVsb25nc1RvLCBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgT3JkZXIgfSBmcm9tICcuL29yZGVyLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIE9yZGVyU3RhdHVzSGlzdG9yeSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gT3JkZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgb3JkZXJJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBmcm9tU3RhdHVzPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdG9TdGF0dXM6IHN0cmluZztcblxuICAvLyBCaWxpbmd1YWwgbGFiZWwgc25hcHNob3RzIHNvIGhpc3RvcnkgaXMgcmVhZGFibGUgZXZlbiBpZiBzdGF0dXMgbGFiZWxzIGNoYW5nZVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgdG9MYWJlbEVuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSB0b0xhYmVsQXI/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG5vdGU/OiBzdHJpbmc7XG5cbiAgLy8gV2hvIG1hZGUgdGhlIGNoYW5nZTogJ3N5c3RlbScsICd1c2VyJywgb3IgJ2FkbWluOjxpZD4nXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjaGFuZ2VkQnk/OiBzdHJpbmc7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBPcmRlcilcbiAgZGVjbGFyZSBvcmRlcjogT3JkZXI7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgSGFzTWFueSwgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IE9yZGVyIH0gZnJvbSAnLi9vcmRlci5lbnRpdHknO1xuXG4vLyBBbGwgcG9zc2libGUgb3JkZXIgc3RhdHVzZXMgaW4gdGhlIHN5c3RlbVxuZXhwb3J0IGVudW0gT3JkZXJTdGF0dXNDb2RlIHtcbiAgUEVORElOR19QQVlNRU5UICAgICAgPSAncGVuZGluZ19wYXltZW50JyxcbiAgUEFJRCAgICAgICAgICAgICAgICAgPSAncGFpZCcsXG4gIFBST0NFU1NJTkcgICAgICAgICAgID0gJ3Byb2Nlc3NpbmcnLFxuICBBV0FJVElOR19GVUxGSUxMTUVOVCA9ICdhd2FpdGluZ19mdWxmaWxsbWVudCcsXG4gIFBFTkRJTkdfVkVORE9SICAgICAgID0gJ3BlbmRpbmdfdmVuZG9yJyxcbiAgVkVORE9SX09SREVSRUQgICAgICAgPSAndmVuZG9yX29yZGVyZWQnLFxuICBTVE9DS19SRUNFSVZFRCAgICAgICA9ICdzdG9ja19yZWNlaXZlZCcsXG4gIFBBQ0tFRCAgICAgICAgICAgICAgID0gJ3BhY2tlZCcsXG4gIFNISVBQRUQgICAgICAgICAgICAgID0gJ3NoaXBwZWQnLFxuICBPVVRfRk9SX0RFTElWRVJZICAgICA9ICdvdXRfZm9yX2RlbGl2ZXJ5JyxcbiAgREVMSVZFUkVEICAgICAgICAgICAgPSAnZGVsaXZlcmVkJyxcbiAgQ09NUExFVEVEICAgICAgICAgICAgPSAnY29tcGxldGVkJyxcbiAgQ0FOQ0VMTEVEICAgICAgICAgICAgPSAnY2FuY2VsbGVkJyxcbiAgUkVUVVJOX1JFUVVFU1RFRCAgICAgPSAncmV0dXJuX3JlcXVlc3RlZCcsXG4gIFJFVFVSTl9BUFBST1ZFRCAgICAgID0gJ3JldHVybl9hcHByb3ZlZCcsXG4gIFJFVFVSTkVEICAgICAgICAgICAgID0gJ3JldHVybmVkJyxcbiAgUkVGVU5ERUQgICAgICAgICAgICAgPSAncmVmdW5kZWQnLFxuICBGQUlMRUQgICAgICAgICAgICAgICA9ICdmYWlsZWQnLFxufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBPcmRlclN0YXR1cyBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIHVuaXF1ZTogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvZGU6IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGxhYmVsRW46IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGxhYmVsQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Fbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Bcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY29sb3I/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGljb24/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG5leHRTdGF0dXNlcz86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJldlN0YXR1c2VzPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaXNUZXJtaW5hbDogYm9vbGVhbjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgaXNWaXNpYmxlVG9Vc2VyOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBIYXNNYW55KCgpID0+IE9yZGVyLCB7IGZvcmVpZ25LZXk6ICdzdGF0dXNJZCcgfSlcbiAgZGVjbGFyZSBvcmRlcnM6IE9yZGVyW107XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBIYXNNYW55LFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4vdXNlci5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuL3N0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5pbXBvcnQgeyBPcmRlclN0YXR1cyB9IGZyb20gJy4vb3JkZXItc3RhdHVzLmVudGl0eSc7XG5pbXBvcnQgeyBPcmRlckl0ZW0gfSBmcm9tICcuL29yZGVyLWl0ZW0uZW50aXR5JztcbmltcG9ydCB7IE9yZGVyU3RhdHVzSGlzdG9yeSB9IGZyb20gJy4vb3JkZXItc3RhdHVzLWhpc3RvcnkuZW50aXR5JztcbmltcG9ydCB7IFVzZXJUcmFuc2FjdGlvbiB9IGZyb20gJy4vdXNlci10cmFuc2FjdGlvbi5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBPcmRlciBleHRlbmRzIE1vZGVsIHtcbiAgLy8g4pSA4pSAIElkZW50aXR5IOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdW5pcXVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgb3JkZXJOdW1iZXI6IHN0cmluZzsgLy8gZS5nLiBUQVQtMjAyNi0wMDAwMVxuXG4gIC8vIE51bGwgZm9yIGd1ZXN0IG9yZGVycyDigJQgbGlua2VkIG9uIGFjY291bnQgY3JlYXRpb25cbiAgQEZvcmVpZ25LZXkoKCkgPT4gVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHVzZXJJZD86IG51bWJlcjtcblxuICAvLyBHdWVzdCB0b2tlbiBmb3IgZ3Vlc3Qgb3JkZXJzXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBndWVzdFRva2VuPzogc3RyaW5nO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFN0b3JlKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHN0b3JlSWQ6IG51bWJlcjtcblxuICAvLyDilIDilIAgU3RhdHVzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICAvLyBQcm9wZXIgRksgdG8gb3JkZXJfc3RhdHVzZXMgc28gd2UgY2FuIGVhZ2VyIGxvYWQgd2l0aCBpbmNsdWRlOiBbT3JkZXJTdGF0dXNdXG4gIEBGb3JlaWduS2V5KCgpID0+IE9yZGVyU3RhdHVzKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHN0YXR1c0lkOiBudW1iZXI7XG5cbiAgLy8gS2VlcCBzdGF0dXNDb2RlIGFzIGEgY29udmVuaWVuY2UgY29sdW1uIOKAlCBzeW5jZWQgd2l0aCBzdGF0dXNJZCBhdCBhbGwgdGltZXNcbiAgLy8gQWxsb3dzIGZpbHRlcmluZyBieSBjb2RlIHN0cmluZyB3aXRob3V0IGEgam9pbjogd2hlcmUoeyBzdGF0dXNDb2RlOiAnc2hpcHBlZCcgfSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogJ3BlbmRpbmdfcGF5bWVudCcgfSlcbiAgZGVjbGFyZSBzdGF0dXNDb2RlOiBzdHJpbmc7XG5cbiAgLy8g4pSA4pSAIERlbGl2ZXJ5IGFkZHJlc3MgKHNuYXBzaG90IGF0IG9yZGVyIHRpbWUpIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBARm9yZWlnbktleSgoKSA9PiBDb3VudHJ5KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlDb3VudHJ5SWQ/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5RnVsbE5hbWU/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5UGhvbmVFeHQ/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5UGhvbmU/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5Q2l0eT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlCbG9jaz86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVsaXZlcnlTdHJlZXQ/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5QnVpbGRpbmc/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5Rmxvb3I/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlbGl2ZXJ5QXBhcnRtZW50Pzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZWxpdmVyeUFkZGl0aW9uYWxJbmZvPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDksIDYpLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZWxpdmVyeUxhdGl0dWRlPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDksIDYpLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZWxpdmVyeUxvbmdpdHVkZT86IG51bWJlcjtcblxuICAvLyDilIDilIAgRmluYW5jaWFscyAoYWxsIGluIHN0b3JlIGN1cnJlbmN5KSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzdWJ0b3RhbDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgc2hpcHBpbmdGZWU6IG51bWJlcjtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHZhdEFtb3VudDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgZGlzY291bnRBbW91bnQ6IG51bWJlcjtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHRvdGFsOiBudW1iZXI7XG5cbiAgLy8gQ3VycmVuY3kgc25hcHNob3RcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBjdXJyZW5jeTogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjdXJyZW5jeVN5bWJvbEVuPzogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgCBDb3Vwb24g4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjb3Vwb25Db2RlPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjb3Vwb25JZD86IG51bWJlcjtcblxuICAvLyDilIDilIAgUGF5bWVudCDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHBheW1lbnRNZXRob2RTbHVnPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwYXltZW50U3RhdHVzPzogc3RyaW5nOyAvLyBwZW5kaW5nIHwgcGFpZCB8IGZhaWxlZCB8IHJlZnVuZGVkXG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHBheW1lbnRSZWZlcmVuY2U/OiBzdHJpbmc7IC8vIEdhdGV3YXkgdHJhbnNhY3Rpb24gSURcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREFURSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcGFpZEF0PzogRGF0ZTtcblxuICAvLyDilIDilIAgU2hpcHBpbmcg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjYXJyaWVyTmFtZT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgdHJhY2tpbmdOdW1iZXI/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHRyYWNraW5nVXJsPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBlc3RpbWF0ZWREZWxpdmVyeURhdGU/OiBEYXRlO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBzaGlwcGVkQXQ/OiBEYXRlO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZWxpdmVyZWRBdD86IERhdGU7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTShcbiAgICAgICdub25lJyxcbiAgICAgICdwZW5kaW5nX2JhbmtfcmVmdW5kJyxcbiAgICAgICd3YWxsZXRfY3JlZGl0ZWQnLFxuICAgICAgJ2JhbmtfcmVmdW5kZWQnLFxuICAgICksXG4gICAgZGVmYXVsdFZhbHVlOiAnbm9uZScsXG4gIH0pXG4gIGRlY2xhcmUgcmVmdW5kU3RhdHVzOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkJPT0xFQU4sIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBjYXNoQ29sbGVjdGVkOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjYXNoQ29sbGVjdGVkQXQ/OiBEYXRlO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjYXNoQ29sbGVjdGVkQnk/OiBudW1iZXI7XG5cbiAgLy8g4pSA4pSAIE5vdGVzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY3VzdG9tZXJOb3Rlcz86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgaW50ZXJuYWxOb3Rlcz86IHN0cmluZztcblxuICAvLyDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gVXNlcilcbiAgZGVjbGFyZSB1c2VyPzogVXNlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IFN0b3JlKVxuICBkZWNsYXJlIHN0b3JlOiBTdG9yZTtcblxuICBAQmVsb25nc1RvKCgpID0+IE9yZGVyU3RhdHVzLCB7IGZvcmVpZ25LZXk6ICdzdGF0dXNJZCcgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IE9yZGVyU3RhdHVzO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ291bnRyeSlcbiAgZGVjbGFyZSBkZWxpdmVyeUNvdW50cnk/OiBDb3VudHJ5O1xuXG4gIEBIYXNNYW55KCgpID0+IE9yZGVySXRlbSlcbiAgZGVjbGFyZSBpdGVtczogT3JkZXJJdGVtW107XG5cbiAgQEhhc01hbnkoKCkgPT4gT3JkZXJTdGF0dXNIaXN0b3J5KVxuICBkZWNsYXJlIHN0YXR1c0hpc3Rvcnk6IE9yZGVyU3RhdHVzSGlzdG9yeVtdO1xuXG4gIEBIYXNNYW55KCgpID0+IFVzZXJUcmFuc2FjdGlvbilcbiAgZGVjbGFyZSB0cmFuc2FjdGlvbnM6IFVzZXJUcmFuc2FjdGlvbltdO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsIENvbHVtbiwgTW9kZWwsIEhhc01hbnksIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kIH0gZnJvbSAnLi9wYXltZW50LW1ldGhvZC5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBQYXltZW50R2F0ZXdheVR5cGUge1xuICBCTlBMICAgICAgICA9ICdibnBsJywgICAgICAgIC8vIEJ1eSBOb3cgUGF5IExhdGVyIOKAlCBUYWJieSwgVGFtYXJhLCBUYWx5LCBEZWVtYVxuICBDQVJEICAgICAgICA9ICdjYXJkJywgICAgICAgIC8vIFZpc2EvTWFzdGVyY2FyZCDigJQgdVBheW1lbnRcbiAgS05FVCAgICAgICAgPSAna25ldCcsICAgICAgICAvLyBLLU5ldCDigJQgS0ZIXG4gIFdBTExFVCAgICAgID0gJ3dhbGxldCcsICAgICAgLy8gQXBwbGUgUGF5LCBHb29nbGUgUGF5XG4gIEJBTksgICAgICAgID0gJ2JhbmsnLCAgICAgICAgLy8gQmFuayB0cmFuc2ZlclxuICBPRkZMSU5FX1BBWU1FTlQgPSAnb2ZmbGluZV9wYXltZW50J1xuXG59XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFBheW1lbnRHYXRld2F5IGV4dGVuZHMgTW9kZWwge1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdW5pcXVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2x1Zzogc3RyaW5nOyAvLyBlLmcuICd0YWJieScsICd0YW1hcmEnLCAndXBheW1lbnQnLCAna2ZoJ1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoUGF5bWVudEdhdGV3YXlUeXBlKSksXG4gICAgYWxsb3dOdWxsOiBmYWxzZSxcbiAgfSlcbiAgZGVjbGFyZSB0eXBlOiBQYXltZW50R2F0ZXdheVR5cGU7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGxvZ28/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHdlYnNpdGU/OiBzdHJpbmc7XG5cbiAgLy8gQ3JlZGVudGlhbHMgc3RvcmVkIGFzIEpTT04g4oCUIG1hbmFnZWQgYnkgYWRtaW4gb25seSwgbmV2ZXIgZXhwb3NlZCB0byB1c2Vyc1xuICAvLyBlLmcuIHsgXCJwdWJsaWNLZXlcIjogXCIuLi5cIiwgXCJzZWNyZXRLZXlcIjogXCIuLi5cIiwgXCJtZXJjaGFudElkXCI6IFwiLi4uXCIgfVxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuSlNPTiwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY3JlZGVudGlhbHM/OiBvYmplY3Q7XG5cbiAgLy8gU2FuZGJveC9Qcm9kdWN0aW9uIG1vZGVcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc1NhbmRib3g6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHNvcnRPcmRlcjogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBpc0FjdGl2ZTogYm9vbGVhbjtcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBIYXNNYW55KCgpID0+IFBheW1lbnRNZXRob2QpXG4gIGRlY2xhcmUgbWV0aG9kczogUGF5bWVudE1ldGhvZFtdO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsIENvbHVtbiwgTW9kZWwsIEZvcmVpZ25LZXksXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFBheW1lbnRNZXRob2QgfSBmcm9tICcuL3BheW1lbnQtbWV0aG9kLmVudGl0eSc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFBheW1lbnRNZXRob2RDb3VudHJ5IGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQYXltZW50TWV0aG9kKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHBheW1lbnRNZXRob2RJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IENvdW50cnkpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgY291bnRyeUlkOiBudW1iZXI7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgRm9yZWlnbktleSwgQmVsb25nc1RvLFxuICBCZWxvbmdzVG9NYW55LCBIYXNNYW55LCBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgUGF5bWVudEdhdGV3YXkgfSBmcm9tICcuL3BheW1lbnQtZ2F0ZXdheS5lbnRpdHknO1xuaW1wb3J0IHsgQ291bnRyeSB9IGZyb20gJy4vY291bnRyeS5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuL3N0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kQ291bnRyeSB9IGZyb20gJy4vcGF5bWVudC1tZXRob2QtY291bnRyeS5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmVQYXltZW50TWV0aG9kIH0gZnJvbSAnLi9zdG9yZS1wYXltZW50LW1ldGhvZC5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBQYXltZW50TWV0aG9kVHlwZSB7XG4gIFBBWV9MQVRFUiAgICAgICA9ICdwYXlfbGF0ZXInLCAgICAgICAgLy8gVGFiYnkgUGF5IExhdGVyLCBUYW1hcmFcbiAgSU5TVEFMTE1FTlQgICAgID0gJ2luc3RhbGxtZW50JywgICAgICAvLyBUYWJieSBJbnN0YWxsbWVudHMsIERlZW1hXG4gIENSRURJVF9DQVJEICAgICA9ICdjcmVkaXRfY2FyZCcsICAgICAgLy8gVmlzYSwgTWFzdGVyY2FyZFxuICBERUJJVF9DQVJEICAgICAgPSAnZGViaXRfY2FyZCcsICAgICAgIC8vIERlYml0IGNhcmRzXG4gIEtORVQgICAgICAgICAgICA9ICdrbmV0JywgICAgICAgICAgICAgLy8gSy1OZXRcbiAgQVBQTEVfUEFZICAgICAgID0gJ2FwcGxlX3BheScsXG4gIEdPT0dMRV9QQVkgICAgICA9ICdnb29nbGVfcGF5JyxcbiAgQkFOS19UUkFOU0ZFUiAgID0gJ2JhbmtfdHJhbnNmZXInLFxufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBQYXltZW50TWV0aG9kIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQYXltZW50R2F0ZXdheSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwYXltZW50R2F0ZXdheUlkOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIHVuaXF1ZTogdHJ1ZSB9KVxuICBkZWNsYXJlIHNsdWc6IHN0cmluZzsgLy8gZS5nLiAndGFiYnlfcGF5X2xhdGVyJywgJ2tuZXQnLCAndmlzYSdcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVFbjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUFyOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlc2NyaXB0aW9uRW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRlc2NyaXB0aW9uQXI/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFBheW1lbnRNZXRob2RUeXBlKSksXG4gICAgYWxsb3dOdWxsOiBmYWxzZSxcbiAgfSlcbiAgZGVjbGFyZSB0eXBlOiBQYXltZW50TWV0aG9kVHlwZTtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbG9nbz86IHN0cmluZztcblxuICAvLyBQcm9jZXNzaW5nIGZlZSBwZXJjZW50YWdlIGUuZy4gMS41IG1lYW5zIDEuNSVcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoNSwgMiksIGFsbG93TnVsbDogdHJ1ZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgZmVlUGVyY2VudGFnZT86IG51bWJlcjtcblxuICAvLyBGaXhlZCBmZWUgZS5nLiAwLjEwMCBLV0RcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IHRydWUsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIGZlZUZpeGVkPzogbnVtYmVyO1xuXG4gIC8vIE1pbmltdW0gb3JkZXIgYW1vdW50IHRvIHVzZSB0aGlzIG1ldGhvZFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG1pbk9yZGVyQW1vdW50PzogbnVtYmVyO1xuXG4gIC8vIE1heGltdW0gb3JkZXIgYW1vdW50IHRvIHVzZSB0aGlzIG1ldGhvZFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG1heE9yZGVyQW1vdW50PzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgaXNBY3RpdmU6IGJvb2xlYW47XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IFBheW1lbnRHYXRld2F5KVxuICBkZWNsYXJlIGdhdGV3YXk6IFBheW1lbnRHYXRld2F5O1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IENvdW50cnksICgpID0+IFBheW1lbnRNZXRob2RDb3VudHJ5KVxuICBkZWNsYXJlIGNvdW50cmllczogQ291bnRyeVtdO1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFN0b3JlLCAoKSA9PiBTdG9yZVBheW1lbnRNZXRob2QpXG4gIGRlY2xhcmUgc3RvcmVzOiBTdG9yZVtdO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEJlbG9uZ3NUb01hbnksXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFN5c1JvbGUgfSBmcm9tICcuL3N5cy5yb2xlLmVudGl0eSc7XG5pbXBvcnQgeyBSb2xlUGVybWlzc2lvbiB9IGZyb20gJy4vcm9sZS1wZXJtaXNzaW9uLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFBlcm1pc3Npb24gZXh0ZW5kcyBNb2RlbCB7XG4gIC8vIGUuZy4gJ3Byb2R1Y3RzLnZpZXcnLCAncHJvZHVjdHMuY3JlYXRlJywgJ2ludmVudG9yeS5hZGp1c3QnXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCB1bmlxdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBuYW1lOiBzdHJpbmc7XG5cbiAgLy8gSHVtYW4gcmVhZGFibGUgZS5nLiAnVmlldyBQcm9kdWN0cydcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBkaXNwbGF5TmFtZTogc3RyaW5nO1xuXG4gIC8vIEdyb3VwaW5nIGZvciBVSSBlLmcuICdQcm9kdWN0cycsICdJbnZlbnRvcnknLCAnUHVyY2hhc2luZydcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBncm91cDogc3RyaW5nO1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFN5c1JvbGUsICgpID0+IFJvbGVQZXJtaXNzaW9uKVxuICBkZWNsYXJlIHJvbGVzOiBTeXNSb2xlW107XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vcHJvZHVjdC5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBNZWRpYVR5cGUge1xuICBJTUFHRSA9ICdpbWFnZScsXG4gIFZJREVPID0gJ3ZpZGVvJyxcbn1cblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUHJvZHVjdE1lZGlhIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdXJsOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKE1lZGlhVHlwZSkpLFxuICAgIGRlZmF1bHRWYWx1ZTogTWVkaWFUeXBlLklNQUdFLFxuICB9KVxuICBkZWNsYXJlIHR5cGU6IE1lZGlhVHlwZTtcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGlzRGVmYXVsdDogYm9vbGVhbjtcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgc29ydE9yZGVyOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGFsdEVuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBhbHRBcj86IHN0cmluZztcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3QpXG4gIGRlY2xhcmUgcHJvZHVjdDogUHJvZHVjdDtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4vc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFByb2R1Y3RTdG9yZSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwcm9kdWN0SWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBTdG9yZSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBzdG9yZUlkOiBudW1iZXI7XG5cbiAgLy8g4pSA4pSAIFZhcmlhbnQgZGltZW5zaW9uIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICAvLyBudWxsICA9IHRoaXMgcHJpY2luZyByb3cgaXMgdGhlIHByb2R1Y3QtbGV2ZWwgZmFsbGJhY2tcbiAgLy8gICAgICAgICAodXNlZCB3aGVuIHByb2R1Y3QuaGFzVmFyaWFudHMgPSBmYWxzZSwgT1IgYXMgZmFsbGJhY2sgZm9yIGFueVxuICAvLyAgICAgICAgICB2YXJpYW50IHRoYXQgZG9lcyBOT1QgaGF2ZSBpdHMgb3duIHNwZWNpZmljIHByaWNpbmcgcm93KVxuICAvLyBzZXQgICA9IHRoaXMgcHJpY2luZyByb3cgYXBwbGllcyB0byBPTkUgc3BlY2lmaWMgdmFyaWFudCBvbmx5XG4gIC8vICAgICAgICAgKHVzZWQgd2hlbiBwcm9kdWN0Lmhhc1ZhcmlhbnRzID0gdHJ1ZSDigJQgc2V0IGEgZGlmZmVyZW50IHByaWNlXG4gIC8vICAgICAgICAgIGZvciBlYWNoIHZhcmlhbnQgZS5nLiA1MG1sPTUuMDAwLCAxMDBtbD04LjAwMCwgMjAwbWw9MTIuMDAwKVxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RWYXJpYW50SWQ/OiBudW1iZXI7XG5cbiAgLy8gU3RvcmUtc3BlY2lmaWMgcmVndWxhciBwcmljZVxuICAvLyBudWxsID0gdXNlIHZhcmlhbnQucHJpY2VPdmVycmlkZSwgdGhlbiBwcm9kdWN0LmRlZmF1bHRQcmljZVxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByaWNlPzogbnVtYmVyO1xuXG4gIC8vIFNhbGUgcHJpY2Ug4oCUIG9ubHkgYWN0aXZlIHdoZW4gdG9kYXkgaXMgd2l0aGluIHNhbGVTdGFydERhdGUg4oaSIHNhbGVFbmREYXRlXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2FsZVByaWNlPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBzYWxlU3RhcnREYXRlPzogRGF0ZTtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREFURSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2FsZUVuZERhdGU/OiBEYXRlO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3QpXG4gIGRlY2xhcmUgcHJvZHVjdDogUHJvZHVjdDtcblxuICBAQmVsb25nc1RvKCgpID0+IFN0b3JlKVxuICBkZWNsYXJlIHN0b3JlOiBTdG9yZTtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBkZWNsYXJlIHZhcmlhbnQ/OiBQcm9kdWN0VmFyaWFudDtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBUYWcgfSBmcm9tICcuL3RhZy5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBQcm9kdWN0VGFnIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFRhZylcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB0YWdJZDogbnVtYmVyO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmltcG9ydCB7IFZhcmlhbnRPcHRpb24gfSBmcm9tICcuL3ZhcmlhbnQtb3B0aW9uLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFByb2R1Y3RWYXJpYW50T3B0aW9uIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwcm9kdWN0VmFyaWFudElkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gVmFyaWFudE9wdGlvbilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB2YXJpYW50T3B0aW9uSWQ6IG51bWJlcjtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIEJlbG9uZ3NUb01hbnksXG4gIEhhc01hbnksXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBWYXJpYW50T3B0aW9uIH0gZnJvbSAnLi92YXJpYW50LW9wdGlvbi5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFZhcmlhbnRPcHRpb24gfSBmcm9tICcuL3Byb2R1Y3QtdmFyaWFudC1vcHRpb24uZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFByb2R1Y3RWYXJpYW50IGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBza3U/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGJhcmNvZGU/OiBzdHJpbmc7XG5cbiAgLy8gT3ZlcnJpZGUgZGVmYXVsdCBwcm9kdWN0IHByaWNlIHBlciB2YXJpYW50IGlmIG5lZWRlZFxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHByaWNlT3ZlcnJpZGU/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGltYWdlPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBTdGF0dXMuQUNUSVZFLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogU3RhdHVzO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0KVxuICBkZWNsYXJlIHByb2R1Y3Q6IFByb2R1Y3Q7XG5cbiAgQEJlbG9uZ3NUb01hbnkoKCkgPT4gVmFyaWFudE9wdGlvbiwgKCkgPT4gUHJvZHVjdFZhcmlhbnRPcHRpb24pXG4gIGRlY2xhcmUgb3B0aW9uczogVmFyaWFudE9wdGlvbltdO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgSGFzTWFueSxcbiAgQmVsb25nc1RvTWFueSxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IEJyYW5kIH0gZnJvbSAnLi9icmFuZC5lbnRpdHknO1xuaW1wb3J0IHsgQ2F0ZWdvcnkgfSBmcm9tICcuL2NhdGVnb3J5LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0TWVkaWEgfSBmcm9tICcuL3Byb2R1Y3QtbWVkaWEuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RTdG9yZSB9IGZyb20gJy4vcHJvZHVjdC1zdG9yZS5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFRhZyB9IGZyb20gJy4vcHJvZHVjdC10YWcuZW50aXR5JztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnLi9zdG9yZS5lbnRpdHknO1xuaW1wb3J0IHsgVGFnIH0gZnJvbSAnLi90YWcuZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5pbXBvcnQgeyBVc2VyRmF2b3JpdGUgfSBmcm9tICcuL3VzZXItZmF2b3JpdGUuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUHJvZHVjdCBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lRW46IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVBcjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkVuPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkFyPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBza3U/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGJhcmNvZGU/OiBzdHJpbmc7XG5cbiAgLy8gRGVmYXVsdCBwcmljZSB1c2VkIHdoZW4gbm8gc3RvcmUtc3BlY2lmaWMgcHJpY2UgaXMgc2V0XG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgZGVmYXVsdFByaWNlOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gQnJhbmQpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBicmFuZElkPzogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IENhdGVnb3J5KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY2F0ZWdvcnlJZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgc29ydE9yZGVyOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogZmFsc2UgfSlcbiAgZGVjbGFyZSBpc0ZlYXR1cmVkOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaGFzVmFyaWFudHM6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQnJhbmQpXG4gIGRlY2xhcmUgYnJhbmQ6IEJyYW5kO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ2F0ZWdvcnkpXG4gIGRlY2xhcmUgY2F0ZWdvcnk6IENhdGVnb3J5O1xuXG4gIEBIYXNNYW55KCgpID0+IFByb2R1Y3RNZWRpYSlcbiAgZGVjbGFyZSBtZWRpYTogUHJvZHVjdE1lZGlhW107XG5cbiAgQEhhc01hbnkoKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIGRlY2xhcmUgdmFyaWFudHM6IFByb2R1Y3RWYXJpYW50W107XG5cbiAgQEJlbG9uZ3NUb01hbnkoKCkgPT4gU3RvcmUsICgpID0+IFByb2R1Y3RTdG9yZSlcbiAgZGVjbGFyZSBzdG9yZXM6IFN0b3JlW107XG5cbiAgQEJlbG9uZ3NUb01hbnkoKCkgPT4gVGFnLCAoKSA9PiBQcm9kdWN0VGFnKVxuICBkZWNsYXJlIHRhZ3M6IFRhZ1tdO1xuXG4gIEBIYXNNYW55KCgpID0+IFVzZXJGYXZvcml0ZSlcbiAgZGVjbGFyZSB1c2VyRmF2b3JpdGVzOiBVc2VyRmF2b3JpdGVbXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQdXJjaGFzZU9yZGVyIH0gZnJvbSAnLi9wdXJjaGFzZS1vcmRlci5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vcHJvZHVjdC5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFZhcmlhbnQgfSBmcm9tICcuL3Byb2R1Y3QtdmFyaWFudC5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBQdXJjaGFzZU9yZGVySXRlbVN0YXR1cyB7XG4gIFBFTkRJTkcgPSAncGVuZGluZycsXG4gIFBBUlRJQUxMWV9SRUNFSVZFRCA9ICdwYXJ0aWFsbHlfcmVjZWl2ZWQnLFxuICBGVUxMWV9SRUNFSVZFRCA9ICdmdWxseV9yZWNlaXZlZCcsXG4gIENBTkNFTExFRCA9ICdjYW5jZWxsZWQnLFxufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBQdXJjaGFzZU9yZGVySXRlbSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHVyY2hhc2VPcmRlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwdXJjaGFzZU9yZGVySWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdFZhcmlhbnRJZD86IG51bWJlcjtcblxuICAvLyBIb3cgbWFueSB1bml0cyB3ZXJlIG9yZGVyZWQgZnJvbSB2ZW5kb3JcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBvcmRlcmVkUXVhbnRpdHk6IG51bWJlcjtcblxuICAvLyBIb3cgbWFueSB1bml0cyBoYXZlIGJlZW4gcmVjZWl2ZWQgc28gZmFyICh1cGRhdGVkIG9uIGVhY2ggcmVjZWlwdClcbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHJlY2VpdmVkUXVhbnRpdHk6IG51bWJlcjtcblxuICAvLyBIb3cgbWFueSBvZiB0aGVzZSBhcmUgcmVzZXJ2ZWQgZm9yIGEgc3BlY2lmaWMgY3VzdG9tZXIgb3JkZXJcbiAgQENvbHVtbih7IGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHJlc2VydmVkUXVhbnRpdHk6IG51bWJlcjtcblxuICAvLyBWZW5kb3IncyBjb3N0IHByaWNlIHBlciB1bml0IGF0IHRpbWUgb2YgUE9cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdW5pdENvc3RQcmljZTogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgdG90YWxDb3N0UHJpY2U6IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoUHVyY2hhc2VPcmRlckl0ZW1TdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFB1cmNoYXNlT3JkZXJJdGVtU3RhdHVzLlBFTkRJTkcsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBQdXJjaGFzZU9yZGVySXRlbVN0YXR1cztcblxuICAvLyBSZWZlcmVuY2UgdG8gdGhlIGN1c3RvbWVyIG9yZGVyIHRoYXQgdHJpZ2dlcmVkIHRoaXMgUE8gaXRlbSAobnVsbGFibGUgPSBwcm9hY3RpdmUgc3RvY2sgcmVwbGVuaXNobWVudClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHRyaWdnZXJPcmRlcklkPzogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQdXJjaGFzZU9yZGVyKVxuICBkZWNsYXJlIHB1cmNoYXNlT3JkZXI6IFB1cmNoYXNlT3JkZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0KVxuICBkZWNsYXJlIHByb2R1Y3Q6IFByb2R1Y3Q7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0VmFyaWFudClcbiAgZGVjbGFyZSB2YXJpYW50PzogUHJvZHVjdFZhcmlhbnQ7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQdXJjaGFzZU9yZGVyIH0gZnJvbSAnLi9wdXJjaGFzZS1vcmRlci5lbnRpdHknO1xuaW1wb3J0IHsgUHVyY2hhc2VPcmRlckl0ZW0gfSBmcm9tICcuL3B1cmNoYXNlLW9yZGVyLWl0ZW0uZW50aXR5JztcbmltcG9ydCB7IE9yZGVySXRlbSB9IGZyb20gJy4vb3JkZXItaXRlbS5lbnRpdHknO1xuaW1wb3J0IHsgT3JkZXIgfSBmcm9tICcuL29yZGVyLmVudGl0eSc7XG5pbXBvcnQgeyBPcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb24gfSBmcm9tICcuL29yZGVyLWl0ZW0tYnVuZGxlLXNlbGVjdGlvbi5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBQdXJjaGFzZU9yZGVyT3JkZXJJdGVtIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBQdXJjaGFzZU9yZGVyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHB1cmNoYXNlT3JkZXJJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFB1cmNoYXNlT3JkZXJJdGVtKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHB1cmNoYXNlT3JkZXJJdGVtSWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBPcmRlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBvcmRlcklkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gT3JkZXJJdGVtKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG9yZGVySXRlbUlkOiBudW1iZXI7XG5cbiAgLy8gTkVXOiBGb3IgYnVuZGxlIGl0ZW1zLCB3aGljaCBzcGVjaWZpYyBzZWxlY3Rpb24gdGhpcyBQTyBpdGVtIGZ1bGZpbGxzXG4gIC8vIG51bGwgPSBkaXJlY3QgcHJvZHVjdCBvcmRlciBpdGVtIChub3QgYSBidW5kbGUgc2VsZWN0aW9uKVxuICBARm9yZWlnbktleSgoKSA9PiBPcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb24pXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBvcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb25JZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAxIH0pXG4gIGRlY2xhcmUgYWxsb2NhdGVkUXVhbnRpdHk6IG51bWJlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IFB1cmNoYXNlT3JkZXIpIGRlY2xhcmUgcHVyY2hhc2VPcmRlcjogUHVyY2hhc2VPcmRlcjtcbiAgQEJlbG9uZ3NUbygoKSA9PiBQdXJjaGFzZU9yZGVySXRlbSlcbiAgZGVjbGFyZSBwdXJjaGFzZU9yZGVySXRlbTogUHVyY2hhc2VPcmRlckl0ZW07XG4gIEBCZWxvbmdzVG8oKCkgPT4gT3JkZXIpIGRlY2xhcmUgb3JkZXI6IE9yZGVyO1xuICBAQmVsb25nc1RvKCgpID0+IE9yZGVySXRlbSkgZGVjbGFyZSBvcmRlckl0ZW06IE9yZGVySXRlbTtcbiAgQEJlbG9uZ3NUbygoKSA9PiBPcmRlckl0ZW1CdW5kbGVTZWxlY3Rpb24pXG4gIGRlY2xhcmUgYnVuZGxlU2VsZWN0aW9uPzogT3JkZXJJdGVtQnVuZGxlU2VsZWN0aW9uO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgUHVyY2hhc2VPcmRlclJlY2VpcHQgfSBmcm9tICcuL3B1cmNoYXNlLW9yZGVyLXJlY2VpcHQuZW50aXR5JztcbmltcG9ydCB7IFB1cmNoYXNlT3JkZXJJdGVtIH0gZnJvbSAnLi9wdXJjaGFzZS1vcmRlci1pdGVtLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFB1cmNoYXNlT3JkZXJSZWNlaXB0SXRlbSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHVyY2hhc2VPcmRlclJlY2VpcHQpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcmVjZWlwdElkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHVyY2hhc2VPcmRlckl0ZW0pXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHVyY2hhc2VPcmRlckl0ZW1JZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSByZWNlaXZlZFF1YW50aXR5OiBudW1iZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQdXJjaGFzZU9yZGVyUmVjZWlwdCkgZGVjbGFyZSByZWNlaXB0OiBQdXJjaGFzZU9yZGVyUmVjZWlwdDtcbiAgQEJlbG9uZ3NUbygoKSA9PiBQdXJjaGFzZU9yZGVySXRlbSkgZGVjbGFyZSBwb0l0ZW06IFB1cmNoYXNlT3JkZXJJdGVtO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgSGFzTWFueSxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFB1cmNoYXNlT3JkZXIgfSBmcm9tICcuL3B1cmNoYXNlLW9yZGVyLmVudGl0eSc7XG5pbXBvcnQgeyBTeXNVc2VyIH0gZnJvbSAnLi9zeXMudXNlci5lbnRpdHknO1xuaW1wb3J0IHsgUHVyY2hhc2VPcmRlclJlY2VpcHRJdGVtIH0gZnJvbSAnLi9wdXJjaGFzZS1vcmRlci1yZWNlaXB0LWl0ZW0uZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUHVyY2hhc2VPcmRlclJlY2VpcHQgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFB1cmNoYXNlT3JkZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHVyY2hhc2VPcmRlcklkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3lzVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHJlY2VpdmVkQnk/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG5vdGVzPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBpbnZvaWNlVXJsPzogc3RyaW5nOyAvLyBvcHRpb25hbFxuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcmVjZWl2aW5nRG9jdW1lbnRVcmw6IHN0cmluZzsgLy8gTUFOREFUT1JZXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQdXJjaGFzZU9yZGVyKSBkZWNsYXJlIHB1cmNoYXNlT3JkZXI6IFB1cmNoYXNlT3JkZXI7XG4gIEBCZWxvbmdzVG8oKCkgPT4gU3lzVXNlcikgZGVjbGFyZSByZWNlaXZlcj86IFN5c1VzZXI7XG4gIEBIYXNNYW55KCgpID0+IFB1cmNoYXNlT3JkZXJSZWNlaXB0SXRlbSlcbiAgZGVjbGFyZSBpdGVtczogUHVyY2hhc2VPcmRlclJlY2VpcHRJdGVtW107XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBIYXNNYW55LFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgVmVuZG9yIH0gZnJvbSAnLi92ZW5kb3IuZW50aXR5JztcbmltcG9ydCB7IEludmVudG9yeSB9IGZyb20gJy4vaW52ZW50b3J5LmVudGl0eSc7XG5pbXBvcnQgeyBTeXNVc2VyIH0gZnJvbSAnLi9zeXMudXNlci5lbnRpdHknO1xuaW1wb3J0IHsgUHVyY2hhc2VPcmRlckl0ZW0gfSBmcm9tICcuL3B1cmNoYXNlLW9yZGVyLWl0ZW0uZW50aXR5JztcbmltcG9ydCB7IFB1cmNoYXNlT3JkZXJTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9wdXJjaGFzZU9yZGVyU3RhdHVzJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUHVyY2hhc2VPcmRlciBleHRlbmRzIE1vZGVsIHtcbiAgLy8gQXV0by1nZW5lcmF0ZWQgUE8gbnVtYmVyIGUuZy4gUE8tMjAyNi0wMDAwMVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdW5pcXVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgcG9OdW1iZXI6IHN0cmluZztcblxuICBARm9yZWlnbktleSgoKSA9PiBWZW5kb3IpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdmVuZG9ySWQ6IG51bWJlcjtcblxuICAvLyBUYXJnZXQgaW52ZW50b3J5IHdoZXJlIHJlY2VpdmVkIHN0b2NrIHdpbGwgYmUgc3RvcmVkXG4gIEBGb3JlaWduS2V5KCgpID0+IEludmVudG9yeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBpbnZlbnRvcnlJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhQdXJjaGFzZU9yZGVyU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBQdXJjaGFzZU9yZGVyU3RhdHVzLkRSQUZULFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogUHVyY2hhc2VPcmRlclN0YXR1cztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHRvdGFsQW1vdW50OiBudW1iZXI7XG5cbiAgLy8gQ3VycmVuY3kgb2YgdGhlIFBPICh2ZW5kb3IncyBjdXJyZW5jeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogJ1VTRCcgfSlcbiAgZGVjbGFyZSBjdXJyZW5jeTogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBleHBlY3RlZERlbGl2ZXJ5RGF0ZT86IERhdGU7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHNlbnRBdD86IERhdGU7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNsb3NlZEF0PzogRGF0ZTtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY2FuY2VsbGVkQXQ/OiBEYXRlO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjYW5jZWxsYXRpb25SZWFzb24/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG5vdGVzPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBpbnZvaWNlVXJsPzogc3RyaW5nO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFN5c1VzZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjcmVhdGVkQnk/OiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3lzVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHNlbnRCeT86IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKCdvcmRlcl9mdWxmaWxsbWVudCcsICdzdG9ja19yZXBsZW5pc2htZW50JyksXG4gICAgZGVmYXVsdFZhbHVlOiAnb3JkZXJfZnVsZmlsbG1lbnQnLFxuICB9KVxuICBkZWNsYXJlIHBvVHlwZTogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBWZW5kb3IpXG4gIGRlY2xhcmUgdmVuZG9yOiBWZW5kb3I7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBJbnZlbnRvcnkpXG4gIGRlY2xhcmUgaW52ZW50b3J5OiBJbnZlbnRvcnk7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBTeXNVc2VyLCB7IGZvcmVpZ25LZXk6ICdjcmVhdGVkQnknLCBhczogJ2NyZWF0b3InIH0pXG4gIGRlY2xhcmUgY3JlYXRvcj86IFN5c1VzZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBTeXNVc2VyLCB7IGZvcmVpZ25LZXk6ICdzZW50QnknLCBhczogJ3NlbmRlcicgfSlcbiAgZGVjbGFyZSBzZW5kZXI/OiBTeXNVc2VyO1xuXG4gIEBIYXNNYW55KCgpID0+IFB1cmNoYXNlT3JkZXJJdGVtKVxuICBkZWNsYXJlIGl0ZW1zOiBQdXJjaGFzZU9yZGVySXRlbVtdO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IE9yZGVyIH0gZnJvbSAnLi9vcmRlci5lbnRpdHknO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4vdXNlci5lbnRpdHknO1xuaW1wb3J0IHsgU3lzVXNlciB9IGZyb20gJy4vc3lzLnVzZXIuZW50aXR5JztcblxuZXhwb3J0IGVudW0gUmVmdW5kTWV0aG9kIHtcbiAgV0FMTEVUID0gJ3dhbGxldCcsXG4gIEJBTksgPSAnYmFuaycsXG59XG5leHBvcnQgZW51bSBSZWZ1bmRTdGF0dXMge1xuICBQRU5ESU5HID0gJ3BlbmRpbmcnLFxuICBQUk9DRVNTSU5HID0gJ3Byb2Nlc3NpbmcnLFxuICBSRUZVTkRFRCA9ICdyZWZ1bmRlZCcsXG4gIEZBSUxFRCA9ICdmYWlsZWQnLFxufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBSZWZ1bmQgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IE9yZGVyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG9yZGVySWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBVc2VyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgdXNlcklkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGFtb3VudDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6ICdLV0QnIH0pXG4gIGRlY2xhcmUgY3VycmVuY3k6IHN0cmluZztcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoUmVmdW5kTWV0aG9kKSksXG4gICAgYWxsb3dOdWxsOiBmYWxzZSxcbiAgfSlcbiAgZGVjbGFyZSBtZXRob2Q6IFJlZnVuZE1ldGhvZDtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoUmVmdW5kU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBSZWZ1bmRTdGF0dXMuUEVORElORyxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFJlZnVuZFN0YXR1cztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcmVmdW5kUmVmZXJlbmNlPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBub3Rlcz86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREFURSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvY2Vzc2VkQXQ/OiBEYXRlO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFN5c1VzZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcm9jZXNzZWRCeT86IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBTeXNVc2VyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY3JlYXRlZEJ5PzogbnVtYmVyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gT3JkZXIpIGRlY2xhcmUgb3JkZXI6IE9yZGVyO1xuICBAQmVsb25nc1RvKCgpID0+IFVzZXIpIGRlY2xhcmUgdXNlcj86IFVzZXI7XG4gIEBCZWxvbmdzVG8oKCkgPT4gU3lzVXNlciwgeyBmb3JlaWduS2V5OiAncHJvY2Vzc2VkQnknLCBhczogJ3Byb2Nlc3NvcicgfSlcbiAgZGVjbGFyZSBwcm9jZXNzb3I/OiBTeXNVc2VyO1xuICBAQmVsb25nc1RvKCgpID0+IFN5c1VzZXIsIHsgZm9yZWlnbktleTogJ2NyZWF0ZWRCeScsIGFzOiAnY3JlYXRvcicgfSlcbiAgZGVjbGFyZSBjcmVhdG9yPzogU3lzVXNlcjtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBTeXNSb2xlIH0gZnJvbSAnLi9zeXMucm9sZS5lbnRpdHknO1xuaW1wb3J0IHsgUGVybWlzc2lvbiB9IGZyb20gJy4vcGVybWlzc2lvbi5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBSb2xlUGVybWlzc2lvbiBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3lzUm9sZSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBzeXNSb2xlSWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQZXJtaXNzaW9uKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHBlcm1pc3Npb25JZDogbnVtYmVyO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFJ1blNoZWV0IH0gZnJvbSAnLi9ydW4tc2hlZXQuZW50aXR5JztcbmltcG9ydCB7IE9yZGVyIH0gZnJvbSAnLi9vcmRlci5lbnRpdHknO1xuXG5leHBvcnQgZW51bSBSdW5TaGVldE9yZGVyU3RhdHVzIHtcbiAgQVNTSUdORUQgPSAnYXNzaWduZWQnLCAvLyBPcmRlciBhZGRlZCB0byBydW5zaGVldCwgbWFya2VkIHNoaXBwZWRcbiAgREVMSVZFUkVEID0gJ2RlbGl2ZXJlZCcsIC8vIENvbmZpcm1lZCBkZWxpdmVyZWQgb24gY29tcGxldGlvblxuICBSRVRVUk5FRCA9ICdyZXR1cm5lZCcsIC8vIE5vdCBkZWxpdmVyZWQg4oCUIHJldHVybmVkIHRvIHBhY2tlZFxufVxuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBSdW5TaGVldE9yZGVyIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBSdW5TaGVldClcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBydW5TaGVldElkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gT3JkZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pIC8vIG9uZSBvcmRlciBiZWxvbmdzIHRvIG9uZSBydW5zaGVldCBhdCBhIHRpbWVcbiAgZGVjbGFyZSBvcmRlcklkOiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFJ1blNoZWV0T3JkZXJTdGF0dXMpKSxcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICAgIGRlZmF1bHRWYWx1ZTogUnVuU2hlZXRPcmRlclN0YXR1cy5BU1NJR05FRCxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFJ1blNoZWV0T3JkZXJTdGF0dXM7XG5cbiAgLy8gRmlsbGVkIHdoZW4gc3RhdHVzID0gcmV0dXJuZWQg4oCUIHdoeSB3YXMgdGhpcyBvcmRlciBub3QgZGVsaXZlcmVkXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSByZXR1cm5SZWFzb24/OiBzdHJpbmc7XG5cbiAgLy8gU25hcHNob3Qgb2Ygb3JkZXIgbnVtYmVyIGZvciBkaXNwbGF5IGV2ZW4gaWYgb3JkZXIgaXMgbW9kaWZpZWRcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG9yZGVyTnVtYmVyPzogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBSdW5TaGVldClcbiAgZGVjbGFyZSBydW5TaGVldDogUnVuU2hlZXQ7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBPcmRlcilcbiAgZGVjbGFyZSBvcmRlcjogT3JkZXI7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSwgQ29sdW1uLCBNb2RlbCwgRm9yZWlnbktleSwgQmVsb25nc1RvLFxuICBIYXNNYW55LCBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3lzVXNlciB9IGZyb20gJy4vc3lzLnVzZXIuZW50aXR5JztcbmltcG9ydCB7IFJ1blNoZWV0T3JkZXIgfSBmcm9tICcuL3J1bi1zaGVldC1vcmRlci5lbnRpdHknO1xuaW1wb3J0IHsgSW52ZW50b3J5IH0gZnJvbSAnLi9pbnZlbnRvcnkuZW50aXR5JztcblxuZXhwb3J0IGVudW0gUnVuU2hlZXRTdGF0dXMge1xuICBPUEVOICAgICAgICA9ICdvcGVuJywgICAgICAgICAvLyBDcmVhdGVkLCBvcmRlcnMgYXNzaWduZWQsIGFsbCBtb3ZlZCB0byBzaGlwcGVkXG4gIE9VVF9GT1JfREVMSVZFUlkgPSAnb3V0X2Zvcl9kZWxpdmVyeScsIC8vIERyaXZlciBpcyBvbiB0aGUgcm9hZFxuICBDT01QTEVURUQgICA9ICdjb21wbGV0ZWQnLCAgICAvLyBBbGwgb3JkZXJzIGRlbGl2ZXJlZFxuICBQQVJUSUFMTFlfQ09NUExFVEVEID0gJ3BhcnRpYWxseV9jb21wbGV0ZWQnLCAvLyBTb21lIGRlbGl2ZXJlZCwgc29tZSByZXR1cm5lZCB0byBwYWNrZWRcbiAgQ0FOQ0VMTEVEICAgPSAnY2FuY2VsbGVkJyxcbn1cblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgUnVuU2hlZXQgZXh0ZW5kcyBNb2RlbCB7XG4gIC8vIEF1dG8tZ2VuZXJhdGVkIGUuZy4gUlMtMjAyNi0wMDAwMVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdW5pcXVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgcnVuU2hlZXROdW1iZXI6IHN0cmluZztcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoUnVuU2hlZXRTdGF0dXMpKSxcbiAgICBhbGxvd051bGw6IGZhbHNlLFxuICAgIGRlZmF1bHRWYWx1ZTogUnVuU2hlZXRTdGF0dXMuT1BFTixcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFJ1blNoZWV0U3RhdHVzO1xuXG4gIC8vIERyaXZlciAvIGRlbGl2ZXJ5IHBlcnNvbiBuYW1lXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkcml2ZXJOYW1lPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBkcml2ZXJQaG9uZT86IHN0cmluZztcblxuICAvLyBWZWhpY2xlIC8gcm91dGUgcmVmZXJlbmNlXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSB2ZWhpY2xlUmVmPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBub3Rlcz86IHN0cmluZztcblxuICAvLyBUaW1lc3RhbXBzIGZvciBsaWZlY3ljbGVcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRBVEUsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRpc3BhdGNoZWRBdD86IERhdGU7IC8vIHdoZW4gbW92ZWQgdG8gb3V0X2Zvcl9kZWxpdmVyeVxuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5EQVRFLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjb21wbGV0ZWRBdD86IERhdGU7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3lzVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNyZWF0ZWRCeT86IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBTeXNVc2VyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY29tcGxldGVkQnk/OiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gSW52ZW50b3J5KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgaW52ZW50b3J5SWQ/OiBudW1iZXI7XG5cbiAgLy8g4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IFN5c1VzZXIsIHsgZm9yZWlnbktleTogJ2NyZWF0ZWRCeScsIGFzOiAnY3JlYXRvcicgfSlcbiAgZGVjbGFyZSBjcmVhdG9yPzogU3lzVXNlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IFN5c1VzZXIsIHsgZm9yZWlnbktleTogJ2NvbXBsZXRlZEJ5JywgYXM6ICdjb21wbGV0ZXInIH0pXG4gIGRlY2xhcmUgY29tcGxldGVyPzogU3lzVXNlcjtcblxuICBASGFzTWFueSgoKSA9PiBSdW5TaGVldE9yZGVyKVxuICBkZWNsYXJlIHJ1blNoZWV0T3JkZXJzOiBSdW5TaGVldE9yZGVyW107XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBJbnZlbnRvcnkpXG4gIGRlY2xhcmUgaW52ZW50b3J5PzogSW52ZW50b3J5O1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IEludmVudG9yeSB9IGZyb20gJy4vaW52ZW50b3J5LmVudGl0eSc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4vc3RvcmUuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgU2hpcHBpbmdSdWxlIGV4dGVuZHMgTW9kZWwge1xuICAvLyBGcm9tIHdoaWNoIGludmVudG9yeVxuICBARm9yZWlnbktleSgoKSA9PiBJbnZlbnRvcnkpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaW52ZW50b3J5SWQ6IG51bWJlcjtcblxuICAvLyBUbyB3aGljaCBjb3VudHJ5XG4gIEBGb3JlaWduS2V5KCgpID0+IENvdW50cnkpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgY291bnRyeUlkOiBudW1iZXI7XG5cbiAgLy8gT3B0aW9uYWw6IG92ZXJyaWRlIGZvciBhIHNwZWNpZmljIHN0b3JlXG4gIC8vIG51bGwgPSBhcHBsaWVzIHRvIGFsbCBzdG9yZXMgc2hpcHBpbmcgZnJvbSB0aGlzIGludmVudG9yeSB0byB0aGlzIGNvdW50cnlcbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3RvcmUpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBzdG9yZUlkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDEgfSlcbiAgZGVjbGFyZSBtaW5EYXlzOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMyB9KVxuICBkZWNsYXJlIG1heERheXM6IG51bWJlcjtcblxuICAvLyBDYXJyaWVyIG5hbWUgZS5nLiBBcmFtZXgsIERITCwgRmVkRXgsIEludGVybmFsXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjYXJyaWVyTmFtZT86IHN0cmluZztcblxuICAvLyBTaGlwcGluZyBjb3N0IGluIHRoZSBpbnZlbnRvcnkncyBiYXNlIGN1cnJlbmN5IChLV0QpXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiB0cnVlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzaGlwcGluZ0Nvc3Q/OiBudW1iZXI7XG5cbiAgLy8gRnJlZSBzaGlwcGluZyB0aHJlc2hvbGQg4oCUIG51bGwgbWVhbnMgbmV2ZXIgZnJlZVxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGZyZWVTaGlwcGluZ1RocmVzaG9sZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgaXNBY3RpdmU6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG5vdGVzPzogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBJbnZlbnRvcnkpXG4gIGRlY2xhcmUgaW52ZW50b3J5OiBJbnZlbnRvcnk7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBDb3VudHJ5KVxuICBkZWNsYXJlIGNvdW50cnk6IENvdW50cnk7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBTdG9yZSlcbiAgZGVjbGFyZSBzdG9yZT86IFN0b3JlO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IEludmVudG9yeSB9IGZyb20gJy4vaW52ZW50b3J5LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0VmFyaWFudCB9IGZyb20gJy4vcHJvZHVjdC12YXJpYW50LmVudGl0eSc7XG5pbXBvcnQgeyBTeXNVc2VyIH0gZnJvbSAnLi9zeXMudXNlci5lbnRpdHknO1xuaW1wb3J0IHsgU3RvY2tNb3ZlbWVudFR5cGUgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdG9ja01vdmVtZW50VHlwZSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFN0b2NrTW92ZW1lbnQgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IEludmVudG9yeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBpbnZlbnRvcnlJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3QpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdElkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBwcm9kdWN0VmFyaWFudElkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdG9ja01vdmVtZW50VHlwZSkpLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gIH0pXG4gIGRlY2xhcmUgbW92ZW1lbnRUeXBlOiBTdG9ja01vdmVtZW50VHlwZTtcblxuICAvLyBQb3NpdGl2ZSA9IHN0b2NrIGluLCBOZWdhdGl2ZSA9IHN0b2NrIG91dFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHF1YW50aXR5OiBudW1iZXI7XG5cbiAgLy8gU25hcHNob3Qgb2YgcXVhbnRpdHkgYmVmb3JlIHRoaXMgbW92ZW1lbnRcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBxdWFudGl0eUJlZm9yZTogbnVtYmVyO1xuXG4gIC8vIFNuYXBzaG90IG9mIHF1YW50aXR5IGFmdGVyIHRoaXMgbW92ZW1lbnRcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBxdWFudGl0eUFmdGVyOiBudW1iZXI7XG5cbiAgLy8gUmVmZXJlbmNlIHRvIHNvdXJjZSBkb2N1bWVudCAoUE8gaWQsIG9yZGVyIGlkLCBldGMuKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcmVmZXJlbmNlVHlwZT86IHN0cmluZzsgLy8gJ3B1cmNoYXNlX29yZGVyJyB8ICdvcmRlcicgfCAnbWFudWFsJyB8ICd0cmFuc2ZlcidcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcmVmZXJlbmNlSWQ/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIG5vdGVzPzogc3RyaW5nO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFN5c1VzZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjcmVhdGVkQnk/OiBudW1iZXI7XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IEludmVudG9yeSlcbiAgZGVjbGFyZSBpbnZlbnRvcnk6IEludmVudG9yeTtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3QpXG4gIGRlY2xhcmUgcHJvZHVjdDogUHJvZHVjdDtcblxuICBAQmVsb25nc1RvKCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBkZWNsYXJlIHZhcmlhbnQ/OiBQcm9kdWN0VmFyaWFudDtcblxuICBAQmVsb25nc1RvKCgpID0+IFN5c1VzZXIpXG4gIGRlY2xhcmUgY3JlYXRlZEJ5VXNlcj86IFN5c1VzZXI7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgRGF0YVR5cGUsXG4gIEJlbG9uZ3NUbyxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuL3N0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBJbnZlbnRvcnkgfSBmcm9tICcuL2ludmVudG9yeS5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBTdG9yZUludmVudG9yeSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gU3RvcmUpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgc3RvcmVJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IEludmVudG9yeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBpbnZlbnRvcnlJZDogbnVtYmVyO1xuXG4gIC8vIFByaW9yaXR5IOKAlCBsb3dlciBudW1iZXIgPSBwcmVmZXJyZWQgaW52ZW50b3J5IGZvciB0aGlzIHN0b3JlXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDEgfSlcbiAgZGVjbGFyZSBwcmlvcml0eTogbnVtYmVyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gSW52ZW50b3J5KSAvLyDihpAgYWRkIHRoaXMgYXNzb2NpYXRpb25cbiAgaW52ZW50b3J5OiBJbnZlbnRvcnk7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBTdG9yZSkgLy8g4oaQIGFkZCB0aGlzIGFzc29jaWF0aW9uXG4gIHN0b3JlOiBTdG9yZTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBGb3JlaWduS2V5LCBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuL3N0b3JlLmVudGl0eSc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kIH0gZnJvbSAnLi9wYXltZW50LW1ldGhvZC5lbnRpdHknO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBTdG9yZVBheW1lbnRNZXRob2QgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFN0b3JlKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHN0b3JlSWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQYXltZW50TWV0aG9kKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHBheW1lbnRNZXRob2RJZDogbnVtYmVyO1xuXG4gIC8vIFN0b3JlIGNhbiBvdmVycmlkZSBzb3J0IG9yZGVyIGZvciBkaXNwbGF5XG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICAvLyBTdG9yZSBjYW4gZW5hYmxlL2Rpc2FibGUgaW5kZXBlbmRlbnRseSBvZiBnbG9iYWwgaXNBY3RpdmVcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogdHJ1ZSB9KVxuICBkZWNsYXJlIGlzRW5hYmxlZDogYm9vbGVhbjtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIEhhc01hbnksXG4gIEJlbG9uZ3NUb01hbnksXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0U3RvcmUgfSBmcm9tICcuL3Byb2R1Y3Qtc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFN0b3JlSW52ZW50b3J5IH0gZnJvbSAnLi9zdG9yZS1pbnZlbnRvcnkuZW50aXR5JztcbmltcG9ydCB7IEludmVudG9yeSB9IGZyb20gJy4vaW52ZW50b3J5LmVudGl0eSc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi91dGlscy9lbnVtcy9zdGF0dXMnO1xuaW1wb3J0IHsgUGF5bWVudE1ldGhvZCB9IGZyb20gJy4vcGF5bWVudC1tZXRob2QuZW50aXR5JztcbmltcG9ydCB7IFN0b3JlUGF5bWVudE1ldGhvZCB9IGZyb20gJy4vc3RvcmUtcGF5bWVudC1tZXRob2QuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgU3RvcmUgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Fbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgZGVzY3JpcHRpb25Bcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbG9nbz86IHN0cmluZztcblxuICAvLyBJU08gY3VycmVuY3kgY29kZSBlLmcuIEtXRCwgU0FSLCBRQVIsIFVTRFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAnVVNEJyB9KVxuICBkZWNsYXJlIGN1cnJlbmN5OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGN1cnJlbmN5U3ltYm9sRW4/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGN1cnJlbmN5U3ltYm9sQXI/OiBzdHJpbmc7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gQ291bnRyeSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvdW50cnlJZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGlzR2xvYmFsOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgLy8g4pSA4pSA4pSAIEFzc29jaWF0aW9ucyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICBAQmVsb25nc1RvKCgpID0+IENvdW50cnkpXG4gIGRlY2xhcmUgY291bnRyeTogQ291bnRyeTtcblxuICBAQmVsb25nc1RvTWFueSgoKSA9PiBQcm9kdWN0LCAoKSA9PiBQcm9kdWN0U3RvcmUpXG4gIGRlY2xhcmUgcHJvZHVjdHM6IFByb2R1Y3RbXTtcblxuICBAQmVsb25nc1RvTWFueSgoKSA9PiBJbnZlbnRvcnksICgpID0+IFN0b3JlSW52ZW50b3J5KVxuICBkZWNsYXJlIGludmVudG9yaWVzOiBJbnZlbnRvcnlbXTtcblxuICBAQmVsb25nc1RvTWFueSgoKSA9PiBQYXltZW50TWV0aG9kLCAoKSA9PiBTdG9yZVBheW1lbnRNZXRob2QpXG4gIGRlY2xhcmUgcGF5bWVudE1ldGhvZHM6IFBheW1lbnRNZXRob2RbXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBCZWxvbmdzVG9NYW55LFxuICBIYXNNYW55LFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uIH0gZnJvbSAnLi9wZXJtaXNzaW9uLmVudGl0eSc7XG5pbXBvcnQgeyBSb2xlUGVybWlzc2lvbiB9IGZyb20gJy4vcm9sZS1wZXJtaXNzaW9uLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFN5c1JvbGUgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCB1bmlxdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBuYW1lOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGRpc3BsYXlOYW1lPzogc3RyaW5nO1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFBlcm1pc3Npb24sICgpID0+IFJvbGVQZXJtaXNzaW9uKVxuICBkZWNsYXJlIHBlcm1pc3Npb25zOiBQZXJtaXNzaW9uW107XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3lzUm9sZSB9IGZyb20gJy4vc3lzLnJvbGUuZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFN5c1VzZXIgZXh0ZW5kcyBNb2RlbCB7XG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBuYW1lOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB1c2VybmFtZTogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCB1bmlxdWU6IHRydWUgfSlcbiAgZGVjbGFyZSBlbWFpbDogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcGhvbmVFeHQ6IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHBob25lOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwYXNzd29yZDogc3RyaW5nO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBwcm9maWxlUGljdHVyZT86IHN0cmluZztcblxuICBARm9yZWlnbktleSgoKSA9PiBTeXNSb2xlKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcm9sZUlkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGxhc3RMb2dpbj86IERhdGU7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBTeXNSb2xlKVxuICBkZWNsYXJlIHJvbGU/OiBTeXNSb2xlO1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEJlbG9uZ3NUb01hbnksXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0VGFnIH0gZnJvbSAnLi9wcm9kdWN0LXRhZy5lbnRpdHknO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgVGFnIGV4dGVuZHMgTW9kZWwge1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgdW5pcXVlOiB0cnVlIH0pXG4gIGRlY2xhcmUgc2x1Zzogc3RyaW5nOyAvLyBlLmcuICdiZXN0X3NlbGxlcicsICduZXdfYXJyaXZhbCcsICdkaXNjb3VudCdcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVFbjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUFyOiBzdHJpbmc7XG5cbiAgLy8gT3B0aW9uYWwgY29sb3IgZm9yIFVJIGJhZGdlIGRpc3BsYXkgZS5nLiAnI0ZGMDAwMCdcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGNvbG9yPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBzb3J0T3JkZXI6IG51bWJlcjtcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBTdGF0dXMuQUNUSVZFLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogU3RhdHVzO1xuXG4gIEBCZWxvbmdzVG9NYW55KCgpID0+IFByb2R1Y3QsICgpID0+IFByb2R1Y3RUYWcpXG4gIGRlY2xhcmUgcHJvZHVjdHM6IFByb2R1Y3RbXTtcbn1cbiIsImltcG9ydCB7XG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIE1vZGVsLFxuICBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sXG4gIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi91c2VyLmVudGl0eSc7XG5pbXBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9jb3VudHJ5LmVudGl0eSc7XG5pbXBvcnQgeyBBcmVhIH0gZnJvbSAnLi9hcmVhLmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFVzZXJBZGRyZXNzIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBVc2VyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHVzZXJJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbGFiZWw6IHN0cmluZzsgLy8gZS5nLiAnSG9tZScsICdXb3JrJywgJ090aGVyJ1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgZnVsbE5hbWU6IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHBob25lRXh0OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBwaG9uZTogc3RyaW5nO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IENvdW50cnkpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgY291bnRyeUlkOiBudW1iZXI7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gQXJlYSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGFyZWFJZD86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY2l0eT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgYmxvY2s/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHN0cmVldD86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgYnVpbGRpbmc/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGZsb29yPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBhcGFydG1lbnQ/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGFkZGl0aW9uYWxJbmZvPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDksIDYpLCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBsYXRpdHVkZT86IG51bWJlcjtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCg5LCA2KSwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgbG9uZ2l0dWRlPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5URVhULCBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBtYXBJbWFnZT86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiBmYWxzZSB9KVxuICBkZWNsYXJlIGlzRGVmYXVsdDogYm9vbGVhbjtcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gVXNlcilcbiAgZGVjbGFyZSB1c2VyOiBVc2VyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQ291bnRyeSlcbiAgZGVjbGFyZSBjb3VudHJ5OiBDb3VudHJ5O1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gQXJlYSlcbiAgZGVjbGFyZSBhcmVhPzogQXJlYTtcbn1cbiIsImltcG9ydCB7XG4gIE1vZGVsLCBUYWJsZSwgQ29sdW1uLCBGb3JlaWduS2V5LFxuICBCZWxvbmdzVG8sIERhdGFUeXBlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi91c2VyLmVudGl0eSc7XG5cbmV4cG9ydCBlbnVtIEZhdm9yaXRlQ2F0YWxvZ0l0ZW1UeXBlIHtcbiAgUFJPRFVDVCA9ICdwcm9kdWN0JyxcbiAgQlVORExFICA9ICdidW5kbGUnLFxufVxuXG5AVGFibGUoe1xuICBwYXJhbm9pZDogZmFsc2UsIC8vIGhhcmQgZGVsZXRlIG9ubHkg4oCUIHNvZnQgZGVsZXRlIGJyZWFrcyB0aGUgdW5pcXVlIGNvbnN0cmFpbnQgb24gcmUtYWRkXG4gIHRpbWVzdGFtcHM6IHRydWUsIC8vIGtlZXBzIGNyZWF0ZWRBdCAvIHVwZGF0ZWRBdCwgbm8gZGVsZXRlZEF0IGNvbHVtblxuICBpbmRleGVzOiBbXG4gICAge1xuICAgICAgLy8gUHJldmVudCBkdXBsaWNhdGUgZmF2b3JpdGVzIGZvciB0aGUgc2FtZSBpdGVtXG4gICAgICB1bmlxdWU6IHRydWUsXG4gICAgICBmaWVsZHM6IFsndXNlcklkJywgJ2l0ZW1UeXBlJywgJ2l0ZW1JZCddLFxuICAgICAgbmFtZTogJ3VxX3VzZXJfZmF2b3JpdGVfY2F0YWxvZ19pdGVtJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIC8vIEZhc3QgbG9va3VwIGZvciBhbGwgZmF2b3JpdGVzIG9mIGEgdXNlclxuICAgICAgZmllbGRzOiBbJ3VzZXJJZCddLFxuICAgICAgbmFtZTogJ2lkeF91c2VyX2Zhdm9yaXRlX2NhdGFsb2dfdXNlcklkJyxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBVc2VyRmF2b3JpdGVDYXRhbG9nIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBVc2VyKVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHVzZXJJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhGYXZvcml0ZUNhdGFsb2dJdGVtVHlwZSkpLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gIH0pXG4gIGRlY2xhcmUgaXRlbVR5cGU6IEZhdm9yaXRlQ2F0YWxvZ0l0ZW1UeXBlO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaXRlbUlkOiBudW1iZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBVc2VyKVxuICBkZWNsYXJlIHVzZXI6IFVzZXI7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi91c2VyLmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0IH0gZnJvbSAnLi9wcm9kdWN0LmVudGl0eSc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFVzZXJGYXZvcml0ZSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB1c2VySWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBQcm9kdWN0KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIHByb2R1Y3RJZDogbnVtYmVyO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBVc2VyKVxuICBkZWNsYXJlIHVzZXI6IFVzZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBQcm9kdWN0KVxuICBkZWNsYXJlIHByb2R1Y3Q6IFByb2R1Y3Q7XG5cblxufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsIENvbHVtbiwgTW9kZWwsIEZvcmVpZ25LZXksIEJlbG9uZ3NUbywgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuL3VzZXIuZW50aXR5JztcbmltcG9ydCB7IE9yZGVyIH0gZnJvbSAnLi9vcmRlci5lbnRpdHknO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuL3N0b3JlLmVudGl0eSc7XG5cbmV4cG9ydCBlbnVtIFRyYW5zYWN0aW9uVHlwZSB7XG4gIERFQklUICA9ICdkZWJpdCcsICAgLy8gbW9uZXkgbGVhdmVzIHVzZXIgYmFsYW5jZVxuICBDUkVESVQgPSAnY3JlZGl0JywgIC8vIG1vbmV5IGVudGVycyB1c2VyIGJhbGFuY2Vcbn1cblxuZXhwb3J0IGVudW0gVHJhbnNhY3Rpb25DYXRlZ29yeSB7XG4gIE9SREVSX1BBWU1FTlQgICAgICA9ICdvcmRlcl9wYXltZW50JywgICAgICAvLyBERUJJVDogIHBhaWQgZm9yIG9yZGVyXG4gIE9SREVSX1JFRlVORCAgICAgICA9ICdvcmRlcl9yZWZ1bmQnLCAgICAgICAvLyBDUkVESVQ6IHJlZnVuZCByZWNlaXZlZFxuICBHSUZUX1NFTlQgICAgICAgICAgPSAnZ2lmdF9zZW50JywgICAgICAgICAgLy8gREVCSVQ6ICBzZW50IGdpZnQgdG8gc29tZW9uZVxuICBHSUZUX1JFQ0VJVkVEICAgICAgPSAnZ2lmdF9yZWNlaXZlZCcsICAgICAgLy8gQ1JFRElUOiByZWNlaXZlZCBhIGdpZnRcbiAgQkFMQU5DRV9UT1BfVVAgICAgID0gJ2JhbGFuY2VfdG9wX3VwJywgICAgIC8vIENSRURJVDogdG9wcGVkIHVwIHdhbGxldFxuICBCQUxBTkNFX1dJVEhEUkFXQUwgPSAnYmFsYW5jZV93aXRoZHJhd2FsJywgLy8gREVCSVQ6ICB3aXRoZHJldyBiYWxhbmNlXG4gIENPVVBPTl9DUkVESVQgICAgICA9ICdjb3Vwb25fY3JlZGl0JywgICAgICAvLyBDUkVESVQ6IGNvdXBvbiBjYXNoYmFja1xuICBBREpVU1RNRU5UICAgICAgICAgPSAnYWRqdXN0bWVudCcsICAgICAgICAgLy8gREVCSVQgb3IgQ1JFRElUOiBtYW51YWwgYWRtaW4gYWRqdXN0bWVudFxuICBDQVNIQkFDSyAgICAgICAgICAgPSAnY2FzaGJhY2snLCAgICAgICAgICAgLy8gQ1JFRElUOiBsb3lhbHR5IGNhc2hiYWNrXG59XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFVzZXJUcmFuc2FjdGlvbiBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB1c2VySWQ6IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIHN0b3JlIHRoaXMgdHJhbnNhY3Rpb24gYmVsb25ncyB0by5cbiAgICogTlVMTCBvbmx5IGZvciBsZWdhY3kgcm93cyBtaWdyYXRlZCBiZWZvcmUgdGhpcyBjb2x1bW4gZXhpc3RlZC5cbiAgICogQWxsIG5ldyB0cmFuc2FjdGlvbnMgTVVTVCBoYXZlIGEgc3RvcmVJZCBzbyB0aGUgYmFsYW5jZSBpcyBzdG9yZS1zY29wZWQuXG4gICAqL1xuICBARm9yZWlnbktleSgoKSA9PiBTdG9yZSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHN0b3JlSWQ/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFRyYW5zYWN0aW9uVHlwZSkpLFxuICAgIGFsbG93TnVsbDogZmFsc2UsXG4gIH0pXG4gIGRlY2xhcmUgdHlwZTogVHJhbnNhY3Rpb25UeXBlO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhUcmFuc2FjdGlvbkNhdGVnb3J5KSksXG4gICAgYWxsb3dOdWxsOiBmYWxzZSxcbiAgfSlcbiAgZGVjbGFyZSBjYXRlZ29yeTogVHJhbnNhY3Rpb25DYXRlZ29yeTtcblxuICAvLyBUcmFuc2FjdGlvbiBhbW91bnQgKGFsd2F5cyBwb3NpdGl2ZSDigJQgdHlwZSBkZXRlcm1pbmVzIGRpcmVjdGlvbilcbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgYW1vdW50OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFJ1bm5pbmcgYmFsYW5jZSBmb3IgdGhpcyAodXNlcklkLCBzdG9yZUlkKSBwYWlyIEFGVEVSIHRoaXMgdHJhbnNhY3Rpb24uXG4gICAqIFByZXZpb3VzbHkgdGhpcyBtaXJyb3JlZCBVc2VyLndhbGxldEJhbGFuY2Ugd2hpY2ggd2FzIGdsb2JhbCDigJQgbm93IGl0XG4gICAqIGNvcnJlY3RseSByZWZsZWN0cyB0aGUgcGVyLXN0b3JlIGJhbGFuY2UuXG4gICAqL1xuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIGJhbGFuY2VBZnRlcjogbnVtYmVyO1xuXG4gIC8vIEN1cnJlbmN5IOKAlCBtdXN0IGFsd2F5cyBtYXRjaCB0aGUgc3RvcmUncyBjdXJyZW5jeVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAnS1dEJyB9KVxuICBkZWNsYXJlIGN1cnJlbmN5OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBkZXNjcmlwdGlvbkFyOiBzdHJpbmc7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gT3JkZXIpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBvcmRlcklkPzogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBleHRlcm5hbFJlZmVyZW5jZT86IHN0cmluZztcblxuICAvLyBTdGF0dXM6IHBlbmRpbmcgfCBjb21wbGV0ZWQgfCBmYWlsZWQgfCByZXZlcnNlZFxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAnY29tcGxldGVkJyB9KVxuICBkZWNsYXJlIHN0YXR1czogc3RyaW5nO1xuXG4gIC8vIOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gIEBCZWxvbmdzVG8oKCkgPT4gVXNlcilcbiAgZGVjbGFyZSB1c2VyOiBVc2VyO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gU3RvcmUpXG4gIGRlY2xhcmUgc3RvcmU/OiBTdG9yZTtcblxuICBAQmVsb25nc1RvKCgpID0+IE9yZGVyKVxuICBkZWNsYXJlIG9yZGVyPzogT3JkZXI7XG59XG4iLCJpbXBvcnQge1xuICBNb2RlbCxcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBEYXRhVHlwZSxcbiAgVW5pcXVlLFxufSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi91c2VyLmVudGl0eSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4vc3RvcmUuZW50aXR5JztcblxuLyoqXG4gKiBVc2VyV2FsbGV0QmFsYW5jZSDigJQgcGVyLXVzZXIsIHBlci1zdG9yZSB3YWxsZXQgYmFsYW5jZS5cbiAqXG4gKiBXSFk6IEEgdXNlciBtYXkgc2hvcCBpbiBtdWx0aXBsZSBzdG9yZXMgKEt1d2FpdCwgU2F1ZGksIFVBRS4uLikgZWFjaCB3aXRoXG4gKiB0aGVpciBvd24gY3VycmVuY3kuIFdhbGxldCBjcmVkaXRzIGZyb20gYSBTYXVkaSBzdG9yZSByZWZ1bmQgY2FuIG9ubHkgYmVcbiAqIHNwZW50IGluIHRoYXQgc2FtZSBzdG9yZS4gTWl4aW5nIHRoZW0gaW50byBhIHNpbmdsZSBgd2FsbGV0QmFsYW5jZWAgb24gVXNlclxuICogd291bGQgbWVhbiAzMCBLV0QgKyAxMjAgU0FSID0gbWVhbmluZ2xlc3MgMTUwLlxuICpcbiAqIE9uZSByb3cgcGVyICh1c2VySWQsIHN0b3JlSWQpIHBhaXIuIENyZWF0ZWQgb24gZmlyc3QgY3JlZGl0IGlmIGl0IGRvZXNuJ3RcbiAqIGV4aXN0IHlldCAodXBzZXJ0IHBhdHRlcm4pLlxuICovXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBVc2VyV2FsbGV0QmFsYW5jZSBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gVXNlcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB1c2VySWQ6IG51bWJlcjtcblxuICBARm9yZWlnbktleSgoKSA9PiBTdG9yZSlcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBzdG9yZUlkOiBudW1iZXI7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLkRFQ0lNQUwoMTAsIDMpLCBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IDAgfSlcbiAgZGVjbGFyZSBiYWxhbmNlOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIERlbm9ybWFsaXplZCBmcm9tIFN0b3JlLmN1cnJlbmN5IOKAlCBhdm9pZHMgYSBqb2luIGV2ZXJ5IHRpbWUgd2UgbmVlZCB0b1xuICAgKiBzaG93IHRoZSBjdXJyZW5jeSBzeW1ib2wuIFVwZGF0ZWQgYXV0b21hdGljYWxseSB3aGVuIFN0b3JlIGN1cnJlbmN5IGNoYW5nZXNcbiAgICogKHJhcmUsIGJ1dCBoYW5kbGVkIGluIFdhbGxldFNlcnZpY2UuY3JlZGl0IC8gV2FsbGV0U2VydmljZS5kZWJpdCkuXG4gICAqL1xuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSwgZGVmYXVsdFZhbHVlOiAnS1dEJyB9KVxuICBkZWNsYXJlIGN1cnJlbmN5OiBzdHJpbmc7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBVc2VyKVxuICBkZWNsYXJlIHVzZXI6IFVzZXI7XG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBTdG9yZSlcbiAgZGVjbGFyZSBzdG9yZTogU3RvcmU7XG59XG4iLCJpbXBvcnQge1xuICBNb2RlbCxcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBEYXRhVHlwZSxcbiAgSGFzTWFueSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcbmltcG9ydCB7IExhbmd1YWdlIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvbGFuZ3VhZ2UnO1xuaW1wb3J0IHsgQ291bnRyeSB9IGZyb20gJy4vY291bnRyeS5lbnRpdHknO1xuaW1wb3J0IHsgR2VuZGVyIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvZ2VuZGVyJztcbmltcG9ydCB7IFVzZXJBZGRyZXNzIH0gZnJvbSAnLi91c2VyLWFkZHJlc3MuZW50aXR5JztcbmltcG9ydCB7IENhcnQgfSBmcm9tICcuL2NhcnQuZW50aXR5JztcbmltcG9ydCB7IE9yZGVyIH0gZnJvbSAnLi9vcmRlci5lbnRpdHknO1xuaW1wb3J0IHsgVXNlclRyYW5zYWN0aW9uIH0gZnJvbSAnLi91c2VyLXRyYW5zYWN0aW9uLmVudGl0eSc7XG5pbXBvcnQgeyBVc2VyRmF2b3JpdGVDYXRhbG9nIH0gZnJvbSAnLi91c2VyLWZhdm9yaXRlLWNhdGFsb2cuZW50aXR5JztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgVXNlciBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtblxuICBkZWNsYXJlIGZpcnN0TmFtZT86IHN0cmluZztcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgbGFzdE5hbWU/OiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIHBhc3N3b3JkOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSwgZGVmYXVsdFZhbHVlOiBudWxsIH0pXG4gIGRlY2xhcmUgbGVnYWN5UGFzc3dvcmRIYXNoPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UsIHZhbGlkYXRlOiB7IGlzRW1haWw6IHsgbXNnOiAnSW52YWxpZCBFbWFpbCcgfSB9IH0pXG4gIGRlY2xhcmUgZW1haWw6IHN0cmluZztcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgcGhvbmU/OiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIHBob25lRXh0Pzogc3RyaW5nO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBiaXJ0aGRheT86IERhdGU7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIGZhY2Vib29rSWQ/OiBzdHJpbmc7XG5cbiAgQENvbHVtblxuICBkZWNsYXJlIGdvb2dsZUlkPzogc3RyaW5nO1xuXG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBhcHBsZUlkPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhMYW5ndWFnZSkpLFxuICAgIGRlZmF1bHRWYWx1ZTogTGFuZ3VhZ2UuRU5HTElTSCxcbiAgfSlcbiAgZGVjbGFyZSBwcmVmZXJyZWRMYW5ndWFnZTogTGFuZ3VhZ2U7XG5cbiAgQEZvcmVpZ25LZXkoKCkgPT4gQ291bnRyeSlcbiAgQENvbHVtblxuICBkZWNsYXJlIHByZWZlcnJlZENvdW50cnlJZD86IG51bWJlcjtcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgcHJvZmlsZVBpYz86IHN0cmluZztcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgbGFzdExvZ2luOiBEYXRlO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlLCBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaXNCbG9ja2VkOiBib29sZWFuO1xuXG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaXNWZXJpZmllZDogYm9vbGVhbjtcblxuICBAQ29sdW1uXG4gIGRlY2xhcmUgcmVmQ29kZTogc3RyaW5nO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhHZW5kZXIpKSxcbiAgICBkZWZhdWx0VmFsdWU6IEdlbmRlci5QUkVGRVJfTk9UX1RPX1NBWSxcbiAgfSlcbiAgZGVjbGFyZSBnZW5kZXI6IEdlbmRlcjtcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuREVDSU1BTCgxMCwgMyksIGFsbG93TnVsbDogZmFsc2UsIGRlZmF1bHRWYWx1ZTogMCB9KVxuICBkZWNsYXJlIHdhbGxldEJhbGFuY2U6IG51bWJlcjtcblxuICBAQmVsb25nc1RvKCgpID0+IENvdW50cnkpXG4gIGRlY2xhcmUgY291bnRyeTogQ291bnRyeTtcblxuICBASGFzTWFueSgoKSA9PiBVc2VyQWRkcmVzcylcbiAgZGVjbGFyZSBhZGRyZXNzZXM6IFVzZXJBZGRyZXNzW107XG5cbiAgQEhhc01hbnkoKCkgPT4gVXNlckZhdm9yaXRlQ2F0YWxvZylcbiAgZGVjbGFyZSBmYXZvcml0ZXM6IFVzZXJGYXZvcml0ZUNhdGFsb2dbXTtcblxuICBASGFzTWFueSgoKSA9PiBDYXJ0KVxuICBkZWNsYXJlIGNhcnRzOiBDYXJ0W107XG5cbiAgQEhhc01hbnkoKCkgPT4gT3JkZXIpXG4gIGRlY2xhcmUgb3JkZXJzOiBPcmRlcltdO1xuXG4gIEBIYXNNYW55KCgpID0+IFVzZXJUcmFuc2FjdGlvbilcbiAgZGVjbGFyZSB0cmFuc2FjdGlvbnM6IFVzZXJUcmFuc2FjdGlvbltdO1xufVxuIiwiaW1wb3J0IHtcbiAgTW9kZWwsXG4gIFRhYmxlLFxuICBDb2x1bW4sXG4gIFByaW1hcnlLZXksXG4gIEF1dG9JbmNyZW1lbnQsXG4gIENyZWF0ZWRBdCxcbiAgVXBkYXRlZEF0LFxuICBEZWxldGVkQXQsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgQmVsb25nc1RvTWFueSxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuL3VzZXIuZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5pbXBvcnQgeyBPc05hbWUgfSBmcm9tICcuLi91dGlscy9lbnVtcy9vc05hbWUnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBVc2VyRGV2aWNlIGV4dGVuZHMgTW9kZWwge1xuICBARm9yZWlnbktleSgoKSA9PiBVc2VyKVxuICBAQ29sdW1uXG4gIGRlY2xhcmUgdXNlcklkOiBudW1iZXI7XG4gIEBDb2x1bW5cbiAgZGVjbGFyZSBkZXZpY2VJZD86IHN0cmluZztcbiAgQENvbHVtblxuICBkZWNsYXJlIGZjbVRva2VuPzogc3RyaW5nO1xuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBTdGF0dXMuQUNUSVZFLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogU3RhdHVzO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhPc05hbWUpKSxcbiAgICBhbGxvd051bGw6IHRydWUsXG4gIH0pXG4gIGRlY2xhcmUgb3NTeXN0ZW06IHN0cmluZztcbiAgQEJlbG9uZ3NUbygoKSA9PiBVc2VyKVxuICBkZWNsYXJlIHVzZXI6IFVzZXI7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgVmFyaWFudFR5cGUgfSBmcm9tICcuL3ZhcmlhbnQtdHlwZS5lbnRpdHknO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcblxuQFRhYmxlXG5leHBvcnQgY2xhc3MgVmFyaWFudE9wdGlvbiBleHRlbmRzIE1vZGVsIHtcbiAgQEZvcmVpZ25LZXkoKCkgPT4gVmFyaWFudFR5cGUpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgdmFyaWFudFR5cGVJZDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgbmFtZUVuOiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lQXI6IHN0cmluZztcblxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgc29ydE9yZGVyOiBudW1iZXI7XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcblxuICBAQmVsb25nc1RvKCgpID0+IFZhcmlhbnRUeXBlKVxuICBkZWNsYXJlIHZhcmlhbnRUeXBlOiBWYXJpYW50VHlwZTtcbn1cbiIsImltcG9ydCB7IFRhYmxlLCBDb2x1bW4sIE1vZGVsLCBIYXNNYW55IH0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vdXRpbHMvZW51bXMvc3RhdHVzJztcbmltcG9ydCB7IERhdGFUeXBlIH0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuXG5AVGFibGVcbmV4cG9ydCBjbGFzcyBWYXJpYW50VHlwZSBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lRW46IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVBcjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oe1xuICAgIHR5cGU6IERhdGFUeXBlLkVOVU0oLi4uT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSxcbiAgICBkZWZhdWx0VmFsdWU6IFN0YXR1cy5BQ1RJVkUsXG4gIH0pXG4gIGRlY2xhcmUgc3RhdHVzOiBTdGF0dXM7XG59XG4iLCJpbXBvcnQge1xuICBUYWJsZSxcbiAgQ29sdW1uLFxuICBNb2RlbCxcbiAgRm9yZWlnbktleSxcbiAgQmVsb25nc1RvLFxuICBEYXRhVHlwZSxcbn0gZnJvbSAnc2VxdWVsaXplLXR5cGVzY3JpcHQnO1xuaW1wb3J0IHsgVmVuZG9yIH0gZnJvbSAnLi92ZW5kb3IuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFZlbmRvclByb2R1Y3QgZXh0ZW5kcyBNb2RlbCB7XG4gIEBGb3JlaWduS2V5KCgpID0+IFZlbmRvcilcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSB2ZW5kb3JJZDogbnVtYmVyO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3QpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IGZhbHNlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdElkOiBudW1iZXI7XG5cbiAgLy8gbnVsbCA9IGFwcGxpZXMgdG8gcHJvZHVjdCB3aXRoIG5vIHZhcmlhbnRzXG4gIEBGb3JlaWduS2V5KCgpID0+IFByb2R1Y3RWYXJpYW50KVxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcHJvZHVjdFZhcmlhbnRJZD86IG51bWJlcjtcblxuICAvLyBWZW5kb3IncyBjb3N0IHByaWNlIHRvIHVzXG4gIEBDb2x1bW4oeyB0eXBlOiBEYXRhVHlwZS5ERUNJTUFMKDEwLCAzKSwgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIGNvc3RQcmljZTogbnVtYmVyO1xuXG4gIC8vIFZlbmRvcidzIFNLVS9yZWZlcmVuY2UgY29kZSBmb3IgdGhpcyBwcm9kdWN0XG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSB2ZW5kb3JTa3U/OiBzdHJpbmc7XG5cbiAgLy8gVHlwaWNhbCBsZWFkIHRpbWUgaW4gZGF5cyBmcm9tIHRoaXMgdmVuZG9yXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBsZWFkVGltZURheXM/OiBudW1iZXI7XG5cbiAgLy8gTWluaW11bSBvcmRlciBxdWFudGl0eVxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAxIH0pXG4gIGRlY2xhcmUgbW9xOiBudW1iZXI7XG5cbiAgLy8gSXMgdGhpcyB0aGUgcHJlZmVycmVkL2RlZmF1bHQgdmVuZG9yIGZvciB0aGlzIHByb2R1Y3Q/XG4gIEBDb2x1bW4oeyBkZWZhdWx0VmFsdWU6IGZhbHNlIH0pXG4gIGRlY2xhcmUgaXNQcmVmZXJyZWQ6IGJvb2xlYW47XG5cbiAgQENvbHVtbih7XG4gICAgdHlwZTogRGF0YVR5cGUuRU5VTSguLi5PYmplY3QudmFsdWVzKFN0YXR1cykpLFxuICAgIGRlZmF1bHRWYWx1ZTogU3RhdHVzLkFDVElWRSxcbiAgfSlcbiAgZGVjbGFyZSBzdGF0dXM6IFN0YXR1cztcblxuICAvLyDilIDilIDilIAgQXNzb2NpYXRpb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIEBCZWxvbmdzVG8oKCkgPT4gVmVuZG9yKVxuICBkZWNsYXJlIHZlbmRvcjogVmVuZG9yO1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdClcbiAgZGVjbGFyZSBwcm9kdWN0OiBQcm9kdWN0O1xuXG4gIEBCZWxvbmdzVG8oKCkgPT4gUHJvZHVjdFZhcmlhbnQpXG4gIGRlY2xhcmUgdmFyaWFudD86IFByb2R1Y3RWYXJpYW50O1xufVxuIiwiaW1wb3J0IHtcbiAgVGFibGUsXG4gIENvbHVtbixcbiAgTW9kZWwsXG4gIEZvcmVpZ25LZXksXG4gIEJlbG9uZ3NUbyxcbiAgSGFzTWFueSxcbiAgRGF0YVR5cGUsXG59IGZyb20gJ3NlcXVlbGl6ZS10eXBlc2NyaXB0JztcbmltcG9ydCB7IENvdW50cnkgfSBmcm9tICcuL2NvdW50cnkuZW50aXR5JztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3V0aWxzL2VudW1zL3N0YXR1cyc7XG5cbkBUYWJsZVxuZXhwb3J0IGNsYXNzIFZlbmRvciBleHRlbmRzIE1vZGVsIHtcbiAgQENvbHVtbih7IGFsbG93TnVsbDogZmFsc2UgfSlcbiAgZGVjbGFyZSBuYW1lRW46IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiBmYWxzZSB9KVxuICBkZWNsYXJlIG5hbWVBcjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjb250YWN0UGVyc29uPzogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBlbWFpbD86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgcGhvbmU/OiBzdHJpbmc7XG5cbiAgQENvbHVtbih7IHR5cGU6IERhdGFUeXBlLlRFWFQsIGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIGFkZHJlc3NFbj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgdHlwZTogRGF0YVR5cGUuVEVYVCwgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgYWRkcmVzc0FyPzogc3RyaW5nO1xuXG4gIEBGb3JlaWduS2V5KCgpID0+IENvdW50cnkpXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBjb3VudHJ5SWQ/OiBudW1iZXI7XG5cbiAgQENvbHVtbih7IGFsbG93TnVsbDogdHJ1ZSB9KVxuICBkZWNsYXJlIHRheE51bWJlcj86IHN0cmluZztcblxuICBAQ29sdW1uKHsgYWxsb3dOdWxsOiB0cnVlIH0pXG4gIGRlY2xhcmUgY29tbWVyY2lhbFJlZ051bWJlcj86IHN0cmluZztcblxuICAvLyBEZWZhdWx0IHBheW1lbnQgdGVybXMgaW4gZGF5cyAoZS5nLiAzMCA9IE5FVDMwKVxuICBAQ29sdW1uKHsgZGVmYXVsdFZhbHVlOiAwIH0pXG4gIGRlY2xhcmUgcGF5bWVudFRlcm1zRGF5czogbnVtYmVyO1xuXG4gIEBDb2x1bW4oeyBhbGxvd051bGw6IHRydWUgfSlcbiAgZGVjbGFyZSBub3Rlcz86IHN0cmluZztcblxuICBAQ29sdW1uKHtcbiAgICB0eXBlOiBEYXRhVHlwZS5FTlVNKC4uLk9iamVjdC52YWx1ZXMoU3RhdHVzKSksXG4gICAgZGVmYXVsdFZhbHVlOiBTdGF0dXMuQUNUSVZFLFxuICB9KVxuICBkZWNsYXJlIHN0YXR1czogU3RhdHVzO1xuXG4gIC8vIOKUgOKUgOKUgCBBc3NvY2lhdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgQEJlbG9uZ3NUbygoKSA9PiBDb3VudHJ5KVxuICBkZWNsYXJlIGNvdW50cnk6IENvdW50cnk7XG59XG4iLCJpbXBvcnQgeyBNb2RlbEN0b3IgfSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5cbi8vIOKUgOKUgOKUgCBFeGlzdGluZyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmltcG9ydCB7IENvdW50cnkgfSBmcm9tICcuL2VudGl0aWVzL2NvdW50cnkuZW50aXR5JztcbmltcG9ydCB7IEFyZWEgfSBmcm9tICcuL2VudGl0aWVzL2FyZWEuZW50aXR5JztcbmltcG9ydCB7IFN5c1JvbGUgfSBmcm9tICcuL2VudGl0aWVzL3N5cy5yb2xlLmVudGl0eSc7XG5pbXBvcnQgeyBTeXNVc2VyIH0gZnJvbSAnLi9lbnRpdGllcy9zeXMudXNlci5lbnRpdHknO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4vZW50aXRpZXMvdXNlci5lbnRpdHknO1xuaW1wb3J0IHsgVXNlckRldmljZSB9IGZyb20gJy4vZW50aXRpZXMvdXNlckRldmljZS5lbnRpdHknO1xuaW1wb3J0IHsgQXBpS2V5IH0gZnJvbSAnLi9lbnRpdGllcy9hcGlrZXkuZW50aXR5JztcbmltcG9ydCB7IFVzZXJBZGRyZXNzIH0gZnJvbSAnLi9lbnRpdGllcy91c2VyLWFkZHJlc3MuZW50aXR5JztcbmltcG9ydCB7IFVzZXJGYXZvcml0ZSB9IGZyb20gJy4vZW50aXRpZXMvdXNlci1mYXZvcml0ZS5lbnRpdHknO1xuaW1wb3J0IHsgVXNlckZhdm9yaXRlQ2F0YWxvZyB9IGZyb20gJy4vZW50aXRpZXMvdXNlci1mYXZvcml0ZS1jYXRhbG9nLmVudGl0eSc7XG5pbXBvcnQgeyBCYW5uZXIgfSBmcm9tICcuL2VudGl0aWVzL2Jhbm5lci5lbnRpdHknO1xuaW1wb3J0IHsgQXBwQ29uZmlnIH0gZnJvbSAnLi9lbnRpdGllcy9hcHAtY29uZmlnLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBDYXRhbG9ndWUg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5pbXBvcnQgeyBDYXRlZ29yeSB9IGZyb20gJy4vZW50aXRpZXMvY2F0ZWdvcnkuZW50aXR5JztcbmltcG9ydCB7IEJyYW5kIH0gZnJvbSAnLi9lbnRpdGllcy9icmFuZC5lbnRpdHknO1xuaW1wb3J0IHsgVmFyaWFudFR5cGUgfSBmcm9tICcuL2VudGl0aWVzL3ZhcmlhbnQtdHlwZS5lbnRpdHknO1xuaW1wb3J0IHsgVmFyaWFudE9wdGlvbiB9IGZyb20gJy4vZW50aXRpZXMvdmFyaWFudC1vcHRpb24uZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICcuL2VudGl0aWVzL3Byb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RNZWRpYSB9IGZyb20gJy4vZW50aXRpZXMvcHJvZHVjdC1tZWRpYS5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFZhcmlhbnQgfSBmcm9tICcuL2VudGl0aWVzL3Byb2R1Y3QtdmFyaWFudC5lbnRpdHknO1xuaW1wb3J0IHsgUHJvZHVjdFZhcmlhbnRPcHRpb24gfSBmcm9tICcuL2VudGl0aWVzL3Byb2R1Y3QtdmFyaWFudC1vcHRpb24uZW50aXR5JztcbmltcG9ydCB7IFRhZyB9IGZyb20gJy4vZW50aXRpZXMvdGFnLmVudGl0eSc7XG5pbXBvcnQgeyBQcm9kdWN0VGFnIH0gZnJvbSAnLi9lbnRpdGllcy9wcm9kdWN0LXRhZy5lbnRpdHknO1xuaW1wb3J0IHsgQnVuZGxlIH0gZnJvbSAnLi9lbnRpdGllcy9idW5kbGUuZW50aXR5JztcbmltcG9ydCB7IEJ1bmRsZVByb2R1Y3QgfSBmcm9tICcuL2VudGl0aWVzL2J1bmRsZS1wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBCdW5kbGVTdG9yZSB9IGZyb20gJy4vZW50aXRpZXMvYnVuZGxlLXN0b3JlLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBTdG9yZXMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4vZW50aXRpZXMvc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IFByb2R1Y3RTdG9yZSB9IGZyb20gJy4vZW50aXRpZXMvcHJvZHVjdC1zdG9yZS5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgSW52ZW50b3J5IOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuaW1wb3J0IHsgSW52ZW50b3J5IH0gZnJvbSAnLi9lbnRpdGllcy9pbnZlbnRvcnkuZW50aXR5JztcbmltcG9ydCB7IFN0b3JlSW52ZW50b3J5IH0gZnJvbSAnLi9lbnRpdGllcy9zdG9yZS1pbnZlbnRvcnkuZW50aXR5JztcbmltcG9ydCB7IEludmVudG9yeVN0b2NrIH0gZnJvbSAnLi9lbnRpdGllcy9pbnZlbnRvcnktc3RvY2suZW50aXR5JztcbmltcG9ydCB7IFN0b2NrTW92ZW1lbnQgfSBmcm9tICcuL2VudGl0aWVzL3N0b2NrLW1vdmVtZW50LmVudGl0eSc7XG5pbXBvcnQgeyBTaGlwcGluZ1J1bGUgfSBmcm9tICcuL2VudGl0aWVzL3NoaXBwaW5nLXJ1bGUuZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIFB1cmNoYXNpbmcg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5pbXBvcnQgeyBWZW5kb3IgfSBmcm9tICcuL2VudGl0aWVzL3ZlbmRvci5lbnRpdHknO1xuaW1wb3J0IHsgVmVuZG9yUHJvZHVjdCB9IGZyb20gJy4vZW50aXRpZXMvdmVuZG9yLXByb2R1Y3QuZW50aXR5JztcbmltcG9ydCB7IFB1cmNoYXNlT3JkZXIgfSBmcm9tICcuL2VudGl0aWVzL3B1cmNoYXNlLW9yZGVyLmVudGl0eSc7XG5pbXBvcnQgeyBQdXJjaGFzZU9yZGVySXRlbSB9IGZyb20gJy4vZW50aXRpZXMvcHVyY2hhc2Utb3JkZXItaXRlbS5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgUGVybWlzc2lvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5pbXBvcnQgeyBQZXJtaXNzaW9uIH0gZnJvbSAnLi9lbnRpdGllcy9wZXJtaXNzaW9uLmVudGl0eSc7XG5pbXBvcnQgeyBSb2xlUGVybWlzc2lvbiB9IGZyb20gJy4vZW50aXRpZXMvcm9sZS1wZXJtaXNzaW9uLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBQYXltZW50IE1ldGhvZHMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5pbXBvcnQgeyBQYXltZW50R2F0ZXdheSB9IGZyb20gJy4vZW50aXRpZXMvcGF5bWVudC1nYXRld2F5LmVudGl0eSc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kIH0gZnJvbSAnLi9lbnRpdGllcy9wYXltZW50LW1ldGhvZC5lbnRpdHknO1xuaW1wb3J0IHsgUGF5bWVudE1ldGhvZENvdW50cnkgfSBmcm9tICcuL2VudGl0aWVzL3BheW1lbnQtbWV0aG9kLWNvdW50cnkuZW50aXR5JztcbmltcG9ydCB7IFN0b3JlUGF5bWVudE1ldGhvZCB9IGZyb20gJy4vZW50aXRpZXMvc3RvcmUtcGF5bWVudC1tZXRob2QuZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIENhcnRzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuaW1wb3J0IHsgQ2FydCB9IGZyb20gJy4vZW50aXRpZXMvY2FydC5lbnRpdHknO1xuaW1wb3J0IHsgQ2FydEl0ZW0gfSBmcm9tICcuL2VudGl0aWVzL2NhcnQtaXRlbS5lbnRpdHknO1xuaW1wb3J0IHsgQ2FydEl0ZW1CdW5kbGVTZWxlY3Rpb24gfSBmcm9tICcuL2VudGl0aWVzL2NhcnQtaXRlbS1idW5kbGUtc2VsZWN0aW9uLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBDb3Vwb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuaW1wb3J0IHsgQ291cG9uIH0gZnJvbSAnLi9lbnRpdGllcy9jb3Vwb24uZW50aXR5JztcbmltcG9ydCB7IENvdXBvblN0b3JlIH0gZnJvbSAnLi9lbnRpdGllcy9jb3Vwb24tc3RvcmUuZW50aXR5JztcbmltcG9ydCB7IENvdXBvblByb2R1Y3QgfSBmcm9tICcuL2VudGl0aWVzL2NvdXBvbi1wcm9kdWN0LmVudGl0eSc7XG5pbXBvcnQgeyBDb3Vwb25Vc2VyIH0gZnJvbSAnLi9lbnRpdGllcy9jb3Vwb24tdXNlci5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgT3JkZXJzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuaW1wb3J0IHsgT3JkZXJTdGF0dXMgfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLXN0YXR1cy5lbnRpdHknO1xuaW1wb3J0IHsgT3JkZXIgfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLmVudGl0eSc7XG5pbXBvcnQgeyBPcmRlckl0ZW0gfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLWl0ZW0uZW50aXR5JztcbmltcG9ydCB7IE9yZGVySXRlbUJ1bmRsZVNlbGVjdGlvbiB9IGZyb20gJy4vZW50aXRpZXMvb3JkZXItaXRlbS1idW5kbGUtc2VsZWN0aW9uLmVudGl0eSc7XG5pbXBvcnQgeyBPcmRlclN0YXR1c0hpc3RvcnkgfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLXN0YXR1cy1oaXN0b3J5LmVudGl0eSc7XG5pbXBvcnQgeyBVc2VyVHJhbnNhY3Rpb24gfSBmcm9tICcuL2VudGl0aWVzL3VzZXItdHJhbnNhY3Rpb24uZW50aXR5JztcbmltcG9ydCB7IFB1cmNoYXNlT3JkZXJPcmRlckl0ZW0gfSBmcm9tICcuL2VudGl0aWVzL3B1cmNoYXNlLW9yZGVyLW9yZGVyLWl0ZW0uZW50aXR5JztcbmltcG9ydCB7IFJ1blNoZWV0IH0gZnJvbSAnLi9lbnRpdGllcy9ydW4tc2hlZXQuZW50aXR5JztcbmltcG9ydCB7IFJ1blNoZWV0T3JkZXIgfSBmcm9tICcuL2VudGl0aWVzL3J1bi1zaGVldC1vcmRlci5lbnRpdHknO1xuaW1wb3J0IHsgUmVmdW5kIH0gZnJvbSAnLi9lbnRpdGllcy9yZWZ1bmQuZW50aXR5JztcbmltcG9ydCB7IFB1cmNoYXNlT3JkZXJSZWNlaXB0IH0gZnJvbSAnLi9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci1yZWNlaXB0LmVudGl0eSc7XG5pbXBvcnQgeyBQdXJjaGFzZU9yZGVyUmVjZWlwdEl0ZW0gfSBmcm9tICcuL2VudGl0aWVzL3B1cmNoYXNlLW9yZGVyLXJlY2VpcHQtaXRlbS5lbnRpdHknO1xuaW1wb3J0IHsgVXNlcldhbGxldEJhbGFuY2UgfSBmcm9tICcuL2VudGl0aWVzL3VzZXItd2FsbGV0LWJhbGFuY2UuZW50aXR5JztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEVYUE9SVFNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIOKUgOKUgOKUgCBFeGlzdGluZyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7IEFwaUtleSB9IGZyb20gJy4vZW50aXRpZXMvYXBpa2V5LmVudGl0eSc7XG5leHBvcnQgeyBDb3VudHJ5IH0gZnJvbSAnLi9lbnRpdGllcy9jb3VudHJ5LmVudGl0eSc7XG5leHBvcnQgeyBBcmVhIH0gZnJvbSAnLi9lbnRpdGllcy9hcmVhLmVudGl0eSc7XG5leHBvcnQgeyBTeXNSb2xlIH0gZnJvbSAnLi9lbnRpdGllcy9zeXMucm9sZS5lbnRpdHknO1xuZXhwb3J0IHsgU3lzVXNlciB9IGZyb20gJy4vZW50aXRpZXMvc3lzLnVzZXIuZW50aXR5JztcbmV4cG9ydCB7IFVzZXIgfSBmcm9tICcuL2VudGl0aWVzL3VzZXIuZW50aXR5JztcbmV4cG9ydCB7IFVzZXJEZXZpY2UgfSBmcm9tICcuL2VudGl0aWVzL3VzZXJEZXZpY2UuZW50aXR5JztcbmV4cG9ydCB7IFVzZXJBZGRyZXNzIH0gZnJvbSAnLi9lbnRpdGllcy91c2VyLWFkZHJlc3MuZW50aXR5JztcbmV4cG9ydCB7IFVzZXJGYXZvcml0ZSB9IGZyb20gJy4vZW50aXRpZXMvdXNlci1mYXZvcml0ZS5lbnRpdHknO1xuZXhwb3J0IHtcbiAgVXNlckZhdm9yaXRlQ2F0YWxvZyxcbiAgRmF2b3JpdGVDYXRhbG9nSXRlbVR5cGUsXG59IGZyb20gJy4vZW50aXRpZXMvdXNlci1mYXZvcml0ZS1jYXRhbG9nLmVudGl0eSc7XG5leHBvcnQge1xuICBCYW5uZXIsXG4gIEJhbm5lclBsYWNlbWVudCxcbiAgQmFubmVyU3RhdHVzLFxuICBCYW5uZXJGaWx0ZXJzLFxufSBmcm9tICcuL2VudGl0aWVzL2Jhbm5lci5lbnRpdHknO1xuZXhwb3J0IHsgQXBwQ29uZmlnIH0gZnJvbSAnLi9lbnRpdGllcy9hcHAtY29uZmlnLmVudGl0eSc7XG5leHBvcnQgeyBSdW5TaGVldCwgUnVuU2hlZXRTdGF0dXMgfSBmcm9tICcuL2VudGl0aWVzL3J1bi1zaGVldC5lbnRpdHknO1xuZXhwb3J0IHtcbiAgUnVuU2hlZXRPcmRlcixcbiAgUnVuU2hlZXRPcmRlclN0YXR1cyxcbn0gZnJvbSAnLi9lbnRpdGllcy9ydW4tc2hlZXQtb3JkZXIuZW50aXR5JztcblxuZXhwb3J0IHsgUmVmdW5kLCBSZWZ1bmRNZXRob2QsIFJlZnVuZFN0YXR1cyB9IGZyb20gJy4vZW50aXRpZXMvcmVmdW5kLmVudGl0eSc7XG5leHBvcnQgeyBVc2VyV2FsbGV0QmFsYW5jZSB9IGZyb20gJy4vZW50aXRpZXMvdXNlci13YWxsZXQtYmFsYW5jZS5lbnRpdHknO1xuXG5cblxuLy8g4pSA4pSA4pSAIENhdGFsb2d1ZSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7IENhdGVnb3J5IH0gZnJvbSAnLi9lbnRpdGllcy9jYXRlZ29yeS5lbnRpdHknO1xuZXhwb3J0IHsgQnJhbmQgfSBmcm9tICcuL2VudGl0aWVzL2JyYW5kLmVudGl0eSc7XG5leHBvcnQgeyBWYXJpYW50VHlwZSB9IGZyb20gJy4vZW50aXRpZXMvdmFyaWFudC10eXBlLmVudGl0eSc7XG5leHBvcnQgeyBWYXJpYW50T3B0aW9uIH0gZnJvbSAnLi9lbnRpdGllcy92YXJpYW50LW9wdGlvbi5lbnRpdHknO1xuZXhwb3J0IHsgUHJvZHVjdCB9IGZyb20gJy4vZW50aXRpZXMvcHJvZHVjdC5lbnRpdHknO1xuZXhwb3J0IHsgUHJvZHVjdE1lZGlhLCBNZWRpYVR5cGUgfSBmcm9tICcuL2VudGl0aWVzL3Byb2R1Y3QtbWVkaWEuZW50aXR5JztcbmV4cG9ydCB7IFByb2R1Y3RWYXJpYW50IH0gZnJvbSAnLi9lbnRpdGllcy9wcm9kdWN0LXZhcmlhbnQuZW50aXR5JztcbmV4cG9ydCB7IFByb2R1Y3RWYXJpYW50T3B0aW9uIH0gZnJvbSAnLi9lbnRpdGllcy9wcm9kdWN0LXZhcmlhbnQtb3B0aW9uLmVudGl0eSc7XG5leHBvcnQgeyBUYWcgfSBmcm9tICcuL2VudGl0aWVzL3RhZy5lbnRpdHknO1xuZXhwb3J0IHsgUHJvZHVjdFRhZyB9IGZyb20gJy4vZW50aXRpZXMvcHJvZHVjdC10YWcuZW50aXR5JztcbmV4cG9ydCB7IEJ1bmRsZSB9IGZyb20gJy4vZW50aXRpZXMvYnVuZGxlLmVudGl0eSc7XG5leHBvcnQgeyBCdW5kbGVQcm9kdWN0IH0gZnJvbSAnLi9lbnRpdGllcy9idW5kbGUtcHJvZHVjdC5lbnRpdHknO1xuZXhwb3J0IHsgQnVuZGxlU3RvcmUgfSBmcm9tICcuL2VudGl0aWVzL2J1bmRsZS1zdG9yZS5lbnRpdHknO1xuXG4vLyDilIDilIDilIAgU3RvcmVzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuZXhwb3J0IHsgU3RvcmUgfSBmcm9tICcuL2VudGl0aWVzL3N0b3JlLmVudGl0eSc7XG5leHBvcnQgeyBQcm9kdWN0U3RvcmUgfSBmcm9tICcuL2VudGl0aWVzL3Byb2R1Y3Qtc3RvcmUuZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIEludmVudG9yeSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7IEludmVudG9yeSB9IGZyb20gJy4vZW50aXRpZXMvaW52ZW50b3J5LmVudGl0eSc7XG5leHBvcnQgeyBTdG9yZUludmVudG9yeSB9IGZyb20gJy4vZW50aXRpZXMvc3RvcmUtaW52ZW50b3J5LmVudGl0eSc7XG5leHBvcnQgeyBJbnZlbnRvcnlTdG9jayB9IGZyb20gJy4vZW50aXRpZXMvaW52ZW50b3J5LXN0b2NrLmVudGl0eSc7XG5leHBvcnQgeyBTdG9ja01vdmVtZW50IH0gZnJvbSAnLi9lbnRpdGllcy9zdG9jay1tb3ZlbWVudC5lbnRpdHknO1xuZXhwb3J0IHsgU2hpcHBpbmdSdWxlIH0gZnJvbSAnLi9lbnRpdGllcy9zaGlwcGluZy1ydWxlLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBQdXJjaGFzaW5nIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuZXhwb3J0IHsgVmVuZG9yIH0gZnJvbSAnLi9lbnRpdGllcy92ZW5kb3IuZW50aXR5JztcbmV4cG9ydCB7IFZlbmRvclByb2R1Y3QgfSBmcm9tICcuL2VudGl0aWVzL3ZlbmRvci1wcm9kdWN0LmVudGl0eSc7XG5leHBvcnQgeyBQdXJjaGFzZU9yZGVyIH0gZnJvbSAnLi9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci5lbnRpdHknO1xuZXhwb3J0IHtcbiAgUHVyY2hhc2VPcmRlckl0ZW0sXG4gIFB1cmNoYXNlT3JkZXJJdGVtU3RhdHVzLFxufSBmcm9tICcuL2VudGl0aWVzL3B1cmNoYXNlLW9yZGVyLWl0ZW0uZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIFBlcm1pc3Npb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG5leHBvcnQgeyBQZXJtaXNzaW9uIH0gZnJvbSAnLi9lbnRpdGllcy9wZXJtaXNzaW9uLmVudGl0eSc7XG5leHBvcnQgeyBSb2xlUGVybWlzc2lvbiB9IGZyb20gJy4vZW50aXRpZXMvcm9sZS1wZXJtaXNzaW9uLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBQYXltZW50IE1ldGhvZHMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5leHBvcnQge1xuICBQYXltZW50R2F0ZXdheSxcbiAgUGF5bWVudEdhdGV3YXlUeXBlLFxufSBmcm9tICcuL2VudGl0aWVzL3BheW1lbnQtZ2F0ZXdheS5lbnRpdHknO1xuZXhwb3J0IHtcbiAgUGF5bWVudE1ldGhvZCxcbiAgUGF5bWVudE1ldGhvZFR5cGUsXG59IGZyb20gJy4vZW50aXRpZXMvcGF5bWVudC1tZXRob2QuZW50aXR5JztcbmV4cG9ydCB7IFBheW1lbnRNZXRob2RDb3VudHJ5IH0gZnJvbSAnLi9lbnRpdGllcy9wYXltZW50LW1ldGhvZC1jb3VudHJ5LmVudGl0eSc7XG5leHBvcnQgeyBTdG9yZVBheW1lbnRNZXRob2QgfSBmcm9tICcuL2VudGl0aWVzL3N0b3JlLXBheW1lbnQtbWV0aG9kLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBDYXJ0cyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7IENhcnQsIENhcnRTdGF0dXMgfSBmcm9tICcuL2VudGl0aWVzL2NhcnQuZW50aXR5JztcbmV4cG9ydCB7IENhcnRJdGVtLCBDYXJ0SXRlbVR5cGUgfSBmcm9tICcuL2VudGl0aWVzL2NhcnQtaXRlbS5lbnRpdHknO1xuZXhwb3J0IHsgQ2FydEl0ZW1CdW5kbGVTZWxlY3Rpb24gfSBmcm9tICcuL2VudGl0aWVzL2NhcnQtaXRlbS1idW5kbGUtc2VsZWN0aW9uLmVudGl0eSc7XG5cbi8vIOKUgOKUgOKUgCBDb3Vwb25zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuZXhwb3J0IHtcbiAgQ291cG9uLFxuICBDb3Vwb25EaXNjb3VudFR5cGUsXG4gIENvdXBvbkFwcGxpZXNUbyxcbiAgQ291cG9uT3NUYXJnZXQsXG59IGZyb20gJy4vZW50aXRpZXMvY291cG9uLmVudGl0eSc7XG5leHBvcnQgeyBDb3Vwb25TdG9yZSB9IGZyb20gJy4vZW50aXRpZXMvY291cG9uLXN0b3JlLmVudGl0eSc7XG5leHBvcnQgeyBDb3Vwb25Qcm9kdWN0IH0gZnJvbSAnLi9lbnRpdGllcy9jb3Vwb24tcHJvZHVjdC5lbnRpdHknO1xuZXhwb3J0IHsgQ291cG9uVXNlciB9IGZyb20gJy4vZW50aXRpZXMvY291cG9uLXVzZXIuZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIE9yZGVycyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmV4cG9ydCB7IE9yZGVyU3RhdHVzLCBPcmRlclN0YXR1c0NvZGUgfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLXN0YXR1cy5lbnRpdHknO1xuZXhwb3J0IHsgT3JkZXIgfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLmVudGl0eSc7XG5leHBvcnQge1xuICBPcmRlckl0ZW0sXG4gIE9yZGVySXRlbVR5cGUsXG4gIE9yZGVySXRlbUZ1bGZpbGxtZW50U3RhdHVzLFxufSBmcm9tICcuL2VudGl0aWVzL29yZGVyLWl0ZW0uZW50aXR5JztcbmV4cG9ydCB7IE9yZGVySXRlbUJ1bmRsZVNlbGVjdGlvbiB9IGZyb20gJy4vZW50aXRpZXMvb3JkZXItaXRlbS1idW5kbGUtc2VsZWN0aW9uLmVudGl0eSc7XG5leHBvcnQgeyBPcmRlclN0YXR1c0hpc3RvcnkgfSBmcm9tICcuL2VudGl0aWVzL29yZGVyLXN0YXR1cy1oaXN0b3J5LmVudGl0eSc7XG5leHBvcnQge1xuICBVc2VyVHJhbnNhY3Rpb24sXG4gIFRyYW5zYWN0aW9uVHlwZSxcbiAgVHJhbnNhY3Rpb25DYXRlZ29yeSxcbn0gZnJvbSAnLi9lbnRpdGllcy91c2VyLXRyYW5zYWN0aW9uLmVudGl0eSc7XG5leHBvcnQgeyBQdXJjaGFzZU9yZGVyT3JkZXJJdGVtIH0gZnJvbSAnLi9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci1vcmRlci1pdGVtLmVudGl0eSc7XG5leHBvcnQgeyBQdXJjaGFzZU9yZGVyUmVjZWlwdCB9IGZyb20gJy4vZW50aXRpZXMvcHVyY2hhc2Utb3JkZXItcmVjZWlwdC5lbnRpdHknO1xuZXhwb3J0IHsgUHVyY2hhc2VPcmRlclJlY2VpcHRJdGVtIH0gZnJvbSAnLi9lbnRpdGllcy9wdXJjaGFzZS1vcmRlci1yZWNlaXB0LWl0ZW0uZW50aXR5JztcblxuLy8g4pSA4pSA4pSAIEVudW1zIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuZXhwb3J0IHsgT3NOYW1lIH0gZnJvbSAnLi91dGlscy9lbnVtcy9vc05hbWUnO1xuZXhwb3J0IHsgUHJvZHVjdEFwcCB9IGZyb20gJy4vdXRpbHMvZW51bXMvcHJvZHVjdEFwcCc7XG5leHBvcnQgeyBWZXJzaW9uVHlwZSB9IGZyb20gJy4vdXRpbHMvZW51bXMvdmVyc2lvbnR5cGUnO1xuZXhwb3J0IHsgTGFuZ3VhZ2UgfSBmcm9tICcuL3V0aWxzL2VudW1zL2xhbmd1YWdlJztcbmV4cG9ydCB7IFN0YXR1cyB9IGZyb20gJy4vdXRpbHMvZW51bXMvc3RhdHVzJztcbmV4cG9ydCB7IEdlbmRlciB9IGZyb20gJy4vdXRpbHMvZW51bXMvZ2VuZGVyJztcbmV4cG9ydCB7IFB1cmNoYXNlT3JkZXJTdGF0dXMgfSBmcm9tICcuL3V0aWxzL2VudW1zL3B1cmNoYXNlT3JkZXJTdGF0dXMnO1xuZXhwb3J0IHsgU3RvY2tNb3ZlbWVudFR5cGUgfSBmcm9tICcuL3V0aWxzL2VudW1zL3N0b2NrTW92ZW1lbnRUeXBlJztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1PREVMIFJFR0lTVFJZXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGJNb2RlbHMoKTogTW9kZWxDdG9yW10ge1xuICByZXR1cm4gW1xuICAgIC8vIEV4aXN0aW5nXG4gICAgQXBpS2V5LFxuICAgIEFyZWEsXG4gICAgQ291bnRyeSxcbiAgICBTeXNSb2xlLFxuICAgIFN5c1VzZXIsXG4gICAgVXNlcixcbiAgICBVc2VyRGV2aWNlLFxuICAgIFVzZXJBZGRyZXNzLFxuICAgIFVzZXJGYXZvcml0ZSxcbiAgICBVc2VyRmF2b3JpdGVDYXRhbG9nLFxuICAgIFVzZXJUcmFuc2FjdGlvbixcbiAgICBVc2VyV2FsbGV0QmFsYW5jZSxcblxuICAgIC8vIENhdGFsb2d1ZVxuICAgIENhdGVnb3J5LFxuICAgIEJyYW5kLFxuICAgIFZhcmlhbnRUeXBlLFxuICAgIFZhcmlhbnRPcHRpb24sXG4gICAgUHJvZHVjdCxcbiAgICBQcm9kdWN0TWVkaWEsXG4gICAgUHJvZHVjdFZhcmlhbnQsXG4gICAgUHJvZHVjdFZhcmlhbnRPcHRpb24sXG4gICAgVGFnLFxuICAgIFByb2R1Y3RUYWcsXG4gICAgQnVuZGxlLFxuICAgIEJ1bmRsZVByb2R1Y3QsXG4gICAgQnVuZGxlU3RvcmUsXG5cbiAgICAvLyBTdG9yZXNcbiAgICBTdG9yZSxcbiAgICBQcm9kdWN0U3RvcmUsXG5cbiAgICAvLyBJbnZlbnRvcnlcbiAgICBJbnZlbnRvcnksXG4gICAgU3RvcmVJbnZlbnRvcnksXG4gICAgSW52ZW50b3J5U3RvY2ssXG4gICAgU3RvY2tNb3ZlbWVudCxcbiAgICBTaGlwcGluZ1J1bGUsXG5cbiAgICAvLyBQdXJjaGFzaW5nXG4gICAgVmVuZG9yLFxuICAgIFZlbmRvclByb2R1Y3QsXG4gICAgUHVyY2hhc2VPcmRlcixcbiAgICBQdXJjaGFzZU9yZGVySXRlbSxcblxuICAgIC8vIFBlcm1pc3Npb25zXG4gICAgUGVybWlzc2lvbixcbiAgICBSb2xlUGVybWlzc2lvbixcblxuICAgIC8vIFBheW1lbnRcbiAgICBQYXltZW50R2F0ZXdheSxcbiAgICBQYXltZW50TWV0aG9kLFxuICAgIFBheW1lbnRNZXRob2RDb3VudHJ5LFxuICAgIFN0b3JlUGF5bWVudE1ldGhvZCxcblxuICAgIC8vIENhcnRcbiAgICBDYXJ0LFxuICAgIENhcnRJdGVtLFxuICAgIENhcnRJdGVtQnVuZGxlU2VsZWN0aW9uLFxuXG4gICAgLy9Db3Vwb25cbiAgICBDb3Vwb24sXG4gICAgQ291cG9uU3RvcmUsXG4gICAgQ291cG9uUHJvZHVjdCxcbiAgICBDb3Vwb25Vc2VyLFxuXG4gICAgLy8gT3JkZXJzXG4gICAgT3JkZXJTdGF0dXMsXG4gICAgT3JkZXIsXG4gICAgT3JkZXJJdGVtLFxuICAgIE9yZGVySXRlbUJ1bmRsZVNlbGVjdGlvbixcbiAgICBPcmRlclN0YXR1c0hpc3RvcnksXG4gICAgUHVyY2hhc2VPcmRlck9yZGVySXRlbSxcblxuICAgIC8vIEJhbm5lcnNcbiAgICBCYW5uZXIsXG5cbiAgICBBcHBDb25maWcsXG5cbiAgICBSdW5TaGVldCxcbiAgICBSdW5TaGVldE9yZGVyLFxuXG4gICAgUmVmdW5kLFxuICAgIFB1cmNoYXNlT3JkZXJSZWNlaXB0LFxuICAgIFB1cmNoYXNlT3JkZXJSZWNlaXB0SXRlbSxcbiAgXTtcbn1cbiIsImV4cG9ydCBlbnVtIEdlbmRlciB7XG4gIE1BTEUgPSAnTWFsZScsXG4gIEZFTUFMRSA9ICdGZW1hbGUnLFxuICBQUkVGRVJfTk9UX1RPX1NBWSA9ICdQcmVmZXIgbm90IHRvIHNheScsXG59XG4iLCJleHBvcnQgZW51bSBMYW5ndWFnZSB7XG4gIEVOR0xJU0ggPSAnZW4nLFxuICBBUkFCSUMgPSAnYXInLFxufVxuIiwiZXhwb3J0IGVudW0gT3NOYW1lIHtcbiAgQU5EUk9JRCA9ICdhbmRyb2lkJyxcbiAgSU9TID0gJ2lPUycsXG4gIFdFQiA9ICd3ZWInLFxufVxuIiwiZXhwb3J0IGVudW0gUHJvZHVjdEFwcCB7XG4gIERBU0hCT0FSRCA9ICdkYXNoYm9hcmQnLFxuICBVU0VSX0FQUCA9ICd1c2VyYXBwJyxcbn1cbiIsImV4cG9ydCBlbnVtIFB1cmNoYXNlT3JkZXJTdGF0dXMge1xuICBEUkFGVCA9ICdkcmFmdCcsXG4gIFNFTlRfVE9fVkVORE9SID0gJ3NlbnRfdG9fdmVuZG9yJyxcbiAgUEFSVElBTExZX1JFQ0VJVkVEID0gJ3BhcnRpYWxseV9yZWNlaXZlZCcsXG4gIEZVTExZX1JFQ0VJVkVEID0gJ2Z1bGx5X3JlY2VpdmVkJyxcbiAgQ0xPU0VEID0gJ2Nsb3NlZCcsXG4gIENBTkNFTExFRCA9ICdjYW5jZWxsZWQnLFxufVxuIiwiZXhwb3J0IGVudW0gU3RhdHVzIHtcbiAgQUNUSVZFID0gJ2FjdGl2ZScsXG4gIElOX0FDVElWRSA9ICdpbmFjdGl2ZScsXG59XG4iLCJleHBvcnQgZW51bSBTdG9ja01vdmVtZW50VHlwZSB7XG4gIC8vIFN0b2NrIGNvbWluZyBpblxuICBSRUNFSVZFRCA9ICdyZWNlaXZlZCcsICAgICAgICAgICAvLyBQTyByZWNlaXZlZCBpbnRvIGludmVudG9yeVxuXG4gIC8vIFN0b2NrIGdvaW5nIG91dCBvciBiZWluZyBoZWxkXG4gIFJFU0VSVkVEID0gJ3Jlc2VydmVkJywgICAgICAgICAgIC8vIFJlc2VydmVkIGZvciBhIHBlbmRpbmcgb3JkZXJcbiAgUkVTRVJWQVRJT05fUkVMRUFTRUQgPSAncmVzZXJ2YXRpb25fcmVsZWFzZWQnLCAvLyBPcmRlciBjYW5jZWxsZWQsIHN0b2NrIGZyZWVkXG5cbiAgLy8gTWFudWFsIGFkanVzdG1lbnRzXG4gIEFESlVTVE1FTlRfQUREID0gJ2FkanVzdG1lbnRfYWRkJywgICAgICAgLy8gTWFudWFsIHN0b2NrIGluY3JlYXNlXG4gIEFESlVTVE1FTlRfUkVNT1ZFID0gJ2FkanVzdG1lbnRfcmVtb3ZlJywgLy8gTWFudWFsIHN0b2NrIGRlY3JlYXNlIChkYW1hZ2UsIGxvc3MpXG5cbiAgLy8gUmV0dXJuc1xuICBSRVRVUk5FRF9GUk9NX0NVU1RPTUVSID0gJ3JldHVybmVkX2Zyb21fY3VzdG9tZXInLFxuICBSRVRVUk5FRF9UT19WRU5ET1IgPSAncmV0dXJuZWRfdG9fdmVuZG9yJyxcblxuICAvLyBUcmFuc2ZlcnNcbiAgVFJBTlNGRVJfSU4gPSAndHJhbnNmZXJfaW4nLCAgIC8vIE1vdmVkIGluIGZyb20gYW5vdGhlciBpbnZlbnRvcnlcbiAgVFJBTlNGRVJfT1VUID0gJ3RyYW5zZmVyX291dCcsIC8vIE1vdmVkIG91dCB0byBhbm90aGVyIGludmVudG9yeVxufVxuIiwiZXhwb3J0IGVudW0gVmVyc2lvblR5cGUge1xuICBPUFRJT05BTCA9ICdvcHRpb25hbCcsXG4gIE1BTkRBVE9SWSA9ICdtYW5kYXRvcnknLFxufVxuIiwiaW1wb3J0IHsgTW9kdWxlIH0gZnJvbSAnQG5lc3Rqcy9jb21tb24nO1xuaW1wb3J0IHsgU2VxdWVsaXplTW9kdWxlIH0gZnJvbSAnQG5lc3Rqcy9zZXF1ZWxpemUnO1xuaW1wb3J0IHsgQ29uZmlnTW9kdWxlIH0gZnJvbSAnQG5lc3Rqcy9jb25maWcnO1xuaW1wb3J0IHsgZ2V0RGJNb2RlbHMgfSBmcm9tICdAYXBwL3RhdGF5YWItZW50aXRpZXMtbGlicmFyeSc7XG5cbkBNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29uZmlnTW9kdWxlLmZvclJvb3Qoe1xuICAgICAgaXNHbG9iYWw6IHRydWUsXG4gICAgfSksXG4gICAgU2VxdWVsaXplTW9kdWxlLmZvclJvb3Qoe1xuICAgICAgZGlhbGVjdDogJ215c3FsJyxcbiAgICAgIGhvc3Q6IHByb2Nlc3MuZW52Lk1ZU1FMX0hPU1QsXG4gICAgICBkYXRhYmFzZTogcHJvY2Vzcy5lbnYuTVlTUUxfREFUQUJBU0UsXG4gICAgICB1c2VybmFtZTogcHJvY2Vzcy5lbnYuTVlTUUxfVVNFUixcbiAgICAgIHBhc3N3b3JkOiBwcm9jZXNzLmVudi5NWVNRTF9QQVNTV09SRCxcbiAgICAgIHBvcnQ6IDMzMDYsXG4gICAgICBtb2RlbHM6IGdldERiTW9kZWxzKCksXG4gICAgICBhdXRvTG9hZE1vZGVsczogdHJ1ZSxcbiAgICAgIHN5bmNocm9uaXplOiB0cnVlLFxuICAgICAgbG9nZ2luZzogZmFsc2UsXG4gICAgICBkZWZpbmU6IHtcbiAgICAgICAgdGltZXN0YW1wczogdHJ1ZSxcbiAgICAgICAgcGFyYW5vaWQ6IHRydWUsXG4gICAgICB9LFxuICAgIH0pLFxuICBdLFxuICBwcm92aWRlcnM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBBcHBNb2R1bGUge31cbiIsIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIkBuZXN0anMvY29tbW9uXCIpOyIsIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIkBuZXN0anMvY29uZmlnXCIpOyIsIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIkBuZXN0anMvY29yZVwiKTsiLCJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCJAbmVzdGpzL3NlcXVlbGl6ZVwiKTsiLCJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCJzZXF1ZWxpemUtdHlwZXNjcmlwdFwiKTsiLCJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCJ0c2NvbmZpZy1wYXRocy9yZWdpc3RlclwiKTsiLCIvLyBUaGUgbW9kdWxlIGNhY2hlXG52YXIgX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fID0ge307XG5cbi8vIFRoZSByZXF1aXJlIGZ1bmN0aW9uXG5mdW5jdGlvbiBfX3dlYnBhY2tfcmVxdWlyZV9fKG1vZHVsZUlkKSB7XG5cdC8vIENoZWNrIGlmIG1vZHVsZSBpcyBpbiBjYWNoZVxuXHR2YXIgY2FjaGVkTW9kdWxlID0gX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fW21vZHVsZUlkXTtcblx0aWYgKGNhY2hlZE1vZHVsZSAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0cmV0dXJuIGNhY2hlZE1vZHVsZS5leHBvcnRzO1xuXHR9XG5cdC8vIENoZWNrIGlmIG1vZHVsZSBleGlzdHMgKGRldmVsb3BtZW50IG9ubHkpXG5cdGlmIChfX3dlYnBhY2tfbW9kdWxlc19fW21vZHVsZUlkXSA9PT0gdW5kZWZpbmVkKSB7XG5cdFx0dmFyIGUgPSBuZXcgRXJyb3IoXCJDYW5ub3QgZmluZCBtb2R1bGUgJ1wiICsgbW9kdWxlSWQgKyBcIidcIik7XG5cdFx0ZS5jb2RlID0gJ01PRFVMRV9OT1RfRk9VTkQnO1xuXHRcdHRocm93IGU7XG5cdH1cblx0Ly8gQ3JlYXRlIGEgbmV3IG1vZHVsZSAoYW5kIHB1dCBpdCBpbnRvIHRoZSBjYWNoZSlcblx0dmFyIG1vZHVsZSA9IF9fd2VicGFja19tb2R1bGVfY2FjaGVfX1ttb2R1bGVJZF0gPSB7XG5cdFx0Ly8gbm8gbW9kdWxlLmlkIG5lZWRlZFxuXHRcdC8vIG5vIG1vZHVsZS5sb2FkZWQgbmVlZGVkXG5cdFx0ZXhwb3J0czoge31cblx0fTtcblxuXHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cblx0X193ZWJwYWNrX21vZHVsZXNfX1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXyk7XG5cblx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcblx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xufVxuXG4iLCJpbXBvcnQgJ3RzY29uZmlnLXBhdGhzL3JlZ2lzdGVyJztcbmltcG9ydCB7IE5lc3RGYWN0b3J5IH0gZnJvbSAnQG5lc3Rqcy9jb3JlJztcbmltcG9ydCB7IEFwcE1vZHVsZSB9IGZyb20gJy4vYXBwLm1vZHVsZSc7XG5pbXBvcnQgeyBTZXF1ZWxpemUgfSBmcm9tICdzZXF1ZWxpemUtdHlwZXNjcmlwdCc7XG5cbmFzeW5jIGZ1bmN0aW9uIGJvb3RzdHJhcCgpIHtcbiAgY29uc3QgYXBwID0gYXdhaXQgTmVzdEZhY3RvcnkuY3JlYXRlKEFwcE1vZHVsZSwgeyBjb3JzOiB0cnVlIH0pO1xuICBjb25zdCBzZXF1ZWxpemUgPSBhcHAuZ2V0KFNlcXVlbGl6ZSk7XG4gIGF3YWl0IHNlcXVlbGl6ZS5zeW5jKHsgYWx0ZXI6IHRydWUgfSk7XG4gIGF3YWl0IGFwcC5saXN0ZW4ocHJvY2Vzcy5lbnYuU0VSVkVSX1BPUlQgPz8gOTAwNCk7XG59XG5ib290c3RyYXAoKTtcbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=
|