@mtgame/core 1.0.46 → 1.0.48
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.
|
@@ -263,7 +263,7 @@ let WaterpoloGameStatistic = class WaterpoloGameStatistic extends BaseModel {
|
|
|
263
263
|
(this.ppFreeKickOnGoals || 0) + (this.evFreeKickOnGoals || 0) + (this.shFreeKickOnGoals || 0) +
|
|
264
264
|
(this.ppCornerOnGoals || 0) + (this.evCornerOnGoals || 0) + (this.shCornerOnGoals || 0) +
|
|
265
265
|
this.counterAttackShotOnGoals + this.maneuverShotOnGoals + this.centerForwardShotOnGoals +
|
|
266
|
-
this.perimetrShotOnGoals + this.postShotOnGoals + this.fastShotOnGoals;
|
|
266
|
+
this.perimetrShotOnGoals + this.postShotOnGoals + this.fastShotOnGoals + (this.shootoutGoals || 0);
|
|
267
267
|
}
|
|
268
268
|
get totalPpShotsOnGoal() {
|
|
269
269
|
return (this.ppShotsOnGoal || 0) + (this.ppFreeKickOnGoals || 0) + (this.ppCornerOnGoals || 0) +
|
|
@@ -276,10 +276,10 @@ let WaterpoloGameStatistic = class WaterpoloGameStatistic extends BaseModel {
|
|
|
276
276
|
this.perimetrShotOnGoals + this.postShotOnGoals + this.fastShotOnGoals;
|
|
277
277
|
}
|
|
278
278
|
get shots() {
|
|
279
|
-
return this.ppShots + this.evShots + this.shShots;
|
|
279
|
+
return this.ppShots + this.evShots + this.shShots + this.shootoutShots;
|
|
280
280
|
}
|
|
281
281
|
get totalShots() {
|
|
282
|
-
return this.shots
|
|
282
|
+
return this.shots;
|
|
283
283
|
}
|
|
284
284
|
get faceOffs() {
|
|
285
285
|
return (this.faceOffWins || 0) + (this.faceOffLosses || 0);
|
|
@@ -841,4 +841,4 @@ WaterpoloGameStatistic = __decorate([
|
|
|
841
841
|
})
|
|
842
842
|
], WaterpoloGameStatistic);
|
|
843
843
|
export { WaterpoloGameStatistic };
|
|
844
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2F0ZXJwb2xvLWdhbWUtc3RhdGlzdGljLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbW9kZWxzL3dhdGVycG9sby1nYW1lLXN0YXRpc3RpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsTUFBTSxRQUFRLENBQUM7SUF5TzdFLHNCQUFzQixTQUF0QixzQkFBdUIsU0FBUSxTQUFTO0lBa09uRCxJQUFJLEVBQUU7UUFDSixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUN4QixPQUFPLE9BQU8sQ0FBQztTQUNoQjtRQUNELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNyRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsT0FBTyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQy9ELE9BQU8sR0FBRyxPQUFPLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxPQUFPLElBQUksT0FBTyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUM7SUFDakYsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLENBQUMsR0FBSSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVELElBQUksdUJBQXVCO1FBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLEdBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDakgsQ0FBQztJQUVELElBQUksb0JBQW9CO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDMUgsQ0FBQztJQUVELElBQUksb0JBQW9CO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDMUgsQ0FBQztJQUVELElBQUksb0JBQW9CO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDMUgsQ0FBQztJQUVELElBQUksdUJBQXVCO1FBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUks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WUFFL0Msa0JBQWtCLEVBQUUsaUJBQWlCO1lBQ3JDLHFCQUFxQixFQUFFLG1CQUFtQjtZQUMxQyxtQkFBbUIsRUFBRSxrQkFBa0I7WUFDdkMscUJBQXFCLEVBQUUsb0JBQW9CO1lBQzNDLGtCQUFrQixFQUFFLGlCQUFpQjtZQUNyQyxxQkFBcUIsRUFBRSxtQkFBbUI7WUFDMUMsbUJBQW1CLEVBQUUsa0JBQWtCO1lBQ3ZDLHFCQUFxQixFQUFFLG9CQUFvQjtZQUMzQyxrQkFBa0IsRUFBRSxpQkFBaUI7WUFDckMscUJBQXFCLEVBQUUsbUJBQW1CO1lBQzFDLG1CQUFtQixFQUFFLGtCQUFrQjtZQUN2QyxxQkFBcUIsRUFBRSxvQkFBb0I7WUFDM0Msa0JBQWtCLEVBQUUsaUJBQWlCO1lBQ3JDLGtCQUFrQixFQUFFLGlCQUFpQjtZQUNyQyxrQkFBa0IsRUFBRSxpQkFBaUI7WUFDckMsMEJBQTBCLEVBQUUsd0JBQXdCO1lBQ3BELDBCQUEwQixFQUFFLHdCQUF3QjtZQUNwRCwwQkFBMEIsRUFBRSx3QkFBd0I7WUFDcEQsdUJBQXVCLEVBQUUsc0JBQXNCO1NBQ2hEO1FBQ0QsUUFBUSxFQUFFO1lBQ1IsU0FBUyxFQUFFLGFBQWE7U0FDekI7S0FDRixDQUFDO0dBQ1csc0JBQXNCLENBMDlCbEM7U0ExOUJZLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZGVsSW5zdGFuY2UsIEJhc2VNb2RlbCwgVG9Gcm9udEhvb2ssIFRvQmFja0hvb2ssIERhdGVUaW1lRmllbGQgfSBmcm9tICcuL3V0aWwnO1xuaW1wb3J0IHsgR2FtZVN0YXRpc3RpY0Jhc2UgfSBmcm9tICcuL2dhbWUtc3RhdGlzdGljLWJhc2UnO1xuXG5ATW9kZWxJbnN0YW5jZSh7XG4gIG1hcHBpbmdGaWVsZHM6IHtcbiAgICBnYW1lX3VzZXJfaWQ6ICdnYW1lVXNlcklkJyxcbiAgICB1cGRhdGVkX2F0OiAndXBkYXRlZEF0JyxcbiAgICBwb2ludHM6ICdwb2ludHMnLFxuICAgIHBwX3Nob3RfbWlzc2VzOiAncHBTaG90TWlzc2VzJyxcbiAgICBwcF9zaG90c19vbl9nb2FsOiAncHBTaG90c09uR29hbCcsXG4gICAgcHBfc2hvdHNfYmxvY2tlZDogJ3BwU2hvdHNCbG9ja2VkJyxcbiAgICBldl9zaG90X21pc3NlczogJ2V2U2hvdE1pc3NlcycsXG4gICAgZXZfc2hvdHNfb25fZ29hbDogJ2V2U2hvdHNPbkdvYWwnLFxuICAgIGV2X3Nob3RzX2Jsb2NrZWQ6ICdldlNob3RzQmxvY2tlZCcsXG4gICAgc2hfc2hvdF9taXNzZXM6ICdzaFNob3RNaXNzZXMnLFxuICAgIHNoX3Nob3RzX29uX2dvYWw6ICdzaFNob3RzT25Hb2FsJyxcbiAgICBzaF9zaG90c19ibG9ja2VkOiAnc2hTaG90c0Jsb2NrZWQnLFxuICAgIHBwX3RvdGFsX3Nob3RzX29uX2dvYWw6ICdwcFRvdGFsU2hvdHNPbkdvYWwnLFxuICAgIGV2X3RvdGFsX3Nob3RzX29uX2dvYWw6ICdldlRvdGFsU2hvdHNPbkdvYWwnLFxuICAgIHNoX3RvdGFsX3Nob3RzX29uX2dvYWw6ICdzaFRvdGFsU2hvdHNPbkdvYWwnLFxuICAgIHBwX2dvYWxzOiAncHBHb2FscycsXG4gICAgZXZfZ29hbHM6ICdldkdvYWxzJyxcbiAgICBzaF9nb2FsczogJ3NoR29hbHMnLFxuICAgIHBwX2NvdW50ZXJhdHRhY2tfZ29hbHM6ICdwcENvdW50ZXJBdHRhY2tHb2FscycsXG4gICAgcHBfY291bnRlcmF0dGFja19vbl9nb2FsczogJ3BwQ291bnRlckF0dGFja09uR29hbHMnLFxuICAgIHBwX2NvdW50ZXJhdHRhY2tfbWlzc2VzOiAncHBDb3VudGVyQXR0YWNrTWlzc2VzJyxcbiAgICBwcF9jb3VudGVyYXR0YWNrX3Nob3RzX2Jsb2NrZWQ6ICdwcENvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQnLFxuICAgIGV2X2NvdW50ZXJhdHRhY2tfZ29hbHM6ICdldkNvdW50ZXJBdHRhY2tHb2FscycsXG4gICAgZXZfY291bnRlcmF0dGFja19vbl9nb2FsczogJ2V2Q291bnRlckF0dGFja09uR29hbHMnLFxuICAgIGV2X2NvdW50ZXJhdHRhY2tfbWlzc2VzOiAnZXZDb3VudGVyQXR0YWNrTWlzc2VzJyxcbiAgICBldl9jb3VudGVyYXR0YWNrX3Nob3RzX2Jsb2NrZWQ6ICdldkNvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQnLFxuICAgIHNoX2NvdW50ZXJhdHRhY2tfZ29hbHM6ICdzaENvdW50ZXJBdHRhY2tHb2FscycsXG4gICAgc2hfY291bnRlcmF0dGFja19vbl9nb2FsczogJ3NoQ291bnRlckF0dGFja09uR29hbHMnLFxuICAgIHNoX2NvdW50ZXJhdHRhY2tfbWlzc2VzOiAnc2hDb3VudGVyQXR0YWNrTWlzc2VzJyxcbiAgICBzaF9jb3VudGVyYXR0YWNrX3Nob3RzX2Jsb2NrZWQ6ICdzaENvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQnLFxuICAgIHBwX21hbmV1dmVyX2dvYWxzOiAncHBNYW5ldXZlckdvYWxzJyxcbiAgICBwcF9tYW5ldXZlcl9vbl9nb2FsczogJ3BwTWFuZXV2ZXJPbkdvYWxzJyxcbiAgICBwcF9tYW5ldXZlcl9taXNzZXM6ICdwcE1hbmV1dmVyTWlzc2VzJyxcbiAgICBwcF9tYW5ldXZlcl9zaG90c19ibG9ja2VkOiAncHBNYW5ldXZlclNob3RzQmxvY2tlZCcsXG4gICAgZXZfbWFuZXV2ZXJfZ29hbHM6ICdldk1hbmV1dmVyR29hbHMnLFxuICAgIGV2X21hbmV1dmVyX29uX2dvYWxzOiAnZXZNYW5ldXZlck9uR29hbHMnLFxuICAgIGV2X21hbmV1dmVyX21pc3NlczogJ2V2TWFuZXV2ZXJNaXNzZXMnLFxuICAgIGV2X21hbmV1dmVyX3Nob3RzX2Jsb2NrZWQ6ICdldk1hbmV1dmVyU2hvdHNCbG9ja2VkJyxcbiAgICBzaF9tYW5ldXZlcl9nb2FsczogJ3NoTWFuZXV2ZXJHb2FscycsXG4gICAgc2hfbWFuZXV2ZXJfb25fZ29hbHM6ICdzaE1hbmV1dmVyT25Hb2FscycsXG4gICAgc2hfbWFuZXV2ZXJfbWlzc2VzOiAnc2hNYW5ldXZlck1pc3NlcycsXG4gICAgc2hfbWFuZXV2ZXJfc2hvdHNfYmxvY2tlZDogJ3NoTWFuZXV2ZXJTaG90c0Jsb2NrZWQnLFxuICAgIHBwX2NlbnRlcl9mb3J3YXJkX2dvYWxzOiAncHBDZW50ZXJGb3J3YXJkR29hbHMnLFxuICAgIHBwX2NlbnRlcl9mb3J3YXJkX29uX2dvYWxzOiAncHBDZW50ZXJGb3J3YXJkT25Hb2FscycsXG4gICAgcHBfY2VudGVyX2ZvcndhcmRfbWlzc2VzOiAncHBDZW50ZXJGb3J3YXJkTWlzc2VzJyxcbiAgICBwcF9jZW50ZXJfZm9yd2FyZF9zaG90c19ibG9ja2VkOiAncHBDZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkJyxcbiAgICBldl9jZW50ZXJfZm9yd2FyZF9nb2FsczogJ2V2Q2VudGVyRm9yd2FyZEdvYWxzJyxcbiAgICBldl9jZW50ZXJfZm9yd2FyZF9vbl9nb2FsczogJ2V2Q2VudGVyRm9yd2FyZE9uR29hbHMnLFxuICAgIGV2X2NlbnRlcl9mb3J3YXJkX21pc3NlczogJ2V2Q2VudGVyRm9yd2FyZE1pc3NlcycsXG4gICAgZXZfY2VudGVyX2ZvcndhcmRfc2hvdHNfYmxvY2tlZDogJ2V2Q2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZCcsXG4gICAgc2hfY2VudGVyX2ZvcndhcmRfZ29hbHM6ICdzaENlbnRlckZvcndhcmRHb2FscycsXG4gICAgc2hfY2VudGVyX2ZvcndhcmRfb25fZ29hbHM6ICdzaENlbnRlckZvcndhcmRPbkdvYWxzJyxcbiAgICBzaF9jZW50ZXJfZm9yd2FyZF9taXNzZXM6ICdzaENlbnRlckZvcndhcmRNaXNzZXMnLFxuICAgIHNoX2NlbnRlcl9mb3J3YXJkX3Nob3RzX2Jsb2NrZWQ6ICdzaENlbnRlckZvcndhcmRTaG90c0Jsb2NrZWQnLFxuICAgIHBwX2Fzc2lzdHM6ICdwcEFzc2lzdHMnLFxuICAgIGV2X2Fzc2lzdHM6ICdldkFzc2lzdHMnLFxuICAgIHNoX2Fzc2lzdHM6ICdzaEFzc2lzdHMnLFxuICAgIHNob290b3V0X2F0dGVtcHRzOiAnc2hvb3RvdXRBdHRlbXB0cycsXG4gICAgc2hvb3RvdXRfZ29hbHM6ICdzaG9vdG91dEdvYWxzJyxcbiAgICBhZnRlcl9nYW1lX3Nob290b3V0X2F0dGVtcHRzOiAnYWZ0ZXJHYW1lU2hvb3RvdXRBdHRlbXB0cycsXG4gICAgYWZ0ZXJfZ2FtZV9zaG9vdG91dF9nb2FsczogJ2FmdGVyR2FtZVNob290b3V0R29hbHMnLFxuICAgIGJsb2NrX3Nob3RzOiAnYmxvY2tTaG90cycsXG4gICAgZmFjZV9vZmZfbG9zc2VzOiAnZmFjZU9mZkxvc3NlcycsXG4gICAgZmFjZV9vZmZfd2luczogJ2ZhY2VPZmZXaW5zJyxcbiAgICBwcF9zYXZlczogJ3BwU2F2ZXMnLFxuICAgIHNoX3NhdmVzOiAnc2hTYXZlcycsXG4gICAgZXZfc2F2ZXM6ICdldlNhdmVzJyxcbiAgICBwcF9jb3VudGVyYXR0YWNrX3NhdmVzOiAncHBDb3VudGVyQXR0YWNrU2F2ZXMnLFxuICAgIHNoX2NvdW50ZXJhdHRhY2tfc2F2ZXM6ICdzaENvdW50ZXJBdHRhY2tTYXZlcycsXG4gICAgZXZfY291bnRlcmF0dGFja19zYXZlczogJ2V2Q291bnRlckF0dGFja1NhdmVzJyxcbiAgICBwcF9tYW5ldXZlcl9zYXZlczogJ3BwTWFuZXV2ZXJTYXZlcycsXG4gICAgc2hfbWFuZXV2ZXJfc2F2ZXM6ICdzaE1hbmV1dmVyU2F2ZXMnLFxuICAgIGV2X21hbmV1dmVyX3NhdmVzOiAnZXZNYW5ldXZlclNhdmVzJyxcbiAgICBwcF9jZW50ZXJfZm9yd2FyZF9zYXZlczogJ3BwQ2VudGVyRm9yd2FyZFNhdmVzJyxcbiAgICBzaF9jZW50ZXJfZm9yd2FyZF9zYXZlczogJ3NoQ2VudGVyRm9yd2FyZFNhdmVzJyxcbiAgICBldl9jZW50ZXJfZm9yd2FyZF9zYXZlczogJ2V2Q2VudGVyRm9yd2FyZFNhdmVzJyxcbiAgICBwcF9mcmVlX2tpY2tfc2F2ZXM6ICdwcEZyZWVLaWNrU2F2ZXMnLFxuICAgIHNoX2ZyZWVfa2lja19zYXZlczogJ3NoRnJlZUtpY2tTYXZlcycsXG4gICAgZXZfZnJlZV9raWNrX3NhdmVzOiAnZXZGcmVlS2lja1NhdmVzJyxcbiAgICBwcF9jb3JuZXJfc2F2ZXM6ICdwcENvcm5lclNhdmVzJyxcbiAgICBzaF9jb3JuZXJfc2F2ZXM6ICdzaENvcm5lclNhdmVzJyxcbiAgICBldl9jb3JuZXJfc2F2ZXM6ICdldkNvcm5lclNhdmVzJyxcbiAgICBwcF90b3RhbF9nYW1lX3NhdmVzOiAncHBUb3RhbEdhbWVTYXZlcycsXG4gICAgc2hfdG90YWxfZ2FtZV9zYXZlczogJ3NoVG90YWxHYW1lU2F2ZXMnLFxuICAgIGV2X3RvdGFsX2dhbWVfc2F2ZXM6ICdldlRvdGFsR2FtZVNhdmVzJyxcbiAgICBzaG9vdG91dF9zYXZlczogJ3Nob290b3V0U2F2ZXMnLFxuICAgIGFmdGVyX2dhbWVfc2hvb3RvdXRfc2F2ZXM6ICdhZnRlckdhbWVTaG9vdG91dFNhdmVzJyxcbiAgICBwcF9nb2Fsc19hZ2FpbnN0OiAncHBHb2Fsc0FnYWluc3QnLFxuICAgIHNoX2dvYWxzX2FnYWluc3Q6ICdzaEdvYWxzQWdhaW5zdCcsXG4gICAgZXZfZ29hbHNfYWdhaW5zdDogJ2V2R29hbHNBZ2FpbnN0JyxcbiAgICBnb2Fsc19hZ2FpbnN0OiAnZ29hbHNBZ2FpbnN0JyxcbiAgICBwcF9jb3VudGVyYXR0YWNrX2dvYWxzX2FnYWluc3Q6ICdwcENvdW50ZXJBdHRhY2tHb2Fsc0FnYWluc3QnLFxuICAgIHNoX2NvdW50ZXJhdHRhY2tfZ29hbHNfYWdhaW5zdDogJ3NoQ291bnRlckF0dGFja0dvYWxzQWdhaW5zdCcsXG4gICAgZXZfY291bnRlcmF0dGFja19nb2Fsc19hZ2FpbnN0OiAnZXZDb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0JyxcbiAgICBjb3VudGVyYXR0YWNrX2dvYWxzX2FnYWluc3Q6ICdjb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0JyxcbiAgICBwcF9tYW5ldXZlcl9nb2Fsc19hZ2FpbnN0OiAncHBNYW5ldXZlckdvYWxzQWdhaW5zdCcsXG4gICAgc2hfbWFuZXV2ZXJfZ29hbHNfYWdhaW5zdDogJ3NoTWFuZXV2ZXJHb2Fsc0FnYWluc3QnLFxuICAgIGV2X21hbmV1dmVyX2dvYWxzX2FnYWluc3Q6ICdldk1hbmV1dmVyR29hbHNBZ2FpbnN0JyxcbiAgICBtYW5ldXZlcl9nb2Fsc19hZ2FpbnN0OiAnbWFuZXV2ZXJHb2Fsc0FnYWluc3QnLFxuICAgIHBwX2NlbnRlcl9mb3J3YXJkX2dvYWxzX2FnYWluc3Q6ICdwcENlbnRlckZvcndhcmRHb2Fsc0FnYWluc3QnLFxuICAgIHNoX2NlbnRlcl9mb3J3YXJkX2dvYWxzX2FnYWluc3Q6ICdzaENlbnRlckZvcndhcmRHb2Fsc0FnYWluc3QnLFxuICAgIGV2X2NlbnRlcl9mb3J3YXJkX2dvYWxzX2FnYWluc3Q6ICdldkNlbnRlckZvcndhcmRHb2Fsc0FnYWluc3QnLFxuICAgIGNlbnRlcl9mb3J3YXJkX2dvYWxzX2FnYWluc3Q6ICdjZW50ZXJGb3J3YXJkR29hbHNBZ2FpbnN0JyxcbiAgICBwcF9mcmVlX2tpY2tfZ29hbHNfYWdhaW5zdDogJ3BwRnJlZUtpY2tHb2Fsc0FnYWluc3QnLFxuICAgIHNoX2ZyZWVfa2lja19nb2Fsc19hZ2FpbnN0OiAnc2hGcmVlS2lja0dvYWxzQWdhaW5zdCcsXG4gICAgZXZfZnJlZV9raWNrX2dvYWxzX2FnYWluc3Q6ICdldkZyZWVLaWNrR29hbHNBZ2FpbnN0JyxcbiAgICBmcmVlX2tpY2tfZ29hbHNfYWdhaW5zdDogJ2ZyZWVLaWNrR29hbHNBZ2FpbnN0JyxcbiAgICBwcF9jb3JuZXJfZ29hbHNfYWdhaW5zdDogJ3BwQ29ybmVyR29hbHNBZ2FpbnN0JyxcbiAgICBzaF9jb3JuZXJfZ29hbHNfYWdhaW5zdDogJ3NoQ29ybmVyR29hbHNBZ2FpbnN0JyxcbiAgICBldl9jb3JuZXJfZ29hbHNfYWdhaW5zdDogJ2V2Q29ybmVyR29hbHNBZ2FpbnN0JyxcbiAgICBjb3JuZXJfZ29hbHNfYWdhaW5zdDogJ2Nvcm5lckdvYWxzQWdhaW5zdCcsXG4gICAgc2hvb3RvdXRfZ29hbHNfYWdhaW5zdDogJ3Nob290b3V0R29hbHNBZ2FpbnN0JyxcbiAgICBhZnRlcl9nYW1lX3Nob290b3V0X2dvYWxzX2FnYWluc3Q6ICdhZnRlckdhbWVTaG9vdG91dEdvYWxzQWdhaW5zdCcsXG4gICAgc2FmZXR5X3JhdGU6ICdzYWZldHlSYXRlJyxcbiAgICBwZW5hbHR5X21pbnV0ZXM6ICdwZW5hbHR5TWludXRlcycsXG4gICAgZ2FtZV90aW1lOiAnZ2FtZVRpbWUnLFxuICAgIHBsdXNfbWludXM6ICdwbHVzTWludXMnLFxuICAgIGZvdWxzOiAnZm91bHMnLFxuICAgIG1pbm9yX3BlbmFsdGllczogJ21pbm9yUGVuYWx0aWVzJyxcbiAgICBtYWpvcl9wZW5hbHRpZXM6ICdtYWpvclBlbmFsdGllcycsXG4gICAgbWF0Y2hfcGVuYWx0aWVzOiAnbWF0Y2hQZW5hbHRpZXMnLFxuICAgIHBlbmFsdHlfZm91bHM6ICdwZW5hbHR5Rm91bHMnLFxuICAgIHR1cm5vdmVyczogJ3R1cm5vdmVycycsXG4gICAgYXR0YWNrX2ZvdWxzOiAnYXR0YWNrRm91bHMnLFxuICAgIHBlcnNvbmFsX2ZvdWxzOiAncGVyc29uYWxGb3VscycsXG4gICAgZHJhd25fZm91bHM6ICdkcmF3bkZvdWxzJyxcbiAgICBkcmF3bl90dXJub3ZlcnM6ICdkcmF3blR1cm5vdmVycycsXG4gICAgeWVsbG93X2NhcmRzOiAneWVsbG93Q2FyZHMnLFxuICAgIHJlZF9jYXJkczogJ3JlZENhcmRzJyxcbiAgICBsb3NzZXM6ICdsb3NzZXMnLFxuICAgIHN0ZWFsczogJ3N0ZWFscycsXG4gICAgcHBfZnJlZV9raWNrX2dvYWxzOiAncHBGcmVlS2lja0dvYWxzJyxcbiAgICBwcF9mcmVlX2tpY2tfb25fZ29hbHM6ICdwcEZyZWVLaWNrT25Hb2FscycsXG4gICAgcHBfZnJlZV9raWNrX21pc3NlczogJ3BwRnJlZUtpY2tNaXNzZXMnLFxuICAgIHBwX2ZyZWVfa2lja19zaG90c19ibG9ja2VkOiAncHBGcmVlS2lja1Nob3RzQmxvY2tlZCcsXG4gICAgc2hfZnJlZV9raWNrX2dvYWxzOiAnc2hGcmVlS2lja0dvYWxzJyxcbiAgICBzaF9mcmVlX2tpY2tfb25fZ29hbHM6ICdzaEZyZWVLaWNrT25Hb2FscycsXG4gICAgc2hfZnJlZV9raWNrX21pc3NlczogJ3NoRnJlZUtpY2tNaXNzZXMnLFxuICAgIHNoX2ZyZWVfa2lja19zaG90c19ibG9ja2VkOiAnc2hGcmVlS2lja1Nob3RzQmxvY2tlZCcsXG4gICAgZXZfZnJlZV9raWNrX2dvYWxzOiAnZXZGcmVlS2lja0dvYWxzJyxcbiAgICBldl9mcmVlX2tpY2tfb25fZ29hbHM6ICdldkZyZWVLaWNrT25Hb2FscycsXG4gICAgZXZfZnJlZV9raWNrX21pc3NlczogJ2V2RnJlZUtpY2tNaXNzZXMnLFxuICAgIGV2X2ZyZWVfa2lja19zaG90c19ibG9ja2VkOiAnZXZGcmVlS2lja1Nob3RzQmxvY2tlZCcsXG4gICAgZnJlZV9raWNrX3Bhc3NlczogJ2ZyZWVLaWNrUGFzc2VzJyxcbiAgICBmcmVlX2tpY2tfc2VsZnM6ICdmcmVlS2lja1NlbGZzJyxcbiAgICBwcF9jb3JuZXJfZ29hbHM6ICdwcENvcm5lckdvYWxzJyxcbiAgICBwcF9jb3JuZXJfb25fZ29hbHM6ICdwcENvcm5lck9uR29hbHMnLFxuICAgIHBwX2Nvcm5lcl9taXNzZXM6ICdwcENvcm5lck1pc3NlcycsXG4gICAgcHBfY29ybmVyX3Nob3RzX2Jsb2NrZWQ6ICdwcENvcm5lclNob3RzQmxvY2tlZCcsXG4gICAgc2hfY29ybmVyX2dvYWxzOiAnc2hDb3JuZXJHb2FscycsXG4gICAgc2hfY29ybmVyX29uX2dvYWxzOiAnc2hDb3JuZXJPbkdvYWxzJyxcbiAgICBzaF9jb3JuZXJfbWlzc2VzOiAnc2hDb3JuZXJNaXNzZXMnLFxuICAgIHNoX2Nvcm5lcl9zaG90c19ibG9ja2VkOiAnc2hDb3JuZXJTaG90c0Jsb2NrZWQnLFxuICAgIGV2X2Nvcm5lcl9nb2FsczogJ2V2Q29ybmVyR29hbHMnLFxuICAgIGV2X2Nvcm5lcl9vbl9nb2FsczogJ2V2Q29ybmVyT25Hb2FscycsXG4gICAgZXZfY29ybmVyX21pc3NlczogJ2V2Q29ybmVyTWlzc2VzJyxcbiAgICBldl9jb3JuZXJfc2hvdHNfYmxvY2tlZDogJ2V2Q29ybmVyU2hvdHNCbG9ja2VkJyxcbiAgICBjb3JuZXJfcGFzc2VzOiAnY29ybmVyUGFzc2VzJyxcbiAgICBjb3JuZXJfc2VsZnM6ICdjb3JuZXJTZWxmcycsXG4gICAgdGFja2xlczogJ3RhY2tsZXMnLFxuICAgIHBsYXllcl9lZmZpY2llbmN5OiAncGxheWVyRWZmaWNpZW5jeScsXG4gICAgZGVmZW5zZV9zZWxlY3RfcG9zaXRpb25zOiAnZGVmZW5zZVNlbGVjdFBvc2l0aW9ucycsXG4gICAgc2F2ZV9wb3NzZXNzaW9uczogJ3NhdmVQb3NzZXNzaW9ucycsXG5cbiAgICBwcF9wZXJpbWV0cl9zaG90X2dvYWxzOiAncHBQZXJpbWV0clNob3RHb2FscycsXG4gICAgcHBfcGVyaW1ldHJfc2hvdF9vbl9nb2FsczogJ3BwUGVyaW1ldHJTaG90T25Hb2FscycsXG4gICAgcHBfcGVyaW1ldHJfc2hvdF9taXNzZXM6ICdwcFBlcmltZXRyU2hvdE1pc3NlcycsXG4gICAgcHBfcGVyaW1ldHJfc2hvdHNfYmxvY2tlZDogJ3BwUGVyaW1ldHJTaG90c0Jsb2NrZWQnLFxuICAgIGV2X3BlcmltZXRyX3Nob3RfZ29hbHM6ICdldlBlcmltZXRyU2hvdEdvYWxzJyxcbiAgICBldl9wZXJpbWV0cl9zaG90X29uX2dvYWxzOiAnZXZQZXJpbWV0clNob3RPbkdvYWxzJyxcbiAgICBldl9wZXJpbWV0cl9zaG90X21pc3NlczogJ2V2UGVyaW1ldHJTaG90TWlzc2VzJyxcbiAgICBldl9wZXJpbWV0cl9zaG90c19ibG9ja2VkOiAnZXZQZXJpbWV0clNob3RzQmxvY2tlZCcsXG4gICAgc2hfcGVyaW1ldHJfc2hvdF9nb2FsczogJ3NoUGVyaW1ldHJTaG90R29hbHMnLFxuICAgIHNoX3BlcmltZXRyX3Nob3Rfb25fZ29hbHM6ICdzaFBlcmltZXRyU2hvdE9uR29hbHMnLFxuICAgIHNoX3BlcmltZXRyX3Nob3RfbWlzc2VzOiAnc2hQZXJpbWV0clNob3RNaXNzZXMnLFxuICAgIHNoX3BlcmltZXRyX3Nob3RzX2Jsb2NrZWQ6ICdzaFBlcmltZXRyU2hvdHNCbG9ja2VkJyxcbiAgICBwcF9wZXJpbWV0cl9zaG90X3NhdmVzOiAncHBQZXJpbWV0clNob3RTYXZlcycsXG4gICAgc2hfcGVyaW1ldHJfc2hvdF9zYXZlczogJ3NoUGVyaW1ldHJTaG90U2F2ZXMnLFxuICAgIGV2X3BlcmltZXRyX3Nob3Rfc2F2ZXM6ICdldlBlcmltZXRyU2hvdFNhdmVzJyxcbiAgICBwcF9wZXJpbWV0cl9zaG90X2dvYWxzX2FnYWluc3Q6ICdwcFBlcmltZXRyU2hvdEdvYWxzQWdhaW5zdCcsXG4gICAgc2hfcGVyaW1ldHJfc2hvdF9nb2Fsc19hZ2FpbnN0OiAnc2hQZXJpbWV0clNob3RHb2Fsc0FnYWluc3QnLFxuICAgIGV2X3BlcmltZXRyX3Nob3RfZ29hbHNfYWdhaW5zdDogJ2V2UGVyaW1ldHJTaG90R29hbHNBZ2FpbnN0JyxcbiAgICBwZXJpbWV0cl9zaG90X2dvYWxzX2FnYWluc3Q6ICdwZXJpbWV0clNob3RHb2Fsc0FnYWluc3QnLFxuXG4gICAgcHBfcG9zdF9zaG90X2dvYWxzOiAncHBQb3N0U2hvdEdvYWxzJyxcbiAgICBwcF9wb3N0X3Nob3Rfb25fZ29hbHM6ICdwcFBvc3RTaG90T25Hb2FscycsXG4gICAgcHBfcG9zdF9zaG90X21pc3NlczogJ3BwUG9zdFNob3RNaXNzZXMnLFxuICAgIHBwX3Bvc3Rfc2hvdHNfYmxvY2tlZDogJ3BwUG9zdFNob3RzQmxvY2tlZCcsXG4gICAgZXZfcG9zdF9zaG90X2dvYWxzOiAnZXZQb3N0U2hvdEdvYWxzJyxcbiAgICBldl9wb3N0X3Nob3Rfb25fZ29hbHM6ICdldlBvc3RTaG90T25Hb2FscycsXG4gICAgZXZfcG9zdF9zaG90X21pc3NlczogJ2V2UG9zdFNob3RNaXNzZXMnLFxuICAgIGV2X3Bvc3Rfc2hvdHNfYmxvY2tlZDogJ2V2UG9zdFNob3RzQmxvY2tlZCcsXG4gICAgc2hfcG9zdF9zaG90X2dvYWxzOiAnc2hQb3N0U2hvdEdvYWxzJyxcbiAgICBzaF9wb3N0X3Nob3Rfb25fZ29hbHM6ICdzaFBvc3RTaG90T25Hb2FscycsXG4gICAgc2hfcG9zdF9zaG90X21pc3NlczogJ3NoUG9zdFNob3RNaXNzZXMnLFxuICAgIHNoX3Bvc3Rfc2hvdHNfYmxvY2tlZDogJ3NoUG9zdFNob3RzQmxvY2tlZCcsXG4gICAgcHBfcG9zdF9zaG90X3NhdmVzOiAncHBQb3N0U2hvdFNhdmVzJyxcbiAgICBzaF9wb3N0X3Nob3Rfc2F2ZXM6ICdzaFBvc3RTaG90U2F2ZXMnLFxuICAgIGV2X3Bvc3Rfc2hvdF9zYXZlczogJ2V2UG9zdFNob3RTYXZlcycsXG4gICAgcHBfcG9zdF9zaG90X2dvYWxzX2FnYWluc3Q6ICdwcFBvc3RTaG90R29hbHNBZ2FpbnN0JyxcbiAgICBzaF9wb3N0X3Nob3RfZ29hbHNfYWdhaW5zdDogJ3NoUG9zdFNob3RHb2Fsc0FnYWluc3QnLFxuICAgIGV2X3Bvc3Rfc2hvdF9nb2Fsc19hZ2FpbnN0OiAnZXZQb3N0U2hvdEdvYWxzQWdhaW5zdCcsXG4gICAgcG9zdF9zaG90X2dvYWxzX2FnYWluc3Q6ICdwb3N0U2hvdEdvYWxzQWdhaW5zdCcsXG5cbiAgICBwcF9mYXN0X3Nob3RfZ29hbHM6ICdwcEZhc3RTaG90R29hbHMnLFxuICAgIHBwX2Zhc3Rfc2hvdF9vbl9nb2FsczogJ3BwRmFzdFNob3RPbkdvYWxzJyxcbiAgICBwcF9mYXN0X3Nob3RfbWlzc2VzOiAncHBGYXN0U2hvdE1pc3NlcycsXG4gICAgcHBfZmFzdF9zaG90c19ibG9ja2VkOiAncHBGYXN0U2hvdHNCbG9ja2VkJyxcbiAgICBldl9mYXN0X3Nob3RfZ29hbHM6ICdldkZhc3RTaG90R29hbHMnLFxuICAgIGV2X2Zhc3Rfc2hvdF9vbl9nb2FsczogJ2V2RmFzdFNob3RPbkdvYWxzJyxcbiAgICBldl9mYXN0X3Nob3RfbWlzc2VzOiAnZXZGYXN0U2hvdE1pc3NlcycsXG4gICAgZXZfZmFzdF9zaG90c19ibG9ja2VkOiAnZXZGYXN0U2hvdHNCbG9ja2VkJyxcbiAgICBzaF9mYXN0X3Nob3RfZ29hbHM6ICdzaEZhc3RTaG90R29hbHMnLFxuICAgIHNoX2Zhc3Rfc2hvdF9vbl9nb2FsczogJ3NoRmFzdFNob3RPbkdvYWxzJyxcbiAgICBzaF9mYXN0X3Nob3RfbWlzc2VzOiAnc2hGYXN0U2hvdE1pc3NlcycsXG4gICAgc2hfZmFzdF9zaG90c19ibG9ja2VkOiAnc2hGYXN0U2hvdHNCbG9ja2VkJyxcbiAgICBwcF9mYXN0X3Nob3Rfc2F2ZXM6ICdwcEZhc3RTaG90U2F2ZXMnLFxuICAgIHNoX2Zhc3Rfc2hvdF9zYXZlczogJ3NoRmFzdFNob3RTYXZlcycsXG4gICAgZXZfZmFzdF9zaG90X3NhdmVzOiAnZXZGYXN0U2hvdFNhdmVzJyxcbiAgICBwcF9mYXN0X3Nob3RfZ29hbHNfYWdhaW5zdDogJ3BwRmFzdFNob3RHb2Fsc0FnYWluc3QnLFxuICAgIHNoX2Zhc3Rfc2hvdF9nb2Fsc19hZ2FpbnN0OiAnc2hGYXN0U2hvdEdvYWxzQWdhaW5zdCcsXG4gICAgZXZfZmFzdF9zaG90X2dvYWxzX2FnYWluc3Q6ICdldkZhc3RTaG90R29hbHNBZ2FpbnN0JyxcbiAgICBmYXN0X3Nob3RfZ29hbHNfYWdhaW5zdDogJ2Zhc3RTaG90R29hbHNBZ2FpbnN0JyxcbiAgfSxcbiAgcmVsYXRpb246IHtcbiAgICB1cGRhdGVkQXQ6IERhdGVUaW1lRmllbGQsXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgV2F0ZXJwb2xvR2FtZVN0YXRpc3RpYyBleHRlbmRzIEJhc2VNb2RlbCBpbXBsZW1lbnRzIEdhbWVTdGF0aXN0aWNCYXNlIHtcbiAgZ2FtZVVzZXJJZDogbnVtYmVyO1xuICBwb2ludHM6IG51bWJlcjtcbiAgcHBTaG90TWlzc2VzOiBudW1iZXI7XG4gIHBwU2hvdHNPbkdvYWw6IG51bWJlcjtcbiAgcHBTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgZXZTaG90TWlzc2VzOiBudW1iZXI7XG4gIGV2U2hvdHNPbkdvYWw6IG51bWJlcjtcbiAgZXZTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgc2hTaG90TWlzc2VzOiBudW1iZXI7XG4gIHNoU2hvdHNPbkdvYWw6IG51bWJlcjtcbiAgc2hTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgcHBUb3RhbFNob3RzT25Hb2FsOiBudW1iZXI7XG4gIGV2VG90YWxTaG90c09uR29hbDogbnVtYmVyO1xuICBzaFRvdGFsU2hvdHNPbkdvYWw6IG51bWJlcjtcbiAgcHBHb2FsczogbnVtYmVyO1xuICBldkdvYWxzOiBudW1iZXI7XG4gIHNoR29hbHM6IG51bWJlcjtcbiAgcHBDb3VudGVyQXR0YWNrR29hbHM6IG51bWJlcjtcbiAgcHBDb3VudGVyQXR0YWNrT25Hb2FsczogbnVtYmVyO1xuICBwcENvdW50ZXJBdHRhY2tNaXNzZXM6IG51bWJlcjtcbiAgcHBDb3VudGVyQXR0YWNrU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIGV2Q291bnRlckF0dGFja0dvYWxzOiBudW1iZXI7XG4gIGV2Q291bnRlckF0dGFja09uR29hbHM6IG51bWJlcjtcbiAgZXZDb3VudGVyQXR0YWNrTWlzc2VzOiBudW1iZXI7XG4gIGV2Q291bnRlckF0dGFja1Nob3RzQmxvY2tlZDogbnVtYmVyO1xuICBzaENvdW50ZXJBdHRhY2tHb2FsczogbnVtYmVyO1xuICBzaENvdW50ZXJBdHRhY2tPbkdvYWxzOiBudW1iZXI7XG4gIHNoQ291bnRlckF0dGFja01pc3NlczogbnVtYmVyO1xuICBzaENvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgcHBNYW5ldXZlckdvYWxzOiBudW1iZXI7XG4gIHBwTWFuZXV2ZXJPbkdvYWxzOiBudW1iZXI7XG4gIHBwTWFuZXV2ZXJNaXNzZXM6IG51bWJlcjtcbiAgcHBNYW5ldXZlclNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBldk1hbmV1dmVyR29hbHM6IG51bWJlcjtcbiAgZXZNYW5ldXZlck9uR29hbHM6IG51bWJlcjtcbiAgZXZNYW5ldXZlck1pc3NlczogbnVtYmVyO1xuICBldk1hbmV1dmVyU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIHNoTWFuZXV2ZXJHb2FsczogbnVtYmVyO1xuICBzaE1hbmV1dmVyT25Hb2FsczogbnVtYmVyO1xuICBzaE1hbmV1dmVyTWlzc2VzOiBudW1iZXI7XG4gIHNoTWFuZXV2ZXJTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgcHBDZW50ZXJGb3J3YXJkR29hbHM6IG51bWJlcjtcbiAgcHBDZW50ZXJGb3J3YXJkT25Hb2FsczogbnVtYmVyO1xuICBwcENlbnRlckZvcndhcmRNaXNzZXM6IG51bWJlcjtcbiAgcHBDZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIGV2Q2VudGVyRm9yd2FyZEdvYWxzOiBudW1iZXI7XG4gIGV2Q2VudGVyRm9yd2FyZE9uR29hbHM6IG51bWJlcjtcbiAgZXZDZW50ZXJGb3J3YXJkTWlzc2VzOiBudW1iZXI7XG4gIGV2Q2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBzaENlbnRlckZvcndhcmRHb2FsczogbnVtYmVyO1xuICBzaENlbnRlckZvcndhcmRPbkdvYWxzOiBudW1iZXI7XG4gIHNoQ2VudGVyRm9yd2FyZE1pc3NlczogbnVtYmVyO1xuICBzaENlbnRlckZvcndhcmRTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgcHBBc3Npc3RzOiBudW1iZXI7XG4gIGV2QXNzaXN0czogbnVtYmVyO1xuICBzaEFzc2lzdHM6IG51bWJlcjtcbiAgc2hvb3RvdXRBdHRlbXB0czogbnVtYmVyO1xuICBzaG9vdG91dEdvYWxzOiBudW1iZXI7XG4gIGFmdGVyR2FtZVNob290b3V0QXR0ZW1wdHM6IG51bWJlcjtcbiAgYWZ0ZXJHYW1lU2hvb3RvdXRHb2FsczogbnVtYmVyO1xuICBibG9ja1Nob3RzOiBudW1iZXI7XG4gIGZhY2VPZmZMb3NzZXM6IG51bWJlcjtcbiAgZmFjZU9mZldpbnM6IG51bWJlcjtcbiAgcHBTYXZlczogbnVtYmVyO1xuICBzaFNhdmVzOiBudW1iZXI7XG4gIGV2U2F2ZXM6IG51bWJlcjtcbiAgcHBDb3VudGVyQXR0YWNrU2F2ZXM6IG51bWJlcjtcbiAgc2hDb3VudGVyQXR0YWNrU2F2ZXM6IG51bWJlcjtcbiAgZXZDb3VudGVyQXR0YWNrU2F2ZXM6IG51bWJlcjtcbiAgcHBNYW5ldXZlclNhdmVzOiBudW1iZXI7XG4gIHNoTWFuZXV2ZXJTYXZlczogbnVtYmVyO1xuICBldk1hbmV1dmVyU2F2ZXM6IG51bWJlcjtcbiAgcHBDZW50ZXJGb3J3YXJkU2F2ZXM6IG51bWJlcjtcbiAgc2hDZW50ZXJGb3J3YXJkU2F2ZXM6IG51bWJlcjtcbiAgZXZDZW50ZXJGb3J3YXJkU2F2ZXM6IG51bWJlcjtcbiAgcHBGcmVlS2lja1NhdmVzOiBudW1iZXI7XG4gIHNoRnJlZUtpY2tTYXZlczogbnVtYmVyO1xuICBldkZyZWVLaWNrU2F2ZXM6IG51bWJlcjtcbiAgcHBDb3JuZXJTYXZlczogbnVtYmVyO1xuICBzaENvcm5lclNhdmVzOiBudW1iZXI7XG4gIGV2Q29ybmVyU2F2ZXM6IG51bWJlcjtcbiAgcHBUb3RhbEdhbWVTYXZlczogbnVtYmVyO1xuICBzaFRvdGFsR2FtZVNhdmVzOiBudW1iZXI7XG4gIGV2VG90YWxHYW1lU2F2ZXM6IG51bWJlcjtcbiAgc2hvb3RvdXRTYXZlczogbnVtYmVyO1xuICBhZnRlckdhbWVTaG9vdG91dFNhdmVzOiBudW1iZXI7XG4gIHBwR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHNoR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGV2R29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBwcENvdW50ZXJBdHRhY2tHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgc2hDb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGV2Q291bnRlckF0dGFja0dvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBjb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHBwTWFuZXV2ZXJHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgc2hNYW5ldXZlckdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBldk1hbmV1dmVyR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIG1hbmV1dmVyR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHBwQ2VudGVyRm9yd2FyZEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBzaENlbnRlckZvcndhcmRHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZXZDZW50ZXJGb3J3YXJkR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGNlbnRlckZvcndhcmRHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgcHBGcmVlS2lja0dvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBzaEZyZWVLaWNrR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGV2RnJlZUtpY2tHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZnJlZUtpY2tHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgcHBDb3JuZXJHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgc2hDb3JuZXJHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZXZDb3JuZXJHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgY29ybmVyR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHNob290b3V0R29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGFmdGVyR2FtZVNob290b3V0R29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHNhZmV0eVJhdGU6IG51bWJlcjtcbiAgcGVuYWx0eU1pbnV0ZXM6IG51bWJlcjtcbiAgZ2FtZVRpbWU6IG51bWJlcjtcbiAgcGx1c01pbnVzOiBudW1iZXI7XG4gIGZvdWxzOiBudW1iZXI7XG4gIG1pbm9yUGVuYWx0aWVzOiBudW1iZXI7XG4gIG1ham9yUGVuYWx0aWVzOiBudW1iZXI7XG4gIG1hdGNoUGVuYWx0aWVzOiBudW1iZXI7XG4gIHBlbmFsdHlGb3VsczogbnVtYmVyO1xuICB0dXJub3ZlcnM6IG51bWJlcjtcbiAgYXR0YWNrRm91bHM6IG51bWJlcjtcbiAgcGVyc29uYWxGb3VsczogbnVtYmVyO1xuICBkcmF3bkZvdWxzOiBudW1iZXI7XG4gIGRyYXduVHVybm92ZXJzOiBudW1iZXI7XG4gIHllbGxvd0NhcmRzOiBudW1iZXI7XG4gIHJlZENhcmRzOiBudW1iZXI7XG4gIGxvc3NlczogbnVtYmVyO1xuICBzdGVhbHM6IG51bWJlcjtcbiAgcHBGcmVlS2lja0dvYWxzOiBudW1iZXI7XG4gIHBwRnJlZUtpY2tPbkdvYWxzOiBudW1iZXI7XG4gIHBwRnJlZUtpY2tNaXNzZXM6IG51bWJlcjtcbiAgcHBGcmVlS2lja1Nob3RzQmxvY2tlZDogbnVtYmVyO1xuICBzaEZyZWVLaWNrR29hbHM6IG51bWJlcjtcbiAgc2hGcmVlS2lja09uR29hbHM6IG51bWJlcjtcbiAgc2hGcmVlS2lja01pc3NlczogbnVtYmVyO1xuICBzaEZyZWVLaWNrU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIGV2RnJlZUtpY2tHb2FsczogbnVtYmVyO1xuICBldkZyZWVLaWNrT25Hb2FsczogbnVtYmVyO1xuICBldkZyZWVLaWNrTWlzc2VzOiBudW1iZXI7XG4gIGV2RnJlZUtpY2tTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgZnJlZUtpY2tQYXNzZXM6IG51bWJlcjtcbiAgZnJlZUtpY2tTZWxmczogbnVtYmVyO1xuICBwcENvcm5lckdvYWxzOiBudW1iZXI7XG4gIHBwQ29ybmVyT25Hb2FsczogbnVtYmVyO1xuICBwcENvcm5lck1pc3NlczogbnVtYmVyO1xuICBwcENvcm5lclNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBzaENvcm5lckdvYWxzOiBudW1iZXI7XG4gIHNoQ29ybmVyT25Hb2FsczogbnVtYmVyO1xuICBzaENvcm5lck1pc3NlczogbnVtYmVyO1xuICBzaENvcm5lclNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBldkNvcm5lckdvYWxzOiBudW1iZXI7XG4gIGV2Q29ybmVyT25Hb2FsczogbnVtYmVyO1xuICBldkNvcm5lck1pc3NlczogbnVtYmVyO1xuICBldkNvcm5lclNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBjb3JuZXJQYXNzZXM6IG51bWJlcjtcbiAgY29ybmVyU2VsZnM6IG51bWJlcjtcbiAgdGFja2xlczogbnVtYmVyO1xuICBwbGF5ZXJFZmZpY2llbmN5OiBudW1iZXI7XG4gIGRlZmVuc2VTZWxlY3RQb3NpdGlvbnM6IG51bWJlcjtcbiAgc2F2ZVBvc3Nlc3Npb25zOiBudW1iZXI7XG5cbiAgcHBQZXJpbWV0clNob3RHb2FsczogbnVtYmVyO1xuICBwcFBlcmltZXRyU2hvdE9uR29hbHM6IG51bWJlcjtcbiAgcHBQZXJpbWV0clNob3RNaXNzZXM6IG51bWJlcjtcbiAgcHBQZXJpbWV0clNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBldlBlcmltZXRyU2hvdEdvYWxzOiBudW1iZXI7XG4gIGV2UGVyaW1ldHJTaG90T25Hb2FsczogbnVtYmVyO1xuICBldlBlcmltZXRyU2hvdE1pc3NlczogbnVtYmVyO1xuICBldlBlcmltZXRyU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIHNoUGVyaW1ldHJTaG90R29hbHM6IG51bWJlcjtcbiAgc2hQZXJpbWV0clNob3RPbkdvYWxzOiBudW1iZXI7XG4gIHNoUGVyaW1ldHJTaG90TWlzc2VzOiBudW1iZXI7XG4gIHNoUGVyaW1ldHJTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgcHBQZXJpbWV0clNob3RTYXZlczogbnVtYmVyO1xuICBzaFBlcmltZXRyU2hvdFNhdmVzOiBudW1iZXI7XG4gIGV2UGVyaW1ldHJTaG90U2F2ZXM6IG51bWJlcjtcbiAgcHBQZXJpbWV0clNob3RHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgc2hQZXJpbWV0clNob3RHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZXZQZXJpbWV0clNob3RHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgcGVyaW1ldHJTaG90R29hbHNBZ2FpbnN0OiBudW1iZXI7XG5cbiAgcHBQb3N0U2hvdEdvYWxzOiBudW1iZXI7XG4gIHBwUG9zdFNob3RPbkdvYWxzOiBudW1iZXI7XG4gIHBwUG9zdFNob3RNaXNzZXM6IG51bWJlcjtcbiAgcHBQb3N0U2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIGV2UG9zdFNob3RHb2FsczogbnVtYmVyO1xuICBldlBvc3RTaG90T25Hb2FsczogbnVtYmVyO1xuICBldlBvc3RTaG90TWlzc2VzOiBudW1iZXI7XG4gIGV2UG9zdFNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBzaFBvc3RTaG90R29hbHM6IG51bWJlcjtcbiAgc2hQb3N0U2hvdE9uR29hbHM6IG51bWJlcjtcbiAgc2hQb3N0U2hvdE1pc3NlczogbnVtYmVyO1xuICBzaFBvc3RTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgcHBQb3N0U2hvdFNhdmVzOiBudW1iZXI7XG4gIHNoUG9zdFNob3RTYXZlczogbnVtYmVyO1xuICBldlBvc3RTaG90U2F2ZXM6IG51bWJlcjtcbiAgcHBQb3N0U2hvdEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBzaFBvc3RTaG90R29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGV2UG9zdFNob3RHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgcG9zdFNob3RHb2Fsc0FnYWluc3Q6IG51bWJlcjtcblxuICBwcEZhc3RTaG90R29hbHM6IG51bWJlcjtcbiAgcHBGYXN0U2hvdE9uR29hbHM6IG51bWJlcjtcbiAgcHBGYXN0U2hvdE1pc3NlczogbnVtYmVyO1xuICBwcEZhc3RTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgZXZGYXN0U2hvdEdvYWxzOiBudW1iZXI7XG4gIGV2RmFzdFNob3RPbkdvYWxzOiBudW1iZXI7XG4gIGV2RmFzdFNob3RNaXNzZXM6IG51bWJlcjtcbiAgZXZGYXN0U2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIHNoRmFzdFNob3RHb2FsczogbnVtYmVyO1xuICBzaEZhc3RTaG90T25Hb2FsczogbnVtYmVyO1xuICBzaEZhc3RTaG90TWlzc2VzOiBudW1iZXI7XG4gIHNoRmFzdFNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBwcEZhc3RTaG90U2F2ZXM6IG51bWJlcjtcbiAgc2hGYXN0U2hvdFNhdmVzOiBudW1iZXI7XG4gIGV2RmFzdFNob3RTYXZlczogbnVtYmVyO1xuICBwcEZhc3RTaG90R29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHNoRmFzdFNob3RHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZXZGYXN0U2hvdEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBmYXN0U2hvdEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuXG4gIHVwZGF0ZWRBdDogRGF0ZTtcblxuICBnZXQgaWQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nYW1lVXNlcklkO1xuICB9XG5cbiAgZ2V0IGdhbWVNaW51dGVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIE1hdGguZmxvb3IodGhpcy5nYW1lVGltZSAvIDYwKTtcbiAgfVxuXG4gIGdldCBwZW5hbHR5VGltZSgpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5wZW5hbHR5TWludXRlcykge1xuICAgICAgcmV0dXJuICcwMDowMCc7XG4gICAgfVxuICAgIGNvbnN0IG1pbnV0ZXMgPSBNYXRoLmZsb29yKHRoaXMucGVuYWx0eU1pbnV0ZXMgLyA2MCk7XG4gICAgY29uc3Qgc2Vjb25kcyA9IE1hdGguZmxvb3IodGhpcy5wZW5hbHR5TWludXRlcyAtIG1pbnV0ZXMgKiA2MCk7XG4gICAgcmV0dXJuIGAke21pbnV0ZXMgPCAxMCA/IDAgOiAnJ30ke21pbnV0ZXN9OiR7c2Vjb25kcyA8IDEwID8gMCA6ICcnfSR7c2Vjb25kc31gO1xuICB9XG5cbiAgZ2V0IGFzc2lzdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBBc3Npc3RzIHx8IDApICsgKHRoaXMuc2hBc3Npc3RzIHx8IDApICArICh0aGlzLmV2QXNzaXN0cyB8fCAwKTtcbiAgfVxuXG4gIGdldCB0b3RhbENvdW50ZXJBdHRhY2tHb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENvdW50ZXJBdHRhY2tHb2FscyB8fCAwKSArICh0aGlzLmV2Q291bnRlckF0dGFja0dvYWxzIHx8IDApICArICh0aGlzLnNoQ291bnRlckF0dGFja0dvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBwQ291bnRlckF0dGFja1Nob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ291bnRlckF0dGFja09uR29hbHMgfHwgMCkgKyAodGhpcy5wcENvdW50ZXJBdHRhY2tNaXNzZXMgfHwgMCkgKyAodGhpcy5wcENvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgc2hDb3VudGVyQXR0YWNrU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hDb3VudGVyQXR0YWNrT25Hb2FscyB8fCAwKSArICh0aGlzLnNoQ291bnRlckF0dGFja01pc3NlcyB8fCAwKSArICh0aGlzLnNoQ291bnRlckF0dGFja1Nob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBldkNvdW50ZXJBdHRhY2tTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5ldkNvdW50ZXJBdHRhY2tPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZDb3VudGVyQXR0YWNrTWlzc2VzIHx8IDApICsgKHRoaXMuZXZDb3VudGVyQXR0YWNrU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNvdW50ZXJBdHRhY2tTaG90TWlzc2VzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ291bnRlckF0dGFja01pc3NlcyB8fCAwKSArICh0aGlzLnNoQ291bnRlckF0dGFja01pc3NlcyB8fCAwKSArICh0aGlzLmV2Q291bnRlckF0dGFja01pc3NlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBjb3VudGVyQXR0YWNrU2hvdE9uR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDb3VudGVyQXR0YWNrT25Hb2FscyB8fCAwKSArICh0aGlzLnNoQ291bnRlckF0dGFja09uR29hbHMgfHwgMCkgKyAodGhpcy5ldkNvdW50ZXJBdHRhY2tPbkdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDb3VudGVyQXR0YWNrU2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuc2hDb3VudGVyQXR0YWNrU2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuZXZDb3VudGVyQXR0YWNrU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNvdW50ZXJBdHRhY2tTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNvdW50ZXJBdHRhY2tTaG90TWlzc2VzICsgdGhpcy5jb3VudGVyQXR0YWNrU2hvdE9uR29hbHMgKyB0aGlzLmNvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQ7XG4gIH1cblxuICBnZXQgY291bnRlckF0dGFja0dvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbENvdW50ZXJBdHRhY2tHb2FscyB8fCAhdGhpcy5jb3VudGVyQXR0YWNrU2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbENvdW50ZXJBdHRhY2tHb2FscyAvIHRoaXMuY291bnRlckF0dGFja1Nob3RzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IHRvdGFsTWFuZXV2ZXJHb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcE1hbmV1dmVyR29hbHMgfHwgMCkgKyAodGhpcy5zaE1hbmV1dmVyR29hbHMgfHwgMCkgKyAodGhpcy5ldk1hbmV1dmVyR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgcHBNYW5ldXZlclNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwTWFuZXV2ZXJPbkdvYWxzIHx8IDApICsgKHRoaXMucHBNYW5ldXZlck1pc3NlcyB8fCAwKSArICh0aGlzLnBwTWFuZXV2ZXJTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgc2hNYW5ldXZlclNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnNoTWFuZXV2ZXJPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hNYW5ldXZlck1pc3NlcyB8fCAwKSArICh0aGlzLnNoTWFuZXV2ZXJTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgZXZNYW5ldXZlclNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmV2TWFuZXV2ZXJPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZNYW5ldXZlck1pc3NlcyB8fCAwKSArICh0aGlzLmV2TWFuZXV2ZXJTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgbWFuZXV2ZXJTaG90TWlzc2VzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwTWFuZXV2ZXJNaXNzZXMgfHwgMCkgKyAodGhpcy5zaE1hbmV1dmVyTWlzc2VzIHx8IDApICsgICh0aGlzLmV2TWFuZXV2ZXJNaXNzZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgbWFuZXV2ZXJTaG90T25Hb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcE1hbmV1dmVyT25Hb2FscyB8fCAwKSArICh0aGlzLnNoTWFuZXV2ZXJPbkdvYWxzIHx8IDApICsgICh0aGlzLmV2TWFuZXV2ZXJPbkdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IG1hbmV1dmVyU2hvdHNCbG9ja2VkKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwTWFuZXV2ZXJTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5zaE1hbmV1dmVyU2hvdHNCbG9ja2VkIHx8IDApICsgICh0aGlzLmV2TWFuZXV2ZXJTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgbWFuZXV2ZXJTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLm1hbmV1dmVyU2hvdE1pc3NlcyArIHRoaXMubWFuZXV2ZXJTaG90T25Hb2FscyArIHRoaXMubWFuZXV2ZXJTaG90c0Jsb2NrZWQ7XG4gIH1cblxuICBnZXQgbWFuZXV2ZXJHb2Fsc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMudG90YWxNYW5ldXZlckdvYWxzIHx8ICF0aGlzLm1hbmV1dmVyU2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbE1hbmV1dmVyR29hbHMgLyB0aGlzLm1hbmV1dmVyU2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgdG90YWxDZW50ZXJGb3J3YXJkR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDZW50ZXJGb3J3YXJkR29hbHMgfHwgMCkgKyAodGhpcy5zaENlbnRlckZvcndhcmRHb2FscyB8fCAwKSArICAodGhpcy5ldkNlbnRlckZvcndhcmRHb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwcENlbnRlckZvcndhcmRTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENlbnRlckZvcndhcmRPbkdvYWxzIHx8IDApICsgKHRoaXMucHBDZW50ZXJGb3J3YXJkTWlzc2VzIHx8IDApICsgKHRoaXMucHBDZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IHNoQ2VudGVyRm9yd2FyZFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnNoQ2VudGVyRm9yd2FyZE9uR29hbHMgfHwgMCkgKyAodGhpcy5zaENlbnRlckZvcndhcmRNaXNzZXMgfHwgMCkgKyAodGhpcy5zaENlbnRlckZvcndhcmRTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgZXZDZW50ZXJGb3J3YXJkU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuZXZDZW50ZXJGb3J3YXJkT25Hb2FscyB8fCAwKSArICh0aGlzLmV2Q2VudGVyRm9yd2FyZE1pc3NlcyB8fCAwKSArICh0aGlzLmV2Q2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBjZW50ZXJGb3J3YXJkU2hvdE1pc3NlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENlbnRlckZvcndhcmRNaXNzZXMgfHwgMCkgKyAodGhpcy5zaENlbnRlckZvcndhcmRNaXNzZXMgfHwgMCkgKyAodGhpcy5ldkNlbnRlckZvcndhcmRNaXNzZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgY2VudGVyRm9yd2FyZFNob3RPbkdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ2VudGVyRm9yd2FyZE9uR29hbHMgfHwgMCkgKyAodGhpcy5zaENlbnRlckZvcndhcmRPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZDZW50ZXJGb3J3YXJkT25Hb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBjZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLnNoQ2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLmV2Q2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBjZW50ZXJGb3J3YXJkU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jZW50ZXJGb3J3YXJkU2hvdE1pc3NlcyArIHRoaXMuY2VudGVyRm9yd2FyZFNob3RPbkdvYWxzICsgdGhpcy5jZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkO1xuICB9XG5cbiAgZ2V0IGNlbnRlckZvcndhcmRHb2Fsc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMudG90YWxDZW50ZXJGb3J3YXJkR29hbHMgfHwgIXRoaXMuY2VudGVyRm9yd2FyZFNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxDZW50ZXJGb3J3YXJkR29hbHMgLyB0aGlzLmNlbnRlckZvcndhcmRTaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCB0b3RhbFBlcmltZXRyU2hvdEdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwUGVyaW1ldHJTaG90R29hbHMgfHwgMCkgKyAodGhpcy5ldlBlcmltZXRyU2hvdEdvYWxzIHx8IDApICArICh0aGlzLnNoUGVyaW1ldHJTaG90R29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgcHBQZXJpbWV0clNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwUGVyaW1ldHJTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLnBwUGVyaW1ldHJTaG90TWlzc2VzIHx8IDApICsgKHRoaXMucHBQZXJpbWV0clNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBzaFBlcmltZXRyU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hQZXJpbWV0clNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hQZXJpbWV0clNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5zaFBlcmltZXRyU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IGV2UGVyaW1ldHJTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5ldlBlcmltZXRyU2hvdE9uR29hbHMgfHwgMCkgKyAodGhpcy5ldlBlcmltZXRyU2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLmV2UGVyaW1ldHJTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgcGVyaW1ldHJTaG90TWlzc2VzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwUGVyaW1ldHJTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuc2hQZXJpbWV0clNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5ldlBlcmltZXRyU2hvdE1pc3NlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwZXJpbWV0clNob3RPbkdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwUGVyaW1ldHJTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLnNoUGVyaW1ldHJTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLmV2UGVyaW1ldHJTaG90T25Hb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwZXJpbWV0clNob3RzQmxvY2tlZCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFBlcmltZXRyU2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuc2hQZXJpbWV0clNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLmV2UGVyaW1ldHJTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgcGVyaW1ldHJTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnBlcmltZXRyU2hvdE1pc3NlcyArIHRoaXMucGVyaW1ldHJTaG90T25Hb2FscyArIHRoaXMucGVyaW1ldHJTaG90c0Jsb2NrZWQ7XG4gIH1cblxuICBnZXQgcGVyaW1ldHJTaG90R29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsUGVyaW1ldHJTaG90R29hbHMgfHwgIXRoaXMucGVyaW1ldHJTaG90cykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnRvdGFsUGVyaW1ldHJTaG90R29hbHMgLyB0aGlzLnBlcmltZXRyU2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgdG90YWxQb3N0U2hvdEdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwUG9zdFNob3RHb2FscyB8fCAwKSArICh0aGlzLmV2UG9zdFNob3RHb2FscyB8fCAwKSAgKyAodGhpcy5zaFBvc3RTaG90R29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgcHBQb3N0U2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBQb3N0U2hvdE9uR29hbHMgfHwgMCkgKyAodGhpcy5wcFBvc3RTaG90TWlzc2VzIHx8IDApICsgKHRoaXMucHBQb3N0U2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IHNoUG9zdFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnNoUG9zdFNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hQb3N0U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnNoUG9zdFNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBldlBvc3RTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5ldlBvc3RTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLmV2UG9zdFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5ldlBvc3RTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zdFNob3RNaXNzZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBQb3N0U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnNoUG9zdFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5ldlBvc3RTaG90TWlzc2VzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBvc3RTaG90T25Hb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFBvc3RTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLnNoUG9zdFNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZQb3N0U2hvdE9uR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zdFNob3RzQmxvY2tlZCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFBvc3RTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5zaFBvc3RTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5ldlBvc3RTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zdFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucG9zdFNob3RNaXNzZXMgKyB0aGlzLnBvc3RTaG90T25Hb2FscyArIHRoaXMucG9zdFNob3RzQmxvY2tlZDtcbiAgfVxuXG4gIGdldCBwb3N0U2hvdEdvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbFBvc3RTaG90R29hbHMgfHwgIXRoaXMucG9zdFNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxQb3N0U2hvdEdvYWxzIC8gdGhpcy5wb3N0U2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgdG90YWxGYXN0U2hvdEdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwRmFzdFNob3RHb2FscyB8fCAwKSArICh0aGlzLmV2RmFzdFNob3RHb2FscyB8fCAwKSAgKyAodGhpcy5zaEZhc3RTaG90R29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgcHBGYXN0U2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBGYXN0U2hvdE9uR29hbHMgfHwgMCkgKyAodGhpcy5wcEZhc3RTaG90TWlzc2VzIHx8IDApICsgKHRoaXMucHBGYXN0U2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IHNoRmFzdFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnNoRmFzdFNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hGYXN0U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnNoRmFzdFNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBldkZhc3RTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5ldkZhc3RTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLmV2RmFzdFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5ldkZhc3RTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgZmFzdFNob3RNaXNzZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBGYXN0U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnNoRmFzdFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5ldkZhc3RTaG90TWlzc2VzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGZhc3RTaG90T25Hb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEZhc3RTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLnNoRmFzdFNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZGYXN0U2hvdE9uR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgZmFzdFNob3RzQmxvY2tlZCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEZhc3RTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5zaEZhc3RTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5ldkZhc3RTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgZmFzdFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZmFzdFNob3RNaXNzZXMgKyB0aGlzLmZhc3RTaG90T25Hb2FscyArIHRoaXMuZmFzdFNob3RzQmxvY2tlZDtcbiAgfVxuXG4gIGdldCBmYXN0U2hvdEdvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbEZhc3RTaG90R29hbHMgfHwgIXRoaXMuZmFzdFNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxGYXN0U2hvdEdvYWxzIC8gdGhpcy5mYXN0U2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgcHBTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5wcFNob3RzT25Hb2FsIHx8IDApICsgKHRoaXMucHBTaG90c0Jsb2NrZWQgfHwgMCkgK1xuICAgICAgKHRoaXMucHBGcmVlS2lja01pc3NlcyB8fCAwKSArICh0aGlzLnBwRnJlZUtpY2tPbkdvYWxzIHx8IDApICsgKHRoaXMucHBGcmVlS2lja1Nob3RzQmxvY2tlZCB8fCAwKSArXG4gICAgICAodGhpcy5wcENvcm5lck1pc3NlcyB8fCAwKSArICh0aGlzLnBwQ29ybmVyT25Hb2FscyB8fCAwKSArICh0aGlzLnBwQ29ybmVyU2hvdHNCbG9ja2VkIHx8IDApICtcbiAgICAgIHRoaXMucHBDb3VudGVyQXR0YWNrU2hvdHMgKyB0aGlzLnBwTWFuZXV2ZXJTaG90cyArIHRoaXMucHBDZW50ZXJGb3J3YXJkU2hvdHMgK1xuICAgICAgdGhpcy5wcFBlcmltZXRyU2hvdHMgKyB0aGlzLnBwUG9zdFNob3RzICsgdGhpcy5wcEZhc3RTaG90cztcbiAgfVxuXG4gIGdldCBldlNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmV2U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLmV2U2hvdHNPbkdvYWwgfHwgMCkgKyAodGhpcy5ldlNob3RzQmxvY2tlZCB8fCAwKSArXG4gICAgICAodGhpcy5ldkZyZWVLaWNrTWlzc2VzIHx8IDApICsgKHRoaXMuZXZGcmVlS2lja09uR29hbHMgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrU2hvdHNCbG9ja2VkIHx8IDApICtcbiAgICAgICh0aGlzLmV2Q29ybmVyTWlzc2VzIHx8IDApICsgKHRoaXMuZXZDb3JuZXJPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZDb3JuZXJTaG90c0Jsb2NrZWQgfHwgMCkgICtcbiAgICAgIHRoaXMuZXZDb3VudGVyQXR0YWNrU2hvdHMgKyB0aGlzLmV2TWFuZXV2ZXJTaG90cyArIHRoaXMuZXZDZW50ZXJGb3J3YXJkU2hvdHMgK1xuICAgICAgdGhpcy5ldlBlcmltZXRyU2hvdHMgKyB0aGlzLmV2UG9zdFNob3RzICsgdGhpcy5ldkZhc3RTaG90cztcbiAgfVxuXG4gIGdldCBzaFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnNoU2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnNoU2hvdHNPbkdvYWwgfHwgMCkgKyAodGhpcy5zaFNob3RzQmxvY2tlZCB8fCAwKSArXG4gICAgICAodGhpcy5zaEZyZWVLaWNrTWlzc2VzIHx8IDApICsgKHRoaXMuc2hGcmVlS2lja09uR29hbHMgfHwgMCkgKyAodGhpcy5zaEZyZWVLaWNrU2hvdHNCbG9ja2VkIHx8IDApICtcbiAgICAgICh0aGlzLnNoQ29ybmVyTWlzc2VzIHx8IDApICsgKHRoaXMuc2hDb3JuZXJPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hDb3JuZXJTaG90c0Jsb2NrZWQgfHwgMCkgK1xuICAgICAgdGhpcy5zaENvdW50ZXJBdHRhY2tTaG90cyArIHRoaXMuc2hNYW5ldXZlclNob3RzICsgdGhpcy5zaENlbnRlckZvcndhcmRTaG90cyArXG4gICAgICB0aGlzLnNoUGVyaW1ldHJTaG90cyArIHRoaXMuc2hQb3N0U2hvdHMgKyB0aGlzLnNoRmFzdFNob3RzO1xuICB9XG5cbiAgZ2V0IHRvdGFsU2hHb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5zaEdvYWxzIHx8IDApICsgKHRoaXMuc2hGcmVlS2lja0dvYWxzIHx8IDApICsgKHRoaXMuc2hDb3JuZXJHb2FscyB8fCAwKSArXG4gICAgICAodGhpcy5zaENvdW50ZXJBdHRhY2tHb2FscyB8fCAwKSArICh0aGlzLnNoTWFuZXV2ZXJHb2FscyB8fCAwKSArICh0aGlzLnNoQ2VudGVyRm9yd2FyZEdvYWxzIHx8IDApICtcbiAgICAgICh0aGlzLnNoUGVyaW1ldHJTaG90R29hbHMgfHwgMCkgKyAodGhpcy5zaFBvc3RTaG90R29hbHMgfHwgMCkgKyAodGhpcy5zaEZhc3RTaG90R29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgdG90YWxFdkdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmV2R29hbHMgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrR29hbHMgfHwgMCkgKyAodGhpcy5ldkNvcm5lckdvYWxzIHx8IDApICtcbiAgICAgICh0aGlzLmV2Q291bnRlckF0dGFja0dvYWxzIHx8IDApICsgKHRoaXMuZXZNYW5ldXZlckdvYWxzIHx8IDApICsgKHRoaXMuZXZDZW50ZXJGb3J3YXJkR29hbHMgfHwgMCkgK1xuICAgICAgKHRoaXMuZXZQZXJpbWV0clNob3RHb2FscyB8fCAwKSArICh0aGlzLmV2UG9zdFNob3RHb2FscyB8fCAwKSArICh0aGlzLmV2RmFzdFNob3RHb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCB0b3RhbFBwR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBHb2FscyB8fCAwKSArICh0aGlzLnBwRnJlZUtpY2tHb2FscyB8fCAwKSArICh0aGlzLnBwQ29ybmVyR29hbHMgfHwgMCkgK1xuICAgICAgKHRoaXMucHBDb3VudGVyQXR0YWNrR29hbHMgfHwgMCkgKyAodGhpcy5wcE1hbmV1dmVyR29hbHMgfHwgMCkgKyAodGhpcy5wcENlbnRlckZvcndhcmRHb2FscyB8fCAwKSArXG4gICAgICAodGhpcy5wcFBlcmltZXRyU2hvdEdvYWxzIHx8IDApICsgKHRoaXMucHBQb3N0U2hvdEdvYWxzIHx8IDApICsgKHRoaXMucHBGYXN0U2hvdEdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMudG90YWxTaEdvYWxzICsgdGhpcy50b3RhbEV2R29hbHMgKyB0aGlzLnRvdGFsUHBHb2FscztcbiAgfVxuXG4gIGdldCB0b3RhbEdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ29hbHMgKyAodGhpcy5zaG9vdG91dEdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHNob290b3V0U2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hvb3RvdXRHb2FscyB8fCAwKSArICh0aGlzLnNob290b3V0QXR0ZW1wdHMgfHwgMCk7XG4gIH1cblxuICBnZXQgaW5HYW1lU2hvdE1pc3NlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5ldlNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5zaFNob3RNaXNzZXMgfHwgMCkgK1xuICAgICAgdGhpcy5jb3VudGVyQXR0YWNrU2hvdE1pc3NlcyArIHRoaXMubWFuZXV2ZXJTaG90TWlzc2VzICsgdGhpcy5jZW50ZXJGb3J3YXJkU2hvdE1pc3NlcyArXG4gICAgICB0aGlzLnBlcmltZXRyU2hvdE1pc3NlcyArIHRoaXMucG9zdFNob3RNaXNzZXMgKyB0aGlzLmZhc3RTaG90TWlzc2VzO1xuICB9XG5cbiAgZ2V0IHNob3RNaXNzZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBGcmVlS2lja01pc3NlcyB8fCAwKSArICh0aGlzLmV2RnJlZUtpY2tNaXNzZXMgfHwgMCkgKyAodGhpcy5zaEZyZWVLaWNrTWlzc2VzIHx8IDApICtcbiAgICAgICh0aGlzLnBwQ29ybmVyTWlzc2VzIHx8IDApICsgKHRoaXMuZXZDb3JuZXJNaXNzZXMgfHwgMCkgKyAodGhpcy5zaENvcm5lck1pc3NlcyB8fCAwKSArXG4gICAgICB0aGlzLmluR2FtZVNob3RNaXNzZXM7XG4gIH1cblxuICBnZXQgdG90YWxQcFNob3RNaXNzZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBTaG90TWlzc2VzIHx8IDApICsgKHRoaXMucHBGcmVlS2lja01pc3NlcyB8fCAwKSArICh0aGlzLnBwQ29ybmVyTWlzc2VzIHx8IDApICtcbiAgICAgICh0aGlzLnBwQ291bnRlckF0dGFja01pc3NlcyB8fCAwKSArICh0aGlzLnBwTWFuZXV2ZXJNaXNzZXMgfHwgMCkgKyAodGhpcy5wcENlbnRlckZvcndhcmRNaXNzZXMgfHwgMCkgK1xuICAgICAgKHRoaXMucHBQZXJpbWV0clNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5wcFBvc3RTaG90TWlzc2VzIHx8IDApICsgKHRoaXMucHBGYXN0U2hvdE1pc3NlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBzaG90c09uR29hbCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFNob3RzT25Hb2FsIHx8IDApICsgKHRoaXMuZXZTaG90c09uR29hbCB8fCAwKSArICh0aGlzLnNoU2hvdHNPbkdvYWwgfHwgMCkgK1xuICAgICAgKHRoaXMucHBGcmVlS2lja09uR29hbHMgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrT25Hb2FscyB8fCAwKSArICh0aGlzLnNoRnJlZUtpY2tPbkdvYWxzIHx8IDApICtcbiAgICAgICh0aGlzLnBwQ29ybmVyT25Hb2FscyB8fCAwKSArICh0aGlzLmV2Q29ybmVyT25Hb2FscyB8fCAwKSArICh0aGlzLnNoQ29ybmVyT25Hb2FscyB8fCAwKSArXG4gICAgICB0aGlzLmNvdW50ZXJBdHRhY2tTaG90T25Hb2FscyArIHRoaXMubWFuZXV2ZXJTaG90T25Hb2FscyArIHRoaXMuY2VudGVyRm9yd2FyZFNob3RPbkdvYWxzICtcbiAgICAgIHRoaXMucGVyaW1ldHJTaG90T25Hb2FscyArIHRoaXMucG9zdFNob3RPbkdvYWxzICsgdGhpcy5mYXN0U2hvdE9uR29hbHM7XG4gIH1cblxuICBnZXQgdG90YWxQcFNob3RzT25Hb2FsKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwU2hvdHNPbkdvYWwgfHwgMCkgKyAodGhpcy5wcEZyZWVLaWNrT25Hb2FscyB8fCAwKSArICh0aGlzLnBwQ29ybmVyT25Hb2FscyB8fCAwKSArXG4gICAgICAodGhpcy5wcENvdW50ZXJBdHRhY2tPbkdvYWxzIHx8IDApICsgKHRoaXMucHBNYW5ldXZlck9uR29hbHMgfHwgMCkgKyAodGhpcy5wcENlbnRlckZvcndhcmRPbkdvYWxzIHx8IDApICtcbiAgICAgICh0aGlzLnBwUGVyaW1ldHJTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLnBwUG9zdFNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMucHBGYXN0U2hvdE9uR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgaW5HYW1lU2hvdHNPbkdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwU2hvdHNPbkdvYWwgfHwgMCkgKyAodGhpcy5ldlNob3RzT25Hb2FsIHx8IDApICsgKHRoaXMuc2hTaG90c09uR29hbCB8fCAwKSArXG4gICAgICB0aGlzLmNvdW50ZXJBdHRhY2tTaG90T25Hb2FscyArIHRoaXMubWFuZXV2ZXJTaG90T25Hb2FscyArIHRoaXMuY2VudGVyRm9yd2FyZFNob3RPbkdvYWxzICtcbiAgICAgIHRoaXMucGVyaW1ldHJTaG90T25Hb2FscyArIHRoaXMucG9zdFNob3RPbkdvYWxzICsgdGhpcy5mYXN0U2hvdE9uR29hbHM7XG4gIH1cblxuICBnZXQgc2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wcFNob3RzICsgdGhpcy5ldlNob3RzICsgdGhpcy5zaFNob3RzO1xuICB9XG5cbiAgZ2V0IHRvdGFsU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zaG90cyArICh0aGlzLnNob290b3V0QXR0ZW1wdHMgfHwgMCk7XG4gIH1cblxuICBnZXQgZmFjZU9mZnMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuZmFjZU9mZldpbnMgfHwgMCkgKyAodGhpcy5mYWNlT2ZmTG9zc2VzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGZyZWVLaWNrU2hvdE1pc3NlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEZyZWVLaWNrTWlzc2VzIHx8IDApICsgKHRoaXMuZXZGcmVlS2lja01pc3NlcyB8fCAwKSArICh0aGlzLnNoRnJlZUtpY2tNaXNzZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgZnJlZUtpY2tTaG90c0Jsb2NrZWQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBGcmVlS2lja1Nob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLmV2RnJlZUtpY2tTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5zaEZyZWVLaWNrU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IGZyZWVLaWNrT25Hb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEZyZWVLaWNrT25Hb2FscyB8fCAwKSArICh0aGlzLmV2RnJlZUtpY2tPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hGcmVlS2lja09uR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgdG90YWxGcmVlS2lja0dvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwRnJlZUtpY2tHb2FscyB8fCAwKSArICh0aGlzLnNoRnJlZUtpY2tHb2FscyB8fCAwKSArICh0aGlzLmV2RnJlZUtpY2tHb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCB0b3RhbEZyZWVLaWNrcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5mcmVlS2lja1NlbGZzIHx8IDApICsgKHRoaXMuZnJlZUtpY2tQYXNzZXMgfHwgMCkgK1xuICAgICAgdGhpcy5mcmVlS2lja1Nob3RNaXNzZXMgKyB0aGlzLmZyZWVLaWNrT25Hb2FscyArIHRoaXMudG90YWxGcmVlS2lja0dvYWxzICsgdGhpcy5mcmVlS2lja1Nob3RzQmxvY2tlZDtcbiAgfVxuXG4gIGdldCBmcmVlS2lja0dvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbEZyZWVLaWNrR29hbHMgfHwgIXRoaXMudG90YWxGcmVlS2lja3MpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbEZyZWVLaWNrR29hbHMgLyB0aGlzLnRvdGFsRnJlZUtpY2tzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IHRvdGFsQ29ybmVyR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDb3JuZXJHb2FscyB8fCAwKSArICh0aGlzLnNoQ29ybmVyR29hbHMgfHwgMCkgKyAodGhpcy5ldkNvcm5lckdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNvcm5lclNob3RNaXNzZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDb3JuZXJNaXNzZXMgfHwgMCkgKyAodGhpcy5zaENvcm5lck1pc3NlcyB8fCAwKSArICh0aGlzLmV2Q29ybmVyTWlzc2VzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNvcm5lck9uR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDb3JuZXJPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hDb3JuZXJPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZDb3JuZXJPbkdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNvcm5lclNob3RzQmxvY2tlZCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENvcm5lclNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLnNoQ29ybmVyU2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuZXZDb3JuZXJTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgdG90YWxDb3JuZXJzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmNvcm5lclNlbGZzIHx8IDApICsgKHRoaXMuY29ybmVyUGFzc2VzIHx8IDApICsgdGhpcy5jb3JuZXJTaG90c0Jsb2NrZWQgK1xuICAgICAgdGhpcy5jb3JuZXJPbkdvYWxzICsgdGhpcy5jb3JuZXJTaG90TWlzc2VzICsgdGhpcy50b3RhbENvcm5lckdvYWxzO1xuICB9XG5cbiAgZ2V0IHNob3RzQmxvY2tlZCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLmV2U2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuc2hTaG90c0Jsb2NrZWQgfHwgMCkgK1xuICAgICAgdGhpcy5jb3VudGVyQXR0YWNrU2hvdHNCbG9ja2VkICsgdGhpcy5tYW5ldXZlclNob3RzQmxvY2tlZCArIHRoaXMuY2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZCArXG4gICAgICB0aGlzLmZyZWVLaWNrU2hvdHNCbG9ja2VkICsgdGhpcy5jb3JuZXJTaG90c0Jsb2NrZWQgK1xuICAgICAgdGhpcy5wZXJpbWV0clNob3RzQmxvY2tlZCArIHRoaXMucG9zdFNob3RzQmxvY2tlZCArIHRoaXMuZmFzdFNob3RzQmxvY2tlZDtcbiAgfVxuXG4gIGdldCB0b3RhbEZvdWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmZvdWxzIHx8IDApICsgKHRoaXMucGVyc29uYWxGb3VscyB8fCAwKTtcbiAgfVxuXG4gIGdldCB0b3RhbFBlbmFsdGllcygpOiBudW1iZXIge1xuICAgICAgcmV0dXJuICh0aGlzLm1pbm9yUGVuYWx0aWVzIHx8IDApICsgKHRoaXMubWFqb3JQZW5hbHRpZXMgfHwgMCkgKyAodGhpcy5tYXRjaFBlbmFsdGllcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwb3NpdGlvbkF0dGFja0dvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnNoR29hbHMgfHwgMCkgKyAodGhpcy5ldkdvYWxzIHx8IDApICsgKHRoaXMucHBHb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwb3NpdGlvbkF0dGFja1Nob3RzT25Hb2FsKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwU2hvdHNPbkdvYWwgfHwgMCkgKyAodGhpcy5ldlNob3RzT25Hb2FsIHx8IDApICsgKHRoaXMuc2hTaG90c09uR29hbCB8fCAwKTtcbiAgfVxuXG4gIGdldCBwb3NpdGlvbkF0dGFja1Nob3RzTWlzcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5ldlNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5zaFNob3RNaXNzZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zaXRpb25BdHRhY2tTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnBvc2l0aW9uQXR0YWNrU2hvdHNPbkdvYWwgKyB0aGlzLnBvc2l0aW9uQXR0YWNrU2hvdHNNaXNzO1xuICB9XG5cbiAgZ2V0IHBvc2l0aW9uQXR0YWNrR29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnBvc2l0aW9uQXR0YWNrR29hbHMgfHwgIXRoaXMucG9zaXRpb25BdHRhY2tTaG90cykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnBvc2l0aW9uQXR0YWNrR29hbHMgLyB0aGlzLnBvc2l0aW9uQXR0YWNrU2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgdG90YWxJbkdhbWVHb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnRvdGFsQ2VudGVyRm9yd2FyZEdvYWxzICsgdGhpcy50b3RhbE1hbmV1dmVyR29hbHMgKyB0aGlzLnRvdGFsQ291bnRlckF0dGFja0dvYWxzICsgdGhpcy5wb3NpdGlvbkF0dGFja0dvYWxzICtcbiAgICAgIHRoaXMudG90YWxQZXJpbWV0clNob3RHb2FscyArIHRoaXMudG90YWxQb3N0U2hvdEdvYWxzICsgdGhpcy50b3RhbEZhc3RTaG90R29hbHM7XG4gIH1cblxuICBnZXQgcHBHb2Fsc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMudG90YWxQcEdvYWxzIHx8ICF0aGlzLnBwU2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbFBwR29hbHMgLyB0aGlzLnBwU2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgZXZHb2Fsc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMudG90YWxFdkdvYWxzIHx8ICF0aGlzLmV2U2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbEV2R29hbHMgLyB0aGlzLmV2U2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgc2hHb2Fsc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMudG90YWxTaEdvYWxzIHx8ICF0aGlzLnNoU2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbFNoR29hbHMgLyB0aGlzLnNoU2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgc2hvdHNPbkdvYWxQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnNob3RzT25Hb2FsIHx8ICF0aGlzLnNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMuc2hvdHNPbkdvYWwgLyB0aGlzLnNob3RzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IGdvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5nb2FscyB8fCAhdGhpcy5zaG90cykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLmdvYWxzIC8gdGhpcy5zaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCB0b3RhbEdvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbEdvYWxzIHx8ICF0aGlzLnRvdGFsU2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbEdvYWxzIC8gdGhpcy50b3RhbFNob3RzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IGZhY2VPZmZQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLmZhY2VPZmZXaW5zIHx8ICF0aGlzLmZhY2VPZmZzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMuZmFjZU9mZldpbnMgLyB0aGlzLmZhY2VPZmZzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IHNob290b3V0R29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnNob290b3V0R29hbHMgfHwgIXRoaXMuc2hvb3RvdXRTaG90cykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnNob290b3V0R29hbHMgLyB0aGlzLnNob290b3V0U2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgZ29hbHBhc3MoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMudG90YWxHb2FscyB8fCAwKSArICh0aGlzLmFzc2lzdHMgfHwgMCk7XG4gIH1cblxuICAvKmdvYWxpZSBzdGF0ICovXG4gIGdldCBwb3NpdGlvbkF0dGFja1NhdmVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwU2F2ZXMgfHwgMCkgKyAodGhpcy5zaFNhdmVzIHx8IDApICsgKHRoaXMuZXZTYXZlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwb3NpdGlvbkF0dGFja1Nob3RzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnBvc2l0aW9uQXR0YWNrU2F2ZXMgKyAodGhpcy5nb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zaXRpb25BdHRhY2tTYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMucG9zaXRpb25BdHRhY2tTYXZlcyB8fCAhdGhpcy5wb3NpdGlvbkF0dGFja1Nob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnBvc2l0aW9uQXR0YWNrU2F2ZXMgLyB0aGlzLnBvc2l0aW9uQXR0YWNrU2hvdHNBZ2FpbnN0KSAvIDEwO1xuICB9XG5cbiAgZ2V0IGNvdW50ZXJBdHRhY2tTYXZlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENvdW50ZXJBdHRhY2tTYXZlcyB8fCAwKSArICh0aGlzLnNoQ291bnRlckF0dGFja1NhdmVzIHx8IDApICsgKHRoaXMuZXZDb3VudGVyQXR0YWNrU2F2ZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgY291bnRlckF0dGFja1Nob3RzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNvdW50ZXJBdHRhY2tTYXZlcyArICh0aGlzLmNvdW50ZXJBdHRhY2tHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgY291bnRlckF0dGFja1NhdmVzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5jb3VudGVyQXR0YWNrU2F2ZXMgfHwgIXRoaXMuY291bnRlckF0dGFja1Nob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLmNvdW50ZXJBdHRhY2tTYXZlcyAvIHRoaXMuY291bnRlckF0dGFja1Nob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG5cbiAgZ2V0IGNlbnRlckZvcndhcmRTYXZlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENlbnRlckZvcndhcmRTYXZlcyB8fCAwKSArICh0aGlzLnNoQ2VudGVyRm9yd2FyZFNhdmVzIHx8IDApICsgKHRoaXMuZXZDZW50ZXJGb3J3YXJkU2F2ZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgY2VudGVyRm9yd2FyZFNob3RzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNlbnRlckZvcndhcmRTYXZlcyArICh0aGlzLmNlbnRlckZvcndhcmRHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgY2VudGVyRm9yd2FyZFNhdmVzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5jZW50ZXJGb3J3YXJkU2F2ZXMgfHwgIXRoaXMuY2VudGVyRm9yd2FyZFNob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLmNlbnRlckZvcndhcmRTYXZlcyAvIHRoaXMuY2VudGVyRm9yd2FyZFNob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIGdldCBtYW5ldXZlclNhdmVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwTWFuZXV2ZXJTYXZlcyB8fCAwKSArICh0aGlzLnNoTWFuZXV2ZXJTYXZlcyB8fCAwKSArICh0aGlzLmV2TWFuZXV2ZXJTYXZlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBtYW5ldXZlclNob3RzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLm1hbmV1dmVyU2F2ZXMgKyAodGhpcy5tYW5ldXZlckdvYWxzQWdhaW5zdCB8fCAwKTtcbiAgfVxuXG4gIGdldCBtYW5ldXZlclNhdmVzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5tYW5ldXZlclNhdmVzIHx8ICF0aGlzLm1hbmV1dmVyU2hvdHNBZ2FpbnN0KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMubWFuZXV2ZXJTYXZlcyAvIHRoaXMubWFuZXV2ZXJTaG90c0FnYWluc3QpIC8gMTA7XG4gIH1cblxuICBnZXQgZnJlZUtpY2tTYXZlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEZyZWVLaWNrU2F2ZXMgfHwgMCkgKyAodGhpcy5zaEZyZWVLaWNrU2F2ZXMgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrU2F2ZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgZnJlZUtpY2tTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5mcmVlS2lja1NhdmVzICsgKHRoaXMuZnJlZUtpY2tHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgZnJlZUtpY2tTYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMuZnJlZUtpY2tTYXZlcyB8fCAhdGhpcy5mcmVlS2lja1Nob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLmZyZWVLaWNrU2F2ZXMgLyB0aGlzLmZyZWVLaWNrU2hvdHNBZ2FpbnN0KSAvIDEwO1xuICB9XG5cbiAgZ2V0IGNvcm5lclNhdmVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ29ybmVyU2F2ZXMgfHwgMCkgKyAodGhpcy5zaENvcm5lclNhdmVzIHx8IDApICsgKHRoaXMuZXZDb3JuZXJTYXZlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBjb3JuZXJTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jb3JuZXJTYXZlcyArICh0aGlzLmNvcm5lckdvYWxzQWdhaW5zdCB8fCAwKTtcbiAgfVxuXG4gIGdldCBjb3JuZXJTYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMuY29ybmVyU2F2ZXMgfHwgIXRoaXMuY29ybmVyU2hvdHNBZ2FpbnN0KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMuY29ybmVyU2F2ZXMgLyB0aGlzLmNvcm5lclNob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIGdldCBwZXJpbWV0clNob3RTYXZlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFBlcmltZXRyU2hvdFNhdmVzIHx8IDApICsgKHRoaXMuc2hQZXJpbWV0clNob3RTYXZlcyB8fCAwKSArICh0aGlzLmV2UGVyaW1ldHJTaG90U2F2ZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgcGVyaW1ldHJTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wZXJpbWV0clNob3RTYXZlcyArICh0aGlzLnBlcmltZXRyU2hvdEdvYWxzQWdhaW5zdCB8fCAwKTtcbiAgfVxuXG4gIGdldCBwZXJpbWV0clNob3RTYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMucGVyaW1ldHJTaG90U2F2ZXMgfHwgIXRoaXMucGVyaW1ldHJTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5wZXJpbWV0clNob3RTYXZlcyAvIHRoaXMucGVyaW1ldHJTaG90c0FnYWluc3QpIC8gMTA7XG4gIH1cblxuICBnZXQgcG9zdFNob3RTYXZlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFBvc3RTaG90U2F2ZXMgfHwgMCkgKyAodGhpcy5zaFBvc3RTaG90U2F2ZXMgfHwgMCkgKyAodGhpcy5ldlBvc3RTaG90U2F2ZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zdFNob3RzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnBvc3RTaG90U2F2ZXMgKyAodGhpcy5wb3N0U2hvdEdvYWxzQWdhaW5zdCB8fCAwKTtcbiAgfVxuXG4gIGdldCBwb3N0U2hvdFNhdmVzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5wb3N0U2hvdFNhdmVzIHx8ICF0aGlzLnBvc3RTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5wb3N0U2hvdFNhdmVzIC8gdGhpcy5wb3N0U2hvdHNBZ2FpbnN0KSAvIDEwO1xuICB9XG5cbiAgZ2V0IGZhc3RTaG90U2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBGYXN0U2hvdFNhdmVzIHx8IDApICsgKHRoaXMuc2hGYXN0U2hvdFNhdmVzIHx8IDApICsgKHRoaXMuZXZGYXN0U2hvdFNhdmVzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGZhc3RTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5mYXN0U2hvdFNhdmVzICsgKHRoaXMuZmFzdFNob3RHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgZmFzdFNob3RTYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMuZmFzdFNob3RTYXZlcyB8fCAhdGhpcy5mYXN0U2hvdHNBZ2FpbnN0KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMuZmFzdFNob3RTYXZlcyAvIHRoaXMuZmFzdFNob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG5cbiAgZ2V0IGluR2FtZVNhdmVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnNoU2F2ZXMgfHwgMCkgKyAodGhpcy5ldlNhdmVzIHx8IDApICsgKHRoaXMucHBTYXZlcyB8fCAwKSArXG4gICAgICB0aGlzLmNvdW50ZXJBdHRhY2tTYXZlcyArIHRoaXMubWFuZXV2ZXJTYXZlcyArIHRoaXMuY2VudGVyRm9yd2FyZFNhdmVzICtcbiAgICAgIHRoaXMucGVyaW1ldHJTaG90U2F2ZXMgKyB0aGlzLnBvc3RTaG90U2F2ZXMgKyB0aGlzLmZhc3RTaG90U2F2ZXM7XG4gIH1cblxuICBnZXQgc2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pbkdhbWVTYXZlcyArIHRoaXMuZnJlZUtpY2tTYXZlcyArIHRoaXMuY29ybmVyU2F2ZXM7XG4gIH1cblxuICBnZXQgdG90YWxTYXZlcygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnNhdmVzICsgKHRoaXMuc2hvb3RvdXRTYXZlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBpbkdhbWVHb2Fsc0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuZ29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuY291bnRlckF0dGFja0dvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLm1hbmV1dmVyR29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuY2VudGVyRm9yd2FyZEdvYWxzQWdhaW5zdCB8fCAwKSArXG4gICAgICAodGhpcy5wZXJpbWV0clNob3RHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5wb3N0U2hvdEdvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLmZhc3RTaG90R29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IHNob290b3V0U2hvdHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnNob290b3V0U2F2ZXMgfHwgMCkgKyAodGhpcy5zaG9vdG91dEdvYWxzQWdhaW5zdCB8fCAwKTtcbiAgfVxuXG4gIGdldCBnYW1lR29hbHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuaW5HYW1lR29hbHNBZ2FpbnN0ICsgKHRoaXMuZnJlZUtpY2tHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5jb3JuZXJHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgdG90YWxHb2Fsc0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nYW1lR29hbHNBZ2FpbnN0ICsgKHRoaXMuc2hvb3RvdXRHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgZ2FtZVNob3RzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnNhdmVzICsgdGhpcy5nYW1lR29hbHNBZ2FpbnN0O1xuICB9XG5cbiAgZ2V0IHRvdGFsU2hvdHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2FtZVNob3RzQWdhaW5zdCArIHRoaXMuc2hvb3RvdXRTaG90c0FnYWluc3Q7XG4gIH1cblxuICBnZXQgc2hvb3RvdXRTYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMuc2hvb3RvdXRTYXZlcyB8fCAhdGhpcy5zaG9vdG91dFNob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnNob290b3V0U2F2ZXMgLyB0aGlzLnNob290b3V0U2hvdHNBZ2FpbnN0KSAvIDEwO1xuICB9XG5cbiAgZ2V0IHNhdmVzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5zYXZlcyB8fCAhdGhpcy5nYW1lU2hvdHNBZ2FpbnN0KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMuc2F2ZXMgLyB0aGlzLmdhbWVTaG90c0FnYWluc3QpIC8gMTA7XG4gIH1cblxuICBnZXQgdG90YWxTYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMudG90YWxTYXZlcyB8fCAhdGhpcy50b3RhbFNob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnRvdGFsU2F2ZXMgLyB0aGlzLnRvdGFsU2hvdHNBZ2FpbnN0KSAvIDEwO1xuICB9XG5cbiAgZ2V0IHRvdGFsU2hTYXZlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5zaENvdW50ZXJBdHRhY2tTYXZlcyB8fCAwKSArICh0aGlzLnNoTWFuZXV2ZXJTYXZlcyB8fCAwKSArICh0aGlzLnNoQ2VudGVyRm9yd2FyZFNhdmVzIHx8IDApICtcbiAgICAgICh0aGlzLnNoU2F2ZXMgfHwgMCkgKyAodGhpcy5zaEZyZWVLaWNrU2F2ZXMgfHwgMCkgKyAodGhpcy5zaENvcm5lclNhdmVzIHx8IDApICtcbiAgICAgICh0aGlzLnNoUGVyaW1ldHJTaG90U2F2ZXMpICsgKHRoaXMuc2hQb3N0U2hvdFNhdmVzKSArICh0aGlzLnNoRmFzdFNob3RTYXZlcyk7XG4gIH1cblxuICBnZXQgdG90YWxTaEdvYWxzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5zaEdvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLnNoRnJlZUtpY2tHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5zaENvcm5lckdvYWxzQWdhaW5zdCB8fCAwKSArXG4gICAgICAodGhpcy5zaENvdW50ZXJBdHRhY2tHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5zaE1hbmV1dmVyR29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuc2hDZW50ZXJGb3J3YXJkR29hbHNBZ2FpbnN0IHx8IDApICtcbiAgICAgICh0aGlzLnNoUGVyaW1ldHJTaG90R29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuc2hQb3N0U2hvdEdvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLnNoRmFzdFNob3RHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgdG90YWxTaFNob3RzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnRvdGFsU2hTYXZlcyArIHRoaXMudG90YWxTaEdvYWxzQWdhaW5zdDtcbiAgfVxuXG4gIGdldCB0b3RhbFNoU2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsU2hTYXZlcyB8fCAhdGhpcy50b3RhbFNoU2hvdHNBZ2FpbnN0KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxTaFNhdmVzIC8gdGhpcy50b3RhbFNoU2hvdHNBZ2FpbnN0KSAvIDEwO1xuICB9XG5cbiAgZ2V0IHRvdGFsRXZTYXZlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5ldkNvdW50ZXJBdHRhY2tTYXZlcyB8fCAwKSArICh0aGlzLmV2TWFuZXV2ZXJTYXZlcyB8fCAwKSArICh0aGlzLmV2Q2VudGVyRm9yd2FyZFNhdmVzIHx8IDApICtcbiAgICAgICh0aGlzLmV2U2F2ZXMgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrU2F2ZXMgfHwgMCkgKyAodGhpcy5ldkNvcm5lclNhdmVzIHx8IDApICtcbiAgICAgICh0aGlzLmV2UGVyaW1ldHJTaG90U2F2ZXMpICsgKHRoaXMuZXZQb3N0U2hvdFNhdmVzKSArICh0aGlzLmV2RmFzdFNob3RTYXZlcyk7XG4gIH1cblxuICBnZXQgdG90YWxFdkdvYWxzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5ldkdvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLmV2RnJlZUtpY2tHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5ldkNvcm5lckdvYWxzQWdhaW5zdCB8fCAwKSArXG4gICAgICAodGhpcy5ldkNvdW50ZXJBdHRhY2tHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5ldk1hbmV1dmVyR29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuZXZDZW50ZXJGb3J3YXJkR29hbHNBZ2FpbnN0IHx8IDApICtcbiAgICAgICh0aGlzLmV2UGVyaW1ldHJTaG90R29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuZXZQb3N0U2hvdEdvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLmV2RmFzdFNob3RHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgdG90YWxFdlNob3RzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnRvdGFsRXZTYXZlcyArIHRoaXMudG90YWxFdkdvYWxzQWdhaW5zdDtcbiAgfVxuXG4gIGdldCB0b3RhbEV2U2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsRXZTYXZlcyB8fCAhdGhpcy50b3RhbEV2U2hvdHNBZ2FpbnN0KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxFdlNhdmVzIC8gdGhpcy50b3RhbEV2U2hvdHNBZ2FpbnN0KSAvIDEwO1xuICB9XG5cbiAgQFRvRnJvbnRIb29rXG4gIHN0YXRpYyB0b0Zyb250KGRhdGE6IGFueSk6IGFueSB7fVxuXG4gIEBUb0JhY2tIb29rXG4gIHN0YXRpYyB0b0JhY2soZGF0YTogYW55KTogYW55IHt9XG59XG4iXX0=
|
|
844
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2F0ZXJwb2xvLWdhbWUtc3RhdGlzdGljLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbW9kZWxzL3dhdGVycG9sby1nYW1lLXN0YXRpc3RpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsTUFBTSxRQUFRLENBQUM7SUF5TzdFLHNCQUFzQixTQUF0QixzQkFBdUIsU0FBUSxTQUFTO0lBa09uRCxJQUFJLEVBQUU7UUFDSixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUN4QixPQUFPLE9BQU8sQ0FBQztTQUNoQjtRQUNELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNyRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsT0FBTyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQy9ELE9BQU8sR0FBRyxPQUFPLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxPQUFPLElBQUksT0FBTyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUM7SUFDakYsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLENBQUMsR0FBSSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVELElBQUksdUJBQXVCO1FBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLEdBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDakgsQ0FBQztJQUVELElBQUksb0JBQW9CO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDMUgsQ0FBQztJQUVELElBQUksb0JBQW9CO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDMUgsQ0FBQztJQUVELElBQUksb0JBQW9CO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDMUgsQ0FBQztJQUVELElBQUksdUJBQXVCO1FBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDbkgsQ0FBQztJQUVELElBQUksd0JBQXdCO1FBQzFCLE9BQU8sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdEgsQ0FBQztJQUVELElBQUkseUJBQXlCO1FBQzNCLE9BQU8sQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDckksQ0FBQztJQUVELElBQUksa0JBQWtCO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUM7SUFDdkcsQ0FBQztJQUVELElBQUkseUJBQXlCO1FBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQXVCLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDN0QsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUN4RixDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNqRyxDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDM0csQ0FBQztJQUVELElBQUksZUFBZTtRQUNqQixPQUFPLENBQUMsSUFBSSxDQUFDLGlCQUFpQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLHNCQUFzQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzNHLENBQUM7SUFFRCxJQUFJLGVBQWU7UUFDakIsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUMzRyxDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxDQUFDLENBQUMsR0FBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNyRyxDQUFDO0lBRUQsSUFBSSxtQkFBbUI7UUFDckIsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsR0FBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN4RyxDQUFDO0lBRUQsSUFBSSxvQkFBb0I7UUFDdEIsT0FBTyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxDQUFDLENBQUMsR0FBSSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN2SCxDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztJQUN4RixDQUFDO0lBRUQsSUFBSSxvQkFBb0I7UUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDbkQsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDOUUsQ0FBQztJQUVELElBQUksdUJBQXVCO1FBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLEdBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDakgsQ0FBQztJQUVELElBQUksb0JBQW9CO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDMUgsQ0FBQztJQUVELElBQUksb0JBQW9CO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDMUgsQ0FBQztJQUVELElBQUksb0JBQW9CO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDMUgsQ0FBQztJQUVELElBQUksdUJBQXVCO1FBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDbkgsQ0FBQztJQUVELElBQUksd0JBQXdCO1FBQzFCLE9BQU8sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdEgsQ0FBQztJQUVELElBQUkseUJBQXlCO1FBQzNCLE9BQU8sQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDckksQ0FBQztJQUVELElBQUksa0JBQWtCO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUM7SUFDdkcsQ0FBQztJQUVELElBQUkseUJBQXlCO1FBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQXVCLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDN0QsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUN4RixDQUFDO0lBRUQsSUFBSSxzQkFBc0I7UUFDeEIsT0FBTyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsSUFBSSxDQUFDLENBQUMsR0FBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUM5RyxDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2pCLE9BQU8sQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDbkgsQ0FBQztJQUVELElBQUksZUFBZTtRQUNqQixPQUFPLENBQUMsSUFBSSxDQUFDLHFCQUFxQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLG9CQUFvQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLHNCQUFzQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ25ILENBQUM7SUFFRCxJQUFJLGVBQWU7UUFDakIsT0FBTyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNuSCxDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNoSCxDQUFDO0lBRUQsSUFBSSxtQkFBbUI7UUFDckIsT0FBTyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNuSCxDQUFDO0lBRUQsSUFBSSxvQkFBb0I7UUFDdEIsT0FBTyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN0SCxDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztJQUN4RixDQUFDO0lBRUQsSUFBSSx3QkFBd0I7UUFDMUIsSUFBSSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdkQsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDbEYsQ0FBQztJQUVELElBQUksa0JBQWtCO1FBQ3BCLE9BQU8sQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsR0FBSSxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDbEcsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdkcsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdkcsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdkcsQ0FBQztJQUVELElBQUksY0FBYztRQUNoQixPQUFPLENBQUMsSUFBSSxDQUFDLGdCQUFnQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3BHLENBQUM7SUFFRCxJQUFJLGVBQWU7UUFDakIsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN2RyxDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUMxRyxDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQzVFLENBQUM7SUFFRCxJQUFJLG9CQUFvQjtRQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUMvQyxPQUFPLENBQUMsQ0FBQztTQUNWO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUMxRSxDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsQ0FBQyxHQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNsRyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN2RyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN2RyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN2RyxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDcEcsQ0FBQztJQUVELElBQUksZUFBZTtRQUNqQixPQUFPLENBQUMsSUFBSSxDQUFDLGlCQUFpQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGlCQUFpQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGlCQUFpQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3ZHLENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNsQixPQUFPLENBQUMsSUFBSSxDQUFDLGtCQUFrQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGtCQUFrQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGtCQUFrQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzFHLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDNUUsQ0FBQztJQUVELElBQUksb0JBQW9CO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQy9DLE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7UUFDRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQzFFLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxJQUFJLENBQUMsQ0FBQztZQUN0RixDQUFDLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxDQUFDLENBQUM7WUFDakcsQ0FBQyxJQUFJLENBQUMsY0FBYyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUM7WUFDM0YsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLG9CQUFvQjtZQUM1RSxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMvRCxDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLENBQUM7WUFDdEYsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDO1lBQ2pHLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDO1lBQzNGLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxvQkFBb0I7WUFDNUUsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDL0QsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksQ0FBQyxDQUFDO1lBQ3RGLENBQUMsSUFBSSxDQUFDLGdCQUFnQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGlCQUFpQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLHNCQUFzQixJQUFJLENBQUMsQ0FBQztZQUNqRyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLG9CQUFvQixJQUFJLENBQUMsQ0FBQztZQUMzRixJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsb0JBQW9CO1lBQzVFLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQy9ELENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQztZQUNsRixDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDO1lBQ2pHLENBQUMsSUFBSSxDQUFDLG1CQUFtQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxDQUFDO1lBQ2xGLENBQUMsSUFBSSxDQUFDLG9CQUFvQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUM7WUFDakcsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNoRyxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUM7WUFDbEYsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLG9CQUFvQixJQUFJLENBQUMsQ0FBQztZQUNqRyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQ25FLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLENBQUM7WUFDbkYsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsdUJBQXVCO1lBQ3JGLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDeEUsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxDQUFDO1lBQy9GLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxJQUFJLENBQUMsQ0FBQztZQUNwRixJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ25CLE9BQU8sQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLENBQUM7WUFDekYsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDO1lBQ3BHLENBQUMsSUFBSSxDQUFDLG9CQUFvQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ25HLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQztZQUN0RixDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUM7WUFDN0YsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDO1lBQ3ZGLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLHdCQUF3QjtZQUN4RixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsZUFBZSxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN2RyxDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsQ0FBQztZQUM1RixDQUFDLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxDQUFDLENBQUM7WUFDdkcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdEcsQ0FBQztJQUVELElBQUksa0JBQWtCO1FBQ3BCLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxDQUFDO1lBQ3RGLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLHdCQUF3QjtZQUN4RixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQzNFLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDekUsQ0FBQztJQUdELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRCxJQUFJLGtCQUFrQjtRQUNwQixPQUFPLENBQUMsSUFBSSxDQUFDLGdCQUFnQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3BHLENBQUM7SUFFRCxJQUFJLG9CQUFvQjtRQUN0QixPQUFPLENBQUMsSUFBSSxDQUFDLHNCQUFzQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLHNCQUFzQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLHNCQUFzQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3RILENBQUM7SUFFRCxJQUFJLGVBQWU7UUFDakIsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN2RyxDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNqRyxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLENBQUM7WUFDM0QsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztJQUN6RyxDQUFDO0lBRUQsSUFBSSxvQkFBb0I7UUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDcEQsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDL0UsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDM0YsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sQ0FBQyxJQUFJLENBQUMsY0FBYyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDOUYsQ0FBQztJQUVELElBQUksYUFBYTtRQUNmLE9BQU8sQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDakcsQ0FBQztJQUVELElBQUksa0JBQWtCO1FBQ3BCLE9BQU8sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDaEgsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsa0JBQWtCO1lBQ2pGLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUN2RSxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLENBQUM7WUFDekYsSUFBSSxDQUFDLHlCQUF5QixHQUFHLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMseUJBQXlCO1lBQzNGLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsa0JBQWtCO1lBQ25ELElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQzlFLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDWixPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELElBQUksY0FBYztRQUNkLE9BQU8sQ0FBQyxJQUFJLENBQUMsY0FBYyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUVELElBQUksbUJBQW1CO1FBQ3JCLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVELElBQUkseUJBQXlCO1FBQzNCLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDM0YsQ0FBQztJQUVELElBQUksdUJBQXVCO1FBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDeEYsQ0FBQztJQUVELElBQUksbUJBQW1CO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLHlCQUF5QixHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQztJQUN2RSxDQUFDO0lBRUQsSUFBSSwwQkFBMEI7UUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUMxRCxPQUFPLENBQUMsQ0FBQztTQUNWO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ3JGLENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNsQixPQUFPLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyxtQkFBbUI7WUFDckgsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUM7SUFDcEYsQ0FBQztJQUVELElBQUksY0FBYztRQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDdkMsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ2xFLENBQUM7SUFFRCxJQUFJLGNBQWM7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ3ZDLE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7UUFDRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUNsRSxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUN2QyxPQUFPLENBQUMsQ0FBQztTQUNWO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDbEUsQ0FBQztJQUVELElBQUksa0JBQWtCO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNwQyxPQUFPLENBQUMsQ0FBQztTQUNWO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDL0QsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUM5QixPQUFPLENBQUMsQ0FBQztTQUNWO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDekQsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUN4QyxPQUFPLENBQUMsQ0FBQztTQUNWO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDbkUsQ0FBQztJQUVELElBQUksY0FBYztRQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDdkMsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ2xFLENBQUM7SUFFRCxJQUFJLG9CQUFvQjtRQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDOUMsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ3pFLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELGdCQUFnQjtJQUNoQixJQUFJLG1CQUFtQjtRQUNyQixPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxJQUFJLDBCQUEwQjtRQUM1QixPQUFPLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELElBQUksMEJBQTBCO1FBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLElBQUksQ0FBQyxJQUFJLENBQUMsMEJBQTBCLEVBQUU7WUFDakUsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUM1RixDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNoSCxDQUFDO0lBRUQsSUFBSSx5QkFBeUI7UUFDM0IsT0FBTyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsQ0FBQyxJQUFJLENBQUMseUJBQXlCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVELElBQUkseUJBQXlCO1FBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLElBQUksQ0FBQyxJQUFJLENBQUMseUJBQXlCLEVBQUU7WUFDL0QsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUMxRixDQUFDO0lBR0QsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNoSCxDQUFDO0lBRUQsSUFBSSx5QkFBeUI7UUFDM0IsT0FBTyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsQ0FBQyxJQUFJLENBQUMseUJBQXlCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVELElBQUkseUJBQXlCO1FBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLElBQUksQ0FBQyxJQUFJLENBQUMseUJBQXlCLEVBQUU7WUFDL0QsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUMxRixDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNqRyxDQUFDO0lBRUQsSUFBSSxvQkFBb0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsSUFBSSxDQUFDLG9CQUFvQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxJQUFJLG9CQUFvQjtRQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUNyRCxPQUFPLENBQUMsQ0FBQztTQUNWO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUNoRixDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNqRyxDQUFDO0lBRUQsSUFBSSxvQkFBb0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsSUFBSSxDQUFDLG9CQUFvQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxJQUFJLG9CQUFvQjtRQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUNyRCxPQUFPLENBQUMsQ0FBQztTQUNWO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUNoRixDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUMzRixDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsSUFBSSxDQUFDLGtCQUFrQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxJQUFJLGtCQUFrQjtRQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUNqRCxPQUFPLENBQUMsQ0FBQztTQUNWO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUM1RSxDQUFDO0lBRUQsSUFBSSxpQkFBaUI7UUFDbkIsT0FBTyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUM3RyxDQUFDO0lBRUQsSUFBSSxvQkFBb0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsQ0FBQyxJQUFJLENBQUMsd0JBQXdCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVELElBQUksd0JBQXdCO1FBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDekQsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUNwRixDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNqRyxDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsSUFBSSxDQUFDLG9CQUFvQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxJQUFJLG9CQUFvQjtRQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUNqRCxPQUFPLENBQUMsQ0FBQztTQUNWO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUM1RSxDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNqRyxDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsSUFBSSxDQUFDLG9CQUFvQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxJQUFJLG9CQUFvQjtRQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUNqRCxPQUFPLENBQUMsQ0FBQztTQUNWO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUM1RSxDQUFDO0lBR0QsSUFBSSxXQUFXO1FBQ2IsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUM7WUFDcEUsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGtCQUFrQjtZQUN0RSxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQ3JFLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQ2xFLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxJQUFJLGtCQUFrQjtRQUNwQixPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyx5QkFBeUIsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyx5QkFBeUIsSUFBSSxDQUFDLENBQUM7WUFDaEosQ0FBQyxJQUFJLENBQUMsd0JBQXdCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDL0csQ0FBQztJQUVELElBQUksb0JBQW9CO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLG9CQUFvQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNsQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNyRyxDQUFDO0lBRUQsSUFBSSxpQkFBaUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDNUMsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztJQUMzRCxDQUFDO0lBRUQsSUFBSSxvQkFBb0I7UUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDckQsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDaEYsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQ3pDLE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7UUFDRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ3BFLENBQUM7SUFFRCxJQUFJLGlCQUFpQjtRQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMvQyxPQUFPLENBQUMsQ0FBQztTQUNWO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUMxRSxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDO1lBQ3RHLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQztZQUM3RSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7SUFFRCxJQUFJLG1CQUFtQjtRQUNyQixPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUM7WUFDdkcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDO1lBQ3RILENBQUMsSUFBSSxDQUFDLDBCQUEwQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLHNCQUFzQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLHNCQUFzQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3JILENBQUM7SUFFRCxJQUFJLG1CQUFtQjtRQUNyQixPQUFPLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDO0lBQ3RELENBQUM7SUFFRCxJQUFJLG1CQUFtQjtRQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUNuRCxPQUFPLENBQUMsQ0FBQztTQUNWO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUM5RSxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDO1lBQ3RHLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsQ0FBQztZQUM3RSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7SUFFRCxJQUFJLG1CQUFtQjtRQUNyQixPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLENBQUM7WUFDdkcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDO1lBQ3RILENBQUMsSUFBSSxDQUFDLDBCQUEwQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLHNCQUFzQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLHNCQUFzQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3JILENBQUM7SUFFRCxJQUFJLG1CQUFtQjtRQUNyQixPQUFPLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDO0lBQ3RELENBQUM7SUFFRCxJQUFJLG1CQUFtQjtRQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUNuRCxPQUFPLENBQUMsQ0FBQztTQUNWO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUM5RSxDQUFDO0lBR0QsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFTLElBQVEsQ0FBQztJQUdqQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQVMsSUFBUSxDQUFDO0NBQ2pDLENBQUE7QUFKQztJQURDLFdBQVc7MkNBQ3FCO0FBR2pDO0lBREMsVUFBVTswQ0FDcUI7QUExOUJyQixzQkFBc0I7SUF0T2xDLGFBQWEsQ0FBQztRQUNiLGFBQWEsRUFBRTtZQUNiLFlBQVksRUFBRSxZQUFZO1lBQzFCLFVBQVUsRUFBRSxXQUFXO1lBQ3ZCLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLGNBQWMsRUFBRSxjQUFjO1lBQzlCLGdCQUFnQixFQUFFLGVBQWU7WUFDakMsZ0JBQWdCLEVBQUUsZ0JBQWdCO1lBQ2xDLGNBQWMsRUFBRSxjQUFjO1lBQzlCLGdCQUFnQixFQUFFLGVBQWU7WUFDakMsZ0JBQWdCLEVBQUUsZ0JBQWdCO1lBQ2xDLGNBQWMsRUFBRSxjQUFjO1lBQzlCLGdCQUFnQixFQUFFLGVBQWU7WUFDakMsZ0JBQWdCLEVBQUUsZ0JBQWdCO1lBQ2xDLHNCQUFzQixFQUFFLG9CQUFvQjtZQUM1QyxzQkFBc0IsRUFBRSxvQkFBb0I7WUFDNUMsc0JBQXNCLEVBQUUsb0JBQW9CO1lBQzVDLFFBQVEsRUFBRSxTQUFTO1lBQ25CLFFBQVEsRUFBRSxTQUFTO1lBQ25CLFFBQVEsRUFBRSxTQUFTO1lBQ25CLHNCQUFzQixFQUFFLHNCQUFzQjtZQUM5Qyx5QkFBeUIsRUFBRSx3QkFBd0I7WUFDbkQsdUJBQXVCLEVBQUUsdUJBQXVCO1lBQ2hELDhCQUE4QixFQUFFLDZCQUE2QjtZQUM3RCxzQkFBc0IsRUFBRSxzQkFBc0I7WUFDOUMseUJBQXlCLEVBQUUsd0JBQXdCO1lBQ25ELHVCQUF1QixFQUFFLHVCQUF1QjtZQUNoRCw4QkFBOEIsRUFBRSw2QkFBNkI7WUFDN0Qsc0JBQXNCLEVBQUUsc0JBQXNCO1lBQzlDLHlCQUF5QixFQUFFLHdCQUF3QjtZQUNuRCx1QkFBdUIsRUFBRSx1QkFBdUI7WUFDaEQsOEJBQThCLEVBQUUsNkJBQTZCO1lBQzdELGlCQUFpQixFQUFFLGlCQUFpQjtZQUNwQyxvQkFBb0IsRUFBRSxtQkFBbUI7WUFDekMsa0JBQWtCLEVBQUUsa0JBQWtCO1lBQ3RDLHlCQUF5QixFQUFFLHdCQUF3QjtZQUNuRCxpQkFBaUIsRUFBRSxpQkFBaUI7WUFDcEMsb0JBQW9CLEVBQUUsbUJBQW1CO1lBQ3pDLGtCQUFrQixFQUFFLGtCQUFrQjtZQUN0Qyx5QkFBeUIsRUFBRSx3QkFBd0I7WUFDbkQsaUJBQWlCLEVBQUUsaUJBQWlCO1lBQ3BDLG9CQUFvQixFQUFFLG1CQUFtQjtZQUN6QyxrQkFBa0IsRUFBRSxrQkFBa0I7WUFDdEMseUJBQXlCLEVBQUUsd0JBQXdCO1lBQ25ELHVCQUF1QixFQUFFLHNCQUFzQjtZQUMvQywwQkFBMEIsRUFBRSx3QkFBd0I7WUFDcEQsd0JBQXdCLEVBQUUsdUJBQXVCO1lBQ2pELCtCQUErQixFQUFFLDZCQUE2QjtZQUM5RCx1QkFBdUIsRUFBRSxzQkFBc0I7WUFDL0MsMEJBQTBCLEVBQUUsd0JBQXdCO1lBQ3BELHdCQUF3QixFQUFFLHVCQUF1QjtZQUNqRCwrQkFBK0IsRUFBRSw2QkFBNkI7WUFDOUQsdUJBQXVCLEVBQUUsc0JBQXNCO1lBQy9DLDBCQUEwQixFQUFFLHdCQUF3QjtZQUNwRCx3QkFBd0IsRUFBRSx1QkFBdUI7WUFDakQsK0JBQStCLEVBQUUsNkJBQTZCO1lBQzlELFVBQVUsRUFBRSxXQUFXO1lBQ3ZCLFVBQVUsRUFBRSxXQUFXO1lBQ3ZCLFVBQVUsRUFBRSxXQUFXO1lBQ3ZCLGlCQUFpQixFQUFFLGtCQUFrQjtZQUNyQyxjQUFjLEVBQUUsZUFBZTtZQUMvQiw0QkFBNEIsRUFBRSwyQkFBMkI7WUFDekQseUJBQXlCLEVBQUUsd0JBQXdCO1lBQ25ELFdBQVcsRUFBRSxZQUFZO1lBQ3pCLGVBQWUsRUFBRSxlQUFlO1lBQ2hDLGFBQWEsRUFBRSxhQUFhO1lBQzVCLFFBQVEsRUFBRSxTQUFTO1lBQ25CLFFBQVEsRUFBRSxTQUFTO1lBQ25CLFFBQVEsRUFBRSxTQUFTO1lBQ25CLHNCQUFzQixFQUFFLHNCQUFzQjtZQUM5QyxzQkFBc0IsRUFBRSxzQkFBc0I7WUFDOUMsc0JBQXNCLEVBQUUsc0JBQXNCO1lBQzlDLGlCQUFpQixFQUFFLGlCQUFpQjtZQUNwQyxpQkFBaUIsRUFBRSxpQkFBaUI7WUFDcEMsaUJBQWlCLEVBQUUsaUJBQWlCO1lBQ3BDLHVCQUF1QixFQUFFLHNCQUFzQjtZQUMvQyx1QkFBdUIsRUFBRSxzQkFBc0I7WUFDL0MsdUJBQXVCLEVBQUUsc0JBQXNCO1lBQy9DLGtCQUFrQixFQUFFLGlCQUFpQjtZQUNyQyxrQkFBa0IsRUFBRSxpQkFBaUI7WUFDckMsa0JBQWtCLEVBQUUsaUJBQWlCO1lBQ3JDLGVBQWUsRUFBRSxlQUFlO1lBQ2hDLGVBQWUsRUFBRSxlQUFlO1lBQ2hDLGVBQWUsRUFBRSxlQUFlO1lBQ2hDLG1CQUFtQixFQUFFLGtCQUFrQjtZQUN2QyxtQkFBbUIsRUFBRSxrQkFBa0I7WUFDdkMsbUJBQW1CLEVBQUUsa0JBQWtCO1lBQ3ZDLGNBQWMsRUFBRSxlQUFlO1lBQy9CLHlCQUF5QixFQUFFLHdCQUF3QjtZQUNuRCxnQkFBZ0IsRUFBRSxnQkFBZ0I7WUFDbEMsZ0JBQWdCLEVBQUUsZ0JBQWdCO1lBQ2xDLGdCQUFnQixFQUFFLGdCQUFnQjtZQUNsQyxhQUFhLEVBQUUsY0FBYztZQUM3Qiw4QkFBOEIsRUFBRSw2QkFBNkI7WUFDN0QsOEJBQThCLEVBQUUsNkJBQTZCO1lBQzdELDhCQUE4QixFQUFFLDZCQUE2QjtZQUM3RCwyQkFBMkIsRUFBRSwyQkFBMkI7WUFDeEQseUJBQXlCLEVBQUUsd0JBQXdCO1lBQ25ELHlCQUF5QixFQUFFLHdCQUF3QjtZQUNuRCx5QkFBeUIsRUFBRSx3QkFBd0I7WUFDbkQsc0JBQXNCLEVBQUUsc0JBQXNCO1lBQzlDLCtCQUErQixFQUFFLDZCQUE2QjtZQUM5RCwrQkFBK0IsRUFBRSw2QkFBNkI7WUFDOUQsK0JBQStCLEVBQUUsNkJBQTZCO1lBQzlELDRCQUE0QixFQUFFLDJCQUEyQjtZQUN6RCwwQkFBMEIsRUFBRSx3QkFBd0I7WUFDcEQsMEJBQTBCLEVBQUUsd0JBQXdCO1lBQ3BELDBCQUEwQixFQUFFLHdCQUF3QjtZQUNwRCx1QkFBdUIsRUFBRSxzQkFBc0I7WUFDL0MsdUJBQXVCLEVBQUUsc0JBQXNCO1lBQy9DLHVCQUF1QixFQUFFLHNCQUFzQjtZQUMvQyx1QkFBdUIsRUFBRSxzQkFBc0I7WUFDL0Msb0JBQW9CLEVBQUUsb0JBQW9CO1lBQzFDLHNCQUFzQixFQUFFLHNCQUFzQjtZQUM5QyxpQ0FBaUMsRUFBRSwrQkFBK0I7WUFDbEUsV0FBVyxFQUFFLFlBQVk7WUFDekIsZUFBZSxFQUFFLGdCQUFnQjtZQUNqQyxTQUFTLEVBQUUsVUFBVTtZQUNyQixVQUFVLEVBQUUsV0FBVztZQUN2QixLQUFLLEVBQUUsT0FBTztZQUNkLGVBQWUsRUFBRSxnQkFBZ0I7WUFDakMsZUFBZSxFQUFFLGdCQUFnQjtZQUNqQyxlQUFlLEVBQUUsZ0JBQWdCO1lBQ2pDLGFBQWEsRUFBRSxjQUFjO1lBQzdCLFNBQVMsRUFBRSxXQUFXO1lBQ3RCLFlBQVksRUFBRSxhQUFhO1lBQzNCLGNBQWMsRUFBRSxlQUFlO1lBQy9CLFdBQVcsRUFBRSxZQUFZO1lBQ3pCLGVBQWUsRUFBRSxnQkFBZ0I7WUFDakMsWUFBWSxFQUFFLGFBQWE7WUFDM0IsU0FBUyxFQUFFLFVBQVU7WUFDckIsTUFBTSxFQUFFLFFBQVE7WUFDaEIsTUFBTSxFQUFFLFFBQVE7WUFDaEIsa0JBQWtCLEVBQUUsaUJBQWlCO1lBQ3JDLHFCQUFxQixFQUFFLG1CQUFtQjtZQUMxQyxtQkFBbUIsRUFBRSxrQkFBa0I7WUFDdkMsMEJBQTBCLEVBQUUsd0JBQXdCO1lBQ3BELGtCQUFrQixFQUFFLGlCQUFpQjtZQUNyQyxxQkFBcUIsRUFBRSxtQkFBbUI7WUFDMUMsbUJBQW1CLEVBQUUsa0JBQWtCO1lBQ3ZDLDBCQUEwQixFQUFFLHdCQUF3QjtZQUNwRCxrQkFBa0IsRUFBRSxpQkFBaUI7WUFDckMscUJBQXFCLEVBQUUsbUJBQW1CO1lBQzFDLG1CQUFtQixFQUFFLGtCQUFrQjtZQUN2QywwQkFBMEIsRUFBRSx3QkFBd0I7WUFDcEQsZ0JBQWdCLEVBQUUsZ0JBQWdCO1lBQ2xDLGVBQWUsRUFBRSxlQUFlO1lBQ2hDLGVBQWUsRUFBRSxlQUFlO1lBQ2hDLGtCQUFrQixFQUFFLGlCQUFpQjtZQUNyQyxnQkFBZ0IsRUFBRSxnQkFBZ0I7WUFDbEMsdUJBQXVCLEVBQUUsc0JBQXNCO1lBQy9DLGVBQWUsRUFBRSxlQUFlO1lBQ2hDLGtCQUFrQixFQUFFLGlCQUFpQjtZQUNyQyxnQkFBZ0IsRUFBRSxnQkFBZ0I7WUFDbEMsdUJBQXVCLEVBQUUsc0JBQXNCO1lBQy9DLGVBQWUsRUFBRSxlQUFlO1lBQ2hDLGtCQUFrQixFQUFFLGlCQUFpQjtZQUNyQyxnQkFBZ0IsRUFBRSxnQkFBZ0I7WUFDbEMsdUJBQXVCLEVBQUUsc0JBQXNCO1lBQy9DLGFBQWEsRUFBRSxjQUFjO1lBQzdCLFlBQVksRUFBRSxhQUFhO1lBQzNCLE9BQU8sRUFBRSxTQUFTO1lBQ2xCLGlCQUFpQixFQUFFLGtCQUFrQjtZQUNyQyx3QkFBd0IsRUFBRSx3QkFBd0I7WUFDbEQsZ0JBQWdCLEVBQUUsaUJBQWlCO1lBRW5DLHNCQUFzQixFQUFFLHFCQUFxQjtZQUM3Qyx5QkFBeUIsRUFBRSx1QkFBdUI7WUFDbEQsdUJBQXVCLEVBQUUsc0JBQXNCO1lBQy9DLHlCQUF5QixFQUFFLHdCQUF3QjtZQUNuRCxzQkFBc0IsRUFBRSxxQkFBcUI7WUFDN0MseUJBQXlCLEVBQUUsdUJBQXVCO1lBQ2xELHVCQUF1QixFQUFFLHNCQUFzQjtZQUMvQyx5QkFBeUIsRUFBRSx3QkFBd0I7WUFDbkQsc0JBQXNCLEVBQUUscUJBQXFCO1lBQzdDLHlCQUF5QixFQUFFLHVCQUF1QjtZQUNsRCx1QkFBdUIsRUFBRSxzQkFBc0I7WUFDL0MseUJBQXlCLEVBQUUsd0JBQXdCO1lBQ25ELHNCQUFzQixFQUFFLHFCQUFxQjtZQUM3QyxzQkFBc0IsRUFBRSxxQkFBcUI7WUFDN0Msc0JBQXNCLEVBQUUscUJBQXFCO1lBQzdDLDhCQUE4QixFQUFFLDRCQUE0QjtZQUM1RCw4QkFBOEIsRUFBRSw0QkFBNEI7WUFDNUQsOEJBQThCLEVBQUUsNEJBQTRCO1lBQzVELDJCQUEyQixFQUFFLDBCQUEwQjtZQUV2RCxrQkFBa0IsRUFBRSxpQkFBaUI7WUFDckMscUJBQXFCLEVBQUUsbUJBQW1CO1lBQzFDLG1CQUFtQixFQUFFLGtCQUFrQjtZQUN2QyxxQkFBcUIsRUFBRSxvQkFBb0I7WUFDM0Msa0JBQWtCLEVBQUUsaUJBQWlCO1lBQ3JDLHFCQUFxQixFQUFFLG1CQUFtQjtZQUMxQyxtQkFBbUIsRUFBRSxrQkFBa0I7WUFDdkMscUJBQXFCLEVBQUUsb0JBQW9CO1lBQzNDLGtCQUFrQixFQUFFLGlCQUFpQjtZQUNyQyxxQkFBcUIsRUFBRSxtQkFBbUI7WUFDMUMsbUJBQW1CLEVBQUUsa0JBQWtCO1lBQ3ZDLHFCQUFxQixFQUFFLG9CQUFvQjtZQUMzQyxrQkFBa0IsRUFBRSxpQkFBaUI7WUFDckMsa0JBQWtCLEVBQUUsaUJBQWlCO1lBQ3JDLGtCQUFrQixFQUFFLGlCQUFpQjtZQUNyQywwQkFBMEIsRUFBRSx3QkFBd0I7WUFDcEQsMEJBQTBCLEVBQUUsd0JBQXdCO1lBQ3BELDBCQUEwQixFQUFFLHdCQUF3QjtZQUNwRCx1QkFBdUIsRUFBRSxzQkFBc0I7WUFFL0Msa0JBQWtCLEVBQUUsaUJBQWlCO1lBQ3JDLHFCQUFxQixFQUFFLG1CQUFtQjtZQUMxQyxtQkFBbUIsRUFBRSxrQkFBa0I7WUFDdkMscUJBQXFCLEVBQUUsb0JBQW9CO1lBQzNDLGtCQUFrQixFQUFFLGlCQUFpQjtZQUNyQyxxQkFBcUIsRUFBRSxtQkFBbUI7WUFDMUMsbUJBQW1CLEVBQUUsa0JBQWtCO1lBQ3ZDLHFCQUFxQixFQUFFLG9CQUFvQjtZQUMzQyxrQkFBa0IsRUFBRSxpQkFBaUI7WUFDckMscUJBQXFCLEVBQUUsbUJBQW1CO1lBQzFDLG1CQUFtQixFQUFFLGtCQUFrQjtZQUN2QyxxQkFBcUIsRUFBRSxvQkFBb0I7WUFDM0Msa0JBQWtCLEVBQUUsaUJBQWlCO1lBQ3JDLGtCQUFrQixFQUFFLGlCQUFpQjtZQUNyQyxrQkFBa0IsRUFBRSxpQkFBaUI7WUFDckMsMEJBQTBCLEVBQUUsd0JBQXdCO1lBQ3BELDBCQUEwQixFQUFFLHdCQUF3QjtZQUNwRCwwQkFBMEIsRUFBRSx3QkFBd0I7WUFDcEQsdUJBQXVCLEVBQUUsc0JBQXNCO1NBQ2hEO1FBQ0QsUUFBUSxFQUFFO1lBQ1IsU0FBUyxFQUFFLGFBQWE7U0FDekI7S0FDRixDQUFDO0dBQ1csc0JBQXNCLENBMjlCbEM7U0EzOUJZLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZGVsSW5zdGFuY2UsIEJhc2VNb2RlbCwgVG9Gcm9udEhvb2ssIFRvQmFja0hvb2ssIERhdGVUaW1lRmllbGQgfSBmcm9tICcuL3V0aWwnO1xuaW1wb3J0IHsgR2FtZVN0YXRpc3RpY0Jhc2UgfSBmcm9tICcuL2dhbWUtc3RhdGlzdGljLWJhc2UnO1xuXG5ATW9kZWxJbnN0YW5jZSh7XG4gIG1hcHBpbmdGaWVsZHM6IHtcbiAgICBnYW1lX3VzZXJfaWQ6ICdnYW1lVXNlcklkJyxcbiAgICB1cGRhdGVkX2F0OiAndXBkYXRlZEF0JyxcbiAgICBwb2ludHM6ICdwb2ludHMnLFxuICAgIHBwX3Nob3RfbWlzc2VzOiAncHBTaG90TWlzc2VzJyxcbiAgICBwcF9zaG90c19vbl9nb2FsOiAncHBTaG90c09uR29hbCcsXG4gICAgcHBfc2hvdHNfYmxvY2tlZDogJ3BwU2hvdHNCbG9ja2VkJyxcbiAgICBldl9zaG90X21pc3NlczogJ2V2U2hvdE1pc3NlcycsXG4gICAgZXZfc2hvdHNfb25fZ29hbDogJ2V2U2hvdHNPbkdvYWwnLFxuICAgIGV2X3Nob3RzX2Jsb2NrZWQ6ICdldlNob3RzQmxvY2tlZCcsXG4gICAgc2hfc2hvdF9taXNzZXM6ICdzaFNob3RNaXNzZXMnLFxuICAgIHNoX3Nob3RzX29uX2dvYWw6ICdzaFNob3RzT25Hb2FsJyxcbiAgICBzaF9zaG90c19ibG9ja2VkOiAnc2hTaG90c0Jsb2NrZWQnLFxuICAgIHBwX3RvdGFsX3Nob3RzX29uX2dvYWw6ICdwcFRvdGFsU2hvdHNPbkdvYWwnLFxuICAgIGV2X3RvdGFsX3Nob3RzX29uX2dvYWw6ICdldlRvdGFsU2hvdHNPbkdvYWwnLFxuICAgIHNoX3RvdGFsX3Nob3RzX29uX2dvYWw6ICdzaFRvdGFsU2hvdHNPbkdvYWwnLFxuICAgIHBwX2dvYWxzOiAncHBHb2FscycsXG4gICAgZXZfZ29hbHM6ICdldkdvYWxzJyxcbiAgICBzaF9nb2FsczogJ3NoR29hbHMnLFxuICAgIHBwX2NvdW50ZXJhdHRhY2tfZ29hbHM6ICdwcENvdW50ZXJBdHRhY2tHb2FscycsXG4gICAgcHBfY291bnRlcmF0dGFja19vbl9nb2FsczogJ3BwQ291bnRlckF0dGFja09uR29hbHMnLFxuICAgIHBwX2NvdW50ZXJhdHRhY2tfbWlzc2VzOiAncHBDb3VudGVyQXR0YWNrTWlzc2VzJyxcbiAgICBwcF9jb3VudGVyYXR0YWNrX3Nob3RzX2Jsb2NrZWQ6ICdwcENvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQnLFxuICAgIGV2X2NvdW50ZXJhdHRhY2tfZ29hbHM6ICdldkNvdW50ZXJBdHRhY2tHb2FscycsXG4gICAgZXZfY291bnRlcmF0dGFja19vbl9nb2FsczogJ2V2Q291bnRlckF0dGFja09uR29hbHMnLFxuICAgIGV2X2NvdW50ZXJhdHRhY2tfbWlzc2VzOiAnZXZDb3VudGVyQXR0YWNrTWlzc2VzJyxcbiAgICBldl9jb3VudGVyYXR0YWNrX3Nob3RzX2Jsb2NrZWQ6ICdldkNvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQnLFxuICAgIHNoX2NvdW50ZXJhdHRhY2tfZ29hbHM6ICdzaENvdW50ZXJBdHRhY2tHb2FscycsXG4gICAgc2hfY291bnRlcmF0dGFja19vbl9nb2FsczogJ3NoQ291bnRlckF0dGFja09uR29hbHMnLFxuICAgIHNoX2NvdW50ZXJhdHRhY2tfbWlzc2VzOiAnc2hDb3VudGVyQXR0YWNrTWlzc2VzJyxcbiAgICBzaF9jb3VudGVyYXR0YWNrX3Nob3RzX2Jsb2NrZWQ6ICdzaENvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQnLFxuICAgIHBwX21hbmV1dmVyX2dvYWxzOiAncHBNYW5ldXZlckdvYWxzJyxcbiAgICBwcF9tYW5ldXZlcl9vbl9nb2FsczogJ3BwTWFuZXV2ZXJPbkdvYWxzJyxcbiAgICBwcF9tYW5ldXZlcl9taXNzZXM6ICdwcE1hbmV1dmVyTWlzc2VzJyxcbiAgICBwcF9tYW5ldXZlcl9zaG90c19ibG9ja2VkOiAncHBNYW5ldXZlclNob3RzQmxvY2tlZCcsXG4gICAgZXZfbWFuZXV2ZXJfZ29hbHM6ICdldk1hbmV1dmVyR29hbHMnLFxuICAgIGV2X21hbmV1dmVyX29uX2dvYWxzOiAnZXZNYW5ldXZlck9uR29hbHMnLFxuICAgIGV2X21hbmV1dmVyX21pc3NlczogJ2V2TWFuZXV2ZXJNaXNzZXMnLFxuICAgIGV2X21hbmV1dmVyX3Nob3RzX2Jsb2NrZWQ6ICdldk1hbmV1dmVyU2hvdHNCbG9ja2VkJyxcbiAgICBzaF9tYW5ldXZlcl9nb2FsczogJ3NoTWFuZXV2ZXJHb2FscycsXG4gICAgc2hfbWFuZXV2ZXJfb25fZ29hbHM6ICdzaE1hbmV1dmVyT25Hb2FscycsXG4gICAgc2hfbWFuZXV2ZXJfbWlzc2VzOiAnc2hNYW5ldXZlck1pc3NlcycsXG4gICAgc2hfbWFuZXV2ZXJfc2hvdHNfYmxvY2tlZDogJ3NoTWFuZXV2ZXJTaG90c0Jsb2NrZWQnLFxuICAgIHBwX2NlbnRlcl9mb3J3YXJkX2dvYWxzOiAncHBDZW50ZXJGb3J3YXJkR29hbHMnLFxuICAgIHBwX2NlbnRlcl9mb3J3YXJkX29uX2dvYWxzOiAncHBDZW50ZXJGb3J3YXJkT25Hb2FscycsXG4gICAgcHBfY2VudGVyX2ZvcndhcmRfbWlzc2VzOiAncHBDZW50ZXJGb3J3YXJkTWlzc2VzJyxcbiAgICBwcF9jZW50ZXJfZm9yd2FyZF9zaG90c19ibG9ja2VkOiAncHBDZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkJyxcbiAgICBldl9jZW50ZXJfZm9yd2FyZF9nb2FsczogJ2V2Q2VudGVyRm9yd2FyZEdvYWxzJyxcbiAgICBldl9jZW50ZXJfZm9yd2FyZF9vbl9nb2FsczogJ2V2Q2VudGVyRm9yd2FyZE9uR29hbHMnLFxuICAgIGV2X2NlbnRlcl9mb3J3YXJkX21pc3NlczogJ2V2Q2VudGVyRm9yd2FyZE1pc3NlcycsXG4gICAgZXZfY2VudGVyX2ZvcndhcmRfc2hvdHNfYmxvY2tlZDogJ2V2Q2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZCcsXG4gICAgc2hfY2VudGVyX2ZvcndhcmRfZ29hbHM6ICdzaENlbnRlckZvcndhcmRHb2FscycsXG4gICAgc2hfY2VudGVyX2ZvcndhcmRfb25fZ29hbHM6ICdzaENlbnRlckZvcndhcmRPbkdvYWxzJyxcbiAgICBzaF9jZW50ZXJfZm9yd2FyZF9taXNzZXM6ICdzaENlbnRlckZvcndhcmRNaXNzZXMnLFxuICAgIHNoX2NlbnRlcl9mb3J3YXJkX3Nob3RzX2Jsb2NrZWQ6ICdzaENlbnRlckZvcndhcmRTaG90c0Jsb2NrZWQnLFxuICAgIHBwX2Fzc2lzdHM6ICdwcEFzc2lzdHMnLFxuICAgIGV2X2Fzc2lzdHM6ICdldkFzc2lzdHMnLFxuICAgIHNoX2Fzc2lzdHM6ICdzaEFzc2lzdHMnLFxuICAgIHNob290b3V0X2F0dGVtcHRzOiAnc2hvb3RvdXRBdHRlbXB0cycsXG4gICAgc2hvb3RvdXRfZ29hbHM6ICdzaG9vdG91dEdvYWxzJyxcbiAgICBhZnRlcl9nYW1lX3Nob290b3V0X2F0dGVtcHRzOiAnYWZ0ZXJHYW1lU2hvb3RvdXRBdHRlbXB0cycsXG4gICAgYWZ0ZXJfZ2FtZV9zaG9vdG91dF9nb2FsczogJ2FmdGVyR2FtZVNob290b3V0R29hbHMnLFxuICAgIGJsb2NrX3Nob3RzOiAnYmxvY2tTaG90cycsXG4gICAgZmFjZV9vZmZfbG9zc2VzOiAnZmFjZU9mZkxvc3NlcycsXG4gICAgZmFjZV9vZmZfd2luczogJ2ZhY2VPZmZXaW5zJyxcbiAgICBwcF9zYXZlczogJ3BwU2F2ZXMnLFxuICAgIHNoX3NhdmVzOiAnc2hTYXZlcycsXG4gICAgZXZfc2F2ZXM6ICdldlNhdmVzJyxcbiAgICBwcF9jb3VudGVyYXR0YWNrX3NhdmVzOiAncHBDb3VudGVyQXR0YWNrU2F2ZXMnLFxuICAgIHNoX2NvdW50ZXJhdHRhY2tfc2F2ZXM6ICdzaENvdW50ZXJBdHRhY2tTYXZlcycsXG4gICAgZXZfY291bnRlcmF0dGFja19zYXZlczogJ2V2Q291bnRlckF0dGFja1NhdmVzJyxcbiAgICBwcF9tYW5ldXZlcl9zYXZlczogJ3BwTWFuZXV2ZXJTYXZlcycsXG4gICAgc2hfbWFuZXV2ZXJfc2F2ZXM6ICdzaE1hbmV1dmVyU2F2ZXMnLFxuICAgIGV2X21hbmV1dmVyX3NhdmVzOiAnZXZNYW5ldXZlclNhdmVzJyxcbiAgICBwcF9jZW50ZXJfZm9yd2FyZF9zYXZlczogJ3BwQ2VudGVyRm9yd2FyZFNhdmVzJyxcbiAgICBzaF9jZW50ZXJfZm9yd2FyZF9zYXZlczogJ3NoQ2VudGVyRm9yd2FyZFNhdmVzJyxcbiAgICBldl9jZW50ZXJfZm9yd2FyZF9zYXZlczogJ2V2Q2VudGVyRm9yd2FyZFNhdmVzJyxcbiAgICBwcF9mcmVlX2tpY2tfc2F2ZXM6ICdwcEZyZWVLaWNrU2F2ZXMnLFxuICAgIHNoX2ZyZWVfa2lja19zYXZlczogJ3NoRnJlZUtpY2tTYXZlcycsXG4gICAgZXZfZnJlZV9raWNrX3NhdmVzOiAnZXZGcmVlS2lja1NhdmVzJyxcbiAgICBwcF9jb3JuZXJfc2F2ZXM6ICdwcENvcm5lclNhdmVzJyxcbiAgICBzaF9jb3JuZXJfc2F2ZXM6ICdzaENvcm5lclNhdmVzJyxcbiAgICBldl9jb3JuZXJfc2F2ZXM6ICdldkNvcm5lclNhdmVzJyxcbiAgICBwcF90b3RhbF9nYW1lX3NhdmVzOiAncHBUb3RhbEdhbWVTYXZlcycsXG4gICAgc2hfdG90YWxfZ2FtZV9zYXZlczogJ3NoVG90YWxHYW1lU2F2ZXMnLFxuICAgIGV2X3RvdGFsX2dhbWVfc2F2ZXM6ICdldlRvdGFsR2FtZVNhdmVzJyxcbiAgICBzaG9vdG91dF9zYXZlczogJ3Nob290b3V0U2F2ZXMnLFxuICAgIGFmdGVyX2dhbWVfc2hvb3RvdXRfc2F2ZXM6ICdhZnRlckdhbWVTaG9vdG91dFNhdmVzJyxcbiAgICBwcF9nb2Fsc19hZ2FpbnN0OiAncHBHb2Fsc0FnYWluc3QnLFxuICAgIHNoX2dvYWxzX2FnYWluc3Q6ICdzaEdvYWxzQWdhaW5zdCcsXG4gICAgZXZfZ29hbHNfYWdhaW5zdDogJ2V2R29hbHNBZ2FpbnN0JyxcbiAgICBnb2Fsc19hZ2FpbnN0OiAnZ29hbHNBZ2FpbnN0JyxcbiAgICBwcF9jb3VudGVyYXR0YWNrX2dvYWxzX2FnYWluc3Q6ICdwcENvdW50ZXJBdHRhY2tHb2Fsc0FnYWluc3QnLFxuICAgIHNoX2NvdW50ZXJhdHRhY2tfZ29hbHNfYWdhaW5zdDogJ3NoQ291bnRlckF0dGFja0dvYWxzQWdhaW5zdCcsXG4gICAgZXZfY291bnRlcmF0dGFja19nb2Fsc19hZ2FpbnN0OiAnZXZDb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0JyxcbiAgICBjb3VudGVyYXR0YWNrX2dvYWxzX2FnYWluc3Q6ICdjb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0JyxcbiAgICBwcF9tYW5ldXZlcl9nb2Fsc19hZ2FpbnN0OiAncHBNYW5ldXZlckdvYWxzQWdhaW5zdCcsXG4gICAgc2hfbWFuZXV2ZXJfZ29hbHNfYWdhaW5zdDogJ3NoTWFuZXV2ZXJHb2Fsc0FnYWluc3QnLFxuICAgIGV2X21hbmV1dmVyX2dvYWxzX2FnYWluc3Q6ICdldk1hbmV1dmVyR29hbHNBZ2FpbnN0JyxcbiAgICBtYW5ldXZlcl9nb2Fsc19hZ2FpbnN0OiAnbWFuZXV2ZXJHb2Fsc0FnYWluc3QnLFxuICAgIHBwX2NlbnRlcl9mb3J3YXJkX2dvYWxzX2FnYWluc3Q6ICdwcENlbnRlckZvcndhcmRHb2Fsc0FnYWluc3QnLFxuICAgIHNoX2NlbnRlcl9mb3J3YXJkX2dvYWxzX2FnYWluc3Q6ICdzaENlbnRlckZvcndhcmRHb2Fsc0FnYWluc3QnLFxuICAgIGV2X2NlbnRlcl9mb3J3YXJkX2dvYWxzX2FnYWluc3Q6ICdldkNlbnRlckZvcndhcmRHb2Fsc0FnYWluc3QnLFxuICAgIGNlbnRlcl9mb3J3YXJkX2dvYWxzX2FnYWluc3Q6ICdjZW50ZXJGb3J3YXJkR29hbHNBZ2FpbnN0JyxcbiAgICBwcF9mcmVlX2tpY2tfZ29hbHNfYWdhaW5zdDogJ3BwRnJlZUtpY2tHb2Fsc0FnYWluc3QnLFxuICAgIHNoX2ZyZWVfa2lja19nb2Fsc19hZ2FpbnN0OiAnc2hGcmVlS2lja0dvYWxzQWdhaW5zdCcsXG4gICAgZXZfZnJlZV9raWNrX2dvYWxzX2FnYWluc3Q6ICdldkZyZWVLaWNrR29hbHNBZ2FpbnN0JyxcbiAgICBmcmVlX2tpY2tfZ29hbHNfYWdhaW5zdDogJ2ZyZWVLaWNrR29hbHNBZ2FpbnN0JyxcbiAgICBwcF9jb3JuZXJfZ29hbHNfYWdhaW5zdDogJ3BwQ29ybmVyR29hbHNBZ2FpbnN0JyxcbiAgICBzaF9jb3JuZXJfZ29hbHNfYWdhaW5zdDogJ3NoQ29ybmVyR29hbHNBZ2FpbnN0JyxcbiAgICBldl9jb3JuZXJfZ29hbHNfYWdhaW5zdDogJ2V2Q29ybmVyR29hbHNBZ2FpbnN0JyxcbiAgICBjb3JuZXJfZ29hbHNfYWdhaW5zdDogJ2Nvcm5lckdvYWxzQWdhaW5zdCcsXG4gICAgc2hvb3RvdXRfZ29hbHNfYWdhaW5zdDogJ3Nob290b3V0R29hbHNBZ2FpbnN0JyxcbiAgICBhZnRlcl9nYW1lX3Nob290b3V0X2dvYWxzX2FnYWluc3Q6ICdhZnRlckdhbWVTaG9vdG91dEdvYWxzQWdhaW5zdCcsXG4gICAgc2FmZXR5X3JhdGU6ICdzYWZldHlSYXRlJyxcbiAgICBwZW5hbHR5X21pbnV0ZXM6ICdwZW5hbHR5TWludXRlcycsXG4gICAgZ2FtZV90aW1lOiAnZ2FtZVRpbWUnLFxuICAgIHBsdXNfbWludXM6ICdwbHVzTWludXMnLFxuICAgIGZvdWxzOiAnZm91bHMnLFxuICAgIG1pbm9yX3BlbmFsdGllczogJ21pbm9yUGVuYWx0aWVzJyxcbiAgICBtYWpvcl9wZW5hbHRpZXM6ICdtYWpvclBlbmFsdGllcycsXG4gICAgbWF0Y2hfcGVuYWx0aWVzOiAnbWF0Y2hQZW5hbHRpZXMnLFxuICAgIHBlbmFsdHlfZm91bHM6ICdwZW5hbHR5Rm91bHMnLFxuICAgIHR1cm5vdmVyczogJ3R1cm5vdmVycycsXG4gICAgYXR0YWNrX2ZvdWxzOiAnYXR0YWNrRm91bHMnLFxuICAgIHBlcnNvbmFsX2ZvdWxzOiAncGVyc29uYWxGb3VscycsXG4gICAgZHJhd25fZm91bHM6ICdkcmF3bkZvdWxzJyxcbiAgICBkcmF3bl90dXJub3ZlcnM6ICdkcmF3blR1cm5vdmVycycsXG4gICAgeWVsbG93X2NhcmRzOiAneWVsbG93Q2FyZHMnLFxuICAgIHJlZF9jYXJkczogJ3JlZENhcmRzJyxcbiAgICBsb3NzZXM6ICdsb3NzZXMnLFxuICAgIHN0ZWFsczogJ3N0ZWFscycsXG4gICAgcHBfZnJlZV9raWNrX2dvYWxzOiAncHBGcmVlS2lja0dvYWxzJyxcbiAgICBwcF9mcmVlX2tpY2tfb25fZ29hbHM6ICdwcEZyZWVLaWNrT25Hb2FscycsXG4gICAgcHBfZnJlZV9raWNrX21pc3NlczogJ3BwRnJlZUtpY2tNaXNzZXMnLFxuICAgIHBwX2ZyZWVfa2lja19zaG90c19ibG9ja2VkOiAncHBGcmVlS2lja1Nob3RzQmxvY2tlZCcsXG4gICAgc2hfZnJlZV9raWNrX2dvYWxzOiAnc2hGcmVlS2lja0dvYWxzJyxcbiAgICBzaF9mcmVlX2tpY2tfb25fZ29hbHM6ICdzaEZyZWVLaWNrT25Hb2FscycsXG4gICAgc2hfZnJlZV9raWNrX21pc3NlczogJ3NoRnJlZUtpY2tNaXNzZXMnLFxuICAgIHNoX2ZyZWVfa2lja19zaG90c19ibG9ja2VkOiAnc2hGcmVlS2lja1Nob3RzQmxvY2tlZCcsXG4gICAgZXZfZnJlZV9raWNrX2dvYWxzOiAnZXZGcmVlS2lja0dvYWxzJyxcbiAgICBldl9mcmVlX2tpY2tfb25fZ29hbHM6ICdldkZyZWVLaWNrT25Hb2FscycsXG4gICAgZXZfZnJlZV9raWNrX21pc3NlczogJ2V2RnJlZUtpY2tNaXNzZXMnLFxuICAgIGV2X2ZyZWVfa2lja19zaG90c19ibG9ja2VkOiAnZXZGcmVlS2lja1Nob3RzQmxvY2tlZCcsXG4gICAgZnJlZV9raWNrX3Bhc3NlczogJ2ZyZWVLaWNrUGFzc2VzJyxcbiAgICBmcmVlX2tpY2tfc2VsZnM6ICdmcmVlS2lja1NlbGZzJyxcbiAgICBwcF9jb3JuZXJfZ29hbHM6ICdwcENvcm5lckdvYWxzJyxcbiAgICBwcF9jb3JuZXJfb25fZ29hbHM6ICdwcENvcm5lck9uR29hbHMnLFxuICAgIHBwX2Nvcm5lcl9taXNzZXM6ICdwcENvcm5lck1pc3NlcycsXG4gICAgcHBfY29ybmVyX3Nob3RzX2Jsb2NrZWQ6ICdwcENvcm5lclNob3RzQmxvY2tlZCcsXG4gICAgc2hfY29ybmVyX2dvYWxzOiAnc2hDb3JuZXJHb2FscycsXG4gICAgc2hfY29ybmVyX29uX2dvYWxzOiAnc2hDb3JuZXJPbkdvYWxzJyxcbiAgICBzaF9jb3JuZXJfbWlzc2VzOiAnc2hDb3JuZXJNaXNzZXMnLFxuICAgIHNoX2Nvcm5lcl9zaG90c19ibG9ja2VkOiAnc2hDb3JuZXJTaG90c0Jsb2NrZWQnLFxuICAgIGV2X2Nvcm5lcl9nb2FsczogJ2V2Q29ybmVyR29hbHMnLFxuICAgIGV2X2Nvcm5lcl9vbl9nb2FsczogJ2V2Q29ybmVyT25Hb2FscycsXG4gICAgZXZfY29ybmVyX21pc3NlczogJ2V2Q29ybmVyTWlzc2VzJyxcbiAgICBldl9jb3JuZXJfc2hvdHNfYmxvY2tlZDogJ2V2Q29ybmVyU2hvdHNCbG9ja2VkJyxcbiAgICBjb3JuZXJfcGFzc2VzOiAnY29ybmVyUGFzc2VzJyxcbiAgICBjb3JuZXJfc2VsZnM6ICdjb3JuZXJTZWxmcycsXG4gICAgdGFja2xlczogJ3RhY2tsZXMnLFxuICAgIHBsYXllcl9lZmZpY2llbmN5OiAncGxheWVyRWZmaWNpZW5jeScsXG4gICAgZGVmZW5zZV9zZWxlY3RfcG9zaXRpb25zOiAnZGVmZW5zZVNlbGVjdFBvc2l0aW9ucycsXG4gICAgc2F2ZV9wb3NzZXNzaW9uczogJ3NhdmVQb3NzZXNzaW9ucycsXG5cbiAgICBwcF9wZXJpbWV0cl9zaG90X2dvYWxzOiAncHBQZXJpbWV0clNob3RHb2FscycsXG4gICAgcHBfcGVyaW1ldHJfc2hvdF9vbl9nb2FsczogJ3BwUGVyaW1ldHJTaG90T25Hb2FscycsXG4gICAgcHBfcGVyaW1ldHJfc2hvdF9taXNzZXM6ICdwcFBlcmltZXRyU2hvdE1pc3NlcycsXG4gICAgcHBfcGVyaW1ldHJfc2hvdHNfYmxvY2tlZDogJ3BwUGVyaW1ldHJTaG90c0Jsb2NrZWQnLFxuICAgIGV2X3BlcmltZXRyX3Nob3RfZ29hbHM6ICdldlBlcmltZXRyU2hvdEdvYWxzJyxcbiAgICBldl9wZXJpbWV0cl9zaG90X29uX2dvYWxzOiAnZXZQZXJpbWV0clNob3RPbkdvYWxzJyxcbiAgICBldl9wZXJpbWV0cl9zaG90X21pc3NlczogJ2V2UGVyaW1ldHJTaG90TWlzc2VzJyxcbiAgICBldl9wZXJpbWV0cl9zaG90c19ibG9ja2VkOiAnZXZQZXJpbWV0clNob3RzQmxvY2tlZCcsXG4gICAgc2hfcGVyaW1ldHJfc2hvdF9nb2FsczogJ3NoUGVyaW1ldHJTaG90R29hbHMnLFxuICAgIHNoX3BlcmltZXRyX3Nob3Rfb25fZ29hbHM6ICdzaFBlcmltZXRyU2hvdE9uR29hbHMnLFxuICAgIHNoX3BlcmltZXRyX3Nob3RfbWlzc2VzOiAnc2hQZXJpbWV0clNob3RNaXNzZXMnLFxuICAgIHNoX3BlcmltZXRyX3Nob3RzX2Jsb2NrZWQ6ICdzaFBlcmltZXRyU2hvdHNCbG9ja2VkJyxcbiAgICBwcF9wZXJpbWV0cl9zaG90X3NhdmVzOiAncHBQZXJpbWV0clNob3RTYXZlcycsXG4gICAgc2hfcGVyaW1ldHJfc2hvdF9zYXZlczogJ3NoUGVyaW1ldHJTaG90U2F2ZXMnLFxuICAgIGV2X3BlcmltZXRyX3Nob3Rfc2F2ZXM6ICdldlBlcmltZXRyU2hvdFNhdmVzJyxcbiAgICBwcF9wZXJpbWV0cl9zaG90X2dvYWxzX2FnYWluc3Q6ICdwcFBlcmltZXRyU2hvdEdvYWxzQWdhaW5zdCcsXG4gICAgc2hfcGVyaW1ldHJfc2hvdF9nb2Fsc19hZ2FpbnN0OiAnc2hQZXJpbWV0clNob3RHb2Fsc0FnYWluc3QnLFxuICAgIGV2X3BlcmltZXRyX3Nob3RfZ29hbHNfYWdhaW5zdDogJ2V2UGVyaW1ldHJTaG90R29hbHNBZ2FpbnN0JyxcbiAgICBwZXJpbWV0cl9zaG90X2dvYWxzX2FnYWluc3Q6ICdwZXJpbWV0clNob3RHb2Fsc0FnYWluc3QnLFxuXG4gICAgcHBfcG9zdF9zaG90X2dvYWxzOiAncHBQb3N0U2hvdEdvYWxzJyxcbiAgICBwcF9wb3N0X3Nob3Rfb25fZ29hbHM6ICdwcFBvc3RTaG90T25Hb2FscycsXG4gICAgcHBfcG9zdF9zaG90X21pc3NlczogJ3BwUG9zdFNob3RNaXNzZXMnLFxuICAgIHBwX3Bvc3Rfc2hvdHNfYmxvY2tlZDogJ3BwUG9zdFNob3RzQmxvY2tlZCcsXG4gICAgZXZfcG9zdF9zaG90X2dvYWxzOiAnZXZQb3N0U2hvdEdvYWxzJyxcbiAgICBldl9wb3N0X3Nob3Rfb25fZ29hbHM6ICdldlBvc3RTaG90T25Hb2FscycsXG4gICAgZXZfcG9zdF9zaG90X21pc3NlczogJ2V2UG9zdFNob3RNaXNzZXMnLFxuICAgIGV2X3Bvc3Rfc2hvdHNfYmxvY2tlZDogJ2V2UG9zdFNob3RzQmxvY2tlZCcsXG4gICAgc2hfcG9zdF9zaG90X2dvYWxzOiAnc2hQb3N0U2hvdEdvYWxzJyxcbiAgICBzaF9wb3N0X3Nob3Rfb25fZ29hbHM6ICdzaFBvc3RTaG90T25Hb2FscycsXG4gICAgc2hfcG9zdF9zaG90X21pc3NlczogJ3NoUG9zdFNob3RNaXNzZXMnLFxuICAgIHNoX3Bvc3Rfc2hvdHNfYmxvY2tlZDogJ3NoUG9zdFNob3RzQmxvY2tlZCcsXG4gICAgcHBfcG9zdF9zaG90X3NhdmVzOiAncHBQb3N0U2hvdFNhdmVzJyxcbiAgICBzaF9wb3N0X3Nob3Rfc2F2ZXM6ICdzaFBvc3RTaG90U2F2ZXMnLFxuICAgIGV2X3Bvc3Rfc2hvdF9zYXZlczogJ2V2UG9zdFNob3RTYXZlcycsXG4gICAgcHBfcG9zdF9zaG90X2dvYWxzX2FnYWluc3Q6ICdwcFBvc3RTaG90R29hbHNBZ2FpbnN0JyxcbiAgICBzaF9wb3N0X3Nob3RfZ29hbHNfYWdhaW5zdDogJ3NoUG9zdFNob3RHb2Fsc0FnYWluc3QnLFxuICAgIGV2X3Bvc3Rfc2hvdF9nb2Fsc19hZ2FpbnN0OiAnZXZQb3N0U2hvdEdvYWxzQWdhaW5zdCcsXG4gICAgcG9zdF9zaG90X2dvYWxzX2FnYWluc3Q6ICdwb3N0U2hvdEdvYWxzQWdhaW5zdCcsXG5cbiAgICBwcF9mYXN0X3Nob3RfZ29hbHM6ICdwcEZhc3RTaG90R29hbHMnLFxuICAgIHBwX2Zhc3Rfc2hvdF9vbl9nb2FsczogJ3BwRmFzdFNob3RPbkdvYWxzJyxcbiAgICBwcF9mYXN0X3Nob3RfbWlzc2VzOiAncHBGYXN0U2hvdE1pc3NlcycsXG4gICAgcHBfZmFzdF9zaG90c19ibG9ja2VkOiAncHBGYXN0U2hvdHNCbG9ja2VkJyxcbiAgICBldl9mYXN0X3Nob3RfZ29hbHM6ICdldkZhc3RTaG90R29hbHMnLFxuICAgIGV2X2Zhc3Rfc2hvdF9vbl9nb2FsczogJ2V2RmFzdFNob3RPbkdvYWxzJyxcbiAgICBldl9mYXN0X3Nob3RfbWlzc2VzOiAnZXZGYXN0U2hvdE1pc3NlcycsXG4gICAgZXZfZmFzdF9zaG90c19ibG9ja2VkOiAnZXZGYXN0U2hvdHNCbG9ja2VkJyxcbiAgICBzaF9mYXN0X3Nob3RfZ29hbHM6ICdzaEZhc3RTaG90R29hbHMnLFxuICAgIHNoX2Zhc3Rfc2hvdF9vbl9nb2FsczogJ3NoRmFzdFNob3RPbkdvYWxzJyxcbiAgICBzaF9mYXN0X3Nob3RfbWlzc2VzOiAnc2hGYXN0U2hvdE1pc3NlcycsXG4gICAgc2hfZmFzdF9zaG90c19ibG9ja2VkOiAnc2hGYXN0U2hvdHNCbG9ja2VkJyxcbiAgICBwcF9mYXN0X3Nob3Rfc2F2ZXM6ICdwcEZhc3RTaG90U2F2ZXMnLFxuICAgIHNoX2Zhc3Rfc2hvdF9zYXZlczogJ3NoRmFzdFNob3RTYXZlcycsXG4gICAgZXZfZmFzdF9zaG90X3NhdmVzOiAnZXZGYXN0U2hvdFNhdmVzJyxcbiAgICBwcF9mYXN0X3Nob3RfZ29hbHNfYWdhaW5zdDogJ3BwRmFzdFNob3RHb2Fsc0FnYWluc3QnLFxuICAgIHNoX2Zhc3Rfc2hvdF9nb2Fsc19hZ2FpbnN0OiAnc2hGYXN0U2hvdEdvYWxzQWdhaW5zdCcsXG4gICAgZXZfZmFzdF9zaG90X2dvYWxzX2FnYWluc3Q6ICdldkZhc3RTaG90R29hbHNBZ2FpbnN0JyxcbiAgICBmYXN0X3Nob3RfZ29hbHNfYWdhaW5zdDogJ2Zhc3RTaG90R29hbHNBZ2FpbnN0JyxcbiAgfSxcbiAgcmVsYXRpb246IHtcbiAgICB1cGRhdGVkQXQ6IERhdGVUaW1lRmllbGQsXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgV2F0ZXJwb2xvR2FtZVN0YXRpc3RpYyBleHRlbmRzIEJhc2VNb2RlbCBpbXBsZW1lbnRzIEdhbWVTdGF0aXN0aWNCYXNlIHtcbiAgZ2FtZVVzZXJJZDogbnVtYmVyO1xuICBwb2ludHM6IG51bWJlcjtcbiAgcHBTaG90TWlzc2VzOiBudW1iZXI7XG4gIHBwU2hvdHNPbkdvYWw6IG51bWJlcjtcbiAgcHBTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgZXZTaG90TWlzc2VzOiBudW1iZXI7XG4gIGV2U2hvdHNPbkdvYWw6IG51bWJlcjtcbiAgZXZTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgc2hTaG90TWlzc2VzOiBudW1iZXI7XG4gIHNoU2hvdHNPbkdvYWw6IG51bWJlcjtcbiAgc2hTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgcHBUb3RhbFNob3RzT25Hb2FsOiBudW1iZXI7XG4gIGV2VG90YWxTaG90c09uR29hbDogbnVtYmVyO1xuICBzaFRvdGFsU2hvdHNPbkdvYWw6IG51bWJlcjtcbiAgcHBHb2FsczogbnVtYmVyO1xuICBldkdvYWxzOiBudW1iZXI7XG4gIHNoR29hbHM6IG51bWJlcjtcbiAgcHBDb3VudGVyQXR0YWNrR29hbHM6IG51bWJlcjtcbiAgcHBDb3VudGVyQXR0YWNrT25Hb2FsczogbnVtYmVyO1xuICBwcENvdW50ZXJBdHRhY2tNaXNzZXM6IG51bWJlcjtcbiAgcHBDb3VudGVyQXR0YWNrU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIGV2Q291bnRlckF0dGFja0dvYWxzOiBudW1iZXI7XG4gIGV2Q291bnRlckF0dGFja09uR29hbHM6IG51bWJlcjtcbiAgZXZDb3VudGVyQXR0YWNrTWlzc2VzOiBudW1iZXI7XG4gIGV2Q291bnRlckF0dGFja1Nob3RzQmxvY2tlZDogbnVtYmVyO1xuICBzaENvdW50ZXJBdHRhY2tHb2FsczogbnVtYmVyO1xuICBzaENvdW50ZXJBdHRhY2tPbkdvYWxzOiBudW1iZXI7XG4gIHNoQ291bnRlckF0dGFja01pc3NlczogbnVtYmVyO1xuICBzaENvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgcHBNYW5ldXZlckdvYWxzOiBudW1iZXI7XG4gIHBwTWFuZXV2ZXJPbkdvYWxzOiBudW1iZXI7XG4gIHBwTWFuZXV2ZXJNaXNzZXM6IG51bWJlcjtcbiAgcHBNYW5ldXZlclNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBldk1hbmV1dmVyR29hbHM6IG51bWJlcjtcbiAgZXZNYW5ldXZlck9uR29hbHM6IG51bWJlcjtcbiAgZXZNYW5ldXZlck1pc3NlczogbnVtYmVyO1xuICBldk1hbmV1dmVyU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIHNoTWFuZXV2ZXJHb2FsczogbnVtYmVyO1xuICBzaE1hbmV1dmVyT25Hb2FsczogbnVtYmVyO1xuICBzaE1hbmV1dmVyTWlzc2VzOiBudW1iZXI7XG4gIHNoTWFuZXV2ZXJTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgcHBDZW50ZXJGb3J3YXJkR29hbHM6IG51bWJlcjtcbiAgcHBDZW50ZXJGb3J3YXJkT25Hb2FsczogbnVtYmVyO1xuICBwcENlbnRlckZvcndhcmRNaXNzZXM6IG51bWJlcjtcbiAgcHBDZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIGV2Q2VudGVyRm9yd2FyZEdvYWxzOiBudW1iZXI7XG4gIGV2Q2VudGVyRm9yd2FyZE9uR29hbHM6IG51bWJlcjtcbiAgZXZDZW50ZXJGb3J3YXJkTWlzc2VzOiBudW1iZXI7XG4gIGV2Q2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBzaENlbnRlckZvcndhcmRHb2FsczogbnVtYmVyO1xuICBzaENlbnRlckZvcndhcmRPbkdvYWxzOiBudW1iZXI7XG4gIHNoQ2VudGVyRm9yd2FyZE1pc3NlczogbnVtYmVyO1xuICBzaENlbnRlckZvcndhcmRTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgcHBBc3Npc3RzOiBudW1iZXI7XG4gIGV2QXNzaXN0czogbnVtYmVyO1xuICBzaEFzc2lzdHM6IG51bWJlcjtcbiAgc2hvb3RvdXRBdHRlbXB0czogbnVtYmVyO1xuICBzaG9vdG91dEdvYWxzOiBudW1iZXI7XG4gIGFmdGVyR2FtZVNob290b3V0QXR0ZW1wdHM6IG51bWJlcjtcbiAgYWZ0ZXJHYW1lU2hvb3RvdXRHb2FsczogbnVtYmVyO1xuICBibG9ja1Nob3RzOiBudW1iZXI7XG4gIGZhY2VPZmZMb3NzZXM6IG51bWJlcjtcbiAgZmFjZU9mZldpbnM6IG51bWJlcjtcbiAgcHBTYXZlczogbnVtYmVyO1xuICBzaFNhdmVzOiBudW1iZXI7XG4gIGV2U2F2ZXM6IG51bWJlcjtcbiAgcHBDb3VudGVyQXR0YWNrU2F2ZXM6IG51bWJlcjtcbiAgc2hDb3VudGVyQXR0YWNrU2F2ZXM6IG51bWJlcjtcbiAgZXZDb3VudGVyQXR0YWNrU2F2ZXM6IG51bWJlcjtcbiAgcHBNYW5ldXZlclNhdmVzOiBudW1iZXI7XG4gIHNoTWFuZXV2ZXJTYXZlczogbnVtYmVyO1xuICBldk1hbmV1dmVyU2F2ZXM6IG51bWJlcjtcbiAgcHBDZW50ZXJGb3J3YXJkU2F2ZXM6IG51bWJlcjtcbiAgc2hDZW50ZXJGb3J3YXJkU2F2ZXM6IG51bWJlcjtcbiAgZXZDZW50ZXJGb3J3YXJkU2F2ZXM6IG51bWJlcjtcbiAgcHBGcmVlS2lja1NhdmVzOiBudW1iZXI7XG4gIHNoRnJlZUtpY2tTYXZlczogbnVtYmVyO1xuICBldkZyZWVLaWNrU2F2ZXM6IG51bWJlcjtcbiAgcHBDb3JuZXJTYXZlczogbnVtYmVyO1xuICBzaENvcm5lclNhdmVzOiBudW1iZXI7XG4gIGV2Q29ybmVyU2F2ZXM6IG51bWJlcjtcbiAgcHBUb3RhbEdhbWVTYXZlczogbnVtYmVyO1xuICBzaFRvdGFsR2FtZVNhdmVzOiBudW1iZXI7XG4gIGV2VG90YWxHYW1lU2F2ZXM6IG51bWJlcjtcbiAgc2hvb3RvdXRTYXZlczogbnVtYmVyO1xuICBhZnRlckdhbWVTaG9vdG91dFNhdmVzOiBudW1iZXI7XG4gIHBwR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHNoR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGV2R29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBwcENvdW50ZXJBdHRhY2tHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgc2hDb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGV2Q291bnRlckF0dGFja0dvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBjb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHBwTWFuZXV2ZXJHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgc2hNYW5ldXZlckdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBldk1hbmV1dmVyR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIG1hbmV1dmVyR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHBwQ2VudGVyRm9yd2FyZEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBzaENlbnRlckZvcndhcmRHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZXZDZW50ZXJGb3J3YXJkR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGNlbnRlckZvcndhcmRHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgcHBGcmVlS2lja0dvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBzaEZyZWVLaWNrR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGV2RnJlZUtpY2tHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZnJlZUtpY2tHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgcHBDb3JuZXJHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgc2hDb3JuZXJHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZXZDb3JuZXJHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgY29ybmVyR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHNob290b3V0R29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGFmdGVyR2FtZVNob290b3V0R29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHNhZmV0eVJhdGU6IG51bWJlcjtcbiAgcGVuYWx0eU1pbnV0ZXM6IG51bWJlcjtcbiAgZ2FtZVRpbWU6IG51bWJlcjtcbiAgcGx1c01pbnVzOiBudW1iZXI7XG4gIGZvdWxzOiBudW1iZXI7XG4gIG1pbm9yUGVuYWx0aWVzOiBudW1iZXI7XG4gIG1ham9yUGVuYWx0aWVzOiBudW1iZXI7XG4gIG1hdGNoUGVuYWx0aWVzOiBudW1iZXI7XG4gIHBlbmFsdHlGb3VsczogbnVtYmVyO1xuICB0dXJub3ZlcnM6IG51bWJlcjtcbiAgYXR0YWNrRm91bHM6IG51bWJlcjtcbiAgcGVyc29uYWxGb3VsczogbnVtYmVyO1xuICBkcmF3bkZvdWxzOiBudW1iZXI7XG4gIGRyYXduVHVybm92ZXJzOiBudW1iZXI7XG4gIHllbGxvd0NhcmRzOiBudW1iZXI7XG4gIHJlZENhcmRzOiBudW1iZXI7XG4gIGxvc3NlczogbnVtYmVyO1xuICBzdGVhbHM6IG51bWJlcjtcbiAgcHBGcmVlS2lja0dvYWxzOiBudW1iZXI7XG4gIHBwRnJlZUtpY2tPbkdvYWxzOiBudW1iZXI7XG4gIHBwRnJlZUtpY2tNaXNzZXM6IG51bWJlcjtcbiAgcHBGcmVlS2lja1Nob3RzQmxvY2tlZDogbnVtYmVyO1xuICBzaEZyZWVLaWNrR29hbHM6IG51bWJlcjtcbiAgc2hGcmVlS2lja09uR29hbHM6IG51bWJlcjtcbiAgc2hGcmVlS2lja01pc3NlczogbnVtYmVyO1xuICBzaEZyZWVLaWNrU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIGV2RnJlZUtpY2tHb2FsczogbnVtYmVyO1xuICBldkZyZWVLaWNrT25Hb2FsczogbnVtYmVyO1xuICBldkZyZWVLaWNrTWlzc2VzOiBudW1iZXI7XG4gIGV2RnJlZUtpY2tTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgZnJlZUtpY2tQYXNzZXM6IG51bWJlcjtcbiAgZnJlZUtpY2tTZWxmczogbnVtYmVyO1xuICBwcENvcm5lckdvYWxzOiBudW1iZXI7XG4gIHBwQ29ybmVyT25Hb2FsczogbnVtYmVyO1xuICBwcENvcm5lck1pc3NlczogbnVtYmVyO1xuICBwcENvcm5lclNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBzaENvcm5lckdvYWxzOiBudW1iZXI7XG4gIHNoQ29ybmVyT25Hb2FsczogbnVtYmVyO1xuICBzaENvcm5lck1pc3NlczogbnVtYmVyO1xuICBzaENvcm5lclNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBldkNvcm5lckdvYWxzOiBudW1iZXI7XG4gIGV2Q29ybmVyT25Hb2FsczogbnVtYmVyO1xuICBldkNvcm5lck1pc3NlczogbnVtYmVyO1xuICBldkNvcm5lclNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBjb3JuZXJQYXNzZXM6IG51bWJlcjtcbiAgY29ybmVyU2VsZnM6IG51bWJlcjtcbiAgdGFja2xlczogbnVtYmVyO1xuICBwbGF5ZXJFZmZpY2llbmN5OiBudW1iZXI7XG4gIGRlZmVuc2VTZWxlY3RQb3NpdGlvbnM6IG51bWJlcjtcbiAgc2F2ZVBvc3Nlc3Npb25zOiBudW1iZXI7XG5cbiAgcHBQZXJpbWV0clNob3RHb2FsczogbnVtYmVyO1xuICBwcFBlcmltZXRyU2hvdE9uR29hbHM6IG51bWJlcjtcbiAgcHBQZXJpbWV0clNob3RNaXNzZXM6IG51bWJlcjtcbiAgcHBQZXJpbWV0clNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBldlBlcmltZXRyU2hvdEdvYWxzOiBudW1iZXI7XG4gIGV2UGVyaW1ldHJTaG90T25Hb2FsczogbnVtYmVyO1xuICBldlBlcmltZXRyU2hvdE1pc3NlczogbnVtYmVyO1xuICBldlBlcmltZXRyU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIHNoUGVyaW1ldHJTaG90R29hbHM6IG51bWJlcjtcbiAgc2hQZXJpbWV0clNob3RPbkdvYWxzOiBudW1iZXI7XG4gIHNoUGVyaW1ldHJTaG90TWlzc2VzOiBudW1iZXI7XG4gIHNoUGVyaW1ldHJTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgcHBQZXJpbWV0clNob3RTYXZlczogbnVtYmVyO1xuICBzaFBlcmltZXRyU2hvdFNhdmVzOiBudW1iZXI7XG4gIGV2UGVyaW1ldHJTaG90U2F2ZXM6IG51bWJlcjtcbiAgcHBQZXJpbWV0clNob3RHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgc2hQZXJpbWV0clNob3RHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZXZQZXJpbWV0clNob3RHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgcGVyaW1ldHJTaG90R29hbHNBZ2FpbnN0OiBudW1iZXI7XG5cbiAgcHBQb3N0U2hvdEdvYWxzOiBudW1iZXI7XG4gIHBwUG9zdFNob3RPbkdvYWxzOiBudW1iZXI7XG4gIHBwUG9zdFNob3RNaXNzZXM6IG51bWJlcjtcbiAgcHBQb3N0U2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIGV2UG9zdFNob3RHb2FsczogbnVtYmVyO1xuICBldlBvc3RTaG90T25Hb2FsczogbnVtYmVyO1xuICBldlBvc3RTaG90TWlzc2VzOiBudW1iZXI7XG4gIGV2UG9zdFNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBzaFBvc3RTaG90R29hbHM6IG51bWJlcjtcbiAgc2hQb3N0U2hvdE9uR29hbHM6IG51bWJlcjtcbiAgc2hQb3N0U2hvdE1pc3NlczogbnVtYmVyO1xuICBzaFBvc3RTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgcHBQb3N0U2hvdFNhdmVzOiBudW1iZXI7XG4gIHNoUG9zdFNob3RTYXZlczogbnVtYmVyO1xuICBldlBvc3RTaG90U2F2ZXM6IG51bWJlcjtcbiAgcHBQb3N0U2hvdEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBzaFBvc3RTaG90R29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGV2UG9zdFNob3RHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgcG9zdFNob3RHb2Fsc0FnYWluc3Q6IG51bWJlcjtcblxuICBwcEZhc3RTaG90R29hbHM6IG51bWJlcjtcbiAgcHBGYXN0U2hvdE9uR29hbHM6IG51bWJlcjtcbiAgcHBGYXN0U2hvdE1pc3NlczogbnVtYmVyO1xuICBwcEZhc3RTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgZXZGYXN0U2hvdEdvYWxzOiBudW1iZXI7XG4gIGV2RmFzdFNob3RPbkdvYWxzOiBudW1iZXI7XG4gIGV2RmFzdFNob3RNaXNzZXM6IG51bWJlcjtcbiAgZXZGYXN0U2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIHNoRmFzdFNob3RHb2FsczogbnVtYmVyO1xuICBzaEZhc3RTaG90T25Hb2FsczogbnVtYmVyO1xuICBzaEZhc3RTaG90TWlzc2VzOiBudW1iZXI7XG4gIHNoRmFzdFNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBwcEZhc3RTaG90U2F2ZXM6IG51bWJlcjtcbiAgc2hGYXN0U2hvdFNhdmVzOiBudW1iZXI7XG4gIGV2RmFzdFNob3RTYXZlczogbnVtYmVyO1xuICBwcEZhc3RTaG90R29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHNoRmFzdFNob3RHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZXZGYXN0U2hvdEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBmYXN0U2hvdEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuXG4gIHVwZGF0ZWRBdDogRGF0ZTtcblxuICBnZXQgaWQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nYW1lVXNlcklkO1xuICB9XG5cbiAgZ2V0IGdhbWVNaW51dGVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIE1hdGguZmxvb3IodGhpcy5nYW1lVGltZSAvIDYwKTtcbiAgfVxuXG4gIGdldCBwZW5hbHR5VGltZSgpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5wZW5hbHR5TWludXRlcykge1xuICAgICAgcmV0dXJuICcwMDowMCc7XG4gICAgfVxuICAgIGNvbnN0IG1pbnV0ZXMgPSBNYXRoLmZsb29yKHRoaXMucGVuYWx0eU1pbnV0ZXMgLyA2MCk7XG4gICAgY29uc3Qgc2Vjb25kcyA9IE1hdGguZmxvb3IodGhpcy5wZW5hbHR5TWludXRlcyAtIG1pbnV0ZXMgKiA2MCk7XG4gICAgcmV0dXJuIGAke21pbnV0ZXMgPCAxMCA/IDAgOiAnJ30ke21pbnV0ZXN9OiR7c2Vjb25kcyA8IDEwID8gMCA6ICcnfSR7c2Vjb25kc31gO1xuICB9XG5cbiAgZ2V0IGFzc2lzdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBBc3Npc3RzIHx8IDApICsgKHRoaXMuc2hBc3Npc3RzIHx8IDApICArICh0aGlzLmV2QXNzaXN0cyB8fCAwKTtcbiAgfVxuXG4gIGdldCB0b3RhbENvdW50ZXJBdHRhY2tHb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENvdW50ZXJBdHRhY2tHb2FscyB8fCAwKSArICh0aGlzLmV2Q291bnRlckF0dGFja0dvYWxzIHx8IDApICArICh0aGlzLnNoQ291bnRlckF0dGFja0dvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBwQ291bnRlckF0dGFja1Nob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ291bnRlckF0dGFja09uR29hbHMgfHwgMCkgKyAodGhpcy5wcENvdW50ZXJBdHRhY2tNaXNzZXMgfHwgMCkgKyAodGhpcy5wcENvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgc2hDb3VudGVyQXR0YWNrU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hDb3VudGVyQXR0YWNrT25Hb2FscyB8fCAwKSArICh0aGlzLnNoQ291bnRlckF0dGFja01pc3NlcyB8fCAwKSArICh0aGlzLnNoQ291bnRlckF0dGFja1Nob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBldkNvdW50ZXJBdHRhY2tTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5ldkNvdW50ZXJBdHRhY2tPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZDb3VudGVyQXR0YWNrTWlzc2VzIHx8IDApICsgKHRoaXMuZXZDb3VudGVyQXR0YWNrU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNvdW50ZXJBdHRhY2tTaG90TWlzc2VzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ291bnRlckF0dGFja01pc3NlcyB8fCAwKSArICh0aGlzLnNoQ291bnRlckF0dGFja01pc3NlcyB8fCAwKSArICh0aGlzLmV2Q291bnRlckF0dGFja01pc3NlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBjb3VudGVyQXR0YWNrU2hvdE9uR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDb3VudGVyQXR0YWNrT25Hb2FscyB8fCAwKSArICh0aGlzLnNoQ291bnRlckF0dGFja09uR29hbHMgfHwgMCkgKyAodGhpcy5ldkNvdW50ZXJBdHRhY2tPbkdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDb3VudGVyQXR0YWNrU2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuc2hDb3VudGVyQXR0YWNrU2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuZXZDb3VudGVyQXR0YWNrU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNvdW50ZXJBdHRhY2tTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNvdW50ZXJBdHRhY2tTaG90TWlzc2VzICsgdGhpcy5jb3VudGVyQXR0YWNrU2hvdE9uR29hbHMgKyB0aGlzLmNvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQ7XG4gIH1cblxuICBnZXQgY291bnRlckF0dGFja0dvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbENvdW50ZXJBdHRhY2tHb2FscyB8fCAhdGhpcy5jb3VudGVyQXR0YWNrU2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbENvdW50ZXJBdHRhY2tHb2FscyAvIHRoaXMuY291bnRlckF0dGFja1Nob3RzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IHRvdGFsTWFuZXV2ZXJHb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcE1hbmV1dmVyR29hbHMgfHwgMCkgKyAodGhpcy5zaE1hbmV1dmVyR29hbHMgfHwgMCkgKyAodGhpcy5ldk1hbmV1dmVyR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgcHBNYW5ldXZlclNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwTWFuZXV2ZXJPbkdvYWxzIHx8IDApICsgKHRoaXMucHBNYW5ldXZlck1pc3NlcyB8fCAwKSArICh0aGlzLnBwTWFuZXV2ZXJTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgc2hNYW5ldXZlclNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnNoTWFuZXV2ZXJPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hNYW5ldXZlck1pc3NlcyB8fCAwKSArICh0aGlzLnNoTWFuZXV2ZXJTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgZXZNYW5ldXZlclNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmV2TWFuZXV2ZXJPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZNYW5ldXZlck1pc3NlcyB8fCAwKSArICh0aGlzLmV2TWFuZXV2ZXJTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgbWFuZXV2ZXJTaG90TWlzc2VzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwTWFuZXV2ZXJNaXNzZXMgfHwgMCkgKyAodGhpcy5zaE1hbmV1dmVyTWlzc2VzIHx8IDApICsgICh0aGlzLmV2TWFuZXV2ZXJNaXNzZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgbWFuZXV2ZXJTaG90T25Hb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcE1hbmV1dmVyT25Hb2FscyB8fCAwKSArICh0aGlzLnNoTWFuZXV2ZXJPbkdvYWxzIHx8IDApICsgICh0aGlzLmV2TWFuZXV2ZXJPbkdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IG1hbmV1dmVyU2hvdHNCbG9ja2VkKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwTWFuZXV2ZXJTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5zaE1hbmV1dmVyU2hvdHNCbG9ja2VkIHx8IDApICsgICh0aGlzLmV2TWFuZXV2ZXJTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgbWFuZXV2ZXJTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLm1hbmV1dmVyU2hvdE1pc3NlcyArIHRoaXMubWFuZXV2ZXJTaG90T25Hb2FscyArIHRoaXMubWFuZXV2ZXJTaG90c0Jsb2NrZWQ7XG4gIH1cblxuICBnZXQgbWFuZXV2ZXJHb2Fsc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMudG90YWxNYW5ldXZlckdvYWxzIHx8ICF0aGlzLm1hbmV1dmVyU2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbE1hbmV1dmVyR29hbHMgLyB0aGlzLm1hbmV1dmVyU2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgdG90YWxDZW50ZXJGb3J3YXJkR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDZW50ZXJGb3J3YXJkR29hbHMgfHwgMCkgKyAodGhpcy5zaENlbnRlckZvcndhcmRHb2FscyB8fCAwKSArICAodGhpcy5ldkNlbnRlckZvcndhcmRHb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwcENlbnRlckZvcndhcmRTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENlbnRlckZvcndhcmRPbkdvYWxzIHx8IDApICsgKHRoaXMucHBDZW50ZXJGb3J3YXJkTWlzc2VzIHx8IDApICsgKHRoaXMucHBDZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IHNoQ2VudGVyRm9yd2FyZFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnNoQ2VudGVyRm9yd2FyZE9uR29hbHMgfHwgMCkgKyAodGhpcy5zaENlbnRlckZvcndhcmRNaXNzZXMgfHwgMCkgKyAodGhpcy5zaENlbnRlckZvcndhcmRTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgZXZDZW50ZXJGb3J3YXJkU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuZXZDZW50ZXJGb3J3YXJkT25Hb2FscyB8fCAwKSArICh0aGlzLmV2Q2VudGVyRm9yd2FyZE1pc3NlcyB8fCAwKSArICh0aGlzLmV2Q2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBjZW50ZXJGb3J3YXJkU2hvdE1pc3NlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENlbnRlckZvcndhcmRNaXNzZXMgfHwgMCkgKyAodGhpcy5zaENlbnRlckZvcndhcmRNaXNzZXMgfHwgMCkgKyAodGhpcy5ldkNlbnRlckZvcndhcmRNaXNzZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgY2VudGVyRm9yd2FyZFNob3RPbkdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ2VudGVyRm9yd2FyZE9uR29hbHMgfHwgMCkgKyAodGhpcy5zaENlbnRlckZvcndhcmRPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZDZW50ZXJGb3J3YXJkT25Hb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBjZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLnNoQ2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLmV2Q2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBjZW50ZXJGb3J3YXJkU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jZW50ZXJGb3J3YXJkU2hvdE1pc3NlcyArIHRoaXMuY2VudGVyRm9yd2FyZFNob3RPbkdvYWxzICsgdGhpcy5jZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkO1xuICB9XG5cbiAgZ2V0IGNlbnRlckZvcndhcmRHb2Fsc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMudG90YWxDZW50ZXJGb3J3YXJkR29hbHMgfHwgIXRoaXMuY2VudGVyRm9yd2FyZFNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxDZW50ZXJGb3J3YXJkR29hbHMgLyB0aGlzLmNlbnRlckZvcndhcmRTaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCB0b3RhbFBlcmltZXRyU2hvdEdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwUGVyaW1ldHJTaG90R29hbHMgfHwgMCkgKyAodGhpcy5ldlBlcmltZXRyU2hvdEdvYWxzIHx8IDApICArICh0aGlzLnNoUGVyaW1ldHJTaG90R29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgcHBQZXJpbWV0clNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwUGVyaW1ldHJTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLnBwUGVyaW1ldHJTaG90TWlzc2VzIHx8IDApICsgKHRoaXMucHBQZXJpbWV0clNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBzaFBlcmltZXRyU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hQZXJpbWV0clNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hQZXJpbWV0clNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5zaFBlcmltZXRyU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IGV2UGVyaW1ldHJTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5ldlBlcmltZXRyU2hvdE9uR29hbHMgfHwgMCkgKyAodGhpcy5ldlBlcmltZXRyU2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLmV2UGVyaW1ldHJTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgcGVyaW1ldHJTaG90TWlzc2VzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwUGVyaW1ldHJTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuc2hQZXJpbWV0clNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5ldlBlcmltZXRyU2hvdE1pc3NlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwZXJpbWV0clNob3RPbkdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwUGVyaW1ldHJTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLnNoUGVyaW1ldHJTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLmV2UGVyaW1ldHJTaG90T25Hb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwZXJpbWV0clNob3RzQmxvY2tlZCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFBlcmltZXRyU2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuc2hQZXJpbWV0clNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLmV2UGVyaW1ldHJTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgcGVyaW1ldHJTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnBlcmltZXRyU2hvdE1pc3NlcyArIHRoaXMucGVyaW1ldHJTaG90T25Hb2FscyArIHRoaXMucGVyaW1ldHJTaG90c0Jsb2NrZWQ7XG4gIH1cblxuICBnZXQgcGVyaW1ldHJTaG90R29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsUGVyaW1ldHJTaG90R29hbHMgfHwgIXRoaXMucGVyaW1ldHJTaG90cykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnRvdGFsUGVyaW1ldHJTaG90R29hbHMgLyB0aGlzLnBlcmltZXRyU2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgdG90YWxQb3N0U2hvdEdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwUG9zdFNob3RHb2FscyB8fCAwKSArICh0aGlzLmV2UG9zdFNob3RHb2FscyB8fCAwKSAgKyAodGhpcy5zaFBvc3RTaG90R29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgcHBQb3N0U2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBQb3N0U2hvdE9uR29hbHMgfHwgMCkgKyAodGhpcy5wcFBvc3RTaG90TWlzc2VzIHx8IDApICsgKHRoaXMucHBQb3N0U2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IHNoUG9zdFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnNoUG9zdFNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hQb3N0U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnNoUG9zdFNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBldlBvc3RTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5ldlBvc3RTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLmV2UG9zdFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5ldlBvc3RTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zdFNob3RNaXNzZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBQb3N0U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnNoUG9zdFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5ldlBvc3RTaG90TWlzc2VzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBvc3RTaG90T25Hb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFBvc3RTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLnNoUG9zdFNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZQb3N0U2hvdE9uR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zdFNob3RzQmxvY2tlZCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFBvc3RTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5zaFBvc3RTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5ldlBvc3RTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zdFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucG9zdFNob3RNaXNzZXMgKyB0aGlzLnBvc3RTaG90T25Hb2FscyArIHRoaXMucG9zdFNob3RzQmxvY2tlZDtcbiAgfVxuXG4gIGdldCBwb3N0U2hvdEdvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbFBvc3RTaG90R29hbHMgfHwgIXRoaXMucG9zdFNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxQb3N0U2hvdEdvYWxzIC8gdGhpcy5wb3N0U2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgdG90YWxGYXN0U2hvdEdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwRmFzdFNob3RHb2FscyB8fCAwKSArICh0aGlzLmV2RmFzdFNob3RHb2FscyB8fCAwKSAgKyAodGhpcy5zaEZhc3RTaG90R29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgcHBGYXN0U2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBGYXN0U2hvdE9uR29hbHMgfHwgMCkgKyAodGhpcy5wcEZhc3RTaG90TWlzc2VzIHx8IDApICsgKHRoaXMucHBGYXN0U2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IHNoRmFzdFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnNoRmFzdFNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hGYXN0U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnNoRmFzdFNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBldkZhc3RTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5ldkZhc3RTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLmV2RmFzdFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5ldkZhc3RTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgZmFzdFNob3RNaXNzZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBGYXN0U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnNoRmFzdFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5ldkZhc3RTaG90TWlzc2VzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGZhc3RTaG90T25Hb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEZhc3RTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLnNoRmFzdFNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZGYXN0U2hvdE9uR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgZmFzdFNob3RzQmxvY2tlZCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEZhc3RTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5zaEZhc3RTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5ldkZhc3RTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgZmFzdFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZmFzdFNob3RNaXNzZXMgKyB0aGlzLmZhc3RTaG90T25Hb2FscyArIHRoaXMuZmFzdFNob3RzQmxvY2tlZDtcbiAgfVxuXG4gIGdldCBmYXN0U2hvdEdvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbEZhc3RTaG90R29hbHMgfHwgIXRoaXMuZmFzdFNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxGYXN0U2hvdEdvYWxzIC8gdGhpcy5mYXN0U2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgcHBTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5wcFNob3RzT25Hb2FsIHx8IDApICsgKHRoaXMucHBTaG90c0Jsb2NrZWQgfHwgMCkgK1xuICAgICAgKHRoaXMucHBGcmVlS2lja01pc3NlcyB8fCAwKSArICh0aGlzLnBwRnJlZUtpY2tPbkdvYWxzIHx8IDApICsgKHRoaXMucHBGcmVlS2lja1Nob3RzQmxvY2tlZCB8fCAwKSArXG4gICAgICAodGhpcy5wcENvcm5lck1pc3NlcyB8fCAwKSArICh0aGlzLnBwQ29ybmVyT25Hb2FscyB8fCAwKSArICh0aGlzLnBwQ29ybmVyU2hvdHNCbG9ja2VkIHx8IDApICtcbiAgICAgIHRoaXMucHBDb3VudGVyQXR0YWNrU2hvdHMgKyB0aGlzLnBwTWFuZXV2ZXJTaG90cyArIHRoaXMucHBDZW50ZXJGb3J3YXJkU2hvdHMgK1xuICAgICAgdGhpcy5wcFBlcmltZXRyU2hvdHMgKyB0aGlzLnBwUG9zdFNob3RzICsgdGhpcy5wcEZhc3RTaG90cztcbiAgfVxuXG4gIGdldCBldlNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmV2U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLmV2U2hvdHNPbkdvYWwgfHwgMCkgKyAodGhpcy5ldlNob3RzQmxvY2tlZCB8fCAwKSArXG4gICAgICAodGhpcy5ldkZyZWVLaWNrTWlzc2VzIHx8IDApICsgKHRoaXMuZXZGcmVlS2lja09uR29hbHMgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrU2hvdHNCbG9ja2VkIHx8IDApICtcbiAgICAgICh0aGlzLmV2Q29ybmVyTWlzc2VzIHx8IDApICsgKHRoaXMuZXZDb3JuZXJPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZDb3JuZXJTaG90c0Jsb2NrZWQgfHwgMCkgICtcbiAgICAgIHRoaXMuZXZDb3VudGVyQXR0YWNrU2hvdHMgKyB0aGlzLmV2TWFuZXV2ZXJTaG90cyArIHRoaXMuZXZDZW50ZXJGb3J3YXJkU2hvdHMgK1xuICAgICAgdGhpcy5ldlBlcmltZXRyU2hvdHMgKyB0aGlzLmV2UG9zdFNob3RzICsgdGhpcy5ldkZhc3RTaG90cztcbiAgfVxuXG4gIGdldCBzaFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnNoU2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnNoU2hvdHNPbkdvYWwgfHwgMCkgKyAodGhpcy5zaFNob3RzQmxvY2tlZCB8fCAwKSArXG4gICAgICAodGhpcy5zaEZyZWVLaWNrTWlzc2VzIHx8IDApICsgKHRoaXMuc2hGcmVlS2lja09uR29hbHMgfHwgMCkgKyAodGhpcy5zaEZyZWVLaWNrU2hvdHNCbG9ja2VkIHx8IDApICtcbiAgICAgICh0aGlzLnNoQ29ybmVyTWlzc2VzIHx8IDApICsgKHRoaXMuc2hDb3JuZXJPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hDb3JuZXJTaG90c0Jsb2NrZWQgfHwgMCkgK1xuICAgICAgdGhpcy5zaENvdW50ZXJBdHRhY2tTaG90cyArIHRoaXMuc2hNYW5ldXZlclNob3RzICsgdGhpcy5zaENlbnRlckZvcndhcmRTaG90cyArXG4gICAgICB0aGlzLnNoUGVyaW1ldHJTaG90cyArIHRoaXMuc2hQb3N0U2hvdHMgKyB0aGlzLnNoRmFzdFNob3RzO1xuICB9XG5cbiAgZ2V0IHRvdGFsU2hHb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5zaEdvYWxzIHx8IDApICsgKHRoaXMuc2hGcmVlS2lja0dvYWxzIHx8IDApICsgKHRoaXMuc2hDb3JuZXJHb2FscyB8fCAwKSArXG4gICAgICAodGhpcy5zaENvdW50ZXJBdHRhY2tHb2FscyB8fCAwKSArICh0aGlzLnNoTWFuZXV2ZXJHb2FscyB8fCAwKSArICh0aGlzLnNoQ2VudGVyRm9yd2FyZEdvYWxzIHx8IDApICtcbiAgICAgICh0aGlzLnNoUGVyaW1ldHJTaG90R29hbHMgfHwgMCkgKyAodGhpcy5zaFBvc3RTaG90R29hbHMgfHwgMCkgKyAodGhpcy5zaEZhc3RTaG90R29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgdG90YWxFdkdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmV2R29hbHMgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrR29hbHMgfHwgMCkgKyAodGhpcy5ldkNvcm5lckdvYWxzIHx8IDApICtcbiAgICAgICh0aGlzLmV2Q291bnRlckF0dGFja0dvYWxzIHx8IDApICsgKHRoaXMuZXZNYW5ldXZlckdvYWxzIHx8IDApICsgKHRoaXMuZXZDZW50ZXJGb3J3YXJkR29hbHMgfHwgMCkgK1xuICAgICAgKHRoaXMuZXZQZXJpbWV0clNob3RHb2FscyB8fCAwKSArICh0aGlzLmV2UG9zdFNob3RHb2FscyB8fCAwKSArICh0aGlzLmV2RmFzdFNob3RHb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCB0b3RhbFBwR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBHb2FscyB8fCAwKSArICh0aGlzLnBwRnJlZUtpY2tHb2FscyB8fCAwKSArICh0aGlzLnBwQ29ybmVyR29hbHMgfHwgMCkgK1xuICAgICAgKHRoaXMucHBDb3VudGVyQXR0YWNrR29hbHMgfHwgMCkgKyAodGhpcy5wcE1hbmV1dmVyR29hbHMgfHwgMCkgKyAodGhpcy5wcENlbnRlckZvcndhcmRHb2FscyB8fCAwKSArXG4gICAgICAodGhpcy5wcFBlcmltZXRyU2hvdEdvYWxzIHx8IDApICsgKHRoaXMucHBQb3N0U2hvdEdvYWxzIHx8IDApICsgKHRoaXMucHBGYXN0U2hvdEdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMudG90YWxTaEdvYWxzICsgdGhpcy50b3RhbEV2R29hbHMgKyB0aGlzLnRvdGFsUHBHb2FscztcbiAgfVxuXG4gIGdldCB0b3RhbEdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ29hbHMgKyAodGhpcy5zaG9vdG91dEdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHNob290b3V0U2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hvb3RvdXRHb2FscyB8fCAwKSArICh0aGlzLnNob290b3V0QXR0ZW1wdHMgfHwgMCk7XG4gIH1cblxuICBnZXQgaW5HYW1lU2hvdE1pc3NlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5ldlNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5zaFNob3RNaXNzZXMgfHwgMCkgK1xuICAgICAgdGhpcy5jb3VudGVyQXR0YWNrU2hvdE1pc3NlcyArIHRoaXMubWFuZXV2ZXJTaG90TWlzc2VzICsgdGhpcy5jZW50ZXJGb3J3YXJkU2hvdE1pc3NlcyArXG4gICAgICB0aGlzLnBlcmltZXRyU2hvdE1pc3NlcyArIHRoaXMucG9zdFNob3RNaXNzZXMgKyB0aGlzLmZhc3RTaG90TWlzc2VzO1xuICB9XG5cbiAgZ2V0IHNob3RNaXNzZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBGcmVlS2lja01pc3NlcyB8fCAwKSArICh0aGlzLmV2RnJlZUtpY2tNaXNzZXMgfHwgMCkgKyAodGhpcy5zaEZyZWVLaWNrTWlzc2VzIHx8IDApICtcbiAgICAgICh0aGlzLnBwQ29ybmVyTWlzc2VzIHx8IDApICsgKHRoaXMuZXZDb3JuZXJNaXNzZXMgfHwgMCkgKyAodGhpcy5zaENvcm5lck1pc3NlcyB8fCAwKSArXG4gICAgICB0aGlzLmluR2FtZVNob3RNaXNzZXM7XG4gIH1cblxuICBnZXQgdG90YWxQcFNob3RNaXNzZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBTaG90TWlzc2VzIHx8IDApICsgKHRoaXMucHBGcmVlS2lja01pc3NlcyB8fCAwKSArICh0aGlzLnBwQ29ybmVyTWlzc2VzIHx8IDApICtcbiAgICAgICh0aGlzLnBwQ291bnRlckF0dGFja01pc3NlcyB8fCAwKSArICh0aGlzLnBwTWFuZXV2ZXJNaXNzZXMgfHwgMCkgKyAodGhpcy5wcENlbnRlckZvcndhcmRNaXNzZXMgfHwgMCkgK1xuICAgICAgKHRoaXMucHBQZXJpbWV0clNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5wcFBvc3RTaG90TWlzc2VzIHx8IDApICsgKHRoaXMucHBGYXN0U2hvdE1pc3NlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBzaG90c09uR29hbCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFNob3RzT25Hb2FsIHx8IDApICsgKHRoaXMuZXZTaG90c09uR29hbCB8fCAwKSArICh0aGlzLnNoU2hvdHNPbkdvYWwgfHwgMCkgK1xuICAgICAgKHRoaXMucHBGcmVlS2lja09uR29hbHMgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrT25Hb2FscyB8fCAwKSArICh0aGlzLnNoRnJlZUtpY2tPbkdvYWxzIHx8IDApICtcbiAgICAgICh0aGlzLnBwQ29ybmVyT25Hb2FscyB8fCAwKSArICh0aGlzLmV2Q29ybmVyT25Hb2FscyB8fCAwKSArICh0aGlzLnNoQ29ybmVyT25Hb2FscyB8fCAwKSArXG4gICAgICB0aGlzLmNvdW50ZXJBdHRhY2tTaG90T25Hb2FscyArIHRoaXMubWFuZXV2ZXJTaG90T25Hb2FscyArIHRoaXMuY2VudGVyRm9yd2FyZFNob3RPbkdvYWxzICtcbiAgICAgIHRoaXMucGVyaW1ldHJTaG90T25Hb2FscyArIHRoaXMucG9zdFNob3RPbkdvYWxzICsgdGhpcy5mYXN0U2hvdE9uR29hbHMgKyAodGhpcy5zaG9vdG91dEdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHRvdGFsUHBTaG90c09uR29hbCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFNob3RzT25Hb2FsIHx8IDApICsgKHRoaXMucHBGcmVlS2lja09uR29hbHMgfHwgMCkgKyAodGhpcy5wcENvcm5lck9uR29hbHMgfHwgMCkgK1xuICAgICAgKHRoaXMucHBDb3VudGVyQXR0YWNrT25Hb2FscyB8fCAwKSArICh0aGlzLnBwTWFuZXV2ZXJPbkdvYWxzIHx8IDApICsgKHRoaXMucHBDZW50ZXJGb3J3YXJkT25Hb2FscyB8fCAwKSArXG4gICAgICAodGhpcy5wcFBlcmltZXRyU2hvdE9uR29hbHMgfHwgMCkgKyAodGhpcy5wcFBvc3RTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLnBwRmFzdFNob3RPbkdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGluR2FtZVNob3RzT25Hb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFNob3RzT25Hb2FsIHx8IDApICsgKHRoaXMuZXZTaG90c09uR29hbCB8fCAwKSArICh0aGlzLnNoU2hvdHNPbkdvYWwgfHwgMCkgK1xuICAgICAgdGhpcy5jb3VudGVyQXR0YWNrU2hvdE9uR29hbHMgKyB0aGlzLm1hbmV1dmVyU2hvdE9uR29hbHMgKyB0aGlzLmNlbnRlckZvcndhcmRTaG90T25Hb2FscyArXG4gICAgICB0aGlzLnBlcmltZXRyU2hvdE9uR29hbHMgKyB0aGlzLnBvc3RTaG90T25Hb2FscyArIHRoaXMuZmFzdFNob3RPbkdvYWxzO1xuICB9XG5cbiAgZ2V0IHNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucHBTaG90cyArIHRoaXMuZXZTaG90cyArIHRoaXMuc2hTaG90cyArIHRoaXMuc2hvb3RvdXRTaG90cztcbiAgfVxuXG5cbiAgZ2V0IHRvdGFsU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zaG90cztcbiAgfVxuXG4gIGdldCBmYWNlT2ZmcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5mYWNlT2ZmV2lucyB8fCAwKSArICh0aGlzLmZhY2VPZmZMb3NzZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgZnJlZUtpY2tTaG90TWlzc2VzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwRnJlZUtpY2tNaXNzZXMgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrTWlzc2VzIHx8IDApICsgKHRoaXMuc2hGcmVlS2lja01pc3NlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBmcmVlS2lja1Nob3RzQmxvY2tlZCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEZyZWVLaWNrU2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuZXZGcmVlS2lja1Nob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLnNoRnJlZUtpY2tTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgZnJlZUtpY2tPbkdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwRnJlZUtpY2tPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZGcmVlS2lja09uR29hbHMgfHwgMCkgKyAodGhpcy5zaEZyZWVLaWNrT25Hb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCB0b3RhbEZyZWVLaWNrR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBGcmVlS2lja0dvYWxzIHx8IDApICsgKHRoaXMuc2hGcmVlS2lja0dvYWxzIHx8IDApICsgKHRoaXMuZXZGcmVlS2lja0dvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHRvdGFsRnJlZUtpY2tzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmZyZWVLaWNrU2VsZnMgfHwgMCkgKyAodGhpcy5mcmVlS2lja1Bhc3NlcyB8fCAwKSArXG4gICAgICB0aGlzLmZyZWVLaWNrU2hvdE1pc3NlcyArIHRoaXMuZnJlZUtpY2tPbkdvYWxzICsgdGhpcy50b3RhbEZyZWVLaWNrR29hbHMgKyB0aGlzLmZyZWVLaWNrU2hvdHNCbG9ja2VkO1xuICB9XG5cbiAgZ2V0IGZyZWVLaWNrR29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsRnJlZUtpY2tHb2FscyB8fCAhdGhpcy50b3RhbEZyZWVLaWNrcykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnRvdGFsRnJlZUtpY2tHb2FscyAvIHRoaXMudG90YWxGcmVlS2lja3MpIC8gMTA7XG4gIH1cblxuICBnZXQgdG90YWxDb3JuZXJHb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENvcm5lckdvYWxzIHx8IDApICsgKHRoaXMuc2hDb3JuZXJHb2FscyB8fCAwKSArICh0aGlzLmV2Q29ybmVyR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgY29ybmVyU2hvdE1pc3NlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENvcm5lck1pc3NlcyB8fCAwKSArICh0aGlzLnNoQ29ybmVyTWlzc2VzIHx8IDApICsgKHRoaXMuZXZDb3JuZXJNaXNzZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgY29ybmVyT25Hb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENvcm5lck9uR29hbHMgfHwgMCkgKyAodGhpcy5zaENvcm5lck9uR29hbHMgfHwgMCkgKyAodGhpcy5ldkNvcm5lck9uR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgY29ybmVyU2hvdHNCbG9ja2VkKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ29ybmVyU2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuc2hDb3JuZXJTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5ldkNvcm5lclNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCB0b3RhbENvcm5lcnMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuY29ybmVyU2VsZnMgfHwgMCkgKyAodGhpcy5jb3JuZXJQYXNzZXMgfHwgMCkgKyB0aGlzLmNvcm5lclNob3RzQmxvY2tlZCArXG4gICAgICB0aGlzLmNvcm5lck9uR29hbHMgKyB0aGlzLmNvcm5lclNob3RNaXNzZXMgKyB0aGlzLnRvdGFsQ29ybmVyR29hbHM7XG4gIH1cblxuICBnZXQgc2hvdHNCbG9ja2VkKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwU2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuZXZTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5zaFNob3RzQmxvY2tlZCB8fCAwKSArXG4gICAgICB0aGlzLmNvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQgKyB0aGlzLm1hbmV1dmVyU2hvdHNCbG9ja2VkICsgdGhpcy5jZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkICtcbiAgICAgIHRoaXMuZnJlZUtpY2tTaG90c0Jsb2NrZWQgKyB0aGlzLmNvcm5lclNob3RzQmxvY2tlZCArXG4gICAgICB0aGlzLnBlcmltZXRyU2hvdHNCbG9ja2VkICsgdGhpcy5wb3N0U2hvdHNCbG9ja2VkICsgdGhpcy5mYXN0U2hvdHNCbG9ja2VkO1xuICB9XG5cbiAgZ2V0IHRvdGFsRm91bHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuZm91bHMgfHwgMCkgKyAodGhpcy5wZXJzb25hbEZvdWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHRvdGFsUGVuYWx0aWVzKCk6IG51bWJlciB7XG4gICAgICByZXR1cm4gKHRoaXMubWlub3JQZW5hbHRpZXMgfHwgMCkgKyAodGhpcy5tYWpvclBlbmFsdGllcyB8fCAwKSArICh0aGlzLm1hdGNoUGVuYWx0aWVzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBvc2l0aW9uQXR0YWNrR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hHb2FscyB8fCAwKSArICh0aGlzLmV2R29hbHMgfHwgMCkgKyAodGhpcy5wcEdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBvc2l0aW9uQXR0YWNrU2hvdHNPbkdvYWwoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBTaG90c09uR29hbCB8fCAwKSArICh0aGlzLmV2U2hvdHNPbkdvYWwgfHwgMCkgKyAodGhpcy5zaFNob3RzT25Hb2FsIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBvc2l0aW9uQXR0YWNrU2hvdHNNaXNzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwU2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLmV2U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnNoU2hvdE1pc3NlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwb3NpdGlvbkF0dGFja1Nob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucG9zaXRpb25BdHRhY2tTaG90c09uR29hbCArIHRoaXMucG9zaXRpb25BdHRhY2tTaG90c01pc3M7XG4gIH1cblxuICBnZXQgcG9zaXRpb25BdHRhY2tHb2Fsc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMucG9zaXRpb25BdHRhY2tHb2FscyB8fCAhdGhpcy5wb3NpdGlvbkF0dGFja1Nob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMucG9zaXRpb25BdHRhY2tHb2FscyAvIHRoaXMucG9zaXRpb25BdHRhY2tTaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCB0b3RhbEluR2FtZUdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMudG90YWxDZW50ZXJGb3J3YXJkR29hbHMgKyB0aGlzLnRvdGFsTWFuZXV2ZXJHb2FscyArIHRoaXMudG90YWxDb3VudGVyQXR0YWNrR29hbHMgKyB0aGlzLnBvc2l0aW9uQXR0YWNrR29hbHMgK1xuICAgICAgdGhpcy50b3RhbFBlcmltZXRyU2hvdEdvYWxzICsgdGhpcy50b3RhbFBvc3RTaG90R29hbHMgKyB0aGlzLnRvdGFsRmFzdFNob3RHb2FscztcbiAgfVxuXG4gIGdldCBwcEdvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbFBwR29hbHMgfHwgIXRoaXMucHBTaG90cykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnRvdGFsUHBHb2FscyAvIHRoaXMucHBTaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCBldkdvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbEV2R29hbHMgfHwgIXRoaXMuZXZTaG90cykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnRvdGFsRXZHb2FscyAvIHRoaXMuZXZTaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCBzaEdvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbFNoR29hbHMgfHwgIXRoaXMuc2hTaG90cykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnRvdGFsU2hHb2FscyAvIHRoaXMuc2hTaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCBzaG90c09uR29hbFBlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMuc2hvdHNPbkdvYWwgfHwgIXRoaXMuc2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5zaG90c09uR29hbCAvIHRoaXMuc2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgZ29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLmdvYWxzIHx8ICF0aGlzLnNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMuZ29hbHMgLyB0aGlzLnNob3RzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IHRvdGFsR29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsR29hbHMgfHwgIXRoaXMudG90YWxTaG90cykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnRvdGFsR29hbHMgLyB0aGlzLnRvdGFsU2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgZmFjZU9mZlBlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMuZmFjZU9mZldpbnMgfHwgIXRoaXMuZmFjZU9mZnMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5mYWNlT2ZmV2lucyAvIHRoaXMuZmFjZU9mZnMpIC8gMTA7XG4gIH1cblxuICBnZXQgc2hvb3RvdXRHb2Fsc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMuc2hvb3RvdXRHb2FscyB8fCAhdGhpcy5zaG9vdG91dFNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMuc2hvb3RvdXRHb2FscyAvIHRoaXMuc2hvb3RvdXRTaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCBnb2FscGFzcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy50b3RhbEdvYWxzIHx8IDApICsgKHRoaXMuYXNzaXN0cyB8fCAwKTtcbiAgfVxuXG4gIC8qZ29hbGllIHN0YXQgKi9cbiAgZ2V0IHBvc2l0aW9uQXR0YWNrU2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBTYXZlcyB8fCAwKSArICh0aGlzLnNoU2F2ZXMgfHwgMCkgKyAodGhpcy5ldlNhdmVzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBvc2l0aW9uQXR0YWNrU2hvdHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucG9zaXRpb25BdHRhY2tTYXZlcyArICh0aGlzLmdvYWxzQWdhaW5zdCB8fCAwKTtcbiAgfVxuXG4gIGdldCBwb3NpdGlvbkF0dGFja1NhdmVzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5wb3NpdGlvbkF0dGFja1NhdmVzIHx8ICF0aGlzLnBvc2l0aW9uQXR0YWNrU2hvdHNBZ2FpbnN0KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMucG9zaXRpb25BdHRhY2tTYXZlcyAvIHRoaXMucG9zaXRpb25BdHRhY2tTaG90c0FnYWluc3QpIC8gMTA7XG4gIH1cblxuICBnZXQgY291bnRlckF0dGFja1NhdmVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ291bnRlckF0dGFja1NhdmVzIHx8IDApICsgKHRoaXMuc2hDb3VudGVyQXR0YWNrU2F2ZXMgfHwgMCkgKyAodGhpcy5ldkNvdW50ZXJBdHRhY2tTYXZlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBjb3VudGVyQXR0YWNrU2hvdHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY291bnRlckF0dGFja1NhdmVzICsgKHRoaXMuY291bnRlckF0dGFja0dvYWxzQWdhaW5zdCB8fCAwKTtcbiAgfVxuXG4gIGdldCBjb3VudGVyQXR0YWNrU2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLmNvdW50ZXJBdHRhY2tTYXZlcyB8fCAhdGhpcy5jb3VudGVyQXR0YWNrU2hvdHNBZ2FpbnN0KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMuY291bnRlckF0dGFja1NhdmVzIC8gdGhpcy5jb3VudGVyQXR0YWNrU2hvdHNBZ2FpbnN0KSAvIDEwO1xuICB9XG5cblxuICBnZXQgY2VudGVyRm9yd2FyZFNhdmVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ2VudGVyRm9yd2FyZFNhdmVzIHx8IDApICsgKHRoaXMuc2hDZW50ZXJGb3J3YXJkU2F2ZXMgfHwgMCkgKyAodGhpcy5ldkNlbnRlckZvcndhcmRTYXZlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBjZW50ZXJGb3J3YXJkU2hvdHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY2VudGVyRm9yd2FyZFNhdmVzICsgKHRoaXMuY2VudGVyRm9yd2FyZEdvYWxzQWdhaW5zdCB8fCAwKTtcbiAgfVxuXG4gIGdldCBjZW50ZXJGb3J3YXJkU2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLmNlbnRlckZvcndhcmRTYXZlcyB8fCAhdGhpcy5jZW50ZXJGb3J3YXJkU2hvdHNBZ2FpbnN0KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMuY2VudGVyRm9yd2FyZFNhdmVzIC8gdGhpcy5jZW50ZXJGb3J3YXJkU2hvdHNBZ2FpbnN0KSAvIDEwO1xuICB9XG5cbiAgZ2V0IG1hbmV1dmVyU2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBNYW5ldXZlclNhdmVzIHx8IDApICsgKHRoaXMuc2hNYW5ldXZlclNhdmVzIHx8IDApICsgKHRoaXMuZXZNYW5ldXZlclNhdmVzIHx8IDApO1xuICB9XG5cbiAgZ2V0IG1hbmV1dmVyU2hvdHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMubWFuZXV2ZXJTYXZlcyArICh0aGlzLm1hbmV1dmVyR29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IG1hbmV1dmVyU2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLm1hbmV1dmVyU2F2ZXMgfHwgIXRoaXMubWFuZXV2ZXJTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5tYW5ldXZlclNhdmVzIC8gdGhpcy5tYW5ldXZlclNob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIGdldCBmcmVlS2lja1NhdmVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwRnJlZUtpY2tTYXZlcyB8fCAwKSArICh0aGlzLnNoRnJlZUtpY2tTYXZlcyB8fCAwKSArICh0aGlzLmV2RnJlZUtpY2tTYXZlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBmcmVlS2lja1Nob3RzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmZyZWVLaWNrU2F2ZXMgKyAodGhpcy5mcmVlS2lja0dvYWxzQWdhaW5zdCB8fCAwKTtcbiAgfVxuXG4gIGdldCBmcmVlS2lja1NhdmVzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5mcmVlS2lja1NhdmVzIHx8ICF0aGlzLmZyZWVLaWNrU2hvdHNBZ2FpbnN0KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMuZnJlZUtpY2tTYXZlcyAvIHRoaXMuZnJlZUtpY2tTaG90c0FnYWluc3QpIC8gMTA7XG4gIH1cblxuICBnZXQgY29ybmVyU2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDb3JuZXJTYXZlcyB8fCAwKSArICh0aGlzLnNoQ29ybmVyU2F2ZXMgfHwgMCkgKyAodGhpcy5ldkNvcm5lclNhdmVzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNvcm5lclNob3RzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNvcm5lclNhdmVzICsgKHRoaXMuY29ybmVyR29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IGNvcm5lclNhdmVzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5jb3JuZXJTYXZlcyB8fCAhdGhpcy5jb3JuZXJTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5jb3JuZXJTYXZlcyAvIHRoaXMuY29ybmVyU2hvdHNBZ2FpbnN0KSAvIDEwO1xuICB9XG5cbiAgZ2V0IHBlcmltZXRyU2hvdFNhdmVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwUGVyaW1ldHJTaG90U2F2ZXMgfHwgMCkgKyAodGhpcy5zaFBlcmltZXRyU2hvdFNhdmVzIHx8IDApICsgKHRoaXMuZXZQZXJpbWV0clNob3RTYXZlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwZXJpbWV0clNob3RzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnBlcmltZXRyU2hvdFNhdmVzICsgKHRoaXMucGVyaW1ldHJTaG90R29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IHBlcmltZXRyU2hvdFNhdmVzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5wZXJpbWV0clNob3RTYXZlcyB8fCAhdGhpcy5wZXJpbWV0clNob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnBlcmltZXRyU2hvdFNhdmVzIC8gdGhpcy5wZXJpbWV0clNob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIGdldCBwb3N0U2hvdFNhdmVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwUG9zdFNob3RTYXZlcyB8fCAwKSArICh0aGlzLnNoUG9zdFNob3RTYXZlcyB8fCAwKSArICh0aGlzLmV2UG9zdFNob3RTYXZlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwb3N0U2hvdHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucG9zdFNob3RTYXZlcyArICh0aGlzLnBvc3RTaG90R29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IHBvc3RTaG90U2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnBvc3RTaG90U2F2ZXMgfHwgIXRoaXMucG9zdFNob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnBvc3RTaG90U2F2ZXMgLyB0aGlzLnBvc3RTaG90c0FnYWluc3QpIC8gMTA7XG4gIH1cblxuICBnZXQgZmFzdFNob3RTYXZlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEZhc3RTaG90U2F2ZXMgfHwgMCkgKyAodGhpcy5zaEZhc3RTaG90U2F2ZXMgfHwgMCkgKyAodGhpcy5ldkZhc3RTaG90U2F2ZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgZmFzdFNob3RzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmZhc3RTaG90U2F2ZXMgKyAodGhpcy5mYXN0U2hvdEdvYWxzQWdhaW5zdCB8fCAwKTtcbiAgfVxuXG4gIGdldCBmYXN0U2hvdFNhdmVzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5mYXN0U2hvdFNhdmVzIHx8ICF0aGlzLmZhc3RTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5mYXN0U2hvdFNhdmVzIC8gdGhpcy5mYXN0U2hvdHNBZ2FpbnN0KSAvIDEwO1xuICB9XG5cblxuICBnZXQgaW5HYW1lU2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hTYXZlcyB8fCAwKSArICh0aGlzLmV2U2F2ZXMgfHwgMCkgKyAodGhpcy5wcFNhdmVzIHx8IDApICtcbiAgICAgIHRoaXMuY291bnRlckF0dGFja1NhdmVzICsgdGhpcy5tYW5ldXZlclNhdmVzICsgdGhpcy5jZW50ZXJGb3J3YXJkU2F2ZXMgK1xuICAgICAgdGhpcy5wZXJpbWV0clNob3RTYXZlcyArIHRoaXMucG9zdFNob3RTYXZlcyArIHRoaXMuZmFzdFNob3RTYXZlcztcbiAgfVxuXG4gIGdldCBzYXZlcygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmluR2FtZVNhdmVzICsgdGhpcy5mcmVlS2lja1NhdmVzICsgdGhpcy5jb3JuZXJTYXZlcztcbiAgfVxuXG4gIGdldCB0b3RhbFNhdmVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc2F2ZXMgKyAodGhpcy5zaG9vdG91dFNhdmVzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGluR2FtZUdvYWxzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5nb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5jb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMubWFuZXV2ZXJHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5jZW50ZXJGb3J3YXJkR29hbHNBZ2FpbnN0IHx8IDApICtcbiAgICAgICh0aGlzLnBlcmltZXRyU2hvdEdvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLnBvc3RTaG90R29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuZmFzdFNob3RHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgc2hvb3RvdXRTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hvb3RvdXRTYXZlcyB8fCAwKSArICh0aGlzLnNob290b3V0R29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IGdhbWVHb2Fsc0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pbkdhbWVHb2Fsc0FnYWluc3QgKyAodGhpcy5mcmVlS2lja0dvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLmNvcm5lckdvYWxzQWdhaW5zdCB8fCAwKTtcbiAgfVxuXG4gIGdldCB0b3RhbEdvYWxzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdhbWVHb2Fsc0FnYWluc3QgKyAodGhpcy5zaG9vdG91dEdvYWxzQWdhaW5zdCB8fCAwKTtcbiAgfVxuXG4gIGdldCBnYW1lU2hvdHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc2F2ZXMgKyB0aGlzLmdhbWVHb2Fsc0FnYWluc3Q7XG4gIH1cblxuICBnZXQgdG90YWxTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nYW1lU2hvdHNBZ2FpbnN0ICsgdGhpcy5zaG9vdG91dFNob3RzQWdhaW5zdDtcbiAgfVxuXG4gIGdldCBzaG9vdG91dFNhdmVzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5zaG9vdG91dFNhdmVzIHx8ICF0aGlzLnNob290b3V0U2hvdHNBZ2FpbnN0KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMuc2hvb3RvdXRTYXZlcyAvIHRoaXMuc2hvb3RvdXRTaG90c0FnYWluc3QpIC8gMTA7XG4gIH1cblxuICBnZXQgc2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnNhdmVzIHx8ICF0aGlzLmdhbWVTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5zYXZlcyAvIHRoaXMuZ2FtZVNob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIGdldCB0b3RhbFNhdmVzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbFNhdmVzIHx8ICF0aGlzLnRvdGFsU2hvdHNBZ2FpbnN0KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxTYXZlcyAvIHRoaXMudG90YWxTaG90c0FnYWluc3QpIC8gMTA7XG4gIH1cblxuICBnZXQgdG90YWxTaFNhdmVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnNoQ291bnRlckF0dGFja1NhdmVzIHx8IDApICsgKHRoaXMuc2hNYW5ldXZlclNhdmVzIHx8IDApICsgKHRoaXMuc2hDZW50ZXJGb3J3YXJkU2F2ZXMgfHwgMCkgK1xuICAgICAgKHRoaXMuc2hTYXZlcyB8fCAwKSArICh0aGlzLnNoRnJlZUtpY2tTYXZlcyB8fCAwKSArICh0aGlzLnNoQ29ybmVyU2F2ZXMgfHwgMCkgK1xuICAgICAgKHRoaXMuc2hQZXJpbWV0clNob3RTYXZlcykgKyAodGhpcy5zaFBvc3RTaG90U2F2ZXMpICsgKHRoaXMuc2hGYXN0U2hvdFNhdmVzKTtcbiAgfVxuXG4gIGdldCB0b3RhbFNoR29hbHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnNoR29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuc2hGcmVlS2lja0dvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLnNoQ29ybmVyR29hbHNBZ2FpbnN0IHx8IDApICtcbiAgICAgICh0aGlzLnNoQ291bnRlckF0dGFja0dvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLnNoTWFuZXV2ZXJHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5zaENlbnRlckZvcndhcmRHb2Fsc0FnYWluc3QgfHwgMCkgK1xuICAgICAgKHRoaXMuc2hQZXJpbWV0clNob3RHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5zaFBvc3RTaG90R29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuc2hGYXN0U2hvdEdvYWxzQWdhaW5zdCB8fCAwKTtcbiAgfVxuXG4gIGdldCB0b3RhbFNoU2hvdHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMudG90YWxTaFNhdmVzICsgdGhpcy50b3RhbFNoR29hbHNBZ2FpbnN0O1xuICB9XG5cbiAgZ2V0IHRvdGFsU2hTYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMudG90YWxTaFNhdmVzIHx8ICF0aGlzLnRvdGFsU2hTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbFNoU2F2ZXMgLyB0aGlzLnRvdGFsU2hTaG90c0FnYWluc3QpIC8gMTA7XG4gIH1cblxuICBnZXQgdG90YWxFdlNhdmVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmV2Q291bnRlckF0dGFja1NhdmVzIHx8IDApICsgKHRoaXMuZXZNYW5ldXZlclNhdmVzIHx8IDApICsgKHRoaXMuZXZDZW50ZXJGb3J3YXJkU2F2ZXMgfHwgMCkgK1xuICAgICAgKHRoaXMuZXZTYXZlcyB8fCAwKSArICh0aGlzLmV2RnJlZUtpY2tTYXZlcyB8fCAwKSArICh0aGlzLmV2Q29ybmVyU2F2ZXMgfHwgMCkgK1xuICAgICAgKHRoaXMuZXZQZXJpbWV0clNob3RTYXZlcykgKyAodGhpcy5ldlBvc3RTaG90U2F2ZXMpICsgKHRoaXMuZXZGYXN0U2hvdFNhdmVzKTtcbiAgfVxuXG4gIGdldCB0b3RhbEV2R29hbHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmV2R29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuZXZGcmVlS2lja0dvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLmV2Q29ybmVyR29hbHNBZ2FpbnN0IHx8IDApICtcbiAgICAgICh0aGlzLmV2Q291bnRlckF0dGFja0dvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLmV2TWFuZXV2ZXJHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5ldkNlbnRlckZvcndhcmRHb2Fsc0FnYWluc3QgfHwgMCkgK1xuICAgICAgKHRoaXMuZXZQZXJpbWV0clNob3RHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5ldlBvc3RTaG90R29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuZXZGYXN0U2hvdEdvYWxzQWdhaW5zdCB8fCAwKTtcbiAgfVxuXG4gIGdldCB0b3RhbEV2U2hvdHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMudG90YWxFdlNhdmVzICsgdGhpcy50b3RhbEV2R29hbHNBZ2FpbnN0O1xuICB9XG5cbiAgZ2V0IHRvdGFsRXZTYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMudG90YWxFdlNhdmVzIHx8ICF0aGlzLnRvdGFsRXZTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbEV2U2F2ZXMgLyB0aGlzLnRvdGFsRXZTaG90c0FnYWluc3QpIC8gMTA7XG4gIH1cblxuICBAVG9Gcm9udEhvb2tcbiAgc3RhdGljIHRvRnJvbnQoZGF0YTogYW55KTogYW55IHt9XG5cbiAgQFRvQmFja0hvb2tcbiAgc3RhdGljIHRvQmFjayhkYXRhOiBhbnkpOiBhbnkge31cbn1cbiJdfQ==
|
package/fesm2015/mtgame-core.js
CHANGED
|
@@ -10517,7 +10517,7 @@ let WaterpoloGameStatistic = class WaterpoloGameStatistic extends BaseModel {
|
|
|
10517
10517
|
(this.ppFreeKickOnGoals || 0) + (this.evFreeKickOnGoals || 0) + (this.shFreeKickOnGoals || 0) +
|
|
10518
10518
|
(this.ppCornerOnGoals || 0) + (this.evCornerOnGoals || 0) + (this.shCornerOnGoals || 0) +
|
|
10519
10519
|
this.counterAttackShotOnGoals + this.maneuverShotOnGoals + this.centerForwardShotOnGoals +
|
|
10520
|
-
this.perimetrShotOnGoals + this.postShotOnGoals + this.fastShotOnGoals;
|
|
10520
|
+
this.perimetrShotOnGoals + this.postShotOnGoals + this.fastShotOnGoals + (this.shootoutGoals || 0);
|
|
10521
10521
|
}
|
|
10522
10522
|
get totalPpShotsOnGoal() {
|
|
10523
10523
|
return (this.ppShotsOnGoal || 0) + (this.ppFreeKickOnGoals || 0) + (this.ppCornerOnGoals || 0) +
|
|
@@ -10530,10 +10530,10 @@ let WaterpoloGameStatistic = class WaterpoloGameStatistic extends BaseModel {
|
|
|
10530
10530
|
this.perimetrShotOnGoals + this.postShotOnGoals + this.fastShotOnGoals;
|
|
10531
10531
|
}
|
|
10532
10532
|
get shots() {
|
|
10533
|
-
return this.ppShots + this.evShots + this.shShots;
|
|
10533
|
+
return this.ppShots + this.evShots + this.shShots + this.shootoutShots;
|
|
10534
10534
|
}
|
|
10535
10535
|
get totalShots() {
|
|
10536
|
-
return this.shots
|
|
10536
|
+
return this.shots;
|
|
10537
10537
|
}
|
|
10538
10538
|
get faceOffs() {
|
|
10539
10539
|
return (this.faceOffWins || 0) + (this.faceOffLosses || 0);
|