@sbb-esta/lyne-elements 0.52.0 → 0.52.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts.map +1 -1
- package/breadcrumb/breadcrumb-group.js +32 -31
- package/core/base-elements.js +1 -2
- package/core/datetime.js +2 -4
- package/core/overlay/overlay.d.ts.map +1 -1
- package/core/overlay.js +55 -50
- package/core/testing/event-spy.d.ts +1 -1
- package/core/testing/wait-for-image-ready.d.ts +4 -0
- package/core/testing/wait-for-image-ready.d.ts.map +1 -0
- package/core/testing.d.ts +1 -0
- package/core/testing.d.ts.map +1 -1
- package/core/testing.js +28 -17
- package/custom-elements.json +70 -4
- package/development/accordion.js +2 -3
- package/development/action-group.js +2 -3
- package/development/alert/alert-group.js +2 -3
- package/development/alert/alert.js +2 -3
- package/development/autocomplete.js +2 -3
- package/development/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts.map +1 -1
- package/development/breadcrumb/breadcrumb-group.js +5 -5
- package/development/breadcrumb/breadcrumb.js +2 -3
- package/development/button/button-link.js +2 -3
- package/development/button/button-static.js +2 -3
- package/development/button/button.js +2 -3
- package/development/button/common.js +2 -3
- package/development/button/mini-button.js +2 -3
- package/development/button/secondary-button-link.js +2 -3
- package/development/button/secondary-button-static.js +2 -3
- package/development/button/secondary-button.js +2 -3
- package/development/button/tertiary-button-link.js +2 -3
- package/development/button/tertiary-button-static.js +2 -3
- package/development/button/tertiary-button.js +2 -3
- package/development/button/transparent-button-link.js +2 -3
- package/development/button/transparent-button-static.js +2 -3
- package/development/button/transparent-button.js +2 -3
- package/development/calendar.js +2 -3
- package/development/card/card-badge.js +2 -3
- package/development/card/card-button.js +2 -3
- package/development/card/card-link.js +2 -3
- package/development/card/card.js +2 -3
- package/development/card/common.js +2 -3
- package/development/checkbox/checkbox-group.js +2 -3
- package/development/checkbox/checkbox.js +2 -3
- package/development/chip.js +2 -3
- package/development/clock.js +2 -3
- package/development/container/container.js +2 -3
- package/development/container/sticky-bar.js +2 -3
- package/development/core/base-elements.js +4 -7
- package/development/core/mixins.js +7 -13
- package/development/core/overlay/overlay.d.ts.map +1 -1
- package/development/core/overlay.js +9 -3
- package/development/core/testing/event-spy.d.ts +1 -1
- package/development/core/testing/wait-for-image-ready.d.ts +4 -0
- package/development/core/testing/wait-for-image-ready.d.ts.map +1 -0
- package/development/core/testing.d.ts +1 -0
- package/development/core/testing.d.ts.map +1 -1
- package/development/core/testing.js +17 -1
- package/development/datepicker/common.js +2 -3
- package/development/datepicker/datepicker-next-day.js +2 -3
- package/development/datepicker/datepicker-previous-day.js +2 -3
- package/development/datepicker/datepicker-toggle.js +2 -3
- package/development/datepicker/datepicker.js +2 -3
- package/development/dialog/dialog-actions.js +2 -3
- package/development/dialog/dialog-content.js +2 -3
- package/development/dialog/dialog-title.js +2 -3
- package/development/dialog/dialog.js +2 -3
- package/development/divider.js +2 -3
- package/development/expansion-panel/expansion-panel-content.js +2 -3
- package/development/expansion-panel/expansion-panel-header.js +2 -3
- package/development/expansion-panel/expansion-panel.js +2 -3
- package/development/file-selector.js +2 -3
- package/development/footer.js +2 -3
- package/development/form-error.js +2 -3
- package/development/form-field/form-field-clear.js +2 -3
- package/development/form-field/form-field.js +2 -3
- package/development/header/common.js +2 -3
- package/development/header/header-button.js +2 -3
- package/development/header/header-link.js +2 -3
- package/development/header/header.js +2 -3
- package/development/icon.js +4 -7
- package/development/image/image.d.ts +12 -3
- package/development/image/image.d.ts.map +1 -1
- package/development/image.js +41 -24
- package/development/journey-header.js +2 -3
- package/development/lead-container.js +2 -3
- package/development/link/block-link-button.js +2 -3
- package/development/link/block-link-static.js +2 -3
- package/development/link/block-link.js +2 -3
- package/development/link/common.js +3 -5
- package/development/link/link-button.js +2 -3
- package/development/link/link-static.js +2 -3
- package/development/link/link.js +2 -3
- package/development/link-list.js +2 -3
- package/development/loading-indicator.js +2 -3
- package/development/logo.js +2 -3
- package/development/map-container.js +2 -3
- package/development/menu/common.js +2 -3
- package/development/menu/menu-button.js +2 -3
- package/development/menu/menu-link.js +2 -3
- package/development/menu/menu.js +2 -3
- package/development/message.js +2 -3
- package/development/navigation/common.js +2 -3
- package/development/navigation/navigation-button.js +2 -3
- package/development/navigation/navigation-link.js +2 -3
- package/development/navigation/navigation-list.js +2 -3
- package/development/navigation/navigation-marker.js +2 -3
- package/development/navigation/navigation-section.js +2 -3
- package/development/navigation/navigation.js +2 -3
- package/development/notification.js +2 -3
- package/development/option/optgroup.js +2 -3
- package/development/option/option.js +2 -3
- package/development/overlay.js +3 -5
- package/development/popover/popover-trigger.js +2 -3
- package/development/popover/popover.js +2 -3
- package/development/radio-button/radio-button-group.js +2 -3
- package/development/radio-button/radio-button.js +2 -3
- package/development/screen-reader-only.js +2 -3
- package/development/select.js +2 -3
- package/development/selection-panel.js +2 -3
- package/development/signet.js +2 -3
- package/development/skiplink-list.js +2 -3
- package/development/slider.js +2 -3
- package/development/status.js +2 -3
- package/development/stepper/step-label.js +2 -3
- package/development/stepper/step.js +2 -3
- package/development/stepper/stepper/stepper.d.ts +1 -1
- package/development/stepper/stepper/stepper.d.ts.map +1 -1
- package/development/stepper/stepper.js +5 -6
- package/development/tabs/tab-group.js +2 -3
- package/development/tabs/tab-title.js +2 -3
- package/development/tag/tag-group.js +2 -3
- package/development/tag/tag.js +2 -3
- package/development/teaser-hero.js +2 -3
- package/development/teaser-paid.js +2 -3
- package/development/teaser.js +2 -3
- package/development/time-input.js +2 -3
- package/development/timetable-occupancy-icon.js +2 -3
- package/development/timetable-occupancy.js +2 -3
- package/development/title.js +3 -5
- package/development/toast.js +2 -3
- package/development/toggle/toggle-option.js +3 -5
- package/development/toggle/toggle.js +2 -3
- package/development/toggle-check.js +10 -3
- package/development/train/train-blocked-passage.js +2 -3
- package/development/train/train-formation.js +2 -3
- package/development/train/train-wagon.js +2 -3
- package/development/train/train.js +2 -3
- package/development/visual-checkbox.js +2 -3
- package/image/image.d.ts +12 -3
- package/image/image.d.ts.map +1 -1
- package/image.js +91 -78
- package/package.json +1 -1
- package/stepper/stepper/stepper.d.ts +1 -1
- package/stepper/stepper/stepper.d.ts.map +1 -1
- package/stepper/stepper.js +3 -3
- package/toggle-check.js +14 -14
- package/train/train-formation.js +1 -2
|
@@ -186,8 +186,7 @@ var __decorateClass = (decorators, target, key, kind) => {
|
|
|
186
186
|
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
187
187
|
if (decorator = decorators[i])
|
|
188
188
|
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
189
|
-
if (kind && result)
|
|
190
|
-
__defProp(target, key, result);
|
|
189
|
+
if (kind && result) __defProp(target, key, result);
|
|
191
190
|
return result;
|
|
192
191
|
};
|
|
193
192
|
let SbbRadioButtonElement = class extends SbbUpdateSchedulerMixin(LitElement) {
|
|
@@ -395,4 +394,4 @@ SbbRadioButtonElement = __decorateClass([
|
|
|
395
394
|
export {
|
|
396
395
|
SbbRadioButtonElement
|
|
397
396
|
};
|
|
398
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tYnV0dG9uLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvcmFkaW8tYnV0dG9uL3JhZGlvLWJ1dHRvbi9yYWRpby1idXR0b24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgUHJvcGVydHlWYWx1ZXMsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQsIG5vdGhpbmcgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHksIHN0YXRlIH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQge1xuICBTYmJDb25uZWN0ZWRBYm9ydENvbnRyb2xsZXIsXG4gIFNiYkxhbmd1YWdlQ29udHJvbGxlcixcbiAgU2JiU2xvdFN0YXRlQ29udHJvbGxlcixcbn0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBob3N0QXR0cmlidXRlcyB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBzZXRPclJlbW92ZUF0dHJpYnV0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLmpzJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciwgZm9ybUVsZW1lbnRIYW5kbGVyQXNwZWN0LCBIYW5kbGVyUmVwb3NpdG9yeSB9IGZyb20gJy4uLy4uL2NvcmUvZXZlbnRpbmcuanMnO1xuaW1wb3J0IHsgaTE4bkNvbGxhcHNlZCwgaTE4bkV4cGFuZGVkIH0gZnJvbSAnLi4vLi4vY29yZS9pMThuLmpzJztcbmltcG9ydCB0eXBlIHtcbiAgU2JiQ2hlY2tlZFN0YXRlQ2hhbmdlLFxuICBTYmJEaXNhYmxlZFN0YXRlQ2hhbmdlLFxuICBTYmJTdGF0ZUNoYW5nZSxcbn0gZnJvbSAnLi4vLi4vY29yZS9pbnRlcmZhY2VzLmpzJztcbmltcG9ydCB7IFNiYlVwZGF0ZVNjaGVkdWxlck1peGluIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJTZWxlY3Rpb25QYW5lbEVsZW1lbnQgfSBmcm9tICcuLi8uLi9zZWxlY3Rpb24tcGFuZWwuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJSYWRpb0J1dHRvbkdyb3VwRWxlbWVudCB9IGZyb20gJy4uL3JhZGlvLWJ1dHRvbi1ncm91cC5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3JhZGlvLWJ1dHRvbi5zY3NzP2xpdCZpbmxpbmUnO1xuXG5leHBvcnQgdHlwZSBTYmJSYWRpb0J1dHRvblN0YXRlQ2hhbmdlID0gRXh0cmFjdDxcbiAgU2JiU3RhdGVDaGFuZ2UsXG4gIFNiYkRpc2FibGVkU3RhdGVDaGFuZ2UgfCBTYmJDaGVja2VkU3RhdGVDaGFuZ2Vcbj47XG5cbmV4cG9ydCB0eXBlIFNiYlJhZGlvQnV0dG9uU2l6ZSA9ICdzJyB8ICdtJztcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBhIHJhZGlvIGJ1dHRvbiBlbmhhbmNlZCB3aXRoIHRoZSBTQkIgRGVzaWduLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIHJhZGlvIGxhYmVsLlxuICogQHNsb3Qgc3VidGV4dCAtIFNsb3QgdXNlZCB0byByZW5kZXIgYSBzdWJ0ZXh0IHVuZGVyIHRoZSBsYWJlbCAob25seSB2aXNpYmxlIHdpdGhpbiBhIGBzYmItc2VsZWN0aW9uLXBhbmVsYCkuXG4gKiBAc2xvdCBzdWZmaXggLSBTbG90IHVzZWQgdG8gcmVuZGVyIGFkZGl0aW9uYWwgY29udGVudCBhZnRlciB0aGUgbGFiZWwgKG9ubHkgdmlzaWJsZSB3aXRoaW4gYSBgc2JiLXNlbGVjdGlvbi1wYW5lbGApLlxuICovXG5AY3VzdG9tRWxlbWVudCgnc2JiLXJhZGlvLWJ1dHRvbicpXG5AaG9zdEF0dHJpYnV0ZXMoe1xuICByb2xlOiAncmFkaW8nLFxufSlcbmV4cG9ydCBjbGFzcyBTYmJSYWRpb0J1dHRvbkVsZW1lbnQgZXh0ZW5kcyBTYmJVcGRhdGVTY2hlZHVsZXJNaXhpbihMaXRFbGVtZW50KSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50cyA9IHtcbiAgICBzdGF0ZUNoYW5nZTogJ3N0YXRlQ2hhbmdlJyxcbiAgICByYWRpb0J1dHRvbkxvYWRlZDogJ3JhZGlvQnV0dG9uTG9hZGVkJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgcmFkaW8gY2FuIGJlIGRlc2VsZWN0ZWQuXG4gICAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhbGxvdy1lbXB0eS1zZWxlY3Rpb24nLCB0eXBlOiBCb29sZWFuIH0pXG4gIHB1YmxpYyBzZXQgYWxsb3dFbXB0eVNlbGVjdGlvbih2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2FsbG93RW1wdHlTZWxlY3Rpb24gPSBCb29sZWFuKHZhbHVlKTtcbiAgfVxuICBwdWJsaWMgZ2V0IGFsbG93RW1wdHlTZWxlY3Rpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2FsbG93RW1wdHlTZWxlY3Rpb24gfHwgKHRoaXMuZ3JvdXA/LmFsbG93RW1wdHlTZWxlY3Rpb24gPz8gZmFsc2UpO1xuICB9XG4gIHByaXZhdGUgX2FsbG93RW1wdHlTZWxlY3Rpb24gPSBmYWxzZTtcblxuICAvKipcbiAgICogVmFsdWUgb2YgcmFkaW8gYnV0dG9uLlxuICAgKi9cbiAgQHByb3BlcnR5KCkgcHVibGljIHZhbHVlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSByYWRpbyBidXR0b24gaXMgZGlzYWJsZWQuXG4gICAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlLCB0eXBlOiBCb29sZWFuIH0pXG4gIHB1YmxpYyBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IEJvb2xlYW4odmFsdWUpO1xuICB9XG4gIHB1YmxpYyBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkIHx8ICh0aGlzLmdyb3VwPy5kaXNhYmxlZCA/PyBmYWxzZSk7XG4gIH1cbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgcmFkaW8gYnV0dG9uIGlzIHJlcXVpcmVkLlxuICAgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgc2V0IHJlcXVpcmVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fcmVxdWlyZWQgPSBCb29sZWFuKHZhbHVlKTtcbiAgfVxuICBwdWJsaWMgZ2V0IHJlcXVpcmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9yZXF1aXJlZCB8fCAodGhpcy5ncm91cD8ucmVxdWlyZWQgPz8gZmFsc2UpO1xuICB9XG4gIHByaXZhdGUgX3JlcXVpcmVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFJlZmVyZW5jZSB0byB0aGUgY29ubmVjdGVkIHJhZGlvIGJ1dHRvbiBncm91cC5cbiAgICovXG4gIHB1YmxpYyBnZXQgZ3JvdXAoKTogU2JiUmFkaW9CdXR0b25Hcm91cEVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fZ3JvdXA7XG4gIH1cbiAgcHJpdmF0ZSBfZ3JvdXA6IFNiYlJhZGlvQnV0dG9uR3JvdXBFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHJhZGlvIGJ1dHRvbiBpcyBjaGVja2VkLlxuICAgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgc2V0IGNoZWNrZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9jaGVja2VkID0gQm9vbGVhbih2YWx1ZSk7XG4gIH1cbiAgcHVibGljIGdldCBjaGVja2VkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9jaGVja2VkO1xuICB9XG4gIHByaXZhdGUgX2NoZWNrZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogTGFiZWwgc2l6ZSB2YXJpYW50LCBlaXRoZXIgbSBvciBzLlxuICAgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KVxuICBwdWJsaWMgc2V0IHNpemUodmFsdWU6IFNiYlJhZGlvQnV0dG9uU2l6ZSkge1xuICAgIHRoaXMuX3NpemUgPSB2YWx1ZTtcbiAgfVxuICBwdWJsaWMgZ2V0IHNpemUoKTogU2JiUmFkaW9CdXR0b25TaXplIHtcbiAgICByZXR1cm4gdGhpcy5ncm91cD8uc2l6ZSA/PyB0aGlzLl9zaXplO1xuICB9XG4gIHByaXZhdGUgX3NpemU6IFNiYlJhZGlvQnV0dG9uU2l6ZSA9ICdtJztcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgaW5wdXQgaXMgdGhlIG1haW4gaW5wdXQgb2YgYSBzZWxlY3Rpb24gcGFuZWwuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGdldCBpc1NlbGVjdGlvblBhbmVsSW5wdXQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2lzU2VsZWN0aW9uUGFuZWxJbnB1dDtcbiAgfVxuICBAc3RhdGUoKSBwcml2YXRlIF9pc1NlbGVjdGlvblBhbmVsSW5wdXQgPSBmYWxzZTtcblxuICAvKipcbiAgICogVGhlIGxhYmVsIGRlc2NyaWJpbmcgd2hldGhlciB0aGUgc2VsZWN0aW9uIHBhbmVsIGlzIGV4cGFuZGVkIChmb3Igc2NyZWVuIHJlYWRlcnMgb25seSkuXG4gICAqL1xuICBAc3RhdGUoKSBwcml2YXRlIF9zZWxlY3Rpb25QYW5lbEV4cGFuZGVkTGFiZWw/OiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBfc2VsZWN0aW9uUGFuZWxFbGVtZW50OiBTYmJTZWxlY3Rpb25QYW5lbEVsZW1lbnQgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfYWJvcnQgPSBuZXcgU2JiQ29ubmVjdGVkQWJvcnRDb250cm9sbGVyKHRoaXMpO1xuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKiBJbnRlcm5hbCBldmVudCB0aGF0IGVtaXRzIHdoZW5ldmVyIHRoZSBzdGF0ZSBvZiB0aGUgcmFkaW8gb3B0aW9uXG4gICAqIGluIHJlbGF0aW9uIHRvIHRoZSBwYXJlbnQgc2VsZWN0aW9uIHBhbmVsIGNoYW5nZXMuXG4gICAqL1xuICBwcml2YXRlIF9zdGF0ZUNoYW5nZTogRXZlbnRFbWl0dGVyPFNiYlJhZGlvQnV0dG9uU3RhdGVDaGFuZ2U+ID0gbmV3IEV2ZW50RW1pdHRlcihcbiAgICB0aGlzLFxuICAgIFNiYlJhZGlvQnV0dG9uRWxlbWVudC5ldmVudHMuc3RhdGVDaGFuZ2UsXG4gICAgeyBidWJibGVzOiB0cnVlIH0sXG4gICk7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKiBJbnRlcm5hbCBldmVudCB0aGF0IGVtaXRzIHdoZW4gdGhlIHJhZGlvIGJ1dHRvbiBpcyBsb2FkZWQuXG4gICAqL1xuICBwcml2YXRlIF9yYWRpb0J1dHRvbkxvYWRlZDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcihcbiAgICB0aGlzLFxuICAgIFNiYlJhZGlvQnV0dG9uRWxlbWVudC5ldmVudHMucmFkaW9CdXR0b25Mb2FkZWQsXG4gICAgeyBidWJibGVzOiB0cnVlIH0sXG4gICk7XG4gIHByaXZhdGUgX2hhbmRsZUNsaWNrKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5zZWxlY3QoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZWxlY3QoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5hbGxvd0VtcHR5U2VsZWN0aW9uKSB7XG4gICAgICB0aGlzLmNoZWNrZWQgPSAhdGhpcy5jaGVja2VkO1xuICAgIH0gZWxzZSBpZiAoIXRoaXMuY2hlY2tlZCkge1xuICAgICAgdGhpcy5jaGVja2VkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVyUmVwb3NpdG9yeSA9IG5ldyBIYW5kbGVyUmVwb3NpdG9yeSh0aGlzLCBmb3JtRWxlbWVudEhhbmRsZXJBc3BlY3QpO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIG5ldyBTYmJTbG90U3RhdGVDb250cm9sbGVyKHRoaXMpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fZ3JvdXAgPSB0aGlzLmNsb3Nlc3QoJ3NiYi1yYWRpby1idXR0b24tZ3JvdXAnKSBhcyBTYmJSYWRpb0J1dHRvbkdyb3VwRWxlbWVudDtcbiAgICAvLyBXZSBjYW4gdXNlIGNsb3Nlc3QgaGVyZSwgYXMgd2UgZXhwZWN0IHRoZSBwYXJlbnQgc2JiLXNlbGVjdGlvbi1wYW5lbCB0byBiZSBpbiBsaWdodCBET00uXG4gICAgdGhpcy5fc2VsZWN0aW9uUGFuZWxFbGVtZW50ID0gdGhpcy5jbG9zZXN0KCdzYmItc2VsZWN0aW9uLXBhbmVsJyk7XG4gICAgdGhpcy5faXNTZWxlY3Rpb25QYW5lbElucHV0ID1cbiAgICAgICEhdGhpcy5fc2VsZWN0aW9uUGFuZWxFbGVtZW50ICYmICF0aGlzLmNsb3Nlc3QoJ3NiYi1zZWxlY3Rpb24tcGFuZWwgW3Nsb3Q9XCJjb250ZW50XCJdJyk7XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtaXMtc2VsZWN0aW9uLXBhbmVsLWlucHV0JywgdGhpcy5faXNTZWxlY3Rpb25QYW5lbElucHV0KTtcblxuICAgIGNvbnN0IHNpZ25hbCA9IHRoaXMuX2Fib3J0LnNpZ25hbDtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKGUpID0+IHRoaXMuX2hhbmRsZUNsaWNrKGUpLCB7IHNpZ25hbCB9KTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCAoZSkgPT4gdGhpcy5faGFuZGxlS2V5RG93bihlKSwgeyBzaWduYWwgfSk7XG4gICAgdGhpcy5faGFuZGxlclJlcG9zaXRvcnkuY29ubmVjdCgpO1xuICAgIHRoaXMuX3JhZGlvQnV0dG9uTG9hZGVkLmVtaXQoKTtcblxuICAgIC8vIFdlIG5lZWQgdG8gY2FsbCByZXF1ZXN0VXBkYXRlIHRvIHVwZGF0ZSB0aGUgcmVmbGVjdGVkIGF0dHJpYnV0ZXNcbiAgICBbJ2Rpc2FibGVkJywgJ3JlcXVpcmVkJywgJ3NpemUnXS5mb3JFYWNoKChwKSA9PiB0aGlzLnJlcXVlc3RVcGRhdGUocCkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdjaGVja2VkJykpIHtcbiAgICAgIHRoaXMuc2V0QXR0cmlidXRlKCdhcmlhLWNoZWNrZWQnLCBgJHt0aGlzLmNoZWNrZWR9YCk7XG4gICAgICBpZiAodGhpcy5jaGVja2VkICE9PSBjaGFuZ2VkUHJvcGVydGllcy5nZXQoJ2NoZWNrZWQnKSEpIHtcbiAgICAgICAgdGhpcy5fc3RhdGVDaGFuZ2UuZW1pdCh7IHR5cGU6ICdjaGVja2VkJywgY2hlY2tlZDogdGhpcy5jaGVja2VkIH0pO1xuICAgICAgICB0aGlzLmlzU2VsZWN0aW9uUGFuZWxJbnB1dCAmJiB0aGlzLl91cGRhdGVFeHBhbmRlZExhYmVsKCk7XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2Rpc2FibGVkJykpIHtcbiAgICAgIHNldE9yUmVtb3ZlQXR0cmlidXRlKHRoaXMsICdhcmlhLWRpc2FibGVkJywgdGhpcy5kaXNhYmxlZCA/ICd0cnVlJyA6IG51bGwpO1xuICAgICAgaWYgKHRoaXMuZGlzYWJsZWQgIT09IGNoYW5nZWRQcm9wZXJ0aWVzLmdldCgnZGlzYWJsZWQnKSEpIHtcbiAgICAgICAgdGhpcy5fc3RhdGVDaGFuZ2UuZW1pdCh7IHR5cGU6ICdkaXNhYmxlZCcsIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdyZXF1aXJlZCcpKSB7XG4gICAgICB0aGlzLnNldEF0dHJpYnV0ZSgnYXJpYS1yZXF1aXJlZCcsIGAke3RoaXMucmVxdWlyZWR9YCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci5maXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgLy8gV2UgbmVlZCB0byB3YWl0IGZvciB0aGUgc2VsZWN0aW9uLXBhbmVsIHRvIGJlIGZ1bGx5IGluaXRpYWxpemVkXG4gICAgdGhpcy5zdGFydFVwZGF0ZSgpO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5pc1NlbGVjdGlvblBhbmVsSW5wdXQgJiYgdGhpcy5fdXBkYXRlRXhwYW5kZWRMYWJlbCgpO1xuICAgICAgdGhpcy5jb21wbGV0ZVVwZGF0ZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5faGFuZGxlclJlcG9zaXRvcnkuZGlzY29ubmVjdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlS2V5RG93bihldnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZ0LmNvZGUgPT09ICdTcGFjZScpIHtcbiAgICAgIHRoaXMuc2VsZWN0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlRXhwYW5kZWRMYWJlbCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX3NlbGVjdGlvblBhbmVsRWxlbWVudD8uaGFzQ29udGVudCkge1xuICAgICAgdGhpcy5fc2VsZWN0aW9uUGFuZWxFeHBhbmRlZExhYmVsID0gJyc7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fc2VsZWN0aW9uUGFuZWxFeHBhbmRlZExhYmVsID0gdGhpcy5jaGVja2VkXG4gICAgICA/ICcsICcgKyBpMThuRXhwYW5kZWRbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF1cbiAgICAgIDogJywgJyArIGkxOG5Db2xsYXBzZWRbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF07XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxsYWJlbCBjbGFzcz1cInNiYi1yYWRpby1idXR0b25cIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMuZGlzYWJsZWR9XG4gICAgICAgICAgP3JlcXVpcmVkPSR7dGhpcy5yZXF1aXJlZH1cbiAgICAgICAgICA/Y2hlY2tlZD0ke3RoaXMuY2hlY2tlZH1cbiAgICAgICAgICB2YWx1ZT0ke3RoaXMudmFsdWUgfHwgbm90aGluZ31cbiAgICAgICAgICBjbGFzcz1cInNiYi1zY3JlZW4tcmVhZGVyLW9ubHlcIlxuICAgICAgICAvPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1yYWRpby1idXR0b25fX2xhYmVsLXNsb3RcIj5cbiAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgICAgJHt0aGlzLl9zZWxlY3Rpb25QYW5lbEVsZW1lbnQgPyBodG1sYDxzbG90IG5hbWU9XCJzdWZmaXhcIj48L3Nsb3Q+YCA6IG5vdGhpbmd9XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgJHt0aGlzLl9zZWxlY3Rpb25QYW5lbEVsZW1lbnQgPyBodG1sYDxzbG90IG5hbWU9XCJzdWJ0ZXh0XCI+PC9zbG90PmAgOiBub3RoaW5nfVxuICAgICAgICAke3RoaXMuaXNTZWxlY3Rpb25QYW5lbElucHV0ICYmIHRoaXMuX3NlbGVjdGlvblBhbmVsRXhwYW5kZWRMYWJlbFxuICAgICAgICAgID8gaHRtbGA8c3BhbiBjbGFzcz1cInNiYi1zY3JlZW4tcmVhZGVyLW9ubHlcIj4gJHt0aGlzLl9zZWxlY3Rpb25QYW5lbEV4cGFuZGVkTGFiZWx9IDwvc3Bhbj5gXG4gICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgPC9sYWJlbD5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItcmFkaW8tYnV0dG9uJzogU2JiUmFkaW9CdXR0b25FbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBMENPLElBQU0sd0JBQU4sY0FBb0Msd0JBQXdCLFVBQVUsRUFBRTtBQUFBLEVB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
|
|
397
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tYnV0dG9uLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvcmFkaW8tYnV0dG9uL3JhZGlvLWJ1dHRvbi9yYWRpby1idXR0b24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgUHJvcGVydHlWYWx1ZXMsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQsIG5vdGhpbmcgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHksIHN0YXRlIH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQge1xuICBTYmJDb25uZWN0ZWRBYm9ydENvbnRyb2xsZXIsXG4gIFNiYkxhbmd1YWdlQ29udHJvbGxlcixcbiAgU2JiU2xvdFN0YXRlQ29udHJvbGxlcixcbn0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBob3N0QXR0cmlidXRlcyB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBzZXRPclJlbW92ZUF0dHJpYnV0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLmpzJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciwgZm9ybUVsZW1lbnRIYW5kbGVyQXNwZWN0LCBIYW5kbGVyUmVwb3NpdG9yeSB9IGZyb20gJy4uLy4uL2NvcmUvZXZlbnRpbmcuanMnO1xuaW1wb3J0IHsgaTE4bkNvbGxhcHNlZCwgaTE4bkV4cGFuZGVkIH0gZnJvbSAnLi4vLi4vY29yZS9pMThuLmpzJztcbmltcG9ydCB0eXBlIHtcbiAgU2JiQ2hlY2tlZFN0YXRlQ2hhbmdlLFxuICBTYmJEaXNhYmxlZFN0YXRlQ2hhbmdlLFxuICBTYmJTdGF0ZUNoYW5nZSxcbn0gZnJvbSAnLi4vLi4vY29yZS9pbnRlcmZhY2VzLmpzJztcbmltcG9ydCB7IFNiYlVwZGF0ZVNjaGVkdWxlck1peGluIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJTZWxlY3Rpb25QYW5lbEVsZW1lbnQgfSBmcm9tICcuLi8uLi9zZWxlY3Rpb24tcGFuZWwuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJSYWRpb0J1dHRvbkdyb3VwRWxlbWVudCB9IGZyb20gJy4uL3JhZGlvLWJ1dHRvbi1ncm91cC5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3JhZGlvLWJ1dHRvbi5zY3NzP2xpdCZpbmxpbmUnO1xuXG5leHBvcnQgdHlwZSBTYmJSYWRpb0J1dHRvblN0YXRlQ2hhbmdlID0gRXh0cmFjdDxcbiAgU2JiU3RhdGVDaGFuZ2UsXG4gIFNiYkRpc2FibGVkU3RhdGVDaGFuZ2UgfCBTYmJDaGVja2VkU3RhdGVDaGFuZ2Vcbj47XG5cbmV4cG9ydCB0eXBlIFNiYlJhZGlvQnV0dG9uU2l6ZSA9ICdzJyB8ICdtJztcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBhIHJhZGlvIGJ1dHRvbiBlbmhhbmNlZCB3aXRoIHRoZSBTQkIgRGVzaWduLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIHJhZGlvIGxhYmVsLlxuICogQHNsb3Qgc3VidGV4dCAtIFNsb3QgdXNlZCB0byByZW5kZXIgYSBzdWJ0ZXh0IHVuZGVyIHRoZSBsYWJlbCAob25seSB2aXNpYmxlIHdpdGhpbiBhIGBzYmItc2VsZWN0aW9uLXBhbmVsYCkuXG4gKiBAc2xvdCBzdWZmaXggLSBTbG90IHVzZWQgdG8gcmVuZGVyIGFkZGl0aW9uYWwgY29udGVudCBhZnRlciB0aGUgbGFiZWwgKG9ubHkgdmlzaWJsZSB3aXRoaW4gYSBgc2JiLXNlbGVjdGlvbi1wYW5lbGApLlxuICovXG5AY3VzdG9tRWxlbWVudCgnc2JiLXJhZGlvLWJ1dHRvbicpXG5AaG9zdEF0dHJpYnV0ZXMoe1xuICByb2xlOiAncmFkaW8nLFxufSlcbmV4cG9ydCBjbGFzcyBTYmJSYWRpb0J1dHRvbkVsZW1lbnQgZXh0ZW5kcyBTYmJVcGRhdGVTY2hlZHVsZXJNaXhpbihMaXRFbGVtZW50KSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50cyA9IHtcbiAgICBzdGF0ZUNoYW5nZTogJ3N0YXRlQ2hhbmdlJyxcbiAgICByYWRpb0J1dHRvbkxvYWRlZDogJ3JhZGlvQnV0dG9uTG9hZGVkJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgcmFkaW8gY2FuIGJlIGRlc2VsZWN0ZWQuXG4gICAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhbGxvdy1lbXB0eS1zZWxlY3Rpb24nLCB0eXBlOiBCb29sZWFuIH0pXG4gIHB1YmxpYyBzZXQgYWxsb3dFbXB0eVNlbGVjdGlvbih2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2FsbG93RW1wdHlTZWxlY3Rpb24gPSBCb29sZWFuKHZhbHVlKTtcbiAgfVxuICBwdWJsaWMgZ2V0IGFsbG93RW1wdHlTZWxlY3Rpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2FsbG93RW1wdHlTZWxlY3Rpb24gfHwgKHRoaXMuZ3JvdXA/LmFsbG93RW1wdHlTZWxlY3Rpb24gPz8gZmFsc2UpO1xuICB9XG4gIHByaXZhdGUgX2FsbG93RW1wdHlTZWxlY3Rpb24gPSBmYWxzZTtcblxuICAvKipcbiAgICogVmFsdWUgb2YgcmFkaW8gYnV0dG9uLlxuICAgKi9cbiAgQHByb3BlcnR5KCkgcHVibGljIHZhbHVlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSByYWRpbyBidXR0b24gaXMgZGlzYWJsZWQuXG4gICAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlLCB0eXBlOiBCb29sZWFuIH0pXG4gIHB1YmxpYyBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IEJvb2xlYW4odmFsdWUpO1xuICB9XG4gIHB1YmxpYyBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkIHx8ICh0aGlzLmdyb3VwPy5kaXNhYmxlZCA/PyBmYWxzZSk7XG4gIH1cbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgcmFkaW8gYnV0dG9uIGlzIHJlcXVpcmVkLlxuICAgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgc2V0IHJlcXVpcmVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fcmVxdWlyZWQgPSBCb29sZWFuKHZhbHVlKTtcbiAgfVxuICBwdWJsaWMgZ2V0IHJlcXVpcmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9yZXF1aXJlZCB8fCAodGhpcy5ncm91cD8ucmVxdWlyZWQgPz8gZmFsc2UpO1xuICB9XG4gIHByaXZhdGUgX3JlcXVpcmVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFJlZmVyZW5jZSB0byB0aGUgY29ubmVjdGVkIHJhZGlvIGJ1dHRvbiBncm91cC5cbiAgICovXG4gIHB1YmxpYyBnZXQgZ3JvdXAoKTogU2JiUmFkaW9CdXR0b25Hcm91cEVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fZ3JvdXA7XG4gIH1cbiAgcHJpdmF0ZSBfZ3JvdXA6IFNiYlJhZGlvQnV0dG9uR3JvdXBFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHJhZGlvIGJ1dHRvbiBpcyBjaGVja2VkLlxuICAgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSwgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgc2V0IGNoZWNrZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9jaGVja2VkID0gQm9vbGVhbih2YWx1ZSk7XG4gIH1cbiAgcHVibGljIGdldCBjaGVja2VkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9jaGVja2VkO1xuICB9XG4gIHByaXZhdGUgX2NoZWNrZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogTGFiZWwgc2l6ZSB2YXJpYW50LCBlaXRoZXIgbSBvciBzLlxuICAgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KVxuICBwdWJsaWMgc2V0IHNpemUodmFsdWU6IFNiYlJhZGlvQnV0dG9uU2l6ZSkge1xuICAgIHRoaXMuX3NpemUgPSB2YWx1ZTtcbiAgfVxuICBwdWJsaWMgZ2V0IHNpemUoKTogU2JiUmFkaW9CdXR0b25TaXplIHtcbiAgICByZXR1cm4gdGhpcy5ncm91cD8uc2l6ZSA/PyB0aGlzLl9zaXplO1xuICB9XG4gIHByaXZhdGUgX3NpemU6IFNiYlJhZGlvQnV0dG9uU2l6ZSA9ICdtJztcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgaW5wdXQgaXMgdGhlIG1haW4gaW5wdXQgb2YgYSBzZWxlY3Rpb24gcGFuZWwuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGdldCBpc1NlbGVjdGlvblBhbmVsSW5wdXQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2lzU2VsZWN0aW9uUGFuZWxJbnB1dDtcbiAgfVxuICBAc3RhdGUoKSBwcml2YXRlIF9pc1NlbGVjdGlvblBhbmVsSW5wdXQgPSBmYWxzZTtcblxuICAvKipcbiAgICogVGhlIGxhYmVsIGRlc2NyaWJpbmcgd2hldGhlciB0aGUgc2VsZWN0aW9uIHBhbmVsIGlzIGV4cGFuZGVkIChmb3Igc2NyZWVuIHJlYWRlcnMgb25seSkuXG4gICAqL1xuICBAc3RhdGUoKSBwcml2YXRlIF9zZWxlY3Rpb25QYW5lbEV4cGFuZGVkTGFiZWw/OiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBfc2VsZWN0aW9uUGFuZWxFbGVtZW50OiBTYmJTZWxlY3Rpb25QYW5lbEVsZW1lbnQgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfYWJvcnQgPSBuZXcgU2JiQ29ubmVjdGVkQWJvcnRDb250cm9sbGVyKHRoaXMpO1xuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKiBJbnRlcm5hbCBldmVudCB0aGF0IGVtaXRzIHdoZW5ldmVyIHRoZSBzdGF0ZSBvZiB0aGUgcmFkaW8gb3B0aW9uXG4gICAqIGluIHJlbGF0aW9uIHRvIHRoZSBwYXJlbnQgc2VsZWN0aW9uIHBhbmVsIGNoYW5nZXMuXG4gICAqL1xuICBwcml2YXRlIF9zdGF0ZUNoYW5nZTogRXZlbnRFbWl0dGVyPFNiYlJhZGlvQnV0dG9uU3RhdGVDaGFuZ2U+ID0gbmV3IEV2ZW50RW1pdHRlcihcbiAgICB0aGlzLFxuICAgIFNiYlJhZGlvQnV0dG9uRWxlbWVudC5ldmVudHMuc3RhdGVDaGFuZ2UsXG4gICAgeyBidWJibGVzOiB0cnVlIH0sXG4gICk7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKiBJbnRlcm5hbCBldmVudCB0aGF0IGVtaXRzIHdoZW4gdGhlIHJhZGlvIGJ1dHRvbiBpcyBsb2FkZWQuXG4gICAqL1xuICBwcml2YXRlIF9yYWRpb0J1dHRvbkxvYWRlZDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcihcbiAgICB0aGlzLFxuICAgIFNiYlJhZGlvQnV0dG9uRWxlbWVudC5ldmVudHMucmFkaW9CdXR0b25Mb2FkZWQsXG4gICAgeyBidWJibGVzOiB0cnVlIH0sXG4gICk7XG4gIHByaXZhdGUgX2hhbmRsZUNsaWNrKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5zZWxlY3QoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZWxlY3QoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5hbGxvd0VtcHR5U2VsZWN0aW9uKSB7XG4gICAgICB0aGlzLmNoZWNrZWQgPSAhdGhpcy5jaGVja2VkO1xuICAgIH0gZWxzZSBpZiAoIXRoaXMuY2hlY2tlZCkge1xuICAgICAgdGhpcy5jaGVja2VkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVyUmVwb3NpdG9yeSA9IG5ldyBIYW5kbGVyUmVwb3NpdG9yeSh0aGlzLCBmb3JtRWxlbWVudEhhbmRsZXJBc3BlY3QpO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIG5ldyBTYmJTbG90U3RhdGVDb250cm9sbGVyKHRoaXMpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fZ3JvdXAgPSB0aGlzLmNsb3Nlc3QoJ3NiYi1yYWRpby1idXR0b24tZ3JvdXAnKSBhcyBTYmJSYWRpb0J1dHRvbkdyb3VwRWxlbWVudDtcbiAgICAvLyBXZSBjYW4gdXNlIGNsb3Nlc3QgaGVyZSwgYXMgd2UgZXhwZWN0IHRoZSBwYXJlbnQgc2JiLXNlbGVjdGlvbi1wYW5lbCB0byBiZSBpbiBsaWdodCBET00uXG4gICAgdGhpcy5fc2VsZWN0aW9uUGFuZWxFbGVtZW50ID0gdGhpcy5jbG9zZXN0KCdzYmItc2VsZWN0aW9uLXBhbmVsJyk7XG4gICAgdGhpcy5faXNTZWxlY3Rpb25QYW5lbElucHV0ID1cbiAgICAgICEhdGhpcy5fc2VsZWN0aW9uUGFuZWxFbGVtZW50ICYmICF0aGlzLmNsb3Nlc3QoJ3NiYi1zZWxlY3Rpb24tcGFuZWwgW3Nsb3Q9XCJjb250ZW50XCJdJyk7XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtaXMtc2VsZWN0aW9uLXBhbmVsLWlucHV0JywgdGhpcy5faXNTZWxlY3Rpb25QYW5lbElucHV0KTtcblxuICAgIGNvbnN0IHNpZ25hbCA9IHRoaXMuX2Fib3J0LnNpZ25hbDtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKGUpID0+IHRoaXMuX2hhbmRsZUNsaWNrKGUpLCB7IHNpZ25hbCB9KTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCAoZSkgPT4gdGhpcy5faGFuZGxlS2V5RG93bihlKSwgeyBzaWduYWwgfSk7XG4gICAgdGhpcy5faGFuZGxlclJlcG9zaXRvcnkuY29ubmVjdCgpO1xuICAgIHRoaXMuX3JhZGlvQnV0dG9uTG9hZGVkLmVtaXQoKTtcblxuICAgIC8vIFdlIG5lZWQgdG8gY2FsbCByZXF1ZXN0VXBkYXRlIHRvIHVwZGF0ZSB0aGUgcmVmbGVjdGVkIGF0dHJpYnV0ZXNcbiAgICBbJ2Rpc2FibGVkJywgJ3JlcXVpcmVkJywgJ3NpemUnXS5mb3JFYWNoKChwKSA9PiB0aGlzLnJlcXVlc3RVcGRhdGUocCkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdjaGVja2VkJykpIHtcbiAgICAgIHRoaXMuc2V0QXR0cmlidXRlKCdhcmlhLWNoZWNrZWQnLCBgJHt0aGlzLmNoZWNrZWR9YCk7XG4gICAgICBpZiAodGhpcy5jaGVja2VkICE9PSBjaGFuZ2VkUHJvcGVydGllcy5nZXQoJ2NoZWNrZWQnKSEpIHtcbiAgICAgICAgdGhpcy5fc3RhdGVDaGFuZ2UuZW1pdCh7IHR5cGU6ICdjaGVja2VkJywgY2hlY2tlZDogdGhpcy5jaGVja2VkIH0pO1xuICAgICAgICB0aGlzLmlzU2VsZWN0aW9uUGFuZWxJbnB1dCAmJiB0aGlzLl91cGRhdGVFeHBhbmRlZExhYmVsKCk7XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2Rpc2FibGVkJykpIHtcbiAgICAgIHNldE9yUmVtb3ZlQXR0cmlidXRlKHRoaXMsICdhcmlhLWRpc2FibGVkJywgdGhpcy5kaXNhYmxlZCA/ICd0cnVlJyA6IG51bGwpO1xuICAgICAgaWYgKHRoaXMuZGlzYWJsZWQgIT09IGNoYW5nZWRQcm9wZXJ0aWVzLmdldCgnZGlzYWJsZWQnKSEpIHtcbiAgICAgICAgdGhpcy5fc3RhdGVDaGFuZ2UuZW1pdCh7IHR5cGU6ICdkaXNhYmxlZCcsIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdyZXF1aXJlZCcpKSB7XG4gICAgICB0aGlzLnNldEF0dHJpYnV0ZSgnYXJpYS1yZXF1aXJlZCcsIGAke3RoaXMucmVxdWlyZWR9YCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci5maXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgLy8gV2UgbmVlZCB0byB3YWl0IGZvciB0aGUgc2VsZWN0aW9uLXBhbmVsIHRvIGJlIGZ1bGx5IGluaXRpYWxpemVkXG4gICAgdGhpcy5zdGFydFVwZGF0ZSgpO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5pc1NlbGVjdGlvblBhbmVsSW5wdXQgJiYgdGhpcy5fdXBkYXRlRXhwYW5kZWRMYWJlbCgpO1xuICAgICAgdGhpcy5jb21wbGV0ZVVwZGF0ZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5faGFuZGxlclJlcG9zaXRvcnkuZGlzY29ubmVjdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlS2V5RG93bihldnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZ0LmNvZGUgPT09ICdTcGFjZScpIHtcbiAgICAgIHRoaXMuc2VsZWN0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlRXhwYW5kZWRMYWJlbCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX3NlbGVjdGlvblBhbmVsRWxlbWVudD8uaGFzQ29udGVudCkge1xuICAgICAgdGhpcy5fc2VsZWN0aW9uUGFuZWxFeHBhbmRlZExhYmVsID0gJyc7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fc2VsZWN0aW9uUGFuZWxFeHBhbmRlZExhYmVsID0gdGhpcy5jaGVja2VkXG4gICAgICA/ICcsICcgKyBpMThuRXhwYW5kZWRbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF1cbiAgICAgIDogJywgJyArIGkxOG5Db2xsYXBzZWRbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF07XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxsYWJlbCBjbGFzcz1cInNiYi1yYWRpby1idXR0b25cIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMuZGlzYWJsZWR9XG4gICAgICAgICAgP3JlcXVpcmVkPSR7dGhpcy5yZXF1aXJlZH1cbiAgICAgICAgICA/Y2hlY2tlZD0ke3RoaXMuY2hlY2tlZH1cbiAgICAgICAgICB2YWx1ZT0ke3RoaXMudmFsdWUgfHwgbm90aGluZ31cbiAgICAgICAgICBjbGFzcz1cInNiYi1zY3JlZW4tcmVhZGVyLW9ubHlcIlxuICAgICAgICAvPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1yYWRpby1idXR0b25fX2xhYmVsLXNsb3RcIj5cbiAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgICAgJHt0aGlzLl9zZWxlY3Rpb25QYW5lbEVsZW1lbnQgPyBodG1sYDxzbG90IG5hbWU9XCJzdWZmaXhcIj48L3Nsb3Q+YCA6IG5vdGhpbmd9XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgJHt0aGlzLl9zZWxlY3Rpb25QYW5lbEVsZW1lbnQgPyBodG1sYDxzbG90IG5hbWU9XCJzdWJ0ZXh0XCI+PC9zbG90PmAgOiBub3RoaW5nfVxuICAgICAgICAke3RoaXMuaXNTZWxlY3Rpb25QYW5lbElucHV0ICYmIHRoaXMuX3NlbGVjdGlvblBhbmVsRXhwYW5kZWRMYWJlbFxuICAgICAgICAgID8gaHRtbGA8c3BhbiBjbGFzcz1cInNiYi1zY3JlZW4tcmVhZGVyLW9ubHlcIj4gJHt0aGlzLl9zZWxlY3Rpb25QYW5lbEV4cGFuZGVkTGFiZWx9IDwvc3Bhbj5gXG4gICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgPC9sYWJlbD5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItcmFkaW8tYnV0dG9uJzogU2JiUmFkaW9CdXR0b25FbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUEwQ08sSUFBTSx3QkFBTixjQUFvQyx3QkFBd0IsVUFBVSxFQUFFO0FBQUEsRUF5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
|
|
@@ -32,8 +32,7 @@ var __decorateClass = (decorators, target, key, kind) => {
|
|
|
32
32
|
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
33
33
|
if (decorator = decorators[i])
|
|
34
34
|
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
35
|
-
if (kind && result)
|
|
36
|
-
__defProp(target, key, result);
|
|
35
|
+
if (kind && result) __defProp(target, key, result);
|
|
37
36
|
return result;
|
|
38
37
|
};
|
|
39
38
|
let SbbScreenReaderOnlyElement = class extends LitElement {
|
|
@@ -48,4 +47,4 @@ SbbScreenReaderOnlyElement = __decorateClass([
|
|
|
48
47
|
export {
|
|
49
48
|
SbbScreenReaderOnlyElement
|
|
50
49
|
};
|
|
51
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NyZWVuLXJlYWRlci1vbmx5LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvc2NyZWVuLXJlYWRlci1vbmx5L3NjcmVlbi1yZWFkZXItb25seS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sLCBMaXRFbGVtZW50IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3NjcmVlbi1yZWFkZXItb25seS5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIFRoaXMgY29tcG9uZW50IGNhbiBiZSB1c2VkIHRvIHZpc3VhbGx5IGhpZGUgY29udGVudCBidXQgcHJlc2VudCBpdCB0byBzY3JlZW4gcmVhZGVycy5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIHByb3ZpZGUgY29udGVudC5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1zY3JlZW4tcmVhZGVyLW9ubHknKVxuZXhwb3J0IGNsYXNzIFNiYlNjcmVlblJlYWRlck9ubHlFbGVtZW50IGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYDxzbG90Pjwvc2xvdD5gO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItc2NyZWVuLXJlYWRlci1vbmx5JzogU2JiU2NyZWVuUmVhZGVyT25seUVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBWWEsSUFBQSw2QkFBTixjQUF5QyxXQUFXO0FBQUEsRUFHdEMsU0FBeUI7QUFDbkMsV0FBQTtBQUFBLEVBQ1Q7QUFDRjtBQU5hLDJCQUNZLFNBQXlCO0FBRHJDLDZCQUFOLGdCQUFBO0FBQUEsRUFETixjQUFjLHdCQUF3QjtBQUFBLEdBQzFCLDBCQUFBOyJ9
|
package/development/select.js
CHANGED
|
@@ -318,8 +318,7 @@ var __decorateClass = (decorators, target, key, kind) => {
|
|
|
318
318
|
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
319
319
|
if (decorator = decorators[i])
|
|
320
320
|
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
321
|
-
if (kind && result)
|
|
322
|
-
__defProp(target, key, result);
|
|
321
|
+
if (kind && result) __defProp(target, key, result);
|
|
323
322
|
return result;
|
|
324
323
|
};
|
|
325
324
|
const ariaRoleOnHost = isSafari;
|
|
@@ -889,4 +888,4 @@ SbbSelectElement = __decorateClass([
|
|
|
889
888
|
export {
|
|
890
889
|
SbbSelectElement
|
|
891
890
|
};
|
|
892
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvc2VsZWN0L3NlbGVjdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBQcm9wZXJ0eVZhbHVlcywgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgaHRtbCwgbm90aGluZyB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSwgc3RhdGUgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyByZWYgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9yZWYuanMnO1xuXG5pbXBvcnQgeyBnZXROZXh0RWxlbWVudEluZGV4IH0gZnJvbSAnLi4vY29yZS9hMTF5LmpzJztcbmltcG9ydCB7IFNiYk9wZW5DbG9zZUJhc2VFbGVtZW50IH0gZnJvbSAnLi4vY29yZS9iYXNlLWVsZW1lbnRzLmpzJztcbmltcG9ydCB7IFNiYkNvbm5lY3RlZEFib3J0Q29udHJvbGxlciB9IGZyb20gJy4uL2NvcmUvY29udHJvbGxlcnMuanMnO1xuaW1wb3J0IHsgaG9zdEF0dHJpYnV0ZXMgfSBmcm9tICcuLi9jb3JlL2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgZ2V0RG9jdW1lbnRXcml0aW5nTW9kZSwgaXNOZXh0anMsIGlzU2FmYXJpIH0gZnJvbSAnLi4vY29yZS9kb20uanMnO1xuaW1wb3J0IHsgRXZlbnRFbWl0dGVyIH0gZnJvbSAnLi4vY29yZS9ldmVudGluZy5qcyc7XG5pbXBvcnQgeyBTYmJEaXNhYmxlZE1peGluLCBTYmJOZWdhdGl2ZU1peGluLCBTYmJVcGRhdGVTY2hlZHVsZXJNaXhpbiB9IGZyb20gJy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IGlzRXZlbnRPbkVsZW1lbnQsIG92ZXJsYXlHYXBGaXhDb3JuZXJzLCBzZXRPdmVybGF5UG9zaXRpb24gfSBmcm9tICcuLi9jb3JlL292ZXJsYXkuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJPcHRHcm91cEVsZW1lbnQsIFNiYk9wdGlvbkVsZW1lbnQgfSBmcm9tICcuLi9vcHRpb24uanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9zZWxlY3Quc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBPbiBTYWZhcmksIHRoZSBhcmlhIHJvbGUgJ2xpc3Rib3gnIG11c3QgYmUgb24gdGhlIGhvc3QgZWxlbWVudCwgb3IgZWxzZSBWb2ljZU92ZXIgd29uJ3Qgd29yayBhdCBhbGwuXG4gKiBPbiB0aGUgb3RoZXIgaGFuZCwgSkFXUyBhbmQgTlZEQSBuZWVkIHRoZSByb2xlIHRvIGJlIGFuIFwiaW1tZWRpYXRlIHBhcmVudFwiIHRvIHRoZSBvcHRpb25zLCBvciBlbHNlIG9wdGdyb3VwcyB3b24ndCB3b3JrLlxuICovXG5jb25zdCBhcmlhUm9sZU9uSG9zdCA9IGlzU2FmYXJpO1xuXG5sZXQgbmV4dElkID0gMDtcblxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RDaGFuZ2Uge1xuICB0eXBlOiAndmFsdWUnO1xuICB2YWx1ZTogc3RyaW5nIHwgc3RyaW5nW107XG59XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSBwYW5lbCB3aXRoIHNlbGVjdGFibGUgb3B0aW9ucy5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBvcHRpb25zLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkQ2hhbmdlIC0gRGVwcmVjYXRlZC4gdXNlZCBmb3IgUmVhY3QuIFdpbGwgcHJvYmFibHkgYmUgcmVtb3ZlZCBvbmNlIFJlYWN0IDE5IGlzIGF2YWlsYWJsZS5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IGNoYW5nZSAtIE5vdGlmaWVzIHRoYXQgdGhlIGNvbXBvbmVudCdzIHZhbHVlIGhhcyBjaGFuZ2VkLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gaW5wdXQgLSBOb3RpZmllcyB0aGF0IGFuIG9wdGlvbiB2YWx1ZSBoYXMgYmVlbiBzZWxlY3RlZC5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IHdpbGxPcGVuIC0gRW1pdHMgd2hlbmV2ZXIgdGhlIGBzYmItc2VsZWN0YCBzdGFydHMgdGhlIG9wZW5pbmcgdHJhbnNpdGlvbi4gQ2FuIGJlIGNhbmNlbGVkLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkT3BlbiAtIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLXNlbGVjdGAgaXMgb3BlbmVkLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gd2lsbENsb3NlIC0gRW1pdHMgd2hlbmV2ZXIgdGhlIGBzYmItc2VsZWN0YCBiZWdpbnMgdGhlIGNsb3NpbmcgdHJhbnNpdGlvbi4gQ2FuIGJlIGNhbmNlbGVkLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkQ2xvc2UgLSBFbWl0cyB3aGVuZXZlciB0aGUgYHNiYi1zZWxlY3RgIGlzIGNsb3NlZC5cbiAqIEBjc3Nwcm9wIFstLXNiYi1zZWxlY3Qtei1pbmRleD12YXIoLS1zYmItb3ZlcmxheS1kZWZhdWx0LXotaW5kZXgpXSAtIFRvIHNwZWNpZnkgYSBjdXN0b20gc3RhY2sgb3JkZXIsXG4gKiB0aGUgYHotaW5kZXhgIGNhbiBiZSBvdmVycmlkZGVuIGJ5IGRlZmluaW5nIHRoaXMgQ1NTIHZhcmlhYmxlLiBUaGUgZGVmYXVsdCBgei1pbmRleGAgb2YgdGhlXG4gKiBjb21wb25lbnQgaXMgc2V0IHRvIGB2YXIoLS1zYmItb3ZlcmxheS1kZWZhdWx0LXotaW5kZXgpYCB3aXRoIGEgdmFsdWUgb2YgYDEwMDBgLlxuICovXG5AY3VzdG9tRWxlbWVudCgnc2JiLXNlbGVjdCcpXG5AaG9zdEF0dHJpYnV0ZXMoe1xuICBkaXI6IGdldERvY3VtZW50V3JpdGluZ01vZGUoKSxcbiAgcm9sZTogYXJpYVJvbGVPbkhvc3QgPyAnbGlzdGJveCcgOiBudWxsLFxufSlcbmV4cG9ydCBjbGFzcyBTYmJTZWxlY3RFbGVtZW50IGV4dGVuZHMgU2JiVXBkYXRlU2NoZWR1bGVyTWl4aW4oXG4gIFNiYkRpc2FibGVkTWl4aW4oU2JiTmVnYXRpdmVNaXhpbihTYmJPcGVuQ2xvc2VCYXNlRWxlbWVudCkpLFxuKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8vIEZJWE1FIHVzaW5nIC4uLnN1cGVyLmV2ZW50cyByZXF1aXJlczogaHR0cHM6Ly9naXRodWIuY29tL3NiYi1kZXNpZ24tc3lzdGVtcy9seW5lLWNvbXBvbmVudHMvaXNzdWVzLzI2MDBcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSBldmVudHMgPSB7XG4gICAgZGlkQ2hhbmdlOiAnZGlkQ2hhbmdlJyxcbiAgICBjaGFuZ2U6ICdjaGFuZ2UnLFxuICAgIGlucHV0OiAnaW5wdXQnLFxuICAgIHN0YXRlQ2hhbmdlOiAnc3RhdGVDaGFuZ2UnLFxuICAgIHdpbGxPcGVuOiAnd2lsbE9wZW4nLFxuICAgIGRpZE9wZW46ICdkaWRPcGVuJyxcbiAgICB3aWxsQ2xvc2U6ICd3aWxsQ2xvc2UnLFxuICAgIGRpZENsb3NlOiAnZGlkQ2xvc2UnLFxuICB9IGFzIGNvbnN0O1xuXG4gIC8qKiBUaGUgdmFsdWUgb2YgdGhlIHNlbGVjdCBjb21wb25lbnQuIElmIGBtdWx0aXBsZWAgaXMgdHJ1ZSwgaXQncyBhbiBhcnJheS4gKi9cbiAgQHByb3BlcnR5KCkgcHVibGljIHZhbHVlPzogc3RyaW5nIHwgc3RyaW5nW107XG5cbiAgLyoqIFRoZSBwbGFjZWhvbGRlciB1c2VkIGlmIG5vIHZhbHVlIGhhcyBiZWVuIHNlbGVjdGVkLiAqL1xuICBAcHJvcGVydHkoKSBwdWJsaWMgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIHNlbGVjdCBhbGxvd3MgZm9yIG11bHRpcGxlIHNlbGVjdGlvbi4gKi9cbiAgQHByb3BlcnR5KHsgdHlwZTogQm9vbGVhbiwgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgbXVsdGlwbGUgPSBmYWxzZTtcblxuICAvKiogV2hldGhlciB0aGUgc2VsZWN0IGlzIHJlcXVpcmVkLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlLCB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyByZXF1aXJlZCA9IGZhbHNlO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBzZWxlY3QgaXMgcmVhZG9ubHkuICovXG4gIEBwcm9wZXJ0eSh7IHR5cGU6IEJvb2xlYW4gfSkgcHVibGljIHJlYWRvbmx5ID0gZmFsc2U7XG5cbiAgLyoqIFRoZSB2YWx1ZSBkaXNwbGF5ZWQgYnkgdGhlIGNvbXBvbmVudC4gKi9cbiAgQHN0YXRlKCkgcHJpdmF0ZSBfZGlzcGxheVZhbHVlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgb25seSB1c2VkIGZvciBSZWFjdC4gV2lsbCBwcm9iYWJseSBiZSByZW1vdmVkIG9uY2UgUmVhY3QgMTkgaXMgYXZhaWxhYmxlLlxuICAgKi9cbiAgcHJpdmF0ZSBfZGlkQ2hhbmdlOiBFdmVudEVtaXR0ZXIgPSBuZXcgRXZlbnRFbWl0dGVyKHRoaXMsIFNiYlNlbGVjdEVsZW1lbnQuZXZlbnRzLmRpZENoYW5nZSk7XG5cbiAgLyoqIE5vdGlmaWVzIHRoYXQgdGhlIGNvbXBvbmVudCdzIHZhbHVlIGhhcyBjaGFuZ2VkLiAqL1xuICBwcml2YXRlIF9jaGFuZ2U6IEV2ZW50RW1pdHRlciA9IG5ldyBFdmVudEVtaXR0ZXIodGhpcywgU2JiU2VsZWN0RWxlbWVudC5ldmVudHMuY2hhbmdlKTtcblxuICAvKiogTm90aWZpZXMgdGhhdCBhbiBvcHRpb24gdmFsdWUgaGFzIGJlZW4gc2VsZWN0ZWQuICovXG4gIHByaXZhdGUgX2lucHV0OiBFdmVudEVtaXR0ZXIgPSBuZXcgRXZlbnRFbWl0dGVyKHRoaXMsIFNiYlNlbGVjdEVsZW1lbnQuZXZlbnRzLmlucHV0KTtcblxuICAvKiogQGludGVybmFsICovXG4gIHByaXZhdGUgX3N0YXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8U2VsZWN0Q2hhbmdlPiA9IG5ldyBFdmVudEVtaXR0ZXIoXG4gICAgdGhpcyxcbiAgICBTYmJTZWxlY3RFbGVtZW50LmV2ZW50cy5zdGF0ZUNoYW5nZSxcbiAgICB7XG4gICAgICBjb21wb3NlZDogZmFsc2UsXG4gICAgfSxcbiAgKTtcblxuICBwcml2YXRlIF9vdmVybGF5ITogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX29wdGlvbkNvbnRhaW5lciE6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIF9vcmlnaW5FbGVtZW50ITogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX3RyaWdnZXJFbGVtZW50ITogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX29wZW5QYW5lbEV2ZW50c0NvbnRyb2xsZXIhOiBBYm9ydENvbnRyb2xsZXI7XG4gIHByaXZhdGUgX292ZXJsYXlJZCA9IGBzYmItc2VsZWN0LSR7KytuZXh0SWR9YDtcbiAgcHJpdmF0ZSBfYWN0aXZlSXRlbUluZGV4ID0gLTE7XG4gIHByaXZhdGUgX3NlYXJjaFRpbWVvdXQ/OiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PjtcbiAgcHJpdmF0ZSBfc2VhcmNoU3RyaW5nID0gJyc7XG4gIHByaXZhdGUgX2RpZExvYWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfaXNQb2ludGVyRG93bkV2ZW50T25NZW51OiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgX2Fib3J0ID0gbmV3IFNiYkNvbm5lY3RlZEFib3J0Q29udHJvbGxlcih0aGlzKTtcblxuICAvKipcbiAgICogVGhlICdjb21ib2JveCcgaW5wdXQgZWxlbWVudFxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBnZXQgaW5wdXRFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5fdHJpZ2dlckVsZW1lbnQ7XG4gIH1cblxuICAvKiogR2V0cyBhbGwgdGhlIFNiYk9wdGlvbkVsZW1lbnQgcHJvamVjdGVkIGluIHRoZSBzZWxlY3QuICovXG4gIHByaXZhdGUgZ2V0IF9vcHRpb25zKCk6IFNiYk9wdGlvbkVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5xdWVyeVNlbGVjdG9yQWxsPy4oJ3NiYi1vcHRpb24nKSA/PyBbXSk7XG4gIH1cblxuICBwcml2YXRlIGdldCBfZmlsdGVyZWRPcHRpb25zKCk6IFNiYk9wdGlvbkVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIHRoaXMuX29wdGlvbnMuZmlsdGVyKFxuICAgICAgKG9wdDogU2JiT3B0aW9uRWxlbWVudCkgPT4gIW9wdC5kaXNhYmxlZCAmJiAhb3B0Lmhhc0F0dHJpYnV0ZSgnZGF0YS1ncm91cC1kaXNhYmxlZCcpLFxuICAgICk7XG4gIH1cblxuICAvKiogT3BlbnMgdGhlIHNlbGVjdGlvbiBwYW5lbC4gKi9cbiAgcHVibGljIG9wZW4oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdGUgIT09ICdjbG9zZWQnIHx8ICF0aGlzLl9vdmVybGF5IHx8IHRoaXMuX29wdGlvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLndpbGxPcGVuLmVtaXQoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnN0YXRlID0gJ29wZW5pbmcnO1xuICAgIHRoaXMuX3NldE92ZXJsYXlQb3NpdGlvbigpO1xuICB9XG5cbiAgLyoqIENsb3NlcyB0aGUgc2VsZWN0aW9uIHBhbmVsLiAqL1xuICBwdWJsaWMgY2xvc2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdGUgIT09ICdvcGVuZWQnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLndpbGxDbG9zZS5lbWl0KCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5zdGF0ZSA9ICdjbG9zaW5nJztcbiAgICB0aGlzLl9vcGVuUGFuZWxFdmVudHNDb250cm9sbGVyLmFib3J0KCk7XG4gIH1cblxuICAvKiogR2V0cyB0aGUgY3VycmVudCBkaXNwbGF5ZWQgdmFsdWUuICovXG4gIHB1YmxpYyBnZXREaXNwbGF5VmFsdWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gIXRoaXMuX2Rpc3BsYXlWYWx1ZSA/ICcnIDogdGhpcy5fZGlzcGxheVZhbHVlO1xuICB9XG5cbiAgLyoqIExpc3RlbnMgdG8gb3B0aW9uIGNoYW5nZXMuICovXG4gIHByaXZhdGUgX29uT3B0aW9uQ2hhbmdlZChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgU2JiT3B0aW9uRWxlbWVudDtcbiAgICBpZiAodGFyZ2V0LnNlbGVjdGVkKSB7XG4gICAgICB0aGlzLl9vbk9wdGlvblNlbGVjdGVkKHRhcmdldCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX29uT3B0aW9uRGVzZWxlY3RlZCh0YXJnZXQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX29uT3B0aW9uQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgU2JiU2VsZWN0RWxlbWVudCB8IFNiYk9wdGlvbkVsZW1lbnQ7XG4gICAgaWYgKHRhcmdldC5sb2NhbE5hbWUgIT09ICdzYmItb3B0aW9uJyB8fCB0YXJnZXQuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMubXVsdGlwbGUpIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICAvKiogU2V0cyB0aGUgX2Rpc3BsYXlWYWx1ZSBieSBjaGVja2luZyB0aGUgaW50ZXJuYWwgc2JiLW9wdGlvbnMgYW5kIHNldHRpbmcgdGhlIGNvcnJlY3QgYHNlbGVjdGVkYCB2YWx1ZSBvbiB0aGVtLiAqL1xuICBwcml2YXRlIF9vblZhbHVlQ2hhbmdlZChuZXdWYWx1ZTogc3RyaW5nIHwgc3RyaW5nW10pOiB2b2lkIHtcbiAgICBjb25zdCBvcHRpb25zID0gdGhpcy5fZmlsdGVyZWRPcHRpb25zO1xuICAgIGlmICghQXJyYXkuaXNBcnJheShuZXdWYWx1ZSkpIHtcbiAgICAgIGNvbnN0IG9wdGlvbkVsZW1lbnQgPSBvcHRpb25zLmZpbmQoKG8pID0+IChvLnZhbHVlID8/IG8uZ2V0QXR0cmlidXRlKCd2YWx1ZScpKSA9PT0gbmV3VmFsdWUpO1xuICAgICAgaWYgKG9wdGlvbkVsZW1lbnQpIHtcbiAgICAgICAgb3B0aW9uRWxlbWVudC5zZWxlY3RlZCA9IHRydWU7XG4gICAgICB9XG4gICAgICBvcHRpb25zXG4gICAgICAgIC5maWx0ZXIoKG8pID0+IChvLnZhbHVlID8/IG8uZ2V0QXR0cmlidXRlKCd2YWx1ZScpKSAhPT0gbmV3VmFsdWUpXG4gICAgICAgIC5mb3JFYWNoKChvKSA9PiAoby5zZWxlY3RlZCA9IGZhbHNlKSk7XG4gICAgICB0aGlzLl9kaXNwbGF5VmFsdWUgPSBvcHRpb25FbGVtZW50Py50ZXh0Q29udGVudCB8fCBudWxsO1xuICAgIH0gZWxzZSB7XG4gICAgICBvcHRpb25zXG4gICAgICAgIC5maWx0ZXIoKG8pID0+ICFuZXdWYWx1ZS5pbmNsdWRlcyhvLnZhbHVlID8/IG8uZ2V0QXR0cmlidXRlKCd2YWx1ZScpKSlcbiAgICAgICAgLmZvckVhY2goKGUpID0+IChlLnNlbGVjdGVkID0gZmFsc2UpKTtcbiAgICAgIGNvbnN0IHNlbGVjdGVkT3B0aW9uRWxlbWVudHMgPSBvcHRpb25zLmZpbHRlcigobykgPT5cbiAgICAgICAgbmV3VmFsdWUuaW5jbHVkZXMoby52YWx1ZSA/PyBvLmdldEF0dHJpYnV0ZSgndmFsdWUnKSksXG4gICAgICApO1xuICAgICAgc2VsZWN0ZWRPcHRpb25FbGVtZW50cy5mb3JFYWNoKChvKSA9PiAoby5zZWxlY3RlZCA9IHRydWUpKTtcbiAgICAgIHRoaXMuX2Rpc3BsYXlWYWx1ZSA9IHNlbGVjdGVkT3B0aW9uRWxlbWVudHMubWFwKChvKSA9PiBvLnRleHRDb250ZW50KS5qb2luKCcsICcpIHx8IG51bGw7XG4gICAgfVxuICAgIHRoaXMuX3N0YXRlQ2hhbmdlLmVtaXQoeyB0eXBlOiAndmFsdWUnLCB2YWx1ZTogbmV3VmFsdWUgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLmZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICAvLyBPdmVycmlkZSB0aGUgZGVmYXVsdCBmb2N1cyBiZWhhdmlvclxuICAgIHRoaXMuZm9jdXMgPSAoKSA9PiB0aGlzLl90cmlnZ2VyRWxlbWVudC5mb2N1cygpO1xuICAgIHRoaXMuYmx1ciA9ICgpID0+IHRoaXMuX3RyaWdnZXJFbGVtZW50LmJsdXIoKTtcblxuICAgIC8vIFdhaXQgZm9yIHNzciBoeWRyYXRpb25cbiAgICBpZiAoIWlzTmV4dGpzKCkpIHtcbiAgICAgIHRoaXMuc3RhcnRVcGRhdGUoKTtcbiAgICAgIHRoaXMuX3NldHVwU2VsZWN0KCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgZWxlbWVudCdzIGZpcnN0IGF0dHJpYnV0ZSB3aG9zZSBxdWFsaWZpZWQgbmFtZSBpcyBxdWFsaWZpZWROYW1lLlxuICAgKlxuICAgKiBbTUROIFJlZmVyZW5jZV0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvQVBJL0VsZW1lbnQvcmVtb3ZlQXR0cmlidXRlKVxuICAgKiBAaW50ZXJuYWwgV2UgbmVlZCB0byBvdmVycmlkZSB0aGlzIGR1ZSB0byBhIGh5ZHJhdGlvbiBpc3N1ZSB3aXRoIE5leHQuanMuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgcmVtb3ZlQXR0cmlidXRlKHF1YWxpZmllZE5hbWU6IHN0cmluZyk6IHZvaWQge1xuICAgIC8vIEluIE5leHQuanMgdGhlIGh5ZHJhdGlvbiBuZWVkcyB0byBmaW5pc2ggYmVmb3JlIHdlIGNhbiBtYW5pcHVsYXRlIHRoZSBsaWdodCBET00uXG4gICAgLy8gQGxpdC9yZWFjdCBjYWxscyByZW1vdmVBdHRyaWJ1dGUoJ2RlZmVyLWh5ZHJhdGlvbicpIGluIGEgdXNlTGF5b3V0RWZmZWN0LFxuICAgIC8vIHdoaWNoIGlzIGRvbmUgYWZ0ZXIgaHlkcmF0aW9uIGlzIGZpbmlzaGVkLiBEdWUgdG8gdGhpcyB3ZSBpbnRlcmNlcHQgdGhpcyBjYWxsXG4gICAgLy8gaW4gb3ZlcnJpZGluZyByZW1vdmVBdHRyaWJ1dGUgdG8gZmluaXNoIGluaXRpYWxpemF0aW9uIG9mIHRoZSBzYmItc2VsZWN0LlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9saXQvbGl0L2Jsb2IvbWFpbi9wYWNrYWdlcy9yZWFjdC9zcmMvY3JlYXRlLWNvbXBvbmVudC50cyNMMjkzLUwyOTZcbiAgICAvLyBXZSBhbHNvIG5lZWQgdG8gd2FpdCBmb3IgdXBkYXRlIGNvbXBsZXRlIGluIG9yZGVyIHRvIGJlIHN1cmUgdGhhdCB0aGUgc2hhZG93IERPTSBoYXMgYmVlbiByZW5kZXJlZC5cbiAgICBpZiAoaXNOZXh0anMoKSAmJiBxdWFsaWZpZWROYW1lID09PSAnZGVmZXItaHlkcmF0aW9uJyAmJiAhdGhpcy5fZGlkTG9hZCkge1xuICAgICAgdGhpcy51cGRhdGVDb21wbGV0ZS50aGVuKCgpID0+IHRoaXMuX3NldHVwU2VsZWN0KCkpO1xuICAgIH1cbiAgICBzdXBlci5yZW1vdmVBdHRyaWJ1dGUocXVhbGlmaWVkTmFtZSk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcblxuICAgIGlmIChhcmlhUm9sZU9uSG9zdCkge1xuICAgICAgdGhpcy5pZCB8fD0gdGhpcy5fb3ZlcmxheUlkO1xuICAgIH1cblxuICAgIGNvbnN0IHNpZ25hbCA9IHRoaXMuX2Fib3J0LnNpZ25hbDtcbiAgICBjb25zdCBmb3JtRmllbGQgPSB0aGlzLmNsb3Nlc3Q/Lignc2JiLWZvcm0tZmllbGQnKSA/PyB0aGlzLmNsb3Nlc3Q/LignW2RhdGEtZm9ybS1maWVsZF0nKTtcblxuICAgIGlmIChmb3JtRmllbGQpIHtcbiAgICAgIHRoaXMubmVnYXRpdmUgPSBmb3JtRmllbGQuaGFzQXR0cmlidXRlKCduZWdhdGl2ZScpO1xuICAgIH1cbiAgICB0aGlzLl9zeW5jUHJvcGVydGllcygpO1xuXG4gICAgaWYgKHRoaXMuX2RpZExvYWQpIHtcbiAgICAgIHRoaXMuX3NldHVwT3JpZ2luKCk7XG4gICAgICB0aGlzLl9zZXR1cFRyaWdnZXIoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMudmFsdWUpIHtcbiAgICAgIHRoaXMuX29uVmFsdWVDaGFuZ2VkKHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICdvcHRpb25TZWxlY3Rpb25DaGFuZ2UnLFxuICAgICAgKGU6IEN1c3RvbUV2ZW50PHZvaWQ+KSA9PiB0aGlzLl9vbk9wdGlvbkNoYW5nZWQoZSksXG4gICAgICB7IHNpZ25hbCB9LFxuICAgICk7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKFxuICAgICAgJ2NsaWNrJyxcbiAgICAgIChlOiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgIHRoaXMuX29uT3B0aW9uQ2xpY2soZSk7XG4gICAgICAgIHRoaXMuX3RvZ2dsZU9wZW5pbmcoKTtcbiAgICAgIH0sXG4gICAgICB7IHNpZ25hbCB9LFxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ3ZhbHVlJykpIHtcbiAgICAgIHRoaXMuX29uVmFsdWVDaGFuZ2VkKHRoaXMudmFsdWUhKTtcbiAgICB9XG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnbmVnYXRpdmUnKSB8fCBjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ211bHRpcGxlJykpIHtcbiAgICAgIHRoaXMuX3N5bmNQcm9wZXJ0aWVzKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5wcmVwZW5kKHRoaXMuX3RyaWdnZXJFbGVtZW50KTsgLy8gVGFrZSBiYWNrIHRoZSB0cmlnZ2VyIGVsZW1lbnQgcHJldmlvdXNseSBtb3ZlZCB0byB0aGUgbGlnaHQgRE9NXG4gICAgdGhpcy5fb3BlblBhbmVsRXZlbnRzQ29udHJvbGxlcj8uYWJvcnQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3N5bmNQcm9wZXJ0aWVzKCk6IHZvaWQge1xuICAgIHRoaXMucXVlcnlTZWxlY3RvckFsbD8uKCdzYmItZGl2aWRlcicpLmZvckVhY2goKGVsZW1lbnQpID0+IChlbGVtZW50Lm5lZ2F0aXZlID0gdGhpcy5uZWdhdGl2ZSkpO1xuXG4gICAgdGhpcy5xdWVyeVNlbGVjdG9yQWxsPy48U2JiT3B0aW9uRWxlbWVudCB8IFNiYk9wdEdyb3VwRWxlbWVudD4oXG4gICAgICAnc2JiLW9wdGlvbiwgc2JiLW9wdGdyb3VwJyxcbiAgICApLmZvckVhY2goKGVsZW1lbnQ6IFNiYk9wdGlvbkVsZW1lbnQgfCBTYmJPcHRHcm91cEVsZW1lbnQpID0+IHtcbiAgICAgIGVsZW1lbnQudG9nZ2xlQXR0cmlidXRlKCdkYXRhLW5lZ2F0aXZlJywgdGhpcy5uZWdhdGl2ZSk7XG4gICAgICBlbGVtZW50LnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1tdWx0aXBsZScsIHRoaXMubXVsdGlwbGUpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0dXBTZWxlY3QoKTogdm9pZCB7XG4gICAgdGhpcy5fc2V0dXBPcmlnaW4oKTtcbiAgICB0aGlzLl9zZXR1cFRyaWdnZXIoKTtcbiAgICB0aGlzLl9kaWRMb2FkID0gdHJ1ZTtcbiAgICB0aGlzLmNvbXBsZXRlVXBkYXRlKCk7XG4gIH1cblxuICAvKiogU2V0cyB0aGUgb3JpZ2luRWxlbWVudDsgaWYgdGhlIGNvbXBvbmVudCBpcyB1c2VkIGluIGEgc2JiLWZvcm0tZmllbGQgdXNlcyBpdCwgb3RoZXJ3aXNlIHVzZXMgdGhlIHBhcmVudEVsZW1lbnQuICovXG4gIHByaXZhdGUgX3NldHVwT3JpZ2luKCk6IHZvaWQge1xuICAgIGNvbnN0IGZvcm1GaWVsZCA9IHRoaXMuY2xvc2VzdD8uKCdzYmItZm9ybS1maWVsZCcpO1xuICAgIHRoaXMuX29yaWdpbkVsZW1lbnQgPVxuICAgICAgZm9ybUZpZWxkPy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yPy4oJyNvdmVybGF5LWFuY2hvcicpID8/IHRoaXMucGFyZW50RWxlbWVudCE7XG4gICAgaWYgKHRoaXMuX29yaWdpbkVsZW1lbnQpIHtcbiAgICAgIHRoaXMudG9nZ2xlQXR0cmlidXRlKFxuICAgICAgICAnZGF0YS1vcHRpb24tcGFuZWwtb3JpZ2luLWJvcmRlcmxlc3MnLFxuICAgICAgICAhIWZvcm1GaWVsZD8uaGFzQXR0cmlidXRlPy4oJ2JvcmRlcmxlc3MnKSxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRvIGFzc2VzcyBzY3JlZW4tcmVhZGVycyBwcm9ibGVtcyBjYXVzZWQgYnkgdGhlIGludGVyYWN0aW9uIGJldHdlZW4gYXJpYSBwYXR0ZXJucyBhbmQgc2hhZG93IERPTSxcbiAgICogd2UgYXJlIGZvcmNlZCB0byBtb3ZlIHRoZSAnY29tYm9ib3gnIHRyaWdnZXIgZWxlbWVudCB0byB0aGUgbGlnaHQgRE9NXG4gICAqL1xuICBwcml2YXRlIF9zZXR1cFRyaWdnZXIoKTogdm9pZCB7XG4gICAgLy8gTW92ZSB0aGUgdHJpZ2dlciBiZWZvcmUgdGhlIHNiYi1zZWxlY3RcbiAgICB0aGlzLnBhcmVudEVsZW1lbnQhLmluc2VydEJlZm9yZT8uKHRoaXMuX3RyaWdnZXJFbGVtZW50LCB0aGlzKTtcblxuICAgIC8vIFNldCB0aGUgaW52aXNpYmxlIHRyaWdnZXIgZWxlbWVudCBkaW1lbnNpb24gdG8gbWF0Y2ggdGhlIHBhcmVudCAobmVlZGVkIGZvciBzY3JlZW4gcmVhZGVycylcbiAgICBjb25zdCBjb250YWluZXJFbGVtZW50ID0gdGhpcy5jbG9zZXN0Py4oJ3NiYi1mb3JtLWZpZWxkJykgPz8gdGhpcztcbiAgICB0aGlzLl90cmlnZ2VyRWxlbWVudC5zdHlsZS50b3AgPSAnMHB4JztcbiAgICB0aGlzLl90cmlnZ2VyRWxlbWVudC5zdHlsZS5oZWlnaHQgPSBgJHtjb250YWluZXJFbGVtZW50Lm9mZnNldEhlaWdodH1weGA7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQuc3R5bGUud2lkdGggPSBgJHtjb250YWluZXJFbGVtZW50Lm9mZnNldFdpZHRofXB4YDtcbiAgfVxuXG4gIHByaXZhdGUgX3NldE92ZXJsYXlQb3NpdGlvbigpOiB2b2lkIHtcbiAgICBzZXRPdmVybGF5UG9zaXRpb24oXG4gICAgICB0aGlzLl9vdmVybGF5LFxuICAgICAgdGhpcy5fb3JpZ2luRWxlbWVudCxcbiAgICAgIHRoaXMuX29wdGlvbkNvbnRhaW5lcixcbiAgICAgIHRoaXMuc2hhZG93Um9vdCEucXVlcnlTZWxlY3RvcignLnNiYi1zZWxlY3RfX2NvbnRhaW5lcicpISxcbiAgICAgIHRoaXMsXG4gICAgKTtcbiAgfVxuXG4gIC8vIEluIHJhcmUgY2FzZXMgaXQgY2FuIGJlIHRoYXQgdGhlIGFuaW1hdGlvbkVuZCBldmVudCBpcyB0cmlnZ2VyZWQgdHdpY2UuXG4gIC8vIFRvIGF2b2lkIGVudGVyaW5nIGEgY29ycnVwdCBzdGF0ZSwgZXhpdCB3aGVuIHN0YXRlIGlzIG5vdCBleHBlY3RlZC5cbiAgcHJpdmF0ZSBfb25BbmltYXRpb25FbmQoZXZlbnQ6IEFuaW1hdGlvbkV2ZW50KTogdm9pZCB7XG4gICAgaWYgKGV2ZW50LmFuaW1hdGlvbk5hbWUgPT09ICdvcGVuJyAmJiB0aGlzLnN0YXRlID09PSAnb3BlbmluZycpIHtcbiAgICAgIHRoaXMuX29uT3BlbkFuaW1hdGlvbkVuZCgpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ2Nsb3NlJyAmJiB0aGlzLnN0YXRlID09PSAnY2xvc2luZycpIHtcbiAgICAgIHRoaXMuX29uQ2xvc2VBbmltYXRpb25FbmQoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9vbk9wZW5BbmltYXRpb25FbmQoKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZSA9ICdvcGVuZWQnO1xuICAgIHRoaXMuX2F0dGFjaE9wZW5QYW5lbEV2ZW50cygpO1xuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50LnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICd0cnVlJyk7XG5cbiAgICB0aGlzLmRpZE9wZW4uZW1pdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfb25DbG9zZUFuaW1hdGlvbkVuZCgpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlID0gJ2Nsb3NlZCc7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQuc2V0QXR0cmlidXRlKCdhcmlhLWV4cGFuZGVkJywgJ2ZhbHNlJyk7XG4gICAgdGhpcy5fcmVzZXRBY3RpdmVFbGVtZW50KCk7XG4gICAgdGhpcy5fb3B0aW9uQ29udGFpbmVyLnNjcm9sbFRvcCA9IDA7XG4gICAgdGhpcy5kaWRDbG9zZS5lbWl0KCk7XG4gIH1cblxuICAvKiogV2hlbiBhbiBvcHRpb24gaXMgc2VsZWN0ZWQsIHVwZGF0ZXMgdGhlIGRpc3BsYXlWYWx1ZTsgaXQgYWxzbyBjbG9zZXMgdGhlIHNlbGVjdCBpZiBub3QgYG11bHRpcGxlYC4gKi9cbiAgcHJpdmF0ZSBfb25PcHRpb25TZWxlY3RlZChvcHRpb25TZWxlY3Rpb25DaGFuZ2U6IFNiYk9wdGlvbkVsZW1lbnQpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubXVsdGlwbGUpIHtcbiAgICAgIHRoaXMuX2ZpbHRlcmVkT3B0aW9uc1xuICAgICAgICAuZmlsdGVyKChvcHRpb24pID0+IG9wdGlvbi5pZCAhPT0gb3B0aW9uU2VsZWN0aW9uQ2hhbmdlLmlkKVxuICAgICAgICAuZm9yRWFjaCgob3B0aW9uKSA9PiAob3B0aW9uLnNlbGVjdGVkID0gZmFsc2UpKTtcbiAgICAgIHRoaXMudmFsdWUgPSBvcHRpb25TZWxlY3Rpb25DaGFuZ2UudmFsdWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICghdGhpcy52YWx1ZSkge1xuICAgICAgICB0aGlzLnZhbHVlID0gW29wdGlvblNlbGVjdGlvbkNoYW5nZS52YWx1ZSFdO1xuICAgICAgfSBlbHNlIGlmICghdGhpcy52YWx1ZS5pbmNsdWRlcyhvcHRpb25TZWxlY3Rpb25DaGFuZ2UudmFsdWUhKSkge1xuICAgICAgICB0aGlzLnZhbHVlID0gWy4uLnRoaXMudmFsdWUsIG9wdGlvblNlbGVjdGlvbkNoYW5nZS52YWx1ZSFdO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuX2lucHV0LmVtaXQoKTtcbiAgICB0aGlzLl9jaGFuZ2UuZW1pdCgpO1xuICAgIHRoaXMuX2RpZENoYW5nZS5lbWl0KCk7XG4gIH1cblxuICAvKiogV2hlbiBhbiBvcHRpb24gaXMgdW5zZWxlY3RlZCBpbiBgbXVsdGlwbGVgLCByZW1vdmVzIGl0IGZyb20gdmFsdWUgYW5kIHVwZGF0ZXMgZGlzcGxheVZhbHVlLiAqL1xuICBwcml2YXRlIF9vbk9wdGlvbkRlc2VsZWN0ZWQob3B0aW9uU2VsZWN0aW9uQ2hhbmdlOiBTYmJPcHRpb25FbGVtZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIHRoaXMudmFsdWUgPSAodGhpcy52YWx1ZSBhcyBzdHJpbmdbXSkuZmlsdGVyKFxuICAgICAgICAoZWw6IHN0cmluZykgPT4gZWwgIT09IG9wdGlvblNlbGVjdGlvbkNoYW5nZS52YWx1ZSxcbiAgICAgICk7XG5cbiAgICAgIHRoaXMuX2lucHV0LmVtaXQoKTtcbiAgICAgIHRoaXMuX2NoYW5nZS5lbWl0KCk7XG4gICAgICB0aGlzLl9kaWRDaGFuZ2UuZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2F0dGFjaE9wZW5QYW5lbEV2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLl9vcGVuUGFuZWxFdmVudHNDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuXG4gICAgLy8gUmVjYWxjdWxhdGUgdGhlIG92ZXJsYXkgcG9zaXRpb24gb24gc2Nyb2xsIGFuZCB3aW5kb3cgcmVzaXplXG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgKCkgPT4gdGhpcy5fc2V0T3ZlcmxheVBvc2l0aW9uKCksIHtcbiAgICAgIHBhc3NpdmU6IHRydWUsXG4gICAgICBzaWduYWw6IHRoaXMuX29wZW5QYW5lbEV2ZW50c0NvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdyZXNpemUnLCAoKSA9PiB0aGlzLl9zZXRPdmVybGF5UG9zaXRpb24oKSwge1xuICAgICAgcGFzc2l2ZTogdHJ1ZSxcbiAgICAgIHNpZ25hbDogdGhpcy5fb3BlblBhbmVsRXZlbnRzQ29udHJvbGxlci5zaWduYWwsXG4gICAgfSk7XG5cbiAgICAvLyBDbG9zZSBtZW51IG9uIGJhY2tkcm9wIGNsaWNrXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgKGV2KSA9PiB0aGlzLl9wb2ludGVyRG93bkxpc3RlbmVyKGV2KSwge1xuICAgICAgc2lnbmFsOiB0aGlzLl9vcGVuUGFuZWxFdmVudHNDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncG9pbnRlcnVwJywgKGV2KSA9PiB0aGlzLl9jbG9zZU9uQmFja2Ryb3BDbGljayhldiksIHtcbiAgICAgIHNpZ25hbDogdGhpcy5fb3BlblBhbmVsRXZlbnRzQ29udHJvbGxlci5zaWduYWwsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIF9vbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLnJlYWRvbmx5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc3RhdGUgPT09ICdvcGVuZWQnKSB7XG4gICAgICBhd2FpdCB0aGlzLl9vcGVuZWRQYW5lbEtleWJvYXJkSW50ZXJhY3Rpb24oZXZlbnQpO1xuICAgIH1cbiAgICBpZiAodGhpcy5zdGF0ZSA9PT0gJ2Nsb3NlZCcpIHtcbiAgICAgIGF3YWl0IHRoaXMuX2Nsb3NlZFBhbmVsS2V5Ym9hcmRJbnRlcmFjdGlvbihldmVudCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBfY2xvc2VkUGFuZWxLZXlib2FyZEludGVyYWN0aW9uKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKHRoaXMuX2NoZWNrRm9yTGV0dGVyU2VsZWN0aW9uKGV2ZW50KSkge1xuICAgICAgcmV0dXJuIHRoaXMuX3NldE5leHRBY3RpdmVPcHRpb25CeVRleHQoZXZlbnQpO1xuICAgIH1cblxuICAgIHN3aXRjaCAoZXZlbnQua2V5KSB7XG4gICAgICBjYXNlICdFbnRlcic6XG4gICAgICBjYXNlICcgJzpcbiAgICAgIGNhc2UgJ0Fycm93RG93bic6XG4gICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYXdhaXQgdGhpcy5vcGVuKCk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgX29wZW5lZFBhbmVsS2V5Ym9hcmRJbnRlcmFjdGlvbihldmVudDogS2V5Ym9hcmRFdmVudCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMucmVhZG9ubHkgfHwgdGhpcy5zdGF0ZSAhPT0gJ29wZW5lZCcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fY2hlY2tGb3JMZXR0ZXJTZWxlY3Rpb24oZXZlbnQpKSB7XG4gICAgICByZXR1cm4gdGhpcy5fc2V0TmV4dEFjdGl2ZU9wdGlvbkJ5VGV4dChldmVudCk7XG4gICAgfVxuXG4gICAgc3dpdGNoIChldmVudC5rZXkpIHtcbiAgICAgIGNhc2UgJ0VzY2FwZSc6XG4gICAgICBjYXNlICdUYWInOlxuICAgICAgICBhd2FpdCB0aGlzLmNsb3NlKCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlICdFbnRlcic6XG4gICAgICBjYXNlICcgJzpcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYXdhaXQgdGhpcy5fc2VsZWN0QnlLZXlib2FyZCgpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnQXJyb3dEb3duJzpcbiAgICAgIGNhc2UgJ0Fycm93VXAnOlxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBhd2FpdCB0aGlzLl9zZXROZXh0QWN0aXZlT3B0aW9uKGV2ZW50KTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ0hvbWUnOlxuICAgICAgY2FzZSAnUGFnZVVwJzpcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYXdhaXQgdGhpcy5fc2V0TmV4dEFjdGl2ZU9wdGlvbihldmVudCwgMCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlICdFbmQnOlxuICAgICAgY2FzZSAnUGFnZURvd24nOlxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBhd2FpdCB0aGlzLl9zZXROZXh0QWN0aXZlT3B0aW9uKGV2ZW50LCB0aGlzLl9maWx0ZXJlZE9wdGlvbnMubGVuZ3RoIC0gMSk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2NoZWNrRm9yTGV0dGVyU2VsZWN0aW9uKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgIGV2ZW50LmtleSA9PT0gJ0JhY2tzcGFjZScgfHxcbiAgICAgIGV2ZW50LmtleSA9PT0gJ0NsZWFyJyB8fFxuICAgICAgKGV2ZW50LmtleS5sZW5ndGggPT09IDEgJiZcbiAgICAgICAgZXZlbnQua2V5ICE9PSAnICcgJiZcbiAgICAgICAgIWV2ZW50LmFsdEtleSAmJlxuICAgICAgICAhZXZlbnQuY3RybEtleSAmJlxuICAgICAgICAhZXZlbnQubWV0YUtleSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBfc2V0TmV4dEFjdGl2ZU9wdGlvbkJ5VGV4dChldmVudDogS2V5Ym9hcmRFdmVudCk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vIFNldCB0aW1lb3V0IGFuZCB0aGUgc3RyaW5nIHRvIHNlYXJjaC5cbiAgICBpZiAodHlwZW9mIHRoaXMuX3NlYXJjaFRpbWVvdXQgPT09IHR5cGVvZiBzZXRUaW1lb3V0KSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5fc2VhcmNoVGltZW91dCk7XG4gICAgfVxuICAgIHRoaXMuX3NlYXJjaFRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+ICh0aGlzLl9zZWFyY2hTdHJpbmcgPSAnJyksIDEwMDApO1xuICAgIHRoaXMuX3NlYXJjaFN0cmluZyArPSBldmVudC5rZXk7XG5cbiAgICAvLyBSZW9yZGVyIHRoZSBfZmlsdGVyZWRPcHRpb24gYXJyYXkgdG8gaGF2ZSB0aGUgbGFzdCBzZWxlY3RlZCBlbGVtZW50IGF0IHRoZSBib3R0b20uXG4gICAgY29uc3QgaW5kZXhGb3JTbGljZTogbnVtYmVyID0gdGhpcy5fYWN0aXZlSXRlbUluZGV4ICsgMTtcbiAgICBjb25zdCBmaWx0ZXJlZE9wdGlvbnNTb3J0ZWQ6IFNiYk9wdGlvbkVsZW1lbnRbXSA9IFtcbiAgICAgIC4uLnRoaXMuX2ZpbHRlcmVkT3B0aW9ucy5zbGljZShpbmRleEZvclNsaWNlKSxcbiAgICAgIC4uLnRoaXMuX2ZpbHRlcmVkT3B0aW9ucy5zbGljZSgwLCBpbmRleEZvclNsaWNlKSxcbiAgICBdO1xuXG4gICAgY29uc3QgbWF0Y2ggPSBmaWx0ZXJlZE9wdGlvbnNTb3J0ZWQuZmluZChcbiAgICAgIChvcHRpb246IFNiYk9wdGlvbkVsZW1lbnQpID0+XG4gICAgICAgIG9wdGlvbi50ZXh0Q29udGVudD8udG9Mb3dlckNhc2UoKS5pbmRleE9mKHRoaXMuX3NlYXJjaFN0cmluZy50b0xvd2VyQ2FzZSgpKSA9PT0gMCxcbiAgICApO1xuICAgIGlmIChtYXRjaCkge1xuICAgICAgLy8gSWYgYW4gZXhhY3QgbWF0Y2ggaGFzIGJlZW4gZm91bmQsIGdvIHRvIHRoYXQgb3B0aW9uLlxuICAgICAgYXdhaXQgdGhpcy5fc2V0TmV4dEFjdGl2ZU9wdGlvbihldmVudCwgdGhpcy5fZmlsdGVyZWRPcHRpb25zLmluZGV4T2YobWF0Y2gpKTtcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgdGhpcy5fc2VhcmNoU3RyaW5nLmxlbmd0aCA+IDEgJiZcbiAgICAgIG5ldyBSZWdFeHAoYF4ke3RoaXMuX3NlYXJjaFN0cmluZy5jaGFyQXQoMCl9KiRgKS50ZXN0KHRoaXMuX3NlYXJjaFN0cmluZylcbiAgICApIHtcbiAgICAgIC8vIElmIG5vIGV4YWN0IG1hdGNoIGhhcyBiZWVuIGZvdW5kIGJ1dCB0aGUgc3RyaW5nIHRvIHNlYXJjaCBpcyBtYWRlIGJ5IHRoZSBzYW1lIHJlcGVhdGVkIGxldHRlcixcbiAgICAgIC8vIGdvIHRvIHRoZSBmaXJzdCBlbGVtZW50LCBpZiBleGlzdHMsIHRoYXQgbWF0Y2hlcyB0aGUgbGV0dGVyLlxuICAgICAgY29uc3QgZmlyc3RNYXRjaCA9IGZpbHRlcmVkT3B0aW9uc1NvcnRlZC5maW5kKFxuICAgICAgICAob3B0aW9uOiBTYmJPcHRpb25FbGVtZW50KSA9PlxuICAgICAgICAgIG9wdGlvbi50ZXh0Q29udGVudD8udG9Mb3dlckNhc2UoKS5pbmRleE9mKHRoaXMuX3NlYXJjaFN0cmluZ1swXS50b0xvd2VyQ2FzZSgpKSA9PT0gMCxcbiAgICAgICk7XG4gICAgICBpZiAoZmlyc3RNYXRjaCkge1xuICAgICAgICBhd2FpdCB0aGlzLl9zZXROZXh0QWN0aXZlT3B0aW9uKGV2ZW50LCB0aGlzLl9maWx0ZXJlZE9wdGlvbnMuaW5kZXhPZihmaXJzdE1hdGNoKSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIE5vIG1hdGNoIGZvdW5kLCBjbGVhciB0aGUgdGltZW91dCBhbmQgdGhlIHNlYXJjaCB0ZXJtLlxuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX3NlYXJjaFRpbWVvdXQpO1xuICAgICAgdGhpcy5fc2VhcmNoU3RyaW5nID0gJyc7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBfc2VsZWN0QnlLZXlib2FyZCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBhY3RpdmVPcHRpb246IFNiYk9wdGlvbkVsZW1lbnQgPSB0aGlzLl9maWx0ZXJlZE9wdGlvbnNbdGhpcy5fYWN0aXZlSXRlbUluZGV4XTtcblxuICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICBhd2FpdCBhY3RpdmVPcHRpb24uc2V0U2VsZWN0ZWRWaWFVc2VySW50ZXJhY3Rpb24oIWFjdGl2ZU9wdGlvbi5zZWxlY3RlZCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGF3YWl0IHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIF9zZXROZXh0QWN0aXZlT3B0aW9uKGV2ZW50OiBLZXlib2FyZEV2ZW50LCBpbmRleD86IG51bWJlcik6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IG5leHRJbmRleCA9XG4gICAgICBpbmRleCA/PyBnZXROZXh0RWxlbWVudEluZGV4KGV2ZW50LCB0aGlzLl9hY3RpdmVJdGVtSW5kZXgsIHRoaXMuX2ZpbHRlcmVkT3B0aW9ucy5sZW5ndGgpO1xuICAgIGNvbnN0IG5leHRPcHRpb24gPSB0aGlzLl9maWx0ZXJlZE9wdGlvbnNbbmV4dEluZGV4XTtcbiAgICBjb25zdCBhY3RpdmVPcHRpb24gPSB0aGlzLl9maWx0ZXJlZE9wdGlvbnNbdGhpcy5fYWN0aXZlSXRlbUluZGV4XTtcblxuICAgIHRoaXMuX3NldEFjdGl2ZUVsZW1lbnQobmV4dE9wdGlvbiwgYWN0aXZlT3B0aW9uKTtcblxuICAgIGlmICghdGhpcy5tdWx0aXBsZSkge1xuICAgICAgYXdhaXQgdGhpcy5fc2V0U2VsZWN0ZWRFbGVtZW50KG5leHRPcHRpb24sIGFjdGl2ZU9wdGlvbik7XG4gICAgfSBlbHNlIGlmIChldmVudD8uc2hpZnRLZXkpIHtcbiAgICAgIGF3YWl0IG5leHRPcHRpb24uc2V0U2VsZWN0ZWRWaWFVc2VySW50ZXJhY3Rpb24oIW5leHRPcHRpb24uc2VsZWN0ZWQpO1xuICAgIH1cbiAgICB0aGlzLl9hY3RpdmVJdGVtSW5kZXggPSBuZXh0SW5kZXg7XG4gIH1cblxuICBwcml2YXRlIF9zZXRBY3RpdmVFbGVtZW50KFxuICAgIG5leHRBY3RpdmVPcHRpb246IFNiYk9wdGlvbkVsZW1lbnQsXG4gICAgbGFzdEFjdGl2ZU9wdGlvbjogU2JiT3B0aW9uRWxlbWVudCB8IG51bGwgPSBudWxsLFxuICAgIHNldEFjdGl2ZURlc2NlbmRhbnQgPSB0cnVlLFxuICApOiB2b2lkIHtcbiAgICBuZXh0QWN0aXZlT3B0aW9uLmFjdGl2ZSA9IHRydWU7XG4gICAgbmV4dEFjdGl2ZU9wdGlvbi5zY3JvbGxJbnRvVmlldyh7IGJsb2NrOiAnbmVhcmVzdCcgfSk7XG5cbiAgICBpZiAoc2V0QWN0aXZlRGVzY2VuZGFudCkge1xuICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQuc2V0QXR0cmlidXRlKCdhcmlhLWFjdGl2ZWRlc2NlbmRhbnQnLCBuZXh0QWN0aXZlT3B0aW9uLmlkKTtcbiAgICB9XG5cbiAgICAvLyBSZXNldCB0aGUgcHJldmlvdXNcbiAgICBpZiAobGFzdEFjdGl2ZU9wdGlvbiAmJiBsYXN0QWN0aXZlT3B0aW9uICE9PSBuZXh0QWN0aXZlT3B0aW9uKSB7XG4gICAgICBsYXN0QWN0aXZlT3B0aW9uLmFjdGl2ZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgX3NldFNlbGVjdGVkRWxlbWVudChcbiAgICBuZXh0QWN0aXZlT3B0aW9uOiBTYmJPcHRpb25FbGVtZW50LFxuICAgIGxhc3RBY3RpdmVPcHRpb246IFNiYk9wdGlvbkVsZW1lbnQsXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IG5leHRBY3RpdmVPcHRpb24uc2V0U2VsZWN0ZWRWaWFVc2VySW50ZXJhY3Rpb24odHJ1ZSk7XG5cbiAgICBpZiAobGFzdEFjdGl2ZU9wdGlvbiAmJiBsYXN0QWN0aXZlT3B0aW9uICE9PSBuZXh0QWN0aXZlT3B0aW9uKSB7XG4gICAgICBhd2FpdCBsYXN0QWN0aXZlT3B0aW9uLnNldFNlbGVjdGVkVmlhVXNlckludGVyYWN0aW9uKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9yZXNldEFjdGl2ZUVsZW1lbnQoKTogdm9pZCB7XG4gICAgY29uc3QgYWN0aXZlRWxlbWVudCA9IHRoaXMuX2ZpbHRlcmVkT3B0aW9uc1t0aGlzLl9hY3RpdmVJdGVtSW5kZXhdO1xuXG4gICAgaWYgKGFjdGl2ZUVsZW1lbnQpIHtcbiAgICAgIGFjdGl2ZUVsZW1lbnQuYWN0aXZlID0gZmFsc2U7XG4gICAgfVxuICAgIHRoaXMuX2FjdGl2ZUl0ZW1JbmRleCA9IC0xO1xuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgnYXJpYS1hY3RpdmVkZXNjZW5kYW50Jyk7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgcG9pbnRlcmRvd24gZXZlbnQgdGFyZ2V0IGlzIHRyaWdnZXJlZCBvbiB0aGUgbWVudS5cbiAgcHJpdmF0ZSBfcG9pbnRlckRvd25MaXN0ZW5lciA9IChldmVudDogUG9pbnRlckV2ZW50KTogdm9pZCA9PiB7XG4gICAgdGhpcy5faXNQb2ludGVyRG93bkV2ZW50T25NZW51ID0gaXNFdmVudE9uRWxlbWVudCh0aGlzLl9vdmVybGF5LCBldmVudCk7XG4gIH07XG5cbiAgLy8gQ2xvc2UgbWVudSBvbiBiYWNrZHJvcCBjbGljay5cbiAgcHJpdmF0ZSBfY2xvc2VPbkJhY2tkcm9wQ2xpY2sgPSBhc3luYyAoZXZlbnQ6IFBvaW50ZXJFdmVudCk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgIGlmICghdGhpcy5faXNQb2ludGVyRG93bkV2ZW50T25NZW51ICYmICFpc0V2ZW50T25FbGVtZW50KHRoaXMuX292ZXJsYXksIGV2ZW50KSkge1xuICAgICAgYXdhaXQgdGhpcy5jbG9zZSgpO1xuICAgIH1cbiAgfTtcblxuICBwcml2YXRlIF9zZXRWYWx1ZUZyb21TZWxlY3RlZE9wdGlvbigpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubXVsdGlwbGUpIHtcbiAgICAgIGNvbnN0IHNlbGVjdGVkT3B0aW9uID0gdGhpcy5fZmlsdGVyZWRPcHRpb25zLmZpbmQoKG9wdGlvbikgPT4gb3B0aW9uLnNlbGVjdGVkKTtcbiAgICAgIGlmIChzZWxlY3RlZE9wdGlvbikge1xuICAgICAgICB0aGlzLl9hY3RpdmVJdGVtSW5kZXggPSB0aGlzLl9maWx0ZXJlZE9wdGlvbnMuZmluZEluZGV4KFxuICAgICAgICAgIChvcHRpb24pID0+IG9wdGlvbiA9PT0gc2VsZWN0ZWRPcHRpb24sXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMudmFsdWUgPSBzZWxlY3RlZE9wdGlvbi52YWx1ZTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3Qgb3B0aW9ucyA9IHRoaXMuX2ZpbHRlcmVkT3B0aW9ucy5maWx0ZXIoKG9wdGlvbikgPT4gb3B0aW9uLnNlbGVjdGVkKTtcbiAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgICBjb25zdCB2YWx1ZTogc3RyaW5nW10gPSBbXTtcbiAgICAgICAgZm9yIChjb25zdCBvcHRpb24gb2Ygb3B0aW9ucykge1xuICAgICAgICAgIHZhbHVlLnB1c2gob3B0aW9uLnZhbHVlISk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3RvZ2dsZU9wZW5pbmcoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5yZWFkb25seSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl90cmlnZ2VyRWxlbWVudD8uZm9jdXMoKTtcblxuICAgIHN3aXRjaCAodGhpcy5zdGF0ZSkge1xuICAgICAgY2FzZSAnb3BlbmVkJzoge1xuICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAnY2xvc2VkJzoge1xuICAgICAgICB0aGlzLm9wZW4oKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDwhLS0gVGhpcyBlbGVtZW50IGlzIHZpc3VhbGx5IGhpZGRlbiBhbmQgd2lsbCBiZSBhcHBlbmRlZCB0byB0aGUgbGlnaHQgRE9NIHRvIGFsbG93IHNjcmVlblxuICAgICAgcmVhZGVycyB0byB3b3JrIHByb3Blcmx5IC0tPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cInNiYi1zY3JlZW4tcmVhZGVyLW9ubHlcIlxuICAgICAgICB0YWJpbmRleD0ke3RoaXMuZGlzYWJsZWQgPyBub3RoaW5nIDogJzAnfVxuICAgICAgICByb2xlPVwiY29tYm9ib3hcIlxuICAgICAgICBhcmlhLWhhc3BvcHVwPVwibGlzdGJveFwiXG4gICAgICAgIGFyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXG4gICAgICAgIGFyaWEtcmVxdWlyZWQ9JHt0aGlzLnJlcXVpcmVkLnRvU3RyaW5nKCl9XG4gICAgICAgIGFyaWEtY29udHJvbHM9JHt0aGlzLl9vdmVybGF5SWR9XG4gICAgICAgIGFyaWEtb3ducz0ke3RoaXMuX292ZXJsYXlJZH1cbiAgICAgICAgQGtleWRvd249JHt0aGlzLl9vbktleURvd259XG4gICAgICAgIEBjbGljaz0ke3RoaXMuX3RvZ2dsZU9wZW5pbmd9XG4gICAgICAgICR7cmVmKChyZWYpID0+ICh0aGlzLl90cmlnZ2VyRWxlbWVudCA9IHJlZiBhcyBIVE1MRWxlbWVudCkpfVxuICAgICAgPlxuICAgICAgICAke3RoaXMuX2Rpc3BsYXlWYWx1ZSA/IGh0bWxgJHt0aGlzLl9kaXNwbGF5VmFsdWV9YCA6IGh0bWxgPHNwYW4+JHt0aGlzLnBsYWNlaG9sZGVyfTwvc3Bhbj5gfVxuICAgICAgPC9kaXY+XG5cbiAgICAgIDwhLS0gVmlzdWFsbHkgZGlzcGxheSB0aGUgdmFsdWUgLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXNlbGVjdF9fdHJpZ2dlclwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgICAgICAke3RoaXMuX2Rpc3BsYXlWYWx1ZVxuICAgICAgICAgID8gaHRtbGAke3RoaXMuX2Rpc3BsYXlWYWx1ZX1gXG4gICAgICAgICAgOiBodG1sYDxzcGFuIGNsYXNzPVwic2JiLXNlbGVjdF9fdHJpZ2dlci0tcGxhY2Vob2xkZXJcIj4ke3RoaXMucGxhY2Vob2xkZXJ9PC9zcGFuPmB9XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1zZWxlY3RfX2dhcC1maXhcIj48L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItc2VsZWN0X19jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1zZWxlY3RfX2dhcC1maXhcIj4ke292ZXJsYXlHYXBGaXhDb3JuZXJzKCl9PC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBAYW5pbWF0aW9uZW5kPSR7dGhpcy5fb25BbmltYXRpb25FbmR9XG4gICAgICAgICAgY2xhc3M9XCJzYmItc2VsZWN0X19wYW5lbFwiXG4gICAgICAgICAgJHtyZWYoKGRpYWxvZ1JlZikgPT4gKHRoaXMuX292ZXJsYXkgPSBkaWFsb2dSZWYgYXMgSFRNTEVsZW1lbnQpKX1cbiAgICAgICAgPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItc2VsZWN0X193cmFwcGVyXCI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIGlkPSR7IWFyaWFSb2xlT25Ib3N0ID8gdGhpcy5fb3ZlcmxheUlkIDogbm90aGluZ31cbiAgICAgICAgICAgICAgY2xhc3M9XCJzYmItc2VsZWN0X19vcHRpb25zXCJcbiAgICAgICAgICAgICAgcm9sZT0keyFhcmlhUm9sZU9uSG9zdCA/ICdsaXN0Ym94JyA6IG5vdGhpbmd9XG4gICAgICAgICAgICAgID9hcmlhLW11bHRpc2VsZWN0YWJsZT0ke3RoaXMubXVsdGlwbGV9XG4gICAgICAgICAgICAgICR7cmVmKChjb250YWluZXJSZWYpID0+ICh0aGlzLl9vcHRpb25Db250YWluZXIgPSBjb250YWluZXJSZWYgYXMgSFRNTEVsZW1lbnQpKX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHNsb3QgQHNsb3RjaGFuZ2U9JHt0aGlzLl9zZXRWYWx1ZUZyb21TZWxlY3RlZE9wdGlvbn0+PC9zbG90PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXNlbGVjdCc6IFNiYlNlbGVjdEVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJyZWYiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
|
|
891
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvc2VsZWN0L3NlbGVjdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBQcm9wZXJ0eVZhbHVlcywgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgaHRtbCwgbm90aGluZyB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSwgc3RhdGUgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyByZWYgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9yZWYuanMnO1xuXG5pbXBvcnQgeyBnZXROZXh0RWxlbWVudEluZGV4IH0gZnJvbSAnLi4vY29yZS9hMTF5LmpzJztcbmltcG9ydCB7IFNiYk9wZW5DbG9zZUJhc2VFbGVtZW50IH0gZnJvbSAnLi4vY29yZS9iYXNlLWVsZW1lbnRzLmpzJztcbmltcG9ydCB7IFNiYkNvbm5lY3RlZEFib3J0Q29udHJvbGxlciB9IGZyb20gJy4uL2NvcmUvY29udHJvbGxlcnMuanMnO1xuaW1wb3J0IHsgaG9zdEF0dHJpYnV0ZXMgfSBmcm9tICcuLi9jb3JlL2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgZ2V0RG9jdW1lbnRXcml0aW5nTW9kZSwgaXNOZXh0anMsIGlzU2FmYXJpIH0gZnJvbSAnLi4vY29yZS9kb20uanMnO1xuaW1wb3J0IHsgRXZlbnRFbWl0dGVyIH0gZnJvbSAnLi4vY29yZS9ldmVudGluZy5qcyc7XG5pbXBvcnQgeyBTYmJEaXNhYmxlZE1peGluLCBTYmJOZWdhdGl2ZU1peGluLCBTYmJVcGRhdGVTY2hlZHVsZXJNaXhpbiB9IGZyb20gJy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IGlzRXZlbnRPbkVsZW1lbnQsIG92ZXJsYXlHYXBGaXhDb3JuZXJzLCBzZXRPdmVybGF5UG9zaXRpb24gfSBmcm9tICcuLi9jb3JlL292ZXJsYXkuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJPcHRHcm91cEVsZW1lbnQsIFNiYk9wdGlvbkVsZW1lbnQgfSBmcm9tICcuLi9vcHRpb24uanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9zZWxlY3Quc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBPbiBTYWZhcmksIHRoZSBhcmlhIHJvbGUgJ2xpc3Rib3gnIG11c3QgYmUgb24gdGhlIGhvc3QgZWxlbWVudCwgb3IgZWxzZSBWb2ljZU92ZXIgd29uJ3Qgd29yayBhdCBhbGwuXG4gKiBPbiB0aGUgb3RoZXIgaGFuZCwgSkFXUyBhbmQgTlZEQSBuZWVkIHRoZSByb2xlIHRvIGJlIGFuIFwiaW1tZWRpYXRlIHBhcmVudFwiIHRvIHRoZSBvcHRpb25zLCBvciBlbHNlIG9wdGdyb3VwcyB3b24ndCB3b3JrLlxuICovXG5jb25zdCBhcmlhUm9sZU9uSG9zdCA9IGlzU2FmYXJpO1xuXG5sZXQgbmV4dElkID0gMDtcblxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RDaGFuZ2Uge1xuICB0eXBlOiAndmFsdWUnO1xuICB2YWx1ZTogc3RyaW5nIHwgc3RyaW5nW107XG59XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSBwYW5lbCB3aXRoIHNlbGVjdGFibGUgb3B0aW9ucy5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBvcHRpb25zLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkQ2hhbmdlIC0gRGVwcmVjYXRlZC4gdXNlZCBmb3IgUmVhY3QuIFdpbGwgcHJvYmFibHkgYmUgcmVtb3ZlZCBvbmNlIFJlYWN0IDE5IGlzIGF2YWlsYWJsZS5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IGNoYW5nZSAtIE5vdGlmaWVzIHRoYXQgdGhlIGNvbXBvbmVudCdzIHZhbHVlIGhhcyBjaGFuZ2VkLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gaW5wdXQgLSBOb3RpZmllcyB0aGF0IGFuIG9wdGlvbiB2YWx1ZSBoYXMgYmVlbiBzZWxlY3RlZC5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IHdpbGxPcGVuIC0gRW1pdHMgd2hlbmV2ZXIgdGhlIGBzYmItc2VsZWN0YCBzdGFydHMgdGhlIG9wZW5pbmcgdHJhbnNpdGlvbi4gQ2FuIGJlIGNhbmNlbGVkLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkT3BlbiAtIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLXNlbGVjdGAgaXMgb3BlbmVkLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gd2lsbENsb3NlIC0gRW1pdHMgd2hlbmV2ZXIgdGhlIGBzYmItc2VsZWN0YCBiZWdpbnMgdGhlIGNsb3NpbmcgdHJhbnNpdGlvbi4gQ2FuIGJlIGNhbmNlbGVkLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkQ2xvc2UgLSBFbWl0cyB3aGVuZXZlciB0aGUgYHNiYi1zZWxlY3RgIGlzIGNsb3NlZC5cbiAqIEBjc3Nwcm9wIFstLXNiYi1zZWxlY3Qtei1pbmRleD12YXIoLS1zYmItb3ZlcmxheS1kZWZhdWx0LXotaW5kZXgpXSAtIFRvIHNwZWNpZnkgYSBjdXN0b20gc3RhY2sgb3JkZXIsXG4gKiB0aGUgYHotaW5kZXhgIGNhbiBiZSBvdmVycmlkZGVuIGJ5IGRlZmluaW5nIHRoaXMgQ1NTIHZhcmlhYmxlLiBUaGUgZGVmYXVsdCBgei1pbmRleGAgb2YgdGhlXG4gKiBjb21wb25lbnQgaXMgc2V0IHRvIGB2YXIoLS1zYmItb3ZlcmxheS1kZWZhdWx0LXotaW5kZXgpYCB3aXRoIGEgdmFsdWUgb2YgYDEwMDBgLlxuICovXG5AY3VzdG9tRWxlbWVudCgnc2JiLXNlbGVjdCcpXG5AaG9zdEF0dHJpYnV0ZXMoe1xuICBkaXI6IGdldERvY3VtZW50V3JpdGluZ01vZGUoKSxcbiAgcm9sZTogYXJpYVJvbGVPbkhvc3QgPyAnbGlzdGJveCcgOiBudWxsLFxufSlcbmV4cG9ydCBjbGFzcyBTYmJTZWxlY3RFbGVtZW50IGV4dGVuZHMgU2JiVXBkYXRlU2NoZWR1bGVyTWl4aW4oXG4gIFNiYkRpc2FibGVkTWl4aW4oU2JiTmVnYXRpdmVNaXhpbihTYmJPcGVuQ2xvc2VCYXNlRWxlbWVudCkpLFxuKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8vIEZJWE1FIHVzaW5nIC4uLnN1cGVyLmV2ZW50cyByZXF1aXJlczogaHR0cHM6Ly9naXRodWIuY29tL3NiYi1kZXNpZ24tc3lzdGVtcy9seW5lLWNvbXBvbmVudHMvaXNzdWVzLzI2MDBcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSBldmVudHMgPSB7XG4gICAgZGlkQ2hhbmdlOiAnZGlkQ2hhbmdlJyxcbiAgICBjaGFuZ2U6ICdjaGFuZ2UnLFxuICAgIGlucHV0OiAnaW5wdXQnLFxuICAgIHN0YXRlQ2hhbmdlOiAnc3RhdGVDaGFuZ2UnLFxuICAgIHdpbGxPcGVuOiAnd2lsbE9wZW4nLFxuICAgIGRpZE9wZW46ICdkaWRPcGVuJyxcbiAgICB3aWxsQ2xvc2U6ICd3aWxsQ2xvc2UnLFxuICAgIGRpZENsb3NlOiAnZGlkQ2xvc2UnLFxuICB9IGFzIGNvbnN0O1xuXG4gIC8qKiBUaGUgdmFsdWUgb2YgdGhlIHNlbGVjdCBjb21wb25lbnQuIElmIGBtdWx0aXBsZWAgaXMgdHJ1ZSwgaXQncyBhbiBhcnJheS4gKi9cbiAgQHByb3BlcnR5KCkgcHVibGljIHZhbHVlPzogc3RyaW5nIHwgc3RyaW5nW107XG5cbiAgLyoqIFRoZSBwbGFjZWhvbGRlciB1c2VkIGlmIG5vIHZhbHVlIGhhcyBiZWVuIHNlbGVjdGVkLiAqL1xuICBAcHJvcGVydHkoKSBwdWJsaWMgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIHNlbGVjdCBhbGxvd3MgZm9yIG11bHRpcGxlIHNlbGVjdGlvbi4gKi9cbiAgQHByb3BlcnR5KHsgdHlwZTogQm9vbGVhbiwgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgbXVsdGlwbGUgPSBmYWxzZTtcblxuICAvKiogV2hldGhlciB0aGUgc2VsZWN0IGlzIHJlcXVpcmVkLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlLCB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyByZXF1aXJlZCA9IGZhbHNlO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBzZWxlY3QgaXMgcmVhZG9ubHkuICovXG4gIEBwcm9wZXJ0eSh7IHR5cGU6IEJvb2xlYW4gfSkgcHVibGljIHJlYWRvbmx5ID0gZmFsc2U7XG5cbiAgLyoqIFRoZSB2YWx1ZSBkaXNwbGF5ZWQgYnkgdGhlIGNvbXBvbmVudC4gKi9cbiAgQHN0YXRlKCkgcHJpdmF0ZSBfZGlzcGxheVZhbHVlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgb25seSB1c2VkIGZvciBSZWFjdC4gV2lsbCBwcm9iYWJseSBiZSByZW1vdmVkIG9uY2UgUmVhY3QgMTkgaXMgYXZhaWxhYmxlLlxuICAgKi9cbiAgcHJpdmF0ZSBfZGlkQ2hhbmdlOiBFdmVudEVtaXR0ZXIgPSBuZXcgRXZlbnRFbWl0dGVyKHRoaXMsIFNiYlNlbGVjdEVsZW1lbnQuZXZlbnRzLmRpZENoYW5nZSk7XG5cbiAgLyoqIE5vdGlmaWVzIHRoYXQgdGhlIGNvbXBvbmVudCdzIHZhbHVlIGhhcyBjaGFuZ2VkLiAqL1xuICBwcml2YXRlIF9jaGFuZ2U6IEV2ZW50RW1pdHRlciA9IG5ldyBFdmVudEVtaXR0ZXIodGhpcywgU2JiU2VsZWN0RWxlbWVudC5ldmVudHMuY2hhbmdlKTtcblxuICAvKiogTm90aWZpZXMgdGhhdCBhbiBvcHRpb24gdmFsdWUgaGFzIGJlZW4gc2VsZWN0ZWQuICovXG4gIHByaXZhdGUgX2lucHV0OiBFdmVudEVtaXR0ZXIgPSBuZXcgRXZlbnRFbWl0dGVyKHRoaXMsIFNiYlNlbGVjdEVsZW1lbnQuZXZlbnRzLmlucHV0KTtcblxuICAvKiogQGludGVybmFsICovXG4gIHByaXZhdGUgX3N0YXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8U2VsZWN0Q2hhbmdlPiA9IG5ldyBFdmVudEVtaXR0ZXIoXG4gICAgdGhpcyxcbiAgICBTYmJTZWxlY3RFbGVtZW50LmV2ZW50cy5zdGF0ZUNoYW5nZSxcbiAgICB7XG4gICAgICBjb21wb3NlZDogZmFsc2UsXG4gICAgfSxcbiAgKTtcblxuICBwcml2YXRlIF9vdmVybGF5ITogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX29wdGlvbkNvbnRhaW5lciE6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIF9vcmlnaW5FbGVtZW50ITogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX3RyaWdnZXJFbGVtZW50ITogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX29wZW5QYW5lbEV2ZW50c0NvbnRyb2xsZXIhOiBBYm9ydENvbnRyb2xsZXI7XG4gIHByaXZhdGUgX292ZXJsYXlJZCA9IGBzYmItc2VsZWN0LSR7KytuZXh0SWR9YDtcbiAgcHJpdmF0ZSBfYWN0aXZlSXRlbUluZGV4ID0gLTE7XG4gIHByaXZhdGUgX3NlYXJjaFRpbWVvdXQ/OiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PjtcbiAgcHJpdmF0ZSBfc2VhcmNoU3RyaW5nID0gJyc7XG4gIHByaXZhdGUgX2RpZExvYWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfaXNQb2ludGVyRG93bkV2ZW50T25NZW51OiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgX2Fib3J0ID0gbmV3IFNiYkNvbm5lY3RlZEFib3J0Q29udHJvbGxlcih0aGlzKTtcblxuICAvKipcbiAgICogVGhlICdjb21ib2JveCcgaW5wdXQgZWxlbWVudFxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBnZXQgaW5wdXRFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5fdHJpZ2dlckVsZW1lbnQ7XG4gIH1cblxuICAvKiogR2V0cyBhbGwgdGhlIFNiYk9wdGlvbkVsZW1lbnQgcHJvamVjdGVkIGluIHRoZSBzZWxlY3QuICovXG4gIHByaXZhdGUgZ2V0IF9vcHRpb25zKCk6IFNiYk9wdGlvbkVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5xdWVyeVNlbGVjdG9yQWxsPy4oJ3NiYi1vcHRpb24nKSA/PyBbXSk7XG4gIH1cblxuICBwcml2YXRlIGdldCBfZmlsdGVyZWRPcHRpb25zKCk6IFNiYk9wdGlvbkVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIHRoaXMuX29wdGlvbnMuZmlsdGVyKFxuICAgICAgKG9wdDogU2JiT3B0aW9uRWxlbWVudCkgPT4gIW9wdC5kaXNhYmxlZCAmJiAhb3B0Lmhhc0F0dHJpYnV0ZSgnZGF0YS1ncm91cC1kaXNhYmxlZCcpLFxuICAgICk7XG4gIH1cblxuICAvKiogT3BlbnMgdGhlIHNlbGVjdGlvbiBwYW5lbC4gKi9cbiAgcHVibGljIG9wZW4oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdGUgIT09ICdjbG9zZWQnIHx8ICF0aGlzLl9vdmVybGF5IHx8IHRoaXMuX29wdGlvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLndpbGxPcGVuLmVtaXQoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnN0YXRlID0gJ29wZW5pbmcnO1xuICAgIHRoaXMuX3NldE92ZXJsYXlQb3NpdGlvbigpO1xuICB9XG5cbiAgLyoqIENsb3NlcyB0aGUgc2VsZWN0aW9uIHBhbmVsLiAqL1xuICBwdWJsaWMgY2xvc2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdGUgIT09ICdvcGVuZWQnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLndpbGxDbG9zZS5lbWl0KCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5zdGF0ZSA9ICdjbG9zaW5nJztcbiAgICB0aGlzLl9vcGVuUGFuZWxFdmVudHNDb250cm9sbGVyLmFib3J0KCk7XG4gIH1cblxuICAvKiogR2V0cyB0aGUgY3VycmVudCBkaXNwbGF5ZWQgdmFsdWUuICovXG4gIHB1YmxpYyBnZXREaXNwbGF5VmFsdWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gIXRoaXMuX2Rpc3BsYXlWYWx1ZSA/ICcnIDogdGhpcy5fZGlzcGxheVZhbHVlO1xuICB9XG5cbiAgLyoqIExpc3RlbnMgdG8gb3B0aW9uIGNoYW5nZXMuICovXG4gIHByaXZhdGUgX29uT3B0aW9uQ2hhbmdlZChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgU2JiT3B0aW9uRWxlbWVudDtcbiAgICBpZiAodGFyZ2V0LnNlbGVjdGVkKSB7XG4gICAgICB0aGlzLl9vbk9wdGlvblNlbGVjdGVkKHRhcmdldCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX29uT3B0aW9uRGVzZWxlY3RlZCh0YXJnZXQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX29uT3B0aW9uQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgU2JiU2VsZWN0RWxlbWVudCB8IFNiYk9wdGlvbkVsZW1lbnQ7XG4gICAgaWYgKHRhcmdldC5sb2NhbE5hbWUgIT09ICdzYmItb3B0aW9uJyB8fCB0YXJnZXQuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMubXVsdGlwbGUpIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICAvKiogU2V0cyB0aGUgX2Rpc3BsYXlWYWx1ZSBieSBjaGVja2luZyB0aGUgaW50ZXJuYWwgc2JiLW9wdGlvbnMgYW5kIHNldHRpbmcgdGhlIGNvcnJlY3QgYHNlbGVjdGVkYCB2YWx1ZSBvbiB0aGVtLiAqL1xuICBwcml2YXRlIF9vblZhbHVlQ2hhbmdlZChuZXdWYWx1ZTogc3RyaW5nIHwgc3RyaW5nW10pOiB2b2lkIHtcbiAgICBjb25zdCBvcHRpb25zID0gdGhpcy5fZmlsdGVyZWRPcHRpb25zO1xuICAgIGlmICghQXJyYXkuaXNBcnJheShuZXdWYWx1ZSkpIHtcbiAgICAgIGNvbnN0IG9wdGlvbkVsZW1lbnQgPSBvcHRpb25zLmZpbmQoKG8pID0+IChvLnZhbHVlID8/IG8uZ2V0QXR0cmlidXRlKCd2YWx1ZScpKSA9PT0gbmV3VmFsdWUpO1xuICAgICAgaWYgKG9wdGlvbkVsZW1lbnQpIHtcbiAgICAgICAgb3B0aW9uRWxlbWVudC5zZWxlY3RlZCA9IHRydWU7XG4gICAgICB9XG4gICAgICBvcHRpb25zXG4gICAgICAgIC5maWx0ZXIoKG8pID0+IChvLnZhbHVlID8/IG8uZ2V0QXR0cmlidXRlKCd2YWx1ZScpKSAhPT0gbmV3VmFsdWUpXG4gICAgICAgIC5mb3JFYWNoKChvKSA9PiAoby5zZWxlY3RlZCA9IGZhbHNlKSk7XG4gICAgICB0aGlzLl9kaXNwbGF5VmFsdWUgPSBvcHRpb25FbGVtZW50Py50ZXh0Q29udGVudCB8fCBudWxsO1xuICAgIH0gZWxzZSB7XG4gICAgICBvcHRpb25zXG4gICAgICAgIC5maWx0ZXIoKG8pID0+ICFuZXdWYWx1ZS5pbmNsdWRlcyhvLnZhbHVlID8/IG8uZ2V0QXR0cmlidXRlKCd2YWx1ZScpKSlcbiAgICAgICAgLmZvckVhY2goKGUpID0+IChlLnNlbGVjdGVkID0gZmFsc2UpKTtcbiAgICAgIGNvbnN0IHNlbGVjdGVkT3B0aW9uRWxlbWVudHMgPSBvcHRpb25zLmZpbHRlcigobykgPT5cbiAgICAgICAgbmV3VmFsdWUuaW5jbHVkZXMoby52YWx1ZSA/PyBvLmdldEF0dHJpYnV0ZSgndmFsdWUnKSksXG4gICAgICApO1xuICAgICAgc2VsZWN0ZWRPcHRpb25FbGVtZW50cy5mb3JFYWNoKChvKSA9PiAoby5zZWxlY3RlZCA9IHRydWUpKTtcbiAgICAgIHRoaXMuX2Rpc3BsYXlWYWx1ZSA9IHNlbGVjdGVkT3B0aW9uRWxlbWVudHMubWFwKChvKSA9PiBvLnRleHRDb250ZW50KS5qb2luKCcsICcpIHx8IG51bGw7XG4gICAgfVxuICAgIHRoaXMuX3N0YXRlQ2hhbmdlLmVtaXQoeyB0eXBlOiAndmFsdWUnLCB2YWx1ZTogbmV3VmFsdWUgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLmZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICAvLyBPdmVycmlkZSB0aGUgZGVmYXVsdCBmb2N1cyBiZWhhdmlvclxuICAgIHRoaXMuZm9jdXMgPSAoKSA9PiB0aGlzLl90cmlnZ2VyRWxlbWVudC5mb2N1cygpO1xuICAgIHRoaXMuYmx1ciA9ICgpID0+IHRoaXMuX3RyaWdnZXJFbGVtZW50LmJsdXIoKTtcblxuICAgIC8vIFdhaXQgZm9yIHNzciBoeWRyYXRpb25cbiAgICBpZiAoIWlzTmV4dGpzKCkpIHtcbiAgICAgIHRoaXMuc3RhcnRVcGRhdGUoKTtcbiAgICAgIHRoaXMuX3NldHVwU2VsZWN0KCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgZWxlbWVudCdzIGZpcnN0IGF0dHJpYnV0ZSB3aG9zZSBxdWFsaWZpZWQgbmFtZSBpcyBxdWFsaWZpZWROYW1lLlxuICAgKlxuICAgKiBbTUROIFJlZmVyZW5jZV0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvQVBJL0VsZW1lbnQvcmVtb3ZlQXR0cmlidXRlKVxuICAgKiBAaW50ZXJuYWwgV2UgbmVlZCB0byBvdmVycmlkZSB0aGlzIGR1ZSB0byBhIGh5ZHJhdGlvbiBpc3N1ZSB3aXRoIE5leHQuanMuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgcmVtb3ZlQXR0cmlidXRlKHF1YWxpZmllZE5hbWU6IHN0cmluZyk6IHZvaWQge1xuICAgIC8vIEluIE5leHQuanMgdGhlIGh5ZHJhdGlvbiBuZWVkcyB0byBmaW5pc2ggYmVmb3JlIHdlIGNhbiBtYW5pcHVsYXRlIHRoZSBsaWdodCBET00uXG4gICAgLy8gQGxpdC9yZWFjdCBjYWxscyByZW1vdmVBdHRyaWJ1dGUoJ2RlZmVyLWh5ZHJhdGlvbicpIGluIGEgdXNlTGF5b3V0RWZmZWN0LFxuICAgIC8vIHdoaWNoIGlzIGRvbmUgYWZ0ZXIgaHlkcmF0aW9uIGlzIGZpbmlzaGVkLiBEdWUgdG8gdGhpcyB3ZSBpbnRlcmNlcHQgdGhpcyBjYWxsXG4gICAgLy8gaW4gb3ZlcnJpZGluZyByZW1vdmVBdHRyaWJ1dGUgdG8gZmluaXNoIGluaXRpYWxpemF0aW9uIG9mIHRoZSBzYmItc2VsZWN0LlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9saXQvbGl0L2Jsb2IvbWFpbi9wYWNrYWdlcy9yZWFjdC9zcmMvY3JlYXRlLWNvbXBvbmVudC50cyNMMjkzLUwyOTZcbiAgICAvLyBXZSBhbHNvIG5lZWQgdG8gd2FpdCBmb3IgdXBkYXRlIGNvbXBsZXRlIGluIG9yZGVyIHRvIGJlIHN1cmUgdGhhdCB0aGUgc2hhZG93IERPTSBoYXMgYmVlbiByZW5kZXJlZC5cbiAgICBpZiAoaXNOZXh0anMoKSAmJiBxdWFsaWZpZWROYW1lID09PSAnZGVmZXItaHlkcmF0aW9uJyAmJiAhdGhpcy5fZGlkTG9hZCkge1xuICAgICAgdGhpcy51cGRhdGVDb21wbGV0ZS50aGVuKCgpID0+IHRoaXMuX3NldHVwU2VsZWN0KCkpO1xuICAgIH1cbiAgICBzdXBlci5yZW1vdmVBdHRyaWJ1dGUocXVhbGlmaWVkTmFtZSk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcblxuICAgIGlmIChhcmlhUm9sZU9uSG9zdCkge1xuICAgICAgdGhpcy5pZCB8fD0gdGhpcy5fb3ZlcmxheUlkO1xuICAgIH1cblxuICAgIGNvbnN0IHNpZ25hbCA9IHRoaXMuX2Fib3J0LnNpZ25hbDtcbiAgICBjb25zdCBmb3JtRmllbGQgPSB0aGlzLmNsb3Nlc3Q/Lignc2JiLWZvcm0tZmllbGQnKSA/PyB0aGlzLmNsb3Nlc3Q/LignW2RhdGEtZm9ybS1maWVsZF0nKTtcblxuICAgIGlmIChmb3JtRmllbGQpIHtcbiAgICAgIHRoaXMubmVnYXRpdmUgPSBmb3JtRmllbGQuaGFzQXR0cmlidXRlKCduZWdhdGl2ZScpO1xuICAgIH1cbiAgICB0aGlzLl9zeW5jUHJvcGVydGllcygpO1xuXG4gICAgaWYgKHRoaXMuX2RpZExvYWQpIHtcbiAgICAgIHRoaXMuX3NldHVwT3JpZ2luKCk7XG4gICAgICB0aGlzLl9zZXR1cFRyaWdnZXIoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMudmFsdWUpIHtcbiAgICAgIHRoaXMuX29uVmFsdWVDaGFuZ2VkKHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICdvcHRpb25TZWxlY3Rpb25DaGFuZ2UnLFxuICAgICAgKGU6IEN1c3RvbUV2ZW50PHZvaWQ+KSA9PiB0aGlzLl9vbk9wdGlvbkNoYW5nZWQoZSksXG4gICAgICB7IHNpZ25hbCB9LFxuICAgICk7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKFxuICAgICAgJ2NsaWNrJyxcbiAgICAgIChlOiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgIHRoaXMuX29uT3B0aW9uQ2xpY2soZSk7XG4gICAgICAgIHRoaXMuX3RvZ2dsZU9wZW5pbmcoKTtcbiAgICAgIH0sXG4gICAgICB7IHNpZ25hbCB9LFxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ3ZhbHVlJykpIHtcbiAgICAgIHRoaXMuX29uVmFsdWVDaGFuZ2VkKHRoaXMudmFsdWUhKTtcbiAgICB9XG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnbmVnYXRpdmUnKSB8fCBjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ211bHRpcGxlJykpIHtcbiAgICAgIHRoaXMuX3N5bmNQcm9wZXJ0aWVzKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5wcmVwZW5kKHRoaXMuX3RyaWdnZXJFbGVtZW50KTsgLy8gVGFrZSBiYWNrIHRoZSB0cmlnZ2VyIGVsZW1lbnQgcHJldmlvdXNseSBtb3ZlZCB0byB0aGUgbGlnaHQgRE9NXG4gICAgdGhpcy5fb3BlblBhbmVsRXZlbnRzQ29udHJvbGxlcj8uYWJvcnQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3N5bmNQcm9wZXJ0aWVzKCk6IHZvaWQge1xuICAgIHRoaXMucXVlcnlTZWxlY3RvckFsbD8uKCdzYmItZGl2aWRlcicpLmZvckVhY2goKGVsZW1lbnQpID0+IChlbGVtZW50Lm5lZ2F0aXZlID0gdGhpcy5uZWdhdGl2ZSkpO1xuXG4gICAgdGhpcy5xdWVyeVNlbGVjdG9yQWxsPy48U2JiT3B0aW9uRWxlbWVudCB8IFNiYk9wdEdyb3VwRWxlbWVudD4oXG4gICAgICAnc2JiLW9wdGlvbiwgc2JiLW9wdGdyb3VwJyxcbiAgICApLmZvckVhY2goKGVsZW1lbnQ6IFNiYk9wdGlvbkVsZW1lbnQgfCBTYmJPcHRHcm91cEVsZW1lbnQpID0+IHtcbiAgICAgIGVsZW1lbnQudG9nZ2xlQXR0cmlidXRlKCdkYXRhLW5lZ2F0aXZlJywgdGhpcy5uZWdhdGl2ZSk7XG4gICAgICBlbGVtZW50LnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1tdWx0aXBsZScsIHRoaXMubXVsdGlwbGUpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0dXBTZWxlY3QoKTogdm9pZCB7XG4gICAgdGhpcy5fc2V0dXBPcmlnaW4oKTtcbiAgICB0aGlzLl9zZXR1cFRyaWdnZXIoKTtcbiAgICB0aGlzLl9kaWRMb2FkID0gdHJ1ZTtcbiAgICB0aGlzLmNvbXBsZXRlVXBkYXRlKCk7XG4gIH1cblxuICAvKiogU2V0cyB0aGUgb3JpZ2luRWxlbWVudDsgaWYgdGhlIGNvbXBvbmVudCBpcyB1c2VkIGluIGEgc2JiLWZvcm0tZmllbGQgdXNlcyBpdCwgb3RoZXJ3aXNlIHVzZXMgdGhlIHBhcmVudEVsZW1lbnQuICovXG4gIHByaXZhdGUgX3NldHVwT3JpZ2luKCk6IHZvaWQge1xuICAgIGNvbnN0IGZvcm1GaWVsZCA9IHRoaXMuY2xvc2VzdD8uKCdzYmItZm9ybS1maWVsZCcpO1xuICAgIHRoaXMuX29yaWdpbkVsZW1lbnQgPVxuICAgICAgZm9ybUZpZWxkPy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yPy4oJyNvdmVybGF5LWFuY2hvcicpID8/IHRoaXMucGFyZW50RWxlbWVudCE7XG4gICAgaWYgKHRoaXMuX29yaWdpbkVsZW1lbnQpIHtcbiAgICAgIHRoaXMudG9nZ2xlQXR0cmlidXRlKFxuICAgICAgICAnZGF0YS1vcHRpb24tcGFuZWwtb3JpZ2luLWJvcmRlcmxlc3MnLFxuICAgICAgICAhIWZvcm1GaWVsZD8uaGFzQXR0cmlidXRlPy4oJ2JvcmRlcmxlc3MnKSxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRvIGFzc2VzcyBzY3JlZW4tcmVhZGVycyBwcm9ibGVtcyBjYXVzZWQgYnkgdGhlIGludGVyYWN0aW9uIGJldHdlZW4gYXJpYSBwYXR0ZXJucyBhbmQgc2hhZG93IERPTSxcbiAgICogd2UgYXJlIGZvcmNlZCB0byBtb3ZlIHRoZSAnY29tYm9ib3gnIHRyaWdnZXIgZWxlbWVudCB0byB0aGUgbGlnaHQgRE9NXG4gICAqL1xuICBwcml2YXRlIF9zZXR1cFRyaWdnZXIoKTogdm9pZCB7XG4gICAgLy8gTW92ZSB0aGUgdHJpZ2dlciBiZWZvcmUgdGhlIHNiYi1zZWxlY3RcbiAgICB0aGlzLnBhcmVudEVsZW1lbnQhLmluc2VydEJlZm9yZT8uKHRoaXMuX3RyaWdnZXJFbGVtZW50LCB0aGlzKTtcblxuICAgIC8vIFNldCB0aGUgaW52aXNpYmxlIHRyaWdnZXIgZWxlbWVudCBkaW1lbnNpb24gdG8gbWF0Y2ggdGhlIHBhcmVudCAobmVlZGVkIGZvciBzY3JlZW4gcmVhZGVycylcbiAgICBjb25zdCBjb250YWluZXJFbGVtZW50ID0gdGhpcy5jbG9zZXN0Py4oJ3NiYi1mb3JtLWZpZWxkJykgPz8gdGhpcztcbiAgICB0aGlzLl90cmlnZ2VyRWxlbWVudC5zdHlsZS50b3AgPSAnMHB4JztcbiAgICB0aGlzLl90cmlnZ2VyRWxlbWVudC5zdHlsZS5oZWlnaHQgPSBgJHtjb250YWluZXJFbGVtZW50Lm9mZnNldEhlaWdodH1weGA7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQuc3R5bGUud2lkdGggPSBgJHtjb250YWluZXJFbGVtZW50Lm9mZnNldFdpZHRofXB4YDtcbiAgfVxuXG4gIHByaXZhdGUgX3NldE92ZXJsYXlQb3NpdGlvbigpOiB2b2lkIHtcbiAgICBzZXRPdmVybGF5UG9zaXRpb24oXG4gICAgICB0aGlzLl9vdmVybGF5LFxuICAgICAgdGhpcy5fb3JpZ2luRWxlbWVudCxcbiAgICAgIHRoaXMuX29wdGlvbkNvbnRhaW5lcixcbiAgICAgIHRoaXMuc2hhZG93Um9vdCEucXVlcnlTZWxlY3RvcignLnNiYi1zZWxlY3RfX2NvbnRhaW5lcicpISxcbiAgICAgIHRoaXMsXG4gICAgKTtcbiAgfVxuXG4gIC8vIEluIHJhcmUgY2FzZXMgaXQgY2FuIGJlIHRoYXQgdGhlIGFuaW1hdGlvbkVuZCBldmVudCBpcyB0cmlnZ2VyZWQgdHdpY2UuXG4gIC8vIFRvIGF2b2lkIGVudGVyaW5nIGEgY29ycnVwdCBzdGF0ZSwgZXhpdCB3aGVuIHN0YXRlIGlzIG5vdCBleHBlY3RlZC5cbiAgcHJpdmF0ZSBfb25BbmltYXRpb25FbmQoZXZlbnQ6IEFuaW1hdGlvbkV2ZW50KTogdm9pZCB7XG4gICAgaWYgKGV2ZW50LmFuaW1hdGlvbk5hbWUgPT09ICdvcGVuJyAmJiB0aGlzLnN0YXRlID09PSAnb3BlbmluZycpIHtcbiAgICAgIHRoaXMuX29uT3BlbkFuaW1hdGlvbkVuZCgpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ2Nsb3NlJyAmJiB0aGlzLnN0YXRlID09PSAnY2xvc2luZycpIHtcbiAgICAgIHRoaXMuX29uQ2xvc2VBbmltYXRpb25FbmQoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9vbk9wZW5BbmltYXRpb25FbmQoKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZSA9ICdvcGVuZWQnO1xuICAgIHRoaXMuX2F0dGFjaE9wZW5QYW5lbEV2ZW50cygpO1xuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50LnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICd0cnVlJyk7XG5cbiAgICB0aGlzLmRpZE9wZW4uZW1pdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfb25DbG9zZUFuaW1hdGlvbkVuZCgpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlID0gJ2Nsb3NlZCc7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQuc2V0QXR0cmlidXRlKCdhcmlhLWV4cGFuZGVkJywgJ2ZhbHNlJyk7XG4gICAgdGhpcy5fcmVzZXRBY3RpdmVFbGVtZW50KCk7XG4gICAgdGhpcy5fb3B0aW9uQ29udGFpbmVyLnNjcm9sbFRvcCA9IDA7XG4gICAgdGhpcy5kaWRDbG9zZS5lbWl0KCk7XG4gIH1cblxuICAvKiogV2hlbiBhbiBvcHRpb24gaXMgc2VsZWN0ZWQsIHVwZGF0ZXMgdGhlIGRpc3BsYXlWYWx1ZTsgaXQgYWxzbyBjbG9zZXMgdGhlIHNlbGVjdCBpZiBub3QgYG11bHRpcGxlYC4gKi9cbiAgcHJpdmF0ZSBfb25PcHRpb25TZWxlY3RlZChvcHRpb25TZWxlY3Rpb25DaGFuZ2U6IFNiYk9wdGlvbkVsZW1lbnQpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubXVsdGlwbGUpIHtcbiAgICAgIHRoaXMuX2ZpbHRlcmVkT3B0aW9uc1xuICAgICAgICAuZmlsdGVyKChvcHRpb24pID0+IG9wdGlvbi5pZCAhPT0gb3B0aW9uU2VsZWN0aW9uQ2hhbmdlLmlkKVxuICAgICAgICAuZm9yRWFjaCgob3B0aW9uKSA9PiAob3B0aW9uLnNlbGVjdGVkID0gZmFsc2UpKTtcbiAgICAgIHRoaXMudmFsdWUgPSBvcHRpb25TZWxlY3Rpb25DaGFuZ2UudmFsdWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICghdGhpcy52YWx1ZSkge1xuICAgICAgICB0aGlzLnZhbHVlID0gW29wdGlvblNlbGVjdGlvbkNoYW5nZS52YWx1ZSFdO1xuICAgICAgfSBlbHNlIGlmICghdGhpcy52YWx1ZS5pbmNsdWRlcyhvcHRpb25TZWxlY3Rpb25DaGFuZ2UudmFsdWUhKSkge1xuICAgICAgICB0aGlzLnZhbHVlID0gWy4uLnRoaXMudmFsdWUsIG9wdGlvblNlbGVjdGlvbkNoYW5nZS52YWx1ZSFdO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuX2lucHV0LmVtaXQoKTtcbiAgICB0aGlzLl9jaGFuZ2UuZW1pdCgpO1xuICAgIHRoaXMuX2RpZENoYW5nZS5lbWl0KCk7XG4gIH1cblxuICAvKiogV2hlbiBhbiBvcHRpb24gaXMgdW5zZWxlY3RlZCBpbiBgbXVsdGlwbGVgLCByZW1vdmVzIGl0IGZyb20gdmFsdWUgYW5kIHVwZGF0ZXMgZGlzcGxheVZhbHVlLiAqL1xuICBwcml2YXRlIF9vbk9wdGlvbkRlc2VsZWN0ZWQob3B0aW9uU2VsZWN0aW9uQ2hhbmdlOiBTYmJPcHRpb25FbGVtZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIHRoaXMudmFsdWUgPSAodGhpcy52YWx1ZSBhcyBzdHJpbmdbXSkuZmlsdGVyKFxuICAgICAgICAoZWw6IHN0cmluZykgPT4gZWwgIT09IG9wdGlvblNlbGVjdGlvbkNoYW5nZS52YWx1ZSxcbiAgICAgICk7XG5cbiAgICAgIHRoaXMuX2lucHV0LmVtaXQoKTtcbiAgICAgIHRoaXMuX2NoYW5nZS5lbWl0KCk7XG4gICAgICB0aGlzLl9kaWRDaGFuZ2UuZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2F0dGFjaE9wZW5QYW5lbEV2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLl9vcGVuUGFuZWxFdmVudHNDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuXG4gICAgLy8gUmVjYWxjdWxhdGUgdGhlIG92ZXJsYXkgcG9zaXRpb24gb24gc2Nyb2xsIGFuZCB3aW5kb3cgcmVzaXplXG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgKCkgPT4gdGhpcy5fc2V0T3ZlcmxheVBvc2l0aW9uKCksIHtcbiAgICAgIHBhc3NpdmU6IHRydWUsXG4gICAgICBzaWduYWw6IHRoaXMuX29wZW5QYW5lbEV2ZW50c0NvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdyZXNpemUnLCAoKSA9PiB0aGlzLl9zZXRPdmVybGF5UG9zaXRpb24oKSwge1xuICAgICAgcGFzc2l2ZTogdHJ1ZSxcbiAgICAgIHNpZ25hbDogdGhpcy5fb3BlblBhbmVsRXZlbnRzQ29udHJvbGxlci5zaWduYWwsXG4gICAgfSk7XG5cbiAgICAvLyBDbG9zZSBtZW51IG9uIGJhY2tkcm9wIGNsaWNrXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgKGV2KSA9PiB0aGlzLl9wb2ludGVyRG93bkxpc3RlbmVyKGV2KSwge1xuICAgICAgc2lnbmFsOiB0aGlzLl9vcGVuUGFuZWxFdmVudHNDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncG9pbnRlcnVwJywgKGV2KSA9PiB0aGlzLl9jbG9zZU9uQmFja2Ryb3BDbGljayhldiksIHtcbiAgICAgIHNpZ25hbDogdGhpcy5fb3BlblBhbmVsRXZlbnRzQ29udHJvbGxlci5zaWduYWwsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIF9vbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLnJlYWRvbmx5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc3RhdGUgPT09ICdvcGVuZWQnKSB7XG4gICAgICBhd2FpdCB0aGlzLl9vcGVuZWRQYW5lbEtleWJvYXJkSW50ZXJhY3Rpb24oZXZlbnQpO1xuICAgIH1cbiAgICBpZiAodGhpcy5zdGF0ZSA9PT0gJ2Nsb3NlZCcpIHtcbiAgICAgIGF3YWl0IHRoaXMuX2Nsb3NlZFBhbmVsS2V5Ym9hcmRJbnRlcmFjdGlvbihldmVudCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBfY2xvc2VkUGFuZWxLZXlib2FyZEludGVyYWN0aW9uKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKHRoaXMuX2NoZWNrRm9yTGV0dGVyU2VsZWN0aW9uKGV2ZW50KSkge1xuICAgICAgcmV0dXJuIHRoaXMuX3NldE5leHRBY3RpdmVPcHRpb25CeVRleHQoZXZlbnQpO1xuICAgIH1cblxuICAgIHN3aXRjaCAoZXZlbnQua2V5KSB7XG4gICAgICBjYXNlICdFbnRlcic6XG4gICAgICBjYXNlICcgJzpcbiAgICAgIGNhc2UgJ0Fycm93RG93bic6XG4gICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYXdhaXQgdGhpcy5vcGVuKCk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgX29wZW5lZFBhbmVsS2V5Ym9hcmRJbnRlcmFjdGlvbihldmVudDogS2V5Ym9hcmRFdmVudCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMucmVhZG9ubHkgfHwgdGhpcy5zdGF0ZSAhPT0gJ29wZW5lZCcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fY2hlY2tGb3JMZXR0ZXJTZWxlY3Rpb24oZXZlbnQpKSB7XG4gICAgICByZXR1cm4gdGhpcy5fc2V0TmV4dEFjdGl2ZU9wdGlvbkJ5VGV4dChldmVudCk7XG4gICAgfVxuXG4gICAgc3dpdGNoIChldmVudC5rZXkpIHtcbiAgICAgIGNhc2UgJ0VzY2FwZSc6XG4gICAgICBjYXNlICdUYWInOlxuICAgICAgICBhd2FpdCB0aGlzLmNsb3NlKCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlICdFbnRlcic6XG4gICAgICBjYXNlICcgJzpcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYXdhaXQgdGhpcy5fc2VsZWN0QnlLZXlib2FyZCgpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnQXJyb3dEb3duJzpcbiAgICAgIGNhc2UgJ0Fycm93VXAnOlxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBhd2FpdCB0aGlzLl9zZXROZXh0QWN0aXZlT3B0aW9uKGV2ZW50KTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ0hvbWUnOlxuICAgICAgY2FzZSAnUGFnZVVwJzpcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYXdhaXQgdGhpcy5fc2V0TmV4dEFjdGl2ZU9wdGlvbihldmVudCwgMCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlICdFbmQnOlxuICAgICAgY2FzZSAnUGFnZURvd24nOlxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBhd2FpdCB0aGlzLl9zZXROZXh0QWN0aXZlT3B0aW9uKGV2ZW50LCB0aGlzLl9maWx0ZXJlZE9wdGlvbnMubGVuZ3RoIC0gMSk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2NoZWNrRm9yTGV0dGVyU2VsZWN0aW9uKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgIGV2ZW50LmtleSA9PT0gJ0JhY2tzcGFjZScgfHxcbiAgICAgIGV2ZW50LmtleSA9PT0gJ0NsZWFyJyB8fFxuICAgICAgKGV2ZW50LmtleS5sZW5ndGggPT09IDEgJiZcbiAgICAgICAgZXZlbnQua2V5ICE9PSAnICcgJiZcbiAgICAgICAgIWV2ZW50LmFsdEtleSAmJlxuICAgICAgICAhZXZlbnQuY3RybEtleSAmJlxuICAgICAgICAhZXZlbnQubWV0YUtleSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBfc2V0TmV4dEFjdGl2ZU9wdGlvbkJ5VGV4dChldmVudDogS2V5Ym9hcmRFdmVudCk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vIFNldCB0aW1lb3V0IGFuZCB0aGUgc3RyaW5nIHRvIHNlYXJjaC5cbiAgICBpZiAodHlwZW9mIHRoaXMuX3NlYXJjaFRpbWVvdXQgPT09IHR5cGVvZiBzZXRUaW1lb3V0KSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5fc2VhcmNoVGltZW91dCk7XG4gICAgfVxuICAgIHRoaXMuX3NlYXJjaFRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+ICh0aGlzLl9zZWFyY2hTdHJpbmcgPSAnJyksIDEwMDApO1xuICAgIHRoaXMuX3NlYXJjaFN0cmluZyArPSBldmVudC5rZXk7XG5cbiAgICAvLyBSZW9yZGVyIHRoZSBfZmlsdGVyZWRPcHRpb24gYXJyYXkgdG8gaGF2ZSB0aGUgbGFzdCBzZWxlY3RlZCBlbGVtZW50IGF0IHRoZSBib3R0b20uXG4gICAgY29uc3QgaW5kZXhGb3JTbGljZTogbnVtYmVyID0gdGhpcy5fYWN0aXZlSXRlbUluZGV4ICsgMTtcbiAgICBjb25zdCBmaWx0ZXJlZE9wdGlvbnNTb3J0ZWQ6IFNiYk9wdGlvbkVsZW1lbnRbXSA9IFtcbiAgICAgIC4uLnRoaXMuX2ZpbHRlcmVkT3B0aW9ucy5zbGljZShpbmRleEZvclNsaWNlKSxcbiAgICAgIC4uLnRoaXMuX2ZpbHRlcmVkT3B0aW9ucy5zbGljZSgwLCBpbmRleEZvclNsaWNlKSxcbiAgICBdO1xuXG4gICAgY29uc3QgbWF0Y2ggPSBmaWx0ZXJlZE9wdGlvbnNTb3J0ZWQuZmluZChcbiAgICAgIChvcHRpb246IFNiYk9wdGlvbkVsZW1lbnQpID0+XG4gICAgICAgIG9wdGlvbi50ZXh0Q29udGVudD8udG9Mb3dlckNhc2UoKS5pbmRleE9mKHRoaXMuX3NlYXJjaFN0cmluZy50b0xvd2VyQ2FzZSgpKSA9PT0gMCxcbiAgICApO1xuICAgIGlmIChtYXRjaCkge1xuICAgICAgLy8gSWYgYW4gZXhhY3QgbWF0Y2ggaGFzIGJlZW4gZm91bmQsIGdvIHRvIHRoYXQgb3B0aW9uLlxuICAgICAgYXdhaXQgdGhpcy5fc2V0TmV4dEFjdGl2ZU9wdGlvbihldmVudCwgdGhpcy5fZmlsdGVyZWRPcHRpb25zLmluZGV4T2YobWF0Y2gpKTtcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgdGhpcy5fc2VhcmNoU3RyaW5nLmxlbmd0aCA+IDEgJiZcbiAgICAgIG5ldyBSZWdFeHAoYF4ke3RoaXMuX3NlYXJjaFN0cmluZy5jaGFyQXQoMCl9KiRgKS50ZXN0KHRoaXMuX3NlYXJjaFN0cmluZylcbiAgICApIHtcbiAgICAgIC8vIElmIG5vIGV4YWN0IG1hdGNoIGhhcyBiZWVuIGZvdW5kIGJ1dCB0aGUgc3RyaW5nIHRvIHNlYXJjaCBpcyBtYWRlIGJ5IHRoZSBzYW1lIHJlcGVhdGVkIGxldHRlcixcbiAgICAgIC8vIGdvIHRvIHRoZSBmaXJzdCBlbGVtZW50LCBpZiBleGlzdHMsIHRoYXQgbWF0Y2hlcyB0aGUgbGV0dGVyLlxuICAgICAgY29uc3QgZmlyc3RNYXRjaCA9IGZpbHRlcmVkT3B0aW9uc1NvcnRlZC5maW5kKFxuICAgICAgICAob3B0aW9uOiBTYmJPcHRpb25FbGVtZW50KSA9PlxuICAgICAgICAgIG9wdGlvbi50ZXh0Q29udGVudD8udG9Mb3dlckNhc2UoKS5pbmRleE9mKHRoaXMuX3NlYXJjaFN0cmluZ1swXS50b0xvd2VyQ2FzZSgpKSA9PT0gMCxcbiAgICAgICk7XG4gICAgICBpZiAoZmlyc3RNYXRjaCkge1xuICAgICAgICBhd2FpdCB0aGlzLl9zZXROZXh0QWN0aXZlT3B0aW9uKGV2ZW50LCB0aGlzLl9maWx0ZXJlZE9wdGlvbnMuaW5kZXhPZihmaXJzdE1hdGNoKSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIE5vIG1hdGNoIGZvdW5kLCBjbGVhciB0aGUgdGltZW91dCBhbmQgdGhlIHNlYXJjaCB0ZXJtLlxuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX3NlYXJjaFRpbWVvdXQpO1xuICAgICAgdGhpcy5fc2VhcmNoU3RyaW5nID0gJyc7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBfc2VsZWN0QnlLZXlib2FyZCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBhY3RpdmVPcHRpb246IFNiYk9wdGlvbkVsZW1lbnQgPSB0aGlzLl9maWx0ZXJlZE9wdGlvbnNbdGhpcy5fYWN0aXZlSXRlbUluZGV4XTtcblxuICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICBhd2FpdCBhY3RpdmVPcHRpb24uc2V0U2VsZWN0ZWRWaWFVc2VySW50ZXJhY3Rpb24oIWFjdGl2ZU9wdGlvbi5zZWxlY3RlZCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGF3YWl0IHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIF9zZXROZXh0QWN0aXZlT3B0aW9uKGV2ZW50OiBLZXlib2FyZEV2ZW50LCBpbmRleD86IG51bWJlcik6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IG5leHRJbmRleCA9XG4gICAgICBpbmRleCA/PyBnZXROZXh0RWxlbWVudEluZGV4KGV2ZW50LCB0aGlzLl9hY3RpdmVJdGVtSW5kZXgsIHRoaXMuX2ZpbHRlcmVkT3B0aW9ucy5sZW5ndGgpO1xuICAgIGNvbnN0IG5leHRPcHRpb24gPSB0aGlzLl9maWx0ZXJlZE9wdGlvbnNbbmV4dEluZGV4XTtcbiAgICBjb25zdCBhY3RpdmVPcHRpb24gPSB0aGlzLl9maWx0ZXJlZE9wdGlvbnNbdGhpcy5fYWN0aXZlSXRlbUluZGV4XTtcblxuICAgIHRoaXMuX3NldEFjdGl2ZUVsZW1lbnQobmV4dE9wdGlvbiwgYWN0aXZlT3B0aW9uKTtcblxuICAgIGlmICghdGhpcy5tdWx0aXBsZSkge1xuICAgICAgYXdhaXQgdGhpcy5fc2V0U2VsZWN0ZWRFbGVtZW50KG5leHRPcHRpb24sIGFjdGl2ZU9wdGlvbik7XG4gICAgfSBlbHNlIGlmIChldmVudD8uc2hpZnRLZXkpIHtcbiAgICAgIGF3YWl0IG5leHRPcHRpb24uc2V0U2VsZWN0ZWRWaWFVc2VySW50ZXJhY3Rpb24oIW5leHRPcHRpb24uc2VsZWN0ZWQpO1xuICAgIH1cbiAgICB0aGlzLl9hY3RpdmVJdGVtSW5kZXggPSBuZXh0SW5kZXg7XG4gIH1cblxuICBwcml2YXRlIF9zZXRBY3RpdmVFbGVtZW50KFxuICAgIG5leHRBY3RpdmVPcHRpb246IFNiYk9wdGlvbkVsZW1lbnQsXG4gICAgbGFzdEFjdGl2ZU9wdGlvbjogU2JiT3B0aW9uRWxlbWVudCB8IG51bGwgPSBudWxsLFxuICAgIHNldEFjdGl2ZURlc2NlbmRhbnQgPSB0cnVlLFxuICApOiB2b2lkIHtcbiAgICBuZXh0QWN0aXZlT3B0aW9uLmFjdGl2ZSA9IHRydWU7XG4gICAgbmV4dEFjdGl2ZU9wdGlvbi5zY3JvbGxJbnRvVmlldyh7IGJsb2NrOiAnbmVhcmVzdCcgfSk7XG5cbiAgICBpZiAoc2V0QWN0aXZlRGVzY2VuZGFudCkge1xuICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQuc2V0QXR0cmlidXRlKCdhcmlhLWFjdGl2ZWRlc2NlbmRhbnQnLCBuZXh0QWN0aXZlT3B0aW9uLmlkKTtcbiAgICB9XG5cbiAgICAvLyBSZXNldCB0aGUgcHJldmlvdXNcbiAgICBpZiAobGFzdEFjdGl2ZU9wdGlvbiAmJiBsYXN0QWN0aXZlT3B0aW9uICE9PSBuZXh0QWN0aXZlT3B0aW9uKSB7XG4gICAgICBsYXN0QWN0aXZlT3B0aW9uLmFjdGl2ZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgX3NldFNlbGVjdGVkRWxlbWVudChcbiAgICBuZXh0QWN0aXZlT3B0aW9uOiBTYmJPcHRpb25FbGVtZW50LFxuICAgIGxhc3RBY3RpdmVPcHRpb246IFNiYk9wdGlvbkVsZW1lbnQsXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IG5leHRBY3RpdmVPcHRpb24uc2V0U2VsZWN0ZWRWaWFVc2VySW50ZXJhY3Rpb24odHJ1ZSk7XG5cbiAgICBpZiAobGFzdEFjdGl2ZU9wdGlvbiAmJiBsYXN0QWN0aXZlT3B0aW9uICE9PSBuZXh0QWN0aXZlT3B0aW9uKSB7XG4gICAgICBhd2FpdCBsYXN0QWN0aXZlT3B0aW9uLnNldFNlbGVjdGVkVmlhVXNlckludGVyYWN0aW9uKGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9yZXNldEFjdGl2ZUVsZW1lbnQoKTogdm9pZCB7XG4gICAgY29uc3QgYWN0aXZlRWxlbWVudCA9IHRoaXMuX2ZpbHRlcmVkT3B0aW9uc1t0aGlzLl9hY3RpdmVJdGVtSW5kZXhdO1xuXG4gICAgaWYgKGFjdGl2ZUVsZW1lbnQpIHtcbiAgICAgIGFjdGl2ZUVsZW1lbnQuYWN0aXZlID0gZmFsc2U7XG4gICAgfVxuICAgIHRoaXMuX2FjdGl2ZUl0ZW1JbmRleCA9IC0xO1xuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgnYXJpYS1hY3RpdmVkZXNjZW5kYW50Jyk7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgcG9pbnRlcmRvd24gZXZlbnQgdGFyZ2V0IGlzIHRyaWdnZXJlZCBvbiB0aGUgbWVudS5cbiAgcHJpdmF0ZSBfcG9pbnRlckRvd25MaXN0ZW5lciA9IChldmVudDogUG9pbnRlckV2ZW50KTogdm9pZCA9PiB7XG4gICAgdGhpcy5faXNQb2ludGVyRG93bkV2ZW50T25NZW51ID0gaXNFdmVudE9uRWxlbWVudCh0aGlzLl9vdmVybGF5LCBldmVudCk7XG4gIH07XG5cbiAgLy8gQ2xvc2UgbWVudSBvbiBiYWNrZHJvcCBjbGljay5cbiAgcHJpdmF0ZSBfY2xvc2VPbkJhY2tkcm9wQ2xpY2sgPSBhc3luYyAoZXZlbnQ6IFBvaW50ZXJFdmVudCk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgIGlmICghdGhpcy5faXNQb2ludGVyRG93bkV2ZW50T25NZW51ICYmICFpc0V2ZW50T25FbGVtZW50KHRoaXMuX292ZXJsYXksIGV2ZW50KSkge1xuICAgICAgYXdhaXQgdGhpcy5jbG9zZSgpO1xuICAgIH1cbiAgfTtcblxuICBwcml2YXRlIF9zZXRWYWx1ZUZyb21TZWxlY3RlZE9wdGlvbigpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubXVsdGlwbGUpIHtcbiAgICAgIGNvbnN0IHNlbGVjdGVkT3B0aW9uID0gdGhpcy5fZmlsdGVyZWRPcHRpb25zLmZpbmQoKG9wdGlvbikgPT4gb3B0aW9uLnNlbGVjdGVkKTtcbiAgICAgIGlmIChzZWxlY3RlZE9wdGlvbikge1xuICAgICAgICB0aGlzLl9hY3RpdmVJdGVtSW5kZXggPSB0aGlzLl9maWx0ZXJlZE9wdGlvbnMuZmluZEluZGV4KFxuICAgICAgICAgIChvcHRpb24pID0+IG9wdGlvbiA9PT0gc2VsZWN0ZWRPcHRpb24sXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMudmFsdWUgPSBzZWxlY3RlZE9wdGlvbi52YWx1ZTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3Qgb3B0aW9ucyA9IHRoaXMuX2ZpbHRlcmVkT3B0aW9ucy5maWx0ZXIoKG9wdGlvbikgPT4gb3B0aW9uLnNlbGVjdGVkKTtcbiAgICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgICBjb25zdCB2YWx1ZTogc3RyaW5nW10gPSBbXTtcbiAgICAgICAgZm9yIChjb25zdCBvcHRpb24gb2Ygb3B0aW9ucykge1xuICAgICAgICAgIHZhbHVlLnB1c2gob3B0aW9uLnZhbHVlISk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3RvZ2dsZU9wZW5pbmcoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5yZWFkb25seSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl90cmlnZ2VyRWxlbWVudD8uZm9jdXMoKTtcblxuICAgIHN3aXRjaCAodGhpcy5zdGF0ZSkge1xuICAgICAgY2FzZSAnb3BlbmVkJzoge1xuICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAnY2xvc2VkJzoge1xuICAgICAgICB0aGlzLm9wZW4oKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDwhLS0gVGhpcyBlbGVtZW50IGlzIHZpc3VhbGx5IGhpZGRlbiBhbmQgd2lsbCBiZSBhcHBlbmRlZCB0byB0aGUgbGlnaHQgRE9NIHRvIGFsbG93IHNjcmVlblxuICAgICAgcmVhZGVycyB0byB3b3JrIHByb3Blcmx5IC0tPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cInNiYi1zY3JlZW4tcmVhZGVyLW9ubHlcIlxuICAgICAgICB0YWJpbmRleD0ke3RoaXMuZGlzYWJsZWQgPyBub3RoaW5nIDogJzAnfVxuICAgICAgICByb2xlPVwiY29tYm9ib3hcIlxuICAgICAgICBhcmlhLWhhc3BvcHVwPVwibGlzdGJveFwiXG4gICAgICAgIGFyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXG4gICAgICAgIGFyaWEtcmVxdWlyZWQ9JHt0aGlzLnJlcXVpcmVkLnRvU3RyaW5nKCl9XG4gICAgICAgIGFyaWEtY29udHJvbHM9JHt0aGlzLl9vdmVybGF5SWR9XG4gICAgICAgIGFyaWEtb3ducz0ke3RoaXMuX292ZXJsYXlJZH1cbiAgICAgICAgQGtleWRvd249JHt0aGlzLl9vbktleURvd259XG4gICAgICAgIEBjbGljaz0ke3RoaXMuX3RvZ2dsZU9wZW5pbmd9XG4gICAgICAgICR7cmVmKChyZWYpID0+ICh0aGlzLl90cmlnZ2VyRWxlbWVudCA9IHJlZiBhcyBIVE1MRWxlbWVudCkpfVxuICAgICAgPlxuICAgICAgICAke3RoaXMuX2Rpc3BsYXlWYWx1ZSA/IGh0bWxgJHt0aGlzLl9kaXNwbGF5VmFsdWV9YCA6IGh0bWxgPHNwYW4+JHt0aGlzLnBsYWNlaG9sZGVyfTwvc3Bhbj5gfVxuICAgICAgPC9kaXY+XG5cbiAgICAgIDwhLS0gVmlzdWFsbHkgZGlzcGxheSB0aGUgdmFsdWUgLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXNlbGVjdF9fdHJpZ2dlclwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgICAgICAke3RoaXMuX2Rpc3BsYXlWYWx1ZVxuICAgICAgICAgID8gaHRtbGAke3RoaXMuX2Rpc3BsYXlWYWx1ZX1gXG4gICAgICAgICAgOiBodG1sYDxzcGFuIGNsYXNzPVwic2JiLXNlbGVjdF9fdHJpZ2dlci0tcGxhY2Vob2xkZXJcIj4ke3RoaXMucGxhY2Vob2xkZXJ9PC9zcGFuPmB9XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1zZWxlY3RfX2dhcC1maXhcIj48L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItc2VsZWN0X19jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1zZWxlY3RfX2dhcC1maXhcIj4ke292ZXJsYXlHYXBGaXhDb3JuZXJzKCl9PC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBAYW5pbWF0aW9uZW5kPSR7dGhpcy5fb25BbmltYXRpb25FbmR9XG4gICAgICAgICAgY2xhc3M9XCJzYmItc2VsZWN0X19wYW5lbFwiXG4gICAgICAgICAgJHtyZWYoKGRpYWxvZ1JlZikgPT4gKHRoaXMuX292ZXJsYXkgPSBkaWFsb2dSZWYgYXMgSFRNTEVsZW1lbnQpKX1cbiAgICAgICAgPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItc2VsZWN0X193cmFwcGVyXCI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIGlkPSR7IWFyaWFSb2xlT25Ib3N0ID8gdGhpcy5fb3ZlcmxheUlkIDogbm90aGluZ31cbiAgICAgICAgICAgICAgY2xhc3M9XCJzYmItc2VsZWN0X19vcHRpb25zXCJcbiAgICAgICAgICAgICAgcm9sZT0keyFhcmlhUm9sZU9uSG9zdCA/ICdsaXN0Ym94JyA6IG5vdGhpbmd9XG4gICAgICAgICAgICAgID9hcmlhLW11bHRpc2VsZWN0YWJsZT0ke3RoaXMubXVsdGlwbGV9XG4gICAgICAgICAgICAgICR7cmVmKChjb250YWluZXJSZWYpID0+ICh0aGlzLl9vcHRpb25Db250YWluZXIgPSBjb250YWluZXJSZWYgYXMgSFRNTEVsZW1lbnQpKX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHNsb3QgQHNsb3RjaGFuZ2U9JHt0aGlzLl9zZXRWYWx1ZUZyb21TZWxlY3RlZE9wdGlvbn0+PC9zbG90PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXNlbGVjdCc6IFNiYlNlbGVjdEVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJyZWYiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBcUJBLE1BQU0saUJBQWlCO0FBRXZCLElBQUksU0FBUztBQTJCTixJQUFNLG1CQUFOLGNBQStCO0FBQUEsRUFDcEMsaUJBQWlCLGlCQUFpQix1QkFBdUIsQ0FBQztBQUM1RCxFQUFFO0FBQUEsRUFGSyxjQUFBO0FBQUEsVUFBQSxHQUFBLFNBQUE7QUF3QnVDLFNBQU8sV0FBVztBQUdsQixTQUFPLFdBQVc7QUFHakMsU0FBTyxXQUFXO0FBR3RDLFNBQVEsZ0JBQStCO0FBS2hELFNBQVEsYUFBMkIsSUFBSSxhQUFhLE1BQU0saUJBQWlCLE9BQU8sU0FBUztBQUczRixTQUFRLFVBQXdCLElBQUksYUFBYSxNQUFNLGlCQUFpQixPQUFPLE1BQU07QUFHckYsU0FBUSxTQUF1QixJQUFJLGFBQWEsTUFBTSxpQkFBaUIsT0FBTyxLQUFLO0FBR25GLFNBQVEsZUFBMkMsSUFBSTtBQUFBLE1BQ3JEO0FBQUEsTUFDQSxpQkFBaUIsT0FBTztBQUFBLE1BQ3hCO0FBQUEsUUFDRSxVQUFVO0FBQUEsTUFDWjtBQUFBLElBQUE7QUFRTSxTQUFBLGFBQWEsY0FBYyxFQUFFLE1BQU07QUFDM0MsU0FBUSxtQkFBbUI7QUFFM0IsU0FBUSxnQkFBZ0I7QUFDeEIsU0FBUSxXQUFXO0FBQ25CLFNBQVEsNEJBQXFDO0FBQ3JDLFNBQUEsU0FBUyxJQUFJLDRCQUE0QixJQUFJO0FBaWdCN0MsU0FBQSx1QkFBdUIsQ0FBQyxVQUE4QjtBQUM1RCxXQUFLLDRCQUE0QixpQkFBaUIsS0FBSyxVQUFVLEtBQUs7QUFBQSxJQUFBO0FBSWhFLFNBQUEsd0JBQXdCLE9BQU8sVUFBdUM7QUFDeEUsVUFBQSxDQUFDLEtBQUssNkJBQTZCLENBQUMsaUJBQWlCLEtBQUssVUFBVSxLQUFLLEdBQUc7QUFDOUUsY0FBTSxLQUFLO01BQ2I7QUFBQSxJQUFBO0FBQUEsRUFDRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFwZ0JBLElBQVcsZUFBNEI7QUFDckMsV0FBTyxLQUFLO0FBQUEsRUFDZDtBQUFBO0FBQUEsRUFHQSxJQUFZLFdBQStCOztBQUN6QyxXQUFPLE1BQU0sT0FBSyxVQUFLLHFCQUFMLDhCQUF3QixrQkFBaUIsQ0FBQSxDQUFFO0FBQUEsRUFDL0Q7QUFBQSxFQUVBLElBQVksbUJBQXVDO0FBQ2pELFdBQU8sS0FBSyxTQUFTO0FBQUEsTUFDbkIsQ0FBQyxRQUEwQixDQUFDLElBQUksWUFBWSxDQUFDLElBQUksYUFBYSxxQkFBcUI7QUFBQSxJQUFBO0FBQUEsRUFFdkY7QUFBQTtBQUFBLEVBR08sT0FBYTtBQUNkLFFBQUEsS0FBSyxVQUFVLFlBQVksQ0FBQyxLQUFLLFlBQVksS0FBSyxTQUFTLFdBQVcsR0FBRztBQUMzRTtBQUFBLElBQ0Y7QUFFQSxRQUFJLENBQUMsS0FBSyxTQUFTLFFBQVE7QUFDekI7QUFBQSxJQUNGO0FBQ0EsU0FBSyxRQUFRO0FBQ2IsU0FBSyxvQkFBb0I7QUFBQSxFQUMzQjtBQUFBO0FBQUEsRUFHTyxRQUFjO0FBQ2YsUUFBQSxLQUFLLFVBQVUsVUFBVTtBQUMzQjtBQUFBLElBQ0Y7QUFFQSxRQUFJLENBQUMsS0FBSyxVQUFVLFFBQVE7QUFDMUI7QUFBQSxJQUNGO0FBQ0EsU0FBSyxRQUFRO0FBQ2IsU0FBSywyQkFBMkI7RUFDbEM7QUFBQTtBQUFBLEVBR08sa0JBQTBCO0FBQy9CLFdBQU8sQ0FBQyxLQUFLLGdCQUFnQixLQUFLLEtBQUs7QUFBQSxFQUN6QztBQUFBO0FBQUEsRUFHUSxpQkFBaUIsT0FBb0I7QUFDM0MsVUFBTSxTQUFTLE1BQU07QUFDckIsUUFBSSxPQUFPLFVBQVU7QUFDbkIsV0FBSyxrQkFBa0IsTUFBTTtBQUFBLElBQUEsT0FDeEI7QUFDTCxXQUFLLG9CQUFvQixNQUFNO0FBQUEsSUFDakM7QUFBQSxFQUNGO0FBQUEsRUFFUSxlQUFlLE9BQXlCO0FBQzlDLFVBQU0sU0FBUyxNQUFNO0FBQ3JCLFFBQUksT0FBTyxjQUFjLGdCQUFnQixPQUFPLFVBQVU7QUFDeEQ7QUFBQSxJQUNGO0FBRUksUUFBQSxDQUFDLEtBQUssVUFBVTtBQUNsQixXQUFLLE1BQU07QUFBQSxJQUNiO0FBQUEsRUFDRjtBQUFBO0FBQUEsRUFHUSxnQkFBZ0IsVUFBbUM7QUFDekQsVUFBTSxVQUFVLEtBQUs7QUFDckIsUUFBSSxDQUFDLE1BQU0sUUFBUSxRQUFRLEdBQUc7QUFDdEIsWUFBQSxnQkFBZ0IsUUFBUSxLQUFLLENBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxhQUFhLE9BQU8sT0FBTyxRQUFRO0FBQzNGLFVBQUksZUFBZTtBQUNqQixzQkFBYyxXQUFXO0FBQUEsTUFDM0I7QUFDQSxjQUNHLE9BQU8sQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLGFBQWEsT0FBTyxPQUFPLFFBQVEsRUFDL0QsUUFBUSxDQUFDLE1BQU8sRUFBRSxXQUFXLEtBQU07QUFDakMsV0FBQSxpQkFBZ0IsK0NBQWUsZ0JBQWU7QUFBQSxJQUFBLE9BQzlDO0FBQ0wsY0FDRyxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVMsU0FBUyxFQUFFLFNBQVMsRUFBRSxhQUFhLE9BQU8sQ0FBQyxDQUFDLEVBQ3BFLFFBQVEsQ0FBQyxNQUFPLEVBQUUsV0FBVyxLQUFNO0FBQ3RDLFlBQU0seUJBQXlCLFFBQVE7QUFBQSxRQUFPLENBQUMsTUFDN0MsU0FBUyxTQUFTLEVBQUUsU0FBUyxFQUFFLGFBQWEsT0FBTyxDQUFDO0FBQUEsTUFBQTtBQUV0RCw2QkFBdUIsUUFBUSxDQUFDLE1BQU8sRUFBRSxXQUFXLElBQUs7QUFDcEQsV0FBQSxnQkFBZ0IsdUJBQXVCLElBQUksQ0FBQyxNQUFNLEVBQUUsV0FBVyxFQUFFLEtBQUssSUFBSSxLQUFLO0FBQUEsSUFDdEY7QUFDQSxTQUFLLGFBQWEsS0FBSyxFQUFFLE1BQU0sU0FBUyxPQUFPLFVBQVU7QUFBQSxFQUMzRDtBQUFBLEVBRW1CLGFBQWEsbUJBQStDO0FBQzdFLFVBQU0sYUFBYSxpQkFBaUI7QUFHcEMsU0FBSyxRQUFRLE1BQU0sS0FBSyxnQkFBZ0IsTUFBTTtBQUM5QyxTQUFLLE9BQU8sTUFBTSxLQUFLLGdCQUFnQixLQUFLO0FBR3hDLFFBQUEsQ0FBQyxZQUFZO0FBQ2YsV0FBSyxZQUFZO0FBQ2pCLFdBQUssYUFBYTtBQUFBLElBQ3BCO0FBQUEsRUFDRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGdCQUFnQixlQUE2QjtBQU8zRCxRQUFJLFNBQWMsS0FBQSxrQkFBa0IscUJBQXFCLENBQUMsS0FBSyxVQUFVO0FBQ3ZFLFdBQUssZUFBZSxLQUFLLE1BQU0sS0FBSyxhQUFjLENBQUE7QUFBQSxJQUNwRDtBQUNBLFVBQU0sZ0JBQWdCLGFBQWE7QUFBQSxFQUNyQztBQUFBLEVBRWdCLG9CQUEwQjs7QUFDeEMsVUFBTSxrQkFBa0I7QUFFeEIsUUFBSSxnQkFBZ0I7QUFDbEIsV0FBSyxPQUFMLEtBQUssS0FBTyxLQUFLO0FBQUEsSUFDbkI7QUFFTSxVQUFBLFNBQVMsS0FBSyxPQUFPO0FBQzNCLFVBQU0sY0FBWSxVQUFLLFlBQUwsOEJBQWUsd0JBQXFCLFVBQUssWUFBTCw4QkFBZTtBQUVyRSxRQUFJLFdBQVc7QUFDUixXQUFBLFdBQVcsVUFBVSxhQUFhLFVBQVU7QUFBQSxJQUNuRDtBQUNBLFNBQUssZ0JBQWdCO0FBRXJCLFFBQUksS0FBSyxVQUFVO0FBQ2pCLFdBQUssYUFBYTtBQUNsQixXQUFLLGNBQWM7QUFBQSxJQUNyQjtBQUNBLFFBQUksS0FBSyxPQUFPO0FBQ1QsV0FBQSxnQkFBZ0IsS0FBSyxLQUFLO0FBQUEsSUFDakM7QUFFSyxTQUFBO0FBQUEsTUFDSDtBQUFBLE1BQ0EsQ0FBQyxNQUF5QixLQUFLLGlCQUFpQixDQUFDO0FBQUEsTUFDakQsRUFBRSxPQUFPO0FBQUEsSUFBQTtBQUVOLFNBQUE7QUFBQSxNQUNIO0FBQUEsTUFDQSxDQUFDLE1BQWtCO0FBQ2pCLGFBQUssZUFBZSxDQUFDO0FBQ3JCLGFBQUssZUFBZTtBQUFBLE1BQ3RCO0FBQUEsTUFDQSxFQUFFLE9BQU87QUFBQSxJQUFBO0FBQUEsRUFFYjtBQUFBLEVBRW1CLFdBQVcsbUJBQStDO0FBQzNFLFVBQU0sV0FBVyxpQkFBaUI7QUFFOUIsUUFBQSxrQkFBa0IsSUFBSSxPQUFPLEdBQUc7QUFDN0IsV0FBQSxnQkFBZ0IsS0FBSyxLQUFNO0FBQUEsSUFDbEM7QUFDQSxRQUFJLGtCQUFrQixJQUFJLFVBQVUsS0FBSyxrQkFBa0IsSUFBSSxVQUFVLEdBQUc7QUFDMUUsV0FBSyxnQkFBZ0I7QUFBQSxJQUN2QjtBQUFBLEVBQ0Y7QUFBQSxFQUVnQix1QkFBNkI7O0FBQzNDLFVBQU0scUJBQXFCO0FBQ3RCLFNBQUEsUUFBUSxLQUFLLGVBQWU7QUFDakMsZUFBSywrQkFBTCxtQkFBaUM7QUFBQSxFQUNuQztBQUFBLEVBRVEsa0JBQXdCOztBQUN6QixlQUFBLHFCQUFBLDhCQUFtQixlQUFlLFFBQVEsQ0FBQyxZQUFhLFFBQVEsV0FBVyxLQUFLO0FBRWhGLGVBQUEscUJBQUE7QUFBQTtBQUFBLE1BQ0g7QUFBQSxNQUNBLFFBQVEsQ0FBQyxZQUFtRDtBQUNwRCxjQUFBLGdCQUFnQixpQkFBaUIsS0FBSyxRQUFRO0FBQzlDLGNBQUEsZ0JBQWdCLGlCQUFpQixLQUFLLFFBQVE7QUFBQSxJQUFBO0FBQUEsRUFFMUQ7QUFBQSxFQUVRLGVBQXFCO0FBQzNCLFNBQUssYUFBYTtBQUNsQixTQUFLLGNBQWM7QUFDbkIsU0FBSyxXQUFXO0FBQ2hCLFNBQUssZUFBZTtBQUFBLEVBQ3RCO0FBQUE7QUFBQSxFQUdRLGVBQXFCOztBQUNyQixVQUFBLGFBQVksVUFBSyxZQUFMLDhCQUFlO0FBQ2pDLFNBQUssbUJBQ0gsa0RBQVcsZUFBWCxtQkFBdUIsa0JBQXZCLDRCQUF1Qyx1QkFBc0IsS0FBSztBQUNwRSxRQUFJLEtBQUssZ0JBQWdCO0FBQ2xCLFdBQUE7QUFBQSxRQUNIO0FBQUEsUUFDQSxDQUFDLEdBQUMsNENBQVcsaUJBQVgsbUNBQTBCO0FBQUEsTUFBWTtBQUFBLElBRTVDO0FBQUEsRUFDRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNUSxnQkFBc0I7O0FBRTVCLHFCQUFLLGVBQWUsaUJBQXBCLDRCQUFtQyxLQUFLLGlCQUFpQjtBQUd6RCxVQUFNLHFCQUFtQixVQUFLLFlBQUwsOEJBQWUsc0JBQXFCO0FBQ3hELFNBQUEsZ0JBQWdCLE1BQU0sTUFBTTtBQUNqQyxTQUFLLGdCQUFnQixNQUFNLFNBQVMsR0FBRyxpQkFBaUIsWUFBWTtBQUNwRSxTQUFLLGdCQUFnQixNQUFNLFFBQVEsR0FBRyxpQkFBaUIsV0FBVztBQUFBLEVBQ3BFO0FBQUEsRUFFUSxzQkFBNEI7QUFDbEM7QUFBQSxNQUNFLEtBQUs7QUFBQSxNQUNMLEtBQUs7QUFBQSxNQUNMLEtBQUs7QUFBQSxNQUNMLEtBQUssV0FBWSxjQUFjLHdCQUF3QjtBQUFBLE1BQ3ZEO0FBQUEsSUFBQTtBQUFBLEVBRUo7QUFBQTtBQUFBO0FBQUEsRUFJUSxnQkFBZ0IsT0FBNkI7QUFDbkQsUUFBSSxNQUFNLGtCQUFrQixVQUFVLEtBQUssVUFBVSxXQUFXO0FBQzlELFdBQUssb0JBQW9CO0FBQUEsSUFBQSxXQUNoQixNQUFNLGtCQUFrQixXQUFXLEtBQUssVUFBVSxXQUFXO0FBQ3RFLFdBQUsscUJBQXFCO0FBQUEsSUFDNUI7QUFBQSxFQUNGO0FBQUEsRUFFUSxzQkFBNEI7QUFDbEMsU0FBSyxRQUFRO0FBQ2IsU0FBSyx1QkFBdUI7QUFDdkIsU0FBQSxnQkFBZ0IsYUFBYSxpQkFBaUIsTUFBTTtBQUV6RCxTQUFLLFFBQVE7RUFDZjtBQUFBLEVBRVEsdUJBQTZCO0FBQ25DLFNBQUssUUFBUTtBQUNSLFNBQUEsZ0JBQWdCLGFBQWEsaUJBQWlCLE9BQU87QUFDMUQsU0FBSyxvQkFBb0I7QUFDekIsU0FBSyxpQkFBaUIsWUFBWTtBQUNsQyxTQUFLLFNBQVM7RUFDaEI7QUFBQTtBQUFBLEVBR1Esa0JBQWtCLHVCQUErQztBQUNuRSxRQUFBLENBQUMsS0FBSyxVQUFVO0FBQ2xCLFdBQUssaUJBQ0YsT0FBTyxDQUFDLFdBQVcsT0FBTyxPQUFPLHNCQUFzQixFQUFFLEVBQ3pELFFBQVEsQ0FBQyxXQUFZLE9BQU8sV0FBVyxLQUFNO0FBQ2hELFdBQUssUUFBUSxzQkFBc0I7QUFBQSxJQUFBLE9BQzlCO0FBQ0QsVUFBQSxDQUFDLEtBQUssT0FBTztBQUNWLGFBQUEsUUFBUSxDQUFDLHNCQUFzQixLQUFNO0FBQUEsTUFBQSxXQUNqQyxDQUFDLEtBQUssTUFBTSxTQUFTLHNCQUFzQixLQUFNLEdBQUc7QUFDN0QsYUFBSyxRQUFRLENBQUMsR0FBRyxLQUFLLE9BQU8sc0JBQXNCLEtBQU07QUFBQSxNQUMzRDtBQUFBLElBQ0Y7QUFFQSxTQUFLLE9BQU87QUFDWixTQUFLLFFBQVE7QUFDYixTQUFLLFdBQVc7RUFDbEI7QUFBQTtBQUFBLEVBR1Esb0JBQW9CLHVCQUErQztBQUN6RSxRQUFJLEtBQUssVUFBVTtBQUNaLFdBQUEsUUFBUyxLQUFLLE1BQW1CO0FBQUEsUUFDcEMsQ0FBQyxPQUFlLE9BQU8sc0JBQXNCO0FBQUEsTUFBQTtBQUcvQyxXQUFLLE9BQU87QUFDWixXQUFLLFFBQVE7QUFDYixXQUFLLFdBQVc7SUFDbEI7QUFBQSxFQUNGO0FBQUEsRUFFUSx5QkFBK0I7QUFDaEMsU0FBQSw2QkFBNkIsSUFBSTtBQUd0QyxhQUFTLGlCQUFpQixVQUFVLE1BQU0sS0FBSyx1QkFBdUI7QUFBQSxNQUNwRSxTQUFTO0FBQUEsTUFDVCxRQUFRLEtBQUssMkJBQTJCO0FBQUEsSUFBQSxDQUN6QztBQUNELFdBQU8saUJBQWlCLFVBQVUsTUFBTSxLQUFLLHVCQUF1QjtBQUFBLE1BQ2xFLFNBQVM7QUFBQSxNQUNULFFBQVEsS0FBSywyQkFBMkI7QUFBQSxJQUFBLENBQ3pDO0FBR0QsV0FBTyxpQkFBaUIsZUFBZSxDQUFDLE9BQU8sS0FBSyxxQkFBcUIsRUFBRSxHQUFHO0FBQUEsTUFDNUUsUUFBUSxLQUFLLDJCQUEyQjtBQUFBLElBQUEsQ0FDekM7QUFDRCxXQUFPLGlCQUFpQixhQUFhLENBQUMsT0FBTyxLQUFLLHNCQUFzQixFQUFFLEdBQUc7QUFBQSxNQUMzRSxRQUFRLEtBQUssMkJBQTJCO0FBQUEsSUFBQSxDQUN6QztBQUFBLEVBQ0g7QUFBQSxFQUVBLE1BQWMsV0FBVyxPQUFxQztBQUN4RCxRQUFBLEtBQUssWUFBWSxLQUFLLFVBQVU7QUFDbEM7QUFBQSxJQUNGO0FBRUksUUFBQSxLQUFLLFVBQVUsVUFBVTtBQUNyQixZQUFBLEtBQUssZ0NBQWdDLEtBQUs7QUFBQSxJQUNsRDtBQUNJLFFBQUEsS0FBSyxVQUFVLFVBQVU7QUFDckIsWUFBQSxLQUFLLGdDQUFnQyxLQUFLO0FBQUEsSUFDbEQ7QUFBQSxFQUNGO0FBQUEsRUFFQSxNQUFjLGdDQUFnQyxPQUFxQztBQUM3RSxRQUFBLEtBQUsseUJBQXlCLEtBQUssR0FBRztBQUNqQyxhQUFBLEtBQUssMkJBQTJCLEtBQUs7QUFBQSxJQUM5QztBQUVBLFlBQVEsTUFBTSxLQUFLO0FBQUEsTUFDakIsS0FBSztBQUFBLE1BQ0wsS0FBSztBQUFBLE1BQ0wsS0FBSztBQUFBLE1BQ0wsS0FBSztBQUNILGNBQU0sZUFBZTtBQUNyQixjQUFNLEtBQUs7QUFDWDtBQUFBLElBQ0o7QUFBQSxFQUNGO0FBQUEsRUFFQSxNQUFjLGdDQUFnQyxPQUFxQztBQUNqRixRQUFJLEtBQUssWUFBWSxLQUFLLFlBQVksS0FBSyxVQUFVLFVBQVU7QUFDN0Q7QUFBQSxJQUNGO0FBRUksUUFBQSxLQUFLLHlCQUF5QixLQUFLLEdBQUc7QUFDakMsYUFBQSxLQUFLLDJCQUEyQixLQUFLO0FBQUEsSUFDOUM7QUFFQSxZQUFRLE1BQU0sS0FBSztBQUFBLE1BQ2pCLEtBQUs7QUFBQSxNQUNMLEtBQUs7QUFDSCxjQUFNLEtBQUs7QUFDWDtBQUFBLE1BRUYsS0FBSztBQUFBLE1BQ0wsS0FBSztBQUNILGNBQU0sZUFBZTtBQUNyQixjQUFNLEtBQUs7QUFDWDtBQUFBLE1BRUYsS0FBSztBQUFBLE1BQ0wsS0FBSztBQUNILGNBQU0sZUFBZTtBQUNmLGNBQUEsS0FBSyxxQkFBcUIsS0FBSztBQUNyQztBQUFBLE1BRUYsS0FBSztBQUFBLE1BQ0wsS0FBSztBQUNILGNBQU0sZUFBZTtBQUNmLGNBQUEsS0FBSyxxQkFBcUIsT0FBTyxDQUFDO0FBQ3hDO0FBQUEsTUFFRixLQUFLO0FBQUEsTUFDTCxLQUFLO0FBQ0gsY0FBTSxlQUFlO0FBQ3JCLGNBQU0sS0FBSyxxQkFBcUIsT0FBTyxLQUFLLGlCQUFpQixTQUFTLENBQUM7QUFDdkU7QUFBQSxJQUNKO0FBQUEsRUFDRjtBQUFBLEVBRVEseUJBQXlCLE9BQStCO0FBRTVELFdBQUEsTUFBTSxRQUFRLGVBQ2QsTUFBTSxRQUFRLFdBQ2IsTUFBTSxJQUFJLFdBQVcsS0FDcEIsTUFBTSxRQUFRLE9BQ2QsQ0FBQyxNQUFNLFVBQ1AsQ0FBQyxNQUFNLFdBQ1AsQ0FBQyxNQUFNO0FBQUEsRUFFYjtBQUFBLEVBRUEsTUFBYywyQkFBMkIsT0FBcUM7QUFFNUUsUUFBSSxPQUFPLEtBQUssbUJBQW1CLE9BQU8sWUFBWTtBQUNwRCxtQkFBYSxLQUFLLGNBQWM7QUFBQSxJQUNsQztBQUNBLFNBQUssaUJBQWlCLFdBQVcsTUFBTyxLQUFLLGdCQUFnQixJQUFLLEdBQUk7QUFDdEUsU0FBSyxpQkFBaUIsTUFBTTtBQUd0QixVQUFBLGdCQUF3QixLQUFLLG1CQUFtQjtBQUN0RCxVQUFNLHdCQUE0QztBQUFBLE1BQ2hELEdBQUcsS0FBSyxpQkFBaUIsTUFBTSxhQUFhO0FBQUEsTUFDNUMsR0FBRyxLQUFLLGlCQUFpQixNQUFNLEdBQUcsYUFBYTtBQUFBLElBQUE7QUFHakQsVUFBTSxRQUFRLHNCQUFzQjtBQUFBLE1BQ2xDLENBQUMsV0FDQzs7QUFBQSw2QkFBTyxnQkFBUCxtQkFBb0IsY0FBYyxRQUFRLEtBQUssY0FBYyxZQUFhLFFBQU07QUFBQTtBQUFBLElBQUE7QUFFcEYsUUFBSSxPQUFPO0FBRVQsWUFBTSxLQUFLLHFCQUFxQixPQUFPLEtBQUssaUJBQWlCLFFBQVEsS0FBSyxDQUFDO0FBQUEsSUFBQSxXQUUzRSxLQUFLLGNBQWMsU0FBUyxLQUM1QixJQUFJLE9BQU8sSUFBSSxLQUFLLGNBQWMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssS0FBSyxhQUFhLEdBQ3hFO0FBR0EsWUFBTSxhQUFhLHNCQUFzQjtBQUFBLFFBQ3ZDLENBQUMsV0FDQzs7QUFBQSwrQkFBTyxnQkFBUCxtQkFBb0IsY0FBYyxRQUFRLEtBQUssY0FBYyxDQUFDLEVBQUUsWUFBQSxRQUFtQjtBQUFBO0FBQUEsTUFBQTtBQUV2RixVQUFJLFlBQVk7QUFDZCxjQUFNLEtBQUsscUJBQXFCLE9BQU8sS0FBSyxpQkFBaUIsUUFBUSxVQUFVLENBQUM7QUFBQSxNQUNsRjtBQUFBLElBQUEsT0FDSztBQUVMLG1CQUFhLEtBQUssY0FBYztBQUNoQyxXQUFLLGdCQUFnQjtBQUFBLElBQ3ZCO0FBQUEsRUFDRjtBQUFBLEVBRUEsTUFBYyxvQkFBbUM7QUFDL0MsVUFBTSxlQUFpQyxLQUFLLGlCQUFpQixLQUFLLGdCQUFnQjtBQUVsRixRQUFJLEtBQUssVUFBVTtBQUNqQixZQUFNLGFBQWEsOEJBQThCLENBQUMsYUFBYSxRQUFRO0FBQUEsSUFBQSxPQUNsRTtBQUNMLFlBQU0sS0FBSztJQUNiO0FBQUEsRUFDRjtBQUFBLEVBRUEsTUFBYyxxQkFBcUIsT0FBc0IsT0FBK0I7QUFDaEYsVUFBQSxZQUNKLFNBQVMsb0JBQW9CLE9BQU8sS0FBSyxrQkFBa0IsS0FBSyxpQkFBaUIsTUFBTTtBQUNuRixVQUFBLGFBQWEsS0FBSyxpQkFBaUIsU0FBUztBQUNsRCxVQUFNLGVBQWUsS0FBSyxpQkFBaUIsS0FBSyxnQkFBZ0I7QUFFM0QsU0FBQSxrQkFBa0IsWUFBWSxZQUFZO0FBRTNDLFFBQUEsQ0FBQyxLQUFLLFVBQVU7QUFDWixZQUFBLEtBQUssb0JBQW9CLFlBQVksWUFBWTtBQUFBLElBQUEsV0FDOUMsK0JBQU8sVUFBVTtBQUMxQixZQUFNLFdBQVcsOEJBQThCLENBQUMsV0FBVyxRQUFRO0FBQUEsSUFDckU7QUFDQSxTQUFLLG1CQUFtQjtBQUFBLEVBQzFCO0FBQUEsRUFFUSxrQkFDTixrQkFDQSxtQkFBNEMsTUFDNUMsc0JBQXNCLE1BQ2hCO0FBQ04scUJBQWlCLFNBQVM7QUFDMUIscUJBQWlCLGVBQWUsRUFBRSxPQUFPLFVBQVcsQ0FBQTtBQUVwRCxRQUFJLHFCQUFxQjtBQUN2QixXQUFLLGdCQUFnQixhQUFhLHlCQUF5QixpQkFBaUIsRUFBRTtBQUFBLElBQ2hGO0FBR0ksUUFBQSxvQkFBb0IscUJBQXFCLGtCQUFrQjtBQUM3RCx1QkFBaUIsU0FBUztBQUFBLElBQzVCO0FBQUEsRUFDRjtBQUFBLEVBRUEsTUFBYyxvQkFDWixrQkFDQSxrQkFDZTtBQUNULFVBQUEsaUJBQWlCLDhCQUE4QixJQUFJO0FBRXJELFFBQUEsb0JBQW9CLHFCQUFxQixrQkFBa0I7QUFDdkQsWUFBQSxpQkFBaUIsOEJBQThCLEtBQUs7QUFBQSxJQUM1RDtBQUFBLEVBQ0Y7QUFBQSxFQUVRLHNCQUE0QjtBQUNsQyxVQUFNLGdCQUFnQixLQUFLLGlCQUFpQixLQUFLLGdCQUFnQjtBQUVqRSxRQUFJLGVBQWU7QUFDakIsb0JBQWMsU0FBUztBQUFBLElBQ3pCO0FBQ0EsU0FBSyxtQkFBbUI7QUFDbkIsU0FBQSxnQkFBZ0IsZ0JBQWdCLHVCQUF1QjtBQUFBLEVBQzlEO0FBQUEsRUFjUSw4QkFBb0M7QUFDdEMsUUFBQSxDQUFDLEtBQUssVUFBVTtBQUNsQixZQUFNLGlCQUFpQixLQUFLLGlCQUFpQixLQUFLLENBQUMsV0FBVyxPQUFPLFFBQVE7QUFDN0UsVUFBSSxnQkFBZ0I7QUFDYixhQUFBLG1CQUFtQixLQUFLLGlCQUFpQjtBQUFBLFVBQzVDLENBQUMsV0FBVyxXQUFXO0FBQUEsUUFBQTtBQUV6QixhQUFLLFFBQVEsZUFBZTtBQUFBLE1BQzlCO0FBQUEsSUFBQSxPQUNLO0FBQ0wsWUFBTSxVQUFVLEtBQUssaUJBQWlCLE9BQU8sQ0FBQyxXQUFXLE9BQU8sUUFBUTtBQUNwRSxVQUFBLFdBQVcsUUFBUSxTQUFTLEdBQUc7QUFDakMsY0FBTSxRQUFrQixDQUFBO0FBQ3hCLG1CQUFXLFVBQVUsU0FBUztBQUN0QixnQkFBQSxLQUFLLE9BQU8sS0FBTTtBQUFBLFFBQzFCO0FBQ0EsYUFBSyxRQUFRO0FBQUEsTUFDZjtBQUFBLElBQ0Y7QUFBQSxFQUNGO0FBQUEsRUFFUSxpQkFBdUI7O0FBQ3pCLFFBQUEsS0FBSyxZQUFZLEtBQUssVUFBVTtBQUNsQztBQUFBLElBQ0Y7QUFDQSxlQUFLLG9CQUFMLG1CQUFzQjtBQUV0QixZQUFRLEtBQUssT0FBTztBQUFBLE1BQ2xCLEtBQUssVUFBVTtBQUNiLGFBQUssTUFBTTtBQUNYO0FBQUEsTUFDRjtBQUFBLE1BQ0EsS0FBSyxVQUFVO0FBQ2IsYUFBSyxLQUFLO0FBQ1Y7QUFBQSxNQUNGO0FBQUEsSUFHRjtBQUFBLEVBQ0Y7QUFBQSxFQUVtQixTQUF5QjtBQUNuQyxXQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxtQkFLUSxLQUFLLFdBQVcsVUFBVSxHQUFHO0FBQUE7QUFBQTtBQUFBO0FBQUEsd0JBSXhCLEtBQUssU0FBUyxVQUFVO0FBQUEsd0JBQ3hCLEtBQUssVUFBVTtBQUFBLG9CQUNuQixLQUFLLFVBQVU7QUFBQSxtQkFDaEIsS0FBSyxVQUFVO0FBQUEsaUJBQ2pCLEtBQUssY0FBYztBQUFBLFVBQzFCLElBQUksQ0FBQ0EsU0FBUyxLQUFLLGtCQUFrQkEsSUFBbUIsQ0FBQztBQUFBO0FBQUEsVUFFekQsS0FBSyxnQkFBZ0IsT0FBTyxLQUFLLGFBQWEsS0FBSyxhQUFhLEtBQUssV0FBVyxTQUFTO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxVQUt6RixLQUFLLGdCQUNILE9BQU8sS0FBSyxhQUFhLEtBQ3pCLHNEQUFzRCxLQUFLLFdBQVcsU0FBUztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsMkNBS2hELHNCQUFzQjtBQUFBO0FBQUEsMEJBRXZDLEtBQUssZUFBZTtBQUFBO0FBQUEsWUFFbEMsSUFBSSxDQUFDLGNBQWUsS0FBSyxXQUFXLFNBQXlCLENBQUM7QUFBQTtBQUFBO0FBQUE7QUFBQSxtQkFJdkQsQ0FBQyxpQkFBaUIsS0FBSyxhQUFhLE9BQU87QUFBQTtBQUFBLHFCQUV6QyxDQUFDLGlCQUFpQixZQUFZLE9BQU87QUFBQSxzQ0FDcEIsS0FBSyxRQUFRO0FBQUEsZ0JBQ25DLElBQUksQ0FBQyxpQkFBa0IsS0FBSyxtQkFBbUIsWUFBNEIsQ0FBQztBQUFBO0FBQUEsa0NBRTFELEtBQUssMkJBQTJCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTWhFO0FBQ0Y7QUF6cUJhLGlCQUdZLFNBQXlCO0FBSHJDLGlCQU1xQixTQUFTO0FBQUEsRUFDdkMsV0FBVztBQUFBLEVBQ1gsUUFBUTtBQUFBLEVBQ1IsT0FBTztBQUFBLEVBQ1AsYUFBYTtBQUFBLEVBQ2IsVUFBVTtBQUFBLEVBQ1YsU0FBUztBQUFBLEVBQ1QsV0FBVztBQUFBLEVBQ1gsVUFBVTtBQUNaO0FBR21CLGdCQUFBO0FBQUEsRUFBbEIsU0FBUztBQUFBLEdBbEJDLGlCQWtCUSxXQUFBLFNBQUEsQ0FBQTtBQUdBLGdCQUFBO0FBQUEsRUFBbEIsU0FBUztBQUFBLEdBckJDLGlCQXFCUSxXQUFBLGVBQUEsQ0FBQTtBQUdnQyxnQkFBQTtBQUFBLEVBQWxELFNBQVMsRUFBRSxNQUFNLFNBQVMsU0FBUyxNQUFNO0FBQUEsR0F4Qi9CLGlCQXdCd0MsV0FBQSxZQUFBLENBQUE7QUFHQSxnQkFBQTtBQUFBLEVBQWxELFNBQVMsRUFBRSxTQUFTLE1BQU0sTUFBTSxTQUFTO0FBQUEsR0EzQi9CLGlCQTJCd0MsV0FBQSxZQUFBLENBQUE7QUFHZixnQkFBQTtBQUFBLEVBQW5DLFNBQVMsRUFBRSxNQUFNLFNBQVM7QUFBQSxHQTlCaEIsaUJBOEJ5QixXQUFBLFlBQUEsQ0FBQTtBQUduQixnQkFBQTtBQUFBLEVBQWhCLE1BQU07QUFBQSxHQWpDSSxpQkFpQ00sV0FBQSxpQkFBQSxDQUFBO0FBakNOLG1CQUFOLGdCQUFBO0FBQUEsRUFMTixjQUFjLFlBQVk7QUFBQSxFQUMxQixlQUFlO0FBQUEsSUFDZCxLQUFLLHVCQUF1QjtBQUFBLElBQzVCLE1BQU0saUJBQWlCLFlBQVk7QUFBQSxFQUFBLENBQ3BDO0FBQUEsR0FDWSxnQkFBQTsifQ==
|
|
@@ -196,8 +196,7 @@ var __decorateClass = (decorators, target, key, kind) => {
|
|
|
196
196
|
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
197
197
|
if (decorator = decorators[i])
|
|
198
198
|
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
199
|
-
if (kind && result)
|
|
200
|
-
__defProp(target, key, result);
|
|
199
|
+
if (kind && result) __defProp(target, key, result);
|
|
201
200
|
return result;
|
|
202
201
|
};
|
|
203
202
|
let SbbSelectionPanelElement = class extends LitElement {
|
|
@@ -374,4 +373,4 @@ SbbSelectionPanelElement = __decorateClass([
|
|
|
374
373
|
export {
|
|
375
374
|
SbbSelectionPanelElement
|
|
376
375
|
};
|
|
377
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLXBhbmVsLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvc2VsZWN0aW9uLXBhbmVsL3NlbGVjdGlvbi1wYW5lbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBQcm9wZXJ0eVZhbHVlcywgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgaHRtbCwgTGl0RWxlbWVudCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSwgc3RhdGUgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB0eXBlIHsgU2JiQ2hlY2tib3hFbGVtZW50IH0gZnJvbSAnLi4vY2hlY2tib3guanMnO1xuaW1wb3J0IHsgU2JiQ29ubmVjdGVkQWJvcnRDb250cm9sbGVyLCBTYmJTbG90U3RhdGVDb250cm9sbGVyIH0gZnJvbSAnLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICcuLi9jb3JlL2V2ZW50aW5nLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiT3BlbmVkQ2xvc2VkU3RhdGUsIFNiYlN0YXRlQ2hhbmdlIH0gZnJvbSAnLi4vY29yZS9pbnRlcmZhY2VzLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiUmFkaW9CdXR0b25FbGVtZW50IH0gZnJvbSAnLi4vcmFkaW8tYnV0dG9uLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vc2VsZWN0aW9uLXBhbmVsLnNjc3M/bGl0JmlubGluZSc7XG5cbmltcG9ydCAnLi4vZGl2aWRlci5qcyc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYW4gZXhwYW5kYWJsZSBwYW5lbCBjb25uZWN0ZWQgdG8gYSBgc2JiLWNoZWNrYm94YCBvciB0byBhIGBzYmItcmFkaW8tYnV0dG9uYC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBgc2JiLWNoZWNrYm94YCBvciBgc2JiLXJhZGlvLWJ1dHRvbmAgZWxlbWVudHMgdG8gdGhlIGBzYmItc2VsZWN0aW9uLXBhbmVsYC5cbiAqIEBzbG90IGJhZGdlIC0gVXNlIHRoaXMgc2xvdCB0byBwcm92aWRlIGEgYHNiYi1jYXJkLWJhZGdlYCAob3B0aW9uYWwpLlxuICogQHNsb3QgY29udGVudCAtIFVzZSB0aGlzIHNsb3QgdG8gcHJvdmlkZSBjdXN0b20gY29udGVudCBmb3IgdGhlIHBhbmVsIChvcHRpb25hbCkuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSB3aWxsT3BlbiAtIEVtaXRzIHdoZW5ldmVyIHRoZSBjb250ZW50IHNlY3Rpb24gc3RhcnRzIHRoZSBvcGVuaW5nIHRyYW5zaXRpb24uXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSBkaWRPcGVuIC0gRW1pdHMgd2hlbmV2ZXIgdGhlIGNvbnRlbnQgc2VjdGlvbiBpcyBvcGVuZWQuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSB3aWxsQ2xvc2UgLSBFbWl0cyB3aGVuZXZlciB0aGUgY29udGVudCBzZWN0aW9uIGJlZ2lucyB0aGUgY2xvc2luZyB0cmFuc2l0aW9uLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkQ2xvc2UgLSBFbWl0cyB3aGVuZXZlciB0aGUgY29udGVudCBzZWN0aW9uIGlzIGNsb3NlZC5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1zZWxlY3Rpb24tcGFuZWwnKVxuZXhwb3J0IGNsYXNzIFNiYlNlbGVjdGlvblBhbmVsRWxlbWVudCBleHRlbmRzIExpdEVsZW1lbnQge1xuICAvLyBGSVhNRSBpbmhlcml0aW5nIGZyb20gU2JiT3BlbkNsb3NlQmFzZUVsZW1lbnQgcmVxdWlyZXM6IGh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuLXdjL2N1c3RvbS1lbGVtZW50cy1tYW5pZmVzdC9pc3N1ZXMvMjUzXG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50czogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgICB3aWxsT3BlbjogJ3dpbGxPcGVuJyxcbiAgICBkaWRPcGVuOiAnZGlkT3BlbicsXG4gICAgd2lsbENsb3NlOiAnd2lsbENsb3NlJyxcbiAgICBkaWRDbG9zZTogJ2RpZENsb3NlJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKiogVGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIHBhbmVsLiAqL1xuICBAcHJvcGVydHkoKSBwdWJsaWMgY29sb3I6ICd3aGl0ZScgfCAnbWlsaycgPSAnd2hpdGUnO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBjb250ZW50IHNlY3Rpb24gaXMgYWx3YXlzIHZpc2libGUuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2ZvcmNlLW9wZW4nLCB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBmb3JjZU9wZW4gPSBmYWxzZTtcblxuICAvKiogV2hldGhlciB0aGUgdW5zZWxlY3RlZCBwYW5lbCBoYXMgYSBib3JkZXIuICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUsIHR5cGU6IEJvb2xlYW4gfSkgcHVibGljIGJvcmRlcmxlc3MgPSBmYWxzZTtcblxuICAvKiogVGhlIHN0YXRlIG9mIHRoZSBzZWxlY3Rpb24gcGFuZWwuICovXG4gIEBzdGF0ZSgpXG4gIHByaXZhdGUgc2V0IF9zdGF0ZShzdGF0ZTogU2JiT3BlbmVkQ2xvc2VkU3RhdGUpIHtcbiAgICB0aGlzLnNldEF0dHJpYnV0ZSgnZGF0YS1zdGF0ZScsIHN0YXRlKTtcbiAgfVxuICBwcml2YXRlIGdldCBfc3RhdGUoKTogU2JiT3BlbmVkQ2xvc2VkU3RhdGUge1xuICAgIHJldHVybiB0aGlzLmdldEF0dHJpYnV0ZSgnZGF0YS1zdGF0ZScpIGFzIFNiYk9wZW5lZENsb3NlZFN0YXRlO1xuICB9XG5cbiAgLyoqIFdoZXRoZXIgdGhlIHNlbGVjdGlvbiBwYW5lbCBpcyBjaGVja2VkLiAqL1xuICBwcml2YXRlIHNldCBfY2hlY2tlZChjaGVja2VkOiBib29sZWFuKSB7XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtY2hlY2tlZCcsIGNoZWNrZWQpO1xuICB9XG4gIHByaXZhdGUgZ2V0IF9jaGVja2VkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmhhc0F0dHJpYnV0ZSgnZGF0YS1jaGVja2VkJyk7XG4gIH1cblxuICAvKiogV2hldGhlciB0aGUgc2VsZWN0aW9uIHBhbmVsIGlzIGRpc2FibGVkLiAqL1xuICBwcml2YXRlIHNldCBfZGlzYWJsZWQoZGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1kaXNhYmxlZCcsIGRpc2FibGVkKTtcbiAgfVxuXG4gIC8qKiBFbWl0cyB3aGVuZXZlciB0aGUgY29udGVudCBzZWN0aW9uIHN0YXJ0cyB0aGUgb3BlbmluZyB0cmFuc2l0aW9uLiAqL1xuICBwcml2YXRlIF93aWxsT3BlbjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcihcbiAgICB0aGlzLFxuICAgIFNiYlNlbGVjdGlvblBhbmVsRWxlbWVudC5ldmVudHMud2lsbE9wZW4sXG4gICk7XG5cbiAgLyoqIEVtaXRzIHdoZW5ldmVyIHRoZSBjb250ZW50IHNlY3Rpb24gaXMgb3BlbmVkLiAqL1xuICBwcml2YXRlIF9kaWRPcGVuOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiU2VsZWN0aW9uUGFuZWxFbGVtZW50LmV2ZW50cy5kaWRPcGVuLFxuICApO1xuXG4gIC8qKiBFbWl0cyB3aGVuZXZlciB0aGUgY29udGVudCBzZWN0aW9uIGJlZ2lucyB0aGUgY2xvc2luZyB0cmFuc2l0aW9uLiAqL1xuICBwcml2YXRlIF93aWxsQ2xvc2U6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoXG4gICAgdGhpcyxcbiAgICBTYmJTZWxlY3Rpb25QYW5lbEVsZW1lbnQuZXZlbnRzLndpbGxDbG9zZSxcbiAgKTtcblxuICAvKiogRW1pdHMgd2hlbmV2ZXIgdGhlIGNvbnRlbnQgc2VjdGlvbiBpcyBjbG9zZWQuICovXG4gIHByaXZhdGUgX2RpZENsb3NlOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiU2VsZWN0aW9uUGFuZWxFbGVtZW50LmV2ZW50cy5kaWRDbG9zZSxcbiAgKTtcblxuICBwcml2YXRlIF9hYm9ydCA9IG5ldyBTYmJDb25uZWN0ZWRBYm9ydENvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX2luaXRpYWxpemVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgaXQgaGFzIGFuIGV4cGFuZGFibGUgY29udGVudFxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBnZXQgaGFzQ29udGVudCgpOiBib29sZWFuIHtcbiAgICAvLyBXZSBjYW5ub3QgdXNlIHRoZSBOYW1lZFNsb3RzIGJlY2F1c2UgaXQncyB0b28gc2xvdyB0byBpbml0aWFsaXplXG4gICAgcmV0dXJuIHRoaXMucXVlcnlTZWxlY3RvckFsbD8uKCdbc2xvdD1cImNvbnRlbnRcIl0nKS5sZW5ndGggPiAwO1xuICB9XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgbmV3IFNiYlNsb3RTdGF0ZUNvbnRyb2xsZXIodGhpcyk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLl9zdGF0ZSB8fD0gJ2Nsb3NlZCc7XG4gICAgY29uc3Qgc2lnbmFsID0gdGhpcy5fYWJvcnQuc2lnbmFsO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcignc3RhdGVDaGFuZ2UnLCB0aGlzLl9vbklucHV0U3RhdGVDaGFuZ2UuYmluZCh0aGlzKSwgeyBzaWduYWwgfSk7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdjaGVja2JveExvYWRlZCcsIHRoaXMuX2luaXRGcm9tSW5wdXQuYmluZCh0aGlzKSwgeyBzaWduYWwgfSk7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdyYWRpb0J1dHRvbkxvYWRlZCcsIHRoaXMuX2luaXRGcm9tSW5wdXQuYmluZCh0aGlzKSwgeyBzaWduYWwgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2ZvcmNlT3BlbicpKSB7XG4gICAgICB0aGlzLl91cGRhdGVTdGF0ZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIHRoaXMuX2luaXRpYWxpemVkID0gdHJ1ZTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZVN0YXRlKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5oYXNDb250ZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5mb3JjZU9wZW4gfHwgdGhpcy5fY2hlY2tlZCA/IHRoaXMuX29wZW4oIXRoaXMuX2luaXRpYWxpemVkKSA6IHRoaXMuX2Nsb3NlKCk7XG4gIH1cblxuICBwcml2YXRlIF9vcGVuKHNraXBBbmltYXRpb24gPSBmYWxzZSk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9zdGF0ZSAhPT0gJ2Nsb3NlZCcgJiYgdGhpcy5fc3RhdGUgIT09ICdjbG9zaW5nJykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX3N0YXRlID0gJ29wZW5pbmcnO1xuICAgIHRoaXMuX3dpbGxPcGVuLmVtaXQoKTtcblxuICAgIGlmIChza2lwQW5pbWF0aW9uKSB7XG4gICAgICB0aGlzLl9zdGF0ZSA9ICdvcGVuZWQnO1xuICAgICAgdGhpcy5fZGlkT3Blbi5lbWl0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfY2xvc2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3N0YXRlICE9PSAnb3BlbmVkJyAmJiB0aGlzLl9zdGF0ZSAhPT0gJ29wZW5pbmcnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fc3RhdGUgPSAnY2xvc2luZyc7XG4gICAgdGhpcy5fd2lsbENsb3NlLmVtaXQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2luaXRGcm9tSW5wdXQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgaW5wdXQgPSBldmVudC50YXJnZXQgYXMgU2JiQ2hlY2tib3hFbGVtZW50IHwgU2JiUmFkaW9CdXR0b25FbGVtZW50O1xuXG4gICAgaWYgKCFpbnB1dC5pc1NlbGVjdGlvblBhbmVsSW5wdXQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9jaGVja2VkID0gaW5wdXQuY2hlY2tlZDtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IGlucHV0LmRpc2FibGVkO1xuICAgIHRoaXMuX3VwZGF0ZVN0YXRlKCk7XG4gIH1cblxuICBwcml2YXRlIF9vbklucHV0U3RhdGVDaGFuZ2UoZXZlbnQ6IEN1c3RvbUV2ZW50PFNiYlN0YXRlQ2hhbmdlPik6IHZvaWQge1xuICAgIGNvbnN0IGlucHV0ID0gZXZlbnQudGFyZ2V0IGFzIFNiYkNoZWNrYm94RWxlbWVudCB8IFNiYlJhZGlvQnV0dG9uRWxlbWVudDtcblxuICAgIGlmICghaW5wdXQuaXNTZWxlY3Rpb25QYW5lbElucHV0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKGV2ZW50LmRldGFpbC50eXBlID09PSAnZGlzYWJsZWQnKSB7XG4gICAgICB0aGlzLl9kaXNhYmxlZCA9IGV2ZW50LmRldGFpbC5kaXNhYmxlZDtcbiAgICAgIHJldHVybjtcbiAgICB9IGVsc2UgaWYgKGV2ZW50LmRldGFpbC50eXBlICE9PSAnY2hlY2tlZCcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9jaGVja2VkID0gZXZlbnQuZGV0YWlsLmNoZWNrZWQ7XG4gICAgdGhpcy5fdXBkYXRlU3RhdGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX29uQW5pbWF0aW9uRW5kKGV2ZW50OiBBbmltYXRpb25FdmVudCk6IHZvaWQge1xuICAgIGlmIChldmVudC5hbmltYXRpb25OYW1lID09PSAnb3Blbi1vcGFjaXR5JyAmJiB0aGlzLl9zdGF0ZSA9PT0gJ29wZW5pbmcnKSB7XG4gICAgICB0aGlzLl9zdGF0ZSA9ICdvcGVuZWQnO1xuICAgICAgdGhpcy5fZGlkT3Blbi5lbWl0KCk7XG4gICAgfSBlbHNlIGlmIChldmVudC5hbmltYXRpb25OYW1lID09PSAnY2xvc2UnICYmIHRoaXMuX3N0YXRlID09PSAnY2xvc2luZycpIHtcbiAgICAgIHRoaXMuX3N0YXRlID0gJ2Nsb3NlZCc7XG4gICAgICB0aGlzLl9kaWRDbG9zZS5lbWl0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXNlbGVjdGlvbi1wYW5lbFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLXNlbGVjdGlvbi1wYW5lbF9fYmFkZ2VcIj5cbiAgICAgICAgICA8c2xvdCBuYW1lPVwiYmFkZ2VcIj48L3Nsb3Q+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItc2VsZWN0aW9uLXBhbmVsX19pbnB1dFwiPlxuICAgICAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cInNiYi1zZWxlY3Rpb24tcGFuZWxfX2NvbnRlbnQtLXdyYXBwZXJcIlxuICAgICAgICAgIC5pbmVydD0ke3RoaXMuX3N0YXRlICE9PSAnb3BlbmVkJ31cbiAgICAgICAgICBAYW5pbWF0aW9uZW5kPSR7KGV2ZW50OiBBbmltYXRpb25FdmVudCkgPT4gdGhpcy5fb25BbmltYXRpb25FbmQoZXZlbnQpfVxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1zZWxlY3Rpb24tcGFuZWxfX2NvbnRlbnRcIj5cbiAgICAgICAgICAgIDxzYmItZGl2aWRlcj48L3NiYi1kaXZpZGVyPlxuICAgICAgICAgICAgPHNsb3QgbmFtZT1cImNvbnRlbnRcIj48L3Nsb3Q+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXNlbGVjdGlvbi1wYW5lbCc6IFNiYlNlbGVjdGlvblBhbmVsRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbInN0YXRlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBMEJhLElBQUEsMkJBQU4sY0FBdUMsV0FBVztBQUFBLEVBNkVoRCxjQUFjO0FB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
|
|
376
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLXBhbmVsLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvc2VsZWN0aW9uLXBhbmVsL3NlbGVjdGlvbi1wYW5lbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBQcm9wZXJ0eVZhbHVlcywgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgaHRtbCwgTGl0RWxlbWVudCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSwgc3RhdGUgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB0eXBlIHsgU2JiQ2hlY2tib3hFbGVtZW50IH0gZnJvbSAnLi4vY2hlY2tib3guanMnO1xuaW1wb3J0IHsgU2JiQ29ubmVjdGVkQWJvcnRDb250cm9sbGVyLCBTYmJTbG90U3RhdGVDb250cm9sbGVyIH0gZnJvbSAnLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICcuLi9jb3JlL2V2ZW50aW5nLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiT3BlbmVkQ2xvc2VkU3RhdGUsIFNiYlN0YXRlQ2hhbmdlIH0gZnJvbSAnLi4vY29yZS9pbnRlcmZhY2VzLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiUmFkaW9CdXR0b25FbGVtZW50IH0gZnJvbSAnLi4vcmFkaW8tYnV0dG9uLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vc2VsZWN0aW9uLXBhbmVsLnNjc3M/bGl0JmlubGluZSc7XG5cbmltcG9ydCAnLi4vZGl2aWRlci5qcyc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYW4gZXhwYW5kYWJsZSBwYW5lbCBjb25uZWN0ZWQgdG8gYSBgc2JiLWNoZWNrYm94YCBvciB0byBhIGBzYmItcmFkaW8tYnV0dG9uYC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBgc2JiLWNoZWNrYm94YCBvciBgc2JiLXJhZGlvLWJ1dHRvbmAgZWxlbWVudHMgdG8gdGhlIGBzYmItc2VsZWN0aW9uLXBhbmVsYC5cbiAqIEBzbG90IGJhZGdlIC0gVXNlIHRoaXMgc2xvdCB0byBwcm92aWRlIGEgYHNiYi1jYXJkLWJhZGdlYCAob3B0aW9uYWwpLlxuICogQHNsb3QgY29udGVudCAtIFVzZSB0aGlzIHNsb3QgdG8gcHJvdmlkZSBjdXN0b20gY29udGVudCBmb3IgdGhlIHBhbmVsIChvcHRpb25hbCkuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSB3aWxsT3BlbiAtIEVtaXRzIHdoZW5ldmVyIHRoZSBjb250ZW50IHNlY3Rpb24gc3RhcnRzIHRoZSBvcGVuaW5nIHRyYW5zaXRpb24uXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSBkaWRPcGVuIC0gRW1pdHMgd2hlbmV2ZXIgdGhlIGNvbnRlbnQgc2VjdGlvbiBpcyBvcGVuZWQuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSB3aWxsQ2xvc2UgLSBFbWl0cyB3aGVuZXZlciB0aGUgY29udGVudCBzZWN0aW9uIGJlZ2lucyB0aGUgY2xvc2luZyB0cmFuc2l0aW9uLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkQ2xvc2UgLSBFbWl0cyB3aGVuZXZlciB0aGUgY29udGVudCBzZWN0aW9uIGlzIGNsb3NlZC5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1zZWxlY3Rpb24tcGFuZWwnKVxuZXhwb3J0IGNsYXNzIFNiYlNlbGVjdGlvblBhbmVsRWxlbWVudCBleHRlbmRzIExpdEVsZW1lbnQge1xuICAvLyBGSVhNRSBpbmhlcml0aW5nIGZyb20gU2JiT3BlbkNsb3NlQmFzZUVsZW1lbnQgcmVxdWlyZXM6IGh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuLXdjL2N1c3RvbS1lbGVtZW50cy1tYW5pZmVzdC9pc3N1ZXMvMjUzXG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50czogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgICB3aWxsT3BlbjogJ3dpbGxPcGVuJyxcbiAgICBkaWRPcGVuOiAnZGlkT3BlbicsXG4gICAgd2lsbENsb3NlOiAnd2lsbENsb3NlJyxcbiAgICBkaWRDbG9zZTogJ2RpZENsb3NlJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKiogVGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIHBhbmVsLiAqL1xuICBAcHJvcGVydHkoKSBwdWJsaWMgY29sb3I6ICd3aGl0ZScgfCAnbWlsaycgPSAnd2hpdGUnO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBjb250ZW50IHNlY3Rpb24gaXMgYWx3YXlzIHZpc2libGUuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2ZvcmNlLW9wZW4nLCB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBmb3JjZU9wZW4gPSBmYWxzZTtcblxuICAvKiogV2hldGhlciB0aGUgdW5zZWxlY3RlZCBwYW5lbCBoYXMgYSBib3JkZXIuICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUsIHR5cGU6IEJvb2xlYW4gfSkgcHVibGljIGJvcmRlcmxlc3MgPSBmYWxzZTtcblxuICAvKiogVGhlIHN0YXRlIG9mIHRoZSBzZWxlY3Rpb24gcGFuZWwuICovXG4gIEBzdGF0ZSgpXG4gIHByaXZhdGUgc2V0IF9zdGF0ZShzdGF0ZTogU2JiT3BlbmVkQ2xvc2VkU3RhdGUpIHtcbiAgICB0aGlzLnNldEF0dHJpYnV0ZSgnZGF0YS1zdGF0ZScsIHN0YXRlKTtcbiAgfVxuICBwcml2YXRlIGdldCBfc3RhdGUoKTogU2JiT3BlbmVkQ2xvc2VkU3RhdGUge1xuICAgIHJldHVybiB0aGlzLmdldEF0dHJpYnV0ZSgnZGF0YS1zdGF0ZScpIGFzIFNiYk9wZW5lZENsb3NlZFN0YXRlO1xuICB9XG5cbiAgLyoqIFdoZXRoZXIgdGhlIHNlbGVjdGlvbiBwYW5lbCBpcyBjaGVja2VkLiAqL1xuICBwcml2YXRlIHNldCBfY2hlY2tlZChjaGVja2VkOiBib29sZWFuKSB7XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtY2hlY2tlZCcsIGNoZWNrZWQpO1xuICB9XG4gIHByaXZhdGUgZ2V0IF9jaGVja2VkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmhhc0F0dHJpYnV0ZSgnZGF0YS1jaGVja2VkJyk7XG4gIH1cblxuICAvKiogV2hldGhlciB0aGUgc2VsZWN0aW9uIHBhbmVsIGlzIGRpc2FibGVkLiAqL1xuICBwcml2YXRlIHNldCBfZGlzYWJsZWQoZGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1kaXNhYmxlZCcsIGRpc2FibGVkKTtcbiAgfVxuXG4gIC8qKiBFbWl0cyB3aGVuZXZlciB0aGUgY29udGVudCBzZWN0aW9uIHN0YXJ0cyB0aGUgb3BlbmluZyB0cmFuc2l0aW9uLiAqL1xuICBwcml2YXRlIF93aWxsT3BlbjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcihcbiAgICB0aGlzLFxuICAgIFNiYlNlbGVjdGlvblBhbmVsRWxlbWVudC5ldmVudHMud2lsbE9wZW4sXG4gICk7XG5cbiAgLyoqIEVtaXRzIHdoZW5ldmVyIHRoZSBjb250ZW50IHNlY3Rpb24gaXMgb3BlbmVkLiAqL1xuICBwcml2YXRlIF9kaWRPcGVuOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiU2VsZWN0aW9uUGFuZWxFbGVtZW50LmV2ZW50cy5kaWRPcGVuLFxuICApO1xuXG4gIC8qKiBFbWl0cyB3aGVuZXZlciB0aGUgY29udGVudCBzZWN0aW9uIGJlZ2lucyB0aGUgY2xvc2luZyB0cmFuc2l0aW9uLiAqL1xuICBwcml2YXRlIF93aWxsQ2xvc2U6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoXG4gICAgdGhpcyxcbiAgICBTYmJTZWxlY3Rpb25QYW5lbEVsZW1lbnQuZXZlbnRzLndpbGxDbG9zZSxcbiAgKTtcblxuICAvKiogRW1pdHMgd2hlbmV2ZXIgdGhlIGNvbnRlbnQgc2VjdGlvbiBpcyBjbG9zZWQuICovXG4gIHByaXZhdGUgX2RpZENsb3NlOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiU2VsZWN0aW9uUGFuZWxFbGVtZW50LmV2ZW50cy5kaWRDbG9zZSxcbiAgKTtcblxuICBwcml2YXRlIF9hYm9ydCA9IG5ldyBTYmJDb25uZWN0ZWRBYm9ydENvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX2luaXRpYWxpemVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgaXQgaGFzIGFuIGV4cGFuZGFibGUgY29udGVudFxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBnZXQgaGFzQ29udGVudCgpOiBib29sZWFuIHtcbiAgICAvLyBXZSBjYW5ub3QgdXNlIHRoZSBOYW1lZFNsb3RzIGJlY2F1c2UgaXQncyB0b28gc2xvdyB0byBpbml0aWFsaXplXG4gICAgcmV0dXJuIHRoaXMucXVlcnlTZWxlY3RvckFsbD8uKCdbc2xvdD1cImNvbnRlbnRcIl0nKS5sZW5ndGggPiAwO1xuICB9XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgbmV3IFNiYlNsb3RTdGF0ZUNvbnRyb2xsZXIodGhpcyk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLl9zdGF0ZSB8fD0gJ2Nsb3NlZCc7XG4gICAgY29uc3Qgc2lnbmFsID0gdGhpcy5fYWJvcnQuc2lnbmFsO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcignc3RhdGVDaGFuZ2UnLCB0aGlzLl9vbklucHV0U3RhdGVDaGFuZ2UuYmluZCh0aGlzKSwgeyBzaWduYWwgfSk7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdjaGVja2JveExvYWRlZCcsIHRoaXMuX2luaXRGcm9tSW5wdXQuYmluZCh0aGlzKSwgeyBzaWduYWwgfSk7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdyYWRpb0J1dHRvbkxvYWRlZCcsIHRoaXMuX2luaXRGcm9tSW5wdXQuYmluZCh0aGlzKSwgeyBzaWduYWwgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2ZvcmNlT3BlbicpKSB7XG4gICAgICB0aGlzLl91cGRhdGVTdGF0ZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIHRoaXMuX2luaXRpYWxpemVkID0gdHJ1ZTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZVN0YXRlKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5oYXNDb250ZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5mb3JjZU9wZW4gfHwgdGhpcy5fY2hlY2tlZCA/IHRoaXMuX29wZW4oIXRoaXMuX2luaXRpYWxpemVkKSA6IHRoaXMuX2Nsb3NlKCk7XG4gIH1cblxuICBwcml2YXRlIF9vcGVuKHNraXBBbmltYXRpb24gPSBmYWxzZSk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9zdGF0ZSAhPT0gJ2Nsb3NlZCcgJiYgdGhpcy5fc3RhdGUgIT09ICdjbG9zaW5nJykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX3N0YXRlID0gJ29wZW5pbmcnO1xuICAgIHRoaXMuX3dpbGxPcGVuLmVtaXQoKTtcblxuICAgIGlmIChza2lwQW5pbWF0aW9uKSB7XG4gICAgICB0aGlzLl9zdGF0ZSA9ICdvcGVuZWQnO1xuICAgICAgdGhpcy5fZGlkT3Blbi5lbWl0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfY2xvc2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3N0YXRlICE9PSAnb3BlbmVkJyAmJiB0aGlzLl9zdGF0ZSAhPT0gJ29wZW5pbmcnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fc3RhdGUgPSAnY2xvc2luZyc7XG4gICAgdGhpcy5fd2lsbENsb3NlLmVtaXQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2luaXRGcm9tSW5wdXQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgaW5wdXQgPSBldmVudC50YXJnZXQgYXMgU2JiQ2hlY2tib3hFbGVtZW50IHwgU2JiUmFkaW9CdXR0b25FbGVtZW50O1xuXG4gICAgaWYgKCFpbnB1dC5pc1NlbGVjdGlvblBhbmVsSW5wdXQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9jaGVja2VkID0gaW5wdXQuY2hlY2tlZDtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IGlucHV0LmRpc2FibGVkO1xuICAgIHRoaXMuX3VwZGF0ZVN0YXRlKCk7XG4gIH1cblxuICBwcml2YXRlIF9vbklucHV0U3RhdGVDaGFuZ2UoZXZlbnQ6IEN1c3RvbUV2ZW50PFNiYlN0YXRlQ2hhbmdlPik6IHZvaWQge1xuICAgIGNvbnN0IGlucHV0ID0gZXZlbnQudGFyZ2V0IGFzIFNiYkNoZWNrYm94RWxlbWVudCB8IFNiYlJhZGlvQnV0dG9uRWxlbWVudDtcblxuICAgIGlmICghaW5wdXQuaXNTZWxlY3Rpb25QYW5lbElucHV0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKGV2ZW50LmRldGFpbC50eXBlID09PSAnZGlzYWJsZWQnKSB7XG4gICAgICB0aGlzLl9kaXNhYmxlZCA9IGV2ZW50LmRldGFpbC5kaXNhYmxlZDtcbiAgICAgIHJldHVybjtcbiAgICB9IGVsc2UgaWYgKGV2ZW50LmRldGFpbC50eXBlICE9PSAnY2hlY2tlZCcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9jaGVja2VkID0gZXZlbnQuZGV0YWlsLmNoZWNrZWQ7XG4gICAgdGhpcy5fdXBkYXRlU3RhdGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX29uQW5pbWF0aW9uRW5kKGV2ZW50OiBBbmltYXRpb25FdmVudCk6IHZvaWQge1xuICAgIGlmIChldmVudC5hbmltYXRpb25OYW1lID09PSAnb3Blbi1vcGFjaXR5JyAmJiB0aGlzLl9zdGF0ZSA9PT0gJ29wZW5pbmcnKSB7XG4gICAgICB0aGlzLl9zdGF0ZSA9ICdvcGVuZWQnO1xuICAgICAgdGhpcy5fZGlkT3Blbi5lbWl0KCk7XG4gICAgfSBlbHNlIGlmIChldmVudC5hbmltYXRpb25OYW1lID09PSAnY2xvc2UnICYmIHRoaXMuX3N0YXRlID09PSAnY2xvc2luZycpIHtcbiAgICAgIHRoaXMuX3N0YXRlID0gJ2Nsb3NlZCc7XG4gICAgICB0aGlzLl9kaWRDbG9zZS5lbWl0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXNlbGVjdGlvbi1wYW5lbFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLXNlbGVjdGlvbi1wYW5lbF9fYmFkZ2VcIj5cbiAgICAgICAgICA8c2xvdCBuYW1lPVwiYmFkZ2VcIj48L3Nsb3Q+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItc2VsZWN0aW9uLXBhbmVsX19pbnB1dFwiPlxuICAgICAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cInNiYi1zZWxlY3Rpb24tcGFuZWxfX2NvbnRlbnQtLXdyYXBwZXJcIlxuICAgICAgICAgIC5pbmVydD0ke3RoaXMuX3N0YXRlICE9PSAnb3BlbmVkJ31cbiAgICAgICAgICBAYW5pbWF0aW9uZW5kPSR7KGV2ZW50OiBBbmltYXRpb25FdmVudCkgPT4gdGhpcy5fb25BbmltYXRpb25FbmQoZXZlbnQpfVxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1zZWxlY3Rpb24tcGFuZWxfX2NvbnRlbnRcIj5cbiAgICAgICAgICAgIDxzYmItZGl2aWRlcj48L3NiYi1kaXZpZGVyPlxuICAgICAgICAgICAgPHNsb3QgbmFtZT1cImNvbnRlbnRcIj48L3Nsb3Q+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXNlbGVjdGlvbi1wYW5lbCc6IFNiYlNlbGVjdGlvblBhbmVsRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbInN0YXRlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUEwQmEsSUFBQSwyQkFBTixjQUF1QyxXQUFXO0FBQUEsRUE2RWhELGNBQWM7QUFD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
|
package/development/signet.js
CHANGED
|
@@ -74,8 +74,7 @@ var __decorateClass = (decorators, target, key, kind) => {
|
|
|
74
74
|
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
75
75
|
if (decorator = decorators[i])
|
|
76
76
|
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
77
|
-
if (kind && result)
|
|
78
|
-
__defProp(target, key, result);
|
|
77
|
+
if (kind && result) __defProp(target, key, result);
|
|
79
78
|
return result;
|
|
80
79
|
};
|
|
81
80
|
let SbbSignetElement = class extends LitElement {
|
|
@@ -113,4 +112,4 @@ SbbSignetElement = __decorateClass([
|
|
|
113
112
|
export {
|
|
114
113
|
SbbSignetElement
|
|
115
114
|
};
|
|
116
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmV0LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvc2lnbmV0L3NpZ25ldC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sLCBMaXRFbGVtZW50IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgdHlwZSB7IFNiYlByb3RlY3RpdmVSb29tIH0gZnJvbSAnLi4vY29yZS9pbnRlcmZhY2VzLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vc2lnbmV0LnNjc3M/bGl0JmlubGluZSc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgdGhlIFNCQiBzaWduZXQuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItc2lnbmV0JylcbmV4cG9ydCBjbGFzcyBTYmJTaWduZXRFbGVtZW50IGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKiBWaXN1YWwgcHJvdGVjdGl2ZSByb29tIGFyb3VuZCBzaWduZXQuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3Byb3RlY3RpdmUtcm9vbScsIHJlZmxlY3Q6IHRydWUgfSlcbiAgcHVibGljIHByb3RlY3RpdmVSb29tPzogU2JiUHJvdGVjdGl2ZVJvb20gPSAnaWRlYWwnO1xuXG4gIC8qKiBBY2Nlc3NpYmlsaXR5IGxhYmVsIHdoaWNoIHdpbGwgYmUgZm9yd2FyZGVkIHRvIHRoZSBpbm5lciBTVkcgc2lnbmV0LiAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhY2Nlc3NpYmlsaXR5LWxhYmVsJyB9KSBwdWJsaWMgYWNjZXNzaWJpbGl0eUxhYmVsID0gJ0xvZ28nO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPHNwYW4gY2xhc3M9XCJzYmItc2lnbmV0XCI+
|
|
115
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmV0LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvc2lnbmV0L3NpZ25ldC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sLCBMaXRFbGVtZW50IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgdHlwZSB7IFNiYlByb3RlY3RpdmVSb29tIH0gZnJvbSAnLi4vY29yZS9pbnRlcmZhY2VzLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vc2lnbmV0LnNjc3M/bGl0JmlubGluZSc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgdGhlIFNCQiBzaWduZXQuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItc2lnbmV0JylcbmV4cG9ydCBjbGFzcyBTYmJTaWduZXRFbGVtZW50IGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKiBWaXN1YWwgcHJvdGVjdGl2ZSByb29tIGFyb3VuZCBzaWduZXQuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3Byb3RlY3RpdmUtcm9vbScsIHJlZmxlY3Q6IHRydWUgfSlcbiAgcHVibGljIHByb3RlY3RpdmVSb29tPzogU2JiUHJvdGVjdGl2ZVJvb20gPSAnaWRlYWwnO1xuXG4gIC8qKiBBY2Nlc3NpYmlsaXR5IGxhYmVsIHdoaWNoIHdpbGwgYmUgZm9yd2FyZGVkIHRvIHRoZSBpbm5lciBTVkcgc2lnbmV0LiAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhY2Nlc3NpYmlsaXR5LWxhYmVsJyB9KSBwdWJsaWMgYWNjZXNzaWJpbGl0eUxhYmVsID0gJ0xvZ28nO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPHNwYW4gY2xhc3M9XCJzYmItc2lnbmV0XCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXNpZ25ldF9fc3ZnLWNvbnRhaW5lclwiPlxuICAgICAgICAgIDxzdmcgZm9jdXNhYmxlPVwiZmFsc2VcIiB2aWV3Qm94PVwiMCAwIDgwIDQwXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgICAgICAgPHRpdGxlIC50ZXh0Q29udGVudD0ke3RoaXMuYWNjZXNzaWJpbGl0eUxhYmVsfT48L3RpdGxlPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgaWQ9XCJzYmItc2lnbmV0X19pY29uXCJcbiAgICAgICAgICAgICAgZD1cIk0yMC4wMjY1IDQwSDMxLjY4MjFMMTYgMjQuNjE1NEgzNS4zOTA3VjQwSDQ0LjYwOTNWMjQuNjE1NEg2NC4xMDZMNDguNDIzOCA0MEg2MC4wNzk1TDgwIDIwLjA1MzFMNjAuMDc5NSAwSDQ4LjQyMzhMNjQuMTA2IDE1LjM4NDZINDQuNjA5M1YwSDM1LjM5MDdWMTUuMzg0NkgxNkwzMS42ODIxIDBIMjAuMDI2NUwwIDIwLjA1MzFMMjAuMDI2NSA0MFpcIlxuICAgICAgICAgICAgPjwvcGF0aD5cbiAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9zcGFuPlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1zaWduZXQnOiBTYmJTaWduZXRFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVlhLElBQUEsbUJBQU4sY0FBK0IsV0FBVztBQUFBLEVBQTFDLGNBQUE7QUFBQSxVQUFBLEdBQUEsU0FBQTtBQUtMLFNBQU8saUJBQXFDO0FBR0ksU0FBTyxxQkFBcUI7QUFBQSxFQUFBO0FBQUEsRUFFekQsU0FBeUI7QUFDbkMsV0FBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLGtDQUl1QixLQUFLLGtCQUFrQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVN2RDtBQUNGO0FBekJhLGlCQUNZLFNBQXlCO0FBSXpDLGdCQUFBO0FBQUEsRUFETixTQUFTLEVBQUUsV0FBVyxtQkFBbUIsU0FBUyxNQUFNO0FBQUEsR0FKOUMsaUJBS0osV0FBQSxrQkFBQSxDQUFBO0FBR2dELGdCQUFBO0FBQUEsRUFBdEQsU0FBUyxFQUFFLFdBQVcsdUJBQXVCO0FBQUEsR0FSbkMsaUJBUTRDLFdBQUEsc0JBQUEsQ0FBQTtBQVI1QyxtQkFBTixnQkFBQTtBQUFBLEVBRE4sY0FBYyxZQUFZO0FBQUEsR0FDZCxnQkFBQTsifQ==
|
|
@@ -71,8 +71,7 @@ var __decorateClass = (decorators, target, key, kind) => {
|
|
|
71
71
|
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
72
72
|
if (decorator = decorators[i])
|
|
73
73
|
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
74
|
-
if (kind && result)
|
|
75
|
-
__defProp(target, key, result);
|
|
74
|
+
if (kind && result) __defProp(target, key, result);
|
|
76
75
|
return result;
|
|
77
76
|
};
|
|
78
77
|
let SbbSkiplinkListElement = class extends SbbNamedSlotListMixin(LitElement) {
|
|
@@ -122,4 +121,4 @@ SbbSkiplinkListElement = __decorateClass([
|
|
|
122
121
|
export {
|
|
123
122
|
SbbSkiplinkListElement
|
|
124
123
|
};
|
|
125
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tpcGxpbmstbGlzdC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3NraXBsaW5rLWxpc3Qvc2tpcGxpbmstbGlzdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBMaXRFbGVtZW50LFxuICBub3RoaW5nLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IFNiYlNsb3RTdGF0ZUNvbnRyb2xsZXIgfSBmcm9tICcuLi9jb3JlL2NvbnRyb2xsZXJzLmpzJztcbmltcG9ydCB7IFNiYk5hbWVkU2xvdExpc3RNaXhpbiwgdHlwZSBXaXRoTGlzdENoaWxkcmVuIH0gZnJvbSAnLi4vY29yZS9taXhpbnMuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJCbG9ja0xpbmtCdXR0b25FbGVtZW50LCBTYmJCbG9ja0xpbmtFbGVtZW50IH0gZnJvbSAnLi4vbGluay5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYlRpdGxlTGV2ZWwgfSBmcm9tICcuLi90aXRsZS5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3NraXBsaW5rLWxpc3Quc2Nzcz9saXQmaW5saW5lJztcblxuaW1wb3J0ICcuLi90aXRsZS5qcyc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSBsaXN0IG9mIGBzYmItYmxvY2stbGlua2AvYHNiYi1ibG9jay1saW5rLWJ1dHRvbmAgd2hpY2ggYXJlIHZpc2libGUgb25seSB3aGVuIGZvY3VzZWQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYHNiYi1ibG9jay1saW5rYC9gc2JiLWJsb2NrLWxpbmstYnV0dG9uYCBlbGVtZW50cyB0byB0aGUgYHNiYi1za2lwbGluay1saXN0YC5cbiAqIEBjc3Nwcm9wIFstLXNiYi1za2lwbGluay1saXN0LXotaW5kZXg9dmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KV0gLSBUbyBzcGVjaWZ5IGEgY3VzdG9tIHN0YWNrIG9yZGVyLFxuICogdGhlIGB6LWluZGV4YCBjYW4gYmUgb3ZlcnJpZGRlbiBieSBkZWZpbmluZyB0aGlzIENTUyB2YXJpYWJsZS4gVGhlIGRlZmF1bHQgYHotaW5kZXhgIG9mIHRoZVxuICogY29tcG9uZW50IGlzIHNldCB0byBgdmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KWAgd2l0aCBhIHZhbHVlIG9mIGAxMDAwYC5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1za2lwbGluay1saXN0JylcbmV4cG9ydCBjbGFzcyBTYmJTa2lwbGlua0xpc3RFbGVtZW50IGV4dGVuZHMgU2JiTmFtZWRTbG90TGlzdE1peGluPFxuICBTYmJCbG9ja0xpbmtFbGVtZW50IHwgU2JiQmxvY2tMaW5rQnV0dG9uRWxlbWVudCxcbiAgdHlwZW9mIExpdEVsZW1lbnRcbj4oTGl0RWxlbWVudCkge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlYWRvbmx5IGxpc3RDaGlsZExvY2FsTmFtZXMgPSBbJ3NiYi1ibG9jay1saW5rJywgJ3NiYi1ibG9jay1saW5rLWJ1dHRvbiddO1xuXG4gIC8qKiBUaGUgdGl0bGUgdGV4dCB3ZSB3YW50IHRvIHBsYWNlIGJlZm9yZSB0aGUgbGlzdC4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAndGl0bGUtY29udGVudCcsIHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIHRpdGxlQ29udGVudD86IHN0cmluZztcblxuICAvKiogVGhlIHNlbWFudGljIGxldmVsIG9mIHRoZSB0aXRsZSwgZS5nLiAyID0gaDIuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3RpdGxlLWxldmVsJyB9KSBwdWJsaWMgdGl0bGVMZXZlbDogU2JiVGl0bGVMZXZlbCA9ICcyJztcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICBuZXcgU2JiU2xvdFN0YXRlQ29udHJvbGxlcih0aGlzKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczxXaXRoTGlzdENoaWxkcmVuPHRoaXM+Pik6IHZvaWQge1xuICAgIHN1cGVyLndpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnbGlzdENoaWxkcmVuJykpIHtcbiAgICAgIGZvciAoY29uc3QgY2hpbGQgb2YgdGhpcy5saXN0Q2hpbGRyZW4pIHtcbiAgICAgICAgY2hpbGQuc2l6ZSA9ICdtJztcbiAgICAgICAgY2hpbGQubmVnYXRpdmUgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1za2lwbGluay1saXN0X193cmFwcGVyXCI+
|
|
124
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tpcGxpbmstbGlzdC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3NraXBsaW5rLWxpc3Qvc2tpcGxpbmstbGlzdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBMaXRFbGVtZW50LFxuICBub3RoaW5nLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IFNiYlNsb3RTdGF0ZUNvbnRyb2xsZXIgfSBmcm9tICcuLi9jb3JlL2NvbnRyb2xsZXJzLmpzJztcbmltcG9ydCB7IFNiYk5hbWVkU2xvdExpc3RNaXhpbiwgdHlwZSBXaXRoTGlzdENoaWxkcmVuIH0gZnJvbSAnLi4vY29yZS9taXhpbnMuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJCbG9ja0xpbmtCdXR0b25FbGVtZW50LCBTYmJCbG9ja0xpbmtFbGVtZW50IH0gZnJvbSAnLi4vbGluay5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYlRpdGxlTGV2ZWwgfSBmcm9tICcuLi90aXRsZS5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3NraXBsaW5rLWxpc3Quc2Nzcz9saXQmaW5saW5lJztcblxuaW1wb3J0ICcuLi90aXRsZS5qcyc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSBsaXN0IG9mIGBzYmItYmxvY2stbGlua2AvYHNiYi1ibG9jay1saW5rLWJ1dHRvbmAgd2hpY2ggYXJlIHZpc2libGUgb25seSB3aGVuIGZvY3VzZWQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYHNiYi1ibG9jay1saW5rYC9gc2JiLWJsb2NrLWxpbmstYnV0dG9uYCBlbGVtZW50cyB0byB0aGUgYHNiYi1za2lwbGluay1saXN0YC5cbiAqIEBjc3Nwcm9wIFstLXNiYi1za2lwbGluay1saXN0LXotaW5kZXg9dmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KV0gLSBUbyBzcGVjaWZ5IGEgY3VzdG9tIHN0YWNrIG9yZGVyLFxuICogdGhlIGB6LWluZGV4YCBjYW4gYmUgb3ZlcnJpZGRlbiBieSBkZWZpbmluZyB0aGlzIENTUyB2YXJpYWJsZS4gVGhlIGRlZmF1bHQgYHotaW5kZXhgIG9mIHRoZVxuICogY29tcG9uZW50IGlzIHNldCB0byBgdmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KWAgd2l0aCBhIHZhbHVlIG9mIGAxMDAwYC5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1za2lwbGluay1saXN0JylcbmV4cG9ydCBjbGFzcyBTYmJTa2lwbGlua0xpc3RFbGVtZW50IGV4dGVuZHMgU2JiTmFtZWRTbG90TGlzdE1peGluPFxuICBTYmJCbG9ja0xpbmtFbGVtZW50IHwgU2JiQmxvY2tMaW5rQnV0dG9uRWxlbWVudCxcbiAgdHlwZW9mIExpdEVsZW1lbnRcbj4oTGl0RWxlbWVudCkge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlYWRvbmx5IGxpc3RDaGlsZExvY2FsTmFtZXMgPSBbJ3NiYi1ibG9jay1saW5rJywgJ3NiYi1ibG9jay1saW5rLWJ1dHRvbiddO1xuXG4gIC8qKiBUaGUgdGl0bGUgdGV4dCB3ZSB3YW50IHRvIHBsYWNlIGJlZm9yZSB0aGUgbGlzdC4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAndGl0bGUtY29udGVudCcsIHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIHRpdGxlQ29udGVudD86IHN0cmluZztcblxuICAvKiogVGhlIHNlbWFudGljIGxldmVsIG9mIHRoZSB0aXRsZSwgZS5nLiAyID0gaDIuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3RpdGxlLWxldmVsJyB9KSBwdWJsaWMgdGl0bGVMZXZlbDogU2JiVGl0bGVMZXZlbCA9ICcyJztcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICBuZXcgU2JiU2xvdFN0YXRlQ29udHJvbGxlcih0aGlzKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczxXaXRoTGlzdENoaWxkcmVuPHRoaXM+Pik6IHZvaWQge1xuICAgIHN1cGVyLndpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnbGlzdENoaWxkcmVuJykpIHtcbiAgICAgIGZvciAoY29uc3QgY2hpbGQgb2YgdGhpcy5saXN0Q2hpbGRyZW4pIHtcbiAgICAgICAgY2hpbGQuc2l6ZSA9ICdtJztcbiAgICAgICAgY2hpbGQubmVnYXRpdmUgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1za2lwbGluay1saXN0X193cmFwcGVyXCI+XG4gICAgICAgIDxzYmItdGl0bGVcbiAgICAgICAgICBjbGFzcz1cInNiYi1saW5rLWxpc3QtdGl0bGVcIlxuICAgICAgICAgIGxldmVsPSR7dGhpcy50aXRsZUxldmVsIHx8IG5vdGhpbmd9XG4gICAgICAgICAgdmlzdWFsLWxldmVsPVwiNVwiXG4gICAgICAgICAgdmlzdWFsbHktaGlkZGVuXG4gICAgICAgICAgbmVnYXRpdmVcbiAgICAgICAgICBpZD1cInNiYi1za2lwbGluay1saXN0LXRpdGxlLWlkXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxzbG90IG5hbWU9XCJ0aXRsZVwiPiR7dGhpcy50aXRsZUNvbnRlbnR9PC9zbG90PlxuICAgICAgICA8L3NiYi10aXRsZT5cbiAgICAgICAgJHt0aGlzLnJlbmRlckxpc3QoeyBhcmlhTGFiZWxsZWRieTogJ3NiYi1za2lwbGluay1saXN0LXRpdGxlLWlkJyB9KX1cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1za2lwbGluay1saXN0JzogU2JiU2tpcGxpbmtMaXN0RWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUE0Qk8sSUFBTSx5QkFBTixjQUFxQyxzQkFHMUMsVUFBVSxFQUFFO0FBQUEsRUFVTCxjQUFjO0FBQ2I7QUFUb0IsU0FBQSxzQkFBc0IsQ0FBQyxrQkFBa0IsdUJBQXVCO0FBTXBELFNBQU8sYUFBNEI7QUFJekUsUUFBSSx1QkFBdUIsSUFBSTtBQUFBLEVBQ2pDO0FBQUEsRUFFbUIsV0FBVyxtQkFBaUU7QUFDN0YsVUFBTSxXQUFXLGlCQUFpQjtBQUU5QixRQUFBLGtCQUFrQixJQUFJLGNBQWMsR0FBRztBQUM5QixpQkFBQSxTQUFTLEtBQUssY0FBYztBQUNyQyxjQUFNLE9BQU87QUFDYixjQUFNLFdBQVc7QUFBQSxNQUNuQjtBQUFBLElBQ0Y7QUFBQSxFQUNGO0FBQUEsRUFFbUIsU0FBeUI7QUFDbkMsV0FBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLGtCQUlPLEtBQUssY0FBYyxPQUFPO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLCtCQU1iLEtBQUssWUFBWTtBQUFBO0FBQUEsVUFFdEMsS0FBSyxXQUFXLEVBQUUsZ0JBQWdCLDZCQUE4QixDQUFBLENBQUM7QUFBQTtBQUFBO0FBQUEsRUFHekU7QUFDRjtBQTlDYSx1QkFJWSxTQUF5QjtBQUlnQixnQkFBQTtBQUFBLEVBQS9ELFNBQVMsRUFBRSxXQUFXLGlCQUFpQixTQUFTLE1BQU07QUFBQSxHQVI1Qyx1QkFRcUQsV0FBQSxnQkFBQSxDQUFBO0FBR2pCLGdCQUFBO0FBQUEsRUFBOUMsU0FBUyxFQUFFLFdBQVcsZUFBZTtBQUFBLEdBWDNCLHVCQVdvQyxXQUFBLGNBQUEsQ0FBQTtBQVhwQyx5QkFBTixnQkFBQTtBQUFBLEVBRE4sY0FBYyxtQkFBbUI7QUFBQSxHQUNyQixzQkFBQTsifQ==
|