@mtgame/core 1.0.45 → 1.0.47

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,7 +276,7 @@ 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
282
  return this.shots + this.shootoutShots;
@@ -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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aUI7WUFDckMscUJBQXFCLEVBQUUsbUJBQW1CO1lBQzFDLG1CQUFtQixFQUFFLGtCQUFrQjtZQUN2QyxxQkFBcUIsRUFBRSxvQkFBb0I7WUFDM0Msa0JBQWtCLEVBQUUsaUJBQWlCO1lBQ3JDLHFCQUFxQixFQUFFLG1CQUFtQjtZQUMxQyxtQkFBbUIsRUFBRSxrQkFBa0I7WUFDdkMscUJBQXFCLEVBQUUsb0JBQW9CO1lBQzNDLGtCQUFrQixFQUFFLGlCQUFpQjtZQUNyQyxxQkFBcUIsRUFBRSxtQkFBbUI7WUFDMUMsbUJBQW1CLEVBQUUsa0JBQWtCO1lBQ3ZDLHFCQUFxQixFQUFFLG9CQUFvQjtZQUMzQyxrQkFBa0IsRUFBRSxpQkFBaUI7WUFDckMsa0JBQWtCLEVBQUUsaUJBQWlCO1lBQ3JDLGtCQUFrQixFQUFFLGlCQUFpQjtZQUNyQywwQkFBMEIsRUFBRSx3QkFBd0I7WUFDcEQsMEJBQTBCLEVBQUUsd0JBQXdCO1lBQ3BELDBCQUEwQixFQUFFLHdCQUF3QjtZQUNwRCx1QkFBdUIsRUFBRSxzQkFBc0I7U0FDaEQ7UUFDRCxRQUFRLEVBQUU7WUFDUixTQUFTLEVBQUUsYUFBYTtTQUN6QjtLQUNGLENBQUM7R0FDVyxzQkFBc0IsQ0EwOUJsQztTQTE5Qlksc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kZWxJbnN0YW5jZSwgQmFzZU1vZGVsLCBUb0Zyb250SG9vaywgVG9CYWNrSG9vaywgRGF0ZVRpbWVGaWVsZCB9IGZyb20gJy4vdXRpbCc7XG5pbXBvcnQgeyBHYW1lU3RhdGlzdGljQmFzZSB9IGZyb20gJy4vZ2FtZS1zdGF0aXN0aWMtYmFzZSc7XG5cbkBNb2RlbEluc3RhbmNlKHtcbiAgbWFwcGluZ0ZpZWxkczoge1xuICAgIGdhbWVfdXNlcl9pZDogJ2dhbWVVc2VySWQnLFxuICAgIHVwZGF0ZWRfYXQ6ICd1cGRhdGVkQXQnLFxuICAgIHBvaW50czogJ3BvaW50cycsXG4gICAgcHBfc2hvdF9taXNzZXM6ICdwcFNob3RNaXNzZXMnLFxuICAgIHBwX3Nob3RzX29uX2dvYWw6ICdwcFNob3RzT25Hb2FsJyxcbiAgICBwcF9zaG90c19ibG9ja2VkOiAncHBTaG90c0Jsb2NrZWQnLFxuICAgIGV2X3Nob3RfbWlzc2VzOiAnZXZTaG90TWlzc2VzJyxcbiAgICBldl9zaG90c19vbl9nb2FsOiAnZXZTaG90c09uR29hbCcsXG4gICAgZXZfc2hvdHNfYmxvY2tlZDogJ2V2U2hvdHNCbG9ja2VkJyxcbiAgICBzaF9zaG90X21pc3NlczogJ3NoU2hvdE1pc3NlcycsXG4gICAgc2hfc2hvdHNfb25fZ29hbDogJ3NoU2hvdHNPbkdvYWwnLFxuICAgIHNoX3Nob3RzX2Jsb2NrZWQ6ICdzaFNob3RzQmxvY2tlZCcsXG4gICAgcHBfdG90YWxfc2hvdHNfb25fZ29hbDogJ3BwVG90YWxTaG90c09uR29hbCcsXG4gICAgZXZfdG90YWxfc2hvdHNfb25fZ29hbDogJ2V2VG90YWxTaG90c09uR29hbCcsXG4gICAgc2hfdG90YWxfc2hvdHNfb25fZ29hbDogJ3NoVG90YWxTaG90c09uR29hbCcsXG4gICAgcHBfZ29hbHM6ICdwcEdvYWxzJyxcbiAgICBldl9nb2FsczogJ2V2R29hbHMnLFxuICAgIHNoX2dvYWxzOiAnc2hHb2FscycsXG4gICAgcHBfY291bnRlcmF0dGFja19nb2FsczogJ3BwQ291bnRlckF0dGFja0dvYWxzJyxcbiAgICBwcF9jb3VudGVyYXR0YWNrX29uX2dvYWxzOiAncHBDb3VudGVyQXR0YWNrT25Hb2FscycsXG4gICAgcHBfY291bnRlcmF0dGFja19taXNzZXM6ICdwcENvdW50ZXJBdHRhY2tNaXNzZXMnLFxuICAgIHBwX2NvdW50ZXJhdHRhY2tfc2hvdHNfYmxvY2tlZDogJ3BwQ291bnRlckF0dGFja1Nob3RzQmxvY2tlZCcsXG4gICAgZXZfY291bnRlcmF0dGFja19nb2FsczogJ2V2Q291bnRlckF0dGFja0dvYWxzJyxcbiAgICBldl9jb3VudGVyYXR0YWNrX29uX2dvYWxzOiAnZXZDb3VudGVyQXR0YWNrT25Hb2FscycsXG4gICAgZXZfY291bnRlcmF0dGFja19taXNzZXM6ICdldkNvdW50ZXJBdHRhY2tNaXNzZXMnLFxuICAgIGV2X2NvdW50ZXJhdHRhY2tfc2hvdHNfYmxvY2tlZDogJ2V2Q291bnRlckF0dGFja1Nob3RzQmxvY2tlZCcsXG4gICAgc2hfY291bnRlcmF0dGFja19nb2FsczogJ3NoQ291bnRlckF0dGFja0dvYWxzJyxcbiAgICBzaF9jb3VudGVyYXR0YWNrX29uX2dvYWxzOiAnc2hDb3VudGVyQXR0YWNrT25Hb2FscycsXG4gICAgc2hfY291bnRlcmF0dGFja19taXNzZXM6ICdzaENvdW50ZXJBdHRhY2tNaXNzZXMnLFxuICAgIHNoX2NvdW50ZXJhdHRhY2tfc2hvdHNfYmxvY2tlZDogJ3NoQ291bnRlckF0dGFja1Nob3RzQmxvY2tlZCcsXG4gICAgcHBfbWFuZXV2ZXJfZ29hbHM6ICdwcE1hbmV1dmVyR29hbHMnLFxuICAgIHBwX21hbmV1dmVyX29uX2dvYWxzOiAncHBNYW5ldXZlck9uR29hbHMnLFxuICAgIHBwX21hbmV1dmVyX21pc3NlczogJ3BwTWFuZXV2ZXJNaXNzZXMnLFxuICAgIHBwX21hbmV1dmVyX3Nob3RzX2Jsb2NrZWQ6ICdwcE1hbmV1dmVyU2hvdHNCbG9ja2VkJyxcbiAgICBldl9tYW5ldXZlcl9nb2FsczogJ2V2TWFuZXV2ZXJHb2FscycsXG4gICAgZXZfbWFuZXV2ZXJfb25fZ29hbHM6ICdldk1hbmV1dmVyT25Hb2FscycsXG4gICAgZXZfbWFuZXV2ZXJfbWlzc2VzOiAnZXZNYW5ldXZlck1pc3NlcycsXG4gICAgZXZfbWFuZXV2ZXJfc2hvdHNfYmxvY2tlZDogJ2V2TWFuZXV2ZXJTaG90c0Jsb2NrZWQnLFxuICAgIHNoX21hbmV1dmVyX2dvYWxzOiAnc2hNYW5ldXZlckdvYWxzJyxcbiAgICBzaF9tYW5ldXZlcl9vbl9nb2FsczogJ3NoTWFuZXV2ZXJPbkdvYWxzJyxcbiAgICBzaF9tYW5ldXZlcl9taXNzZXM6ICdzaE1hbmV1dmVyTWlzc2VzJyxcbiAgICBzaF9tYW5ldXZlcl9zaG90c19ibG9ja2VkOiAnc2hNYW5ldXZlclNob3RzQmxvY2tlZCcsXG4gICAgcHBfY2VudGVyX2ZvcndhcmRfZ29hbHM6ICdwcENlbnRlckZvcndhcmRHb2FscycsXG4gICAgcHBfY2VudGVyX2ZvcndhcmRfb25fZ29hbHM6ICdwcENlbnRlckZvcndhcmRPbkdvYWxzJyxcbiAgICBwcF9jZW50ZXJfZm9yd2FyZF9taXNzZXM6ICdwcENlbnRlckZvcndhcmRNaXNzZXMnLFxuICAgIHBwX2NlbnRlcl9mb3J3YXJkX3Nob3RzX2Jsb2NrZWQ6ICdwcENlbnRlckZvcndhcmRTaG90c0Jsb2NrZWQnLFxuICAgIGV2X2NlbnRlcl9mb3J3YXJkX2dvYWxzOiAnZXZDZW50ZXJGb3J3YXJkR29hbHMnLFxuICAgIGV2X2NlbnRlcl9mb3J3YXJkX29uX2dvYWxzOiAnZXZDZW50ZXJGb3J3YXJkT25Hb2FscycsXG4gICAgZXZfY2VudGVyX2ZvcndhcmRfbWlzc2VzOiAnZXZDZW50ZXJGb3J3YXJkTWlzc2VzJyxcbiAgICBldl9jZW50ZXJfZm9yd2FyZF9zaG90c19ibG9ja2VkOiAnZXZDZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkJyxcbiAgICBzaF9jZW50ZXJfZm9yd2FyZF9nb2FsczogJ3NoQ2VudGVyRm9yd2FyZEdvYWxzJyxcbiAgICBzaF9jZW50ZXJfZm9yd2FyZF9vbl9nb2FsczogJ3NoQ2VudGVyRm9yd2FyZE9uR29hbHMnLFxuICAgIHNoX2NlbnRlcl9mb3J3YXJkX21pc3NlczogJ3NoQ2VudGVyRm9yd2FyZE1pc3NlcycsXG4gICAgc2hfY2VudGVyX2ZvcndhcmRfc2hvdHNfYmxvY2tlZDogJ3NoQ2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZCcsXG4gICAgcHBfYXNzaXN0czogJ3BwQXNzaXN0cycsXG4gICAgZXZfYXNzaXN0czogJ2V2QXNzaXN0cycsXG4gICAgc2hfYXNzaXN0czogJ3NoQXNzaXN0cycsXG4gICAgc2hvb3RvdXRfYXR0ZW1wdHM6ICdzaG9vdG91dEF0dGVtcHRzJyxcbiAgICBzaG9vdG91dF9nb2FsczogJ3Nob290b3V0R29hbHMnLFxuICAgIGFmdGVyX2dhbWVfc2hvb3RvdXRfYXR0ZW1wdHM6ICdhZnRlckdhbWVTaG9vdG91dEF0dGVtcHRzJyxcbiAgICBhZnRlcl9nYW1lX3Nob290b3V0X2dvYWxzOiAnYWZ0ZXJHYW1lU2hvb3RvdXRHb2FscycsXG4gICAgYmxvY2tfc2hvdHM6ICdibG9ja1Nob3RzJyxcbiAgICBmYWNlX29mZl9sb3NzZXM6ICdmYWNlT2ZmTG9zc2VzJyxcbiAgICBmYWNlX29mZl93aW5zOiAnZmFjZU9mZldpbnMnLFxuICAgIHBwX3NhdmVzOiAncHBTYXZlcycsXG4gICAgc2hfc2F2ZXM6ICdzaFNhdmVzJyxcbiAgICBldl9zYXZlczogJ2V2U2F2ZXMnLFxuICAgIHBwX2NvdW50ZXJhdHRhY2tfc2F2ZXM6ICdwcENvdW50ZXJBdHRhY2tTYXZlcycsXG4gICAgc2hfY291bnRlcmF0dGFja19zYXZlczogJ3NoQ291bnRlckF0dGFja1NhdmVzJyxcbiAgICBldl9jb3VudGVyYXR0YWNrX3NhdmVzOiAnZXZDb3VudGVyQXR0YWNrU2F2ZXMnLFxuICAgIHBwX21hbmV1dmVyX3NhdmVzOiAncHBNYW5ldXZlclNhdmVzJyxcbiAgICBzaF9tYW5ldXZlcl9zYXZlczogJ3NoTWFuZXV2ZXJTYXZlcycsXG4gICAgZXZfbWFuZXV2ZXJfc2F2ZXM6ICdldk1hbmV1dmVyU2F2ZXMnLFxuICAgIHBwX2NlbnRlcl9mb3J3YXJkX3NhdmVzOiAncHBDZW50ZXJGb3J3YXJkU2F2ZXMnLFxuICAgIHNoX2NlbnRlcl9mb3J3YXJkX3NhdmVzOiAnc2hDZW50ZXJGb3J3YXJkU2F2ZXMnLFxuICAgIGV2X2NlbnRlcl9mb3J3YXJkX3NhdmVzOiAnZXZDZW50ZXJGb3J3YXJkU2F2ZXMnLFxuICAgIHBwX2ZyZWVfa2lja19zYXZlczogJ3BwRnJlZUtpY2tTYXZlcycsXG4gICAgc2hfZnJlZV9raWNrX3NhdmVzOiAnc2hGcmVlS2lja1NhdmVzJyxcbiAgICBldl9mcmVlX2tpY2tfc2F2ZXM6ICdldkZyZWVLaWNrU2F2ZXMnLFxuICAgIHBwX2Nvcm5lcl9zYXZlczogJ3BwQ29ybmVyU2F2ZXMnLFxuICAgIHNoX2Nvcm5lcl9zYXZlczogJ3NoQ29ybmVyU2F2ZXMnLFxuICAgIGV2X2Nvcm5lcl9zYXZlczogJ2V2Q29ybmVyU2F2ZXMnLFxuICAgIHBwX3RvdGFsX2dhbWVfc2F2ZXM6ICdwcFRvdGFsR2FtZVNhdmVzJyxcbiAgICBzaF90b3RhbF9nYW1lX3NhdmVzOiAnc2hUb3RhbEdhbWVTYXZlcycsXG4gICAgZXZfdG90YWxfZ2FtZV9zYXZlczogJ2V2VG90YWxHYW1lU2F2ZXMnLFxuICAgIHNob290b3V0X3NhdmVzOiAnc2hvb3RvdXRTYXZlcycsXG4gICAgYWZ0ZXJfZ2FtZV9zaG9vdG91dF9zYXZlczogJ2FmdGVyR2FtZVNob290b3V0U2F2ZXMnLFxuICAgIHBwX2dvYWxzX2FnYWluc3Q6ICdwcEdvYWxzQWdhaW5zdCcsXG4gICAgc2hfZ29hbHNfYWdhaW5zdDogJ3NoR29hbHNBZ2FpbnN0JyxcbiAgICBldl9nb2Fsc19hZ2FpbnN0OiAnZXZHb2Fsc0FnYWluc3QnLFxuICAgIGdvYWxzX2FnYWluc3Q6ICdnb2Fsc0FnYWluc3QnLFxuICAgIHBwX2NvdW50ZXJhdHRhY2tfZ29hbHNfYWdhaW5zdDogJ3BwQ291bnRlckF0dGFja0dvYWxzQWdhaW5zdCcsXG4gICAgc2hfY291bnRlcmF0dGFja19nb2Fsc19hZ2FpbnN0OiAnc2hDb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0JyxcbiAgICBldl9jb3VudGVyYXR0YWNrX2dvYWxzX2FnYWluc3Q6ICdldkNvdW50ZXJBdHRhY2tHb2Fsc0FnYWluc3QnLFxuICAgIGNvdW50ZXJhdHRhY2tfZ29hbHNfYWdhaW5zdDogJ2NvdW50ZXJBdHRhY2tHb2Fsc0FnYWluc3QnLFxuICAgIHBwX21hbmV1dmVyX2dvYWxzX2FnYWluc3Q6ICdwcE1hbmV1dmVyR29hbHNBZ2FpbnN0JyxcbiAgICBzaF9tYW5ldXZlcl9nb2Fsc19hZ2FpbnN0OiAnc2hNYW5ldXZlckdvYWxzQWdhaW5zdCcsXG4gICAgZXZfbWFuZXV2ZXJfZ29hbHNfYWdhaW5zdDogJ2V2TWFuZXV2ZXJHb2Fsc0FnYWluc3QnLFxuICAgIG1hbmV1dmVyX2dvYWxzX2FnYWluc3Q6ICdtYW5ldXZlckdvYWxzQWdhaW5zdCcsXG4gICAgcHBfY2VudGVyX2ZvcndhcmRfZ29hbHNfYWdhaW5zdDogJ3BwQ2VudGVyRm9yd2FyZEdvYWxzQWdhaW5zdCcsXG4gICAgc2hfY2VudGVyX2ZvcndhcmRfZ29hbHNfYWdhaW5zdDogJ3NoQ2VudGVyRm9yd2FyZEdvYWxzQWdhaW5zdCcsXG4gICAgZXZfY2VudGVyX2ZvcndhcmRfZ29hbHNfYWdhaW5zdDogJ2V2Q2VudGVyRm9yd2FyZEdvYWxzQWdhaW5zdCcsXG4gICAgY2VudGVyX2ZvcndhcmRfZ29hbHNfYWdhaW5zdDogJ2NlbnRlckZvcndhcmRHb2Fsc0FnYWluc3QnLFxuICAgIHBwX2ZyZWVfa2lja19nb2Fsc19hZ2FpbnN0OiAncHBGcmVlS2lja0dvYWxzQWdhaW5zdCcsXG4gICAgc2hfZnJlZV9raWNrX2dvYWxzX2FnYWluc3Q6ICdzaEZyZWVLaWNrR29hbHNBZ2FpbnN0JyxcbiAgICBldl9mcmVlX2tpY2tfZ29hbHNfYWdhaW5zdDogJ2V2RnJlZUtpY2tHb2Fsc0FnYWluc3QnLFxuICAgIGZyZWVfa2lja19nb2Fsc19hZ2FpbnN0OiAnZnJlZUtpY2tHb2Fsc0FnYWluc3QnLFxuICAgIHBwX2Nvcm5lcl9nb2Fsc19hZ2FpbnN0OiAncHBDb3JuZXJHb2Fsc0FnYWluc3QnLFxuICAgIHNoX2Nvcm5lcl9nb2Fsc19hZ2FpbnN0OiAnc2hDb3JuZXJHb2Fsc0FnYWluc3QnLFxuICAgIGV2X2Nvcm5lcl9nb2Fsc19hZ2FpbnN0OiAnZXZDb3JuZXJHb2Fsc0FnYWluc3QnLFxuICAgIGNvcm5lcl9nb2Fsc19hZ2FpbnN0OiAnY29ybmVyR29hbHNBZ2FpbnN0JyxcbiAgICBzaG9vdG91dF9nb2Fsc19hZ2FpbnN0OiAnc2hvb3RvdXRHb2Fsc0FnYWluc3QnLFxuICAgIGFmdGVyX2dhbWVfc2hvb3RvdXRfZ29hbHNfYWdhaW5zdDogJ2FmdGVyR2FtZVNob290b3V0R29hbHNBZ2FpbnN0JyxcbiAgICBzYWZldHlfcmF0ZTogJ3NhZmV0eVJhdGUnLFxuICAgIHBlbmFsdHlfbWludXRlczogJ3BlbmFsdHlNaW51dGVzJyxcbiAgICBnYW1lX3RpbWU6ICdnYW1lVGltZScsXG4gICAgcGx1c19taW51czogJ3BsdXNNaW51cycsXG4gICAgZm91bHM6ICdmb3VscycsXG4gICAgbWlub3JfcGVuYWx0aWVzOiAnbWlub3JQZW5hbHRpZXMnLFxuICAgIG1ham9yX3BlbmFsdGllczogJ21ham9yUGVuYWx0aWVzJyxcbiAgICBtYXRjaF9wZW5hbHRpZXM6ICdtYXRjaFBlbmFsdGllcycsXG4gICAgcGVuYWx0eV9mb3VsczogJ3BlbmFsdHlGb3VscycsXG4gICAgdHVybm92ZXJzOiAndHVybm92ZXJzJyxcbiAgICBhdHRhY2tfZm91bHM6ICdhdHRhY2tGb3VscycsXG4gICAgcGVyc29uYWxfZm91bHM6ICdwZXJzb25hbEZvdWxzJyxcbiAgICBkcmF3bl9mb3VsczogJ2RyYXduRm91bHMnLFxuICAgIGRyYXduX3R1cm5vdmVyczogJ2RyYXduVHVybm92ZXJzJyxcbiAgICB5ZWxsb3dfY2FyZHM6ICd5ZWxsb3dDYXJkcycsXG4gICAgcmVkX2NhcmRzOiAncmVkQ2FyZHMnLFxuICAgIGxvc3NlczogJ2xvc3NlcycsXG4gICAgc3RlYWxzOiAnc3RlYWxzJyxcbiAgICBwcF9mcmVlX2tpY2tfZ29hbHM6ICdwcEZyZWVLaWNrR29hbHMnLFxuICAgIHBwX2ZyZWVfa2lja19vbl9nb2FsczogJ3BwRnJlZUtpY2tPbkdvYWxzJyxcbiAgICBwcF9mcmVlX2tpY2tfbWlzc2VzOiAncHBGcmVlS2lja01pc3NlcycsXG4gICAgcHBfZnJlZV9raWNrX3Nob3RzX2Jsb2NrZWQ6ICdwcEZyZWVLaWNrU2hvdHNCbG9ja2VkJyxcbiAgICBzaF9mcmVlX2tpY2tfZ29hbHM6ICdzaEZyZWVLaWNrR29hbHMnLFxuICAgIHNoX2ZyZWVfa2lja19vbl9nb2FsczogJ3NoRnJlZUtpY2tPbkdvYWxzJyxcbiAgICBzaF9mcmVlX2tpY2tfbWlzc2VzOiAnc2hGcmVlS2lja01pc3NlcycsXG4gICAgc2hfZnJlZV9raWNrX3Nob3RzX2Jsb2NrZWQ6ICdzaEZyZWVLaWNrU2hvdHNCbG9ja2VkJyxcbiAgICBldl9mcmVlX2tpY2tfZ29hbHM6ICdldkZyZWVLaWNrR29hbHMnLFxuICAgIGV2X2ZyZWVfa2lja19vbl9nb2FsczogJ2V2RnJlZUtpY2tPbkdvYWxzJyxcbiAgICBldl9mcmVlX2tpY2tfbWlzc2VzOiAnZXZGcmVlS2lja01pc3NlcycsXG4gICAgZXZfZnJlZV9raWNrX3Nob3RzX2Jsb2NrZWQ6ICdldkZyZWVLaWNrU2hvdHNCbG9ja2VkJyxcbiAgICBmcmVlX2tpY2tfcGFzc2VzOiAnZnJlZUtpY2tQYXNzZXMnLFxuICAgIGZyZWVfa2lja19zZWxmczogJ2ZyZWVLaWNrU2VsZnMnLFxuICAgIHBwX2Nvcm5lcl9nb2FsczogJ3BwQ29ybmVyR29hbHMnLFxuICAgIHBwX2Nvcm5lcl9vbl9nb2FsczogJ3BwQ29ybmVyT25Hb2FscycsXG4gICAgcHBfY29ybmVyX21pc3NlczogJ3BwQ29ybmVyTWlzc2VzJyxcbiAgICBwcF9jb3JuZXJfc2hvdHNfYmxvY2tlZDogJ3BwQ29ybmVyU2hvdHNCbG9ja2VkJyxcbiAgICBzaF9jb3JuZXJfZ29hbHM6ICdzaENvcm5lckdvYWxzJyxcbiAgICBzaF9jb3JuZXJfb25fZ29hbHM6ICdzaENvcm5lck9uR29hbHMnLFxuICAgIHNoX2Nvcm5lcl9taXNzZXM6ICdzaENvcm5lck1pc3NlcycsXG4gICAgc2hfY29ybmVyX3Nob3RzX2Jsb2NrZWQ6ICdzaENvcm5lclNob3RzQmxvY2tlZCcsXG4gICAgZXZfY29ybmVyX2dvYWxzOiAnZXZDb3JuZXJHb2FscycsXG4gICAgZXZfY29ybmVyX29uX2dvYWxzOiAnZXZDb3JuZXJPbkdvYWxzJyxcbiAgICBldl9jb3JuZXJfbWlzc2VzOiAnZXZDb3JuZXJNaXNzZXMnLFxuICAgIGV2X2Nvcm5lcl9zaG90c19ibG9ja2VkOiAnZXZDb3JuZXJTaG90c0Jsb2NrZWQnLFxuICAgIGNvcm5lcl9wYXNzZXM6ICdjb3JuZXJQYXNzZXMnLFxuICAgIGNvcm5lcl9zZWxmczogJ2Nvcm5lclNlbGZzJyxcbiAgICB0YWNrbGVzOiAndGFja2xlcycsXG4gICAgcGxheWVyX2VmZmljaWVuY3k6ICdwbGF5ZXJFZmZpY2llbmN5JyxcbiAgICBkZWZlbnNlX3NlbGVjdF9wb3NpdGlvbnM6ICdkZWZlbnNlU2VsZWN0UG9zaXRpb25zJyxcbiAgICBzYXZlX3Bvc3Nlc3Npb25zOiAnc2F2ZVBvc3Nlc3Npb25zJyxcblxuICAgIHBwX3BlcmltZXRyX3Nob3RfZ29hbHM6ICdwcFBlcmltZXRyU2hvdEdvYWxzJyxcbiAgICBwcF9wZXJpbWV0cl9zaG90X29uX2dvYWxzOiAncHBQZXJpbWV0clNob3RPbkdvYWxzJyxcbiAgICBwcF9wZXJpbWV0cl9zaG90X21pc3NlczogJ3BwUGVyaW1ldHJTaG90TWlzc2VzJyxcbiAgICBwcF9wZXJpbWV0cl9zaG90c19ibG9ja2VkOiAncHBQZXJpbWV0clNob3RzQmxvY2tlZCcsXG4gICAgZXZfcGVyaW1ldHJfc2hvdF9nb2FsczogJ2V2UGVyaW1ldHJTaG90R29hbHMnLFxuICAgIGV2X3BlcmltZXRyX3Nob3Rfb25fZ29hbHM6ICdldlBlcmltZXRyU2hvdE9uR29hbHMnLFxuICAgIGV2X3BlcmltZXRyX3Nob3RfbWlzc2VzOiAnZXZQZXJpbWV0clNob3RNaXNzZXMnLFxuICAgIGV2X3BlcmltZXRyX3Nob3RzX2Jsb2NrZWQ6ICdldlBlcmltZXRyU2hvdHNCbG9ja2VkJyxcbiAgICBzaF9wZXJpbWV0cl9zaG90X2dvYWxzOiAnc2hQZXJpbWV0clNob3RHb2FscycsXG4gICAgc2hfcGVyaW1ldHJfc2hvdF9vbl9nb2FsczogJ3NoUGVyaW1ldHJTaG90T25Hb2FscycsXG4gICAgc2hfcGVyaW1ldHJfc2hvdF9taXNzZXM6ICdzaFBlcmltZXRyU2hvdE1pc3NlcycsXG4gICAgc2hfcGVyaW1ldHJfc2hvdHNfYmxvY2tlZDogJ3NoUGVyaW1ldHJTaG90c0Jsb2NrZWQnLFxuICAgIHBwX3BlcmltZXRyX3Nob3Rfc2F2ZXM6ICdwcFBlcmltZXRyU2hvdFNhdmVzJyxcbiAgICBzaF9wZXJpbWV0cl9zaG90X3NhdmVzOiAnc2hQZXJpbWV0clNob3RTYXZlcycsXG4gICAgZXZfcGVyaW1ldHJfc2hvdF9zYXZlczogJ2V2UGVyaW1ldHJTaG90U2F2ZXMnLFxuICAgIHBwX3BlcmltZXRyX3Nob3RfZ29hbHNfYWdhaW5zdDogJ3BwUGVyaW1ldHJTaG90R29hbHNBZ2FpbnN0JyxcbiAgICBzaF9wZXJpbWV0cl9zaG90X2dvYWxzX2FnYWluc3Q6ICdzaFBlcmltZXRyU2hvdEdvYWxzQWdhaW5zdCcsXG4gICAgZXZfcGVyaW1ldHJfc2hvdF9nb2Fsc19hZ2FpbnN0OiAnZXZQZXJpbWV0clNob3RHb2Fsc0FnYWluc3QnLFxuICAgIHBlcmltZXRyX3Nob3RfZ29hbHNfYWdhaW5zdDogJ3BlcmltZXRyU2hvdEdvYWxzQWdhaW5zdCcsXG5cbiAgICBwcF9wb3N0X3Nob3RfZ29hbHM6ICdwcFBvc3RTaG90R29hbHMnLFxuICAgIHBwX3Bvc3Rfc2hvdF9vbl9nb2FsczogJ3BwUG9zdFNob3RPbkdvYWxzJyxcbiAgICBwcF9wb3N0X3Nob3RfbWlzc2VzOiAncHBQb3N0U2hvdE1pc3NlcycsXG4gICAgcHBfcG9zdF9zaG90c19ibG9ja2VkOiAncHBQb3N0U2hvdHNCbG9ja2VkJyxcbiAgICBldl9wb3N0X3Nob3RfZ29hbHM6ICdldlBvc3RTaG90R29hbHMnLFxuICAgIGV2X3Bvc3Rfc2hvdF9vbl9nb2FsczogJ2V2UG9zdFNob3RPbkdvYWxzJyxcbiAgICBldl9wb3N0X3Nob3RfbWlzc2VzOiAnZXZQb3N0U2hvdE1pc3NlcycsXG4gICAgZXZfcG9zdF9zaG90c19ibG9ja2VkOiAnZXZQb3N0U2hvdHNCbG9ja2VkJyxcbiAgICBzaF9wb3N0X3Nob3RfZ29hbHM6ICdzaFBvc3RTaG90R29hbHMnLFxuICAgIHNoX3Bvc3Rfc2hvdF9vbl9nb2FsczogJ3NoUG9zdFNob3RPbkdvYWxzJyxcbiAgICBzaF9wb3N0X3Nob3RfbWlzc2VzOiAnc2hQb3N0U2hvdE1pc3NlcycsXG4gICAgc2hfcG9zdF9zaG90c19ibG9ja2VkOiAnc2hQb3N0U2hvdHNCbG9ja2VkJyxcbiAgICBwcF9wb3N0X3Nob3Rfc2F2ZXM6ICdwcFBvc3RTaG90U2F2ZXMnLFxuICAgIHNoX3Bvc3Rfc2hvdF9zYXZlczogJ3NoUG9zdFNob3RTYXZlcycsXG4gICAgZXZfcG9zdF9zaG90X3NhdmVzOiAnZXZQb3N0U2hvdFNhdmVzJyxcbiAgICBwcF9wb3N0X3Nob3RfZ29hbHNfYWdhaW5zdDogJ3BwUG9zdFNob3RHb2Fsc0FnYWluc3QnLFxuICAgIHNoX3Bvc3Rfc2hvdF9nb2Fsc19hZ2FpbnN0OiAnc2hQb3N0U2hvdEdvYWxzQWdhaW5zdCcsXG4gICAgZXZfcG9zdF9zaG90X2dvYWxzX2FnYWluc3Q6ICdldlBvc3RTaG90R29hbHNBZ2FpbnN0JyxcbiAgICBwb3N0X3Nob3RfZ29hbHNfYWdhaW5zdDogJ3Bvc3RTaG90R29hbHNBZ2FpbnN0JyxcblxuICAgIHBwX2Zhc3Rfc2hvdF9nb2FsczogJ3BwRmFzdFNob3RHb2FscycsXG4gICAgcHBfZmFzdF9zaG90X29uX2dvYWxzOiAncHBGYXN0U2hvdE9uR29hbHMnLFxuICAgIHBwX2Zhc3Rfc2hvdF9taXNzZXM6ICdwcEZhc3RTaG90TWlzc2VzJyxcbiAgICBwcF9mYXN0X3Nob3RzX2Jsb2NrZWQ6ICdwcEZhc3RTaG90c0Jsb2NrZWQnLFxuICAgIGV2X2Zhc3Rfc2hvdF9nb2FsczogJ2V2RmFzdFNob3RHb2FscycsXG4gICAgZXZfZmFzdF9zaG90X29uX2dvYWxzOiAnZXZGYXN0U2hvdE9uR29hbHMnLFxuICAgIGV2X2Zhc3Rfc2hvdF9taXNzZXM6ICdldkZhc3RTaG90TWlzc2VzJyxcbiAgICBldl9mYXN0X3Nob3RzX2Jsb2NrZWQ6ICdldkZhc3RTaG90c0Jsb2NrZWQnLFxuICAgIHNoX2Zhc3Rfc2hvdF9nb2FsczogJ3NoRmFzdFNob3RHb2FscycsXG4gICAgc2hfZmFzdF9zaG90X29uX2dvYWxzOiAnc2hGYXN0U2hvdE9uR29hbHMnLFxuICAgIHNoX2Zhc3Rfc2hvdF9taXNzZXM6ICdzaEZhc3RTaG90TWlzc2VzJyxcbiAgICBzaF9mYXN0X3Nob3RzX2Jsb2NrZWQ6ICdzaEZhc3RTaG90c0Jsb2NrZWQnLFxuICAgIHBwX2Zhc3Rfc2hvdF9zYXZlczogJ3BwRmFzdFNob3RTYXZlcycsXG4gICAgc2hfZmFzdF9zaG90X3NhdmVzOiAnc2hGYXN0U2hvdFNhdmVzJyxcbiAgICBldl9mYXN0X3Nob3Rfc2F2ZXM6ICdldkZhc3RTaG90U2F2ZXMnLFxuICAgIHBwX2Zhc3Rfc2hvdF9nb2Fsc19hZ2FpbnN0OiAncHBGYXN0U2hvdEdvYWxzQWdhaW5zdCcsXG4gICAgc2hfZmFzdF9zaG90X2dvYWxzX2FnYWluc3Q6ICdzaEZhc3RTaG90R29hbHNBZ2FpbnN0JyxcbiAgICBldl9mYXN0X3Nob3RfZ29hbHNfYWdhaW5zdDogJ2V2RmFzdFNob3RHb2Fsc0FnYWluc3QnLFxuICAgIGZhc3Rfc2hvdF9nb2Fsc19hZ2FpbnN0OiAnZmFzdFNob3RHb2Fsc0FnYWluc3QnLFxuICB9LFxuICByZWxhdGlvbjoge1xuICAgIHVwZGF0ZWRBdDogRGF0ZVRpbWVGaWVsZCxcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBXYXRlcnBvbG9HYW1lU3RhdGlzdGljIGV4dGVuZHMgQmFzZU1vZGVsIGltcGxlbWVudHMgR2FtZVN0YXRpc3RpY0Jhc2Uge1xuICBnYW1lVXNlcklkOiBudW1iZXI7XG4gIHBvaW50czogbnVtYmVyO1xuICBwcFNob3RNaXNzZXM6IG51bWJlcjtcbiAgcHBTaG90c09uR29hbDogbnVtYmVyO1xuICBwcFNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBldlNob3RNaXNzZXM6IG51bWJlcjtcbiAgZXZTaG90c09uR29hbDogbnVtYmVyO1xuICBldlNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBzaFNob3RNaXNzZXM6IG51bWJlcjtcbiAgc2hTaG90c09uR29hbDogbnVtYmVyO1xuICBzaFNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBwcFRvdGFsU2hvdHNPbkdvYWw6IG51bWJlcjtcbiAgZXZUb3RhbFNob3RzT25Hb2FsOiBudW1iZXI7XG4gIHNoVG90YWxTaG90c09uR29hbDogbnVtYmVyO1xuICBwcEdvYWxzOiBudW1iZXI7XG4gIGV2R29hbHM6IG51bWJlcjtcbiAgc2hHb2FsczogbnVtYmVyO1xuICBwcENvdW50ZXJBdHRhY2tHb2FsczogbnVtYmVyO1xuICBwcENvdW50ZXJBdHRhY2tPbkdvYWxzOiBudW1iZXI7XG4gIHBwQ291bnRlckF0dGFja01pc3NlczogbnVtYmVyO1xuICBwcENvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgZXZDb3VudGVyQXR0YWNrR29hbHM6IG51bWJlcjtcbiAgZXZDb3VudGVyQXR0YWNrT25Hb2FsczogbnVtYmVyO1xuICBldkNvdW50ZXJBdHRhY2tNaXNzZXM6IG51bWJlcjtcbiAgZXZDb3VudGVyQXR0YWNrU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIHNoQ291bnRlckF0dGFja0dvYWxzOiBudW1iZXI7XG4gIHNoQ291bnRlckF0dGFja09uR29hbHM6IG51bWJlcjtcbiAgc2hDb3VudGVyQXR0YWNrTWlzc2VzOiBudW1iZXI7XG4gIHNoQ291bnRlckF0dGFja1Nob3RzQmxvY2tlZDogbnVtYmVyO1xuICBwcE1hbmV1dmVyR29hbHM6IG51bWJlcjtcbiAgcHBNYW5ldXZlck9uR29hbHM6IG51bWJlcjtcbiAgcHBNYW5ldXZlck1pc3NlczogbnVtYmVyO1xuICBwcE1hbmV1dmVyU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIGV2TWFuZXV2ZXJHb2FsczogbnVtYmVyO1xuICBldk1hbmV1dmVyT25Hb2FsczogbnVtYmVyO1xuICBldk1hbmV1dmVyTWlzc2VzOiBudW1iZXI7XG4gIGV2TWFuZXV2ZXJTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgc2hNYW5ldXZlckdvYWxzOiBudW1iZXI7XG4gIHNoTWFuZXV2ZXJPbkdvYWxzOiBudW1iZXI7XG4gIHNoTWFuZXV2ZXJNaXNzZXM6IG51bWJlcjtcbiAgc2hNYW5ldXZlclNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBwcENlbnRlckZvcndhcmRHb2FsczogbnVtYmVyO1xuICBwcENlbnRlckZvcndhcmRPbkdvYWxzOiBudW1iZXI7XG4gIHBwQ2VudGVyRm9yd2FyZE1pc3NlczogbnVtYmVyO1xuICBwcENlbnRlckZvcndhcmRTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgZXZDZW50ZXJGb3J3YXJkR29hbHM6IG51bWJlcjtcbiAgZXZDZW50ZXJGb3J3YXJkT25Hb2FsczogbnVtYmVyO1xuICBldkNlbnRlckZvcndhcmRNaXNzZXM6IG51bWJlcjtcbiAgZXZDZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIHNoQ2VudGVyRm9yd2FyZEdvYWxzOiBudW1iZXI7XG4gIHNoQ2VudGVyRm9yd2FyZE9uR29hbHM6IG51bWJlcjtcbiAgc2hDZW50ZXJGb3J3YXJkTWlzc2VzOiBudW1iZXI7XG4gIHNoQ2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBwcEFzc2lzdHM6IG51bWJlcjtcbiAgZXZBc3Npc3RzOiBudW1iZXI7XG4gIHNoQXNzaXN0czogbnVtYmVyO1xuICBzaG9vdG91dEF0dGVtcHRzOiBudW1iZXI7XG4gIHNob290b3V0R29hbHM6IG51bWJlcjtcbiAgYWZ0ZXJHYW1lU2hvb3RvdXRBdHRlbXB0czogbnVtYmVyO1xuICBhZnRlckdhbWVTaG9vdG91dEdvYWxzOiBudW1iZXI7XG4gIGJsb2NrU2hvdHM6IG51bWJlcjtcbiAgZmFjZU9mZkxvc3NlczogbnVtYmVyO1xuICBmYWNlT2ZmV2luczogbnVtYmVyO1xuICBwcFNhdmVzOiBudW1iZXI7XG4gIHNoU2F2ZXM6IG51bWJlcjtcbiAgZXZTYXZlczogbnVtYmVyO1xuICBwcENvdW50ZXJBdHRhY2tTYXZlczogbnVtYmVyO1xuICBzaENvdW50ZXJBdHRhY2tTYXZlczogbnVtYmVyO1xuICBldkNvdW50ZXJBdHRhY2tTYXZlczogbnVtYmVyO1xuICBwcE1hbmV1dmVyU2F2ZXM6IG51bWJlcjtcbiAgc2hNYW5ldXZlclNhdmVzOiBudW1iZXI7XG4gIGV2TWFuZXV2ZXJTYXZlczogbnVtYmVyO1xuICBwcENlbnRlckZvcndhcmRTYXZlczogbnVtYmVyO1xuICBzaENlbnRlckZvcndhcmRTYXZlczogbnVtYmVyO1xuICBldkNlbnRlckZvcndhcmRTYXZlczogbnVtYmVyO1xuICBwcEZyZWVLaWNrU2F2ZXM6IG51bWJlcjtcbiAgc2hGcmVlS2lja1NhdmVzOiBudW1iZXI7XG4gIGV2RnJlZUtpY2tTYXZlczogbnVtYmVyO1xuICBwcENvcm5lclNhdmVzOiBudW1iZXI7XG4gIHNoQ29ybmVyU2F2ZXM6IG51bWJlcjtcbiAgZXZDb3JuZXJTYXZlczogbnVtYmVyO1xuICBwcFRvdGFsR2FtZVNhdmVzOiBudW1iZXI7XG4gIHNoVG90YWxHYW1lU2F2ZXM6IG51bWJlcjtcbiAgZXZUb3RhbEdhbWVTYXZlczogbnVtYmVyO1xuICBzaG9vdG91dFNhdmVzOiBudW1iZXI7XG4gIGFmdGVyR2FtZVNob290b3V0U2F2ZXM6IG51bWJlcjtcbiAgcHBHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgc2hHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZXZHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZ29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHBwQ291bnRlckF0dGFja0dvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBzaENvdW50ZXJBdHRhY2tHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZXZDb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGNvdW50ZXJBdHRhY2tHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgcHBNYW5ldXZlckdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBzaE1hbmV1dmVyR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGV2TWFuZXV2ZXJHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgbWFuZXV2ZXJHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgcHBDZW50ZXJGb3J3YXJkR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHNoQ2VudGVyRm9yd2FyZEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBldkNlbnRlckZvcndhcmRHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgY2VudGVyRm9yd2FyZEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBwcEZyZWVLaWNrR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHNoRnJlZUtpY2tHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZXZGcmVlS2lja0dvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBmcmVlS2lja0dvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBwcENvcm5lckdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBzaENvcm5lckdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBldkNvcm5lckdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBjb3JuZXJHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgc2hvb3RvdXRHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgYWZ0ZXJHYW1lU2hvb3RvdXRHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgc2FmZXR5UmF0ZTogbnVtYmVyO1xuICBwZW5hbHR5TWludXRlczogbnVtYmVyO1xuICBnYW1lVGltZTogbnVtYmVyO1xuICBwbHVzTWludXM6IG51bWJlcjtcbiAgZm91bHM6IG51bWJlcjtcbiAgbWlub3JQZW5hbHRpZXM6IG51bWJlcjtcbiAgbWFqb3JQZW5hbHRpZXM6IG51bWJlcjtcbiAgbWF0Y2hQZW5hbHRpZXM6IG51bWJlcjtcbiAgcGVuYWx0eUZvdWxzOiBudW1iZXI7XG4gIHR1cm5vdmVyczogbnVtYmVyO1xuICBhdHRhY2tGb3VsczogbnVtYmVyO1xuICBwZXJzb25hbEZvdWxzOiBudW1iZXI7XG4gIGRyYXduRm91bHM6IG51bWJlcjtcbiAgZHJhd25UdXJub3ZlcnM6IG51bWJlcjtcbiAgeWVsbG93Q2FyZHM6IG51bWJlcjtcbiAgcmVkQ2FyZHM6IG51bWJlcjtcbiAgbG9zc2VzOiBudW1iZXI7XG4gIHN0ZWFsczogbnVtYmVyO1xuICBwcEZyZWVLaWNrR29hbHM6IG51bWJlcjtcbiAgcHBGcmVlS2lja09uR29hbHM6IG51bWJlcjtcbiAgcHBGcmVlS2lja01pc3NlczogbnVtYmVyO1xuICBwcEZyZWVLaWNrU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIHNoRnJlZUtpY2tHb2FsczogbnVtYmVyO1xuICBzaEZyZWVLaWNrT25Hb2FsczogbnVtYmVyO1xuICBzaEZyZWVLaWNrTWlzc2VzOiBudW1iZXI7XG4gIHNoRnJlZUtpY2tTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgZXZGcmVlS2lja0dvYWxzOiBudW1iZXI7XG4gIGV2RnJlZUtpY2tPbkdvYWxzOiBudW1iZXI7XG4gIGV2RnJlZUtpY2tNaXNzZXM6IG51bWJlcjtcbiAgZXZGcmVlS2lja1Nob3RzQmxvY2tlZDogbnVtYmVyO1xuICBmcmVlS2lja1Bhc3NlczogbnVtYmVyO1xuICBmcmVlS2lja1NlbGZzOiBudW1iZXI7XG4gIHBwQ29ybmVyR29hbHM6IG51bWJlcjtcbiAgcHBDb3JuZXJPbkdvYWxzOiBudW1iZXI7XG4gIHBwQ29ybmVyTWlzc2VzOiBudW1iZXI7XG4gIHBwQ29ybmVyU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIHNoQ29ybmVyR29hbHM6IG51bWJlcjtcbiAgc2hDb3JuZXJPbkdvYWxzOiBudW1iZXI7XG4gIHNoQ29ybmVyTWlzc2VzOiBudW1iZXI7XG4gIHNoQ29ybmVyU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIGV2Q29ybmVyR29hbHM6IG51bWJlcjtcbiAgZXZDb3JuZXJPbkdvYWxzOiBudW1iZXI7XG4gIGV2Q29ybmVyTWlzc2VzOiBudW1iZXI7XG4gIGV2Q29ybmVyU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIGNvcm5lclBhc3NlczogbnVtYmVyO1xuICBjb3JuZXJTZWxmczogbnVtYmVyO1xuICB0YWNrbGVzOiBudW1iZXI7XG4gIHBsYXllckVmZmljaWVuY3k6IG51bWJlcjtcbiAgZGVmZW5zZVNlbGVjdFBvc2l0aW9uczogbnVtYmVyO1xuICBzYXZlUG9zc2Vzc2lvbnM6IG51bWJlcjtcblxuICBwcFBlcmltZXRyU2hvdEdvYWxzOiBudW1iZXI7XG4gIHBwUGVyaW1ldHJTaG90T25Hb2FsczogbnVtYmVyO1xuICBwcFBlcmltZXRyU2hvdE1pc3NlczogbnVtYmVyO1xuICBwcFBlcmltZXRyU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIGV2UGVyaW1ldHJTaG90R29hbHM6IG51bWJlcjtcbiAgZXZQZXJpbWV0clNob3RPbkdvYWxzOiBudW1iZXI7XG4gIGV2UGVyaW1ldHJTaG90TWlzc2VzOiBudW1iZXI7XG4gIGV2UGVyaW1ldHJTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgc2hQZXJpbWV0clNob3RHb2FsczogbnVtYmVyO1xuICBzaFBlcmltZXRyU2hvdE9uR29hbHM6IG51bWJlcjtcbiAgc2hQZXJpbWV0clNob3RNaXNzZXM6IG51bWJlcjtcbiAgc2hQZXJpbWV0clNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBwcFBlcmltZXRyU2hvdFNhdmVzOiBudW1iZXI7XG4gIHNoUGVyaW1ldHJTaG90U2F2ZXM6IG51bWJlcjtcbiAgZXZQZXJpbWV0clNob3RTYXZlczogbnVtYmVyO1xuICBwcFBlcmltZXRyU2hvdEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBzaFBlcmltZXRyU2hvdEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBldlBlcmltZXRyU2hvdEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBwZXJpbWV0clNob3RHb2Fsc0FnYWluc3Q6IG51bWJlcjtcblxuICBwcFBvc3RTaG90R29hbHM6IG51bWJlcjtcbiAgcHBQb3N0U2hvdE9uR29hbHM6IG51bWJlcjtcbiAgcHBQb3N0U2hvdE1pc3NlczogbnVtYmVyO1xuICBwcFBvc3RTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgZXZQb3N0U2hvdEdvYWxzOiBudW1iZXI7XG4gIGV2UG9zdFNob3RPbkdvYWxzOiBudW1iZXI7XG4gIGV2UG9zdFNob3RNaXNzZXM6IG51bWJlcjtcbiAgZXZQb3N0U2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIHNoUG9zdFNob3RHb2FsczogbnVtYmVyO1xuICBzaFBvc3RTaG90T25Hb2FsczogbnVtYmVyO1xuICBzaFBvc3RTaG90TWlzc2VzOiBudW1iZXI7XG4gIHNoUG9zdFNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBwcFBvc3RTaG90U2F2ZXM6IG51bWJlcjtcbiAgc2hQb3N0U2hvdFNhdmVzOiBudW1iZXI7XG4gIGV2UG9zdFNob3RTYXZlczogbnVtYmVyO1xuICBwcFBvc3RTaG90R29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHNoUG9zdFNob3RHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZXZQb3N0U2hvdEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBwb3N0U2hvdEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuXG4gIHBwRmFzdFNob3RHb2FsczogbnVtYmVyO1xuICBwcEZhc3RTaG90T25Hb2FsczogbnVtYmVyO1xuICBwcEZhc3RTaG90TWlzc2VzOiBudW1iZXI7XG4gIHBwRmFzdFNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBldkZhc3RTaG90R29hbHM6IG51bWJlcjtcbiAgZXZGYXN0U2hvdE9uR29hbHM6IG51bWJlcjtcbiAgZXZGYXN0U2hvdE1pc3NlczogbnVtYmVyO1xuICBldkZhc3RTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgc2hGYXN0U2hvdEdvYWxzOiBudW1iZXI7XG4gIHNoRmFzdFNob3RPbkdvYWxzOiBudW1iZXI7XG4gIHNoRmFzdFNob3RNaXNzZXM6IG51bWJlcjtcbiAgc2hGYXN0U2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIHBwRmFzdFNob3RTYXZlczogbnVtYmVyO1xuICBzaEZhc3RTaG90U2F2ZXM6IG51bWJlcjtcbiAgZXZGYXN0U2hvdFNhdmVzOiBudW1iZXI7XG4gIHBwRmFzdFNob3RHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgc2hGYXN0U2hvdEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBldkZhc3RTaG90R29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGZhc3RTaG90R29hbHNBZ2FpbnN0OiBudW1iZXI7XG5cbiAgdXBkYXRlZEF0OiBEYXRlO1xuXG4gIGdldCBpZCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdhbWVVc2VySWQ7XG4gIH1cblxuICBnZXQgZ2FtZU1pbnV0ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gTWF0aC5mbG9vcih0aGlzLmdhbWVUaW1lIC8gNjApO1xuICB9XG5cbiAgZ2V0IHBlbmFsdHlUaW1lKCk6IHN0cmluZyB7XG4gICAgaWYgKCF0aGlzLnBlbmFsdHlNaW51dGVzKSB7XG4gICAgICByZXR1cm4gJzAwOjAwJztcbiAgICB9XG4gICAgY29uc3QgbWludXRlcyA9IE1hdGguZmxvb3IodGhpcy5wZW5hbHR5TWludXRlcyAvIDYwKTtcbiAgICBjb25zdCBzZWNvbmRzID0gTWF0aC5mbG9vcih0aGlzLnBlbmFsdHlNaW51dGVzIC0gbWludXRlcyAqIDYwKTtcbiAgICByZXR1cm4gYCR7bWludXRlcyA8IDEwID8gMCA6ICcnfSR7bWludXRlc306JHtzZWNvbmRzIDwgMTAgPyAwIDogJyd9JHtzZWNvbmRzfWA7XG4gIH1cblxuICBnZXQgYXNzaXN0cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEFzc2lzdHMgfHwgMCkgKyAodGhpcy5zaEFzc2lzdHMgfHwgMCkgICsgKHRoaXMuZXZBc3Npc3RzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHRvdGFsQ291bnRlckF0dGFja0dvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ291bnRlckF0dGFja0dvYWxzIHx8IDApICsgKHRoaXMuZXZDb3VudGVyQXR0YWNrR29hbHMgfHwgMCkgICsgKHRoaXMuc2hDb3VudGVyQXR0YWNrR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgcHBDb3VudGVyQXR0YWNrU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDb3VudGVyQXR0YWNrT25Hb2FscyB8fCAwKSArICh0aGlzLnBwQ291bnRlckF0dGFja01pc3NlcyB8fCAwKSArICh0aGlzLnBwQ291bnRlckF0dGFja1Nob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBzaENvdW50ZXJBdHRhY2tTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5zaENvdW50ZXJBdHRhY2tPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hDb3VudGVyQXR0YWNrTWlzc2VzIHx8IDApICsgKHRoaXMuc2hDb3VudGVyQXR0YWNrU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IGV2Q291bnRlckF0dGFja1Nob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmV2Q291bnRlckF0dGFja09uR29hbHMgfHwgMCkgKyAodGhpcy5ldkNvdW50ZXJBdHRhY2tNaXNzZXMgfHwgMCkgKyAodGhpcy5ldkNvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgY291bnRlckF0dGFja1Nob3RNaXNzZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDb3VudGVyQXR0YWNrTWlzc2VzIHx8IDApICsgKHRoaXMuc2hDb3VudGVyQXR0YWNrTWlzc2VzIHx8IDApICsgKHRoaXMuZXZDb3VudGVyQXR0YWNrTWlzc2VzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNvdW50ZXJBdHRhY2tTaG90T25Hb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENvdW50ZXJBdHRhY2tPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hDb3VudGVyQXR0YWNrT25Hb2FscyB8fCAwKSArICh0aGlzLmV2Q291bnRlckF0dGFja09uR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgY291bnRlckF0dGFja1Nob3RzQmxvY2tlZCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5zaENvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5ldkNvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgY291bnRlckF0dGFja1Nob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY291bnRlckF0dGFja1Nob3RNaXNzZXMgKyB0aGlzLmNvdW50ZXJBdHRhY2tTaG90T25Hb2FscyArIHRoaXMuY291bnRlckF0dGFja1Nob3RzQmxvY2tlZDtcbiAgfVxuXG4gIGdldCBjb3VudGVyQXR0YWNrR29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsQ291bnRlckF0dGFja0dvYWxzIHx8ICF0aGlzLmNvdW50ZXJBdHRhY2tTaG90cykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnRvdGFsQ291bnRlckF0dGFja0dvYWxzIC8gdGhpcy5jb3VudGVyQXR0YWNrU2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgdG90YWxNYW5ldXZlckdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwTWFuZXV2ZXJHb2FscyB8fCAwKSArICh0aGlzLnNoTWFuZXV2ZXJHb2FscyB8fCAwKSArICh0aGlzLmV2TWFuZXV2ZXJHb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwcE1hbmV1dmVyU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBNYW5ldXZlck9uR29hbHMgfHwgMCkgKyAodGhpcy5wcE1hbmV1dmVyTWlzc2VzIHx8IDApICsgKHRoaXMucHBNYW5ldXZlclNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBzaE1hbmV1dmVyU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hNYW5ldXZlck9uR29hbHMgfHwgMCkgKyAodGhpcy5zaE1hbmV1dmVyTWlzc2VzIHx8IDApICsgKHRoaXMuc2hNYW5ldXZlclNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBldk1hbmV1dmVyU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuZXZNYW5ldXZlck9uR29hbHMgfHwgMCkgKyAodGhpcy5ldk1hbmV1dmVyTWlzc2VzIHx8IDApICsgKHRoaXMuZXZNYW5ldXZlclNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBtYW5ldXZlclNob3RNaXNzZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBNYW5ldXZlck1pc3NlcyB8fCAwKSArICh0aGlzLnNoTWFuZXV2ZXJNaXNzZXMgfHwgMCkgKyAgKHRoaXMuZXZNYW5ldXZlck1pc3NlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBtYW5ldXZlclNob3RPbkdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwTWFuZXV2ZXJPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hNYW5ldXZlck9uR29hbHMgfHwgMCkgKyAgKHRoaXMuZXZNYW5ldXZlck9uR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgbWFuZXV2ZXJTaG90c0Jsb2NrZWQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBNYW5ldXZlclNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLnNoTWFuZXV2ZXJTaG90c0Jsb2NrZWQgfHwgMCkgKyAgKHRoaXMuZXZNYW5ldXZlclNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBtYW5ldXZlclNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMubWFuZXV2ZXJTaG90TWlzc2VzICsgdGhpcy5tYW5ldXZlclNob3RPbkdvYWxzICsgdGhpcy5tYW5ldXZlclNob3RzQmxvY2tlZDtcbiAgfVxuXG4gIGdldCBtYW5ldXZlckdvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbE1hbmV1dmVyR29hbHMgfHwgIXRoaXMubWFuZXV2ZXJTaG90cykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnRvdGFsTWFuZXV2ZXJHb2FscyAvIHRoaXMubWFuZXV2ZXJTaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCB0b3RhbENlbnRlckZvcndhcmRHb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENlbnRlckZvcndhcmRHb2FscyB8fCAwKSArICh0aGlzLnNoQ2VudGVyRm9yd2FyZEdvYWxzIHx8IDApICsgICh0aGlzLmV2Q2VudGVyRm9yd2FyZEdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBwQ2VudGVyRm9yd2FyZFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ2VudGVyRm9yd2FyZE9uR29hbHMgfHwgMCkgKyAodGhpcy5wcENlbnRlckZvcndhcmRNaXNzZXMgfHwgMCkgKyAodGhpcy5wcENlbnRlckZvcndhcmRTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgc2hDZW50ZXJGb3J3YXJkU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hDZW50ZXJGb3J3YXJkT25Hb2FscyB8fCAwKSArICh0aGlzLnNoQ2VudGVyRm9yd2FyZE1pc3NlcyB8fCAwKSArICh0aGlzLnNoQ2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBldkNlbnRlckZvcndhcmRTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5ldkNlbnRlckZvcndhcmRPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZDZW50ZXJGb3J3YXJkTWlzc2VzIHx8IDApICsgKHRoaXMuZXZDZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNlbnRlckZvcndhcmRTaG90TWlzc2VzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ2VudGVyRm9yd2FyZE1pc3NlcyB8fCAwKSArICh0aGlzLnNoQ2VudGVyRm9yd2FyZE1pc3NlcyB8fCAwKSArICh0aGlzLmV2Q2VudGVyRm9yd2FyZE1pc3NlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBjZW50ZXJGb3J3YXJkU2hvdE9uR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDZW50ZXJGb3J3YXJkT25Hb2FscyB8fCAwKSArICh0aGlzLnNoQ2VudGVyRm9yd2FyZE9uR29hbHMgfHwgMCkgKyAodGhpcy5ldkNlbnRlckZvcndhcmRPbkdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNlbnRlckZvcndhcmRTaG90c0Jsb2NrZWQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuc2hDZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuZXZDZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNlbnRlckZvcndhcmRTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNlbnRlckZvcndhcmRTaG90TWlzc2VzICsgdGhpcy5jZW50ZXJGb3J3YXJkU2hvdE9uR29hbHMgKyB0aGlzLmNlbnRlckZvcndhcmRTaG90c0Jsb2NrZWQ7XG4gIH1cblxuICBnZXQgY2VudGVyRm9yd2FyZEdvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbENlbnRlckZvcndhcmRHb2FscyB8fCAhdGhpcy5jZW50ZXJGb3J3YXJkU2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbENlbnRlckZvcndhcmRHb2FscyAvIHRoaXMuY2VudGVyRm9yd2FyZFNob3RzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IHRvdGFsUGVyaW1ldHJTaG90R29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBQZXJpbWV0clNob3RHb2FscyB8fCAwKSArICh0aGlzLmV2UGVyaW1ldHJTaG90R29hbHMgfHwgMCkgICsgKHRoaXMuc2hQZXJpbWV0clNob3RHb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwcFBlcmltZXRyU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBQZXJpbWV0clNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMucHBQZXJpbWV0clNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5wcFBlcmltZXRyU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IHNoUGVyaW1ldHJTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5zaFBlcmltZXRyU2hvdE9uR29hbHMgfHwgMCkgKyAodGhpcy5zaFBlcmltZXRyU2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnNoUGVyaW1ldHJTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgZXZQZXJpbWV0clNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmV2UGVyaW1ldHJTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLmV2UGVyaW1ldHJTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuZXZQZXJpbWV0clNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBwZXJpbWV0clNob3RNaXNzZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBQZXJpbWV0clNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5zaFBlcmltZXRyU2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLmV2UGVyaW1ldHJTaG90TWlzc2VzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBlcmltZXRyU2hvdE9uR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBQZXJpbWV0clNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hQZXJpbWV0clNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZQZXJpbWV0clNob3RPbkdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBlcmltZXRyU2hvdHNCbG9ja2VkKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwUGVyaW1ldHJTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5zaFBlcmltZXRyU2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuZXZQZXJpbWV0clNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBwZXJpbWV0clNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucGVyaW1ldHJTaG90TWlzc2VzICsgdGhpcy5wZXJpbWV0clNob3RPbkdvYWxzICsgdGhpcy5wZXJpbWV0clNob3RzQmxvY2tlZDtcbiAgfVxuXG4gIGdldCBwZXJpbWV0clNob3RHb2Fsc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMudG90YWxQZXJpbWV0clNob3RHb2FscyB8fCAhdGhpcy5wZXJpbWV0clNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxQZXJpbWV0clNob3RHb2FscyAvIHRoaXMucGVyaW1ldHJTaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCB0b3RhbFBvc3RTaG90R29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBQb3N0U2hvdEdvYWxzIHx8IDApICsgKHRoaXMuZXZQb3N0U2hvdEdvYWxzIHx8IDApICArICh0aGlzLnNoUG9zdFNob3RHb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwcFBvc3RTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFBvc3RTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLnBwUG9zdFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5wcFBvc3RTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgc2hQb3N0U2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hQb3N0U2hvdE9uR29hbHMgfHwgMCkgKyAodGhpcy5zaFBvc3RTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuc2hQb3N0U2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IGV2UG9zdFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmV2UG9zdFNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZQb3N0U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLmV2UG9zdFNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBwb3N0U2hvdE1pc3NlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFBvc3RTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuc2hQb3N0U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLmV2UG9zdFNob3RNaXNzZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zdFNob3RPbkdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwUG9zdFNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hQb3N0U2hvdE9uR29hbHMgfHwgMCkgKyAodGhpcy5ldlBvc3RTaG90T25Hb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwb3N0U2hvdHNCbG9ja2VkKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwUG9zdFNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLnNoUG9zdFNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLmV2UG9zdFNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBwb3N0U2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wb3N0U2hvdE1pc3NlcyArIHRoaXMucG9zdFNob3RPbkdvYWxzICsgdGhpcy5wb3N0U2hvdHNCbG9ja2VkO1xuICB9XG5cbiAgZ2V0IHBvc3RTaG90R29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsUG9zdFNob3RHb2FscyB8fCAhdGhpcy5wb3N0U2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbFBvc3RTaG90R29hbHMgLyB0aGlzLnBvc3RTaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCB0b3RhbEZhc3RTaG90R29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBGYXN0U2hvdEdvYWxzIHx8IDApICsgKHRoaXMuZXZGYXN0U2hvdEdvYWxzIHx8IDApICArICh0aGlzLnNoRmFzdFNob3RHb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwcEZhc3RTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEZhc3RTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLnBwRmFzdFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5wcEZhc3RTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgc2hGYXN0U2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hGYXN0U2hvdE9uR29hbHMgfHwgMCkgKyAodGhpcy5zaEZhc3RTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuc2hGYXN0U2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IGV2RmFzdFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmV2RmFzdFNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZGYXN0U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLmV2RmFzdFNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBmYXN0U2hvdE1pc3NlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEZhc3RTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuc2hGYXN0U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLmV2RmFzdFNob3RNaXNzZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgZmFzdFNob3RPbkdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwRmFzdFNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hGYXN0U2hvdE9uR29hbHMgfHwgMCkgKyAodGhpcy5ldkZhc3RTaG90T25Hb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBmYXN0U2hvdHNCbG9ja2VkKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwRmFzdFNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLnNoRmFzdFNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLmV2RmFzdFNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBmYXN0U2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5mYXN0U2hvdE1pc3NlcyArIHRoaXMuZmFzdFNob3RPbkdvYWxzICsgdGhpcy5mYXN0U2hvdHNCbG9ja2VkO1xuICB9XG5cbiAgZ2V0IGZhc3RTaG90R29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsRmFzdFNob3RHb2FscyB8fCAhdGhpcy5mYXN0U2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbEZhc3RTaG90R29hbHMgLyB0aGlzLmZhc3RTaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCBwcFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwU2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnBwU2hvdHNPbkdvYWwgfHwgMCkgKyAodGhpcy5wcFNob3RzQmxvY2tlZCB8fCAwKSArXG4gICAgICAodGhpcy5wcEZyZWVLaWNrTWlzc2VzIHx8IDApICsgKHRoaXMucHBGcmVlS2lja09uR29hbHMgfHwgMCkgKyAodGhpcy5wcEZyZWVLaWNrU2hvdHNCbG9ja2VkIHx8IDApICtcbiAgICAgICh0aGlzLnBwQ29ybmVyTWlzc2VzIHx8IDApICsgKHRoaXMucHBDb3JuZXJPbkdvYWxzIHx8IDApICsgKHRoaXMucHBDb3JuZXJTaG90c0Jsb2NrZWQgfHwgMCkgK1xuICAgICAgdGhpcy5wcENvdW50ZXJBdHRhY2tTaG90cyArIHRoaXMucHBNYW5ldXZlclNob3RzICsgdGhpcy5wcENlbnRlckZvcndhcmRTaG90cyArXG4gICAgICB0aGlzLnBwUGVyaW1ldHJTaG90cyArIHRoaXMucHBQb3N0U2hvdHMgKyB0aGlzLnBwRmFzdFNob3RzO1xuICB9XG5cbiAgZ2V0IGV2U2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuZXZTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuZXZTaG90c09uR29hbCB8fCAwKSArICh0aGlzLmV2U2hvdHNCbG9ja2VkIHx8IDApICtcbiAgICAgICh0aGlzLmV2RnJlZUtpY2tNaXNzZXMgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrT25Hb2FscyB8fCAwKSArICh0aGlzLmV2RnJlZUtpY2tTaG90c0Jsb2NrZWQgfHwgMCkgK1xuICAgICAgKHRoaXMuZXZDb3JuZXJNaXNzZXMgfHwgMCkgKyAodGhpcy5ldkNvcm5lck9uR29hbHMgfHwgMCkgKyAodGhpcy5ldkNvcm5lclNob3RzQmxvY2tlZCB8fCAwKSAgK1xuICAgICAgdGhpcy5ldkNvdW50ZXJBdHRhY2tTaG90cyArIHRoaXMuZXZNYW5ldXZlclNob3RzICsgdGhpcy5ldkNlbnRlckZvcndhcmRTaG90cyArXG4gICAgICB0aGlzLmV2UGVyaW1ldHJTaG90cyArIHRoaXMuZXZQb3N0U2hvdHMgKyB0aGlzLmV2RmFzdFNob3RzO1xuICB9XG5cbiAgZ2V0IHNoU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuc2hTaG90c09uR29hbCB8fCAwKSArICh0aGlzLnNoU2hvdHNCbG9ja2VkIHx8IDApICtcbiAgICAgICh0aGlzLnNoRnJlZUtpY2tNaXNzZXMgfHwgMCkgKyAodGhpcy5zaEZyZWVLaWNrT25Hb2FscyB8fCAwKSArICh0aGlzLnNoRnJlZUtpY2tTaG90c0Jsb2NrZWQgfHwgMCkgK1xuICAgICAgKHRoaXMuc2hDb3JuZXJNaXNzZXMgfHwgMCkgKyAodGhpcy5zaENvcm5lck9uR29hbHMgfHwgMCkgKyAodGhpcy5zaENvcm5lclNob3RzQmxvY2tlZCB8fCAwKSArXG4gICAgICB0aGlzLnNoQ291bnRlckF0dGFja1Nob3RzICsgdGhpcy5zaE1hbmV1dmVyU2hvdHMgKyB0aGlzLnNoQ2VudGVyRm9yd2FyZFNob3RzICtcbiAgICAgIHRoaXMuc2hQZXJpbWV0clNob3RzICsgdGhpcy5zaFBvc3RTaG90cyArIHRoaXMuc2hGYXN0U2hvdHM7XG4gIH1cblxuICBnZXQgdG90YWxTaEdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnNoR29hbHMgfHwgMCkgKyAodGhpcy5zaEZyZWVLaWNrR29hbHMgfHwgMCkgKyAodGhpcy5zaENvcm5lckdvYWxzIHx8IDApICtcbiAgICAgICh0aGlzLnNoQ291bnRlckF0dGFja0dvYWxzIHx8IDApICsgKHRoaXMuc2hNYW5ldXZlckdvYWxzIHx8IDApICsgKHRoaXMuc2hDZW50ZXJGb3J3YXJkR29hbHMgfHwgMCkgK1xuICAgICAgKHRoaXMuc2hQZXJpbWV0clNob3RHb2FscyB8fCAwKSArICh0aGlzLnNoUG9zdFNob3RHb2FscyB8fCAwKSArICh0aGlzLnNoRmFzdFNob3RHb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCB0b3RhbEV2R29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuZXZHb2FscyB8fCAwKSArICh0aGlzLmV2RnJlZUtpY2tHb2FscyB8fCAwKSArICh0aGlzLmV2Q29ybmVyR29hbHMgfHwgMCkgK1xuICAgICAgKHRoaXMuZXZDb3VudGVyQXR0YWNrR29hbHMgfHwgMCkgKyAodGhpcy5ldk1hbmV1dmVyR29hbHMgfHwgMCkgKyAodGhpcy5ldkNlbnRlckZvcndhcmRHb2FscyB8fCAwKSArXG4gICAgICAodGhpcy5ldlBlcmltZXRyU2hvdEdvYWxzIHx8IDApICsgKHRoaXMuZXZQb3N0U2hvdEdvYWxzIHx8IDApICsgKHRoaXMuZXZGYXN0U2hvdEdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHRvdGFsUHBHb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEdvYWxzIHx8IDApICsgKHRoaXMucHBGcmVlS2lja0dvYWxzIHx8IDApICsgKHRoaXMucHBDb3JuZXJHb2FscyB8fCAwKSArXG4gICAgICAodGhpcy5wcENvdW50ZXJBdHRhY2tHb2FscyB8fCAwKSArICh0aGlzLnBwTWFuZXV2ZXJHb2FscyB8fCAwKSArICh0aGlzLnBwQ2VudGVyRm9yd2FyZEdvYWxzIHx8IDApICtcbiAgICAgICh0aGlzLnBwUGVyaW1ldHJTaG90R29hbHMgfHwgMCkgKyAodGhpcy5wcFBvc3RTaG90R29hbHMgfHwgMCkgKyAodGhpcy5wcEZhc3RTaG90R29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgZ29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy50b3RhbFNoR29hbHMgKyB0aGlzLnRvdGFsRXZHb2FscyArIHRoaXMudG90YWxQcEdvYWxzO1xuICB9XG5cbiAgZ2V0IHRvdGFsR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nb2FscyArICh0aGlzLnNob290b3V0R29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgc2hvb3RvdXRTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5zaG9vdG91dEdvYWxzIHx8IDApICsgKHRoaXMuc2hvb3RvdXRBdHRlbXB0cyB8fCAwKTtcbiAgfVxuXG4gIGdldCBpbkdhbWVTaG90TWlzc2VzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwU2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLmV2U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnNoU2hvdE1pc3NlcyB8fCAwKSArXG4gICAgICB0aGlzLmNvdW50ZXJBdHRhY2tTaG90TWlzc2VzICsgdGhpcy5tYW5ldXZlclNob3RNaXNzZXMgKyB0aGlzLmNlbnRlckZvcndhcmRTaG90TWlzc2VzICtcbiAgICAgIHRoaXMucGVyaW1ldHJTaG90TWlzc2VzICsgdGhpcy5wb3N0U2hvdE1pc3NlcyArIHRoaXMuZmFzdFNob3RNaXNzZXM7XG4gIH1cblxuICBnZXQgc2hvdE1pc3NlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEZyZWVLaWNrTWlzc2VzIHx8IDApICsgKHRoaXMuZXZGcmVlS2lja01pc3NlcyB8fCAwKSArICh0aGlzLnNoRnJlZUtpY2tNaXNzZXMgfHwgMCkgK1xuICAgICAgKHRoaXMucHBDb3JuZXJNaXNzZXMgfHwgMCkgKyAodGhpcy5ldkNvcm5lck1pc3NlcyB8fCAwKSArICh0aGlzLnNoQ29ybmVyTWlzc2VzIHx8IDApICtcbiAgICAgIHRoaXMuaW5HYW1lU2hvdE1pc3NlcztcbiAgfVxuXG4gIGdldCB0b3RhbFBwU2hvdE1pc3NlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5wcEZyZWVLaWNrTWlzc2VzIHx8IDApICsgKHRoaXMucHBDb3JuZXJNaXNzZXMgfHwgMCkgK1xuICAgICAgKHRoaXMucHBDb3VudGVyQXR0YWNrTWlzc2VzIHx8IDApICsgKHRoaXMucHBNYW5ldXZlck1pc3NlcyB8fCAwKSArICh0aGlzLnBwQ2VudGVyRm9yd2FyZE1pc3NlcyB8fCAwKSArXG4gICAgICAodGhpcy5wcFBlcmltZXRyU2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnBwUG9zdFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5wcEZhc3RTaG90TWlzc2VzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHNob3RzT25Hb2FsKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwU2hvdHNPbkdvYWwgfHwgMCkgKyAodGhpcy5ldlNob3RzT25Hb2FsIHx8IDApICsgKHRoaXMuc2hTaG90c09uR29hbCB8fCAwKSArXG4gICAgICAodGhpcy5wcEZyZWVLaWNrT25Hb2FscyB8fCAwKSArICh0aGlzLmV2RnJlZUtpY2tPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hGcmVlS2lja09uR29hbHMgfHwgMCkgK1xuICAgICAgKHRoaXMucHBDb3JuZXJPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZDb3JuZXJPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hDb3JuZXJPbkdvYWxzIHx8IDApICtcbiAgICAgIHRoaXMuY291bnRlckF0dGFja1Nob3RPbkdvYWxzICsgdGhpcy5tYW5ldXZlclNob3RPbkdvYWxzICsgdGhpcy5jZW50ZXJGb3J3YXJkU2hvdE9uR29hbHMgK1xuICAgICAgdGhpcy5wZXJpbWV0clNob3RPbkdvYWxzICsgdGhpcy5wb3N0U2hvdE9uR29hbHMgKyB0aGlzLmZhc3RTaG90T25Hb2FscztcbiAgfVxuXG4gIGdldCB0b3RhbFBwU2hvdHNPbkdvYWwoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBTaG90c09uR29hbCB8fCAwKSArICh0aGlzLnBwRnJlZUtpY2tPbkdvYWxzIHx8IDApICsgKHRoaXMucHBDb3JuZXJPbkdvYWxzIHx8IDApICtcbiAgICAgICh0aGlzLnBwQ291bnRlckF0dGFja09uR29hbHMgfHwgMCkgKyAodGhpcy5wcE1hbmV1dmVyT25Hb2FscyB8fCAwKSArICh0aGlzLnBwQ2VudGVyRm9yd2FyZE9uR29hbHMgfHwgMCkgK1xuICAgICAgKHRoaXMucHBQZXJpbWV0clNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMucHBQb3N0U2hvdE9uR29hbHMgfHwgMCkgKyAodGhpcy5wcEZhc3RTaG90T25Hb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBpbkdhbWVTaG90c09uR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBTaG90c09uR29hbCB8fCAwKSArICh0aGlzLmV2U2hvdHNPbkdvYWwgfHwgMCkgKyAodGhpcy5zaFNob3RzT25Hb2FsIHx8IDApICtcbiAgICAgIHRoaXMuY291bnRlckF0dGFja1Nob3RPbkdvYWxzICsgdGhpcy5tYW5ldXZlclNob3RPbkdvYWxzICsgdGhpcy5jZW50ZXJGb3J3YXJkU2hvdE9uR29hbHMgK1xuICAgICAgdGhpcy5wZXJpbWV0clNob3RPbkdvYWxzICsgdGhpcy5wb3N0U2hvdE9uR29hbHMgKyB0aGlzLmZhc3RTaG90T25Hb2FscztcbiAgfVxuXG4gIGdldCBzaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnBwU2hvdHMgKyB0aGlzLmV2U2hvdHMgKyB0aGlzLnNoU2hvdHM7XG4gIH1cblxuICBnZXQgdG90YWxTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnNob3RzICsgdGhpcy5zaG9vdG91dFNob3RzO1xuICB9XG5cbiAgZ2V0IGZhY2VPZmZzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmZhY2VPZmZXaW5zIHx8IDApICsgKHRoaXMuZmFjZU9mZkxvc3NlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBmcmVlS2lja1Nob3RNaXNzZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBGcmVlS2lja01pc3NlcyB8fCAwKSArICh0aGlzLmV2RnJlZUtpY2tNaXNzZXMgfHwgMCkgKyAodGhpcy5zaEZyZWVLaWNrTWlzc2VzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGZyZWVLaWNrU2hvdHNCbG9ja2VkKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwRnJlZUtpY2tTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrU2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuc2hGcmVlS2lja1Nob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBmcmVlS2lja09uR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBGcmVlS2lja09uR29hbHMgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrT25Hb2FscyB8fCAwKSArICh0aGlzLnNoRnJlZUtpY2tPbkdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHRvdGFsRnJlZUtpY2tHb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEZyZWVLaWNrR29hbHMgfHwgMCkgKyAodGhpcy5zaEZyZWVLaWNrR29hbHMgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgdG90YWxGcmVlS2lja3MoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuZnJlZUtpY2tTZWxmcyB8fCAwKSArICh0aGlzLmZyZWVLaWNrUGFzc2VzIHx8IDApICtcbiAgICAgIHRoaXMuZnJlZUtpY2tTaG90TWlzc2VzICsgdGhpcy5mcmVlS2lja09uR29hbHMgKyB0aGlzLnRvdGFsRnJlZUtpY2tHb2FscyArIHRoaXMuZnJlZUtpY2tTaG90c0Jsb2NrZWQ7XG4gIH1cblxuICBnZXQgZnJlZUtpY2tHb2Fsc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMudG90YWxGcmVlS2lja0dvYWxzIHx8ICF0aGlzLnRvdGFsRnJlZUtpY2tzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxGcmVlS2lja0dvYWxzIC8gdGhpcy50b3RhbEZyZWVLaWNrcykgLyAxMDtcbiAgfVxuXG4gIGdldCB0b3RhbENvcm5lckdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ29ybmVyR29hbHMgfHwgMCkgKyAodGhpcy5zaENvcm5lckdvYWxzIHx8IDApICsgKHRoaXMuZXZDb3JuZXJHb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBjb3JuZXJTaG90TWlzc2VzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ29ybmVyTWlzc2VzIHx8IDApICsgKHRoaXMuc2hDb3JuZXJNaXNzZXMgfHwgMCkgKyAodGhpcy5ldkNvcm5lck1pc3NlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBjb3JuZXJPbkdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ29ybmVyT25Hb2FscyB8fCAwKSArICh0aGlzLnNoQ29ybmVyT25Hb2FscyB8fCAwKSArICh0aGlzLmV2Q29ybmVyT25Hb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBjb3JuZXJTaG90c0Jsb2NrZWQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDb3JuZXJTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5zaENvcm5lclNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLmV2Q29ybmVyU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IHRvdGFsQ29ybmVycygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5jb3JuZXJTZWxmcyB8fCAwKSArICh0aGlzLmNvcm5lclBhc3NlcyB8fCAwKSArIHRoaXMuY29ybmVyU2hvdHNCbG9ja2VkICtcbiAgICAgIHRoaXMuY29ybmVyT25Hb2FscyArIHRoaXMuY29ybmVyU2hvdE1pc3NlcyArIHRoaXMudG90YWxDb3JuZXJHb2FscztcbiAgfVxuXG4gIGdldCBzaG90c0Jsb2NrZWQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5ldlNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLnNoU2hvdHNCbG9ja2VkIHx8IDApICtcbiAgICAgIHRoaXMuY291bnRlckF0dGFja1Nob3RzQmxvY2tlZCArIHRoaXMubWFuZXV2ZXJTaG90c0Jsb2NrZWQgKyB0aGlzLmNlbnRlckZvcndhcmRTaG90c0Jsb2NrZWQgK1xuICAgICAgdGhpcy5mcmVlS2lja1Nob3RzQmxvY2tlZCArIHRoaXMuY29ybmVyU2hvdHNCbG9ja2VkICtcbiAgICAgIHRoaXMucGVyaW1ldHJTaG90c0Jsb2NrZWQgKyB0aGlzLnBvc3RTaG90c0Jsb2NrZWQgKyB0aGlzLmZhc3RTaG90c0Jsb2NrZWQ7XG4gIH1cblxuICBnZXQgdG90YWxGb3VscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5mb3VscyB8fCAwKSArICh0aGlzLnBlcnNvbmFsRm91bHMgfHwgMCk7XG4gIH1cblxuICBnZXQgdG90YWxQZW5hbHRpZXMoKTogbnVtYmVyIHtcbiAgICAgIHJldHVybiAodGhpcy5taW5vclBlbmFsdGllcyB8fCAwKSArICh0aGlzLm1ham9yUGVuYWx0aWVzIHx8IDApICsgKHRoaXMubWF0Y2hQZW5hbHRpZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zaXRpb25BdHRhY2tHb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5zaEdvYWxzIHx8IDApICsgKHRoaXMuZXZHb2FscyB8fCAwKSArICh0aGlzLnBwR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zaXRpb25BdHRhY2tTaG90c09uR29hbCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFNob3RzT25Hb2FsIHx8IDApICsgKHRoaXMuZXZTaG90c09uR29hbCB8fCAwKSArICh0aGlzLnNoU2hvdHNPbkdvYWwgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zaXRpb25BdHRhY2tTaG90c01pc3MoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuZXZTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuc2hTaG90TWlzc2VzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBvc2l0aW9uQXR0YWNrU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wb3NpdGlvbkF0dGFja1Nob3RzT25Hb2FsICsgdGhpcy5wb3NpdGlvbkF0dGFja1Nob3RzTWlzcztcbiAgfVxuXG4gIGdldCBwb3NpdGlvbkF0dGFja0dvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5wb3NpdGlvbkF0dGFja0dvYWxzIHx8ICF0aGlzLnBvc2l0aW9uQXR0YWNrU2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5wb3NpdGlvbkF0dGFja0dvYWxzIC8gdGhpcy5wb3NpdGlvbkF0dGFja1Nob3RzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IHRvdGFsSW5HYW1lR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy50b3RhbENlbnRlckZvcndhcmRHb2FscyArIHRoaXMudG90YWxNYW5ldXZlckdvYWxzICsgdGhpcy50b3RhbENvdW50ZXJBdHRhY2tHb2FscyArIHRoaXMucG9zaXRpb25BdHRhY2tHb2FscyArXG4gICAgICB0aGlzLnRvdGFsUGVyaW1ldHJTaG90R29hbHMgKyB0aGlzLnRvdGFsUG9zdFNob3RHb2FscyArIHRoaXMudG90YWxGYXN0U2hvdEdvYWxzO1xuICB9XG5cbiAgZ2V0IHBwR29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsUHBHb2FscyB8fCAhdGhpcy5wcFNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxQcEdvYWxzIC8gdGhpcy5wcFNob3RzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IGV2R29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsRXZHb2FscyB8fCAhdGhpcy5ldlNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxFdkdvYWxzIC8gdGhpcy5ldlNob3RzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IHNoR29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsU2hHb2FscyB8fCAhdGhpcy5zaFNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxTaEdvYWxzIC8gdGhpcy5zaFNob3RzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IHNob3RzT25Hb2FsUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5zaG90c09uR29hbCB8fCAhdGhpcy5zaG90cykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnNob3RzT25Hb2FsIC8gdGhpcy5zaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCBnb2Fsc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMuZ29hbHMgfHwgIXRoaXMuc2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5nb2FscyAvIHRoaXMuc2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgdG90YWxHb2Fsc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMudG90YWxHb2FscyB8fCAhdGhpcy50b3RhbFNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxHb2FscyAvIHRoaXMudG90YWxTaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCBmYWNlT2ZmUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5mYWNlT2ZmV2lucyB8fCAhdGhpcy5mYWNlT2Zmcykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLmZhY2VPZmZXaW5zIC8gdGhpcy5mYWNlT2ZmcykgLyAxMDtcbiAgfVxuXG4gIGdldCBzaG9vdG91dEdvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5zaG9vdG91dEdvYWxzIHx8ICF0aGlzLnNob290b3V0U2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5zaG9vdG91dEdvYWxzIC8gdGhpcy5zaG9vdG91dFNob3RzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IGdvYWxwYXNzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnRvdGFsR29hbHMgfHwgMCkgKyAodGhpcy5hc3Npc3RzIHx8IDApO1xuICB9XG5cbiAgLypnb2FsaWUgc3RhdCAqL1xuICBnZXQgcG9zaXRpb25BdHRhY2tTYXZlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFNhdmVzIHx8IDApICsgKHRoaXMuc2hTYXZlcyB8fCAwKSArICh0aGlzLmV2U2F2ZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zaXRpb25BdHRhY2tTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wb3NpdGlvbkF0dGFja1NhdmVzICsgKHRoaXMuZ29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IHBvc2l0aW9uQXR0YWNrU2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnBvc2l0aW9uQXR0YWNrU2F2ZXMgfHwgIXRoaXMucG9zaXRpb25BdHRhY2tTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5wb3NpdGlvbkF0dGFja1NhdmVzIC8gdGhpcy5wb3NpdGlvbkF0dGFja1Nob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIGdldCBjb3VudGVyQXR0YWNrU2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDb3VudGVyQXR0YWNrU2F2ZXMgfHwgMCkgKyAodGhpcy5zaENvdW50ZXJBdHRhY2tTYXZlcyB8fCAwKSArICh0aGlzLmV2Q291bnRlckF0dGFja1NhdmVzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNvdW50ZXJBdHRhY2tTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jb3VudGVyQXR0YWNrU2F2ZXMgKyAodGhpcy5jb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IGNvdW50ZXJBdHRhY2tTYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMuY291bnRlckF0dGFja1NhdmVzIHx8ICF0aGlzLmNvdW50ZXJBdHRhY2tTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5jb3VudGVyQXR0YWNrU2F2ZXMgLyB0aGlzLmNvdW50ZXJBdHRhY2tTaG90c0FnYWluc3QpIC8gMTA7XG4gIH1cblxuXG4gIGdldCBjZW50ZXJGb3J3YXJkU2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDZW50ZXJGb3J3YXJkU2F2ZXMgfHwgMCkgKyAodGhpcy5zaENlbnRlckZvcndhcmRTYXZlcyB8fCAwKSArICh0aGlzLmV2Q2VudGVyRm9yd2FyZFNhdmVzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNlbnRlckZvcndhcmRTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jZW50ZXJGb3J3YXJkU2F2ZXMgKyAodGhpcy5jZW50ZXJGb3J3YXJkR29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IGNlbnRlckZvcndhcmRTYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMuY2VudGVyRm9yd2FyZFNhdmVzIHx8ICF0aGlzLmNlbnRlckZvcndhcmRTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5jZW50ZXJGb3J3YXJkU2F2ZXMgLyB0aGlzLmNlbnRlckZvcndhcmRTaG90c0FnYWluc3QpIC8gMTA7XG4gIH1cblxuICBnZXQgbWFuZXV2ZXJTYXZlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcE1hbmV1dmVyU2F2ZXMgfHwgMCkgKyAodGhpcy5zaE1hbmV1dmVyU2F2ZXMgfHwgMCkgKyAodGhpcy5ldk1hbmV1dmVyU2F2ZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgbWFuZXV2ZXJTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5tYW5ldXZlclNhdmVzICsgKHRoaXMubWFuZXV2ZXJHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgbWFuZXV2ZXJTYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMubWFuZXV2ZXJTYXZlcyB8fCAhdGhpcy5tYW5ldXZlclNob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLm1hbmV1dmVyU2F2ZXMgLyB0aGlzLm1hbmV1dmVyU2hvdHNBZ2FpbnN0KSAvIDEwO1xuICB9XG5cbiAgZ2V0IGZyZWVLaWNrU2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBGcmVlS2lja1NhdmVzIHx8IDApICsgKHRoaXMuc2hGcmVlS2lja1NhdmVzIHx8IDApICsgKHRoaXMuZXZGcmVlS2lja1NhdmVzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGZyZWVLaWNrU2hvdHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZnJlZUtpY2tTYXZlcyArICh0aGlzLmZyZWVLaWNrR29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IGZyZWVLaWNrU2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLmZyZWVLaWNrU2F2ZXMgfHwgIXRoaXMuZnJlZUtpY2tTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5mcmVlS2lja1NhdmVzIC8gdGhpcy5mcmVlS2lja1Nob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIGdldCBjb3JuZXJTYXZlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENvcm5lclNhdmVzIHx8IDApICsgKHRoaXMuc2hDb3JuZXJTYXZlcyB8fCAwKSArICh0aGlzLmV2Q29ybmVyU2F2ZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgY29ybmVyU2hvdHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY29ybmVyU2F2ZXMgKyAodGhpcy5jb3JuZXJHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgY29ybmVyU2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLmNvcm5lclNhdmVzIHx8ICF0aGlzLmNvcm5lclNob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLmNvcm5lclNhdmVzIC8gdGhpcy5jb3JuZXJTaG90c0FnYWluc3QpIC8gMTA7XG4gIH1cblxuICBnZXQgcGVyaW1ldHJTaG90U2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBQZXJpbWV0clNob3RTYXZlcyB8fCAwKSArICh0aGlzLnNoUGVyaW1ldHJTaG90U2F2ZXMgfHwgMCkgKyAodGhpcy5ldlBlcmltZXRyU2hvdFNhdmVzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBlcmltZXRyU2hvdHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucGVyaW1ldHJTaG90U2F2ZXMgKyAodGhpcy5wZXJpbWV0clNob3RHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgcGVyaW1ldHJTaG90U2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnBlcmltZXRyU2hvdFNhdmVzIHx8ICF0aGlzLnBlcmltZXRyU2hvdHNBZ2FpbnN0KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMucGVyaW1ldHJTaG90U2F2ZXMgLyB0aGlzLnBlcmltZXRyU2hvdHNBZ2FpbnN0KSAvIDEwO1xuICB9XG5cbiAgZ2V0IHBvc3RTaG90U2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBQb3N0U2hvdFNhdmVzIHx8IDApICsgKHRoaXMuc2hQb3N0U2hvdFNhdmVzIHx8IDApICsgKHRoaXMuZXZQb3N0U2hvdFNhdmVzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBvc3RTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wb3N0U2hvdFNhdmVzICsgKHRoaXMucG9zdFNob3RHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zdFNob3RTYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMucG9zdFNob3RTYXZlcyB8fCAhdGhpcy5wb3N0U2hvdHNBZ2FpbnN0KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMucG9zdFNob3RTYXZlcyAvIHRoaXMucG9zdFNob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIGdldCBmYXN0U2hvdFNhdmVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwRmFzdFNob3RTYXZlcyB8fCAwKSArICh0aGlzLnNoRmFzdFNob3RTYXZlcyB8fCAwKSArICh0aGlzLmV2RmFzdFNob3RTYXZlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBmYXN0U2hvdHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZmFzdFNob3RTYXZlcyArICh0aGlzLmZhc3RTaG90R29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IGZhc3RTaG90U2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLmZhc3RTaG90U2F2ZXMgfHwgIXRoaXMuZmFzdFNob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLmZhc3RTaG90U2F2ZXMgLyB0aGlzLmZhc3RTaG90c0FnYWluc3QpIC8gMTA7XG4gIH1cblxuXG4gIGdldCBpbkdhbWVTYXZlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5zaFNhdmVzIHx8IDApICsgKHRoaXMuZXZTYXZlcyB8fCAwKSArICh0aGlzLnBwU2F2ZXMgfHwgMCkgK1xuICAgICAgdGhpcy5jb3VudGVyQXR0YWNrU2F2ZXMgKyB0aGlzLm1hbmV1dmVyU2F2ZXMgKyB0aGlzLmNlbnRlckZvcndhcmRTYXZlcyArXG4gICAgICB0aGlzLnBlcmltZXRyU2hvdFNhdmVzICsgdGhpcy5wb3N0U2hvdFNhdmVzICsgdGhpcy5mYXN0U2hvdFNhdmVzO1xuICB9XG5cbiAgZ2V0IHNhdmVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuaW5HYW1lU2F2ZXMgKyB0aGlzLmZyZWVLaWNrU2F2ZXMgKyB0aGlzLmNvcm5lclNhdmVzO1xuICB9XG5cbiAgZ2V0IHRvdGFsU2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zYXZlcyArICh0aGlzLnNob290b3V0U2F2ZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgaW5HYW1lR29hbHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmdvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLmNvdW50ZXJBdHRhY2tHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5tYW5ldXZlckdvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLmNlbnRlckZvcndhcmRHb2Fsc0FnYWluc3QgfHwgMCkgK1xuICAgICAgKHRoaXMucGVyaW1ldHJTaG90R29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMucG9zdFNob3RHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5mYXN0U2hvdEdvYWxzQWdhaW5zdCB8fCAwKTtcbiAgfVxuXG4gIGdldCBzaG9vdG91dFNob3RzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5zaG9vdG91dFNhdmVzIHx8IDApICsgKHRoaXMuc2hvb3RvdXRHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgZ2FtZUdvYWxzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmluR2FtZUdvYWxzQWdhaW5zdCArICh0aGlzLmZyZWVLaWNrR29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuY29ybmVyR29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IHRvdGFsR29hbHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2FtZUdvYWxzQWdhaW5zdCArICh0aGlzLnNob290b3V0R29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IGdhbWVTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zYXZlcyArIHRoaXMuZ2FtZUdvYWxzQWdhaW5zdDtcbiAgfVxuXG4gIGdldCB0b3RhbFNob3RzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdhbWVTaG90c0FnYWluc3QgKyB0aGlzLnNob290b3V0U2hvdHNBZ2FpbnN0O1xuICB9XG5cbiAgZ2V0IHNob290b3V0U2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnNob290b3V0U2F2ZXMgfHwgIXRoaXMuc2hvb3RvdXRTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5zaG9vdG91dFNhdmVzIC8gdGhpcy5zaG9vdG91dFNob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIGdldCBzYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMuc2F2ZXMgfHwgIXRoaXMuZ2FtZVNob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnNhdmVzIC8gdGhpcy5nYW1lU2hvdHNBZ2FpbnN0KSAvIDEwO1xuICB9XG5cbiAgZ2V0IHRvdGFsU2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsU2F2ZXMgfHwgIXRoaXMudG90YWxTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbFNhdmVzIC8gdGhpcy50b3RhbFNob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIGdldCB0b3RhbFNoU2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hDb3VudGVyQXR0YWNrU2F2ZXMgfHwgMCkgKyAodGhpcy5zaE1hbmV1dmVyU2F2ZXMgfHwgMCkgKyAodGhpcy5zaENlbnRlckZvcndhcmRTYXZlcyB8fCAwKSArXG4gICAgICAodGhpcy5zaFNhdmVzIHx8IDApICsgKHRoaXMuc2hGcmVlS2lja1NhdmVzIHx8IDApICsgKHRoaXMuc2hDb3JuZXJTYXZlcyB8fCAwKSArXG4gICAgICAodGhpcy5zaFBlcmltZXRyU2hvdFNhdmVzKSArICh0aGlzLnNoUG9zdFNob3RTYXZlcykgKyAodGhpcy5zaEZhc3RTaG90U2F2ZXMpO1xuICB9XG5cbiAgZ2V0IHRvdGFsU2hHb2Fsc0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5zaEZyZWVLaWNrR29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuc2hDb3JuZXJHb2Fsc0FnYWluc3QgfHwgMCkgK1xuICAgICAgKHRoaXMuc2hDb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuc2hNYW5ldXZlckdvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLnNoQ2VudGVyRm9yd2FyZEdvYWxzQWdhaW5zdCB8fCAwKSArXG4gICAgICAodGhpcy5zaFBlcmltZXRyU2hvdEdvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLnNoUG9zdFNob3RHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5zaEZhc3RTaG90R29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IHRvdGFsU2hTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy50b3RhbFNoU2F2ZXMgKyB0aGlzLnRvdGFsU2hHb2Fsc0FnYWluc3Q7XG4gIH1cblxuICBnZXQgdG90YWxTaFNhdmVzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbFNoU2F2ZXMgfHwgIXRoaXMudG90YWxTaFNob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnRvdGFsU2hTYXZlcyAvIHRoaXMudG90YWxTaFNob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIGdldCB0b3RhbEV2U2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuZXZDb3VudGVyQXR0YWNrU2F2ZXMgfHwgMCkgKyAodGhpcy5ldk1hbmV1dmVyU2F2ZXMgfHwgMCkgKyAodGhpcy5ldkNlbnRlckZvcndhcmRTYXZlcyB8fCAwKSArXG4gICAgICAodGhpcy5ldlNhdmVzIHx8IDApICsgKHRoaXMuZXZGcmVlS2lja1NhdmVzIHx8IDApICsgKHRoaXMuZXZDb3JuZXJTYXZlcyB8fCAwKSArXG4gICAgICAodGhpcy5ldlBlcmltZXRyU2hvdFNhdmVzKSArICh0aGlzLmV2UG9zdFNob3RTYXZlcykgKyAodGhpcy5ldkZhc3RTaG90U2F2ZXMpO1xuICB9XG5cbiAgZ2V0IHRvdGFsRXZHb2Fsc0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuZXZHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrR29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuZXZDb3JuZXJHb2Fsc0FnYWluc3QgfHwgMCkgK1xuICAgICAgKHRoaXMuZXZDb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuZXZNYW5ldXZlckdvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLmV2Q2VudGVyRm9yd2FyZEdvYWxzQWdhaW5zdCB8fCAwKSArXG4gICAgICAodGhpcy5ldlBlcmltZXRyU2hvdEdvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLmV2UG9zdFNob3RHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5ldkZhc3RTaG90R29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IHRvdGFsRXZTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy50b3RhbEV2U2F2ZXMgKyB0aGlzLnRvdGFsRXZHb2Fsc0FnYWluc3Q7XG4gIH1cblxuICBnZXQgdG90YWxFdlNhdmVzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbEV2U2F2ZXMgfHwgIXRoaXMudG90YWxFdlNob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnRvdGFsRXZTYXZlcyAvIHRoaXMudG90YWxFdlNob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIEBUb0Zyb250SG9va1xuICBzdGF0aWMgdG9Gcm9udChkYXRhOiBhbnkpOiBhbnkge31cblxuICBAVG9CYWNrSG9va1xuICBzdGF0aWMgdG9CYWNrKGRhdGE6IGFueSk6IGFueSB7fVxufVxuIl19
844
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2F0ZXJwb2xvLWdhbWUtc3RhdGlzdGljLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbW9kZWxzL3dhdGVycG9sby1nYW1lLXN0YXRpc3RpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsTUFBTSxRQUFRLENBQUM7SUF5TzdFLHNCQUFzQixTQUF0QixzQkFBdUIsU0FBUSxTQUFTO0lBa09uRCxJQUFJLEVBQUU7UUFDSixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUN4QixPQUFPLE9BQU8sQ0FBQztTQUNoQjtRQUNELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNyRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsT0FBTyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQy9ELE9BQU8sR0FBRyxPQUFPLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxPQUFPLElBQUksT0FBTyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUM7SUFDakYsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLENBQUMsR0FBSSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVELElBQUksdUJBQXVCO1FBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLEdBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDakgsQ0FBQztJQUVELElBQUksb0JBQW9CO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDMUgsQ0FBQztJQUVELElBQUksb0JBQW9CO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDMUgsQ0FBQztJQUVELElBQUksb0JBQW9CO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDMUgsQ0FBQztJQUVELElBQUksdUJBQXVCO1FBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLElBQUks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LEVBQUUsd0JBQXdCO1lBQ3BELHVCQUF1QixFQUFFLHNCQUFzQjtZQUUvQyxrQkFBa0IsRUFBRSxpQkFBaUI7WUFDckMscUJBQXFCLEVBQUUsbUJBQW1CO1lBQzFDLG1CQUFtQixFQUFFLGtCQUFrQjtZQUN2QyxxQkFBcUIsRUFBRSxvQkFBb0I7WUFDM0Msa0JBQWtCLEVBQUUsaUJBQWlCO1lBQ3JDLHFCQUFxQixFQUFFLG1CQUFtQjtZQUMxQyxtQkFBbUIsRUFBRSxrQkFBa0I7WUFDdkMscUJBQXFCLEVBQUUsb0JBQW9CO1lBQzNDLGtCQUFrQixFQUFFLGlCQUFpQjtZQUNyQyxxQkFBcUIsRUFBRSxtQkFBbUI7WUFDMUMsbUJBQW1CLEVBQUUsa0JBQWtCO1lBQ3ZDLHFCQUFxQixFQUFFLG9CQUFvQjtZQUMzQyxrQkFBa0IsRUFBRSxpQkFBaUI7WUFDckMsa0JBQWtCLEVBQUUsaUJBQWlCO1lBQ3JDLGtCQUFrQixFQUFFLGlCQUFpQjtZQUNyQywwQkFBMEIsRUFBRSx3QkFBd0I7WUFDcEQsMEJBQTBCLEVBQUUsd0JBQXdCO1lBQ3BELDBCQUEwQixFQUFFLHdCQUF3QjtZQUNwRCx1QkFBdUIsRUFBRSxzQkFBc0I7U0FDaEQ7UUFDRCxRQUFRLEVBQUU7WUFDUixTQUFTLEVBQUUsYUFBYTtTQUN6QjtLQUNGLENBQUM7R0FDVyxzQkFBc0IsQ0EyOUJsQztTQTM5Qlksc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kZWxJbnN0YW5jZSwgQmFzZU1vZGVsLCBUb0Zyb250SG9vaywgVG9CYWNrSG9vaywgRGF0ZVRpbWVGaWVsZCB9IGZyb20gJy4vdXRpbCc7XG5pbXBvcnQgeyBHYW1lU3RhdGlzdGljQmFzZSB9IGZyb20gJy4vZ2FtZS1zdGF0aXN0aWMtYmFzZSc7XG5cbkBNb2RlbEluc3RhbmNlKHtcbiAgbWFwcGluZ0ZpZWxkczoge1xuICAgIGdhbWVfdXNlcl9pZDogJ2dhbWVVc2VySWQnLFxuICAgIHVwZGF0ZWRfYXQ6ICd1cGRhdGVkQXQnLFxuICAgIHBvaW50czogJ3BvaW50cycsXG4gICAgcHBfc2hvdF9taXNzZXM6ICdwcFNob3RNaXNzZXMnLFxuICAgIHBwX3Nob3RzX29uX2dvYWw6ICdwcFNob3RzT25Hb2FsJyxcbiAgICBwcF9zaG90c19ibG9ja2VkOiAncHBTaG90c0Jsb2NrZWQnLFxuICAgIGV2X3Nob3RfbWlzc2VzOiAnZXZTaG90TWlzc2VzJyxcbiAgICBldl9zaG90c19vbl9nb2FsOiAnZXZTaG90c09uR29hbCcsXG4gICAgZXZfc2hvdHNfYmxvY2tlZDogJ2V2U2hvdHNCbG9ja2VkJyxcbiAgICBzaF9zaG90X21pc3NlczogJ3NoU2hvdE1pc3NlcycsXG4gICAgc2hfc2hvdHNfb25fZ29hbDogJ3NoU2hvdHNPbkdvYWwnLFxuICAgIHNoX3Nob3RzX2Jsb2NrZWQ6ICdzaFNob3RzQmxvY2tlZCcsXG4gICAgcHBfdG90YWxfc2hvdHNfb25fZ29hbDogJ3BwVG90YWxTaG90c09uR29hbCcsXG4gICAgZXZfdG90YWxfc2hvdHNfb25fZ29hbDogJ2V2VG90YWxTaG90c09uR29hbCcsXG4gICAgc2hfdG90YWxfc2hvdHNfb25fZ29hbDogJ3NoVG90YWxTaG90c09uR29hbCcsXG4gICAgcHBfZ29hbHM6ICdwcEdvYWxzJyxcbiAgICBldl9nb2FsczogJ2V2R29hbHMnLFxuICAgIHNoX2dvYWxzOiAnc2hHb2FscycsXG4gICAgcHBfY291bnRlcmF0dGFja19nb2FsczogJ3BwQ291bnRlckF0dGFja0dvYWxzJyxcbiAgICBwcF9jb3VudGVyYXR0YWNrX29uX2dvYWxzOiAncHBDb3VudGVyQXR0YWNrT25Hb2FscycsXG4gICAgcHBfY291bnRlcmF0dGFja19taXNzZXM6ICdwcENvdW50ZXJBdHRhY2tNaXNzZXMnLFxuICAgIHBwX2NvdW50ZXJhdHRhY2tfc2hvdHNfYmxvY2tlZDogJ3BwQ291bnRlckF0dGFja1Nob3RzQmxvY2tlZCcsXG4gICAgZXZfY291bnRlcmF0dGFja19nb2FsczogJ2V2Q291bnRlckF0dGFja0dvYWxzJyxcbiAgICBldl9jb3VudGVyYXR0YWNrX29uX2dvYWxzOiAnZXZDb3VudGVyQXR0YWNrT25Hb2FscycsXG4gICAgZXZfY291bnRlcmF0dGFja19taXNzZXM6ICdldkNvdW50ZXJBdHRhY2tNaXNzZXMnLFxuICAgIGV2X2NvdW50ZXJhdHRhY2tfc2hvdHNfYmxvY2tlZDogJ2V2Q291bnRlckF0dGFja1Nob3RzQmxvY2tlZCcsXG4gICAgc2hfY291bnRlcmF0dGFja19nb2FsczogJ3NoQ291bnRlckF0dGFja0dvYWxzJyxcbiAgICBzaF9jb3VudGVyYXR0YWNrX29uX2dvYWxzOiAnc2hDb3VudGVyQXR0YWNrT25Hb2FscycsXG4gICAgc2hfY291bnRlcmF0dGFja19taXNzZXM6ICdzaENvdW50ZXJBdHRhY2tNaXNzZXMnLFxuICAgIHNoX2NvdW50ZXJhdHRhY2tfc2hvdHNfYmxvY2tlZDogJ3NoQ291bnRlckF0dGFja1Nob3RzQmxvY2tlZCcsXG4gICAgcHBfbWFuZXV2ZXJfZ29hbHM6ICdwcE1hbmV1dmVyR29hbHMnLFxuICAgIHBwX21hbmV1dmVyX29uX2dvYWxzOiAncHBNYW5ldXZlck9uR29hbHMnLFxuICAgIHBwX21hbmV1dmVyX21pc3NlczogJ3BwTWFuZXV2ZXJNaXNzZXMnLFxuICAgIHBwX21hbmV1dmVyX3Nob3RzX2Jsb2NrZWQ6ICdwcE1hbmV1dmVyU2hvdHNCbG9ja2VkJyxcbiAgICBldl9tYW5ldXZlcl9nb2FsczogJ2V2TWFuZXV2ZXJHb2FscycsXG4gICAgZXZfbWFuZXV2ZXJfb25fZ29hbHM6ICdldk1hbmV1dmVyT25Hb2FscycsXG4gICAgZXZfbWFuZXV2ZXJfbWlzc2VzOiAnZXZNYW5ldXZlck1pc3NlcycsXG4gICAgZXZfbWFuZXV2ZXJfc2hvdHNfYmxvY2tlZDogJ2V2TWFuZXV2ZXJTaG90c0Jsb2NrZWQnLFxuICAgIHNoX21hbmV1dmVyX2dvYWxzOiAnc2hNYW5ldXZlckdvYWxzJyxcbiAgICBzaF9tYW5ldXZlcl9vbl9nb2FsczogJ3NoTWFuZXV2ZXJPbkdvYWxzJyxcbiAgICBzaF9tYW5ldXZlcl9taXNzZXM6ICdzaE1hbmV1dmVyTWlzc2VzJyxcbiAgICBzaF9tYW5ldXZlcl9zaG90c19ibG9ja2VkOiAnc2hNYW5ldXZlclNob3RzQmxvY2tlZCcsXG4gICAgcHBfY2VudGVyX2ZvcndhcmRfZ29hbHM6ICdwcENlbnRlckZvcndhcmRHb2FscycsXG4gICAgcHBfY2VudGVyX2ZvcndhcmRfb25fZ29hbHM6ICdwcENlbnRlckZvcndhcmRPbkdvYWxzJyxcbiAgICBwcF9jZW50ZXJfZm9yd2FyZF9taXNzZXM6ICdwcENlbnRlckZvcndhcmRNaXNzZXMnLFxuICAgIHBwX2NlbnRlcl9mb3J3YXJkX3Nob3RzX2Jsb2NrZWQ6ICdwcENlbnRlckZvcndhcmRTaG90c0Jsb2NrZWQnLFxuICAgIGV2X2NlbnRlcl9mb3J3YXJkX2dvYWxzOiAnZXZDZW50ZXJGb3J3YXJkR29hbHMnLFxuICAgIGV2X2NlbnRlcl9mb3J3YXJkX29uX2dvYWxzOiAnZXZDZW50ZXJGb3J3YXJkT25Hb2FscycsXG4gICAgZXZfY2VudGVyX2ZvcndhcmRfbWlzc2VzOiAnZXZDZW50ZXJGb3J3YXJkTWlzc2VzJyxcbiAgICBldl9jZW50ZXJfZm9yd2FyZF9zaG90c19ibG9ja2VkOiAnZXZDZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkJyxcbiAgICBzaF9jZW50ZXJfZm9yd2FyZF9nb2FsczogJ3NoQ2VudGVyRm9yd2FyZEdvYWxzJyxcbiAgICBzaF9jZW50ZXJfZm9yd2FyZF9vbl9nb2FsczogJ3NoQ2VudGVyRm9yd2FyZE9uR29hbHMnLFxuICAgIHNoX2NlbnRlcl9mb3J3YXJkX21pc3NlczogJ3NoQ2VudGVyRm9yd2FyZE1pc3NlcycsXG4gICAgc2hfY2VudGVyX2ZvcndhcmRfc2hvdHNfYmxvY2tlZDogJ3NoQ2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZCcsXG4gICAgcHBfYXNzaXN0czogJ3BwQXNzaXN0cycsXG4gICAgZXZfYXNzaXN0czogJ2V2QXNzaXN0cycsXG4gICAgc2hfYXNzaXN0czogJ3NoQXNzaXN0cycsXG4gICAgc2hvb3RvdXRfYXR0ZW1wdHM6ICdzaG9vdG91dEF0dGVtcHRzJyxcbiAgICBzaG9vdG91dF9nb2FsczogJ3Nob290b3V0R29hbHMnLFxuICAgIGFmdGVyX2dhbWVfc2hvb3RvdXRfYXR0ZW1wdHM6ICdhZnRlckdhbWVTaG9vdG91dEF0dGVtcHRzJyxcbiAgICBhZnRlcl9nYW1lX3Nob290b3V0X2dvYWxzOiAnYWZ0ZXJHYW1lU2hvb3RvdXRHb2FscycsXG4gICAgYmxvY2tfc2hvdHM6ICdibG9ja1Nob3RzJyxcbiAgICBmYWNlX29mZl9sb3NzZXM6ICdmYWNlT2ZmTG9zc2VzJyxcbiAgICBmYWNlX29mZl93aW5zOiAnZmFjZU9mZldpbnMnLFxuICAgIHBwX3NhdmVzOiAncHBTYXZlcycsXG4gICAgc2hfc2F2ZXM6ICdzaFNhdmVzJyxcbiAgICBldl9zYXZlczogJ2V2U2F2ZXMnLFxuICAgIHBwX2NvdW50ZXJhdHRhY2tfc2F2ZXM6ICdwcENvdW50ZXJBdHRhY2tTYXZlcycsXG4gICAgc2hfY291bnRlcmF0dGFja19zYXZlczogJ3NoQ291bnRlckF0dGFja1NhdmVzJyxcbiAgICBldl9jb3VudGVyYXR0YWNrX3NhdmVzOiAnZXZDb3VudGVyQXR0YWNrU2F2ZXMnLFxuICAgIHBwX21hbmV1dmVyX3NhdmVzOiAncHBNYW5ldXZlclNhdmVzJyxcbiAgICBzaF9tYW5ldXZlcl9zYXZlczogJ3NoTWFuZXV2ZXJTYXZlcycsXG4gICAgZXZfbWFuZXV2ZXJfc2F2ZXM6ICdldk1hbmV1dmVyU2F2ZXMnLFxuICAgIHBwX2NlbnRlcl9mb3J3YXJkX3NhdmVzOiAncHBDZW50ZXJGb3J3YXJkU2F2ZXMnLFxuICAgIHNoX2NlbnRlcl9mb3J3YXJkX3NhdmVzOiAnc2hDZW50ZXJGb3J3YXJkU2F2ZXMnLFxuICAgIGV2X2NlbnRlcl9mb3J3YXJkX3NhdmVzOiAnZXZDZW50ZXJGb3J3YXJkU2F2ZXMnLFxuICAgIHBwX2ZyZWVfa2lja19zYXZlczogJ3BwRnJlZUtpY2tTYXZlcycsXG4gICAgc2hfZnJlZV9raWNrX3NhdmVzOiAnc2hGcmVlS2lja1NhdmVzJyxcbiAgICBldl9mcmVlX2tpY2tfc2F2ZXM6ICdldkZyZWVLaWNrU2F2ZXMnLFxuICAgIHBwX2Nvcm5lcl9zYXZlczogJ3BwQ29ybmVyU2F2ZXMnLFxuICAgIHNoX2Nvcm5lcl9zYXZlczogJ3NoQ29ybmVyU2F2ZXMnLFxuICAgIGV2X2Nvcm5lcl9zYXZlczogJ2V2Q29ybmVyU2F2ZXMnLFxuICAgIHBwX3RvdGFsX2dhbWVfc2F2ZXM6ICdwcFRvdGFsR2FtZVNhdmVzJyxcbiAgICBzaF90b3RhbF9nYW1lX3NhdmVzOiAnc2hUb3RhbEdhbWVTYXZlcycsXG4gICAgZXZfdG90YWxfZ2FtZV9zYXZlczogJ2V2VG90YWxHYW1lU2F2ZXMnLFxuICAgIHNob290b3V0X3NhdmVzOiAnc2hvb3RvdXRTYXZlcycsXG4gICAgYWZ0ZXJfZ2FtZV9zaG9vdG91dF9zYXZlczogJ2FmdGVyR2FtZVNob290b3V0U2F2ZXMnLFxuICAgIHBwX2dvYWxzX2FnYWluc3Q6ICdwcEdvYWxzQWdhaW5zdCcsXG4gICAgc2hfZ29hbHNfYWdhaW5zdDogJ3NoR29hbHNBZ2FpbnN0JyxcbiAgICBldl9nb2Fsc19hZ2FpbnN0OiAnZXZHb2Fsc0FnYWluc3QnLFxuICAgIGdvYWxzX2FnYWluc3Q6ICdnb2Fsc0FnYWluc3QnLFxuICAgIHBwX2NvdW50ZXJhdHRhY2tfZ29hbHNfYWdhaW5zdDogJ3BwQ291bnRlckF0dGFja0dvYWxzQWdhaW5zdCcsXG4gICAgc2hfY291bnRlcmF0dGFja19nb2Fsc19hZ2FpbnN0OiAnc2hDb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0JyxcbiAgICBldl9jb3VudGVyYXR0YWNrX2dvYWxzX2FnYWluc3Q6ICdldkNvdW50ZXJBdHRhY2tHb2Fsc0FnYWluc3QnLFxuICAgIGNvdW50ZXJhdHRhY2tfZ29hbHNfYWdhaW5zdDogJ2NvdW50ZXJBdHRhY2tHb2Fsc0FnYWluc3QnLFxuICAgIHBwX21hbmV1dmVyX2dvYWxzX2FnYWluc3Q6ICdwcE1hbmV1dmVyR29hbHNBZ2FpbnN0JyxcbiAgICBzaF9tYW5ldXZlcl9nb2Fsc19hZ2FpbnN0OiAnc2hNYW5ldXZlckdvYWxzQWdhaW5zdCcsXG4gICAgZXZfbWFuZXV2ZXJfZ29hbHNfYWdhaW5zdDogJ2V2TWFuZXV2ZXJHb2Fsc0FnYWluc3QnLFxuICAgIG1hbmV1dmVyX2dvYWxzX2FnYWluc3Q6ICdtYW5ldXZlckdvYWxzQWdhaW5zdCcsXG4gICAgcHBfY2VudGVyX2ZvcndhcmRfZ29hbHNfYWdhaW5zdDogJ3BwQ2VudGVyRm9yd2FyZEdvYWxzQWdhaW5zdCcsXG4gICAgc2hfY2VudGVyX2ZvcndhcmRfZ29hbHNfYWdhaW5zdDogJ3NoQ2VudGVyRm9yd2FyZEdvYWxzQWdhaW5zdCcsXG4gICAgZXZfY2VudGVyX2ZvcndhcmRfZ29hbHNfYWdhaW5zdDogJ2V2Q2VudGVyRm9yd2FyZEdvYWxzQWdhaW5zdCcsXG4gICAgY2VudGVyX2ZvcndhcmRfZ29hbHNfYWdhaW5zdDogJ2NlbnRlckZvcndhcmRHb2Fsc0FnYWluc3QnLFxuICAgIHBwX2ZyZWVfa2lja19nb2Fsc19hZ2FpbnN0OiAncHBGcmVlS2lja0dvYWxzQWdhaW5zdCcsXG4gICAgc2hfZnJlZV9raWNrX2dvYWxzX2FnYWluc3Q6ICdzaEZyZWVLaWNrR29hbHNBZ2FpbnN0JyxcbiAgICBldl9mcmVlX2tpY2tfZ29hbHNfYWdhaW5zdDogJ2V2RnJlZUtpY2tHb2Fsc0FnYWluc3QnLFxuICAgIGZyZWVfa2lja19nb2Fsc19hZ2FpbnN0OiAnZnJlZUtpY2tHb2Fsc0FnYWluc3QnLFxuICAgIHBwX2Nvcm5lcl9nb2Fsc19hZ2FpbnN0OiAncHBDb3JuZXJHb2Fsc0FnYWluc3QnLFxuICAgIHNoX2Nvcm5lcl9nb2Fsc19hZ2FpbnN0OiAnc2hDb3JuZXJHb2Fsc0FnYWluc3QnLFxuICAgIGV2X2Nvcm5lcl9nb2Fsc19hZ2FpbnN0OiAnZXZDb3JuZXJHb2Fsc0FnYWluc3QnLFxuICAgIGNvcm5lcl9nb2Fsc19hZ2FpbnN0OiAnY29ybmVyR29hbHNBZ2FpbnN0JyxcbiAgICBzaG9vdG91dF9nb2Fsc19hZ2FpbnN0OiAnc2hvb3RvdXRHb2Fsc0FnYWluc3QnLFxuICAgIGFmdGVyX2dhbWVfc2hvb3RvdXRfZ29hbHNfYWdhaW5zdDogJ2FmdGVyR2FtZVNob290b3V0R29hbHNBZ2FpbnN0JyxcbiAgICBzYWZldHlfcmF0ZTogJ3NhZmV0eVJhdGUnLFxuICAgIHBlbmFsdHlfbWludXRlczogJ3BlbmFsdHlNaW51dGVzJyxcbiAgICBnYW1lX3RpbWU6ICdnYW1lVGltZScsXG4gICAgcGx1c19taW51czogJ3BsdXNNaW51cycsXG4gICAgZm91bHM6ICdmb3VscycsXG4gICAgbWlub3JfcGVuYWx0aWVzOiAnbWlub3JQZW5hbHRpZXMnLFxuICAgIG1ham9yX3BlbmFsdGllczogJ21ham9yUGVuYWx0aWVzJyxcbiAgICBtYXRjaF9wZW5hbHRpZXM6ICdtYXRjaFBlbmFsdGllcycsXG4gICAgcGVuYWx0eV9mb3VsczogJ3BlbmFsdHlGb3VscycsXG4gICAgdHVybm92ZXJzOiAndHVybm92ZXJzJyxcbiAgICBhdHRhY2tfZm91bHM6ICdhdHRhY2tGb3VscycsXG4gICAgcGVyc29uYWxfZm91bHM6ICdwZXJzb25hbEZvdWxzJyxcbiAgICBkcmF3bl9mb3VsczogJ2RyYXduRm91bHMnLFxuICAgIGRyYXduX3R1cm5vdmVyczogJ2RyYXduVHVybm92ZXJzJyxcbiAgICB5ZWxsb3dfY2FyZHM6ICd5ZWxsb3dDYXJkcycsXG4gICAgcmVkX2NhcmRzOiAncmVkQ2FyZHMnLFxuICAgIGxvc3NlczogJ2xvc3NlcycsXG4gICAgc3RlYWxzOiAnc3RlYWxzJyxcbiAgICBwcF9mcmVlX2tpY2tfZ29hbHM6ICdwcEZyZWVLaWNrR29hbHMnLFxuICAgIHBwX2ZyZWVfa2lja19vbl9nb2FsczogJ3BwRnJlZUtpY2tPbkdvYWxzJyxcbiAgICBwcF9mcmVlX2tpY2tfbWlzc2VzOiAncHBGcmVlS2lja01pc3NlcycsXG4gICAgcHBfZnJlZV9raWNrX3Nob3RzX2Jsb2NrZWQ6ICdwcEZyZWVLaWNrU2hvdHNCbG9ja2VkJyxcbiAgICBzaF9mcmVlX2tpY2tfZ29hbHM6ICdzaEZyZWVLaWNrR29hbHMnLFxuICAgIHNoX2ZyZWVfa2lja19vbl9nb2FsczogJ3NoRnJlZUtpY2tPbkdvYWxzJyxcbiAgICBzaF9mcmVlX2tpY2tfbWlzc2VzOiAnc2hGcmVlS2lja01pc3NlcycsXG4gICAgc2hfZnJlZV9raWNrX3Nob3RzX2Jsb2NrZWQ6ICdzaEZyZWVLaWNrU2hvdHNCbG9ja2VkJyxcbiAgICBldl9mcmVlX2tpY2tfZ29hbHM6ICdldkZyZWVLaWNrR29hbHMnLFxuICAgIGV2X2ZyZWVfa2lja19vbl9nb2FsczogJ2V2RnJlZUtpY2tPbkdvYWxzJyxcbiAgICBldl9mcmVlX2tpY2tfbWlzc2VzOiAnZXZGcmVlS2lja01pc3NlcycsXG4gICAgZXZfZnJlZV9raWNrX3Nob3RzX2Jsb2NrZWQ6ICdldkZyZWVLaWNrU2hvdHNCbG9ja2VkJyxcbiAgICBmcmVlX2tpY2tfcGFzc2VzOiAnZnJlZUtpY2tQYXNzZXMnLFxuICAgIGZyZWVfa2lja19zZWxmczogJ2ZyZWVLaWNrU2VsZnMnLFxuICAgIHBwX2Nvcm5lcl9nb2FsczogJ3BwQ29ybmVyR29hbHMnLFxuICAgIHBwX2Nvcm5lcl9vbl9nb2FsczogJ3BwQ29ybmVyT25Hb2FscycsXG4gICAgcHBfY29ybmVyX21pc3NlczogJ3BwQ29ybmVyTWlzc2VzJyxcbiAgICBwcF9jb3JuZXJfc2hvdHNfYmxvY2tlZDogJ3BwQ29ybmVyU2hvdHNCbG9ja2VkJyxcbiAgICBzaF9jb3JuZXJfZ29hbHM6ICdzaENvcm5lckdvYWxzJyxcbiAgICBzaF9jb3JuZXJfb25fZ29hbHM6ICdzaENvcm5lck9uR29hbHMnLFxuICAgIHNoX2Nvcm5lcl9taXNzZXM6ICdzaENvcm5lck1pc3NlcycsXG4gICAgc2hfY29ybmVyX3Nob3RzX2Jsb2NrZWQ6ICdzaENvcm5lclNob3RzQmxvY2tlZCcsXG4gICAgZXZfY29ybmVyX2dvYWxzOiAnZXZDb3JuZXJHb2FscycsXG4gICAgZXZfY29ybmVyX29uX2dvYWxzOiAnZXZDb3JuZXJPbkdvYWxzJyxcbiAgICBldl9jb3JuZXJfbWlzc2VzOiAnZXZDb3JuZXJNaXNzZXMnLFxuICAgIGV2X2Nvcm5lcl9zaG90c19ibG9ja2VkOiAnZXZDb3JuZXJTaG90c0Jsb2NrZWQnLFxuICAgIGNvcm5lcl9wYXNzZXM6ICdjb3JuZXJQYXNzZXMnLFxuICAgIGNvcm5lcl9zZWxmczogJ2Nvcm5lclNlbGZzJyxcbiAgICB0YWNrbGVzOiAndGFja2xlcycsXG4gICAgcGxheWVyX2VmZmljaWVuY3k6ICdwbGF5ZXJFZmZpY2llbmN5JyxcbiAgICBkZWZlbnNlX3NlbGVjdF9wb3NpdGlvbnM6ICdkZWZlbnNlU2VsZWN0UG9zaXRpb25zJyxcbiAgICBzYXZlX3Bvc3Nlc3Npb25zOiAnc2F2ZVBvc3Nlc3Npb25zJyxcblxuICAgIHBwX3BlcmltZXRyX3Nob3RfZ29hbHM6ICdwcFBlcmltZXRyU2hvdEdvYWxzJyxcbiAgICBwcF9wZXJpbWV0cl9zaG90X29uX2dvYWxzOiAncHBQZXJpbWV0clNob3RPbkdvYWxzJyxcbiAgICBwcF9wZXJpbWV0cl9zaG90X21pc3NlczogJ3BwUGVyaW1ldHJTaG90TWlzc2VzJyxcbiAgICBwcF9wZXJpbWV0cl9zaG90c19ibG9ja2VkOiAncHBQZXJpbWV0clNob3RzQmxvY2tlZCcsXG4gICAgZXZfcGVyaW1ldHJfc2hvdF9nb2FsczogJ2V2UGVyaW1ldHJTaG90R29hbHMnLFxuICAgIGV2X3BlcmltZXRyX3Nob3Rfb25fZ29hbHM6ICdldlBlcmltZXRyU2hvdE9uR29hbHMnLFxuICAgIGV2X3BlcmltZXRyX3Nob3RfbWlzc2VzOiAnZXZQZXJpbWV0clNob3RNaXNzZXMnLFxuICAgIGV2X3BlcmltZXRyX3Nob3RzX2Jsb2NrZWQ6ICdldlBlcmltZXRyU2hvdHNCbG9ja2VkJyxcbiAgICBzaF9wZXJpbWV0cl9zaG90X2dvYWxzOiAnc2hQZXJpbWV0clNob3RHb2FscycsXG4gICAgc2hfcGVyaW1ldHJfc2hvdF9vbl9nb2FsczogJ3NoUGVyaW1ldHJTaG90T25Hb2FscycsXG4gICAgc2hfcGVyaW1ldHJfc2hvdF9taXNzZXM6ICdzaFBlcmltZXRyU2hvdE1pc3NlcycsXG4gICAgc2hfcGVyaW1ldHJfc2hvdHNfYmxvY2tlZDogJ3NoUGVyaW1ldHJTaG90c0Jsb2NrZWQnLFxuICAgIHBwX3BlcmltZXRyX3Nob3Rfc2F2ZXM6ICdwcFBlcmltZXRyU2hvdFNhdmVzJyxcbiAgICBzaF9wZXJpbWV0cl9zaG90X3NhdmVzOiAnc2hQZXJpbWV0clNob3RTYXZlcycsXG4gICAgZXZfcGVyaW1ldHJfc2hvdF9zYXZlczogJ2V2UGVyaW1ldHJTaG90U2F2ZXMnLFxuICAgIHBwX3BlcmltZXRyX3Nob3RfZ29hbHNfYWdhaW5zdDogJ3BwUGVyaW1ldHJTaG90R29hbHNBZ2FpbnN0JyxcbiAgICBzaF9wZXJpbWV0cl9zaG90X2dvYWxzX2FnYWluc3Q6ICdzaFBlcmltZXRyU2hvdEdvYWxzQWdhaW5zdCcsXG4gICAgZXZfcGVyaW1ldHJfc2hvdF9nb2Fsc19hZ2FpbnN0OiAnZXZQZXJpbWV0clNob3RHb2Fsc0FnYWluc3QnLFxuICAgIHBlcmltZXRyX3Nob3RfZ29hbHNfYWdhaW5zdDogJ3BlcmltZXRyU2hvdEdvYWxzQWdhaW5zdCcsXG5cbiAgICBwcF9wb3N0X3Nob3RfZ29hbHM6ICdwcFBvc3RTaG90R29hbHMnLFxuICAgIHBwX3Bvc3Rfc2hvdF9vbl9nb2FsczogJ3BwUG9zdFNob3RPbkdvYWxzJyxcbiAgICBwcF9wb3N0X3Nob3RfbWlzc2VzOiAncHBQb3N0U2hvdE1pc3NlcycsXG4gICAgcHBfcG9zdF9zaG90c19ibG9ja2VkOiAncHBQb3N0U2hvdHNCbG9ja2VkJyxcbiAgICBldl9wb3N0X3Nob3RfZ29hbHM6ICdldlBvc3RTaG90R29hbHMnLFxuICAgIGV2X3Bvc3Rfc2hvdF9vbl9nb2FsczogJ2V2UG9zdFNob3RPbkdvYWxzJyxcbiAgICBldl9wb3N0X3Nob3RfbWlzc2VzOiAnZXZQb3N0U2hvdE1pc3NlcycsXG4gICAgZXZfcG9zdF9zaG90c19ibG9ja2VkOiAnZXZQb3N0U2hvdHNCbG9ja2VkJyxcbiAgICBzaF9wb3N0X3Nob3RfZ29hbHM6ICdzaFBvc3RTaG90R29hbHMnLFxuICAgIHNoX3Bvc3Rfc2hvdF9vbl9nb2FsczogJ3NoUG9zdFNob3RPbkdvYWxzJyxcbiAgICBzaF9wb3N0X3Nob3RfbWlzc2VzOiAnc2hQb3N0U2hvdE1pc3NlcycsXG4gICAgc2hfcG9zdF9zaG90c19ibG9ja2VkOiAnc2hQb3N0U2hvdHNCbG9ja2VkJyxcbiAgICBwcF9wb3N0X3Nob3Rfc2F2ZXM6ICdwcFBvc3RTaG90U2F2ZXMnLFxuICAgIHNoX3Bvc3Rfc2hvdF9zYXZlczogJ3NoUG9zdFNob3RTYXZlcycsXG4gICAgZXZfcG9zdF9zaG90X3NhdmVzOiAnZXZQb3N0U2hvdFNhdmVzJyxcbiAgICBwcF9wb3N0X3Nob3RfZ29hbHNfYWdhaW5zdDogJ3BwUG9zdFNob3RHb2Fsc0FnYWluc3QnLFxuICAgIHNoX3Bvc3Rfc2hvdF9nb2Fsc19hZ2FpbnN0OiAnc2hQb3N0U2hvdEdvYWxzQWdhaW5zdCcsXG4gICAgZXZfcG9zdF9zaG90X2dvYWxzX2FnYWluc3Q6ICdldlBvc3RTaG90R29hbHNBZ2FpbnN0JyxcbiAgICBwb3N0X3Nob3RfZ29hbHNfYWdhaW5zdDogJ3Bvc3RTaG90R29hbHNBZ2FpbnN0JyxcblxuICAgIHBwX2Zhc3Rfc2hvdF9nb2FsczogJ3BwRmFzdFNob3RHb2FscycsXG4gICAgcHBfZmFzdF9zaG90X29uX2dvYWxzOiAncHBGYXN0U2hvdE9uR29hbHMnLFxuICAgIHBwX2Zhc3Rfc2hvdF9taXNzZXM6ICdwcEZhc3RTaG90TWlzc2VzJyxcbiAgICBwcF9mYXN0X3Nob3RzX2Jsb2NrZWQ6ICdwcEZhc3RTaG90c0Jsb2NrZWQnLFxuICAgIGV2X2Zhc3Rfc2hvdF9nb2FsczogJ2V2RmFzdFNob3RHb2FscycsXG4gICAgZXZfZmFzdF9zaG90X29uX2dvYWxzOiAnZXZGYXN0U2hvdE9uR29hbHMnLFxuICAgIGV2X2Zhc3Rfc2hvdF9taXNzZXM6ICdldkZhc3RTaG90TWlzc2VzJyxcbiAgICBldl9mYXN0X3Nob3RzX2Jsb2NrZWQ6ICdldkZhc3RTaG90c0Jsb2NrZWQnLFxuICAgIHNoX2Zhc3Rfc2hvdF9nb2FsczogJ3NoRmFzdFNob3RHb2FscycsXG4gICAgc2hfZmFzdF9zaG90X29uX2dvYWxzOiAnc2hGYXN0U2hvdE9uR29hbHMnLFxuICAgIHNoX2Zhc3Rfc2hvdF9taXNzZXM6ICdzaEZhc3RTaG90TWlzc2VzJyxcbiAgICBzaF9mYXN0X3Nob3RzX2Jsb2NrZWQ6ICdzaEZhc3RTaG90c0Jsb2NrZWQnLFxuICAgIHBwX2Zhc3Rfc2hvdF9zYXZlczogJ3BwRmFzdFNob3RTYXZlcycsXG4gICAgc2hfZmFzdF9zaG90X3NhdmVzOiAnc2hGYXN0U2hvdFNhdmVzJyxcbiAgICBldl9mYXN0X3Nob3Rfc2F2ZXM6ICdldkZhc3RTaG90U2F2ZXMnLFxuICAgIHBwX2Zhc3Rfc2hvdF9nb2Fsc19hZ2FpbnN0OiAncHBGYXN0U2hvdEdvYWxzQWdhaW5zdCcsXG4gICAgc2hfZmFzdF9zaG90X2dvYWxzX2FnYWluc3Q6ICdzaEZhc3RTaG90R29hbHNBZ2FpbnN0JyxcbiAgICBldl9mYXN0X3Nob3RfZ29hbHNfYWdhaW5zdDogJ2V2RmFzdFNob3RHb2Fsc0FnYWluc3QnLFxuICAgIGZhc3Rfc2hvdF9nb2Fsc19hZ2FpbnN0OiAnZmFzdFNob3RHb2Fsc0FnYWluc3QnLFxuICB9LFxuICByZWxhdGlvbjoge1xuICAgIHVwZGF0ZWRBdDogRGF0ZVRpbWVGaWVsZCxcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBXYXRlcnBvbG9HYW1lU3RhdGlzdGljIGV4dGVuZHMgQmFzZU1vZGVsIGltcGxlbWVudHMgR2FtZVN0YXRpc3RpY0Jhc2Uge1xuICBnYW1lVXNlcklkOiBudW1iZXI7XG4gIHBvaW50czogbnVtYmVyO1xuICBwcFNob3RNaXNzZXM6IG51bWJlcjtcbiAgcHBTaG90c09uR29hbDogbnVtYmVyO1xuICBwcFNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBldlNob3RNaXNzZXM6IG51bWJlcjtcbiAgZXZTaG90c09uR29hbDogbnVtYmVyO1xuICBldlNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBzaFNob3RNaXNzZXM6IG51bWJlcjtcbiAgc2hTaG90c09uR29hbDogbnVtYmVyO1xuICBzaFNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBwcFRvdGFsU2hvdHNPbkdvYWw6IG51bWJlcjtcbiAgZXZUb3RhbFNob3RzT25Hb2FsOiBudW1iZXI7XG4gIHNoVG90YWxTaG90c09uR29hbDogbnVtYmVyO1xuICBwcEdvYWxzOiBudW1iZXI7XG4gIGV2R29hbHM6IG51bWJlcjtcbiAgc2hHb2FsczogbnVtYmVyO1xuICBwcENvdW50ZXJBdHRhY2tHb2FsczogbnVtYmVyO1xuICBwcENvdW50ZXJBdHRhY2tPbkdvYWxzOiBudW1iZXI7XG4gIHBwQ291bnRlckF0dGFja01pc3NlczogbnVtYmVyO1xuICBwcENvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgZXZDb3VudGVyQXR0YWNrR29hbHM6IG51bWJlcjtcbiAgZXZDb3VudGVyQXR0YWNrT25Hb2FsczogbnVtYmVyO1xuICBldkNvdW50ZXJBdHRhY2tNaXNzZXM6IG51bWJlcjtcbiAgZXZDb3VudGVyQXR0YWNrU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIHNoQ291bnRlckF0dGFja0dvYWxzOiBudW1iZXI7XG4gIHNoQ291bnRlckF0dGFja09uR29hbHM6IG51bWJlcjtcbiAgc2hDb3VudGVyQXR0YWNrTWlzc2VzOiBudW1iZXI7XG4gIHNoQ291bnRlckF0dGFja1Nob3RzQmxvY2tlZDogbnVtYmVyO1xuICBwcE1hbmV1dmVyR29hbHM6IG51bWJlcjtcbiAgcHBNYW5ldXZlck9uR29hbHM6IG51bWJlcjtcbiAgcHBNYW5ldXZlck1pc3NlczogbnVtYmVyO1xuICBwcE1hbmV1dmVyU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIGV2TWFuZXV2ZXJHb2FsczogbnVtYmVyO1xuICBldk1hbmV1dmVyT25Hb2FsczogbnVtYmVyO1xuICBldk1hbmV1dmVyTWlzc2VzOiBudW1iZXI7XG4gIGV2TWFuZXV2ZXJTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgc2hNYW5ldXZlckdvYWxzOiBudW1iZXI7XG4gIHNoTWFuZXV2ZXJPbkdvYWxzOiBudW1iZXI7XG4gIHNoTWFuZXV2ZXJNaXNzZXM6IG51bWJlcjtcbiAgc2hNYW5ldXZlclNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBwcENlbnRlckZvcndhcmRHb2FsczogbnVtYmVyO1xuICBwcENlbnRlckZvcndhcmRPbkdvYWxzOiBudW1iZXI7XG4gIHBwQ2VudGVyRm9yd2FyZE1pc3NlczogbnVtYmVyO1xuICBwcENlbnRlckZvcndhcmRTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgZXZDZW50ZXJGb3J3YXJkR29hbHM6IG51bWJlcjtcbiAgZXZDZW50ZXJGb3J3YXJkT25Hb2FsczogbnVtYmVyO1xuICBldkNlbnRlckZvcndhcmRNaXNzZXM6IG51bWJlcjtcbiAgZXZDZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIHNoQ2VudGVyRm9yd2FyZEdvYWxzOiBudW1iZXI7XG4gIHNoQ2VudGVyRm9yd2FyZE9uR29hbHM6IG51bWJlcjtcbiAgc2hDZW50ZXJGb3J3YXJkTWlzc2VzOiBudW1iZXI7XG4gIHNoQ2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBwcEFzc2lzdHM6IG51bWJlcjtcbiAgZXZBc3Npc3RzOiBudW1iZXI7XG4gIHNoQXNzaXN0czogbnVtYmVyO1xuICBzaG9vdG91dEF0dGVtcHRzOiBudW1iZXI7XG4gIHNob290b3V0R29hbHM6IG51bWJlcjtcbiAgYWZ0ZXJHYW1lU2hvb3RvdXRBdHRlbXB0czogbnVtYmVyO1xuICBhZnRlckdhbWVTaG9vdG91dEdvYWxzOiBudW1iZXI7XG4gIGJsb2NrU2hvdHM6IG51bWJlcjtcbiAgZmFjZU9mZkxvc3NlczogbnVtYmVyO1xuICBmYWNlT2ZmV2luczogbnVtYmVyO1xuICBwcFNhdmVzOiBudW1iZXI7XG4gIHNoU2F2ZXM6IG51bWJlcjtcbiAgZXZTYXZlczogbnVtYmVyO1xuICBwcENvdW50ZXJBdHRhY2tTYXZlczogbnVtYmVyO1xuICBzaENvdW50ZXJBdHRhY2tTYXZlczogbnVtYmVyO1xuICBldkNvdW50ZXJBdHRhY2tTYXZlczogbnVtYmVyO1xuICBwcE1hbmV1dmVyU2F2ZXM6IG51bWJlcjtcbiAgc2hNYW5ldXZlclNhdmVzOiBudW1iZXI7XG4gIGV2TWFuZXV2ZXJTYXZlczogbnVtYmVyO1xuICBwcENlbnRlckZvcndhcmRTYXZlczogbnVtYmVyO1xuICBzaENlbnRlckZvcndhcmRTYXZlczogbnVtYmVyO1xuICBldkNlbnRlckZvcndhcmRTYXZlczogbnVtYmVyO1xuICBwcEZyZWVLaWNrU2F2ZXM6IG51bWJlcjtcbiAgc2hGcmVlS2lja1NhdmVzOiBudW1iZXI7XG4gIGV2RnJlZUtpY2tTYXZlczogbnVtYmVyO1xuICBwcENvcm5lclNhdmVzOiBudW1iZXI7XG4gIHNoQ29ybmVyU2F2ZXM6IG51bWJlcjtcbiAgZXZDb3JuZXJTYXZlczogbnVtYmVyO1xuICBwcFRvdGFsR2FtZVNhdmVzOiBudW1iZXI7XG4gIHNoVG90YWxHYW1lU2F2ZXM6IG51bWJlcjtcbiAgZXZUb3RhbEdhbWVTYXZlczogbnVtYmVyO1xuICBzaG9vdG91dFNhdmVzOiBudW1iZXI7XG4gIGFmdGVyR2FtZVNob290b3V0U2F2ZXM6IG51bWJlcjtcbiAgcHBHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgc2hHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZXZHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZ29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHBwQ291bnRlckF0dGFja0dvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBzaENvdW50ZXJBdHRhY2tHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZXZDb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGNvdW50ZXJBdHRhY2tHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgcHBNYW5ldXZlckdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBzaE1hbmV1dmVyR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGV2TWFuZXV2ZXJHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgbWFuZXV2ZXJHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgcHBDZW50ZXJGb3J3YXJkR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHNoQ2VudGVyRm9yd2FyZEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBldkNlbnRlckZvcndhcmRHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgY2VudGVyRm9yd2FyZEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBwcEZyZWVLaWNrR29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHNoRnJlZUtpY2tHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZXZGcmVlS2lja0dvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBmcmVlS2lja0dvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBwcENvcm5lckdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBzaENvcm5lckdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBldkNvcm5lckdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBjb3JuZXJHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgc2hvb3RvdXRHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgYWZ0ZXJHYW1lU2hvb3RvdXRHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgc2FmZXR5UmF0ZTogbnVtYmVyO1xuICBwZW5hbHR5TWludXRlczogbnVtYmVyO1xuICBnYW1lVGltZTogbnVtYmVyO1xuICBwbHVzTWludXM6IG51bWJlcjtcbiAgZm91bHM6IG51bWJlcjtcbiAgbWlub3JQZW5hbHRpZXM6IG51bWJlcjtcbiAgbWFqb3JQZW5hbHRpZXM6IG51bWJlcjtcbiAgbWF0Y2hQZW5hbHRpZXM6IG51bWJlcjtcbiAgcGVuYWx0eUZvdWxzOiBudW1iZXI7XG4gIHR1cm5vdmVyczogbnVtYmVyO1xuICBhdHRhY2tGb3VsczogbnVtYmVyO1xuICBwZXJzb25hbEZvdWxzOiBudW1iZXI7XG4gIGRyYXduRm91bHM6IG51bWJlcjtcbiAgZHJhd25UdXJub3ZlcnM6IG51bWJlcjtcbiAgeWVsbG93Q2FyZHM6IG51bWJlcjtcbiAgcmVkQ2FyZHM6IG51bWJlcjtcbiAgbG9zc2VzOiBudW1iZXI7XG4gIHN0ZWFsczogbnVtYmVyO1xuICBwcEZyZWVLaWNrR29hbHM6IG51bWJlcjtcbiAgcHBGcmVlS2lja09uR29hbHM6IG51bWJlcjtcbiAgcHBGcmVlS2lja01pc3NlczogbnVtYmVyO1xuICBwcEZyZWVLaWNrU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIHNoRnJlZUtpY2tHb2FsczogbnVtYmVyO1xuICBzaEZyZWVLaWNrT25Hb2FsczogbnVtYmVyO1xuICBzaEZyZWVLaWNrTWlzc2VzOiBudW1iZXI7XG4gIHNoRnJlZUtpY2tTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgZXZGcmVlS2lja0dvYWxzOiBudW1iZXI7XG4gIGV2RnJlZUtpY2tPbkdvYWxzOiBudW1iZXI7XG4gIGV2RnJlZUtpY2tNaXNzZXM6IG51bWJlcjtcbiAgZXZGcmVlS2lja1Nob3RzQmxvY2tlZDogbnVtYmVyO1xuICBmcmVlS2lja1Bhc3NlczogbnVtYmVyO1xuICBmcmVlS2lja1NlbGZzOiBudW1iZXI7XG4gIHBwQ29ybmVyR29hbHM6IG51bWJlcjtcbiAgcHBDb3JuZXJPbkdvYWxzOiBudW1iZXI7XG4gIHBwQ29ybmVyTWlzc2VzOiBudW1iZXI7XG4gIHBwQ29ybmVyU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIHNoQ29ybmVyR29hbHM6IG51bWJlcjtcbiAgc2hDb3JuZXJPbkdvYWxzOiBudW1iZXI7XG4gIHNoQ29ybmVyTWlzc2VzOiBudW1iZXI7XG4gIHNoQ29ybmVyU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIGV2Q29ybmVyR29hbHM6IG51bWJlcjtcbiAgZXZDb3JuZXJPbkdvYWxzOiBudW1iZXI7XG4gIGV2Q29ybmVyTWlzc2VzOiBudW1iZXI7XG4gIGV2Q29ybmVyU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIGNvcm5lclBhc3NlczogbnVtYmVyO1xuICBjb3JuZXJTZWxmczogbnVtYmVyO1xuICB0YWNrbGVzOiBudW1iZXI7XG4gIHBsYXllckVmZmljaWVuY3k6IG51bWJlcjtcbiAgZGVmZW5zZVNlbGVjdFBvc2l0aW9uczogbnVtYmVyO1xuICBzYXZlUG9zc2Vzc2lvbnM6IG51bWJlcjtcblxuICBwcFBlcmltZXRyU2hvdEdvYWxzOiBudW1iZXI7XG4gIHBwUGVyaW1ldHJTaG90T25Hb2FsczogbnVtYmVyO1xuICBwcFBlcmltZXRyU2hvdE1pc3NlczogbnVtYmVyO1xuICBwcFBlcmltZXRyU2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIGV2UGVyaW1ldHJTaG90R29hbHM6IG51bWJlcjtcbiAgZXZQZXJpbWV0clNob3RPbkdvYWxzOiBudW1iZXI7XG4gIGV2UGVyaW1ldHJTaG90TWlzc2VzOiBudW1iZXI7XG4gIGV2UGVyaW1ldHJTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgc2hQZXJpbWV0clNob3RHb2FsczogbnVtYmVyO1xuICBzaFBlcmltZXRyU2hvdE9uR29hbHM6IG51bWJlcjtcbiAgc2hQZXJpbWV0clNob3RNaXNzZXM6IG51bWJlcjtcbiAgc2hQZXJpbWV0clNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBwcFBlcmltZXRyU2hvdFNhdmVzOiBudW1iZXI7XG4gIHNoUGVyaW1ldHJTaG90U2F2ZXM6IG51bWJlcjtcbiAgZXZQZXJpbWV0clNob3RTYXZlczogbnVtYmVyO1xuICBwcFBlcmltZXRyU2hvdEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBzaFBlcmltZXRyU2hvdEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBldlBlcmltZXRyU2hvdEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBwZXJpbWV0clNob3RHb2Fsc0FnYWluc3Q6IG51bWJlcjtcblxuICBwcFBvc3RTaG90R29hbHM6IG51bWJlcjtcbiAgcHBQb3N0U2hvdE9uR29hbHM6IG51bWJlcjtcbiAgcHBQb3N0U2hvdE1pc3NlczogbnVtYmVyO1xuICBwcFBvc3RTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgZXZQb3N0U2hvdEdvYWxzOiBudW1iZXI7XG4gIGV2UG9zdFNob3RPbkdvYWxzOiBudW1iZXI7XG4gIGV2UG9zdFNob3RNaXNzZXM6IG51bWJlcjtcbiAgZXZQb3N0U2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIHNoUG9zdFNob3RHb2FsczogbnVtYmVyO1xuICBzaFBvc3RTaG90T25Hb2FsczogbnVtYmVyO1xuICBzaFBvc3RTaG90TWlzc2VzOiBudW1iZXI7XG4gIHNoUG9zdFNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBwcFBvc3RTaG90U2F2ZXM6IG51bWJlcjtcbiAgc2hQb3N0U2hvdFNhdmVzOiBudW1iZXI7XG4gIGV2UG9zdFNob3RTYXZlczogbnVtYmVyO1xuICBwcFBvc3RTaG90R29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIHNoUG9zdFNob3RHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgZXZQb3N0U2hvdEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBwb3N0U2hvdEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuXG4gIHBwRmFzdFNob3RHb2FsczogbnVtYmVyO1xuICBwcEZhc3RTaG90T25Hb2FsczogbnVtYmVyO1xuICBwcEZhc3RTaG90TWlzc2VzOiBudW1iZXI7XG4gIHBwRmFzdFNob3RzQmxvY2tlZDogbnVtYmVyO1xuICBldkZhc3RTaG90R29hbHM6IG51bWJlcjtcbiAgZXZGYXN0U2hvdE9uR29hbHM6IG51bWJlcjtcbiAgZXZGYXN0U2hvdE1pc3NlczogbnVtYmVyO1xuICBldkZhc3RTaG90c0Jsb2NrZWQ6IG51bWJlcjtcbiAgc2hGYXN0U2hvdEdvYWxzOiBudW1iZXI7XG4gIHNoRmFzdFNob3RPbkdvYWxzOiBudW1iZXI7XG4gIHNoRmFzdFNob3RNaXNzZXM6IG51bWJlcjtcbiAgc2hGYXN0U2hvdHNCbG9ja2VkOiBudW1iZXI7XG4gIHBwRmFzdFNob3RTYXZlczogbnVtYmVyO1xuICBzaEZhc3RTaG90U2F2ZXM6IG51bWJlcjtcbiAgZXZGYXN0U2hvdFNhdmVzOiBudW1iZXI7XG4gIHBwRmFzdFNob3RHb2Fsc0FnYWluc3Q6IG51bWJlcjtcbiAgc2hGYXN0U2hvdEdvYWxzQWdhaW5zdDogbnVtYmVyO1xuICBldkZhc3RTaG90R29hbHNBZ2FpbnN0OiBudW1iZXI7XG4gIGZhc3RTaG90R29hbHNBZ2FpbnN0OiBudW1iZXI7XG5cbiAgdXBkYXRlZEF0OiBEYXRlO1xuXG4gIGdldCBpZCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdhbWVVc2VySWQ7XG4gIH1cblxuICBnZXQgZ2FtZU1pbnV0ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gTWF0aC5mbG9vcih0aGlzLmdhbWVUaW1lIC8gNjApO1xuICB9XG5cbiAgZ2V0IHBlbmFsdHlUaW1lKCk6IHN0cmluZyB7XG4gICAgaWYgKCF0aGlzLnBlbmFsdHlNaW51dGVzKSB7XG4gICAgICByZXR1cm4gJzAwOjAwJztcbiAgICB9XG4gICAgY29uc3QgbWludXRlcyA9IE1hdGguZmxvb3IodGhpcy5wZW5hbHR5TWludXRlcyAvIDYwKTtcbiAgICBjb25zdCBzZWNvbmRzID0gTWF0aC5mbG9vcih0aGlzLnBlbmFsdHlNaW51dGVzIC0gbWludXRlcyAqIDYwKTtcbiAgICByZXR1cm4gYCR7bWludXRlcyA8IDEwID8gMCA6ICcnfSR7bWludXRlc306JHtzZWNvbmRzIDwgMTAgPyAwIDogJyd9JHtzZWNvbmRzfWA7XG4gIH1cblxuICBnZXQgYXNzaXN0cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEFzc2lzdHMgfHwgMCkgKyAodGhpcy5zaEFzc2lzdHMgfHwgMCkgICsgKHRoaXMuZXZBc3Npc3RzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHRvdGFsQ291bnRlckF0dGFja0dvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ291bnRlckF0dGFja0dvYWxzIHx8IDApICsgKHRoaXMuZXZDb3VudGVyQXR0YWNrR29hbHMgfHwgMCkgICsgKHRoaXMuc2hDb3VudGVyQXR0YWNrR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgcHBDb3VudGVyQXR0YWNrU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDb3VudGVyQXR0YWNrT25Hb2FscyB8fCAwKSArICh0aGlzLnBwQ291bnRlckF0dGFja01pc3NlcyB8fCAwKSArICh0aGlzLnBwQ291bnRlckF0dGFja1Nob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBzaENvdW50ZXJBdHRhY2tTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5zaENvdW50ZXJBdHRhY2tPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hDb3VudGVyQXR0YWNrTWlzc2VzIHx8IDApICsgKHRoaXMuc2hDb3VudGVyQXR0YWNrU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IGV2Q291bnRlckF0dGFja1Nob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmV2Q291bnRlckF0dGFja09uR29hbHMgfHwgMCkgKyAodGhpcy5ldkNvdW50ZXJBdHRhY2tNaXNzZXMgfHwgMCkgKyAodGhpcy5ldkNvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgY291bnRlckF0dGFja1Nob3RNaXNzZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDb3VudGVyQXR0YWNrTWlzc2VzIHx8IDApICsgKHRoaXMuc2hDb3VudGVyQXR0YWNrTWlzc2VzIHx8IDApICsgKHRoaXMuZXZDb3VudGVyQXR0YWNrTWlzc2VzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNvdW50ZXJBdHRhY2tTaG90T25Hb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENvdW50ZXJBdHRhY2tPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hDb3VudGVyQXR0YWNrT25Hb2FscyB8fCAwKSArICh0aGlzLmV2Q291bnRlckF0dGFja09uR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgY291bnRlckF0dGFja1Nob3RzQmxvY2tlZCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5zaENvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5ldkNvdW50ZXJBdHRhY2tTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgY291bnRlckF0dGFja1Nob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY291bnRlckF0dGFja1Nob3RNaXNzZXMgKyB0aGlzLmNvdW50ZXJBdHRhY2tTaG90T25Hb2FscyArIHRoaXMuY291bnRlckF0dGFja1Nob3RzQmxvY2tlZDtcbiAgfVxuXG4gIGdldCBjb3VudGVyQXR0YWNrR29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsQ291bnRlckF0dGFja0dvYWxzIHx8ICF0aGlzLmNvdW50ZXJBdHRhY2tTaG90cykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnRvdGFsQ291bnRlckF0dGFja0dvYWxzIC8gdGhpcy5jb3VudGVyQXR0YWNrU2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgdG90YWxNYW5ldXZlckdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwTWFuZXV2ZXJHb2FscyB8fCAwKSArICh0aGlzLnNoTWFuZXV2ZXJHb2FscyB8fCAwKSArICh0aGlzLmV2TWFuZXV2ZXJHb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwcE1hbmV1dmVyU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBNYW5ldXZlck9uR29hbHMgfHwgMCkgKyAodGhpcy5wcE1hbmV1dmVyTWlzc2VzIHx8IDApICsgKHRoaXMucHBNYW5ldXZlclNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBzaE1hbmV1dmVyU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hNYW5ldXZlck9uR29hbHMgfHwgMCkgKyAodGhpcy5zaE1hbmV1dmVyTWlzc2VzIHx8IDApICsgKHRoaXMuc2hNYW5ldXZlclNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBldk1hbmV1dmVyU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuZXZNYW5ldXZlck9uR29hbHMgfHwgMCkgKyAodGhpcy5ldk1hbmV1dmVyTWlzc2VzIHx8IDApICsgKHRoaXMuZXZNYW5ldXZlclNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBtYW5ldXZlclNob3RNaXNzZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBNYW5ldXZlck1pc3NlcyB8fCAwKSArICh0aGlzLnNoTWFuZXV2ZXJNaXNzZXMgfHwgMCkgKyAgKHRoaXMuZXZNYW5ldXZlck1pc3NlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBtYW5ldXZlclNob3RPbkdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwTWFuZXV2ZXJPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hNYW5ldXZlck9uR29hbHMgfHwgMCkgKyAgKHRoaXMuZXZNYW5ldXZlck9uR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgbWFuZXV2ZXJTaG90c0Jsb2NrZWQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBNYW5ldXZlclNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLnNoTWFuZXV2ZXJTaG90c0Jsb2NrZWQgfHwgMCkgKyAgKHRoaXMuZXZNYW5ldXZlclNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBtYW5ldXZlclNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMubWFuZXV2ZXJTaG90TWlzc2VzICsgdGhpcy5tYW5ldXZlclNob3RPbkdvYWxzICsgdGhpcy5tYW5ldXZlclNob3RzQmxvY2tlZDtcbiAgfVxuXG4gIGdldCBtYW5ldXZlckdvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbE1hbmV1dmVyR29hbHMgfHwgIXRoaXMubWFuZXV2ZXJTaG90cykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnRvdGFsTWFuZXV2ZXJHb2FscyAvIHRoaXMubWFuZXV2ZXJTaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCB0b3RhbENlbnRlckZvcndhcmRHb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENlbnRlckZvcndhcmRHb2FscyB8fCAwKSArICh0aGlzLnNoQ2VudGVyRm9yd2FyZEdvYWxzIHx8IDApICsgICh0aGlzLmV2Q2VudGVyRm9yd2FyZEdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBwQ2VudGVyRm9yd2FyZFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ2VudGVyRm9yd2FyZE9uR29hbHMgfHwgMCkgKyAodGhpcy5wcENlbnRlckZvcndhcmRNaXNzZXMgfHwgMCkgKyAodGhpcy5wcENlbnRlckZvcndhcmRTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgc2hDZW50ZXJGb3J3YXJkU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hDZW50ZXJGb3J3YXJkT25Hb2FscyB8fCAwKSArICh0aGlzLnNoQ2VudGVyRm9yd2FyZE1pc3NlcyB8fCAwKSArICh0aGlzLnNoQ2VudGVyRm9yd2FyZFNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBldkNlbnRlckZvcndhcmRTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5ldkNlbnRlckZvcndhcmRPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZDZW50ZXJGb3J3YXJkTWlzc2VzIHx8IDApICsgKHRoaXMuZXZDZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNlbnRlckZvcndhcmRTaG90TWlzc2VzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ2VudGVyRm9yd2FyZE1pc3NlcyB8fCAwKSArICh0aGlzLnNoQ2VudGVyRm9yd2FyZE1pc3NlcyB8fCAwKSArICh0aGlzLmV2Q2VudGVyRm9yd2FyZE1pc3NlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBjZW50ZXJGb3J3YXJkU2hvdE9uR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDZW50ZXJGb3J3YXJkT25Hb2FscyB8fCAwKSArICh0aGlzLnNoQ2VudGVyRm9yd2FyZE9uR29hbHMgfHwgMCkgKyAodGhpcy5ldkNlbnRlckZvcndhcmRPbkdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNlbnRlckZvcndhcmRTaG90c0Jsb2NrZWQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuc2hDZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuZXZDZW50ZXJGb3J3YXJkU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNlbnRlckZvcndhcmRTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNlbnRlckZvcndhcmRTaG90TWlzc2VzICsgdGhpcy5jZW50ZXJGb3J3YXJkU2hvdE9uR29hbHMgKyB0aGlzLmNlbnRlckZvcndhcmRTaG90c0Jsb2NrZWQ7XG4gIH1cblxuICBnZXQgY2VudGVyRm9yd2FyZEdvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbENlbnRlckZvcndhcmRHb2FscyB8fCAhdGhpcy5jZW50ZXJGb3J3YXJkU2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbENlbnRlckZvcndhcmRHb2FscyAvIHRoaXMuY2VudGVyRm9yd2FyZFNob3RzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IHRvdGFsUGVyaW1ldHJTaG90R29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBQZXJpbWV0clNob3RHb2FscyB8fCAwKSArICh0aGlzLmV2UGVyaW1ldHJTaG90R29hbHMgfHwgMCkgICsgKHRoaXMuc2hQZXJpbWV0clNob3RHb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwcFBlcmltZXRyU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBQZXJpbWV0clNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMucHBQZXJpbWV0clNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5wcFBlcmltZXRyU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IHNoUGVyaW1ldHJTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5zaFBlcmltZXRyU2hvdE9uR29hbHMgfHwgMCkgKyAodGhpcy5zaFBlcmltZXRyU2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnNoUGVyaW1ldHJTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgZXZQZXJpbWV0clNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmV2UGVyaW1ldHJTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLmV2UGVyaW1ldHJTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuZXZQZXJpbWV0clNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBwZXJpbWV0clNob3RNaXNzZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBQZXJpbWV0clNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5zaFBlcmltZXRyU2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLmV2UGVyaW1ldHJTaG90TWlzc2VzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBlcmltZXRyU2hvdE9uR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBQZXJpbWV0clNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hQZXJpbWV0clNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZQZXJpbWV0clNob3RPbkdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBlcmltZXRyU2hvdHNCbG9ja2VkKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwUGVyaW1ldHJTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5zaFBlcmltZXRyU2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuZXZQZXJpbWV0clNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBwZXJpbWV0clNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucGVyaW1ldHJTaG90TWlzc2VzICsgdGhpcy5wZXJpbWV0clNob3RPbkdvYWxzICsgdGhpcy5wZXJpbWV0clNob3RzQmxvY2tlZDtcbiAgfVxuXG4gIGdldCBwZXJpbWV0clNob3RHb2Fsc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMudG90YWxQZXJpbWV0clNob3RHb2FscyB8fCAhdGhpcy5wZXJpbWV0clNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxQZXJpbWV0clNob3RHb2FscyAvIHRoaXMucGVyaW1ldHJTaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCB0b3RhbFBvc3RTaG90R29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBQb3N0U2hvdEdvYWxzIHx8IDApICsgKHRoaXMuZXZQb3N0U2hvdEdvYWxzIHx8IDApICArICh0aGlzLnNoUG9zdFNob3RHb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwcFBvc3RTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFBvc3RTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLnBwUG9zdFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5wcFBvc3RTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgc2hQb3N0U2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hQb3N0U2hvdE9uR29hbHMgfHwgMCkgKyAodGhpcy5zaFBvc3RTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuc2hQb3N0U2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IGV2UG9zdFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmV2UG9zdFNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZQb3N0U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLmV2UG9zdFNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBwb3N0U2hvdE1pc3NlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFBvc3RTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuc2hQb3N0U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLmV2UG9zdFNob3RNaXNzZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zdFNob3RPbkdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwUG9zdFNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hQb3N0U2hvdE9uR29hbHMgfHwgMCkgKyAodGhpcy5ldlBvc3RTaG90T25Hb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwb3N0U2hvdHNCbG9ja2VkKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwUG9zdFNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLnNoUG9zdFNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLmV2UG9zdFNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBwb3N0U2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wb3N0U2hvdE1pc3NlcyArIHRoaXMucG9zdFNob3RPbkdvYWxzICsgdGhpcy5wb3N0U2hvdHNCbG9ja2VkO1xuICB9XG5cbiAgZ2V0IHBvc3RTaG90R29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsUG9zdFNob3RHb2FscyB8fCAhdGhpcy5wb3N0U2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbFBvc3RTaG90R29hbHMgLyB0aGlzLnBvc3RTaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCB0b3RhbEZhc3RTaG90R29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBGYXN0U2hvdEdvYWxzIHx8IDApICsgKHRoaXMuZXZGYXN0U2hvdEdvYWxzIHx8IDApICArICh0aGlzLnNoRmFzdFNob3RHb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBwcEZhc3RTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEZhc3RTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLnBwRmFzdFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5wcEZhc3RTaG90c0Jsb2NrZWQgfHwgMCk7XG4gIH1cblxuICBnZXQgc2hGYXN0U2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hGYXN0U2hvdE9uR29hbHMgfHwgMCkgKyAodGhpcy5zaEZhc3RTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuc2hGYXN0U2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IGV2RmFzdFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmV2RmFzdFNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZGYXN0U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLmV2RmFzdFNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBmYXN0U2hvdE1pc3NlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEZhc3RTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuc2hGYXN0U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLmV2RmFzdFNob3RNaXNzZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgZmFzdFNob3RPbkdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwRmFzdFNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hGYXN0U2hvdE9uR29hbHMgfHwgMCkgKyAodGhpcy5ldkZhc3RTaG90T25Hb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBmYXN0U2hvdHNCbG9ja2VkKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwRmFzdFNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLnNoRmFzdFNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLmV2RmFzdFNob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBmYXN0U2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5mYXN0U2hvdE1pc3NlcyArIHRoaXMuZmFzdFNob3RPbkdvYWxzICsgdGhpcy5mYXN0U2hvdHNCbG9ja2VkO1xuICB9XG5cbiAgZ2V0IGZhc3RTaG90R29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsRmFzdFNob3RHb2FscyB8fCAhdGhpcy5mYXN0U2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbEZhc3RTaG90R29hbHMgLyB0aGlzLmZhc3RTaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCBwcFNob3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwU2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnBwU2hvdHNPbkdvYWwgfHwgMCkgKyAodGhpcy5wcFNob3RzQmxvY2tlZCB8fCAwKSArXG4gICAgICAodGhpcy5wcEZyZWVLaWNrTWlzc2VzIHx8IDApICsgKHRoaXMucHBGcmVlS2lja09uR29hbHMgfHwgMCkgKyAodGhpcy5wcEZyZWVLaWNrU2hvdHNCbG9ja2VkIHx8IDApICtcbiAgICAgICh0aGlzLnBwQ29ybmVyTWlzc2VzIHx8IDApICsgKHRoaXMucHBDb3JuZXJPbkdvYWxzIHx8IDApICsgKHRoaXMucHBDb3JuZXJTaG90c0Jsb2NrZWQgfHwgMCkgK1xuICAgICAgdGhpcy5wcENvdW50ZXJBdHRhY2tTaG90cyArIHRoaXMucHBNYW5ldXZlclNob3RzICsgdGhpcy5wcENlbnRlckZvcndhcmRTaG90cyArXG4gICAgICB0aGlzLnBwUGVyaW1ldHJTaG90cyArIHRoaXMucHBQb3N0U2hvdHMgKyB0aGlzLnBwRmFzdFNob3RzO1xuICB9XG5cbiAgZ2V0IGV2U2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuZXZTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuZXZTaG90c09uR29hbCB8fCAwKSArICh0aGlzLmV2U2hvdHNCbG9ja2VkIHx8IDApICtcbiAgICAgICh0aGlzLmV2RnJlZUtpY2tNaXNzZXMgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrT25Hb2FscyB8fCAwKSArICh0aGlzLmV2RnJlZUtpY2tTaG90c0Jsb2NrZWQgfHwgMCkgK1xuICAgICAgKHRoaXMuZXZDb3JuZXJNaXNzZXMgfHwgMCkgKyAodGhpcy5ldkNvcm5lck9uR29hbHMgfHwgMCkgKyAodGhpcy5ldkNvcm5lclNob3RzQmxvY2tlZCB8fCAwKSAgK1xuICAgICAgdGhpcy5ldkNvdW50ZXJBdHRhY2tTaG90cyArIHRoaXMuZXZNYW5ldXZlclNob3RzICsgdGhpcy5ldkNlbnRlckZvcndhcmRTaG90cyArXG4gICAgICB0aGlzLmV2UGVyaW1ldHJTaG90cyArIHRoaXMuZXZQb3N0U2hvdHMgKyB0aGlzLmV2RmFzdFNob3RzO1xuICB9XG5cbiAgZ2V0IHNoU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuc2hTaG90c09uR29hbCB8fCAwKSArICh0aGlzLnNoU2hvdHNCbG9ja2VkIHx8IDApICtcbiAgICAgICh0aGlzLnNoRnJlZUtpY2tNaXNzZXMgfHwgMCkgKyAodGhpcy5zaEZyZWVLaWNrT25Hb2FscyB8fCAwKSArICh0aGlzLnNoRnJlZUtpY2tTaG90c0Jsb2NrZWQgfHwgMCkgK1xuICAgICAgKHRoaXMuc2hDb3JuZXJNaXNzZXMgfHwgMCkgKyAodGhpcy5zaENvcm5lck9uR29hbHMgfHwgMCkgKyAodGhpcy5zaENvcm5lclNob3RzQmxvY2tlZCB8fCAwKSArXG4gICAgICB0aGlzLnNoQ291bnRlckF0dGFja1Nob3RzICsgdGhpcy5zaE1hbmV1dmVyU2hvdHMgKyB0aGlzLnNoQ2VudGVyRm9yd2FyZFNob3RzICtcbiAgICAgIHRoaXMuc2hQZXJpbWV0clNob3RzICsgdGhpcy5zaFBvc3RTaG90cyArIHRoaXMuc2hGYXN0U2hvdHM7XG4gIH1cblxuICBnZXQgdG90YWxTaEdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnNoR29hbHMgfHwgMCkgKyAodGhpcy5zaEZyZWVLaWNrR29hbHMgfHwgMCkgKyAodGhpcy5zaENvcm5lckdvYWxzIHx8IDApICtcbiAgICAgICh0aGlzLnNoQ291bnRlckF0dGFja0dvYWxzIHx8IDApICsgKHRoaXMuc2hNYW5ldXZlckdvYWxzIHx8IDApICsgKHRoaXMuc2hDZW50ZXJGb3J3YXJkR29hbHMgfHwgMCkgK1xuICAgICAgKHRoaXMuc2hQZXJpbWV0clNob3RHb2FscyB8fCAwKSArICh0aGlzLnNoUG9zdFNob3RHb2FscyB8fCAwKSArICh0aGlzLnNoRmFzdFNob3RHb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCB0b3RhbEV2R29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuZXZHb2FscyB8fCAwKSArICh0aGlzLmV2RnJlZUtpY2tHb2FscyB8fCAwKSArICh0aGlzLmV2Q29ybmVyR29hbHMgfHwgMCkgK1xuICAgICAgKHRoaXMuZXZDb3VudGVyQXR0YWNrR29hbHMgfHwgMCkgKyAodGhpcy5ldk1hbmV1dmVyR29hbHMgfHwgMCkgKyAodGhpcy5ldkNlbnRlckZvcndhcmRHb2FscyB8fCAwKSArXG4gICAgICAodGhpcy5ldlBlcmltZXRyU2hvdEdvYWxzIHx8IDApICsgKHRoaXMuZXZQb3N0U2hvdEdvYWxzIHx8IDApICsgKHRoaXMuZXZGYXN0U2hvdEdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHRvdGFsUHBHb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEdvYWxzIHx8IDApICsgKHRoaXMucHBGcmVlS2lja0dvYWxzIHx8IDApICsgKHRoaXMucHBDb3JuZXJHb2FscyB8fCAwKSArXG4gICAgICAodGhpcy5wcENvdW50ZXJBdHRhY2tHb2FscyB8fCAwKSArICh0aGlzLnBwTWFuZXV2ZXJHb2FscyB8fCAwKSArICh0aGlzLnBwQ2VudGVyRm9yd2FyZEdvYWxzIHx8IDApICtcbiAgICAgICh0aGlzLnBwUGVyaW1ldHJTaG90R29hbHMgfHwgMCkgKyAodGhpcy5wcFBvc3RTaG90R29hbHMgfHwgMCkgKyAodGhpcy5wcEZhc3RTaG90R29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgZ29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy50b3RhbFNoR29hbHMgKyB0aGlzLnRvdGFsRXZHb2FscyArIHRoaXMudG90YWxQcEdvYWxzO1xuICB9XG5cbiAgZ2V0IHRvdGFsR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nb2FscyArICh0aGlzLnNob290b3V0R29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgc2hvb3RvdXRTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5zaG9vdG91dEdvYWxzIHx8IDApICsgKHRoaXMuc2hvb3RvdXRBdHRlbXB0cyB8fCAwKTtcbiAgfVxuXG4gIGdldCBpbkdhbWVTaG90TWlzc2VzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwU2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLmV2U2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnNoU2hvdE1pc3NlcyB8fCAwKSArXG4gICAgICB0aGlzLmNvdW50ZXJBdHRhY2tTaG90TWlzc2VzICsgdGhpcy5tYW5ldXZlclNob3RNaXNzZXMgKyB0aGlzLmNlbnRlckZvcndhcmRTaG90TWlzc2VzICtcbiAgICAgIHRoaXMucGVyaW1ldHJTaG90TWlzc2VzICsgdGhpcy5wb3N0U2hvdE1pc3NlcyArIHRoaXMuZmFzdFNob3RNaXNzZXM7XG4gIH1cblxuICBnZXQgc2hvdE1pc3NlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEZyZWVLaWNrTWlzc2VzIHx8IDApICsgKHRoaXMuZXZGcmVlS2lja01pc3NlcyB8fCAwKSArICh0aGlzLnNoRnJlZUtpY2tNaXNzZXMgfHwgMCkgK1xuICAgICAgKHRoaXMucHBDb3JuZXJNaXNzZXMgfHwgMCkgKyAodGhpcy5ldkNvcm5lck1pc3NlcyB8fCAwKSArICh0aGlzLnNoQ29ybmVyTWlzc2VzIHx8IDApICtcbiAgICAgIHRoaXMuaW5HYW1lU2hvdE1pc3NlcztcbiAgfVxuXG4gIGdldCB0b3RhbFBwU2hvdE1pc3NlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5wcEZyZWVLaWNrTWlzc2VzIHx8IDApICsgKHRoaXMucHBDb3JuZXJNaXNzZXMgfHwgMCkgK1xuICAgICAgKHRoaXMucHBDb3VudGVyQXR0YWNrTWlzc2VzIHx8IDApICsgKHRoaXMucHBNYW5ldXZlck1pc3NlcyB8fCAwKSArICh0aGlzLnBwQ2VudGVyRm9yd2FyZE1pc3NlcyB8fCAwKSArXG4gICAgICAodGhpcy5wcFBlcmltZXRyU2hvdE1pc3NlcyB8fCAwKSArICh0aGlzLnBwUG9zdFNob3RNaXNzZXMgfHwgMCkgKyAodGhpcy5wcEZhc3RTaG90TWlzc2VzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHNob3RzT25Hb2FsKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwU2hvdHNPbkdvYWwgfHwgMCkgKyAodGhpcy5ldlNob3RzT25Hb2FsIHx8IDApICsgKHRoaXMuc2hTaG90c09uR29hbCB8fCAwKSArXG4gICAgICAodGhpcy5wcEZyZWVLaWNrT25Hb2FscyB8fCAwKSArICh0aGlzLmV2RnJlZUtpY2tPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hGcmVlS2lja09uR29hbHMgfHwgMCkgK1xuICAgICAgKHRoaXMucHBDb3JuZXJPbkdvYWxzIHx8IDApICsgKHRoaXMuZXZDb3JuZXJPbkdvYWxzIHx8IDApICsgKHRoaXMuc2hDb3JuZXJPbkdvYWxzIHx8IDApICtcbiAgICAgIHRoaXMuY291bnRlckF0dGFja1Nob3RPbkdvYWxzICsgdGhpcy5tYW5ldXZlclNob3RPbkdvYWxzICsgdGhpcy5jZW50ZXJGb3J3YXJkU2hvdE9uR29hbHMgK1xuICAgICAgdGhpcy5wZXJpbWV0clNob3RPbkdvYWxzICsgdGhpcy5wb3N0U2hvdE9uR29hbHMgKyB0aGlzLmZhc3RTaG90T25Hb2FscyArICh0aGlzLnNob290b3V0R29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgdG90YWxQcFNob3RzT25Hb2FsKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwU2hvdHNPbkdvYWwgfHwgMCkgKyAodGhpcy5wcEZyZWVLaWNrT25Hb2FscyB8fCAwKSArICh0aGlzLnBwQ29ybmVyT25Hb2FscyB8fCAwKSArXG4gICAgICAodGhpcy5wcENvdW50ZXJBdHRhY2tPbkdvYWxzIHx8IDApICsgKHRoaXMucHBNYW5ldXZlck9uR29hbHMgfHwgMCkgKyAodGhpcy5wcENlbnRlckZvcndhcmRPbkdvYWxzIHx8IDApICtcbiAgICAgICh0aGlzLnBwUGVyaW1ldHJTaG90T25Hb2FscyB8fCAwKSArICh0aGlzLnBwUG9zdFNob3RPbkdvYWxzIHx8IDApICsgKHRoaXMucHBGYXN0U2hvdE9uR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgaW5HYW1lU2hvdHNPbkdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwU2hvdHNPbkdvYWwgfHwgMCkgKyAodGhpcy5ldlNob3RzT25Hb2FsIHx8IDApICsgKHRoaXMuc2hTaG90c09uR29hbCB8fCAwKSArXG4gICAgICB0aGlzLmNvdW50ZXJBdHRhY2tTaG90T25Hb2FscyArIHRoaXMubWFuZXV2ZXJTaG90T25Hb2FscyArIHRoaXMuY2VudGVyRm9yd2FyZFNob3RPbkdvYWxzICtcbiAgICAgIHRoaXMucGVyaW1ldHJTaG90T25Hb2FscyArIHRoaXMucG9zdFNob3RPbkdvYWxzICsgdGhpcy5mYXN0U2hvdE9uR29hbHM7XG4gIH1cblxuICBnZXQgc2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wcFNob3RzICsgdGhpcy5ldlNob3RzICsgdGhpcy5zaFNob3RzICsgdGhpcy5zaG9vdG91dFNob3RzO1xuICB9XG5cblxuICBnZXQgdG90YWxTaG90cygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnNob3RzICsgdGhpcy5zaG9vdG91dFNob3RzO1xuICB9XG5cbiAgZ2V0IGZhY2VPZmZzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmZhY2VPZmZXaW5zIHx8IDApICsgKHRoaXMuZmFjZU9mZkxvc3NlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBmcmVlS2lja1Nob3RNaXNzZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBGcmVlS2lja01pc3NlcyB8fCAwKSArICh0aGlzLmV2RnJlZUtpY2tNaXNzZXMgfHwgMCkgKyAodGhpcy5zaEZyZWVLaWNrTWlzc2VzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGZyZWVLaWNrU2hvdHNCbG9ja2VkKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwRnJlZUtpY2tTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrU2hvdHNCbG9ja2VkIHx8IDApICsgKHRoaXMuc2hGcmVlS2lja1Nob3RzQmxvY2tlZCB8fCAwKTtcbiAgfVxuXG4gIGdldCBmcmVlS2lja09uR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBGcmVlS2lja09uR29hbHMgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrT25Hb2FscyB8fCAwKSArICh0aGlzLnNoRnJlZUtpY2tPbkdvYWxzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHRvdGFsRnJlZUtpY2tHb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcEZyZWVLaWNrR29hbHMgfHwgMCkgKyAodGhpcy5zaEZyZWVLaWNrR29hbHMgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgdG90YWxGcmVlS2lja3MoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuZnJlZUtpY2tTZWxmcyB8fCAwKSArICh0aGlzLmZyZWVLaWNrUGFzc2VzIHx8IDApICtcbiAgICAgIHRoaXMuZnJlZUtpY2tTaG90TWlzc2VzICsgdGhpcy5mcmVlS2lja09uR29hbHMgKyB0aGlzLnRvdGFsRnJlZUtpY2tHb2FscyArIHRoaXMuZnJlZUtpY2tTaG90c0Jsb2NrZWQ7XG4gIH1cblxuICBnZXQgZnJlZUtpY2tHb2Fsc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMudG90YWxGcmVlS2lja0dvYWxzIHx8ICF0aGlzLnRvdGFsRnJlZUtpY2tzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxGcmVlS2lja0dvYWxzIC8gdGhpcy50b3RhbEZyZWVLaWNrcykgLyAxMDtcbiAgfVxuXG4gIGdldCB0b3RhbENvcm5lckdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ29ybmVyR29hbHMgfHwgMCkgKyAodGhpcy5zaENvcm5lckdvYWxzIHx8IDApICsgKHRoaXMuZXZDb3JuZXJHb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBjb3JuZXJTaG90TWlzc2VzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ29ybmVyTWlzc2VzIHx8IDApICsgKHRoaXMuc2hDb3JuZXJNaXNzZXMgfHwgMCkgKyAodGhpcy5ldkNvcm5lck1pc3NlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBjb3JuZXJPbkdvYWxzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwQ29ybmVyT25Hb2FscyB8fCAwKSArICh0aGlzLnNoQ29ybmVyT25Hb2FscyB8fCAwKSArICh0aGlzLmV2Q29ybmVyT25Hb2FscyB8fCAwKTtcbiAgfVxuXG4gIGdldCBjb3JuZXJTaG90c0Jsb2NrZWQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDb3JuZXJTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5zaENvcm5lclNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLmV2Q29ybmVyU2hvdHNCbG9ja2VkIHx8IDApO1xuICB9XG5cbiAgZ2V0IHRvdGFsQ29ybmVycygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5jb3JuZXJTZWxmcyB8fCAwKSArICh0aGlzLmNvcm5lclBhc3NlcyB8fCAwKSArIHRoaXMuY29ybmVyU2hvdHNCbG9ja2VkICtcbiAgICAgIHRoaXMuY29ybmVyT25Hb2FscyArIHRoaXMuY29ybmVyU2hvdE1pc3NlcyArIHRoaXMudG90YWxDb3JuZXJHb2FscztcbiAgfVxuXG4gIGdldCBzaG90c0Jsb2NrZWQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBTaG90c0Jsb2NrZWQgfHwgMCkgKyAodGhpcy5ldlNob3RzQmxvY2tlZCB8fCAwKSArICh0aGlzLnNoU2hvdHNCbG9ja2VkIHx8IDApICtcbiAgICAgIHRoaXMuY291bnRlckF0dGFja1Nob3RzQmxvY2tlZCArIHRoaXMubWFuZXV2ZXJTaG90c0Jsb2NrZWQgKyB0aGlzLmNlbnRlckZvcndhcmRTaG90c0Jsb2NrZWQgK1xuICAgICAgdGhpcy5mcmVlS2lja1Nob3RzQmxvY2tlZCArIHRoaXMuY29ybmVyU2hvdHNCbG9ja2VkICtcbiAgICAgIHRoaXMucGVyaW1ldHJTaG90c0Jsb2NrZWQgKyB0aGlzLnBvc3RTaG90c0Jsb2NrZWQgKyB0aGlzLmZhc3RTaG90c0Jsb2NrZWQ7XG4gIH1cblxuICBnZXQgdG90YWxGb3VscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5mb3VscyB8fCAwKSArICh0aGlzLnBlcnNvbmFsRm91bHMgfHwgMCk7XG4gIH1cblxuICBnZXQgdG90YWxQZW5hbHRpZXMoKTogbnVtYmVyIHtcbiAgICAgIHJldHVybiAodGhpcy5taW5vclBlbmFsdGllcyB8fCAwKSArICh0aGlzLm1ham9yUGVuYWx0aWVzIHx8IDApICsgKHRoaXMubWF0Y2hQZW5hbHRpZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zaXRpb25BdHRhY2tHb2FscygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5zaEdvYWxzIHx8IDApICsgKHRoaXMuZXZHb2FscyB8fCAwKSArICh0aGlzLnBwR29hbHMgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zaXRpb25BdHRhY2tTaG90c09uR29hbCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFNob3RzT25Hb2FsIHx8IDApICsgKHRoaXMuZXZTaG90c09uR29hbCB8fCAwKSArICh0aGlzLnNoU2hvdHNPbkdvYWwgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zaXRpb25BdHRhY2tTaG90c01pc3MoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuZXZTaG90TWlzc2VzIHx8IDApICsgKHRoaXMuc2hTaG90TWlzc2VzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBvc2l0aW9uQXR0YWNrU2hvdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wb3NpdGlvbkF0dGFja1Nob3RzT25Hb2FsICsgdGhpcy5wb3NpdGlvbkF0dGFja1Nob3RzTWlzcztcbiAgfVxuXG4gIGdldCBwb3NpdGlvbkF0dGFja0dvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5wb3NpdGlvbkF0dGFja0dvYWxzIHx8ICF0aGlzLnBvc2l0aW9uQXR0YWNrU2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5wb3NpdGlvbkF0dGFja0dvYWxzIC8gdGhpcy5wb3NpdGlvbkF0dGFja1Nob3RzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IHRvdGFsSW5HYW1lR29hbHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy50b3RhbENlbnRlckZvcndhcmRHb2FscyArIHRoaXMudG90YWxNYW5ldXZlckdvYWxzICsgdGhpcy50b3RhbENvdW50ZXJBdHRhY2tHb2FscyArIHRoaXMucG9zaXRpb25BdHRhY2tHb2FscyArXG4gICAgICB0aGlzLnRvdGFsUGVyaW1ldHJTaG90R29hbHMgKyB0aGlzLnRvdGFsUG9zdFNob3RHb2FscyArIHRoaXMudG90YWxGYXN0U2hvdEdvYWxzO1xuICB9XG5cbiAgZ2V0IHBwR29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsUHBHb2FscyB8fCAhdGhpcy5wcFNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxQcEdvYWxzIC8gdGhpcy5wcFNob3RzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IGV2R29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsRXZHb2FscyB8fCAhdGhpcy5ldlNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxFdkdvYWxzIC8gdGhpcy5ldlNob3RzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IHNoR29hbHNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsU2hHb2FscyB8fCAhdGhpcy5zaFNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxTaEdvYWxzIC8gdGhpcy5zaFNob3RzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IHNob3RzT25Hb2FsUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5zaG90c09uR29hbCB8fCAhdGhpcy5zaG90cykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnNob3RzT25Hb2FsIC8gdGhpcy5zaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCBnb2Fsc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMuZ29hbHMgfHwgIXRoaXMuc2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5nb2FscyAvIHRoaXMuc2hvdHMpIC8gMTA7XG4gIH1cblxuICBnZXQgdG90YWxHb2Fsc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMudG90YWxHb2FscyB8fCAhdGhpcy50b3RhbFNob3RzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMudG90YWxHb2FscyAvIHRoaXMudG90YWxTaG90cykgLyAxMDtcbiAgfVxuXG4gIGdldCBmYWNlT2ZmUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5mYWNlT2ZmV2lucyB8fCAhdGhpcy5mYWNlT2Zmcykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLmZhY2VPZmZXaW5zIC8gdGhpcy5mYWNlT2ZmcykgLyAxMDtcbiAgfVxuXG4gIGdldCBzaG9vdG91dEdvYWxzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5zaG9vdG91dEdvYWxzIHx8ICF0aGlzLnNob290b3V0U2hvdHMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5zaG9vdG91dEdvYWxzIC8gdGhpcy5zaG9vdG91dFNob3RzKSAvIDEwO1xuICB9XG5cbiAgZ2V0IGdvYWxwYXNzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnRvdGFsR29hbHMgfHwgMCkgKyAodGhpcy5hc3Npc3RzIHx8IDApO1xuICB9XG5cbiAgLypnb2FsaWUgc3RhdCAqL1xuICBnZXQgcG9zaXRpb25BdHRhY2tTYXZlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcFNhdmVzIHx8IDApICsgKHRoaXMuc2hTYXZlcyB8fCAwKSArICh0aGlzLmV2U2F2ZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zaXRpb25BdHRhY2tTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wb3NpdGlvbkF0dGFja1NhdmVzICsgKHRoaXMuZ29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IHBvc2l0aW9uQXR0YWNrU2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnBvc2l0aW9uQXR0YWNrU2F2ZXMgfHwgIXRoaXMucG9zaXRpb25BdHRhY2tTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5wb3NpdGlvbkF0dGFja1NhdmVzIC8gdGhpcy5wb3NpdGlvbkF0dGFja1Nob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIGdldCBjb3VudGVyQXR0YWNrU2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDb3VudGVyQXR0YWNrU2F2ZXMgfHwgMCkgKyAodGhpcy5zaENvdW50ZXJBdHRhY2tTYXZlcyB8fCAwKSArICh0aGlzLmV2Q291bnRlckF0dGFja1NhdmVzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNvdW50ZXJBdHRhY2tTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jb3VudGVyQXR0YWNrU2F2ZXMgKyAodGhpcy5jb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IGNvdW50ZXJBdHRhY2tTYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMuY291bnRlckF0dGFja1NhdmVzIHx8ICF0aGlzLmNvdW50ZXJBdHRhY2tTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5jb3VudGVyQXR0YWNrU2F2ZXMgLyB0aGlzLmNvdW50ZXJBdHRhY2tTaG90c0FnYWluc3QpIC8gMTA7XG4gIH1cblxuXG4gIGdldCBjZW50ZXJGb3J3YXJkU2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBDZW50ZXJGb3J3YXJkU2F2ZXMgfHwgMCkgKyAodGhpcy5zaENlbnRlckZvcndhcmRTYXZlcyB8fCAwKSArICh0aGlzLmV2Q2VudGVyRm9yd2FyZFNhdmVzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGNlbnRlckZvcndhcmRTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jZW50ZXJGb3J3YXJkU2F2ZXMgKyAodGhpcy5jZW50ZXJGb3J3YXJkR29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IGNlbnRlckZvcndhcmRTYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMuY2VudGVyRm9yd2FyZFNhdmVzIHx8ICF0aGlzLmNlbnRlckZvcndhcmRTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5jZW50ZXJGb3J3YXJkU2F2ZXMgLyB0aGlzLmNlbnRlckZvcndhcmRTaG90c0FnYWluc3QpIC8gMTA7XG4gIH1cblxuICBnZXQgbWFuZXV2ZXJTYXZlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcE1hbmV1dmVyU2F2ZXMgfHwgMCkgKyAodGhpcy5zaE1hbmV1dmVyU2F2ZXMgfHwgMCkgKyAodGhpcy5ldk1hbmV1dmVyU2F2ZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgbWFuZXV2ZXJTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5tYW5ldXZlclNhdmVzICsgKHRoaXMubWFuZXV2ZXJHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgbWFuZXV2ZXJTYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMubWFuZXV2ZXJTYXZlcyB8fCAhdGhpcy5tYW5ldXZlclNob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLm1hbmV1dmVyU2F2ZXMgLyB0aGlzLm1hbmV1dmVyU2hvdHNBZ2FpbnN0KSAvIDEwO1xuICB9XG5cbiAgZ2V0IGZyZWVLaWNrU2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBGcmVlS2lja1NhdmVzIHx8IDApICsgKHRoaXMuc2hGcmVlS2lja1NhdmVzIHx8IDApICsgKHRoaXMuZXZGcmVlS2lja1NhdmVzIHx8IDApO1xuICB9XG5cbiAgZ2V0IGZyZWVLaWNrU2hvdHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZnJlZUtpY2tTYXZlcyArICh0aGlzLmZyZWVLaWNrR29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IGZyZWVLaWNrU2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLmZyZWVLaWNrU2F2ZXMgfHwgIXRoaXMuZnJlZUtpY2tTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5mcmVlS2lja1NhdmVzIC8gdGhpcy5mcmVlS2lja1Nob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIGdldCBjb3JuZXJTYXZlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5wcENvcm5lclNhdmVzIHx8IDApICsgKHRoaXMuc2hDb3JuZXJTYXZlcyB8fCAwKSArICh0aGlzLmV2Q29ybmVyU2F2ZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgY29ybmVyU2hvdHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY29ybmVyU2F2ZXMgKyAodGhpcy5jb3JuZXJHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgY29ybmVyU2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLmNvcm5lclNhdmVzIHx8ICF0aGlzLmNvcm5lclNob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLmNvcm5lclNhdmVzIC8gdGhpcy5jb3JuZXJTaG90c0FnYWluc3QpIC8gMTA7XG4gIH1cblxuICBnZXQgcGVyaW1ldHJTaG90U2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBQZXJpbWV0clNob3RTYXZlcyB8fCAwKSArICh0aGlzLnNoUGVyaW1ldHJTaG90U2F2ZXMgfHwgMCkgKyAodGhpcy5ldlBlcmltZXRyU2hvdFNhdmVzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBlcmltZXRyU2hvdHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucGVyaW1ldHJTaG90U2F2ZXMgKyAodGhpcy5wZXJpbWV0clNob3RHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgcGVyaW1ldHJTaG90U2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnBlcmltZXRyU2hvdFNhdmVzIHx8ICF0aGlzLnBlcmltZXRyU2hvdHNBZ2FpbnN0KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMucGVyaW1ldHJTaG90U2F2ZXMgLyB0aGlzLnBlcmltZXRyU2hvdHNBZ2FpbnN0KSAvIDEwO1xuICB9XG5cbiAgZ2V0IHBvc3RTaG90U2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMucHBQb3N0U2hvdFNhdmVzIHx8IDApICsgKHRoaXMuc2hQb3N0U2hvdFNhdmVzIHx8IDApICsgKHRoaXMuZXZQb3N0U2hvdFNhdmVzIHx8IDApO1xuICB9XG5cbiAgZ2V0IHBvc3RTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wb3N0U2hvdFNhdmVzICsgKHRoaXMucG9zdFNob3RHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgcG9zdFNob3RTYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMucG9zdFNob3RTYXZlcyB8fCAhdGhpcy5wb3N0U2hvdHNBZ2FpbnN0KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIE1hdGgucm91bmQoMTAwMCAqIHRoaXMucG9zdFNob3RTYXZlcyAvIHRoaXMucG9zdFNob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIGdldCBmYXN0U2hvdFNhdmVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLnBwRmFzdFNob3RTYXZlcyB8fCAwKSArICh0aGlzLnNoRmFzdFNob3RTYXZlcyB8fCAwKSArICh0aGlzLmV2RmFzdFNob3RTYXZlcyB8fCAwKTtcbiAgfVxuXG4gIGdldCBmYXN0U2hvdHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZmFzdFNob3RTYXZlcyArICh0aGlzLmZhc3RTaG90R29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IGZhc3RTaG90U2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLmZhc3RTaG90U2F2ZXMgfHwgIXRoaXMuZmFzdFNob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLmZhc3RTaG90U2F2ZXMgLyB0aGlzLmZhc3RTaG90c0FnYWluc3QpIC8gMTA7XG4gIH1cblxuXG4gIGdldCBpbkdhbWVTYXZlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5zaFNhdmVzIHx8IDApICsgKHRoaXMuZXZTYXZlcyB8fCAwKSArICh0aGlzLnBwU2F2ZXMgfHwgMCkgK1xuICAgICAgdGhpcy5jb3VudGVyQXR0YWNrU2F2ZXMgKyB0aGlzLm1hbmV1dmVyU2F2ZXMgKyB0aGlzLmNlbnRlckZvcndhcmRTYXZlcyArXG4gICAgICB0aGlzLnBlcmltZXRyU2hvdFNhdmVzICsgdGhpcy5wb3N0U2hvdFNhdmVzICsgdGhpcy5mYXN0U2hvdFNhdmVzO1xuICB9XG5cbiAgZ2V0IHNhdmVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuaW5HYW1lU2F2ZXMgKyB0aGlzLmZyZWVLaWNrU2F2ZXMgKyB0aGlzLmNvcm5lclNhdmVzO1xuICB9XG5cbiAgZ2V0IHRvdGFsU2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zYXZlcyArICh0aGlzLnNob290b3V0U2F2ZXMgfHwgMCk7XG4gIH1cblxuICBnZXQgaW5HYW1lR29hbHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuICh0aGlzLmdvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLmNvdW50ZXJBdHRhY2tHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5tYW5ldXZlckdvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLmNlbnRlckZvcndhcmRHb2Fsc0FnYWluc3QgfHwgMCkgK1xuICAgICAgKHRoaXMucGVyaW1ldHJTaG90R29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMucG9zdFNob3RHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5mYXN0U2hvdEdvYWxzQWdhaW5zdCB8fCAwKTtcbiAgfVxuXG4gIGdldCBzaG9vdG91dFNob3RzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5zaG9vdG91dFNhdmVzIHx8IDApICsgKHRoaXMuc2hvb3RvdXRHb2Fsc0FnYWluc3QgfHwgMCk7XG4gIH1cblxuICBnZXQgZ2FtZUdvYWxzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmluR2FtZUdvYWxzQWdhaW5zdCArICh0aGlzLmZyZWVLaWNrR29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuY29ybmVyR29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IHRvdGFsR29hbHNBZ2FpbnN0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2FtZUdvYWxzQWdhaW5zdCArICh0aGlzLnNob290b3V0R29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IGdhbWVTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zYXZlcyArIHRoaXMuZ2FtZUdvYWxzQWdhaW5zdDtcbiAgfVxuXG4gIGdldCB0b3RhbFNob3RzQWdhaW5zdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdhbWVTaG90c0FnYWluc3QgKyB0aGlzLnNob290b3V0U2hvdHNBZ2FpbnN0O1xuICB9XG5cbiAgZ2V0IHNob290b3V0U2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnNob290b3V0U2F2ZXMgfHwgIXRoaXMuc2hvb3RvdXRTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy5zaG9vdG91dFNhdmVzIC8gdGhpcy5zaG9vdG91dFNob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIGdldCBzYXZlc1BlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMuc2F2ZXMgfHwgIXRoaXMuZ2FtZVNob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnNhdmVzIC8gdGhpcy5nYW1lU2hvdHNBZ2FpbnN0KSAvIDEwO1xuICB9XG5cbiAgZ2V0IHRvdGFsU2F2ZXNQZXJjZW50KCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLnRvdGFsU2F2ZXMgfHwgIXRoaXMudG90YWxTaG90c0FnYWluc3QpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZCgxMDAwICogdGhpcy50b3RhbFNhdmVzIC8gdGhpcy50b3RhbFNob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIGdldCB0b3RhbFNoU2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hDb3VudGVyQXR0YWNrU2F2ZXMgfHwgMCkgKyAodGhpcy5zaE1hbmV1dmVyU2F2ZXMgfHwgMCkgKyAodGhpcy5zaENlbnRlckZvcndhcmRTYXZlcyB8fCAwKSArXG4gICAgICAodGhpcy5zaFNhdmVzIHx8IDApICsgKHRoaXMuc2hGcmVlS2lja1NhdmVzIHx8IDApICsgKHRoaXMuc2hDb3JuZXJTYXZlcyB8fCAwKSArXG4gICAgICAodGhpcy5zaFBlcmltZXRyU2hvdFNhdmVzKSArICh0aGlzLnNoUG9zdFNob3RTYXZlcykgKyAodGhpcy5zaEZhc3RTaG90U2F2ZXMpO1xuICB9XG5cbiAgZ2V0IHRvdGFsU2hHb2Fsc0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuc2hHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5zaEZyZWVLaWNrR29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuc2hDb3JuZXJHb2Fsc0FnYWluc3QgfHwgMCkgK1xuICAgICAgKHRoaXMuc2hDb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuc2hNYW5ldXZlckdvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLnNoQ2VudGVyRm9yd2FyZEdvYWxzQWdhaW5zdCB8fCAwKSArXG4gICAgICAodGhpcy5zaFBlcmltZXRyU2hvdEdvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLnNoUG9zdFNob3RHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5zaEZhc3RTaG90R29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IHRvdGFsU2hTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy50b3RhbFNoU2F2ZXMgKyB0aGlzLnRvdGFsU2hHb2Fsc0FnYWluc3Q7XG4gIH1cblxuICBnZXQgdG90YWxTaFNhdmVzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbFNoU2F2ZXMgfHwgIXRoaXMudG90YWxTaFNob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnRvdGFsU2hTYXZlcyAvIHRoaXMudG90YWxTaFNob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIGdldCB0b3RhbEV2U2F2ZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuZXZDb3VudGVyQXR0YWNrU2F2ZXMgfHwgMCkgKyAodGhpcy5ldk1hbmV1dmVyU2F2ZXMgfHwgMCkgKyAodGhpcy5ldkNlbnRlckZvcndhcmRTYXZlcyB8fCAwKSArXG4gICAgICAodGhpcy5ldlNhdmVzIHx8IDApICsgKHRoaXMuZXZGcmVlS2lja1NhdmVzIHx8IDApICsgKHRoaXMuZXZDb3JuZXJTYXZlcyB8fCAwKSArXG4gICAgICAodGhpcy5ldlBlcmltZXRyU2hvdFNhdmVzKSArICh0aGlzLmV2UG9zdFNob3RTYXZlcykgKyAodGhpcy5ldkZhc3RTaG90U2F2ZXMpO1xuICB9XG5cbiAgZ2V0IHRvdGFsRXZHb2Fsc0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuZXZHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5ldkZyZWVLaWNrR29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuZXZDb3JuZXJHb2Fsc0FnYWluc3QgfHwgMCkgK1xuICAgICAgKHRoaXMuZXZDb3VudGVyQXR0YWNrR29hbHNBZ2FpbnN0IHx8IDApICsgKHRoaXMuZXZNYW5ldXZlckdvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLmV2Q2VudGVyRm9yd2FyZEdvYWxzQWdhaW5zdCB8fCAwKSArXG4gICAgICAodGhpcy5ldlBlcmltZXRyU2hvdEdvYWxzQWdhaW5zdCB8fCAwKSArICh0aGlzLmV2UG9zdFNob3RHb2Fsc0FnYWluc3QgfHwgMCkgKyAodGhpcy5ldkZhc3RTaG90R29hbHNBZ2FpbnN0IHx8IDApO1xuICB9XG5cbiAgZ2V0IHRvdGFsRXZTaG90c0FnYWluc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy50b3RhbEV2U2F2ZXMgKyB0aGlzLnRvdGFsRXZHb2Fsc0FnYWluc3Q7XG4gIH1cblxuICBnZXQgdG90YWxFdlNhdmVzUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy50b3RhbEV2U2F2ZXMgfHwgIXRoaXMudG90YWxFdlNob3RzQWdhaW5zdCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKDEwMDAgKiB0aGlzLnRvdGFsRXZTYXZlcyAvIHRoaXMudG90YWxFdlNob3RzQWdhaW5zdCkgLyAxMDtcbiAgfVxuXG4gIEBUb0Zyb250SG9va1xuICBzdGF0aWMgdG9Gcm9udChkYXRhOiBhbnkpOiBhbnkge31cblxuICBAVG9CYWNrSG9va1xuICBzdGF0aWMgdG9CYWNrKGRhdGE6IGFueSk6IGFueSB7fVxufVxuIl19
@@ -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,7 +10530,7 @@ 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
10536
  return this.shots + this.shootoutShots;