@unovis/angular 1.0.0 → 1.0.1-beta.4

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.
@@ -154,4 +154,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
154
154
  }], data: [{
155
155
  type: Input
156
156
  }] } });
157
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVhZmxldC1mbG93LW1hcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvaHRtbC1jb21wb25lbnRzL2xlYWZsZXQtZmxvdy1tYXAvbGVhZmxldC1mbG93LW1hcC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBaUIsS0FBSyxFQUFpQixTQUFTLEVBQWMsTUFBTSxlQUFlLENBQUE7QUFDckcsT0FBTyxFQUNMLGNBQWMsR0FhZixNQUFNLFlBQVksQ0FBQTtBQUVuQixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxZQUFZLENBQUE7O0FBUzdDLE1BQU0sT0FBTywwQkFBMEI7SUEwT3JDLGVBQWU7UUFDYixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUE7UUFDL0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLGNBQWMsQ0FBd0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNoSCxDQUFDO0lBRUQsV0FBVyxDQUFFLE9BQXNCOztRQUNqQyxJQUFJLE9BQU8sQ0FBQyxJQUFJLEVBQUU7WUFDaEIsTUFBQSxJQUFJLENBQUMsU0FBUywwQ0FBRSxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO1NBQ25DO1FBQ0QsTUFBQSxJQUFJLENBQUMsU0FBUywwQ0FBRSxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUE7SUFDN0MsQ0FBQztJQUVPLFNBQVM7UUFDZixNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsS0FB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LEtBQUs7Z0JBR0csYUFBYTtzQkFBckIsS0FBSztnQkFXRyxPQUFPO3NCQUFmLEtBQUs7Z0JBR0csZUFBZTtzQkFBdkIsS0FBSztnQkFFRyxjQUFjO3NCQUF0QixLQUFLO2dCQUVHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBRUcsY0FBYztzQkFBdEIsS0FBSztnQkFFRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBRUcsZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUVHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFFRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBRUcsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUVHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFJRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBRUcsdUJBQXVCO3NCQUEvQixLQUFLO2dCQUVHLHVCQUF1QjtzQkFBL0IsS0FBSztnQkFHRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEFmdGVyVmlld0luaXQsIElucHV0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGQsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHtcbiAgTGVhZmxldEZsb3dNYXAsXG4gIExlYWZsZXRGbG93TWFwQ29uZmlnSW50ZXJmYWNlLFxuICBWaXNFdmVudFR5cGUsXG4gIFZpc0V2ZW50Q2FsbGJhY2ssXG4gIEJvdW5kcyxcbiAgTWFwWm9vbVN0YXRlLFxuICBOdW1lcmljQWNjZXNzb3IsXG4gIFN0cmluZ0FjY2Vzc29yLFxuICBDb2xvckFjY2Vzc29yLFxuICBMZWFmbGV0TWFwUG9pbnREYXR1bSxcbiAgTGVhZmxldE1hcFBvaW50U3R5bGVzLFxuICBUb29sdGlwLFxuICBMZWFmbGV0TWFwQ2x1c3RlckRhdHVtLFxufSBmcm9tICdAdW5vdmlzL3RzJ1xuaW1wb3J0IHsgU3R5bGVTcGVjaWZpY2F0aW9uIH0gZnJvbSAnbWFwbGlicmUtZ2wnXG5pbXBvcnQgeyBWaXNDb3JlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29yZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmlzLWxlYWZsZXQtZmxvdy1tYXAnLFxuICB0ZW1wbGF0ZTogJzxkaXYgI2NvbnRhaW5lciBjbGFzcz1cInVub3Zpcy1sZWFmbGV0LWZsb3ctbWFwLWNvbnRhaW5lclwiPjwvZGl2PicsXG4gIHN0eWxlczogWycudW5vdmlzLWxlYWZsZXQtZmxvdy1tYXAtY29udGFpbmVyIHsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgcG9zaXRpb246IHJlbGF0aXZlOyB9J10sXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11c2UtYmVmb3JlLWRlZmluZVxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IFZpc0NvcmVDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBWaXNMZWFmbGV0Rmxvd01hcENvbXBvbmVudCB9XSxcbn0pXG5leHBvcnQgY2xhc3MgVmlzTGVhZmxldEZsb3dNYXBDb21wb25lbnQ8UG9pbnREYXR1bSwgRmxvd0RhdHVtPiBpbXBsZW1lbnRzIExlYWZsZXRGbG93TWFwQ29uZmlnSW50ZXJmYWNlPFBvaW50RGF0dW0sIEZsb3dEYXR1bT4sIEFmdGVyVmlld0luaXQge1xuICBAVmlld0NoaWxkKCdjb250YWluZXInLCB7IHN0YXRpYzogZmFsc2UgfSkgY29udGFpbmVyUmVmOiBFbGVtZW50UmVmXG5cbiAgLyoqIFdpZHRoIGluIHBpeGVscyBvciBpbiBDU1MgdW5pdHMuIEJ5IGRlZmF1bHQsIHRoZSBtYXAgd2lsbCBhdXRvbWF0aWNhbGx5IGZpdCB0byB0aGUgc2l6ZSBvZiB0aGUgcGFyZW50IGVsZW1lbnQuIERlZmF1bHQ6IGB1bmRlZmluZWRgLiAqL1xuICBASW5wdXQoKSB3aWR0aD86IG51bWJlciB8IHN0cmluZ1xuICAvKiogSGVpZ2h0IGluIHBpeGVscyBvciBpbiBDU1MgdW5pdHMuIEJ5IGRlZmF1bHQsIHRoZSBtYXAgd2lsbCBhdXRvbWF0aWNhbGx5IGZpdCB0byB0aGUgc2l6ZSBvZiB0aGUgcGFyZW50IGVsZW1lbnQuIERlZmF1bHQ6IGB1bmRlZmluZWRgLiAqL1xuICBASW5wdXQoKSBoZWlnaHQ/OiBudW1iZXIgfCBzdHJpbmdcblxuICAvKiogQW5pbWF0aW9uIGR1cmF0aW9uIG9mIHRoZSBkYXRhIHVwZGF0ZSB0cmFuc2l0aW9ucyBpbiBtaWxsaXNlY29uZHMuIERlZmF1bHQ6IGA2MDBgICovXG4gIEBJbnB1dCgpIGR1cmF0aW9uPzogbnVtYmVyXG5cbiAgLyoqIEV2ZW50cyBjb25maWd1cmF0aW9uLiBBbiBvYmplY3QgY29udGFpbmluZyBwcm9wZXJ0aWVzIGluIHRoZSBmb2xsb3dpbmcgZm9ybWF0OlxuICAgKlxuICAgKiBgYGBcbiAgICoge1xuICAgKiBcXFtzZWxlY3RvclN0cmluZ106IHtcbiAgICogICAgIFxcW2V2ZW50VHlwZV06IGNhbGxiYWNrRnVuY3Rpb25cbiAgICogIH1cbiAgICogfVxuICAgKiBgYGBcbiAgICogZS5nLjpcbiAgICogYGBgXG4gICAqIHtcbiAgICogXFxbQXJlYS5zZWxlY3RvcnMuYXJlYV06IHtcbiAgICogICAgY2xpY2s6IChkKSA9PiBjb25zb2xlLmxvZyhcIkNsaWNrZWQgQXJlYVwiLCBkKVxuICAgKiAgfVxuICAgKiB9XG4gICAqIGBgYCAqL1xuICBASW5wdXQoKSBldmVudHM/OiB7XG4gICAgW3NlbGVjdG9yOiBzdHJpbmddOiB7XG4gICAgICBbZXZlbnRUeXBlIGluIFZpc0V2ZW50VHlwZV0/OiBWaXNFdmVudENhbGxiYWNrXG4gICAgfTtcbiAgfVxuXG4gIC8qKiBZb3UgY2FuIHNldCBldmVyeSBTVkcgYW5kIEhUTUwgdmlzdWFsaXphdGlvbiBvYmplY3QgdG8gaGF2ZSBhIGN1c3RvbSBET00gYXR0cmlidXRlcywgd2hpY2ggaXMgdXNlZnVsXG4gICAqIHdoZW4geW91IHdhbnQgdG8gZG8gdW5pdCBvciBlbmQtdG8tZW5kIHRlc3RpbmcuIEF0dHJpYnV0ZXMgY29uZmlndXJhdGlvbiBvYmplY3QgaGFzIHRoZSBmb2xsb3dpbmcgc3RydWN0dXJlOlxuICAgKlxuICAgKiBgYGBcbiAgICoge1xuICAgKiBcXFtzZWxlY3RvclN0cmluZ106IHtcbiAgICogICAgIFxcW2F0dHJpYnV0ZU5hbWVdOiBhdHRyaWJ1dGUgY29uc3RhbnQgdmFsdWUgb3IgYWNjZXNzb3IgZnVuY3Rpb25cbiAgICogIH1cbiAgICogfVxuICAgKiBgYGBcbiAgICogZS5nLjpcbiAgICogYGBgXG4gICAqIHtcbiAgICogXFxbQXJlYS5zZWxlY3RvcnMuYXJlYV06IHtcbiAgICogICAgXCJ0ZXN0LXZhbHVlXCI6IGQgPT4gZC52YWx1ZVxuICAgKiAgfVxuICAgKiB9XG4gICAqIGBgYCAqL1xuICBASW5wdXQoKSBhdHRyaWJ1dGVzPzoge1xuICAgIFtzZWxlY3Rvcjogc3RyaW5nXToge1xuICAgICAgW2F0dHI6IHN0cmluZ106IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCAoKGRhdHVtOiBhbnkpID0+IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4pO1xuICAgIH07XG4gIH1cblxuICAvKiogQW5pbWF0aW9uIGR1cmF0aW9uIHdoZW4gdGhlIG1hcCBpcyBhdXRvbWF0aWNhbGx5IHBhbm5pbmcgb3Igem9vbWluZyB0byBhIHBvaW50IG9yIGFyZWEuIERlZmF1bHQ6IGAxNTAwYCBtcyAqL1xuICBASW5wdXQoKSBmbHlUb0R1cmF0aW9uPzogbnVtYmVyXG5cbiAgLyoqIFBhZGRpbmcgdG8gYmUgdXNlZCB3aGVuIHRoZSBgZml0Vmlld2AgZnVuY3Rpb24gaGFzIGJlZW4gY2FsbGVkLiBUaGUgdmFsdWUgaXMgaW4gcGl4ZWxzLiBEZWZhdWx0OiBgWzE1MCwgMTUwXWAgKi9cbiAgQElucHV0KCkgZml0Vmlld1BhZGRpbmc/OiBbbnVtYmVyLCBudW1iZXJdXG5cbiAgLyoqIEFuaW1hdGlvbiBkdXJhdGlvbiBmb3IgdGhlIGBzZXRab29tYCBmdW5jdGlvbi4gRGVmYXVsdDogYDgwMGAgbXMgKi9cbiAgQElucHV0KCkgem9vbUR1cmF0aW9uPzogbnVtYmVyXG5cbiAgLyoqIERlZmF1bHQgYm91bmRzIHRoYXQgd2lsbCBiZSBhcHBsaWVkIG9uIHRoZSBmaXJzdCBtYXAgcmVuZGVyIGlmIHRoZSBib3VuZHMgcHJvcGVydHkgaXMgbm90IHNldC4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgaW5pdGlhbEJvdW5kcz86IEJvdW5kc1xuXG4gIC8qKiBGb3JjZSBzZXQgbWFwIGJvdW5kcyBvbiBjb25maWcgYW5kIGRhdGEgdXBkYXRlcy4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgZml0Qm91bmRzT25VcGRhdGU/OiBCb3VuZHNcblxuICAvKiogRml0IHRoZSB2aWV3IHRvIGNvbnRhaW4gdGhlIGRhdGEgcG9pbnRzIG9uIG1hcCBpbml0aWFsaXphdGlvbi4gRGVmYXVsdDogYHRydWVgICovXG4gIEBJbnB1dCgpIGZpdFZpZXdPbkluaXQ/OiBib29sZWFuXG5cbiAgLyoqIEZpdCB0aGUgdmlldyB0byBjb250YWluIHRoZSBkYXRhIHBvaW50cyBvbiBtYXAgY29uZmlnIGFuZCBkYXRhIHVwZGF0ZXMuIERlZmF1bHQ6IGBmYWxzZWAgKi9cbiAgQElucHV0KCkgZml0Vmlld09uVXBkYXRlPzogYm9vbGVhblxuXG4gIC8qKiBNYXBMaWJyZSBTdHlsZVNwZWNpZmljYXRpb24gc2V0dGluZ3MuIERlZmF1bHQ6IGBNYXBMaWJyZUFyY3RpY0xpZ2h0YCAqL1xuICBASW5wdXQoKSBzdHlsZTogU3R5bGVTcGVjaWZpY2F0aW9uIHwgc3RyaW5nXG5cbiAgLyoqIE1hcExpYnJlIFN0eWxlU3BlY2lmaWNhdGlvbiBzZXR0aW5ncyBmb3IgZGFyayB0aGVtZS4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgc3R5bGVEYXJrVGhlbWU6IFN0eWxlU3BlY2lmaWNhdGlvbiB8IHN0cmluZ1xuXG4gIC8qKiBUaWxlIHNlcnZlciBhY2Nlc3MgdG9rZW4gb3IgQVBJIGtleS4gRGVmYXVsdDogYCcnYCAqL1xuICBASW5wdXQoKSBhY2Nlc3NUb2tlbj86IHN0cmluZ1xuXG4gIC8qKiBBcnJheSBvZiBhdHRyaWJ1dGlvbiBsYWJlbHMuIERlZmF1bHQ6IGBbJzxhIGhyZWY9XCJodHRwczovL3d3dy5vcGVuc3RyZWV0bWFwLm9yZy9jb3B5cmlnaHRcIiB0YXJnZXQ9XCJfYmxhbmtcIj5PcGVuU3RyZWV0TWFwIGNvbnRyaWJ1dG9yczwvYT4nXWAgKi9cbiAgQElucHV0KCkgYXR0cmlidXRpb24/OiBzdHJpbmdbXVxuXG4gIC8qKiBGdW5jdGlvbiB0byBiZSBjYWxsZWQgYWZ0ZXIgdGhlIG1hcCdzIGFzeW5jIGluaXRpYWxpemF0aW9uIGlzIGRvbmUuIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIG9uTWFwSW5pdGlhbGl6ZWQ/OiAoKCkgPT4gdm9pZClcblxuICAvKiogTWFwIE1vdmUgLyBab29tIHVuaWZpZWQgY2FsbGJhY2sgZnVuY3Rpb24uIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIG9uTWFwTW92ZVpvb20/OiAoKHsgbWFwQ2VudGVyLCB6b29tTGV2ZWwsIGJvdW5kcyB9OiBNYXBab29tU3RhdGUpID0+IHZvaWQpXG5cbiAgLyoqIE1hcCBNb3ZlIFN0YXJ0IGNhbGxiYWNrIGZ1bmN0aW9uLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBvbk1hcE1vdmVTdGFydD86ICgoeyBtYXBDZW50ZXIsIHpvb21MZXZlbCwgYm91bmRzIH06IE1hcFpvb21TdGF0ZSkgPT4gdm9pZClcblxuICAvKiogTWFwIE1vdmUgRW5kIGNhbGxiYWNrIGZ1bmN0aW9uLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBvbk1hcE1vdmVFbmQ/OiAoKHsgbWFwQ2VudGVyLCB6b29tTGV2ZWwsIGJvdW5kcyB9OiBNYXBab29tU3RhdGUpID0+IHZvaWQpXG5cbiAgLyoqIE1hcCBab29tIFN0YXJ0IGNhbGxiYWNrIGZ1bmN0aW9uLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBvbk1hcFpvb21TdGFydD86ICgoeyBtYXBDZW50ZXIsIHpvb21MZXZlbCwgYm91bmRzIH06IE1hcFpvb21TdGF0ZSkgPT4gdm9pZClcblxuICAvKiogTWFwIFpvb20gRW5kIGNhbGxiYWNrIGZ1bmN0aW9uLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBvbk1hcFpvb21FbmQ/OiAoKHsgbWFwQ2VudGVyLCB6b29tTGV2ZWwsIGJvdW5kcyB9OiBNYXBab29tU3RhdGUpID0+IHZvaWQpXG5cbiAgLyoqIE1hcCBab29tIEVuZCBjYWxsYmFjayBmdW5jdGlvbi4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgb25NYXBDbGljaz86ICgoeyBtYXBDZW50ZXIsIHpvb21MZXZlbCwgYm91bmRzIH06IE1hcFpvb21TdGF0ZSkgPT4gdm9pZClcblxuICAvKiogUG9pbnQgbG9uZ2l0dWRlIGFjY2Vzc29yIGZ1bmN0aW9uLiBEZWZhdWx0OiBgZCA9PiBkLmxvbmdpdHVkZWAgKi9cbiAgQElucHV0KCkgcG9pbnRMb25naXR1ZGU/OiBOdW1lcmljQWNjZXNzb3I8UG9pbnREYXR1bT5cblxuICAvKiogUG9pbnQgbGF0aXR1ZGUgYWNjZXNzb3IgZnVuY3Rpb24uIERlZmF1bHQ6IGBkID0+IGQubGF0aXR1ZGVgICovXG4gIEBJbnB1dCgpIHBvaW50TGF0aXR1ZGU/OiBOdW1lcmljQWNjZXNzb3I8UG9pbnREYXR1bT5cblxuICAvKiogUG9pbnQgaWQgYWNjZXNzb3IgZnVuY3Rpb24gb3IgY29uc3RhbnQgdmFsdWUuIERlZmF1bHQ6IGBkID0+IGQuaWRgICovXG4gIEBJbnB1dCgpIHBvaW50SWQ/OiBTdHJpbmdBY2Nlc3NvcjxQb2ludERhdHVtPlxuXG4gIC8qKiBQb2ludCBzaGFwZSBhY2Nlc3NvciBmdW5jdGlvbiBvciBjb25zdGFudCB2YWx1ZS4gRGVmYXVsdDogYGQgPT4gZC5zaGFwZWAgKi9cbiAgQElucHV0KCkgcG9pbnRTaGFwZT86IFN0cmluZ0FjY2Vzc29yPFBvaW50RGF0dW0+XG5cbiAgLyoqIFBvaW50IGNvbG9yIGFjY2Vzc29yIGZ1bmN0aW9uIG9yIGNvbnN0YW50IHZhbHVlLiBEZWZhdWx0OiBgZCA9PiBkLmNvbG9yYCAqL1xuICBASW5wdXQoKSBwb2ludENvbG9yPzogQ29sb3JBY2Nlc3NvcjxQb2ludERhdHVtPlxuXG4gIC8qKiBQb2ludCByYWRpdXMgYWNjZXNzb3IgZnVuY3Rpb24gb3IgY29uc3RhbnQgdmFsdWUuIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIHBvaW50UmFkaXVzPzogTnVtZXJpY0FjY2Vzc29yPExlYWZsZXRNYXBQb2ludERhdHVtPFBvaW50RGF0dW0+PlxuXG4gIC8qKiBQb2ludCBpbm5lciBsYWJlbCBhY2Nlc3NvciBmdW5jdGlvbi4gRGVmYXVsdDogYGQgPT4gZC5wb2ludF9jb3VudCA/PyAnJ2AgKi9cbiAgQElucHV0KCkgcG9pbnRMYWJlbD86IFN0cmluZ0FjY2Vzc29yPExlYWZsZXRNYXBQb2ludERhdHVtPFBvaW50RGF0dW0+PlxuXG4gIC8qKiBQb2ludCBib3R0b20gbGFiZWwgYWNjZXNzb3IgZnVuY3Rpb24uIERlZmF1bHQ6IGAnJ2AgKi9cbiAgQElucHV0KCkgcG9pbnRCb3R0b21MYWJlbD86IFN0cmluZ0FjY2Vzc29yPExlYWZsZXRNYXBQb2ludERhdHVtPFBvaW50RGF0dW0+PlxuXG4gIC8qKiBQb2ludCBjdXJzb3IgdmFsdWUgb3IgYWNjZXNzb3IgZnVuY3Rpb24uIERlZmF1bHQ6IGBudWxsYCAqL1xuICBASW5wdXQoKSBwb2ludEN1cnNvcj86IFN0cmluZ0FjY2Vzc29yPExlYWZsZXRNYXBQb2ludERhdHVtPFBvaW50RGF0dW0+PlxuXG4gIC8qKiBTZXQgc2VsZWN0ZWQgcG9pbnQgYnkgaXRzIHVuaXF1ZSBpZC4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgc2VsZWN0ZWRQb2ludElkPzogc3RyaW5nXG5cbiAgLyoqIENsdXN0ZXIgY29sb3IgYWNjZXNzb3IgZnVuY3Rpb24gb3IgY29uc3RhbnQgdmFsdWUuIERlZmF1bHQ6IGB1bmRlZmluZWRgICAqL1xuICBASW5wdXQoKSBjbHVzdGVyQ29sb3I/OiBDb2xvckFjY2Vzc29yPFBvaW50RGF0dW0+XG5cbiAgLyoqIENsdXN0ZXIgcmFkaXVzIGFjY2Vzc29yIGZ1bmN0aW9uIG9yIGNvbnN0YW50IHZhbHVlLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAgKi9cbiAgQElucHV0KCkgY2x1c3RlclJhZGl1cz86IE51bWVyaWNBY2Nlc3NvcjxMZWFmbGV0TWFwQ2x1c3RlckRhdHVtPFBvaW50RGF0dW0+PlxuXG4gIC8qKiBDbHVzdGVyIGlubmVyIGxhYmVsIGFjY2Vzc29yIGZ1bmN0aW9uLiBEZWZhdWx0OiBgZCA9PiBkLnBvaW50X2NvdW50YCAgKi9cbiAgQElucHV0KCkgY2x1c3RlckxhYmVsPzogU3RyaW5nQWNjZXNzb3I8TGVhZmxldE1hcENsdXN0ZXJEYXR1bTxQb2ludERhdHVtPj5cblxuICAvKiogQ2x1c3RlciBib3R0b20gbGFiZWwgYWNjZXNzb3IgZnVuY3Rpb24uIERlZmF1bHQ6IGAnJ2AgKi9cbiAgQElucHV0KCkgY2x1c3RlckJvdHRvbUxhYmVsPzogU3RyaW5nQWNjZXNzb3I8TGVhZmxldE1hcENsdXN0ZXJEYXR1bTxQb2ludERhdHVtPj5cblxuXG4gIC8qKiBUaGUgd2lkdGggb2YgdGhlIGNsdXN0ZXIgcG9pbnQgb3V0bGluZS4gRGVmYXVsdDogYDEuMjVgICovXG4gIEBJbnB1dCgpIGNsdXN0ZXJSaW5nV2lkdGg/OiBudW1iZXJcblxuICAvKiogV2hlbiBjbHVzdGVyIGlzIGV4cGFuZGVkLCBzaG93IGEgYmFja2dyb3VuZCBjaXJjbGUgdG8gYmV0dGVyIHNlcGFyYXRlIHBvaW50cyBmcm9tIHRoZSBiYXNlIG1hcC4gRGVmYXVsdDogYHRydWVgICovXG4gIEBJbnB1dCgpIGNsdXN0ZXJCYWNrZ3JvdW5kPzogYm9vbGVhblxuXG4gIC8qKiBEZWZpbmVzIHdoZXRoZXIgdGhlIGNsdXN0ZXIgc2hvdWxkIGV4cGFuZCBvbiBjbGljayBvciBub3QuIERlZmF1bHQ6IGB0cnVlYCAqL1xuICBASW5wdXQoKSBjbHVzdGVyRXhwYW5kT25DbGljaz86IGJvb2xlYW5cblxuICAvKiogQ2x1c3RlcmluZyBkaXN0YW5jZSBpbiBwaXhlbHMuIFRoaXMgdmFsdWUgd2lsbCBiZSBwYXNzZWQgdG8gU3VwZXJjbHVzdGVyIGFzIHRoZSBgcmFkaXVzYCBwcm9wZXJ0eSBodHRwczovL2dpdGh1Yi5jb20vbWFwYm94L3N1cGVyY2x1c3Rlci4gRGVmYXVsdDogYDU1YCAqL1xuICBASW5wdXQoKSBjbHVzdGVyaW5nRGlzdGFuY2U/OiBudW1iZXJcblxuICAvKiogQSBzaW5nbGUgbWFwIHBvaW50IGNhbiBoYXZlIG11bHRpcGxlIHByb3BlcnRpZXMgZGlzcGxheWVkIGFzIGEgc21hbGwgcGllIGNoYXJ0IChvciBhIGRvbnV0IGNoYXJ0IGZvciBhIGNsdXN0ZXIgb2YgcG9pbnRzKS5cbiAgICogQnkgc2V0dGluZyB0aGUgdmFsdWVzTWFwIGNvbmZpZ3VyYXRpb24geW91IGNhbiBzcGVjaWZ5IGRhdGEgcHJvcGVydGllcyB0aGF0IHNob3VsZCBiZSBtYXBwZWQgdG8gdmFyaW91cyBwaWUgLyBkb251dCBzZWdtZW50cy5cbiAgICpcbiAgICogYGBgXG4gICAqIHtcbiAgICogXFxba2V5IGluIGtleW9mIERhdHVtXT86IHsgY29sb3I6IHN0cmluZywgY2xhc3NOYW1lPzogc3RyaW5nIH1cbiAgICogfVxuICAgKiBgYGBcbiAgICogZS5nLjpcbiAgICogYGBgXG4gICAqIHtcbiAgICogXFxoZWFsdGh5OiB7IGNvbG9yOiAnZ3JlZW4nIH0sXG4gICAqIFxcd2FybmluZzogeyBjb2xvcjogJ29yYW5nZScgfSxcbiAgICogXFxkYW5nZXI6IHsgY29sb3I6ICdyZWQnIH1cbiAgICogfVxuICAgKiBgYGBcbiAgICogd2hlcmUgZXZlcnkgZGF0YSBwb2ludCBoYXMgdGhlIGBoZWFsdGh5YCwgYHdhcm5pbmdgIGFuZCBgZGFuZ2VyYCBudW1lcmljYWwgb3IgYm9vbGVhbiBwcm9wZXJ0eS4gKi9cbiAgQElucHV0KCkgdmFsdWVzTWFwPzogTGVhZmxldE1hcFBvaW50U3R5bGVzPFBvaW50RGF0dW0+XG5cbiAgLyoqIEEgVG9wb0pTT04gR2VvbWV0cnkgbGF5ZXIgdG8gYmUgZGlzcGxheWVkIG9uIHRvcCBvZiB0aGUgbWFwLiBTdXBwb3J0cyBmaWxsIGFuZCBzdHJva2UgKi9cbiAgQElucHV0KCkgdG9wb0pTT05MYXllcj86IHtcbiAgICBzb3VyY2VzOiBhbnk7XG4gICAgZmVhdHVyZU5hbWU/OiBzdHJpbmc7XG4gICAgZmlsbFByb3BlcnR5Pzogc3RyaW5nO1xuICAgIHN0cm9rZVByb3BlcnR5Pzogc3RyaW5nO1xuICAgIGZpbGxPcGFjaXR5PzogbnVtYmVyO1xuICAgIHN0cm9rZU9wYWNpdHk/OiBudW1iZXI7XG4gICAgc3Ryb2tlV2lkdGg/OiBudW1iZXI7XG4gIH1cblxuICAvKiogVG9vbHRpcCBjb21wb25lbnQuIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIHRvb2x0aXA/OiBUb29sdGlwXG5cbiAgLyoqIEZsb3cgc291cmNlIHBvaW50IGxvbmdpdHVkZSBhY2Nlc3NvciBmdW5jdGlvbiBvciB2YWx1ZS4gRGVmYXVsdDouYGYgPT4gZi5zb3VyY2VMb25naXR1ZGVgICovXG4gIEBJbnB1dCgpIHNvdXJjZUxvbmdpdHVkZT86IE51bWVyaWNBY2Nlc3NvcjxGbG93RGF0dW0+XG4gIC8qKiBGbG93IHNvdXJjZSBwb2ludCBsYXRpdHVkZSBhY2Nlc3NvciBmdW5jdGlvbiBvciB2YWx1ZS4gRGVmYXVsdDogYGYgPT4gZi5zb3VyY2VMYXRpdHVkZWAgKi9cbiAgQElucHV0KCkgc291cmNlTGF0aXR1ZGU/OiBOdW1lcmljQWNjZXNzb3I8Rmxvd0RhdHVtPlxuICAvKiogRmxvdyB0YXJnZXQgcG9pbnQgbG9uZ2l0dWRlIGFjY2Vzc29yIGZ1bmN0aW9uIG9yIHZhbHVlLiBEZWZhdWx0OiBgZiA9PiBmLnRhcmdldExvbmdpdHVkZWAgKi9cbiAgQElucHV0KCkgdGFyZ2V0TG9uZ2l0dWRlPzogTnVtZXJpY0FjY2Vzc29yPEZsb3dEYXR1bT5cbiAgLyoqIEZsb3cgdGFyZ2V0IHBvaW50IGxhdGl0dWRlIGFjY2Vzc29yIGZ1bmN0aW9uIG9yIHZhbHVlLiBEZWZhdWx0OiBgZiA9PiBmLnRhcmdldExhdGl0dWRlYCAqL1xuICBASW5wdXQoKSB0YXJnZXRMYXRpdHVkZT86IE51bWVyaWNBY2Nlc3NvcjxGbG93RGF0dW0+XG4gIC8qKiBGbG93IHNvdXJjZSBwb2ludCByYWRpdXMgYWNjZXNzb3IgZnVuY3Rpb24gb3IgdmFsdWUuIERlZmF1bHQ6IGAzYCAqL1xuICBASW5wdXQoKSBzb3VyY2VQb2ludFJhZGl1cz86IE51bWVyaWNBY2Nlc3NvcjxGbG93RGF0dW0+XG4gIC8qKiBTb3VyY2UgcG9pbnQgY29sb3IgYWNjZXNzb3IgZnVuY3Rpb24gb3IgdmFsdWUuIERlZmF1bHQ6IGAnIzg4OTE5ZidgICovXG4gIEBJbnB1dCgpIHNvdXJjZVBvaW50Q29sb3I/OiBDb2xvckFjY2Vzc29yPEZsb3dEYXR1bT5cbiAgLyoqIEZsb3cgcGFydGljbGUgY29sb3IgYWNjZXNzb3IgZnVuY3Rpb24gb3IgdmFsdWUuIERlZmF1bHQ6IGAnIzk0OWRhZCdgICovXG4gIEBJbnB1dCgpIGZsb3dQYXJ0aWNsZUNvbG9yPzogQ29sb3JBY2Nlc3NvcjxGbG93RGF0dW0+XG4gIC8qKiBGbG93IHBhcnRpY2xlIHJhZGl1cyBhY2Nlc3NvciBmdW5jdGlvbiBvciB2YWx1ZS4gRGVmYXVsdDogYDEuMWAgKi9cbiAgQElucHV0KCkgZmxvd1BhcnRpY2xlUmFkaXVzPzogTnVtZXJpY0FjY2Vzc29yPEZsb3dEYXR1bT5cbiAgLyoqIEZsb3cgcGFydGljbGUgc3BlZWQgYWNjZXNzb3IgZnVuY3Rpb24gb3IgdmFsdWUgaW4gYW5ndWxhciBkZWdyZWVzLiBEZWZhdWx0OiBgMC4wN2AgKi9cbiAgQElucHV0KCkgZmxvd1BhcnRpY2xlU3BlZWQ/OiBOdW1lcmljQWNjZXNzb3I8Rmxvd0RhdHVtPlxuICAvKiogRmxvdyBwYXJ0aWNsZSBkZW5zaXR5IGFjY2Vzc29yIGZ1bmN0aW9uIG9yIHZhbHVlIG9uIHRoZSByYW5nZSBvZiBbMCwgMV0uIERlZmF1bHQ6IGAwLjZgICovXG4gIEBJbnB1dCgpIGZsb3dQYXJ0aWNsZURlbnNpdHk/OiBOdW1lcmljQWNjZXNzb3I8Rmxvd0RhdHVtPlxuXG4gIC8vIEV2ZW50c1xuICAvKiogRmxvdyBzb3VyY2UgcG9pbnQgY2xpY2sgY2FsbGJhY2sgZnVuY3Rpb24uIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIG9uU291cmNlUG9pbnRDbGljaz86ICgoZjogRmxvd0RhdHVtLCB4OiBudW1iZXIsIHk6IG51bWJlciwgZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHVua25vd24pXG4gIC8qKiBGbG93IHNvdXJjZSBwb2ludCBtb3VzZSBvdmVyIGNhbGxiYWNrIGZ1bmN0aW9uLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBvblNvdXJjZVBvaW50TW91c2VFbnRlcj86ICgoZjogRmxvd0RhdHVtLCB4OiBudW1iZXIsIHk6IG51bWJlciwgZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHVua25vd24pXG4gIC8qKiBGbG93IHNvdXJjZSBwb2ludCBtb3VzZSBsZWF2ZSBjYWxsYmFjayBmdW5jdGlvbi4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgb25Tb3VyY2VQb2ludE1vdXNlTGVhdmU/OiAoKGY6IEZsb3dEYXR1bSwgZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHVua25vd24pXG5cbiAgLyoqIERhdGEgKi9cbiAgQElucHV0KCkgZGF0YT86IHsgcG9pbnRzOiBQb2ludERhdHVtW107IGZsb3dzOiBGbG93RGF0dW1bXSB9XG5cbiAgY29tcG9uZW50OiBMZWFmbGV0Rmxvd01hcDxQb2ludERhdHVtLCBGbG93RGF0dW0+IHwgdW5kZWZpbmVkXG5cbiAgbmdBZnRlclZpZXdJbml0ICgpOiB2b2lkIHtcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLmdldENvbmZpZygpXG4gICAgdGhpcy5jb21wb25lbnQgPSBuZXcgTGVhZmxldEZsb3dNYXA8UG9pbnREYXR1bSwgRmxvd0RhdHVtPih0aGlzLmNvbnRhaW5lclJlZi5uYXRpdmVFbGVtZW50LCBjb25maWcsIHRoaXMuZGF0YSlcbiAgfVxuXG4gIG5nT25DaGFuZ2VzIChjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXMuZGF0YSkge1xuICAgICAgdGhpcy5jb21wb25lbnQ/LnNldERhdGEodGhpcy5kYXRhKVxuICAgIH1cbiAgICB0aGlzLmNvbXBvbmVudD8uc2V0Q29uZmlnKHRoaXMuZ2V0Q29uZmlnKCkpXG4gIH1cblxuICBwcml2YXRlIGdldENvbmZpZyAoKTogTGVhZmxldEZsb3dNYXBDb25maWdJbnRlcmZhY2U8UG9pbnREYXR1bSwgRmxvd0RhdHVtPiB7XG4gICAgY29uc3QgeyB3aWR0aCwgaGVpZ2h0LCBkdXJhdGlvbiwgZXZlbnRzLCBhdHRyaWJ1dGVzLCBmbHlUb0R1cmF0aW9uLCBmaXRWaWV3UGFkZGluZywgem9vbUR1cmF0aW9uLCBpbml0aWFsQm91bmRzLCBmaXRCb3VuZHNPblVwZGF0ZSwgZml0Vmlld09uSW5pdCwgZml0Vmlld09uVXBkYXRlLCBhY2Nlc3NUb2tlbiwgc3R5bGUsIHN0eWxlRGFya1RoZW1lLCBhdHRyaWJ1dGlvbiwgb25NYXBJbml0aWFsaXplZCwgb25NYXBNb3ZlWm9vbSwgb25NYXBNb3ZlU3RhcnQsIG9uTWFwTW92ZUVuZCwgb25NYXBab29tU3RhcnQsIG9uTWFwWm9vbUVuZCwgb25NYXBDbGljaywgcG9pbnRMb25naXR1ZGUsIHBvaW50TGF0aXR1ZGUsIHBvaW50SWQsIHBvaW50U2hhcGUsIHBvaW50Q29sb3IsIHBvaW50UmFkaXVzLCBwb2ludExhYmVsLCBwb2ludEJvdHRvbUxhYmVsLCBwb2ludEN1cnNvciwgc2VsZWN0ZWRQb2ludElkLCBjbHVzdGVyQ29sb3IsIGNsdXN0ZXJSYWRpdXMsIGNsdXN0ZXJMYWJlbCwgY2x1c3RlckJvdHRvbUxhYmVsLCBjbHVzdGVyUmluZ1dpZHRoLCBjbHVzdGVyQmFja2dyb3VuZCwgY2x1c3RlckV4cGFuZE9uQ2xpY2ssIGNsdXN0ZXJpbmdEaXN0YW5jZSwgdmFsdWVzTWFwLCB0b3BvSlNPTkxheWVyLCB0b29sdGlwLCBzb3VyY2VMb25naXR1ZGUsIHNvdXJjZUxhdGl0dWRlLCB0YXJnZXRMb25naXR1ZGUsIHRhcmdldExhdGl0dWRlLCBzb3VyY2VQb2ludFJhZGl1cywgc291cmNlUG9pbnRDb2xvciwgZmxvd1BhcnRpY2xlQ29sb3IsIGZsb3dQYXJ0aWNsZVJhZGl1cywgZmxvd1BhcnRpY2xlU3BlZWQsIGZsb3dQYXJ0aWNsZURlbnNpdHksIG9uU291cmNlUG9pbnRDbGljaywgb25Tb3VyY2VQb2ludE1vdXNlRW50ZXIsIG9uU291cmNlUG9pbnRNb3VzZUxlYXZlIH0gPSB0aGlzXG4gICAgY29uc3QgY29uZmlnID0geyB3aWR0aCwgaGVpZ2h0LCBkdXJhdGlvbiwgZXZlbnRzLCBhdHRyaWJ1dGVzLCBmbHlUb0R1cmF0aW9uLCBmaXRWaWV3UGFkZGluZywgem9vbUR1cmF0aW9uLCBpbml0aWFsQm91bmRzLCBmaXRCb3VuZHNPblVwZGF0ZSwgZml0Vmlld09uSW5pdCwgZml0Vmlld09uVXBkYXRlLCBhY2Nlc3NUb2tlbiwgc3R5bGUsIHN0eWxlRGFya1RoZW1lLCBhdHRyaWJ1dGlvbiwgb25NYXBJbml0aWFsaXplZCwgb25NYXBNb3ZlWm9vbSwgb25NYXBNb3ZlU3RhcnQsIG9uTWFwTW92ZUVuZCwgb25NYXBab29tU3RhcnQsIG9uTWFwWm9vbUVuZCwgb25NYXBDbGljaywgcG9pbnRMb25naXR1ZGUsIHBvaW50TGF0aXR1ZGUsIHBvaW50SWQsIHBvaW50U2hhcGUsIHBvaW50Q29sb3IsIHBvaW50UmFkaXVzLCBwb2ludExhYmVsLCBwb2ludEJvdHRvbUxhYmVsLCBwb2ludEN1cnNvciwgc2VsZWN0ZWRQb2ludElkLCBjbHVzdGVyQ29sb3IsIGNsdXN0ZXJSYWRpdXMsIGNsdXN0ZXJMYWJlbCwgY2x1c3RlckJvdHRvbUxhYmVsLCBjbHVzdGVyUmluZ1dpZHRoLCBjbHVzdGVyQmFja2dyb3VuZCwgY2x1c3RlckV4cGFuZE9uQ2xpY2ssIGNsdXN0ZXJpbmdEaXN0YW5jZSwgdmFsdWVzTWFwLCB0b3BvSlNPTkxheWVyLCB0b29sdGlwLCBzb3VyY2VMb25naXR1ZGUsIHNvdXJjZUxhdGl0dWRlLCB0YXJnZXRMb25naXR1ZGUsIHRhcmdldExhdGl0dWRlLCBzb3VyY2VQb2ludFJhZGl1cywgc291cmNlUG9pbnRDb2xvciwgZmxvd1BhcnRpY2xlQ29sb3IsIGZsb3dQYXJ0aWNsZVJhZGl1cywgZmxvd1BhcnRpY2xlU3BlZWQsIGZsb3dQYXJ0aWNsZURlbnNpdHksIG9uU291cmNlUG9pbnRDbGljaywgb25Tb3VyY2VQb2ludE1vdXNlRW50ZXIsIG9uU291cmNlUG9pbnRNb3VzZUxlYXZlIH1cbiAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMoY29uZmlnKSBhcyAoa2V5b2YgTGVhZmxldEZsb3dNYXBDb25maWdJbnRlcmZhY2U8UG9pbnREYXR1bSwgRmxvd0RhdHVtPilbXVxuICAgIGtleXMuZm9yRWFjaChrZXkgPT4geyBpZiAoY29uZmlnW2tleV0gPT09IHVuZGVmaW5lZCkgZGVsZXRlIGNvbmZpZ1trZXldIH0pXG5cbiAgICByZXR1cm4gY29uZmlnXG4gIH1cbn1cbiJdfQ==
157
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVhZmxldC1mbG93LW1hcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvaHRtbC1jb21wb25lbnRzL2xlYWZsZXQtZmxvdy1tYXAvbGVhZmxldC1mbG93LW1hcC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBaUIsS0FBSyxFQUFpQixTQUFTLEVBQWMsTUFBTSxlQUFlLENBQUE7QUFDckcsT0FBTyxFQUNMLGNBQWMsR0FjZixNQUFNLFlBQVksQ0FBQTtBQUVuQixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxZQUFZLENBQUE7O0FBUzdDLE1BQU0sT0FBTywwQkFBMEI7SUE4T3JDLGVBQWU7UUFDYixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUE7UUFDL0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLGNBQWMsQ0FBd0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNoSCxDQUFDO0lBRUQsV0FBVyxDQUFFLE9BQXNCOztRQUNqQyxJQUFJLE9BQU8sQ0FBQyxJQUFJLEVBQUU7WUFDaEIsTUFBQSxJQUFJLENBQUMsU0FBUywwQ0FBRSxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO1NBQ25DO1FBQ0QsTUFBQSxJQUFJLENBQUMsU0FBUywwQ0FBRSxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUE7SUFDN0MsQ0FBQztJQUVPLFNBQVM7UUFDZixNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLGNBQWMsRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLGNBQWMsRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsb0JBQW9CLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLGlCQUFpQixFQUFFLG1CQUFtQixFQUFFLGtCQUFrQixFQUFFLHVCQUF1QixFQUFFLHVCQUF1QixFQUFFLEdBQUcsSUFBSSxDQUFBO1FBQzMzQixNQUFNLE1BQU0sR0FBRyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFFLGNBQWMsRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLGtCQUFrQixFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxrQkFBa0IsRUFBRSxpQkFBaUIsRUFBRSxtQkFBbUIsRUFBRSxrQkFBa0IsRUFBRSx1QkFBdUIsRUFBRSx1QkFBdUIsRUFBRSxDQUFBO1FBQzczQixNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBbUUsQ0FBQTtRQUNsRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsSUFBSSxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssU0FBUztZQUFFLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFFMUUsT0FBTyxNQUFNLENBQUE7SUFDZixDQUFDOzt3SEFqUVUsMEJBQTBCOzRHQUExQiwwQkFBMEIsbTVEQUYxQixDQUFDLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSwwQkFBMEIsRUFBRSxDQUFDLDBKQUh6RSxrRUFBa0U7NEZBS2pFLDBCQUEwQjtrQkFQdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsc0JBQXNCO29CQUNoQyxRQUFRLEVBQUUsa0VBQWtFO29CQUM1RSxNQUFNLEVBQUUsQ0FBQyx1RkFBdUYsQ0FBQztvQkFDakcsZ0RBQWdEO29CQUNoRCxTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLDRCQUE0QixFQUFFLENBQUM7aUJBQ3BGOzhCQU00QyxZQUFZO3NCQUF0RCxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBR2hDLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxNQUFNO3NCQUFkLEtBQUs7Z0JBR0csUUFBUTtzQkFBaEIsS0FBSztnQkFtQkcsTUFBTTtzQkFBZCxLQUFLO2dCQXdCRyxVQUFVO3NCQUFsQixLQUFLO2dCQU9HLGFBQWE7c0JBQXJCLEtBQUs7Z0JBR0csY0FBYztzQkFBdEIsS0FBSztnQkFHRyxZQUFZO3NCQUFwQixLQUFLO2dCQUdHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBR0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUdHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBR0csZUFBZTtzQkFBdkIsS0FBSztnQkFHRyxLQUFLO3NCQUFiLEtBQUs7Z0JBR0csY0FBYztzQkFBdEIsS0FBSztnQkFHRyxXQUFXO3NCQUFuQixLQUFLO2dCQUdHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBR0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUdHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBR0csY0FBYztzQkFBdEIsS0FBSztnQkFHRyxZQUFZO3NCQUFwQixLQUFLO2dCQUdHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBR0csWUFBWTtzQkFBcEIsS0FBSztnQkFHRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBR0csYUFBYTtzQkFBckIsS0FBSztnQkFHRyxPQUFPO3NCQUFmLEtBQUs7Z0JBR0csVUFBVTtzQkFBbEIsS0FBSztnQkFHRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBR0csVUFBVTtzQkFBbEIsS0FBSztnQkFHRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBR0csV0FBVztzQkFBbkIsS0FBSztnQkFHRyxlQUFlO3NCQUF2QixLQUFLO2dCQUdHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBR0csYUFBYTtzQkFBckIsS0FBSztnQkFHRyxZQUFZO3NCQUFwQixLQUFLO2dCQUdHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFJRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBR0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUdHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFHRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBbUJHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBR0csYUFBYTtzQkFBckIsS0FBSztnQkFXRyxPQUFPO3NCQUFmLEtBQUs7Z0JBR0csZUFBZTtzQkFBdkIsS0FBSztnQkFFRyxjQUFjO3NCQUF0QixLQUFLO2dCQUVHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBRUcsY0FBYztzQkFBdEIsS0FBSztnQkFFRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBRUcsZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUVHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFFRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBRUcsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUVHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFJRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBRUcsdUJBQXVCO3NCQUEvQixLQUFLO2dCQUVHLHVCQUF1QjtzQkFBL0IsS0FBSztnQkFHRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEFmdGVyVmlld0luaXQsIElucHV0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGQsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHtcbiAgTGVhZmxldEZsb3dNYXAsXG4gIExlYWZsZXRGbG93TWFwQ29uZmlnSW50ZXJmYWNlLFxuICBWaXNFdmVudFR5cGUsXG4gIFZpc0V2ZW50Q2FsbGJhY2ssXG4gIEJvdW5kcyxcbiAgTWFwWm9vbVN0YXRlLFxuICBOdW1lcmljQWNjZXNzb3IsXG4gIFN0cmluZ0FjY2Vzc29yLFxuICBDb2xvckFjY2Vzc29yLFxuICBMZWFmbGV0TWFwUG9pbnREYXR1bSxcbiAgTGVhZmxldE1hcFBvaW50U3R5bGVzLFxuICBUb29sdGlwLFxuICBMZWFmbGV0TWFwQ2x1c3RlckRhdHVtLFxuICBHZW5lcmljRGF0YVJlY29yZCxcbn0gZnJvbSAnQHVub3Zpcy90cydcbmltcG9ydCB7IFN0eWxlU3BlY2lmaWNhdGlvbiB9IGZyb20gJ21hcGxpYnJlLWdsJ1xuaW1wb3J0IHsgVmlzQ29yZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvcmUnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3Zpcy1sZWFmbGV0LWZsb3ctbWFwJyxcbiAgdGVtcGxhdGU6ICc8ZGl2ICNjb250YWluZXIgY2xhc3M9XCJ1bm92aXMtbGVhZmxldC1mbG93LW1hcC1jb250YWluZXJcIj48L2Rpdj4nLFxuICBzdHlsZXM6IFsnLnVub3Zpcy1sZWFmbGV0LWZsb3ctbWFwLWNvbnRhaW5lciB7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfSddLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdXNlLWJlZm9yZS1kZWZpbmVcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBWaXNDb3JlQ29tcG9uZW50LCB1c2VFeGlzdGluZzogVmlzTGVhZmxldEZsb3dNYXBDb21wb25lbnQgfV0sXG59KVxuZXhwb3J0IGNsYXNzIFZpc0xlYWZsZXRGbG93TWFwQ29tcG9uZW50PFxuXG4gIFBvaW50RGF0dW0gZXh0ZW5kcyBHZW5lcmljRGF0YVJlY29yZCxcbiAgRmxvd0RhdHVtIGV4dGVuZHMgR2VuZXJpY0RhdGFSZWNvcmQsXG4+IGltcGxlbWVudHMgTGVhZmxldEZsb3dNYXBDb25maWdJbnRlcmZhY2U8UG9pbnREYXR1bSwgRmxvd0RhdHVtPiwgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBWaWV3Q2hpbGQoJ2NvbnRhaW5lcicsIHsgc3RhdGljOiBmYWxzZSB9KSBjb250YWluZXJSZWY6IEVsZW1lbnRSZWZcblxuICAvKiogV2lkdGggaW4gcGl4ZWxzIG9yIGluIENTUyB1bml0cy4gQnkgZGVmYXVsdCwgdGhlIG1hcCB3aWxsIGF1dG9tYXRpY2FsbHkgZml0IHRvIHRoZSBzaXplIG9mIHRoZSBwYXJlbnQgZWxlbWVudC4gRGVmYXVsdDogYHVuZGVmaW5lZGAuICovXG4gIEBJbnB1dCgpIHdpZHRoPzogbnVtYmVyIHwgc3RyaW5nXG4gIC8qKiBIZWlnaHQgaW4gcGl4ZWxzIG9yIGluIENTUyB1bml0cy4gQnkgZGVmYXVsdCwgdGhlIG1hcCB3aWxsIGF1dG9tYXRpY2FsbHkgZml0IHRvIHRoZSBzaXplIG9mIHRoZSBwYXJlbnQgZWxlbWVudC4gRGVmYXVsdDogYHVuZGVmaW5lZGAuICovXG4gIEBJbnB1dCgpIGhlaWdodD86IG51bWJlciB8IHN0cmluZ1xuXG4gIC8qKiBBbmltYXRpb24gZHVyYXRpb24gb2YgdGhlIGRhdGEgdXBkYXRlIHRyYW5zaXRpb25zIGluIG1pbGxpc2Vjb25kcy4gRGVmYXVsdDogYDYwMGAgKi9cbiAgQElucHV0KCkgZHVyYXRpb24/OiBudW1iZXJcblxuICAvKiogRXZlbnRzIGNvbmZpZ3VyYXRpb24uIEFuIG9iamVjdCBjb250YWluaW5nIHByb3BlcnRpZXMgaW4gdGhlIGZvbGxvd2luZyBmb3JtYXQ6XG4gICAqXG4gICAqIGBgYFxuICAgKiB7XG4gICAqIFxcW3NlbGVjdG9yU3RyaW5nXToge1xuICAgKiAgICAgXFxbZXZlbnRUeXBlXTogY2FsbGJhY2tGdW5jdGlvblxuICAgKiAgfVxuICAgKiB9XG4gICAqIGBgYFxuICAgKiBlLmcuOlxuICAgKiBgYGBcbiAgICoge1xuICAgKiBcXFtBcmVhLnNlbGVjdG9ycy5hcmVhXToge1xuICAgKiAgICBjbGljazogKGQpID0+IGNvbnNvbGUubG9nKFwiQ2xpY2tlZCBBcmVhXCIsIGQpXG4gICAqICB9XG4gICAqIH1cbiAgICogYGBgICovXG4gIEBJbnB1dCgpIGV2ZW50cz86IHtcbiAgICBbc2VsZWN0b3I6IHN0cmluZ106IHtcbiAgICAgIFtldmVudFR5cGUgaW4gVmlzRXZlbnRUeXBlXT86IFZpc0V2ZW50Q2FsbGJhY2tcbiAgICB9O1xuICB9XG5cbiAgLyoqIFlvdSBjYW4gc2V0IGV2ZXJ5IFNWRyBhbmQgSFRNTCB2aXN1YWxpemF0aW9uIG9iamVjdCB0byBoYXZlIGEgY3VzdG9tIERPTSBhdHRyaWJ1dGVzLCB3aGljaCBpcyB1c2VmdWxcbiAgICogd2hlbiB5b3Ugd2FudCB0byBkbyB1bml0IG9yIGVuZC10by1lbmQgdGVzdGluZy4gQXR0cmlidXRlcyBjb25maWd1cmF0aW9uIG9iamVjdCBoYXMgdGhlIGZvbGxvd2luZyBzdHJ1Y3R1cmU6XG4gICAqXG4gICAqIGBgYFxuICAgKiB7XG4gICAqIFxcW3NlbGVjdG9yU3RyaW5nXToge1xuICAgKiAgICAgXFxbYXR0cmlidXRlTmFtZV06IGF0dHJpYnV0ZSBjb25zdGFudCB2YWx1ZSBvciBhY2Nlc3NvciBmdW5jdGlvblxuICAgKiAgfVxuICAgKiB9XG4gICAqIGBgYFxuICAgKiBlLmcuOlxuICAgKiBgYGBcbiAgICoge1xuICAgKiBcXFtBcmVhLnNlbGVjdG9ycy5hcmVhXToge1xuICAgKiAgICBcInRlc3QtdmFsdWVcIjogZCA9PiBkLnZhbHVlXG4gICAqICB9XG4gICAqIH1cbiAgICogYGBgICovXG4gIEBJbnB1dCgpIGF0dHJpYnV0ZXM/OiB7XG4gICAgW3NlbGVjdG9yOiBzdHJpbmddOiB7XG4gICAgICBbYXR0cjogc3RyaW5nXTogc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbiB8ICgoZGF0dW06IGFueSkgPT4gc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbik7XG4gICAgfTtcbiAgfVxuXG4gIC8qKiBBbmltYXRpb24gZHVyYXRpb24gd2hlbiB0aGUgbWFwIGlzIGF1dG9tYXRpY2FsbHkgcGFubmluZyBvciB6b29taW5nIHRvIGEgcG9pbnQgb3IgYXJlYS4gRGVmYXVsdDogYDE1MDBgIG1zICovXG4gIEBJbnB1dCgpIGZseVRvRHVyYXRpb24/OiBudW1iZXJcblxuICAvKiogUGFkZGluZyB0byBiZSB1c2VkIHdoZW4gdGhlIGBmaXRWaWV3YCBmdW5jdGlvbiBoYXMgYmVlbiBjYWxsZWQuIFRoZSB2YWx1ZSBpcyBpbiBwaXhlbHMuIERlZmF1bHQ6IGBbMTUwLCAxNTBdYCAqL1xuICBASW5wdXQoKSBmaXRWaWV3UGFkZGluZz86IFtudW1iZXIsIG51bWJlcl1cblxuICAvKiogQW5pbWF0aW9uIGR1cmF0aW9uIGZvciB0aGUgYHNldFpvb21gIGZ1bmN0aW9uLiBEZWZhdWx0OiBgODAwYCBtcyAqL1xuICBASW5wdXQoKSB6b29tRHVyYXRpb24/OiBudW1iZXJcblxuICAvKiogRGVmYXVsdCBib3VuZHMgdGhhdCB3aWxsIGJlIGFwcGxpZWQgb24gdGhlIGZpcnN0IG1hcCByZW5kZXIgaWYgdGhlIGJvdW5kcyBwcm9wZXJ0eSBpcyBub3Qgc2V0LiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBpbml0aWFsQm91bmRzPzogQm91bmRzXG5cbiAgLyoqIEZvcmNlIHNldCBtYXAgYm91bmRzIG9uIGNvbmZpZyBhbmQgZGF0YSB1cGRhdGVzLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBmaXRCb3VuZHNPblVwZGF0ZT86IEJvdW5kc1xuXG4gIC8qKiBGaXQgdGhlIHZpZXcgdG8gY29udGFpbiB0aGUgZGF0YSBwb2ludHMgb24gbWFwIGluaXRpYWxpemF0aW9uLiBEZWZhdWx0OiBgdHJ1ZWAgKi9cbiAgQElucHV0KCkgZml0Vmlld09uSW5pdD86IGJvb2xlYW5cblxuICAvKiogRml0IHRoZSB2aWV3IHRvIGNvbnRhaW4gdGhlIGRhdGEgcG9pbnRzIG9uIG1hcCBjb25maWcgYW5kIGRhdGEgdXBkYXRlcy4gRGVmYXVsdDogYGZhbHNlYCAqL1xuICBASW5wdXQoKSBmaXRWaWV3T25VcGRhdGU/OiBib29sZWFuXG5cbiAgLyoqIE1hcExpYnJlIFN0eWxlU3BlY2lmaWNhdGlvbiBzZXR0aW5ncy4gRGVmYXVsdDogYE1hcExpYnJlQXJjdGljTGlnaHRgICovXG4gIEBJbnB1dCgpIHN0eWxlOiBTdHlsZVNwZWNpZmljYXRpb24gfCBzdHJpbmdcblxuICAvKiogTWFwTGlicmUgU3R5bGVTcGVjaWZpY2F0aW9uIHNldHRpbmdzIGZvciBkYXJrIHRoZW1lLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBzdHlsZURhcmtUaGVtZTogU3R5bGVTcGVjaWZpY2F0aW9uIHwgc3RyaW5nXG5cbiAgLyoqIFRpbGUgc2VydmVyIGFjY2VzcyB0b2tlbiBvciBBUEkga2V5LiBEZWZhdWx0OiBgJydgICovXG4gIEBJbnB1dCgpIGFjY2Vzc1Rva2VuPzogc3RyaW5nXG5cbiAgLyoqIEFycmF5IG9mIGF0dHJpYnV0aW9uIGxhYmVscy4gRGVmYXVsdDogYFsnPGEgaHJlZj1cImh0dHBzOi8vd3d3Lm9wZW5zdHJlZXRtYXAub3JnL2NvcHlyaWdodFwiIHRhcmdldD1cIl9ibGFua1wiPk9wZW5TdHJlZXRNYXAgY29udHJpYnV0b3JzPC9hPiddYCAqL1xuICBASW5wdXQoKSBhdHRyaWJ1dGlvbj86IHN0cmluZ1tdXG5cbiAgLyoqIEZ1bmN0aW9uIHRvIGJlIGNhbGxlZCBhZnRlciB0aGUgbWFwJ3MgYXN5bmMgaW5pdGlhbGl6YXRpb24gaXMgZG9uZS4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgb25NYXBJbml0aWFsaXplZD86ICgoKSA9PiB2b2lkKVxuXG4gIC8qKiBNYXAgTW92ZSAvIFpvb20gdW5pZmllZCBjYWxsYmFjayBmdW5jdGlvbi4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgb25NYXBNb3ZlWm9vbT86ICgoeyBtYXBDZW50ZXIsIHpvb21MZXZlbCwgYm91bmRzIH06IE1hcFpvb21TdGF0ZSkgPT4gdm9pZClcblxuICAvKiogTWFwIE1vdmUgU3RhcnQgY2FsbGJhY2sgZnVuY3Rpb24uIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIG9uTWFwTW92ZVN0YXJ0PzogKCh7IG1hcENlbnRlciwgem9vbUxldmVsLCBib3VuZHMgfTogTWFwWm9vbVN0YXRlKSA9PiB2b2lkKVxuXG4gIC8qKiBNYXAgTW92ZSBFbmQgY2FsbGJhY2sgZnVuY3Rpb24uIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIG9uTWFwTW92ZUVuZD86ICgoeyBtYXBDZW50ZXIsIHpvb21MZXZlbCwgYm91bmRzIH06IE1hcFpvb21TdGF0ZSkgPT4gdm9pZClcblxuICAvKiogTWFwIFpvb20gU3RhcnQgY2FsbGJhY2sgZnVuY3Rpb24uIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIG9uTWFwWm9vbVN0YXJ0PzogKCh7IG1hcENlbnRlciwgem9vbUxldmVsLCBib3VuZHMgfTogTWFwWm9vbVN0YXRlKSA9PiB2b2lkKVxuXG4gIC8qKiBNYXAgWm9vbSBFbmQgY2FsbGJhY2sgZnVuY3Rpb24uIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIG9uTWFwWm9vbUVuZD86ICgoeyBtYXBDZW50ZXIsIHpvb21MZXZlbCwgYm91bmRzIH06IE1hcFpvb21TdGF0ZSkgPT4gdm9pZClcblxuICAvKiogTWFwIFpvb20gRW5kIGNhbGxiYWNrIGZ1bmN0aW9uLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBvbk1hcENsaWNrPzogKCh7IG1hcENlbnRlciwgem9vbUxldmVsLCBib3VuZHMgfTogTWFwWm9vbVN0YXRlKSA9PiB2b2lkKVxuXG4gIC8qKiBQb2ludCBsb25naXR1ZGUgYWNjZXNzb3IgZnVuY3Rpb24uIERlZmF1bHQ6IGBkID0+IGQubG9uZ2l0dWRlYCAqL1xuICBASW5wdXQoKSBwb2ludExvbmdpdHVkZT86IE51bWVyaWNBY2Nlc3NvcjxQb2ludERhdHVtPlxuXG4gIC8qKiBQb2ludCBsYXRpdHVkZSBhY2Nlc3NvciBmdW5jdGlvbi4gRGVmYXVsdDogYGQgPT4gZC5sYXRpdHVkZWAgKi9cbiAgQElucHV0KCkgcG9pbnRMYXRpdHVkZT86IE51bWVyaWNBY2Nlc3NvcjxQb2ludERhdHVtPlxuXG4gIC8qKiBQb2ludCBpZCBhY2Nlc3NvciBmdW5jdGlvbiBvciBjb25zdGFudCB2YWx1ZS4gRGVmYXVsdDogYGQgPT4gZC5pZGAgKi9cbiAgQElucHV0KCkgcG9pbnRJZD86IFN0cmluZ0FjY2Vzc29yPFBvaW50RGF0dW0+XG5cbiAgLyoqIFBvaW50IHNoYXBlIGFjY2Vzc29yIGZ1bmN0aW9uIG9yIGNvbnN0YW50IHZhbHVlLiBEZWZhdWx0OiBgZCA9PiBkLnNoYXBlYCAqL1xuICBASW5wdXQoKSBwb2ludFNoYXBlPzogU3RyaW5nQWNjZXNzb3I8UG9pbnREYXR1bT5cblxuICAvKiogUG9pbnQgY29sb3IgYWNjZXNzb3IgZnVuY3Rpb24gb3IgY29uc3RhbnQgdmFsdWUuIERlZmF1bHQ6IGBkID0+IGQuY29sb3JgICovXG4gIEBJbnB1dCgpIHBvaW50Q29sb3I/OiBDb2xvckFjY2Vzc29yPFBvaW50RGF0dW0+XG5cbiAgLyoqIFBvaW50IHJhZGl1cyBhY2Nlc3NvciBmdW5jdGlvbiBvciBjb25zdGFudCB2YWx1ZS4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgcG9pbnRSYWRpdXM/OiBOdW1lcmljQWNjZXNzb3I8TGVhZmxldE1hcFBvaW50RGF0dW08UG9pbnREYXR1bT4+XG5cbiAgLyoqIFBvaW50IGlubmVyIGxhYmVsIGFjY2Vzc29yIGZ1bmN0aW9uLiBEZWZhdWx0OiBgZCA9PiBkLnBvaW50X2NvdW50ID8/ICcnYCAqL1xuICBASW5wdXQoKSBwb2ludExhYmVsPzogU3RyaW5nQWNjZXNzb3I8TGVhZmxldE1hcFBvaW50RGF0dW08UG9pbnREYXR1bT4+XG5cbiAgLyoqIFBvaW50IGJvdHRvbSBsYWJlbCBhY2Nlc3NvciBmdW5jdGlvbi4gRGVmYXVsdDogYCcnYCAqL1xuICBASW5wdXQoKSBwb2ludEJvdHRvbUxhYmVsPzogU3RyaW5nQWNjZXNzb3I8TGVhZmxldE1hcFBvaW50RGF0dW08UG9pbnREYXR1bT4+XG5cbiAgLyoqIFBvaW50IGN1cnNvciB2YWx1ZSBvciBhY2Nlc3NvciBmdW5jdGlvbi4gRGVmYXVsdDogYG51bGxgICovXG4gIEBJbnB1dCgpIHBvaW50Q3Vyc29yPzogU3RyaW5nQWNjZXNzb3I8TGVhZmxldE1hcFBvaW50RGF0dW08UG9pbnREYXR1bT4+XG5cbiAgLyoqIFNldCBzZWxlY3RlZCBwb2ludCBieSBpdHMgdW5pcXVlIGlkLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBzZWxlY3RlZFBvaW50SWQ/OiBzdHJpbmdcblxuICAvKiogQ2x1c3RlciBjb2xvciBhY2Nlc3NvciBmdW5jdGlvbiBvciBjb25zdGFudCB2YWx1ZS4gRGVmYXVsdDogYHVuZGVmaW5lZGAgICovXG4gIEBJbnB1dCgpIGNsdXN0ZXJDb2xvcj86IENvbG9yQWNjZXNzb3I8UG9pbnREYXR1bT5cblxuICAvKiogQ2x1c3RlciByYWRpdXMgYWNjZXNzb3IgZnVuY3Rpb24gb3IgY29uc3RhbnQgdmFsdWUuIERlZmF1bHQ6IGB1bmRlZmluZWRgICAqL1xuICBASW5wdXQoKSBjbHVzdGVyUmFkaXVzPzogTnVtZXJpY0FjY2Vzc29yPExlYWZsZXRNYXBDbHVzdGVyRGF0dW08UG9pbnREYXR1bT4+XG5cbiAgLyoqIENsdXN0ZXIgaW5uZXIgbGFiZWwgYWNjZXNzb3IgZnVuY3Rpb24uIERlZmF1bHQ6IGBkID0+IGQucG9pbnRfY291bnRgICAqL1xuICBASW5wdXQoKSBjbHVzdGVyTGFiZWw/OiBTdHJpbmdBY2Nlc3NvcjxMZWFmbGV0TWFwQ2x1c3RlckRhdHVtPFBvaW50RGF0dW0+PlxuXG4gIC8qKiBDbHVzdGVyIGJvdHRvbSBsYWJlbCBhY2Nlc3NvciBmdW5jdGlvbi4gRGVmYXVsdDogYCcnYCAqL1xuICBASW5wdXQoKSBjbHVzdGVyQm90dG9tTGFiZWw/OiBTdHJpbmdBY2Nlc3NvcjxMZWFmbGV0TWFwQ2x1c3RlckRhdHVtPFBvaW50RGF0dW0+PlxuXG5cbiAgLyoqIFRoZSB3aWR0aCBvZiB0aGUgY2x1c3RlciBwb2ludCBvdXRsaW5lLiBEZWZhdWx0OiBgMS4yNWAgKi9cbiAgQElucHV0KCkgY2x1c3RlclJpbmdXaWR0aD86IG51bWJlclxuXG4gIC8qKiBXaGVuIGNsdXN0ZXIgaXMgZXhwYW5kZWQsIHNob3cgYSBiYWNrZ3JvdW5kIGNpcmNsZSB0byBiZXR0ZXIgc2VwYXJhdGUgcG9pbnRzIGZyb20gdGhlIGJhc2UgbWFwLiBEZWZhdWx0OiBgdHJ1ZWAgKi9cbiAgQElucHV0KCkgY2x1c3RlckJhY2tncm91bmQ/OiBib29sZWFuXG5cbiAgLyoqIERlZmluZXMgd2hldGhlciB0aGUgY2x1c3RlciBzaG91bGQgZXhwYW5kIG9uIGNsaWNrIG9yIG5vdC4gRGVmYXVsdDogYHRydWVgICovXG4gIEBJbnB1dCgpIGNsdXN0ZXJFeHBhbmRPbkNsaWNrPzogYm9vbGVhblxuXG4gIC8qKiBDbHVzdGVyaW5nIGRpc3RhbmNlIGluIHBpeGVscy4gVGhpcyB2YWx1ZSB3aWxsIGJlIHBhc3NlZCB0byBTdXBlcmNsdXN0ZXIgYXMgdGhlIGByYWRpdXNgIHByb3BlcnR5IGh0dHBzOi8vZ2l0aHViLmNvbS9tYXBib3gvc3VwZXJjbHVzdGVyLiBEZWZhdWx0OiBgNTVgICovXG4gIEBJbnB1dCgpIGNsdXN0ZXJpbmdEaXN0YW5jZT86IG51bWJlclxuXG4gIC8qKiBBIHNpbmdsZSBtYXAgcG9pbnQgY2FuIGhhdmUgbXVsdGlwbGUgcHJvcGVydGllcyBkaXNwbGF5ZWQgYXMgYSBzbWFsbCBwaWUgY2hhcnQgKG9yIGEgZG9udXQgY2hhcnQgZm9yIGEgY2x1c3RlciBvZiBwb2ludHMpLlxuICAgKiBCeSBzZXR0aW5nIHRoZSB2YWx1ZXNNYXAgY29uZmlndXJhdGlvbiB5b3UgY2FuIHNwZWNpZnkgZGF0YSBwcm9wZXJ0aWVzIHRoYXQgc2hvdWxkIGJlIG1hcHBlZCB0byB2YXJpb3VzIHBpZSAvIGRvbnV0IHNlZ21lbnRzLlxuICAgKlxuICAgKiBgYGBcbiAgICoge1xuICAgKiBcXFtrZXkgaW4ga2V5b2YgRGF0dW1dPzogeyBjb2xvcjogc3RyaW5nLCBjbGFzc05hbWU/OiBzdHJpbmcgfVxuICAgKiB9XG4gICAqIGBgYFxuICAgKiBlLmcuOlxuICAgKiBgYGBcbiAgICoge1xuICAgKiBcXGhlYWx0aHk6IHsgY29sb3I6ICdncmVlbicgfSxcbiAgICogXFx3YXJuaW5nOiB7IGNvbG9yOiAnb3JhbmdlJyB9LFxuICAgKiBcXGRhbmdlcjogeyBjb2xvcjogJ3JlZCcgfVxuICAgKiB9XG4gICAqIGBgYFxuICAgKiB3aGVyZSBldmVyeSBkYXRhIHBvaW50IGhhcyB0aGUgYGhlYWx0aHlgLCBgd2FybmluZ2AgYW5kIGBkYW5nZXJgIG51bWVyaWNhbCBvciBib29sZWFuIHByb3BlcnR5LiAqL1xuICBASW5wdXQoKSB2YWx1ZXNNYXA/OiBMZWFmbGV0TWFwUG9pbnRTdHlsZXM8UG9pbnREYXR1bT5cblxuICAvKiogQSBUb3BvSlNPTiBHZW9tZXRyeSBsYXllciB0byBiZSBkaXNwbGF5ZWQgb24gdG9wIG9mIHRoZSBtYXAuIFN1cHBvcnRzIGZpbGwgYW5kIHN0cm9rZSAqL1xuICBASW5wdXQoKSB0b3BvSlNPTkxheWVyPzoge1xuICAgIHNvdXJjZXM6IGFueTtcbiAgICBmZWF0dXJlTmFtZT86IHN0cmluZztcbiAgICBmaWxsUHJvcGVydHk/OiBzdHJpbmc7XG4gICAgc3Ryb2tlUHJvcGVydHk/OiBzdHJpbmc7XG4gICAgZmlsbE9wYWNpdHk/OiBudW1iZXI7XG4gICAgc3Ryb2tlT3BhY2l0eT86IG51bWJlcjtcbiAgICBzdHJva2VXaWR0aD86IG51bWJlcjtcbiAgfVxuXG4gIC8qKiBUb29sdGlwIGNvbXBvbmVudC4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgdG9vbHRpcD86IFRvb2x0aXBcblxuICAvKiogRmxvdyBzb3VyY2UgcG9pbnQgbG9uZ2l0dWRlIGFjY2Vzc29yIGZ1bmN0aW9uIG9yIHZhbHVlLiBEZWZhdWx0Oi5gZiA9PiBmLnNvdXJjZUxvbmdpdHVkZWAgKi9cbiAgQElucHV0KCkgc291cmNlTG9uZ2l0dWRlPzogTnVtZXJpY0FjY2Vzc29yPEZsb3dEYXR1bT5cbiAgLyoqIEZsb3cgc291cmNlIHBvaW50IGxhdGl0dWRlIGFjY2Vzc29yIGZ1bmN0aW9uIG9yIHZhbHVlLiBEZWZhdWx0OiBgZiA9PiBmLnNvdXJjZUxhdGl0dWRlYCAqL1xuICBASW5wdXQoKSBzb3VyY2VMYXRpdHVkZT86IE51bWVyaWNBY2Nlc3NvcjxGbG93RGF0dW0+XG4gIC8qKiBGbG93IHRhcmdldCBwb2ludCBsb25naXR1ZGUgYWNjZXNzb3IgZnVuY3Rpb24gb3IgdmFsdWUuIERlZmF1bHQ6IGBmID0+IGYudGFyZ2V0TG9uZ2l0dWRlYCAqL1xuICBASW5wdXQoKSB0YXJnZXRMb25naXR1ZGU/OiBOdW1lcmljQWNjZXNzb3I8Rmxvd0RhdHVtPlxuICAvKiogRmxvdyB0YXJnZXQgcG9pbnQgbGF0aXR1ZGUgYWNjZXNzb3IgZnVuY3Rpb24gb3IgdmFsdWUuIERlZmF1bHQ6IGBmID0+IGYudGFyZ2V0TGF0aXR1ZGVgICovXG4gIEBJbnB1dCgpIHRhcmdldExhdGl0dWRlPzogTnVtZXJpY0FjY2Vzc29yPEZsb3dEYXR1bT5cbiAgLyoqIEZsb3cgc291cmNlIHBvaW50IHJhZGl1cyBhY2Nlc3NvciBmdW5jdGlvbiBvciB2YWx1ZS4gRGVmYXVsdDogYDNgICovXG4gIEBJbnB1dCgpIHNvdXJjZVBvaW50UmFkaXVzPzogTnVtZXJpY0FjY2Vzc29yPEZsb3dEYXR1bT5cbiAgLyoqIFNvdXJjZSBwb2ludCBjb2xvciBhY2Nlc3NvciBmdW5jdGlvbiBvciB2YWx1ZS4gRGVmYXVsdDogYCcjODg5MTlmJ2AgKi9cbiAgQElucHV0KCkgc291cmNlUG9pbnRDb2xvcj86IENvbG9yQWNjZXNzb3I8Rmxvd0RhdHVtPlxuICAvKiogRmxvdyBwYXJ0aWNsZSBjb2xvciBhY2Nlc3NvciBmdW5jdGlvbiBvciB2YWx1ZS4gRGVmYXVsdDogYCcjOTQ5ZGFkJ2AgKi9cbiAgQElucHV0KCkgZmxvd1BhcnRpY2xlQ29sb3I/OiBDb2xvckFjY2Vzc29yPEZsb3dEYXR1bT5cbiAgLyoqIEZsb3cgcGFydGljbGUgcmFkaXVzIGFjY2Vzc29yIGZ1bmN0aW9uIG9yIHZhbHVlLiBEZWZhdWx0OiBgMS4xYCAqL1xuICBASW5wdXQoKSBmbG93UGFydGljbGVSYWRpdXM/OiBOdW1lcmljQWNjZXNzb3I8Rmxvd0RhdHVtPlxuICAvKiogRmxvdyBwYXJ0aWNsZSBzcGVlZCBhY2Nlc3NvciBmdW5jdGlvbiBvciB2YWx1ZSBpbiBhbmd1bGFyIGRlZ3JlZXMuIERlZmF1bHQ6IGAwLjA3YCAqL1xuICBASW5wdXQoKSBmbG93UGFydGljbGVTcGVlZD86IE51bWVyaWNBY2Nlc3NvcjxGbG93RGF0dW0+XG4gIC8qKiBGbG93IHBhcnRpY2xlIGRlbnNpdHkgYWNjZXNzb3IgZnVuY3Rpb24gb3IgdmFsdWUgb24gdGhlIHJhbmdlIG9mIFswLCAxXS4gRGVmYXVsdDogYDAuNmAgKi9cbiAgQElucHV0KCkgZmxvd1BhcnRpY2xlRGVuc2l0eT86IE51bWVyaWNBY2Nlc3NvcjxGbG93RGF0dW0+XG5cbiAgLy8gRXZlbnRzXG4gIC8qKiBGbG93IHNvdXJjZSBwb2ludCBjbGljayBjYWxsYmFjayBmdW5jdGlvbi4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgb25Tb3VyY2VQb2ludENsaWNrPzogKChmOiBGbG93RGF0dW0sIHg6IG51bWJlciwgeTogbnVtYmVyLCBldmVudDogTW91c2VFdmVudCkgPT4gdW5rbm93bilcbiAgLyoqIEZsb3cgc291cmNlIHBvaW50IG1vdXNlIG92ZXIgY2FsbGJhY2sgZnVuY3Rpb24uIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIG9uU291cmNlUG9pbnRNb3VzZUVudGVyPzogKChmOiBGbG93RGF0dW0sIHg6IG51bWJlciwgeTogbnVtYmVyLCBldmVudDogTW91c2VFdmVudCkgPT4gdW5rbm93bilcbiAgLyoqIEZsb3cgc291cmNlIHBvaW50IG1vdXNlIGxlYXZlIGNhbGxiYWNrIGZ1bmN0aW9uLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBvblNvdXJjZVBvaW50TW91c2VMZWF2ZT86ICgoZjogRmxvd0RhdHVtLCBldmVudDogTW91c2VFdmVudCkgPT4gdW5rbm93bilcblxuICAvKiogRGF0YSAqL1xuICBASW5wdXQoKSBkYXRhPzogeyBwb2ludHM6IFBvaW50RGF0dW1bXTsgZmxvd3M6IEZsb3dEYXR1bVtdIH1cblxuICBjb21wb25lbnQ6IExlYWZsZXRGbG93TWFwPFBvaW50RGF0dW0sIEZsb3dEYXR1bT4gfCB1bmRlZmluZWRcblxuICBuZ0FmdGVyVmlld0luaXQgKCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuZ2V0Q29uZmlnKClcbiAgICB0aGlzLmNvbXBvbmVudCA9IG5ldyBMZWFmbGV0Rmxvd01hcDxQb2ludERhdHVtLCBGbG93RGF0dW0+KHRoaXMuY29udGFpbmVyUmVmLm5hdGl2ZUVsZW1lbnQsIGNvbmZpZywgdGhpcy5kYXRhKVxuICB9XG5cbiAgbmdPbkNoYW5nZXMgKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlcy5kYXRhKSB7XG4gICAgICB0aGlzLmNvbXBvbmVudD8uc2V0RGF0YSh0aGlzLmRhdGEpXG4gICAgfVxuICAgIHRoaXMuY29tcG9uZW50Py5zZXRDb25maWcodGhpcy5nZXRDb25maWcoKSlcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29uZmlnICgpOiBMZWFmbGV0Rmxvd01hcENvbmZpZ0ludGVyZmFjZTxQb2ludERhdHVtLCBGbG93RGF0dW0+IHtcbiAgICBjb25zdCB7IHdpZHRoLCBoZWlnaHQsIGR1cmF0aW9uLCBldmVudHMsIGF0dHJpYnV0ZXMsIGZseVRvRHVyYXRpb24sIGZpdFZpZXdQYWRkaW5nLCB6b29tRHVyYXRpb24sIGluaXRpYWxCb3VuZHMsIGZpdEJvdW5kc09uVXBkYXRlLCBmaXRWaWV3T25Jbml0LCBmaXRWaWV3T25VcGRhdGUsIGFjY2Vzc1Rva2VuLCBzdHlsZSwgc3R5bGVEYXJrVGhlbWUsIGF0dHJpYnV0aW9uLCBvbk1hcEluaXRpYWxpemVkLCBvbk1hcE1vdmVab29tLCBvbk1hcE1vdmVTdGFydCwgb25NYXBNb3ZlRW5kLCBvbk1hcFpvb21TdGFydCwgb25NYXBab29tRW5kLCBvbk1hcENsaWNrLCBwb2ludExvbmdpdHVkZSwgcG9pbnRMYXRpdHVkZSwgcG9pbnRJZCwgcG9pbnRTaGFwZSwgcG9pbnRDb2xvciwgcG9pbnRSYWRpdXMsIHBvaW50TGFiZWwsIHBvaW50Qm90dG9tTGFiZWwsIHBvaW50Q3Vyc29yLCBzZWxlY3RlZFBvaW50SWQsIGNsdXN0ZXJDb2xvciwgY2x1c3RlclJhZGl1cywgY2x1c3RlckxhYmVsLCBjbHVzdGVyQm90dG9tTGFiZWwsIGNsdXN0ZXJSaW5nV2lkdGgsIGNsdXN0ZXJCYWNrZ3JvdW5kLCBjbHVzdGVyRXhwYW5kT25DbGljaywgY2x1c3RlcmluZ0Rpc3RhbmNlLCB2YWx1ZXNNYXAsIHRvcG9KU09OTGF5ZXIsIHRvb2x0aXAsIHNvdXJjZUxvbmdpdHVkZSwgc291cmNlTGF0aXR1ZGUsIHRhcmdldExvbmdpdHVkZSwgdGFyZ2V0TGF0aXR1ZGUsIHNvdXJjZVBvaW50UmFkaXVzLCBzb3VyY2VQb2ludENvbG9yLCBmbG93UGFydGljbGVDb2xvciwgZmxvd1BhcnRpY2xlUmFkaXVzLCBmbG93UGFydGljbGVTcGVlZCwgZmxvd1BhcnRpY2xlRGVuc2l0eSwgb25Tb3VyY2VQb2ludENsaWNrLCBvblNvdXJjZVBvaW50TW91c2VFbnRlciwgb25Tb3VyY2VQb2ludE1vdXNlTGVhdmUgfSA9IHRoaXNcbiAgICBjb25zdCBjb25maWcgPSB7IHdpZHRoLCBoZWlnaHQsIGR1cmF0aW9uLCBldmVudHMsIGF0dHJpYnV0ZXMsIGZseVRvRHVyYXRpb24sIGZpdFZpZXdQYWRkaW5nLCB6b29tRHVyYXRpb24sIGluaXRpYWxCb3VuZHMsIGZpdEJvdW5kc09uVXBkYXRlLCBmaXRWaWV3T25Jbml0LCBmaXRWaWV3T25VcGRhdGUsIGFjY2Vzc1Rva2VuLCBzdHlsZSwgc3R5bGVEYXJrVGhlbWUsIGF0dHJpYnV0aW9uLCBvbk1hcEluaXRpYWxpemVkLCBvbk1hcE1vdmVab29tLCBvbk1hcE1vdmVTdGFydCwgb25NYXBNb3ZlRW5kLCBvbk1hcFpvb21TdGFydCwgb25NYXBab29tRW5kLCBvbk1hcENsaWNrLCBwb2ludExvbmdpdHVkZSwgcG9pbnRMYXRpdHVkZSwgcG9pbnRJZCwgcG9pbnRTaGFwZSwgcG9pbnRDb2xvciwgcG9pbnRSYWRpdXMsIHBvaW50TGFiZWwsIHBvaW50Qm90dG9tTGFiZWwsIHBvaW50Q3Vyc29yLCBzZWxlY3RlZFBvaW50SWQsIGNsdXN0ZXJDb2xvciwgY2x1c3RlclJhZGl1cywgY2x1c3RlckxhYmVsLCBjbHVzdGVyQm90dG9tTGFiZWwsIGNsdXN0ZXJSaW5nV2lkdGgsIGNsdXN0ZXJCYWNrZ3JvdW5kLCBjbHVzdGVyRXhwYW5kT25DbGljaywgY2x1c3RlcmluZ0Rpc3RhbmNlLCB2YWx1ZXNNYXAsIHRvcG9KU09OTGF5ZXIsIHRvb2x0aXAsIHNvdXJjZUxvbmdpdHVkZSwgc291cmNlTGF0aXR1ZGUsIHRhcmdldExvbmdpdHVkZSwgdGFyZ2V0TGF0aXR1ZGUsIHNvdXJjZVBvaW50UmFkaXVzLCBzb3VyY2VQb2ludENvbG9yLCBmbG93UGFydGljbGVDb2xvciwgZmxvd1BhcnRpY2xlUmFkaXVzLCBmbG93UGFydGljbGVTcGVlZCwgZmxvd1BhcnRpY2xlRGVuc2l0eSwgb25Tb3VyY2VQb2ludENsaWNrLCBvblNvdXJjZVBvaW50TW91c2VFbnRlciwgb25Tb3VyY2VQb2ludE1vdXNlTGVhdmUgfVxuICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhjb25maWcpIGFzIChrZXlvZiBMZWFmbGV0Rmxvd01hcENvbmZpZ0ludGVyZmFjZTxQb2ludERhdHVtLCBGbG93RGF0dW0+KVtdXG4gICAga2V5cy5mb3JFYWNoKGtleSA9PiB7IGlmIChjb25maWdba2V5XSA9PT0gdW5kZWZpbmVkKSBkZWxldGUgY29uZmlnW2tleV0gfSlcblxuICAgIHJldHVybiBjb25maWdcbiAgfVxufVxuIl19
@@ -130,4 +130,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
130
130
  }], data: [{
131
131
  type: Input
132
132
  }] } });
133
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVhZmxldC1tYXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2h0bWwtY29tcG9uZW50cy9sZWFmbGV0LW1hcC9sZWFmbGV0LW1hcC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBaUIsS0FBSyxFQUFpQixTQUFTLEVBQWMsTUFBTSxlQUFlLENBQUE7QUFDckcsT0FBTyxFQUNMLFVBQVUsR0FjWCxNQUFNLFlBQVksQ0FBQTtBQUVuQixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxZQUFZLENBQUE7O0FBUzdDLE1BQU0sT0FBTyxzQkFBc0I7SUErTWpDLGVBQWU7UUFDYixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUE7UUFDL0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLFVBQVUsQ0FBUSxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQzVGLENBQUM7SUFFRCxXQUFXLENBQUUsT0FBc0I7O1FBQ2pDLElBQUksT0FBTyxDQUFDLElBQUksRUFBRTtZQUNoQixNQUFBLElBQUksQ0FBQyxTQUFTLDBDQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7U0FDbkM7UUFDRCxNQUFBLElBQUksQ0FBQyxTQUFTLDBDQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQTtJQUM3QyxDQUFDO0lBRU8sU0FBUztRQUNmLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFF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S0FBSztnQkFHRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBR0csYUFBYTtzQkFBckIsS0FBSztnQkFHRyxjQUFjO3NCQUF0QixLQUFLO2dCQUdHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBR0csY0FBYztzQkFBdEIsS0FBSztnQkFHRyxZQUFZO3NCQUFwQixLQUFLO2dCQUdHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBR0csY0FBYztzQkFBdEIsS0FBSztnQkFHRyxhQUFhO3NCQUFyQixLQUFLO2dCQUdHLE9BQU87c0JBQWYsS0FBSztnQkFHRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBR0csV0FBVztzQkFBbkIsS0FBSztnQkFHRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFHRyxXQUFXO3NCQUFuQixLQUFLO2dCQUdHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBR0csWUFBWTtzQkFBcEIsS0FBSztnQkFHRyxhQUFhO3NCQUFyQixLQUFLO2dCQUdHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBR0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUdHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFHRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBR0csb0JBQW9CO3NCQUE1QixLQUFLO2dCQUdHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFtQkcsUUFBUTtzQkFBaEIsS0FBSztnQkFHRyxhQUFhO3NCQUFyQixLQUFLO2dCQVdHLE9BQU87c0JBQWYsS0FBSztnQkFHRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEFmdGVyVmlld0luaXQsIElucHV0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGQsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHtcbiAgTGVhZmxldE1hcCxcbiAgTGVhZmxldE1hcENvbmZpZ0ludGVyZmFjZSxcbiAgVmlzRXZlbnRUeXBlLFxuICBWaXNFdmVudENhbGxiYWNrLFxuICBCb3VuZHMsXG4gIE1hcFpvb21TdGF0ZSxcbiAgTnVtZXJpY0FjY2Vzc29yLFxuICBTdHJpbmdBY2Nlc3NvcixcbiAgQ29sb3JBY2Nlc3NvcixcbiAgTGVhZmxldE1hcFBvaW50RGF0dW0sXG4gIExlYWZsZXRNYXBQb2ludFN0eWxlcyxcbiAgVG9vbHRpcCxcbiAgTGVhZmxldE1hcENsdXN0ZXJEYXR1bSxcbiAgTGVhZmxldE1hcFJlbmRlcmVyLFxufSBmcm9tICdAdW5vdmlzL3RzJ1xuaW1wb3J0IHsgU3R5bGVTcGVjaWZpY2F0aW9uIH0gZnJvbSAnbWFwbGlicmUtZ2wnXG5pbXBvcnQgeyBWaXNDb3JlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29yZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmlzLWxlYWZsZXQtbWFwJyxcbiAgdGVtcGxhdGU6ICc8ZGl2ICNjb250YWluZXIgY2xhc3M9XCJ1bm92aXMtbGVhZmxldC1tYXAtY29udGFpbmVyXCI+PC9kaXY+JyxcbiAgc3R5bGVzOiBbJy51bm92aXMtbGVhZmxldC1tYXAtY29udGFpbmVyIHsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgcG9zaXRpb246IHJlbGF0aXZlOyB9J10sXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11c2UtYmVmb3JlLWRlZmluZVxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IFZpc0NvcmVDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBWaXNMZWFmbGV0TWFwQ29tcG9uZW50IH1dLFxufSlcbmV4cG9ydCBjbGFzcyBWaXNMZWFmbGV0TWFwQ29tcG9uZW50PERhdHVtPiBpbXBsZW1lbnRzIExlYWZsZXRNYXBDb25maWdJbnRlcmZhY2U8RGF0dW0+LCBBZnRlclZpZXdJbml0IHtcbiAgQFZpZXdDaGlsZCgnY29udGFpbmVyJywgeyBzdGF0aWM6IGZhbHNlIH0pIGNvbnRhaW5lclJlZjogRWxlbWVudFJlZlxuXG4gIC8qKiBXaWR0aCBpbiBwaXhlbHMgb3IgaW4gQ1NTIHVuaXRzLiBCeSBkZWZhdWx0LCB0aGUgbWFwIHdpbGwgYXV0b21hdGljYWxseSBmaXQgdG8gdGhlIHNpemUgb2YgdGhlIHBhcmVudCBlbGVtZW50LiBEZWZhdWx0OiBgdW5kZWZpbmVkYC4gKi9cbiAgQElucHV0KCkgd2lkdGg/OiBudW1iZXIgfCBzdHJpbmdcbiAgLyoqIEhlaWdodCBpbiBwaXhlbHMgb3IgaW4gQ1NTIHVuaXRzLiBCeSBkZWZhdWx0LCB0aGUgbWFwIHdpbGwgYXV0b21hdGljYWxseSBmaXQgdG8gdGhlIHNpemUgb2YgdGhlIHBhcmVudCBlbGVtZW50LiBEZWZhdWx0OiBgdW5kZWZpbmVkYC4gKi9cbiAgQElucHV0KCkgaGVpZ2h0PzogbnVtYmVyIHwgc3RyaW5nXG5cbiAgLyoqIEFuaW1hdGlvbiBkdXJhdGlvbiBvZiB0aGUgZGF0YSB1cGRhdGUgdHJhbnNpdGlvbnMgaW4gbWlsbGlzZWNvbmRzLiBEZWZhdWx0OiBgNjAwYCAqL1xuICBASW5wdXQoKSBkdXJhdGlvbj86IG51bWJlclxuXG4gIC8qKiBFdmVudHMgY29uZmlndXJhdGlvbi4gQW4gb2JqZWN0IGNvbnRhaW5pbmcgcHJvcGVydGllcyBpbiB0aGUgZm9sbG93aW5nIGZvcm1hdDpcbiAgICpcbiAgICogYGBgXG4gICAqIHtcbiAgICogXFxbc2VsZWN0b3JTdHJpbmddOiB7XG4gICAqICAgICBcXFtldmVudFR5cGVdOiBjYWxsYmFja0Z1bmN0aW9uXG4gICAqICB9XG4gICAqIH1cbiAgICogYGBgXG4gICAqIGUuZy46XG4gICAqIGBgYFxuICAgKiB7XG4gICAqIFxcW0FyZWEuc2VsZWN0b3JzLmFyZWFdOiB7XG4gICAqICAgIGNsaWNrOiAoZCkgPT4gY29uc29sZS5sb2coXCJDbGlja2VkIEFyZWFcIiwgZClcbiAgICogIH1cbiAgICogfVxuICAgKiBgYGAgKi9cbiAgQElucHV0KCkgZXZlbnRzPzoge1xuICAgIFtzZWxlY3Rvcjogc3RyaW5nXToge1xuICAgICAgW2V2ZW50VHlwZSBpbiBWaXNFdmVudFR5cGVdPzogVmlzRXZlbnRDYWxsYmFja1xuICAgIH07XG4gIH1cblxuICAvKiogWW91IGNhbiBzZXQgZXZlcnkgU1ZHIGFuZCBIVE1MIHZpc3VhbGl6YXRpb24gb2JqZWN0IHRvIGhhdmUgYSBjdXN0b20gRE9NIGF0dHJpYnV0ZXMsIHdoaWNoIGlzIHVzZWZ1bFxuICAgKiB3aGVuIHlvdSB3YW50IHRvIGRvIHVuaXQgb3IgZW5kLXRvLWVuZCB0ZXN0aW5nLiBBdHRyaWJ1dGVzIGNvbmZpZ3VyYXRpb24gb2JqZWN0IGhhcyB0aGUgZm9sbG93aW5nIHN0cnVjdHVyZTpcbiAgICpcbiAgICogYGBgXG4gICAqIHtcbiAgICogXFxbc2VsZWN0b3JTdHJpbmddOiB7XG4gICAqICAgICBcXFthdHRyaWJ1dGVOYW1lXTogYXR0cmlidXRlIGNvbnN0YW50IHZhbHVlIG9yIGFjY2Vzc29yIGZ1bmN0aW9uXG4gICAqICB9XG4gICAqIH1cbiAgICogYGBgXG4gICAqIGUuZy46XG4gICAqIGBgYFxuICAgKiB7XG4gICAqIFxcW0FyZWEuc2VsZWN0b3JzLmFyZWFdOiB7XG4gICAqICAgIFwidGVzdC12YWx1ZVwiOiBkID0+IGQudmFsdWVcbiAgICogIH1cbiAgICogfVxuICAgKiBgYGAgKi9cbiAgQElucHV0KCkgYXR0cmlidXRlcz86IHtcbiAgICBbc2VsZWN0b3I6IHN0cmluZ106IHtcbiAgICAgIFthdHRyOiBzdHJpbmddOiBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgKChkYXR1bTogYW55KSA9PiBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuKTtcbiAgICB9O1xuICB9XG5cbiAgLyoqIEFuaW1hdGlvbiBkdXJhdGlvbiB3aGVuIHRoZSBtYXAgaXMgYXV0b21hdGljYWxseSBwYW5uaW5nIG9yIHpvb21pbmcgdG8gYSBwb2ludCBvciBhcmVhLiBEZWZhdWx0OiBgMTUwMGAgbXMgKi9cbiAgQElucHV0KCkgZmx5VG9EdXJhdGlvbj86IG51bWJlclxuXG4gIC8qKiBQYWRkaW5nIHRvIGJlIHVzZWQgd2hlbiB0aGUgYGZpdFZpZXdgIGZ1bmN0aW9uIGhhcyBiZWVuIGNhbGxlZC4gVGhlIHZhbHVlIGlzIGluIHBpeGVscy4gRGVmYXVsdDogYFsxNTAsIDE1MF1gICovXG4gIEBJbnB1dCgpIGZpdFZpZXdQYWRkaW5nPzogW251bWJlciwgbnVtYmVyXVxuXG4gIC8qKiBBbmltYXRpb24gZHVyYXRpb24gZm9yIHRoZSBgc2V0Wm9vbWAgZnVuY3Rpb24uIERlZmF1bHQ6IGA4MDBgIG1zICovXG4gIEBJbnB1dCgpIHpvb21EdXJhdGlvbj86IG51bWJlclxuXG4gIC8qKiBEZWZhdWx0IGJvdW5kcyB0aGF0IHdpbGwgYmUgYXBwbGllZCBvbiB0aGUgZmlyc3QgbWFwIHJlbmRlciBpZiB0aGUgYm91bmRzIHByb3BlcnR5IGlzIG5vdCBzZXQuIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIGluaXRpYWxCb3VuZHM/OiBCb3VuZHNcblxuICAvKiogRm9yY2Ugc2V0IG1hcCBib3VuZHMgb24gY29uZmlnIGFuZCBkYXRhIHVwZGF0ZXMuIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIGZpdEJvdW5kc09uVXBkYXRlPzogQm91bmRzXG5cbiAgLyoqIEZpdCB0aGUgdmlldyB0byBjb250YWluIHRoZSBkYXRhIHBvaW50cyBvbiBtYXAgaW5pdGlhbGl6YXRpb24uIERlZmF1bHQ6IGB0cnVlYCAqL1xuICBASW5wdXQoKSBmaXRWaWV3T25Jbml0PzogYm9vbGVhblxuXG4gIC8qKiBGaXQgdGhlIHZpZXcgdG8gY29udGFpbiB0aGUgZGF0YSBwb2ludHMgb24gbWFwIGNvbmZpZyBhbmQgZGF0YSB1cGRhdGVzLiBEZWZhdWx0OiBgZmFsc2VgICovXG4gIEBJbnB1dCgpIGZpdFZpZXdPblVwZGF0ZT86IGJvb2xlYW5cblxuICAvKiogTWFwTGlicmUgU3R5bGVTcGVjaWZpY2F0aW9uIHNldHRpbmdzLiBEZWZhdWx0OiBgTWFwTGlicmVBcmN0aWNMaWdodGAgKi9cbiAgQElucHV0KCkgc3R5bGU6IFN0eWxlU3BlY2lmaWNhdGlvbiB8IHN0cmluZ1xuXG4gIC8qKiBNYXBMaWJyZSBTdHlsZVNwZWNpZmljYXRpb24gc2V0dGluZ3MgZm9yIGRhcmsgdGhlbWUuIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIHN0eWxlRGFya1RoZW1lPzogU3R5bGVTcGVjaWZpY2F0aW9uIHwgc3RyaW5nXG5cbiAgLyoqIFRpbGUgc2VydmVyIGFjY2VzcyB0b2tlbiBvciBBUEkga2V5LiBEZWZhdWx0OiBgJydgICovXG4gIEBJbnB1dCgpIGFjY2Vzc1Rva2VuPzogc3RyaW5nXG5cbiAgLyoqIEFycmF5IG9mIGF0dHJpYnV0aW9uIGxhYmVscy4gRGVmYXVsdDogYFsnPGEgaHJlZj1cImh0dHBzOi8vd3d3Lm9wZW5zdHJlZXRtYXAub3JnL2NvcHlyaWdodFwiIHRhcmdldD1cIl9ibGFua1wiPk9wZW5TdHJlZXRNYXAgY29udHJpYnV0b3JzPC9hPiddYCAqL1xuICBASW5wdXQoKSBhdHRyaWJ1dGlvbj86IHN0cmluZ1tdXG5cbiAgLyoqIFJlbmRlcmluZyBtb2RlIGZvciBtYXAncyB0aWxlIGxheWVyLiBGb3IgcmFzdGVyIGZpbGVzLCB1c2UgYExlYWZsZXRNYXBSZW5kZXJlci5SYXN0ZXJgLiBEZWZhdWx0OiBgTGVhZmxldE1hcFJlbmRlcmVyLk1hcExpYnJlYCAqL1xuICBASW5wdXQoKSByZW5kZXJlcj86IExlYWZsZXRNYXBSZW5kZXJlciB8IHN0cmluZ1xuXG4gIC8qKiBGdW5jdGlvbiB0byBiZSBjYWxsZWQgYWZ0ZXIgdGhlIG1hcCdzIGFzeW5jIGluaXRpYWxpemF0aW9uIGlzIGRvbmUuIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIG9uTWFwSW5pdGlhbGl6ZWQ/OiAoKCkgPT4gdm9pZClcblxuICAvKiogTWFwIE1vdmUgLyBab29tIHVuaWZpZWQgY2FsbGJhY2sgZnVuY3Rpb24uIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIG9uTWFwTW92ZVpvb20/OiAoKHsgbWFwQ2VudGVyLCB6b29tTGV2ZWwsIGJvdW5kcyB9OiBNYXBab29tU3RhdGUpID0+IHZvaWQpXG5cbiAgLyoqIE1hcCBNb3ZlIFN0YXJ0IGNhbGxiYWNrIGZ1bmN0aW9uLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBvbk1hcE1vdmVTdGFydD86ICgoeyBtYXBDZW50ZXIsIHpvb21MZXZlbCwgYm91bmRzIH06IE1hcFpvb21TdGF0ZSkgPT4gdm9pZClcblxuICAvKiogTWFwIE1vdmUgRW5kIGNhbGxiYWNrIGZ1bmN0aW9uLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBvbk1hcE1vdmVFbmQ/OiAoKHsgbWFwQ2VudGVyLCB6b29tTGV2ZWwsIGJvdW5kcyB9OiBNYXBab29tU3RhdGUpID0+IHZvaWQpXG5cbiAgLyoqIE1hcCBab29tIFN0YXJ0IGNhbGxiYWNrIGZ1bmN0aW9uLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBvbk1hcFpvb21TdGFydD86ICgoeyBtYXBDZW50ZXIsIHpvb21MZXZlbCwgYm91bmRzIH06IE1hcFpvb21TdGF0ZSkgPT4gdm9pZClcblxuICAvKiogTWFwIFpvb20gRW5kIGNhbGxiYWNrIGZ1bmN0aW9uLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBvbk1hcFpvb21FbmQ/OiAoKHsgbWFwQ2VudGVyLCB6b29tTGV2ZWwsIGJvdW5kcyB9OiBNYXBab29tU3RhdGUpID0+IHZvaWQpXG5cbiAgLyoqIE1hcCBab29tIEVuZCBjYWxsYmFjayBmdW5jdGlvbi4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgb25NYXBDbGljaz86ICgoeyBtYXBDZW50ZXIsIHpvb21MZXZlbCwgYm91bmRzIH06IE1hcFpvb21TdGF0ZSkgPT4gdm9pZClcblxuICAvKiogUG9pbnQgbG9uZ2l0dWRlIGFjY2Vzc29yIGZ1bmN0aW9uLiBEZWZhdWx0OiBgZCA9PiBkLmxvbmdpdHVkZWAgKi9cbiAgQElucHV0KCkgcG9pbnRMb25naXR1ZGU/OiBOdW1lcmljQWNjZXNzb3I8RGF0dW0+XG5cbiAgLyoqIFBvaW50IGxhdGl0dWRlIGFjY2Vzc29yIGZ1bmN0aW9uLiBEZWZhdWx0OiBgZCA9PiBkLmxhdGl0dWRlYCAqL1xuICBASW5wdXQoKSBwb2ludExhdGl0dWRlPzogTnVtZXJpY0FjY2Vzc29yPERhdHVtPlxuXG4gIC8qKiBQb2ludCBpZCBhY2Nlc3NvciBmdW5jdGlvbiBvciBjb25zdGFudCB2YWx1ZS4gRGVmYXVsdDogYGQgPT4gZC5pZGAgKi9cbiAgQElucHV0KCkgcG9pbnRJZD86IFN0cmluZ0FjY2Vzc29yPERhdHVtPlxuXG4gIC8qKiBQb2ludCBzaGFwZSBhY2Nlc3NvciBmdW5jdGlvbiBvciBjb25zdGFudCB2YWx1ZS4gRGVmYXVsdDogYGQgPT4gZC5zaGFwZWAgKi9cbiAgQElucHV0KCkgcG9pbnRTaGFwZT86IFN0cmluZ0FjY2Vzc29yPERhdHVtPlxuXG4gIC8qKiBQb2ludCBjb2xvciBhY2Nlc3NvciBmdW5jdGlvbiBvciBjb25zdGFudCB2YWx1ZS4gRGVmYXVsdDogYGQgPT4gZC5jb2xvcmAgKi9cbiAgQElucHV0KCkgcG9pbnRDb2xvcj86IENvbG9yQWNjZXNzb3I8RGF0dW0+XG5cbiAgLyoqIFBvaW50IHJhZGl1cyBhY2Nlc3NvciBmdW5jdGlvbiBvciBjb25zdGFudCB2YWx1ZS4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgcG9pbnRSYWRpdXM/OiBOdW1lcmljQWNjZXNzb3I8TGVhZmxldE1hcFBvaW50RGF0dW08RGF0dW0+PlxuXG4gIC8qKiBQb2ludCBpbm5lciBsYWJlbCBhY2Nlc3NvciBmdW5jdGlvbi4gRGVmYXVsdDogYGQgPT4gZC5wb2ludF9jb3VudCA/PyAnJ2AgKi9cbiAgQElucHV0KCkgcG9pbnRMYWJlbD86IFN0cmluZ0FjY2Vzc29yPExlYWZsZXRNYXBQb2ludERhdHVtPERhdHVtPj5cblxuICAvKiogUG9pbnQgYm90dG9tIGxhYmVsIGFjY2Vzc29yIGZ1bmN0aW9uLiBEZWZhdWx0OiBgJydgICovXG4gIEBJbnB1dCgpIHBvaW50Qm90dG9tTGFiZWw/OiBTdHJpbmdBY2Nlc3NvcjxMZWFmbGV0TWFwUG9pbnREYXR1bTxEYXR1bT4+XG5cbiAgLyoqIFBvaW50IGN1cnNvciB2YWx1ZSBvciBhY2Nlc3NvciBmdW5jdGlvbi4gRGVmYXVsdDogYG51bGxgICovXG4gIEBJbnB1dCgpIHBvaW50Q3Vyc29yPzogU3RyaW5nQWNjZXNzb3I8TGVhZmxldE1hcFBvaW50RGF0dW08RGF0dW0+PlxuXG4gIC8qKiBTZXQgc2VsZWN0ZWQgcG9pbnQgYnkgaXRzIHVuaXF1ZSBpZC4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgc2VsZWN0ZWRQb2ludElkPzogc3RyaW5nXG5cbiAgLyoqIENsdXN0ZXIgY29sb3IgYWNjZXNzb3IgZnVuY3Rpb24gb3IgY29uc3RhbnQgdmFsdWUuIERlZmF1bHQ6IGB1bmRlZmluZWRgICAqL1xuICBASW5wdXQoKSBjbHVzdGVyQ29sb3I/OiBDb2xvckFjY2Vzc29yPERhdHVtPlxuXG4gIC8qKiBDbHVzdGVyIHJhZGl1cyBhY2Nlc3NvciBmdW5jdGlvbiBvciBjb25zdGFudCB2YWx1ZS4gRGVmYXVsdDogYHVuZGVmaW5lZGAgICovXG4gIEBJbnB1dCgpIGNsdXN0ZXJSYWRpdXM/OiBOdW1lcmljQWNjZXNzb3I8TGVhZmxldE1hcENsdXN0ZXJEYXR1bTxEYXR1bT4+XG5cbiAgLyoqIENsdXN0ZXIgaW5uZXIgbGFiZWwgYWNjZXNzb3IgZnVuY3Rpb24uIERlZmF1bHQ6IGBkID0+IGQucG9pbnRfY291bnRgICAqL1xuICBASW5wdXQoKSBjbHVzdGVyTGFiZWw/OiBTdHJpbmdBY2Nlc3NvcjxMZWFmbGV0TWFwQ2x1c3RlckRhdHVtPERhdHVtPj5cblxuICAvKiogQ2x1c3RlciBib3R0b20gbGFiZWwgYWNjZXNzb3IgZnVuY3Rpb24uIERlZmF1bHQ6IGAnJ2AgKi9cbiAgQElucHV0KCkgY2x1c3RlckJvdHRvbUxhYmVsPzogU3RyaW5nQWNjZXNzb3I8TGVhZmxldE1hcENsdXN0ZXJEYXR1bTxEYXR1bT4+XG5cbiAgLyoqIFRoZSB3aWR0aCBvZiB0aGUgY2x1c3RlciBwb2ludCBvdXRsaW5lLiBEZWZhdWx0OiBgMS4yNWAgKi9cbiAgQElucHV0KCkgY2x1c3RlclJpbmdXaWR0aD86IG51bWJlclxuXG4gIC8qKiBXaGVuIGNsdXN0ZXIgaXMgZXhwYW5kZWQsIHNob3cgYSBiYWNrZ3JvdW5kIGNpcmNsZSB0byBiZXR0ZXIgc2VwYXJhdGUgcG9pbnRzIGZyb20gdGhlIGJhc2UgbWFwLiBEZWZhdWx0OiBgdHJ1ZWAgKi9cbiAgQElucHV0KCkgY2x1c3RlckJhY2tncm91bmQ/OiBib29sZWFuXG5cbiAgLyoqIERlZmluZXMgd2hldGhlciB0aGUgY2x1c3RlciBzaG91bGQgZXhwYW5kIG9uIGNsaWNrIG9yIG5vdC4gRGVmYXVsdDogYHRydWVgICovXG4gIEBJbnB1dCgpIGNsdXN0ZXJFeHBhbmRPbkNsaWNrPzogYm9vbGVhblxuXG4gIC8qKiBDbHVzdGVyaW5nIGRpc3RhbmNlIGluIHBpeGVscy4gVGhpcyB2YWx1ZSB3aWxsIGJlIHBhc3NlZCB0byBTdXBlcmNsdXN0ZXIgYXMgdGhlIGByYWRpdXNgIHByb3BlcnR5IGh0dHBzOi8vZ2l0aHViLmNvbS9tYXBib3gvc3VwZXJjbHVzdGVyLiBEZWZhdWx0OiBgNTVgICovXG4gIEBJbnB1dCgpIGNsdXN0ZXJpbmdEaXN0YW5jZT86IG51bWJlclxuXG4gIC8qKiBBIHNpbmdsZSBtYXAgcG9pbnQgY2FuIGhhdmUgbXVsdGlwbGUgcHJvcGVydGllcyBkaXNwbGF5ZWQgYXMgYSBzbWFsbCBwaWUgY2hhcnQgKG9yIGEgZG9udXQgY2hhcnQgZm9yIGEgY2x1c3RlciBvZiBwb2ludHMpLlxuICAgKiBCeSBzZXR0aW5nIHRoZSBjb2xvck1hcCBjb25maWd1cmF0aW9uIHlvdSBjYW4gc3BlY2lmeSBkYXRhIHByb3BlcnRpZXMgdGhhdCBzaG91bGQgYmUgbWFwcGVkIHRvIHZhcmlvdXMgcGllIC8gZG9udXQgc2VnbWVudHMuXG4gICAqXG4gICAqIGBgYFxuICAgKiB7XG4gICAqIFxcW2tleSBpbiBrZXlvZiBEYXR1bV0/OiB7IGNvbG9yOiBzdHJpbmcsIGNsYXNzTmFtZT86IHN0cmluZyB9XG4gICAqIH1cbiAgICogYGBgXG4gICAqIGUuZy46XG4gICAqIGBgYFxuICAgKiB7XG4gICAqIFxcaGVhbHRoeTogeyBjb2xvcjogJ2dyZWVuJyB9LFxuICAgKiBcXHdhcm5pbmc6IHsgY29sb3I6ICdvcmFuZ2UnIH0sXG4gICAqIFxcZGFuZ2VyOiB7IGNvbG9yOiAncmVkJyB9XG4gICAqIH1cbiAgICogYGBgXG4gICAqIHdoZXJlIGV2ZXJ5IGRhdGEgcG9pbnQgaGFzIHRoZSBgaGVhbHRoeWAsIGB3YXJuaW5nYCBhbmQgYGRhbmdlcmAgbnVtZXJpY2FsIG9yIGJvb2xlYW4gcHJvcGVydHkuICovXG4gIEBJbnB1dCgpIGNvbG9yTWFwPzogTGVhZmxldE1hcFBvaW50U3R5bGVzPERhdHVtPlxuXG4gIC8qKiBBIFRvcG9KU09OIEdlb21ldHJ5IGxheWVyIHRvIGJlIGRpc3BsYXllZCBvbiB0b3Agb2YgdGhlIG1hcC4gU3VwcG9ydHMgZmlsbCBhbmQgc3Ryb2tlICovXG4gIEBJbnB1dCgpIHRvcG9KU09OTGF5ZXI/OiB7XG4gICAgc291cmNlczogYW55O1xuICAgIGZlYXR1cmVOYW1lPzogc3RyaW5nO1xuICAgIGZpbGxQcm9wZXJ0eT86IHN0cmluZztcbiAgICBzdHJva2VQcm9wZXJ0eT86IHN0cmluZztcbiAgICBmaWxsT3BhY2l0eT86IG51bWJlcjtcbiAgICBzdHJva2VPcGFjaXR5PzogbnVtYmVyO1xuICAgIHN0cm9rZVdpZHRoPzogbnVtYmVyO1xuICB9XG5cbiAgLyoqIFRvb2x0aXAgY29tcG9uZW50LiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSB0b29sdGlwPzogVG9vbHRpcFxuXG4gIC8qKiBEYXRhICovXG4gIEBJbnB1dCgpIGRhdGE/OiBEYXR1bVtdXG5cbiAgY29tcG9uZW50OiBMZWFmbGV0TWFwPERhdHVtPiB8IHVuZGVmaW5lZFxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCAoKTogdm9pZCB7XG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5nZXRDb25maWcoKVxuICAgIHRoaXMuY29tcG9uZW50ID0gbmV3IExlYWZsZXRNYXA8RGF0dW0+KHRoaXMuY29udGFpbmVyUmVmLm5hdGl2ZUVsZW1lbnQsIGNvbmZpZywgdGhpcy5kYXRhKVxuICB9XG5cbiAgbmdPbkNoYW5nZXMgKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlcy5kYXRhKSB7XG4gICAgICB0aGlzLmNvbXBvbmVudD8uc2V0RGF0YSh0aGlzLmRhdGEpXG4gICAgfVxuICAgIHRoaXMuY29tcG9uZW50Py5zZXRDb25maWcodGhpcy5nZXRDb25maWcoKSlcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29uZmlnICgpOiBMZWFmbGV0TWFwQ29uZmlnSW50ZXJmYWNlPERhdHVtPiB7XG4gICAgY29uc3QgeyB3aWR0aCwgaGVpZ2h0LCBkdXJhdGlvbiwgZXZlbnRzLCBhdHRyaWJ1dGVzLCBmbHlUb0R1cmF0aW9uLCBmaXRWaWV3UGFkZGluZywgem9vbUR1cmF0aW9uLCBpbml0aWFsQm91bmRzLCBmaXRCb3VuZHNPblVwZGF0ZSwgZml0Vmlld09uSW5pdCwgZml0Vmlld09uVXBkYXRlLCBhY2Nlc3NUb2tlbiwgc3R5bGUsIHN0eWxlRGFya1RoZW1lLCBhdHRyaWJ1dGlvbiwgb25NYXBJbml0aWFsaXplZCwgb25NYXBNb3ZlWm9vbSwgb25NYXBNb3ZlU3RhcnQsIG9uTWFwTW92ZUVuZCwgb25NYXBab29tU3RhcnQsIG9uTWFwWm9vbUVuZCwgb25NYXBDbGljaywgcG9pbnRMb25naXR1ZGUsIHBvaW50TGF0aXR1ZGUsIHBvaW50SWQsIHBvaW50U2hhcGUsIHBvaW50Q29sb3IsIHBvaW50UmFkaXVzLCBwb2ludExhYmVsLCBwb2ludEJvdHRvbUxhYmVsLCBwb2ludEN1cnNvciwgc2VsZWN0ZWRQb2ludElkLCBjbHVzdGVyQ29sb3IsIGNsdXN0ZXJSYWRpdXMsIGNsdXN0ZXJMYWJlbCwgY2x1c3RlckJvdHRvbUxhYmVsLCBjbHVzdGVyUmluZ1dpZHRoLCBjbHVzdGVyQmFja2dyb3VuZCwgY2x1c3RlckV4cGFuZE9uQ2xpY2ssIGNsdXN0ZXJpbmdEaXN0YW5jZSwgY29sb3JNYXAsIHRvcG9KU09OTGF5ZXIsIHRvb2x0aXAgfSA9IHRoaXNcbiAgICBjb25zdCBjb25maWcgPSB7IHdpZHRoLCBoZWlnaHQsIGR1cmF0aW9uLCBldmVudHMsIGF0dHJpYnV0ZXMsIGZseVRvRHVyYXRpb24sIGZpdFZpZXdQYWRkaW5nLCB6b29tRHVyYXRpb24sIGluaXRpYWxCb3VuZHMsIGZpdEJvdW5kc09uVXBkYXRlLCBmaXRWaWV3T25Jbml0LCBmaXRWaWV3T25VcGRhdGUsIGFjY2Vzc1Rva2VuLCBzdHlsZSwgc3R5bGVEYXJrVGhlbWUsIGF0dHJpYnV0aW9uLCBvbk1hcEluaXRpYWxpemVkLCBvbk1hcE1vdmVab29tLCBvbk1hcE1vdmVTdGFydCwgb25NYXBNb3ZlRW5kLCBvbk1hcFpvb21TdGFydCwgb25NYXBab29tRW5kLCBvbk1hcENsaWNrLCBwb2ludExvbmdpdHVkZSwgcG9pbnRMYXRpdHVkZSwgcG9pbnRJZCwgcG9pbnRTaGFwZSwgcG9pbnRDb2xvciwgcG9pbnRSYWRpdXMsIHBvaW50TGFiZWwsIHBvaW50Qm90dG9tTGFiZWwsIHBvaW50Q3Vyc29yLCBzZWxlY3RlZFBvaW50SWQsIGNsdXN0ZXJDb2xvciwgY2x1c3RlclJhZGl1cywgY2x1c3RlckxhYmVsLCBjbHVzdGVyQm90dG9tTGFiZWwsIGNsdXN0ZXJSaW5nV2lkdGgsIGNsdXN0ZXJCYWNrZ3JvdW5kLCBjbHVzdGVyRXhwYW5kT25DbGljaywgY2x1c3RlcmluZ0Rpc3RhbmNlLCBjb2xvck1hcCwgdG9wb0pTT05MYXllciwgdG9vbHRpcCB9XG4gICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGNvbmZpZykgYXMgKGtleW9mIExlYWZsZXRNYXBDb25maWdJbnRlcmZhY2U8RGF0dW0+KVtdXG4gICAga2V5cy5mb3JFYWNoKGtleSA9PiB7IGlmIChjb25maWdba2V5XSA9PT0gdW5kZWZpbmVkKSBkZWxldGUgY29uZmlnW2tleV0gfSlcblxuICAgIHJldHVybiBjb25maWdcbiAgfVxufVxuIl19
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVhZmxldC1tYXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2h0bWwtY29tcG9uZW50cy9sZWFmbGV0LW1hcC9sZWFmbGV0LW1hcC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBaUIsS0FBSyxFQUFpQixTQUFTLEVBQWMsTUFBTSxlQUFlLENBQUE7QUFDckcsT0FBTyxFQUNMLFVBQVUsR0FlWCxNQUFNLFlBQVksQ0FBQTtBQUVuQixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxZQUFZLENBQUE7O0FBUzdDLE1BQU0sT0FBTyxzQkFBc0I7SUErTWpDLGVBQWU7UUFDYixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUE7UUFDL0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLFVBQVUsQ0FBUSxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQzVGLENBQUM7SUFFRCxXQUFXLENBQUUsT0FBc0I7O1FBQ2pDLElBQUksT0FBTyxDQUFDLElBQUksRUFBRTtZQUNoQixNQUFBLElBQUksQ0FBQyxTQUFTLDBDQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7U0FDbkM7UUFDRCxNQUFBLElBQUksQ0FBQyxTQUFTLDBDQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQTtJQUM3QyxDQUFDO0lBRU8sU0FBUztRQUNmLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFF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S0FBSztnQkFHRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBR0csYUFBYTtzQkFBckIsS0FBSztnQkFHRyxjQUFjO3NCQUF0QixLQUFLO2dCQUdHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBR0csY0FBYztzQkFBdEIsS0FBSztnQkFHRyxZQUFZO3NCQUFwQixLQUFLO2dCQUdHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBR0csY0FBYztzQkFBdEIsS0FBSztnQkFHRyxhQUFhO3NCQUFyQixLQUFLO2dCQUdHLE9BQU87c0JBQWYsS0FBSztnQkFHRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBR0csV0FBVztzQkFBbkIsS0FBSztnQkFHRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFHRyxXQUFXO3NCQUFuQixLQUFLO2dCQUdHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBR0csWUFBWTtzQkFBcEIsS0FBSztnQkFHRyxhQUFhO3NCQUFyQixLQUFLO2dCQUdHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBR0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUdHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFHRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBR0csb0JBQW9CO3NCQUE1QixLQUFLO2dCQUdHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFtQkcsUUFBUTtzQkFBaEIsS0FBSztnQkFHRyxhQUFhO3NCQUFyQixLQUFLO2dCQVdHLE9BQU87c0JBQWYsS0FBSztnQkFHRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEFmdGVyVmlld0luaXQsIElucHV0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGQsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHtcbiAgTGVhZmxldE1hcCxcbiAgTGVhZmxldE1hcENvbmZpZ0ludGVyZmFjZSxcbiAgVmlzRXZlbnRUeXBlLFxuICBWaXNFdmVudENhbGxiYWNrLFxuICBCb3VuZHMsXG4gIE1hcFpvb21TdGF0ZSxcbiAgTnVtZXJpY0FjY2Vzc29yLFxuICBTdHJpbmdBY2Nlc3NvcixcbiAgQ29sb3JBY2Nlc3NvcixcbiAgTGVhZmxldE1hcFBvaW50RGF0dW0sXG4gIExlYWZsZXRNYXBQb2ludFN0eWxlcyxcbiAgVG9vbHRpcCxcbiAgTGVhZmxldE1hcENsdXN0ZXJEYXR1bSxcbiAgTGVhZmxldE1hcFJlbmRlcmVyLFxuICBHZW5lcmljRGF0YVJlY29yZCxcbn0gZnJvbSAnQHVub3Zpcy90cydcbmltcG9ydCB7IFN0eWxlU3BlY2lmaWNhdGlvbiB9IGZyb20gJ21hcGxpYnJlLWdsJ1xuaW1wb3J0IHsgVmlzQ29yZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvcmUnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3Zpcy1sZWFmbGV0LW1hcCcsXG4gIHRlbXBsYXRlOiAnPGRpdiAjY29udGFpbmVyIGNsYXNzPVwidW5vdmlzLWxlYWZsZXQtbWFwLWNvbnRhaW5lclwiPjwvZGl2PicsXG4gIHN0eWxlczogWycudW5vdmlzLWxlYWZsZXQtbWFwLWNvbnRhaW5lciB7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfSddLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdXNlLWJlZm9yZS1kZWZpbmVcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBWaXNDb3JlQ29tcG9uZW50LCB1c2VFeGlzdGluZzogVmlzTGVhZmxldE1hcENvbXBvbmVudCB9XSxcbn0pXG5leHBvcnQgY2xhc3MgVmlzTGVhZmxldE1hcENvbXBvbmVudDxEYXR1bSBleHRlbmRzIEdlbmVyaWNEYXRhUmVjb3JkPiBpbXBsZW1lbnRzIExlYWZsZXRNYXBDb25maWdJbnRlcmZhY2U8RGF0dW0+LCBBZnRlclZpZXdJbml0IHtcbiAgQFZpZXdDaGlsZCgnY29udGFpbmVyJywgeyBzdGF0aWM6IGZhbHNlIH0pIGNvbnRhaW5lclJlZjogRWxlbWVudFJlZlxuXG4gIC8qKiBXaWR0aCBpbiBwaXhlbHMgb3IgaW4gQ1NTIHVuaXRzLiBCeSBkZWZhdWx0LCB0aGUgbWFwIHdpbGwgYXV0b21hdGljYWxseSBmaXQgdG8gdGhlIHNpemUgb2YgdGhlIHBhcmVudCBlbGVtZW50LiBEZWZhdWx0OiBgdW5kZWZpbmVkYC4gKi9cbiAgQElucHV0KCkgd2lkdGg/OiBudW1iZXIgfCBzdHJpbmdcbiAgLyoqIEhlaWdodCBpbiBwaXhlbHMgb3IgaW4gQ1NTIHVuaXRzLiBCeSBkZWZhdWx0LCB0aGUgbWFwIHdpbGwgYXV0b21hdGljYWxseSBmaXQgdG8gdGhlIHNpemUgb2YgdGhlIHBhcmVudCBlbGVtZW50LiBEZWZhdWx0OiBgdW5kZWZpbmVkYC4gKi9cbiAgQElucHV0KCkgaGVpZ2h0PzogbnVtYmVyIHwgc3RyaW5nXG5cbiAgLyoqIEFuaW1hdGlvbiBkdXJhdGlvbiBvZiB0aGUgZGF0YSB1cGRhdGUgdHJhbnNpdGlvbnMgaW4gbWlsbGlzZWNvbmRzLiBEZWZhdWx0OiBgNjAwYCAqL1xuICBASW5wdXQoKSBkdXJhdGlvbj86IG51bWJlclxuXG4gIC8qKiBFdmVudHMgY29uZmlndXJhdGlvbi4gQW4gb2JqZWN0IGNvbnRhaW5pbmcgcHJvcGVydGllcyBpbiB0aGUgZm9sbG93aW5nIGZvcm1hdDpcbiAgICpcbiAgICogYGBgXG4gICAqIHtcbiAgICogXFxbc2VsZWN0b3JTdHJpbmddOiB7XG4gICAqICAgICBcXFtldmVudFR5cGVdOiBjYWxsYmFja0Z1bmN0aW9uXG4gICAqICB9XG4gICAqIH1cbiAgICogYGBgXG4gICAqIGUuZy46XG4gICAqIGBgYFxuICAgKiB7XG4gICAqIFxcW0FyZWEuc2VsZWN0b3JzLmFyZWFdOiB7XG4gICAqICAgIGNsaWNrOiAoZCkgPT4gY29uc29sZS5sb2coXCJDbGlja2VkIEFyZWFcIiwgZClcbiAgICogIH1cbiAgICogfVxuICAgKiBgYGAgKi9cbiAgQElucHV0KCkgZXZlbnRzPzoge1xuICAgIFtzZWxlY3Rvcjogc3RyaW5nXToge1xuICAgICAgW2V2ZW50VHlwZSBpbiBWaXNFdmVudFR5cGVdPzogVmlzRXZlbnRDYWxsYmFja1xuICAgIH07XG4gIH1cblxuICAvKiogWW91IGNhbiBzZXQgZXZlcnkgU1ZHIGFuZCBIVE1MIHZpc3VhbGl6YXRpb24gb2JqZWN0IHRvIGhhdmUgYSBjdXN0b20gRE9NIGF0dHJpYnV0ZXMsIHdoaWNoIGlzIHVzZWZ1bFxuICAgKiB3aGVuIHlvdSB3YW50IHRvIGRvIHVuaXQgb3IgZW5kLXRvLWVuZCB0ZXN0aW5nLiBBdHRyaWJ1dGVzIGNvbmZpZ3VyYXRpb24gb2JqZWN0IGhhcyB0aGUgZm9sbG93aW5nIHN0cnVjdHVyZTpcbiAgICpcbiAgICogYGBgXG4gICAqIHtcbiAgICogXFxbc2VsZWN0b3JTdHJpbmddOiB7XG4gICAqICAgICBcXFthdHRyaWJ1dGVOYW1lXTogYXR0cmlidXRlIGNvbnN0YW50IHZhbHVlIG9yIGFjY2Vzc29yIGZ1bmN0aW9uXG4gICAqICB9XG4gICAqIH1cbiAgICogYGBgXG4gICAqIGUuZy46XG4gICAqIGBgYFxuICAgKiB7XG4gICAqIFxcW0FyZWEuc2VsZWN0b3JzLmFyZWFdOiB7XG4gICAqICAgIFwidGVzdC12YWx1ZVwiOiBkID0+IGQudmFsdWVcbiAgICogIH1cbiAgICogfVxuICAgKiBgYGAgKi9cbiAgQElucHV0KCkgYXR0cmlidXRlcz86IHtcbiAgICBbc2VsZWN0b3I6IHN0cmluZ106IHtcbiAgICAgIFthdHRyOiBzdHJpbmddOiBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgKChkYXR1bTogYW55KSA9PiBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuKTtcbiAgICB9O1xuICB9XG5cbiAgLyoqIEFuaW1hdGlvbiBkdXJhdGlvbiB3aGVuIHRoZSBtYXAgaXMgYXV0b21hdGljYWxseSBwYW5uaW5nIG9yIHpvb21pbmcgdG8gYSBwb2ludCBvciBhcmVhLiBEZWZhdWx0OiBgMTUwMGAgbXMgKi9cbiAgQElucHV0KCkgZmx5VG9EdXJhdGlvbj86IG51bWJlclxuXG4gIC8qKiBQYWRkaW5nIHRvIGJlIHVzZWQgd2hlbiB0aGUgYGZpdFZpZXdgIGZ1bmN0aW9uIGhhcyBiZWVuIGNhbGxlZC4gVGhlIHZhbHVlIGlzIGluIHBpeGVscy4gRGVmYXVsdDogYFsxNTAsIDE1MF1gICovXG4gIEBJbnB1dCgpIGZpdFZpZXdQYWRkaW5nPzogW251bWJlciwgbnVtYmVyXVxuXG4gIC8qKiBBbmltYXRpb24gZHVyYXRpb24gZm9yIHRoZSBgc2V0Wm9vbWAgZnVuY3Rpb24uIERlZmF1bHQ6IGA4MDBgIG1zICovXG4gIEBJbnB1dCgpIHpvb21EdXJhdGlvbj86IG51bWJlclxuXG4gIC8qKiBEZWZhdWx0IGJvdW5kcyB0aGF0IHdpbGwgYmUgYXBwbGllZCBvbiB0aGUgZmlyc3QgbWFwIHJlbmRlciBpZiB0aGUgYm91bmRzIHByb3BlcnR5IGlzIG5vdCBzZXQuIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIGluaXRpYWxCb3VuZHM/OiBCb3VuZHNcblxuICAvKiogRm9yY2Ugc2V0IG1hcCBib3VuZHMgb24gY29uZmlnIGFuZCBkYXRhIHVwZGF0ZXMuIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIGZpdEJvdW5kc09uVXBkYXRlPzogQm91bmRzXG5cbiAgLyoqIEZpdCB0aGUgdmlldyB0byBjb250YWluIHRoZSBkYXRhIHBvaW50cyBvbiBtYXAgaW5pdGlhbGl6YXRpb24uIERlZmF1bHQ6IGB0cnVlYCAqL1xuICBASW5wdXQoKSBmaXRWaWV3T25Jbml0PzogYm9vbGVhblxuXG4gIC8qKiBGaXQgdGhlIHZpZXcgdG8gY29udGFpbiB0aGUgZGF0YSBwb2ludHMgb24gbWFwIGNvbmZpZyBhbmQgZGF0YSB1cGRhdGVzLiBEZWZhdWx0OiBgZmFsc2VgICovXG4gIEBJbnB1dCgpIGZpdFZpZXdPblVwZGF0ZT86IGJvb2xlYW5cblxuICAvKiogTWFwTGlicmUgU3R5bGVTcGVjaWZpY2F0aW9uIHNldHRpbmdzLiBEZWZhdWx0OiBgTWFwTGlicmVBcmN0aWNMaWdodGAgKi9cbiAgQElucHV0KCkgc3R5bGU6IFN0eWxlU3BlY2lmaWNhdGlvbiB8IHN0cmluZ1xuXG4gIC8qKiBNYXBMaWJyZSBTdHlsZVNwZWNpZmljYXRpb24gc2V0dGluZ3MgZm9yIGRhcmsgdGhlbWUuIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIHN0eWxlRGFya1RoZW1lPzogU3R5bGVTcGVjaWZpY2F0aW9uIHwgc3RyaW5nXG5cbiAgLyoqIFRpbGUgc2VydmVyIGFjY2VzcyB0b2tlbiBvciBBUEkga2V5LiBEZWZhdWx0OiBgJydgICovXG4gIEBJbnB1dCgpIGFjY2Vzc1Rva2VuPzogc3RyaW5nXG5cbiAgLyoqIEFycmF5IG9mIGF0dHJpYnV0aW9uIGxhYmVscy4gRGVmYXVsdDogYFsnPGEgaHJlZj1cImh0dHBzOi8vd3d3Lm9wZW5zdHJlZXRtYXAub3JnL2NvcHlyaWdodFwiIHRhcmdldD1cIl9ibGFua1wiPk9wZW5TdHJlZXRNYXAgY29udHJpYnV0b3JzPC9hPiddYCAqL1xuICBASW5wdXQoKSBhdHRyaWJ1dGlvbj86IHN0cmluZ1tdXG5cbiAgLyoqIFJlbmRlcmluZyBtb2RlIGZvciBtYXAncyB0aWxlIGxheWVyLiBGb3IgcmFzdGVyIGZpbGVzLCB1c2UgYExlYWZsZXRNYXBSZW5kZXJlci5SYXN0ZXJgLiBEZWZhdWx0OiBgTGVhZmxldE1hcFJlbmRlcmVyLk1hcExpYnJlYCAqL1xuICBASW5wdXQoKSByZW5kZXJlcj86IExlYWZsZXRNYXBSZW5kZXJlciB8IHN0cmluZ1xuXG4gIC8qKiBGdW5jdGlvbiB0byBiZSBjYWxsZWQgYWZ0ZXIgdGhlIG1hcCdzIGFzeW5jIGluaXRpYWxpemF0aW9uIGlzIGRvbmUuIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIG9uTWFwSW5pdGlhbGl6ZWQ/OiAoKCkgPT4gdm9pZClcblxuICAvKiogTWFwIE1vdmUgLyBab29tIHVuaWZpZWQgY2FsbGJhY2sgZnVuY3Rpb24uIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIG9uTWFwTW92ZVpvb20/OiAoKHsgbWFwQ2VudGVyLCB6b29tTGV2ZWwsIGJvdW5kcyB9OiBNYXBab29tU3RhdGUpID0+IHZvaWQpXG5cbiAgLyoqIE1hcCBNb3ZlIFN0YXJ0IGNhbGxiYWNrIGZ1bmN0aW9uLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBvbk1hcE1vdmVTdGFydD86ICgoeyBtYXBDZW50ZXIsIHpvb21MZXZlbCwgYm91bmRzIH06IE1hcFpvb21TdGF0ZSkgPT4gdm9pZClcblxuICAvKiogTWFwIE1vdmUgRW5kIGNhbGxiYWNrIGZ1bmN0aW9uLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBvbk1hcE1vdmVFbmQ/OiAoKHsgbWFwQ2VudGVyLCB6b29tTGV2ZWwsIGJvdW5kcyB9OiBNYXBab29tU3RhdGUpID0+IHZvaWQpXG5cbiAgLyoqIE1hcCBab29tIFN0YXJ0IGNhbGxiYWNrIGZ1bmN0aW9uLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBvbk1hcFpvb21TdGFydD86ICgoeyBtYXBDZW50ZXIsIHpvb21MZXZlbCwgYm91bmRzIH06IE1hcFpvb21TdGF0ZSkgPT4gdm9pZClcblxuICAvKiogTWFwIFpvb20gRW5kIGNhbGxiYWNrIGZ1bmN0aW9uLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBvbk1hcFpvb21FbmQ/OiAoKHsgbWFwQ2VudGVyLCB6b29tTGV2ZWwsIGJvdW5kcyB9OiBNYXBab29tU3RhdGUpID0+IHZvaWQpXG5cbiAgLyoqIE1hcCBab29tIEVuZCBjYWxsYmFjayBmdW5jdGlvbi4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgb25NYXBDbGljaz86ICgoeyBtYXBDZW50ZXIsIHpvb21MZXZlbCwgYm91bmRzIH06IE1hcFpvb21TdGF0ZSkgPT4gdm9pZClcblxuICAvKiogUG9pbnQgbG9uZ2l0dWRlIGFjY2Vzc29yIGZ1bmN0aW9uLiBEZWZhdWx0OiBgZCA9PiBkLmxvbmdpdHVkZWAgKi9cbiAgQElucHV0KCkgcG9pbnRMb25naXR1ZGU/OiBOdW1lcmljQWNjZXNzb3I8RGF0dW0+XG5cbiAgLyoqIFBvaW50IGxhdGl0dWRlIGFjY2Vzc29yIGZ1bmN0aW9uLiBEZWZhdWx0OiBgZCA9PiBkLmxhdGl0dWRlYCAqL1xuICBASW5wdXQoKSBwb2ludExhdGl0dWRlPzogTnVtZXJpY0FjY2Vzc29yPERhdHVtPlxuXG4gIC8qKiBQb2ludCBpZCBhY2Nlc3NvciBmdW5jdGlvbiBvciBjb25zdGFudCB2YWx1ZS4gRGVmYXVsdDogYGQgPT4gZC5pZGAgKi9cbiAgQElucHV0KCkgcG9pbnRJZD86IFN0cmluZ0FjY2Vzc29yPERhdHVtPlxuXG4gIC8qKiBQb2ludCBzaGFwZSBhY2Nlc3NvciBmdW5jdGlvbiBvciBjb25zdGFudCB2YWx1ZS4gRGVmYXVsdDogYGQgPT4gZC5zaGFwZWAgKi9cbiAgQElucHV0KCkgcG9pbnRTaGFwZT86IFN0cmluZ0FjY2Vzc29yPERhdHVtPlxuXG4gIC8qKiBQb2ludCBjb2xvciBhY2Nlc3NvciBmdW5jdGlvbiBvciBjb25zdGFudCB2YWx1ZS4gRGVmYXVsdDogYGQgPT4gZC5jb2xvcmAgKi9cbiAgQElucHV0KCkgcG9pbnRDb2xvcj86IENvbG9yQWNjZXNzb3I8RGF0dW0+XG5cbiAgLyoqIFBvaW50IHJhZGl1cyBhY2Nlc3NvciBmdW5jdGlvbiBvciBjb25zdGFudCB2YWx1ZS4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgcG9pbnRSYWRpdXM/OiBOdW1lcmljQWNjZXNzb3I8TGVhZmxldE1hcFBvaW50RGF0dW08RGF0dW0+PlxuXG4gIC8qKiBQb2ludCBpbm5lciBsYWJlbCBhY2Nlc3NvciBmdW5jdGlvbi4gRGVmYXVsdDogYGQgPT4gZC5wb2ludF9jb3VudCA/PyAnJ2AgKi9cbiAgQElucHV0KCkgcG9pbnRMYWJlbD86IFN0cmluZ0FjY2Vzc29yPExlYWZsZXRNYXBQb2ludERhdHVtPERhdHVtPj5cblxuICAvKiogUG9pbnQgYm90dG9tIGxhYmVsIGFjY2Vzc29yIGZ1bmN0aW9uLiBEZWZhdWx0OiBgJydgICovXG4gIEBJbnB1dCgpIHBvaW50Qm90dG9tTGFiZWw/OiBTdHJpbmdBY2Nlc3NvcjxMZWFmbGV0TWFwUG9pbnREYXR1bTxEYXR1bT4+XG5cbiAgLyoqIFBvaW50IGN1cnNvciB2YWx1ZSBvciBhY2Nlc3NvciBmdW5jdGlvbi4gRGVmYXVsdDogYG51bGxgICovXG4gIEBJbnB1dCgpIHBvaW50Q3Vyc29yPzogU3RyaW5nQWNjZXNzb3I8TGVhZmxldE1hcFBvaW50RGF0dW08RGF0dW0+PlxuXG4gIC8qKiBTZXQgc2VsZWN0ZWQgcG9pbnQgYnkgaXRzIHVuaXF1ZSBpZC4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgc2VsZWN0ZWRQb2ludElkPzogc3RyaW5nXG5cbiAgLyoqIENsdXN0ZXIgY29sb3IgYWNjZXNzb3IgZnVuY3Rpb24gb3IgY29uc3RhbnQgdmFsdWUuIERlZmF1bHQ6IGB1bmRlZmluZWRgICAqL1xuICBASW5wdXQoKSBjbHVzdGVyQ29sb3I/OiBDb2xvckFjY2Vzc29yPERhdHVtPlxuXG4gIC8qKiBDbHVzdGVyIHJhZGl1cyBhY2Nlc3NvciBmdW5jdGlvbiBvciBjb25zdGFudCB2YWx1ZS4gRGVmYXVsdDogYHVuZGVmaW5lZGAgICovXG4gIEBJbnB1dCgpIGNsdXN0ZXJSYWRpdXM/OiBOdW1lcmljQWNjZXNzb3I8TGVhZmxldE1hcENsdXN0ZXJEYXR1bTxEYXR1bT4+XG5cbiAgLyoqIENsdXN0ZXIgaW5uZXIgbGFiZWwgYWNjZXNzb3IgZnVuY3Rpb24uIERlZmF1bHQ6IGBkID0+IGQucG9pbnRfY291bnRgICAqL1xuICBASW5wdXQoKSBjbHVzdGVyTGFiZWw/OiBTdHJpbmdBY2Nlc3NvcjxMZWFmbGV0TWFwQ2x1c3RlckRhdHVtPERhdHVtPj5cblxuICAvKiogQ2x1c3RlciBib3R0b20gbGFiZWwgYWNjZXNzb3IgZnVuY3Rpb24uIERlZmF1bHQ6IGAnJ2AgKi9cbiAgQElucHV0KCkgY2x1c3RlckJvdHRvbUxhYmVsPzogU3RyaW5nQWNjZXNzb3I8TGVhZmxldE1hcENsdXN0ZXJEYXR1bTxEYXR1bT4+XG5cbiAgLyoqIFRoZSB3aWR0aCBvZiB0aGUgY2x1c3RlciBwb2ludCBvdXRsaW5lLiBEZWZhdWx0OiBgMS4yNWAgKi9cbiAgQElucHV0KCkgY2x1c3RlclJpbmdXaWR0aD86IG51bWJlclxuXG4gIC8qKiBXaGVuIGNsdXN0ZXIgaXMgZXhwYW5kZWQsIHNob3cgYSBiYWNrZ3JvdW5kIGNpcmNsZSB0byBiZXR0ZXIgc2VwYXJhdGUgcG9pbnRzIGZyb20gdGhlIGJhc2UgbWFwLiBEZWZhdWx0OiBgdHJ1ZWAgKi9cbiAgQElucHV0KCkgY2x1c3RlckJhY2tncm91bmQ/OiBib29sZWFuXG5cbiAgLyoqIERlZmluZXMgd2hldGhlciB0aGUgY2x1c3RlciBzaG91bGQgZXhwYW5kIG9uIGNsaWNrIG9yIG5vdC4gRGVmYXVsdDogYHRydWVgICovXG4gIEBJbnB1dCgpIGNsdXN0ZXJFeHBhbmRPbkNsaWNrPzogYm9vbGVhblxuXG4gIC8qKiBDbHVzdGVyaW5nIGRpc3RhbmNlIGluIHBpeGVscy4gVGhpcyB2YWx1ZSB3aWxsIGJlIHBhc3NlZCB0byBTdXBlcmNsdXN0ZXIgYXMgdGhlIGByYWRpdXNgIHByb3BlcnR5IGh0dHBzOi8vZ2l0aHViLmNvbS9tYXBib3gvc3VwZXJjbHVzdGVyLiBEZWZhdWx0OiBgNTVgICovXG4gIEBJbnB1dCgpIGNsdXN0ZXJpbmdEaXN0YW5jZT86IG51bWJlclxuXG4gIC8qKiBBIHNpbmdsZSBtYXAgcG9pbnQgY2FuIGhhdmUgbXVsdGlwbGUgcHJvcGVydGllcyBkaXNwbGF5ZWQgYXMgYSBzbWFsbCBwaWUgY2hhcnQgKG9yIGEgZG9udXQgY2hhcnQgZm9yIGEgY2x1c3RlciBvZiBwb2ludHMpLlxuICAgKiBCeSBzZXR0aW5nIHRoZSBjb2xvck1hcCBjb25maWd1cmF0aW9uIHlvdSBjYW4gc3BlY2lmeSBkYXRhIHByb3BlcnRpZXMgdGhhdCBzaG91bGQgYmUgbWFwcGVkIHRvIHZhcmlvdXMgcGllIC8gZG9udXQgc2VnbWVudHMuXG4gICAqXG4gICAqIGBgYFxuICAgKiB7XG4gICAqIFxcW2tleSBpbiBrZXlvZiBEYXR1bV0/OiB7IGNvbG9yOiBzdHJpbmcsIGNsYXNzTmFtZT86IHN0cmluZyB9XG4gICAqIH1cbiAgICogYGBgXG4gICAqIGUuZy46XG4gICAqIGBgYFxuICAgKiB7XG4gICAqIFxcaGVhbHRoeTogeyBjb2xvcjogJ2dyZWVuJyB9LFxuICAgKiBcXHdhcm5pbmc6IHsgY29sb3I6ICdvcmFuZ2UnIH0sXG4gICAqIFxcZGFuZ2VyOiB7IGNvbG9yOiAncmVkJyB9XG4gICAqIH1cbiAgICogYGBgXG4gICAqIHdoZXJlIGV2ZXJ5IGRhdGEgcG9pbnQgaGFzIHRoZSBgaGVhbHRoeWAsIGB3YXJuaW5nYCBhbmQgYGRhbmdlcmAgbnVtZXJpY2FsIG9yIGJvb2xlYW4gcHJvcGVydHkuICovXG4gIEBJbnB1dCgpIGNvbG9yTWFwPzogTGVhZmxldE1hcFBvaW50U3R5bGVzPERhdHVtPlxuXG4gIC8qKiBBIFRvcG9KU09OIEdlb21ldHJ5IGxheWVyIHRvIGJlIGRpc3BsYXllZCBvbiB0b3Agb2YgdGhlIG1hcC4gU3VwcG9ydHMgZmlsbCBhbmQgc3Ryb2tlICovXG4gIEBJbnB1dCgpIHRvcG9KU09OTGF5ZXI/OiB7XG4gICAgc291cmNlczogYW55O1xuICAgIGZlYXR1cmVOYW1lPzogc3RyaW5nO1xuICAgIGZpbGxQcm9wZXJ0eT86IHN0cmluZztcbiAgICBzdHJva2VQcm9wZXJ0eT86IHN0cmluZztcbiAgICBmaWxsT3BhY2l0eT86IG51bWJlcjtcbiAgICBzdHJva2VPcGFjaXR5PzogbnVtYmVyO1xuICAgIHN0cm9rZVdpZHRoPzogbnVtYmVyO1xuICB9XG5cbiAgLyoqIFRvb2x0aXAgY29tcG9uZW50LiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSB0b29sdGlwPzogVG9vbHRpcFxuXG4gIC8qKiBEYXRhICovXG4gIEBJbnB1dCgpIGRhdGE/OiBEYXR1bVtdXG5cbiAgY29tcG9uZW50OiBMZWFmbGV0TWFwPERhdHVtPiB8IHVuZGVmaW5lZFxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCAoKTogdm9pZCB7XG4gICAgY29uc3QgY29uZmlnID0gdGhpcy5nZXRDb25maWcoKVxuICAgIHRoaXMuY29tcG9uZW50ID0gbmV3IExlYWZsZXRNYXA8RGF0dW0+KHRoaXMuY29udGFpbmVyUmVmLm5hdGl2ZUVsZW1lbnQsIGNvbmZpZywgdGhpcy5kYXRhKVxuICB9XG5cbiAgbmdPbkNoYW5nZXMgKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlcy5kYXRhKSB7XG4gICAgICB0aGlzLmNvbXBvbmVudD8uc2V0RGF0YSh0aGlzLmRhdGEpXG4gICAgfVxuICAgIHRoaXMuY29tcG9uZW50Py5zZXRDb25maWcodGhpcy5nZXRDb25maWcoKSlcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29uZmlnICgpOiBMZWFmbGV0TWFwQ29uZmlnSW50ZXJmYWNlPERhdHVtPiB7XG4gICAgY29uc3QgeyB3aWR0aCwgaGVpZ2h0LCBkdXJhdGlvbiwgZXZlbnRzLCBhdHRyaWJ1dGVzLCBmbHlUb0R1cmF0aW9uLCBmaXRWaWV3UGFkZGluZywgem9vbUR1cmF0aW9uLCBpbml0aWFsQm91bmRzLCBmaXRCb3VuZHNPblVwZGF0ZSwgZml0Vmlld09uSW5pdCwgZml0Vmlld09uVXBkYXRlLCBhY2Nlc3NUb2tlbiwgc3R5bGUsIHN0eWxlRGFya1RoZW1lLCBhdHRyaWJ1dGlvbiwgb25NYXBJbml0aWFsaXplZCwgb25NYXBNb3ZlWm9vbSwgb25NYXBNb3ZlU3RhcnQsIG9uTWFwTW92ZUVuZCwgb25NYXBab29tU3RhcnQsIG9uTWFwWm9vbUVuZCwgb25NYXBDbGljaywgcG9pbnRMb25naXR1ZGUsIHBvaW50TGF0aXR1ZGUsIHBvaW50SWQsIHBvaW50U2hhcGUsIHBvaW50Q29sb3IsIHBvaW50UmFkaXVzLCBwb2ludExhYmVsLCBwb2ludEJvdHRvbUxhYmVsLCBwb2ludEN1cnNvciwgc2VsZWN0ZWRQb2ludElkLCBjbHVzdGVyQ29sb3IsIGNsdXN0ZXJSYWRpdXMsIGNsdXN0ZXJMYWJlbCwgY2x1c3RlckJvdHRvbUxhYmVsLCBjbHVzdGVyUmluZ1dpZHRoLCBjbHVzdGVyQmFja2dyb3VuZCwgY2x1c3RlckV4cGFuZE9uQ2xpY2ssIGNsdXN0ZXJpbmdEaXN0YW5jZSwgY29sb3JNYXAsIHRvcG9KU09OTGF5ZXIsIHRvb2x0aXAgfSA9IHRoaXNcbiAgICBjb25zdCBjb25maWcgPSB7IHdpZHRoLCBoZWlnaHQsIGR1cmF0aW9uLCBldmVudHMsIGF0dHJpYnV0ZXMsIGZseVRvRHVyYXRpb24sIGZpdFZpZXdQYWRkaW5nLCB6b29tRHVyYXRpb24sIGluaXRpYWxCb3VuZHMsIGZpdEJvdW5kc09uVXBkYXRlLCBmaXRWaWV3T25Jbml0LCBmaXRWaWV3T25VcGRhdGUsIGFjY2Vzc1Rva2VuLCBzdHlsZSwgc3R5bGVEYXJrVGhlbWUsIGF0dHJpYnV0aW9uLCBvbk1hcEluaXRpYWxpemVkLCBvbk1hcE1vdmVab29tLCBvbk1hcE1vdmVTdGFydCwgb25NYXBNb3ZlRW5kLCBvbk1hcFpvb21TdGFydCwgb25NYXBab29tRW5kLCBvbk1hcENsaWNrLCBwb2ludExvbmdpdHVkZSwgcG9pbnRMYXRpdHVkZSwgcG9pbnRJZCwgcG9pbnRTaGFwZSwgcG9pbnRDb2xvciwgcG9pbnRSYWRpdXMsIHBvaW50TGFiZWwsIHBvaW50Qm90dG9tTGFiZWwsIHBvaW50Q3Vyc29yLCBzZWxlY3RlZFBvaW50SWQsIGNsdXN0ZXJDb2xvciwgY2x1c3RlclJhZGl1cywgY2x1c3RlckxhYmVsLCBjbHVzdGVyQm90dG9tTGFiZWwsIGNsdXN0ZXJSaW5nV2lkdGgsIGNsdXN0ZXJCYWNrZ3JvdW5kLCBjbHVzdGVyRXhwYW5kT25DbGljaywgY2x1c3RlcmluZ0Rpc3RhbmNlLCBjb2xvck1hcCwgdG9wb0pTT05MYXllciwgdG9vbHRpcCB9XG4gICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGNvbmZpZykgYXMgKGtleW9mIExlYWZsZXRNYXBDb25maWdJbnRlcmZhY2U8RGF0dW0+KVtdXG4gICAga2V5cy5mb3JFYWNoKGtleSA9PiB7IGlmIChjb25maWdba2V5XSA9PT0gdW5kZWZpbmVkKSBkZWxldGUgY29uZmlnW2tleV0gfSlcblxuICAgIHJldHVybiBjb25maWdcbiAgfVxufVxuIl19