@discordeno/bot 22.0.1-next.a3bb9fc → 22.0.1-next.a794c20

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.
@@ -90,6 +90,7 @@ export interface TransformersDesiredPropertiesMetadata extends DesiredProperties
90
90
  interaction: {
91
91
  dependencies: {
92
92
  respond: ['type', 'token', 'id'];
93
+ sendFollowupMessage: ['token'];
93
94
  edit: ['type', 'token', 'id'];
94
95
  deferEdit: ['type', 'token', 'id'];
95
96
  defer: ['type', 'token', 'id'];
@@ -1 +1 @@
1
- {"version":3,"file":"desiredProperties.d.ts","sourceRoot":"","sources":["../src/desiredProperties.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"desiredProperties.d.ts","sourceRoot":"","sources":["../src/desiredProperties.ts"],"names":[],"mappings":"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"}
@@ -629,4 +629,4 @@ export function createDesiredPropertiesObject(desiredProperties, defaultValue =
629
629
  return DesiredPropertiesBehavior;
630
630
  }({});
631
631
 
632
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZXNpcmVkUHJvcGVydGllcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFJlY3Vyc2l2ZVBhcnRpYWwgfSBmcm9tICdAZGlzY29yZGVuby90eXBlcyc7XG5pbXBvcnQgdHlwZSB7IENvbGxlY3Rpb24gfSBmcm9tICdAZGlzY29yZGVuby91dGlscyc7XG5pbXBvcnQgdHlwZSB7IEJvdCB9IGZyb20gJy4vYm90LmpzJztcbmltcG9ydCB0eXBlIHsgSW50ZXJhY3Rpb25SZXNvbHZlZERhdGFDaGFubmVsLCBJbnRlcmFjdGlvblJlc29sdmVkRGF0YU1lbWJlciB9IGZyb20gJy4vY29tbWFuZE9wdGlvbnNQYXJzZXIuanMnO1xuaW1wb3J0IHR5cGUge1xuICBBY3Rpdml0eUluc3RhbmNlLFxuICBBY3Rpdml0eUxvY2F0aW9uLFxuICBBdHRhY2htZW50LFxuICBBdmF0YXJEZWNvcmF0aW9uRGF0YSxcbiAgQ2hhbm5lbCxcbiAgQ29sbGVjdGlibGVzLFxuICBDb21wb25lbnQsXG4gIERlZmF1bHRSZWFjdGlvbkVtb2ppLFxuICBFbW9qaSxcbiAgRW50aXRsZW1lbnQsXG4gIEZvcnVtVGFnLFxuICBHdWlsZCxcbiAgR3VpbGRPbmJvYXJkaW5nLFxuICBHdWlsZE9uYm9hcmRpbmdQcm9tcHQsXG4gIEd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvbixcbiAgSW5jaWRlbnRzRGF0YSxcbiAgSW50ZXJhY3Rpb24sXG4gIEludGVyYWN0aW9uQ2FsbGJhY2ssXG4gIEludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZSxcbiAgSW50ZXJhY3Rpb25SZXNvdXJjZSxcbiAgSW52aXRlLFxuICBJbnZpdGVTdGFnZUluc3RhbmNlLFxuICBMb2JieSxcbiAgTG9iYnlNZW1iZXIsXG4gIE1lZGlhR2FsbGVyeUl0ZW0sXG4gIE1lbWJlcixcbiAgTWVzc2FnZSxcbiAgTWVzc2FnZUNhbGwsXG4gIE1lc3NhZ2VJbnRlcmFjdGlvbixcbiAgTWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEsXG4gIE1lc3NhZ2VQaW4sXG4gIE1lc3NhZ2VSZWZlcmVuY2UsXG4gIE1lc3NhZ2VTbmFwc2hvdCxcbiAgTmFtZXBsYXRlLFxuICBQb2xsLFxuICBQb2xsQW5zd2VyLFxuICBQb2xsQW5zd2VyQ291bnQsXG4gIFBvbGxNZWRpYSxcbiAgUG9sbFJlc3VsdCxcbiAgUm9sZSxcbiAgUm9sZUNvbG9ycyxcbiAgU2NoZWR1bGVkRXZlbnQsXG4gIFNjaGVkdWxlZEV2ZW50UmVjdXJyZW5jZVJ1bGUsXG4gIFNrdSxcbiAgU291bmRib2FyZFNvdW5kLFxuICBTdGFnZUluc3RhbmNlLFxuICBTdGlja2VyLFxuICBTdWJzY3JpcHRpb24sXG4gIFVuZnVybGVkTWVkaWFJdGVtLFxuICBVc2VyLFxuICBVc2VyUHJpbWFyeUd1aWxkLFxuICBWb2ljZVN0YXRlLFxuICBXZWJob29rLFxufSBmcm9tICcuL3RyYW5zZm9ybWVycy90eXBlcy5qcyc7XG5cbi8qKlxuICogQWxsIHRoZSBvYmplY3RzIHRoYXQgc3VwcG9ydCBkZXNpcmVkIHByb3BlcnRpZXNcbiAqXG4gKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyBhdCBhbnkgdGltZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zZm9ybWVyc09iamVjdHMge1xuICBhY3Rpdml0eUluc3RhbmNlOiBBY3Rpdml0eUluc3RhbmNlO1xuICBhY3Rpdml0eUxvY2F0aW9uOiBBY3Rpdml0eUxvY2F0aW9uO1xuICBhdHRhY2htZW50OiBBdHRhY2htZW50O1xuICBhdmF0YXJEZWNvcmF0aW9uRGF0YTogQXZhdGFyRGVjb3JhdGlvbkRhdGE7XG4gIGNoYW5uZWw6IENoYW5uZWw7XG4gIGNvbGxlY3RpYmxlczogQ29sbGVjdGlibGVzO1xuICBjb21wb25lbnQ6IENvbXBvbmVudDtcbiAgZGVmYXVsdFJlYWN0aW9uRW1vamk6IERlZmF1bHRSZWFjdGlvbkVtb2ppO1xuICBlbW9qaTogRW1vamk7XG4gIGVudGl0bGVtZW50OiBFbnRpdGxlbWVudDtcbiAgZm9ydW1UYWc6IEZvcnVtVGFnO1xuICBndWlsZDogR3VpbGQ7XG4gIGd1aWxkT25ib2FyZGluZzogR3VpbGRPbmJvYXJkaW5nO1xuICBndWlsZE9uYm9hcmRpbmdQcm9tcHQ6IEd1aWxkT25ib2FyZGluZ1Byb21wdDtcbiAgZ3VpbGRPbmJvYXJkaW5nUHJvbXB0T3B0aW9uOiBHdWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb247XG4gIGluY2lkZW50c0RhdGE6IEluY2lkZW50c0RhdGE7XG4gIGludGVyYWN0aW9uOiBJbnRlcmFjdGlvbjtcbiAgaW50ZXJhY3Rpb25DYWxsYmFjazogSW50ZXJhY3Rpb25DYWxsYmFjaztcbiAgaW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlOiBJbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2U7XG4gIGludGVyYWN0aW9uUmVzb3VyY2U6IEludGVyYWN0aW9uUmVzb3VyY2U7XG4gIGludml0ZTogSW52aXRlO1xuICBpbnZpdGVTdGFnZUluc3RhbmNlOiBJbnZpdGVTdGFnZUluc3RhbmNlO1xuICBsb2JieTogTG9iYnk7XG4gIGxvYmJ5TWVtYmVyOiBMb2JieU1lbWJlcjtcbiAgbWVkaWFHYWxsZXJ5SXRlbTogTWVkaWFHYWxsZXJ5SXRlbTtcbiAgbWVtYmVyOiBNZW1iZXI7XG4gIG1lc3NhZ2U6IE1lc3NhZ2U7XG4gIG1lc3NhZ2VDYWxsOiBNZXNzYWdlQ2FsbDtcbiAgbWVzc2FnZUludGVyYWN0aW9uOiBNZXNzYWdlSW50ZXJhY3Rpb247XG4gIG1lc3NhZ2VJbnRlcmFjdGlvbk1ldGFkYXRhOiBNZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YTtcbiAgbWVzc2FnZVBpbjogTWVzc2FnZVBpbjtcbiAgbWVzc2FnZVJlZmVyZW5jZTogTWVzc2FnZVJlZmVyZW5jZTtcbiAgbWVzc2FnZVNuYXBzaG90OiBNZXNzYWdlU25hcHNob3Q7XG4gIG5hbWVwbGF0ZTogTmFtZXBsYXRlO1xuICBwb2xsOiBQb2xsO1xuICBwb2xsQW5zd2VyOiBQb2xsQW5zd2VyO1xuICBwb2xsQW5zd2VyQ291bnQ6IFBvbGxBbnN3ZXJDb3VudDtcbiAgcG9sbE1lZGlhOiBQb2xsTWVkaWE7XG4gIHBvbGxSZXN1bHQ6IFBvbGxSZXN1bHQ7XG4gIHJvbGU6IFJvbGU7XG4gIHJvbGVDb2xvcnM6IFJvbGVDb2xvcnM7XG4gIHNjaGVkdWxlZEV2ZW50OiBTY2hlZHVsZWRFdmVudDtcbiAgc2NoZWR1bGVkRXZlbnRSZWN1cnJlbmNlUnVsZTogU2NoZWR1bGVkRXZlbnRSZWN1cnJlbmNlUnVsZTtcbiAgc2t1OiBTa3U7XG4gIHNvdW5kYm9hcmRTb3VuZDogU291bmRib2FyZFNvdW5kO1xuICBzdGFnZUluc3RhbmNlOiBTdGFnZUluc3RhbmNlO1xuICBzdGlja2VyOiBTdGlja2VyO1xuICBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgdW5mdXJsZWRNZWRpYUl0ZW06IFVuZnVybGVkTWVkaWFJdGVtO1xuICB1c2VyOiBVc2VyO1xuICB1c2VyUHJpbWFyeUd1aWxkOiBVc2VyUHJpbWFyeUd1aWxkO1xuICB2b2ljZVN0YXRlOiBWb2ljZVN0YXRlO1xuICB3ZWJob29rOiBXZWJob29rO1xufVxuXG4vLyBOT1RFOiB0aGUgdG9wLWxldmVsIG9iamVjdHMgbmVlZCBib3RoIHRoZSBkZXBlbmRlbmNpZXMgYW5kIGFsd2F5c1ByZXNlbnRzIGV2ZW4gaWYgZW1wdHkgd2hlbiB0aGUga2V5IGlzIHNwZWNpZmllZCwgdGhpcyBpcyBkdWUgdGhlIGV4dGVuZHMgJiBudWxsYWJpbGl0eSBvbiBEZXNpcmVkUHJvcGVydGllc01ldGFkYXRhXG4vLyAgICAgICBpbnRlcm5hbCBwcm9wZXJ0aWVzIG5lZWRzIHRvIGJlIGluIHRoZSBhbHdheXNQcmVzZW50cyBhcnJheSwgZGVwZW5kaW5nIG9uIGFuIGFsd2F5cyBwcmVzZW50IHZhbHVlIGlzIGFjY2VwdGVkXG5cbi8qKlxuICogTWV0YWRhdGEgZm9yIHR5cGVzY3JpcHQgdG8gY3JlYXRlIHRoZSBjb3JyZWN0IHR5cGVzIGZvciBkZXNpcmVkIHByb3BlcnRpZXNcbiAqXG4gKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyB3aXRob3V0IG5vdGljZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllc01ldGFkYXRhIGV4dGVuZHMgRGVzaXJlZFByb3BlcnRpZXNNZXRhZGF0YSB7XG4gIGNoYW5uZWw6IHtcbiAgICBkZXBlbmRlbmNpZXM6IHtcbiAgICAgIGFyY2hpdmVkOiBbJ3RvZ2dsZXMnXTtcbiAgICAgIGludml0YWJsZTogWyd0b2dnbGVzJ107XG4gICAgICBsb2NrZWQ6IFsndG9nZ2xlcyddO1xuICAgICAgbnNmdzogWyd0b2dnbGVzJ107XG4gICAgICBuZXdseUNyZWF0ZWQ6IFsndG9nZ2xlcyddO1xuICAgICAgbWFuYWdlZDogWyd0b2dnbGVzJ107XG4gICAgfTtcbiAgICBhbHdheXNQcmVzZW50czogWyd0b2dnbGVzJywgJ2ludGVybmFsT3ZlcndyaXRlcycsICdpbnRlcm5hbFRocmVhZE1ldGFkYXRhJ107XG4gIH07XG5cbiAgZ3VpbGQ6IHtcbiAgICBkZXBlbmRlbmNpZXM6IHtcbiAgICAgIHRocmVhZHM6IFsnY2hhbm5lbHMnXTtcbiAgICAgIGZlYXR1cmVzOiBbJ3RvZ2dsZXMnXTtcbiAgICB9O1xuICAgIGFsd2F5c1ByZXNlbnRzOiBbXTtcbiAgfTtcblxuICBpbnRlcmFjdGlvbjoge1xuICAgIGRlcGVuZGVuY2llczoge1xuICAgICAgcmVzcG9uZDogWyd0eXBlJywgJ3Rva2VuJywgJ2lkJ107XG4gICAgICBlZGl0OiBbJ3R5cGUnLCAndG9rZW4nLCAnaWQnXTtcbiAgICAgIGRlZmVyRWRpdDogWyd0eXBlJywgJ3Rva2VuJywgJ2lkJ107XG4gICAgICBkZWZlcjogWyd0eXBlJywgJ3Rva2VuJywgJ2lkJ107XG4gICAgICBkZWxldGU6IFsndHlwZScsICd0b2tlbiddO1xuICAgIH07XG4gICAgYWx3YXlzUHJlc2VudHM6IFsnYm90JywgJ2Fja25vd2xlZGdlZCddO1xuICB9O1xuXG4gIG1lbWJlcjoge1xuICAgIGRlcGVuZGVuY2llczoge1xuICAgICAgZGVhZjogWyd0b2dnbGVzJ107XG4gICAgICBtdXRlOiBbJ3RvZ2dsZXMnXTtcbiAgICAgIHBlbmRpbmc6IFsndG9nZ2xlcyddO1xuICAgICAgZmxhZ3M6IFsndG9nZ2xlcyddO1xuICAgICAgZGlkUmVqb2luOiBbJ3RvZ2dsZXMnXTtcbiAgICAgIHN0YXJ0ZWRPbmJvYXJkaW5nOiBbJ3RvZ2dsZXMnXTtcbiAgICAgIGJ5cGFzc2VzVmVyaWZpY2F0aW9uOiBbJ3RvZ2dsZXMnXTtcbiAgICAgIGNvbXBsZXRlZE9uYm9hcmRpbmc6IFsndG9nZ2xlcyddO1xuICAgIH07XG4gICAgYWx3YXlzUHJlc2VudHM6IFtdO1xuICB9O1xuXG4gIG1lc3NhZ2U6IHtcbiAgICBkZXBlbmRlbmNpZXM6IHtcbiAgICAgIGNyb3NzcG9zdGVkOiBbJ2ZsYWdzJ107XG4gICAgICBlcGhlbWVyYWw6IFsnZmxhZ3MnXTtcbiAgICAgIGZhaWxlZFRvTWVudGlvblNvbWVSb2xlc0luVGhyZWFkOiBbJ2ZsYWdzJ107XG4gICAgICBoYXNUaHJlYWQ6IFsnZmxhZ3MnXTtcbiAgICAgIGlzQ3Jvc3Nwb3N0OiBbJ2ZsYWdzJ107XG4gICAgICBsb2FkaW5nOiBbJ2ZsYWdzJ107XG4gICAgICBtZW50aW9uZWRVc2VySWRzOiBbJ21lbnRpb25zJ107XG4gICAgICBtZW50aW9uRXZlcnlvbmU6IFsnYml0ZmllbGQnXTtcbiAgICAgIHBpbm5lZDogWydiaXRmaWVsZCddO1xuICAgICAgc291cmNlTWVzc2FnZURlbGV0ZWQ6IFsnZmxhZ3MnXTtcbiAgICAgIHN1cHByZXNzRW1iZWRzOiBbJ2ZsYWdzJ107XG4gICAgICBzdXBwcmVzc05vdGlmaWNhdGlvbnM6IFsnZmxhZ3MnXTtcbiAgICAgIHRpbWVzdGFtcDogWydpZCddO1xuICAgICAgdHRzOiBbJ2JpdGZpZWxkJ107XG4gICAgICB1cmdlbnQ6IFsnZmxhZ3MnXTtcbiAgICB9O1xuICAgIGFsd2F5c1ByZXNlbnRzOiBbJ2JpdGZpZWxkJywgJ2ZsYWdzJ107XG4gIH07XG5cbiAgcm9sZToge1xuICAgIGRlcGVuZGVuY2llczoge1xuICAgICAgaG9pc3Q6IFsndG9nZ2xlcyddO1xuICAgICAgbWFuYWdlZDogWyd0b2dnbGVzJ107XG4gICAgICBtZW50aW9uYWJsZTogWyd0b2dnbGVzJ107XG4gICAgICBwcmVtaXVtU3Vic2NyaWJlcjogWyd0b2dnbGVzJ107XG4gICAgICBhdmFpbGFibGVGb3JQdXJjaGFzZTogWyd0b2dnbGVzJ107XG4gICAgICBndWlsZENvbm5lY3Rpb25zOiBbJ3RvZ2dsZXMnXTtcbiAgICB9O1xuICAgIGFsd2F5c1ByZXNlbnRzOiBbJ2ludGVybmFsVGFncyddO1xuICB9O1xuXG4gIHVzZXI6IHtcbiAgICBkZXBlbmRlbmNpZXM6IHtcbiAgICAgIHRhZzogWyd1c2VybmFtZScsICdkaXNjcmltaW5hdG9yJ107XG4gICAgICBib3Q6IFsndG9nZ2xlcyddO1xuICAgICAgc3lzdGVtOiBbJ3RvZ2dsZXMnXTtcbiAgICAgIG1mYUVuYWJsZWQ6IFsndG9nZ2xlcyddO1xuICAgICAgdmVyaWZpZWQ6IFsndG9nZ2xlcyddO1xuICAgICAgYXZhdGFyVXJsOiBbJ2F2YXRhcicsICdpZCddO1xuICAgICAgZGlzcGxheU5hbWU6IFsndXNlcm5hbWUnLCAnZ2xvYmFsTmFtZSddO1xuICAgICAgZGVmYXVsdEF2YXRhclVybDogWydpZCcsICdkaXNjcmltaW5hdG9yJ107XG4gICAgICBkaXNwbGF5QXZhdGFyVXJsOiBbJ2F2YXRhcicsICdpZCcsICdkaXNjcmltaW5hdG9yJ107XG4gICAgICBjcmVhdGVkVGltZXN0YW1wOiBbJ2lkJ107XG4gICAgfTtcbiAgICBhbHdheXNQcmVzZW50czogW107XG4gIH07XG5cbiAgZW1vamk6IHtcbiAgICBkZXBlbmRlbmNpZXM6IHtcbiAgICAgIGFuaW1hdGVkOiBbJ3RvZ2dsZXMnXTtcbiAgICAgIGF2YWlsYWJsZTogWyd0b2dnbGVzJ107XG4gICAgICBtYW5hZ2VkOiBbJ3RvZ2dsZXMnXTtcbiAgICAgIHJlcXVpcmVDb2xvbnM6IFsndG9nZ2xlcyddO1xuICAgIH07XG4gICAgYWx3YXlzUHJlc2VudHM6IFsndG9nZ2xlcyddO1xuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRGVzaXJlZFByb3BlcnRpZXNPYmplY3Q8VCBleHRlbmRzIFJlY3Vyc2l2ZVBhcnRpYWw8VHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXM+LCBURGVmYXVsdCBleHRlbmRzIGJvb2xlYW4gPSBmYWxzZT4oXG4gIGRlc2lyZWRQcm9wZXJ0aWVzOiBULFxuICBkZWZhdWx0VmFsdWU6IFREZWZhdWx0ID0gZmFsc2UgYXMgVERlZmF1bHQsXG4pOiBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPFQsIFREZWZhdWx0PiB7XG4gIHJldHVybiB7XG4gICAgYWN0aXZpdHlJbnN0YW5jZToge1xuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgaW5zdGFuY2VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbGF1bmNoSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGxvY2F0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyczogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuYWN0aXZpdHlJbnN0YW5jZSxcbiAgICB9LFxuICAgIGFjdGl2aXR5TG9jYXRpb246IHtcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGtpbmQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmFjdGl2aXR5TG9jYXRpb24sXG4gICAgfSxcbiAgICBhdHRhY2htZW50OiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZmlsZW5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRpdGxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb250ZW50VHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgc2l6ZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdXJsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcm94eVVybDogZGVmYXVsdFZhbHVlLFxuICAgICAgaGVpZ2h0OiBkZWZhdWx0VmFsdWUsXG4gICAgICB3aWR0aDogZGVmYXVsdFZhbHVlLFxuICAgICAgZXBoZW1lcmFsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkZXNjcmlwdGlvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgZHVyYXRpb25fc2VjczogZGVmYXVsdFZhbHVlLFxuICAgICAgd2F2ZWZvcm06IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGZsYWdzOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5hdHRhY2htZW50LFxuICAgIH0sXG4gICAgY2hhbm5lbDoge1xuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgcG9zaXRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRvcGljOiBkZWZhdWx0VmFsdWUsXG4gICAgICBiaXRyYXRlOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyTGltaXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJhdGVMaW1pdFBlclVzZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJ0Y1JlZ2lvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgdmlkZW9RdWFsaXR5TW9kZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbGFzdFBpblRpbWVzdGFtcDogZGVmYXVsdFZhbHVlLFxuICAgICAgcGVybWlzc2lvbk92ZXJ3cml0ZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwZXJtaXNzaW9uczogZGVmYXVsdFZhbHVlLFxuICAgICAgbGFzdE1lc3NhZ2VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgb3duZXJJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcGFyZW50SWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lbWJlckNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZXNzYWdlQ291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlZmF1bHRBdXRvQXJjaGl2ZUR1cmF0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBmbGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGllZFRhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGF2YWlsYWJsZVRhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlZmF1bHRGb3J1bUxheW91dDogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVmYXVsdFJlYWN0aW9uRW1vamk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlZmF1bHRTb3J0T3JkZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlZmF1bHRUaHJlYWRSYXRlTGltaXRQZXJVc2VyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpY29uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZW1iZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJlY2lwaWVudHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRvdGFsTWVzc2FnZVNlbnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRocmVhZE1ldGFkYXRhOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5jaGFubmVsLFxuICAgIH0sXG4gICAgY29sbGVjdGlibGVzOiB7XG4gICAgICBuYW1lcGxhdGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmNvbGxlY3RpYmxlcyxcbiAgICB9LFxuICAgIGNvbXBvbmVudDoge1xuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgY3VzdG9tSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJlcXVpcmVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkaXNhYmxlZDogZGVmYXVsdFZhbHVlLFxuICAgICAgc3R5bGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGxhYmVsOiBkZWZhdWx0VmFsdWUsXG4gICAgICB2YWx1ZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZW1vamk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVybDogZGVmYXVsdFZhbHVlLFxuICAgICAgY2hhbm5lbFR5cGVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBvcHRpb25zOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwbGFjZWhvbGRlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgbWluVmFsdWVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtYXhWYWx1ZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1pbkxlbmd0aDogZGVmYXVsdFZhbHVlLFxuICAgICAgbWF4TGVuZ3RoOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb21wb25lbnRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkZWZhdWx0VmFsdWVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBza3VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFjY2Vzc29yeTogZGVmYXVsdFZhbHVlLFxuICAgICAgY29udGVudDogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVzY3JpcHRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNwb2lsZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGl0ZW1zOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkaXZpZGVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzcGFjaW5nOiBkZWZhdWx0VmFsdWUsXG4gICAgICBmaWxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZWRpYTogZGVmYXVsdFZhbHVlLFxuICAgICAgYWNjZW50Q29sb3I6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNpemU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNvbXBvbmVudDogZGVmYXVsdFZhbHVlLFxuICAgICAgdmFsdWVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5jb21wb25lbnQsXG4gICAgfSxcbiAgICBmb3J1bVRhZzoge1xuICAgICAgZW1vamlJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZW1vamlOYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbW9kZXJhdGVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBuYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5mb3J1bVRhZyxcbiAgICB9LFxuICAgIGVtb2ppOiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgcm9sZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVzZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmVtb2ppLFxuICAgIH0sXG4gICAgZGVmYXVsdFJlYWN0aW9uRW1vamk6IHtcbiAgICAgIGVtb2ppSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGVtb2ppTmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuZGVmYXVsdFJlYWN0aW9uRW1vamksXG4gICAgfSxcbiAgICBndWlsZDoge1xuICAgICAgYWZrVGltZW91dDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwcm94aW1hdGVNZW1iZXJDb3VudDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwcm94aW1hdGVQcmVzZW5jZUNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBkZWZhdWx0TWVzc2FnZU5vdGlmaWNhdGlvbnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBleHBsaWNpdENvbnRlbnRGaWx0ZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1heE1lbWJlcnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1heFByZXNlbmNlczogZGVmYXVsdFZhbHVlLFxuICAgICAgbWF4VmlkZW9DaGFubmVsVXNlcnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1mYUxldmVsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBuYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjaGFubmVsczogZGVmYXVsdFZhbHVlLFxuICAgICAgZW1vamlzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpY29uSGFzaDogZGVmYXVsdFZhbHVlLFxuICAgICAgbGFyZ2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lbWJlcnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG93bmVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcmVzZW5jZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJvbGVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzdGlja2VyczogZGVmYXVsdFZhbHVlLFxuICAgICAgdG9nZ2xlczogZGVmYXVsdFZhbHVlLFxuICAgICAgdW5hdmFpbGFibGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHZvaWNlU3RhdGVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICB3aWRnZXRFbmFibGVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBuc2Z3TGV2ZWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHByZWZlcnJlZExvY2FsZTogZGVmYXVsdFZhbHVlLFxuICAgICAgcHJlbWl1bVN1YnNjcmlwdGlvbkNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcmVtaXVtVGllcjogZGVmYXVsdFZhbHVlLFxuICAgICAgc3RhZ2VJbnN0YW5jZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHN5c3RlbUNoYW5uZWxGbGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgdmFuaXR5VXJsQ29kZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdmVyaWZpY2F0aW9uTGV2ZWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHdlbGNvbWVTY3JlZW46IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRpc2NvdmVyeVNwbGFzaDogZGVmYXVsdFZhbHVlLFxuICAgICAgam9pbmVkQXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lbWJlckNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBzaGFyZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpY29uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBiYW5uZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNwbGFzaDogZGVmYXVsdFZhbHVlLFxuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG93bmVySWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBlcm1pc3Npb25zOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhZmtDaGFubmVsSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHdpZGdldENoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgc3lzdGVtQ2hhbm5lbElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBydWxlc0NoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcHVibGljVXBkYXRlc0NoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcHJlbWl1bVByb2dyZXNzQmFyRW5hYmxlZDogZGVmYXVsdFZhbHVlLFxuICAgICAgc2FmZXR5QWxlcnRzQ2hhbm5lbElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtYXhTdGFnZVZpZGVvQ2hhbm5lbFVzZXJzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbmNpZGVudHNEYXRhOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5ndWlsZCxcbiAgICB9LFxuICAgIGluY2lkZW50c0RhdGE6IHtcbiAgICAgIGRtU3BhbURldGVjdGVkQXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRtc0Rpc2FibGVkVW50aWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGludml0ZXNEaXNhYmxlZFVudGlsOiBkZWZhdWx0VmFsdWUsXG4gICAgICByYWlkRGV0ZWN0ZWRBdDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuaW5jaWRlbnRzRGF0YSxcbiAgICB9LFxuICAgIGludGVyYWN0aW9uOiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVtYmVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0b2tlbjogZGVmYXVsdFZhbHVlLFxuICAgICAgdmVyc2lvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVzc2FnZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZGF0YTogZGVmYXVsdFZhbHVlLFxuICAgICAgbG9jYWxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZExvY2FsZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZW50aXRsZW1lbnRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhcHBQZXJtaXNzaW9uczogZGVmYXVsdFZhbHVlLFxuICAgICAgYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVyczogZGVmYXVsdFZhbHVlLFxuICAgICAgY29udGV4dDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXR0YWNobWVudFNpemVMaW1pdDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuaW50ZXJhY3Rpb24sXG4gICAgfSxcbiAgICBpbnRlcmFjdGlvbkNhbGxiYWNrOiB7XG4gICAgICB0eXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYWN0aXZpdHlJbnN0YW5jZUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICByZXNwb25zZU1lc3NhZ2VFcGhlbWVyYWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJlc3BvbnNlTWVzc2FnZUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICByZXNwb25zZU1lc3NhZ2VMb2FkaW5nOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5pbnRlcmFjdGlvbkNhbGxiYWNrLFxuICAgIH0sXG4gICAgaW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlOiB7XG4gICAgICBpbnRlcmFjdGlvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVzb3VyY2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZSxcbiAgICB9LFxuICAgIGludGVyYWN0aW9uUmVzb3VyY2U6IHtcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFjdGl2aXR5SW5zdGFuY2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lc3NhZ2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmludGVyYWN0aW9uUmVzb3VyY2UsXG4gICAgfSxcbiAgICBpbnZpdGU6IHtcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgY29kZTogZGVmYXVsdFZhbHVlLFxuICAgICAgY3JlYXRlZEF0OiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbnZpdGVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtYXhBZ2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1heFVzZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRhcmdldFR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRhcmdldFVzZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRhcmdldEFwcGxpY2F0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0ZW1wb3Jhcnk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVzZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFwcHJveGltYXRlTWVtYmVyQ291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFwcHJveGltYXRlUHJlc2VuY2VDb3VudDogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRTY2hlZHVsZWRFdmVudDogZGVmYXVsdFZhbHVlLFxuICAgICAgZXhwaXJlc0F0OiBkZWZhdWx0VmFsdWUsXG4gICAgICBmbGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuaW52aXRlLFxuICAgIH0sXG4gICAgbWVtYmVyOiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdXNlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgbmljazogZGVmYXVsdFZhbHVlLFxuICAgICAgcm9sZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGpvaW5lZEF0OiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcmVtaXVtU2luY2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGF2YXRhcjogZGVmYXVsdFZhbHVlLFxuICAgICAgYmFubmVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwZXJtaXNzaW9uczogZGVmYXVsdFZhbHVlLFxuICAgICAgY29tbXVuaWNhdGlvbkRpc2FibGVkVW50aWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRvZ2dsZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGF2YXRhckRlY29yYXRpb25EYXRhOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5tZW1iZXIsXG4gICAgfSxcbiAgICBtZXNzYWdlOiB7XG4gICAgICBhY3Rpdml0eTogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFwcGxpY2F0aW9uSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGF0dGFjaG1lbnRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhdXRob3I6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgY29tcG9uZW50czogZGVmYXVsdFZhbHVlLFxuICAgICAgY29udGVudDogZGVmYXVsdFZhbHVlLFxuICAgICAgZWRpdGVkVGltZXN0YW1wOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbWJlZHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbnRlcmFjdGlvbk1ldGFkYXRhOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbnRlcmFjdGlvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVtYmVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZW50aW9uZWRDaGFubmVsSWRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZW50aW9uZWRSb2xlSWRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZW50aW9uczogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVzc2FnZVJlZmVyZW5jZTogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVzc2FnZVNuYXBzaG90czogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVmZXJlbmNlZE1lc3NhZ2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5vbmNlOiBkZWZhdWx0VmFsdWUsXG4gICAgICByZWFjdGlvbnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHN0aWNrZXJJdGVtczogZGVmYXVsdFZhbHVlLFxuICAgICAgdGhyZWFkOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0eXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICB3ZWJob29rSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBvbGw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNhbGw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2UsXG4gICAgfSxcbiAgICBtZXNzYWdlU25hcHNob3Q6IHtcbiAgICAgIG1lc3NhZ2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2VTbmFwc2hvdCxcbiAgICB9LFxuICAgIG1lc3NhZ2VJbnRlcmFjdGlvbk1ldGFkYXRhOiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdXNlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVyczogZGVmYXVsdFZhbHVlLFxuICAgICAgb3JpZ2luYWxSZXNwb25zZU1lc3NhZ2VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgaW50ZXJhY3RlZE1lc3NhZ2VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdHJpZ2dlcmluZ0ludGVyYWN0aW9uTWV0YWRhdGE6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRhcmdldE1lc3NhZ2VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdGFyZ2V0VXNlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEsXG4gICAgfSxcbiAgICBtZXNzYWdlUGluOiB7XG4gICAgICBtZXNzYWdlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwaW5uZWRBdDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZVBpbixcbiAgICB9LFxuICAgIG1lc3NhZ2VJbnRlcmFjdGlvbjoge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lbWJlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgbmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdXNlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZUludGVyYWN0aW9uLFxuICAgIH0sXG4gICAgbWVzc2FnZVJlZmVyZW5jZToge1xuICAgICAgbWVzc2FnZUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjaGFubmVsSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2VSZWZlcmVuY2UsXG4gICAgfSxcbiAgICBtZXNzYWdlQ2FsbDoge1xuICAgICAgcGFydGljaXBhbnRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbmRlZFRpbWVzdGFtcDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZUNhbGwsXG4gICAgfSxcbiAgICBuYW1lcGxhdGU6IHtcbiAgICAgIHNrdUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhc3NldDogZGVmYXVsdFZhbHVlLFxuICAgICAgbGFiZWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBhbGV0dGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLm5hbWVwbGF0ZSxcbiAgICB9LFxuICAgIHJvbGU6IHtcbiAgICAgIG5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBvc2l0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb2xvcjogZGVmYXVsdFZhbHVlLFxuICAgICAgY29sb3JzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcGVybWlzc2lvbnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGljb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVuaWNvZGVFbW9qaTogZGVmYXVsdFZhbHVlLFxuICAgICAgZmxhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRvZ2dsZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnJvbGUsXG4gICAgfSxcbiAgICByb2xlQ29sb3JzOiB7XG4gICAgICBwcmltYXJ5Q29sb3I6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNlY29uZGFyeUNvbG9yOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0ZXJ0aWFyeUNvbG9yOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5yb2xlQ29sb3JzLFxuICAgIH0sXG4gICAgc2NoZWR1bGVkRXZlbnQ6IHtcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjaGFubmVsSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNyZWF0b3JJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgc2NoZWR1bGVkU3RhcnRUaW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzY2hlZHVsZWRFbmRUaW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbnRpdHlJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgY3JlYXRvcjogZGVmYXVsdFZhbHVlLFxuICAgICAgbmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVzY3JpcHRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHByaXZhY3lMZXZlbDogZGVmYXVsdFZhbHVlLFxuICAgICAgc3RhdHVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbnRpdHlUeXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyQ291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGxvY2F0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbWFnZTogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVjdXJyZW5jZVJ1bGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnNjaGVkdWxlZEV2ZW50LFxuICAgIH0sXG4gICAgc2NoZWR1bGVkRXZlbnRSZWN1cnJlbmNlUnVsZToge1xuICAgICAgc3RhcnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGVuZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZnJlcXVlbmN5OiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbnRlcnZhbDogZGVmYXVsdFZhbHVlLFxuICAgICAgYnlXZWVrZGF5OiBkZWZhdWx0VmFsdWUsXG4gICAgICBieU5XZWVrZGF5OiBkZWZhdWx0VmFsdWUsXG4gICAgICBieU1vbnRoOiBkZWZhdWx0VmFsdWUsXG4gICAgICBieU1vbnRoRGF5OiBkZWZhdWx0VmFsdWUsXG4gICAgICBieVllYXJEYXk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5zY2hlZHVsZWRFdmVudFJlY3VycmVuY2VSdWxlLFxuICAgIH0sXG4gICAgc3RhZ2VJbnN0YW5jZToge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdG9waWM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkU2NoZWR1bGVkRXZlbnRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuc3RhZ2VJbnN0YW5jZSxcbiAgICB9LFxuICAgIGludml0ZVN0YWdlSW5zdGFuY2U6IHtcbiAgICAgIG1lbWJlcnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBhcnRpY2lwYW50Q291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNwZWFrZXJDb3VudDogZGVmYXVsdFZhbHVlLFxuICAgICAgdG9waWM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmludml0ZVN0YWdlSW5zdGFuY2UsXG4gICAgfSxcbiAgICBtZWRpYUdhbGxlcnlJdGVtOiB7XG4gICAgICBtZWRpYTogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVzY3JpcHRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNwb2lsZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLm1lZGlhR2FsbGVyeUl0ZW0sXG4gICAgfSxcbiAgICBzdGlja2VyOiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcGFja0lkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBuYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkZXNjcmlwdGlvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgdGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZm9ybWF0VHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgYXZhaWxhYmxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzb3J0VmFsdWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnN0aWNrZXIsXG4gICAgfSxcbiAgICB1bmZ1cmxlZE1lZGlhSXRlbToge1xuICAgICAgdXJsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcm94eVVybDogZGVmYXVsdFZhbHVlLFxuICAgICAgaGVpZ2h0OiBkZWZhdWx0VmFsdWUsXG4gICAgICB3aWR0aDogZGVmYXVsdFZhbHVlLFxuICAgICAgY29udGVudFR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGF0dGFjaG1lbnRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMudW5mdXJsZWRNZWRpYUl0ZW0sXG4gICAgfSxcbiAgICB1c2VyOiB7XG4gICAgICB1c2VybmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZ2xvYmFsTmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgbG9jYWxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBmbGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgcHJlbWl1bVR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHB1YmxpY0ZsYWdzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhY2NlbnRDb2xvcjogZGVmYXVsdFZhbHVlLFxuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRpc2NyaW1pbmF0b3I6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGF2YXRhcjogZGVmYXVsdFZhbHVlLFxuICAgICAgZW1haWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGJhbm5lcjogZGVmYXVsdFZhbHVlLFxuICAgICAgYXZhdGFyRGVjb3JhdGlvbkRhdGE6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRvZ2dsZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNvbGxlY3RpYmxlczogZGVmYXVsdFZhbHVlLFxuICAgICAgcHJpbWFyeUd1aWxkOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy51c2VyLFxuICAgIH0sXG4gICAgdXNlclByaW1hcnlHdWlsZDoge1xuICAgICAgaWRlbnRpdHlHdWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpZGVudGl0eUVuYWJsZWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRhZzogZGVmYXVsdFZhbHVlLFxuICAgICAgYmFkZ2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnVzZXJQcmltYXJ5R3VpbGQsXG4gICAgfSxcbiAgICBhdmF0YXJEZWNvcmF0aW9uRGF0YToge1xuICAgICAgYXNzZXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNrdUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5hdmF0YXJEZWNvcmF0aW9uRGF0YSxcbiAgICB9LFxuICAgIHdlYmhvb2s6IHtcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0eXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjaGFubmVsSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVzZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGF2YXRhcjogZGVmYXVsdFZhbHVlLFxuICAgICAgdG9rZW46IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFwcGxpY2F0aW9uSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNvdXJjZUd1aWxkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzb3VyY2VDaGFubmVsOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1cmw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLndlYmhvb2ssXG4gICAgfSxcbiAgICBndWlsZE9uYm9hcmRpbmc6IHtcbiAgICAgIGRlZmF1bHRDaGFubmVsSWRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbmFibGVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtb2RlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcm9tcHRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5ndWlsZE9uYm9hcmRpbmcsXG4gICAgfSxcbiAgICBndWlsZE9uYm9hcmRpbmdQcm9tcHQ6IHtcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbk9uYm9hcmRpbmc6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG9wdGlvbnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJlcXVpcmVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzaW5nbGVTZWxlY3Q6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRpdGxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0eXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5ndWlsZE9uYm9hcmRpbmdQcm9tcHQsXG4gICAgfSxcbiAgICBndWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb246IHtcbiAgICAgIGNoYW5uZWxJZHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbW9qaTogZGVmYXVsdFZhbHVlLFxuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJvbGVJZHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRpdGxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5ndWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb24sXG4gICAgfSxcbiAgICBlbnRpdGxlbWVudDoge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNrdUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VySWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFwcGxpY2F0aW9uSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlbGV0ZWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHN0YXJ0c0F0OiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbmRzQXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNvbnN1bWVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5lbnRpdGxlbWVudCxcbiAgICB9LFxuICAgIHNrdToge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFwcGxpY2F0aW9uSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNsdWc6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGZsYWdzOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5za3UsXG4gICAgfSxcbiAgICB2b2ljZVN0YXRlOiB7XG4gICAgICByZXF1ZXN0VG9TcGVha1RpbWVzdGFtcDogZGVmYXVsdFZhbHVlLFxuICAgICAgY2hhbm5lbElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0b2dnbGVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzZXNzaW9uSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVzZXJJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMudm9pY2VTdGF0ZSxcbiAgICB9LFxuICAgIHBvbGw6IHtcbiAgICAgIHF1ZXN0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhbnN3ZXJzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBleHBpcnk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGxheW91dFR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFsbG93TXVsdGlzZWxlY3Q6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJlc3VsdHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnBvbGwsXG4gICAgfSxcbiAgICBwb2xsQW5zd2VyOiB7XG4gICAgICBhbnN3ZXJJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcG9sbE1lZGlhOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5wb2xsQW5zd2VyLFxuICAgIH0sXG4gICAgcG9sbFJlc3VsdDoge1xuICAgICAgaXNGaW5hbGl6ZWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFuc3dlckNvdW50czogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMucG9sbFJlc3VsdCxcbiAgICB9LFxuICAgIHBvbGxBbnN3ZXJDb3VudDoge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZVZvdGVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5wb2xsQW5zd2VyQ291bnQsXG4gICAgfSxcbiAgICBwb2xsTWVkaWE6IHtcbiAgICAgIHRleHQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGVtb2ppOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5wb2xsTWVkaWEsXG4gICAgfSxcbiAgICBzdWJzY3JpcHRpb246IHtcbiAgICAgIGNhbmNlbGVkQXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNvdW50cnk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGN1cnJlbnRQZXJpb2RFbmQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGN1cnJlbnRQZXJpb2RTdGFydDogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVuZXdhbFNrdUlkczogZGVmYXVsdFZhbHVlLFxuICAgICAgZW50aXRsZW1lbnRJZHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBza3VJZHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHN0YXR1czogZGVmYXVsdFZhbHVlLFxuICAgICAgdXNlcklkOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5zdWJzY3JpcHRpb24sXG4gICAgfSxcbiAgICBzb3VuZGJvYXJkU291bmQ6IHtcbiAgICAgIGF2YWlsYWJsZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZW1vamlJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZW1vamlOYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBuYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzb3VuZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyOiBkZWZhdWx0VmFsdWUsXG4gICAgICB2b2x1bWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnNvdW5kYm9hcmRTb3VuZCxcbiAgICB9LFxuICAgIGxvYmJ5OiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbWV0YWRhdGE6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lbWJlcnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGxpbmtlZENoYW5uZWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmxvYmJ5LFxuICAgIH0sXG4gICAgbG9iYnlNZW1iZXI6IHtcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZXRhZGF0YTogZGVmYXVsdFZhbHVlLFxuICAgICAgZmxhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmxvYmJ5TWVtYmVyLFxuICAgIH0sXG4gIH0gc2F0aXNmaWVzIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzIGFzIENvbXBsZXRlRGVzaXJlZFByb3BlcnRpZXM8VCwgVERlZmF1bHQ+O1xufVxuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBLZXlCeVZhbHVlPFRPYmosIFRWYWx1ZT4gPSB7XG4gIFtLZXkgaW4ga2V5b2YgVE9ial06IFRPYmpbS2V5XSBleHRlbmRzIFRWYWx1ZSA/IEtleSA6IG5ldmVyO1xufVtrZXlvZiBUT2JqXTtcblxuLyoqIEBwcml2YXRlIFRoaXMgaXMgc3ViamVjdCB0byBicmVha2luZyBjaGFuZ2VzIHdpdGhvdXQgbm90aWNlcyAqL1xuZXhwb3J0IHR5cGUgQ29tcGxldGU8VE9iaiwgVERlZmF1bHQ+ID0ge1xuICBbSyBpbiBrZXlvZiBUT2JqXS0/OiB1bmRlZmluZWQgZXh0ZW5kcyBUT2JqW0tdID8gVERlZmF1bHQgOiBFeGNsdWRlPFRPYmpbS10sIHVuZGVmaW5lZD47XG59O1xuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBKb2luVHVwbGU8VCBleHRlbmRzIHN0cmluZ1tdLCBURGVsaW1pdGVyIGV4dGVuZHMgc3RyaW5nPiA9IFQgZXh0ZW5kcyByZWFkb25seSBbaW5mZXIgRiBleHRlbmRzIHN0cmluZywgLi4uaW5mZXIgUiBleHRlbmRzIHN0cmluZ1tdXVxuICA/IFJbJ2xlbmd0aCddIGV4dGVuZHMgMFxuICAgID8gRlxuICAgIDogYCR7Rn0ke1REZWxpbWl0ZXJ9JHtKb2luVHVwbGU8UiwgVERlbGltaXRlcj59YFxuICA6ICcnO1xuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBEZXNpcmVkUHJvcGVydGllc01ldGFkYXRhID0ge1xuICBbSyBpbiBrZXlvZiBUcmFuc2Zvcm1lcnNPYmplY3RzXToge1xuICAgIGRlcGVuZGVuY2llcz86IHtcbiAgICAgIFtLZXkgaW4ga2V5b2YgVHJhbnNmb3JtZXJzT2JqZWN0c1tLXV0/OiAoa2V5b2YgVHJhbnNmb3JtZXJzT2JqZWN0c1tLXSlbXTtcbiAgICB9O1xuICAgIGFsd2F5c1ByZXNlbnRzPzogKGtleW9mIFRyYW5zZm9ybWVyc09iamVjdHNbS10pW107XG4gIH07XG59O1xuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBEZXNpcmFibGVQcm9wZXJ0aWVzPFxuICBUIGV4dGVuZHMgVHJhbnNmb3JtZXJzT2JqZWN0c1trZXlvZiBUcmFuc2Zvcm1lcnNPYmplY3RzXSxcbiAgVEtleSBleHRlbmRzIGtleW9mIFRyYW5zZm9ybWVyc09iamVjdHMgPSBLZXlCeVZhbHVlPFRyYW5zZm9ybWVyc09iamVjdHMsIFQ+LFxuPiA9IEV4Y2x1ZGU8XG4gIGtleW9mIFQsXG4gIC8vIEV4Y2x1ZGUgdGhlIHByb3BzIHRoYXQgZGVwZW5kIG9uIHNvbWV0aGluZyBlbHNlIGZyb20gdGhlIGRlc2lyYWJsZSBwcm9wZXJ0aWVzXG4gIHwga2V5b2YgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXNNZXRhZGF0YVtUS2V5XVsnZGVwZW5kZW5jaWVzJ11cbiAgLy8gQ2hlY2sgaWYgYWxsIHRoZSBrZXlzIGFyZSBcImFsd2F5cyBwcmVzZW50c1wiLCBpZiB0aGlzIGlzIHRoZSBjYXNlIGl0IG1lYW5zIHdlIGRpZCBub3Qgc3BlY2lmeSBhbnkgYWx3YXlzIHByZXNlbnQga2V5XG4gIHwgKGtleW9mIFQgZXh0ZW5kcyBOb25OdWxsYWJsZTxUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllc01ldGFkYXRhW1RLZXldWydhbHdheXNQcmVzZW50cyddPltudW1iZXJdXG4gICAgICA/IG5ldmVyXG4gICAgICA6IE5vbk51bGxhYmxlPFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzTWV0YWRhdGFbVEtleV1bJ2Fsd2F5c1ByZXNlbnRzJ10+W251bWJlcl0pXG4+O1xuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBEZXNpcmVkUHJvcGVydGllc01hcHBlcjxUIGV4dGVuZHMgVHJhbnNmb3JtZXJzT2JqZWN0c1trZXlvZiBUcmFuc2Zvcm1lcnNPYmplY3RzXT4gPSB7XG4gIFtLZXkgaW4gRGVzaXJhYmxlUHJvcGVydGllczxUPl06IGJvb2xlYW47XG59O1xuXG5kZWNsYXJlIGNvbnN0IFR5cGVFcnJvclN5bWJvbDogdW5pcXVlIHN5bWJvbDtcblxuLyoqIEBwcml2YXRlIFRoaXMgaXMgc3ViamVjdCB0byBicmVha2luZyBjaGFuZ2VzIHdpdGhvdXQgbm90aWNlcyAqL1xuZXhwb3J0IGludGVyZmFjZSBEZXNpcmVkUHJvcGVydGllc0Vycm9yPFQgZXh0ZW5kcyBzdHJpbmc+IHtcbiAgW1R5cGVFcnJvclN5bWJvbF06IFQ7XG59XG5cbi8qKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyB3aXRob3V0IG5vdGljZXMgKi9cbmV4cG9ydCB0eXBlIEFyZURlcGVuZGVuY2llc1NhdGlzZmllZDxULCBURGVwZW5kZW5jaWVzIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgc3RyaW5nW10+IHwgdW5kZWZpbmVkLCBUUHJvcHM+ID0ge1xuICBbSyBpbiBrZXlvZiBUXTogSXNLZXlEZXNpcmVkPFRbS10sIFREZXBlbmRlbmNpZXMsIFRQcm9wcz4gZXh0ZW5kcyB0cnVlID8gdHJ1ZSA6IGZhbHNlO1xufTtcblxuLyoqIEBwcml2YXRlIFRoaXMgaXMgc3ViamVjdCB0byBicmVha2luZyBjaGFuZ2VzIHdpdGhvdXQgbm90aWNlcyAqL1xuZXhwb3J0IHR5cGUgSXNLZXlEZXNpcmVkPFRLZXksIFREZXBlbmRlbmNpZXMgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT4gfCB1bmRlZmluZWQsIFRQcm9wcz4gPSBUS2V5IGV4dGVuZHMga2V5b2YgVFByb3BzIC8vIFRoZSBrZXkgaGFzIGEgZGVzaXJlZCBwcm9wcz9cbiAgPyAvLyBZZXMsIGlzIGl0IHRydWU/XG4gICAgVFByb3BzW1RLZXldIGV4dGVuZHMgdHJ1ZVxuICAgID8gLy8gWWVzLCB0aGlzIGlzIGEga2V5IHRvIGluY2x1ZGVcbiAgICAgIHRydWVcbiAgICA6IC8vIE5vLCB0aGlzIGlzIGEga2V5IHRvIGV4Y2x1ZGVcbiAgICAgIERlc2lyZWRQcm9wZXJ0aWVzRXJyb3I8YFRoaXMgcHJvcGVydHkgaXMgbm90IHNldCBhcyBkZXNpcmVkIGluIGRlc2lyZWRQcm9wZXJ0aWVzIG9wdGlvbiBpbiBjcmVhdGVCb3QoKSwgc28geW91IGNhbid0IHVzZSBpdC4gTW9yZSBpbmZvIGhlcmU6IGh0dHBzOi8vZGlzY29yZGVuby5qcy5vcmcvZGVzaXJlZC1wcm9wc2A+XG4gIDogLy8gTm8sIGl0IGlzIGEgcHJvcHMgd2l0aCBkZXBlbmRlbmNpZXM/XG4gICAgVEtleSBleHRlbmRzIGtleW9mIFREZXBlbmRlbmNpZXNcbiAgICA/IC8vIFllcywgaGFzIGFsbCBvZiBpdHMgZGVwZW5kZW5jaWVzIHNhdGlzZmllZD9cbiAgICAgIEFyZURlcGVuZGVuY2llc1NhdGlzZmllZDxURGVwZW5kZW5jaWVzW1RLZXldLCBURGVwZW5kZW5jaWVzLCBUUHJvcHM+IGV4dGVuZHMgdHJ1ZVtdXG4gICAgICA/IC8vIFllcywgdGhpcyBpcyBhIGtleSB0byBpbmNsdWRlXG4gICAgICAgIHRydWVcbiAgICAgIDogLy8gTm8sIHRoaXMgaXMgYSBrZXkgdG8gbm90IGluY2x1ZGVcbiAgICAgICAgRGVzaXJlZFByb3BlcnRpZXNFcnJvcjxgVGhpcyBwcm9wZXJ0eSBkZXBlbmRzIG9uIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczogJHtKb2luVHVwbGU8Tm9uTnVsbGFibGU8VERlcGVuZGVuY2llcz5bVEtleV0sICcsICc+fS4gTm90IGFsbCBvZiB0aGVzZSBwcm9wcyBhcmUgc2V0IGFzIGRlc2lyZWQgaW4gZGVzaXJlZFByb3BlcnRpZXMgb3B0aW9uIGluIGNyZWF0ZUJvdCgpLCBzbyB5b3UgY2FuJ3QgdXNlIGl0LiBNb3JlIGluZm8gaGVyZTogaHR0cHM6Ly9kaXNjb3JkZW5vLmpzLm9yZy9kZXNpcmVkLXByb3BzYD5cbiAgICA6IC8vIE5vLCB3ZSBpbmNsdWRlIGl0IGJ1dCBpdCBkb2VzIG5vdCBoYXZlIG5laXRoZXIgcHJvcHMgbm9yIGRlcGVuZGVuY2llc1xuICAgICAgdHJ1ZTtcblxuLyoqIFRoZSBiZWhhdmlvciBpdCBzaG91bGQgYmUgdXNlZCB3aGVuIHJlc29sdmluZyBhbiB1bmRlc2lyZWQgcHJvcGVydHkgKi9cbmV4cG9ydCBlbnVtIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3Ige1xuICAvKiogV2hlbiB0aGlzIGJlaGF2aW9yIGlzIHVzZWQgdGhlIGtleSB3aWxsIGJlIG1pc3NpbmcgY29tcGxldGVseSAqL1xuICBSZW1vdmVLZXksXG4gIC8qKiBXaGVuIHRoaXMgYmVoYXZpb3IgaXMgdXNlZCB0aGUga2V5IHdpbGwgYmUgYSBzdHJpbmcgZXhwbGFpbmluZyB3aHkgdGhlIHByb3BlcnR5IGlzIGRpc2FibGVkICovXG4gIENoYW5nZVR5cGUsXG59XG5cbi8qKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyB3aXRob3V0IG5vdGljZXMgKi9cbmV4cG9ydCB0eXBlIFJlbW92ZUtleUlmVW5kZXNpcmVkPEtleSwgVCwgVFByb3BzIGV4dGVuZHMgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXM+ID0gSXNLZXlEZXNpcmVkPFxuICBLZXksXG4gIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzTWV0YWRhdGFbS2V5QnlWYWx1ZTxUcmFuc2Zvcm1lcnNPYmplY3RzLCBUPl1bJ2RlcGVuZGVuY2llcyddLFxuICBUUHJvcHNbS2V5QnlWYWx1ZTxUcmFuc2Zvcm1lcnNPYmplY3RzLCBUPl1cbj4gZXh0ZW5kcyB0cnVlXG4gID8gS2V5XG4gIDogbmV2ZXI7XG5cbi8qKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyB3aXRob3V0IG5vdGljZXMgKi9cbmV4cG9ydCB0eXBlIEdldEVycm9yV2hlblVuZGVzaXJlZDxcbiAgS2V5IGV4dGVuZHMga2V5b2YgVCxcbiAgVCxcbiAgVFByb3BzIGV4dGVuZHMgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsXG4gIFRCZWhhdmlvciBleHRlbmRzIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IsXG4gIC8vIFRoaXMgZ2VuZXJpYyB2YWx1ZSBpcyB1c2VkIGFzIGFuIGFsaWFzXG4gIFRJc0Rlc2lyZWQgPSBJc0tleURlc2lyZWQ8XG4gICAgS2V5LFxuICAgIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzTWV0YWRhdGFbS2V5QnlWYWx1ZTxUcmFuc2Zvcm1lcnNPYmplY3RzLCBUPl1bJ2RlcGVuZGVuY2llcyddLFxuICAgIFRQcm9wc1tLZXlCeVZhbHVlPFRyYW5zZm9ybWVyc09iamVjdHMsIFQ+XVxuICA+LFxuPiA9IFRJc0Rlc2lyZWQgZXh0ZW5kcyB0cnVlID8gVHJhbnNmb3JtUHJvcGVydHk8VFtLZXldLCBUUHJvcHMsIFRCZWhhdmlvcj4gOiBUSXNEZXNpcmVkO1xuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBJc09iamVjdDxUPiA9IFQgZXh0ZW5kcyBvYmplY3QgPyAoVCBleHRlbmRzIEZ1bmN0aW9uID8gZmFsc2UgOiB0cnVlKSA6IGZhbHNlO1xuXG4vLyBJZiB0aGUgb2JqZWN0IGlzIGEgdHJhbnNmb3JtZWQgb2JqZWN0LCBhIGNvbGxlY3Rpb24gb2YgdHJhbnNmb3JtZWQgb2JqZWN0IG9yIGFuIGFycmF5IG9mIHRyYW5zZm9ybWVkIG9iamVjdHMgd2UgbmVlZCB0byBhcHBseSB0aGUgZGVzaXJlZCBwcm9wcyB0byB0aGVtIGFzIHdlbGxcbi8vIE5PVEU6IGNoYW5naW5nIHRoZSBvcmRlciBvZiB0aGVzZSB0ZXJuYXJpZXMgY2FuIGNhdXNlIGJ1Z3MsIGZvciB0aGlzIHJlYXNvbiB3ZSBjaGVjayBpbiB0aGlzIG9yZGVyOlxuLy8gICAgICAtIElzIGl0IGFuIGFycmF5P1xuLy8gICAgICAtIElzIGl0IGEgY29sbGVjdGlvbj9cbi8vICAgICAgLSBJcyBpdCBhIGJvdD9cbi8vICAgICAgLSBJcyBpdCBhIHRyYW5zZm9ybWVkIG9iamVjdD9cbi8vICAgICAgLSBJcyBpdCBhbiBpbnRlcmFjdGlvbiByZXNvbHZlZCBkYXRhIG1lbWJlcj9cbi8vICAgICAgLSBJcyBpdCBhbiBpbnRlcmFjdGlvbiByZXNvbHZlZCBkYXRhIGNoYW5uZWw/XG4vLyAgICAgIC0gSXMgaXQgYW4gb2JqZWN0P1xuLy8gICAgICAtIEl0J3Mgbm90IGFuIG9iamVjdFxuXG4vKipcbiAqIFRyYW5zZm9ybSBhIGdlbmVyaWMgb2JqZWN0IHByb3BlcnRpZXMgYmFzZWQgb24gdGhlIGRlc2lyZWQgcHJvcGVydGllcyBhbmQgYmVoYXZpb3IgZm9yIG90aGVyIHRyYW5zZm9ybWVyIG9iamVjdHMgaW4gdGhlIG9iamVjdC5cbiAqL1xuZXhwb3J0IHR5cGUgVHJhbnNmb3JtUHJvcGVydHk8VCwgVFByb3BzIGV4dGVuZHMgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIFRCZWhhdmlvciBleHRlbmRzIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+ID0gVCBleHRlbmRzIEFycmF5PGluZmVyIFU+IC8vIGlzIGl0IGFuIGFycmF5P1xuICA/IC8vIFllcywgYXBwbHkgdGhlIGRlc2lyZWQgcHJvcHNcbiAgICBUcmFuc2Zvcm1Qcm9wZXJ0eTxVLCBUUHJvcHMsIFRCZWhhdmlvcj5bXVxuICA6IC8vIE5vLCBpcyBpdCBhIGNvbGxlY3Rpb24/XG4gICAgVCBleHRlbmRzIENvbGxlY3Rpb248aW5mZXIgVSwgaW5mZXIgVU9iaj5cbiAgICA/IC8vIFllcywgY2hlY2sgZm9yIG5lc3RlZCBwcm9wcmlldGllc1xuICAgICAgQ29sbGVjdGlvbjxVLCBUcmFuc2Zvcm1Qcm9wZXJ0eTxVT2JqLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gICAgOiAvLyBObywgaXMgaXQgYSBCb3Q/XG4gICAgICBUIGV4dGVuZHMgQm90XG4gICAgICA/IC8vIFllcywgcmV0dXJuIGEgYm90IHdpdGggdGhlIGNvcnJlY3Qgc2V0IG9mIHByb3BzICYgYmVoYXZpb3JcbiAgICAgICAgQm90PFRQcm9wcywgVEJlaGF2aW9yPlxuICAgICAgOiAvLyBObywgaXMgaXQgYSB0cmFuc2Zvcm1lZCBvYmplY3Q/XG4gICAgICAgIFQgZXh0ZW5kcyBUcmFuc2Zvcm1lcnNPYmplY3RzW2tleW9mIFRyYW5zZm9ybWVyc09iamVjdHNdXG4gICAgICAgID8gLy8gWWVzLCBhcHBseSB0aGUgZGVzaXJlZCBwcm9wc1xuICAgICAgICAgIFNldHVwRGVzaXJlZFByb3BzPFQsIFRQcm9wcywgVEJlaGF2aW9yPlxuICAgICAgICA6IC8vIE5vLCBpcyBpdCBhbiBpbnRlcmFjdGlvbiByZXNvbHZlZCBkYXRhIG1lbWJlcj8gfCBXZSBuZWVkIHRvIGNoZWNrIHRoaXMgaGVyZSBiZWNhdXNlIHRoZSB0eXBlIGl0c2VsZiBoYXMgbm90IHdheSBvZiBnZXR0aW5nIHRoZSBkZXNpcmVkIHByb3BzXG4gICAgICAgICAgVCBleHRlbmRzIEludGVyYWN0aW9uUmVzb2x2ZWREYXRhTWVtYmVyPFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPlxuICAgICAgICAgID8gLy8gWWVzLCBhcHBseSB0aGUgZGVzaXJlZCBwcm9wc1xuICAgICAgICAgICAgSW50ZXJhY3Rpb25SZXNvbHZlZERhdGFNZW1iZXI8VFByb3BzLCBUQmVoYXZpb3I+XG4gICAgICAgICAgOiAvLyBObywgaXMgaXQgYW4gaW50ZXJhY3Rpb24gcmVzb2x2ZWQgZGF0YSBjaGFubmVsPyB8IFdlIG5lZWQgdG8gY2hlY2sgdGhpcyBoZXJlIGJlY2F1c2UgdGhlIHR5cGUgaXRzZWxmIGhhcyBub3Qgd2F5IG9mIGdldHRpbmcgdGhlIGRlc2lyZWQgcHJvcHNcbiAgICAgICAgICAgIFQgZXh0ZW5kcyBJbnRlcmFjdGlvblJlc29sdmVkRGF0YUNoYW5uZWw8VHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+XG4gICAgICAgICAgICA/IC8vIFllcywgYXBwbHkgdGhlIGRlc2lyZWQgcHJvcHNcbiAgICAgICAgICAgICAgSW50ZXJhY3Rpb25SZXNvbHZlZERhdGFDaGFubmVsPFRQcm9wcywgVEJlaGF2aW9yPlxuICAgICAgICAgICAgOiAvLyBJcyBpdCBhbiBvYmplY3Q/XG4gICAgICAgICAgICAgIElzT2JqZWN0PFQ+IGV4dGVuZHMgdHJ1ZVxuICAgICAgICAgICAgICA/IC8vIFllcywgd2UgbmVlZCB0byBlbnN1cmUgbmVzdGVkIGluc2lkZSB0aGVyZSBhcmVuJ3QgdHJhbnNmb3JtZWQgb2JqZWN0c1xuICAgICAgICAgICAgICAgIHsgW0sgaW4ga2V5b2YgVF06IFRyYW5zZm9ybVByb3BlcnR5PFRbS10sIFRQcm9wcywgVEJlaGF2aW9yPiB9XG4gICAgICAgICAgICAgIDogLy8gTm8sIHRoaXMgaXMgYSBub3JtYWwgdmFsdWUgc3VjaCBhcyBzdHJpbmcgLyBiaWdpbnQgLyBudW1iZXJcbiAgICAgICAgICAgICAgICBUO1xuXG4vKipcbiAqIEFwcGx5IGRlc2lyZWQgcHJvcGVydGllcyB0byBhIHRyYW5zZm9ybWVyIG9iamVjdC5cbiAqL1xuZXhwb3J0IHR5cGUgU2V0dXBEZXNpcmVkUHJvcHM8XG4gIFQgZXh0ZW5kcyBUcmFuc2Zvcm1lcnNPYmplY3RzW2tleW9mIFRyYW5zZm9ybWVyc09iamVjdHNdLFxuICBUUHJvcHMgZXh0ZW5kcyBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcyxcbiAgVEJlaGF2aW9yIGV4dGVuZHMgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvciA9IERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IuUmVtb3ZlS2V5LFxuPiA9IHtcbiAgLy8gV2hlbiB0aGUgYmVoYXZpb3IgaXMgdG8gcmVtb3ZlIHRoZSBrZXkgd2UgdXNlIHRoZSBSZW1vdmVLZXlJZlVuZGVzaXJlZCB0eXBlIGhlbHBlciBlbHNlIHJldHVybiB0aGUgS2V5IGFzIGlzXG4gIFtLZXkgaW4ga2V5b2YgVCBhcyBUQmVoYXZpb3IgZXh0ZW5kcyBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLlJlbW92ZUtleVxuICAgID8gUmVtb3ZlS2V5SWZVbmRlc2lyZWQ8S2V5LCBULCBUUHJvcHM+XG4gICAgOiBLZXldOiAvLyBXaGVuIHRoZSBiZWhhdmlvciBpcyB0byBjaGFuZ2UgdGhlIHR5cGUgd2UgdXNlIHRoZSBHZXRFcnJvcldoZW5VbmRlc2lyZWQgdHlwZSBoZWxwZXIgZWxzZSBhcHBseSB0aGUgZGVzaXJlZCBwcm9wcyB0byB0aGUga2V5IGFuZCByZXR1cm5cbiAgVEJlaGF2aW9yIGV4dGVuZHMgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvci5DaGFuZ2VUeXBlXG4gICAgPyBHZXRFcnJvcldoZW5VbmRlc2lyZWQ8S2V5LCBULCBUUHJvcHMsIFRCZWhhdmlvcj5cbiAgICA6IFRyYW5zZm9ybVByb3BlcnR5PFRbS2V5XSwgVFByb3BzLCBUQmVoYXZpb3I+O1xufTtcblxuLyoqXG4gKiBUaGUgZGVzaXJlZCBwcm9wZXJ0aWVzIGZvciBlYWNoIHRyYW5zZm9ybWVyIG9iamVjdC5cbiAqL1xuZXhwb3J0IHR5cGUgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMgPSB7XG4gIFtLZXkgaW4ga2V5b2YgVHJhbnNmb3JtZXJzT2JqZWN0c106IERlc2lyZWRQcm9wZXJ0aWVzTWFwcGVyPFRyYW5zZm9ybWVyc09iamVjdHNbS2V5XT47XG59O1xuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPFQgZXh0ZW5kcyBSZWN1cnNpdmVQYXJ0aWFsPFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzPiwgVFREZWZhdWx0IGV4dGVuZHMgYm9vbGVhbiA9IGZhbHNlPiA9IHtcbiAgW0sgaW4ga2V5b2YgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXNdOiBDb21wbGV0ZTxQYXJ0aWFsPFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzW0tdPiAmIFRbS10sIFRURGVmYXVsdD47XG59O1xuIl0sIm5hbWVzIjpbImNyZWF0ZURlc2lyZWRQcm9wZXJ0aWVzT2JqZWN0IiwiZGVzaXJlZFByb3BlcnRpZXMiLCJkZWZhdWx0VmFsdWUiLCJhY3Rpdml0eUluc3RhbmNlIiwiYXBwbGljYXRpb25JZCIsImluc3RhbmNlSWQiLCJsYXVuY2hJZCIsImxvY2F0aW9uIiwidXNlcnMiLCJhY3Rpdml0eUxvY2F0aW9uIiwiY2hhbm5lbElkIiwiZ3VpbGRJZCIsImlkIiwia2luZCIsImF0dGFjaG1lbnQiLCJmaWxlbmFtZSIsInRpdGxlIiwiY29udGVudFR5cGUiLCJzaXplIiwidXJsIiwicHJveHlVcmwiLCJoZWlnaHQiLCJ3aWR0aCIsImVwaGVtZXJhbCIsImRlc2NyaXB0aW9uIiwiZHVyYXRpb25fc2VjcyIsIndhdmVmb3JtIiwiZmxhZ3MiLCJjaGFubmVsIiwidHlwZSIsInBvc2l0aW9uIiwibmFtZSIsInRvcGljIiwiYml0cmF0ZSIsInVzZXJMaW1pdCIsInJhdGVMaW1pdFBlclVzZXIiLCJydGNSZWdpb24iLCJ2aWRlb1F1YWxpdHlNb2RlIiwibGFzdFBpblRpbWVzdGFtcCIsInBlcm1pc3Npb25PdmVyd3JpdGVzIiwicGVybWlzc2lvbnMiLCJsYXN0TWVzc2FnZUlkIiwib3duZXJJZCIsInBhcmVudElkIiwibWVtYmVyQ291bnQiLCJtZXNzYWdlQ291bnQiLCJkZWZhdWx0QXV0b0FyY2hpdmVEdXJhdGlvbiIsImFwcGxpZWRUYWdzIiwiYXZhaWxhYmxlVGFncyIsImRlZmF1bHRGb3J1bUxheW91dCIsImRlZmF1bHRSZWFjdGlvbkVtb2ppIiwiZGVmYXVsdFNvcnRPcmRlciIsImRlZmF1bHRUaHJlYWRSYXRlTGltaXRQZXJVc2VyIiwiaWNvbiIsIm1lbWJlciIsInJlY2lwaWVudHMiLCJ0b3RhbE1lc3NhZ2VTZW50IiwidGhyZWFkTWV0YWRhdGEiLCJjb2xsZWN0aWJsZXMiLCJuYW1lcGxhdGUiLCJjb21wb25lbnQiLCJjdXN0b21JZCIsInJlcXVpcmVkIiwiZGlzYWJsZWQiLCJzdHlsZSIsImxhYmVsIiwidmFsdWUiLCJlbW9qaSIsImNoYW5uZWxUeXBlcyIsIm9wdGlvbnMiLCJwbGFjZWhvbGRlciIsIm1pblZhbHVlcyIsIm1heFZhbHVlcyIsIm1pbkxlbmd0aCIsIm1heExlbmd0aCIsImNvbXBvbmVudHMiLCJkZWZhdWx0VmFsdWVzIiwic2t1SWQiLCJhY2Nlc3NvcnkiLCJjb250ZW50Iiwic3BvaWxlciIsIml0ZW1zIiwiZGl2aWRlciIsInNwYWNpbmciLCJmaWxlIiwibWVkaWEiLCJhY2NlbnRDb2xvciIsInZhbHVlcyIsImZvcnVtVGFnIiwiZW1vamlJZCIsImVtb2ppTmFtZSIsIm1vZGVyYXRlZCIsInJvbGVzIiwidXNlciIsImd1aWxkIiwiYWZrVGltZW91dCIsImFwcHJveGltYXRlTWVtYmVyQ291bnQiLCJhcHByb3hpbWF0ZVByZXNlbmNlQ291bnQiLCJkZWZhdWx0TWVzc2FnZU5vdGlmaWNhdGlvbnMiLCJleHBsaWNpdENvbnRlbnRGaWx0ZXIiLCJtYXhNZW1iZXJzIiwibWF4UHJlc2VuY2VzIiwibWF4VmlkZW9DaGFubmVsVXNlcnMiLCJtZmFMZXZlbCIsImNoYW5uZWxzIiwiZW1vamlzIiwiaWNvbkhhc2giLCJsYXJnZSIsIm1lbWJlcnMiLCJvd25lciIsInByZXNlbmNlcyIsInN0aWNrZXJzIiwidG9nZ2xlcyIsInVuYXZhaWxhYmxlIiwidm9pY2VTdGF0ZXMiLCJ3aWRnZXRFbmFibGVkIiwibnNmd0xldmVsIiwicHJlZmVycmVkTG9jYWxlIiwicHJlbWl1bVN1YnNjcmlwdGlvbkNvdW50IiwicHJlbWl1bVRpZXIiLCJzdGFnZUluc3RhbmNlcyIsInN5c3RlbUNoYW5uZWxGbGFncyIsInZhbml0eVVybENvZGUiLCJ2ZXJpZmljYXRpb25MZXZlbCIsIndlbGNvbWVTY3JlZW4iLCJkaXNjb3ZlcnlTcGxhc2giLCJqb2luZWRBdCIsInNoYXJkSWQiLCJiYW5uZXIiLCJzcGxhc2giLCJhZmtDaGFubmVsSWQiLCJ3aWRnZXRDaGFubmVsSWQiLCJzeXN0ZW1DaGFubmVsSWQiLCJydWxlc0NoYW5uZWxJZCIsInB1YmxpY1VwZGF0ZXNDaGFubmVsSWQiLCJwcmVtaXVtUHJvZ3Jlc3NCYXJFbmFibGVkIiwic2FmZXR5QWxlcnRzQ2hhbm5lbElkIiwibWF4U3RhZ2VWaWRlb0NoYW5uZWxVc2VycyIsImluY2lkZW50c0RhdGEiLCJkbVNwYW1EZXRlY3RlZEF0IiwiZG1zRGlzYWJsZWRVbnRpbCIsImludml0ZXNEaXNhYmxlZFVudGlsIiwicmFpZERldGVjdGVkQXQiLCJpbnRlcmFjdGlvbiIsInRva2VuIiwidmVyc2lvbiIsIm1lc3NhZ2UiLCJkYXRhIiwibG9jYWxlIiwiZ3VpbGRMb2NhbGUiLCJlbnRpdGxlbWVudHMiLCJhcHBQZXJtaXNzaW9ucyIsImF1dGhvcml6aW5nSW50ZWdyYXRpb25Pd25lcnMiLCJjb250ZXh0IiwiYXR0YWNobWVudFNpemVMaW1pdCIsImludGVyYWN0aW9uQ2FsbGJhY2siLCJhY3Rpdml0eUluc3RhbmNlSWQiLCJyZXNwb25zZU1lc3NhZ2VFcGhlbWVyYWwiLCJyZXNwb25zZU1lc3NhZ2VJZCIsInJlc3BvbnNlTWVzc2FnZUxvYWRpbmciLCJpbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2UiLCJyZXNvdXJjZSIsImludGVyYWN0aW9uUmVzb3VyY2UiLCJpbnZpdGUiLCJjb2RlIiwiY3JlYXRlZEF0IiwiaW52aXRlciIsIm1heEFnZSIsIm1heFVzZXMiLCJ0YXJnZXRUeXBlIiwidGFyZ2V0VXNlciIsInRhcmdldEFwcGxpY2F0aW9uIiwidGVtcG9yYXJ5IiwidXNlcyIsImd1aWxkU2NoZWR1bGVkRXZlbnQiLCJleHBpcmVzQXQiLCJuaWNrIiwicHJlbWl1bVNpbmNlIiwiYXZhdGFyIiwiY29tbXVuaWNhdGlvbkRpc2FibGVkVW50aWwiLCJhdmF0YXJEZWNvcmF0aW9uRGF0YSIsImFjdGl2aXR5IiwiYXBwbGljYXRpb24iLCJhdHRhY2htZW50cyIsImF1dGhvciIsImVkaXRlZFRpbWVzdGFtcCIsImVtYmVkcyIsImludGVyYWN0aW9uTWV0YWRhdGEiLCJtZW50aW9uZWRDaGFubmVsSWRzIiwibWVudGlvbmVkUm9sZUlkcyIsIm1lbnRpb25zIiwibWVzc2FnZVJlZmVyZW5jZSIsIm1lc3NhZ2VTbmFwc2hvdHMiLCJyZWZlcmVuY2VkTWVzc2FnZSIsIm5vbmNlIiwicmVhY3Rpb25zIiwic3RpY2tlckl0ZW1zIiwidGhyZWFkIiwid2ViaG9va0lkIiwicG9sbCIsImNhbGwiLCJtZXNzYWdlU25hcHNob3QiLCJtZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YSIsIm9yaWdpbmFsUmVzcG9uc2VNZXNzYWdlSWQiLCJpbnRlcmFjdGVkTWVzc2FnZUlkIiwidHJpZ2dlcmluZ0ludGVyYWN0aW9uTWV0YWRhdGEiLCJ0YXJnZXRNZXNzYWdlSWQiLCJtZXNzYWdlUGluIiwicGlubmVkQXQiLCJtZXNzYWdlSW50ZXJhY3Rpb24iLCJtZXNzYWdlSWQiLCJtZXNzYWdlQ2FsbCIsInBhcnRpY2lwYW50cyIsImVuZGVkVGltZXN0YW1wIiwiYXNzZXQiLCJwYWxldHRlIiwicm9sZSIsImNvbG9yIiwiY29sb3JzIiwidW5pY29kZUVtb2ppIiwidGFncyIsInJvbGVDb2xvcnMiLCJwcmltYXJ5Q29sb3IiLCJzZWNvbmRhcnlDb2xvciIsInRlcnRpYXJ5Q29sb3IiLCJzY2hlZHVsZWRFdmVudCIsImNyZWF0b3JJZCIsInNjaGVkdWxlZFN0YXJ0VGltZSIsInNjaGVkdWxlZEVuZFRpbWUiLCJlbnRpdHlJZCIsImNyZWF0b3IiLCJwcml2YWN5TGV2ZWwiLCJzdGF0dXMiLCJlbnRpdHlUeXBlIiwidXNlckNvdW50IiwiaW1hZ2UiLCJyZWN1cnJlbmNlUnVsZSIsInNjaGVkdWxlZEV2ZW50UmVjdXJyZW5jZVJ1bGUiLCJzdGFydCIsImVuZCIsImZyZXF1ZW5jeSIsImludGVydmFsIiwiYnlXZWVrZGF5IiwiYnlOV2Vla2RheSIsImJ5TW9udGgiLCJieU1vbnRoRGF5IiwiYnlZZWFyRGF5IiwiY291bnQiLCJzdGFnZUluc3RhbmNlIiwiZ3VpbGRTY2hlZHVsZWRFdmVudElkIiwiaW52aXRlU3RhZ2VJbnN0YW5jZSIsInBhcnRpY2lwYW50Q291bnQiLCJzcGVha2VyQ291bnQiLCJtZWRpYUdhbGxlcnlJdGVtIiwic3RpY2tlciIsInBhY2tJZCIsImZvcm1hdFR5cGUiLCJhdmFpbGFibGUiLCJzb3J0VmFsdWUiLCJ1bmZ1cmxlZE1lZGlhSXRlbSIsImF0dGFjaG1lbnRJZCIsInVzZXJuYW1lIiwiZ2xvYmFsTmFtZSIsInByZW1pdW1UeXBlIiwicHVibGljRmxhZ3MiLCJkaXNjcmltaW5hdG9yIiwiZW1haWwiLCJwcmltYXJ5R3VpbGQiLCJ1c2VyUHJpbWFyeUd1aWxkIiwiaWRlbnRpdHlHdWlsZElkIiwiaWRlbnRpdHlFbmFibGVkIiwidGFnIiwiYmFkZ2UiLCJ3ZWJob29rIiwic291cmNlR3VpbGQiLCJzb3VyY2VDaGFubmVsIiwiZ3VpbGRPbmJvYXJkaW5nIiwiZGVmYXVsdENoYW5uZWxJZHMiLCJlbmFibGVkIiwibW9kZSIsInByb21wdHMiLCJndWlsZE9uYm9hcmRpbmdQcm9tcHQiLCJpbk9uYm9hcmRpbmciLCJzaW5nbGVTZWxlY3QiLCJndWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb24iLCJjaGFubmVsSWRzIiwicm9sZUlkcyIsImVudGl0bGVtZW50IiwidXNlcklkIiwiZGVsZXRlZCIsInN0YXJ0c0F0IiwiZW5kc0F0IiwiY29uc3VtZWQiLCJza3UiLCJzbHVnIiwidm9pY2VTdGF0ZSIsInJlcXVlc3RUb1NwZWFrVGltZXN0YW1wIiwic2Vzc2lvbklkIiwicXVlc3Rpb24iLCJhbnN3ZXJzIiwiZXhwaXJ5IiwibGF5b3V0VHlwZSIsImFsbG93TXVsdGlzZWxlY3QiLCJyZXN1bHRzIiwicG9sbEFuc3dlciIsImFuc3dlcklkIiwicG9sbE1lZGlhIiwicG9sbFJlc3VsdCIsImlzRmluYWxpemVkIiwiYW5zd2VyQ291bnRzIiwicG9sbEFuc3dlckNvdW50IiwibWVWb3RlZCIsInRleHQiLCJzdWJzY3JpcHRpb24iLCJjYW5jZWxlZEF0IiwiY291bnRyeSIsImN1cnJlbnRQZXJpb2RFbmQiLCJjdXJyZW50UGVyaW9kU3RhcnQiLCJyZW5ld2FsU2t1SWRzIiwiZW50aXRsZW1lbnRJZHMiLCJza3VJZHMiLCJzb3VuZGJvYXJkU291bmQiLCJzb3VuZElkIiwidm9sdW1lIiwibG9iYnkiLCJtZXRhZGF0YSIsImxpbmtlZENoYW5uZWwiLCJsb2JieU1lbWJlciIsIkRlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IiXSwibWFwcGluZ3MiOiJBQTJPQSxPQUFPLFNBQVNBLDhCQUNkQyxpQkFBb0IsRUFDcEJDLGVBQXlCLEtBQWlCO0lBRTFDLE9BQU87UUFDTEMsa0JBQWtCO1lBQ2hCQyxlQUFlRjtZQUNmRyxZQUFZSDtZQUNaSSxVQUFVSjtZQUNWSyxVQUFVTDtZQUNWTSxPQUFPTjtZQUNQLEdBQUdELGtCQUFrQkUsZ0JBQWdCO1FBQ3ZDO1FBQ0FNLGtCQUFrQjtZQUNoQkMsV0FBV1I7WUFDWFMsU0FBU1Q7WUFDVFUsSUFBSVY7WUFDSlcsTUFBTVg7WUFDTixHQUFHRCxrQkFBa0JRLGdCQUFnQjtRQUN2QztRQUNBSyxZQUFZ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
632
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZXNpcmVkUHJvcGVydGllcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFJlY3Vyc2l2ZVBhcnRpYWwgfSBmcm9tICdAZGlzY29yZGVuby90eXBlcyc7XG5pbXBvcnQgdHlwZSB7IENvbGxlY3Rpb24gfSBmcm9tICdAZGlzY29yZGVuby91dGlscyc7XG5pbXBvcnQgdHlwZSB7IEJvdCB9IGZyb20gJy4vYm90LmpzJztcbmltcG9ydCB0eXBlIHsgSW50ZXJhY3Rpb25SZXNvbHZlZERhdGFDaGFubmVsLCBJbnRlcmFjdGlvblJlc29sdmVkRGF0YU1lbWJlciB9IGZyb20gJy4vY29tbWFuZE9wdGlvbnNQYXJzZXIuanMnO1xuaW1wb3J0IHR5cGUge1xuICBBY3Rpdml0eUluc3RhbmNlLFxuICBBY3Rpdml0eUxvY2F0aW9uLFxuICBBdHRhY2htZW50LFxuICBBdmF0YXJEZWNvcmF0aW9uRGF0YSxcbiAgQ2hhbm5lbCxcbiAgQ29sbGVjdGlibGVzLFxuICBDb21wb25lbnQsXG4gIERlZmF1bHRSZWFjdGlvbkVtb2ppLFxuICBFbW9qaSxcbiAgRW50aXRsZW1lbnQsXG4gIEZvcnVtVGFnLFxuICBHdWlsZCxcbiAgR3VpbGRPbmJvYXJkaW5nLFxuICBHdWlsZE9uYm9hcmRpbmdQcm9tcHQsXG4gIEd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvbixcbiAgSW5jaWRlbnRzRGF0YSxcbiAgSW50ZXJhY3Rpb24sXG4gIEludGVyYWN0aW9uQ2FsbGJhY2ssXG4gIEludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZSxcbiAgSW50ZXJhY3Rpb25SZXNvdXJjZSxcbiAgSW52aXRlLFxuICBJbnZpdGVTdGFnZUluc3RhbmNlLFxuICBMb2JieSxcbiAgTG9iYnlNZW1iZXIsXG4gIE1lZGlhR2FsbGVyeUl0ZW0sXG4gIE1lbWJlcixcbiAgTWVzc2FnZSxcbiAgTWVzc2FnZUNhbGwsXG4gIE1lc3NhZ2VJbnRlcmFjdGlvbixcbiAgTWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEsXG4gIE1lc3NhZ2VQaW4sXG4gIE1lc3NhZ2VSZWZlcmVuY2UsXG4gIE1lc3NhZ2VTbmFwc2hvdCxcbiAgTmFtZXBsYXRlLFxuICBQb2xsLFxuICBQb2xsQW5zd2VyLFxuICBQb2xsQW5zd2VyQ291bnQsXG4gIFBvbGxNZWRpYSxcbiAgUG9sbFJlc3VsdCxcbiAgUm9sZSxcbiAgUm9sZUNvbG9ycyxcbiAgU2NoZWR1bGVkRXZlbnQsXG4gIFNjaGVkdWxlZEV2ZW50UmVjdXJyZW5jZVJ1bGUsXG4gIFNrdSxcbiAgU291bmRib2FyZFNvdW5kLFxuICBTdGFnZUluc3RhbmNlLFxuICBTdGlja2VyLFxuICBTdWJzY3JpcHRpb24sXG4gIFVuZnVybGVkTWVkaWFJdGVtLFxuICBVc2VyLFxuICBVc2VyUHJpbWFyeUd1aWxkLFxuICBWb2ljZVN0YXRlLFxuICBXZWJob29rLFxufSBmcm9tICcuL3RyYW5zZm9ybWVycy90eXBlcy5qcyc7XG5cbi8qKlxuICogQWxsIHRoZSBvYmplY3RzIHRoYXQgc3VwcG9ydCBkZXNpcmVkIHByb3BlcnRpZXNcbiAqXG4gKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyBhdCBhbnkgdGltZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zZm9ybWVyc09iamVjdHMge1xuICBhY3Rpdml0eUluc3RhbmNlOiBBY3Rpdml0eUluc3RhbmNlO1xuICBhY3Rpdml0eUxvY2F0aW9uOiBBY3Rpdml0eUxvY2F0aW9uO1xuICBhdHRhY2htZW50OiBBdHRhY2htZW50O1xuICBhdmF0YXJEZWNvcmF0aW9uRGF0YTogQXZhdGFyRGVjb3JhdGlvbkRhdGE7XG4gIGNoYW5uZWw6IENoYW5uZWw7XG4gIGNvbGxlY3RpYmxlczogQ29sbGVjdGlibGVzO1xuICBjb21wb25lbnQ6IENvbXBvbmVudDtcbiAgZGVmYXVsdFJlYWN0aW9uRW1vamk6IERlZmF1bHRSZWFjdGlvbkVtb2ppO1xuICBlbW9qaTogRW1vamk7XG4gIGVudGl0bGVtZW50OiBFbnRpdGxlbWVudDtcbiAgZm9ydW1UYWc6IEZvcnVtVGFnO1xuICBndWlsZDogR3VpbGQ7XG4gIGd1aWxkT25ib2FyZGluZzogR3VpbGRPbmJvYXJkaW5nO1xuICBndWlsZE9uYm9hcmRpbmdQcm9tcHQ6IEd1aWxkT25ib2FyZGluZ1Byb21wdDtcbiAgZ3VpbGRPbmJvYXJkaW5nUHJvbXB0T3B0aW9uOiBHdWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb247XG4gIGluY2lkZW50c0RhdGE6IEluY2lkZW50c0RhdGE7XG4gIGludGVyYWN0aW9uOiBJbnRlcmFjdGlvbjtcbiAgaW50ZXJhY3Rpb25DYWxsYmFjazogSW50ZXJhY3Rpb25DYWxsYmFjaztcbiAgaW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlOiBJbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2U7XG4gIGludGVyYWN0aW9uUmVzb3VyY2U6IEludGVyYWN0aW9uUmVzb3VyY2U7XG4gIGludml0ZTogSW52aXRlO1xuICBpbnZpdGVTdGFnZUluc3RhbmNlOiBJbnZpdGVTdGFnZUluc3RhbmNlO1xuICBsb2JieTogTG9iYnk7XG4gIGxvYmJ5TWVtYmVyOiBMb2JieU1lbWJlcjtcbiAgbWVkaWFHYWxsZXJ5SXRlbTogTWVkaWFHYWxsZXJ5SXRlbTtcbiAgbWVtYmVyOiBNZW1iZXI7XG4gIG1lc3NhZ2U6IE1lc3NhZ2U7XG4gIG1lc3NhZ2VDYWxsOiBNZXNzYWdlQ2FsbDtcbiAgbWVzc2FnZUludGVyYWN0aW9uOiBNZXNzYWdlSW50ZXJhY3Rpb247XG4gIG1lc3NhZ2VJbnRlcmFjdGlvbk1ldGFkYXRhOiBNZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YTtcbiAgbWVzc2FnZVBpbjogTWVzc2FnZVBpbjtcbiAgbWVzc2FnZVJlZmVyZW5jZTogTWVzc2FnZVJlZmVyZW5jZTtcbiAgbWVzc2FnZVNuYXBzaG90OiBNZXNzYWdlU25hcHNob3Q7XG4gIG5hbWVwbGF0ZTogTmFtZXBsYXRlO1xuICBwb2xsOiBQb2xsO1xuICBwb2xsQW5zd2VyOiBQb2xsQW5zd2VyO1xuICBwb2xsQW5zd2VyQ291bnQ6IFBvbGxBbnN3ZXJDb3VudDtcbiAgcG9sbE1lZGlhOiBQb2xsTWVkaWE7XG4gIHBvbGxSZXN1bHQ6IFBvbGxSZXN1bHQ7XG4gIHJvbGU6IFJvbGU7XG4gIHJvbGVDb2xvcnM6IFJvbGVDb2xvcnM7XG4gIHNjaGVkdWxlZEV2ZW50OiBTY2hlZHVsZWRFdmVudDtcbiAgc2NoZWR1bGVkRXZlbnRSZWN1cnJlbmNlUnVsZTogU2NoZWR1bGVkRXZlbnRSZWN1cnJlbmNlUnVsZTtcbiAgc2t1OiBTa3U7XG4gIHNvdW5kYm9hcmRTb3VuZDogU291bmRib2FyZFNvdW5kO1xuICBzdGFnZUluc3RhbmNlOiBTdGFnZUluc3RhbmNlO1xuICBzdGlja2VyOiBTdGlja2VyO1xuICBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgdW5mdXJsZWRNZWRpYUl0ZW06IFVuZnVybGVkTWVkaWFJdGVtO1xuICB1c2VyOiBVc2VyO1xuICB1c2VyUHJpbWFyeUd1aWxkOiBVc2VyUHJpbWFyeUd1aWxkO1xuICB2b2ljZVN0YXRlOiBWb2ljZVN0YXRlO1xuICB3ZWJob29rOiBXZWJob29rO1xufVxuXG4vLyBOT1RFOiB0aGUgdG9wLWxldmVsIG9iamVjdHMgbmVlZCBib3RoIHRoZSBkZXBlbmRlbmNpZXMgYW5kIGFsd2F5c1ByZXNlbnRzIGV2ZW4gaWYgZW1wdHkgd2hlbiB0aGUga2V5IGlzIHNwZWNpZmllZCwgdGhpcyBpcyBkdWUgdGhlIGV4dGVuZHMgJiBudWxsYWJpbGl0eSBvbiBEZXNpcmVkUHJvcGVydGllc01ldGFkYXRhXG4vLyAgICAgICBpbnRlcm5hbCBwcm9wZXJ0aWVzIG5lZWRzIHRvIGJlIGluIHRoZSBhbHdheXNQcmVzZW50cyBhcnJheSwgZGVwZW5kaW5nIG9uIGFuIGFsd2F5cyBwcmVzZW50IHZhbHVlIGlzIGFjY2VwdGVkXG5cbi8qKlxuICogTWV0YWRhdGEgZm9yIHR5cGVzY3JpcHQgdG8gY3JlYXRlIHRoZSBjb3JyZWN0IHR5cGVzIGZvciBkZXNpcmVkIHByb3BlcnRpZXNcbiAqXG4gKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyB3aXRob3V0IG5vdGljZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllc01ldGFkYXRhIGV4dGVuZHMgRGVzaXJlZFByb3BlcnRpZXNNZXRhZGF0YSB7XG4gIGNoYW5uZWw6IHtcbiAgICBkZXBlbmRlbmNpZXM6IHtcbiAgICAgIGFyY2hpdmVkOiBbJ3RvZ2dsZXMnXTtcbiAgICAgIGludml0YWJsZTogWyd0b2dnbGVzJ107XG4gICAgICBsb2NrZWQ6IFsndG9nZ2xlcyddO1xuICAgICAgbnNmdzogWyd0b2dnbGVzJ107XG4gICAgICBuZXdseUNyZWF0ZWQ6IFsndG9nZ2xlcyddO1xuICAgICAgbWFuYWdlZDogWyd0b2dnbGVzJ107XG4gICAgfTtcbiAgICBhbHdheXNQcmVzZW50czogWyd0b2dnbGVzJywgJ2ludGVybmFsT3ZlcndyaXRlcycsICdpbnRlcm5hbFRocmVhZE1ldGFkYXRhJ107XG4gIH07XG5cbiAgZ3VpbGQ6IHtcbiAgICBkZXBlbmRlbmNpZXM6IHtcbiAgICAgIHRocmVhZHM6IFsnY2hhbm5lbHMnXTtcbiAgICAgIGZlYXR1cmVzOiBbJ3RvZ2dsZXMnXTtcbiAgICB9O1xuICAgIGFsd2F5c1ByZXNlbnRzOiBbXTtcbiAgfTtcblxuICBpbnRlcmFjdGlvbjoge1xuICAgIGRlcGVuZGVuY2llczoge1xuICAgICAgcmVzcG9uZDogWyd0eXBlJywgJ3Rva2VuJywgJ2lkJ107XG4gICAgICBzZW5kRm9sbG93dXBNZXNzYWdlOiBbJ3Rva2VuJ107XG4gICAgICBlZGl0OiBbJ3R5cGUnLCAndG9rZW4nLCAnaWQnXTtcbiAgICAgIGRlZmVyRWRpdDogWyd0eXBlJywgJ3Rva2VuJywgJ2lkJ107XG4gICAgICBkZWZlcjogWyd0eXBlJywgJ3Rva2VuJywgJ2lkJ107XG4gICAgICBkZWxldGU6IFsndHlwZScsICd0b2tlbiddO1xuICAgIH07XG4gICAgYWx3YXlzUHJlc2VudHM6IFsnYm90JywgJ2Fja25vd2xlZGdlZCddO1xuICB9O1xuXG4gIG1lbWJlcjoge1xuICAgIGRlcGVuZGVuY2llczoge1xuICAgICAgZGVhZjogWyd0b2dnbGVzJ107XG4gICAgICBtdXRlOiBbJ3RvZ2dsZXMnXTtcbiAgICAgIHBlbmRpbmc6IFsndG9nZ2xlcyddO1xuICAgICAgZmxhZ3M6IFsndG9nZ2xlcyddO1xuICAgICAgZGlkUmVqb2luOiBbJ3RvZ2dsZXMnXTtcbiAgICAgIHN0YXJ0ZWRPbmJvYXJkaW5nOiBbJ3RvZ2dsZXMnXTtcbiAgICAgIGJ5cGFzc2VzVmVyaWZpY2F0aW9uOiBbJ3RvZ2dsZXMnXTtcbiAgICAgIGNvbXBsZXRlZE9uYm9hcmRpbmc6IFsndG9nZ2xlcyddO1xuICAgIH07XG4gICAgYWx3YXlzUHJlc2VudHM6IFtdO1xuICB9O1xuXG4gIG1lc3NhZ2U6IHtcbiAgICBkZXBlbmRlbmNpZXM6IHtcbiAgICAgIGNyb3NzcG9zdGVkOiBbJ2ZsYWdzJ107XG4gICAgICBlcGhlbWVyYWw6IFsnZmxhZ3MnXTtcbiAgICAgIGZhaWxlZFRvTWVudGlvblNvbWVSb2xlc0luVGhyZWFkOiBbJ2ZsYWdzJ107XG4gICAgICBoYXNUaHJlYWQ6IFsnZmxhZ3MnXTtcbiAgICAgIGlzQ3Jvc3Nwb3N0OiBbJ2ZsYWdzJ107XG4gICAgICBsb2FkaW5nOiBbJ2ZsYWdzJ107XG4gICAgICBtZW50aW9uZWRVc2VySWRzOiBbJ21lbnRpb25zJ107XG4gICAgICBtZW50aW9uRXZlcnlvbmU6IFsnYml0ZmllbGQnXTtcbiAgICAgIHBpbm5lZDogWydiaXRmaWVsZCddO1xuICAgICAgc291cmNlTWVzc2FnZURlbGV0ZWQ6IFsnZmxhZ3MnXTtcbiAgICAgIHN1cHByZXNzRW1iZWRzOiBbJ2ZsYWdzJ107XG4gICAgICBzdXBwcmVzc05vdGlmaWNhdGlvbnM6IFsnZmxhZ3MnXTtcbiAgICAgIHRpbWVzdGFtcDogWydpZCddO1xuICAgICAgdHRzOiBbJ2JpdGZpZWxkJ107XG4gICAgICB1cmdlbnQ6IFsnZmxhZ3MnXTtcbiAgICB9O1xuICAgIGFsd2F5c1ByZXNlbnRzOiBbJ2JpdGZpZWxkJywgJ2ZsYWdzJ107XG4gIH07XG5cbiAgcm9sZToge1xuICAgIGRlcGVuZGVuY2llczoge1xuICAgICAgaG9pc3Q6IFsndG9nZ2xlcyddO1xuICAgICAgbWFuYWdlZDogWyd0b2dnbGVzJ107XG4gICAgICBtZW50aW9uYWJsZTogWyd0b2dnbGVzJ107XG4gICAgICBwcmVtaXVtU3Vic2NyaWJlcjogWyd0b2dnbGVzJ107XG4gICAgICBhdmFpbGFibGVGb3JQdXJjaGFzZTogWyd0b2dnbGVzJ107XG4gICAgICBndWlsZENvbm5lY3Rpb25zOiBbJ3RvZ2dsZXMnXTtcbiAgICB9O1xuICAgIGFsd2F5c1ByZXNlbnRzOiBbJ2ludGVybmFsVGFncyddO1xuICB9O1xuXG4gIHVzZXI6IHtcbiAgICBkZXBlbmRlbmNpZXM6IHtcbiAgICAgIHRhZzogWyd1c2VybmFtZScsICdkaXNjcmltaW5hdG9yJ107XG4gICAgICBib3Q6IFsndG9nZ2xlcyddO1xuICAgICAgc3lzdGVtOiBbJ3RvZ2dsZXMnXTtcbiAgICAgIG1mYUVuYWJsZWQ6IFsndG9nZ2xlcyddO1xuICAgICAgdmVyaWZpZWQ6IFsndG9nZ2xlcyddO1xuICAgICAgYXZhdGFyVXJsOiBbJ2F2YXRhcicsICdpZCddO1xuICAgICAgZGlzcGxheU5hbWU6IFsndXNlcm5hbWUnLCAnZ2xvYmFsTmFtZSddO1xuICAgICAgZGVmYXVsdEF2YXRhclVybDogWydpZCcsICdkaXNjcmltaW5hdG9yJ107XG4gICAgICBkaXNwbGF5QXZhdGFyVXJsOiBbJ2F2YXRhcicsICdpZCcsICdkaXNjcmltaW5hdG9yJ107XG4gICAgICBjcmVhdGVkVGltZXN0YW1wOiBbJ2lkJ107XG4gICAgfTtcbiAgICBhbHdheXNQcmVzZW50czogW107XG4gIH07XG5cbiAgZW1vamk6IHtcbiAgICBkZXBlbmRlbmNpZXM6IHtcbiAgICAgIGFuaW1hdGVkOiBbJ3RvZ2dsZXMnXTtcbiAgICAgIGF2YWlsYWJsZTogWyd0b2dnbGVzJ107XG4gICAgICBtYW5hZ2VkOiBbJ3RvZ2dsZXMnXTtcbiAgICAgIHJlcXVpcmVDb2xvbnM6IFsndG9nZ2xlcyddO1xuICAgIH07XG4gICAgYWx3YXlzUHJlc2VudHM6IFsndG9nZ2xlcyddO1xuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRGVzaXJlZFByb3BlcnRpZXNPYmplY3Q8VCBleHRlbmRzIFJlY3Vyc2l2ZVBhcnRpYWw8VHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXM+LCBURGVmYXVsdCBleHRlbmRzIGJvb2xlYW4gPSBmYWxzZT4oXG4gIGRlc2lyZWRQcm9wZXJ0aWVzOiBULFxuICBkZWZhdWx0VmFsdWU6IFREZWZhdWx0ID0gZmFsc2UgYXMgVERlZmF1bHQsXG4pOiBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPFQsIFREZWZhdWx0PiB7XG4gIHJldHVybiB7XG4gICAgYWN0aXZpdHlJbnN0YW5jZToge1xuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgaW5zdGFuY2VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbGF1bmNoSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGxvY2F0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyczogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuYWN0aXZpdHlJbnN0YW5jZSxcbiAgICB9LFxuICAgIGFjdGl2aXR5TG9jYXRpb246IHtcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGtpbmQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmFjdGl2aXR5TG9jYXRpb24sXG4gICAgfSxcbiAgICBhdHRhY2htZW50OiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZmlsZW5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRpdGxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb250ZW50VHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgc2l6ZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdXJsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcm94eVVybDogZGVmYXVsdFZhbHVlLFxuICAgICAgaGVpZ2h0OiBkZWZhdWx0VmFsdWUsXG4gICAgICB3aWR0aDogZGVmYXVsdFZhbHVlLFxuICAgICAgZXBoZW1lcmFsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkZXNjcmlwdGlvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgZHVyYXRpb25fc2VjczogZGVmYXVsdFZhbHVlLFxuICAgICAgd2F2ZWZvcm06IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGZsYWdzOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5hdHRhY2htZW50LFxuICAgIH0sXG4gICAgY2hhbm5lbDoge1xuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgcG9zaXRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRvcGljOiBkZWZhdWx0VmFsdWUsXG4gICAgICBiaXRyYXRlOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyTGltaXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJhdGVMaW1pdFBlclVzZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJ0Y1JlZ2lvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgdmlkZW9RdWFsaXR5TW9kZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbGFzdFBpblRpbWVzdGFtcDogZGVmYXVsdFZhbHVlLFxuICAgICAgcGVybWlzc2lvbk92ZXJ3cml0ZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwZXJtaXNzaW9uczogZGVmYXVsdFZhbHVlLFxuICAgICAgbGFzdE1lc3NhZ2VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgb3duZXJJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcGFyZW50SWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lbWJlckNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZXNzYWdlQ291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlZmF1bHRBdXRvQXJjaGl2ZUR1cmF0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBmbGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGllZFRhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGF2YWlsYWJsZVRhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlZmF1bHRGb3J1bUxheW91dDogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVmYXVsdFJlYWN0aW9uRW1vamk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlZmF1bHRTb3J0T3JkZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlZmF1bHRUaHJlYWRSYXRlTGltaXRQZXJVc2VyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpY29uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZW1iZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJlY2lwaWVudHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRvdGFsTWVzc2FnZVNlbnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRocmVhZE1ldGFkYXRhOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5jaGFubmVsLFxuICAgIH0sXG4gICAgY29sbGVjdGlibGVzOiB7XG4gICAgICBuYW1lcGxhdGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmNvbGxlY3RpYmxlcyxcbiAgICB9LFxuICAgIGNvbXBvbmVudDoge1xuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgY3VzdG9tSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJlcXVpcmVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkaXNhYmxlZDogZGVmYXVsdFZhbHVlLFxuICAgICAgc3R5bGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGxhYmVsOiBkZWZhdWx0VmFsdWUsXG4gICAgICB2YWx1ZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZW1vamk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVybDogZGVmYXVsdFZhbHVlLFxuICAgICAgY2hhbm5lbFR5cGVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBvcHRpb25zOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwbGFjZWhvbGRlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgbWluVmFsdWVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtYXhWYWx1ZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1pbkxlbmd0aDogZGVmYXVsdFZhbHVlLFxuICAgICAgbWF4TGVuZ3RoOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb21wb25lbnRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkZWZhdWx0VmFsdWVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBza3VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFjY2Vzc29yeTogZGVmYXVsdFZhbHVlLFxuICAgICAgY29udGVudDogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVzY3JpcHRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNwb2lsZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGl0ZW1zOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkaXZpZGVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzcGFjaW5nOiBkZWZhdWx0VmFsdWUsXG4gICAgICBmaWxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZWRpYTogZGVmYXVsdFZhbHVlLFxuICAgICAgYWNjZW50Q29sb3I6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNpemU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNvbXBvbmVudDogZGVmYXVsdFZhbHVlLFxuICAgICAgdmFsdWVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5jb21wb25lbnQsXG4gICAgfSxcbiAgICBmb3J1bVRhZzoge1xuICAgICAgZW1vamlJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZW1vamlOYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbW9kZXJhdGVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBuYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5mb3J1bVRhZyxcbiAgICB9LFxuICAgIGVtb2ppOiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgcm9sZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVzZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmVtb2ppLFxuICAgIH0sXG4gICAgZGVmYXVsdFJlYWN0aW9uRW1vamk6IHtcbiAgICAgIGVtb2ppSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGVtb2ppTmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuZGVmYXVsdFJlYWN0aW9uRW1vamksXG4gICAgfSxcbiAgICBndWlsZDoge1xuICAgICAgYWZrVGltZW91dDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwcm94aW1hdGVNZW1iZXJDb3VudDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwcm94aW1hdGVQcmVzZW5jZUNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBkZWZhdWx0TWVzc2FnZU5vdGlmaWNhdGlvbnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBleHBsaWNpdENvbnRlbnRGaWx0ZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1heE1lbWJlcnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1heFByZXNlbmNlczogZGVmYXVsdFZhbHVlLFxuICAgICAgbWF4VmlkZW9DaGFubmVsVXNlcnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1mYUxldmVsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBuYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjaGFubmVsczogZGVmYXVsdFZhbHVlLFxuICAgICAgZW1vamlzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpY29uSGFzaDogZGVmYXVsdFZhbHVlLFxuICAgICAgbGFyZ2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lbWJlcnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG93bmVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcmVzZW5jZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJvbGVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzdGlja2VyczogZGVmYXVsdFZhbHVlLFxuICAgICAgdG9nZ2xlczogZGVmYXVsdFZhbHVlLFxuICAgICAgdW5hdmFpbGFibGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHZvaWNlU3RhdGVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICB3aWRnZXRFbmFibGVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBuc2Z3TGV2ZWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHByZWZlcnJlZExvY2FsZTogZGVmYXVsdFZhbHVlLFxuICAgICAgcHJlbWl1bVN1YnNjcmlwdGlvbkNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcmVtaXVtVGllcjogZGVmYXVsdFZhbHVlLFxuICAgICAgc3RhZ2VJbnN0YW5jZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHN5c3RlbUNoYW5uZWxGbGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgdmFuaXR5VXJsQ29kZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdmVyaWZpY2F0aW9uTGV2ZWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHdlbGNvbWVTY3JlZW46IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRpc2NvdmVyeVNwbGFzaDogZGVmYXVsdFZhbHVlLFxuICAgICAgam9pbmVkQXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lbWJlckNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBzaGFyZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpY29uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBiYW5uZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNwbGFzaDogZGVmYXVsdFZhbHVlLFxuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG93bmVySWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBlcm1pc3Npb25zOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhZmtDaGFubmVsSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHdpZGdldENoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgc3lzdGVtQ2hhbm5lbElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBydWxlc0NoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcHVibGljVXBkYXRlc0NoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcHJlbWl1bVByb2dyZXNzQmFyRW5hYmxlZDogZGVmYXVsdFZhbHVlLFxuICAgICAgc2FmZXR5QWxlcnRzQ2hhbm5lbElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtYXhTdGFnZVZpZGVvQ2hhbm5lbFVzZXJzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbmNpZGVudHNEYXRhOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5ndWlsZCxcbiAgICB9LFxuICAgIGluY2lkZW50c0RhdGE6IHtcbiAgICAgIGRtU3BhbURldGVjdGVkQXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRtc0Rpc2FibGVkVW50aWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGludml0ZXNEaXNhYmxlZFVudGlsOiBkZWZhdWx0VmFsdWUsXG4gICAgICByYWlkRGV0ZWN0ZWRBdDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuaW5jaWRlbnRzRGF0YSxcbiAgICB9LFxuICAgIGludGVyYWN0aW9uOiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVtYmVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0b2tlbjogZGVmYXVsdFZhbHVlLFxuICAgICAgdmVyc2lvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVzc2FnZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZGF0YTogZGVmYXVsdFZhbHVlLFxuICAgICAgbG9jYWxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZExvY2FsZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZW50aXRsZW1lbnRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhcHBQZXJtaXNzaW9uczogZGVmYXVsdFZhbHVlLFxuICAgICAgYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVyczogZGVmYXVsdFZhbHVlLFxuICAgICAgY29udGV4dDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXR0YWNobWVudFNpemVMaW1pdDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuaW50ZXJhY3Rpb24sXG4gICAgfSxcbiAgICBpbnRlcmFjdGlvbkNhbGxiYWNrOiB7XG4gICAgICB0eXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYWN0aXZpdHlJbnN0YW5jZUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICByZXNwb25zZU1lc3NhZ2VFcGhlbWVyYWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJlc3BvbnNlTWVzc2FnZUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICByZXNwb25zZU1lc3NhZ2VMb2FkaW5nOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5pbnRlcmFjdGlvbkNhbGxiYWNrLFxuICAgIH0sXG4gICAgaW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlOiB7XG4gICAgICBpbnRlcmFjdGlvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVzb3VyY2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZSxcbiAgICB9LFxuICAgIGludGVyYWN0aW9uUmVzb3VyY2U6IHtcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFjdGl2aXR5SW5zdGFuY2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lc3NhZ2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmludGVyYWN0aW9uUmVzb3VyY2UsXG4gICAgfSxcbiAgICBpbnZpdGU6IHtcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgY29kZTogZGVmYXVsdFZhbHVlLFxuICAgICAgY3JlYXRlZEF0OiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbnZpdGVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtYXhBZ2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1heFVzZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRhcmdldFR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRhcmdldFVzZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRhcmdldEFwcGxpY2F0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0ZW1wb3Jhcnk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVzZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFwcHJveGltYXRlTWVtYmVyQ291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFwcHJveGltYXRlUHJlc2VuY2VDb3VudDogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRTY2hlZHVsZWRFdmVudDogZGVmYXVsdFZhbHVlLFxuICAgICAgZXhwaXJlc0F0OiBkZWZhdWx0VmFsdWUsXG4gICAgICBmbGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuaW52aXRlLFxuICAgIH0sXG4gICAgbWVtYmVyOiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdXNlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgbmljazogZGVmYXVsdFZhbHVlLFxuICAgICAgcm9sZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGpvaW5lZEF0OiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcmVtaXVtU2luY2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGF2YXRhcjogZGVmYXVsdFZhbHVlLFxuICAgICAgYmFubmVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwZXJtaXNzaW9uczogZGVmYXVsdFZhbHVlLFxuICAgICAgY29tbXVuaWNhdGlvbkRpc2FibGVkVW50aWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRvZ2dsZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGF2YXRhckRlY29yYXRpb25EYXRhOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5tZW1iZXIsXG4gICAgfSxcbiAgICBtZXNzYWdlOiB7XG4gICAgICBhY3Rpdml0eTogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFwcGxpY2F0aW9uSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGF0dGFjaG1lbnRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhdXRob3I6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgY29tcG9uZW50czogZGVmYXVsdFZhbHVlLFxuICAgICAgY29udGVudDogZGVmYXVsdFZhbHVlLFxuICAgICAgZWRpdGVkVGltZXN0YW1wOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbWJlZHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbnRlcmFjdGlvbk1ldGFkYXRhOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbnRlcmFjdGlvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVtYmVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZW50aW9uZWRDaGFubmVsSWRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZW50aW9uZWRSb2xlSWRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZW50aW9uczogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVzc2FnZVJlZmVyZW5jZTogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVzc2FnZVNuYXBzaG90czogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVmZXJlbmNlZE1lc3NhZ2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5vbmNlOiBkZWZhdWx0VmFsdWUsXG4gICAgICByZWFjdGlvbnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHN0aWNrZXJJdGVtczogZGVmYXVsdFZhbHVlLFxuICAgICAgdGhyZWFkOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0eXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICB3ZWJob29rSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBvbGw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNhbGw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2UsXG4gICAgfSxcbiAgICBtZXNzYWdlU25hcHNob3Q6IHtcbiAgICAgIG1lc3NhZ2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2VTbmFwc2hvdCxcbiAgICB9LFxuICAgIG1lc3NhZ2VJbnRlcmFjdGlvbk1ldGFkYXRhOiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdXNlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVyczogZGVmYXVsdFZhbHVlLFxuICAgICAgb3JpZ2luYWxSZXNwb25zZU1lc3NhZ2VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgaW50ZXJhY3RlZE1lc3NhZ2VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdHJpZ2dlcmluZ0ludGVyYWN0aW9uTWV0YWRhdGE6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRhcmdldE1lc3NhZ2VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdGFyZ2V0VXNlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEsXG4gICAgfSxcbiAgICBtZXNzYWdlUGluOiB7XG4gICAgICBtZXNzYWdlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwaW5uZWRBdDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZVBpbixcbiAgICB9LFxuICAgIG1lc3NhZ2VJbnRlcmFjdGlvbjoge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lbWJlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgbmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdXNlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZUludGVyYWN0aW9uLFxuICAgIH0sXG4gICAgbWVzc2FnZVJlZmVyZW5jZToge1xuICAgICAgbWVzc2FnZUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjaGFubmVsSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2VSZWZlcmVuY2UsXG4gICAgfSxcbiAgICBtZXNzYWdlQ2FsbDoge1xuICAgICAgcGFydGljaXBhbnRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbmRlZFRpbWVzdGFtcDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZUNhbGwsXG4gICAgfSxcbiAgICBuYW1lcGxhdGU6IHtcbiAgICAgIHNrdUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhc3NldDogZGVmYXVsdFZhbHVlLFxuICAgICAgbGFiZWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBhbGV0dGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLm5hbWVwbGF0ZSxcbiAgICB9LFxuICAgIHJvbGU6IHtcbiAgICAgIG5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBvc2l0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb2xvcjogZGVmYXVsdFZhbHVlLFxuICAgICAgY29sb3JzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcGVybWlzc2lvbnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGljb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVuaWNvZGVFbW9qaTogZGVmYXVsdFZhbHVlLFxuICAgICAgZmxhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRvZ2dsZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnJvbGUsXG4gICAgfSxcbiAgICByb2xlQ29sb3JzOiB7XG4gICAgICBwcmltYXJ5Q29sb3I6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNlY29uZGFyeUNvbG9yOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0ZXJ0aWFyeUNvbG9yOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5yb2xlQ29sb3JzLFxuICAgIH0sXG4gICAgc2NoZWR1bGVkRXZlbnQ6IHtcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjaGFubmVsSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNyZWF0b3JJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgc2NoZWR1bGVkU3RhcnRUaW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzY2hlZHVsZWRFbmRUaW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbnRpdHlJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgY3JlYXRvcjogZGVmYXVsdFZhbHVlLFxuICAgICAgbmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVzY3JpcHRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHByaXZhY3lMZXZlbDogZGVmYXVsdFZhbHVlLFxuICAgICAgc3RhdHVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbnRpdHlUeXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyQ291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGxvY2F0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbWFnZTogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVjdXJyZW5jZVJ1bGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnNjaGVkdWxlZEV2ZW50LFxuICAgIH0sXG4gICAgc2NoZWR1bGVkRXZlbnRSZWN1cnJlbmNlUnVsZToge1xuICAgICAgc3RhcnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGVuZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZnJlcXVlbmN5OiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbnRlcnZhbDogZGVmYXVsdFZhbHVlLFxuICAgICAgYnlXZWVrZGF5OiBkZWZhdWx0VmFsdWUsXG4gICAgICBieU5XZWVrZGF5OiBkZWZhdWx0VmFsdWUsXG4gICAgICBieU1vbnRoOiBkZWZhdWx0VmFsdWUsXG4gICAgICBieU1vbnRoRGF5OiBkZWZhdWx0VmFsdWUsXG4gICAgICBieVllYXJEYXk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5zY2hlZHVsZWRFdmVudFJlY3VycmVuY2VSdWxlLFxuICAgIH0sXG4gICAgc3RhZ2VJbnN0YW5jZToge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdG9waWM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkU2NoZWR1bGVkRXZlbnRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuc3RhZ2VJbnN0YW5jZSxcbiAgICB9LFxuICAgIGludml0ZVN0YWdlSW5zdGFuY2U6IHtcbiAgICAgIG1lbWJlcnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBhcnRpY2lwYW50Q291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNwZWFrZXJDb3VudDogZGVmYXVsdFZhbHVlLFxuICAgICAgdG9waWM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmludml0ZVN0YWdlSW5zdGFuY2UsXG4gICAgfSxcbiAgICBtZWRpYUdhbGxlcnlJdGVtOiB7XG4gICAgICBtZWRpYTogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVzY3JpcHRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNwb2lsZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLm1lZGlhR2FsbGVyeUl0ZW0sXG4gICAgfSxcbiAgICBzdGlja2VyOiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcGFja0lkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBuYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkZXNjcmlwdGlvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgdGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZm9ybWF0VHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgYXZhaWxhYmxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzb3J0VmFsdWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnN0aWNrZXIsXG4gICAgfSxcbiAgICB1bmZ1cmxlZE1lZGlhSXRlbToge1xuICAgICAgdXJsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcm94eVVybDogZGVmYXVsdFZhbHVlLFxuICAgICAgaGVpZ2h0OiBkZWZhdWx0VmFsdWUsXG4gICAgICB3aWR0aDogZGVmYXVsdFZhbHVlLFxuICAgICAgY29udGVudFR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGF0dGFjaG1lbnRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMudW5mdXJsZWRNZWRpYUl0ZW0sXG4gICAgfSxcbiAgICB1c2VyOiB7XG4gICAgICB1c2VybmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZ2xvYmFsTmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgbG9jYWxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBmbGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgcHJlbWl1bVR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHB1YmxpY0ZsYWdzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhY2NlbnRDb2xvcjogZGVmYXVsdFZhbHVlLFxuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRpc2NyaW1pbmF0b3I6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGF2YXRhcjogZGVmYXVsdFZhbHVlLFxuICAgICAgZW1haWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGJhbm5lcjogZGVmYXVsdFZhbHVlLFxuICAgICAgYXZhdGFyRGVjb3JhdGlvbkRhdGE6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRvZ2dsZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNvbGxlY3RpYmxlczogZGVmYXVsdFZhbHVlLFxuICAgICAgcHJpbWFyeUd1aWxkOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy51c2VyLFxuICAgIH0sXG4gICAgdXNlclByaW1hcnlHdWlsZDoge1xuICAgICAgaWRlbnRpdHlHdWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpZGVudGl0eUVuYWJsZWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRhZzogZGVmYXVsdFZhbHVlLFxuICAgICAgYmFkZ2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnVzZXJQcmltYXJ5R3VpbGQsXG4gICAgfSxcbiAgICBhdmF0YXJEZWNvcmF0aW9uRGF0YToge1xuICAgICAgYXNzZXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNrdUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5hdmF0YXJEZWNvcmF0aW9uRGF0YSxcbiAgICB9LFxuICAgIHdlYmhvb2s6IHtcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0eXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjaGFubmVsSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVzZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGF2YXRhcjogZGVmYXVsdFZhbHVlLFxuICAgICAgdG9rZW46IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFwcGxpY2F0aW9uSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNvdXJjZUd1aWxkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzb3VyY2VDaGFubmVsOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1cmw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLndlYmhvb2ssXG4gICAgfSxcbiAgICBndWlsZE9uYm9hcmRpbmc6IHtcbiAgICAgIGRlZmF1bHRDaGFubmVsSWRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbmFibGVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtb2RlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcm9tcHRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5ndWlsZE9uYm9hcmRpbmcsXG4gICAgfSxcbiAgICBndWlsZE9uYm9hcmRpbmdQcm9tcHQ6IHtcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbk9uYm9hcmRpbmc6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG9wdGlvbnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJlcXVpcmVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzaW5nbGVTZWxlY3Q6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRpdGxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0eXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5ndWlsZE9uYm9hcmRpbmdQcm9tcHQsXG4gICAgfSxcbiAgICBndWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb246IHtcbiAgICAgIGNoYW5uZWxJZHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbW9qaTogZGVmYXVsdFZhbHVlLFxuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJvbGVJZHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRpdGxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5ndWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb24sXG4gICAgfSxcbiAgICBlbnRpdGxlbWVudDoge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNrdUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VySWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFwcGxpY2F0aW9uSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlbGV0ZWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHN0YXJ0c0F0OiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbmRzQXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNvbnN1bWVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5lbnRpdGxlbWVudCxcbiAgICB9LFxuICAgIHNrdToge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFwcGxpY2F0aW9uSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNsdWc6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGZsYWdzOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5za3UsXG4gICAgfSxcbiAgICB2b2ljZVN0YXRlOiB7XG4gICAgICByZXF1ZXN0VG9TcGVha1RpbWVzdGFtcDogZGVmYXVsdFZhbHVlLFxuICAgICAgY2hhbm5lbElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0b2dnbGVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzZXNzaW9uSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVzZXJJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMudm9pY2VTdGF0ZSxcbiAgICB9LFxuICAgIHBvbGw6IHtcbiAgICAgIHF1ZXN0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhbnN3ZXJzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBleHBpcnk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGxheW91dFR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFsbG93TXVsdGlzZWxlY3Q6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJlc3VsdHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnBvbGwsXG4gICAgfSxcbiAgICBwb2xsQW5zd2VyOiB7XG4gICAgICBhbnN3ZXJJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcG9sbE1lZGlhOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5wb2xsQW5zd2VyLFxuICAgIH0sXG4gICAgcG9sbFJlc3VsdDoge1xuICAgICAgaXNGaW5hbGl6ZWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFuc3dlckNvdW50czogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMucG9sbFJlc3VsdCxcbiAgICB9LFxuICAgIHBvbGxBbnN3ZXJDb3VudDoge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZVZvdGVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5wb2xsQW5zd2VyQ291bnQsXG4gICAgfSxcbiAgICBwb2xsTWVkaWE6IHtcbiAgICAgIHRleHQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGVtb2ppOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5wb2xsTWVkaWEsXG4gICAgfSxcbiAgICBzdWJzY3JpcHRpb246IHtcbiAgICAgIGNhbmNlbGVkQXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNvdW50cnk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGN1cnJlbnRQZXJpb2RFbmQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGN1cnJlbnRQZXJpb2RTdGFydDogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVuZXdhbFNrdUlkczogZGVmYXVsdFZhbHVlLFxuICAgICAgZW50aXRsZW1lbnRJZHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBza3VJZHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHN0YXR1czogZGVmYXVsdFZhbHVlLFxuICAgICAgdXNlcklkOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5zdWJzY3JpcHRpb24sXG4gICAgfSxcbiAgICBzb3VuZGJvYXJkU291bmQ6IHtcbiAgICAgIGF2YWlsYWJsZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZW1vamlJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZW1vamlOYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBuYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzb3VuZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyOiBkZWZhdWx0VmFsdWUsXG4gICAgICB2b2x1bWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnNvdW5kYm9hcmRTb3VuZCxcbiAgICB9LFxuICAgIGxvYmJ5OiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbWV0YWRhdGE6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lbWJlcnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGxpbmtlZENoYW5uZWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmxvYmJ5LFxuICAgIH0sXG4gICAgbG9iYnlNZW1iZXI6IHtcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZXRhZGF0YTogZGVmYXVsdFZhbHVlLFxuICAgICAgZmxhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmxvYmJ5TWVtYmVyLFxuICAgIH0sXG4gIH0gc2F0aXNmaWVzIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzIGFzIENvbXBsZXRlRGVzaXJlZFByb3BlcnRpZXM8VCwgVERlZmF1bHQ+O1xufVxuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBLZXlCeVZhbHVlPFRPYmosIFRWYWx1ZT4gPSB7XG4gIFtLZXkgaW4ga2V5b2YgVE9ial06IFRPYmpbS2V5XSBleHRlbmRzIFRWYWx1ZSA/IEtleSA6IG5ldmVyO1xufVtrZXlvZiBUT2JqXTtcblxuLyoqIEBwcml2YXRlIFRoaXMgaXMgc3ViamVjdCB0byBicmVha2luZyBjaGFuZ2VzIHdpdGhvdXQgbm90aWNlcyAqL1xuZXhwb3J0IHR5cGUgQ29tcGxldGU8VE9iaiwgVERlZmF1bHQ+ID0ge1xuICBbSyBpbiBrZXlvZiBUT2JqXS0/OiB1bmRlZmluZWQgZXh0ZW5kcyBUT2JqW0tdID8gVERlZmF1bHQgOiBFeGNsdWRlPFRPYmpbS10sIHVuZGVmaW5lZD47XG59O1xuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBKb2luVHVwbGU8VCBleHRlbmRzIHN0cmluZ1tdLCBURGVsaW1pdGVyIGV4dGVuZHMgc3RyaW5nPiA9IFQgZXh0ZW5kcyByZWFkb25seSBbaW5mZXIgRiBleHRlbmRzIHN0cmluZywgLi4uaW5mZXIgUiBleHRlbmRzIHN0cmluZ1tdXVxuICA/IFJbJ2xlbmd0aCddIGV4dGVuZHMgMFxuICAgID8gRlxuICAgIDogYCR7Rn0ke1REZWxpbWl0ZXJ9JHtKb2luVHVwbGU8UiwgVERlbGltaXRlcj59YFxuICA6ICcnO1xuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBEZXNpcmVkUHJvcGVydGllc01ldGFkYXRhID0ge1xuICBbSyBpbiBrZXlvZiBUcmFuc2Zvcm1lcnNPYmplY3RzXToge1xuICAgIGRlcGVuZGVuY2llcz86IHtcbiAgICAgIFtLZXkgaW4ga2V5b2YgVHJhbnNmb3JtZXJzT2JqZWN0c1tLXV0/OiAoa2V5b2YgVHJhbnNmb3JtZXJzT2JqZWN0c1tLXSlbXTtcbiAgICB9O1xuICAgIGFsd2F5c1ByZXNlbnRzPzogKGtleW9mIFRyYW5zZm9ybWVyc09iamVjdHNbS10pW107XG4gIH07XG59O1xuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBEZXNpcmFibGVQcm9wZXJ0aWVzPFxuICBUIGV4dGVuZHMgVHJhbnNmb3JtZXJzT2JqZWN0c1trZXlvZiBUcmFuc2Zvcm1lcnNPYmplY3RzXSxcbiAgVEtleSBleHRlbmRzIGtleW9mIFRyYW5zZm9ybWVyc09iamVjdHMgPSBLZXlCeVZhbHVlPFRyYW5zZm9ybWVyc09iamVjdHMsIFQ+LFxuPiA9IEV4Y2x1ZGU8XG4gIGtleW9mIFQsXG4gIC8vIEV4Y2x1ZGUgdGhlIHByb3BzIHRoYXQgZGVwZW5kIG9uIHNvbWV0aGluZyBlbHNlIGZyb20gdGhlIGRlc2lyYWJsZSBwcm9wZXJ0aWVzXG4gIHwga2V5b2YgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXNNZXRhZGF0YVtUS2V5XVsnZGVwZW5kZW5jaWVzJ11cbiAgLy8gQ2hlY2sgaWYgYWxsIHRoZSBrZXlzIGFyZSBcImFsd2F5cyBwcmVzZW50c1wiLCBpZiB0aGlzIGlzIHRoZSBjYXNlIGl0IG1lYW5zIHdlIGRpZCBub3Qgc3BlY2lmeSBhbnkgYWx3YXlzIHByZXNlbnQga2V5XG4gIHwgKGtleW9mIFQgZXh0ZW5kcyBOb25OdWxsYWJsZTxUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllc01ldGFkYXRhW1RLZXldWydhbHdheXNQcmVzZW50cyddPltudW1iZXJdXG4gICAgICA/IG5ldmVyXG4gICAgICA6IE5vbk51bGxhYmxlPFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzTWV0YWRhdGFbVEtleV1bJ2Fsd2F5c1ByZXNlbnRzJ10+W251bWJlcl0pXG4+O1xuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBEZXNpcmVkUHJvcGVydGllc01hcHBlcjxUIGV4dGVuZHMgVHJhbnNmb3JtZXJzT2JqZWN0c1trZXlvZiBUcmFuc2Zvcm1lcnNPYmplY3RzXT4gPSB7XG4gIFtLZXkgaW4gRGVzaXJhYmxlUHJvcGVydGllczxUPl06IGJvb2xlYW47XG59O1xuXG5kZWNsYXJlIGNvbnN0IFR5cGVFcnJvclN5bWJvbDogdW5pcXVlIHN5bWJvbDtcblxuLyoqIEBwcml2YXRlIFRoaXMgaXMgc3ViamVjdCB0byBicmVha2luZyBjaGFuZ2VzIHdpdGhvdXQgbm90aWNlcyAqL1xuZXhwb3J0IGludGVyZmFjZSBEZXNpcmVkUHJvcGVydGllc0Vycm9yPFQgZXh0ZW5kcyBzdHJpbmc+IHtcbiAgW1R5cGVFcnJvclN5bWJvbF06IFQ7XG59XG5cbi8qKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyB3aXRob3V0IG5vdGljZXMgKi9cbmV4cG9ydCB0eXBlIEFyZURlcGVuZGVuY2llc1NhdGlzZmllZDxULCBURGVwZW5kZW5jaWVzIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgc3RyaW5nW10+IHwgdW5kZWZpbmVkLCBUUHJvcHM+ID0ge1xuICBbSyBpbiBrZXlvZiBUXTogSXNLZXlEZXNpcmVkPFRbS10sIFREZXBlbmRlbmNpZXMsIFRQcm9wcz4gZXh0ZW5kcyB0cnVlID8gdHJ1ZSA6IGZhbHNlO1xufTtcblxuLyoqIEBwcml2YXRlIFRoaXMgaXMgc3ViamVjdCB0byBicmVha2luZyBjaGFuZ2VzIHdpdGhvdXQgbm90aWNlcyAqL1xuZXhwb3J0IHR5cGUgSXNLZXlEZXNpcmVkPFRLZXksIFREZXBlbmRlbmNpZXMgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT4gfCB1bmRlZmluZWQsIFRQcm9wcz4gPSBUS2V5IGV4dGVuZHMga2V5b2YgVFByb3BzIC8vIFRoZSBrZXkgaGFzIGEgZGVzaXJlZCBwcm9wcz9cbiAgPyAvLyBZZXMsIGlzIGl0IHRydWU/XG4gICAgVFByb3BzW1RLZXldIGV4dGVuZHMgdHJ1ZVxuICAgID8gLy8gWWVzLCB0aGlzIGlzIGEga2V5IHRvIGluY2x1ZGVcbiAgICAgIHRydWVcbiAgICA6IC8vIE5vLCB0aGlzIGlzIGEga2V5IHRvIGV4Y2x1ZGVcbiAgICAgIERlc2lyZWRQcm9wZXJ0aWVzRXJyb3I8YFRoaXMgcHJvcGVydHkgaXMgbm90IHNldCBhcyBkZXNpcmVkIGluIGRlc2lyZWRQcm9wZXJ0aWVzIG9wdGlvbiBpbiBjcmVhdGVCb3QoKSwgc28geW91IGNhbid0IHVzZSBpdC4gTW9yZSBpbmZvIGhlcmU6IGh0dHBzOi8vZGlzY29yZGVuby5qcy5vcmcvZGVzaXJlZC1wcm9wc2A+XG4gIDogLy8gTm8sIGl0IGlzIGEgcHJvcHMgd2l0aCBkZXBlbmRlbmNpZXM/XG4gICAgVEtleSBleHRlbmRzIGtleW9mIFREZXBlbmRlbmNpZXNcbiAgICA/IC8vIFllcywgaGFzIGFsbCBvZiBpdHMgZGVwZW5kZW5jaWVzIHNhdGlzZmllZD9cbiAgICAgIEFyZURlcGVuZGVuY2llc1NhdGlzZmllZDxURGVwZW5kZW5jaWVzW1RLZXldLCBURGVwZW5kZW5jaWVzLCBUUHJvcHM+IGV4dGVuZHMgdHJ1ZVtdXG4gICAgICA/IC8vIFllcywgdGhpcyBpcyBhIGtleSB0byBpbmNsdWRlXG4gICAgICAgIHRydWVcbiAgICAgIDogLy8gTm8sIHRoaXMgaXMgYSBrZXkgdG8gbm90IGluY2x1ZGVcbiAgICAgICAgRGVzaXJlZFByb3BlcnRpZXNFcnJvcjxgVGhpcyBwcm9wZXJ0eSBkZXBlbmRzIG9uIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczogJHtKb2luVHVwbGU8Tm9uTnVsbGFibGU8VERlcGVuZGVuY2llcz5bVEtleV0sICcsICc+fS4gTm90IGFsbCBvZiB0aGVzZSBwcm9wcyBhcmUgc2V0IGFzIGRlc2lyZWQgaW4gZGVzaXJlZFByb3BlcnRpZXMgb3B0aW9uIGluIGNyZWF0ZUJvdCgpLCBzbyB5b3UgY2FuJ3QgdXNlIGl0LiBNb3JlIGluZm8gaGVyZTogaHR0cHM6Ly9kaXNjb3JkZW5vLmpzLm9yZy9kZXNpcmVkLXByb3BzYD5cbiAgICA6IC8vIE5vLCB3ZSBpbmNsdWRlIGl0IGJ1dCBpdCBkb2VzIG5vdCBoYXZlIG5laXRoZXIgcHJvcHMgbm9yIGRlcGVuZGVuY2llc1xuICAgICAgdHJ1ZTtcblxuLyoqIFRoZSBiZWhhdmlvciBpdCBzaG91bGQgYmUgdXNlZCB3aGVuIHJlc29sdmluZyBhbiB1bmRlc2lyZWQgcHJvcGVydHkgKi9cbmV4cG9ydCBlbnVtIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3Ige1xuICAvKiogV2hlbiB0aGlzIGJlaGF2aW9yIGlzIHVzZWQgdGhlIGtleSB3aWxsIGJlIG1pc3NpbmcgY29tcGxldGVseSAqL1xuICBSZW1vdmVLZXksXG4gIC8qKiBXaGVuIHRoaXMgYmVoYXZpb3IgaXMgdXNlZCB0aGUga2V5IHdpbGwgYmUgYSBzdHJpbmcgZXhwbGFpbmluZyB3aHkgdGhlIHByb3BlcnR5IGlzIGRpc2FibGVkICovXG4gIENoYW5nZVR5cGUsXG59XG5cbi8qKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyB3aXRob3V0IG5vdGljZXMgKi9cbmV4cG9ydCB0eXBlIFJlbW92ZUtleUlmVW5kZXNpcmVkPEtleSwgVCwgVFByb3BzIGV4dGVuZHMgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXM+ID0gSXNLZXlEZXNpcmVkPFxuICBLZXksXG4gIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzTWV0YWRhdGFbS2V5QnlWYWx1ZTxUcmFuc2Zvcm1lcnNPYmplY3RzLCBUPl1bJ2RlcGVuZGVuY2llcyddLFxuICBUUHJvcHNbS2V5QnlWYWx1ZTxUcmFuc2Zvcm1lcnNPYmplY3RzLCBUPl1cbj4gZXh0ZW5kcyB0cnVlXG4gID8gS2V5XG4gIDogbmV2ZXI7XG5cbi8qKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyB3aXRob3V0IG5vdGljZXMgKi9cbmV4cG9ydCB0eXBlIEdldEVycm9yV2hlblVuZGVzaXJlZDxcbiAgS2V5IGV4dGVuZHMga2V5b2YgVCxcbiAgVCxcbiAgVFByb3BzIGV4dGVuZHMgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsXG4gIFRCZWhhdmlvciBleHRlbmRzIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IsXG4gIC8vIFRoaXMgZ2VuZXJpYyB2YWx1ZSBpcyB1c2VkIGFzIGFuIGFsaWFzXG4gIFRJc0Rlc2lyZWQgPSBJc0tleURlc2lyZWQ8XG4gICAgS2V5LFxuICAgIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzTWV0YWRhdGFbS2V5QnlWYWx1ZTxUcmFuc2Zvcm1lcnNPYmplY3RzLCBUPl1bJ2RlcGVuZGVuY2llcyddLFxuICAgIFRQcm9wc1tLZXlCeVZhbHVlPFRyYW5zZm9ybWVyc09iamVjdHMsIFQ+XVxuICA+LFxuPiA9IFRJc0Rlc2lyZWQgZXh0ZW5kcyB0cnVlID8gVHJhbnNmb3JtUHJvcGVydHk8VFtLZXldLCBUUHJvcHMsIFRCZWhhdmlvcj4gOiBUSXNEZXNpcmVkO1xuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBJc09iamVjdDxUPiA9IFQgZXh0ZW5kcyBvYmplY3QgPyAoVCBleHRlbmRzIEZ1bmN0aW9uID8gZmFsc2UgOiB0cnVlKSA6IGZhbHNlO1xuXG4vLyBJZiB0aGUgb2JqZWN0IGlzIGEgdHJhbnNmb3JtZWQgb2JqZWN0LCBhIGNvbGxlY3Rpb24gb2YgdHJhbnNmb3JtZWQgb2JqZWN0IG9yIGFuIGFycmF5IG9mIHRyYW5zZm9ybWVkIG9iamVjdHMgd2UgbmVlZCB0byBhcHBseSB0aGUgZGVzaXJlZCBwcm9wcyB0byB0aGVtIGFzIHdlbGxcbi8vIE5PVEU6IGNoYW5naW5nIHRoZSBvcmRlciBvZiB0aGVzZSB0ZXJuYXJpZXMgY2FuIGNhdXNlIGJ1Z3MsIGZvciB0aGlzIHJlYXNvbiB3ZSBjaGVjayBpbiB0aGlzIG9yZGVyOlxuLy8gICAgICAtIElzIGl0IGFuIGFycmF5P1xuLy8gICAgICAtIElzIGl0IGEgY29sbGVjdGlvbj9cbi8vICAgICAgLSBJcyBpdCBhIGJvdD9cbi8vICAgICAgLSBJcyBpdCBhIHRyYW5zZm9ybWVkIG9iamVjdD9cbi8vICAgICAgLSBJcyBpdCBhbiBpbnRlcmFjdGlvbiByZXNvbHZlZCBkYXRhIG1lbWJlcj9cbi8vICAgICAgLSBJcyBpdCBhbiBpbnRlcmFjdGlvbiByZXNvbHZlZCBkYXRhIGNoYW5uZWw/XG4vLyAgICAgIC0gSXMgaXQgYW4gb2JqZWN0P1xuLy8gICAgICAtIEl0J3Mgbm90IGFuIG9iamVjdFxuXG4vKipcbiAqIFRyYW5zZm9ybSBhIGdlbmVyaWMgb2JqZWN0IHByb3BlcnRpZXMgYmFzZWQgb24gdGhlIGRlc2lyZWQgcHJvcGVydGllcyBhbmQgYmVoYXZpb3IgZm9yIG90aGVyIHRyYW5zZm9ybWVyIG9iamVjdHMgaW4gdGhlIG9iamVjdC5cbiAqL1xuZXhwb3J0IHR5cGUgVHJhbnNmb3JtUHJvcGVydHk8VCwgVFByb3BzIGV4dGVuZHMgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIFRCZWhhdmlvciBleHRlbmRzIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+ID0gVCBleHRlbmRzIEFycmF5PGluZmVyIFU+IC8vIGlzIGl0IGFuIGFycmF5P1xuICA/IC8vIFllcywgYXBwbHkgdGhlIGRlc2lyZWQgcHJvcHNcbiAgICBUcmFuc2Zvcm1Qcm9wZXJ0eTxVLCBUUHJvcHMsIFRCZWhhdmlvcj5bXVxuICA6IC8vIE5vLCBpcyBpdCBhIGNvbGxlY3Rpb24/XG4gICAgVCBleHRlbmRzIENvbGxlY3Rpb248aW5mZXIgVSwgaW5mZXIgVU9iaj5cbiAgICA/IC8vIFllcywgY2hlY2sgZm9yIG5lc3RlZCBwcm9wcmlldGllc1xuICAgICAgQ29sbGVjdGlvbjxVLCBUcmFuc2Zvcm1Qcm9wZXJ0eTxVT2JqLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gICAgOiAvLyBObywgaXMgaXQgYSBCb3Q/XG4gICAgICBUIGV4dGVuZHMgQm90XG4gICAgICA/IC8vIFllcywgcmV0dXJuIGEgYm90IHdpdGggdGhlIGNvcnJlY3Qgc2V0IG9mIHByb3BzICYgYmVoYXZpb3JcbiAgICAgICAgQm90PFRQcm9wcywgVEJlaGF2aW9yPlxuICAgICAgOiAvLyBObywgaXMgaXQgYSB0cmFuc2Zvcm1lZCBvYmplY3Q/XG4gICAgICAgIFQgZXh0ZW5kcyBUcmFuc2Zvcm1lcnNPYmplY3RzW2tleW9mIFRyYW5zZm9ybWVyc09iamVjdHNdXG4gICAgICAgID8gLy8gWWVzLCBhcHBseSB0aGUgZGVzaXJlZCBwcm9wc1xuICAgICAgICAgIFNldHVwRGVzaXJlZFByb3BzPFQsIFRQcm9wcywgVEJlaGF2aW9yPlxuICAgICAgICA6IC8vIE5vLCBpcyBpdCBhbiBpbnRlcmFjdGlvbiByZXNvbHZlZCBkYXRhIG1lbWJlcj8gfCBXZSBuZWVkIHRvIGNoZWNrIHRoaXMgaGVyZSBiZWNhdXNlIHRoZSB0eXBlIGl0c2VsZiBoYXMgbm90IHdheSBvZiBnZXR0aW5nIHRoZSBkZXNpcmVkIHByb3BzXG4gICAgICAgICAgVCBleHRlbmRzIEludGVyYWN0aW9uUmVzb2x2ZWREYXRhTWVtYmVyPFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPlxuICAgICAgICAgID8gLy8gWWVzLCBhcHBseSB0aGUgZGVzaXJlZCBwcm9wc1xuICAgICAgICAgICAgSW50ZXJhY3Rpb25SZXNvbHZlZERhdGFNZW1iZXI8VFByb3BzLCBUQmVoYXZpb3I+XG4gICAgICAgICAgOiAvLyBObywgaXMgaXQgYW4gaW50ZXJhY3Rpb24gcmVzb2x2ZWQgZGF0YSBjaGFubmVsPyB8IFdlIG5lZWQgdG8gY2hlY2sgdGhpcyBoZXJlIGJlY2F1c2UgdGhlIHR5cGUgaXRzZWxmIGhhcyBub3Qgd2F5IG9mIGdldHRpbmcgdGhlIGRlc2lyZWQgcHJvcHNcbiAgICAgICAgICAgIFQgZXh0ZW5kcyBJbnRlcmFjdGlvblJlc29sdmVkRGF0YUNoYW5uZWw8VHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+XG4gICAgICAgICAgICA/IC8vIFllcywgYXBwbHkgdGhlIGRlc2lyZWQgcHJvcHNcbiAgICAgICAgICAgICAgSW50ZXJhY3Rpb25SZXNvbHZlZERhdGFDaGFubmVsPFRQcm9wcywgVEJlaGF2aW9yPlxuICAgICAgICAgICAgOiAvLyBJcyBpdCBhbiBvYmplY3Q/XG4gICAgICAgICAgICAgIElzT2JqZWN0PFQ+IGV4dGVuZHMgdHJ1ZVxuICAgICAgICAgICAgICA/IC8vIFllcywgd2UgbmVlZCB0byBlbnN1cmUgbmVzdGVkIGluc2lkZSB0aGVyZSBhcmVuJ3QgdHJhbnNmb3JtZWQgb2JqZWN0c1xuICAgICAgICAgICAgICAgIHsgW0sgaW4ga2V5b2YgVF06IFRyYW5zZm9ybVByb3BlcnR5PFRbS10sIFRQcm9wcywgVEJlaGF2aW9yPiB9XG4gICAgICAgICAgICAgIDogLy8gTm8sIHRoaXMgaXMgYSBub3JtYWwgdmFsdWUgc3VjaCBhcyBzdHJpbmcgLyBiaWdpbnQgLyBudW1iZXJcbiAgICAgICAgICAgICAgICBUO1xuXG4vKipcbiAqIEFwcGx5IGRlc2lyZWQgcHJvcGVydGllcyB0byBhIHRyYW5zZm9ybWVyIG9iamVjdC5cbiAqL1xuZXhwb3J0IHR5cGUgU2V0dXBEZXNpcmVkUHJvcHM8XG4gIFQgZXh0ZW5kcyBUcmFuc2Zvcm1lcnNPYmplY3RzW2tleW9mIFRyYW5zZm9ybWVyc09iamVjdHNdLFxuICBUUHJvcHMgZXh0ZW5kcyBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcyxcbiAgVEJlaGF2aW9yIGV4dGVuZHMgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvciA9IERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IuUmVtb3ZlS2V5LFxuPiA9IHtcbiAgLy8gV2hlbiB0aGUgYmVoYXZpb3IgaXMgdG8gcmVtb3ZlIHRoZSBrZXkgd2UgdXNlIHRoZSBSZW1vdmVLZXlJZlVuZGVzaXJlZCB0eXBlIGhlbHBlciBlbHNlIHJldHVybiB0aGUgS2V5IGFzIGlzXG4gIFtLZXkgaW4ga2V5b2YgVCBhcyBUQmVoYXZpb3IgZXh0ZW5kcyBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLlJlbW92ZUtleVxuICAgID8gUmVtb3ZlS2V5SWZVbmRlc2lyZWQ8S2V5LCBULCBUUHJvcHM+XG4gICAgOiBLZXldOiAvLyBXaGVuIHRoZSBiZWhhdmlvciBpcyB0byBjaGFuZ2UgdGhlIHR5cGUgd2UgdXNlIHRoZSBHZXRFcnJvcldoZW5VbmRlc2lyZWQgdHlwZSBoZWxwZXIgZWxzZSBhcHBseSB0aGUgZGVzaXJlZCBwcm9wcyB0byB0aGUga2V5IGFuZCByZXR1cm5cbiAgVEJlaGF2aW9yIGV4dGVuZHMgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvci5DaGFuZ2VUeXBlXG4gICAgPyBHZXRFcnJvcldoZW5VbmRlc2lyZWQ8S2V5LCBULCBUUHJvcHMsIFRCZWhhdmlvcj5cbiAgICA6IFRyYW5zZm9ybVByb3BlcnR5PFRbS2V5XSwgVFByb3BzLCBUQmVoYXZpb3I+O1xufTtcblxuLyoqXG4gKiBUaGUgZGVzaXJlZCBwcm9wZXJ0aWVzIGZvciBlYWNoIHRyYW5zZm9ybWVyIG9iamVjdC5cbiAqL1xuZXhwb3J0IHR5cGUgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMgPSB7XG4gIFtLZXkgaW4ga2V5b2YgVHJhbnNmb3JtZXJzT2JqZWN0c106IERlc2lyZWRQcm9wZXJ0aWVzTWFwcGVyPFRyYW5zZm9ybWVyc09iamVjdHNbS2V5XT47XG59O1xuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPFQgZXh0ZW5kcyBSZWN1cnNpdmVQYXJ0aWFsPFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzPiwgVFREZWZhdWx0IGV4dGVuZHMgYm9vbGVhbiA9IGZhbHNlPiA9IHtcbiAgW0sgaW4ga2V5b2YgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXNdOiBDb21wbGV0ZTxQYXJ0aWFsPFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzW0tdPiAmIFRbS10sIFRURGVmYXVsdD47XG59O1xuIl0sIm5hbWVzIjpbImNyZWF0ZURlc2lyZWRQcm9wZXJ0aWVzT2JqZWN0IiwiZGVzaXJlZFByb3BlcnRpZXMiLCJkZWZhdWx0VmFsdWUiLCJhY3Rpdml0eUluc3RhbmNlIiwiYXBwbGljYXRpb25JZCIsImluc3RhbmNlSWQiLCJsYXVuY2hJZCIsImxvY2F0aW9uIiwidXNlcnMiLCJhY3Rpdml0eUxvY2F0aW9uIiwiY2hhbm5lbElkIiwiZ3VpbGRJZCIsImlkIiwia2luZCIsImF0dGFjaG1lbnQiLCJmaWxlbmFtZSIsInRpdGxlIiwiY29udGVudFR5cGUiLCJzaXplIiwidXJsIiwicHJveHlVcmwiLCJoZWlnaHQiLCJ3aWR0aCIsImVwaGVtZXJhbCIsImRlc2NyaXB0aW9uIiwiZHVyYXRpb25fc2VjcyIsIndhdmVmb3JtIiwiZmxhZ3MiLCJjaGFubmVsIiwidHlwZSIsInBvc2l0aW9uIiwibmFtZSIsInRvcGljIiwiYml0cmF0ZSIsInVzZXJMaW1pdCIsInJhdGVMaW1pdFBlclVzZXIiLCJydGNSZWdpb24iLCJ2aWRlb1F1YWxpdHlNb2RlIiwibGFzdFBpblRpbWVzdGFtcCIsInBlcm1pc3Npb25PdmVyd3JpdGVzIiwicGVybWlzc2lvbnMiLCJsYXN0TWVzc2FnZUlkIiwib3duZXJJZCIsInBhcmVudElkIiwibWVtYmVyQ291bnQiLCJtZXNzYWdlQ291bnQiLCJkZWZhdWx0QXV0b0FyY2hpdmVEdXJhdGlvbiIsImFwcGxpZWRUYWdzIiwiYXZhaWxhYmxlVGFncyIsImRlZmF1bHRGb3J1bUxheW91dCIsImRlZmF1bHRSZWFjdGlvbkVtb2ppIiwiZGVmYXVsdFNvcnRPcmRlciIsImRlZmF1bHRUaHJlYWRSYXRlTGltaXRQZXJVc2VyIiwiaWNvbiIsIm1lbWJlciIsInJlY2lwaWVudHMiLCJ0b3RhbE1lc3NhZ2VTZW50IiwidGhyZWFkTWV0YWRhdGEiLCJjb2xsZWN0aWJsZXMiLCJuYW1lcGxhdGUiLCJjb21wb25lbnQiLCJjdXN0b21JZCIsInJlcXVpcmVkIiwiZGlzYWJsZWQiLCJzdHlsZSIsImxhYmVsIiwidmFsdWUiLCJlbW9qaSIsImNoYW5uZWxUeXBlcyIsIm9wdGlvbnMiLCJwbGFjZWhvbGRlciIsIm1pblZhbHVlcyIsIm1heFZhbHVlcyIsIm1pbkxlbmd0aCIsIm1heExlbmd0aCIsImNvbXBvbmVudHMiLCJkZWZhdWx0VmFsdWVzIiwic2t1SWQiLCJhY2Nlc3NvcnkiLCJjb250ZW50Iiwic3BvaWxlciIsIml0ZW1zIiwiZGl2aWRlciIsInNwYWNpbmciLCJmaWxlIiwibWVkaWEiLCJhY2NlbnRDb2xvciIsInZhbHVlcyIsImZvcnVtVGFnIiwiZW1vamlJZCIsImVtb2ppTmFtZSIsIm1vZGVyYXRlZCIsInJvbGVzIiwidXNlciIsImd1aWxkIiwiYWZrVGltZW91dCIsImFwcHJveGltYXRlTWVtYmVyQ291bnQiLCJhcHByb3hpbWF0ZVByZXNlbmNlQ291bnQiLCJkZWZhdWx0TWVzc2FnZU5vdGlmaWNhdGlvbnMiLCJleHBsaWNpdENvbnRlbnRGaWx0ZXIiLCJtYXhNZW1iZXJzIiwibWF4UHJlc2VuY2VzIiwibWF4VmlkZW9DaGFubmVsVXNlcnMiLCJtZmFMZXZlbCIsImNoYW5uZWxzIiwiZW1vamlzIiwiaWNvbkhhc2giLCJsYXJnZSIsIm1lbWJlcnMiLCJvd25lciIsInByZXNlbmNlcyIsInN0aWNrZXJzIiwidG9nZ2xlcyIsInVuYXZhaWxhYmxlIiwidm9pY2VTdGF0ZXMiLCJ3aWRnZXRFbmFibGVkIiwibnNmd0xldmVsIiwicHJlZmVycmVkTG9jYWxlIiwicHJlbWl1bVN1YnNjcmlwdGlvbkNvdW50IiwicHJlbWl1bVRpZXIiLCJzdGFnZUluc3RhbmNlcyIsInN5c3RlbUNoYW5uZWxGbGFncyIsInZhbml0eVVybENvZGUiLCJ2ZXJpZmljYXRpb25MZXZlbCIsIndlbGNvbWVTY3JlZW4iLCJkaXNjb3ZlcnlTcGxhc2giLCJqb2luZWRBdCIsInNoYXJkSWQiLCJiYW5uZXIiLCJzcGxhc2giLCJhZmtDaGFubmVsSWQiLCJ3aWRnZXRDaGFubmVsSWQiLCJzeXN0ZW1DaGFubmVsSWQiLCJydWxlc0NoYW5uZWxJZCIsInB1YmxpY1VwZGF0ZXNDaGFubmVsSWQiLCJwcmVtaXVtUHJvZ3Jlc3NCYXJFbmFibGVkIiwic2FmZXR5QWxlcnRzQ2hhbm5lbElkIiwibWF4U3RhZ2VWaWRlb0NoYW5uZWxVc2VycyIsImluY2lkZW50c0RhdGEiLCJkbVNwYW1EZXRlY3RlZEF0IiwiZG1zRGlzYWJsZWRVbnRpbCIsImludml0ZXNEaXNhYmxlZFVudGlsIiwicmFpZERldGVjdGVkQXQiLCJpbnRlcmFjdGlvbiIsInRva2VuIiwidmVyc2lvbiIsIm1lc3NhZ2UiLCJkYXRhIiwibG9jYWxlIiwiZ3VpbGRMb2NhbGUiLCJlbnRpdGxlbWVudHMiLCJhcHBQZXJtaXNzaW9ucyIsImF1dGhvcml6aW5nSW50ZWdyYXRpb25Pd25lcnMiLCJjb250ZXh0IiwiYXR0YWNobWVudFNpemVMaW1pdCIsImludGVyYWN0aW9uQ2FsbGJhY2siLCJhY3Rpdml0eUluc3RhbmNlSWQiLCJyZXNwb25zZU1lc3NhZ2VFcGhlbWVyYWwiLCJyZXNwb25zZU1lc3NhZ2VJZCIsInJlc3BvbnNlTWVzc2FnZUxvYWRpbmciLCJpbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2UiLCJyZXNvdXJjZSIsImludGVyYWN0aW9uUmVzb3VyY2UiLCJpbnZpdGUiLCJjb2RlIiwiY3JlYXRlZEF0IiwiaW52aXRlciIsIm1heEFnZSIsIm1heFVzZXMiLCJ0YXJnZXRUeXBlIiwidGFyZ2V0VXNlciIsInRhcmdldEFwcGxpY2F0aW9uIiwidGVtcG9yYXJ5IiwidXNlcyIsImd1aWxkU2NoZWR1bGVkRXZlbnQiLCJleHBpcmVzQXQiLCJuaWNrIiwicHJlbWl1bVNpbmNlIiwiYXZhdGFyIiwiY29tbXVuaWNhdGlvbkRpc2FibGVkVW50aWwiLCJhdmF0YXJEZWNvcmF0aW9uRGF0YSIsImFjdGl2aXR5IiwiYXBwbGljYXRpb24iLCJhdHRhY2htZW50cyIsImF1dGhvciIsImVkaXRlZFRpbWVzdGFtcCIsImVtYmVkcyIsImludGVyYWN0aW9uTWV0YWRhdGEiLCJtZW50aW9uZWRDaGFubmVsSWRzIiwibWVudGlvbmVkUm9sZUlkcyIsIm1lbnRpb25zIiwibWVzc2FnZVJlZmVyZW5jZSIsIm1lc3NhZ2VTbmFwc2hvdHMiLCJyZWZlcmVuY2VkTWVzc2FnZSIsIm5vbmNlIiwicmVhY3Rpb25zIiwic3RpY2tlckl0ZW1zIiwidGhyZWFkIiwid2ViaG9va0lkIiwicG9sbCIsImNhbGwiLCJtZXNzYWdlU25hcHNob3QiLCJtZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YSIsIm9yaWdpbmFsUmVzcG9uc2VNZXNzYWdlSWQiLCJpbnRlcmFjdGVkTWVzc2FnZUlkIiwidHJpZ2dlcmluZ0ludGVyYWN0aW9uTWV0YWRhdGEiLCJ0YXJnZXRNZXNzYWdlSWQiLCJtZXNzYWdlUGluIiwicGlubmVkQXQiLCJtZXNzYWdlSW50ZXJhY3Rpb24iLCJtZXNzYWdlSWQiLCJtZXNzYWdlQ2FsbCIsInBhcnRpY2lwYW50cyIsImVuZGVkVGltZXN0YW1wIiwiYXNzZXQiLCJwYWxldHRlIiwicm9sZSIsImNvbG9yIiwiY29sb3JzIiwidW5pY29kZUVtb2ppIiwidGFncyIsInJvbGVDb2xvcnMiLCJwcmltYXJ5Q29sb3IiLCJzZWNvbmRhcnlDb2xvciIsInRlcnRpYXJ5Q29sb3IiLCJzY2hlZHVsZWRFdmVudCIsImNyZWF0b3JJZCIsInNjaGVkdWxlZFN0YXJ0VGltZSIsInNjaGVkdWxlZEVuZFRpbWUiLCJlbnRpdHlJZCIsImNyZWF0b3IiLCJwcml2YWN5TGV2ZWwiLCJzdGF0dXMiLCJlbnRpdHlUeXBlIiwidXNlckNvdW50IiwiaW1hZ2UiLCJyZWN1cnJlbmNlUnVsZSIsInNjaGVkdWxlZEV2ZW50UmVjdXJyZW5jZVJ1bGUiLCJzdGFydCIsImVuZCIsImZyZXF1ZW5jeSIsImludGVydmFsIiwiYnlXZWVrZGF5IiwiYnlOV2Vla2RheSIsImJ5TW9udGgiLCJieU1vbnRoRGF5IiwiYnlZZWFyRGF5IiwiY291bnQiLCJzdGFnZUluc3RhbmNlIiwiZ3VpbGRTY2hlZHVsZWRFdmVudElkIiwiaW52aXRlU3RhZ2VJbnN0YW5jZSIsInBhcnRpY2lwYW50Q291bnQiLCJzcGVha2VyQ291bnQiLCJtZWRpYUdhbGxlcnlJdGVtIiwic3RpY2tlciIsInBhY2tJZCIsImZvcm1hdFR5cGUiLCJhdmFpbGFibGUiLCJzb3J0VmFsdWUiLCJ1bmZ1cmxlZE1lZGlhSXRlbSIsImF0dGFjaG1lbnRJZCIsInVzZXJuYW1lIiwiZ2xvYmFsTmFtZSIsInByZW1pdW1UeXBlIiwicHVibGljRmxhZ3MiLCJkaXNjcmltaW5hdG9yIiwiZW1haWwiLCJwcmltYXJ5R3VpbGQiLCJ1c2VyUHJpbWFyeUd1aWxkIiwiaWRlbnRpdHlHdWlsZElkIiwiaWRlbnRpdHlFbmFibGVkIiwidGFnIiwiYmFkZ2UiLCJ3ZWJob29rIiwic291cmNlR3VpbGQiLCJzb3VyY2VDaGFubmVsIiwiZ3VpbGRPbmJvYXJkaW5nIiwiZGVmYXVsdENoYW5uZWxJZHMiLCJlbmFibGVkIiwibW9kZSIsInByb21wdHMiLCJndWlsZE9uYm9hcmRpbmdQcm9tcHQiLCJpbk9uYm9hcmRpbmciLCJzaW5nbGVTZWxlY3QiLCJndWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb24iLCJjaGFubmVsSWRzIiwicm9sZUlkcyIsImVudGl0bGVtZW50IiwidXNlcklkIiwiZGVsZXRlZCIsInN0YXJ0c0F0IiwiZW5kc0F0IiwiY29uc3VtZWQiLCJza3UiLCJzbHVnIiwidm9pY2VTdGF0ZSIsInJlcXVlc3RUb1NwZWFrVGltZXN0YW1wIiwic2Vzc2lvbklkIiwicXVlc3Rpb24iLCJhbnN3ZXJzIiwiZXhwaXJ5IiwibGF5b3V0VHlwZSIsImFsbG93TXVsdGlzZWxlY3QiLCJyZXN1bHRzIiwicG9sbEFuc3dlciIsImFuc3dlcklkIiwicG9sbE1lZGlhIiwicG9sbFJlc3VsdCIsImlzRmluYWxpemVkIiwiYW5zd2VyQ291bnRzIiwicG9sbEFuc3dlckNvdW50IiwibWVWb3RlZCIsInRleHQiLCJzdWJzY3JpcHRpb24iLCJjYW5jZWxlZEF0IiwiY291bnRyeSIsImN1cnJlbnRQZXJpb2RFbmQiLCJjdXJyZW50UGVyaW9kU3RhcnQiLCJyZW5ld2FsU2t1SWRzIiwiZW50aXRsZW1lbnRJZHMiLCJza3VJZHMiLCJzb3VuZGJvYXJkU291bmQiLCJzb3VuZElkIiwidm9sdW1lIiwibG9iYnkiLCJtZXRhZGF0YSIsImxpbmtlZENoYW5uZWwiLCJsb2JieU1lbWJlciIsIkRlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IiXSwibWFwcGluZ3MiOiJBQTRPQSxPQUFPLFNBQVNBLDhCQUNkQyxpQkFBb0IsRUFDcEJDLGVBQXlCLEtBQWlCO0lBRTFDLE9BQU87UUFDTEMsa0JBQWtCO1lBQ2hCQyxlQUFlRjtZQUNmRyxZQUFZSDtZQUNaSSxVQUFVSjtZQUNWSyxVQUFVTDtZQUNWTSxPQUFPTjtZQUNQLEdBQUdELGtCQUFrQkUsZ0JBQWdCO1FBQ3ZDO1FBQ0FNLGtCQUFrQjtZQUNoQkMsV0FBV1I7WUFDWFMsU0FBU1Q7WUFDVFUsSUFBSVY7WUFDSlcsTUFBTVg7WUFD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
@@ -1 +1 @@
1
- {"version":3,"file":"interaction.d.ts","sourceRoot":"","sources":["../../src/transformers/interaction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,SAAS,EAEd,KAAK,kBAAkB,EACvB,KAAK,0BAA0B,EAC/B,KAAK,kCAAkC,EACvC,KAAK,4BAA4B,EACjC,KAAK,8BAA8B,EACnC,KAAK,0BAA0B,EAIhC,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAErC,OAAO,KAAK,EACV,yBAAyB,EACzB,yBAAyB,EACzB,iBAAiB,EACjB,6BAA6B,EAC7B,iBAAiB,EAClB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EACV,WAAW,EACX,mBAAmB,EACnB,2BAA2B,EAC3B,qBAAqB,EACrB,uBAAuB,EACvB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAIpB,eAAO,MAAM,eAAe,EAAE,iBAAiB,CAAC,WAAW,EAAE,yBAAyB,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,yBAAyB,CAAC,SAAS,CAwGpI,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,kBAAkB,EAAE,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,WAAW,CAqErH;AAED,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,4BAA4B,GAAG,qBAAqB,CAUpH;AAED,wBAAgB,gCAAgC,CAC9C,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,8BAA8B,EACvC,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,SAAS,CAAA;CAAE,GAChD,iBAAiB,CAAC,uBAAuB,EAAE,6BAA6B,EAAE,yBAAyB,CAAC,SAAS,CAAC,CAiFhH;AAED,wBAAgB,oCAAoC,CAClD,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,kCAAkC,EAC3C,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3B,2BAA2B,CAS7B;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,0BAA0B,GAAG,mBAAmB,CAY/G;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,0BAA0B,EAAE,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,mBAAmB,CAS7I"}
1
+ {"version":3,"file":"interaction.d.ts","sourceRoot":"","sources":["../../src/transformers/interaction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,SAAS,EAEd,KAAK,kBAAkB,EACvB,KAAK,0BAA0B,EAC/B,KAAK,kCAAkC,EACvC,KAAK,4BAA4B,EACjC,KAAK,8BAA8B,EACnC,KAAK,0BAA0B,EAIhC,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAErC,OAAO,KAAK,EACV,yBAAyB,EACzB,yBAAyB,EACzB,iBAAiB,EACjB,6BAA6B,EAC7B,iBAAiB,EAClB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EACV,WAAW,EACX,mBAAmB,EACnB,2BAA2B,EAC3B,qBAAqB,EACrB,uBAAuB,EACvB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAIpB,eAAO,MAAM,eAAe,EAAE,iBAAiB,CAAC,WAAW,EAAE,yBAAyB,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,yBAAyB,CAAC,SAAS,CA8GpI,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,kBAAkB,EAAE,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,WAAW,CAqErH;AAED,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,4BAA4B,GAAG,qBAAqB,CAUpH;AAED,wBAAgB,gCAAgC,CAC9C,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,8BAA8B,EACvC,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,SAAS,CAAA;CAAE,GAChD,iBAAiB,CAAC,uBAAuB,EAAE,6BAA6B,EAAE,yBAAyB,CAAC,SAAS,CAAC,CAiFhH;AAED,wBAAgB,oCAAoC,CAClD,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,kCAAkC,EAC3C,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3B,2BAA2B,CAS7B;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,0BAA0B,GAAG,mBAAmB,CAY/G;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,0BAA0B,EAAE,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,mBAAmB,CAS7I"}
@@ -24,7 +24,7 @@ export const baseInteraction = {
24
24
  response.flags |= MessageFlags.Ephemeral;
25
25
  }
26
26
  // Since this has already been given a response, any further responses must be followups.
27
- if (this.acknowledged) return await this.bot.helpers.sendFollowupMessage(this.token, response);
27
+ if (this.acknowledged) return await this.sendFollowupMessage(response);
28
28
  const result = await this.bot.helpers.sendInteractionResponse(this.id, this.token, {
29
29
  type,
30
30
  data: response
@@ -34,6 +34,13 @@ export const baseInteraction = {
34
34
  this.acknowledged = true;
35
35
  return result;
36
36
  },
37
+ async sendFollowupMessage (response) {
38
+ // If user provides a string, change it to a response object
39
+ if (typeof response === 'string') response = {
40
+ content: response
41
+ };
42
+ return await this.bot.helpers.sendFollowupMessage(this.token, response);
43
+ },
37
44
  async edit (response, messageId, options) {
38
45
  if (this.type === InteractionTypes.ApplicationCommandAutocomplete) throw new Error('Cannot edit an autocomplete interaction.');
39
46
  // If user provides a string, change it to a response object
@@ -261,4 +268,4 @@ export function transformInteractionResource(bot, payload, extra) {
261
268
  return bot.transformers.customizers.interactionResource(bot, payload, resource, extra);
262
269
  }
263
270
 
264
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvaW50ZXJhY3Rpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBCaWdTdHJpbmcsXG4gIERpc2NvcmRBcHBsaWNhdGlvbkludGVncmF0aW9uVHlwZSxcbiAgdHlwZSBEaXNjb3JkSW50ZXJhY3Rpb24sXG4gIHR5cGUgRGlzY29yZEludGVyYWN0aW9uQ2FsbGJhY2ssXG4gIHR5cGUgRGlzY29yZEludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZSxcbiAgdHlwZSBEaXNjb3JkSW50ZXJhY3Rpb25EYXRhT3B0aW9uLFxuICB0eXBlIERpc2NvcmRJbnRlcmFjdGlvbkRhdGFSZXNvbHZlZCxcbiAgdHlwZSBEaXNjb3JkSW50ZXJhY3Rpb25SZXNvdXJjZSxcbiAgSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzLFxuICBJbnRlcmFjdGlvblR5cGVzLFxuICBNZXNzYWdlRmxhZ3MsXG59IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJztcbmltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICdAZGlzY29yZGVuby91dGlscyc7XG5pbXBvcnQgdHlwZSB7IEJvdCB9IGZyb20gJy4uL2JvdC5qcyc7XG5pbXBvcnQgdHlwZSB7IEludGVyYWN0aW9uUmVzb2x2ZWREYXRhQ2hhbm5lbCB9IGZyb20gJy4uL2NvbW1hbmRPcHRpb25zUGFyc2VyLmpzJztcbmltcG9ydCB0eXBlIHtcbiAgQ29tcGxldGVEZXNpcmVkUHJvcGVydGllcyxcbiAgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcixcbiAgU2V0dXBEZXNpcmVkUHJvcHMsXG4gIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLFxuICBUcmFuc2Zvcm1Qcm9wZXJ0eSxcbn0gZnJvbSAnLi4vZGVzaXJlZFByb3BlcnRpZXMuanMnO1xuaW1wb3J0IHR5cGUge1xuICBJbnRlcmFjdGlvbixcbiAgSW50ZXJhY3Rpb25DYWxsYmFjayxcbiAgSW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlLFxuICBJbnRlcmFjdGlvbkRhdGFPcHRpb24sXG4gIEludGVyYWN0aW9uRGF0YVJlc29sdmVkLFxuICBJbnRlcmFjdGlvblJlc291cmNlLFxufSBmcm9tICcuL3R5cGVzLmpzJztcblxuLy8gQXNzdW1lIHdlIGhhdmUgYWxsIGRlc2lyZWQgcHJvcGVydGllcyBmb3IgdGhpcyBvciBlbHNlIHR5cGVzY3JpcHQgd2lsbCBnZXQgdmVyeSBjb25mdXNlZCBmb3IgdGhlIHJldHVybiB0eXBlcyBvZiB0aGVzZSBmdW5jdGlvbnMuXG4vLyBUaGlzIGlzIHVzZWQgYXMgYSBwcm90b3R5cGUsIHNvIHRoZSBhY3R1YWwgdHlwZSB3aXRoIHRoZSB1c2VyIGRlc2lyZWQgcHJvcGVydGllcyB3aWxsIGJlIHNldCBsYXRlci5cbmV4cG9ydCBjb25zdCBiYXNlSW50ZXJhY3Rpb246IFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uLCBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPHt9LCB0cnVlPiwgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvci5SZW1vdmVLZXk+ID0ge1xuICAvLyBUaGlzIGFsbG93cyB0eXBlc2NyaXB0IHRvIHN0aWxsIGNoZWNrIGZvciB0eXBlIGVycm9ycyBvbiBmdW5jdGlvbnMgYmVsb3dcbiAgLi4uKHVuZGVmaW5lZCBhcyB1bmtub3duIGFzIFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uLCBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPHt9LCB0cnVlPiwgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvci5SZW1vdmVLZXk+KSxcblxuICBhc3luYyByZXNwb25kKHJlc3BvbnNlLCBvcHRpb25zKSB7XG4gICAgbGV0IHR5cGUgPSBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuQ2hhbm5lbE1lc3NhZ2VXaXRoU291cmNlO1xuXG4gICAgLy8gSWYgdXNlciBwcm92aWRlcyBhIHN0cmluZywgY2hhbmdlIGl0IHRvIGEgcmVzcG9uc2Ugb2JqZWN0XG4gICAgaWYgKHR5cGVvZiByZXNwb25zZSA9PT0gJ3N0cmluZycpIHJlc3BvbnNlID0geyBjb250ZW50OiByZXNwb25zZSB9O1xuXG4gICAgLy8gSWYgdXNlciBwcm92aWRlcyBhIHR5cGUsIHVzZSBpdFxuICAgIGlmIChvcHRpb25zPy50eXBlKSB0eXBlID0gb3B0aW9ucy50eXBlO1xuICAgIC8vIE90aGVyd2lzZSwgZGV0ZXJtaW5lIGlmIGl0IHNob3VsZCBiZSBhbiBhdXRvY29tcGxldGUgb3IgYSBtb2RhbCByZXNwb25zZVxuICAgIGVsc2Uge1xuICAgICAgaWYgKHJlc3BvbnNlLnRpdGxlKSB0eXBlID0gSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzLk1vZGFsO1xuICAgICAgaWYgKHRoaXMudHlwZSA9PT0gSW50ZXJhY3Rpb25UeXBlcy5BcHBsaWNhdGlvbkNvbW1hbmRBdXRvY29tcGxldGUpIHR5cGUgPSBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlUmVzdWx0O1xuICAgIH1cblxuICAgIC8vIE1vZGFscyBjYW5ub3QgYmUgY2hhaW5lZFxuICAgIGlmICh0aGlzLnR5cGUgPT09IEludGVyYWN0aW9uVHlwZXMuTW9kYWxTdWJtaXQgJiYgdHlwZSA9PT0gSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzLk1vZGFsKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgcmVzcG9uZCB0byBhIG1vZGFsIGludGVyYWN0aW9uIHdpdGggYW5vdGhlciBtb2RhbC4nKTtcblxuICAgIGlmICh0eXBlID09PSBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuQ2hhbm5lbE1lc3NhZ2VXaXRoU291cmNlICYmIG9wdGlvbnM/LmlzUHJpdmF0ZSkge1xuICAgICAgcmVzcG9uc2UuZmxhZ3MgPz89IDA7XG4gICAgICByZXNwb25zZS5mbGFncyB8PSBNZXNzYWdlRmxhZ3MuRXBoZW1lcmFsO1xuICAgIH1cblxuICAgIC8vIFNpbmNlIHRoaXMgaGFzIGFscmVhZHkgYmVlbiBnaXZlbiBhIHJlc3BvbnNlLCBhbnkgZnVydGhlciByZXNwb25zZXMgbXVzdCBiZSBmb2xsb3d1cHMuXG4gICAgaWYgKHRoaXMuYWNrbm93bGVkZ2VkKSByZXR1cm4gYXdhaXQgdGhpcy5ib3QuaGVscGVycy5zZW5kRm9sbG93dXBNZXNzYWdlKHRoaXMudG9rZW4sIHJlc3BvbnNlKTtcblxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuYm90LmhlbHBlcnMuc2VuZEludGVyYWN0aW9uUmVzcG9uc2UoXG4gICAgICB0aGlzLmlkLFxuICAgICAgdGhpcy50b2tlbixcbiAgICAgIHsgdHlwZSwgZGF0YTogcmVzcG9uc2UgfSxcbiAgICAgIHsgd2l0aFJlc3BvbnNlOiBvcHRpb25zPy53aXRoUmVzcG9uc2UgfSxcbiAgICApO1xuICAgIHRoaXMuYWNrbm93bGVkZ2VkID0gdHJ1ZTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9LFxuICBhc3luYyBlZGl0KHJlc3BvbnNlLCBtZXNzYWdlSWQsIG9wdGlvbnMpIHtcbiAgICBpZiAodGhpcy50eXBlID09PSBJbnRlcmFjdGlvblR5cGVzLkFwcGxpY2F0aW9uQ29tbWFuZEF1dG9jb21wbGV0ZSkgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgZWRpdCBhbiBhdXRvY29tcGxldGUgaW50ZXJhY3Rpb24uJyk7XG5cbiAgICAvLyBJZiB1c2VyIHByb3ZpZGVzIGEgc3RyaW5nLCBjaGFuZ2UgaXQgdG8gYSByZXNwb25zZSBvYmplY3RcbiAgICBpZiAodHlwZW9mIHJlc3BvbnNlID09PSAnc3RyaW5nJykgcmVzcG9uc2UgPSB7IGNvbnRlbnQ6IHJlc3BvbnNlIH07XG5cbiAgICBpZiAobWVzc2FnZUlkKSB7XG4gICAgICByZXR1cm4gYXdhaXQgdGhpcy5ib3Q/LmhlbHBlcnMuZWRpdEZvbGxvd3VwTWVzc2FnZSh0aGlzLnRva2VuLCBtZXNzYWdlSWQsIHJlc3BvbnNlKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuYWNrbm93bGVkZ2VkKSB7XG4gICAgICBpZiAodGhpcy50eXBlICE9PSBJbnRlcmFjdGlvblR5cGVzLk1lc3NhZ2VDb21wb25lbnQgJiYgdGhpcy50eXBlICE9PSBJbnRlcmFjdGlvblR5cGVzLk1vZGFsU3VibWl0KVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJUaGlzIGludGVyYWN0aW9uIGhhcyBub3QgYmVlbiByZXNwb25kZWQgdG8geWV0IGFuZCB0aGlzIGlzbid0IGEgTWVzc2FnZUNvbXBvbmVudCBvciBNb2RhbFN1Ym1pdCBpbnRlcmFjdGlvbi5cIik7XG5cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuYm90LmhlbHBlcnMuc2VuZEludGVyYWN0aW9uUmVzcG9uc2UoXG4gICAgICAgIHRoaXMuaWQsXG4gICAgICAgIHRoaXMudG9rZW4sXG4gICAgICAgIHsgdHlwZTogSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzLlVwZGF0ZU1lc3NhZ2UsIGRhdGE6IHJlc3BvbnNlIH0sXG4gICAgICAgIG9wdGlvbnMsXG4gICAgICApO1xuICAgICAgdGhpcy5hY2tub3dsZWRnZWQgPSB0cnVlO1xuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICByZXR1cm4gYXdhaXQgdGhpcy5ib3QuaGVscGVycy5lZGl0T3JpZ2luYWxJbnRlcmFjdGlvblJlc3BvbnNlKHRoaXMudG9rZW4sIHJlc3BvbnNlKTtcbiAgfSxcbiAgYXN5bmMgZGVmZXJFZGl0KG9wdGlvbnMpIHtcbiAgICBpZiAodGhpcy50eXBlID09PSBJbnRlcmFjdGlvblR5cGVzLkFwcGxpY2F0aW9uQ29tbWFuZEF1dG9jb21wbGV0ZSkgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgZWRpdCBhbiBhdXRvY29tcGxldGUgaW50ZXJhY3Rpb24uJyk7XG4gICAgaWYgKHRoaXMuYWNrbm93bGVkZ2VkKSB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBkZWZlciBhbiBhbHJlYWR5IHJlc3BvbmRlZCBpbnRlcmFjdGlvbi4nKTtcblxuICAgIGlmICh0aGlzLnR5cGUgIT09IEludGVyYWN0aW9uVHlwZXMuTWVzc2FnZUNvbXBvbmVudCAmJiB0aGlzLnR5cGUgIT09IEludGVyYWN0aW9uVHlwZXMuTW9kYWxTdWJtaXQpXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJDYW5ub3QgZGVmZXIgdG8gdGhlbiBlZGl0IGFuIGludGVyYWN0aW9uIHRoYXQgaXNuJ3QgYSBNZXNzYWdlQ29tcG9uZW50IG9yIE1vZGFsU3VibWl0IGludGVyYWN0aW9uLlwiKTtcblxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuYm90LmhlbHBlcnMuc2VuZEludGVyYWN0aW9uUmVzcG9uc2UoXG4gICAgICB0aGlzLmlkLFxuICAgICAgdGhpcy50b2tlbixcbiAgICAgIHsgdHlwZTogSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzLkRlZmVycmVkVXBkYXRlTWVzc2FnZSB9LFxuICAgICAgb3B0aW9ucyxcbiAgICApO1xuICAgIHRoaXMuYWNrbm93bGVkZ2VkID0gdHJ1ZTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9LFxuICBhc3luYyBkZWZlcihpc1ByaXZhdGUsIG9wdGlvbnMpIHtcbiAgICBpZiAodGhpcy5hY2tub3dsZWRnZWQpIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGRlZmVyIGFuIGFscmVhZHkgcmVzcG9uZGVkIGludGVyYWN0aW9uLicpO1xuXG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5ib3QuaGVscGVycy5zZW5kSW50ZXJhY3Rpb25SZXNwb25zZShcbiAgICAgIHRoaXMuaWQsXG4gICAgICB0aGlzLnRva2VuLFxuICAgICAge1xuICAgICAgICB0eXBlOiBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuRGVmZXJyZWRDaGFubmVsTWVzc2FnZVdpdGhTb3VyY2UsXG4gICAgICAgIGRhdGE6IHtcbiAgICAgICAgICBmbGFnczogaXNQcml2YXRlID8gTWVzc2FnZUZsYWdzLkVwaGVtZXJhbCA6IHVuZGVmaW5lZCxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBvcHRpb25zLFxuICAgICk7XG4gICAgdGhpcy5hY2tub3dsZWRnZWQgPSB0cnVlO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH0sXG4gIGFzeW5jIGRlbGV0ZShtZXNzYWdlSWQpIHtcbiAgICBpZiAodGhpcy50eXBlID09PSBJbnRlcmFjdGlvblR5cGVzLkFwcGxpY2F0aW9uQ29tbWFuZEF1dG9jb21wbGV0ZSkgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgZGVsZXRlIGFuIGF1dG9jb21wbGV0ZSBpbnRlcmFjdGlvbicpO1xuXG4gICAgaWYgKG1lc3NhZ2VJZCkgcmV0dXJuIGF3YWl0IHRoaXMuYm90Py5oZWxwZXJzLmRlbGV0ZUZvbGxvd3VwTWVzc2FnZSh0aGlzLnRva2VuLCBtZXNzYWdlSWQpO1xuICAgIGVsc2UgcmV0dXJuIGF3YWl0IHRoaXMuYm90Py5oZWxwZXJzLmRlbGV0ZU9yaWdpbmFsSW50ZXJhY3Rpb25SZXNwb25zZSh0aGlzLnRva2VuKTtcbiAgfSxcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1JbnRlcmFjdGlvbihib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZEludGVyYWN0aW9uLCBleHRyYT86IHsgc2hhcmRJZD86IG51bWJlciB9KTogSW50ZXJhY3Rpb24ge1xuICBjb25zdCBndWlsZElkID0gcGF5bG9hZC5ndWlsZF9pZCA/IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuZ3VpbGRfaWQpIDogdW5kZWZpbmVkO1xuXG4gIGNvbnN0IGludGVyYWN0aW9uOiBTZXR1cERlc2lyZWRQcm9wczxJbnRlcmFjdGlvbiwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+ID0gT2JqZWN0LmNyZWF0ZShiYXNlSW50ZXJhY3Rpb24pO1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuaW50ZXJhY3Rpb247XG5cbiAgaW50ZXJhY3Rpb24uYm90ID0gYm90O1xuICBpbnRlcmFjdGlvbi5hY2tub3dsZWRnZWQgPSBmYWxzZTtcblxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgaW50ZXJhY3Rpb24uaWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmlkKTtcbiAgaWYgKHByb3BzLmFwcGxpY2F0aW9uSWQgJiYgcGF5bG9hZC5hcHBsaWNhdGlvbl9pZCkgaW50ZXJhY3Rpb24uYXBwbGljYXRpb25JZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuYXBwbGljYXRpb25faWQpO1xuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIGludGVyYWN0aW9uLnR5cGUgPSBwYXlsb2FkLnR5cGU7XG4gIGlmIChwcm9wcy50b2tlbiAmJiBwYXlsb2FkLnRva2VuKSBpbnRlcmFjdGlvbi50b2tlbiA9IHBheWxvYWQudG9rZW47XG4gIGlmIChwcm9wcy52ZXJzaW9uICYmIHBheWxvYWQudmVyc2lvbikgaW50ZXJhY3Rpb24udmVyc2lvbiA9IHBheWxvYWQudmVyc2lvbjtcbiAgaWYgKHByb3BzLmxvY2FsZSAmJiBwYXlsb2FkLmxvY2FsZSkgaW50ZXJhY3Rpb24ubG9jYWxlID0gcGF5bG9hZC5sb2NhbGU7XG4gIGlmIChwcm9wcy5ndWlsZExvY2FsZSAmJiBwYXlsb2FkLmd1aWxkX2xvY2FsZSkgaW50ZXJhY3Rpb24uZ3VpbGRMb2NhbGUgPSBwYXlsb2FkLmd1aWxkX2xvY2FsZTtcbiAgaWYgKHByb3BzLmd1aWxkICYmIHBheWxvYWQuZ3VpbGQpXG4gICAgLy8gQHRzLWV4cGVjdC1lcnJvciBwYXlsb2FkLmd1aWxkIGlzIGEgUGFydGlhbDxEaXNjb3JkR3VpbGQ+XG4gICAgaW50ZXJhY3Rpb24uZ3VpbGQgPSBib3QudHJhbnNmb3JtZXJzLmd1aWxkKGJvdCwgcGF5bG9hZC5ndWlsZCwgeyBzaGFyZElkOiBleHRyYT8uc2hhcmRJZCB9KTtcbiAgaWYgKHByb3BzLmd1aWxkSWQgJiYgZ3VpbGRJZCkgaW50ZXJhY3Rpb24uZ3VpbGRJZCA9IGd1aWxkSWQ7XG4gIGlmIChwcm9wcy51c2VyKSB7XG4gICAgaWYgKHBheWxvYWQubWVtYmVyPy51c2VyKSBpbnRlcmFjdGlvbi51c2VyID0gYm90LnRyYW5zZm9ybWVycy51c2VyKGJvdCwgcGF5bG9hZC5tZW1iZXI/LnVzZXIpO1xuICAgIGVsc2UgaWYgKHBheWxvYWQudXNlcikgaW50ZXJhY3Rpb24udXNlciA9IGJvdC50cmFuc2Zvcm1lcnMudXNlcihib3QsIHBheWxvYWQudXNlcik7XG4gIH1cbiAgaWYgKHByb3BzLmFwcFBlcm1pc3Npb25zICYmIHBheWxvYWQuYXBwX3Blcm1pc3Npb25zKSBpbnRlcmFjdGlvbi5hcHBQZXJtaXNzaW9ucyA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuYXBwX3Blcm1pc3Npb25zKTtcbiAgaWYgKHByb3BzLm1lc3NhZ2UgJiYgcGF5bG9hZC5tZXNzYWdlKSBpbnRlcmFjdGlvbi5tZXNzYWdlID0gYm90LnRyYW5zZm9ybWVycy5tZXNzYWdlKGJvdCwgcGF5bG9hZC5tZXNzYWdlLCB7IHNoYXJkSWQ6IGV4dHJhPy5zaGFyZElkIH0pO1xuICBpZiAocHJvcHMuY2hhbm5lbCAmJiBwYXlsb2FkLmNoYW5uZWwpXG4gICAgLy8gQHRzLWV4cGVjdC1lcnJvciBwYXlsb2FkLmNoYW5uZWwgaXMgYSBQYXJ0aWFsPD5cbiAgICBpbnRlcmFjdGlvbi5jaGFubmVsID0gYm90LnRyYW5zZm9ybWVycy5jaGFubmVsKGJvdCwgcGF5bG9hZC5jaGFubmVsLCB7IGd1aWxkSWQgfSk7XG4gIGlmIChwcm9wcy5jaGFubmVsSWQgJiYgcGF5bG9hZC5jaGFubmVsX2lkKSBpbnRlcmFjdGlvbi5jaGFubmVsSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmNoYW5uZWxfaWQpO1xuICBpZiAocHJvcHMubWVtYmVyICYmIGd1aWxkSWQgJiYgcGF5bG9hZC5tZW1iZXIpXG4gICAgaW50ZXJhY3Rpb24ubWVtYmVyID0gYm90LnRyYW5zZm9ybWVycy5tZW1iZXIoYm90LCBwYXlsb2FkLm1lbWJlciwge1xuICAgICAgZ3VpbGRJZCxcbiAgICAgIHVzZXJJZDogcGF5bG9hZC5tZW1iZXI/LnVzZXIuaWQgPz8gcGF5bG9hZC51c2VyPy5pZCxcbiAgICB9KTtcbiAgaWYgKHByb3BzLmVudGl0bGVtZW50cyAmJiBwYXlsb2FkLmVudGl0bGVtZW50cykgaW50ZXJhY3Rpb24uZW50aXRsZW1lbnRzID0gcGF5bG9hZC5lbnRpdGxlbWVudHMubWFwKChlKSA9PiBib3QudHJhbnNmb3JtZXJzLmVudGl0bGVtZW50KGJvdCwgZSkpO1xuICBpZiAocHJvcHMuYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVycyAmJiBwYXlsb2FkLmF1dGhvcml6aW5nX2ludGVncmF0aW9uX293bmVycykge1xuICAgIGludGVyYWN0aW9uLmF1dGhvcml6aW5nSW50ZWdyYXRpb25Pd25lcnMgPSB7fTtcblxuICAgIGlmIChwYXlsb2FkLmF1dGhvcml6aW5nX2ludGVncmF0aW9uX293bmVyc1snMCddKVxuICAgICAgaW50ZXJhY3Rpb24uYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVyc1tEaXNjb3JkQXBwbGljYXRpb25JbnRlZ3JhdGlvblR5cGUuR3VpbGRJbnN0YWxsXSA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKFxuICAgICAgICBwYXlsb2FkLmF1dGhvcml6aW5nX2ludGVncmF0aW9uX293bmVyc1snMCddLFxuICAgICAgKTtcbiAgICBpZiAocGF5bG9hZC5hdXRob3JpemluZ19pbnRlZ3JhdGlvbl9vd25lcnNbJzEnXSlcbiAgICAgIGludGVyYWN0aW9uLmF1dGhvcml6aW5nSW50ZWdyYXRpb25Pd25lcnNbRGlzY29yZEFwcGxpY2F0aW9uSW50ZWdyYXRpb25UeXBlLlVzZXJJbnN0YWxsXSA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKFxuICAgICAgICBwYXlsb2FkLmF1dGhvcml6aW5nX2ludGVncmF0aW9uX293bmVyc1snMSddLFxuICAgICAgKTtcbiAgfVxuICBpZiAocHJvcHMuY29udGV4dCAmJiBwYXlsb2FkLmNvbnRleHQpIGludGVyYWN0aW9uLmNvbnRleHQgPSBwYXlsb2FkLmNvbnRleHQ7XG4gIGlmIChwcm9wcy5hdHRhY2htZW50U2l6ZUxpbWl0ICYmIHBheWxvYWQuYXR0YWNobWVudF9zaXplX2xpbWl0KSBpbnRlcmFjdGlvbi5hdHRhY2htZW50U2l6ZUxpbWl0ID0gcGF5bG9hZC5hdHRhY2htZW50X3NpemVfbGltaXQ7XG4gIGlmIChwcm9wcy5kYXRhICYmIHBheWxvYWQuZGF0YSkge1xuICAgIGludGVyYWN0aW9uLmRhdGEgPSB7XG4gICAgICB0eXBlOiBwYXlsb2FkLmRhdGEudHlwZSxcbiAgICAgIGNvbXBvbmVudFR5cGU6IHBheWxvYWQuZGF0YS5jb21wb25lbnRfdHlwZSxcbiAgICAgIGN1c3RvbUlkOiBwYXlsb2FkLmRhdGEuY3VzdG9tX2lkLFxuICAgICAgY29tcG9uZW50czogcGF5bG9hZC5kYXRhLmNvbXBvbmVudHM/Lm1hcCgoY29tcG9uZW50KSA9PiBib3QudHJhbnNmb3JtZXJzLmNvbXBvbmVudChib3QsIGNvbXBvbmVudCkpLFxuICAgICAgdmFsdWVzOiBwYXlsb2FkLmRhdGEudmFsdWVzLFxuICAgICAgaWQ6IHBheWxvYWQuZGF0YS5pZCA/IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuZGF0YS5pZCkgOiB1bmRlZmluZWQsXG4gICAgICBuYW1lOiBwYXlsb2FkLmRhdGEubmFtZSxcbiAgICAgIHJlc29sdmVkOiBwYXlsb2FkLmRhdGEucmVzb2x2ZWRcbiAgICAgICAgPyBib3QudHJhbnNmb3JtZXJzLmludGVyYWN0aW9uRGF0YVJlc29sdmVkKGJvdCwgcGF5bG9hZC5kYXRhLnJlc29sdmVkLCB7IHNoYXJkSWQ6IGV4dHJhPy5zaGFyZElkLCBndWlsZElkIH0pXG4gICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgb3B0aW9uczogcGF5bG9hZC5kYXRhLm9wdGlvbnM/Lm1hcCgob3B0KSA9PiBib3QudHJhbnNmb3JtZXJzLmludGVyYWN0aW9uRGF0YU9wdGlvbnMoYm90LCBvcHQpKSxcbiAgICAgIHRhcmdldElkOiBwYXlsb2FkLmRhdGEudGFyZ2V0X2lkID8gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5kYXRhLnRhcmdldF9pZCkgOiB1bmRlZmluZWQsXG4gICAgfTtcbiAgfVxuXG4gIC8vIFR5cGVzY3JpcHQgaGFzIGFuIGhhcmQgdGltZSB3aXRoIGludGVyYWN0aW9uLmJvdCwgc28gd2UgbmVlZCB0byB0ZWxsIGhpbSBmb3Igc3VyZSB0aGlzIGludGVyYWN0aW9uIGlzIHRoZSBvZiB0aGUgY29ycmVjdCB0eXBlXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLmludGVyYWN0aW9uKGJvdCwgcGF5bG9hZCwgaW50ZXJhY3Rpb24gYXMgdW5rbm93biBhcyB0eXBlb2YgYm90LnRyYW5zZm9ybWVycy4kaW5mZXJyZWRUeXBlcy5pbnRlcmFjdGlvbiwgZXh0cmEpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtSW50ZXJhY3Rpb25EYXRhT3B0aW9uKGJvdDogQm90LCBvcHRpb246IERpc2NvcmRJbnRlcmFjdGlvbkRhdGFPcHRpb24pOiBJbnRlcmFjdGlvbkRhdGFPcHRpb24ge1xuICBjb25zdCBvcHQgPSB7XG4gICAgbmFtZTogb3B0aW9uLm5hbWUsXG4gICAgdHlwZTogb3B0aW9uLnR5cGUsXG4gICAgdmFsdWU6IG9wdGlvbi52YWx1ZSxcbiAgICBvcHRpb25zOiBvcHRpb24ub3B0aW9ucyxcbiAgICBmb2N1c2VkOiBvcHRpb24uZm9jdXNlZCxcbiAgfSBhcyBJbnRlcmFjdGlvbkRhdGFPcHRpb247XG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuaW50ZXJhY3Rpb25EYXRhT3B0aW9ucyhib3QsIG9wdGlvbiwgb3B0KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUludGVyYWN0aW9uRGF0YVJlc29sdmVkKFxuICBib3Q6IEJvdCxcbiAgcGF5bG9hZDogRGlzY29yZEludGVyYWN0aW9uRGF0YVJlc29sdmVkLFxuICBleHRyYT86IHsgc2hhcmRJZD86IG51bWJlcjsgZ3VpbGRJZD86IEJpZ1N0cmluZyB9LFxuKTogVHJhbnNmb3JtUHJvcGVydHk8SW50ZXJhY3Rpb25EYXRhUmVzb2x2ZWQsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLlJlbW92ZUtleT4ge1xuICBjb25zdCB0cmFuc2Zvcm1lZDogVHJhbnNmb3JtUHJvcGVydHk8SW50ZXJhY3Rpb25EYXRhUmVzb2x2ZWQsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLlJlbW92ZUtleT4gPSB7fTtcblxuICBpZiAocGF5bG9hZC5tZXNzYWdlcykge1xuICAgIHRyYW5zZm9ybWVkLm1lc3NhZ2VzID0gbmV3IENvbGxlY3Rpb24oXG4gICAgICBPYmplY3QuZW50cmllcyhwYXlsb2FkLm1lc3NhZ2VzKS5tYXAoKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIFRPRE86IERlYWwgd2l0aCBwYXJ0aWFsc1xuICAgICAgICBjb25zdCBtZXNzYWdlID0gYm90LnRyYW5zZm9ybWVycy5tZXNzYWdlKGJvdCwgdmFsdWUsIHsgc2hhcmRJZDogZXh0cmE/LnNoYXJkSWQgfSk7XG4gICAgICAgIGNvbnN0IGlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2Uoa2V5KTtcblxuICAgICAgICByZXR1cm4gW2lkLCBtZXNzYWdlXTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBpZiAocGF5bG9hZC51c2Vycykge1xuICAgIHRyYW5zZm9ybWVkLnVzZXJzID0gbmV3IENvbGxlY3Rpb24oXG4gICAgICBPYmplY3QuZW50cmllcyhwYXlsb2FkLnVzZXJzKS5tYXAoKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICBjb25zdCB1c2VyID0gYm90LnRyYW5zZm9ybWVycy51c2VyKGJvdCwgdmFsdWUpO1xuICAgICAgICBjb25zdCBpZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKGtleSk7XG5cbiAgICAgICAgcmV0dXJuIFtpZCwgdXNlcl07XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgaWYgKGV4dHJhPy5ndWlsZElkICYmIHBheWxvYWQubWVtYmVycykge1xuICAgIHRyYW5zZm9ybWVkLm1lbWJlcnMgPSBuZXcgQ29sbGVjdGlvbihcbiAgICAgIE9iamVjdC5lbnRyaWVzKHBheWxvYWQubWVtYmVycykubWFwKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBUT0RPOiBEZWFsIHdpdGggcGFydGlhbHMsIHZhbHVlIGlzIG1pc3NpbmcgMiB2YWx1ZXMgYnV0IHRoZSB0cmFuc2Zvcm1lciBjYW4gaGFuZGxlIGl0LCBkZXNwaXRlIHdoYXQgdGhlIHR5cGVzIHNheXNcbiAgICAgICAgY29uc3QgbWVtYmVyID0gYm90LnRyYW5zZm9ybWVycy5tZW1iZXIoYm90LCB2YWx1ZSwge1xuICAgICAgICAgIGd1aWxkSWQ6IGV4dHJhLmd1aWxkSWQsXG4gICAgICAgICAgdXNlcklkOiBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShrZXkpLFxuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgaWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShrZXkpO1xuXG4gICAgICAgIHJldHVybiBbaWQsIG1lbWJlcl07XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgaWYgKGV4dHJhPy5ndWlsZElkICYmIHBheWxvYWQucm9sZXMpIHtcbiAgICB0cmFuc2Zvcm1lZC5yb2xlcyA9IG5ldyBDb2xsZWN0aW9uKFxuICAgICAgT2JqZWN0LmVudHJpZXMocGF5bG9hZC5yb2xlcykubWFwKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgY29uc3Qgcm9sZSA9IGJvdC50cmFuc2Zvcm1lcnMucm9sZShib3QsIHZhbHVlLCB7IGd1aWxkSWQ6IGV4dHJhLmd1aWxkSWQgfSk7XG4gICAgICAgIGNvbnN0IGlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2Uoa2V5KTtcblxuICAgICAgICByZXR1cm4gW2lkLCByb2xlXTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBpZiAocGF5bG9hZC5jaGFubmVscykge1xuICAgIHRyYW5zZm9ybWVkLmNoYW5uZWxzID0gbmV3IENvbGxlY3Rpb24oXG4gICAgICBPYmplY3QuZW50cmllcyhwYXlsb2FkLmNoYW5uZWxzKS5tYXAoKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICBjb25zdCBjaGFubmVsID0gYm90LnRyYW5zZm9ybWVycy5jaGFubmVsKGJvdCwgdmFsdWUpIGFzIEludGVyYWN0aW9uUmVzb2x2ZWREYXRhQ2hhbm5lbDxcbiAgICAgICAgICBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcyxcbiAgICAgICAgICBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLlJlbW92ZUtleVxuICAgICAgICA+O1xuICAgICAgICBjb25zdCBpZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKGtleSk7XG5cbiAgICAgICAgcmV0dXJuIFtpZCwgY2hhbm5lbF07XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgaWYgKHBheWxvYWQuYXR0YWNobWVudHMpIHtcbiAgICB0cmFuc2Zvcm1lZC5hdHRhY2htZW50cyA9IG5ldyBDb2xsZWN0aW9uKFxuICAgICAgT2JqZWN0LmVudHJpZXMocGF5bG9hZC5hdHRhY2htZW50cykubWFwKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgY29uc3QgaWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShrZXkpO1xuICAgICAgICBjb25zdCBhdHRhY2htZW50ID0gYm90LnRyYW5zZm9ybWVycy5hdHRhY2htZW50KGJvdCwgdmFsdWUpO1xuXG4gICAgICAgIHJldHVybiBbaWQsIGF0dGFjaG1lbnRdO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLmludGVyYWN0aW9uRGF0YVJlc29sdmVkKGJvdCwgcGF5bG9hZCwgdHJhbnNmb3JtZWQsIHtcbiAgICBzaGFyZElkOiBleHRyYT8uc2hhcmRJZCxcbiAgICBndWlsZElkOiBleHRyYT8uZ3VpbGRJZCA/IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKGV4dHJhLmd1aWxkSWQpIDogdW5kZWZpbmVkLFxuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZShcbiAgYm90OiBCb3QsXG4gIHBheWxvYWQ6IERpc2NvcmRJbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2UsXG4gIGV4dHJhPzogeyBzaGFyZElkPzogbnVtYmVyIH0sXG4pOiBJbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2Uge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuaW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlO1xuICBjb25zdCByZXNwb25zZSA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZSwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+O1xuXG4gIGlmIChwcm9wcy5pbnRlcmFjdGlvbiAmJiBwYXlsb2FkLmludGVyYWN0aW9uKSByZXNwb25zZS5pbnRlcmFjdGlvbiA9IGJvdC50cmFuc2Zvcm1lcnMuaW50ZXJhY3Rpb25DYWxsYmFjayhib3QsIHBheWxvYWQuaW50ZXJhY3Rpb24pO1xuICBpZiAocHJvcHMucmVzb3VyY2UgJiYgcGF5bG9hZC5yZXNvdXJjZSlcbiAgICByZXNwb25zZS5yZXNvdXJjZSA9IGJvdC50cmFuc2Zvcm1lcnMuaW50ZXJhY3Rpb25SZXNvdXJjZShib3QsIHBheWxvYWQucmVzb3VyY2UsIHsgc2hhcmRJZDogZXh0cmE/LnNoYXJkSWQgfSk7XG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuaW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlKGJvdCwgcGF5bG9hZCwgcmVzcG9uc2UsIGV4dHJhKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUludGVyYWN0aW9uQ2FsbGJhY2soYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRJbnRlcmFjdGlvbkNhbGxiYWNrKTogSW50ZXJhY3Rpb25DYWxsYmFjayB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5pbnRlcmFjdGlvbkNhbGxiYWNrO1xuICBjb25zdCBjYWxsYmFjayA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uQ2FsbGJhY2ssIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPjtcblxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgY2FsbGJhY2suaWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmlkKTtcbiAgaWYgKHByb3BzLnR5cGUgJiYgcGF5bG9hZC50eXBlKSBjYWxsYmFjay50eXBlID0gcGF5bG9hZC50eXBlO1xuICBpZiAocHJvcHMuYWN0aXZpdHlJbnN0YW5jZUlkICYmIHBheWxvYWQuYWN0aXZpdHlfaW5zdGFuY2VfaWQpIGNhbGxiYWNrLmFjdGl2aXR5SW5zdGFuY2VJZCA9IHBheWxvYWQuYWN0aXZpdHlfaW5zdGFuY2VfaWQ7XG4gIGlmIChwcm9wcy5yZXNwb25zZU1lc3NhZ2VJZCAmJiBwYXlsb2FkLnJlc3BvbnNlX21lc3NhZ2VfaWQpIGNhbGxiYWNrLnJlc3BvbnNlTWVzc2FnZUlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5yZXNwb25zZV9tZXNzYWdlX2lkKTtcbiAgaWYgKHByb3BzLnJlc3BvbnNlTWVzc2FnZUVwaGVtZXJhbCAmJiBwYXlsb2FkLnJlc3BvbnNlX21lc3NhZ2VfZXBoZW1lcmFsKSBjYWxsYmFjay5yZXNwb25zZU1lc3NhZ2VFcGhlbWVyYWwgPSBwYXlsb2FkLnJlc3BvbnNlX21lc3NhZ2VfZXBoZW1lcmFsO1xuICBpZiAocHJvcHMucmVzcG9uc2VNZXNzYWdlTG9hZGluZyAmJiBwYXlsb2FkLnJlc3BvbnNlX21lc3NhZ2VfbG9hZGluZykgY2FsbGJhY2sucmVzcG9uc2VNZXNzYWdlTG9hZGluZyA9IHBheWxvYWQucmVzcG9uc2VfbWVzc2FnZV9sb2FkaW5nO1xuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLmludGVyYWN0aW9uQ2FsbGJhY2soYm90LCBwYXlsb2FkLCBjYWxsYmFjayk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1JbnRlcmFjdGlvblJlc291cmNlKGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkSW50ZXJhY3Rpb25SZXNvdXJjZSwgZXh0cmE/OiB7IHNoYXJkSWQ/OiBudW1iZXIgfSk6IEludGVyYWN0aW9uUmVzb3VyY2Uge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuaW50ZXJhY3Rpb25SZXNvdXJjZTtcbiAgY29uc3QgcmVzb3VyY2UgPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxJbnRlcmFjdGlvblJlc291cmNlLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj47XG5cbiAgaWYgKHByb3BzLnR5cGUgJiYgcGF5bG9hZC50eXBlKSByZXNvdXJjZS50eXBlID0gcGF5bG9hZC50eXBlO1xuICBpZiAocHJvcHMuYWN0aXZpdHlJbnN0YW5jZSAmJiBwYXlsb2FkLmFjdGl2aXR5X2luc3RhbmNlKSByZXNvdXJjZS5hY3Rpdml0eUluc3RhbmNlID0gcGF5bG9hZC5hY3Rpdml0eV9pbnN0YW5jZTtcbiAgaWYgKHByb3BzLm1lc3NhZ2UgJiYgcGF5bG9hZC5tZXNzYWdlKSByZXNvdXJjZS5tZXNzYWdlID0gYm90LnRyYW5zZm9ybWVycy5tZXNzYWdlKGJvdCwgcGF5bG9hZC5tZXNzYWdlLCB7IHNoYXJkSWQ6IGV4dHJhPy5zaGFyZElkIH0pO1xuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLmludGVyYWN0aW9uUmVzb3VyY2UoYm90LCBwYXlsb2FkLCByZXNvdXJjZSwgZXh0cmEpO1xufVxuIl0sIm5hbWVzIjpbIkRpc2NvcmRBcHBsaWNhdGlvbkludGVncmF0aW9uVHlwZSIsIkludGVyYWN0aW9uUmVzcG9uc2VUeXBlcyIsIkludGVyYWN0aW9uVHlwZXMiLCJNZXNzYWdlRmxhZ3MiLCJDb2xsZWN0aW9uIiwiYmFzZUludGVyYWN0aW9uIiwidW5kZWZpbmVkIiwicmVzcG9uZCIsInJlc3BvbnNlIiwib3B0aW9ucyIsInR5cGUiLCJDaGFubmVsTWVzc2FnZVdpdGhTb3VyY2UiLCJjb250ZW50IiwidGl0bGUiLCJNb2RhbCIsIkFwcGxpY2F0aW9uQ29tbWFuZEF1dG9jb21wbGV0ZSIsIkFwcGxpY2F0aW9uQ29tbWFuZEF1dG9jb21wbGV0ZVJlc3VsdCIsIk1vZGFsU3VibWl0IiwiRXJyb3IiLCJpc1ByaXZhdGUiLCJmbGFncyIsIkVwaGVtZXJhbCIsImFja25vd2xlZGdlZCIsImJvdCIsImhlbHBlcnMiLCJzZW5kRm9sbG93dXBNZXNzYWdlIiwidG9rZW4iLCJyZXN1bHQiLCJzZW5kSW50ZXJhY3Rpb25SZXNwb25zZSIsImlkIiwiZGF0YSIsIndpdGhSZXNwb25zZSIsImVkaXQiLCJtZXNzYWdlSWQiLCJlZGl0Rm9sbG93dXBNZXNzYWdlIiwiTWVzc2FnZUNvbXBvbmVudCIsIlVwZGF0ZU1lc3NhZ2UiLCJlZGl0T3JpZ2luYWxJbnRlcmFjdGlvblJlc3BvbnNlIiwiZGVmZXJFZGl0IiwiRGVmZXJyZWRVcGRhdGVNZXNzYWdlIiwiZGVmZXIiLCJEZWZlcnJlZENoYW5uZWxNZXNzYWdlV2l0aFNvdXJjZSIsImRlbGV0ZSIsImRlbGV0ZUZvbGxvd3VwTWVzc2FnZSIsImRlbGV0ZU9yaWdpbmFsSW50ZXJhY3Rpb25SZXNwb25zZSIsInRyYW5zZm9ybUludGVyYWN0aW9uIiwicGF5bG9hZCIsImV4dHJhIiwiZ3VpbGRJZCIsImd1aWxkX2lkIiwidHJhbnNmb3JtZXJzIiwic25vd2ZsYWtlIiwiaW50ZXJhY3Rpb24iLCJPYmplY3QiLCJjcmVhdGUiLCJwcm9wcyIsImRlc2lyZWRQcm9wZXJ0aWVzIiwiYXBwbGljYXRpb25JZCIsImFwcGxpY2F0aW9uX2lkIiwidmVyc2lvbiIsImxvY2FsZSIsImd1aWxkTG9jYWxlIiwiZ3VpbGRfbG9jYWxlIiwiZ3VpbGQiLCJzaGFyZElkIiwidXNlciIsIm1lbWJlciIsImFwcFBlcm1pc3Npb25zIiwiYXBwX3Blcm1pc3Npb25zIiwibWVzc2FnZSIsImNoYW5uZWwiLCJjaGFubmVsSWQiLCJjaGFubmVsX2lkIiwidXNlcklkIiwiZW50aXRsZW1lbnRzIiwibWFwIiwiZSIsImVudGl0bGVtZW50IiwiYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVycyIsImF1dGhvcml6aW5nX2ludGVncmF0aW9uX293bmVycyIsIkd1aWxkSW5zdGFsbCIsIlVzZXJJbnN0YWxsIiwiY29udGV4dCIsImF0dGFjaG1lbnRTaXplTGltaXQiLCJhdHRhY2htZW50X3NpemVfbGltaXQiLCJjb21wb25lbnRUeXBlIiwiY29tcG9uZW50X3R5cGUiLCJjdXN0b21JZCIsImN1c3RvbV9pZCIsImNvbXBvbmVudHMiLCJjb21wb25lbnQiLCJ2YWx1ZXMiLCJuYW1lIiwicmVzb2x2ZWQiLCJpbnRlcmFjdGlvbkRhdGFSZXNvbHZlZCIsIm9wdCIsImludGVyYWN0aW9uRGF0YU9wdGlvbnMiLCJ0YXJnZXRJZCIsInRhcmdldF9pZCIsImN1c3RvbWl6ZXJzIiwidHJhbnNmb3JtSW50ZXJhY3Rpb25EYXRhT3B0aW9uIiwib3B0aW9uIiwidmFsdWUiLCJmb2N1c2VkIiwidHJhbnNmb3JtSW50ZXJhY3Rpb25EYXRhUmVzb2x2ZWQiLCJ0cmFuc2Zvcm1lZCIsIm1lc3NhZ2VzIiwiZW50cmllcyIsImtleSIsInVzZXJzIiwibWVtYmVycyIsInJvbGVzIiwicm9sZSIsImNoYW5uZWxzIiwiYXR0YWNobWVudHMiLCJhdHRhY2htZW50IiwidHJhbnNmb3JtSW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlIiwiaW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlIiwiaW50ZXJhY3Rpb25DYWxsYmFjayIsInJlc291cmNlIiwiaW50ZXJhY3Rpb25SZXNvdXJjZSIsInRyYW5zZm9ybUludGVyYWN0aW9uQ2FsbGJhY2siLCJjYWxsYmFjayIsImFjdGl2aXR5SW5zdGFuY2VJZCIsImFjdGl2aXR5X2luc3RhbmNlX2lkIiwicmVzcG9uc2VNZXNzYWdlSWQiLCJyZXNwb25zZV9tZXNzYWdlX2lkIiwicmVzcG9uc2VNZXNzYWdlRXBoZW1lcmFsIiwicmVzcG9uc2VfbWVzc2FnZV9lcGhlbWVyYWwiLCJyZXNwb25zZU1lc3NhZ2VMb2FkaW5nIiwicmVzcG9uc2VfbWVzc2FnZV9sb2FkaW5nIiwidHJhbnNmb3JtSW50ZXJhY3Rpb25SZXNvdXJjZSIsImFjdGl2aXR5SW5zdGFuY2UiLCJhY3Rpdml0eV9pbnN0YW5jZSJdLCJtYXBwaW5ncyI6IkFBQUEsU0FFRUEsaUNBQWlDLEVBT2pDQyx3QkFBd0IsRUFDeEJDLGdCQUFnQixFQUNoQkMsWUFBWSxRQUNQLG9CQUFvQjtBQUMzQixTQUFTQyxVQUFVLFFBQVEsb0JBQW9CO0FBbUIvQyxvSUFBb0k7QUFDcEksc0dBQXNHO0FBQ3RHLE9BQU8sTUFBTUMsa0JBQTRIO0lBQ3ZJLDJFQUEyRTtJQUMzRSxHQUFJQyxTQUFTO0lBRWIsTUFBTUMsU0FBUUMsUUFBUSxFQUFFQyxPQUFPO1FBQzdCLElBQUlDLE9BQU9ULHlCQUF5QlUsd0JBQXdCO1FBRTVELDREQUE0RDtRQUM1RCxJQUFJLE9BQU9ILGFBQWEsVUFBVUEsV0FBVztZQUFFSSxTQUFTSjtRQUFTO1FBRWpFLGtDQUFrQztRQUNsQyxJQUFJQyxTQUFTQyxNQUFNQSxPQUFPRCxRQUFRQyxJQUFJ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
271
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvaW50ZXJhY3Rpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBCaWdTdHJpbmcsXG4gIERpc2NvcmRBcHBsaWNhdGlvbkludGVncmF0aW9uVHlwZSxcbiAgdHlwZSBEaXNjb3JkSW50ZXJhY3Rpb24sXG4gIHR5cGUgRGlzY29yZEludGVyYWN0aW9uQ2FsbGJhY2ssXG4gIHR5cGUgRGlzY29yZEludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZSxcbiAgdHlwZSBEaXNjb3JkSW50ZXJhY3Rpb25EYXRhT3B0aW9uLFxuICB0eXBlIERpc2NvcmRJbnRlcmFjdGlvbkRhdGFSZXNvbHZlZCxcbiAgdHlwZSBEaXNjb3JkSW50ZXJhY3Rpb25SZXNvdXJjZSxcbiAgSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzLFxuICBJbnRlcmFjdGlvblR5cGVzLFxuICBNZXNzYWdlRmxhZ3MsXG59IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJztcbmltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICdAZGlzY29yZGVuby91dGlscyc7XG5pbXBvcnQgdHlwZSB7IEJvdCB9IGZyb20gJy4uL2JvdC5qcyc7XG5pbXBvcnQgdHlwZSB7IEludGVyYWN0aW9uUmVzb2x2ZWREYXRhQ2hhbm5lbCB9IGZyb20gJy4uL2NvbW1hbmRPcHRpb25zUGFyc2VyLmpzJztcbmltcG9ydCB0eXBlIHtcbiAgQ29tcGxldGVEZXNpcmVkUHJvcGVydGllcyxcbiAgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcixcbiAgU2V0dXBEZXNpcmVkUHJvcHMsXG4gIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLFxuICBUcmFuc2Zvcm1Qcm9wZXJ0eSxcbn0gZnJvbSAnLi4vZGVzaXJlZFByb3BlcnRpZXMuanMnO1xuaW1wb3J0IHR5cGUge1xuICBJbnRlcmFjdGlvbixcbiAgSW50ZXJhY3Rpb25DYWxsYmFjayxcbiAgSW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlLFxuICBJbnRlcmFjdGlvbkRhdGFPcHRpb24sXG4gIEludGVyYWN0aW9uRGF0YVJlc29sdmVkLFxuICBJbnRlcmFjdGlvblJlc291cmNlLFxufSBmcm9tICcuL3R5cGVzLmpzJztcblxuLy8gQXNzdW1lIHdlIGhhdmUgYWxsIGRlc2lyZWQgcHJvcGVydGllcyBmb3IgdGhpcyBvciBlbHNlIHR5cGVzY3JpcHQgd2lsbCBnZXQgdmVyeSBjb25mdXNlZCBmb3IgdGhlIHJldHVybiB0eXBlcyBvZiB0aGVzZSBmdW5jdGlvbnMuXG4vLyBUaGlzIGlzIHVzZWQgYXMgYSBwcm90b3R5cGUsIHNvIHRoZSBhY3R1YWwgdHlwZSB3aXRoIHRoZSB1c2VyIGRlc2lyZWQgcHJvcGVydGllcyB3aWxsIGJlIHNldCBsYXRlci5cbmV4cG9ydCBjb25zdCBiYXNlSW50ZXJhY3Rpb246IFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uLCBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPHt9LCB0cnVlPiwgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvci5SZW1vdmVLZXk+ID0ge1xuICAvLyBUaGlzIGFsbG93cyB0eXBlc2NyaXB0IHRvIHN0aWxsIGNoZWNrIGZvciB0eXBlIGVycm9ycyBvbiBmdW5jdGlvbnMgYmVsb3dcbiAgLi4uKHVuZGVmaW5lZCBhcyB1bmtub3duIGFzIFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uLCBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPHt9LCB0cnVlPiwgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvci5SZW1vdmVLZXk+KSxcblxuICBhc3luYyByZXNwb25kKHJlc3BvbnNlLCBvcHRpb25zKSB7XG4gICAgbGV0IHR5cGUgPSBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuQ2hhbm5lbE1lc3NhZ2VXaXRoU291cmNlO1xuXG4gICAgLy8gSWYgdXNlciBwcm92aWRlcyBhIHN0cmluZywgY2hhbmdlIGl0IHRvIGEgcmVzcG9uc2Ugb2JqZWN0XG4gICAgaWYgKHR5cGVvZiByZXNwb25zZSA9PT0gJ3N0cmluZycpIHJlc3BvbnNlID0geyBjb250ZW50OiByZXNwb25zZSB9O1xuXG4gICAgLy8gSWYgdXNlciBwcm92aWRlcyBhIHR5cGUsIHVzZSBpdFxuICAgIGlmIChvcHRpb25zPy50eXBlKSB0eXBlID0gb3B0aW9ucy50eXBlO1xuICAgIC8vIE90aGVyd2lzZSwgZGV0ZXJtaW5lIGlmIGl0IHNob3VsZCBiZSBhbiBhdXRvY29tcGxldGUgb3IgYSBtb2RhbCByZXNwb25zZVxuICAgIGVsc2Uge1xuICAgICAgaWYgKHJlc3BvbnNlLnRpdGxlKSB0eXBlID0gSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzLk1vZGFsO1xuICAgICAgaWYgKHRoaXMudHlwZSA9PT0gSW50ZXJhY3Rpb25UeXBlcy5BcHBsaWNhdGlvbkNvbW1hbmRBdXRvY29tcGxldGUpIHR5cGUgPSBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlUmVzdWx0O1xuICAgIH1cblxuICAgIC8vIE1vZGFscyBjYW5ub3QgYmUgY2hhaW5lZFxuICAgIGlmICh0aGlzLnR5cGUgPT09IEludGVyYWN0aW9uVHlwZXMuTW9kYWxTdWJtaXQgJiYgdHlwZSA9PT0gSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzLk1vZGFsKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgcmVzcG9uZCB0byBhIG1vZGFsIGludGVyYWN0aW9uIHdpdGggYW5vdGhlciBtb2RhbC4nKTtcblxuICAgIGlmICh0eXBlID09PSBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuQ2hhbm5lbE1lc3NhZ2VXaXRoU291cmNlICYmIG9wdGlvbnM/LmlzUHJpdmF0ZSkge1xuICAgICAgcmVzcG9uc2UuZmxhZ3MgPz89IDA7XG4gICAgICByZXNwb25zZS5mbGFncyB8PSBNZXNzYWdlRmxhZ3MuRXBoZW1lcmFsO1xuICAgIH1cblxuICAgIC8vIFNpbmNlIHRoaXMgaGFzIGFscmVhZHkgYmVlbiBnaXZlbiBhIHJlc3BvbnNlLCBhbnkgZnVydGhlciByZXNwb25zZXMgbXVzdCBiZSBmb2xsb3d1cHMuXG4gICAgaWYgKHRoaXMuYWNrbm93bGVkZ2VkKSByZXR1cm4gYXdhaXQgdGhpcy5zZW5kRm9sbG93dXBNZXNzYWdlKHJlc3BvbnNlKTtcblxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuYm90LmhlbHBlcnMuc2VuZEludGVyYWN0aW9uUmVzcG9uc2UoXG4gICAgICB0aGlzLmlkLFxuICAgICAgdGhpcy50b2tlbixcbiAgICAgIHsgdHlwZSwgZGF0YTogcmVzcG9uc2UgfSxcbiAgICAgIHsgd2l0aFJlc3BvbnNlOiBvcHRpb25zPy53aXRoUmVzcG9uc2UgfSxcbiAgICApO1xuICAgIHRoaXMuYWNrbm93bGVkZ2VkID0gdHJ1ZTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9LFxuICBhc3luYyBzZW5kRm9sbG93dXBNZXNzYWdlKHJlc3BvbnNlKSB7XG4gICAgLy8gSWYgdXNlciBwcm92aWRlcyBhIHN0cmluZywgY2hhbmdlIGl0IHRvIGEgcmVzcG9uc2Ugb2JqZWN0XG4gICAgaWYgKHR5cGVvZiByZXNwb25zZSA9PT0gJ3N0cmluZycpIHJlc3BvbnNlID0geyBjb250ZW50OiByZXNwb25zZSB9O1xuXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYm90LmhlbHBlcnMuc2VuZEZvbGxvd3VwTWVzc2FnZSh0aGlzLnRva2VuLCByZXNwb25zZSk7XG4gIH0sXG4gIGFzeW5jIGVkaXQocmVzcG9uc2UsIG1lc3NhZ2VJZCwgb3B0aW9ucykge1xuICAgIGlmICh0aGlzLnR5cGUgPT09IEludGVyYWN0aW9uVHlwZXMuQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlKSB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBlZGl0IGFuIGF1dG9jb21wbGV0ZSBpbnRlcmFjdGlvbi4nKTtcblxuICAgIC8vIElmIHVzZXIgcHJvdmlkZXMgYSBzdHJpbmcsIGNoYW5nZSBpdCB0byBhIHJlc3BvbnNlIG9iamVjdFxuICAgIGlmICh0eXBlb2YgcmVzcG9uc2UgPT09ICdzdHJpbmcnKSByZXNwb25zZSA9IHsgY29udGVudDogcmVzcG9uc2UgfTtcblxuICAgIGlmIChtZXNzYWdlSWQpIHtcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLmJvdD8uaGVscGVycy5lZGl0Rm9sbG93dXBNZXNzYWdlKHRoaXMudG9rZW4sIG1lc3NhZ2VJZCwgcmVzcG9uc2UpO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5hY2tub3dsZWRnZWQpIHtcbiAgICAgIGlmICh0aGlzLnR5cGUgIT09IEludGVyYWN0aW9uVHlwZXMuTWVzc2FnZUNvbXBvbmVudCAmJiB0aGlzLnR5cGUgIT09IEludGVyYWN0aW9uVHlwZXMuTW9kYWxTdWJtaXQpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIlRoaXMgaW50ZXJhY3Rpb24gaGFzIG5vdCBiZWVuIHJlc3BvbmRlZCB0byB5ZXQgYW5kIHRoaXMgaXNuJ3QgYSBNZXNzYWdlQ29tcG9uZW50IG9yIE1vZGFsU3VibWl0IGludGVyYWN0aW9uLlwiKTtcblxuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5ib3QuaGVscGVycy5zZW5kSW50ZXJhY3Rpb25SZXNwb25zZShcbiAgICAgICAgdGhpcy5pZCxcbiAgICAgICAgdGhpcy50b2tlbixcbiAgICAgICAgeyB0eXBlOiBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuVXBkYXRlTWVzc2FnZSwgZGF0YTogcmVzcG9uc2UgfSxcbiAgICAgICAgb3B0aW9ucyxcbiAgICAgICk7XG4gICAgICB0aGlzLmFja25vd2xlZGdlZCA9IHRydWU7XG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIHJldHVybiBhd2FpdCB0aGlzLmJvdC5oZWxwZXJzLmVkaXRPcmlnaW5hbEludGVyYWN0aW9uUmVzcG9uc2UodGhpcy50b2tlbiwgcmVzcG9uc2UpO1xuICB9LFxuICBhc3luYyBkZWZlckVkaXQob3B0aW9ucykge1xuICAgIGlmICh0aGlzLnR5cGUgPT09IEludGVyYWN0aW9uVHlwZXMuQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlKSB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBlZGl0IGFuIGF1dG9jb21wbGV0ZSBpbnRlcmFjdGlvbi4nKTtcbiAgICBpZiAodGhpcy5hY2tub3dsZWRnZWQpIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGRlZmVyIGFuIGFscmVhZHkgcmVzcG9uZGVkIGludGVyYWN0aW9uLicpO1xuXG4gICAgaWYgKHRoaXMudHlwZSAhPT0gSW50ZXJhY3Rpb25UeXBlcy5NZXNzYWdlQ29tcG9uZW50ICYmIHRoaXMudHlwZSAhPT0gSW50ZXJhY3Rpb25UeXBlcy5Nb2RhbFN1Ym1pdClcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkNhbm5vdCBkZWZlciB0byB0aGVuIGVkaXQgYW4gaW50ZXJhY3Rpb24gdGhhdCBpc24ndCBhIE1lc3NhZ2VDb21wb25lbnQgb3IgTW9kYWxTdWJtaXQgaW50ZXJhY3Rpb24uXCIpO1xuXG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5ib3QuaGVscGVycy5zZW5kSW50ZXJhY3Rpb25SZXNwb25zZShcbiAgICAgIHRoaXMuaWQsXG4gICAgICB0aGlzLnRva2VuLFxuICAgICAgeyB0eXBlOiBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuRGVmZXJyZWRVcGRhdGVNZXNzYWdlIH0sXG4gICAgICBvcHRpb25zLFxuICAgICk7XG4gICAgdGhpcy5hY2tub3dsZWRnZWQgPSB0cnVlO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH0sXG4gIGFzeW5jIGRlZmVyKGlzUHJpdmF0ZSwgb3B0aW9ucykge1xuICAgIGlmICh0aGlzLmFja25vd2xlZGdlZCkgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgZGVmZXIgYW4gYWxyZWFkeSByZXNwb25kZWQgaW50ZXJhY3Rpb24uJyk7XG5cbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLmJvdC5oZWxwZXJzLnNlbmRJbnRlcmFjdGlvblJlc3BvbnNlKFxuICAgICAgdGhpcy5pZCxcbiAgICAgIHRoaXMudG9rZW4sXG4gICAgICB7XG4gICAgICAgIHR5cGU6IEludGVyYWN0aW9uUmVzcG9uc2VUeXBlcy5EZWZlcnJlZENoYW5uZWxNZXNzYWdlV2l0aFNvdXJjZSxcbiAgICAgICAgZGF0YToge1xuICAgICAgICAgIGZsYWdzOiBpc1ByaXZhdGUgPyBNZXNzYWdlRmxhZ3MuRXBoZW1lcmFsIDogdW5kZWZpbmVkLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIG9wdGlvbnMsXG4gICAgKTtcbiAgICB0aGlzLmFja25vd2xlZGdlZCA9IHRydWU7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfSxcbiAgYXN5bmMgZGVsZXRlKG1lc3NhZ2VJZCkge1xuICAgIGlmICh0aGlzLnR5cGUgPT09IEludGVyYWN0aW9uVHlwZXMuQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlKSB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBkZWxldGUgYW4gYXV0b2NvbXBsZXRlIGludGVyYWN0aW9uJyk7XG5cbiAgICBpZiAobWVzc2FnZUlkKSByZXR1cm4gYXdhaXQgdGhpcy5ib3Q/LmhlbHBlcnMuZGVsZXRlRm9sbG93dXBNZXNzYWdlKHRoaXMudG9rZW4sIG1lc3NhZ2VJZCk7XG4gICAgZWxzZSByZXR1cm4gYXdhaXQgdGhpcy5ib3Q/LmhlbHBlcnMuZGVsZXRlT3JpZ2luYWxJbnRlcmFjdGlvblJlc3BvbnNlKHRoaXMudG9rZW4pO1xuICB9LFxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUludGVyYWN0aW9uKGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkSW50ZXJhY3Rpb24sIGV4dHJhPzogeyBzaGFyZElkPzogbnVtYmVyIH0pOiBJbnRlcmFjdGlvbiB7XG4gIGNvbnN0IGd1aWxkSWQgPSBwYXlsb2FkLmd1aWxkX2lkID8gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5ndWlsZF9pZCkgOiB1bmRlZmluZWQ7XG5cbiAgY29uc3QgaW50ZXJhY3Rpb246IFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj4gPSBPYmplY3QuY3JlYXRlKGJhc2VJbnRlcmFjdGlvbik7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5pbnRlcmFjdGlvbjtcblxuICBpbnRlcmFjdGlvbi5ib3QgPSBib3Q7XG4gIGludGVyYWN0aW9uLmFja25vd2xlZGdlZCA9IGZhbHNlO1xuXG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBpbnRlcmFjdGlvbi5pZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuaWQpO1xuICBpZiAocHJvcHMuYXBwbGljYXRpb25JZCAmJiBwYXlsb2FkLmFwcGxpY2F0aW9uX2lkKSBpbnRlcmFjdGlvbi5hcHBsaWNhdGlvbklkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5hcHBsaWNhdGlvbl9pZCk7XG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSkgaW50ZXJhY3Rpb24udHlwZSA9IHBheWxvYWQudHlwZTtcbiAgaWYgKHByb3BzLnRva2VuICYmIHBheWxvYWQudG9rZW4pIGludGVyYWN0aW9uLnRva2VuID0gcGF5bG9hZC50b2tlbjtcbiAgaWYgKHByb3BzLnZlcnNpb24gJiYgcGF5bG9hZC52ZXJzaW9uKSBpbnRlcmFjdGlvbi52ZXJzaW9uID0gcGF5bG9hZC52ZXJzaW9uO1xuICBpZiAocHJvcHMubG9jYWxlICYmIHBheWxvYWQubG9jYWxlKSBpbnRlcmFjdGlvbi5sb2NhbGUgPSBwYXlsb2FkLmxvY2FsZTtcbiAgaWYgKHByb3BzLmd1aWxkTG9jYWxlICYmIHBheWxvYWQuZ3VpbGRfbG9jYWxlKSBpbnRlcmFjdGlvbi5ndWlsZExvY2FsZSA9IHBheWxvYWQuZ3VpbGRfbG9jYWxlO1xuICBpZiAocHJvcHMuZ3VpbGQgJiYgcGF5bG9hZC5ndWlsZClcbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yIHBheWxvYWQuZ3VpbGQgaXMgYSBQYXJ0aWFsPERpc2NvcmRHdWlsZD5cbiAgICBpbnRlcmFjdGlvbi5ndWlsZCA9IGJvdC50cmFuc2Zvcm1lcnMuZ3VpbGQoYm90LCBwYXlsb2FkLmd1aWxkLCB7IHNoYXJkSWQ6IGV4dHJhPy5zaGFyZElkIH0pO1xuICBpZiAocHJvcHMuZ3VpbGRJZCAmJiBndWlsZElkKSBpbnRlcmFjdGlvbi5ndWlsZElkID0gZ3VpbGRJZDtcbiAgaWYgKHByb3BzLnVzZXIpIHtcbiAgICBpZiAocGF5bG9hZC5tZW1iZXI/LnVzZXIpIGludGVyYWN0aW9uLnVzZXIgPSBib3QudHJhbnNmb3JtZXJzLnVzZXIoYm90LCBwYXlsb2FkLm1lbWJlcj8udXNlcik7XG4gICAgZWxzZSBpZiAocGF5bG9hZC51c2VyKSBpbnRlcmFjdGlvbi51c2VyID0gYm90LnRyYW5zZm9ybWVycy51c2VyKGJvdCwgcGF5bG9hZC51c2VyKTtcbiAgfVxuICBpZiAocHJvcHMuYXBwUGVybWlzc2lvbnMgJiYgcGF5bG9hZC5hcHBfcGVybWlzc2lvbnMpIGludGVyYWN0aW9uLmFwcFBlcm1pc3Npb25zID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5hcHBfcGVybWlzc2lvbnMpO1xuICBpZiAocHJvcHMubWVzc2FnZSAmJiBwYXlsb2FkLm1lc3NhZ2UpIGludGVyYWN0aW9uLm1lc3NhZ2UgPSBib3QudHJhbnNmb3JtZXJzLm1lc3NhZ2UoYm90LCBwYXlsb2FkLm1lc3NhZ2UsIHsgc2hhcmRJZDogZXh0cmE/LnNoYXJkSWQgfSk7XG4gIGlmIChwcm9wcy5jaGFubmVsICYmIHBheWxvYWQuY2hhbm5lbClcbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yIHBheWxvYWQuY2hhbm5lbCBpcyBhIFBhcnRpYWw8PlxuICAgIGludGVyYWN0aW9uLmNoYW5uZWwgPSBib3QudHJhbnNmb3JtZXJzLmNoYW5uZWwoYm90LCBwYXlsb2FkLmNoYW5uZWwsIHsgZ3VpbGRJZCB9KTtcbiAgaWYgKHByb3BzLmNoYW5uZWxJZCAmJiBwYXlsb2FkLmNoYW5uZWxfaWQpIGludGVyYWN0aW9uLmNoYW5uZWxJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuY2hhbm5lbF9pZCk7XG4gIGlmIChwcm9wcy5tZW1iZXIgJiYgZ3VpbGRJZCAmJiBwYXlsb2FkLm1lbWJlcilcbiAgICBpbnRlcmFjdGlvbi5tZW1iZXIgPSBib3QudHJhbnNmb3JtZXJzLm1lbWJlcihib3QsIHBheWxvYWQubWVtYmVyLCB7XG4gICAgICBndWlsZElkLFxuICAgICAgdXNlcklkOiBwYXlsb2FkLm1lbWJlcj8udXNlci5pZCA/PyBwYXlsb2FkLnVzZXI/LmlkLFxuICAgIH0pO1xuICBpZiAocHJvcHMuZW50aXRsZW1lbnRzICYmIHBheWxvYWQuZW50aXRsZW1lbnRzKSBpbnRlcmFjdGlvbi5lbnRpdGxlbWVudHMgPSBwYXlsb2FkLmVudGl0bGVtZW50cy5tYXAoKGUpID0+IGJvdC50cmFuc2Zvcm1lcnMuZW50aXRsZW1lbnQoYm90LCBlKSk7XG4gIGlmIChwcm9wcy5hdXRob3JpemluZ0ludGVncmF0aW9uT3duZXJzICYmIHBheWxvYWQuYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzKSB7XG4gICAgaW50ZXJhY3Rpb24uYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVycyA9IHt9O1xuXG4gICAgaWYgKHBheWxvYWQuYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzWycwJ10pXG4gICAgICBpbnRlcmFjdGlvbi5hdXRob3JpemluZ0ludGVncmF0aW9uT3duZXJzW0Rpc2NvcmRBcHBsaWNhdGlvbkludGVncmF0aW9uVHlwZS5HdWlsZEluc3RhbGxdID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoXG4gICAgICAgIHBheWxvYWQuYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzWycwJ10sXG4gICAgICApO1xuICAgIGlmIChwYXlsb2FkLmF1dGhvcml6aW5nX2ludGVncmF0aW9uX293bmVyc1snMSddKVxuICAgICAgaW50ZXJhY3Rpb24uYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVyc1tEaXNjb3JkQXBwbGljYXRpb25JbnRlZ3JhdGlvblR5cGUuVXNlckluc3RhbGxdID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoXG4gICAgICAgIHBheWxvYWQuYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzWycxJ10sXG4gICAgICApO1xuICB9XG4gIGlmIChwcm9wcy5jb250ZXh0ICYmIHBheWxvYWQuY29udGV4dCkgaW50ZXJhY3Rpb24uY29udGV4dCA9IHBheWxvYWQuY29udGV4dDtcbiAgaWYgKHByb3BzLmF0dGFjaG1lbnRTaXplTGltaXQgJiYgcGF5bG9hZC5hdHRhY2htZW50X3NpemVfbGltaXQpIGludGVyYWN0aW9uLmF0dGFjaG1lbnRTaXplTGltaXQgPSBwYXlsb2FkLmF0dGFjaG1lbnRfc2l6ZV9saW1pdDtcbiAgaWYgKHByb3BzLmRhdGEgJiYgcGF5bG9hZC5kYXRhKSB7XG4gICAgaW50ZXJhY3Rpb24uZGF0YSA9IHtcbiAgICAgIHR5cGU6IHBheWxvYWQuZGF0YS50eXBlLFxuICAgICAgY29tcG9uZW50VHlwZTogcGF5bG9hZC5kYXRhLmNvbXBvbmVudF90eXBlLFxuICAgICAgY3VzdG9tSWQ6IHBheWxvYWQuZGF0YS5jdXN0b21faWQsXG4gICAgICBjb21wb25lbnRzOiBwYXlsb2FkLmRhdGEuY29tcG9uZW50cz8ubWFwKChjb21wb25lbnQpID0+IGJvdC50cmFuc2Zvcm1lcnMuY29tcG9uZW50KGJvdCwgY29tcG9uZW50KSksXG4gICAgICB2YWx1ZXM6IHBheWxvYWQuZGF0YS52YWx1ZXMsXG4gICAgICBpZDogcGF5bG9hZC5kYXRhLmlkID8gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5kYXRhLmlkKSA6IHVuZGVmaW5lZCxcbiAgICAgIG5hbWU6IHBheWxvYWQuZGF0YS5uYW1lLFxuICAgICAgcmVzb2x2ZWQ6IHBheWxvYWQuZGF0YS5yZXNvbHZlZFxuICAgICAgICA/IGJvdC50cmFuc2Zvcm1lcnMuaW50ZXJhY3Rpb25EYXRhUmVzb2x2ZWQoYm90LCBwYXlsb2FkLmRhdGEucmVzb2x2ZWQsIHsgc2hhcmRJZDogZXh0cmE/LnNoYXJkSWQsIGd1aWxkSWQgfSlcbiAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICBvcHRpb25zOiBwYXlsb2FkLmRhdGEub3B0aW9ucz8ubWFwKChvcHQpID0+IGJvdC50cmFuc2Zvcm1lcnMuaW50ZXJhY3Rpb25EYXRhT3B0aW9ucyhib3QsIG9wdCkpLFxuICAgICAgdGFyZ2V0SWQ6IHBheWxvYWQuZGF0YS50YXJnZXRfaWQgPyBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmRhdGEudGFyZ2V0X2lkKSA6IHVuZGVmaW5lZCxcbiAgICB9O1xuICB9XG5cbiAgLy8gVHlwZXNjcmlwdCBoYXMgYW4gaGFyZCB0aW1lIHdpdGggaW50ZXJhY3Rpb24uYm90LCBzbyB3ZSBuZWVkIHRvIHRlbGwgaGltIGZvciBzdXJlIHRoaXMgaW50ZXJhY3Rpb24gaXMgdGhlIG9mIHRoZSBjb3JyZWN0IHR5cGVcbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuaW50ZXJhY3Rpb24oYm90LCBwYXlsb2FkLCBpbnRlcmFjdGlvbiBhcyB1bmtub3duIGFzIHR5cGVvZiBib3QudHJhbnNmb3JtZXJzLiRpbmZlcnJlZFR5cGVzLmludGVyYWN0aW9uLCBleHRyYSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1JbnRlcmFjdGlvbkRhdGFPcHRpb24oYm90OiBCb3QsIG9wdGlvbjogRGlzY29yZEludGVyYWN0aW9uRGF0YU9wdGlvbik6IEludGVyYWN0aW9uRGF0YU9wdGlvbiB7XG4gIGNvbnN0IG9wdCA9IHtcbiAgICBuYW1lOiBvcHRpb24ubmFtZSxcbiAgICB0eXBlOiBvcHRpb24udHlwZSxcbiAgICB2YWx1ZTogb3B0aW9uLnZhbHVlLFxuICAgIG9wdGlvbnM6IG9wdGlvbi5vcHRpb25zLFxuICAgIGZvY3VzZWQ6IG9wdGlvbi5mb2N1c2VkLFxuICB9IGFzIEludGVyYWN0aW9uRGF0YU9wdGlvbjtcblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5pbnRlcmFjdGlvbkRhdGFPcHRpb25zKGJvdCwgb3B0aW9uLCBvcHQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtSW50ZXJhY3Rpb25EYXRhUmVzb2x2ZWQoXG4gIGJvdDogQm90LFxuICBwYXlsb2FkOiBEaXNjb3JkSW50ZXJhY3Rpb25EYXRhUmVzb2x2ZWQsXG4gIGV4dHJhPzogeyBzaGFyZElkPzogbnVtYmVyOyBndWlsZElkPzogQmlnU3RyaW5nIH0sXG4pOiBUcmFuc2Zvcm1Qcm9wZXJ0eTxJbnRlcmFjdGlvbkRhdGFSZXNvbHZlZCwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IuUmVtb3ZlS2V5PiB7XG4gIGNvbnN0IHRyYW5zZm9ybWVkOiBUcmFuc2Zvcm1Qcm9wZXJ0eTxJbnRlcmFjdGlvbkRhdGFSZXNvbHZlZCwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IuUmVtb3ZlS2V5PiA9IHt9O1xuXG4gIGlmIChwYXlsb2FkLm1lc3NhZ2VzKSB7XG4gICAgdHJhbnNmb3JtZWQubWVzc2FnZXMgPSBuZXcgQ29sbGVjdGlvbihcbiAgICAgIE9iamVjdC5lbnRyaWVzKHBheWxvYWQubWVzc2FnZXMpLm1hcCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgVE9ETzogRGVhbCB3aXRoIHBhcnRpYWxzXG4gICAgICAgIGNvbnN0IG1lc3NhZ2UgPSBib3QudHJhbnNmb3JtZXJzLm1lc3NhZ2UoYm90LCB2YWx1ZSwgeyBzaGFyZElkOiBleHRyYT8uc2hhcmRJZCB9KTtcbiAgICAgICAgY29uc3QgaWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShrZXkpO1xuXG4gICAgICAgIHJldHVybiBbaWQsIG1lc3NhZ2VdO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIGlmIChwYXlsb2FkLnVzZXJzKSB7XG4gICAgdHJhbnNmb3JtZWQudXNlcnMgPSBuZXcgQ29sbGVjdGlvbihcbiAgICAgIE9iamVjdC5lbnRyaWVzKHBheWxvYWQudXNlcnMpLm1hcCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgIGNvbnN0IHVzZXIgPSBib3QudHJhbnNmb3JtZXJzLnVzZXIoYm90LCB2YWx1ZSk7XG4gICAgICAgIGNvbnN0IGlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2Uoa2V5KTtcblxuICAgICAgICByZXR1cm4gW2lkLCB1c2VyXTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBpZiAoZXh0cmE/Lmd1aWxkSWQgJiYgcGF5bG9hZC5tZW1iZXJzKSB7XG4gICAgdHJhbnNmb3JtZWQubWVtYmVycyA9IG5ldyBDb2xsZWN0aW9uKFxuICAgICAgT2JqZWN0LmVudHJpZXMocGF5bG9hZC5tZW1iZXJzKS5tYXAoKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIFRPRE86IERlYWwgd2l0aCBwYXJ0aWFscywgdmFsdWUgaXMgbWlzc2luZyAyIHZhbHVlcyBidXQgdGhlIHRyYW5zZm9ybWVyIGNhbiBoYW5kbGUgaXQsIGRlc3BpdGUgd2hhdCB0aGUgdHlwZXMgc2F5c1xuICAgICAgICBjb25zdCBtZW1iZXIgPSBib3QudHJhbnNmb3JtZXJzLm1lbWJlcihib3QsIHZhbHVlLCB7XG4gICAgICAgICAgZ3VpbGRJZDogZXh0cmEuZ3VpbGRJZCxcbiAgICAgICAgICB1c2VySWQ6IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKGtleSksXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBpZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKGtleSk7XG5cbiAgICAgICAgcmV0dXJuIFtpZCwgbWVtYmVyXTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBpZiAoZXh0cmE/Lmd1aWxkSWQgJiYgcGF5bG9hZC5yb2xlcykge1xuICAgIHRyYW5zZm9ybWVkLnJvbGVzID0gbmV3IENvbGxlY3Rpb24oXG4gICAgICBPYmplY3QuZW50cmllcyhwYXlsb2FkLnJvbGVzKS5tYXAoKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICBjb25zdCByb2xlID0gYm90LnRyYW5zZm9ybWVycy5yb2xlKGJvdCwgdmFsdWUsIHsgZ3VpbGRJZDogZXh0cmEuZ3VpbGRJZCB9KTtcbiAgICAgICAgY29uc3QgaWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShrZXkpO1xuXG4gICAgICAgIHJldHVybiBbaWQsIHJvbGVdO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIGlmIChwYXlsb2FkLmNoYW5uZWxzKSB7XG4gICAgdHJhbnNmb3JtZWQuY2hhbm5lbHMgPSBuZXcgQ29sbGVjdGlvbihcbiAgICAgIE9iamVjdC5lbnRyaWVzKHBheWxvYWQuY2hhbm5lbHMpLm1hcCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgIGNvbnN0IGNoYW5uZWwgPSBib3QudHJhbnNmb3JtZXJzLmNoYW5uZWwoYm90LCB2YWx1ZSkgYXMgSW50ZXJhY3Rpb25SZXNvbHZlZERhdGFDaGFubmVsPFxuICAgICAgICAgIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLFxuICAgICAgICAgIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IuUmVtb3ZlS2V5XG4gICAgICAgID47XG4gICAgICAgIGNvbnN0IGlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2Uoa2V5KTtcblxuICAgICAgICByZXR1cm4gW2lkLCBjaGFubmVsXTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBpZiAocGF5bG9hZC5hdHRhY2htZW50cykge1xuICAgIHRyYW5zZm9ybWVkLmF0dGFjaG1lbnRzID0gbmV3IENvbGxlY3Rpb24oXG4gICAgICBPYmplY3QuZW50cmllcyhwYXlsb2FkLmF0dGFjaG1lbnRzKS5tYXAoKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICBjb25zdCBpZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKGtleSk7XG4gICAgICAgIGNvbnN0IGF0dGFjaG1lbnQgPSBib3QudHJhbnNmb3JtZXJzLmF0dGFjaG1lbnQoYm90LCB2YWx1ZSk7XG5cbiAgICAgICAgcmV0dXJuIFtpZCwgYXR0YWNobWVudF07XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuaW50ZXJhY3Rpb25EYXRhUmVzb2x2ZWQoYm90LCBwYXlsb2FkLCB0cmFuc2Zvcm1lZCwge1xuICAgIHNoYXJkSWQ6IGV4dHJhPy5zaGFyZElkLFxuICAgIGd1aWxkSWQ6IGV4dHJhPy5ndWlsZElkID8gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoZXh0cmEuZ3VpbGRJZCkgOiB1bmRlZmluZWQsXG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtSW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlKFxuICBib3Q6IEJvdCxcbiAgcGF5bG9hZDogRGlzY29yZEludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZSxcbiAgZXh0cmE/OiB7IHNoYXJkSWQ/OiBudW1iZXIgfSxcbik6IEludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5pbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2U7XG4gIGNvbnN0IHJlc3BvbnNlID0ge30gYXMgU2V0dXBEZXNpcmVkUHJvcHM8SW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj47XG5cbiAgaWYgKHByb3BzLmludGVyYWN0aW9uICYmIHBheWxvYWQuaW50ZXJhY3Rpb24pIHJlc3BvbnNlLmludGVyYWN0aW9uID0gYm90LnRyYW5zZm9ybWVycy5pbnRlcmFjdGlvbkNhbGxiYWNrKGJvdCwgcGF5bG9hZC5pbnRlcmFjdGlvbik7XG4gIGlmIChwcm9wcy5yZXNvdXJjZSAmJiBwYXlsb2FkLnJlc291cmNlKVxuICAgIHJlc3BvbnNlLnJlc291cmNlID0gYm90LnRyYW5zZm9ybWVycy5pbnRlcmFjdGlvblJlc291cmNlKGJvdCwgcGF5bG9hZC5yZXNvdXJjZSwgeyBzaGFyZElkOiBleHRyYT8uc2hhcmRJZCB9KTtcblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5pbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2UoYm90LCBwYXlsb2FkLCByZXNwb25zZSwgZXh0cmEpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtSW50ZXJhY3Rpb25DYWxsYmFjayhib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZEludGVyYWN0aW9uQ2FsbGJhY2spOiBJbnRlcmFjdGlvbkNhbGxiYWNrIHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmludGVyYWN0aW9uQ2FsbGJhY2s7XG4gIGNvbnN0IGNhbGxiYWNrID0ge30gYXMgU2V0dXBEZXNpcmVkUHJvcHM8SW50ZXJhY3Rpb25DYWxsYmFjaywgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+O1xuXG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBjYWxsYmFjay5pZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuaWQpO1xuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIGNhbGxiYWNrLnR5cGUgPSBwYXlsb2FkLnR5cGU7XG4gIGlmIChwcm9wcy5hY3Rpdml0eUluc3RhbmNlSWQgJiYgcGF5bG9hZC5hY3Rpdml0eV9pbnN0YW5jZV9pZCkgY2FsbGJhY2suYWN0aXZpdHlJbnN0YW5jZUlkID0gcGF5bG9hZC5hY3Rpdml0eV9pbnN0YW5jZV9pZDtcbiAgaWYgKHByb3BzLnJlc3BvbnNlTWVzc2FnZUlkICYmIHBheWxvYWQucmVzcG9uc2VfbWVzc2FnZV9pZCkgY2FsbGJhY2sucmVzcG9uc2VNZXNzYWdlSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLnJlc3BvbnNlX21lc3NhZ2VfaWQpO1xuICBpZiAocHJvcHMucmVzcG9uc2VNZXNzYWdlRXBoZW1lcmFsICYmIHBheWxvYWQucmVzcG9uc2VfbWVzc2FnZV9lcGhlbWVyYWwpIGNhbGxiYWNrLnJlc3BvbnNlTWVzc2FnZUVwaGVtZXJhbCA9IHBheWxvYWQucmVzcG9uc2VfbWVzc2FnZV9lcGhlbWVyYWw7XG4gIGlmIChwcm9wcy5yZXNwb25zZU1lc3NhZ2VMb2FkaW5nICYmIHBheWxvYWQucmVzcG9uc2VfbWVzc2FnZV9sb2FkaW5nKSBjYWxsYmFjay5yZXNwb25zZU1lc3NhZ2VMb2FkaW5nID0gcGF5bG9hZC5yZXNwb25zZV9tZXNzYWdlX2xvYWRpbmc7XG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuaW50ZXJhY3Rpb25DYWxsYmFjayhib3QsIHBheWxvYWQsIGNhbGxiYWNrKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUludGVyYWN0aW9uUmVzb3VyY2UoYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRJbnRlcmFjdGlvblJlc291cmNlLCBleHRyYT86IHsgc2hhcmRJZD86IG51bWJlciB9KTogSW50ZXJhY3Rpb25SZXNvdXJjZSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5pbnRlcmFjdGlvblJlc291cmNlO1xuICBjb25zdCByZXNvdXJjZSA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uUmVzb3VyY2UsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPjtcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIHJlc291cmNlLnR5cGUgPSBwYXlsb2FkLnR5cGU7XG4gIGlmIChwcm9wcy5hY3Rpdml0eUluc3RhbmNlICYmIHBheWxvYWQuYWN0aXZpdHlfaW5zdGFuY2UpIHJlc291cmNlLmFjdGl2aXR5SW5zdGFuY2UgPSBwYXlsb2FkLmFjdGl2aXR5X2luc3RhbmNlO1xuICBpZiAocHJvcHMubWVzc2FnZSAmJiBwYXlsb2FkLm1lc3NhZ2UpIHJlc291cmNlLm1lc3NhZ2UgPSBib3QudHJhbnNmb3JtZXJzLm1lc3NhZ2UoYm90LCBwYXlsb2FkLm1lc3NhZ2UsIHsgc2hhcmRJZDogZXh0cmE/LnNoYXJkSWQgfSk7XG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuaW50ZXJhY3Rpb25SZXNvdXJjZShib3QsIHBheWxvYWQsIHJlc291cmNlLCBleHRyYSk7XG59XG4iXSwibmFtZXMiOlsiRGlzY29yZEFwcGxpY2F0aW9uSW50ZWdyYXRpb25UeXBlIiwiSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzIiwiSW50ZXJhY3Rpb25UeXBlcyIsIk1lc3NhZ2VGbGFncyIsIkNvbGxlY3Rpb24iLCJiYXNlSW50ZXJhY3Rpb24iLCJ1bmRlZmluZWQiLCJyZXNwb25kIiwicmVzcG9uc2UiLCJvcHRpb25zIiwidHlwZSIsIkNoYW5uZWxNZXNzYWdlV2l0aFNvdXJjZSIsImNvbnRlbnQiLCJ0aXRsZSIsIk1vZGFsIiwiQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlIiwiQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlUmVzdWx0IiwiTW9kYWxTdWJtaXQiLCJFcnJvciIsImlzUHJpdmF0ZSIsImZsYWdzIiwiRXBoZW1lcmFsIiwiYWNrbm93bGVkZ2VkIiwic2VuZEZvbGxvd3VwTWVzc2FnZSIsInJlc3VsdCIsImJvdCIsImhlbHBlcnMiLCJzZW5kSW50ZXJhY3Rpb25SZXNwb25zZSIsImlkIiwidG9rZW4iLCJkYXRhIiwid2l0aFJlc3BvbnNlIiwiZWRpdCIsIm1lc3NhZ2VJZCIsImVkaXRGb2xsb3d1cE1lc3NhZ2UiLCJNZXNzYWdlQ29tcG9uZW50IiwiVXBkYXRlTWVzc2FnZSIsImVkaXRPcmlnaW5hbEludGVyYWN0aW9uUmVzcG9uc2UiLCJkZWZlckVkaXQiLCJEZWZlcnJlZFVwZGF0ZU1lc3NhZ2UiLCJkZWZlciIsIkRlZmVycmVkQ2hhbm5lbE1lc3NhZ2VXaXRoU291cmNlIiwiZGVsZXRlIiwiZGVsZXRlRm9sbG93dXBNZXNzYWdlIiwiZGVsZXRlT3JpZ2luYWxJbnRlcmFjdGlvblJlc3BvbnNlIiwidHJhbnNmb3JtSW50ZXJhY3Rpb24iLCJwYXlsb2FkIiwiZXh0cmEiLCJndWlsZElkIiwiZ3VpbGRfaWQiLCJ0cmFuc2Zvcm1lcnMiLCJzbm93Zmxha2UiLCJpbnRlcmFjdGlvbiIsIk9iamVjdCIsImNyZWF0ZSIsInByb3BzIiwiZGVzaXJlZFByb3BlcnRpZXMiLCJhcHBsaWNhdGlvbklkIiwiYXBwbGljYXRpb25faWQiLCJ2ZXJzaW9uIiwibG9jYWxlIiwiZ3VpbGRMb2NhbGUiLCJndWlsZF9sb2NhbGUiLCJndWlsZCIsInNoYXJkSWQiLCJ1c2VyIiwibWVtYmVyIiwiYXBwUGVybWlzc2lvbnMiLCJhcHBfcGVybWlzc2lvbnMiLCJtZXNzYWdlIiwiY2hhbm5lbCIsImNoYW5uZWxJZCIsImNoYW5uZWxfaWQiLCJ1c2VySWQiLCJlbnRpdGxlbWVudHMiLCJtYXAiLCJlIiwiZW50aXRsZW1lbnQiLCJhdXRob3JpemluZ0ludGVncmF0aW9uT3duZXJzIiwiYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzIiwiR3VpbGRJbnN0YWxsIiwiVXNlckluc3RhbGwiLCJjb250ZXh0IiwiYXR0YWNobWVudFNpemVMaW1pdCIsImF0dGFjaG1lbnRfc2l6ZV9saW1pdCIsImNvbXBvbmVudFR5cGUiLCJjb21wb25lbnRfdHlwZSIsImN1c3RvbUlkIiwiY3VzdG9tX2lkIiwiY29tcG9uZW50cyIsImNvbXBvbmVudCIsInZhbHVlcyIsIm5hbWUiLCJyZXNvbHZlZCIsImludGVyYWN0aW9uRGF0YVJlc29sdmVkIiwib3B0IiwiaW50ZXJhY3Rpb25EYXRhT3B0aW9ucyIsInRhcmdldElkIiwidGFyZ2V0X2lkIiwiY3VzdG9taXplcnMiLCJ0cmFuc2Zvcm1JbnRlcmFjdGlvbkRhdGFPcHRpb24iLCJvcHRpb24iLCJ2YWx1ZSIsImZvY3VzZWQiLCJ0cmFuc2Zvcm1JbnRlcmFjdGlvbkRhdGFSZXNvbHZlZCIsInRyYW5zZm9ybWVkIiwibWVzc2FnZXMiLCJlbnRyaWVzIiwia2V5IiwidXNlcnMiLCJtZW1iZXJzIiwicm9sZXMiLCJyb2xlIiwiY2hhbm5lbHMiLCJhdHRhY2htZW50cyIsImF0dGFjaG1lbnQiLCJ0cmFuc2Zvcm1JbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2UiLCJpbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2UiLCJpbnRlcmFjdGlvbkNhbGxiYWNrIiwicmVzb3VyY2UiLCJpbnRlcmFjdGlvblJlc291cmNlIiwidHJhbnNmb3JtSW50ZXJhY3Rpb25DYWxsYmFjayIsImNhbGxiYWNrIiwiYWN0aXZpdHlJbnN0YW5jZUlkIiwiYWN0aXZpdHlfaW5zdGFuY2VfaWQiLCJyZXNwb25zZU1lc3NhZ2VJZCIsInJlc3BvbnNlX21lc3NhZ2VfaWQiLCJyZXNwb25zZU1lc3NhZ2VFcGhlbWVyYWwiLCJyZXNwb25zZV9tZXNzYWdlX2VwaGVtZXJhbCIsInJlc3BvbnNlTWVzc2FnZUxvYWRpbmciLCJyZXNwb25zZV9tZXNzYWdlX2xvYWRpbmciLCJ0cmFuc2Zvcm1JbnRlcmFjdGlvblJlc291cmNlIiwiYWN0aXZpdHlJbnN0YW5jZSIsImFjdGl2aXR5X2luc3RhbmNlIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUVFQSxpQ0FBaUMsRUFPakNDLHdCQUF3QixFQUN4QkMsZ0JBQWdCLEVBQ2hCQyxZQUFZLFFBQ1Asb0JBQW9CO0FBQzNCLFNBQVNDLFVBQVUsUUFBUSxvQkFBb0I7QUFtQi9DLG9JQUFvSTtBQUNwSSxz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