@pmcretail/mapper-library 0.0.35 → 0.0.37
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/bundles/pmcretail-mapper-library.umd.js +42 -0
- package/bundles/pmcretail-mapper-library.umd.js.map +1 -1
- package/bundles/pmcretail-mapper-library.umd.min.js +1 -1
- package/bundles/pmcretail-mapper-library.umd.min.js.map +1 -1
- package/esm2015/lib/WebReturn-mapper.class.js +15 -1
- package/esm2015/lib/WebReturnSalesforceMapper.class.js +15 -1
- package/esm2015/lib/mapper-library.model.js +5 -1
- package/esm5/lib/WebReturn-mapper.class.js +20 -1
- package/esm5/lib/WebReturnSalesforceMapper.class.js +20 -1
- package/esm5/lib/mapper-library.model.js +5 -1
- package/fesm2015/pmcretail-mapper-library.js +32 -0
- package/fesm2015/pmcretail-mapper-library.js.map +1 -1
- package/fesm5/pmcretail-mapper-library.js +42 -0
- package/fesm5/pmcretail-mapper-library.js.map +1 -1
- package/lib/WebReturn-mapper.class.d.ts +1 -0
- package/lib/WebReturnSalesforceMapper.class.d.ts +1 -0
- package/lib/mapper-library.model.d.ts +2 -0
- package/package.json +1 -1
- package/pmcretail-mapper-library.metadata.json +1 -1
|
@@ -18,6 +18,7 @@ var WebReturnSalesforceMapperBuilderClass = /** @class */ (function () {
|
|
|
18
18
|
terminalId: "",
|
|
19
19
|
initiatingModule: "",
|
|
20
20
|
export: false,
|
|
21
|
+
isInStoreOrder: false,
|
|
21
22
|
basket: {},
|
|
22
23
|
basketSummary: {},
|
|
23
24
|
baseCurrency: "",
|
|
@@ -557,6 +558,24 @@ var WebReturnSalesforceMapperBuilderClass = /** @class */ (function () {
|
|
|
557
558
|
console.log("Mapper library: WebReturnSalesforceMapperBuilderClass: customer mapping ended...");
|
|
558
559
|
return (/** @type {?} */ (this));
|
|
559
560
|
};
|
|
561
|
+
/**
|
|
562
|
+
* @template THIS
|
|
563
|
+
* @this {THIS}
|
|
564
|
+
* @return {THIS}
|
|
565
|
+
*/
|
|
566
|
+
WebReturnSalesforceMapperBuilderClass.prototype.isInStoreOrder = /**
|
|
567
|
+
* @template THIS
|
|
568
|
+
* @this {THIS}
|
|
569
|
+
* @return {THIS}
|
|
570
|
+
*/
|
|
571
|
+
function () {
|
|
572
|
+
console.log("Mapper library: WebReturnSalesforceMapperBuilderClass: isInStoreOrder mapping started...");
|
|
573
|
+
if ((/** @type {?} */ (this)).orderDetails.c_isInStoreOrder) {
|
|
574
|
+
(/** @type {?} */ (this)).webReturnObject.isInStoreOrder = true;
|
|
575
|
+
}
|
|
576
|
+
console.log("Mapper library: WebReturnSalesforceMapperBuilderClass: isInStoreOrder mapping ended...");
|
|
577
|
+
return (/** @type {?} */ (this));
|
|
578
|
+
};
|
|
560
579
|
/**
|
|
561
580
|
* @template THIS
|
|
562
581
|
* @this {THIS}
|
|
@@ -835,4 +854,4 @@ if (false) {
|
|
|
835
854
|
*/
|
|
836
855
|
WebReturnSalesforceMapperBuilderClass.prototype.currencyPipe;
|
|
837
856
|
}
|
|
838
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlci5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BwbWNyZXRhaWwvbWFwcGVyLWxpYnJhcnkvIiwic291cmNlcyI6WyJsaWIvV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlci5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLE9BQU8sRUFBcUYsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBZ0MsU0FBUyxFQUFtQixnQkFBZ0IsRUFBa0ksTUFBTSx3QkFBd0IsQ0FBQztBQUM3WSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUUxRDtJQWdDSSwrQ0FBWSxZQUEwQixFQUMxQixZQUEyQjtRQUEzQixpQkFBWSxHQUFaLFlBQVksQ0FBZTtRQTlCL0Isb0JBQWUsR0FBd0I7WUFDM0MsRUFBRSxFQUFFLEVBQUU7WUFDTixPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxFQUFFO1lBQ1gsV0FBVyxFQUFFLEVBQUU7WUFDZixrQkFBa0IsRUFBRSxFQUFFO1lBQ3RCLFFBQVEsRUFBRSxFQUFFO1lBQ1osVUFBVSxFQUFFLEVBQUU7WUFDZCxnQkFBZ0IsRUFBRSxFQUFFO1lBQ3BCLE1BQU0sRUFBRSxLQUFLO1lBQ2IsTUFBTSxFQUFFLEVBQUU7WUFDVixhQUFhLEVBQUUsRUFBRTtZQUNqQixZQUFZLEVBQUUsRUFBRTtZQUNoQixRQUFRLEVBQUU7Z0JBQ04sRUFBRSxFQUFFLEVBQUU7Z0JBQ04sS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsU0FBUyxFQUFFLEVBQUU7Z0JBQ2IsUUFBUSxFQUFFLEVBQUU7Z0JBQ1osY0FBYyxFQUFFLEVBQUU7Z0JBQ2xCLGVBQWUsRUFBRSxFQUFFO2dCQUNuQixlQUFlLEVBQUUsRUFBRTtnQkFDbkIsU0FBUyxFQUFFLEVBQUU7Z0JBQ2IsUUFBUSxFQUFFLEVBQUU7Z0JBQ1osa0JBQWtCLEVBQUUsS0FBSzthQUM1QjtZ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QUksRUFBQSxDQUFDLGVBQWUsQ0FBQyxrQkFBa0IsR0FBRyxrQkFBa0IsQ0FBQztRQUM3RCxPQUFPLG1CQUFBLElBQUksRUFBQSxDQUFDO0lBQ2hCLENBQUM7Ozs7Ozs7SUFFRCxxREFBSzs7Ozs7O0lBQUwsVUFBTSxLQUFLO1FBQ1AsbUJBQUEsSUFBSSxFQUFBLENBQUMsZUFBZSxDQUFDLEVBQUUsR0FBRyxLQUFLLENBQUM7UUFDaEMsT0FBTyxtQkFBQSxJQUFJLEVBQUEsQ0FBQztJQUNoQixDQUFDOzs7Ozs7O0lBRUQsNERBQVk7Ozs7OztJQUFaLFVBQWEsTUFBYztRQUN2QixtQkFBQSxJQUFJLEVBQUEsQ0FBQyxlQUFlLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQyxPQUFPLG1CQUFBLElBQUksRUFBQSxDQUFDO0lBQ2hCLENBQUM7Ozs7Ozs7SUFFRCw4REFBYzs7Ozs7O0lBQWQsVUFBZSxJQUFJO1FBQ2YsbUJBQUEsSUFBSSxFQUFBLENBQUMsZUFBZSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDckMsT0FBTyxtQkFBQSxJQUFJLEVBQUEsQ0FBQztJQUNoQixDQUFDOzs7O0lBRUQscURBQUs7OztJQUFMO1FBQ0ksT0FBTyxDQUFDLEdBQUcsQ0FBQyx3RUFBd0UsQ0FBQyxDQUFDO1FBQ3RGLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUNoQyxDQUFDOzs7OztJQUVELDhEQUFjOzs7O0lBQWQsVUFBZSxJQUFJO1FBQ2YsSUFBSSxJQUFJLEVBQUU7WUFDTixPQUFPLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3ZDO0lBQ0wsQ0FBQztJQUNMLDRDQUFDO0FBQUQsQ0FBQyxBQW5kRCxJQW1kQzs7Ozs7OztJQWpkRyw2REFBbUM7Ozs7O0lBQ25DLGdFQTBCQzs7SUFDRCxrRUFBdUI7Ozs7O0lBR25CLDZEQUFtQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEN1cnJlbmN5UGlwZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHsgQWRkcmVzcywgQmFza2V0U3VtbWFyeSwgQmFza2V0U3VtbWFyeURldGFpbHMsIEN1cnJlbnRUcmFuc2FjdGlvbkRldGFpbHMsIEN1c3RvbWVyLCBERUxJVkVSWV9NRVRIT0RTLCBQUk9NT1RJT05fTEVWRUwsIFBST01PVElPTl9UWVBFLCBJTklUSUFUSU5HX01PRFVMRSwgTGluZVByb21vdGlvbnMsIE9yZGVyRGV0YWlscywgUFJPVklERVJTLCBTaGlwbWVudERldGFpbHMsIFRSQU5TQUNUSU9OX1RZUEUsIFRyYW5zYWN0aW9uRG9jdW1lbnQsIFRyYW5zYWN0aW9uSW5mbywgVHJhbnNhY3Rpb25Qcm9tb3Rpb24sIFRyaWdnZXIsIGV4dGVybmFsVHJhbnNhY3Rpb25EZXRhaWxzLCBUUHJvZHVjdCwgUmVmdW5kUHJvZHVjdENoYW5nZSB9IGZyb20gXCIuL21hcHBlci1saWJyYXJ5Lm1vZGVsXCI7XHJcbmltcG9ydCB7IE51bWJlclV0aWxTZXJ2aWNlIH0gZnJvbSBcIi4vbnVtYmVyLXV0aWwuc2VydmljZVwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3Mge1xyXG5cclxuICAgIHByaXZhdGUgb3JkZXJEZXRhaWxzOiBPcmRlckRldGFpbHM7XHJcbiAgICBwcml2YXRlIHdlYlJldHVybk9iamVjdDogVHJhbnNhY3Rpb25Eb2N1bWVudCA9IHtcclxuICAgICAgICBpZDogJycsXHJcbiAgICAgICAgb3JnQ29kZTogXCJcIixcclxuICAgICAgICBzdG9yZUlkOiBcIlwiLFxyXG4gICAgICAgIHN0b3JlTm9kZUlkOiBcIlwiLFxyXG4gICAgICAgIHN0b3JlTm9kZVN0cnVjdHVyZTogXCJcIixcclxuICAgICAgICBkZXZpY2VJZDogXCJcIixcclxuICAgICAgICB0ZXJtaW5hbElkOiBcIlwiLFxyXG4gICAgICAgIGluaXRpYXRpbmdNb2R1bGU6IFwiXCIsXHJcbiAgICAgICAgZXhwb3J0OiBmYWxzZSxcclxuICAgICAgICBiYXNrZXQ6IHt9LFxyXG4gICAgICAgIGJhc2tldFN1bW1hcnk6IHt9LFxyXG4gICAgICAgIGJhc2VDdXJyZW5jeTogXCJcIixcclxuICAgICAgICBjdXN0b21lcjoge1xyXG4gICAgICAgICAgICBpZDogJycsXHJcbiAgICAgICAgICAgIGVtYWlsOiAnJyxcclxuICAgICAgICAgICAgZmlyc3ROYW1lOiAnJyxcclxuICAgICAgICAgICAgbGFzdE5hbWU6ICcnLFxyXG4gICAgICAgICAgICBiaWxsaW5nQWRkcmVzczogW10sXHJcbiAgICAgICAgICAgIHNoaXBwaW5nQWRkcmVzczogW10sXHJcbiAgICAgICAgICAgIHNoaXBtZW50RGV0YWlsczogW10sXHJcbiAgICAgICAgICAgIHRlbGVwaG9uZTogJycsXHJcbiAgICAgICAgICAgIHBvc3RDb2RlOiAnJyxcclxuICAgICAgICAgICAgbm9DdXN0b21lclNlbGVjdGVkOiBmYWxzZVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgY3VycmVudFRyYW5zYWN0aW9uRGV0YWlsczoge30gYXMgQ3VycmVudFRyYW5zYWN0aW9uRGV0YWlsc1xyXG4gICAgfVxyXG4gICAgbnVtYmVyVXRpbFNlcnZpY2U6IGFueTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihvcmRlckRldGFpbHM6IE9yZGVyRGV0YWlscyxcclxuICAgICAgICBwcml2YXRlIGN1cnJlbmN5UGlwZT86IEN1cnJlbmN5UGlwZVxyXG4gICAgICAgICkge1xyXG4gICAgICAgIGlmIChvcmRlckRldGFpbHMpIHtcclxuICAgICAgICAgICAgdGhpcy5vcmRlckRldGFpbHMgPSBvcmRlckRldGFpbHM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubnVtYmVyVXRpbFNlcnZpY2UgPSBuZXcgTnVtYmVyVXRpbFNlcnZpY2UoY3VycmVuY3lQaXBlKTtcclxuICAgIH1cclxuXHJcbiAgICB3ZWJSZXR1cm5Db21tb25NYXBwZXIoKSB7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJNYXBwZXIgbGlicmFyeTogV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlckJ1aWxkZXJDbGFzczogd2ViUmV0dXJuQ29tbW9uTWFwcGVyIHN0YXJ0ZWQuLi5cIik7XHJcbiAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3RbJ3R5cGUnXSA9IFRSQU5TQUNUSU9OX1RZUEUuV0VCX1JFVFVSTlM7XHJcbiAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3RbJ2RhdGV0aW1lJ10gPSB0aGlzLmdldFVUQ0RhdGVUaW1lKHRoaXMub3JkZXJEZXRhaWxzLmxhc3RfbW9kaWZpZWQpO1xyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2VDdXJyZW5jeSA9IHRoaXMub3JkZXJEZXRhaWxzLmN1cnJlbmN5O1xyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LnN1YnNpZGlhcnlJZCA9ICcxJztcclxuICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdC5leHBvcnQgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmluaXRpYXRpbmdNb2R1bGUgPSBJTklUSUFUSU5HX01PRFVMRS5FQkFTS0VUO1xyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmNyZWF0ZWRBdCA9IHRoaXMuZ2V0VVRDRGF0ZVRpbWUodGhpcy5vcmRlckRldGFpbHMuY3JlYXRpb25fZGF0ZSk7XHJcbiAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3QudXBkYXRlZEF0ID0gdGhpcy5nZXRVVENEYXRlVGltZSh0aGlzLm9yZGVyRGV0YWlscy5sYXN0X21vZGlmaWVkKTtcclxuICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdC50cmFuc0NvbXBsZXRlZEF0ID0gdGhpcy5nZXRVVENEYXRlVGltZSh0aGlzLm9yZGVyRGV0YWlscy5sYXN0X21vZGlmaWVkKTtcclxuICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdFsnZXh0ZXJuYWxUcmFuc2FjdGlvbklkJ10gPSB0aGlzLm9yZGVyRGV0YWlscy5vcmRlcl9ubztcclxuICAgICAgICBjb25zb2xlLmxvZyhcIk1hcHBlciBsaWJyYXJ5OiBXZWJSZXR1cm5TYWxlc2ZvcmNlTWFwcGVyQnVpbGRlckNsYXNzOiB3ZWJSZXR1cm5Db21tb25NYXBwZXIgZW5kZWQuLi5cIik7XHJcbiAgICAgICAgcmV0dXJuIHRoaXM7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gZXhwb3J0KHN0YXR1cywgZGV0YWlscykge1xyXG4gICAgLy8gICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IGV4cG9ydCBtYXBwaW5nIHN0YXJ0ZWQuLi5cIik7XHJcbiAgICAvLyAgICAgY29uc29sZS5sb2coXCJNYXBwZXIgbGlicmFyeTogV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlckJ1aWxkZXJDbGFzczogc3RhdHVzOlwiLCBzdGF0dXMpO1xyXG4gICAgLy8gICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IGRldGFpbHM6XCIsIEpTT04uc3RyaW5naWZ5KGRldGFpbHMpKTtcclxuICAgIC8vICAgICBpZiAoc3RhdHVzICYmIGRldGFpbHMgJiYgZGV0YWlscy5wcm92aWRlcnMgJiYgZGV0YWlscy5wcm92aWRlcnMubGVuZ3RoID4gMCkge1xyXG4gICAgLy8gICAgICAgICBkZXRhaWxzLnByb3ZpZGVycy5mb3JFYWNoKFxyXG4gICAgLy8gICAgICAgICAgICAgcHJvdmlkZXJPYmogPT4ge1xyXG4gICAgLy8gICAgICAgICAgICAgICAgIGlmIChwcm92aWRlck9iai5wcm92aWRlciAmJiBwcm92aWRlck9iai5wcm92aWRlciA9PT0gUFJPVklERVJTLlNBTEVTRk9SQ0UpIHtcclxuICAgIC8vICAgICAgICAgICAgICAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3QuZXhwb3J0ID0gdHJ1ZTtcclxuICAgIC8vICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgLy8gICAgICAgICAgICAgICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdC5leHBvcnQgPSBmYWxzZTtcclxuICAgIC8vICAgICAgICAgICAgICAgICB9XHJcbiAgICAvLyAgICAgICAgICAgICB9XHJcbiAgICAvLyAgICAgICAgICk7XHJcbiAgICAvLyAgICAgfSBlbHNlIHtcclxuICAgIC8vICAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3QuZXhwb3J0ID0gZmFsc2U7XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IGV4cG9ydCBtYXBwaW5nIGVuZC4uLlwiKVxyXG4gICAgLy8gICAgIHJldHVybiB0aGlzO1xyXG4gICAgLy8gfVxyXG5cclxuICAgIGdldERlbGl2ZXJ5TWV0aG9kKCkge1xyXG4gICAgICAgIGlmKHRoaXMub3JkZXJEZXRhaWxzLnNoaXBtZW50cyAmJiB0aGlzLm9yZGVyRGV0YWlscy5zaGlwbWVudHMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICBjb25zdCBzaGlwVG9TdG9yZVNoaXBtZW50ID0gdGhpcy5vcmRlckRldGFpbHMuc2hpcG1lbnRzLmZpbmQoc2hpcG1lbnQgPT4gc2hpcG1lbnQuY19mcm9tU3RvcmVJZCk7XHJcbiAgICAgICAgICAgIGlmKHNoaXBUb1N0b3JlU2hpcG1lbnQpIHJldHVybiBERUxJVkVSWV9NRVRIT0RTLlNISVBfVE9fU1RPUkU7XHJcbiAgICAgICAgICAgIGVsc2UgcmV0dXJuIERFTElWRVJZX01FVEhPRFMuREVMSVZFUlk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcm9kdWN0KCkge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IHByb2R1Y3QgbWFwcGluZyBzdGFydGVkLi4uXCIpO1xyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2tldFsncHJvZHVjdHMnXSA9IFtdO1xyXG4gICAgICAgIGlmICh0aGlzLm9yZGVyRGV0YWlscy5wcm9kdWN0X2l0ZW1zICYmIHRoaXMub3JkZXJEZXRhaWxzLnByb2R1Y3RfaXRlbXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICB0aGlzLm9yZGVyRGV0YWlscy5wcm9kdWN0X2l0ZW1zLmZvckVhY2goXHJcbiAgICAgICAgICAgICAgICAocHJvZHVjdCwgaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBwcm9kdWN0T2JqID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogcHJvZHVjdC5pdGVtX3RleHQgPyBwcm9kdWN0Lml0ZW1fdGV4dCA6ICcnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBTS1U6IHByb2R1Y3QucHJvZHVjdF9pZCA/IHByb2R1Y3QucHJvZHVjdF9pZCA6ICcnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBxdWFudGl0eTogcHJvZHVjdC5xdWFudGl0eSA/IHByb2R1Y3QucXVhbnRpdHkgOiAwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZWZ1bmRlZFF1YW50aXR5OiAwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwcmljZTogcHJvZHVjdC5iYXNlX3ByaWNlID8gcHJvZHVjdC5iYXNlX3ByaWNlIDogMCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbUxpbmVJZDogKGluZGV4ICsgMSkudG9TdHJpbmcoKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGVsaXZlcnlNZXRob2Q6IHRoaXMuZ2V0RGVsaXZlcnlNZXRob2QoKS50b1N0cmluZygpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3RhbExpbmVQcmljZTogcHJvZHVjdC5wcmljZSA/IHByb2R1Y3QucHJpY2UgOiAwXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGlmIChwcm9kdWN0ICYmIHByb2R1Y3QucHJpY2UgIT0gMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdC5iYXNrZXRbJ3Byb2R1Y3RzJ10ucHVzaChwcm9kdWN0T2JqKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IHByb2R1Y3QgbWFwcGluZyBlbmRlZC4uLlwiKTtcclxuICAgICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICBsaW5lUHJvbW90aW9uKCkge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IGxpbmVQcm9tb3Rpb24gbWFwcGluZyBzdGFydGVkLi4uXCIpO1xyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2tldC5saW5lUHJvbW90aW9uID0gW10gYXMgTGluZVByb21vdGlvbnNbXTtcclxuICAgICAgICBsZXQgbGluZVByb21vdGlvbkFycmF5ID0gW10gYXMgTGluZVByb21vdGlvbnNbXTtcclxuICAgICAgICBpZiAodGhpcy5vcmRlckRldGFpbHMucHJvZHVjdF9pdGVtcyAmJiB0aGlzLm9yZGVyRGV0YWlscy5wcm9kdWN0X2l0ZW1zLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgdGhpcy5vcmRlckRldGFpbHMucHJvZHVjdF9pdGVtcy5mb3JFYWNoKFxyXG4gICAgICAgICAgICAgICAgKHByb2R1Y3QsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcHJvZHVjdC5pdGVtX2lkID0gKGluZGV4ICsgMSkudG9TdHJpbmcoKTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAocHJvZHVjdC5wcmljZV9hZGp1c3RtZW50cyAmJiBwcm9kdWN0LnByaWNlX2FkanVzdG1lbnRzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcHJvZHVjdC5wcmljZV9hZGp1c3RtZW50cy5mb3JFYWNoKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKHByb21vdGlvbikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghcHJvbW90aW9uLmNvdXBvbl9jb2RlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBsaW5lUHJvbW90aW9uT2JqID0ge30gYXMgTGluZVByb21vdGlvbnM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0cmlnZ2VyID0ge30gYXMgVHJpZ2dlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJpZ2dlci5pdGVtTGluZUlkID0gcHJvZHVjdC5pdGVtX2lkO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyLnF1YW50aXR5ID0gcHJvZHVjdC5xdWFudGl0eSA/IHByb2R1Y3QucXVhbnRpdHkgOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lUHJvbW90aW9uT2JqLnRyaWdnZXIgPSBbXSBhcyBUcmlnZ2VyW107XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVQcm9tb3Rpb25PYmoudHJpZ2dlci5wdXNoKHRyaWdnZXIpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZVByb21vdGlvbk9iai5pdGVtTGluZUlkID0gaW5kZXggKyAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lUHJvbW90aW9uT2JqLnByb21vdGlvbklkID0gcHJvbW90aW9uLnByb21vdGlvbl9pZCA/IHByb21vdGlvbi5wcm9tb3Rpb25faWQgOiAnJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZVByb21vdGlvbk9iai5kaXNwbGF5VGV4dCA9IHByb21vdGlvbi5pdGVtX3RleHQgPyBwcm9tb3Rpb24uaXRlbV90ZXh0IDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVQcm9tb3Rpb25PYmoucHJvbW90aW9uVHlwZSA9IHByb21vdGlvbi5hcHBsaWVkX2Rpc2NvdW50ICYmIHByb21vdGlvbi5hcHBsaWVkX2Rpc2NvdW50LnR5cGUgPyBwcm9tb3Rpb24uYXBwbGllZF9kaXNjb3VudC50eXBlIDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVQcm9tb3Rpb25PYmoucHJvbW90aW9uQW1vdW50ID0gcHJvbW90aW9uLnByaWNlID8gTWF0aC5hYnMocHJvbW90aW9uLnByaWNlKSA6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVQcm9tb3Rpb25PYmoubmFtZSA9IHByb21vdGlvbi5jb3Vwb25fY29kZSAgPyBwcm9tb3Rpb24uY291cG9uX2NvZGUgOiAocHJvbW90aW9uLml0ZW1fdGV4dCA/IHByb21vdGlvbi5pdGVtX3RleHQgOicnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZVByb21vdGlvbk9iai5wcm9tb3Rpb25JbmZvID0gcHJvbW90aW9uLml0ZW1fdGV4dCA/IHByb21vdGlvbi5pdGVtX3RleHQgOiAnJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZVByb21vdGlvbk9iai5wcm9tb3Rpb25MaW5lUHJpY2UgPSBwcm9kdWN0LnByaWNlIC0gTWF0aC5hYnMocHJvbW90aW9uLnByaWNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZVByb21vdGlvbkFycmF5LnB1c2gobGluZVByb21vdGlvbk9iaik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3QuYmFza2V0LmxpbmVQcm9tb3Rpb24gPSBsaW5lUHJvbW90aW9uQXJyYXk7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJNYXBwZXIgbGlicmFyeTogV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlckJ1aWxkZXJDbGFzczogbGluZVByb21vdGlvbiBtYXBwaW5nIGVuZGVkLi4uXCIpO1xyXG4gICAgICAgIHJldHVybiB0aGlzO1xyXG4gICAgfVxyXG5cclxuICAgIHRyYW5zYWN0aW9uUHJvbW90aW9uKCkge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IHRyYW5zYWN0aW9uUHJvbW90aW9uIG1hcHBpbmcgc3RhcnRlZC4uLlwiKTtcclxuXHJcbiAgICAgICAgbGV0IHRyYW5zYWN0aW9uUHJvbW90aW9uQXJyYXkgPSB0aGlzLmdldFRyYW5zYWN0aW9uUHJvbW90aW9ucyh0aGlzLm9yZGVyRGV0YWlscyk7XHJcblxyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2tldC50cmFuc2FjdGlvblByb21vdGlvbiA9IHRyYW5zYWN0aW9uUHJvbW90aW9uQXJyYXk7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJNYXBwZXIgbGlicmFyeTogV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlckJ1aWxkZXJDbGFzczogdHJhbnNhY3Rpb25Qcm9tb3Rpb24gbWFwcGluZyBlbmRlZC4uLlwiKTtcclxuICAgICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICBnZXRUcmFuc2FjdGlvblByb21vdGlvbnMoYmFza2V0KTogVHJhbnNhY3Rpb25Qcm9tb3Rpb25bXSB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgbGV0IHRyYW5zYWN0aW9uUHJvbW90aW9uQXJyYXkgPSBbXSBhcyBUcmFuc2FjdGlvblByb21vdGlvbltdO1xyXG4gICAgICAgICAgICBpZiAoYmFza2V0Lm9yZGVyX3ByaWNlX2FkanVzdG1lbnRzICYmIGJhc2tldC5vcmRlcl9wcmljZV9hZGp1c3RtZW50cy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICBiYXNrZXQub3JkZXJfcHJpY2VfYWRqdXN0bWVudHMuZm9yRWFjaChcclxuICAgICAgICAgICAgICAgICAgICAodHJhbnNhY3Rpb25Qcm9tb3Rpb24pID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRyYW5zYWN0aW9uUHJvbW90aW9uT2JqID0ge30gYXMgVHJhbnNhY3Rpb25Qcm9tb3Rpb247XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbk9iai5kaXNwbGF5VGV4dCA9IHRyYW5zYWN0aW9uUHJvbW90aW9uLml0ZW1fdGV4dCA/IHRyYW5zYWN0aW9uUHJvbW90aW9uLml0ZW1fdGV4dCA6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbk9iai5uYW1lID0gdHJhbnNhY3Rpb25Qcm9tb3Rpb24uY291cG9uX2NvZGUgPyB0cmFuc2FjdGlvblByb21vdGlvbi5jb3Vwb25fY29kZSA6ICh0cmFuc2FjdGlvblByb21vdGlvbiAuaXRlbV90ZXh0P3RyYW5zYWN0aW9uUHJvbW90aW9uLml0ZW1fdGV4dCA6ICcnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25Qcm9tb3Rpb25PYmoucHJvbW90aW9uQW1vdW50ID0gdHJhbnNhY3Rpb25Qcm9tb3Rpb24ucHJpY2UgPyBNYXRoLmFicyh0cmFuc2FjdGlvblByb21vdGlvbi5wcmljZSkgOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbk9iai5wcm9tb3Rpb25JZCA9IHRyYW5zYWN0aW9uUHJvbW90aW9uLnByb21vdGlvbl9pZCA/IHRyYW5zYWN0aW9uUHJvbW90aW9uLnByb21vdGlvbl9pZCA6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbk9iai5wcm9tb3Rpb25JbmZvID0gdHJhbnNhY3Rpb25Qcm9tb3Rpb24uaXRlbV90ZXh0ID8gdHJhbnNhY3Rpb25Qcm9tb3Rpb24uaXRlbV90ZXh0IDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zYWN0aW9uUHJvbW90aW9uT2JqLnByb21vdGlvblR5cGUgPSB0cmFuc2FjdGlvblByb21vdGlvbi5hcHBsaWVkX2Rpc2NvdW50ICYmIHRyYW5zYWN0aW9uUHJvbW90aW9uLmFwcGxpZWRfZGlzY291bnQudHlwZSA/IHRyYW5zYWN0aW9uUHJvbW90aW9uLmFwcGxpZWRfZGlzY291bnQudHlwZSA6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbk9iai5pdGVtTGluZUlkcyA9IHRoaXMub3JkZXJEZXRhaWxzLnByb2R1Y3RfaXRlbXMubWFwKChwcm9kdWN0LCBpbmRleCkgPT4gaW5kZXggKyAxKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRyYW5zYWN0aW9uUHJvbW90aW9uLmNvdXBvbl9jb2RlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbk9iai50eXBlID0gUFJPTU9USU9OX1RZUEUuQ09VUE9OO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25Qcm9tb3Rpb25PYmouY291cG9uQ29kZSA9IHRyYW5zYWN0aW9uUHJvbW90aW9uLmNvdXBvbl9jb2RlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25Qcm9tb3Rpb25PYmouc3ViTGV2ZWxUeXBlID0gUFJPTU9USU9OX0xFVkVMLlRSQU5TQUNUSU9OO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zYWN0aW9uUHJvbW90aW9uQXJyYXkucHVzaCh0cmFuc2FjdGlvblByb21vdGlvbk9iaik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IGdldFRyYW5zYWN0aW9uUHJvbW90aW9ucyA6IFwiLCBKU09OLnN0cmluZ2lmeSh0cmFuc2FjdGlvblByb21vdGlvbkFycmF5KSk7XHJcbiAgICAgICAgICAgIHJldHVybiB0cmFuc2FjdGlvblByb21vdGlvbkFycmF5O1xyXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6ICBmYWlsZWQ6XCIsIGVycm9yKTtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCJNYXBwZXIgbGlicmFyeTogV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlckJ1aWxkZXJDbGFzczogIGZhaWxlZDpcIiwgSlNPTi5zdHJpbmdpZnkoZXJyb3IpKTtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGVycm9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlTGluZVByb21vdGlvbldpdGhDb3Vwb24oKSB7XHJcbiAgICAgICAgdHJ5IHtcclxuXHJcbiAgICAgICAgICAgIGxldCB0cmFuc2FjdGlvblByb21vdGlvbiA9IHt9IGFzIFRyYW5zYWN0aW9uUHJvbW90aW9uO1xyXG4gICAgICAgICAgICBsZXQgdHJpZ2dlclByb21vdGlvbiA9IFtdIGFzIFRyaWdnZXJbXTtcclxuICAgICAgICAgICAgaWYgKHRoaXMub3JkZXJEZXRhaWxzLnByb2R1Y3RfaXRlbXMgJiYgdGhpcy5vcmRlckRldGFpbHMucHJvZHVjdF9pdGVtcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm9yZGVyRGV0YWlscy5wcm9kdWN0X2l0ZW1zLmZvckVhY2goXHJcbiAgICAgICAgICAgICAgICAgICAgKHByb2R1Y3QsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHByb2R1Y3QuaXRlbV9pZCA9IChpbmRleCArIDEpLnRvU3RyaW5nKCk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocHJvZHVjdC5wcmljZV9hZGp1c3RtZW50cyAmJiBwcm9kdWN0LnByaWNlX2FkanVzdG1lbnRzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2R1Y3QucHJpY2VfYWRqdXN0bWVudHMuZm9yRWFjaChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocHJvbW90aW9uKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwcm9tb3Rpb24uY291cG9uX2NvZGUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0cmlnZ2VyID0ge30gYXMgVHJpZ2dlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyaWdnZXIuaXRlbUxpbmVJZCA9IHByb2R1Y3QuaXRlbV9pZDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyaWdnZXIucXVhbnRpdHkgPSBwcm9kdWN0LnF1YW50aXR5ID8gcHJvZHVjdC5xdWFudGl0eSA6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyLnRvdGFsUXVhbnRpdHkgPSBwcm9kdWN0LnF1YW50aXR5ID8gcHJvZHVjdC5xdWFudGl0eSA6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyLnByb21vdGlvbkFtb3VudCA9IHByb21vdGlvbi5wcmljZSA/IE1hdGguYWJzKHByb21vdGlvbi5wcmljZSkgOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJpZ2dlci5yZWZ1bmRlZFJlYXNvbiA9IHByb21vdGlvbi5jb3Vwb25fY29kZSA/IHByb21vdGlvbi5jb3Vwb25fY29kZSA6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJpZ2dlci5yZWZ1bmRlZFJlYXNvbkRlc2NyaXB0aW9uID0gcHJvbW90aW9uLml0ZW1fdGV4dCA/IHByb21vdGlvbi5pdGVtX3RleHQgOiAnJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyaWdnZXIucHJvbW90aW9uSWQgPSBwcm9tb3Rpb24ucHJvbW90aW9uX2lkO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJpZ2dlclByb21vdGlvbi5wdXNoKHRyaWdnZXIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmICh0cmlnZ2VyUHJvbW90aW9uLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zYWN0aW9uUHJvbW90aW9uLmRpc3BsYXlUZXh0ID0gdHJpZ2dlclByb21vdGlvblswXS5yZWZ1bmRlZFJlYXNvbkRlc2NyaXB0aW9uO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25Qcm9tb3Rpb24ubmFtZSA9IHRyaWdnZXJQcm9tb3Rpb25bMF0ucmVmdW5kZWRSZWFzb247XHJcbiAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbi5wcm9tb3Rpb25BbW91bnQgPSAtKHRyaWdnZXJQcm9tb3Rpb24ucmVkdWNlKChuLCB7IHByb21vdGlvbkFtb3VudCB9KSA9PiBuICsgcHJvbW90aW9uQW1vdW50LCAwKSk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbi5wcm9tb3Rpb25JZCA9IHRyaWdnZXJQcm9tb3Rpb25bMF0ucHJvbW90aW9uSWQ7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbi5wcm9tb3Rpb25JbmZvID0gdHJpZ2dlclByb21vdGlvblswXS5yZWZ1bmRlZFJlYXNvbkRlc2NyaXB0aW9uO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25Qcm9tb3Rpb24uY291cG9uQ29kZSA9IHRyaWdnZXJQcm9tb3Rpb25bMF0ucmVmdW5kZWRSZWFzb247XHJcbiAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbi5pdGVtTGluZUlkcyA9IFtdO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25Qcm9tb3Rpb24udHlwZSA9IFBST01PVElPTl9UWVBFLkNPVVBPTjtcclxuICAgICAgICAgICAgICAgIHRyYW5zYWN0aW9uUHJvbW90aW9uLnN1YkxldmVsVHlwZSA9IFBST01PVElPTl9MRVZFTC5MSU5FO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25Qcm9tb3Rpb24udHJpZ2dlciA9IHRyaWdnZXJQcm9tb3Rpb247XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCJsaW5lUHJvbW90aW9uIG1hcHBpbmcgZW5kZWQuLi5cIik7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiZS1iYXNrZXQ6IHVwZGF0ZUxpbmVQcm9tb3Rpb25XaXRoQ291cG9uXCIsIEpTT04uc3RyaW5naWZ5KHRyYW5zYWN0aW9uUHJvbW90aW9uKSk7XHJcblxyXG4gICAgICAgICAgICBpZiAoIXRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2tldC50cmFuc2FjdGlvblByb21vdGlvbiApIHtcclxuICAgICAgICAgICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2tldC50cmFuc2FjdGlvblByb21vdGlvbiA9IFtdO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAodHJhbnNhY3Rpb25Qcm9tb3Rpb24gJiYgdHJhbnNhY3Rpb25Qcm9tb3Rpb24ucHJvbW90aW9uSWQgKSB7XHJcbiAgICAgICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2tldC50cmFuc2FjdGlvblByb21vdGlvbi5wdXNoKHRyYW5zYWN0aW9uUHJvbW90aW9uKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgcmV0dXJuIHRoaXM7XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCJFYmFza2V0OiBTYWxlc2ZvcmNlOiBsaW5lUHJvbW90aW9uIG1hcHBpbmc9PiBmYWlsZWQ6XCIsIGVycm9yKTtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCJFYmFza2V0OiBTYWxlc2ZvcmNlOiBsaW5lUHJvbW90aW9uIG1hcHBpbmc9PiBmYWlsZWQ6XCIsIEpTT04uc3RyaW5naWZ5KGVycm9yKSk7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHVwZGF0ZVRyYW5zYWN0aW9uUHJvbW90aW9uUHJ0aW9uQ2FsYygpIHtcclxuICAgICAgICBpZiAodGhpcy53ZWJSZXR1cm5PYmplY3QuYmFza2V0LnRyYW5zYWN0aW9uUHJvbW90aW9uICYmIHRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2tldC50cmFuc2FjdGlvblByb21vdGlvbi5sZW5ndGggPiAwKSB7XHJcblxyXG4gICAgICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdC5iYXNrZXQudHJhbnNhY3Rpb25Qcm9tb3Rpb24uZm9yRWFjaCh0ciA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgIHRoaXMudHJhbnNhY3Rpb25Qcm9tb3Rpb25Qcm9kdWN0UG9ydGlvbkNhbGModGhpcy53ZWJSZXR1cm5PYmplY3QgLCB0cilcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRoaXM7XHJcbiAgICB9XHJcblxyXG4gICAgdHJhbnNhY3Rpb25Qcm9tb3Rpb25Qcm9kdWN0UG9ydGlvbkNhbGMoXHJcbiAgICAgICAgdHhEb2M6IFRyYW5zYWN0aW9uRG9jdW1lbnQsXHJcbiAgICAgICAgcHJvbW90aW9uOiBUcmFuc2FjdGlvblByb21vdGlvblxyXG4gICAgKSB7XHJcbiAgICAgICAgY29uc29sZS5sb2coXHJcbiAgICAgICAgICAgIGBlYmFza2V0OiB0cmFuc2FjdGlvblByb21vdGlvblByb2R1Y3RQb3J0aW9uQ2FsYzogdHJuc2FjdGlvblByb21vdGlvbjogJHtKU09OLnN0cmluZ2lmeShcclxuICAgICAgICAgICAgICAgIHByb21vdGlvblxyXG4gICAgICAgICAgICApfWBcclxuICAgICAgICApO1xyXG4gICAgICAgIGlmIChwcm9tb3Rpb24udHlwZSA9PT0gUFJPTU9USU9OX1RZUEUuQ09VUE9OICYmIHByb21vdGlvbi5zdWJMZXZlbFR5cGUgPT09IFBST01PVElPTl9MRVZFTC5MSU5FKSB7XHJcbiAgICAgICAgICAgIHR4RG9jLmJhc2tldC5wcm9kdWN0cy5mb3JFYWNoKChwcm9kdWN0KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBwcm9kdWN0ID0gdGhpcy52YWxpZGF0ZVByb2R1Y3RJdGVtRGlzY291bnQocHJvZHVjdCk7XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKHByb21vdGlvbi50cmlnZ2VyICYmIHByb21vdGlvbi50cmlnZ2VyLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICBwcm9tb3Rpb24udHJpZ2dlci5mb3JFYWNoKCh0KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0Lml0ZW1MaW5lSWQgPT09IHByb2R1Y3QuaXRlbUxpbmVJZC50b1N0cmluZygpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWN0Lml0ZW1EaXNjb3VudHMudHJuUHJvbW90aW9uc1BvcnRpb24gKz0gdC5wcm9tb3Rpb25BbW91bnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICB0eERvYy5iYXNrZXQucHJvZHVjdHMuZm9yRWFjaCgocHJvZHVjdCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgcHJvZHVjdCA9IHRoaXMudmFsaWRhdGVQcm9kdWN0SXRlbURpc2NvdW50KHByb2R1Y3QpO1xyXG4gICAgICAgICAgICAgICAgaWYgKHByb21vdGlvbi5pdGVtTGluZUlkcy5pbmNsdWRlcygrcHJvZHVjdC5pdGVtTGluZUlkKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHByb2R1Y3RJdGVtID0gdGhpcy5vcmRlckRldGFpbHMucHJvZHVjdF9pdGVtcy5maW5kKHByb2R1Y3RJdGVtID0+IHByb2R1Y3RJdGVtLnByb2R1Y3RfaWQgPT09IHByb2R1Y3QuU0tVKTtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCB0cmFuc2FjdGlvblByb21vdGlvblBvcnRpb24gPSAocHJvZHVjdEl0ZW0gJiYgcHJvZHVjdEl0ZW0ucHJpY2VfYWZ0ZXJfaXRlbV9kaXNjb3VudCAmJiBwcm9kdWN0SXRlbS5wcmljZV9hZnRlcl9vcmRlcl9kaXNjb3VudCkgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAocHJvZHVjdEl0ZW0ucHJpY2VfYWZ0ZXJfaXRlbV9kaXNjb3VudCAtIHByb2R1Y3RJdGVtLnByaWNlX2FmdGVyX29yZGVyX2Rpc2NvdW50KSA6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgcHJvZHVjdC5pdGVtRGlzY291bnRzLnRyblByb21vdGlvbnNQb3J0aW9uICs9IHRoaXMubnVtYmVyVXRpbFNlcnZpY2UudHJpbVRvMkRlY2ltYWwyKHRyYW5zYWN0aW9uUHJvbW90aW9uUG9ydGlvbik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdHhEb2M7XHJcbiAgICB9XHJcblxyXG4gICAgICBcclxuICAgICAgcHVibGljIHZhbGlkYXRlUHJvZHVjdEl0ZW1EaXNjb3VudChwcm9kdWN0OiBUUHJvZHVjdCkge1xyXG4gICAgICAgIGlmICghcHJvZHVjdC5pdGVtRGlzY291bnRzKSB7XHJcbiAgICAgICAgICBwcm9kdWN0Lml0ZW1EaXNjb3VudHMgPSB7XHJcbiAgICAgICAgICAgIHRybkRpc2NvdW50c1BvcnRpb246IDAsXHJcbiAgICAgICAgICAgIHRyblByb21vdGlvbnNQb3J0aW9uOiAwLFxyXG4gICAgICAgICAgICByZWZ1bmRQb3J0aW9uOiAwLFxyXG4gICAgICAgICAgfTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHByb2R1Y3Q7XHJcbiAgICAgIH1cclxuICAgIFxyXG4gICAgICBcclxuICAgIGN1c3RvbWVyKCkge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IGN1c3RvbWVyIG1hcHBpbmcgc3RhcnRlZC4uLlwiKTtcclxuICAgICAgICBsZXQgY3VzdG9tZXJPYmogPSB7fSBhcyBDdXN0b21lcjtcclxuICAgICAgICBjdXN0b21lck9iai5lbWFpbCA9IHRoaXMub3JkZXJEZXRhaWxzLmN1c3RvbWVyX2luZm8gJiYgdGhpcy5vcmRlckRldGFpbHMuY3VzdG9tZXJfaW5mby5lbWFpbCA/IHRoaXMub3JkZXJEZXRhaWxzLmN1c3RvbWVyX2luZm8uZW1haWwgOiAnJztcclxuICAgICAgICBjdXN0b21lck9iai5maXJzdE5hbWUgPSB0aGlzLm9yZGVyRGV0YWlscy5iaWxsaW5nX2FkZHJlc3MgJiYgdGhpcy5vcmRlckRldGFpbHMuYmlsbGluZ19hZGRyZXNzLmZpcnN0X25hbWUgPyB0aGlzLm9yZGVyRGV0YWlscy5iaWxsaW5nX2FkZHJlc3MuZmlyc3RfbmFtZSA6ICcnO1xyXG4gICAgICAgIGN1c3RvbWVyT2JqLmxhc3ROYW1lID0gdGhpcy5vcmRlckRldGFpbHMuYmlsbGluZ19hZGRyZXNzICYmIHRoaXMub3JkZXJEZXRhaWxzLmJpbGxpbmdfYWRkcmVzcy5sYXN0X25hbWUgPyB0aGlzLm9yZGVyRGV0YWlscy5iaWxsaW5nX2FkZHJlc3MubGFzdF9uYW1lIDogJyc7XHJcblxyXG4gICAgICAgIGxldCBzaGlwcGluZ0FkZHJlc3MgPSBbXSBhcyBBZGRyZXNzW107XHJcbiAgICAgICAgdGhpcy5vcmRlckRldGFpbHMuc2hpcG1lbnRzLmZvckVhY2goXHJcbiAgICAgICAgICAgIHNoaXBtZW50ID0+IHtcclxuICAgICAgICAgICAgICAgIGxldCBzaGlwcGluZ0FkZHJlc3NPYmogPSB7fSBhcyBBZGRyZXNzO1xyXG4gICAgICAgICAgICAgICAgc2hpcHBpbmdBZGRyZXNzT2JqLmlkID0gc2hpcG1lbnQuc2hpcHBpbmdfYWRkcmVzcyAmJiBzaGlwbWVudC5zaGlwcGluZ19hZGRyZXNzLmlkID8gc2hpcG1lbnQuc2hpcHBpbmdfYWRkcmVzcy5pZCA6ICcnO1xyXG4gICAgICAgICAgICAgICAgc2hpcHBpbmdBZGRyZXNzT2JqLmNvdW50cnlDb2RlID0gc2hpcG1lbnQuc2hpcHBpbmdfYWRkcmVzcyAmJiBzaGlwbWVudC5zaGlwcGluZ19hZGRyZXNzLmNvdW50cnlfY29kZSA/IHNoaXBtZW50LnNoaXBwaW5nX2FkZHJlc3MuY291bnRyeV9jb2RlIDogJyc7XHJcbiAgICAgICAgICAgICAgICBzaGlwcGluZ0FkZHJlc3NPYmouYWRkcmVzczEgPSBzaGlwbWVudC5zaGlwcGluZ19hZGRyZXNzICYmIHNoaXBtZW50LnNoaXBwaW5nX2FkZHJlc3MuYWRkcmVzczEgPyBzaGlwbWVudC5zaGlwcGluZ19hZGRyZXNzLmFkZHJlc3MxIDogJyc7XHJcbiAgICAgICAgICAgICAgICBzaGlwcGluZ0FkZHJlc3NPYmouY2l0eSA9IHNoaXBtZW50LnNoaXBwaW5nX2FkZHJlc3MgJiYgc2hpcG1lbnQuc2hpcHBpbmdfYWRkcmVzcy5jaXR5ID8gc2hpcG1lbnQuc2hpcHBpbmdfYWRkcmVzcy5jaXR5IDogJyc7XHJcbiAgICAgICAgICAgICAgICBzaGlwcGluZ0FkZHJlc3NPYmouY291bnRyeSA9ICcnO1xyXG4gICAgICAgICAgICAgICAgc2hpcHBpbmdBZGRyZXNzT2JqLnBvc3RDb2RlID0gc2hpcG1lbnQuc2hpcHBpbmdfYWRkcmVzcyAmJiBzaGlwbWVudC5zaGlwcGluZ19hZGRyZXNzLnBvc3RhbF9jb2RlID8gc2hpcG1lbnQuc2hpcHBpbmdfYWRkcmVzcy5wb3N0YWxfY29kZSA6ICcnO1xyXG4gICAgICAgICAgICAgICAgc2hpcHBpbmdBZGRyZXNzLnB1c2goc2hpcHBpbmdBZGRyZXNzT2JqKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIClcclxuICAgICAgICBjdXN0b21lck9iai5zaGlwcGluZ0FkZHJlc3MgPSBzaGlwcGluZ0FkZHJlc3M7XHJcblxyXG4gICAgICAgIGxldCBiaWxsaW5nQWRkcmVzcyA9IFtdIGFzIEFkZHJlc3NbXTtcclxuICAgICAgICBsZXQgYmlsbGluZ0FkZHJlc3NPYmogPSB7fSBhcyBBZGRyZXNzO1xyXG4gICAgICAgIGJpbGxpbmdBZGRyZXNzT2JqLmlkID0gdGhpcy5vcmRlckRldGFpbHMuYmlsbGluZ19hZGRyZXNzICYmIHRoaXMub3JkZXJEZXRhaWxzLmJpbGxpbmdfYWRkcmVzcy5pZCA/IHRoaXMub3JkZXJEZXRhaWxzLmJpbGxpbmdfYWRkcmVzcy5pZCA6ICcnO1xyXG4gICAgICAgIGJpbGxpbmdBZGRyZXNzT2JqLmNvdW50cnlDb2RlID0gdGhpcy5vcmRlckRldGFpbHMuYmlsbGluZ19hZGRyZXNzICYmIHRoaXMub3JkZXJEZXRhaWxzLmJpbGxpbmdfYWRkcmVzcy5jb3VudHJ5X2NvZGUgPyB0aGlzLm9yZGVyRGV0YWlscy5iaWxsaW5nX2FkZHJlc3MuY291bnRyeV9jb2RlIDogJyc7XHJcbiAgICAgICAgYmlsbGluZ0FkZHJlc3NPYmouYWRkcmVzczEgPSB0aGlzLm9yZGVyRGV0YWlscy5iaWxsaW5nX2FkZHJlc3MgJiYgdGhpcy5vcmRlckRldGFpbHMuYmlsbGluZ19hZGRyZXNzLmFkZHJlc3MxID8gdGhpcy5vcmRlckRldGFpbHMuYmlsbGluZ19hZGRyZXNzLmFkZHJlc3MxIDogJyc7XHJcbiAgICAgICAgYmlsbGluZ0FkZHJlc3NPYmouY2l0eSA9IHRoaXMub3JkZXJEZXRhaWxzLmJpbGxpbmdfYWRkcmVzcyAmJiB0aGlzLm9yZGVyRGV0YWlscy5iaWxsaW5nX2FkZHJlc3MuY2l0eSA/IHRoaXMub3JkZXJEZXRhaWxzLmJpbGxpbmdfYWRkcmVzcy5jaXR5IDogJyc7XHJcbiAgICAgICAgYmlsbGluZ0FkZHJlc3NPYmouY291bnRyeSA9ICcnO1xyXG4gICAgICAgIGJpbGxpbmdBZGRyZXNzT2JqLnBvc3RDb2RlID0gJyc7XHJcbiAgICAgICAgYmlsbGluZ0FkZHJlc3MucHVzaChiaWxsaW5nQWRkcmVzc09iaik7XHJcbiAgICAgICAgY3VzdG9tZXJPYmouYmlsbGluZ0FkZHJlc3MgPSBiaWxsaW5nQWRkcmVzcztcclxuXHJcbiAgICAgICAgbGV0IHNoaXBtZW50RGV0YWlscyA9IFtdIGFzIFNoaXBtZW50RGV0YWlsc1tdO1xyXG4gICAgICAgIHRoaXMub3JkZXJEZXRhaWxzLnNoaXBtZW50cy5mb3JFYWNoKFxyXG4gICAgICAgICAgICBzaGlwbWVudCA9PiB7XHJcbiAgICAgICAgICAgICAgICBsZXQgc2hpcG1lbnREZXRhaWxzT2JqID0ge30gYXMgU2hpcG1lbnREZXRhaWxzO1xyXG4gICAgICAgICAgICAgICAgc2hpcG1lbnREZXRhaWxzT2JqLmlkID0gc2hpcG1lbnQuc2hpcG1lbnRfaWQgPyBzaGlwbWVudC5zaGlwbWVudF9pZCA6ICcnO1xyXG4gICAgICAgICAgICAgICAgc2hpcG1lbnREZXRhaWxzT2JqLmRlbGl2ZXJ5R3JvdXAgPSBzaGlwbWVudC5zaGlwbWVudF9pZCA/IHNoaXBtZW50LnNoaXBtZW50X2lkIDogJyc7XHJcbiAgICAgICAgICAgICAgICBzaGlwbWVudERldGFpbHMucHVzaChzaGlwbWVudERldGFpbHNPYmopO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuICAgICAgICBjdXN0b21lck9iai5zaGlwbWVudERldGFpbHMgPSBzaGlwbWVudERldGFpbHM7XHJcblxyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmN1c3RvbWVyID0gY3VzdG9tZXJPYmo7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJNYXBwZXIgbGlicmFyeTogV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlckJ1aWxkZXJDbGFzczogY3VzdG9tZXIgbWFwcGluZyBlbmRlZC4uLlwiKTtcclxuICAgICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICBleHRlcm5hbFRyYW5zYWN0aW9uRGV0YWlscygpIHtcclxuICAgICAgICBjb25zb2xlLmxvZyhcIk1hcHBlciBsaWJyYXJ5OiBXZWJSZXR1cm5TYWxlc2ZvcmNlTWFwcGVyQnVpbGRlckNsYXNzOiBleHRlcm5hbFRyYW5zYWN0aW9uRGV0YWlscyBtYXBwaW5nIHN0YXJ0ZWQuLi5cIik7XHJcbiAgICAgICAgbGV0IGV4dGVybmFsVHJhbnNhY3Rpb25EZXRhaWxzID0gW10gYXMgZXh0ZXJuYWxUcmFuc2FjdGlvbkRldGFpbHNbXTtcclxuICAgICAgICBpZiAodGhpcy5vcmRlckRldGFpbHMuc2hpcG1lbnRzICYmIHRoaXMub3JkZXJEZXRhaWxzLnNoaXBtZW50cy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMub3JkZXJEZXRhaWxzLnNoaXBtZW50cy5mb3JFYWNoKFxyXG4gICAgICAgICAgICAgICAgc2hpcG1lbnQgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBleHRlcm5hbFRyYW5zYWN0aW9uRGV0YWlsc09iaiA9IHt9IGFzIGV4dGVybmFsVHJhbnNhY3Rpb25EZXRhaWxzO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCB0cmFuc2FjdGlvbkluZm8gPSB7fSBhcyBUcmFuc2FjdGlvbkluZm87XHJcbiAgICAgICAgICAgICAgICAgICAgZXh0ZXJuYWxUcmFuc2FjdGlvbkRldGFpbHNPYmoudW5pcXVlSWQgPSB0aGlzLm9yZGVyRGV0YWlscy5vcmRlcl9ubyA/IHRoaXMub3JkZXJEZXRhaWxzLm9yZGVyX25vIDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgZXh0ZXJuYWxUcmFuc2FjdGlvbkRldGFpbHNPYmoucHJvdmlkZXJUeXBlID0gUFJPVklERVJTLlNBTEVTRk9SQ0U7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25JbmZvLnNoaXBwaW5nSWQgPSBzaGlwbWVudC5zaGlwcGluZ19tZXRob2QgJiYgc2hpcG1lbnQuc2hpcHBpbmdfbWV0aG9kLmlkID8gc2hpcG1lbnQuc2hpcHBpbmdfbWV0aG9kLmlkIDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25JbmZvLmV4dGVybmFsU2hpcHBpbmdJZCA9IHNoaXBtZW50LnNoaXBtZW50X2lkID8gc2hpcG1lbnQuc2hpcG1lbnRfaWQgOiAnJztcclxuICAgICAgICAgICAgICAgICAgICBleHRlcm5hbFRyYW5zYWN0aW9uRGV0YWlsc09iai5kZXRhaWxzID0gdHJhbnNhY3Rpb25JbmZvO1xyXG4gICAgICAgICAgICAgICAgICAgIGV4dGVybmFsVHJhbnNhY3Rpb25EZXRhaWxzLnB1c2goZXh0ZXJuYWxUcmFuc2FjdGlvbkRldGFpbHNPYmopO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdC5leHRlcm5hbFRyYW5zYWN0aW9uRGV0YWlscyA9IGV4dGVybmFsVHJhbnNhY3Rpb25EZXRhaWxzO1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IGV4dGVybmFsVHJhbnNhY3Rpb25EZXRhaWxzIG1hcHBpbmcgZW5kZWQuLi5cIik7XHJcbiAgICAgICAgcmV0dXJuIHRoaXM7XHJcbiAgICB9XHJcblxyXG4gICAgYmFza2V0U3VtbWFyeSgpIHtcclxuICAgICAgICBjb25zb2xlLmxvZyhcIk1hcHBlciBsaWJyYXJ5OiBXZWJSZXR1cm5TYWxlc2ZvcmNlTWFwcGVyQnVpbGRlckNsYXNzOiBiYXNrZXRTdW1tYXJ5IG1hcHBpbmcgc3RhcnRlZC4uLlwiKTtcclxuICAgICAgICBsZXQgYmFza2V0U3VtbWFyeSA9IHt9IGFzIEJhc2tldFN1bW1hcnk7XHJcbiAgICAgICAgbGV0IGJhc2tldFN1bW1hcnlXZWJPcmRlciA9IHt9IGFzIEJhc2tldFN1bW1hcnlEZXRhaWxzO1xyXG4gICAgICAgIGNvbnN0IGxpbmVQcm9tb3Rpb25Ub3RhbCA9IHRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2tldC5saW5lUHJvbW90aW9uLm1hcChsaW5lUHJvbW90aW9uID0+IGxpbmVQcm9tb3Rpb24ucHJvbW90aW9uQW1vdW50KS5yZWR1Y2UoKGFjY3VtdWxhdG9yLCBjdXJyZW50VmFsdWUpID0+IGFjY3VtdWxhdG9yICsgY3VycmVudFZhbHVlLCAwKTtcclxuICAgICAgICBjb25zdCB0cmFuc2FjdGlvblByb21vdGlvblRvdGFsID0gdGhpcy53ZWJSZXR1cm5PYmplY3QuYmFza2V0LnRyYW5zYWN0aW9uUHJvbW90aW9uLm1hcCh0cmFuc2FjdGlvblByb21vdGlvbiA9PiB0cmFuc2FjdGlvblByb21vdGlvbi5wcm9tb3Rpb25BbW91bnQpLnJlZHVjZSgoYWNjdW11bGF0b3IsIGN1cnJlbnRWYWx1ZSkgPT4gYWNjdW11bGF0b3IgKyBjdXJyZW50VmFsdWUsIDApO1xyXG4gICAgICAgIGJhc2tldFN1bW1hcnkuZGlzY291bnRUb3RhbCA9IGxpbmVQcm9tb3Rpb25Ub3RhbCArIHRyYW5zYWN0aW9uUHJvbW90aW9uVG90YWw7XHJcbiAgICAgICAgYmFza2V0U3VtbWFyeS5WQVRUb3RhbCA9IHRoaXMub3JkZXJEZXRhaWxzLnRheF90b3RhbCA/IHRoaXMub3JkZXJEZXRhaWxzLnRheF90b3RhbCA6IDA7XHJcbiAgICAgICAgYmFza2V0U3VtbWFyeS5zYWxlVG90YWwgPSB0aGlzLm9yZGVyRGV0YWlscy5vcmRlcl90b3RhbCA/IHRoaXMub3JkZXJEZXRhaWxzLm9yZGVyX3RvdGFsIDogMDtcclxuICAgICAgICBiYXNrZXRTdW1tYXJ5LmJhc2tldFRvdGFsID0gdGhpcy5vcmRlckRldGFpbHMub3JkZXJfdG90YWwgPyB0aGlzLm9yZGVyRGV0YWlscy5vcmRlcl90b3RhbCA6IDA7XHJcbiAgICAgICAgYmFza2V0U3VtbWFyeS50b3RhbEl0ZW1zID0gdGhpcy5vcmRlckRldGFpbHMucHJvZHVjdF9pdGVtcyAmJiB0aGlzLm9yZGVyRGV0YWlscy5wcm9kdWN0X2l0ZW1zLmxlbmd0aCA+IDAgPyB0aGlzLm9yZGVyRGV0YWlscy5wcm9kdWN0X2l0ZW1zLmxlbmd0aCA6IDA7XHJcbiAgICAgICAgYmFza2V0U3VtbWFyeS5zaGlwcGluZ1RvdGFsID0gdGhpcy5vcmRlckRldGFpbHMuc2hpcHBpbmdfdG90YWwgPyB0aGlzLm9yZGVyRGV0YWlscy5zaGlwcGluZ190b3RhbCA6IDA7XHJcbiAgICAgICAgYmFza2V0U3VtbWFyeS5iYXNrZXRUb3RhbFdpdGhTaGlwcGluZ1RvdGFsID0gdGhpcy5vcmRlckRldGFpbHMub3JkZXJfdG90YWwgPyB0aGlzLm9yZGVyRGV0YWlscy5vcmRlcl90b3RhbCA6IDA7XHJcbiAgICAgICAgYmFza2V0U3VtbWFyeVdlYk9yZGVyLnNoaXBwaW5nVG90YWwgPSB0aGlzLm9yZGVyRGV0YWlscy5zaGlwcGluZ190b3RhbCA/IHRoaXMub3JkZXJEZXRhaWxzLnNoaXBwaW5nX3RvdGFsIDogMDtcclxuICAgICAgICBiYXNrZXRTdW1tYXJ5V2ViT3JkZXIuYmFza2V0VG90YWxXaXRoU2hpcHBpbmdUb3RhbCA9IHRoaXMub3JkZXJEZXRhaWxzLm9yZGVyX3RvdGFsID8gdGhpcy5vcmRlckRldGFpbHMub3JkZXJfdG90YWwgOiAwO1xyXG4gICAgICAgIGJhc2tldFN1bW1hcnkud2ViT3JkZXIgPSBiYXNrZXRTdW1tYXJ5V2ViT3JkZXI7XHJcbiAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3QuYmFza2V0U3VtbWFyeSA9IGJhc2tldFN1bW1hcnk7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJNYXBwZXIgbGlicmFyeTogV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlckJ1aWxkZXJDbGFzczogYmFza2V0U3VtbWFyeSBtYXBwaW5nIGVuZGVkLi4uXCIpO1xyXG4gICAgICAgIHJldHVybiB0aGlzO1xyXG4gICAgfVxyXG5cclxuICAgIGRldmljZUlkKGRldmljZUlkKSB7XHJcbiAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3QuZGV2aWNlSWQgPSBkZXZpY2VJZDtcclxuICAgICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICB0ZXJtaW5hbElkKHRlcm1pbmFsSWQpIHtcclxuICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdC50ZXJtaW5hbElkID0gdGVybWluYWxJZDtcclxuICAgICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICBvcmdDb2RlKG9yZ0NvZGUpIHtcclxuICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdC5vcmdDb2RlID0gb3JnQ29kZTtcclxuICAgICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICBzdG9yZUlkKHN0b3JlSWQpIHtcclxuICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdC5zdG9yZUlkID0gc3RvcmVJZDtcclxuICAgICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICBzdG9yZU5vZGVJZChzdG9yZU5vZGVJZDogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3Quc3RvcmVOb2RlSWQgPSBzdG9yZU5vZGVJZDtcclxuICAgICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICBzdG9yZU5vZGVTdHJ1Y3R1cmUoc3RvcmVOb2RlU3RydWN0dXJlOiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdC5zdG9yZU5vZGVTdHJ1Y3R1cmUgPSBzdG9yZU5vZGVTdHJ1Y3R1cmU7XHJcbiAgICAgICAgcmV0dXJuIHRoaXM7XHJcbiAgICB9XHJcblxyXG4gICAgZG9jSWQoZG9jSWQpIHtcclxuICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdC5pZCA9IGRvY0lkO1xyXG4gICAgICAgIHJldHVybiB0aGlzO1xyXG4gICAgfVxyXG5cclxuICAgIHVwZGF0ZVVzZXJJRCh1c2VySUQ6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LnVzZXJJZCA9IHVzZXJJRDtcclxuICAgICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICB1cGRhdGVVc2VyTmFtZShuYW1lKSB7XHJcbiAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3QudXNlck5hbWUgPSBuYW1lO1xyXG4gICAgICAgIHJldHVybiB0aGlzO1xyXG4gICAgfVxyXG5cclxuICAgIGJ1aWxkKCkge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IG1hcHBpbmcgZG9uZS4uLlwiKTtcclxuICAgICAgICByZXR1cm4gdGhpcy53ZWJSZXR1cm5PYmplY3Q7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0VVRDRGF0ZVRpbWUoZGF0ZSkge1xyXG4gICAgICAgIGlmIChkYXRlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBuZXcgRGF0ZShkYXRlKS50b0lTT1N0cmluZygpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
|
|
857
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlci5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BwbWNyZXRhaWwvbWFwcGVyLWxpYnJhcnkvIiwic291cmNlcyI6WyJsaWIvV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlci5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLE9BQU8sRUFBcUYsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBZ0MsU0FBUyxFQUFtQixnQkFBZ0IsRUFBa0ksTUFBTSx3QkFBd0IsQ0FBQztBQUM3WSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUUxRDtJQWlDSSwrQ0FBWSxZQUEwQixFQUMxQixZQUEyQjtRQUEzQixpQkFBWSxHQUFaLFlBQVksQ0FBZTtRQS9CL0Isb0JBQWUsR0FBd0I7WUFDM0MsRUFBRSxFQUFFLEVBQUU7WUFDTixPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxFQUFFO1lBQ1gsV0FBVyxFQUFFLEVBQUU7WUFDZixrQkFBa0IsRUFBRSxFQUFFO1lBQ3RCLFFBQVEsRUFBRSxFQUFFO1lBQ1osVUFBVSxFQUFFLEVBQUU7WUFDZCxnQkFBZ0IsRUFBRSxFQUFFO1lBQ3BCLE1BQU0sRUFBRSxLQUFLO1lBQ2IsY0FBYyxFQUFFLEtBQUs7WUFDckIsTUFBTSxFQUFFLEVBQUU7WUFDVixhQUFhLEVBQUUsRUFBRTtZQUNqQixZQUFZLEVBQUUsRUFBRTtZQUNoQixRQUFRLEVBQUU7Z0JBQ04sRUFBRSxFQUFFLEVBQUU7Z0JBQ04sS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsU0FBUyxFQUFFLEVBQUU7Z0JBQ2IsUUFBUSxFQUFFLEVBQUU7Z0JBQ1osY0FBYyxFQUFFLEVBQUU7Z0JBQ2xCLGVBQWUsRUFBRSxFQUFFO2dCQUNuQixlQUFlLEVBQUUsRUFBRTtnQkFDbkIsU0FBUyxFQUFFLEVBQUU7Z0JBQ2IsUUFBUSxFQUFFLEVBQUU7Z0JBQ1osa0JB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RUQsOERBQWM7Ozs7SUFBZCxVQUFlLElBQUk7UUFDZixJQUFJLElBQUksRUFBRTtZQUNOLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDdkM7SUFDTCxDQUFDO0lBQ0wsNENBQUM7QUFBRCxDQUFDLEFBN2RELElBNmRDOzs7Ozs7O0lBM2RHLDZEQUFtQzs7Ozs7SUFDbkMsZ0VBMkJDOztJQUNELGtFQUF1Qjs7Ozs7SUFHbkIsNkRBQW1DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3VycmVuY3lQaXBlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBBZGRyZXNzLCBCYXNrZXRTdW1tYXJ5LCBCYXNrZXRTdW1tYXJ5RGV0YWlscywgQ3VycmVudFRyYW5zYWN0aW9uRGV0YWlscywgQ3VzdG9tZXIsIERFTElWRVJZX01FVEhPRFMsIFBST01PVElPTl9MRVZFTCwgUFJPTU9USU9OX1RZUEUsIElOSVRJQVRJTkdfTU9EVUxFLCBMaW5lUHJvbW90aW9ucywgT3JkZXJEZXRhaWxzLCBQUk9WSURFUlMsIFNoaXBtZW50RGV0YWlscywgVFJBTlNBQ1RJT05fVFlQRSwgVHJhbnNhY3Rpb25Eb2N1bWVudCwgVHJhbnNhY3Rpb25JbmZvLCBUcmFuc2FjdGlvblByb21vdGlvbiwgVHJpZ2dlciwgZXh0ZXJuYWxUcmFuc2FjdGlvbkRldGFpbHMsIFRQcm9kdWN0LCBSZWZ1bmRQcm9kdWN0Q2hhbmdlIH0gZnJvbSBcIi4vbWFwcGVyLWxpYnJhcnkubW9kZWxcIjtcclxuaW1wb3J0IHsgTnVtYmVyVXRpbFNlcnZpY2UgfSBmcm9tIFwiLi9udW1iZXItdXRpbC5zZXJ2aWNlXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlckJ1aWxkZXJDbGFzcyB7XHJcblxyXG4gICAgcHJpdmF0ZSBvcmRlckRldGFpbHM6IE9yZGVyRGV0YWlscztcclxuICAgIHByaXZhdGUgd2ViUmV0dXJuT2JqZWN0OiBUcmFuc2FjdGlvbkRvY3VtZW50ID0ge1xyXG4gICAgICAgIGlkOiAnJyxcclxuICAgICAgICBvcmdDb2RlOiBcIlwiLFxyXG4gICAgICAgIHN0b3JlSWQ6IFwiXCIsXHJcbiAgICAgICAgc3RvcmVOb2RlSWQ6IFwiXCIsXHJcbiAgICAgICAgc3RvcmVOb2RlU3RydWN0dXJlOiBcIlwiLFxyXG4gICAgICAgIGRldmljZUlkOiBcIlwiLFxyXG4gICAgICAgIHRlcm1pbmFsSWQ6IFwiXCIsXHJcbiAgICAgICAgaW5pdGlhdGluZ01vZHVsZTogXCJcIixcclxuICAgICAgICBleHBvcnQ6IGZhbHNlLFxyXG4gICAgICAgIGlzSW5TdG9yZU9yZGVyOiBmYWxzZSxcclxuICAgICAgICBiYXNrZXQ6IHt9LFxyXG4gICAgICAgIGJhc2tldFN1bW1hcnk6IHt9LFxyXG4gICAgICAgIGJhc2VDdXJyZW5jeTogXCJcIixcclxuICAgICAgICBjdXN0b21lcjoge1xyXG4gICAgICAgICAgICBpZDogJycsXHJcbiAgICAgICAgICAgIGVtYWlsOiAnJyxcclxuICAgICAgICAgICAgZmlyc3ROYW1lOiAnJyxcclxuICAgICAgICAgICAgbGFzdE5hbWU6ICcnLFxyXG4gICAgICAgICAgICBiaWxsaW5nQWRkcmVzczogW10sXHJcbiAgICAgICAgICAgIHNoaXBwaW5nQWRkcmVzczogW10sXHJcbiAgICAgICAgICAgIHNoaXBtZW50RGV0YWlsczogW10sXHJcbiAgICAgICAgICAgIHRlbGVwaG9uZTogJycsXHJcbiAgICAgICAgICAgIHBvc3RDb2RlOiAnJyxcclxuICAgICAgICAgICAgbm9DdXN0b21lclNlbGVjdGVkOiBmYWxzZVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgY3VycmVudFRyYW5zYWN0aW9uRGV0YWlsczoge30gYXMgQ3VycmVudFRyYW5zYWN0aW9uRGV0YWlsc1xyXG4gICAgfVxyXG4gICAgbnVtYmVyVXRpbFNlcnZpY2U6IGFueTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihvcmRlckRldGFpbHM6IE9yZGVyRGV0YWlscyxcclxuICAgICAgICBwcml2YXRlIGN1cnJlbmN5UGlwZT86IEN1cnJlbmN5UGlwZVxyXG4gICAgICAgICkge1xyXG4gICAgICAgIGlmIChvcmRlckRldGFpbHMpIHtcclxuICAgICAgICAgICAgdGhpcy5vcmRlckRldGFpbHMgPSBvcmRlckRldGFpbHM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubnVtYmVyVXRpbFNlcnZpY2UgPSBuZXcgTnVtYmVyVXRpbFNlcnZpY2UoY3VycmVuY3lQaXBlKTtcclxuICAgIH1cclxuXHJcbiAgICB3ZWJSZXR1cm5Db21tb25NYXBwZXIoKSB7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJNYXBwZXIgbGlicmFyeTogV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlckJ1aWxkZXJDbGFzczogd2ViUmV0dXJuQ29tbW9uTWFwcGVyIHN0YXJ0ZWQuLi5cIik7XHJcbiAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3RbJ3R5cGUnXSA9IFRSQU5TQUNUSU9OX1RZUEUuV0VCX1JFVFVSTlM7XHJcbiAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3RbJ2RhdGV0aW1lJ10gPSB0aGlzLmdldFVUQ0RhdGVUaW1lKHRoaXMub3JkZXJEZXRhaWxzLmxhc3RfbW9kaWZpZWQpO1xyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2VDdXJyZW5jeSA9IHRoaXMub3JkZXJEZXRhaWxzLmN1cnJlbmN5O1xyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LnN1YnNpZGlhcnlJZCA9ICcxJztcclxuICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdC5leHBvcnQgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmluaXRpYXRpbmdNb2R1bGUgPSBJTklUSUFUSU5HX01PRFVMRS5FQkFTS0VUO1xyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmNyZWF0ZWRBdCA9IHRoaXMuZ2V0VVRDRGF0ZVRpbWUodGhpcy5vcmRlckRldGFpbHMuY3JlYXRpb25fZGF0ZSk7XHJcbiAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3QudXBkYXRlZEF0ID0gdGhpcy5nZXRVVENEYXRlVGltZSh0aGlzLm9yZGVyRGV0YWlscy5sYXN0X21vZGlmaWVkKTtcclxuICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdC50cmFuc0NvbXBsZXRlZEF0ID0gdGhpcy5nZXRVVENEYXRlVGltZSh0aGlzLm9yZGVyRGV0YWlscy5sYXN0X21vZGlmaWVkKTtcclxuICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdFsnZXh0ZXJuYWxUcmFuc2FjdGlvbklkJ10gPSB0aGlzLm9yZGVyRGV0YWlscy5vcmRlcl9ubztcclxuICAgICAgICBjb25zb2xlLmxvZyhcIk1hcHBlciBsaWJyYXJ5OiBXZWJSZXR1cm5TYWxlc2ZvcmNlTWFwcGVyQnVpbGRlckNsYXNzOiB3ZWJSZXR1cm5Db21tb25NYXBwZXIgZW5kZWQuLi5cIik7XHJcbiAgICAgICAgcmV0dXJuIHRoaXM7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gZXhwb3J0KHN0YXR1cywgZGV0YWlscykge1xyXG4gICAgLy8gICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IGV4cG9ydCBtYXBwaW5nIHN0YXJ0ZWQuLi5cIik7XHJcbiAgICAvLyAgICAgY29uc29sZS5sb2coXCJNYXBwZXIgbGlicmFyeTogV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlckJ1aWxkZXJDbGFzczogc3RhdHVzOlwiLCBzdGF0dXMpO1xyXG4gICAgLy8gICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IGRldGFpbHM6XCIsIEpTT04uc3RyaW5naWZ5KGRldGFpbHMpKTtcclxuICAgIC8vICAgICBpZiAoc3RhdHVzICYmIGRldGFpbHMgJiYgZGV0YWlscy5wcm92aWRlcnMgJiYgZGV0YWlscy5wcm92aWRlcnMubGVuZ3RoID4gMCkge1xyXG4gICAgLy8gICAgICAgICBkZXRhaWxzLnByb3ZpZGVycy5mb3JFYWNoKFxyXG4gICAgLy8gICAgICAgICAgICAgcHJvdmlkZXJPYmogPT4ge1xyXG4gICAgLy8gICAgICAgICAgICAgICAgIGlmIChwcm92aWRlck9iai5wcm92aWRlciAmJiBwcm92aWRlck9iai5wcm92aWRlciA9PT0gUFJPVklERVJTLlNBTEVTRk9SQ0UpIHtcclxuICAgIC8vICAgICAgICAgICAgICAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3QuZXhwb3J0ID0gdHJ1ZTtcclxuICAgIC8vICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgLy8gICAgICAgICAgICAgICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdC5leHBvcnQgPSBmYWxzZTtcclxuICAgIC8vICAgICAgICAgICAgICAgICB9XHJcbiAgICAvLyAgICAgICAgICAgICB9XHJcbiAgICAvLyAgICAgICAgICk7XHJcbiAgICAvLyAgICAgfSBlbHNlIHtcclxuICAgIC8vICAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3QuZXhwb3J0ID0gZmFsc2U7XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IGV4cG9ydCBtYXBwaW5nIGVuZC4uLlwiKVxyXG4gICAgLy8gICAgIHJldHVybiB0aGlzO1xyXG4gICAgLy8gfVxyXG5cclxuICAgIGdldERlbGl2ZXJ5TWV0aG9kKCkge1xyXG4gICAgICAgIGlmKHRoaXMub3JkZXJEZXRhaWxzLnNoaXBtZW50cyAmJiB0aGlzLm9yZGVyRGV0YWlscy5zaGlwbWVudHMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICBjb25zdCBzaGlwVG9TdG9yZVNoaXBtZW50ID0gdGhpcy5vcmRlckRldGFpbHMuc2hpcG1lbnRzLmZpbmQoc2hpcG1lbnQgPT4gc2hpcG1lbnQuY19mcm9tU3RvcmVJZCk7XHJcbiAgICAgICAgICAgIGlmKHNoaXBUb1N0b3JlU2hpcG1lbnQpIHJldHVybiBERUxJVkVSWV9NRVRIT0RTLlNISVBfVE9fU1RPUkU7XHJcbiAgICAgICAgICAgIGVsc2UgcmV0dXJuIERFTElWRVJZX01FVEhPRFMuREVMSVZFUlk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcm9kdWN0KCkge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IHByb2R1Y3QgbWFwcGluZyBzdGFydGVkLi4uXCIpO1xyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2tldFsncHJvZHVjdHMnXSA9IFtdO1xyXG4gICAgICAgIGlmICh0aGlzLm9yZGVyRGV0YWlscy5wcm9kdWN0X2l0ZW1zICYmIHRoaXMub3JkZXJEZXRhaWxzLnByb2R1Y3RfaXRlbXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICB0aGlzLm9yZGVyRGV0YWlscy5wcm9kdWN0X2l0ZW1zLmZvckVhY2goXHJcbiAgICAgICAgICAgICAgICAocHJvZHVjdCwgaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBwcm9kdWN0T2JqID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogcHJvZHVjdC5pdGVtX3RleHQgPyBwcm9kdWN0Lml0ZW1fdGV4dCA6ICcnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBTS1U6IHByb2R1Y3QucHJvZHVjdF9pZCA/IHByb2R1Y3QucHJvZHVjdF9pZCA6ICcnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBxdWFudGl0eTogcHJvZHVjdC5xdWFudGl0eSA/IHByb2R1Y3QucXVhbnRpdHkgOiAwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZWZ1bmRlZFF1YW50aXR5OiAwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwcmljZTogcHJvZHVjdC5iYXNlX3ByaWNlID8gcHJvZHVjdC5iYXNlX3ByaWNlIDogMCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbUxpbmVJZDogKGluZGV4ICsgMSkudG9TdHJpbmcoKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGVsaXZlcnlNZXRob2Q6IHRoaXMuZ2V0RGVsaXZlcnlNZXRob2QoKS50b1N0cmluZygpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3RhbExpbmVQcmljZTogcHJvZHVjdC5wcmljZSA/IHByb2R1Y3QucHJpY2UgOiAwXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGlmIChwcm9kdWN0ICYmIHByb2R1Y3QucHJpY2UgIT0gMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdC5iYXNrZXRbJ3Byb2R1Y3RzJ10ucHVzaChwcm9kdWN0T2JqKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IHByb2R1Y3QgbWFwcGluZyBlbmRlZC4uLlwiKTtcclxuICAgICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICBsaW5lUHJvbW90aW9uKCkge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IGxpbmVQcm9tb3Rpb24gbWFwcGluZyBzdGFydGVkLi4uXCIpO1xyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2tldC5saW5lUHJvbW90aW9uID0gW10gYXMgTGluZVByb21vdGlvbnNbXTtcclxuICAgICAgICBsZXQgbGluZVByb21vdGlvbkFycmF5ID0gW10gYXMgTGluZVByb21vdGlvbnNbXTtcclxuICAgICAgICBpZiAodGhpcy5vcmRlckRldGFpbHMucHJvZHVjdF9pdGVtcyAmJiB0aGlzLm9yZGVyRGV0YWlscy5wcm9kdWN0X2l0ZW1zLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgdGhpcy5vcmRlckRldGFpbHMucHJvZHVjdF9pdGVtcy5mb3JFYWNoKFxyXG4gICAgICAgICAgICAgICAgKHByb2R1Y3QsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcHJvZHVjdC5pdGVtX2lkID0gKGluZGV4ICsgMSkudG9TdHJpbmcoKTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAocHJvZHVjdC5wcmljZV9hZGp1c3RtZW50cyAmJiBwcm9kdWN0LnByaWNlX2FkanVzdG1lbnRzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcHJvZHVjdC5wcmljZV9hZGp1c3RtZW50cy5mb3JFYWNoKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKHByb21vdGlvbikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghcHJvbW90aW9uLmNvdXBvbl9jb2RlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBsaW5lUHJvbW90aW9uT2JqID0ge30gYXMgTGluZVByb21vdGlvbnM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0cmlnZ2VyID0ge30gYXMgVHJpZ2dlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJpZ2dlci5pdGVtTGluZUlkID0gcHJvZHVjdC5pdGVtX2lkO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyLnF1YW50aXR5ID0gcHJvZHVjdC5xdWFudGl0eSA/IHByb2R1Y3QucXVhbnRpdHkgOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lUHJvbW90aW9uT2JqLnRyaWdnZXIgPSBbXSBhcyBUcmlnZ2VyW107XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVQcm9tb3Rpb25PYmoudHJpZ2dlci5wdXNoKHRyaWdnZXIpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZVByb21vdGlvbk9iai5pdGVtTGluZUlkID0gaW5kZXggKyAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lUHJvbW90aW9uT2JqLnByb21vdGlvbklkID0gcHJvbW90aW9uLnByb21vdGlvbl9pZCA/IHByb21vdGlvbi5wcm9tb3Rpb25faWQgOiAnJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZVByb21vdGlvbk9iai5kaXNwbGF5VGV4dCA9IHByb21vdGlvbi5pdGVtX3RleHQgPyBwcm9tb3Rpb24uaXRlbV90ZXh0IDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVQcm9tb3Rpb25PYmoucHJvbW90aW9uVHlwZSA9IHByb21vdGlvbi5hcHBsaWVkX2Rpc2NvdW50ICYmIHByb21vdGlvbi5hcHBsaWVkX2Rpc2NvdW50LnR5cGUgPyBwcm9tb3Rpb24uYXBwbGllZF9kaXNjb3VudC50eXBlIDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVQcm9tb3Rpb25PYmoucHJvbW90aW9uQW1vdW50ID0gcHJvbW90aW9uLnByaWNlID8gTWF0aC5hYnMocHJvbW90aW9uLnByaWNlKSA6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVQcm9tb3Rpb25PYmoubmFtZSA9IHByb21vdGlvbi5jb3Vwb25fY29kZSAgPyBwcm9tb3Rpb24uY291cG9uX2NvZGUgOiAocHJvbW90aW9uLml0ZW1fdGV4dCA/IHByb21vdGlvbi5pdGVtX3RleHQgOicnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZVByb21vdGlvbk9iai5wcm9tb3Rpb25JbmZvID0gcHJvbW90aW9uLml0ZW1fdGV4dCA/IHByb21vdGlvbi5pdGVtX3RleHQgOiAnJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZVByb21vdGlvbk9iai5wcm9tb3Rpb25MaW5lUHJpY2UgPSBwcm9kdWN0LnByaWNlIC0gTWF0aC5hYnMocHJvbW90aW9uLnByaWNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZVByb21vdGlvbkFycmF5LnB1c2gobGluZVByb21vdGlvbk9iaik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3QuYmFza2V0LmxpbmVQcm9tb3Rpb24gPSBsaW5lUHJvbW90aW9uQXJyYXk7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJNYXBwZXIgbGlicmFyeTogV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlckJ1aWxkZXJDbGFzczogbGluZVByb21vdGlvbiBtYXBwaW5nIGVuZGVkLi4uXCIpO1xyXG4gICAgICAgIHJldHVybiB0aGlzO1xyXG4gICAgfVxyXG5cclxuICAgIHRyYW5zYWN0aW9uUHJvbW90aW9uKCkge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IHRyYW5zYWN0aW9uUHJvbW90aW9uIG1hcHBpbmcgc3RhcnRlZC4uLlwiKTtcclxuXHJcbiAgICAgICAgbGV0IHRyYW5zYWN0aW9uUHJvbW90aW9uQXJyYXkgPSB0aGlzLmdldFRyYW5zYWN0aW9uUHJvbW90aW9ucyh0aGlzLm9yZGVyRGV0YWlscyk7XHJcblxyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2tldC50cmFuc2FjdGlvblByb21vdGlvbiA9IHRyYW5zYWN0aW9uUHJvbW90aW9uQXJyYXk7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJNYXBwZXIgbGlicmFyeTogV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlckJ1aWxkZXJDbGFzczogdHJhbnNhY3Rpb25Qcm9tb3Rpb24gbWFwcGluZyBlbmRlZC4uLlwiKTtcclxuICAgICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICBnZXRUcmFuc2FjdGlvblByb21vdGlvbnMoYmFza2V0KTogVHJhbnNhY3Rpb25Qcm9tb3Rpb25bXSB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgbGV0IHRyYW5zYWN0aW9uUHJvbW90aW9uQXJyYXkgPSBbXSBhcyBUcmFuc2FjdGlvblByb21vdGlvbltdO1xyXG4gICAgICAgICAgICBpZiAoYmFza2V0Lm9yZGVyX3ByaWNlX2FkanVzdG1lbnRzICYmIGJhc2tldC5vcmRlcl9wcmljZV9hZGp1c3RtZW50cy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICBiYXNrZXQub3JkZXJfcHJpY2VfYWRqdXN0bWVudHMuZm9yRWFjaChcclxuICAgICAgICAgICAgICAgICAgICAodHJhbnNhY3Rpb25Qcm9tb3Rpb24pID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRyYW5zYWN0aW9uUHJvbW90aW9uT2JqID0ge30gYXMgVHJhbnNhY3Rpb25Qcm9tb3Rpb247XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbk9iai5kaXNwbGF5VGV4dCA9IHRyYW5zYWN0aW9uUHJvbW90aW9uLml0ZW1fdGV4dCA/IHRyYW5zYWN0aW9uUHJvbW90aW9uLml0ZW1fdGV4dCA6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbk9iai5uYW1lID0gdHJhbnNhY3Rpb25Qcm9tb3Rpb24uY291cG9uX2NvZGUgPyB0cmFuc2FjdGlvblByb21vdGlvbi5jb3Vwb25fY29kZSA6ICh0cmFuc2FjdGlvblByb21vdGlvbiAuaXRlbV90ZXh0P3RyYW5zYWN0aW9uUHJvbW90aW9uLml0ZW1fdGV4dCA6ICcnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25Qcm9tb3Rpb25PYmoucHJvbW90aW9uQW1vdW50ID0gdHJhbnNhY3Rpb25Qcm9tb3Rpb24ucHJpY2UgPyBNYXRoLmFicyh0cmFuc2FjdGlvblByb21vdGlvbi5wcmljZSkgOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbk9iai5wcm9tb3Rpb25JZCA9IHRyYW5zYWN0aW9uUHJvbW90aW9uLnByb21vdGlvbl9pZCA/IHRyYW5zYWN0aW9uUHJvbW90aW9uLnByb21vdGlvbl9pZCA6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbk9iai5wcm9tb3Rpb25JbmZvID0gdHJhbnNhY3Rpb25Qcm9tb3Rpb24uaXRlbV90ZXh0ID8gdHJhbnNhY3Rpb25Qcm9tb3Rpb24uaXRlbV90ZXh0IDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zYWN0aW9uUHJvbW90aW9uT2JqLnByb21vdGlvblR5cGUgPSB0cmFuc2FjdGlvblByb21vdGlvbi5hcHBsaWVkX2Rpc2NvdW50ICYmIHRyYW5zYWN0aW9uUHJvbW90aW9uLmFwcGxpZWRfZGlzY291bnQudHlwZSA/IHRyYW5zYWN0aW9uUHJvbW90aW9uLmFwcGxpZWRfZGlzY291bnQudHlwZSA6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbk9iai5pdGVtTGluZUlkcyA9IHRoaXMub3JkZXJEZXRhaWxzLnByb2R1Y3RfaXRlbXMubWFwKChwcm9kdWN0LCBpbmRleCkgPT4gaW5kZXggKyAxKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRyYW5zYWN0aW9uUHJvbW90aW9uLmNvdXBvbl9jb2RlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbk9iai50eXBlID0gUFJPTU9USU9OX1RZUEUuQ09VUE9OO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25Qcm9tb3Rpb25PYmouY291cG9uQ29kZSA9IHRyYW5zYWN0aW9uUHJvbW90aW9uLmNvdXBvbl9jb2RlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25Qcm9tb3Rpb25PYmouc3ViTGV2ZWxUeXBlID0gUFJPTU9USU9OX0xFVkVMLlRSQU5TQUNUSU9OO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zYWN0aW9uUHJvbW90aW9uQXJyYXkucHVzaCh0cmFuc2FjdGlvblByb21vdGlvbk9iaik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IGdldFRyYW5zYWN0aW9uUHJvbW90aW9ucyA6IFwiLCBKU09OLnN0cmluZ2lmeSh0cmFuc2FjdGlvblByb21vdGlvbkFycmF5KSk7XHJcbiAgICAgICAgICAgIHJldHVybiB0cmFuc2FjdGlvblByb21vdGlvbkFycmF5O1xyXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6ICBmYWlsZWQ6XCIsIGVycm9yKTtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCJNYXBwZXIgbGlicmFyeTogV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlckJ1aWxkZXJDbGFzczogIGZhaWxlZDpcIiwgSlNPTi5zdHJpbmdpZnkoZXJyb3IpKTtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGVycm9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlTGluZVByb21vdGlvbldpdGhDb3Vwb24oKSB7XHJcbiAgICAgICAgdHJ5IHtcclxuXHJcbiAgICAgICAgICAgIGxldCB0cmFuc2FjdGlvblByb21vdGlvbiA9IHt9IGFzIFRyYW5zYWN0aW9uUHJvbW90aW9uO1xyXG4gICAgICAgICAgICBsZXQgdHJpZ2dlclByb21vdGlvbiA9IFtdIGFzIFRyaWdnZXJbXTtcclxuICAgICAgICAgICAgaWYgKHRoaXMub3JkZXJEZXRhaWxzLnByb2R1Y3RfaXRlbXMgJiYgdGhpcy5vcmRlckRldGFpbHMucHJvZHVjdF9pdGVtcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm9yZGVyRGV0YWlscy5wcm9kdWN0X2l0ZW1zLmZvckVhY2goXHJcbiAgICAgICAgICAgICAgICAgICAgKHByb2R1Y3QsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHByb2R1Y3QuaXRlbV9pZCA9IChpbmRleCArIDEpLnRvU3RyaW5nKCk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocHJvZHVjdC5wcmljZV9hZGp1c3RtZW50cyAmJiBwcm9kdWN0LnByaWNlX2FkanVzdG1lbnRzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2R1Y3QucHJpY2VfYWRqdXN0bWVudHMuZm9yRWFjaChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocHJvbW90aW9uKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwcm9tb3Rpb24uY291cG9uX2NvZGUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0cmlnZ2VyID0ge30gYXMgVHJpZ2dlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyaWdnZXIuaXRlbUxpbmVJZCA9IHByb2R1Y3QuaXRlbV9pZDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyaWdnZXIucXVhbnRpdHkgPSBwcm9kdWN0LnF1YW50aXR5ID8gcHJvZHVjdC5xdWFudGl0eSA6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyLnRvdGFsUXVhbnRpdHkgPSBwcm9kdWN0LnF1YW50aXR5ID8gcHJvZHVjdC5xdWFudGl0eSA6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyLnByb21vdGlvbkFtb3VudCA9IHByb21vdGlvbi5wcmljZSA/IE1hdGguYWJzKHByb21vdGlvbi5wcmljZSkgOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJpZ2dlci5yZWZ1bmRlZFJlYXNvbiA9IHByb21vdGlvbi5jb3Vwb25fY29kZSA/IHByb21vdGlvbi5jb3Vwb25fY29kZSA6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJpZ2dlci5yZWZ1bmRlZFJlYXNvbkRlc2NyaXB0aW9uID0gcHJvbW90aW9uLml0ZW1fdGV4dCA/IHByb21vdGlvbi5pdGVtX3RleHQgOiAnJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyaWdnZXIucHJvbW90aW9uSWQgPSBwcm9tb3Rpb24ucHJvbW90aW9uX2lkO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJpZ2dlclByb21vdGlvbi5wdXNoKHRyaWdnZXIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmICh0cmlnZ2VyUHJvbW90aW9uLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zYWN0aW9uUHJvbW90aW9uLmRpc3BsYXlUZXh0ID0gdHJpZ2dlclByb21vdGlvblswXS5yZWZ1bmRlZFJlYXNvbkRlc2NyaXB0aW9uO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25Qcm9tb3Rpb24ubmFtZSA9IHRyaWdnZXJQcm9tb3Rpb25bMF0ucmVmdW5kZWRSZWFzb247XHJcbiAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbi5wcm9tb3Rpb25BbW91bnQgPSAtKHRyaWdnZXJQcm9tb3Rpb24ucmVkdWNlKChuLCB7IHByb21vdGlvbkFtb3VudCB9KSA9PiBuICsgcHJvbW90aW9uQW1vdW50LCAwKSk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbi5wcm9tb3Rpb25JZCA9IHRyaWdnZXJQcm9tb3Rpb25bMF0ucHJvbW90aW9uSWQ7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbi5wcm9tb3Rpb25JbmZvID0gdHJpZ2dlclByb21vdGlvblswXS5yZWZ1bmRlZFJlYXNvbkRlc2NyaXB0aW9uO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25Qcm9tb3Rpb24uY291cG9uQ29kZSA9IHRyaWdnZXJQcm9tb3Rpb25bMF0ucmVmdW5kZWRSZWFzb247XHJcbiAgICAgICAgICAgICAgICB0cmFuc2FjdGlvblByb21vdGlvbi5pdGVtTGluZUlkcyA9IFtdO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25Qcm9tb3Rpb24udHlwZSA9IFBST01PVElPTl9UWVBFLkNPVVBPTjtcclxuICAgICAgICAgICAgICAgIHRyYW5zYWN0aW9uUHJvbW90aW9uLnN1YkxldmVsVHlwZSA9IFBST01PVElPTl9MRVZFTC5MSU5FO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25Qcm9tb3Rpb24udHJpZ2dlciA9IHRyaWdnZXJQcm9tb3Rpb247XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCJsaW5lUHJvbW90aW9uIG1hcHBpbmcgZW5kZWQuLi5cIik7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiZS1iYXNrZXQ6IHVwZGF0ZUxpbmVQcm9tb3Rpb25XaXRoQ291cG9uXCIsIEpTT04uc3RyaW5naWZ5KHRyYW5zYWN0aW9uUHJvbW90aW9uKSk7XHJcblxyXG4gICAgICAgICAgICBpZiAoIXRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2tldC50cmFuc2FjdGlvblByb21vdGlvbiApIHtcclxuICAgICAgICAgICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2tldC50cmFuc2FjdGlvblByb21vdGlvbiA9IFtdO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAodHJhbnNhY3Rpb25Qcm9tb3Rpb24gJiYgdHJhbnNhY3Rpb25Qcm9tb3Rpb24ucHJvbW90aW9uSWQgKSB7XHJcbiAgICAgICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2tldC50cmFuc2FjdGlvblByb21vdGlvbi5wdXNoKHRyYW5zYWN0aW9uUHJvbW90aW9uKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgcmV0dXJuIHRoaXM7XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCJFYmFza2V0OiBTYWxlc2ZvcmNlOiBsaW5lUHJvbW90aW9uIG1hcHBpbmc9PiBmYWlsZWQ6XCIsIGVycm9yKTtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCJFYmFza2V0OiBTYWxlc2ZvcmNlOiBsaW5lUHJvbW90aW9uIG1hcHBpbmc9PiBmYWlsZWQ6XCIsIEpTT04uc3RyaW5naWZ5KGVycm9yKSk7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHVwZGF0ZVRyYW5zYWN0aW9uUHJvbW90aW9uUHJ0aW9uQ2FsYygpIHtcclxuICAgICAgICBpZiAodGhpcy53ZWJSZXR1cm5PYmplY3QuYmFza2V0LnRyYW5zYWN0aW9uUHJvbW90aW9uICYmIHRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2tldC50cmFuc2FjdGlvblByb21vdGlvbi5sZW5ndGggPiAwKSB7XHJcblxyXG4gICAgICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdC5iYXNrZXQudHJhbnNhY3Rpb25Qcm9tb3Rpb24uZm9yRWFjaCh0ciA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgIHRoaXMudHJhbnNhY3Rpb25Qcm9tb3Rpb25Qcm9kdWN0UG9ydGlvbkNhbGModGhpcy53ZWJSZXR1cm5PYmplY3QgLCB0cilcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRoaXM7XHJcbiAgICB9XHJcblxyXG4gICAgdHJhbnNhY3Rpb25Qcm9tb3Rpb25Qcm9kdWN0UG9ydGlvbkNhbGMoXHJcbiAgICAgICAgdHhEb2M6IFRyYW5zYWN0aW9uRG9jdW1lbnQsXHJcbiAgICAgICAgcHJvbW90aW9uOiBUcmFuc2FjdGlvblByb21vdGlvblxyXG4gICAgKSB7XHJcbiAgICAgICAgY29uc29sZS5sb2coXHJcbiAgICAgICAgICAgIGBlYmFza2V0OiB0cmFuc2FjdGlvblByb21vdGlvblByb2R1Y3RQb3J0aW9uQ2FsYzogdHJuc2FjdGlvblByb21vdGlvbjogJHtKU09OLnN0cmluZ2lmeShcclxuICAgICAgICAgICAgICAgIHByb21vdGlvblxyXG4gICAgICAgICAgICApfWBcclxuICAgICAgICApO1xyXG4gICAgICAgIGlmIChwcm9tb3Rpb24udHlwZSA9PT0gUFJPTU9USU9OX1RZUEUuQ09VUE9OICYmIHByb21vdGlvbi5zdWJMZXZlbFR5cGUgPT09IFBST01PVElPTl9MRVZFTC5MSU5FKSB7XHJcbiAgICAgICAgICAgIHR4RG9jLmJhc2tldC5wcm9kdWN0cy5mb3JFYWNoKChwcm9kdWN0KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBwcm9kdWN0ID0gdGhpcy52YWxpZGF0ZVByb2R1Y3RJdGVtRGlzY291bnQocHJvZHVjdCk7XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKHByb21vdGlvbi50cmlnZ2VyICYmIHByb21vdGlvbi50cmlnZ2VyLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICBwcm9tb3Rpb24udHJpZ2dlci5mb3JFYWNoKCh0KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0Lml0ZW1MaW5lSWQgPT09IHByb2R1Y3QuaXRlbUxpbmVJZC50b1N0cmluZygpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWN0Lml0ZW1EaXNjb3VudHMudHJuUHJvbW90aW9uc1BvcnRpb24gKz0gdC5wcm9tb3Rpb25BbW91bnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICB0eERvYy5iYXNrZXQucHJvZHVjdHMuZm9yRWFjaCgocHJvZHVjdCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgcHJvZHVjdCA9IHRoaXMudmFsaWRhdGVQcm9kdWN0SXRlbURpc2NvdW50KHByb2R1Y3QpO1xyXG4gICAgICAgICAgICAgICAgaWYgKHByb21vdGlvbi5pdGVtTGluZUlkcy5pbmNsdWRlcygrcHJvZHVjdC5pdGVtTGluZUlkKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHByb2R1Y3RJdGVtID0gdGhpcy5vcmRlckRldGFpbHMucHJvZHVjdF9pdGVtcy5maW5kKHByb2R1Y3RJdGVtID0+IHByb2R1Y3RJdGVtLnByb2R1Y3RfaWQgPT09IHByb2R1Y3QuU0tVKTtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCB0cmFuc2FjdGlvblByb21vdGlvblBvcnRpb24gPSAocHJvZHVjdEl0ZW0gJiYgcHJvZHVjdEl0ZW0ucHJpY2VfYWZ0ZXJfaXRlbV9kaXNjb3VudCAmJiBwcm9kdWN0SXRlbS5wcmljZV9hZnRlcl9vcmRlcl9kaXNjb3VudCkgP1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAocHJvZHVjdEl0ZW0ucHJpY2VfYWZ0ZXJfaXRlbV9kaXNjb3VudCAtIHByb2R1Y3RJdGVtLnByaWNlX2FmdGVyX29yZGVyX2Rpc2NvdW50KSA6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgcHJvZHVjdC5pdGVtRGlzY291bnRzLnRyblByb21vdGlvbnNQb3J0aW9uICs9IHRoaXMubnVtYmVyVXRpbFNlcnZpY2UudHJpbVRvMkRlY2ltYWwyKHRyYW5zYWN0aW9uUHJvbW90aW9uUG9ydGlvbik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdHhEb2M7XHJcbiAgICB9XHJcblxyXG4gICAgICBcclxuICAgICAgcHVibGljIHZhbGlkYXRlUHJvZHVjdEl0ZW1EaXNjb3VudChwcm9kdWN0OiBUUHJvZHVjdCkge1xyXG4gICAgICAgIGlmICghcHJvZHVjdC5pdGVtRGlzY291bnRzKSB7XHJcbiAgICAgICAgICBwcm9kdWN0Lml0ZW1EaXNjb3VudHMgPSB7XHJcbiAgICAgICAgICAgIHRybkRpc2NvdW50c1BvcnRpb246IDAsXHJcbiAgICAgICAgICAgIHRyblByb21vdGlvbnNQb3J0aW9uOiAwLFxyXG4gICAgICAgICAgICByZWZ1bmRQb3J0aW9uOiAwLFxyXG4gICAgICAgICAgfTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHByb2R1Y3Q7XHJcbiAgICAgIH1cclxuICAgIFxyXG4gICAgICBcclxuICAgIGN1c3RvbWVyKCkge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IGN1c3RvbWVyIG1hcHBpbmcgc3RhcnRlZC4uLlwiKTtcclxuICAgICAgICBsZXQgY3VzdG9tZXJPYmogPSB7fSBhcyBDdXN0b21lcjtcclxuICAgICAgICBjdXN0b21lck9iai5lbWFpbCA9IHRoaXMub3JkZXJEZXRhaWxzLmN1c3RvbWVyX2luZm8gJiYgdGhpcy5vcmRlckRldGFpbHMuY3VzdG9tZXJfaW5mby5lbWFpbCA/IHRoaXMub3JkZXJEZXRhaWxzLmN1c3RvbWVyX2luZm8uZW1haWwgOiAnJztcclxuICAgICAgICBjdXN0b21lck9iai5maXJzdE5hbWUgPSB0aGlzLm9yZGVyRGV0YWlscy5iaWxsaW5nX2FkZHJlc3MgJiYgdGhpcy5vcmRlckRldGFpbHMuYmlsbGluZ19hZGRyZXNzLmZpcnN0X25hbWUgPyB0aGlzLm9yZGVyRGV0YWlscy5iaWxsaW5nX2FkZHJlc3MuZmlyc3RfbmFtZSA6ICcnO1xyXG4gICAgICAgIGN1c3RvbWVyT2JqLmxhc3ROYW1lID0gdGhpcy5vcmRlckRldGFpbHMuYmlsbGluZ19hZGRyZXNzICYmIHRoaXMub3JkZXJEZXRhaWxzLmJpbGxpbmdfYWRkcmVzcy5sYXN0X25hbWUgPyB0aGlzLm9yZGVyRGV0YWlscy5iaWxsaW5nX2FkZHJlc3MubGFzdF9uYW1lIDogJyc7XHJcblxyXG4gICAgICAgIGxldCBzaGlwcGluZ0FkZHJlc3MgPSBbXSBhcyBBZGRyZXNzW107XHJcbiAgICAgICAgdGhpcy5vcmRlckRldGFpbHMuc2hpcG1lbnRzLmZvckVhY2goXHJcbiAgICAgICAgICAgIHNoaXBtZW50ID0+IHtcclxuICAgICAgICAgICAgICAgIGxldCBzaGlwcGluZ0FkZHJlc3NPYmogPSB7fSBhcyBBZGRyZXNzO1xyXG4gICAgICAgICAgICAgICAgc2hpcHBpbmdBZGRyZXNzT2JqLmlkID0gc2hpcG1lbnQuc2hpcHBpbmdfYWRkcmVzcyAmJiBzaGlwbWVudC5zaGlwcGluZ19hZGRyZXNzLmlkID8gc2hpcG1lbnQuc2hpcHBpbmdfYWRkcmVzcy5pZCA6ICcnO1xyXG4gICAgICAgICAgICAgICAgc2hpcHBpbmdBZGRyZXNzT2JqLmNvdW50cnlDb2RlID0gc2hpcG1lbnQuc2hpcHBpbmdfYWRkcmVzcyAmJiBzaGlwbWVudC5zaGlwcGluZ19hZGRyZXNzLmNvdW50cnlfY29kZSA/IHNoaXBtZW50LnNoaXBwaW5nX2FkZHJlc3MuY291bnRyeV9jb2RlIDogJyc7XHJcbiAgICAgICAgICAgICAgICBzaGlwcGluZ0FkZHJlc3NPYmouYWRkcmVzczEgPSBzaGlwbWVudC5zaGlwcGluZ19hZGRyZXNzICYmIHNoaXBtZW50LnNoaXBwaW5nX2FkZHJlc3MuYWRkcmVzczEgPyBzaGlwbWVudC5zaGlwcGluZ19hZGRyZXNzLmFkZHJlc3MxIDogJyc7XHJcbiAgICAgICAgICAgICAgICBzaGlwcGluZ0FkZHJlc3NPYmouY2l0eSA9IHNoaXBtZW50LnNoaXBwaW5nX2FkZHJlc3MgJiYgc2hpcG1lbnQuc2hpcHBpbmdfYWRkcmVzcy5jaXR5ID8gc2hpcG1lbnQuc2hpcHBpbmdfYWRkcmVzcy5jaXR5IDogJyc7XHJcbiAgICAgICAgICAgICAgICBzaGlwcGluZ0FkZHJlc3NPYmouY291bnRyeSA9ICcnO1xyXG4gICAgICAgICAgICAgICAgc2hpcHBpbmdBZGRyZXNzT2JqLnBvc3RDb2RlID0gc2hpcG1lbnQuc2hpcHBpbmdfYWRkcmVzcyAmJiBzaGlwbWVudC5zaGlwcGluZ19hZGRyZXNzLnBvc3RhbF9jb2RlID8gc2hpcG1lbnQuc2hpcHBpbmdfYWRkcmVzcy5wb3N0YWxfY29kZSA6ICcnO1xyXG4gICAgICAgICAgICAgICAgc2hpcHBpbmdBZGRyZXNzLnB1c2goc2hpcHBpbmdBZGRyZXNzT2JqKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIClcclxuICAgICAgICBjdXN0b21lck9iai5zaGlwcGluZ0FkZHJlc3MgPSBzaGlwcGluZ0FkZHJlc3M7XHJcblxyXG4gICAgICAgIGxldCBiaWxsaW5nQWRkcmVzcyA9IFtdIGFzIEFkZHJlc3NbXTtcclxuICAgICAgICBsZXQgYmlsbGluZ0FkZHJlc3NPYmogPSB7fSBhcyBBZGRyZXNzO1xyXG4gICAgICAgIGJpbGxpbmdBZGRyZXNzT2JqLmlkID0gdGhpcy5vcmRlckRldGFpbHMuYmlsbGluZ19hZGRyZXNzICYmIHRoaXMub3JkZXJEZXRhaWxzLmJpbGxpbmdfYWRkcmVzcy5pZCA/IHRoaXMub3JkZXJEZXRhaWxzLmJpbGxpbmdfYWRkcmVzcy5pZCA6ICcnO1xyXG4gICAgICAgIGJpbGxpbmdBZGRyZXNzT2JqLmNvdW50cnlDb2RlID0gdGhpcy5vcmRlckRldGFpbHMuYmlsbGluZ19hZGRyZXNzICYmIHRoaXMub3JkZXJEZXRhaWxzLmJpbGxpbmdfYWRkcmVzcy5jb3VudHJ5X2NvZGUgPyB0aGlzLm9yZGVyRGV0YWlscy5iaWxsaW5nX2FkZHJlc3MuY291bnRyeV9jb2RlIDogJyc7XHJcbiAgICAgICAgYmlsbGluZ0FkZHJlc3NPYmouYWRkcmVzczEgPSB0aGlzLm9yZGVyRGV0YWlscy5iaWxsaW5nX2FkZHJlc3MgJiYgdGhpcy5vcmRlckRldGFpbHMuYmlsbGluZ19hZGRyZXNzLmFkZHJlc3MxID8gdGhpcy5vcmRlckRldGFpbHMuYmlsbGluZ19hZGRyZXNzLmFkZHJlc3MxIDogJyc7XHJcbiAgICAgICAgYmlsbGluZ0FkZHJlc3NPYmouY2l0eSA9IHRoaXMub3JkZXJEZXRhaWxzLmJpbGxpbmdfYWRkcmVzcyAmJiB0aGlzLm9yZGVyRGV0YWlscy5iaWxsaW5nX2FkZHJlc3MuY2l0eSA/IHRoaXMub3JkZXJEZXRhaWxzLmJpbGxpbmdfYWRkcmVzcy5jaXR5IDogJyc7XHJcbiAgICAgICAgYmlsbGluZ0FkZHJlc3NPYmouY291bnRyeSA9ICcnO1xyXG4gICAgICAgIGJpbGxpbmdBZGRyZXNzT2JqLnBvc3RDb2RlID0gJyc7XHJcbiAgICAgICAgYmlsbGluZ0FkZHJlc3MucHVzaChiaWxsaW5nQWRkcmVzc09iaik7XHJcbiAgICAgICAgY3VzdG9tZXJPYmouYmlsbGluZ0FkZHJlc3MgPSBiaWxsaW5nQWRkcmVzcztcclxuXHJcbiAgICAgICAgbGV0IHNoaXBtZW50RGV0YWlscyA9IFtdIGFzIFNoaXBtZW50RGV0YWlsc1tdO1xyXG4gICAgICAgIHRoaXMub3JkZXJEZXRhaWxzLnNoaXBtZW50cy5mb3JFYWNoKFxyXG4gICAgICAgICAgICBzaGlwbWVudCA9PiB7XHJcbiAgICAgICAgICAgICAgICBsZXQgc2hpcG1lbnREZXRhaWxzT2JqID0ge30gYXMgU2hpcG1lbnREZXRhaWxzO1xyXG4gICAgICAgICAgICAgICAgc2hpcG1lbnREZXRhaWxzT2JqLmlkID0gc2hpcG1lbnQuc2hpcG1lbnRfaWQgPyBzaGlwbWVudC5zaGlwbWVudF9pZCA6ICcnO1xyXG4gICAgICAgICAgICAgICAgc2hpcG1lbnREZXRhaWxzT2JqLmRlbGl2ZXJ5R3JvdXAgPSBzaGlwbWVudC5zaGlwbWVudF9pZCA/IHNoaXBtZW50LnNoaXBtZW50X2lkIDogJyc7XHJcbiAgICAgICAgICAgICAgICBzaGlwbWVudERldGFpbHMucHVzaChzaGlwbWVudERldGFpbHNPYmopO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuICAgICAgICBjdXN0b21lck9iai5zaGlwbWVudERldGFpbHMgPSBzaGlwbWVudERldGFpbHM7XHJcblxyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmN1c3RvbWVyID0gY3VzdG9tZXJPYmo7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJNYXBwZXIgbGlicmFyeTogV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlckJ1aWxkZXJDbGFzczogY3VzdG9tZXIgbWFwcGluZyBlbmRlZC4uLlwiKTtcclxuICAgICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICBpc0luU3RvcmVPcmRlcigpIHtcclxuICAgICAgICBjb25zb2xlLmxvZyhcIk1hcHBlciBsaWJyYXJ5OiBXZWJSZXR1cm5TYWxlc2ZvcmNlTWFwcGVyQnVpbGRlckNsYXNzOiBpc0luU3RvcmVPcmRlciBtYXBwaW5nIHN0YXJ0ZWQuLi5cIik7XHJcbiAgICAgICAgaWYodGhpcy5vcmRlckRldGFpbHMuY19pc0luU3RvcmVPcmRlcikge1xyXG4gICAgICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdC5pc0luU3RvcmVPcmRlciA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IGlzSW5TdG9yZU9yZGVyIG1hcHBpbmcgZW5kZWQuLi5cIik7XHJcbiAgICAgICAgcmV0dXJuIHRoaXM7XHJcbiAgICB9XHJcblxyXG4gICAgZXh0ZXJuYWxUcmFuc2FjdGlvbkRldGFpbHMoKSB7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJNYXBwZXIgbGlicmFyeTogV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlckJ1aWxkZXJDbGFzczogZXh0ZXJuYWxUcmFuc2FjdGlvbkRldGFpbHMgbWFwcGluZyBzdGFydGVkLi4uXCIpO1xyXG4gICAgICAgIGxldCBleHRlcm5hbFRyYW5zYWN0aW9uRGV0YWlscyA9IFtdIGFzIGV4dGVybmFsVHJhbnNhY3Rpb25EZXRhaWxzW107XHJcbiAgICAgICAgaWYgKHRoaXMub3JkZXJEZXRhaWxzLnNoaXBtZW50cyAmJiB0aGlzLm9yZGVyRGV0YWlscy5zaGlwbWVudHMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICB0aGlzLm9yZGVyRGV0YWlscy5zaGlwbWVudHMuZm9yRWFjaChcclxuICAgICAgICAgICAgICAgIHNoaXBtZW50ID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBsZXQgZXh0ZXJuYWxUcmFuc2FjdGlvbkRldGFpbHNPYmogPSB7fSBhcyBleHRlcm5hbFRyYW5zYWN0aW9uRGV0YWlscztcclxuICAgICAgICAgICAgICAgICAgICBsZXQgdHJhbnNhY3Rpb25JbmZvID0ge30gYXMgVHJhbnNhY3Rpb25JbmZvO1xyXG4gICAgICAgICAgICAgICAgICAgIGV4dGVybmFsVHJhbnNhY3Rpb25EZXRhaWxzT2JqLnVuaXF1ZUlkID0gdGhpcy5vcmRlckRldGFpbHMub3JkZXJfbm8gPyB0aGlzLm9yZGVyRGV0YWlscy5vcmRlcl9ubyA6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgIGV4dGVybmFsVHJhbnNhY3Rpb25EZXRhaWxzT2JqLnByb3ZpZGVyVHlwZSA9IFBST1ZJREVSUy5TQUxFU0ZPUkNFO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zYWN0aW9uSW5mby5zaGlwcGluZ0lkID0gc2hpcG1lbnQuc2hpcHBpbmdfbWV0aG9kICYmIHNoaXBtZW50LnNoaXBwaW5nX21ldGhvZC5pZCA/IHNoaXBtZW50LnNoaXBwaW5nX21ldGhvZC5pZCA6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zYWN0aW9uSW5mby5leHRlcm5hbFNoaXBwaW5nSWQgPSBzaGlwbWVudC5zaGlwbWVudF9pZCA/IHNoaXBtZW50LnNoaXBtZW50X2lkIDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgZXh0ZXJuYWxUcmFuc2FjdGlvbkRldGFpbHNPYmouZGV0YWlscyA9IHRyYW5zYWN0aW9uSW5mbztcclxuICAgICAgICAgICAgICAgICAgICBleHRlcm5hbFRyYW5zYWN0aW9uRGV0YWlscy5wdXNoKGV4dGVybmFsVHJhbnNhY3Rpb25EZXRhaWxzT2JqKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3QuZXh0ZXJuYWxUcmFuc2FjdGlvbkRldGFpbHMgPSBleHRlcm5hbFRyYW5zYWN0aW9uRGV0YWlscztcclxuICAgICAgICBjb25zb2xlLmxvZyhcIk1hcHBlciBsaWJyYXJ5OiBXZWJSZXR1cm5TYWxlc2ZvcmNlTWFwcGVyQnVpbGRlckNsYXNzOiBleHRlcm5hbFRyYW5zYWN0aW9uRGV0YWlscyBtYXBwaW5nIGVuZGVkLi4uXCIpO1xyXG4gICAgICAgIHJldHVybiB0aGlzO1xyXG4gICAgfVxyXG5cclxuICAgIGJhc2tldFN1bW1hcnkoKSB7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJNYXBwZXIgbGlicmFyeTogV2ViUmV0dXJuU2FsZXNmb3JjZU1hcHBlckJ1aWxkZXJDbGFzczogYmFza2V0U3VtbWFyeSBtYXBwaW5nIHN0YXJ0ZWQuLi5cIik7XHJcbiAgICAgICAgbGV0IGJhc2tldFN1bW1hcnkgPSB7fSBhcyBCYXNrZXRTdW1tYXJ5O1xyXG4gICAgICAgIGxldCBiYXNrZXRTdW1tYXJ5V2ViT3JkZXIgPSB7fSBhcyBCYXNrZXRTdW1tYXJ5RGV0YWlscztcclxuICAgICAgICBjb25zdCBsaW5lUHJvbW90aW9uVG90YWwgPSB0aGlzLndlYlJldHVybk9iamVjdC5iYXNrZXQubGluZVByb21vdGlvbi5tYXAobGluZVByb21vdGlvbiA9PiBsaW5lUHJvbW90aW9uLnByb21vdGlvbkFtb3VudCkucmVkdWNlKChhY2N1bXVsYXRvciwgY3VycmVudFZhbHVlKSA9PiBhY2N1bXVsYXRvciArIGN1cnJlbnRWYWx1ZSwgMCk7XHJcbiAgICAgICAgY29uc3QgdHJhbnNhY3Rpb25Qcm9tb3Rpb25Ub3RhbCA9IHRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2tldC50cmFuc2FjdGlvblByb21vdGlvbi5tYXAodHJhbnNhY3Rpb25Qcm9tb3Rpb24gPT4gdHJhbnNhY3Rpb25Qcm9tb3Rpb24ucHJvbW90aW9uQW1vdW50KS5yZWR1Y2UoKGFjY3VtdWxhdG9yLCBjdXJyZW50VmFsdWUpID0+IGFjY3VtdWxhdG9yICsgY3VycmVudFZhbHVlLCAwKTtcclxuICAgICAgICBiYXNrZXRTdW1tYXJ5LmRpc2NvdW50VG90YWwgPSBsaW5lUHJvbW90aW9uVG90YWwgKyB0cmFuc2FjdGlvblByb21vdGlvblRvdGFsO1xyXG4gICAgICAgIGJhc2tldFN1bW1hcnkuVkFUVG90YWwgPSB0aGlzLm9yZGVyRGV0YWlscy50YXhfdG90YWwgPyB0aGlzLm9yZGVyRGV0YWlscy50YXhfdG90YWwgOiAwO1xyXG4gICAgICAgIGJhc2tldFN1bW1hcnkuc2FsZVRvdGFsID0gdGhpcy5vcmRlckRldGFpbHMub3JkZXJfdG90YWwgPyB0aGlzLm9yZGVyRGV0YWlscy5vcmRlcl90b3RhbCA6IDA7XHJcbiAgICAgICAgYmFza2V0U3VtbWFyeS5iYXNrZXRUb3RhbCA9IHRoaXMub3JkZXJEZXRhaWxzLm9yZGVyX3RvdGFsID8gdGhpcy5vcmRlckRldGFpbHMub3JkZXJfdG90YWwgOiAwO1xyXG4gICAgICAgIGJhc2tldFN1bW1hcnkudG90YWxJdGVtcyA9IHRoaXMub3JkZXJEZXRhaWxzLnByb2R1Y3RfaXRlbXMgJiYgdGhpcy5vcmRlckRldGFpbHMucHJvZHVjdF9pdGVtcy5sZW5ndGggPiAwID8gdGhpcy5vcmRlckRldGFpbHMucHJvZHVjdF9pdGVtcy5sZW5ndGggOiAwO1xyXG4gICAgICAgIGJhc2tldFN1bW1hcnkuc2hpcHBpbmdUb3RhbCA9IHRoaXMub3JkZXJEZXRhaWxzLnNoaXBwaW5nX3RvdGFsID8gdGhpcy5vcmRlckRldGFpbHMuc2hpcHBpbmdfdG90YWwgOiAwO1xyXG4gICAgICAgIGJhc2tldFN1bW1hcnkuYmFza2V0VG90YWxXaXRoU2hpcHBpbmdUb3RhbCA9IHRoaXMub3JkZXJEZXRhaWxzLm9yZGVyX3RvdGFsID8gdGhpcy5vcmRlckRldGFpbHMub3JkZXJfdG90YWwgOiAwO1xyXG4gICAgICAgIGJhc2tldFN1bW1hcnlXZWJPcmRlci5zaGlwcGluZ1RvdGFsID0gdGhpcy5vcmRlckRldGFpbHMuc2hpcHBpbmdfdG90YWwgPyB0aGlzLm9yZGVyRGV0YWlscy5zaGlwcGluZ190b3RhbCA6IDA7XHJcbiAgICAgICAgYmFza2V0U3VtbWFyeVdlYk9yZGVyLmJhc2tldFRvdGFsV2l0aFNoaXBwaW5nVG90YWwgPSB0aGlzLm9yZGVyRGV0YWlscy5vcmRlcl90b3RhbCA/IHRoaXMub3JkZXJEZXRhaWxzLm9yZGVyX3RvdGFsIDogMDtcclxuICAgICAgICBiYXNrZXRTdW1tYXJ5LndlYk9yZGVyID0gYmFza2V0U3VtbWFyeVdlYk9yZGVyO1xyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmJhc2tldFN1bW1hcnkgPSBiYXNrZXRTdW1tYXJ5O1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiTWFwcGVyIGxpYnJhcnk6IFdlYlJldHVyblNhbGVzZm9yY2VNYXBwZXJCdWlsZGVyQ2xhc3M6IGJhc2tldFN1bW1hcnkgbWFwcGluZyBlbmRlZC4uLlwiKTtcclxuICAgICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICBkZXZpY2VJZChkZXZpY2VJZCkge1xyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LmRldmljZUlkID0gZGV2aWNlSWQ7XHJcbiAgICAgICAgcmV0dXJuIHRoaXM7XHJcbiAgICB9XHJcblxyXG4gICAgdGVybWluYWxJZCh0ZXJtaW5hbElkKSB7XHJcbiAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3QudGVybWluYWxJZCA9IHRlcm1pbmFsSWQ7XHJcbiAgICAgICAgcmV0dXJuIHRoaXM7XHJcbiAgICB9XHJcblxyXG4gICAgb3JnQ29kZShvcmdDb2RlKSB7XHJcbiAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3Qub3JnQ29kZSA9IG9yZ0NvZGU7XHJcbiAgICAgICAgcmV0dXJuIHRoaXM7XHJcbiAgICB9XHJcblxyXG4gICAgc3RvcmVJZChzdG9yZUlkKSB7XHJcbiAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3Quc3RvcmVJZCA9IHN0b3JlSWQ7XHJcbiAgICAgICAgcmV0dXJuIHRoaXM7XHJcbiAgICB9XHJcblxyXG4gICAgc3RvcmVOb2RlSWQoc3RvcmVOb2RlSWQ6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LnN0b3JlTm9kZUlkID0gc3RvcmVOb2RlSWQ7XHJcbiAgICAgICAgcmV0dXJuIHRoaXM7XHJcbiAgICB9XHJcblxyXG4gICAgc3RvcmVOb2RlU3RydWN0dXJlKHN0b3JlTm9kZVN0cnVjdHVyZTogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3Quc3RvcmVOb2RlU3RydWN0dXJlID0gc3RvcmVOb2RlU3RydWN0dXJlO1xyXG4gICAgICAgIHJldHVybiB0aGlzO1xyXG4gICAgfVxyXG5cclxuICAgIGRvY0lkKGRvY0lkKSB7XHJcbiAgICAgICAgdGhpcy53ZWJSZXR1cm5PYmplY3QuaWQgPSBkb2NJZDtcclxuICAgICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICB1cGRhdGVVc2VySUQodXNlcklEOiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLndlYlJldHVybk9iamVjdC51c2VySWQgPSB1c2VySUQ7XHJcbiAgICAgICAgcmV0dXJuIHRoaXM7XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlVXNlck5hbWUobmFtZSkge1xyXG4gICAgICAgIHRoaXMud2ViUmV0dXJuT2JqZWN0LnVzZXJOYW1lID0gbmFtZTtcclxuICAgICAgICByZXR1cm4gdGhpcztcclxuICAgIH1cclxuXHJcbiAgICBidWlsZCgpIHtcclxuICAgICAgICBjb25zb2xlLmxvZyhcIk1hcHBlciBsaWJyYXJ5OiBXZWJSZXR1cm5TYWxlc2ZvcmNlTWFwcGVyQnVpbGRlckNsYXNzOiBtYXBwaW5nIGRvbmUuLi5cIik7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMud2ViUmV0dXJuT2JqZWN0O1xyXG4gICAgfVxyXG5cclxuICAgIGdldFVUQ0RhdGVUaW1lKGRhdGUpIHtcclxuICAgICAgICBpZiAoZGF0ZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gbmV3IERhdGUoZGF0ZSkudG9JU09TdHJpbmcoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -637,6 +637,8 @@ if (false) {
|
|
|
637
637
|
TransactionDocument.prototype.externalTransactionDetails;
|
|
638
638
|
/** @type {?|undefined} */
|
|
639
639
|
TransactionDocument.prototype.refundRequest;
|
|
640
|
+
/** @type {?|undefined} */
|
|
641
|
+
TransactionDocument.prototype.isInStoreOrder;
|
|
640
642
|
}
|
|
641
643
|
/**
|
|
642
644
|
* @record
|
|
@@ -1418,6 +1420,8 @@ if (false) {
|
|
|
1418
1420
|
OrderDetails.prototype.tax_rounded_at_group;
|
|
1419
1421
|
/** @type {?|undefined} */
|
|
1420
1422
|
OrderDetails.prototype.tax_total;
|
|
1423
|
+
/** @type {?|undefined} */
|
|
1424
|
+
OrderDetails.prototype.c_isInStoreOrder;
|
|
1421
1425
|
}
|
|
1422
1426
|
/** @enum {string} */
|
|
1423
1427
|
var PROVIDERS = {
|
|
@@ -1435,4 +1439,4 @@ var PROMOTION_TYPE = {
|
|
|
1435
1439
|
COUPON: "COUPON",
|
|
1436
1440
|
};
|
|
1437
1441
|
export { PROMOTION_TYPE };
|
|
1438
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwcGVyLWxpYnJhcnkubW9kZWwuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AcG1jcmV0YWlsL21hcHBlci1saWJyYXJ5LyIsInNvdXJjZXMiOlsibGliL21hcHBlci1saWJyYXJ5Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUVBLElBQVksZ0JBQWdCO0lBQzFCLElBQUksUUFBUztJQUNiLE1BQU0sVUFBVztJQUNqQixXQUFXLGVBQWdCO0lBQzNCLGFBQWEsaUJBQWtCO0lBQy9CLElBQUksUUFBUztJQUNiLFdBQVcsZUFBZ0I7RUFDNUI7Ozs7O0FBRUQsa0NBS0M7OztJQUpDLDJDQUE0Qjs7SUFDNUIsNENBQTZCOztJQUM3QixxQ0FBc0I7O0lBQ3RCLDRDQUE4Qjs7O0FBR2hDLElBQVksZ0JBQWdCO0lBQzFCLFFBQVEsR0FBSTtJQUNaLFNBQVMsR0FBSTtJQUNiLGtCQUFrQixHQUFJO0lBQ3RCLGFBQWEsR0FBSTtFQUNsQjs7Ozs7Ozs7O0FBRUQsbUNBaUJDOzs7SUFoQkMsbUNBQW9COztJQUNwQiw0QkFBWTs7SUFDWixpQ0FBaUI7O0lBQ2pCLHNDQUF1Qjs7SUFDdkIscUNBQTRCOztJQUM1Qix1Q0FBZ0M7O0lBQ2hDLGlDQUFvQjs7SUFDcEIseUNBQTBCOztJQUMxQixrREFBbUM7O0lBQ25DLGlDQUFtQjs7SUFDbkIsc0NBQXVCOztJQUN2Qix1Q0FBd0I7O0lBQ3hCLGtEQUFtQzs7SUFDbkMsa0NBQW9COztJQUNwQiwrQkFBaUI7O0lBQ2pCLHdDQUEwQjs7Ozs7O0FBTTVCLDZCQXlFQzs7O0lBeEVDLDZCQUFvQjs7SUFDcEIseUJBQWU7O0lBQ2YsMkJBQWlCOztJQUNqQix3QkFBYzs7SUFDZCwyQkFBaUI7O0lBQ2pCLDJCQUFpQjs7SUFDakIsa0NBQXdCOztJQUN4Qiw0QkFBa0I7O0lBQ2xCLDhCQUFvQjs7SUFDcEIsdUJBQWM7O0lBQ2QsNEJBQW9COztJQUNwQixvQ0FBNEI7O0lBQzVCLHVCQUFhOztJQUNiLHVCQUFhOztJQUNi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OztJQTlCQywwQkFBWTs7SUFDWiw2QkFBZTs7SUFDZix1Q0FBeUI7O0lBQ3pCLDhCQUF5Qjs7SUFDekIsc0RBQXdDOztJQUN4QyxtREFBcUM7O0lBQ3JDLG9DQUF1Qjs7SUFDdkIsaUNBQW1COztJQUNuQix1Q0FBa0M7O0lBQ2xDLG9DQUFzQjs7SUFDdEIscUNBQXVCOztJQUN2QixnQ0FBa0I7O0lBQ2xCLHFDQUE2Qjs7SUFDN0IseUNBQXFDOztJQUNyQyxxQ0FBdUI7O0lBQ3ZCLDZDQUErQjs7SUFDL0IsNkJBQXdCOztJQUN4QiwrQ0FBNEM7O0lBQzVDLGdDQUFrQjs7SUFDbEIsbUNBQXFCOztJQUNyQixxQ0FBOEI7O0lBQzlCLHlDQUEyQjs7SUFDM0IscUNBQXVCOztJQUN2QixpQ0FBdUI7O0lBQ3ZCLHNDQUFnQzs7SUFDaEMsc0NBQXdCOztJQUN4QiwwQ0FBNEI7O0lBQzVCLGdDQUFrQjs7SUFDbEIsNENBQStCOztJQUMvQixpQ0FBbUI7OztBQUdyQixJQUFZLFNBQVM7SUFDbkIsVUFBVSxjQUFlO0VBQzFCOzs7QUFFRCxJQUFZLGVBQWU7SUFFekIsSUFBSSxRQUFPO0lBQ1gsV0FBVyxlQUFjO0VBQzFCOzs7QUFFRCxJQUFZLGNBQWM7SUFFeEIsTUFBTSxVQUFTO0VBQ2hCIiwic291cmNlc0NvbnRlbnQiOlsiXHJcblxyXG5leHBvcnQgZW51bSBUUkFOU0FDVElPTl9UWVBFIHtcclxuICBTQUxFID0gXCJTQUxFXCIsXHJcbiAgUkVGVU5EID0gXCJSRUZVTkRcIixcclxuICBTQUxFX1JFRlVORCA9IFwiU0FMRV9SRUZVTkRcIixcclxuICBTQUxFX0VYQ0hBTkdFID0gXCJTQUxFX0VYQ0hBTkdFXCIsXHJcbiAgVk9JRCA9IFwiVk9JRFwiLFxyXG4gIFdFQl9SRVRVUk5TID0gXCJXRUJfUkVUVVJOU1wiXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSXRlbURpc2NvdW50IHtcclxuICB0cm5EaXNjb3VudHNQb3J0aW9uOiBudW1iZXI7XHJcbiAgdHJuUHJvbW90aW9uc1BvcnRpb246IG51bWJlcjtcclxuICByZWZ1bmRQb3J0aW9uOiBudW1iZXI7XHJcbiAgY3VycmVudFJlZnVuZFBvcnRpb24/OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIERFTElWRVJZX01FVEhPRFMge1xyXG4gIERFTElWRVJZID0gMSxcclxuICBEUk9QX1NISVAgPSAyLFxyXG4gIENPTExFQ1RfRlJPTV9TVE9SRSA9IDMsXHJcbiAgU0hJUF9UT19TVE9SRSA9IDRcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQcm9kdWN0Q2hhbmdlIHtcclxuICBpdGVtTGluZUlkPzogbnVtYmVyO1xyXG4gIFNLVTogc3RyaW5nO1xyXG4gIHF1YW50aXR5OiBudW1iZXI7XHJcbiAgc2VsZWN0ZWRQcmljZT86IG51bWJlcjtcclxuICBsaW5lRGlzY291bnQ/OiBMaW5lRGlzY291bnQ7XHJcbiAgbGluZVByb21vdGlvbnM/OiBMaW5lUHJvbW90aW9ucztcclxuICBleGNoYW5nZT86IEV4Y2hhbmdlO1xyXG4gIHJlZnVuZGVkUXVhbnRpdHk/OiBudW1iZXI7ICAgICAgICAgICAgICAgICAgICAgICAgLy8gY29udGFpbnMgcXVhbnRpdHkgb2YgYm90aCBmdWxsIHByaWNlZCBhbmQgcHJvbW90aW9uYWwgcXVhbnRpdGllc1xyXG4gIHJlZnVuZFByb21vdGlvbmFsUXVhbnRpdHk/OiBudW1iZXI7ICAgICAgICAgICAgICAgLy8gcHJvbW90aW9uYWwgcXVhbnRpdHlcclxuICByZWZ1bmRlZD86IGJvb2xlYW47XHJcbiAgcmVmdW5kZWRUb3RhbD86IG51bWJlcjtcclxuICByZWZ1bmRlZFJlYXNvbj86IHN0cmluZztcclxuICByZWZ1bmRlZFJlYXNvbkRlc2NyaXB0aW9uPzogc3RyaW5nO1xyXG4gIGlzQ2hlY2tlZD86IGJvb2xlYW47XHJcbiAgc2VhbGVkPzogYm9vbGVhbjtcclxuICBpc0xhc3RFeGNoYW5nZWQ/OiBib29sZWFuO1xyXG59XHJcblxyXG4vKipcclxuICogUHJvZHVjdFxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBQcm9kdWN0IGV4dGVuZHMgUHJvZHVjdENoYW5nZSB7XHJcbiAgaXRlbUxpbmVJZD86IG51bWJlcjtcclxuICBzdGF0dXM6IG51bWJlcjtcclxuICBzdWJHcm91cDogbnVtYmVyO1xyXG4gIGJyYW5kOiBzdHJpbmc7XHJcbiAgY3VycmVuY3k6IHN0cmluZztcclxuICBjYXRlZ29yeTogc3RyaW5nO1xyXG4gIGNvdW50cnlvZk9yaWdpbjogc3RyaW5nO1xyXG4gIHByb2R1Y3RJZDogc3RyaW5nO1xyXG4gIHByb2R1Y3RUeXBlOiBudW1iZXI7XHJcbiAgbmFtZT86IHN0cmluZztcclxuICBpbWFnZVVybHM6IFtzdHJpbmddO1xyXG4gIGlzSW1hZ2VGYWlsVG9Mb2FkPzogYm9vbGVhbjtcclxuICBzaXplOiBzdHJpbmc7XHJcbiAgdHlwZTogc3RyaW5nO1xyXG4gIHNlYXNvbjogbnVtYmVyO1xyXG4gIHByb2R1Y3RHcm91cDogbnVtYmVyO1xyXG4gIHN0eWxlQ29kZTogc3RyaW5nO1xyXG4gIG5vZGVTdHJ1Y3R1cmU6IE5vZGVTdHJ1Y3R1cmVbXTtcclxuICBiYXJjb2RlOiBzdHJpbmc7XHJcbiAgcHJpY2U6IFByaWNlW107XHJcbiAgY29sb3VyOiBzdHJpbmc7XHJcbiAgZGVzY3JpcHRpb246IHN0cmluZztcclxuICB0b3RhbExpbmVQcmljZTogbnVtYmVyO1xyXG4gIHRvdGFsOiBudW1iZXI7XHJcbiAgYWRkZWRJbkJhc2tldD86IGJvb2xlYW47XHJcbiAgc2VsZWN0ZWRWQVQ/OiBudW1iZXI7XHJcbiAgc2VsZWN0ZWRWQVRDb2RlPzogc3RyaW5nO1xyXG4gIHNlbGVjdGVkUlJQUHJpY2U/OiBudW1iZXI7XHJcbiAgbGluZURpc2NvdW50PzogTGluZURpc2NvdW50O1xyXG4gIGV4Y2hhbmdlPzogRXhjaGFuZ2U7XHJcbiAgLy8gcmVmdW5kZWRRdWFudGl0eT86IG51bWJlcjtcclxuICAvLyByZWZ1bmRlZD86IGJvb2xlYW47XHJcbiAgLy8gcmVmdW5kZWRUb3RhbD86IG51bWJlcjtcclxuICAvLyByZWZ1bmRlZFJlYXNvbkRlc2NyaXB0aW9uPzpzdHJpbmc7XHJcbiAgLy8gaXNDaGVja2VkPzpib29sZWFuO1xyXG4gIHJlZnVuZFByb21vdGlvbmFsUXVhbnRpdHk/OiBudW1iZXI7ICAgICAgICAgICAgICAgLy8gcHJvbW90aW9uYWwgcXVhbnRpdHlcclxuICBleGNoYW5nZVJlYXNvbj86IHN0cmluZztcclxuICBleGNoYW5nZVF1YW50aXR5PzogbnVtYmVyO1xyXG4gIGl0ZW1EaXNjb3VudHM6IEl0ZW1EaXNjb3VudDtcclxuXHJcbiAgZ2lmdENhcmROdW1iZXJJc3N1ZWQ/OiBzdHJpbmc7XHJcbiAgZ2lmdENhcmRBbW91bnQ/OiBudW1iZXI7XHJcbiAgZ2lmdENhcmRSZWNpcGllbnRFbWFpbD86IHN0cmluZztcclxuICBnaWZ0Q2FyZEV4cGlyeURhdGU/OiBzdHJpbmc7XHJcbiAgZ2lmdENhcmRSZWNpcGllbnROYW1lPzogc3RyaW5nO1xyXG4gIGdpZnRDYXJkPzogYm9vbGVhbjtcclxuXHJcbiAgZGlzY291bnRhYmxlOiBib29sZWFuO1xyXG4gIC8vIHNlYWxlZD86Ym9vbGVhbjtcclxuICBleGNsdWRlUHJvbW90aW9uOiBib29sZWFuO1xyXG4gIGNhdGVnb3JpZXM6IENhdGVnb3JpZXNbXTtcclxuICBkZXNjcmlwdGlvbnM6IERlc2NyaXB0aW9uc1tdO1xyXG4gIGJhcmNvZGVzOiBzdHJpbmdbXTtcclxuXHJcbiAgLy9OZXcgRmVpbGRzXHJcbiAgZXh0ZXJuYWxJZDogc3RyaW5nO1xyXG4gIGNyZWF0ZWREYXRlOiBzdHJpbmc7XHJcbiAgdXBkYXRlZERhdGU6IHN0cmluZztcclxuICBjcmVhdGVkQnk6IHN0cmluZztcclxuICB1cGRhdGVkQnk6IHN0cmluZztcclxuICBhdHRyaWJ1dGVzOiBDb3JlQXR0cmlidXRlW107XHJcbiAgaWQ6IHN0cmluZztcclxuICBsb25nX2Rlc2NyaXB0aW9uOiBzdHJpbmc7XHJcblxyXG4gIC8vIE1peGVkIFNhbGVzIGZpZWxkc1xyXG4gIGlzV2ViT3JkZXI/OiBib29sZWFuLFxyXG4gIGZ1bGxmaWxtZW50SWQ6IHN0cmluZyxcclxuICBmdWxsZmlsbWVudExvY2F0aW9uTmFtZT86IHN0cmluZyxcclxuICBkZWxpdmVyeU1ldGhvZD86IHN0cmluZyxcclxuICBkZWxpdmVyeUdyb3VwPzogc3RyaW5nLFxyXG4gIHNlbGVjdGVkSW52ZW50b3J5PzogSW52ZW50b3J5SW5mbztcclxuICBsZWFkVGltZT86IGxlYWRUaW1lXHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBsZWFkVGltZSB7XHJcbiAgdHlwZTogc3RyaW5nLFxyXG4gIHZhbHVlOiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBFeGNoYW5nZSB7XHJcbiAgZXhjaGFuZ2VJZDogbnVtYmVyLFxyXG4gIGxpbmVJdGVtSWQ6IG51bWJlcixcclxuICByZWFzb246IHN0cmluZyxcclxuICBxdWFudGl0eTogbnVtYmVyLFxyXG4gIG5ld0l0ZW1zOiBQcm9kdWN0W107XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ2F0ZWdvcmllcyB7XHJcbiAgaWQ6IHN0cmluZztcclxuICBwYXJlbnRJZDogc3RyaW5nO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICBjYXRlZ29yeUlkOiBzdHJpbmc7XHJcbiAgc3RhdHVzOiBib29sZWFuO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIERlc2NyaXB0aW9ucyB7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIGNvdW50cnlDb2RlOiBzdHJpbmc7XHJcbiAgdmFsdWU6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDb3JlQXR0cmlidXRlIHtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgdmFsdWU6IHN0cmluZztcclxuICBzZWFyY2hhYmxlOiBib29sZWFuO1xyXG4gIGNvdW50cnlDb2RlOiBzdHJpbmc7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBCYXNrZXRcclxuICovXHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEJhc2tldCB7XHJcbiAgc3Vic2lkaWFyeUlkPzogc3RyaW5nO1xyXG4gIHByb2R1Y3RzOiBQcm9kdWN0W107XHJcbiAgdHJhbnNhY3Rpb25EaXNjb3VudDogYW55W107XHJcbiAgcXVhbnRpdHk6IG51bWJlcjtcclxuICB0b3RhbDogbnVtYmVyO1xyXG4gIHNhbGVUb3RhbDogbnVtYmVyO1xyXG4gIGRpc2NvdW50VG90YWw/OiBudW1iZXI7XHJcbiAgdHJhbnNhY3Rpb25JZD86IHN0cmluZztcclxuICBvZmZsaW5lVHJhbnNhY3Rpb25JZD86IHN0cmluZztcclxuICBiYXNlQ3VycmVuY3k6IHN0cmluZztcclxuICBiYXNrZXRUb3RhbD86IG51bWJlcjtcclxuICByZWZ1bmRUb3RhbD86IG51bWJlcjtcclxuICB0cmFuc2FjdGlvblByb21vdGlvbj86IFRyYW5zYWN0aW9uUHJvbW90aW9uW107XHJcbiAgY3VzdG9tZXI/OiBhbnk7XHJcbiAgZXhjaGFuZ2U/OiBFeGNoYW5nZVtdO1xyXG4gIGluU3RvcmVGbGFnPzogYm9vbGVhblxyXG59XHJcblxyXG5cclxuXHJcbi8qKlxyXG4gKiBQcmljZVxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBQcmljZSB7XHJcbiAgVkFUOiBudW1iZXI7XHJcbiAgVkFUQ29kZTogc3RyaW5nO1xyXG4gIHNhbGVzUHJpY2U6IG51bWJlcjtcclxuICBjdXJyZW5jeUNvZGU6IHN0cmluZztcclxuICBSUlBQcmljZTogbnVtYmVyO1xyXG59XHJcblxyXG4vKipcclxuICogTm9kZSBzdHJ1Y3R1cmVcclxuICovXHJcbmludGVyZmFjZSBOb2RlU3RydWN0dXJlIHtcclxuICBzdGF0dXM6IGJvb2xlYW47XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIG5vZGVUeXBlOiBzdHJpbmc7XHJcbiAgaXNPdmVycmlkZTogYm9vbGVhbjtcclxuICBub2RlSWQ6IHN0cmluZztcclxuICBwYXJlbnRJZDogc3RyaW5nO1xyXG59XHJcblxyXG4vKipcclxuICogTGluZSBEaXNjb3VudFxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBMaW5lRGlzY291bnQge1xyXG4gIGl0ZW1MaW5lSWQ6IHN0cmluZyxcclxuICBkaXNjb3VudEFtb3VudDogbnVtYmVyLFxyXG4gIGRpc2NvdW50VHlwZTogc3RyaW5nLFxyXG4gIC8vIHJlYXNvbkNvZGU6IHN0cmluZyxcclxuICBuYW1lPzogc3RyaW5nLFxyXG4gIHVuaXRQcmljZTogbnVtYmVyLFxyXG4gIGRpc2NvdW50ZWRMaW5lUHJpY2U/OiBudW1iZXIsXHJcbiAgcHJpY2VNYW5hZ2VyT3ZlcnJpZGU/OiBVc2VyT3ZlcnJpZGUsXHJcbiAgcHJpY2VPdmVycmlkZVJlYXNvbkNvZGU/OiBzdHJpbmcsXHJcbiAgcHJpY2VPdmVycmlkZVJlYXNvbk5hbWU/OiBzdHJpbmcsXHJcbiAgcHJpY2VPdmVycmlkZUFtb3VudD86IG51bWJlcixcclxuICBwZXJjZW50YWdlRGlzY291bnRNYW5hZ2VyT3ZlcnJpZGU/OiBVc2VyT3ZlcnJpZGUsXHJcbiAgcGVyY2VudGFnZURpc2NvdW50UmVhc29uQ29kZT86IHN0cmluZyxcclxuICBwZXJjZW50YWdlRGlzY291bnRSZWFzb25OYW1lPzogc3RyaW5nLFxyXG4gIHBlcmNlbnRhZ2VEaXNjb3VudFZhbHVlPzogbnVtYmVyXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBVc2VyIE92ZXJyaWRlXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJPdmVycmlkZSB7XHJcbiAgdXNlcklkOiBzdHJpbmcsXHJcbiAgYXV0b21hdGljQXBwcm92ZTogc3RyaW5nLFxyXG4gIG9yaWdpbmFsVXNlcklkOiBzdHJpbmdcclxufVxyXG5cclxuLyoqXHJcbiogbGluZSBQcm9tb3Rpb25zXHJcbiovXHJcbmV4cG9ydCBpbnRlcmZhY2UgTGluZVByb21vdGlvbnMge1xyXG5cclxuICB0cmlnZ2VyOiBUcmlnZ2VyW10sXHJcbiAgaXRlbUxpbmVJZDogbnVtYmVyLFxyXG4gIHByb21vdGlvbklkOiBzdHJpbmcsXHJcbiAgZGlzcGxheVRleHQ6IHN0cmluZyxcclxuICBwcm9tb3Rpb25UeXBlOiBzdHJpbmcsXHJcbiAgcHJvbW90aW9uQW1vdW50OiBudW1iZXIsXHJcbiAgbmFtZTogc3RyaW5nLFxyXG4gIHByb21vdGlvbkluZm86IHN0cmluZyxcclxuICBwcm9tb3Rpb25MaW5lUHJpY2U6IG51bWJlclxyXG4gIHJlZnVuZGVkPzogYm9vbGVhbjtcclxufVxyXG5cclxuLyoqXHJcbiogdHJpZ2dlclxyXG4qL1xyXG5leHBvcnQgaW50ZXJmYWNlIFRyaWdnZXIge1xyXG4gIGl0ZW1MaW5lSWQ6IHN0cmluZztcclxuICBxdWFudGl0eT86IG51bWJlcjtcclxuICB0b3RhbFF1YW50aXR5PzogbnVtYmVyO1xyXG4gIGxpbmVQcm9tb3Rpb25BbW91bnQ/Om51bWJlcjsgICAvLyBwcm9tb3Rpb24gYW1vdW50IGFwcGxpZWQgYWNjcm9zcyB0aGUgbGluZVxyXG4gIHByb21vdGlvbkFtb3VudD86bnVtYmVyOyAgIC8vIHByb21vdGlvbiBhbW91bnQgYXBwbGllZCBvbiAxIHVuaXRcclxuICByZWZ1bmRlZFJlYXNvbj86IHN0cmluZztcclxuICByZWZ1bmRlZFJlYXNvbkRlc2NyaXB0aW9uPzpzdHJpbmc7XHJcbiAgcHJvbW90aW9uSWQ/OnN0cmluZztcclxufVxyXG5cclxuLyoqXHJcbiogVHJhbnNhY3Rpb24gUHJvbW90aW9uXHJcbiovXHJcbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25Qcm9tb3Rpb24ge1xyXG4gIGRpc3BsYXlUZXh0OiBzdHJpbmc7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHByb21vdGlvbkFtb3VudDogbnVtYmVyO1xyXG4gIHByb21vdGlvbklkOiBzdHJpbmc7XHJcbiAgcHJvbW90aW9uSW5mbzogc3RyaW5nO1xyXG4gIHByb21vdGlvblR5cGU6IHN0cmluZztcclxuICBpdGVtTGluZUlkczogbnVtYmVyW107XHJcbiAgdHlwZT86c3RyaW5nO1xyXG4gIHN1YkxldmVsVHlwZT86UFJPTU9USU9OX0xFVkVMXHJcbiAgdHJpZ2dlcj86VHJpZ2dlcltdO1xyXG4gIGNvdXBvbkNvZGU/OnN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBSZWZ1bmRQcm9kdWN0Q2hhbmdlIHtcclxuICBpdGVtTGluZUlkPzogbnVtYmVyO1xyXG4gIHJlZnVuZGVkUXVhbnRpdHk/OiBudW1iZXI7XHJcbiAgcmVmdW5kZWRQcm9tb3Rpb25hbFF1YW50aXR5PzogbnVtYmVyO1xyXG4gIHJlZnVuZFRvdGFsPzogbnVtYmVyO1xyXG4gIHJlZnVuZGVkUmVhc29uPzogc3RyaW5nO1xyXG4gIHJlZnVuZGVkUmVhc29uRGVzY3JpcHRpb24/OiBzdHJpbmc7XHJcbiAgcmVmdW5kV2l0aFByb21vdGlvbjogYm9vbGVhbjtcclxuICBpc0xhc3RFeGNoYW5nZWQ/OiBib29sZWFuO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEludmVudG9yeUluZm8ge1xyXG4gIHN0b3JlTmFtZTogc3RyaW5nLFxyXG4gIHN0b3JlSWQ6IHN0cmluZyxcclxuICBxdWFudGl0eUF2YWlsYWJsZTogbnVtYmVyLFxyXG4gIHF1YW50aXR5UmVxdWlyZWQ6IG51bWJlclxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEludmVudG9yeVJlcXVlc3RJbmZvIGV4dGVuZHMgSW52ZW50b3J5SW5mbyB7XHJcbiAgcmVxdWVzdGVkUXVhbnRpdHk6IG51bWJlcixcclxuICByZXF1ZXN0ZWRBY3Rpb246IERFTElWRVJZX01FVEhPRFNcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBEZWxpdmVyeUluZm8ge1xyXG4gIGdyb3VwczogRGVsaXZlcnlHcm91cEluZm9bXVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIERlbGl2ZXJ5R3JvdXBJbmZvIHtcclxuICBncm91cE51bWJlcjogbnVtYmVyO1xyXG4gIGl0ZW1zOiBQcm9kdWN0W107XHJcbiAgZXN0aW1hdGU/OiBFc3RpbWF0ZTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBFc3RpbWF0ZSB7XHJcbiAgdHlwZTogc3RyaW5nLFxyXG4gIHZhbHVlOiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2FjdGlvbkRvY3VtZW50IHtcclxuICB0cmFuc2FjdGlvbklkPzogc3RyaW5nO1xyXG4gIHN1YnNpZGlhcnlJZD86IHN0cmluZztcclxuICBvZmZsaW5lVHJhbnNhY3Rpb25JZD86c3RyaW5nO1xyXG4gIHRyYW5zYWN0aW9uUmVmPzogc3RyaW5nO1xyXG4gIGRhdGVUaW1lPzogc3RyaW5nO1xyXG4gIG9yZ0NvZGU6IHN0cmluZztcclxuICBzdG9yZUlkOiBzdHJpbmc7XHJcbiAgc3RvcmVOb2RlSWQ6c3RyaW5nO1xyXG4gIHN0b3JlTm9kZVN0cnVjdHVyZTpzdHJpbmc7XHJcbiAgZGV2aWNlSWQ6IHN0cmluZztcclxuICB0ZXJtaW5hbElkOnN0cmluZztcclxuICBpbml0aWF0aW5nTW9kdWxlIDpzdHJpbmc7XHJcbiAgZXhwb3J0OmJvb2xlYW47XHJcbiAgdXNlcklkPzogc3RyaW5nO1xyXG4gIHVzZXJOYW1lPzpzdHJpbmc7XHJcbiAgY3VzdG9tZXI/OiBDdXN0b21lcjtcclxuICBiYXNrZXQ6IGFueTtcclxuICBiYXNrZXRTdW1tYXJ5OiBCYXNrZXRTdW1tYXJ5O1xyXG4gIC8vIGxpbmVEaXNjb3VudDogTGluZURpc2NvdW50W107XHJcbiAgYmFzZUN1cnJlbmN5OiBzdHJpbmc7XHJcbiAgc3BsaXRQYXltZW50Pzpib29sZWFuO1xyXG4gIGlzUGF5bWVudENvbXBsZXRlZD86Ym9vbGVhbjtcclxuICBwYXltZW50RGV0YWlscz86IGFueTtcclxuICB0eXBlPzogc3RyaW5nO1xyXG4gIG9wZXJhdGlvblN0YXR1cz86IHN0cmluZztcclxuICBjcmVhdGVkQXQ/OiBzdHJpbmc7XHJcbiAgdXBkYXRlZEF0Pzogc3RyaW5nO1xyXG4gIHRyYW5zQ29tcGxldGVkQXQ/OiBzdHJpbmc7XHJcbiAgaWQ/OiBzdHJpbmc7XHJcbiAgc2FsZVRvdGFsPzogbnVtYmVyO1xyXG4gIHJlYXNvbkNvZGU/OiBzdHJpbmc7XHJcbiAgcmVhc29uRGVzY3JpcHRpb24/OiBzdHJpbmc7XHJcbiAgb3ZlcnJpZGU/OiBVc2VyT3ZlcnJpZGU7XHJcbiAgb3JpZ2luYWxUcmFuc0lkPzpzdHJpbmc7XHJcbiAgb3JpZ2luYWxFeHRlcm5hbElkPzogc3RyaW5nO1xyXG4gIGFwaVJlc3BvbnNlPzogQVBJUmVzcG9uc2U7ICAgIC8vIFRPRE8gYWRkIGhhbmRsZXIgYXMgcGVyIGV4cG9ydCBwcm92aWRlclxyXG4gIHVucmVmZXJlbmNlZFJlZnVuZD86Ym9vbGVhbjtcclxuICBnaWZ0ZWRSZWNlaXB0Pzpib29sZWFuO1xyXG4gIGN1cnJlbnRUcmFuc2FjdGlvbkRldGFpbHM/OmFueTtcclxuICBpc0NoZWNrZWQ/OmJvb2xlYW47XHJcbiAgZXh0ZXJuYWxUcmFuc2FjdGlvbkRldGFpbHM/OiBleHRlcm5hbFRyYW5zYWN0aW9uRGV0YWlsc1tdO1xyXG4gIHJlZnVuZFJlcXVlc3Q/IDphbnlbXVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEFQSVJlc3BvbnNlXHJcbntcclxuICBpbnRlcm5hbElkPzpudW1iZXI7XHJcbiAgdHJhbmlkPzpzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDdXJyZW50VHJhbnNhY3Rpb25EZXRhaWxze1xyXG4gIHByb2R1Y3RzOiBQcm9kdWN0W107XHJcbiAgbGluZURpc2NvdW50PzpMaW5lRGlzY291bnRbXTtcclxuICBsaW5lUHJvbW90aW9uPzpMaW5lUHJvbW90aW9uc1tdO1xyXG4gIHRyYW5zYWN0aW9uUHJvbW90aW9uPzpUcmFuc2FjdGlvblByb21vdGlvbltdO1xyXG4gIHRyYW5zYWN0aW9uRGlzY291bnQ/OlRyYW5zYWN0aW9uRGlzY291bnRbXTtcclxuICBiYXNrZXRTdW1tYXJ5PzpCYXNrZXRTdW1tYXJ5OyAgXHJcbiAgdGF4QnJlYWtkb3duPzpUYXhCcmVha2Rvd247ICBcclxuICB0b3RhbFRheFN1bW1hcnk/OlRvdGFsVGF4U3VtbWFyeVtdO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgQmFza2V0U3VtbWFyeSB7XHJcbiAgdG90YWxJdGVtcz86IG51bWJlcjtcclxuICBzYWxlVG90YWw/OiBudW1iZXI7XHJcbiAgVkFUVG90YWw/OiBudW1iZXI7XHJcbiAgZGlzY291bnRUb3RhbD86IG51bWJlcjtcclxuICBiYXNrZXRUb3RhbD86IG51bWJlcjtcclxuICByZWZ1bmRUb3RhbD86bnVtYmVyO1xyXG4gIHNoaXBwaW5nVG90YWw/OiBudW1iZXI7XHJcbiAgYmFza2V0VG90YWxXaXRoU2hpcHBpbmdUb3RhbD86IG51bWJlcjtcclxuICBpblN0b3JlPzogQmFza2V0U3VtbWFyeURldGFpbHM7XHJcbiAgd2ViT3JkZXI/OiBCYXNrZXRTdW1tYXJ5RGV0YWlscztcclxuICBjbmM/OiBCYXNrZXRTdW1tYXJ5RGV0YWlscztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBCYXNrZXRTdW1tYXJ5RGV0YWlscyB7XHJcbiAgdG90YWxJdGVtcz86IG51bWJlcjtcclxuICBzYWxlVG90YWw/OiBudW1iZXI7XHJcbiAgVkFUVG90YWw/OiBudW1iZXI7XHJcbiAgZGlzY291bnRUb3RhbD86IG51bWJlcjtcclxuICBiYXNrZXRUb3RhbD86IG51bWJlcjtcclxuICByZWZ1bmRUb3RhbD86bnVtYmVyO1xyXG4gIHNoaXBwaW5nVG90YWw/OiBudW1iZXI7XHJcbiAgYmFza2V0VG90YWxXaXRoU2hpcHBpbmdUb3RhbD86IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2FjdGlvbkRpc2NvdW50e1xyXG4gIGRpc2NvdW50QW1vdW50Om51bWJlcjtcclxuICBkaXNjb3VudFR5cGU6U3RyaW5nO1xyXG4gIHJlYXNvbkNvZGU6c3RyaW5nO1xyXG4gIG92ZXJyaWRlPzogVXNlck92ZXJyaWRlO1xyXG4gIGl0ZW1MaW5lSWRzPzpudW1iZXJbXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUQmFza2V0IHtcclxuICBwcm9kdWN0czogVFByb2R1Y3RbXTtcclxuICBsaW5lRGlzY291bnQ6TGluZURpc2NvdW50W107XHJcbiAgZXhjaGFuZ2U6RXhjaGFuZ2VbXTtcclxuICBsaW5lUHJvbW90aW9uOkxpbmVQcm9tb3Rpb25zW107XHJcbiAgdHJhbnNhY3Rpb25Qcm9tb3Rpb24/OlRyYW5zYWN0aW9uUHJvbW90aW9uW107XHJcbiAgdHJhbnNhY3Rpb25EaXNjb3VudD86VHJhbnNhY3Rpb25EaXNjb3VudFtdO1xyXG4gIHRheEJyZWFrZG93bj86VGF4QnJlYWtkb3duO1xyXG4gIHRvdGFsVGF4U3VtbWFyeT86VG90YWxUYXhTdW1tYXJ5W107XHJcblxyXG4gIFxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRFeGNoYW5nZXtcclxuICBleGNoYW5nZUlkPzpudW1iZXIsXHJcbiAgbGluZUl0ZW1JZD86IG51bWJlcixcclxuICByZWFzb24/OiBzdHJpbmcsXHJcbiAgcXVhbnRpdHk/OiBudW1iZXIsXHJcbiAgbmV3SXRlbXM/OlROZXdJdGVtc1tdO1xyXG4gIH1cclxuICBcclxuICBleHBvcnQgaW50ZXJmYWNlIFROZXdJdGVtc3tcclxuICBsaW5lSXRlbUlkOm51bWJlcixcclxuICAgUXVhbnRpdHk6bnVtYmVyXHJcbiAgfVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUUHJvZHVjdCB7XHJcbiAgaXRlbUxpbmVJZDogc3RyaW5nO1xyXG4gIFNLVTogc3RyaW5nO1xyXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgaW1hZ2VVcmxzOiBbc3RyaW5nXTtcclxuICBwcmljZTogbnVtYmVyO1xyXG4gIHRheENvZGU/OiBzdHJpbmc7XHJcbiAgdGF4UGVyY2VudD86IHN0cmluZztcclxuICBxdWFudGl0eTogbnVtYmVyO1xyXG4gIHJlZnVuZGVkUXVhbnRpdHk/OiBudW1iZXI7XHJcbiAgcmVmdW5kZWRQcm9tb3Rpb25hbFF1YW50aXR5PzpudW1iZXI7XHJcbiAgcmVmdW5kZWQ/OiBib29sZWFuO1xyXG4gIHJlZnVuZGVkVG90YWw/OiBudW1iZXI7XHJcbiAgcmVmdW5kZWRSZWFzb24/OnN0cmluZztcclxuICByZWZ1bmRlZFJlYXNvbkRlc2NyaXB0aW9uPzpzdHJpbmc7XHJcbiAgc2VsZWN0ZWRSUlBQcmljZT86IG51bWJlcjtcclxuICB0b3RhbExpbmVQcmljZTogbnVtYmVyO1xyXG4gIGJhckNvZGU/OiBzdHJpbmc7XHJcbiAgYmFyY29kZXM/OiBzdHJpbmdbXTtcclxuICBmbGFnZ2VkPzogYm9vbGVhbjtcclxuICBleGNoYW5nZT86RXhjaGFuZ2U7XHJcbiAgZXhjbHVkZVByb21vdGlvbjpib29sZWFuO1xyXG4gIGRpc2NvdW50YWJsZT86Ym9vbGVhbjtcclxuXHJcbiAgaXRlbURpc2NvdW50cz86SXRlbURpc2NvdW50cztcclxuICBpc0xhc3RFeGNoYW5nZWQ/OiBib29sZWFuO1xyXG5cclxuICAvLyBNaXhlZCBTYWxlcyBmaWVsZHNcclxuICBmdWxsZmlsbWVudElkOnN0cmluZyxcclxuICBmdWxsZmlsbWVudExvY2F0aW9uTmFtZTpzdHJpbmcsXHJcbiAgZGVsaXZlcnlNZXRob2Q/OnN0cmluZyxcclxuICBkZWxpdmVyeUdyb3VwPzpzdHJpbmcsXHJcbiAgZ2lmdENhcmROdW1iZXJJc3N1ZWQ/OiBzdHJpbmcsXHJcbiAgZ2lmdENhcmRBbW91bnQ/OiBudW1iZXIsXHJcbiAgZ2lmdENhcmRSZWNpcGllbnRFbWFpbD86IHN0cmluZyxcclxuICBnaWZ0Q2FyZEV4cGlyeURhdGU/OiBzdHJpbmcgLFxyXG4gIGdpZnRDYXJkUmVjaXBpZW50TmFtZT86IHN0cmluZyxcclxuICBnaWZ0Q2FyZD86Ym9vbGVhbixcclxuICBjdXJyZW5jeT86c3RyaW5nLFxyXG4gIGlzV2ViT3JkZXI/OmJvb2xlYW4sXHJcbiAgbGVhZFRpbWU/OiBsZWFkVGltZVxyXG4gIFxyXG4gIC8vIGN1cnJlbnR0cmFuc2FjdGlvbiBkb2MgY2hhbmdlc1xyXG4gIGxpbmVEaXNjb3VudD86YW55XHJcblxyXG4gIGF0dHJpYnV0ZXM/OkNvcmVBdHRyaWJ1dGVbXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJdGVtRGlzY291bnRze1xyXG4gIHRybkRpc2NvdW50c1BvcnRpb246bnVtYmVyO1xyXG4gIHRyblByb21vdGlvbnNQb3J0aW9uOm51bWJlcjtcclxuICByZWZ1bmRQb3J0aW9uOm51bWJlcjtcclxufVxyXG5cclxuXHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbWVyIHtcclxuICBpZDogc3RyaW5nO1xyXG4gIHRpdGxlPzogc3RyaW5nO1xyXG4gIGZpcnN0TmFtZTogc3RyaW5nO1xyXG4gIGxhc3ROYW1lOiBzdHJpbmc7XHJcbiAgZW1haWw6IHN0cmluZztcclxuICBwb3N0Q29kZTogc3RyaW5nO1xyXG4gIHRlbGVwaG9uZT86IHN0cmluZztcclxuICBiaWxsaW5nQWRkcmVzcz86IEFkZHJlc3MgfCBBZGRyZXNzW107XHJcbiAgc2hpcHBpbmdBZGRyZXNzPzogQWRkcmVzcyB8IEFkZHJlc3NbXTtcclxuICBzaGlwbWVudERldGFpbHM/OiBTaGlwbWVudERldGFpbHNbXTtcclxuICBhZGRyZXNzRGV0YWlsPzogc3RyaW5nO1xyXG4gIG5vQ3VzdG9tZXJTZWxlY3RlZD86IGJvb2xlYW47XHJcbiAgZXh0ZXJuYWxJZD86IHN0cmluZzsgXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQWRkcmVzcyBcclxue1xyXG4gIGlkPzogc3RyaW5nO1xyXG4gIGNvdW50cnlDb2RlPzogc3RyaW5nO1xyXG4gIGFkZHJlc3MxPzogc3RyaW5nO1xyXG4gIGFkZHJlc3MyPzogc3RyaW5nO1xyXG4gIGFkZHJlc3MzPzogc3RyaW5nO1xyXG4gIGNpdHk/OiBzdHJpbmc7XHJcbiAgY291bnR5Pzogc3RyaW5nO1xyXG4gIHBvc3RDb2RlPzogc3RyaW5nO1xyXG4gIGNvdW50cnk/OiBzdHJpbmc7XHJcbiB9XHJcblxyXG4gZXhwb3J0IGludGVyZmFjZSBTaGlwbWVudERldGFpbHMge1xyXG4gIGlkPzogc3RyaW5nLFxyXG4gIGRlbGl2ZXJ5R3JvdXA/OiBzdHJpbmcsXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUGF5bWVudERldGFpbHMge1xyXG4gIGNhcmROdW1iZXI/OiBhbnk7XHJcbiAgc3FObz86bnVtYmVyO1xyXG4gIHJlc3VsdD86IHN0cmluZztcclxuICBjdXJyZW5jeTogc3RyaW5nO1xyXG4gIGFtb3VudDogc3RyaW5nO1xyXG4gIGF1dGhjb2RlPzogc3RyaW5nO1xyXG4gIHBhbj86IHN0cmluZztcclxuICBjYXJkVHlwZT86IHN0cmluZztcclxuICB0cmFuc2FjdGlvbkRhdGU/OiBzdHJpbmc7XHJcbiAgbWlkPzogc3RyaW5nO1xyXG4gIHRpZD86IHN0cmluZztcclxuICBjdm0/OiBzdHJpbmc7XHJcbiAgaG9zdFJlZmVyZW5jZUlkPzogc3RyaW5nO1xyXG4gIGFpZD86IHN0cmluZztcclxuICByZWNlaXB0Tm8/OiBzdHJpbmc7XHJcbiAgZXhwaXJ5ZGF0ZT86IHN0cmluZztcclxuICB0cmFuc2FjdGlvblJlZmVyZW5jZTogc3RyaW5nO1xyXG4gIGFwcGxpY2F0aW9uVmVyc2lvbj86IHN0cmluZztcclxuICBlbnRyeU1ldGhvZD86c3RyaW5nO1xyXG4gIHRyYW5zYWN0aW9uVHlwZTpzdHJpbmc7XHJcbiAgdG90YWxhbW91bnQ6c3RyaW5nO1xyXG4gIHBheW1lbnRUeXBlPzpzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVGF4QnJlYWtkb3duXHJcbntcclxuICB0YXhMaW5lcyA6IFRheExpbmVbXSxcclxuICB0b3RhbFRheGFibGVBbW91bnQ6IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUb3RhbFRheFN1bW1hcnl7XHJcbiAgVkFUQ29kZTpzdHJpbmcsXHJcbiAgVkFUIDogbnVtYmVyO1xyXG4gIFByZVRheFN1bTogIG51bWJlclxyXG4gIFRheFN1bTogIG51bWJlclxyXG4gIFRYcmF0ZVN1bTogbnVtYmVyXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVGF4TGluZVxyXG57XHJcbiAgICBpdGVtTGluZUlkOiBudW1iZXIsXHJcbiAgICB0YXhhYmxlQW1vdW50OiBudW1iZXIsXHJcbiAgICB0YXhMaW5lVG90YWw6IG51bWJlcixcclxuICAgIFZBVDogbnVtYmVyLFxyXG4gICAgVkFUQ29kZSA6IHN0cmluZyxcclxuICAgIFByZVRheDogbnVtYmVyXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIERJU0NPVU5UVFlQRSB7XHJcbiAgUEVSQ0VOVCA9ICdQZXJjZW50JyxcclxuICBBTU9VTlQgPSAnQU1PVU5UJ1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zYWN0aW9uSW5mbyB7XHJcbiAgc2hpcHBpbmdJZD86IHN0cmluZyxcclxuICBleHRlcm5hbFNoaXBwaW5nSWQ/OiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBleHRlcm5hbFRyYW5zYWN0aW9uRGV0YWlscyB7XHJcbiAgdW5pcXVlSWQ/OiBzdHJpbmcsXHJcbiAgcHJvdmlkZXJUeXBlPzogc3RyaW5nLFxyXG4gIGRldGFpbHM/OiBUcmFuc2FjdGlvbkluZm9cclxufVxyXG5cclxuZXhwb3J0IGVudW0gSU5JVElBVElOR19NT0RVTEUge1xyXG4gIEVCQVNLRVQgPSBcImVCYXNrZXRcIlxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIHBlbmRpbmdNZXRob2Qge1xyXG4gIF90eXBlPzogc3RyaW5nO1xyXG4gIHR5cGU/OiBzdHJpbmc7XHJcbiAgbWVzc2FnZT86IHN0cmluZztcclxuICBwYXRoPzogc3RyaW5nO1xyXG4gIGRldGFpbHM/OiBTaGlwbWVudElkO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNoaXBtZW50SWQge1xyXG4gIHNoaXBtZW50SWQ/OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ3VzdG9tZXJBZGRyZXNzIHtcclxuICBfdHlwZT86IHN0cmluZztcclxuICBlbWFpbD86IHN0cmluZztcclxuICBhZGRyZXNzMT86IHN0cmluZztcclxuICBjaXR5Pzogc3RyaW5nO1xyXG4gIGNvdW50cnlfY29kZT86IHN0cmluZztcclxuICBmaXJzdF9uYW1lPzogc3RyaW5nO1xyXG4gIGZ1bGxfbmFtZT86IHN0cmluZztcclxuICBpZD86IHN0cmluZztcclxuICBsYXN0X25hbWU/OiBzdHJpbmc7XHJcbiAgcGhvbmU/OiBzdHJpbmc7XHJcbiAgc2FsdXRhdGlvbj86IHN0cmluZztcclxuICBjX2FyZWE/OiBzdHJpbmc7XHJcbiAgY19lbWFpbD86IHN0cmluZztcclxuICBjX3Bob25lV2hhdHNBcHA/OiBzdHJpbmc7XHJcbiAgY19zdHJWYWx1ZT86IHN0cmluZztcclxuICBwb3N0YWxfY29kZT86IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDdXN0b21lckluZm8ge1xyXG4gIF90eXBlPzogc3RyaW5nO1xyXG4gIGN1c3RvbWVyX2lkPzogc3RyaW5nO1xyXG4gIGVtYWlsPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEdyb3VwZWRUYXhJdGVtIHtcclxuICBfdHlwZT86IHN0cmluZztcclxuICB0YXhfcmF0ZT86IG51bWJlcjtcclxuICB0YXhfdmFsdWU/OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgYWRkaXRpb25hbE5vdGVzIHtcclxuICBfdHlwZT86IHN0cmluZztcclxuICBsaW5rPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFByb2R1Y3RJdGVtIHtcclxuICBfdHlwZT86IHN0cmluZztcclxuICBhZGp1c3RlZF90YXg/OiBudW1iZXI7XHJcbiAgYmFzZV9wcmljZT86IG51bWJlcjtcclxuICBib251c19wcm9kdWN0X2xpbmVfaXRlbT86IGJvb2xlYW47XHJcbiAgZ2lmdD86IGJvb2xlYW47XHJcbiAgaXRlbV9pZD86IHN0cmluZztcclxuICBpdGVtX3RleHQ/OiBzdHJpbmc7XHJcbiAgcHJpY2U/OiBudW1iZXI7XHJcbiAgcHJpY2VfYWRqdXN0bWVudHM/OiBQcmljZUFkanVzdG1lbnRbXTtcclxuICBwcmljZV9hZnRlcl9pdGVtX2Rpc2NvdW50PzogbnVtYmVyO1xyXG4gIHByaWNlX2FmdGVyX29yZGVyX2Rpc2NvdW50PzogbnVtYmVyO1xyXG4gIHByb2R1Y3RfaWQ/OiBzdHJpbmc7XHJcbiAgcHJvZHVjdF9uYW1lPzogc3RyaW5nO1xyXG4gIHF1YW50aXR5PzogbnVtYmVyO1xyXG4gIHNoaXBtZW50X2lkPzogc3RyaW5nO1xyXG4gIHRheD86IG51bWJlcjtcclxuICB0YXhfYmFzaXM/OiBudW1iZXI7XHJcbiAgdGF4X2NsYXNzX2lkPzogc3RyaW5nO1xyXG4gIHRheF9yYXRlPzogbnVtYmVyO1xyXG4gIGNfb3N1T2JqZWN0RGF0YT86c3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNoaXBwaW5nTWV0aG9kIHtcclxuICBfdHlwZT86IHN0cmluZztcclxuICBkZXNjcmlwdGlvbj86IHN0cmluZztcclxuICBpZD86IHN0cmluZztcclxuICBuYW1lPzogc3RyaW5nO1xyXG4gIHByaWNlPzogbnVtYmVyO1xyXG4gIGNfYXBwcm9hY2hpbmdUaHJlc2hvbGRNZXNzYWdlPzogc3RyaW5nO1xyXG4gIGNfZXN0aW1hdGVkQXJyaXZhbFRpbWU/OiBzdHJpbmc7XHJcbiAgY19pc0VtYWlsPzogYm9vbGVhbjtcclxuICBjX3N0b3JlUGlja3VwRW5hYmxlZD86IGJvb2xlYW47XHJcbiAgY190aHJlc2hvbGRWYWx1ZT86IG51bWJlcjtcclxufSBcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2Ugc2hpcG1lbnQge1xyXG4gIF90eXBlPzogc3RyaW5nO1xyXG4gIGFkanVzdGVkX21lcmNoYW5kaXplX3RvdGFsX3RheD86IG51bWJlcjtcclxuICBhZGp1c3RlZF9zaGlwcGluZ190b3RhbF90YXg/OiBudW1iZXI7XHJcbiAgZ2lmdD86IGJvb2xlYW47XHJcbiAgbWVyY2hhbmRpemVfdG90YWxfdGF4PzogbnVtYmVyO1xyXG4gIHByb2R1Y3Rfc3ViX3RvdGFsPzogbnVtYmVyO1xyXG4gIHByb2R1Y3RfdG90YWw/OiBudW1iZXI7XHJcbiAgc2hpcG1lbnRfaWQ/OiBzdHJpbmc7XHJcbiAgc2hpcG1lbnRfdG90YWw/OiBudW1iZXI7XHJcbiAgc2hpcHBpbmdfYWRkcmVzcz86IEN1c3RvbWVyQWRkcmVzcztcclxuICBzaGlwcGluZ19tZXRob2Q/OiBTaGlwcGluZ01ldGhvZDtcclxuICBzaGlwcGluZ19zdGF0dXM/OiBzdHJpbmc7XHJcbiAgc2hpcHBpbmdfdG90YWw/OiBudW1iZXI7XHJcbiAgc2hpcHBpbmdfdG90YWxfdGF4PzogbnVtYmVyO1xyXG4gIHRheF90b3RhbD86IG51bWJlcjtcclxuICBjX2Zyb21TdG9yZUlkPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNoaXBwaW5nSXRlbSB7XHJcbiAgX3R5cGU/OiBzdHJpbmc7XHJcbiAgYWRqdXN0ZWRfdGF4PzogbnVtYmVyO1xyXG4gIGJhc2VfcHJpY2U/OiBudW1iZXI7XHJcbiAgaXRlbV9pZD86IHN0cmluZztcclxuICBpdGVtX3RleHQ/OiBzdHJpbmc7XHJcbiAgcHJpY2U/OiBudW1iZXI7XHJcbiAgcHJpY2VfYWZ0ZXJfaXRlbV9kaXNjb3VudD86IG51bWJlcjtcclxuICBzaGlwbWVudF9pZD86IHN0cmluZztcclxuICB0YXg/OiBudW1iZXI7XHJcbiAgdGF4X2Jhc2lzPzogbnVtYmVyO1xyXG4gIHRheF9jbGFzc19pZD86IHN0cmluZztcclxuICB0YXhfcmF0ZT86IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBcHBsaWVkRGlzY291bnQge1xyXG4gIF90eXBlPzogc3RyaW5nLFxyXG4gIGFtb3VudD86IG51bWJlcixcclxuICBwZXJjZW50YWdlPzogbnVtYmVyLFxyXG4gIHR5cGU/OiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQcmljZUFkanVzdG1lbnQge1xyXG4gIF90eXBlPzogc3RyaW5nLFxyXG4gIGFwcGxpZWRfZGlzY291bnQ/OiBBcHBsaWVkRGlzY291bnQsXHJcbiAgY291cG9uX2NvZGU/OiBzdHJpbmcsXHJcbiAgY3JlYXRpb25fZGF0ZT86IHN0cmluZyxcclxuICBjdXN0b20/OiBib29sZWFuLFxyXG4gIGl0ZW1fdGV4dD86IHN0cmluZyxcclxuICBsYXN0X21vZGlmaWVkPzogc3RyaW5nLFxyXG4gIG1hbnVhbD86IGJvb2xlYW4sXHJcbiAgcHJpY2U/OiBudW1iZXJcclxuICBwcmljZV9hZGp1c3RtZW50X2lkPzogc3RyaW5nLFxyXG4gIHByb21vdGlvbl9pZD86IHN0cmluZyxcclxuICBwcm9tb3Rpb25fbGluaz86IHN0cmluZ1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIE9yZGVyRGV0YWlscyB7XHJcbiAgX3Y/OiBzdHJpbmc7XHJcbiAgX3R5cGU/OiBzdHJpbmc7XHJcbiAgX3Jlc291cmNlX3N0YXRlPzogc3RyaW5nO1xyXG4gIF9mbGFzaD86IHBlbmRpbmdNZXRob2RbXTtcclxuICBhZGp1c3RlZF9tZXJjaGFuZGl6ZV90b3RhbF90YXg/OiBudW1iZXI7XHJcbiAgYWRqdXN0ZWRfc2hpcHBpbmdfdG90YWxfdGF4PzogbnVtYmVyO1xyXG4gIGFnZW50X2Jhc2tldD86IGJvb2xlYW47XHJcbiAgYmFza2V0X2lkPzogc3RyaW5nO1xyXG4gIGJpbGxpbmdfYWRkcmVzcz86IEN1c3RvbWVyQWRkcmVzcztcclxuICBjaGFubmVsX3R5cGU/OiBzdHJpbmc7XHJcbiAgY3JlYXRpb25fZGF0ZT86IHN0cmluZztcclxuICBjdXJyZW5jeT86IHN0cmluZztcclxuICBjdXN0b21lcl9pbmZvPzogQ3VzdG9tZXJJbmZvO1xyXG4gIGdyb3VwZWRfdGF4X2l0ZW1zPzogR3JvdXBlZFRheEl0ZW1bXTtcclxuICBsYXN0X21vZGlmaWVkPzogc3RyaW5nO1xyXG4gIG1lcmNoYW5kaXplX3RvdGFsX3RheD86IG51bWJlcjtcclxuICBub3Rlcz86IGFkZGl0aW9uYWxOb3RlcztcclxuICBvcmRlcl9wcmljZV9hZGp1c3RtZW50cz86IFByaWNlQWRqdXN0bWVudFtdLFxyXG4gIG9yZGVyX25vPzogc3RyaW5nO1xyXG4gIG9yZGVyX3RvdGFsPzogbnVtYmVyO1xyXG4gIHByb2R1Y3RfaXRlbXM/OiBQcm9kdWN0SXRlbVtdO1xyXG4gIHByb2R1Y3Rfc3ViX3RvdGFsPzogbnVtYmVyO1xyXG4gIHByb2R1Y3RfdG90YWw/OiBudW1iZXI7XHJcbiAgc2hpcG1lbnRzPzogc2hpcG1lbnRbXTtcclxuICBzaGlwcGluZ19pdGVtcz86IFNoaXBwaW5nSXRlbVtdO1xyXG4gIHNoaXBwaW5nX3RvdGFsPzogbnVtYmVyO1xyXG4gIHNoaXBwaW5nX3RvdGFsX3RheD86IG51bWJlcjtcclxuICB0YXhhdGlvbj86IHN0cmluZztcclxuICB0YXhfcm91bmRlZF9hdF9ncm91cD86IGJvb2xlYW47XHJcbiAgdGF4X3RvdGFsPzogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgZW51bSBQUk9WSURFUlMge1xyXG4gIFNBTEVTRk9SQ0UgPSBcIlNhbGVzZm9yY2VcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBQUk9NT1RJT05fTEVWRUxcclxue1xyXG4gIExJTkU9XCJMSU5FXCIsXHJcbiAgVFJBTlNBQ1RJT049XCJUUkFOU0FDVElPTlwiXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFBST01PVElPTl9UWVBFXHJcbntcclxuICBDT1VQT049XCJDT1VQT05cIlxyXG59XHJcblxyXG4iXX0=
|
|
1442
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwcGVyLWxpYnJhcnkubW9kZWwuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AcG1jcmV0YWlsL21hcHBlci1saWJyYXJ5LyIsInNvdXJjZXMiOlsibGliL21hcHBlci1saWJyYXJ5Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUVBLElBQVksZ0JBQWdCO0lBQzFCLElBQUksUUFBUztJQUNiLE1BQU0sVUFBVztJQUNqQixXQUFXLGVBQWdCO0lBQzNCLGFBQWEsaUJBQWtCO0lBQy9CLElBQUksUUFBUztJQUNiLFdBQVcsZUFBZ0I7RUFDNUI7Ozs7O0FBRUQsa0NBS0M7OztJQUpDLDJDQUE0Qjs7SUFDNUIsNENBQTZCOztJQUM3QixxQ0FBc0I7O0lBQ3RCLDRDQUE4Qjs7O0FBR2hDLElBQVksZ0JBQWdCO0lBQzFCLFFBQVEsR0FBSTtJQUNaLFNBQVMsR0FBSTtJQUNiLGtCQUFrQixHQUFJO0lBQ3RCLGFBQWEsR0FBSTtFQUNsQjs7Ozs7Ozs7O0FBRUQsbUNBaUJDOzs7SUFoQkMsbUNBQW9COztJQUNwQiw0QkFBWTs7SUFDWixpQ0FBaUI7O0lBQ2pCLHNDQUF1Qjs7SUFDdkIscUNBQTRCOztJQUM1Qix1Q0FBZ0M7O0lBQ2hDLGlDQUFvQjs7SUFDcEIseUNBQTBCOztJQUMxQixrREFBbUM7O0lBQ25DLGlDQUFtQjs7SUFDbkIsc0NBQXVCOztJQUN2Qix1Q0FBd0I7O0lBQ3hCLGtEQUFtQzs7SUFDbkMsa0NBQW9COztJQUNwQiwrQkFBaUI7O0lBQ2pCLHdDQUEwQjs7Ozs7O0FBTTVCLDZCQXlFQzs7O0lBeEVDLDZCQUFvQjs7SUFDcEIseUJBQWU7O0lBQ2YsMkJBQWlCOztJQUNqQix3QkFBYzs7SUFDZCwyQkFBaUI7O0lBQ2pCLDJCQUFpQjs7SUFDakIsa0NBQXdCOztJQUN4Qiw0QkFBa0I7O0lBQ2xCLDhCQUFvQjs7SUFDcEIsdUJBQWM7O0lBQ2QsNEJBQW9COztJQUNwQixvQ0FBNEI7O0lBQzVCLHVCQUFhOztJQUNiLHVCQUFhOztJQUNi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O0FBR3pCLGtDQWdDQzs7O0lBL0JDLDBCQUFZOztJQUNaLDZCQUFlOztJQUNmLHVDQUF5Qjs7SUFDekIsOEJBQXlCOztJQUN6QixzREFBd0M7O0lBQ3hDLG1EQUFxQzs7SUFDckMsb0NBQXVCOztJQUN2QixpQ0FBbUI7O0lBQ25CLHVDQUFrQzs7SUFDbEMsb0NBQXNCOztJQUN0QixxQ0FBdUI7O0lBQ3ZCLGdDQUFrQjs7SUFDbEIscUNBQTZCOztJQUM3Qix5Q0FBcUM7O0lBQ3JDLHFDQUF1Qjs7SUFDdkIsNkNBQStCOztJQUMvQiw2QkFBd0I7O0lBQ3hCLCtDQUE0Qzs7SUFDNUMsZ0NBQWtCOztJQUNsQixtQ0FBcUI7O0lBQ3JCLHFDQUE4Qjs7SUFDOUIseUNBQTJCOztJQUMzQixxQ0FBdUI7O0lBQ3ZCLGlDQUF1Qjs7SUFDdkIsc0NBQWdDOztJQUNoQyxzQ0FBd0I7O0lBQ3hCLDBDQUE0Qjs7SUFDNUIsZ0NBQWtCOztJQUNsQiw0Q0FBK0I7O0lBQy9CLGlDQUFtQjs7SUFDbkIsd0NBQTJCOzs7QUFHN0IsSUFBWSxTQUFTO0lBQ25CLFVBQVUsY0FBZTtFQUMxQjs7O0FBRUQsSUFBWSxlQUFlO0lBRXpCLElBQUksUUFBTztJQUNYLFdBQVcsZUFBYztFQUMxQjs7O0FBRUQsSUFBWSxjQUFjO0lBRXhCLE1BQU0sVUFBUztFQUNoQiIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5cclxuZXhwb3J0IGVudW0gVFJBTlNBQ1RJT05fVFlQRSB7XHJcbiAgU0FMRSA9IFwiU0FMRVwiLFxyXG4gIFJFRlVORCA9IFwiUkVGVU5EXCIsXHJcbiAgU0FMRV9SRUZVTkQgPSBcIlNBTEVfUkVGVU5EXCIsXHJcbiAgU0FMRV9FWENIQU5HRSA9IFwiU0FMRV9FWENIQU5HRVwiLFxyXG4gIFZPSUQgPSBcIlZPSURcIixcclxuICBXRUJfUkVUVVJOUyA9IFwiV0VCX1JFVFVSTlNcIlxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEl0ZW1EaXNjb3VudCB7XHJcbiAgdHJuRGlzY291bnRzUG9ydGlvbjogbnVtYmVyO1xyXG4gIHRyblByb21vdGlvbnNQb3J0aW9uOiBudW1iZXI7XHJcbiAgcmVmdW5kUG9ydGlvbjogbnVtYmVyO1xyXG4gIGN1cnJlbnRSZWZ1bmRQb3J0aW9uPzogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgZW51bSBERUxJVkVSWV9NRVRIT0RTIHtcclxuICBERUxJVkVSWSA9IDEsXHJcbiAgRFJPUF9TSElQID0gMixcclxuICBDT0xMRUNUX0ZST01fU1RPUkUgPSAzLFxyXG4gIFNISVBfVE9fU1RPUkUgPSA0XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUHJvZHVjdENoYW5nZSB7XHJcbiAgaXRlbUxpbmVJZD86IG51bWJlcjtcclxuICBTS1U6IHN0cmluZztcclxuICBxdWFudGl0eTogbnVtYmVyO1xyXG4gIHNlbGVjdGVkUHJpY2U/OiBudW1iZXI7XHJcbiAgbGluZURpc2NvdW50PzogTGluZURpc2NvdW50O1xyXG4gIGxpbmVQcm9tb3Rpb25zPzogTGluZVByb21vdGlvbnM7XHJcbiAgZXhjaGFuZ2U/OiBFeGNoYW5nZTtcclxuICByZWZ1bmRlZFF1YW50aXR5PzogbnVtYmVyOyAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNvbnRhaW5zIHF1YW50aXR5IG9mIGJvdGggZnVsbCBwcmljZWQgYW5kIHByb21vdGlvbmFsIHF1YW50aXRpZXNcclxuICByZWZ1bmRQcm9tb3Rpb25hbFF1YW50aXR5PzogbnVtYmVyOyAgICAgICAgICAgICAgIC8vIHByb21vdGlvbmFsIHF1YW50aXR5XHJcbiAgcmVmdW5kZWQ/OiBib29sZWFuO1xyXG4gIHJlZnVuZGVkVG90YWw/OiBudW1iZXI7XHJcbiAgcmVmdW5kZWRSZWFzb24/OiBzdHJpbmc7XHJcbiAgcmVmdW5kZWRSZWFzb25EZXNjcmlwdGlvbj86IHN0cmluZztcclxuICBpc0NoZWNrZWQ/OiBib29sZWFuO1xyXG4gIHNlYWxlZD86IGJvb2xlYW47XHJcbiAgaXNMYXN0RXhjaGFuZ2VkPzogYm9vbGVhbjtcclxufVxyXG5cclxuLyoqXHJcbiAqIFByb2R1Y3RcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgUHJvZHVjdCBleHRlbmRzIFByb2R1Y3RDaGFuZ2Uge1xyXG4gIGl0ZW1MaW5lSWQ/OiBudW1iZXI7XHJcbiAgc3RhdHVzOiBudW1iZXI7XHJcbiAgc3ViR3JvdXA6IG51bWJlcjtcclxuICBicmFuZDogc3RyaW5nO1xyXG4gIGN1cnJlbmN5OiBzdHJpbmc7XHJcbiAgY2F0ZWdvcnk6IHN0cmluZztcclxuICBjb3VudHJ5b2ZPcmlnaW46IHN0cmluZztcclxuICBwcm9kdWN0SWQ6IHN0cmluZztcclxuICBwcm9kdWN0VHlwZTogbnVtYmVyO1xyXG4gIG5hbWU/OiBzdHJpbmc7XHJcbiAgaW1hZ2VVcmxzOiBbc3RyaW5nXTtcclxuICBpc0ltYWdlRmFpbFRvTG9hZD86IGJvb2xlYW47XHJcbiAgc2l6ZTogc3RyaW5nO1xyXG4gIHR5cGU6IHN0cmluZztcclxuICBzZWFzb246IG51bWJlcjtcclxuICBwcm9kdWN0R3JvdXA6IG51bWJlcjtcclxuICBzdHlsZUNvZGU6IHN0cmluZztcclxuICBub2RlU3RydWN0dXJlOiBOb2RlU3RydWN0dXJlW107XHJcbiAgYmFyY29kZTogc3RyaW5nO1xyXG4gIHByaWNlOiBQcmljZVtdO1xyXG4gIGNvbG91cjogc3RyaW5nO1xyXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgdG90YWxMaW5lUHJpY2U6IG51bWJlcjtcclxuICB0b3RhbDogbnVtYmVyO1xyXG4gIGFkZGVkSW5CYXNrZXQ/OiBib29sZWFuO1xyXG4gIHNlbGVjdGVkVkFUPzogbnVtYmVyO1xyXG4gIHNlbGVjdGVkVkFUQ29kZT86IHN0cmluZztcclxuICBzZWxlY3RlZFJSUFByaWNlPzogbnVtYmVyO1xyXG4gIGxpbmVEaXNjb3VudD86IExpbmVEaXNjb3VudDtcclxuICBleGNoYW5nZT86IEV4Y2hhbmdlO1xyXG4gIC8vIHJlZnVuZGVkUXVhbnRpdHk/OiBudW1iZXI7XHJcbiAgLy8gcmVmdW5kZWQ/OiBib29sZWFuO1xyXG4gIC8vIHJlZnVuZGVkVG90YWw/OiBudW1iZXI7XHJcbiAgLy8gcmVmdW5kZWRSZWFzb25EZXNjcmlwdGlvbj86c3RyaW5nO1xyXG4gIC8vIGlzQ2hlY2tlZD86Ym9vbGVhbjtcclxuICByZWZ1bmRQcm9tb3Rpb25hbFF1YW50aXR5PzogbnVtYmVyOyAgICAgICAgICAgICAgIC8vIHByb21vdGlvbmFsIHF1YW50aXR5XHJcbiAgZXhjaGFuZ2VSZWFzb24/OiBzdHJpbmc7XHJcbiAgZXhjaGFuZ2VRdWFudGl0eT86IG51bWJlcjtcclxuICBpdGVtRGlzY291bnRzOiBJdGVtRGlzY291bnQ7XHJcblxyXG4gIGdpZnRDYXJkTnVtYmVySXNzdWVkPzogc3RyaW5nO1xyXG4gIGdpZnRDYXJkQW1vdW50PzogbnVtYmVyO1xyXG4gIGdpZnRDYXJkUmVjaXBpZW50RW1haWw/OiBzdHJpbmc7XHJcbiAgZ2lmdENhcmRFeHBpcnlEYXRlPzogc3RyaW5nO1xyXG4gIGdpZnRDYXJkUmVjaXBpZW50TmFtZT86IHN0cmluZztcclxuICBnaWZ0Q2FyZD86IGJvb2xlYW47XHJcblxyXG4gIGRpc2NvdW50YWJsZTogYm9vbGVhbjtcclxuICAvLyBzZWFsZWQ/OmJvb2xlYW47XHJcbiAgZXhjbHVkZVByb21vdGlvbjogYm9vbGVhbjtcclxuICBjYXRlZ29yaWVzOiBDYXRlZ29yaWVzW107XHJcbiAgZGVzY3JpcHRpb25zOiBEZXNjcmlwdGlvbnNbXTtcclxuICBiYXJjb2Rlczogc3RyaW5nW107XHJcblxyXG4gIC8vTmV3IEZlaWxkc1xyXG4gIGV4dGVybmFsSWQ6IHN0cmluZztcclxuICBjcmVhdGVkRGF0ZTogc3RyaW5nO1xyXG4gIHVwZGF0ZWREYXRlOiBzdHJpbmc7XHJcbiAgY3JlYXRlZEJ5OiBzdHJpbmc7XHJcbiAgdXBkYXRlZEJ5OiBzdHJpbmc7XHJcbiAgYXR0cmlidXRlczogQ29yZUF0dHJpYnV0ZVtdO1xyXG4gIGlkOiBzdHJpbmc7XHJcbiAgbG9uZ19kZXNjcmlwdGlvbjogc3RyaW5nO1xyXG5cclxuICAvLyBNaXhlZCBTYWxlcyBmaWVsZHNcclxuICBpc1dlYk9yZGVyPzogYm9vbGVhbixcclxuICBmdWxsZmlsbWVudElkOiBzdHJpbmcsXHJcbiAgZnVsbGZpbG1lbnRMb2NhdGlvbk5hbWU/OiBzdHJpbmcsXHJcbiAgZGVsaXZlcnlNZXRob2Q/OiBzdHJpbmcsXHJcbiAgZGVsaXZlcnlHcm91cD86IHN0cmluZyxcclxuICBzZWxlY3RlZEludmVudG9yeT86IEludmVudG9yeUluZm87XHJcbiAgbGVhZFRpbWU/OiBsZWFkVGltZVxyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgbGVhZFRpbWUge1xyXG4gIHR5cGU6IHN0cmluZyxcclxuICB2YWx1ZTogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRXhjaGFuZ2Uge1xyXG4gIGV4Y2hhbmdlSWQ6IG51bWJlcixcclxuICBsaW5lSXRlbUlkOiBudW1iZXIsXHJcbiAgcmVhc29uOiBzdHJpbmcsXHJcbiAgcXVhbnRpdHk6IG51bWJlcixcclxuICBuZXdJdGVtczogUHJvZHVjdFtdO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENhdGVnb3JpZXMge1xyXG4gIGlkOiBzdHJpbmc7XHJcbiAgcGFyZW50SWQ6IHN0cmluZztcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgY2F0ZWdvcnlJZDogc3RyaW5nO1xyXG4gIHN0YXR1czogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBEZXNjcmlwdGlvbnMge1xyXG4gIG5hbWU6IHN0cmluZztcclxuICBjb3VudHJ5Q29kZTogc3RyaW5nO1xyXG4gIHZhbHVlOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ29yZUF0dHJpYnV0ZSB7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHZhbHVlOiBzdHJpbmc7XHJcbiAgc2VhcmNoYWJsZTogYm9vbGVhbjtcclxuICBjb3VudHJ5Q29kZTogc3RyaW5nO1xyXG59XHJcblxyXG4vKipcclxuICogQmFza2V0XHJcbiAqL1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBCYXNrZXQge1xyXG4gIHN1YnNpZGlhcnlJZD86IHN0cmluZztcclxuICBwcm9kdWN0czogUHJvZHVjdFtdO1xyXG4gIHRyYW5zYWN0aW9uRGlzY291bnQ6IGFueVtdO1xyXG4gIHF1YW50aXR5OiBudW1iZXI7XHJcbiAgdG90YWw6IG51bWJlcjtcclxuICBzYWxlVG90YWw6IG51bWJlcjtcclxuICBkaXNjb3VudFRvdGFsPzogbnVtYmVyO1xyXG4gIHRyYW5zYWN0aW9uSWQ/OiBzdHJpbmc7XHJcbiAgb2ZmbGluZVRyYW5zYWN0aW9uSWQ/OiBzdHJpbmc7XHJcbiAgYmFzZUN1cnJlbmN5OiBzdHJpbmc7XHJcbiAgYmFza2V0VG90YWw/OiBudW1iZXI7XHJcbiAgcmVmdW5kVG90YWw/OiBudW1iZXI7XHJcbiAgdHJhbnNhY3Rpb25Qcm9tb3Rpb24/OiBUcmFuc2FjdGlvblByb21vdGlvbltdO1xyXG4gIGN1c3RvbWVyPzogYW55O1xyXG4gIGV4Y2hhbmdlPzogRXhjaGFuZ2VbXTtcclxuICBpblN0b3JlRmxhZz86IGJvb2xlYW5cclxufVxyXG5cclxuXHJcblxyXG4vKipcclxuICogUHJpY2VcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgUHJpY2Uge1xyXG4gIFZBVDogbnVtYmVyO1xyXG4gIFZBVENvZGU6IHN0cmluZztcclxuICBzYWxlc1ByaWNlOiBudW1iZXI7XHJcbiAgY3VycmVuY3lDb2RlOiBzdHJpbmc7XHJcbiAgUlJQUHJpY2U6IG51bWJlcjtcclxufVxyXG5cclxuLyoqXHJcbiAqIE5vZGUgc3RydWN0dXJlXHJcbiAqL1xyXG5pbnRlcmZhY2UgTm9kZVN0cnVjdHVyZSB7XHJcbiAgc3RhdHVzOiBib29sZWFuO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICBub2RlVHlwZTogc3RyaW5nO1xyXG4gIGlzT3ZlcnJpZGU6IGJvb2xlYW47XHJcbiAgbm9kZUlkOiBzdHJpbmc7XHJcbiAgcGFyZW50SWQ6IHN0cmluZztcclxufVxyXG5cclxuLyoqXHJcbiAqIExpbmUgRGlzY291bnRcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgTGluZURpc2NvdW50IHtcclxuICBpdGVtTGluZUlkOiBzdHJpbmcsXHJcbiAgZGlzY291bnRBbW91bnQ6IG51bWJlcixcclxuICBkaXNjb3VudFR5cGU6IHN0cmluZyxcclxuICAvLyByZWFzb25Db2RlOiBzdHJpbmcsXHJcbiAgbmFtZT86IHN0cmluZyxcclxuICB1bml0UHJpY2U6IG51bWJlcixcclxuICBkaXNjb3VudGVkTGluZVByaWNlPzogbnVtYmVyLFxyXG4gIHByaWNlTWFuYWdlck92ZXJyaWRlPzogVXNlck92ZXJyaWRlLFxyXG4gIHByaWNlT3ZlcnJpZGVSZWFzb25Db2RlPzogc3RyaW5nLFxyXG4gIHByaWNlT3ZlcnJpZGVSZWFzb25OYW1lPzogc3RyaW5nLFxyXG4gIHByaWNlT3ZlcnJpZGVBbW91bnQ/OiBudW1iZXIsXHJcbiAgcGVyY2VudGFnZURpc2NvdW50TWFuYWdlck92ZXJyaWRlPzogVXNlck92ZXJyaWRlLFxyXG4gIHBlcmNlbnRhZ2VEaXNjb3VudFJlYXNvbkNvZGU/OiBzdHJpbmcsXHJcbiAgcGVyY2VudGFnZURpc2NvdW50UmVhc29uTmFtZT86IHN0cmluZyxcclxuICBwZXJjZW50YWdlRGlzY291bnRWYWx1ZT86IG51bWJlclxyXG59XHJcblxyXG4vKipcclxuICogVXNlciBPdmVycmlkZVxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBVc2VyT3ZlcnJpZGUge1xyXG4gIHVzZXJJZDogc3RyaW5nLFxyXG4gIGF1dG9tYXRpY0FwcHJvdmU6IHN0cmluZyxcclxuICBvcmlnaW5hbFVzZXJJZDogc3RyaW5nXHJcbn1cclxuXHJcbi8qKlxyXG4qIGxpbmUgUHJvbW90aW9uc1xyXG4qL1xyXG5leHBvcnQgaW50ZXJmYWNlIExpbmVQcm9tb3Rpb25zIHtcclxuXHJcbiAgdHJpZ2dlcjogVHJpZ2dlcltdLFxyXG4gIGl0ZW1MaW5lSWQ6IG51bWJlcixcclxuICBwcm9tb3Rpb25JZDogc3RyaW5nLFxyXG4gIGRpc3BsYXlUZXh0OiBzdHJpbmcsXHJcbiAgcHJvbW90aW9uVHlwZTogc3RyaW5nLFxyXG4gIHByb21vdGlvbkFtb3VudDogbnVtYmVyLFxyXG4gIG5hbWU6IHN0cmluZyxcclxuICBwcm9tb3Rpb25JbmZvOiBzdHJpbmcsXHJcbiAgcHJvbW90aW9uTGluZVByaWNlOiBudW1iZXJcclxuICByZWZ1bmRlZD86IGJvb2xlYW47XHJcbn1cclxuXHJcbi8qKlxyXG4qIHRyaWdnZXJcclxuKi9cclxuZXhwb3J0IGludGVyZmFjZSBUcmlnZ2VyIHtcclxuICBpdGVtTGluZUlkOiBzdHJpbmc7XHJcbiAgcXVhbnRpdHk/OiBudW1iZXI7XHJcbiAgdG90YWxRdWFudGl0eT86IG51bWJlcjtcclxuICBsaW5lUHJvbW90aW9uQW1vdW50PzpudW1iZXI7ICAgLy8gcHJvbW90aW9uIGFtb3VudCBhcHBsaWVkIGFjY3Jvc3MgdGhlIGxpbmVcclxuICBwcm9tb3Rpb25BbW91bnQ/Om51bWJlcjsgICAvLyBwcm9tb3Rpb24gYW1vdW50IGFwcGxpZWQgb24gMSB1bml0XHJcbiAgcmVmdW5kZWRSZWFzb24/OiBzdHJpbmc7XHJcbiAgcmVmdW5kZWRSZWFzb25EZXNjcmlwdGlvbj86c3RyaW5nO1xyXG4gIHByb21vdGlvbklkPzpzdHJpbmc7XHJcbn1cclxuXHJcbi8qKlxyXG4qIFRyYW5zYWN0aW9uIFByb21vdGlvblxyXG4qL1xyXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zYWN0aW9uUHJvbW90aW9uIHtcclxuICBkaXNwbGF5VGV4dDogc3RyaW5nO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICBwcm9tb3Rpb25BbW91bnQ6IG51bWJlcjtcclxuICBwcm9tb3Rpb25JZDogc3RyaW5nO1xyXG4gIHByb21vdGlvbkluZm86IHN0cmluZztcclxuICBwcm9tb3Rpb25UeXBlOiBzdHJpbmc7XHJcbiAgaXRlbUxpbmVJZHM6IG51bWJlcltdO1xyXG4gIHR5cGU/OnN0cmluZztcclxuICBzdWJMZXZlbFR5cGU/OlBST01PVElPTl9MRVZFTFxyXG4gIHRyaWdnZXI/OlRyaWdnZXJbXTtcclxuICBjb3Vwb25Db2RlPzpzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUmVmdW5kUHJvZHVjdENoYW5nZSB7XHJcbiAgaXRlbUxpbmVJZD86IG51bWJlcjtcclxuICByZWZ1bmRlZFF1YW50aXR5PzogbnVtYmVyO1xyXG4gIHJlZnVuZGVkUHJvbW90aW9uYWxRdWFudGl0eT86IG51bWJlcjtcclxuICByZWZ1bmRUb3RhbD86IG51bWJlcjtcclxuICByZWZ1bmRlZFJlYXNvbj86IHN0cmluZztcclxuICByZWZ1bmRlZFJlYXNvbkRlc2NyaXB0aW9uPzogc3RyaW5nO1xyXG4gIHJlZnVuZFdpdGhQcm9tb3Rpb246IGJvb2xlYW47XHJcbiAgaXNMYXN0RXhjaGFuZ2VkPzogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJbnZlbnRvcnlJbmZvIHtcclxuICBzdG9yZU5hbWU6IHN0cmluZyxcclxuICBzdG9yZUlkOiBzdHJpbmcsXHJcbiAgcXVhbnRpdHlBdmFpbGFibGU6IG51bWJlcixcclxuICBxdWFudGl0eVJlcXVpcmVkOiBudW1iZXJcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJbnZlbnRvcnlSZXF1ZXN0SW5mbyBleHRlbmRzIEludmVudG9yeUluZm8ge1xyXG4gIHJlcXVlc3RlZFF1YW50aXR5OiBudW1iZXIsXHJcbiAgcmVxdWVzdGVkQWN0aW9uOiBERUxJVkVSWV9NRVRIT0RTXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRGVsaXZlcnlJbmZvIHtcclxuICBncm91cHM6IERlbGl2ZXJ5R3JvdXBJbmZvW11cclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBEZWxpdmVyeUdyb3VwSW5mbyB7XHJcbiAgZ3JvdXBOdW1iZXI6IG51bWJlcjtcclxuICBpdGVtczogUHJvZHVjdFtdO1xyXG4gIGVzdGltYXRlPzogRXN0aW1hdGU7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRXN0aW1hdGUge1xyXG4gIHR5cGU6IHN0cmluZyxcclxuICB2YWx1ZTogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25Eb2N1bWVudCB7XHJcbiAgdHJhbnNhY3Rpb25JZD86IHN0cmluZztcclxuICBzdWJzaWRpYXJ5SWQ/OiBzdHJpbmc7XHJcbiAgb2ZmbGluZVRyYW5zYWN0aW9uSWQ/OnN0cmluZztcclxuICB0cmFuc2FjdGlvblJlZj86IHN0cmluZztcclxuICBkYXRlVGltZT86IHN0cmluZztcclxuICBvcmdDb2RlOiBzdHJpbmc7XHJcbiAgc3RvcmVJZDogc3RyaW5nO1xyXG4gIHN0b3JlTm9kZUlkOnN0cmluZztcclxuICBzdG9yZU5vZGVTdHJ1Y3R1cmU6c3RyaW5nO1xyXG4gIGRldmljZUlkOiBzdHJpbmc7XHJcbiAgdGVybWluYWxJZDpzdHJpbmc7XHJcbiAgaW5pdGlhdGluZ01vZHVsZSA6c3RyaW5nO1xyXG4gIGV4cG9ydDpib29sZWFuO1xyXG4gIHVzZXJJZD86IHN0cmluZztcclxuICB1c2VyTmFtZT86c3RyaW5nO1xyXG4gIGN1c3RvbWVyPzogQ3VzdG9tZXI7XHJcbiAgYmFza2V0OiBhbnk7XHJcbiAgYmFza2V0U3VtbWFyeTogQmFza2V0U3VtbWFyeTtcclxuICAvLyBsaW5lRGlzY291bnQ6IExpbmVEaXNjb3VudFtdO1xyXG4gIGJhc2VDdXJyZW5jeTogc3RyaW5nO1xyXG4gIHNwbGl0UGF5bWVudD86Ym9vbGVhbjtcclxuICBpc1BheW1lbnRDb21wbGV0ZWQ/OmJvb2xlYW47XHJcbiAgcGF5bWVudERldGFpbHM/OiBhbnk7XHJcbiAgdHlwZT86IHN0cmluZztcclxuICBvcGVyYXRpb25TdGF0dXM/OiBzdHJpbmc7XHJcbiAgY3JlYXRlZEF0Pzogc3RyaW5nO1xyXG4gIHVwZGF0ZWRBdD86IHN0cmluZztcclxuICB0cmFuc0NvbXBsZXRlZEF0Pzogc3RyaW5nO1xyXG4gIGlkPzogc3RyaW5nO1xyXG4gIHNhbGVUb3RhbD86IG51bWJlcjtcclxuICByZWFzb25Db2RlPzogc3RyaW5nO1xyXG4gIHJlYXNvbkRlc2NyaXB0aW9uPzogc3RyaW5nO1xyXG4gIG92ZXJyaWRlPzogVXNlck92ZXJyaWRlO1xyXG4gIG9yaWdpbmFsVHJhbnNJZD86c3RyaW5nO1xyXG4gIG9yaWdpbmFsRXh0ZXJuYWxJZD86IHN0cmluZztcclxuICBhcGlSZXNwb25zZT86IEFQSVJlc3BvbnNlOyAgICAvLyBUT0RPIGFkZCBoYW5kbGVyIGFzIHBlciBleHBvcnQgcHJvdmlkZXJcclxuICB1bnJlZmVyZW5jZWRSZWZ1bmQ/OmJvb2xlYW47XHJcbiAgZ2lmdGVkUmVjZWlwdD86Ym9vbGVhbjtcclxuICBjdXJyZW50VHJhbnNhY3Rpb25EZXRhaWxzPzphbnk7XHJcbiAgaXNDaGVja2VkPzpib29sZWFuO1xyXG4gIGV4dGVybmFsVHJhbnNhY3Rpb25EZXRhaWxzPzogZXh0ZXJuYWxUcmFuc2FjdGlvbkRldGFpbHNbXTtcclxuICByZWZ1bmRSZXF1ZXN0PzogYW55W107XHJcbiAgaXNJblN0b3JlT3JkZXI/OiBib29sZWFuOyBcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBUElSZXNwb25zZVxyXG57XHJcbiAgaW50ZXJuYWxJZD86bnVtYmVyO1xyXG4gIHRyYW5pZD86c3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ3VycmVudFRyYW5zYWN0aW9uRGV0YWlsc3tcclxuICBwcm9kdWN0czogUHJvZHVjdFtdO1xyXG4gIGxpbmVEaXNjb3VudD86TGluZURpc2NvdW50W107XHJcbiAgbGluZVByb21vdGlvbj86TGluZVByb21vdGlvbnNbXTtcclxuICB0cmFuc2FjdGlvblByb21vdGlvbj86VHJhbnNhY3Rpb25Qcm9tb3Rpb25bXTtcclxuICB0cmFuc2FjdGlvbkRpc2NvdW50PzpUcmFuc2FjdGlvbkRpc2NvdW50W107XHJcbiAgYmFza2V0U3VtbWFyeT86QmFza2V0U3VtbWFyeTsgIFxyXG4gIHRheEJyZWFrZG93bj86VGF4QnJlYWtkb3duOyAgXHJcbiAgdG90YWxUYXhTdW1tYXJ5PzpUb3RhbFRheFN1bW1hcnlbXTtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIEJhc2tldFN1bW1hcnkge1xyXG4gIHRvdGFsSXRlbXM/OiBudW1iZXI7XHJcbiAgc2FsZVRvdGFsPzogbnVtYmVyO1xyXG4gIFZBVFRvdGFsPzogbnVtYmVyO1xyXG4gIGRpc2NvdW50VG90YWw/OiBudW1iZXI7XHJcbiAgYmFza2V0VG90YWw/OiBudW1iZXI7XHJcbiAgcmVmdW5kVG90YWw/Om51bWJlcjtcclxuICBzaGlwcGluZ1RvdGFsPzogbnVtYmVyO1xyXG4gIGJhc2tldFRvdGFsV2l0aFNoaXBwaW5nVG90YWw/OiBudW1iZXI7XHJcbiAgaW5TdG9yZT86IEJhc2tldFN1bW1hcnlEZXRhaWxzO1xyXG4gIHdlYk9yZGVyPzogQmFza2V0U3VtbWFyeURldGFpbHM7XHJcbiAgY25jPzogQmFza2V0U3VtbWFyeURldGFpbHM7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQmFza2V0U3VtbWFyeURldGFpbHMge1xyXG4gIHRvdGFsSXRlbXM/OiBudW1iZXI7XHJcbiAgc2FsZVRvdGFsPzogbnVtYmVyO1xyXG4gIFZBVFRvdGFsPzogbnVtYmVyO1xyXG4gIGRpc2NvdW50VG90YWw/OiBudW1iZXI7XHJcbiAgYmFza2V0VG90YWw/OiBudW1iZXI7XHJcbiAgcmVmdW5kVG90YWw/Om51bWJlcjtcclxuICBzaGlwcGluZ1RvdGFsPzogbnVtYmVyO1xyXG4gIGJhc2tldFRvdGFsV2l0aFNoaXBwaW5nVG90YWw/OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25EaXNjb3VudHtcclxuICBkaXNjb3VudEFtb3VudDpudW1iZXI7XHJcbiAgZGlzY291bnRUeXBlOlN0cmluZztcclxuICByZWFzb25Db2RlOnN0cmluZztcclxuICBvdmVycmlkZT86IFVzZXJPdmVycmlkZTtcclxuICBpdGVtTGluZUlkcz86bnVtYmVyW107XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVEJhc2tldCB7XHJcbiAgcHJvZHVjdHM6IFRQcm9kdWN0W107XHJcbiAgbGluZURpc2NvdW50OkxpbmVEaXNjb3VudFtdO1xyXG4gIGV4Y2hhbmdlOkV4Y2hhbmdlW107XHJcbiAgbGluZVByb21vdGlvbjpMaW5lUHJvbW90aW9uc1tdO1xyXG4gIHRyYW5zYWN0aW9uUHJvbW90aW9uPzpUcmFuc2FjdGlvblByb21vdGlvbltdO1xyXG4gIHRyYW5zYWN0aW9uRGlzY291bnQ/OlRyYW5zYWN0aW9uRGlzY291bnRbXTtcclxuICB0YXhCcmVha2Rvd24/OlRheEJyZWFrZG93bjtcclxuICB0b3RhbFRheFN1bW1hcnk/OlRvdGFsVGF4U3VtbWFyeVtdO1xyXG5cclxuICBcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBURXhjaGFuZ2V7XHJcbiAgZXhjaGFuZ2VJZD86bnVtYmVyLFxyXG4gIGxpbmVJdGVtSWQ/OiBudW1iZXIsXHJcbiAgcmVhc29uPzogc3RyaW5nLFxyXG4gIHF1YW50aXR5PzogbnVtYmVyLFxyXG4gIG5ld0l0ZW1zPzpUTmV3SXRlbXNbXTtcclxuICB9XHJcbiAgXHJcbiAgZXhwb3J0IGludGVyZmFjZSBUTmV3SXRlbXN7XHJcbiAgbGluZUl0ZW1JZDpudW1iZXIsXHJcbiAgIFF1YW50aXR5Om51bWJlclxyXG4gIH1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVFByb2R1Y3Qge1xyXG4gIGl0ZW1MaW5lSWQ6IHN0cmluZztcclxuICBTS1U6IHN0cmluZztcclxuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xyXG4gIGltYWdlVXJsczogW3N0cmluZ107XHJcbiAgcHJpY2U6IG51bWJlcjtcclxuICB0YXhDb2RlPzogc3RyaW5nO1xyXG4gIHRheFBlcmNlbnQ/OiBzdHJpbmc7XHJcbiAgcXVhbnRpdHk6IG51bWJlcjtcclxuICByZWZ1bmRlZFF1YW50aXR5PzogbnVtYmVyO1xyXG4gIHJlZnVuZGVkUHJvbW90aW9uYWxRdWFudGl0eT86bnVtYmVyO1xyXG4gIHJlZnVuZGVkPzogYm9vbGVhbjtcclxuICByZWZ1bmRlZFRvdGFsPzogbnVtYmVyO1xyXG4gIHJlZnVuZGVkUmVhc29uPzpzdHJpbmc7XHJcbiAgcmVmdW5kZWRSZWFzb25EZXNjcmlwdGlvbj86c3RyaW5nO1xyXG4gIHNlbGVjdGVkUlJQUHJpY2U/OiBudW1iZXI7XHJcbiAgdG90YWxMaW5lUHJpY2U6IG51bWJlcjtcclxuICBiYXJDb2RlPzogc3RyaW5nO1xyXG4gIGJhcmNvZGVzPzogc3RyaW5nW107XHJcbiAgZmxhZ2dlZD86IGJvb2xlYW47XHJcbiAgZXhjaGFuZ2U/OkV4Y2hhbmdlO1xyXG4gIGV4Y2x1ZGVQcm9tb3Rpb246Ym9vbGVhbjtcclxuICBkaXNjb3VudGFibGU/OmJvb2xlYW47XHJcblxyXG4gIGl0ZW1EaXNjb3VudHM/Okl0ZW1EaXNjb3VudHM7XHJcbiAgaXNMYXN0RXhjaGFuZ2VkPzogYm9vbGVhbjtcclxuXHJcbiAgLy8gTWl4ZWQgU2FsZXMgZmllbGRzXHJcbiAgZnVsbGZpbG1lbnRJZDpzdHJpbmcsXHJcbiAgZnVsbGZpbG1lbnRMb2NhdGlvbk5hbWU6c3RyaW5nLFxyXG4gIGRlbGl2ZXJ5TWV0aG9kPzpzdHJpbmcsXHJcbiAgZGVsaXZlcnlHcm91cD86c3RyaW5nLFxyXG4gIGdpZnRDYXJkTnVtYmVySXNzdWVkPzogc3RyaW5nLFxyXG4gIGdpZnRDYXJkQW1vdW50PzogbnVtYmVyLFxyXG4gIGdpZnRDYXJkUmVjaXBpZW50RW1haWw/OiBzdHJpbmcsXHJcbiAgZ2lmdENhcmRFeHBpcnlEYXRlPzogc3RyaW5nICxcclxuICBnaWZ0Q2FyZFJlY2lwaWVudE5hbWU/OiBzdHJpbmcsXHJcbiAgZ2lmdENhcmQ/OmJvb2xlYW4sXHJcbiAgY3VycmVuY3k/OnN0cmluZyxcclxuICBpc1dlYk9yZGVyPzpib29sZWFuLFxyXG4gIGxlYWRUaW1lPzogbGVhZFRpbWVcclxuICBcclxuICAvLyBjdXJyZW50dHJhbnNhY3Rpb24gZG9jIGNoYW5nZXNcclxuICBsaW5lRGlzY291bnQ/OmFueVxyXG5cclxuICBhdHRyaWJ1dGVzPzpDb3JlQXR0cmlidXRlW107XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSXRlbURpc2NvdW50c3tcclxuICB0cm5EaXNjb3VudHNQb3J0aW9uOm51bWJlcjtcclxuICB0cm5Qcm9tb3Rpb25zUG9ydGlvbjpudW1iZXI7XHJcbiAgcmVmdW5kUG9ydGlvbjpudW1iZXI7XHJcbn1cclxuXHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDdXN0b21lciB7XHJcbiAgaWQ6IHN0cmluZztcclxuICB0aXRsZT86IHN0cmluZztcclxuICBmaXJzdE5hbWU6IHN0cmluZztcclxuICBsYXN0TmFtZTogc3RyaW5nO1xyXG4gIGVtYWlsOiBzdHJpbmc7XHJcbiAgcG9zdENvZGU6IHN0cmluZztcclxuICB0ZWxlcGhvbmU/OiBzdHJpbmc7XHJcbiAgYmlsbGluZ0FkZHJlc3M/OiBBZGRyZXNzIHwgQWRkcmVzc1tdO1xyXG4gIHNoaXBwaW5nQWRkcmVzcz86IEFkZHJlc3MgfCBBZGRyZXNzW107XHJcbiAgc2hpcG1lbnREZXRhaWxzPzogU2hpcG1lbnREZXRhaWxzW107XHJcbiAgYWRkcmVzc0RldGFpbD86IHN0cmluZztcclxuICBub0N1c3RvbWVyU2VsZWN0ZWQ/OiBib29sZWFuO1xyXG4gIGV4dGVybmFsSWQ/OiBzdHJpbmc7IFxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEFkZHJlc3MgXHJcbntcclxuICBpZD86IHN0cmluZztcclxuICBjb3VudHJ5Q29kZT86IHN0cmluZztcclxuICBhZGRyZXNzMT86IHN0cmluZztcclxuICBhZGRyZXNzMj86IHN0cmluZztcclxuICBhZGRyZXNzMz86IHN0cmluZztcclxuICBjaXR5Pzogc3RyaW5nO1xyXG4gIGNvdW50eT86IHN0cmluZztcclxuICBwb3N0Q29kZT86IHN0cmluZztcclxuICBjb3VudHJ5Pzogc3RyaW5nO1xyXG4gfVxyXG5cclxuIGV4cG9ydCBpbnRlcmZhY2UgU2hpcG1lbnREZXRhaWxzIHtcclxuICBpZD86IHN0cmluZyxcclxuICBkZWxpdmVyeUdyb3VwPzogc3RyaW5nLFxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbnREZXRhaWxzIHtcclxuICBjYXJkTnVtYmVyPzogYW55O1xyXG4gIHNxTm8/Om51bWJlcjtcclxuICByZXN1bHQ/OiBzdHJpbmc7XHJcbiAgY3VycmVuY3k6IHN0cmluZztcclxuICBhbW91bnQ6IHN0cmluZztcclxuICBhdXRoY29kZT86IHN0cmluZztcclxuICBwYW4/OiBzdHJpbmc7XHJcbiAgY2FyZFR5cGU/OiBzdHJpbmc7XHJcbiAgdHJhbnNhY3Rpb25EYXRlPzogc3RyaW5nO1xyXG4gIG1pZD86IHN0cmluZztcclxuICB0aWQ/OiBzdHJpbmc7XHJcbiAgY3ZtPzogc3RyaW5nO1xyXG4gIGhvc3RSZWZlcmVuY2VJZD86IHN0cmluZztcclxuICBhaWQ/OiBzdHJpbmc7XHJcbiAgcmVjZWlwdE5vPzogc3RyaW5nO1xyXG4gIGV4cGlyeWRhdGU/OiBzdHJpbmc7XHJcbiAgdHJhbnNhY3Rpb25SZWZlcmVuY2U6IHN0cmluZztcclxuICBhcHBsaWNhdGlvblZlcnNpb24/OiBzdHJpbmc7XHJcbiAgZW50cnlNZXRob2Q/OnN0cmluZztcclxuICB0cmFuc2FjdGlvblR5cGU6c3RyaW5nO1xyXG4gIHRvdGFsYW1vdW50OnN0cmluZztcclxuICBwYXltZW50VHlwZT86c3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRheEJyZWFrZG93blxyXG57XHJcbiAgdGF4TGluZXMgOiBUYXhMaW5lW10sXHJcbiAgdG90YWxUYXhhYmxlQW1vdW50OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVG90YWxUYXhTdW1tYXJ5e1xyXG4gIFZBVENvZGU6c3RyaW5nLFxyXG4gIFZBVCA6IG51bWJlcjtcclxuICBQcmVUYXhTdW06ICBudW1iZXJcclxuICBUYXhTdW06ICBudW1iZXJcclxuICBUWHJhdGVTdW06IG51bWJlclxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRheExpbmVcclxue1xyXG4gICAgaXRlbUxpbmVJZDogbnVtYmVyLFxyXG4gICAgdGF4YWJsZUFtb3VudDogbnVtYmVyLFxyXG4gICAgdGF4TGluZVRvdGFsOiBudW1iZXIsXHJcbiAgICBWQVQ6IG51bWJlcixcclxuICAgIFZBVENvZGUgOiBzdHJpbmcsXHJcbiAgICBQcmVUYXg6IG51bWJlclxyXG59XHJcblxyXG5leHBvcnQgZW51bSBESVNDT1VOVFRZUEUge1xyXG4gIFBFUkNFTlQgPSAnUGVyY2VudCcsXHJcbiAgQU1PVU5UID0gJ0FNT1VOVCdcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2FjdGlvbkluZm8ge1xyXG4gIHNoaXBwaW5nSWQ/OiBzdHJpbmcsXHJcbiAgZXh0ZXJuYWxTaGlwcGluZ0lkPzogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgZXh0ZXJuYWxUcmFuc2FjdGlvbkRldGFpbHMge1xyXG4gIHVuaXF1ZUlkPzogc3RyaW5nLFxyXG4gIHByb3ZpZGVyVHlwZT86IHN0cmluZyxcclxuICBkZXRhaWxzPzogVHJhbnNhY3Rpb25JbmZvXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIElOSVRJQVRJTkdfTU9EVUxFIHtcclxuICBFQkFTS0VUID0gXCJlQmFza2V0XCJcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBwZW5kaW5nTWV0aG9kIHtcclxuICBfdHlwZT86IHN0cmluZztcclxuICB0eXBlPzogc3RyaW5nO1xyXG4gIG1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgcGF0aD86IHN0cmluZztcclxuICBkZXRhaWxzPzogU2hpcG1lbnRJZDtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTaGlwbWVudElkIHtcclxuICBzaGlwbWVudElkPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbWVyQWRkcmVzcyB7XHJcbiAgX3R5cGU/OiBzdHJpbmc7XHJcbiAgZW1haWw/OiBzdHJpbmc7XHJcbiAgYWRkcmVzczE/OiBzdHJpbmc7XHJcbiAgY2l0eT86IHN0cmluZztcclxuICBjb3VudHJ5X2NvZGU/OiBzdHJpbmc7XHJcbiAgZmlyc3RfbmFtZT86IHN0cmluZztcclxuICBmdWxsX25hbWU/OiBzdHJpbmc7XHJcbiAgaWQ/OiBzdHJpbmc7XHJcbiAgbGFzdF9uYW1lPzogc3RyaW5nO1xyXG4gIHBob25lPzogc3RyaW5nO1xyXG4gIHNhbHV0YXRpb24/OiBzdHJpbmc7XHJcbiAgY19hcmVhPzogc3RyaW5nO1xyXG4gIGNfZW1haWw/OiBzdHJpbmc7XHJcbiAgY19waG9uZVdoYXRzQXBwPzogc3RyaW5nO1xyXG4gIGNfc3RyVmFsdWU/OiBzdHJpbmc7XHJcbiAgcG9zdGFsX2NvZGU/OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ3VzdG9tZXJJbmZvIHtcclxuICBfdHlwZT86IHN0cmluZztcclxuICBjdXN0b21lcl9pZD86IHN0cmluZztcclxuICBlbWFpbD86IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBHcm91cGVkVGF4SXRlbSB7XHJcbiAgX3R5cGU/OiBzdHJpbmc7XHJcbiAgdGF4X3JhdGU/OiBudW1iZXI7XHJcbiAgdGF4X3ZhbHVlPzogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIGFkZGl0aW9uYWxOb3RlcyB7XHJcbiAgX3R5cGU/OiBzdHJpbmc7XHJcbiAgbGluaz86IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQcm9kdWN0SXRlbSB7XHJcbiAgX3R5cGU/OiBzdHJpbmc7XHJcbiAgYWRqdXN0ZWRfdGF4PzogbnVtYmVyO1xyXG4gIGJhc2VfcHJpY2U/OiBudW1iZXI7XHJcbiAgYm9udXNfcHJvZHVjdF9saW5lX2l0ZW0/OiBib29sZWFuO1xyXG4gIGdpZnQ/OiBib29sZWFuO1xyXG4gIGl0ZW1faWQ/OiBzdHJpbmc7XHJcbiAgaXRlbV90ZXh0Pzogc3RyaW5nO1xyXG4gIHByaWNlPzogbnVtYmVyO1xyXG4gIHByaWNlX2FkanVzdG1lbnRzPzogUHJpY2VBZGp1c3RtZW50W107XHJcbiAgcHJpY2VfYWZ0ZXJfaXRlbV9kaXNjb3VudD86IG51bWJlcjtcclxuICBwcmljZV9hZnRlcl9vcmRlcl9kaXNjb3VudD86IG51bWJlcjtcclxuICBwcm9kdWN0X2lkPzogc3RyaW5nO1xyXG4gIHByb2R1Y3RfbmFtZT86IHN0cmluZztcclxuICBxdWFudGl0eT86IG51bWJlcjtcclxuICBzaGlwbWVudF9pZD86IHN0cmluZztcclxuICB0YXg/OiBudW1iZXI7XHJcbiAgdGF4X2Jhc2lzPzogbnVtYmVyO1xyXG4gIHRheF9jbGFzc19pZD86IHN0cmluZztcclxuICB0YXhfcmF0ZT86IG51bWJlcjtcclxuICBjX29zdU9iamVjdERhdGE/OnN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTaGlwcGluZ01ldGhvZCB7XHJcbiAgX3R5cGU/OiBzdHJpbmc7XHJcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XHJcbiAgaWQ/OiBzdHJpbmc7XHJcbiAgbmFtZT86IHN0cmluZztcclxuICBwcmljZT86IG51bWJlcjtcclxuICBjX2FwcHJvYWNoaW5nVGhyZXNob2xkTWVzc2FnZT86IHN0cmluZztcclxuICBjX2VzdGltYXRlZEFycml2YWxUaW1lPzogc3RyaW5nO1xyXG4gIGNfaXNFbWFpbD86IGJvb2xlYW47XHJcbiAgY19zdG9yZVBpY2t1cEVuYWJsZWQ/OiBib29sZWFuO1xyXG4gIGNfdGhyZXNob2xkVmFsdWU/OiBudW1iZXI7XHJcbn0gXHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIHNoaXBtZW50IHtcclxuICBfdHlwZT86IHN0cmluZztcclxuICBhZGp1c3RlZF9tZXJjaGFuZGl6ZV90b3RhbF90YXg/OiBudW1iZXI7XHJcbiAgYWRqdXN0ZWRfc2hpcHBpbmdfdG90YWxfdGF4PzogbnVtYmVyO1xyXG4gIGdpZnQ/OiBib29sZWFuO1xyXG4gIG1lcmNoYW5kaXplX3RvdGFsX3RheD86IG51bWJlcjtcclxuICBwcm9kdWN0X3N1Yl90b3RhbD86IG51bWJlcjtcclxuICBwcm9kdWN0X3RvdGFsPzogbnVtYmVyO1xyXG4gIHNoaXBtZW50X2lkPzogc3RyaW5nO1xyXG4gIHNoaXBtZW50X3RvdGFsPzogbnVtYmVyO1xyXG4gIHNoaXBwaW5nX2FkZHJlc3M/OiBDdXN0b21lckFkZHJlc3M7XHJcbiAgc2hpcHBpbmdfbWV0aG9kPzogU2hpcHBpbmdNZXRob2Q7XHJcbiAgc2hpcHBpbmdfc3RhdHVzPzogc3RyaW5nO1xyXG4gIHNoaXBwaW5nX3RvdGFsPzogbnVtYmVyO1xyXG4gIHNoaXBwaW5nX3RvdGFsX3RheD86IG51bWJlcjtcclxuICB0YXhfdG90YWw/OiBudW1iZXI7XHJcbiAgY19mcm9tU3RvcmVJZD86IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTaGlwcGluZ0l0ZW0ge1xyXG4gIF90eXBlPzogc3RyaW5nO1xyXG4gIGFkanVzdGVkX3RheD86IG51bWJlcjtcclxuICBiYXNlX3ByaWNlPzogbnVtYmVyO1xyXG4gIGl0ZW1faWQ/OiBzdHJpbmc7XHJcbiAgaXRlbV90ZXh0Pzogc3RyaW5nO1xyXG4gIHByaWNlPzogbnVtYmVyO1xyXG4gIHByaWNlX2FmdGVyX2l0ZW1fZGlzY291bnQ/OiBudW1iZXI7XHJcbiAgc2hpcG1lbnRfaWQ/OiBzdHJpbmc7XHJcbiAgdGF4PzogbnVtYmVyO1xyXG4gIHRheF9iYXNpcz86IG51bWJlcjtcclxuICB0YXhfY2xhc3NfaWQ/OiBzdHJpbmc7XHJcbiAgdGF4X3JhdGU/OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQXBwbGllZERpc2NvdW50IHtcclxuICBfdHlwZT86IHN0cmluZyxcclxuICBhbW91bnQ/OiBudW1iZXIsXHJcbiAgcGVyY2VudGFnZT86IG51bWJlcixcclxuICB0eXBlPzogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUHJpY2VBZGp1c3RtZW50IHtcclxuICBfdHlwZT86IHN0cmluZyxcclxuICBhcHBsaWVkX2Rpc2NvdW50PzogQXBwbGllZERpc2NvdW50LFxyXG4gIGNvdXBvbl9jb2RlPzogc3RyaW5nLFxyXG4gIGNyZWF0aW9uX2RhdGU/OiBzdHJpbmcsXHJcbiAgY3VzdG9tPzogYm9vbGVhbixcclxuICBpdGVtX3RleHQ/OiBzdHJpbmcsXHJcbiAgbGFzdF9tb2RpZmllZD86IHN0cmluZyxcclxuICBtYW51YWw/OiBib29sZWFuLFxyXG4gIHByaWNlPzogbnVtYmVyXHJcbiAgcHJpY2VfYWRqdXN0bWVudF9pZD86IHN0cmluZyxcclxuICBwcm9tb3Rpb25faWQ/OiBzdHJpbmcsXHJcbiAgcHJvbW90aW9uX2xpbms/OiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBPcmRlckRldGFpbHMge1xyXG4gIF92Pzogc3RyaW5nO1xyXG4gIF90eXBlPzogc3RyaW5nO1xyXG4gIF9yZXNvdXJjZV9zdGF0ZT86IHN0cmluZztcclxuICBfZmxhc2g/OiBwZW5kaW5nTWV0aG9kW107XHJcbiAgYWRqdXN0ZWRfbWVyY2hhbmRpemVfdG90YWxfdGF4PzogbnVtYmVyO1xyXG4gIGFkanVzdGVkX3NoaXBwaW5nX3RvdGFsX3RheD86IG51bWJlcjtcclxuICBhZ2VudF9iYXNrZXQ/OiBib29sZWFuO1xyXG4gIGJhc2tldF9pZD86IHN0cmluZztcclxuICBiaWxsaW5nX2FkZHJlc3M/OiBDdXN0b21lckFkZHJlc3M7XHJcbiAgY2hhbm5lbF90eXBlPzogc3RyaW5nO1xyXG4gIGNyZWF0aW9uX2RhdGU/OiBzdHJpbmc7XHJcbiAgY3VycmVuY3k/OiBzdHJpbmc7XHJcbiAgY3VzdG9tZXJfaW5mbz86IEN1c3RvbWVySW5mbztcclxuICBncm91cGVkX3RheF9pdGVtcz86IEdyb3VwZWRUYXhJdGVtW107XHJcbiAgbGFzdF9tb2RpZmllZD86IHN0cmluZztcclxuICBtZXJjaGFuZGl6ZV90b3RhbF90YXg/OiBudW1iZXI7XHJcbiAgbm90ZXM/OiBhZGRpdGlvbmFsTm90ZXM7XHJcbiAgb3JkZXJfcHJpY2VfYWRqdXN0bWVudHM/OiBQcmljZUFkanVzdG1lbnRbXSxcclxuICBvcmRlcl9ubz86IHN0cmluZztcclxuICBvcmRlcl90b3RhbD86IG51bWJlcjtcclxuICBwcm9kdWN0X2l0ZW1zPzogUHJvZHVjdEl0ZW1bXTtcclxuICBwcm9kdWN0X3N1Yl90b3RhbD86IG51bWJlcjtcclxuICBwcm9kdWN0X3RvdGFsPzogbnVtYmVyO1xyXG4gIHNoaXBtZW50cz86IHNoaXBtZW50W107XHJcbiAgc2hpcHBpbmdfaXRlbXM/OiBTaGlwcGluZ0l0ZW1bXTtcclxuICBzaGlwcGluZ190b3RhbD86IG51bWJlcjtcclxuICBzaGlwcGluZ190b3RhbF90YXg/OiBudW1iZXI7XHJcbiAgdGF4YXRpb24/OiBzdHJpbmc7XHJcbiAgdGF4X3JvdW5kZWRfYXRfZ3JvdXA/OiBib29sZWFuO1xyXG4gIHRheF90b3RhbD86IG51bWJlcjtcclxuICBjX2lzSW5TdG9yZU9yZGVyPzogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGVudW0gUFJPVklERVJTIHtcclxuICBTQUxFU0ZPUkNFID0gXCJTYWxlc2ZvcmNlXCJcclxufVxyXG5cclxuZXhwb3J0IGVudW0gUFJPTU9USU9OX0xFVkVMXHJcbntcclxuICBMSU5FPVwiTElORVwiLFxyXG4gIFRSQU5TQUNUSU9OPVwiVFJBTlNBQ1RJT05cIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBQUk9NT1RJT05fVFlQRVxyXG57XHJcbiAgQ09VUE9OPVwiQ09VUE9OXCJcclxufVxyXG5cclxuIl19
|
|
@@ -684,6 +684,8 @@ if (false) {
|
|
|
684
684
|
TransactionDocument.prototype.externalTransactionDetails;
|
|
685
685
|
/** @type {?|undefined} */
|
|
686
686
|
TransactionDocument.prototype.refundRequest;
|
|
687
|
+
/** @type {?|undefined} */
|
|
688
|
+
TransactionDocument.prototype.isInStoreOrder;
|
|
687
689
|
}
|
|
688
690
|
/**
|
|
689
691
|
* @record
|
|
@@ -1463,6 +1465,8 @@ if (false) {
|
|
|
1463
1465
|
OrderDetails.prototype.tax_rounded_at_group;
|
|
1464
1466
|
/** @type {?|undefined} */
|
|
1465
1467
|
OrderDetails.prototype.tax_total;
|
|
1468
|
+
/** @type {?|undefined} */
|
|
1469
|
+
OrderDetails.prototype.c_isInStoreOrder;
|
|
1466
1470
|
}
|
|
1467
1471
|
/** @enum {string} */
|
|
1468
1472
|
const PROVIDERS = {
|
|
@@ -5414,6 +5418,7 @@ class WebReturnMapperBuilderClass {
|
|
|
5414
5418
|
terminalId: "",
|
|
5415
5419
|
initiatingModule: "",
|
|
5416
5420
|
export: false,
|
|
5421
|
+
isInStoreOrder: false,
|
|
5417
5422
|
basket: {},
|
|
5418
5423
|
basketSummary: {},
|
|
5419
5424
|
baseCurrency: "",
|
|
@@ -5661,6 +5666,19 @@ class WebReturnMapperBuilderClass {
|
|
|
5661
5666
|
return new Date(date).toISOString();
|
|
5662
5667
|
}
|
|
5663
5668
|
}
|
|
5669
|
+
/**
|
|
5670
|
+
* @template THIS
|
|
5671
|
+
* @this {THIS}
|
|
5672
|
+
* @return {THIS}
|
|
5673
|
+
*/
|
|
5674
|
+
isInStoreOrder() {
|
|
5675
|
+
console.log("Mapper library: WebReturnMapperBuilderClass: isInStoreOrder mapping started...");
|
|
5676
|
+
if ((/** @type {?} */ (this)).document.payment && (/** @type {?} */ (this)).document.payment.method && (/** @type {?} */ (this)).document.payment.method === 'pos_order') {
|
|
5677
|
+
(/** @type {?} */ (this)).webReturnObject.isInStoreOrder = true;
|
|
5678
|
+
}
|
|
5679
|
+
console.log("Mapper library: WebReturnMapperBuilderClass: isInStoreOrder mapping ended...");
|
|
5680
|
+
return (/** @type {?} */ (this));
|
|
5681
|
+
}
|
|
5664
5682
|
}
|
|
5665
5683
|
if (false) {
|
|
5666
5684
|
/**
|
|
@@ -5697,6 +5715,7 @@ class WebReturnSalesforceMapperBuilderClass {
|
|
|
5697
5715
|
terminalId: "",
|
|
5698
5716
|
initiatingModule: "",
|
|
5699
5717
|
export: false,
|
|
5718
|
+
isInStoreOrder: false,
|
|
5700
5719
|
basket: {},
|
|
5701
5720
|
basketSummary: {},
|
|
5702
5721
|
baseCurrency: "",
|
|
@@ -6137,6 +6156,19 @@ class WebReturnSalesforceMapperBuilderClass {
|
|
|
6137
6156
|
console.log("Mapper library: WebReturnSalesforceMapperBuilderClass: customer mapping ended...");
|
|
6138
6157
|
return (/** @type {?} */ (this));
|
|
6139
6158
|
}
|
|
6159
|
+
/**
|
|
6160
|
+
* @template THIS
|
|
6161
|
+
* @this {THIS}
|
|
6162
|
+
* @return {THIS}
|
|
6163
|
+
*/
|
|
6164
|
+
isInStoreOrder() {
|
|
6165
|
+
console.log("Mapper library: WebReturnSalesforceMapperBuilderClass: isInStoreOrder mapping started...");
|
|
6166
|
+
if ((/** @type {?} */ (this)).orderDetails.c_isInStoreOrder) {
|
|
6167
|
+
(/** @type {?} */ (this)).webReturnObject.isInStoreOrder = true;
|
|
6168
|
+
}
|
|
6169
|
+
console.log("Mapper library: WebReturnSalesforceMapperBuilderClass: isInStoreOrder mapping ended...");
|
|
6170
|
+
return (/** @type {?} */ (this));
|
|
6171
|
+
}
|
|
6140
6172
|
/**
|
|
6141
6173
|
* @template THIS
|
|
6142
6174
|
* @this {THIS}
|