@decaf-ts/for-nest 0.11.2-refactor.4 → 0.11.2-refactor.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/for-nest.cjs +8 -268
- package/dist/for-nest.js +9 -269
- package/lib/cjs/controllers.cjs +4 -6
- package/lib/cjs/decaf-model/FromModelController.cjs +116 -305
- package/lib/cjs/decaf-model/decorators/ApiOperationFromModel.cjs +2 -2
- package/lib/cjs/events-module/utils.cjs +2 -2
- package/lib/cjs/factory/NestBootstraper.cjs +3 -4
- package/lib/cjs/index.cjs +2 -2
- package/lib/cjs/request/DecafRequestContext.cjs +2 -3
- package/lib/cjs/request/DecafResponseInterceptor.cjs +5 -3
- package/lib/cjs/swagger-types.cjs +2 -2
- package/lib/cjs/types.cjs +2 -2
- package/lib/cjs/webhooks/DecafWebhookModule.cjs +3 -2
- package/lib/cjs/webhooks/controllers.cjs +50 -55
- package/lib/esm/controllers.js +3 -5
- package/lib/esm/decaf-model/FromModelController.js +117 -306
- package/lib/esm/decaf-model/decorators/ApiOperationFromModel.js +1 -1
- package/lib/esm/events-module/utils.js +1 -1
- package/lib/esm/factory/NestBootstraper.js +2 -3
- package/lib/esm/index.js +2 -2
- package/lib/esm/request/DecafRequestContext.js +1 -2
- package/lib/esm/request/DecafResponseInterceptor.js +4 -2
- package/lib/esm/swagger-types.js +1 -1
- package/lib/esm/types.js +1 -1
- package/lib/esm/webhooks/DecafWebhookModule.js +2 -1
- package/lib/esm/webhooks/controllers.js +49 -54
- package/lib/types/decaf-model/FromModelController.d.cts +0 -11
- package/lib/types/decaf-model/FromModelController.d.mts +0 -11
- package/lib/types/index.d.cts +2 -2
- package/lib/types/index.d.mts +2 -2
- package/package.json +7 -1
|
@@ -70,69 +70,64 @@ let WebhookEventActionsController = WebhookEventActionsController_1 = class Webh
|
|
|
70
70
|
const { ctx } = (await this.logCtx([], "replay", true)).for(this.replay);
|
|
71
71
|
const eventRepo = core_1.Repository.forModel(hooks_1.WebhookEventRecord);
|
|
72
72
|
const deliveryRepo = core_1.Repository.forModel(hooks_1.WebhookDelivery);
|
|
73
|
+
let event;
|
|
73
74
|
try {
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
75
|
+
event = await eventRepo.read(id, ctx);
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
const events = await eventRepo
|
|
79
|
+
.select()
|
|
80
|
+
.where(eventRepo.attr("id").eq(id))
|
|
81
|
+
.limit(1)
|
|
82
|
+
.execute(ctx);
|
|
83
|
+
if (!events.length)
|
|
84
|
+
throw error;
|
|
85
|
+
event = events[0];
|
|
86
|
+
}
|
|
87
|
+
let deliveries = [];
|
|
88
|
+
try {
|
|
89
|
+
deliveries = await (0, hooks_1.collectPagedResults)(() => deliveryRepo
|
|
90
|
+
.select()
|
|
91
|
+
.where(deliveryRepo.attr("eventId").eq(event.id))
|
|
92
|
+
.orderBy("createdAt", core_1.OrderDirection.ASC)
|
|
93
|
+
.thenBy("id", core_1.OrderDirection.ASC)
|
|
94
|
+
.paginate(250, ctx), 250, ctx);
|
|
95
|
+
}
|
|
96
|
+
catch {
|
|
89
97
|
try {
|
|
90
|
-
deliveries = await
|
|
98
|
+
deliveries = await deliveryRepo
|
|
91
99
|
.select()
|
|
92
100
|
.where(deliveryRepo.attr("eventId").eq(event.id))
|
|
93
|
-
.
|
|
94
|
-
.thenBy("id", core_1.OrderDirection.ASC)
|
|
95
|
-
.paginate(250, ctx), 250, ctx);
|
|
101
|
+
.execute(ctx);
|
|
96
102
|
}
|
|
97
103
|
catch {
|
|
98
|
-
|
|
99
|
-
deliveries = await deliveryRepo
|
|
100
|
-
.select()
|
|
101
|
-
.where(deliveryRepo.attr("eventId").eq(event.id))
|
|
102
|
-
.execute(ctx);
|
|
103
|
-
}
|
|
104
|
-
catch {
|
|
105
|
-
deliveries = [];
|
|
106
|
-
}
|
|
104
|
+
deliveries = [];
|
|
107
105
|
}
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
106
|
+
}
|
|
107
|
+
const now = new Date();
|
|
108
|
+
for (const delivery of deliveries) {
|
|
109
|
+
delivery.status = hooks_1.WebhookStatus.PENDING;
|
|
110
|
+
delivery.attempts = 0;
|
|
111
|
+
delivery.nextAttemptAt = now;
|
|
112
|
+
delivery.lastAttemptAt = null;
|
|
113
|
+
delivery.errorMessage = undefined;
|
|
114
|
+
delivery.responseStatus = undefined;
|
|
115
|
+
delivery.responseBody = undefined;
|
|
116
|
+
}
|
|
117
|
+
event.status = hooks_1.WebhookStatus.PENDING;
|
|
118
|
+
event.deliveriesSucceeded = 0;
|
|
119
|
+
event.deliveriesFailed = 0;
|
|
120
|
+
event.nextAttemptAt = now;
|
|
121
|
+
event.updatedAt = now;
|
|
122
|
+
if (deliveries.length) {
|
|
123
|
+
try {
|
|
124
|
+
await deliveryRepo.updateAll(deliveries, ctx.override({ applyUpdateValidation: false }));
|
|
117
125
|
}
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
event.deliveriesFailed = 0;
|
|
121
|
-
event.nextAttemptAt = now;
|
|
122
|
-
event.updatedAt = now;
|
|
123
|
-
if (deliveries.length) {
|
|
124
|
-
try {
|
|
125
|
-
await deliveryRepo.updateAll(deliveries, ctx.override({ applyUpdateValidation: false }));
|
|
126
|
-
}
|
|
127
|
-
catch {
|
|
128
|
-
// Replay still resets the event state even if bulk delivery updates are not queryable here.
|
|
129
|
-
}
|
|
126
|
+
catch {
|
|
127
|
+
// Replay still resets the event state even if bulk delivery updates are not queryable here.
|
|
130
128
|
}
|
|
131
|
-
return eventRepo.update(event, ctx);
|
|
132
|
-
}
|
|
133
|
-
catch (error) {
|
|
134
|
-
throw error;
|
|
135
129
|
}
|
|
130
|
+
return eventRepo.update(event, ctx);
|
|
136
131
|
}
|
|
137
132
|
};
|
|
138
133
|
exports.WebhookEventActionsController = WebhookEventActionsController;
|
|
@@ -147,5 +142,5 @@ exports.WebhookEventActionsController = WebhookEventActionsController = WebhookE
|
|
|
147
142
|
(0, common_1.Controller)("webhook-events"),
|
|
148
143
|
__metadata("design:paramtypes", [index_js_1.DecafRequestContext])
|
|
149
144
|
], WebhookEventActionsController);
|
|
150
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbGxlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvd2ViaG9va3MvY29udHJvbGxlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxVQUFVLEVBQWEsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSw0QkFBdUI7QUFDakQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLDhCQUFtQjtBQUVqRCxPQUFPLEVBQ0wsZUFBZSxFQUNmLGtCQUFrQixFQUNsQixhQUFhLEVBQ2IsbUJBQW1CLEVBQ25CLG1CQUFtQixHQUNwQixNQUFNLDBCQUEwQixDQUFDO0FBRzNCLElBQU0sb0NBQW9DLDRDQUExQyxNQUFNLG9DQUFxQyxTQUFRLGVBQStCO0lBQ3ZGLFlBQVksYUFBa0M7UUFDNUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxzQ0FBb0MsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBR0ssQUFBTixLQUFLLENBQUMsVUFBVSxDQUFjLEVBQVU7UUFDdEMsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQzdELElBQUksQ0FBQyxVQUFVLENBQ2hCLENBQUM7UUFDRixNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsUUFBUSxDQUc5QixtQkFBbUIsQ0FBQyxDQUFDO1FBQ3ZCLE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDekMsT0FBTyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDdkIsT0FBTyxJQUFJLENB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R0FBRyxDQUFDO1lBQzFCLEtBQUssQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDO1lBRXRCLElBQUksVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUN0QixJQUFJLENBQUM7b0JBQ0gsTUFBTSxZQUFZLENBQUMsU0FBUyxDQUMxQixVQUFVLEVBQ1YsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLHFCQUFxQixFQUFFLEtBQUssRUFBUyxDQUFDLENBQ3RELENBQUM7Z0JBQ0osQ0FBQztnQkFBQyxNQUFNLENBQUM7b0JBQ1AsNEZBQTRGO2dCQUM5RixDQUFDO1lBQ0gsQ0FBQztZQUNELE9BQU8sU0FBUyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDdEMsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixNQUFNLEtBQUssQ0FBQztRQUNkLENBQUM7SUFDSCxDQUFDO0NBQ0YsQ0FBQTtBQS9FTztJQURMLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDTCxXQUFBLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQTs7OzsyREE4RXhCO0FBcEZVLDZCQUE2QjtJQUR6QyxVQUFVLENBQUMsZ0JBQWdCLENBQUM7cUNBRUEsbUJBQW1CO0dBRG5DLDZCQUE2QixDQXFGekMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb250cm9sbGVyLCBQYXJhbSwgUG9zdCB9IGZyb20gXCJAbmVzdGpzL2NvbW1vblwiO1xuaW1wb3J0IHsgUmVwb3NpdG9yeSwgdHlwZSBSZXBvLCBPcmRlckRpcmVjdGlvbiB9IGZyb20gXCJAZGVjYWYtdHMvY29yZVwiO1xuaW1wb3J0IHsgRGVjYWZDb250cm9sbGVyIH0gZnJvbSBcIi4uL2NvbnRyb2xsZXJzXCI7XG5pbXBvcnQgeyBEZWNhZlJlcXVlc3RDb250ZXh0IH0gZnJvbSBcIi4uL3JlcXVlc3RcIjtcbmltcG9ydCB7IERlY2FmU2VydmVyQ3R4IH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHtcbiAgV2ViaG9va0RlbGl2ZXJ5LFxuICBXZWJob29rRXZlbnRSZWNvcmQsXG4gIFdlYmhvb2tTdGF0dXMsXG4gIFdlYmhvb2tTdWJzY3JpcHRpb24sXG4gIGNvbGxlY3RQYWdlZFJlc3VsdHMsXG59IGZyb20gXCJAZGVjYWYtdHMvZm9yLWh0dHAvaG9va3NcIjtcblxuQENvbnRyb2xsZXIoXCJ3ZWJob29rLXN1YnNjcmlwdGlvbnNcIilcbmV4cG9ydCBjbGFzcyBXZWJob29rU3Vic2NyaXB0aW9uQWN0aW9uc0NvbnRyb2xsZXIgZXh0ZW5kcyBEZWNhZkNvbnRyb2xsZXI8RGVjYWZTZXJ2ZXJDdHg+IHtcbiAgY29uc3RydWN0b3IoY2xpZW50Q29udGV4dDogRGVjYWZSZXF1ZXN0Q29udGV4dCkge1xuICAgIHN1cGVyKGNsaWVudENvbnRleHQsIFdlYmhvb2tTdWJzY3JpcHRpb25BY3Rpb25zQ29udHJvbGxlci5uYW1lKTtcbiAgfVxuXG4gIEBQb3N0KFwiOmlkL2RlYWN0aXZhdGVcIilcbiAgYXN5bmMgZGVhY3RpdmF0ZShAUGFyYW0oXCJpZFwiKSBpZDogc3RyaW5nKSB7XG4gICAgY29uc3QgeyBjdHggfSA9IChhd2FpdCB0aGlzLmxvZ0N0eChbXSwgXCJkZWFjdGl2YXRlXCIsIHRydWUpKS5mb3IoXG4gICAgICB0aGlzLmRlYWN0aXZhdGVcbiAgICApO1xuICAgIGNvbnN0IHJlcG8gPSBSZXBvc2l0b3J5LmZvck1vZGVsPFxuICAgICAgV2ViaG9va1N1YnNjcmlwdGlvbixcbiAgICAgIFJlcG88V2ViaG9va1N1YnNjcmlwdGlvbj5cbiAgICA+KFdlYmhvb2tTdWJzY3JpcHRpb24pO1xuICAgIGNvbnN0IGN1cnJlbnQgPSBhd2FpdCByZXBvLnJlYWQoaWQsIGN0eCk7XG4gICAgY3VycmVudC5hY3RpdmUgPSBmYWxzZTtcbiAgICByZXR1cm4gcmVwby51cGRhdGUoY3VycmVudCwgY3R4KTtcbiAgfVxuXG4gIEBQb3N0KFwiOmlkL3JlYWN0aXZhdGVcIilcbiAgYXN5bmMgcmVhY3RpdmF0ZShAUGFyYW0oXCJpZFwiKSBpZDogc3RyaW5nKSB7XG4gICAgY29uc3QgeyBjdHggfSA9IChhd2FpdCB0aGlzLmxvZ0N0eChbXSwgXCJyZWFjdGl2YXRlXCIsIHRydWUpKS5mb3IoXG4gICAgICB0aGlzLnJlYWN0aXZhdGVcbiAgICApO1xuICAgIGNvbnN0IHJlcG8gPSBSZXBvc2l0b3J5LmZvck1vZGVsPFxuICAgICAgV2ViaG9va1N1YnNjcmlwdGlvbixcbiAgICAgIFJlcG88V2ViaG9va1N1YnNjcmlwdGlvbj5cbiAgICA+KFdlYmhvb2tTdWJzY3JpcHRpb24pO1xuICAgIGNvbnN0IGN1cnJlbnQgPSBhd2FpdCByZXBvLnJlYWQoaWQsIGN0eCk7XG4gICAgY3VycmVudC5hY3RpdmUgPSB0cnVlO1xuICAgIHJldHVybiByZXBvLnVwZGF0ZShjdXJyZW50LCBjdHgpO1xuICB9XG59XG5cbkBDb250cm9sbGVyKFwid2ViaG9vay1ldmVudHNcIilcbmV4cG9ydCBjbGFzcyBXZWJob29rRXZlbnRBY3Rpb25zQ29udHJvbGxlciBleHRlbmRzIERlY2FmQ29udHJvbGxlcjxEZWNhZlNlcnZlckN0eD4ge1xuICBjb25zdHJ1Y3RvcihjbGllbnRDb250ZXh0OiBEZWNhZlJlcXVlc3RDb250ZXh0KSB7XG4gICAgc3VwZXIoY2xpZW50Q29udGV4dCwgV2ViaG9va0V2ZW50QWN0aW9uc0NvbnRyb2xsZXIubmFtZSk7XG4gIH1cblxuICBAUG9zdChcIjppZC9yZXBsYXlcIilcbiAgYXN5bmMgcmVwbGF5KEBQYXJhbShcImlkXCIpIGlkOiBzdHJpbmcpIHtcbiAgICBjb25zdCB7IGN0eCB9ID0gKGF3YWl0IHRoaXMubG9nQ3R4KFtdLCBcInJlcGxheVwiLCB0cnVlKSkuZm9yKHRoaXMucmVwbGF5KTtcbiAgICBjb25zdCBldmVudFJlcG8gPSBSZXBvc2l0b3J5LmZvck1vZGVsPFxuICAgICAgV2ViaG9va0V2ZW50UmVjb3JkLFxuICAgICAgUmVwbzxXZWJob29rRXZlbnRSZWNvcmQ+XG4gICAgPihXZWJob29rRXZlbnRSZWNvcmQpO1xuICAgIGNvbnN0IGRlbGl2ZXJ5UmVwbyA9IFJlcG9zaXRvcnkuZm9yTW9kZWw8XG4gICAgICBXZWJob29rRGVsaXZlcnksXG4gICAgICBSZXBvPFdlYmhvb2tEZWxpdmVyeT5cbiAgICA+KFdlYmhvb2tEZWxpdmVyeSk7XG4gICAgdHJ5IHtcbiAgICAgIGxldCBldmVudDtcbiAgICAgIHRyeSB7XG4gICAgICAgIGV2ZW50ID0gYXdhaXQgZXZlbnRSZXBvLnJlYWQoaWQsIGN0eCk7XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICBjb25zdCBldmVudHMgPSBhd2FpdCBldmVudFJlcG9cbiAgICAgICAgICAuc2VsZWN0KClcbiAgICAgICAgICAud2hlcmUoZXZlbnRSZXBvLmF0dHIoXCJpZFwiKS5lcShpZCkpXG4gICAgICAgICAgLmxpbWl0KDEpXG4gICAgICAgICAgLmV4ZWN1dGUoY3R4KTtcbiAgICAgICAgaWYgKCFldmVudHMubGVuZ3RoKSB0aHJvdyBlcnJvcjtcbiAgICAgICAgZXZlbnQgPSBldmVudHNbMF07XG4gICAgICB9XG4gICAgICBsZXQgZGVsaXZlcmllczogYW55W10gPSBbXTtcbiAgICAgIHRyeSB7XG4gICAgICAgIGRlbGl2ZXJpZXMgPSBhd2FpdCBjb2xsZWN0UGFnZWRSZXN1bHRzKFxuICAgICAgICAgICgpID0+XG4gICAgICAgICAgICBkZWxpdmVyeVJlcG9cbiAgICAgICAgICAgICAgLnNlbGVjdCgpXG4gICAgICAgICAgICAgIC53aGVyZShkZWxpdmVyeVJlcG8uYXR0cihcImV2ZW50SWRcIikuZXEoZXZlbnQuaWQpKVxuICAgICAgICAgICAgICAub3JkZXJCeShcImNyZWF0ZWRBdFwiLCBPcmRlckRpcmVjdGlvbi5BU0MpXG4gICAgICAgICAgICAgIC50aGVuQnkoXCJpZFwiLCBPcmRlckRpcmVjdGlvbi5BU0MpXG4gICAgICAgICAgICAgIC5wYWdpbmF0ZSgyNTAsIGN0eCksXG4gICAgICAgICAgMjUwLFxuICAgICAgICAgIGN0eFxuICAgICAgICApO1xuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgZGVsaXZlcmllcyA9IGF3YWl0IGRlbGl2ZXJ5UmVwb1xuICAgICAgICAgICAgLnNlbGVjdCgpXG4gICAgICAgICAgICAud2hlcmUoZGVsaXZlcnlSZXBvLmF0dHIoXCJldmVudElkXCIpLmVxKGV2ZW50LmlkKSlcbiAgICAgICAgICAgIC5leGVjdXRlKGN0eCk7XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgIGRlbGl2ZXJpZXMgPSBbXTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY29uc3Qgbm93ID0gbmV3IERhdGUoKTtcblxuICAgICAgZm9yIChjb25zdCBkZWxpdmVyeSBvZiBkZWxpdmVyaWVzKSB7XG4gICAgICAgIGRlbGl2ZXJ5LnN0YXR1cyA9IFdlYmhvb2tTdGF0dXMuUEVORElORztcbiAgICAgICAgZGVsaXZlcnkuYXR0ZW1wdHMgPSAwO1xuICAgICAgICBkZWxpdmVyeS5uZXh0QXR0ZW1wdEF0ID0gbm93O1xuICAgICAgICBkZWxpdmVyeS5sYXN0QXR0ZW1wdEF0ID0gbnVsbCBhcyBhbnk7XG4gICAgICAgIGRlbGl2ZXJ5LmVycm9yTWVzc2FnZSA9IHVuZGVmaW5lZDtcbiAgICAgICAgZGVsaXZlcnkucmVzcG9uc2VTdGF0dXMgPSB1bmRlZmluZWQ7XG4gICAgICAgIGRlbGl2ZXJ5LnJlc3BvbnNlQm9keSA9IHVuZGVmaW5lZDtcbiAgICAgIH1cblxuICAgICAgZXZlbnQuc3RhdHVzID0gV2ViaG9va1N0YXR1cy5QRU5ESU5HO1xuICAgICAgZXZlbnQuZGVsaXZlcmllc1N1Y2NlZWRlZCA9IDA7XG4gICAgICBldmVudC5kZWxpdmVyaWVzRmFpbGVkID0gMDtcbiAgICAgIGV2ZW50Lm5leHRBdHRlbXB0QXQgPSBub3c7XG4gICAgICBldmVudC51cGRhdGVkQXQgPSBub3c7XG5cbiAgICAgIGlmIChkZWxpdmVyaWVzLmxlbmd0aCkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGF3YWl0IGRlbGl2ZXJ5UmVwby51cGRhdGVBbGwoXG4gICAgICAgICAgICBkZWxpdmVyaWVzLFxuICAgICAgICAgICAgY3R4Lm92ZXJyaWRlKHsgYXBwbHlVcGRhdGVWYWxpZGF0aW9uOiBmYWxzZSB9IGFzIGFueSlcbiAgICAgICAgICApO1xuICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICAvLyBSZXBsYXkgc3RpbGwgcmVzZXRzIHRoZSBldmVudCBzdGF0ZSBldmVuIGlmIGJ1bGsgZGVsaXZlcnkgdXBkYXRlcyBhcmUgbm90IHF1ZXJ5YWJsZSBoZXJlLlxuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gZXZlbnRSZXBvLnVwZGF0ZShldmVudCwgY3R4KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
151
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbGxlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJjb250cm9sbGVycy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFJLFVBQVUsR0FBRyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksVUFBVSxVQUFVLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxJQUFJO0lBQ2pGLElBQUksQ0FBQyxHQUFHLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDN0gsSUFBSSxPQUFPLE9BQU8sS0FBSyxRQUFRLElBQUksT0FBTyxPQUFPLENBQUMsUUFBUSxLQUFLLFVBQVU7UUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQzs7UUFDMUgsS0FBSyxJQUFJLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRTtZQUFFLElBQUksQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUM7Z0JBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMs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QUFDLFFBQVEsQ0FBQyxFQUFFLHFCQUFxQixFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDN0YsQ0FBQztnQkFDRCxNQUFNLENBQUM7b0JBQ0gsNEZBQTRGO2dCQUNoRyxDQUFDO1lBQ0wsQ0FBQztZQUNELE9BQU8sU0FBUyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDeEMsQ0FBQztRQUNELE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDWCxNQUFNLEtBQUssQ0FBQztRQUNoQixDQUFDO0lBQ0wsQ0FBQztDQUNKLENBQUM7QUFZTyxzRUFBNkI7QUFYdEMsVUFBVSxDQUFDO0lBQ1AsSUFBQSxhQUFJLEVBQUMsWUFBWSxDQUFDO0lBQ2xCLE9BQU8sQ0FBQyxDQUFDLEVBQUUsSUFBQSxjQUFLLEVBQUMsSUFBSSxDQUFDLENBQUM7SUFDdkIsVUFBVSxDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUM7SUFDbkMsVUFBVSxDQUFDLG1CQUFtQixFQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDekMsVUFBVSxDQUFDLG1CQUFtQixFQUFFLE9BQU8sQ0FBQztDQUMzQyxFQUFFLDZCQUE2QixDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDNUQsd0NBQUEsNkJBQTZCLEdBQUcsK0JBQStCLEdBQUcsVUFBVSxDQUFDO0lBQ3pFLElBQUEsbUJBQVUsRUFBQyxnQkFBZ0IsQ0FBQztJQUM1QixVQUFVLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyw4QkFBbUIsQ0FBQyxDQUFDO0NBQ3pELEVBQUUsNkJBQTZCLENBQUMsQ0FBQztBQUVsQywwaldBQTBqVyIsInNvdXJjZXNDb250ZW50IjpbInZhciBfX2RlY29yYXRlID0gKHRoaXMgJiYgdGhpcy5fX2RlY29yYXRlKSB8fCBmdW5jdGlvbiAoZGVjb3JhdG9ycywgdGFyZ2V0LCBrZXksIGRlc2MpIHtcbiAgICB2YXIgYyA9IGFyZ3VtZW50cy5sZW5ndGgsIHIgPSBjIDwgMyA/IHRhcmdldCA6IGRlc2MgPT09IG51bGwgPyBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0YXJnZXQsIGtleSkgOiBkZXNjLCBkO1xuICAgIGlmICh0eXBlb2YgUmVmbGVjdCA9PT0gXCJvYmplY3RcIiAmJiB0eXBlb2YgUmVmbGVjdC5kZWNvcmF0ZSA9PT0gXCJmdW5jdGlvblwiKSByID0gUmVmbGVjdC5kZWNvcmF0ZShkZWNvcmF0b3JzLCB0YXJnZXQsIGtleSwgZGVzYyk7XG4gICAgZWxzZSBmb3IgKHZhciBpID0gZGVjb3JhdG9ycy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkgaWYgKGQgPSBkZWNvcmF0b3JzW2ldKSByID0gKGMgPCAzID8gZChyKSA6IGMgPiAzID8gZCh0YXJnZXQsIGtleSwgcikgOiBkKHRhcmdldCwga2V5KSkgfHwgcjtcbiAgICByZXR1cm4gYyA+IDMgJiYgciAmJiBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIHIpLCByO1xufTtcbnZhciBfX21ldGFkYXRhID0gKHRoaXMgJiYgdGhpcy5fX21ldGFkYXRhKSB8fCBmdW5jdGlvbiAoaywgdikge1xuICAgIGlmICh0eXBlb2YgUmVmbGVjdCA9PT0gXCJvYmplY3RcIiAmJiB0eXBlb2YgUmVmbGVjdC5tZXRhZGF0YSA9PT0gXCJmdW5jdGlvblwiKSByZXR1cm4gUmVmbGVjdC5tZXRhZGF0YShrLCB2KTtcbn07XG52YXIgX19wYXJhbSA9ICh0aGlzICYmIHRoaXMuX19wYXJhbSkgfHwgZnVuY3Rpb24gKHBhcmFtSW5kZXgsIGRlY29yYXRvcikge1xuICAgIHJldHVybiBmdW5jdGlvbiAodGFyZ2V0LCBrZXkpIHsgZGVjb3JhdG9yKHRhcmdldCwga2V5LCBwYXJhbUluZGV4KTsgfVxufTtcbnZhciBXZWJob29rU3Vic2NyaXB0aW9uQWN0aW9uc0NvbnRyb2xsZXJfMSwgV2ViaG9va0V2ZW50QWN0aW9uc0NvbnRyb2xsZXJfMTtcbmltcG9ydCB7IENvbnRyb2xsZXIsIFBhcmFtLCBQb3N0IH0gZnJvbSBcIkBuZXN0anMvY29tbW9uXCI7XG5pbXBvcnQgeyBSZXBvc2l0b3J5LCBPcmRlckRpcmVjdGlvbiB9IGZyb20gXCJAZGVjYWYtdHMvY29yZVwiO1xuaW1wb3J0IHsgRGVjYWZDb250cm9sbGVyIH0gZnJvbSBcIi4vLi4vY29udHJvbGxlcnMuanNcIjtcbmltcG9ydCB7IERlY2FmUmVxdWVzdENvbnRleHQgfSBmcm9tIFwiLi8uLi9yZXF1ZXN0L2luZGV4LmpzXCI7XG5pbXBvcnQgeyBXZWJob29rRGVsaXZlcnksIFdlYmhvb2tFdmVudFJlY29yZCwgV2ViaG9va1N0YXR1cywgV2ViaG9va1N1YnNjcmlwdGlvbiwgY29sbGVjdFBhZ2VkUmVzdWx0cywgfSBmcm9tIFwiQGRlY2FmLXRzL2Zvci1odHRwL2hvb2tzXCI7XG5sZXQgV2ViaG9va1N1YnNjcmlwdGlvbkFjdGlvbnNDb250cm9sbGVyID0gV2ViaG9va1N1YnNjcmlwdGlvbkFjdGlvbnNDb250cm9sbGVyXzEgPSBjbGFzcyBXZWJob29rU3Vic2NyaXB0aW9uQWN0aW9uc0NvbnRyb2xsZXIgZXh0ZW5kcyBEZWNhZkNvbnRyb2xsZXIge1xuICAgIGNvbnN0cnVjdG9yKGNsaWVudENvbnRleHQpIHtcbiAgICAgICAgc3VwZXIoY2xpZW50Q29udGV4dCwgV2ViaG9va1N1YnNjcmlwdGlvbkFjdGlvbnNDb250cm9sbGVyXzEubmFtZSk7XG4gICAgfVxuICAgIGFzeW5jIGRlYWN0aXZhdGUoaWQpIHtcbiAgICAgICAgY29uc3QgeyBjdHggfSA9IChhd2FpdCB0aGlzLmxvZ0N0eChbXSwgXCJkZWFjdGl2YXRlXCIsIHRydWUpKS5mb3IodGhpcy5kZWFjdGl2YXRlKTtcbiAgICAgICAgY29uc3QgcmVwbyA9IFJlcG9zaXRvcnkuZm9yTW9kZWwoV2ViaG9va1N1YnNjcmlwdGlvbik7XG4gICAgICAgIGNvbnN0IGN1cnJlbnQgPSBhd2FpdCByZXBvLnJlYWQoaWQsIGN0eCk7XG4gICAgICAgIGN1cnJlbnQuYWN0aXZlID0gZmFsc2U7XG4gICAgICAgIHJldHVybiByZXBvLnVwZGF0ZShjdXJyZW50LCBjdHgpO1xuICAgIH1cbiAgICBhc3luYyByZWFjdGl2YXRlKGlkKSB7XG4gICAgICAgIGNvbnN0IHsgY3R4IH0gPSAoYXdhaXQgdGhpcy5sb2dDdHgoW10sIFwicmVhY3RpdmF0ZVwiLCB0cnVlKSkuZm9yKHRoaXMucmVhY3RpdmF0ZSk7XG4gICAgICAgIGNvbnN0IHJlcG8gPSBSZXBvc2l0b3J5LmZvck1vZGVsKFdlYmhvb2tTdWJzY3JpcHRpb24pO1xuICAgICAgICBjb25zdCBjdXJyZW50ID0gYXdhaXQgcmVwby5yZWFkKGlkLCBjdHgpO1xuICAgICAgICBjdXJyZW50LmFjdGl2ZSA9IHRydWU7XG4gICAgICAgIHJldHVybiByZXBvLnVwZGF0ZShjdXJyZW50LCBjdHgpO1xuICAgIH1cbn07XG5fX2RlY29yYXRlKFtcbiAgICBQb3N0KFwiOmlkL2RlYWN0aXZhdGVcIiksXG4gICAgX19wYXJhbSgwLCBQYXJhbShcImlkXCIpKSxcbiAgICBfX21ldGFkYXRhKFwiZGVzaWduOnR5cGVcIiwgRnVuY3Rpb24pLFxuICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246cGFyYW10eXBlc1wiLCBbU3RyaW5nXSksXG4gICAgX19tZXRhZGF0YShcImRlc2lnbjpyZXR1cm50eXBlXCIsIFByb21pc2UpXG5dLCBXZWJob29rU3Vic2NyaXB0aW9uQWN0aW9uc0NvbnRyb2xsZXIucHJvdG90eXBlLCBcImRlYWN0aXZhdGVcIiwgbnVsbCk7XG5fX2RlY29yYXRlKFtcbiAgICBQb3N0KFwiOmlkL3JlYWN0aXZhdGVcIiksXG4gICAgX19wYXJhbSgwLCBQYXJhbShcImlkXCIpKSxcbiAgICBfX21ldGFkYXRhKFwiZGVzaWduOnR5cGVcIiwgRnVuY3Rpb24pLFxuICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246cGFyYW10eXBlc1wiLCBbU3RyaW5nXSksXG4gICAgX19tZXRhZGF0YShcImRlc2lnbjpyZXR1cm50eXBlXCIsIFByb21pc2UpXG5dLCBXZWJob29rU3Vic2NyaXB0aW9uQWN0aW9uc0NvbnRyb2xsZXIucHJvdG90eXBlLCBcInJlYWN0aXZhdGVcIiwgbnVsbCk7XG5XZWJob29rU3Vic2NyaXB0aW9uQWN0aW9uc0NvbnRyb2xsZXIgPSBXZWJob29rU3Vic2NyaXB0aW9uQWN0aW9uc0NvbnRyb2xsZXJfMSA9IF9fZGVjb3JhdGUoW1xuICAgIENvbnRyb2xsZXIoXCJ3ZWJob29rLXN1YnNjcmlwdGlvbnNcIiksXG4gICAgX19tZXRhZGF0YShcImRlc2lnbjpwYXJhbXR5cGVzXCIsIFtEZWNhZlJlcXVlc3RDb250ZXh0XSlcbl0sIFdlYmhvb2tTdWJzY3JpcHRpb25BY3Rpb25zQ29udHJvbGxlcik7XG5leHBvcnQgeyBXZWJob29rU3Vic2NyaXB0aW9uQWN0aW9uc0NvbnRyb2xsZXIgfTtcbmxldCBXZWJob29rRXZlbnRBY3Rpb25zQ29udHJvbGxlciA9IFdlYmhvb2tFdmVudEFjdGlvbnNDb250cm9sbGVyXzEgPSBjbGFzcyBXZWJob29rRXZlbnRBY3Rpb25zQ29udHJvbGxlciBleHRlbmRzIERlY2FmQ29udHJvbGxlciB7XG4gICAgY29uc3RydWN0b3IoY2xpZW50Q29udGV4dCkge1xuICAgICAgICBzdXBlcihjbGllbnRDb250ZXh0LCBXZWJob29rRXZlbnRBY3Rpb25zQ29udHJvbGxlcl8xLm5hbWUpO1xuICAgIH1cbiAgICBhc3luYyByZXBsYXkoaWQpIHtcbiAgICAgICAgY29uc3QgeyBjdHggfSA9IChhd2FpdCB0aGlzLmxvZ0N0eChbXSwgXCJyZXBsYXlcIiwgdHJ1ZSkpLmZvcih0aGlzLnJlcGxheSk7XG4gICAgICAgIGNvbnN0IGV2ZW50UmVwbyA9IFJlcG9zaXRvcnkuZm9yTW9kZWwoV2ViaG9va0V2ZW50UmVjb3JkKTtcbiAgICAgICAgY29uc3QgZGVsaXZlcnlSZXBvID0gUmVwb3NpdG9yeS5mb3JNb2RlbChXZWJob29rRGVsaXZlcnkpO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgbGV0IGV2ZW50O1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBldmVudCA9IGF3YWl0IGV2ZW50UmVwby5yZWFkKGlkLCBjdHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZXZlbnRzID0gYXdhaXQgZXZlbnRSZXBvXG4gICAgICAgICAgICAgICAgICAgIC5zZWxlY3QoKVxuICAgICAgICAgICAgICAgICAgICAud2hlcmUoZXZlbnRSZXBvLmF0dHIoXCJpZFwiKS5lcShpZCkpXG4gICAgICAgICAgICAgICAgICAgIC5saW1pdCgxKVxuICAgICAgICAgICAgICAgICAgICAuZXhlY3V0ZShjdHgpO1xuICAgICAgICAgICAgICAgIGlmICghZXZlbnRzLmxlbmd0aClcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgICAgICAgICAgZXZlbnQgPSBldmVudHNbMF07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsZXQgZGVsaXZlcmllcyA9IFtdO1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBkZWxpdmVyaWVzID0gYXdhaXQgY29sbGVjdFBhZ2VkUmVzdWx0cygoKSA9PiBkZWxpdmVyeVJlcG9cbiAgICAgICAgICAgICAgICAgICAgLnNlbGVjdCgpXG4gICAgICAgICAgICAgICAgICAgIC53aGVyZShkZWxpdmVyeVJlcG8uYXR0cihcImV2ZW50SWRcIikuZXEoZXZlbnQuaWQpKVxuICAgICAgICAgICAgICAgICAgICAub3JkZXJCeShcImNyZWF0ZWRBdFwiLCBPcmRlckRpcmVjdGlvbi5BU0MpXG4gICAgICAgICAgICAgICAgICAgIC50aGVuQnkoXCJpZFwiLCBPcmRlckRpcmVjdGlvbi5BU0MpXG4gICAgICAgICAgICAgICAgICAgIC5wYWdpbmF0ZSgyNTAsIGN0eCksIDI1MCwgY3R4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhdGNoIHtcbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICBkZWxpdmVyaWVzID0gYXdhaXQgZGVsaXZlcnlSZXBvXG4gICAgICAgICAgICAgICAgICAgICAgICAuc2VsZWN0KClcbiAgICAgICAgICAgICAgICAgICAgICAgIC53aGVyZShkZWxpdmVyeVJlcG8uYXR0cihcImV2ZW50SWRcIikuZXEoZXZlbnQuaWQpKVxuICAgICAgICAgICAgICAgICAgICAgICAgLmV4ZWN1dGUoY3R4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2F0Y2gge1xuICAgICAgICAgICAgICAgICAgICBkZWxpdmVyaWVzID0gW107XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3Qgbm93ID0gbmV3IERhdGUoKTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgZGVsaXZlcnkgb2YgZGVsaXZlcmllcykge1xuICAgICAgICAgICAgICAgIGRlbGl2ZXJ5LnN0YXR1cyA9IFdlYmhvb2tTdGF0dXMuUEVORElORztcbiAgICAgICAgICAgICAgICBkZWxpdmVyeS5hdHRlbXB0cyA9IDA7XG4gICAgICAgICAgICAgICAgZGVsaXZlcnkubmV4dEF0dGVtcHRBdCA9IG5vdztcbiAgICAgICAgICAgICAgICBkZWxpdmVyeS5sYXN0QXR0ZW1wdEF0ID0gbnVsbDtcbiAgICAgICAgICAgICAgICBkZWxpdmVyeS5lcnJvck1lc3NhZ2UgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgZGVsaXZlcnkucmVzcG9uc2VTdGF0dXMgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgZGVsaXZlcnkucmVzcG9uc2VCb2R5ID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZXZlbnQuc3RhdHVzID0gV2ViaG9va1N0YXR1cy5QRU5ESU5HO1xuICAgICAgICAgICAgZXZlbnQuZGVsaXZlcmllc1N1Y2NlZWRlZCA9IDA7XG4gICAgICAgICAgICBldmVudC5kZWxpdmVyaWVzRmFpbGVkID0gMDtcbiAgICAgICAgICAgIGV2ZW50Lm5leHRBdHRlbXB0QXQgPSBub3c7XG4gICAgICAgICAgICBldmVudC51cGRhdGVkQXQgPSBub3c7XG4gICAgICAgICAgICBpZiAoZGVsaXZlcmllcy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICBhd2FpdCBkZWxpdmVyeVJlcG8udXBkYXRlQWxsKGRlbGl2ZXJpZXMsIGN0eC5vdmVycmlkZSh7IGFwcGx5VXBkYXRlVmFsaWRhdGlvbjogZmFsc2UgfSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjYXRjaCB7XG4gICAgICAgICAgICAgICAgICAgIC8vIFJlcGxheSBzdGlsbCByZXNldHMgdGhlIGV2ZW50IHN0YXRlIGV2ZW4gaWYgYnVsayBkZWxpdmVyeSB1cGRhdGVzIGFyZSBub3QgcXVlcnlhYmxlIGhlcmUuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGV2ZW50UmVwby51cGRhdGUoZXZlbnQsIGN0eCk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgICAgfVxuICAgIH1cbn07XG5fX2RlY29yYXRlKFtcbiAgICBQb3N0KFwiOmlkL3JlcGxheVwiKSxcbiAgICBfX3BhcmFtKDAsIFBhcmFtKFwiaWRcIikpLFxuICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246dHlwZVwiLCBGdW5jdGlvbiksXG4gICAgX19tZXRhZGF0YShcImRlc2lnbjpwYXJhbXR5cGVzXCIsIFtTdHJpbmddKSxcbiAgICBfX21ldGFkYXRhKFwiZGVzaWduOnJldHVybnR5cGVcIiwgUHJvbWlzZSlcbl0sIFdlYmhvb2tFdmVudEFjdGlvbnNDb250cm9sbGVyLnByb3RvdHlwZSwgXCJyZXBsYXlcIiwgbnVsbCk7XG5XZWJob29rRXZlbnRBY3Rpb25zQ29udHJvbGxlciA9IFdlYmhvb2tFdmVudEFjdGlvbnNDb250cm9sbGVyXzEgPSBfX2RlY29yYXRlKFtcbiAgICBDb250cm9sbGVyKFwid2ViaG9vay1ldmVudHNcIiksXG4gICAgX19tZXRhZGF0YShcImRlc2lnbjpwYXJhbXR5cGVzXCIsIFtEZWNhZlJlcXVlc3RDb250ZXh0XSlcbl0sIFdlYmhvb2tFdmVudEFjdGlvbnNDb250cm9sbGVyKTtcbmV4cG9ydCB7IFdlYmhvb2tFdmVudEFjdGlvbnNDb250cm9sbGVyIH07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lZMjl1ZEhKdmJHeGxjbk11YW5NaUxDSnpiM1Z5WTJWU2IyOTBJam9pSWl3aWMyOTFjbU5sY3lJNld5SXVMaTh1TGk4dUxpOXpjbU12ZDJWaWFHOXZhM012WTI5dWRISnZiR3hsY25NdWRITWlYU3dpYm1GdFpYTWlPbHRkTENKdFlYQndhVzVuY3lJNklqczdPenM3T3pzN096czdPenRCUVVGQkxFOUJRVThzUlVGQlJTeFZRVUZWTEVWQlFVVXNTMEZCU3l4RlFVRkZMRWxCUVVrc1JVRkJSU3hOUVVGTkxHZENRVUZuUWl4RFFVRkRPMEZCUTNwRUxFOUJRVThzUlVGQlJTeFZRVUZWTEVWQlFXRXNZMEZCWXl4RlFVRkZMRTFCUVUwc1owSkJRV2RDTEVOQlFVTTdRVUZEZGtVc1QwRkJUeXhGUVVGRkxHVkJRV1VzUlVGQlJTdzBRa0ZCZFVJN1FVRkRha1FzVDBGQlR5eEZRVUZGTEcxQ1FVRnRRaXhGUVVGRkxEaENRVUZ0UWp0QlFVVnFSQ3hQUVVGUExFVkJRMHdzWlVGQlpTeEZRVU5tTEd0Q1FVRnJRaXhGUVVOc1FpeGhRVUZoTEVWQlEySXNiVUpCUVcxQ0xFVkJRMjVDTEcxQ1FVRnRRaXhIUVVOd1FpeE5RVUZOTERCQ1FVRXdRaXhEUVVGRE8wRkJSek5DTEVsQlFVMHNiME5CUVc5RExEUkRRVUV4UXl4TlFVRk5MRzlEUVVGeFF5eFRRVUZSTEdWQlFTdENPMGxCUTNaR0xGbEJRVmtzWVVGQmEwTTdVVUZETlVNc1MwRkJTeXhEUVVGRExHRkJRV0VzUlVGQlJTeHpRMEZCYjBNc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dEpRVU5zUlN4RFFVRkRPMGxCUjBzc1FVRkJUaXhMUVVGTExFTkJRVU1zVlVGQlZTeERRVUZqTEVWQlFWVTdVVUZEZEVNc1RVRkJUU3hGUVVGRkxFZEJRVWNzUlVGQlJTeEhRVUZITEVOQlFVTXNUVUZCVFN4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFVkJRVVVzUlVGQlJTeFpRVUZaTEVWQlFVVXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRemRFTEVsQlFVa3NRMEZCUXl4VlFVRlZMRU5CUTJoQ0xFTkJRVU03VVVGRFJpeE5RVUZOTEVsQlFVa3NSMEZCUnl4VlFVRlZMRU5CUVVNc1VVRkJVU3hEUVVjNVFpeHRRa0ZCYlVJc1EwRkJReXhEUVVGRE8xRkJRM1pDTEUxQlFVMHNUMEZCVHl4SFFVRkhMRTFCUVUwc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eEZRVUZGTEVWQlFVVXNSMEZCUnl4RFFVRkRMRU5CUVVNN1VVRkRla01zVDBGQlR5eERRVUZETEUxQlFVMHNSMEZCUnl4TFFVRkxMRU5CUVVNN1VVRkRka0lzVDBGQlR5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRTlCUVU4c1JVRkJSU3hIUVVGSExFTkJRVU1zUTBGQlF6dEpRVU51UXl4RFFVRkRPMGxCUjBzc1FVRkJUaXhMUVVGTExFTkJRVU1zVlVGQlZTeERRVUZqTEVWQlFWVTdVVUZEZEVNc1RVRkJUU3hGUVVGRkxFZEJRVWNzUlVGQlJTeEhRVUZITEVOQlFVTXNUVUZCVFN4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFVkJRVVVzUlVGQlJTeFpRVUZaTEVWQlFVVXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRemRFTEVsQlFVa3NRMEZCUXl4VlFVRlZMRU5CUTJoQ0xFTkJRVU03VVVGRFJpeE5RVUZOTEVsQlFVa3NSMEZCUnl4VlFVRlZMRU5CUVVNc1VVRkJVU3hEUVVjNVFpeHRRa0ZCYlVJc1EwRkJReXhEUVVGRE8xRkJRM1pDTEUxQlFVMHNUMEZCVHl4SFFVRkhMRTFCUVUwc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eEZRVUZGTEVWQlFVVXNSMEZCUnl4RFFVRkRMRU5CUVVNN1VVRkRla01zVDBGQlR5eERRVUZETEUxQlFVMHNSMEZCUnl4SlFVRkpMRU5CUVVNN1VVRkRkRUlzVDBGQlR5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRTlCUVU4c1JVRkJSU3hIUVVGSExFTkJRVU1zUTBGQlF6dEpRVU51UXl4RFFVRkRPME5CUTBZc1EwRkJRVHRCUVRGQ1R6dEpRVVJNTEVsQlFVa3NRMEZCUXl4blFrRkJaMElzUTBGQlF6dEpRVU5NTEZkQlFVRXNTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGQk96czdPM05GUVZjMVFqdEJRVWRMTzBsQlJFd3NTVUZCU1N4RFFVRkRMR2RDUVVGblFpeERRVUZETzBsQlEwd3NWMEZCUVN4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVUU3T3pzN2MwVkJWelZDTzBGQkwwSlZMRzlEUVVGdlF6dEpRVVJvUkN4VlFVRlZMRU5CUVVNc2RVSkJRWFZDTEVOQlFVTTdjVU5CUlZBc2JVSkJRVzFDTzBkQlJHNURMRzlEUVVGdlF5eERRV2REYUVRN08wRkJSMDBzU1VGQlRTdzJRa0ZCTmtJc2NVTkJRVzVETEUxQlFVMHNOa0pCUVRoQ0xGTkJRVkVzWlVGQkswSTdTVUZEYUVZc1dVRkJXU3hoUVVGclF6dFJRVU0xUXl4TFFVRkxMRU5CUVVNc1lVRkJZU3hGUVVGRkxDdENRVUUyUWl4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRE8wbEJRek5FTEVOQlFVTTdTVUZIU3l4QlFVRk9MRXRCUVVzc1EwRkJReXhOUVVGTkxFTkJRV01zUlVGQlZUdFJRVU5zUXl4TlFVRk5MRVZCUVVVc1IwRkJSeXhGUVVGRkxFZEJRVWNzUTBGQlF5eE5RVUZOTEVsQlFVa3NRMEZCUXl4TlFVRk5MRU5CUVVNc1JVRkJSU3hGUVVGRkxGRkJRVkVzUlVGQlJTeEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTTdVVUZEZWtVc1RVRkJUU3hUUVVGVExFZEJRVWNzVlVGQlZTeERRVUZETEZGQlFWRXNRMEZIYmtNc2EwSkJRV3RDTEVOQlFVTXNRMEZCUXp0UlFVTjBRaXhOUVVGTkxGbEJRVmtzUjBGQlJ5eFZRVUZWTEVOQlFVTXNVVUZCVVN4RFFVZDBReXhsUVVGbExFTkJRVU1zUTBGQlF6dFJRVU51UWl4SlFVRkpMRU5CUVVNN1dVRkRTQ3hKUVVGSkxFdEJRVXNzUTBGQlF6dFpRVU5XTEVsQlFVa3NRMEZCUXp0blFrRkRTQ3hMUVVGTExFZEJRVWNzVFVGQlRTeFRRVUZUTEVOQlFVTXNTVUZCU1N4RFFVRkRMRVZCUVVVc1JVRkJSU3hIUVVGSExFTkJRVU1zUTBGQlF6dFpRVU40UXl4RFFVRkRPMWxCUVVNc1QwRkJUeXhMUVVGTExFVkJRVVVzUTBGQlF6dG5Ra0ZEWml4TlFVRk5MRTFCUVUwc1IwRkJSeXhOUVVGTkxGTkJRVk03Y1VKQlF6TkNMRTFCUVUwc1JVRkJSVHR4UWtGRFVpeExRVUZMTEVOQlFVTXNVMEZCVXl4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNN2NVSkJRMnhETEV0QlFVc3NRMEZCUXl4RFFVRkRMRU5CUVVNN2NVSkJRMUlzVDBGQlR5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMmRDUVVOb1FpeEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRTFCUVUwN2IwSkJRVVVzVFVGQlRTeExRVUZMTEVOQlFVTTdaMEpCUTJoRExFdEJRVXNzUjBGQlJ5eE5RVUZOTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1dVRkRjRUlzUTBGQlF6dFpRVU5FTEVsQlFVa3NWVUZCVlN4SFFVRlZMRVZCUVVVc1EwRkJRenRaUVVNelFpeEpRVUZKTEVOQlFVTTdaMEpCUTBnc1ZVRkJWU3hIUVVGSExFMUJRVTBzYlVKQlFXMUNMRU5CUTNCRExFZEJRVWNzUlVGQlJTeERRVU5JTEZsQlFWazdjVUpCUTFRc1RVRkJUU3hGUVVGRk8zRkNRVU5TTEV0QlFVc3NRMEZCUXl4WlFVRlpMRU5CUVVNc1NVRkJTU3hEUVVGRExGTkJRVk1zUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4TFFVRkxMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU03Y1VKQlEyaEVMRTlCUVU4c1EwRkJReXhYUVVGWExFVkJRVVVzWTBGQll5eERRVUZETEVkQlFVY3NRMEZCUXp0eFFrRkRlRU1zVFVGQlRTeERRVUZETEVsQlFVa3NSVUZCUlN4alFVRmpMRU5CUVVNc1IwRkJSeXhEUVVGRE8zRkNRVU5vUXl4UlFVRlJMRU5CUVVNc1IwRkJSeXhGUVVGRkxFZEJRVWNzUTBGQlF5eEZRVU4yUWl4SFFVRkhMRVZCUTBnc1IwRkJSeXhEUVVOS0xFTkJRVU03V1VGRFNpeERRVUZETzFsQlFVTXNUVUZCVFN4RFFVRkRPMmRDUVVOUUxFbEJRVWtzUTBGQlF6dHZRa0ZEU0N4VlFVRlZMRWRCUVVjc1RVRkJUU3haUVVGWk8zbENRVU0xUWl4TlFVRk5MRVZCUVVVN2VVSkJRMUlzUzBGQlN5eERRVUZETEZsQlFWa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1UwRkJVeXhEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEV0QlFVc3NRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJRenQ1UWtGRGFFUXNUMEZCVHl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8yZENRVU5zUWl4RFFVRkRPMmRDUVVGRExFMUJRVTBzUTBGQlF6dHZRa0ZEVUN4VlFVRlZMRWRCUVVjc1JVRkJSU3hEUVVGRE8yZENRVU5zUWl4RFFVRkRPMWxCUTBnc1EwRkJRenRaUVVORUxFMUJRVTBzUjBGQlJ5eEhRVUZITEVsQlFVa3NTVUZCU1N4RlFVRkZMRU5CUVVNN1dVRkZka0lzUzBGQlN5eE5RVUZOTEZGQlFWRXNTVUZCU1N4VlFVRlZMRVZCUVVVc1EwRkJRenRuUWtGRGJFTXNVVUZCVVN4RFFVRkRMRTFCUVUwc1IwRkJSeXhoUVVGaExFTkJRVU1zVDBGQlR5eERRVUZETzJkQ1FVTjRReXhSUVVGUkxFTkJRVU1zVVVGQlVTeEhRVUZITEVOQlFVTXNRMEZCUXp0blFrRkRkRUlzVVVGQlVTeERRVUZETEdGQlFXRXNSMEZCUnl4SFFVRkhMRU5CUVVNN1owSkJRemRDTEZGQlFWRXNRMEZCUXl4aFFVRmhMRWRCUVVjc1NVRkJWeXhEUVVGRE8yZENRVU55UXl4UlFVRlJMRU5CUVVNc1dVRkJXU3hIUVVGSExGTkJRVk1zUTBGQlF6dG5Ra0ZEYkVNc1VVRkJVU3hEUVVGRExHTkJRV01zUjBGQlJ5eFRRVUZUTEVOQlFVTTdaMEpCUTNCRExGRkJRVkVzUTBGQlF5eFpRVUZaTEVkQlFVY3NVMEZCVXl4RFFVRkRPMWxCUTNCRExFTkJRVU03V1VGRlJDeExRVUZMTEVOQlFVTXNUVUZCVFN4SFFVRkhMR0ZCUVdFc1EwRkJReXhQUVVGUExFTkJRVU03V1VGRGNrTXNTMEZCU3l4RFFVRkRMRzFDUVVGdFFpeEhRVUZITEVOQlFVTXNRMEZCUXp0WlFVTTVRaXhMUVVGTExFTkJRVU1zWjBKQlFXZENMRWRCUVVjc1EwRkJReXhEUVVGRE8xbEJRek5DTEV0QlFVc3NRMEZCUXl4aFFVRmhMRWRCUVVjc1IwRkJSeXhEUVVGRE8xbEJRekZDTEV0QlFVc3NRMEZCUXl4VFFVRlRMRWRCUVVjc1IwRkJSeXhEUVVGRE8xbEJSWFJDTEVsQlFVa3NWVUZCVlN4RFFVRkRMRTFCUVUwc1JVRkJSU3hEUVVGRE8yZENRVU4wUWl4SlFVRkpMRU5CUVVNN2IwSkJRMGdzVFVGQlRTeFpRVUZaTEVOQlFVTXNVMEZCVXl4RFFVTXhRaXhWUVVGVkxFVkJRMVlzUjBGQlJ5eERRVUZETEZGQlFWRXNRMEZCUXl4RlFVRkZMSEZDUVVGeFFpeEZRVUZGTEV0QlFVc3NSVUZCVXl4RFFVRkRMRU5CUTNSRUxFTkJRVU03WjBKQlEwb3NRMEZCUXp0blFrRkJReXhOUVVGTkxFTkJRVU03YjBKQlExQXNORVpCUVRSR08yZENRVU01Uml4RFFVRkRPMWxCUTBnc1EwRkJRenRaUVVORUxFOUJRVThzVTBGQlV5eERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRVZCUVVVc1IwRkJSeXhEUVVGRExFTkJRVU03VVVGRGRFTXNRMEZCUXp0UlFVRkRMRTlCUVU4c1MwRkJTeXhGUVVGRkxFTkJRVU03V1VGRFppeE5RVUZOTEV0QlFVc3NRMEZCUXp0UlFVTmtMRU5CUVVNN1NVRkRTQ3hEUVVGRE8wTkJRMFlzUTBGQlFUdEJRUzlGVHp0SlFVUk1MRWxCUVVrc1EwRkJReXhaUVVGWkxFTkJRVU03U1VGRFRDeFhRVUZCTEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJRVHM3T3pzeVJFRTRSWGhDTzBGQmNFWlZMRFpDUVVFMlFqdEpRVVI2UXl4VlFVRlZMRU5CUVVNc1owSkJRV2RDTEVOQlFVTTdjVU5CUlVFc2JVSkJRVzFDTzBkQlJHNURMRFpDUVVFMlFpeERRWEZHZWtNaUxDSnpiM1Z5WTJWelEyOXVkR1Z1ZENJNld5SnBiWEJ2Y25RZ2V5QkRiMjUwY205c2JHVnlMQ0JRWVhKaGJTd2dVRzl6ZENCOUlHWnliMjBnWENKQWJtVnpkR3B6TDJOdmJXMXZibHdpTzF4dWFXMXdiM0owSUhzZ1VtVndiM05wZEc5eWVTd2dkSGx3WlNCU1pYQnZMQ0JQY21SbGNrUnBjbVZqZEdsdmJpQjlJR1p5YjIwZ1hDSkFaR1ZqWVdZdGRITXZZMjl5WlZ3aU8xeHVhVzF3YjNKMElIc2dSR1ZqWVdaRGIyNTBjbTlzYkdWeUlIMGdabkp2YlNCY0lpNHVMMk52Ym5SeWIyeHNaWEp6WENJN1hHNXBiWEJ2Y25RZ2V5QkVaV05oWmxKbGNYVmxjM1JEYjI1MFpYaDBJSDBnWm5KdmJTQmNJaTR1TDNKbGNYVmxjM1JjSWp0Y2JtbHRjRzl5ZENCN0lFUmxZMkZtVTJWeWRtVnlRM1I0SUgwZ1puSnZiU0JjSWk0dUwyTnZibk4wWVc1MGMxd2lPMXh1YVcxd2IzSjBJSHRjYmlBZ1YyVmlhRzl2YTBSbGJHbDJaWEo1TEZ4dUlDQlhaV0pvYjI5clJYWmxiblJTWldOdmNtUXNYRzRnSUZkbFltaHZiMnRUZEdGMGRYTXNYRzRnSUZkbFltaHZiMnRUZFdKelkzSnBjSFJwYjI0c1hHNGdJR052Ykd4bFkzUlFZV2RsWkZKbGMzVnNkSE1zWEc1OUlHWnliMjBnWENKQVpHVmpZV1l0ZEhNdlptOXlMV2gwZEhBdmFHOXZhM05jSWp0Y2JseHVRRU52Ym5SeWIyeHNaWElvWENKM1pXSm9iMjlyTFhOMVluTmpjbWx3ZEdsdmJuTmNJaWxjYm1WNGNHOXlkQ0JqYkdGemN5QlhaV0pvYjI5clUzVmljMk55YVhCMGFXOXVRV04wYVc5dWMwTnZiblJ5YjJ4c1pYSWdaWGgwWlc1a2N5QkVaV05oWmtOdmJuUnliMnhzWlhJOFJHVmpZV1pUWlhKMlpYSkRkSGcrSUh0Y2JpQWdZMjl1YzNSeWRXTjBiM0lvWTJ4cFpXNTBRMjl1ZEdWNGREb2dSR1ZqWVdaU1pYRjFaWE4wUTI5dWRHVjRkQ2tnZTF4dUlDQWdJSE4xY0dWeUtHTnNhV1Z1ZEVOdmJuUmxlSFFzSUZkbFltaHZiMnRUZFdKelkzSnBjSFJwYjI1QlkzUnBiMjV6UTI5dWRISnZiR3hsY2k1dVlXMWxLVHRjYmlBZ2ZWeHVYRzRnSUVCUWIzTjBLRndpT21sa0wyUmxZV04wYVhaaGRHVmNJaWxjYmlBZ1lYTjVibU1nWkdWaFkzUnBkbUYwWlNoQVVHRnlZVzBvWENKcFpGd2lLU0JwWkRvZ2MzUnlhVzVuS1NCN1hHNGdJQ0FnWTI5dWMzUWdleUJqZEhnZ2ZTQTlJQ2hoZDJGcGRDQjBhR2x6TG14dlowTjBlQ2hiWFN3Z1hDSmtaV0ZqZEdsMllYUmxYQ0lzSUhSeWRXVXBLUzVtYjNJb1hHNGdJQ0FnSUNCMGFHbHpMbVJsWVdOMGFYWmhkR1ZjYmlBZ0lDQXBPMXh1SUNBZ0lHTnZibk4wSUhKbGNHOGdQU0JTWlhCdmMybDBiM0o1TG1admNrMXZaR1ZzUEZ4dUlDQWdJQ0FnVjJWaWFHOXZhMU4xWW5OamNtbHdkR2x2Yml4Y2JpQWdJQ0FnSUZKbGNHODhWMlZpYUc5dmExTjFZbk5qY21sd2RHbHZiajVjYmlBZ0lDQStLRmRsWW1odmIydFRkV0p6WTNKcGNIUnBiMjRwTzF4dUlDQWdJR052Ym5OMElHTjFjbkpsYm5RZ1BTQmhkMkZwZENCeVpYQnZMbkpsWVdRb2FXUXNJR04wZUNrN1hHNGdJQ0FnWTNWeWNtVnVkQzVoWTNScGRtVWdQU0JtWVd4elpUdGNiaUFnSUNCeVpYUjFjbTRnY21Wd2J5NTFjR1JoZEdVb1kzVnljbVZ1ZEN3Z1kzUjRLVHRjYmlBZ2ZWeHVYRzRnSUVCUWIzTjBLRndpT21sa0wzSmxZV04wYVhaaGRHVmNJaWxjYmlBZ1lYTjVibU1nY21WaFkzUnBkbUYwWlNoQVVHRnlZVzBvWENKcFpGd2lLU0JwWkRvZ2MzUnlhVzVuS1NCN1hHNGdJQ0FnWTI5dWMzUWdleUJqZEhnZ2ZTQTlJQ2hoZDJGcGRDQjBhR2x6TG14dlowTjBlQ2hiWFN3Z1hDSnlaV0ZqZEdsMllYUmxYQ0lzSUhSeWRXVXBLUzVtYjNJb1hHNGdJQ0FnSUNCMGFHbHpMbkpsWVdOMGFYWmhkR1ZjYmlBZ0lDQXBPMXh1SUNBZ0lHTnZibk4wSUhKbGNHOGdQU0JTWlhCdmMybDBiM0o1TG1admNrMXZaR1ZzUEZ4dUlDQWdJQ0FnVjJWaWFHOXZhMU4xWW5OamNtbHdkR2x2Yml4Y2JpQWdJQ0FnSUZKbGNHODhWMlZpYUc5dmExTjFZbk5qY21sd2RHbHZiajVjYmlBZ0lDQStLRmRsWW1odmIydFRkV0p6WTNKcGNIUnBiMjRwTzF4dUlDQWdJR052Ym5OMElHTjFjbkpsYm5RZ1BTQmhkMkZwZENCeVpYQnZMbkpsWVdRb2FXUXNJR04wZUNrN1hHNGdJQ0FnWTNWeWNtVnVkQzVoWTNScGRtVWdQU0IwY25WbE8xeHVJQ0FnSUhKbGRIVnliaUJ5WlhCdkxuVndaR0YwWlNoamRYSnlaVzUwTENCamRIZ3BPMXh1SUNCOVhHNTlYRzVjYmtCRGIyNTBjbTlzYkdWeUtGd2lkMlZpYUc5dmF5MWxkbVZ1ZEhOY0lpbGNibVY0Y0c5eWRDQmpiR0Z6Y3lCWFpXSm9iMjlyUlhabGJuUkJZM1JwYjI1elEyOXVkSEp2Ykd4bGNpQmxlSFJsYm1SeklFUmxZMkZtUTI5dWRISnZiR3hsY2p4RVpXTmhabE5sY25abGNrTjBlRDRnZTF4dUlDQmpiMjV6ZEhKMVkzUnZjaWhqYkdsbGJuUkRiMjUwWlhoME9pQkVaV05oWmxKbGNYVmxjM1JEYjI1MFpYaDBLU0I3WEc0Z0lDQWdjM1Z3WlhJb1kyeHBaVzUwUTI5dWRHVjRkQ3dnVjJWaWFHOXZhMFYyWlc1MFFXTjBhVzl1YzBOdmJuUnliMnhzWlhJdWJtRnRaU2s3WEc0Z0lIMWNibHh1SUNCQVVHOXpkQ2hjSWpwcFpDOXlaWEJzWVhsY0lpbGNiaUFnWVhONWJtTWdjbVZ3YkdGNUtFQlFZWEpoYlNoY0ltbGtYQ0lwSUdsa09pQnpkSEpwYm1jcElIdGNiaUFnSUNCamIyNXpkQ0I3SUdOMGVDQjlJRDBnS0dGM1lXbDBJSFJvYVhNdWJHOW5RM1I0S0Z0ZExDQmNJbkpsY0d4aGVWd2lMQ0IwY25WbEtTa3VabTl5S0hSb2FYTXVjbVZ3YkdGNUtUdGNiaUFnSUNCamIyNXpkQ0JsZG1WdWRGSmxjRzhnUFNCU1pYQnZjMmwwYjNKNUxtWnZjazF2WkdWc1BGeHVJQ0FnSUNBZ1YyVmlhRzl2YTBWMlpXNTBVbVZqYjNKa0xGeHVJQ0FnSUNBZ1VtVndienhYWldKb2IyOXJSWFpsYm5SU1pXTnZjbVErWEc0Z0lDQWdQaWhYWldKb2IyOXJSWFpsYm5SU1pXTnZjbVFwTzF4dUlDQWdJR052Ym5OMElHUmxiR2wyWlhKNVVtVndieUE5SUZKbGNHOXphWFJ2Y25rdVptOXlUVzlrWld3OFhHNGdJQ0FnSUNCWFpXSm9iMjlyUkdWc2FYWmxjbmtzWEc0Z0lDQWdJQ0JTWlhCdlBGZGxZbWh2YjJ0RVpXeHBkbVZ5ZVQ1Y2JpQWdJQ0ErS0ZkbFltaHZiMnRFWld4cGRtVnllU2s3WEc0Z0lDQWdkSEo1SUh0Y2JpQWdJQ0FnSUd4bGRDQmxkbVZ1ZER0Y2JpQWdJQ0FnSUhSeWVTQjdYRzRnSUNBZ0lDQWdJR1YyWlc1MElEMGdZWGRoYVhRZ1pYWmxiblJTWlhCdkxuSmxZV1FvYVdRc0lHTjBlQ2s3WEc0Z0lDQWdJQ0I5SUdOaGRHTm9JQ2hsY25KdmNpa2dlMXh1SUNBZ0lDQWdJQ0JqYjI1emRDQmxkbVZ1ZEhNZ1BTQmhkMkZwZENCbGRtVnVkRkpsY0c5Y2JpQWdJQ0FnSUNBZ0lDQXVjMlZzWldOMEtDbGNiaUFnSUNBZ0lDQWdJQ0F1ZDJobGNtVW9aWFpsYm5SU1pYQnZMbUYwZEhJb1hDSnBaRndpS1M1bGNTaHBaQ2twWEc0Z0lDQWdJQ0FnSUNBZ0xteHBiV2wwS0RFcFhHNGdJQ0FnSUNBZ0lDQWdMbVY0WldOMWRHVW9ZM1I0S1R0Y2JpQWdJQ0FnSUNBZ2FXWWdLQ0ZsZG1WdWRITXViR1Z1WjNSb0tTQjBhSEp2ZHlCbGNuSnZjanRjYmlBZ0lDQWdJQ0FnWlhabGJuUWdQU0JsZG1WdWRITmJNRjA3WEc0Z0lDQWdJQ0I5WEc0Z0lDQWdJQ0JzWlhRZ1pHVnNhWFpsY21sbGN6b2dZVzU1VzEwZ1BTQmJYVHRjYmlBZ0lDQWdJSFJ5ZVNCN1hHNGdJQ0FnSUNBZ0lHUmxiR2wyWlhKcFpYTWdQU0JoZDJGcGRDQmpiMnhzWldOMFVHRm5aV1JTWlhOMWJIUnpLRnh1SUNBZ0lDQWdJQ0FnSUNncElEMCtYRzRnSUNBZ0lDQWdJQ0FnSUNCa1pXeHBkbVZ5ZVZKbGNHOWNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0xuTmxiR1ZqZENncFhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUM1M2FHVnlaU2hrWld4cGRtVnllVkpsY0c4dVlYUjBjaWhjSW1WMlpXNTBTV1JjSWlrdVpYRW9aWFpsYm5RdWFXUXBLVnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQXViM0prWlhKQ2VTaGNJbU55WldGMFpXUkJkRndpTENCUGNtUmxja1JwY21WamRHbHZiaTVCVTBNcFhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUM1MGFHVnVRbmtvWENKcFpGd2lMQ0JQY21SbGNrUnBjbVZqZEdsdmJpNUJVME1wWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQzV3WVdkcGJtRjBaU2d5TlRBc0lHTjBlQ2tzWEc0Z0lDQWdJQ0FnSUNBZ01qVXdMRnh1SUNBZ0lDQWdJQ0FnSUdOMGVGeHVJQ0FnSUNBZ0lDQXBPMXh1SUNBZ0lDQWdmU0JqWVhSamFDQjdYRzRnSUNBZ0lDQWdJSFJ5ZVNCN1hHNGdJQ0FnSUNBZ0lDQWdaR1ZzYVhabGNtbGxjeUE5SUdGM1lXbDBJR1JsYkdsMlpYSjVVbVZ3YjF4dUlDQWdJQ0FnSUNBZ0lDQWdMbk5sYkdWamRDZ3BYRzRnSUNBZ0lDQWdJQ0FnSUNBdWQyaGxjbVVvWkdWc2FYWmxjbmxTWlhCdkxtRjBkSElvWENKbGRtVnVkRWxrWENJcExtVnhLR1YyWlc1MExtbGtLU2xjYmlBZ0lDQWdJQ0FnSUNBZ0lDNWxlR1ZqZFhSbEtHTjBlQ2s3WEc0Z0lDQWdJQ0FnSUgwZ1kyRjBZMmdnZTF4dUlDQWdJQ0FnSUNBZ0lHUmxiR2wyWlhKcFpYTWdQU0JiWFR0Y2JpQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ1kyOXVjM1FnYm05M0lEMGdibVYzSUVSaGRHVW9LVHRjYmx4dUlDQWdJQ0FnWm05eUlDaGpiMjV6ZENCa1pXeHBkbVZ5ZVNCdlppQmtaV3hwZG1WeWFXVnpLU0I3WEc0Z0lDQWdJQ0FnSUdSbGJHbDJaWEo1TG5OMFlYUjFjeUE5SUZkbFltaHZiMnRUZEdGMGRYTXVVRVZPUkVsT1J6dGNiaUFnSUNBZ0lDQWdaR1ZzYVhabGNua3VZWFIwWlcxd2RITWdQU0F3TzF4dUlDQWdJQ0FnSUNCa1pXeHBkbVZ5ZVM1dVpYaDBRWFIwWlcxd2RFRjBJRDBnYm05M08xeHVJQ0FnSUNBZ0lDQmtaV3hwZG1WeWVTNXNZWE4wUVhSMFpXMXdkRUYwSUQwZ2JuVnNiQ0JoY3lCaGJuazdYRzRnSUNBZ0lDQWdJR1JsYkdsMlpYSjVMbVZ5Y205eVRXVnpjMkZuWlNBOUlIVnVaR1ZtYVc1bFpEdGNiaUFnSUNBZ0lDQWdaR1ZzYVhabGNua3VjbVZ6Y0c5dWMyVlRkR0YwZFhNZ1BTQjFibVJsWm1sdVpXUTdYRzRnSUNBZ0lDQWdJR1JsYkdsMlpYSjVMbkpsYzNCdmJuTmxRbTlrZVNBOUlIVnVaR1ZtYVc1bFpEdGNiaUFnSUNBZ0lIMWNibHh1SUNBZ0lDQWdaWFpsYm5RdWMzUmhkSFZ6SUQwZ1YyVmlhRzl2YTFOMFlYUjFjeTVRUlU1RVNVNUhPMXh1SUNBZ0lDQWdaWFpsYm5RdVpHVnNhWFpsY21sbGMxTjFZMk5sWldSbFpDQTlJREE3WEc0Z0lDQWdJQ0JsZG1WdWRDNWtaV3hwZG1WeWFXVnpSbUZwYkdWa0lEMGdNRHRjYmlBZ0lDQWdJR1YyWlc1MExtNWxlSFJCZEhSbGJYQjBRWFFnUFNCdWIzYzdYRzRnSUNBZ0lDQmxkbVZ1ZEM1MWNHUmhkR1ZrUVhRZ1BTQnViM2M3WEc1Y2JpQWdJQ0FnSUdsbUlDaGtaV3hwZG1WeWFXVnpMbXhsYm1kMGFDa2dlMXh1SUNBZ0lDQWdJQ0IwY25rZ2UxeHVJQ0FnSUNBZ0lDQWdJR0YzWVdsMElHUmxiR2wyWlhKNVVtVndieTUxY0dSaGRHVkJiR3dvWEc0Z0lDQWdJQ0FnSUNBZ0lDQmtaV3hwZG1WeWFXVnpMRnh1SUNBZ0lDQWdJQ0FnSUNBZ1kzUjRMbTkyWlhKeWFXUmxLSHNnWVhCd2JIbFZjR1JoZEdWV1lXeHBaR0YwYVc5dU9pQm1ZV3h6WlNCOUlHRnpJR0Z1ZVNsY2JpQWdJQ0FnSUNBZ0lDQXBPMXh1SUNBZ0lDQWdJQ0I5SUdOaGRHTm9JSHRjYmlBZ0lDQWdJQ0FnSUNBdkx5QlNaWEJzWVhrZ2MzUnBiR3dnY21WelpYUnpJSFJvWlNCbGRtVnVkQ0J6ZEdGMFpTQmxkbVZ1SUdsbUlHSjFiR3NnWkdWc2FYWmxjbmtnZFhCa1lYUmxjeUJoY21VZ2JtOTBJSEYxWlhKNVlXSnNaU0JvWlhKbExseHVJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQjlYRzRnSUNBZ0lDQnlaWFIxY200Z1pYWmxiblJTWlhCdkxuVndaR0YwWlNobGRtVnVkQ3dnWTNSNEtUdGNiaUFnSUNCOUlHTmhkR05vSUNobGNuSnZjaWtnZTF4dUlDQWdJQ0FnZEdoeWIzY2daWEp5YjNJN1hHNGdJQ0FnZlZ4dUlDQjlYRzU5WEc0aVhYMD0iXX0=
|
|
145
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbGxlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvd2ViaG9va3MvY29udHJvbGxlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxVQUFVLEVBQWEsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSw0QkFBdUI7QUFDakQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLDhCQUFtQjtBQUVqRCxPQUFPLEVBQ0wsZUFBZSxFQUNmLGtCQUFrQixFQUNsQixhQUFhLEVBQ2IsbUJBQW1CLEVBQ25CLG1CQUFtQixHQUNwQixNQUFNLDBCQUEwQixDQUFDO0FBRzNCLElBQU0sb0NBQW9DLDRDQUExQyxNQUFNLG9DQUFxQyxTQUFRLGVBQStCO0lBQ3ZGLFlBQVksYUFBa0M7UUFDNUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxzQ0FBb0MsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBR0ssQUFBTixLQUFLLENBQUMsVUFBVSxDQUFjLEVBQVU7UUFDdEMsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQzdELElBQUksQ0FBQyxVQUFVLENBQ2hCLENBQUM7UUFDRixNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsUUFBUSxDQUc5QixtQkFBbUIsQ0FBQyxDQUFDO1FBQ3ZCLE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDekMsT0FBTyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDdkIsT0FBTyxJQUFJLENB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R0FBRyxHQUFHLENBQUM7UUFFdEIsSUFBSSxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDO2dCQUNILE1BQU0sWUFBWSxDQUFDLFNBQVMsQ0FDMUIsVUFBVSxFQUNWLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxxQkFBcUIsRUFBRSxLQUFLLEVBQVMsQ0FBQyxDQUN0RCxDQUFDO1lBQ0osQ0FBQztZQUFDLE1BQU0sQ0FBQztnQkFDUCw0RkFBNEY7WUFDOUYsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7Q0FDRixDQUFBO0FBM0VPO0lBREwsSUFBSSxDQUFDLFlBQVksQ0FBQztJQUNMLFdBQUEsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFBOzs7OzJEQTBFeEI7QUFoRlUsNkJBQTZCO0lBRHpDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQztxQ0FFQSxtQkFBbUI7R0FEbkMsNkJBQTZCLENBaUZ6QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRyb2xsZXIsIFBhcmFtLCBQb3N0IH0gZnJvbSBcIkBuZXN0anMvY29tbW9uXCI7XG5pbXBvcnQgeyBSZXBvc2l0b3J5LCB0eXBlIFJlcG8sIE9yZGVyRGlyZWN0aW9uIH0gZnJvbSBcIkBkZWNhZi10cy9jb3JlXCI7XG5pbXBvcnQgeyBEZWNhZkNvbnRyb2xsZXIgfSBmcm9tIFwiLi4vY29udHJvbGxlcnNcIjtcbmltcG9ydCB7IERlY2FmUmVxdWVzdENvbnRleHQgfSBmcm9tIFwiLi4vcmVxdWVzdFwiO1xuaW1wb3J0IHsgRGVjYWZTZXJ2ZXJDdHggfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQge1xuICBXZWJob29rRGVsaXZlcnksXG4gIFdlYmhvb2tFdmVudFJlY29yZCxcbiAgV2ViaG9va1N0YXR1cyxcbiAgV2ViaG9va1N1YnNjcmlwdGlvbixcbiAgY29sbGVjdFBhZ2VkUmVzdWx0cyxcbn0gZnJvbSBcIkBkZWNhZi10cy9mb3ItaHR0cC9ob29rc1wiO1xuXG5AQ29udHJvbGxlcihcIndlYmhvb2stc3Vic2NyaXB0aW9uc1wiKVxuZXhwb3J0IGNsYXNzIFdlYmhvb2tTdWJzY3JpcHRpb25BY3Rpb25zQ29udHJvbGxlciBleHRlbmRzIERlY2FmQ29udHJvbGxlcjxEZWNhZlNlcnZlckN0eD4ge1xuICBjb25zdHJ1Y3RvcihjbGllbnRDb250ZXh0OiBEZWNhZlJlcXVlc3RDb250ZXh0KSB7XG4gICAgc3VwZXIoY2xpZW50Q29udGV4dCwgV2ViaG9va1N1YnNjcmlwdGlvbkFjdGlvbnNDb250cm9sbGVyLm5hbWUpO1xuICB9XG5cbiAgQFBvc3QoXCI6aWQvZGVhY3RpdmF0ZVwiKVxuICBhc3luYyBkZWFjdGl2YXRlKEBQYXJhbShcImlkXCIpIGlkOiBzdHJpbmcpIHtcbiAgICBjb25zdCB7IGN0eCB9ID0gKGF3YWl0IHRoaXMubG9nQ3R4KFtdLCBcImRlYWN0aXZhdGVcIiwgdHJ1ZSkpLmZvcihcbiAgICAgIHRoaXMuZGVhY3RpdmF0ZVxuICAgICk7XG4gICAgY29uc3QgcmVwbyA9IFJlcG9zaXRvcnkuZm9yTW9kZWw8XG4gICAgICBXZWJob29rU3Vic2NyaXB0aW9uLFxuICAgICAgUmVwbzxXZWJob29rU3Vic2NyaXB0aW9uPlxuICAgID4oV2ViaG9va1N1YnNjcmlwdGlvbik7XG4gICAgY29uc3QgY3VycmVudCA9IGF3YWl0IHJlcG8ucmVhZChpZCwgY3R4KTtcbiAgICBjdXJyZW50LmFjdGl2ZSA9IGZhbHNlO1xuICAgIHJldHVybiByZXBvLnVwZGF0ZShjdXJyZW50LCBjdHgpO1xuICB9XG5cbiAgQFBvc3QoXCI6aWQvcmVhY3RpdmF0ZVwiKVxuICBhc3luYyByZWFjdGl2YXRlKEBQYXJhbShcImlkXCIpIGlkOiBzdHJpbmcpIHtcbiAgICBjb25zdCB7IGN0eCB9ID0gKGF3YWl0IHRoaXMubG9nQ3R4KFtdLCBcInJlYWN0aXZhdGVcIiwgdHJ1ZSkpLmZvcihcbiAgICAgIHRoaXMucmVhY3RpdmF0ZVxuICAgICk7XG4gICAgY29uc3QgcmVwbyA9IFJlcG9zaXRvcnkuZm9yTW9kZWw8XG4gICAgICBXZWJob29rU3Vic2NyaXB0aW9uLFxuICAgICAgUmVwbzxXZWJob29rU3Vic2NyaXB0aW9uPlxuICAgID4oV2ViaG9va1N1YnNjcmlwdGlvbik7XG4gICAgY29uc3QgY3VycmVudCA9IGF3YWl0IHJlcG8ucmVhZChpZCwgY3R4KTtcbiAgICBjdXJyZW50LmFjdGl2ZSA9IHRydWU7XG4gICAgcmV0dXJuIHJlcG8udXBkYXRlKGN1cnJlbnQsIGN0eCk7XG4gIH1cbn1cblxuQENvbnRyb2xsZXIoXCJ3ZWJob29rLWV2ZW50c1wiKVxuZXhwb3J0IGNsYXNzIFdlYmhvb2tFdmVudEFjdGlvbnNDb250cm9sbGVyIGV4dGVuZHMgRGVjYWZDb250cm9sbGVyPERlY2FmU2VydmVyQ3R4PiB7XG4gIGNvbnN0cnVjdG9yKGNsaWVudENvbnRleHQ6IERlY2FmUmVxdWVzdENvbnRleHQpIHtcbiAgICBzdXBlcihjbGllbnRDb250ZXh0LCBXZWJob29rRXZlbnRBY3Rpb25zQ29udHJvbGxlci5uYW1lKTtcbiAgfVxuXG4gIEBQb3N0KFwiOmlkL3JlcGxheVwiKVxuICBhc3luYyByZXBsYXkoQFBhcmFtKFwiaWRcIikgaWQ6IHN0cmluZykge1xuICAgIGNvbnN0IHsgY3R4IH0gPSAoYXdhaXQgdGhpcy5sb2dDdHgoW10sIFwicmVwbGF5XCIsIHRydWUpKS5mb3IodGhpcy5yZXBsYXkpO1xuICAgIGNvbnN0IGV2ZW50UmVwbyA9IFJlcG9zaXRvcnkuZm9yTW9kZWw8XG4gICAgICBXZWJob29rRXZlbnRSZWNvcmQsXG4gICAgICBSZXBvPFdlYmhvb2tFdmVudFJlY29yZD5cbiAgICA+KFdlYmhvb2tFdmVudFJlY29yZCk7XG4gICAgY29uc3QgZGVsaXZlcnlSZXBvID0gUmVwb3NpdG9yeS5mb3JNb2RlbDxcbiAgICAgIFdlYmhvb2tEZWxpdmVyeSxcbiAgICAgIFJlcG88V2ViaG9va0RlbGl2ZXJ5PlxuICAgID4oV2ViaG9va0RlbGl2ZXJ5KTtcbiAgICBsZXQgZXZlbnQ7XG4gICAgdHJ5IHtcbiAgICAgIGV2ZW50ID0gYXdhaXQgZXZlbnRSZXBvLnJlYWQoaWQsIGN0eCk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnN0IGV2ZW50cyA9IGF3YWl0IGV2ZW50UmVwb1xuICAgICAgICAuc2VsZWN0KClcbiAgICAgICAgLndoZXJlKGV2ZW50UmVwby5hdHRyKFwiaWRcIikuZXEoaWQpKVxuICAgICAgICAubGltaXQoMSlcbiAgICAgICAgLmV4ZWN1dGUoY3R4KTtcbiAgICAgIGlmICghZXZlbnRzLmxlbmd0aCkgdGhyb3cgZXJyb3I7XG4gICAgICBldmVudCA9IGV2ZW50c1swXTtcbiAgICB9XG4gICAgbGV0IGRlbGl2ZXJpZXM6IGFueVtdID0gW107XG4gICAgdHJ5IHtcbiAgICAgIGRlbGl2ZXJpZXMgPSBhd2FpdCBjb2xsZWN0UGFnZWRSZXN1bHRzKFxuICAgICAgICAoKSA9PlxuICAgICAgICAgIGRlbGl2ZXJ5UmVwb1xuICAgICAgICAgICAgLnNlbGVjdCgpXG4gICAgICAgICAgICAud2hlcmUoZGVsaXZlcnlSZXBvLmF0dHIoXCJldmVudElkXCIpLmVxKGV2ZW50LmlkKSlcbiAgICAgICAgICAgIC5vcmRlckJ5KFwiY3JlYXRlZEF0XCIsIE9yZGVyRGlyZWN0aW9uLkFTQylcbiAgICAgICAgICAgIC50aGVuQnkoXCJpZFwiLCBPcmRlckRpcmVjdGlvbi5BU0MpXG4gICAgICAgICAgICAucGFnaW5hdGUoMjUwLCBjdHgpLFxuICAgICAgICAyNTAsXG4gICAgICAgIGN0eFxuICAgICAgKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGRlbGl2ZXJpZXMgPSBhd2FpdCBkZWxpdmVyeVJlcG9cbiAgICAgICAgICAuc2VsZWN0KClcbiAgICAgICAgICAud2hlcmUoZGVsaXZlcnlSZXBvLmF0dHIoXCJldmVudElkXCIpLmVxKGV2ZW50LmlkKSlcbiAgICAgICAgICAuZXhlY3V0ZShjdHgpO1xuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIGRlbGl2ZXJpZXMgPSBbXTtcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3Qgbm93ID0gbmV3IERhdGUoKTtcblxuICAgIGZvciAoY29uc3QgZGVsaXZlcnkgb2YgZGVsaXZlcmllcykge1xuICAgICAgZGVsaXZlcnkuc3RhdHVzID0gV2ViaG9va1N0YXR1cy5QRU5ESU5HO1xuICAgICAgZGVsaXZlcnkuYXR0ZW1wdHMgPSAwO1xuICAgICAgZGVsaXZlcnkubmV4dEF0dGVtcHRBdCA9IG5vdztcbiAgICAgIGRlbGl2ZXJ5Lmxhc3RBdHRlbXB0QXQgPSBudWxsIGFzIGFueTtcbiAgICAgIGRlbGl2ZXJ5LmVycm9yTWVzc2FnZSA9IHVuZGVmaW5lZDtcbiAgICAgIGRlbGl2ZXJ5LnJlc3BvbnNlU3RhdHVzID0gdW5kZWZpbmVkO1xuICAgICAgZGVsaXZlcnkucmVzcG9uc2VCb2R5ID0gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGV2ZW50LnN0YXR1cyA9IFdlYmhvb2tTdGF0dXMuUEVORElORztcbiAgICBldmVudC5kZWxpdmVyaWVzU3VjY2VlZGVkID0gMDtcbiAgICBldmVudC5kZWxpdmVyaWVzRmFpbGVkID0gMDtcbiAgICBldmVudC5uZXh0QXR0ZW1wdEF0ID0gbm93O1xuICAgIGV2ZW50LnVwZGF0ZWRBdCA9IG5vdztcblxuICAgIGlmIChkZWxpdmVyaWVzLmxlbmd0aCkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgZGVsaXZlcnlSZXBvLnVwZGF0ZUFsbChcbiAgICAgICAgICBkZWxpdmVyaWVzLFxuICAgICAgICAgIGN0eC5vdmVycmlkZSh7IGFwcGx5VXBkYXRlVmFsaWRhdGlvbjogZmFsc2UgfSBhcyBhbnkpXG4gICAgICAgICk7XG4gICAgICB9IGNhdGNoIHtcbiAgICAgICAgLy8gUmVwbGF5IHN0aWxsIHJlc2V0cyB0aGUgZXZlbnQgc3RhdGUgZXZlbiBpZiBidWxrIGRlbGl2ZXJ5IHVwZGF0ZXMgYXJlIG5vdCBxdWVyeWFibGUgaGVyZS5cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGV2ZW50UmVwby51cGRhdGUoZXZlbnQsIGN0eCk7XG4gIH1cbn1cbiJdfQ==
|
|
146
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbGxlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJjb250cm9sbGVycy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFJLFVBQVUsR0FBRyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksVUFBVSxVQUFVLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxJQUFJO0lBQ2pGLElBQUksQ0FBQyxHQUFHLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDN0gsSUFBSSxPQUFPLE9BQU8sS0FBSyxRQUFRLElBQUksT0FBTyxPQUFPLENBQUMsUUFBUSxLQUFLLFVBQVU7UUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQzs7UUFDMUgsS0FBSyxJQUFJLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRTtZQUFFLElBQUksQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUM7Z0JBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsSixPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDbEUsQ0FBQyxDQUFDO0FBQ0YsSUFBSSxVQUFVLEdBQUcsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLFVBQVUsQ0FBQyxFQUFFLENBQUM7SUFDeEQsSUFBSSxPQUFPLE9BQU8sS0FBSyxRQUFRLElBQUksT0FBTyxPQUFPLENBQUMsUUFBUSxLQUFLLFVBQVU7UUFBRSxPQUFPLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQzdHLENBQUMsQ0FBQztBQUNGLElBQUksT0FBTyxHQUFHLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxVQUFVLFVBQVUsRUFBRSxTQUFTO0lBQ25FLE9BQU8sVUFBVSxNQUFNLEVBQUUsR0FBRyxJQUFJLFNBQVMsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBQ3pFLENBQUMsQ0FBQztBQUNGLElBQUksc0NBQXNDLEVBQUUsK0JBQStCLENBQUM7QUFDNUUsMkNBQXlEO0FBQ3pELHlDQUE0RDtBQUM1RCx3REFBc0Q7QUFDdEQsb0RBQTREO0FBQzVELG9EQUF5STtBQUN6SSxJQUFJLG9DQUFvQyxHQUFHLHNDQUFzQyxHQUFHLE1BQU0sb0NBQXFDLFNBQVEsZ0NBQWU7SUFDbEosWUFBWSxhQUFhO1FBQ3JCLEtBQUssQ0FBQyxhQUFhLEVBQUUsc0NBQXNDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUNELEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRTtRQUNmLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNqRixNQUFNLElBQUksR0FBRyxpQkFBVSxDQUFDLFFBQVEsQ0FBQywyQkFBbUIsQ0FBQyxDQUFDO1FBQ3RELE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDekMsT0FBTyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDdkIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBQ0QsS0FBSyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1FBQ2YsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2pGLE1BQU0sSUFBSSxHQUFHLGlCQUFVLENBQUMsUUFBUSxDQUFDLDJCQUFtQixDQUFDLENBQUM7UUFDdEQsTUFBTSxPQUFPLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN6QyxPQUFPLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUN0QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7Q0FDSixDQUFDO0FBbUJPLG9GQUFvQztBQWxCN0MsVUFBVSxDQUFDO0lBQ1AsSUFBQSxhQUFJLEVBQUMsZ0JBQWdCLENBQUM7SUFDdEIsT0FBTyxDQUFDLENBQUMsRUFBRSxJQUFBLGNBQUssRUFBQyxJQUFJLENBQUMsQ0FBQztJQUN2QixVQUFVLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQztJQUNuQyxVQUFVLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QyxVQUFVLENBQUMsbUJBQW1CLEVBQUUsT0FBTyxDQUFDO0NBQzNDLEVBQUUsb0NBQW9DLENBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxJQUFJLENBQUMsQ0FBQztBQUN2RSxVQUFVLENBQUM7SUFDUCxJQUFBLGFBQUksRUFBQyxnQkFBZ0IsQ0FBQztJQUN0QixPQUFPLENBQUMsQ0FBQyxFQUFFLElBQUEsY0FBSyxFQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZCLFVBQVUsQ0FBQyxhQUFhLEVBQUUsUUFBUSxDQUFDO0lBQ25DLFVBQVUsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pDLFVBQVUsQ0FBQyxtQkFBbUIsRUFBRSxPQUFPLENBQUM7Q0FDM0MsRUFBRSxvQ0FBb0MsQ0FBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQ3ZFLCtDQUFBLG9DQUFvQyxHQUFHLHNDQUFzQyxHQUFHLFVBQVUsQ0FBQztJQUN2RixJQUFBLG1CQUFVLEVBQUMsdUJBQXVCLENBQUM7SUFDbkMsVUFBVSxDQUFDLG1CQUFtQixFQUFFLENBQUMsOEJBQW1CLENBQUMsQ0FBQztDQUN6RCxFQUFFLG9DQUFvQyxDQUFDLENBQUM7QUFFekMsSUFBSSw2QkFBNkIsR0FBRywrQkFBK0IsR0FBRyxNQUFNLDZCQUE4QixTQUFRLGdDQUFlO0lBQzdILFlBQVksYUFBYTtRQUNyQixLQUFLLENBQUMsYUFBYSxFQUFFLCtCQUErQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFDRCxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUU7UUFDWCxNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDekUsTUFBTSxTQUFTLEdBQUcsaUJBQVUsQ0FBQyxRQUFRLENBQUMsMEJBQWtCLENBQUMsQ0FBQztRQUMxRCxNQUFNLFlBQVksR0FBRyxpQkFBVSxDQUFDLFFBQVEsQ0FBQyx1QkFBZSxDQUFDLENBQUM7UUFDMUQsSUFBSSxLQUFLLENBQUM7UUFDVixJQUFJLENBQUM7WUFDRCxLQUFLLEdBQUcsTUFBTSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMxQyxDQUFDO1FBQ0QsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNYLE1BQU0sTUFBTSxHQUFHLE1BQU0sU0FBUztpQkFDekIsTUFBTSxFQUFFO2lCQUNSLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztpQkFDbEMsS0FBSyxDQUFDLENBQUMsQ0FBQztpQkFDUixPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNO2dCQUNkLE1BQU0sS0FBSyxDQUFDO1lBQ2hCLEtBQUssR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEIsQ0FBQztRQUNELElBQUksVUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUM7WUFDRCxVQUFVLEdBQUcsTUFBTSxJQUFBLDJCQUFtQixFQUFDLEdBQUcsRUFBRSxDQUFDLFlBQVk7aUJBQ3BELE1BQU0sRUFBRTtpQkFDUixLQUFLLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2lCQUNoRCxPQUFPLENBQUMsV0FBVyxFQUFFLHFCQUFjLENBQUMsR0FBRyxDQUFDO2lCQUN4QyxNQUFNLENBQUMsSUFBSSxFQUFFLHFCQUFjLENBQUMsR0FBRyxDQUFDO2lCQUNoQyxRQUFRLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN2QyxDQUFDO1FBQ0QsTUFBTSxDQUFDO1lBQ0gsSUFBSSxDQUFDO2dCQUNELFVBQVUsR0FBRyxNQUFNLFlBQVk7cUJBQzFCLE1BQU0sRUFBRTtxQkFDUixLQUFLLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO3FCQUNoRCxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDdEIsQ0FBQztZQUNELE1BQU0sQ0FBQztnQkFDSCxVQUFVLEdBQUcsRUFBRSxDQUFDO1lBQ3BCLENBQUM7UUFDTCxDQUFDO1FBQ0QsTUFBTSxHQUFHLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN2QixLQUFLLE1BQU0sUUFBUSxJQUFJLFVBQVUsRUFBRSxDQUFDO1lBQ2hDLFFBQVEsQ0FBQyxNQUFNLEdBQUcscUJBQWEsQ0FBQyxPQUFPLENBQUM7WUFDeEMsUUFBUSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7WUFDdEIsUUFBUSxDQUFDLGFBQWEsR0FBRyxHQUFHLENBQUM7WUFDN0IsUUFBUSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7WUFDOUIsUUFBUSxDQUFDLFlBQVksR0FBRyxTQUFTLENBQUM7WUFDbEMsUUFBUSxDQUFDLGNBQWMsR0FBRyxTQUFTLENBQUM7WUFDcEMsUUFBUSxDQUFDLFlBQVksR0FBRyxTQUFTLENBQUM7UUFDdEMsQ0FBQztRQUNELEtBQUssQ0FBQyxNQUFNLEdBQUcscUJBQWEsQ0FBQyxPQUFPLENBQUM7UUFDckMsS0FBSyxDQUFDLG1CQUFtQixHQUFHLENBQUMsQ0FBQztRQUM5QixLQUFLLENBQUMsZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDO1FBQzNCLEtBQUssQ0FBQyxhQUFhLEdBQUcsR0FBRyxDQUFDO1FBQzFCLEtBQUssQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDO1FBQ3RCLElBQUksVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQztnQkFDRCxNQUFNLFlBQVksQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxxQkFBcUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDN0YsQ0FBQztZQUNELE1BQU0sQ0FBQztnQkFDSCw0RkFBNEY7WUFDaEcsQ0FBQztRQUNMLENBQUM7UUFDRCxPQUFPLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7Q0FDSixDQUFDO0FBWU8sc0VBQTZCO0FBWHRDLFVBQVUsQ0FBQztJQUNQLElBQUEsYUFBSSxFQUFDLFlBQVksQ0FBQztJQUNsQixPQUFPLENBQUMsQ0FBQyxFQUFFLElBQUEsY0FBSyxFQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZCLFVBQVUsQ0FBQyxhQUFhLEVBQUUsUUFBUSxDQUFDO0lBQ25DLFVBQVUsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pDLFVBQVUsQ0FBQyxtQkFBbUIsRUFBRSxPQUFPLENBQUM7Q0FDM0MsRUFBRSw2QkFBNkIsQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQzVELHdDQUFBLDZCQUE2QixHQUFHLCtCQUErQixHQUFHLFVBQVUsQ0FBQztJQUN6RSxJQUFBLG1CQUFVLEVBQUMsZ0JBQWdCLENBQUM7SUFDNUIsVUFBVSxDQUFDLG1CQUFtQixFQUFFLENBQUMsOEJBQW1CLENBQUMsQ0FBQztDQUN6RCxFQUFFLDZCQUE2QixDQUFDLENBQUM7QUFFbEMsa3NWQUFrc1YiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgX19kZWNvcmF0ZSA9ICh0aGlzICYmIHRoaXMuX19kZWNvcmF0ZSkgfHwgZnVuY3Rpb24gKGRlY29yYXRvcnMsIHRhcmdldCwga2V5LCBkZXNjKSB7XG4gICAgdmFyIGMgPSBhcmd1bWVudHMubGVuZ3RoLCByID0gYyA8IDMgPyB0YXJnZXQgOiBkZXNjID09PSBudWxsID8gZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodGFyZ2V0LCBrZXkpIDogZGVzYywgZDtcbiAgICBpZiAodHlwZW9mIFJlZmxlY3QgPT09IFwib2JqZWN0XCIgJiYgdHlwZW9mIFJlZmxlY3QuZGVjb3JhdGUgPT09IFwiZnVuY3Rpb25cIikgciA9IFJlZmxlY3QuZGVjb3JhdGUoZGVjb3JhdG9ycywgdGFyZ2V0LCBrZXksIGRlc2MpO1xuICAgIGVsc2UgZm9yICh2YXIgaSA9IGRlY29yYXRvcnMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIGlmIChkID0gZGVjb3JhdG9yc1tpXSkgciA9IChjIDwgMyA/IGQocikgOiBjID4gMyA/IGQodGFyZ2V0LCBrZXksIHIpIDogZCh0YXJnZXQsIGtleSkpIHx8IHI7XG4gICAgcmV0dXJuIGMgPiAzICYmIHIgJiYgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwga2V5LCByKSwgcjtcbn07XG52YXIgX19tZXRhZGF0YSA9ICh0aGlzICYmIHRoaXMuX19tZXRhZGF0YSkgfHwgZnVuY3Rpb24gKGssIHYpIHtcbiAgICBpZiAodHlwZW9mIFJlZmxlY3QgPT09IFwib2JqZWN0XCIgJiYgdHlwZW9mIFJlZmxlY3QubWV0YWRhdGEgPT09IFwiZnVuY3Rpb25cIikgcmV0dXJuIFJlZmxlY3QubWV0YWRhdGEoaywgdik7XG59O1xudmFyIF9fcGFyYW0gPSAodGhpcyAmJiB0aGlzLl9fcGFyYW0pIHx8IGZ1bmN0aW9uIChwYXJhbUluZGV4LCBkZWNvcmF0b3IpIHtcbiAgICByZXR1cm4gZnVuY3Rpb24gKHRhcmdldCwga2V5KSB7IGRlY29yYXRvcih0YXJnZXQsIGtleSwgcGFyYW1JbmRleCk7IH1cbn07XG52YXIgV2ViaG9va1N1YnNjcmlwdGlvbkFjdGlvbnNDb250cm9sbGVyXzEsIFdlYmhvb2tFdmVudEFjdGlvbnNDb250cm9sbGVyXzE7XG5pbXBvcnQgeyBDb250cm9sbGVyLCBQYXJhbSwgUG9zdCB9IGZyb20gXCJAbmVzdGpzL2NvbW1vblwiO1xuaW1wb3J0IHsgUmVwb3NpdG9yeSwgT3JkZXJEaXJlY3Rpb24gfSBmcm9tIFwiQGRlY2FmLXRzL2NvcmVcIjtcbmltcG9ydCB7IERlY2FmQ29udHJvbGxlciB9IGZyb20gXCIuLy4uL2NvbnRyb2xsZXJzLmpzXCI7XG5pbXBvcnQgeyBEZWNhZlJlcXVlc3RDb250ZXh0IH0gZnJvbSBcIi4vLi4vcmVxdWVzdC9pbmRleC5qc1wiO1xuaW1wb3J0IHsgV2ViaG9va0RlbGl2ZXJ5LCBXZWJob29rRXZlbnRSZWNvcmQsIFdlYmhvb2tTdGF0dXMsIFdlYmhvb2tTdWJzY3JpcHRpb24sIGNvbGxlY3RQYWdlZFJlc3VsdHMsIH0gZnJvbSBcIkBkZWNhZi10cy9mb3ItaHR0cC9ob29rc1wiO1xubGV0IFdlYmhvb2tTdWJzY3JpcHRpb25BY3Rpb25zQ29udHJvbGxlciA9IFdlYmhvb2tTdWJzY3JpcHRpb25BY3Rpb25zQ29udHJvbGxlcl8xID0gY2xhc3MgV2ViaG9va1N1YnNjcmlwdGlvbkFjdGlvbnNDb250cm9sbGVyIGV4dGVuZHMgRGVjYWZDb250cm9sbGVyIHtcbiAgICBjb25zdHJ1Y3RvcihjbGllbnRDb250ZXh0KSB7XG4gICAgICAgIHN1cGVyKGNsaWVudENvbnRleHQsIFdlYmhvb2tTdWJzY3JpcHRpb25BY3Rpb25zQ29udHJvbGxlcl8xLm5hbWUpO1xuICAgIH1cbiAgICBhc3luYyBkZWFjdGl2YXRlKGlkKSB7XG4gICAgICAgIGNvbnN0IHsgY3R4IH0gPSAoYXdhaXQgdGhpcy5sb2dDdHgoW10sIFwiZGVhY3RpdmF0ZVwiLCB0cnVlKSkuZm9yKHRoaXMuZGVhY3RpdmF0ZSk7XG4gICAgICAgIGNvbnN0IHJlcG8gPSBSZXBvc2l0b3J5LmZvck1vZGVsKFdlYmhvb2tTdWJzY3JpcHRpb24pO1xuICAgICAgICBjb25zdCBjdXJyZW50ID0gYXdhaXQgcmVwby5yZWFkKGlkLCBjdHgpO1xuICAgICAgICBjdXJyZW50LmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICByZXR1cm4gcmVwby51cGRhdGUoY3VycmVudCwgY3R4KTtcbiAgICB9XG4gICAgYXN5bmMgcmVhY3RpdmF0ZShpZCkge1xuICAgICAgICBjb25zdCB7IGN0eCB9ID0gKGF3YWl0IHRoaXMubG9nQ3R4KFtdLCBcInJlYWN0aXZhdGVcIiwgdHJ1ZSkpLmZvcih0aGlzLnJlYWN0aXZhdGUpO1xuICAgICAgICBjb25zdCByZXBvID0gUmVwb3NpdG9yeS5mb3JNb2RlbChXZWJob29rU3Vic2NyaXB0aW9uKTtcbiAgICAgICAgY29uc3QgY3VycmVudCA9IGF3YWl0IHJlcG8ucmVhZChpZCwgY3R4KTtcbiAgICAgICAgY3VycmVudC5hY3RpdmUgPSB0cnVlO1xuICAgICAgICByZXR1cm4gcmVwby51cGRhdGUoY3VycmVudCwgY3R4KTtcbiAgICB9XG59O1xuX19kZWNvcmF0ZShbXG4gICAgUG9zdChcIjppZC9kZWFjdGl2YXRlXCIpLFxuICAgIF9fcGFyYW0oMCwgUGFyYW0oXCJpZFwiKSksXG4gICAgX19tZXRhZGF0YShcImRlc2lnbjp0eXBlXCIsIEZ1bmN0aW9uKSxcbiAgICBfX21ldGFkYXRhKFwiZGVzaWduOnBhcmFtdHlwZXNcIiwgW1N0cmluZ10pLFxuICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246cmV0dXJudHlwZVwiLCBQcm9taXNlKVxuXSwgV2ViaG9va1N1YnNjcmlwdGlvbkFjdGlvbnNDb250cm9sbGVyLnByb3RvdHlwZSwgXCJkZWFjdGl2YXRlXCIsIG51bGwpO1xuX19kZWNvcmF0ZShbXG4gICAgUG9zdChcIjppZC9yZWFjdGl2YXRlXCIpLFxuICAgIF9fcGFyYW0oMCwgUGFyYW0oXCJpZFwiKSksXG4gICAgX19tZXRhZGF0YShcImRlc2lnbjp0eXBlXCIsIEZ1bmN0aW9uKSxcbiAgICBfX21ldGFkYXRhKFwiZGVzaWduOnBhcmFtdHlwZXNcIiwgW1N0cmluZ10pLFxuICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246cmV0dXJudHlwZVwiLCBQcm9taXNlKVxuXSwgV2ViaG9va1N1YnNjcmlwdGlvbkFjdGlvbnNDb250cm9sbGVyLnByb3RvdHlwZSwgXCJyZWFjdGl2YXRlXCIsIG51bGwpO1xuV2ViaG9va1N1YnNjcmlwdGlvbkFjdGlvbnNDb250cm9sbGVyID0gV2ViaG9va1N1YnNjcmlwdGlvbkFjdGlvbnNDb250cm9sbGVyXzEgPSBfX2RlY29yYXRlKFtcbiAgICBDb250cm9sbGVyKFwid2ViaG9vay1zdWJzY3JpcHRpb25zXCIpLFxuICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246cGFyYW10eXBlc1wiLCBbRGVjYWZSZXF1ZXN0Q29udGV4dF0pXG5dLCBXZWJob29rU3Vic2NyaXB0aW9uQWN0aW9uc0NvbnRyb2xsZXIpO1xuZXhwb3J0IHsgV2ViaG9va1N1YnNjcmlwdGlvbkFjdGlvbnNDb250cm9sbGVyIH07XG5sZXQgV2ViaG9va0V2ZW50QWN0aW9uc0NvbnRyb2xsZXIgPSBXZWJob29rRXZlbnRBY3Rpb25zQ29udHJvbGxlcl8xID0gY2xhc3MgV2ViaG9va0V2ZW50QWN0aW9uc0NvbnRyb2xsZXIgZXh0ZW5kcyBEZWNhZkNvbnRyb2xsZXIge1xuICAgIGNvbnN0cnVjdG9yKGNsaWVudENvbnRleHQpIHtcbiAgICAgICAgc3VwZXIoY2xpZW50Q29udGV4dCwgV2ViaG9va0V2ZW50QWN0aW9uc0NvbnRyb2xsZXJfMS5uYW1lKTtcbiAgICB9XG4gICAgYXN5bmMgcmVwbGF5KGlkKSB7XG4gICAgICAgIGNvbnN0IHsgY3R4IH0gPSAoYXdhaXQgdGhpcy5sb2dDdHgoW10sIFwicmVwbGF5XCIsIHRydWUpKS5mb3IodGhpcy5yZXBsYXkpO1xuICAgICAgICBjb25zdCBldmVudFJlcG8gPSBSZXBvc2l0b3J5LmZvck1vZGVsKFdlYmhvb2tFdmVudFJlY29yZCk7XG4gICAgICAgIGNvbnN0IGRlbGl2ZXJ5UmVwbyA9IFJlcG9zaXRvcnkuZm9yTW9kZWwoV2ViaG9va0RlbGl2ZXJ5KTtcbiAgICAgICAgbGV0IGV2ZW50O1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgZXZlbnQgPSBhd2FpdCBldmVudFJlcG8ucmVhZChpZCwgY3R4KTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIGNvbnN0IGV2ZW50cyA9IGF3YWl0IGV2ZW50UmVwb1xuICAgICAgICAgICAgICAgIC5zZWxlY3QoKVxuICAgICAgICAgICAgICAgIC53aGVyZShldmVudFJlcG8uYXR0cihcImlkXCIpLmVxKGlkKSlcbiAgICAgICAgICAgICAgICAubGltaXQoMSlcbiAgICAgICAgICAgICAgICAuZXhlY3V0ZShjdHgpO1xuICAgICAgICAgICAgaWYgKCFldmVudHMubGVuZ3RoKVxuICAgICAgICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICAgICAgZXZlbnQgPSBldmVudHNbMF07XG4gICAgICAgIH1cbiAgICAgICAgbGV0IGRlbGl2ZXJpZXMgPSBbXTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGRlbGl2ZXJpZXMgPSBhd2FpdCBjb2xsZWN0UGFnZWRSZXN1bHRzKCgpID0+IGRlbGl2ZXJ5UmVwb1xuICAgICAgICAgICAgICAgIC5zZWxlY3QoKVxuICAgICAgICAgICAgICAgIC53aGVyZShkZWxpdmVyeVJlcG8uYXR0cihcImV2ZW50SWRcIikuZXEoZXZlbnQuaWQpKVxuICAgICAgICAgICAgICAgIC5vcmRlckJ5KFwiY3JlYXRlZEF0XCIsIE9yZGVyRGlyZWN0aW9uLkFTQylcbiAgICAgICAgICAgICAgICAudGhlbkJ5KFwiaWRcIiwgT3JkZXJEaXJlY3Rpb24uQVNDKVxuICAgICAgICAgICAgICAgIC5wYWdpbmF0ZSgyNTAsIGN0eCksIDI1MCwgY3R4KTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGRlbGl2ZXJpZXMgPSBhd2FpdCBkZWxpdmVyeVJlcG9cbiAgICAgICAgICAgICAgICAgICAgLnNlbGVjdCgpXG4gICAgICAgICAgICAgICAgICAgIC53aGVyZShkZWxpdmVyeVJlcG8uYXR0cihcImV2ZW50SWRcIikuZXEoZXZlbnQuaWQpKVxuICAgICAgICAgICAgICAgICAgICAuZXhlY3V0ZShjdHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2gge1xuICAgICAgICAgICAgICAgIGRlbGl2ZXJpZXMgPSBbXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBjb25zdCBub3cgPSBuZXcgRGF0ZSgpO1xuICAgICAgICBmb3IgKGNvbnN0IGRlbGl2ZXJ5IG9mIGRlbGl2ZXJpZXMpIHtcbiAgICAgICAgICAgIGRlbGl2ZXJ5LnN0YXR1cyA9IFdlYmhvb2tTdGF0dXMuUEVORElORztcbiAgICAgICAgICAgIGRlbGl2ZXJ5LmF0dGVtcHRzID0gMDtcbiAgICAgICAgICAgIGRlbGl2ZXJ5Lm5leHRBdHRlbXB0QXQgPSBub3c7XG4gICAgICAgICAgICBkZWxpdmVyeS5sYXN0QXR0ZW1wdEF0ID0gbnVsbDtcbiAgICAgICAgICAgIGRlbGl2ZXJ5LmVycm9yTWVzc2FnZSA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGRlbGl2ZXJ5LnJlc3BvbnNlU3RhdHVzID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgZGVsaXZlcnkucmVzcG9uc2VCb2R5ID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIGV2ZW50LnN0YXR1cyA9IFdlYmhvb2tTdGF0dXMuUEVORElORztcbiAgICAgICAgZXZlbnQuZGVsaXZlcmllc1N1Y2NlZWRlZCA9IDA7XG4gICAgICAgIGV2ZW50LmRlbGl2ZXJpZXNGYWlsZWQgPSAwO1xuICAgICAgICBldmVudC5uZXh0QXR0ZW1wdEF0ID0gbm93O1xuICAgICAgICBldmVudC51cGRhdGVkQXQgPSBub3c7XG4gICAgICAgIGlmIChkZWxpdmVyaWVzLmxlbmd0aCkge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBhd2FpdCBkZWxpdmVyeVJlcG8udXBkYXRlQWxsKGRlbGl2ZXJpZXMsIGN0eC5vdmVycmlkZSh7IGFwcGx5VXBkYXRlVmFsaWRhdGlvbjogZmFsc2UgfSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2gge1xuICAgICAgICAgICAgICAgIC8vIFJlcGxheSBzdGlsbCByZXNldHMgdGhlIGV2ZW50IHN0YXRlIGV2ZW4gaWYgYnVsayBkZWxpdmVyeSB1cGRhdGVzIGFyZSBub3QgcXVlcnlhYmxlIGhlcmUuXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGV2ZW50UmVwby51cGRhdGUoZXZlbnQsIGN0eCk7XG4gICAgfVxufTtcbl9fZGVjb3JhdGUoW1xuICAgIFBvc3QoXCI6aWQvcmVwbGF5XCIpLFxuICAgIF9fcGFyYW0oMCwgUGFyYW0oXCJpZFwiKSksXG4gICAgX19tZXRhZGF0YShcImRlc2lnbjp0eXBlXCIsIEZ1bmN0aW9uKSxcbiAgICBfX21ldGFkYXRhKFwiZGVzaWduOnBhcmFtdHlwZXNcIiwgW1N0cmluZ10pLFxuICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246cmV0dXJudHlwZVwiLCBQcm9taXNlKVxuXSwgV2ViaG9va0V2ZW50QWN0aW9uc0NvbnRyb2xsZXIucHJvdG90eXBlLCBcInJlcGxheVwiLCBudWxsKTtcbldlYmhvb2tFdmVudEFjdGlvbnNDb250cm9sbGVyID0gV2ViaG9va0V2ZW50QWN0aW9uc0NvbnRyb2xsZXJfMSA9IF9fZGVjb3JhdGUoW1xuICAgIENvbnRyb2xsZXIoXCJ3ZWJob29rLWV2ZW50c1wiKSxcbiAgICBfX21ldGFkYXRhKFwiZGVzaWduOnBhcmFtdHlwZXNcIiwgW0RlY2FmUmVxdWVzdENvbnRleHRdKVxuXSwgV2ViaG9va0V2ZW50QWN0aW9uc0NvbnRyb2xsZXIpO1xuZXhwb3J0IHsgV2ViaG9va0V2ZW50QWN0aW9uc0NvbnRyb2xsZXIgfTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaVkyOXVkSEp2Ykd4bGNuTXVhbk1pTENKemIzVnlZMlZTYjI5MElqb2lJaXdpYzI5MWNtTmxjeUk2V3lJdUxpOHVMaTh1TGk5emNtTXZkMlZpYUc5dmEzTXZZMjl1ZEhKdmJHeGxjbk11ZEhNaVhTd2libUZ0WlhNaU9sdGRMQ0p0WVhCd2FXNW5jeUk2SWpzN096czdPenM3T3pzN096dEJRVUZCTEU5QlFVOHNSVUZCUlN4VlFVRlZMRVZCUVVVc1MwRkJTeXhGUVVGRkxFbEJRVWtzUlVGQlJTeE5RVUZOTEdkQ1FVRm5RaXhEUVVGRE8wRkJRM3BFTEU5QlFVOHNSVUZCUlN4VlFVRlZMRVZCUVdFc1kwRkJZeXhGUVVGRkxFMUJRVTBzWjBKQlFXZENMRU5CUVVNN1FVRkRka1VzVDBGQlR5eEZRVUZGTEdWQlFXVXNSVUZCUlN3MFFrRkJkVUk3UVVGRGFrUXNUMEZCVHl4RlFVRkZMRzFDUVVGdFFpeEZRVUZGTERoQ1FVRnRRanRCUVVWcVJDeFBRVUZQTEVWQlEwd3NaVUZCWlN4RlFVTm1MR3RDUVVGclFpeEZRVU5zUWl4aFFVRmhMRVZCUTJJc2JVSkJRVzFDTEVWQlEyNUNMRzFDUVVGdFFpeEhRVU53UWl4TlFVRk5MREJDUVVFd1FpeERRVUZETzBGQlJ6TkNMRWxCUVUwc2IwTkJRVzlETERSRFFVRXhReXhOUVVGTkxHOURRVUZ4UXl4VFFVRlJMR1ZCUVN0Q08wbEJRM1pHTEZsQlFWa3NZVUZCYTBNN1VVRkROVU1zUzBGQlN5eERRVUZETEdGQlFXRXNSVUZCUlN4elEwRkJiME1zUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXp0SlFVTnNSU3hEUVVGRE8wbEJSMHNzUVVGQlRpeExRVUZMTEVOQlFVTXNWVUZCVlN4RFFVRmpMRVZCUVZVN1VVRkRkRU1zVFVGQlRTeEZRVUZGTEVkQlFVY3NSVUZCUlN4SFFVRkhMRU5CUVVNc1RVRkJUU3hKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEVWQlFVVXNSVUZCUlN4WlFVRlpMRVZCUVVVc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlF6ZEVMRWxCUVVrc1EwRkJReXhWUVVGVkxFTkJRMmhDTEVOQlFVTTdVVUZEUml4TlFVRk5MRWxCUVVrc1IwRkJSeXhWUVVGVkxFTkJRVU1zVVVGQlVTeERRVWM1UWl4dFFrRkJiVUlzUTBGQlF5eERRVUZETzFGQlEzWkNMRTFCUVUwc1QwRkJUeXhIUVVGSExFMUJRVTBzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RlFVRkZMRVZCUVVVc1IwRkJSeXhEUVVGRExFTkJRVU03VVVGRGVrTXNUMEZCVHl4RFFVRkRMRTFCUVUwc1IwRkJSeXhMUVVGTExFTkJRVU03VVVGRGRrSXNUMEZCVHl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFOUJRVThzUlVGQlJTeEhRVUZITEVOQlFVTXNRMEZCUXp0SlFVTnVReXhEUVVGRE8wbEJSMHNzUVVGQlRpeExRVUZMTEVOQlFVTXNWVUZCVlN4RFFVRmpMRVZCUVZVN1VVRkRkRU1zVFVGQlRTeEZRVUZGTEVkQlFVY3NSVUZCUlN4SFFVRkhMRU5CUVVNc1RVRkJUU3hKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEVWQlFVVXNSVUZCUlN4WlFVRlpMRVZCUVVVc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlF6ZEVMRWxCUVVrc1EwRkJReXhWUVVGVkxFTkJRMmhDTEVOQlFVTTdVVUZEUml4TlFVRk5MRWxCUVVrc1IwRkJSeXhWUVVGVkxFTkJRVU1zVVVGQlVTeERRVWM1UWl4dFFrRkJiVUlzUTBGQlF5eERRVUZETzFGQlEzWkNMRTFCUVUwc1QwRkJUeXhIUVVGSExFMUJRVTBzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RlFVRkZMRVZCUVVVc1IwRkJSeXhEUVVGRExFTkJRVU03VVVGRGVrTXNUMEZCVHl4RFFVRkRMRTFCUVUwc1IwRkJSeXhKUVVGSkxFTkJRVU03VVVGRGRFSXNUMEZCVHl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFOUJRVThzUlVGQlJTeEhRVUZITEVOQlFVTXNRMEZCUXp0SlFVTnVReXhEUVVGRE8wTkJRMFlzUTBGQlFUdEJRVEZDVHp0SlFVUk1MRWxCUVVrc1EwRkJReXhuUWtGQlowSXNRMEZCUXp0SlFVTk1MRmRCUVVFc1MwRkJTeXhEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZCT3pzN08zTkZRVmMxUWp0QlFVZExPMGxCUkV3c1NVRkJTU3hEUVVGRExHZENRVUZuUWl4RFFVRkRPMGxCUTB3c1YwRkJRU3hMUVVGTExFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVRTdPenM3YzBWQlZ6VkNPMEZCTDBKVkxHOURRVUZ2UXp0SlFVUm9SQ3hWUVVGVkxFTkJRVU1zZFVKQlFYVkNMRU5CUVVNN2NVTkJSVkFzYlVKQlFXMUNPMGRCUkc1RExHOURRVUZ2UXl4RFFXZERhRVE3TzBGQlIwMHNTVUZCVFN3MlFrRkJOa0lzY1VOQlFXNURMRTFCUVUwc05rSkJRVGhDTEZOQlFWRXNaVUZCSzBJN1NVRkRhRVlzV1VGQldTeGhRVUZyUXp0UlFVTTFReXhMUVVGTExFTkJRVU1zWVVGQllTeEZRVUZGTEN0Q1FVRTJRaXhEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzBsQlF6TkVMRU5CUVVNN1NVRkhTeXhCUVVGT0xFdEJRVXNzUTBGQlF5eE5RVUZOTEVOQlFXTXNSVUZCVlR0UlFVTnNReXhOUVVGTkxFVkJRVVVzUjBGQlJ5eEZRVUZGTEVkQlFVY3NRMEZCUXl4TlFVRk5MRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zUlVGQlJTeEZRVUZGTEZGQlFWRXNSVUZCUlN4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNN1VVRkRla1VzVFVGQlRTeFRRVUZUTEVkQlFVY3NWVUZCVlN4RFFVRkRMRkZCUVZFc1EwRkhia01zYTBKQlFXdENMRU5CUVVNc1EwRkJRenRSUVVOMFFpeE5RVUZOTEZsQlFWa3NSMEZCUnl4VlFVRlZMRU5CUVVNc1VVRkJVU3hEUVVkMFF5eGxRVUZsTEVOQlFVTXNRMEZCUXp0UlFVTnVRaXhKUVVGSkxFdEJRVXNzUTBGQlF6dFJRVU5XTEVsQlFVa3NRMEZCUXp0WlFVTklMRXRCUVVzc1IwRkJSeXhOUVVGTkxGTkJRVk1zUTBGQlF5eEpRVUZKTEVOQlFVTXNSVUZCUlN4RlFVRkZMRWRCUVVjc1EwRkJReXhEUVVGRE8xRkJRM2hETEVOQlFVTTdVVUZCUXl4UFFVRlBMRXRCUVVzc1JVRkJSU3hEUVVGRE8xbEJRMllzVFVGQlRTeE5RVUZOTEVkQlFVY3NUVUZCVFN4VFFVRlRPMmxDUVVNelFpeE5RVUZOTEVWQlFVVTdhVUpCUTFJc1MwRkJTeXhEUVVGRExGTkJRVk1zUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETzJsQ1FVTnNReXhMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETzJsQ1FVTlNMRTlCUVU4c1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dFpRVU5vUWl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFMUJRVTA3WjBKQlFVVXNUVUZCVFN4TFFVRkxMRU5CUVVNN1dVRkRhRU1zUzBGQlN5eEhRVUZITEUxQlFVMHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVOd1FpeERRVUZETzFGQlEwUXNTVUZCU1N4VlFVRlZMRWRCUVZVc1JVRkJSU3hEUVVGRE8xRkJRek5DTEVsQlFVa3NRMEZCUXp0WlFVTklMRlZCUVZVc1IwRkJSeXhOUVVGTkxHMUNRVUZ0UWl4RFFVTndReXhIUVVGSExFVkJRVVVzUTBGRFNDeFpRVUZaTzJsQ1FVTlVMRTFCUVUwc1JVRkJSVHRwUWtGRFVpeExRVUZMTEVOQlFVTXNXVUZCV1N4RFFVRkRMRWxCUVVrc1EwRkJReXhUUVVGVExFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNTMEZCU3l4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRE8ybENRVU5vUkN4UFFVRlBMRU5CUVVNc1YwRkJWeXhGUVVGRkxHTkJRV01zUTBGQlF5eEhRVUZITEVOQlFVTTdhVUpCUTNoRExFMUJRVTBzUTBGQlF5eEpRVUZKTEVWQlFVVXNZMEZCWXl4RFFVRkRMRWRCUVVjc1EwRkJRenRwUWtGRGFFTXNVVUZCVVN4RFFVRkRMRWRCUVVjc1JVRkJSU3hIUVVGSExFTkJRVU1zUlVGRGRrSXNSMEZCUnl4RlFVTklMRWRCUVVjc1EwRkRTaXhEUVVGRE8xRkJRMG9zUTBGQlF6dFJRVUZETEUxQlFVMHNRMEZCUXp0WlFVTlFMRWxCUVVrc1EwRkJRenRuUWtGRFNDeFZRVUZWTEVkQlFVY3NUVUZCVFN4WlFVRlpPM0ZDUVVNMVFpeE5RVUZOTEVWQlFVVTdjVUpCUTFJc1MwRkJTeXhEUVVGRExGbEJRVmtzUTBGQlF5eEpRVUZKTEVOQlFVTXNVMEZCVXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFdEJRVXNzUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXp0eFFrRkRhRVFzVDBGQlR5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMWxCUTJ4Q0xFTkJRVU03V1VGQlF5eE5RVUZOTEVOQlFVTTdaMEpCUTFBc1ZVRkJWU3hIUVVGSExFVkJRVVVzUTBGQlF6dFpRVU5zUWl4RFFVRkRPMUZCUTBnc1EwRkJRenRSUVVORUxFMUJRVTBzUjBGQlJ5eEhRVUZITEVsQlFVa3NTVUZCU1N4RlFVRkZMRU5CUVVNN1VVRkZka0lzUzBGQlN5eE5RVUZOTEZGQlFWRXNTVUZCU1N4VlFVRlZMRVZCUVVVc1EwRkJRenRaUVVOc1F5eFJRVUZSTEVOQlFVTXNUVUZCVFN4SFFVRkhMR0ZCUVdFc1EwRkJReXhQUVVGUExFTkJRVU03V1VGRGVFTXNVVUZCVVN4RFFVRkRMRkZCUVZFc1IwRkJSeXhEUVVGRExFTkJRVU03V1VGRGRFSXNVVUZCVVN4RFFVRkRMR0ZCUVdFc1IwRkJSeXhIUVVGSExFTkJRVU03V1VGRE4wSXNVVUZCVVN4RFFVRkRMR0ZCUVdFc1IwRkJSeXhKUVVGWExFTkJRVU03V1VGRGNrTXNVVUZCVVN4RFFVRkRMRmxCUVZrc1IwRkJSeXhUUVVGVExFTkJRVU03V1VGRGJFTXNVVUZCVVN4RFFVRkRMR05CUVdNc1IwRkJSeXhUUVVGVExFTkJRVU03V1VGRGNFTXNVVUZCVVN4RFFVRkRMRmxCUVZrc1IwRkJSeXhUUVVGVExFTkJRVU03VVVGRGNFTXNRMEZCUXp0UlFVVkVMRXRCUVVzc1EwRkJReXhOUVVGTkxFZEJRVWNzWVVGQllTeERRVUZETEU5QlFVOHNRMEZCUXp0UlFVTnlReXhMUVVGTExFTkJRVU1zYlVKQlFXMUNMRWRCUVVjc1EwRkJReXhEUVVGRE8xRkJRemxDTEV0QlFVc3NRMEZCUXl4blFrRkJaMElzUjBGQlJ5eERRVUZETEVOQlFVTTdVVUZETTBJc1MwRkJTeXhEUVVGRExHRkJRV0VzUjBGQlJ5eEhRVUZITEVOQlFVTTdVVUZETVVJc1MwRkJTeXhEUVVGRExGTkJRVk1zUjBGQlJ5eEhRVUZITEVOQlFVTTdVVUZGZEVJc1NVRkJTU3hWUVVGVkxFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTTdXVUZEZEVJc1NVRkJTU3hEUVVGRE8yZENRVU5JTEUxQlFVMHNXVUZCV1N4RFFVRkRMRk5CUVZNc1EwRkRNVUlzVlVGQlZTeEZRVU5XTEVkQlFVY3NRMEZCUXl4UlFVRlJMRU5CUVVNc1JVRkJSU3h4UWtGQmNVSXNSVUZCUlN4TFFVRkxMRVZCUVZNc1EwRkJReXhEUVVOMFJDeERRVUZETzFsQlEwb3NRMEZCUXp0WlFVRkRMRTFCUVUwc1EwRkJRenRuUWtGRFVDdzBSa0ZCTkVZN1dVRkRPVVlzUTBGQlF6dFJRVU5JTEVOQlFVTTdVVUZEUkN4UFFVRlBMRk5CUVZNc1EwRkJReXhOUVVGTkxFTkJRVU1zUzBGQlN5eEZRVUZGTEVkQlFVY3NRMEZCUXl4RFFVRkRPMGxCUTNSRExFTkJRVU03UTBGRFJpeERRVUZCTzBGQk0wVlBPMGxCUkV3c1NVRkJTU3hEUVVGRExGbEJRVmtzUTBGQlF6dEpRVU5NTEZkQlFVRXNTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGQk96czdPekpFUVRCRmVFSTdRVUZvUmxVc05rSkJRVFpDTzBsQlJIcERMRlZCUVZVc1EwRkJReXhuUWtGQlowSXNRMEZCUXp0eFEwRkZRU3h0UWtGQmJVSTdSMEZFYmtNc05rSkJRVFpDTEVOQmFVWjZReUlzSW5OdmRYSmpaWE5EYjI1MFpXNTBJanBiSW1sdGNHOXlkQ0I3SUVOdmJuUnliMnhzWlhJc0lGQmhjbUZ0TENCUWIzTjBJSDBnWm5KdmJTQmNJa0J1WlhOMGFuTXZZMjl0Ylc5dVhDSTdYRzVwYlhCdmNuUWdleUJTWlhCdmMybDBiM0o1TENCMGVYQmxJRkpsY0c4c0lFOXlaR1Z5UkdseVpXTjBhVzl1SUgwZ1puSnZiU0JjSWtCa1pXTmhaaTEwY3k5amIzSmxYQ0k3WEc1cGJYQnZjblFnZXlCRVpXTmhaa052Ym5SeWIyeHNaWElnZlNCbWNtOXRJRndpTGk0dlkyOXVkSEp2Ykd4bGNuTmNJanRjYm1sdGNHOXlkQ0I3SUVSbFkyRm1VbVZ4ZFdWemRFTnZiblJsZUhRZ2ZTQm1jbTl0SUZ3aUxpNHZjbVZ4ZFdWemRGd2lPMXh1YVcxd2IzSjBJSHNnUkdWallXWlRaWEoyWlhKRGRIZ2dmU0JtY205dElGd2lMaTR2WTI5dWMzUmhiblJ6WENJN1hHNXBiWEJ2Y25RZ2UxeHVJQ0JYWldKb2IyOXJSR1ZzYVhabGNua3NYRzRnSUZkbFltaHZiMnRGZG1WdWRGSmxZMjl5WkN4Y2JpQWdWMlZpYUc5dmExTjBZWFIxY3l4Y2JpQWdWMlZpYUc5dmExTjFZbk5qY21sd2RHbHZiaXhjYmlBZ1kyOXNiR1ZqZEZCaFoyVmtVbVZ6ZFd4MGN5eGNibjBnWm5KdmJTQmNJa0JrWldOaFppMTBjeTltYjNJdGFIUjBjQzlvYjI5cmMxd2lPMXh1WEc1QVEyOXVkSEp2Ykd4bGNpaGNJbmRsWW1odmIyc3RjM1ZpYzJOeWFYQjBhVzl1YzF3aUtWeHVaWGh3YjNKMElHTnNZWE56SUZkbFltaHZiMnRUZFdKelkzSnBjSFJwYjI1QlkzUnBiMjV6UTI5dWRISnZiR3hsY2lCbGVIUmxibVJ6SUVSbFkyRm1RMjl1ZEhKdmJHeGxjanhFWldOaFpsTmxjblpsY2tOMGVENGdlMXh1SUNCamIyNXpkSEoxWTNSdmNpaGpiR2xsYm5SRGIyNTBaWGgwT2lCRVpXTmhabEpsY1hWbGMzUkRiMjUwWlhoMEtTQjdYRzRnSUNBZ2MzVndaWElvWTJ4cFpXNTBRMjl1ZEdWNGRDd2dWMlZpYUc5dmExTjFZbk5qY21sd2RHbHZia0ZqZEdsdmJuTkRiMjUwY205c2JHVnlMbTVoYldVcE8xeHVJQ0I5WEc1Y2JpQWdRRkJ2YzNRb1hDSTZhV1F2WkdWaFkzUnBkbUYwWlZ3aUtWeHVJQ0JoYzNsdVl5QmtaV0ZqZEdsMllYUmxLRUJRWVhKaGJTaGNJbWxrWENJcElHbGtPaUJ6ZEhKcGJtY3BJSHRjYmlBZ0lDQmpiMjV6ZENCN0lHTjBlQ0I5SUQwZ0tHRjNZV2wwSUhSb2FYTXViRzluUTNSNEtGdGRMQ0JjSW1SbFlXTjBhWFpoZEdWY0lpd2dkSEoxWlNrcExtWnZjaWhjYmlBZ0lDQWdJSFJvYVhNdVpHVmhZM1JwZG1GMFpWeHVJQ0FnSUNrN1hHNGdJQ0FnWTI5dWMzUWdjbVZ3YnlBOUlGSmxjRzl6YVhSdmNua3VabTl5VFc5a1pXdzhYRzRnSUNBZ0lDQlhaV0pvYjI5clUzVmljMk55YVhCMGFXOXVMRnh1SUNBZ0lDQWdVbVZ3Ynp4WFpXSm9iMjlyVTNWaWMyTnlhWEIwYVc5dVBseHVJQ0FnSUQ0b1YyVmlhRzl2YTFOMVluTmpjbWx3ZEdsdmJpazdYRzRnSUNBZ1kyOXVjM1FnWTNWeWNtVnVkQ0E5SUdGM1lXbDBJSEpsY0c4dWNtVmhaQ2hwWkN3Z1kzUjRLVHRjYmlBZ0lDQmpkWEp5Wlc1MExtRmpkR2wyWlNBOUlHWmhiSE5sTzF4dUlDQWdJSEpsZEhWeWJpQnlaWEJ2TG5Wd1pHRjBaU2hqZFhKeVpXNTBMQ0JqZEhncE8xeHVJQ0I5WEc1Y2JpQWdRRkJ2YzNRb1hDSTZhV1F2Y21WaFkzUnBkbUYwWlZ3aUtWeHVJQ0JoYzNsdVl5QnlaV0ZqZEdsMllYUmxLRUJRWVhKaGJTaGNJbWxrWENJcElHbGtPaUJ6ZEhKcGJtY3BJSHRjYmlBZ0lDQmpiMjV6ZENCN0lHTjBlQ0I5SUQwZ0tHRjNZV2wwSUhSb2FYTXViRzluUTNSNEtGdGRMQ0JjSW5KbFlXTjBhWFpoZEdWY0lpd2dkSEoxWlNrcExtWnZjaWhjYmlBZ0lDQWdJSFJvYVhNdWNtVmhZM1JwZG1GMFpWeHVJQ0FnSUNrN1hHNGdJQ0FnWTI5dWMzUWdjbVZ3YnlBOUlGSmxjRzl6YVhSdmNua3VabTl5VFc5a1pXdzhYRzRnSUNBZ0lDQlhaV0pvYjI5clUzVmljMk55YVhCMGFXOXVMRnh1SUNBZ0lDQWdVbVZ3Ynp4WFpXSm9iMjlyVTNWaWMyTnlhWEIwYVc5dVBseHVJQ0FnSUQ0b1YyVmlhRzl2YTFOMVluTmpjbWx3ZEdsdmJpazdYRzRnSUNBZ1kyOXVjM1FnWTNWeWNtVnVkQ0E5SUdGM1lXbDBJSEpsY0c4dWNtVmhaQ2hwWkN3Z1kzUjRLVHRjYmlBZ0lDQmpkWEp5Wlc1MExtRmpkR2wyWlNBOUlIUnlkV1U3WEc0Z0lDQWdjbVYwZFhKdUlISmxjRzh1ZFhCa1lYUmxLR04xY25KbGJuUXNJR04wZUNrN1hHNGdJSDFjYm4xY2JseHVRRU52Ym5SeWIyeHNaWElvWENKM1pXSm9iMjlyTFdWMlpXNTBjMXdpS1Z4dVpYaHdiM0owSUdOc1lYTnpJRmRsWW1odmIydEZkbVZ1ZEVGamRHbHZibk5EYjI1MGNtOXNiR1Z5SUdWNGRHVnVaSE1nUkdWallXWkRiMjUwY205c2JHVnlQRVJsWTJGbVUyVnlkbVZ5UTNSNFBpQjdYRzRnSUdOdmJuTjBjblZqZEc5eUtHTnNhV1Z1ZEVOdmJuUmxlSFE2SUVSbFkyRm1VbVZ4ZFdWemRFTnZiblJsZUhRcElIdGNiaUFnSUNCemRYQmxjaWhqYkdsbGJuUkRiMjUwWlhoMExDQlhaV0pvYjI5clJYWmxiblJCWTNScGIyNXpRMjl1ZEhKdmJHeGxjaTV1WVcxbEtUdGNiaUFnZlZ4dVhHNGdJRUJRYjNOMEtGd2lPbWxrTDNKbGNHeGhlVndpS1Z4dUlDQmhjM2x1WXlCeVpYQnNZWGtvUUZCaGNtRnRLRndpYVdSY0lpa2dhV1E2SUhOMGNtbHVaeWtnZTF4dUlDQWdJR052Ym5OMElIc2dZM1I0SUgwZ1BTQW9ZWGRoYVhRZ2RHaHBjeTVzYjJkRGRIZ29XMTBzSUZ3aWNtVndiR0Y1WENJc0lIUnlkV1VwS1M1bWIzSW9kR2hwY3k1eVpYQnNZWGtwTzF4dUlDQWdJR052Ym5OMElHVjJaVzUwVW1Wd2J5QTlJRkpsY0c5emFYUnZjbmt1Wm05eVRXOWtaV3c4WEc0Z0lDQWdJQ0JYWldKb2IyOXJSWFpsYm5SU1pXTnZjbVFzWEc0Z0lDQWdJQ0JTWlhCdlBGZGxZbWh2YjJ0RmRtVnVkRkpsWTI5eVpENWNiaUFnSUNBK0tGZGxZbWh2YjJ0RmRtVnVkRkpsWTI5eVpDazdYRzRnSUNBZ1kyOXVjM1FnWkdWc2FYWmxjbmxTWlhCdklEMGdVbVZ3YjNOcGRHOXllUzVtYjNKTmIyUmxiRHhjYmlBZ0lDQWdJRmRsWW1odmIydEVaV3hwZG1WeWVTeGNiaUFnSUNBZ0lGSmxjRzg4VjJWaWFHOXZhMFJsYkdsMlpYSjVQbHh1SUNBZ0lENG9WMlZpYUc5dmEwUmxiR2wyWlhKNUtUdGNiaUFnSUNCc1pYUWdaWFpsYm5RN1hHNGdJQ0FnZEhKNUlIdGNiaUFnSUNBZ0lHVjJaVzUwSUQwZ1lYZGhhWFFnWlhabGJuUlNaWEJ2TG5KbFlXUW9hV1FzSUdOMGVDazdYRzRnSUNBZ2ZTQmpZWFJqYUNBb1pYSnliM0lwSUh0Y2JpQWdJQ0FnSUdOdmJuTjBJR1YyWlc1MGN5QTlJR0YzWVdsMElHVjJaVzUwVW1Wd2IxeHVJQ0FnSUNBZ0lDQXVjMlZzWldOMEtDbGNiaUFnSUNBZ0lDQWdMbmRvWlhKbEtHVjJaVzUwVW1Wd2J5NWhkSFJ5S0Z3aWFXUmNJaWt1WlhFb2FXUXBLVnh1SUNBZ0lDQWdJQ0F1YkdsdGFYUW9NU2xjYmlBZ0lDQWdJQ0FnTG1WNFpXTjFkR1VvWTNSNEtUdGNiaUFnSUNBZ0lHbG1JQ2doWlhabGJuUnpMbXhsYm1kMGFDa2dkR2h5YjNjZ1pYSnliM0k3WEc0Z0lDQWdJQ0JsZG1WdWRDQTlJR1YyWlc1MGMxc3dYVHRjYmlBZ0lDQjlYRzRnSUNBZ2JHVjBJR1JsYkdsMlpYSnBaWE02SUdGdWVWdGRJRDBnVzEwN1hHNGdJQ0FnZEhKNUlIdGNiaUFnSUNBZ0lHUmxiR2wyWlhKcFpYTWdQU0JoZDJGcGRDQmpiMnhzWldOMFVHRm5aV1JTWlhOMWJIUnpLRnh1SUNBZ0lDQWdJQ0FvS1NBOVBseHVJQ0FnSUNBZ0lDQWdJR1JsYkdsMlpYSjVVbVZ3YjF4dUlDQWdJQ0FnSUNBZ0lDQWdMbk5sYkdWamRDZ3BYRzRnSUNBZ0lDQWdJQ0FnSUNBdWQyaGxjbVVvWkdWc2FYWmxjbmxTWlhCdkxtRjBkSElvWENKbGRtVnVkRWxrWENJcExtVnhLR1YyWlc1MExtbGtLU2xjYmlBZ0lDQWdJQ0FnSUNBZ0lDNXZjbVJsY2tKNUtGd2lZM0psWVhSbFpFRjBYQ0lzSUU5eVpHVnlSR2x5WldOMGFXOXVMa0ZUUXlsY2JpQWdJQ0FnSUNBZ0lDQWdJQzUwYUdWdVFua29YQ0pwWkZ3aUxDQlBjbVJsY2tScGNtVmpkR2x2Ymk1QlUwTXBYRzRnSUNBZ0lDQWdJQ0FnSUNBdWNHRm5hVzVoZEdVb01qVXdMQ0JqZEhncExGeHVJQ0FnSUNBZ0lDQXlOVEFzWEc0Z0lDQWdJQ0FnSUdOMGVGeHVJQ0FnSUNBZ0tUdGNiaUFnSUNCOUlHTmhkR05vSUh0Y2JpQWdJQ0FnSUhSeWVTQjdYRzRnSUNBZ0lDQWdJR1JsYkdsMlpYSnBaWE1nUFNCaGQyRnBkQ0JrWld4cGRtVnllVkpsY0c5Y2JpQWdJQ0FnSUNBZ0lDQXVjMlZzWldOMEtDbGNiaUFnSUNBZ0lDQWdJQ0F1ZDJobGNtVW9aR1ZzYVhabGNubFNaWEJ2TG1GMGRISW9YQ0psZG1WdWRFbGtYQ0lwTG1WeEtHVjJaVzUwTG1sa0tTbGNiaUFnSUNBZ0lDQWdJQ0F1WlhobFkzVjBaU2hqZEhncE8xeHVJQ0FnSUNBZ2ZTQmpZWFJqYUNCN1hHNGdJQ0FnSUNBZ0lHUmxiR2wyWlhKcFpYTWdQU0JiWFR0Y2JpQWdJQ0FnSUgxY2JpQWdJQ0I5WEc0Z0lDQWdZMjl1YzNRZ2JtOTNJRDBnYm1WM0lFUmhkR1VvS1R0Y2JseHVJQ0FnSUdadmNpQW9ZMjl1YzNRZ1pHVnNhWFpsY25rZ2IyWWdaR1ZzYVhabGNtbGxjeWtnZTF4dUlDQWdJQ0FnWkdWc2FYWmxjbmt1YzNSaGRIVnpJRDBnVjJWaWFHOXZhMU4wWVhSMWN5NVFSVTVFU1U1SE8xeHVJQ0FnSUNBZ1pHVnNhWFpsY25rdVlYUjBaVzF3ZEhNZ1BTQXdPMXh1SUNBZ0lDQWdaR1ZzYVhabGNua3VibVY0ZEVGMGRHVnRjSFJCZENBOUlHNXZkenRjYmlBZ0lDQWdJR1JsYkdsMlpYSjVMbXhoYzNSQmRIUmxiWEIwUVhRZ1BTQnVkV3hzSUdGeklHRnVlVHRjYmlBZ0lDQWdJR1JsYkdsMlpYSjVMbVZ5Y205eVRXVnpjMkZuWlNBOUlIVnVaR1ZtYVc1bFpEdGNiaUFnSUNBZ0lHUmxiR2wyWlhKNUxuSmxjM0J2Ym5ObFUzUmhkSFZ6SUQwZ2RXNWtaV1pwYm1Wa08xeHVJQ0FnSUNBZ1pHVnNhWFpsY25rdWNtVnpjRzl1YzJWQ2IyUjVJRDBnZFc1a1pXWnBibVZrTzF4dUlDQWdJSDFjYmx4dUlDQWdJR1YyWlc1MExuTjBZWFIxY3lBOUlGZGxZbWh2YjJ0VGRHRjBkWE11VUVWT1JFbE9SenRjYmlBZ0lDQmxkbVZ1ZEM1a1pXeHBkbVZ5YVdWelUzVmpZMlZsWkdWa0lEMGdNRHRjYmlBZ0lDQmxkbVZ1ZEM1a1pXeHBkbVZ5YVdWelJtRnBiR1ZrSUQwZ01EdGNiaUFnSUNCbGRtVnVkQzV1WlhoMFFYUjBaVzF3ZEVGMElEMGdibTkzTzF4dUlDQWdJR1YyWlc1MExuVndaR0YwWldSQmRDQTlJRzV2ZHp0Y2JseHVJQ0FnSUdsbUlDaGtaV3hwZG1WeWFXVnpMbXhsYm1kMGFDa2dlMXh1SUNBZ0lDQWdkSEo1SUh0Y2JpQWdJQ0FnSUNBZ1lYZGhhWFFnWkdWc2FYWmxjbmxTWlhCdkxuVndaR0YwWlVGc2JDaGNiaUFnSUNBZ0lDQWdJQ0JrWld4cGRtVnlhV1Z6TEZ4dUlDQWdJQ0FnSUNBZ0lHTjBlQzV2ZG1WeWNtbGtaU2g3SUdGd2NHeDVWWEJrWVhSbFZtRnNhV1JoZEdsdmJqb2dabUZzYzJVZ2ZTQmhjeUJoYm5rcFhHNGdJQ0FnSUNBZ0lDazdYRzRnSUNBZ0lDQjlJR05oZEdOb0lIdGNiaUFnSUNBZ0lDQWdMeThnVW1Wd2JHRjVJSE4wYVd4c0lISmxjMlYwY3lCMGFHVWdaWFpsYm5RZ2MzUmhkR1VnWlhabGJpQnBaaUJpZFd4cklHUmxiR2wyWlhKNUlIVndaR0YwWlhNZ1lYSmxJRzV2ZENCeGRXVnllV0ZpYkdVZ2FHVnlaUzVjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlYRzRnSUNBZ2NtVjBkWEp1SUdWMlpXNTBVbVZ3Ynk1MWNHUmhkR1VvWlhabGJuUXNJR04wZUNrN1hHNGdJSDFjYm4xY2JpSmRmUT09Il19
|
package/lib/esm/controllers.js
CHANGED
|
@@ -15,14 +15,12 @@ export class DecafModelController extends DecafController {
|
|
|
15
15
|
if (!this._persistence)
|
|
16
16
|
try {
|
|
17
17
|
this._persistence = Service.get(this.class);
|
|
18
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
19
18
|
}
|
|
20
|
-
catch
|
|
19
|
+
catch {
|
|
21
20
|
try {
|
|
22
21
|
this._persistence = ModelService.getService(this.class);
|
|
23
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
24
22
|
}
|
|
25
|
-
catch
|
|
23
|
+
catch {
|
|
26
24
|
this._persistence = Repository.forModel(this.class);
|
|
27
25
|
}
|
|
28
26
|
}
|
|
@@ -34,4 +32,4 @@ export class DecafModelController extends DecafController {
|
|
|
34
32
|
: this._persistence;
|
|
35
33
|
}
|
|
36
34
|
}
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbGxlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29udHJvbGxlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGVBQWUsSUFBSSxtQkFBbUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ25GLE9BQU8sRUFFTCxZQUFZLEVBRVosVUFBVSxFQUNWLE9BQU8sR0FDUixNQUFNLGdCQUFnQixDQUFDO0FBTXhCLE1BQU0sT0FBZ0IsZUFHcEIsU0FBUSxtQkFBc0Q7SUFDOUQsWUFDcUIsYUFBa0MsRUFDckQsS0FBYTtRQUViLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUhGLGtCQUFhLEdBQWIsYUFBYSxDQUFxQjtJQUl2RCxDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQWdCLG9CQUdwQixTQUFRLGVBQWtCO0lBRzFCLFlBQzhCLGFBQWtDLEVBQzlELEtBQWE7UUFFYixLQUFLLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBSEEsa0JBQWEsR0FBYixhQUFhLENBQXFCO0lBSWhFLENBQUM7SUFJRCxXQUFXLENBQUMsR0FBa0I7UUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZO1lBQ3BCLElBQUksQ0FBQztnQkFDSCxJQUFJLENBQUMsWUFBWSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQWtCLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMvRCxDQUFDO1lBQUMsTUFBTSxDQUFDO2dCQUNQLElBQUksQ0FBQztvQkFDSCxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQyxVQUFVLENBQ3pDLElBQUksQ0FBQyxLQUFLLENBQ1EsQ0FBQztnQkFDdkIsQ0FBQztnQkFBQyxNQUFNLENBQUM7b0JBQ1AsSUFBSSxDQUFDLFlBQVksR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQVksQ0FBQztnQkFDakUsQ0FBQztZQUNILENBQUM7UUFFSCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRW5ELE9BQU8sR0FBRztZQUNSLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxZQUFZLFVBQVU7Z0JBQ3ZDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUM7Z0JBQ3ZDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUM7WUFDcEMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDeEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBSZXF1ZXN0IH0gZnJvbSBcImV4cHJlc3NcIjtcbmltcG9ydCB7IERlY2FmQ29udHJvbGxlciBhcyBIdHRwRGVjYWZDb250cm9sbGVyIH0gZnJvbSBcIkBkZWNhZi10cy9mb3ItaHR0cC9zZXJ2ZXJcIjtcbmltcG9ydCB7XG4gIENvbnRleHQsXG4gIE1vZGVsU2VydmljZSxcbiAgUmVwbyxcbiAgUmVwb3NpdG9yeSxcbiAgU2VydmljZSxcbn0gZnJvbSBcIkBkZWNhZi10cy9jb3JlXCI7XG5pbXBvcnQgeyBNb2RlbCwgdHlwZSBNb2RlbENvbnN0cnVjdG9yIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuXG5pbXBvcnQgeyBEZWNhZlNlcnZlckN0eCB9IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgRGVjYWZSZXF1ZXN0Q29udGV4dCB9IGZyb20gXCIuL3JlcXVlc3QvRGVjYWZSZXF1ZXN0Q29udGV4dFwiO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRGVjYWZDb250cm9sbGVyPFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gIENPTlRFWFQgZXh0ZW5kcyBEZWNhZlNlcnZlckN0eCA9IERlY2FmU2VydmVyQ3R4LFxuPiBleHRlbmRzIEh0dHBEZWNhZkNvbnRyb2xsZXI8UmVxdWVzdCwgYW55LCBEZWNhZlJlcXVlc3RDb250ZXh0PiB7XG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2xpZW50Q29udGV4dDogRGVjYWZSZXF1ZXN0Q29udGV4dCxcbiAgICBfbmFtZTogc3RyaW5nXG4gICkge1xuICAgIHN1cGVyKGNsaWVudENvbnRleHQpO1xuICB9XG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBEZWNhZk1vZGVsQ29udHJvbGxlcjxcbiAgTSBleHRlbmRzIE1vZGVsPGJvb2xlYW4+LFxuICBDIGV4dGVuZHMgRGVjYWZTZXJ2ZXJDdHggPSBEZWNhZlNlcnZlckN0eCxcbj4gZXh0ZW5kcyBEZWNhZkNvbnRyb2xsZXI8Qz4ge1xuICBwcml2YXRlIF9wZXJzaXN0ZW5jZT86IFJlcG88TT4gfCBNb2RlbFNlcnZpY2U8TT47XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBvdmVycmlkZSByZWFkb25seSBjbGllbnRDb250ZXh0OiBEZWNhZlJlcXVlc3RDb250ZXh0LFxuICAgIF9uYW1lOiBzdHJpbmdcbiAgKSB7XG4gICAgc3VwZXIoY2xpZW50Q29udGV4dCwgX25hbWUpO1xuICB9XG5cbiAgYWJzdHJhY3QgZ2V0IGNsYXNzKCk6IE1vZGVsQ29uc3RydWN0b3I8TT47XG5cbiAgcGVyc2lzdGVuY2UoY3R4PzogQ29udGV4dDxhbnk+KTogUmVwbzxNPiB8IE1vZGVsU2VydmljZTxNPiB7XG4gICAgaWYgKCF0aGlzLl9wZXJzaXN0ZW5jZSlcbiAgICAgIHRyeSB7XG4gICAgICAgIHRoaXMuX3BlcnNpc3RlbmNlID0gU2VydmljZS5nZXQ8TW9kZWxTZXJ2aWNlPE0+Pih0aGlzLmNsYXNzKTtcbiAgICAgIH0gY2F0Y2gge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIHRoaXMuX3BlcnNpc3RlbmNlID0gTW9kZWxTZXJ2aWNlLmdldFNlcnZpY2UoXG4gICAgICAgICAgICB0aGlzLmNsYXNzXG4gICAgICAgICAgKSBhcyBNb2RlbFNlcnZpY2U8TT47XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgIHRoaXMuX3BlcnNpc3RlbmNlID0gUmVwb3NpdG9yeS5mb3JNb2RlbCh0aGlzLmNsYXNzKSBhcyBSZXBvPE0+O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICBjb25zdCBvdmVycmlkZXMgPSB0aGlzLmNsaWVudENvbnRleHQudG9PdmVycmlkZXMoKTtcblxuICAgIHJldHVybiBjdHhcbiAgICAgID8gdGhpcy5fcGVyc2lzdGVuY2UgaW5zdGFuY2VvZiBSZXBvc2l0b3J5XG4gICAgICAgID8gdGhpcy5fcGVyc2lzdGVuY2Uub3ZlcnJpZGUob3ZlcnJpZGVzKVxuICAgICAgICA6IHRoaXMuX3BlcnNpc3RlbmNlLmZvcihvdmVycmlkZXMpXG4gICAgICA6IHRoaXMuX3BlcnNpc3RlbmNlO1xuICB9XG59XG4iXX0=
|