@tuki-io/tuki-widgets 0.0.176 → 0.0.177
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/README.md +24 -24
- package/contact-center/shared/material.module.d.ts +2 -1
- package/esm2020/contact-center/shared/material.module.mjs +8 -4
- package/esm2020/lib/widgets.component.mjs +9 -9
- package/esm2020/lib/widgets.module.mjs +1 -1
- package/esm2020/lib/widgets.service.mjs +1 -1
- package/esm2020/public-api.mjs +1 -1
- package/esm2020/user-creation/src/widgets/user-creation-wizard/user-creation-wizard.component.mjs +2 -2
- package/esm2020/user-device-manage/public-api.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/device.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/line-association-interface.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/line-association.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/line-call-info-display.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/line-directory.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/line.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/notification.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/recording-options.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/simplified-user.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/site-defaults.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/translation-pattern.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/types.mjs +1 -1
- package/esm2020/user-device-manage/src/common-functions.mjs +1 -1
- package/esm2020/user-device-manage/src/confirm-dialog/info-dialog.component.mjs +3 -3
- package/esm2020/user-device-manage/src/device-associated-line/associated-line-row/associated-line-row.component.mjs +3 -3
- package/esm2020/user-device-manage/src/device-associated-line/device-associated-line-details-box/device-associated-line-details-box.component.mjs +3 -3
- package/esm2020/user-device-manage/src/device-associated-line/device-associated-line.component.mjs +1 -1
- package/esm2020/user-device-manage/src/device-manage-widget.component.mjs +2 -2
- package/esm2020/user-device-manage/src/environments/environment.mjs +1 -1
- package/esm2020/user-device-manage/src/interseptors/auth.interceptor.mjs +1 -1
- package/esm2020/user-device-manage/src/lazy-loading-select/lazy-loading-select.component.mjs +1 -1
- package/esm2020/user-device-manage/src/material.module.mjs +1 -1
- package/esm2020/user-device-manage/src/notifications/notification.component.mjs +3 -3
- package/esm2020/user-device-manage/src/services/device.service.mjs +1 -1
- package/esm2020/user-device-manage/src/services/notification.service.mjs +1 -1
- package/esm2020/user-device-manage/src/services/removeKynFromIBM.service.mjs +1 -1
- package/esm2020/user-device-manage/src/services/site-settings.service.mjs +1 -1
- package/esm2020/user-device-manage/src/services/sorting-utils.service.mjs +1 -1
- package/esm2020/user-device-manage/src/services/utils.service.mjs +1 -1
- package/esm2020/user-device-manage/src/services/validation.service.mjs +1 -1
- package/esm2020/user-device-manage/src/utils/app-loader/app-loader.mjs +1 -1
- package/esm2020/user-manage/public-api.mjs +1 -1
- package/esm2020/user-manage/src/classes/device.mjs +1 -1
- package/esm2020/user-manage/src/classes/line-association.mjs +1 -1
- package/esm2020/user-manage/src/classes/line-call-info-display.mjs +1 -1
- package/esm2020/user-manage/src/classes/notification.mjs +1 -1
- package/esm2020/user-manage/src/classes/recording-options.mjs +1 -1
- package/esm2020/user-manage/src/classes/table-data.mjs +1 -1
- package/esm2020/user-manage/src/classes/translation-pattern.mjs +1 -1
- package/esm2020/user-manage/src/classes/user-list.mjs +1 -1
- package/esm2020/user-manage/src/common-functions.mjs +1 -1
- package/esm2020/user-manage/src/environments/environment.mjs +1 -1
- package/esm2020/user-manage/src/interseptors/auth.interceptor.mjs +1 -1
- package/esm2020/user-manage/src/material.module.mjs +1 -1
- package/esm2020/user-manage/src/notifications/notification.component.mjs +3 -3
- package/esm2020/user-manage/src/removeKynFromIBM.service.mjs +1 -1
- package/esm2020/user-manage/src/services/dns.service.mjs +1 -1
- package/esm2020/user-manage/src/services/line.service.mjs +1 -1
- package/esm2020/user-manage/src/services/notification.service.mjs +1 -1
- package/esm2020/user-manage/src/services/removeKynFromIBM.service.mjs +1 -1
- package/esm2020/user-manage/src/services/site-settings.service.mjs +1 -1
- package/esm2020/user-manage/src/services/sorting-utils.service.mjs +1 -1
- package/esm2020/user-manage/src/services/utils.service.mjs +1 -1
- package/esm2020/user-manage/src/user-calling/user-calling-extension/user-calling-extension.component.mjs +3 -3
- package/esm2020/user-manage/src/user-manage-widget.component.mjs +2 -2
- package/esm2020/user-manage/src/utils/app-loader/app-loader.mjs +1 -1
- package/esm2020/user-manage/src/utils/pagination/pagination.component.mjs +3 -3
- package/esm2020/users-list/public-api.mjs +1 -1
- package/esm2020/users-list/src/classes/app-location.mjs +1 -1
- package/esm2020/users-list/src/classes/device.mjs +1 -1
- package/esm2020/users-list/src/classes/line.mjs +1 -1
- package/esm2020/users-list/src/classes/notification.mjs +1 -1
- package/esm2020/users-list/src/classes/simlified-user.mjs +1 -1
- package/esm2020/users-list/src/classes/table-data.mjs +1 -1
- package/esm2020/users-list/src/classes/user-list.mjs +1 -1
- package/esm2020/users-list/src/move-user-wizard/move-user-stepper/device-move-user/device-move-user-wizard.component.mjs +3 -3
- package/esm2020/users-list/src/move-user-wizard/move-user-stepper/device-move-user-tab/devices-move-user-wizard-tab.component.mjs +3 -3
- package/esm2020/users-list/src/move-user-wizard/move-user-wizard.component.mjs +3 -3
- package/esm2020/users-list/src/services/api-webex.service.mjs +1 -1
- package/esm2020/users-list/src/services/api.service.mjs +1 -1
- package/esm2020/users-list/src/services/events-communication.service.mjs +1 -1
- package/esm2020/users-list/src/services/notification.service.mjs +1 -1
- package/esm2020/users-list/src/services/removeKynFromIBM.service.mjs +1 -1
- package/esm2020/users-list/src/services/site-settings.service.mjs +1 -1
- package/esm2020/users-list/src/user-list-confirm-dialog/user-list-confirm-dialog.component.mjs +3 -3
- package/esm2020/users-list/src/utils/app-loader/app-loader.mjs +1 -1
- package/esm2020/users-list/src/utils/common-functions.mjs +1 -1
- package/esm2020/users-list/src/utils/utils.service.mjs +1 -1
- package/fesm2015/tuki-io-tuki-widgets-user-creation.mjs +2 -2
- package/fesm2015/tuki-io-tuki-widgets-user-creation.mjs.map +1 -1
- package/fesm2015/tuki-io-tuki-widgets-user-device-manage.mjs +10 -10
- package/fesm2015/tuki-io-tuki-widgets-user-device-manage.mjs.map +1 -1
- package/fesm2015/tuki-io-tuki-widgets-user-manage.mjs +8 -8
- package/fesm2015/tuki-io-tuki-widgets-user-manage.mjs.map +1 -1
- package/fesm2015/tuki-io-tuki-widgets-users-list.mjs +8 -8
- package/fesm2015/tuki-io-tuki-widgets-users-list.mjs.map +1 -1
- package/fesm2015/tuki-io-tuki-widgets.mjs +8 -8
- package/fesm2015/tuki-io-tuki-widgets.mjs.map +1 -1
- package/fesm2020/tuki-io-tuki-widgets-user-creation.mjs +2 -2
- package/fesm2020/tuki-io-tuki-widgets-user-creation.mjs.map +1 -1
- package/fesm2020/tuki-io-tuki-widgets-user-device-manage.mjs +10 -10
- package/fesm2020/tuki-io-tuki-widgets-user-device-manage.mjs.map +1 -1
- package/fesm2020/tuki-io-tuki-widgets-user-manage.mjs +8 -8
- package/fesm2020/tuki-io-tuki-widgets-user-manage.mjs.map +1 -1
- package/fesm2020/tuki-io-tuki-widgets-users-list.mjs +8 -8
- package/fesm2020/tuki-io-tuki-widgets-users-list.mjs.map +1 -1
- package/fesm2020/tuki-io-tuki-widgets.mjs +8 -8
- package/fesm2020/tuki-io-tuki-widgets.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -757,4 +757,4 @@ ValidationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", ve
|
|
|
757
757
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ValidationService, decorators: [{
|
|
758
758
|
type: Injectable
|
|
759
759
|
}], ctorParameters: function () { return [{ type: i1.SiteSettingsService }]; } });
|
|
760
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItZGV2aWNlLW1hbmFnZS9zcmMvc2VydmljZXMvdmFsaWRhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN6RyxPQUFPLEVBQVUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQUV6RCxNQUFNLGNBQWMsR0FBRyxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUM3QyxNQUFNLFFBQVEsR0FBRyxJQUFJLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztBQUMzQyxNQUFNLFNBQVMsR0FBRyxJQUFJLE1BQU0sQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO0FBR3JFLE1BQU0sT0FBTyxpQkFBaUI7SUFFNUIsWUFDVSxtQkFBd0M7UUFBeEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQTZIbEQsaUJBQVksR0FBRyxDQUFDLFNBQWlCLEVBQUUsRUFBRTtZQUNuQyxPQUFPLENBQUMsT0FBWSxFQUFFLEVBQUU7Z0JBQ3RCLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFO29CQUNwQixPQUFPLElBQUksQ0FBQztpQkFDYjtnQkFDRCxNQUFNLGVBQWUsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDdEQsSUFBSSxlQUFlLENBQUMsS0FBSyxJQUFJLGVBQWUsQ0FBQyxLQUFLLEtBQUssT0FBTyxDQUFDLEtBQUssRUFBRTtvQkFDcEUsT0FBTzt3QkFDTCxZQUFZLEVBQUUsSUFBSTtxQkFDbkIsQ0FB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SSxDQUFDLElBQUksR0FBRyxJQUFJLEtBQUssSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFO29CQUN4RCxPQUFPLElBQUksQ0FBQztpQkFDYjthQUNGO1lBQ0QsT0FBTyxLQUFLLENBQUM7U0FDZDtJQUNILENBQUM7SUFtQkQsbUJBQW1CLENBQUMsSUFBUyxFQUFFLElBQVM7UUFDdEMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDbEMsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUNELEtBQUssTUFBTSxRQUFRLElBQUksSUFBSSxFQUFFO1lBQzNCLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDekIsT0FBTyxJQUFJLENBQUM7YUFDYjtTQUNGO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOzsrR0FqekJVLGlCQUFpQjttSEFBakIsaUJBQWlCOzRGQUFqQixpQkFBaUI7a0JBRDdCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNpdGVTZXR0aW5nc1NlcnZpY2UgfSBmcm9tICcuL3NpdGUtc2V0dGluZ3Muc2VydmljZSc7XHJcbmltcG9ydCB7IERldmljZVR5cGVzLCBNYWlsYm94UXVvdGFzVHlwZSwgU3BlZWREaWFsVHlwZSwgVk1Ob3RpZmljYXRpb25zVHlwZXMgfSBmcm9tICcuLy4uL2NsYXNzZXMvdHlwZXMnO1xyXG5pbXBvcnQgeyBEZXZpY2UsIERldmljZUtpbmQgfSBmcm9tICcuLy4uL2NsYXNzZXMvZGV2aWNlJztcclxuXHJcbmNvbnN0IHNwZWVkRGlhbFJlZ2V4ID0gbmV3IFJlZ0V4cCgnXlteXCJdKiQnKTtcclxuY29uc3QgQkxGUmVnZXggPSBuZXcgUmVnRXhwKCdeW15cIj48JiVdKiQnKTtcclxuY29uc3QgdGltZVJlZ2V4ID0gbmV3IFJlZ0V4cCgnXihbMC0xXVswLTldfFsyXVswLTNdKTooWzAtNV1bMC05XSkkJyk7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBWYWxpZGF0aW9uU2VydmljZSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBzaXRlU2V0dGluZ3NTZXJ2aWNlOiBTaXRlU2V0dGluZ3NTZXJ2aWNlLFxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgZTE2NE1hc2tMYWJlbChjb250cm9sOiBhbnkpIHtcclxuICAgIGNvbnN0IHJ1bGVUZXh0ID0gYF5bMC05KiMrWF17MCwyNH0kYDtcclxuICAgIGNvbnN0IHJ1bGUgPSBuZXcgUmVnRXhwKHJ1bGVUZXh0LCAnZycpO1xyXG4gICAgaWYgKGNvbnRyb2wudmFsdWUgJiYgcnVsZSAmJiAhcnVsZS50ZXN0KGNvbnRyb2wudmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiB7ZTE2NE1hc2tSdWxlOiB7cnVsZTogcnVsZVRleHR9fTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgaW5kZXgoY29udHJvbDogYW55KSB7XHJcbiAgICBjb25zdCB2YWx1ZSA9IHBhcnNlSW50KGNvbnRyb2wudmFsdWUpO1xyXG4gICAgaWYgKCF2YWx1ZSkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIGNvbnN0IHBhdHRlcm4gPSAnXlsrMC05XSokJztcclxuICAgIGlmICh2YWx1ZSAmJiAhTnVtYmVyLmlzSW50ZWdlcih2YWx1ZSkgfHwgdmFsdWUgPCAxIHx8IHZhbHVlID4gMTk5KSB7XHJcbiAgICAgIHJldHVybiB7aW5kZXhSdWxlOiB0cnVlfTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgZGlzcGxheUxhYmVsKGNvbnRyb2w6IGFueSkge1xyXG4gICAgY29uc3QgcnVsZVRleHQgPSBgXlteXCJcIlwiXCIlJjw+XXswLDMwfSRgO1xyXG4gICAgY29uc3QgcnVsZSA9IG5ldyBSZWdFeHAocnVsZVRleHQsICdnJyk7XHJcbiAgICBpZiAocnVsZSAmJiAhcnVsZS50ZXN0KGNvbnRyb2wudmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiB7bGFiZWxSdWxlOiB7cnVsZTogcnVsZVRleHQsIGNvdW50OiAzMH19O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIGRpc3BsYXlMYWJlbEFzY2lpKGNvbnRyb2w6IGFueSkge1xyXG4gICAgY29uc3QgcnVsZVRleHQgPSAnXlthLXpBLVowLTkgISMkXFwnKCkqKywuLzo7PT9AXFxcXF5fYH1+LV17MCwzMH0kJztcclxuICAgIGNvbnN0IHJ1bGUgPSBuZXcgUmVnRXhwKHJ1bGVUZXh0LCAnZycpO1xyXG4gICAgaWYgKHJ1bGUgJiYgIXJ1bGUudGVzdChjb250cm9sLnZhbHVlKSkge1xyXG4gICAgICByZXR1cm4ge2xhYmVsUnVsZToge3J1bGU6IHJ1bGVUZXh0LCBjb3VudDogMzB9fTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgcmVxdWlyZWRGb3JTcGVlZERpYWxQb3NpdGlvbih0eXBlOiBzdHJpbmcpIHtcclxuXHJcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xyXG4gICAgICBjb25zdCBwYXJlbnQgPSBjb250cm9sLnBhcmVudDtcclxuICAgICAgaWYgKHR5cGUgPT09IFNwZWVkRGlhbFR5cGUuc2xvdEJhc2ljIHx8ICFwYXJlbnQpIHtcclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgfVxyXG4gICAgICBpZiAoIWNvbnRyb2wudmFsdWUpIHtcclxuICAgICAgICByZXR1cm4ge3JlcXVpcmVkOiB0cnVlfTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBzcGVlZERpYWxEZXN0aW5hdGlvbigpIHtcclxuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XHJcbiAgICAgIGlmICghY29udHJvbCB8fCAhY29udHJvbC52YWx1ZSkge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IG51bWJlck9ySG9zdE5hbWVJUCA9ICcnICtcclxuICAgICAgICAnXihbMC05XFxcXCojK1BwQ2NGZixdKykkJyArXHJcbiAgICAgICAgJ3wnICtcclxuICAgICAgICAnXignICtcclxuICAgICAgICAnKFthLXpBLVowLTldKXsxLDQ3fUAnICtcclxuICAgICAgICAnKCcgK1xyXG4gICAgICAgICcoKD86WzAtOV17MSwzfVxcXFwuKXszfVswLTldezEsM30pJyArXHJcbiAgICAgICAgJ3wnICtcclxuICAgICAgICAnKFthLXpBLVowLTldW2EtekEtWjAtOVxcXFwtXXsxLDYxfVthLXpBLVowLTldXFxcXC5bYS16QS1aXXsyLH0pJyArXHJcbiAgICAgICAgJyknICtcclxuICAgICAgICAnKSQnO1xyXG4gICAgICBjb25zdCBydWxlID0gbmV3IFJlZ0V4cChudW1iZXJPckhvc3ROYW1lSVAsICdnJyk7XHJcbiAgICAgIGlmIChydWxlICYmICFydWxlLnRlc3QoY29udHJvbC52YWx1ZSkpIHtcclxuICAgICAgICByZXR1cm4ge3BhdHRlcm46IHRydWV9O1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfTtcclxuXHJcbiAgfVxyXG5cclxuICByZXF1aXJlZEZvclNwZWVkRGlhbERlc3RpbmF0aW9uKHR5cGU6IHN0cmluZykge1xyXG5cclxuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XHJcbiAgICAgIGNvbnN0IHBhcmVudCA9IGNvbnRyb2wucGFyZW50O1xyXG4gICAgICBpZiAoKCFwYXJlbnQgfHwgIXBhcmVudC5nZXQoJ2xhYmVsJykpIHx8ICh0eXBlID09PSBTcGVlZERpYWxUeXBlLnNsb3RCYXNpYyAmJiAhY29udHJvbC52YWx1ZSAmJiAhcGFyZW50LmdldCgnbGFiZWwnKS52YWx1ZSkpIHtcclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH07XHJcbiAgfVxyXG5cclxuXHJcbiAgbGFiZWxQYXR0ZXJuRGVwZW5kaW5nT25UeXBlKGNvbnRyb2w6IGFueSkge1xyXG4gICAgY29uc3QgcGFyZW50ID0gY29udHJvbD8ucGFyZW50O1xyXG4gICAgaWYgKCFwYXJlbnQgfHwgIXBhcmVudC5nZXQoJ3R5cGUnKSB8fCAhY29udHJvbC52YWx1ZSkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIGNvbnN0IHR5cGUgPSBwYXJlbnQuZ2V0KCd0eXBlJykudmFsdWU7XHJcbiAgICBpZiAoIXR5cGUgJiYgIXNwZWVkRGlhbFJlZ2V4LnRlc3QoY29udHJvbC52YWx1ZSkpIHtcclxuICAgICAgcmV0dXJuIHtsYWJlbFJ1bGU6IHt3cm9uZzogJ1wiJ319O1xyXG4gICAgfVxyXG4gICAgaWYgKHR5cGUgJiYgIUJMRlJlZ2V4LnRlc3QoY29udHJvbC52YWx1ZSkpIHtcclxuICAgICAgcmV0dXJuIHtsYWJlbFJ1bGU6IHt3cm9uZzogJ1wiPjwmJSd9fTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgbGFiZWxQYXR0ZXJuQkxGKGNvbnRyb2w6IGFueSkge1xyXG4gICAgaWYgKGNvbnRyb2wudmFsdWUgJiYgIUJMRlJlZ2V4LnRlc3QoY29udHJvbC52YWx1ZSkpIHtcclxuICAgICAgcmV0dXJuIHtsYWJlbFJ1bGU6IHt3cm9uZzogJ1wiPjwmJSd9fTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgbGFiZWxQYXR0ZXJuU3BlZWREaWFsKGNvbnRyb2w6IGFueSkge1xyXG4gICAgaWYgKGNvbnRyb2w/LnZhbHVlICYmICFzcGVlZERpYWxSZWdleC50ZXN0KGNvbnRyb2wudmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiB7bGFiZWxSdWxlOiB7d3Jvbmc6ICdcIid9fTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgbWF0Y2hDb250cm9sID0gKGZpZWxkTmFtZTogc3RyaW5nKSA9PiB7XHJcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoIWNvbnRyb2w/LnBhcmVudCkge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IG1hdGNoaW5nQ29udHJvbCA9IGNvbnRyb2wucGFyZW50LmdldChmaWVsZE5hbWUpO1xyXG4gICAgICBpZiAobWF0Y2hpbmdDb250cm9sLnZhbHVlICYmIG1hdGNoaW5nQ29udHJvbC52YWx1ZSAhPT0gY29udHJvbC52YWx1ZSkge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICBtYXRjaENvbnRyb2w6IHRydWVcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfTtcclxuICB9O1xyXG5cclxuICBtYXRjaExlbmd0aCA9IChmaWVsZE5hbWU6IHN0cmluZykgPT4ge1xyXG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcclxuICAgICAgaWYgKCFjb250cm9sLnBhcmVudCB8fCAhY29udHJvbC52YWx1ZSkge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IG1hdGNoaW5nQ29udHJvbCA9IGNvbnRyb2wucGFyZW50LmdldChmaWVsZE5hbWUpO1xyXG4gICAgICBpZiAoKCghY29udHJvbC52YWx1ZS5zdGFydHNXaXRoKCcrJykgJiYgIW1hdGNoaW5nQ29udHJvbC52YWx1ZS5zdGFydHNXaXRoKCcrJykpIHx8XHJcbiAgICAgICAgKGNvbnRyb2wudmFsdWUuc3RhcnRzV2l0aCgnKycpICYmIG1hdGNoaW5nQ29udHJvbC52YWx1ZS5zdGFydHNXaXRoKCcrJykpKSAmJlxyXG4gICAgICAgICgoIWNvbnRyb2wudmFsdWUuc3RhcnRzV2l0aCgnXFxcXCsnKSAmJiAhbWF0Y2hpbmdDb250cm9sLnZhbHVlLnN0YXJ0c1dpdGgoJ1xcXFwrJykpIHx8XHJcbiAgICAgICAgICAoY29udHJvbC52YWx1ZS5zdGFydHNXaXRoKCdcXFxcKycpICYmIG1hdGNoaW5nQ29udHJvbC52YWx1ZS5zdGFydHNXaXRoKCdcXFxcKycpKSkgJiZcclxuICAgICAgICBtYXRjaGluZ0NvbnRyb2wudmFsdWUubGVuZ3RoICE9PSBjb250cm9sLnZhbHVlLmxlbmd0aCkge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICBtYXRjaExlbmd0aDogdHJ1ZVxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9O1xyXG4gIH07XHJcblxyXG4gIGR5bmFtaWNNYXhMZW5ndGggPSAobGVuZ3RoMTogbnVtYmVyLCBsZW5ndGgyOiBudW1iZXIpID0+IHtcclxuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XHJcbiAgICAgIGlmICghY29udHJvbC5wYXJlbnQgfHwgIWNvbnRyb2wudmFsdWUpIHtcclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgfVxyXG4gICAgICBjb25zdCBtYXhMZW5ndGggPSBTdHJpbmcoY29udHJvbC52YWx1ZSkuaW5jbHVkZXMoJ1snKSA/IGxlbmd0aDEgOiBsZW5ndGgyO1xyXG4gICAgICBpZiAoY29udHJvbC52YWx1ZS5sZW5ndGggPiBtYXhMZW5ndGgpIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgbWF4TGVuZ3RoOiB0cnVlXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH07XHJcbiAgfTtcclxuXHJcbiAgYmlnZ2VyVGhhbiA9IChmaWVsZE5hbWU6IHN0cmluZykgPT4ge1xyXG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcclxuICAgICAgaWYgKCFjb250cm9sLnBhcmVudCB8fCAhY29udHJvbC52YWx1ZSkge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IG1hdGNoaW5nQ29udHJvbCA9IGNvbnRyb2wucGFyZW50LmdldChmaWVsZE5hbWUpO1xyXG4gICAgICBpZiAobWF0Y2hpbmdDb250cm9sLnZhbHVlLmxlbmd0aCA9PT0gY29udHJvbC52YWx1ZS5sZW5ndGggJiYgbWF0Y2hpbmdDb250cm9sLnZhbHVlICYmIG1hdGNoaW5nQ29udHJvbC52YWx1ZSA+IGNvbnRyb2wudmFsdWUpIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgYmlnZ2VyVGhhbjogdHJ1ZVxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9O1xyXG4gIH07XHJcblxyXG4gIHJlcXVpcmVkQnlUeXBlID0gKGZpZWxkTmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcpID0+IHtcclxuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XHJcbiAgICAgIGlmIChcclxuICAgICAgICBmaWVsZE5hbWUgPT09ICdwaG9uZVN5c3RlbScgJiYgKHR5cGUgPT09IFZNTm90aWZpY2F0aW9uc1R5cGVzWydQaG9uZSBEZXZpY2UnXSB8fCB0eXBlID09PSBWTU5vdGlmaWNhdGlvbnNUeXBlc1snUGFnZXIgRGV2aWNlJ10pIHx8XHJcbiAgICAgICAgZmllbGROYW1lID09PSAnaHRtbFRlbXBsYXRlJyAmJiB0eXBlID09PSBWTU5vdGlmaWNhdGlvbnNUeXBlc1snSFRNTCBEZXZpY2UnXVxyXG4gICAgICApIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgcmVxdWlyZWQ6IHRydWVcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfTtcclxuICB9O1xyXG5cclxuICBzbWFsbGVyVGhhblF1b3RhID0gKGZpZWxkTmFtZTogc3RyaW5nLCBxdW90YVR5cGU6IHN0cmluZywgc2Vjb25kUXVvdGFUeXBlOiBzdHJpbmcpID0+IHtcclxuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XHJcbiAgICAgIGlmICghY29udHJvbC5wYXJlbnQpIHtcclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgfVxyXG4gICAgICBjb25zdCBtYXRjaGluZ0NvbnRyb2wgPSBjb250cm9sLnBhcmVudC5nZXQoZmllbGROYW1lKTtcclxuICAgICAgY29uc3QgcXVvdGFUeXBlQ29udHJvbCA9IGNvbnRyb2wucGFyZW50LmdldChxdW90YVR5cGUpO1xyXG4gICAgICBjb25zdCBzZWNvbmRRdW90YVR5cGVDb250cm9sID0gY29udHJvbC5wYXJlbnQuZ2V0KHNlY29uZFF1b3RhVHlwZSk7XHJcblxyXG4gICAgICBpZiAocXVvdGFUeXBlQ29udHJvbCAmJiBzZWNvbmRRdW90YVR5cGVDb250cm9sICYmIHNlY29uZFF1b3RhVHlwZUNvbnRyb2wudmFsdWUgPT09IE1haWxib3hRdW90YXNUeXBlLnN5c3RlbSkge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAocXVvdGFUeXBlQ29udHJvbCAmJiBxdW90YVR5cGVDb250cm9sLnZhbHVlID09PSBNYWlsYm94UXVvdGFzVHlwZS5zeXN0ZW0gfHwgbWF0Y2hpbmdDb250cm9sICYmIG1hdGNoaW5nQ29udHJvbC52YWx1ZSAmJiBwYXJzZUludChtYXRjaGluZ0NvbnRyb2wudmFsdWUpIDwgcGFyc2VJbnQoY29udHJvbC52YWx1ZSkpIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgc21hbGxlclRoYW46IHRydWVcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfTtcclxuICB9O1xyXG5cclxuICBiaWdnZXJUaGFuUXVvdGEgPSAoZmllbGROYW1lOiBzdHJpbmcsIHF1b3RhVHlwZTogc3RyaW5nKSA9PiB7XHJcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoIWNvbnRyb2w/LnBhcmVudCkge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IG1hdGNoaW5nQ29udHJvbCA9IGNvbnRyb2wucGFyZW50LmdldChmaWVsZE5hbWUpO1xyXG4gICAgICBjb25zdCBxdW90YVR5cGVDb250cm9sID0gY29udHJvbC5wYXJlbnQuZ2V0KHF1b3RhVHlwZSk7XHJcblxyXG4gICAgICBpZiAocXVvdGFUeXBlQ29udHJvbCAmJiBxdW90YVR5cGVDb250cm9sLnZhbHVlID09PSBNYWlsYm94UXVvdGFzVHlwZS5jdXN0b20gJiYgbWF0Y2hpbmdDb250cm9sLnZhbHVlICYmIHBhcnNlSW50KG1hdGNoaW5nQ29udHJvbC52YWx1ZSkgPiBwYXJzZUludChjb250cm9sLnZhbHVlKSkge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICBiaWdnZXJUaGFuOiB0cnVlXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH07XHJcbiAgfTtcclxuXHJcbiAgcmFuZ2VMaW1pdCA9IChmaWVsZE5hbWU6IHN0cmluZykgPT4ge1xyXG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcclxuICAgICAgaWYgKCFjb250cm9sPy5wYXJlbnQgfHwgIWNvbnRyb2wudmFsdWUpIHtcclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgfVxyXG4gICAgICBjb25zdCBtYXRjaGluZ0NvbnRyb2wgPSBjb250cm9sLnBhcmVudC5nZXQoZmllbGROYW1lKTtcclxuICAgICAgaWYgKChjb250cm9sLnZhbHVlIC0gbWF0Y2hpbmdDb250cm9sLnZhbHVlKSA+IDUwMDAwKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIHJhbmdlTGltaXQ6IHRydWVcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfTtcclxuICB9O1xyXG5cclxuICBjb21wYXJlcGF0dGVyblBhcnRzID0gKGZpZWxkTmFtZTogc3RyaW5nKSA9PiB7XHJcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoIWNvbnRyb2w/LnZhbHVlKSB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgbWF0Y2hlcyA9IGNvbnRyb2wudmFsdWUubWF0Y2goL1xcWyguKj8pXFxdLyk7XHJcbiAgICAgIGlmIChtYXRjaGVzKSB7XHJcbiAgICAgICAgY29uc3Qgc3VibWF0Y2ggPSBtYXRjaGVzWzFdO1xyXG4gICAgICAgIGNvbnN0IHN1Ym1hdGNoc3BsaXQ6IG51bWJlcltdID0gc3VibWF0Y2guc3BsaXQoJy0nKTtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHN1Ym1hdGNoc3BsaXQubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgIGlmIChzdWJtYXRjaHNwbGl0W2ldID49IHN1Ym1hdGNoc3BsaXRbaSArIDFdKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgY29tcGFyZXBhdHRlcm5QYXJ0czogdHJ1ZVxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH07XHJcbiAgfTtcclxuXHJcbiAgbWF0Y2hQcmVmaXggPSAoZmllbGROYW1lOiBzdHJpbmcpID0+IHtcclxuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XHJcbiAgICAgIGlmICghY29udHJvbD8ucGFyZW50IHx8ICFjb250cm9sLnZhbHVlKSB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgbWF0Y2hpbmdDb250cm9sID0gY29udHJvbC5wYXJlbnQuZ2V0KGZpZWxkTmFtZSk7XHJcbiAgICAgIGlmICgobWF0Y2hpbmdDb250cm9sLnZhbHVlLnN0YXJ0c1dpdGgoJysnKSB8fCBjb250cm9sLnZhbHVlLnN0YXJ0c1dpdGgoJysnKSB8fCBtYXRjaGluZ0NvbnRyb2wudmFsdWUuc3RhcnRzV2l0aCgnXFxcXCsnKSB8fCBjb250cm9sLnZhbHVlLnN0YXJ0c1dpdGgoJ1xcXFwrJykpICYmIChjb250cm9sLnZhbHVlLmNoYXJBdCgwKSAhPT0gbWF0Y2hpbmdDb250cm9sLnZhbHVlLmNoYXJBdCgwKSkpIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgbWF0Y2hQcmVmaXg6IHRydWVcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfTtcclxuICB9O1xyXG5cclxuICBkZXZpY2VOYW1lVmFsaWRhdG9yID0gKGRldmljZTogRGV2aWNlKSA9PiB7XHJcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoIWNvbnRyb2wudmFsdWUgfHwgZGV2aWNlLmRldmljZUtpbmQgPT09IERldmljZUtpbmQuZGV2aWNlUHJvZmlsZSkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICBpZiAoZGV2aWNlLmlzQ3RpUm91dGVQb2ludCkge1xyXG4gICAgICAgIGxldCBlcnIgPSAnJztcclxuICAgICAgICBpZiAoIWNvbnRyb2wudmFsdWUubWF0Y2goL15bYS16QS1aMC05LV8uXSskLykpIHtcclxuICAgICAgICAgIGVyciA9ICdwYXR0ZXJuJztcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGNvbnRyb2wudmFsdWUudHJpbSgpLmxlbmd0aCA+IDE1KSB7XHJcbiAgICAgICAgICBlcnIgPSAnbWF4TGVuZ3RoJztcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGVyciA/IHtuYW1lUnVsZTogZXJyfSA6IG51bGw7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGRldmljZS5kZXZpY2VEZWZhdWx0cyAmJiAhZGV2aWNlLmlzQ3RpUm91dGVQb2ludCkge1xyXG4gICAgICAgIGNvbnN0IHJ1bGVUZXh0ID0gZGV2aWNlLmRldmljZURlZmF1bHRzLmRldmljZU5hbWVSZWdleDtcclxuICAgICAgICBjb25zdCBydWxlID0gbmV3IFJlZ0V4cChydWxlVGV4dCwgJ2cnKTtcclxuICAgICAgICBjb25zdCBjYXB0aW9uID0gZGV2aWNlLmRldmljZURlZmF1bHRzPy5kZXZpY2VOYW1lRXhwbGFpbmVkO1xyXG4gICAgICAgIGNvbnN0IG1hdGNoID0gKGNvbnRyb2wudmFsdWUgfHwgJycpLm1hdGNoKHJ1bGUpIHx8IFtdO1xyXG4gICAgICAgIGNvbnN0IGV4YWN0TWF0Y2ggPSBtYXRjaCAmJiBjb250cm9sLnZhbHVlID09PSBtYXRjaFswXTtcclxuICAgICAgICBpZiAocnVsZSAmJiAhZXhhY3RNYXRjaCkge1xyXG4gICAgICAgICAgcmV0dXJuIHtuYW1lUnVsZToge2NhcHRpb259fTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9O1xyXG4gIH07XHJcblxyXG4gIGRldmljZU5hbWVWYWx1ZVZhbGlkYXRvciA9IChkZXZpY2U6IERldmljZSwgZGV2aWNlTmFtZTogc3RyaW5nKSA9PiB7XHJcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoIWNvbnRyb2wudmFsdWUgfHwgZGV2aWNlLmRldmljZUtpbmQgPT09IERldmljZUtpbmQuZGV2aWNlUHJvZmlsZSkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICBpZiAoZGV2aWNlLm5hbWUgJiYgZGV2aWNlLmFscmVhZHlVc2VkTmFtZSAmJiBkZXZpY2UubmFtZSA9PT0gZGV2aWNlLmFscmVhZHlVc2VkTmFtZSkge1xyXG4gICAgICAgIHJldHVybiB7bmFtZVJ1bGU6ICdhbHJlYWR5VXNlZE5hbWUnfTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoZGV2aWNlLmlzQ3RpUm91dGVQb2ludCkge1xyXG4gICAgICAgIGxldCBlcnIgPSAnJztcclxuICAgICAgICBpZiAoIWRldmljZU5hbWUubWF0Y2goL15bYS16QS1aMC05LV8uXSskLykpIHtcclxuICAgICAgICAgIGVyciA9ICdwYXR0ZXJuJztcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGRldmljZU5hbWUudHJpbSgpLmxlbmd0aCA+IDE1KSB7XHJcbiAgICAgICAgICBlcnIgPSAnbWF4TGVuZ3RoJztcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGVyciA/IHtuYW1lUnVsZTogZXJyfSA6IG51bGw7XHJcbiAgICAgIH1cclxuICAgICBpZiAoZGV2aWNlLmRldmljZURlZmF1bHRzICYmICFkZXZpY2UuaXNDdGlSb3V0ZVBvaW50KSB7XHJcbiAgICAgICBjb25zdCBydWxlVGV4dCA9IGRldmljZS5kZXZpY2VEZWZhdWx0cy5kZXZpY2VOYW1lUmVnZXg7XHJcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ0RldiBuYW1lIHJ1bGUgLSAnLCBydWxlVGV4dCk7XHJcbiAgICAgICAgY29uc3QgcnVsZSA9IG5ldyBSZWdFeHAocnVsZVRleHQsICdnJyk7XHJcbiAgICAgICAgbGV0IGNhcHRpb24gPSBkZXZpY2UuZGV2aWNlRGVmYXVsdHMuZGV2aWNlTmFtZUV4cGxhaW5lZDtcclxuICAgICAgICBpZiAoIWNhcHRpb24pIHtcclxuICAgICAgICAgIGNhcHRpb24gPSBydWxlVGV4dDtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgbWF0Y2ggPSAoZGV2aWNlTmFtZSB8fCAnJykubWF0Y2gocnVsZSkgfHwgW107XHJcbiAgICAgICAgY29uc3QgZXhhY3RNYXRjaCA9IG1hdGNoICYmIGRldmljZU5hbWUgPT09IG1hdGNoWzBdO1xyXG4gICAgICAgIGlmIChydWxlICYmICFleGFjdE1hdGNoKSB7XHJcbiAgICAgICAgICByZXR1cm4ge25hbWVSdWxlOiB7Y2FwdGlvbn19O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH07XHJcbiAgfTtcclxuXHJcbiAgZGV2aWNlRHVwbGljYXRpbmdOYW1lVmFsaWRhdG9yID0gKHVzZXI6IGFueSwgcGtpZCA/OiBzdHJpbmcsIHByZWZpeD86IHN0cmluZykgPT4ge1xyXG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcclxuICAgICAgaWYgKCFjb250cm9sLnZhbHVlIHx8ICF1c2VyIHx8ICF1c2VyLmRldmljZXMgfHwgdXNlci5kZXZpY2VzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICBjb25zdCBkZXZpY2VOYW1lID0gcHJlZml4ID8gYCR7cHJlZml4fSR7Y29udHJvbC52YWx1ZX1gIDogY29udHJvbC52YWx1ZTtcclxuICAgICAgY29uc3QgZGV2aWNlc1dpdGhUaGVTYW1lTmFtZSA9IHVzZXIuZGV2aWNlcy5maWx0ZXIoKGRldmljZTogRGV2aWNlKSA9PiBkZXZpY2UubmFtZSA9PT0gZGV2aWNlTmFtZSk7XHJcbiAgICAgIGlmIChkZXZpY2VzV2l0aFRoZVNhbWVOYW1lLmxlbmd0aCA+IDApIHtcclxuICAgICAgICBpZiAoIXBraWQpIHsgIC8vIEZvciBuZXcgZGV2aWNlXHJcbiAgICAgICAgICByZXR1cm4ge2R1cGxpY2F0ZU5hbWVSdWxlOiB0cnVlfTtcclxuICAgICAgICB9IGVsc2UgaWYgKHBraWQgIT09IGRldmljZXNXaXRoVGhlU2FtZU5hbWVbMF0ucGtpZCkgeyAvLyBGb3IgdXBkYXRpbmcgZGV2aWNlLCBhdm9pZCB2YWxpZGF0aW5nIHdpdGggaXRzZWxmXHJcbiAgICAgICAgICByZXR1cm4ge2R1cGxpY2F0ZU5hbWVSdWxlOiB0cnVlfTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9O1xyXG4gIH07XHJcblxyXG4gIGNvbmRpdGlvbmFsUmVxdWlyZWQgPSAoZmllbGROYW1lOiBzdHJpbmcsIHJlcXVpcmVkQ29uZGl0aW9uVmFsdWVzOiBhbnlbXSkgPT4ge1xyXG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcclxuICAgICAgY29uc3QgcGFyZW50MSA9IGNvbnRyb2wucGFyZW50O1xyXG4gICAgICBpZiAoIXBhcmVudDEgfHwgIXBhcmVudDEuZ2V0KGZpZWxkTmFtZSkgfHwgIXBhcmVudDEuZ2V0KGZpZWxkTmFtZSkudmFsdWUpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHJlcXVpcmVkQ29uZGl0aW9uVmFsdWVzLmluY2x1ZGVzKHBhcmVudDEuZ2V0KGZpZWxkTmFtZSkudmFsdWUpICYmICFjb250cm9sLnZhbHVlKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIHJlcXVpcmVkOiB0cnVlXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH07XHJcbiAgfTtcclxuXHJcbiAgY29uZGl0aW9uYWxSZXF1aXJlZEZvckdyb3VwQWRtaW4gPSAoZmllbGROYW1lOiBzdHJpbmcsIHJlcXVpcmVkQ29uZGl0aW9uVmFsdWVzOiBhbnlbXSkgPT4ge1xyXG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcclxuICAgICAgY29uc3QgcGFyZW50MSA9IGNvbnRyb2wucGFyZW50O1xyXG4gICAgICBpZiAoIXBhcmVudDEgfHwgIXBhcmVudDEuZ2V0KGZpZWxkTmFtZSkgfHwgIXBhcmVudDEuZ2V0KGZpZWxkTmFtZSkudmFsdWUgfHwgIXBhcmVudDEuZ2V0KGZpZWxkTmFtZSkudmFsdWUudHlwZSkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICBpZiAocmVxdWlyZWRDb25kaXRpb25WYWx1ZXMuaW5jbHVkZXMocGFyZW50MS5nZXQoZmllbGROYW1lKS52YWx1ZS50eXBlKSAmJiAhY29udHJvbC52YWx1ZSkge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICByZXF1aXJlZDogdHJ1ZVxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9O1xyXG4gIH07XHJcblxyXG4gIGNvbmRpdGlvbmFsU2l0ZUdyb3VwQ2hlY2tGb3JHcm91cEFkbWluID0gKGZpZWxkTmFtZTogc3RyaW5nLCByZXF1aXJlZENvbmRpdGlvblZhbHVlczogYW55W10pID0+IHtcclxuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XHJcbiAgICAgIGNvbnN0IHBhcmVudDEgPSBjb250cm9sLnBhcmVudDtcclxuICAgICAgaWYgKCFwYXJlbnQxIHx8ICFwYXJlbnQxLmdldChmaWVsZE5hbWUpIHx8ICFwYXJlbnQxLmdldChmaWVsZE5hbWUpLnZhbHVlIHx8ICFwYXJlbnQxLmdldChmaWVsZE5hbWUpLnZhbHVlLnR5cGUpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHBhcmVudDEuZ2V0KGZpZWxkTmFtZSkudmFsdWUgJiYgcmVxdWlyZWRDb25kaXRpb25WYWx1ZXMuaW5jbHVkZXMocGFyZW50MS5nZXQoZmllbGROYW1lKS52YWx1ZS50eXBlKSAmJlxyXG4gICAgICAgIHBhcmVudDEuZ2V0KCdzaXRlR3JvdXAnKSAmJiBwYXJlbnQxLmdldCgnc2l0ZUdyb3VwJykudmFsdWUgJiZcclxuICAgICAgICBwYXJlbnQxLmdldCgnc2l0ZUdyb3VwJykudmFsdWUuc2l0ZUdyb3VwTWVtYmVycyAmJiBwYXJlbnQxLmdldCgnc2l0ZUdyb3VwJykudmFsdWUuc2l0ZUdyb3VwTWVtYmVycy5sZW5ndGggPCAxKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIGhhc1NpdGVHcm91cEVycm9yOiB0cnVlXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH07XHJcbiAgfTtcclxuXHJcbiAgcmVxdWlyZWRJZkZpZWxkSXNFbXB0eUZvckJMRiA9IChmaWVsZE5hbWU6IGFueSkgPT4ge1xyXG4gICAgY29uc3QgREFURV9QQVRURVJOID0gJ14oMFsxLTldfDFbMDEyXSlbLSBcXC8uXSgwWzEtOV18WzEyXVswLTldfDNbMDFdKVstIFxcLy5dKDE5fDIwKVxcZFxcZCQnO1xyXG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcclxuICAgICAgY29uc3QgcGFyZW50ID0gY29udHJvbC5wYXJlbnQ7XHJcbiAgICAgIGlmICghcGFyZW50IHx8ICFwYXJlbnQuZ2V0KGZpZWxkTmFtZSkpIHtcclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgfVxyXG4gICAgICBpZiAoIXBhcmVudC5nZXQoZmllbGROYW1lKS52YWx1ZSAmJiAhY29udHJvbC52YWx1ZSkge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICByZXF1aXJlZEVpdGhlcjogdHJ1ZSxcclxuICAgICAgICAgIHJlcXVpcmVkQkxGRE46IHRydWVcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfTtcclxuICB9O1xyXG5cclxuXHJcbiAgdmFsaWREYXRlID0gKGZpZWxkTmFtZTogc3RyaW5nKSA9PiB7XHJcblxyXG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcclxuICAgICAgY29uc3QgcGFyZW50ID0gY29udHJvbC5wYXJlbnQ7XHJcbiAgICAgIGNvbnN0IHJ1bGVUZXh0ID0gJ14oMFsxLTldfDFbMDEyXSlbLSBcXC8uXSgwWzEtOV18WzEyXVswLTldfDNbMDFdKVstIFxcLy5dKDE5fDIwKVxcZFxcZCQnO1xyXG4gICAgICBjb25zdCBydWxlID0gbmV3IFJlZ0V4cChydWxlVGV4dCwgJ2cnKTtcclxuICAgICAgY29uc3QgdmFsID0gY29udHJvbC52YWx1ZSAmJiBjb250cm9sLnZhbHVlLmdldERhdGUoKTtcclxuICAgICAgaWYgKHJ1bGUgJiYgIXJ1bGUudGVzdCh2YWwpKSB7XHJcbiAgICAgICAgcmV0dXJuIHtwYXR0ZXJuOiB0cnVlfTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH07XHJcbiAgfTtcclxuXHJcblxyXG4gIG1hdGNoT3B0aW9uID0gKG9wdGlvblR5cGU6IHN0cmluZywgbGlzdD86IGFueSwgaXNGdWxsTGlzdD86IGJvb2xlYW4pID0+IHtcclxuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XHJcbiAgICAgIGlmICghY29udHJvbC52YWx1ZSB8fCBjb250cm9sLnZhbHVlID09PSBEZXZpY2VUeXBlcy5DVElfUk9VVEVfUE9JTlQpIHtcclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgfVxyXG4gICAgICBsZXQgb3B0aW9uTGlzdCA9IGxpc3QgfHwgdGhpcy5nZXRPcHRpb25zTGlzdChvcHRpb25UeXBlKTtcclxuICAgICAgaWYgKG9wdGlvbkxpc3QgJiYgb3B0aW9uTGlzdC5sZW5ndGgpIHtcclxuICAgICAgICBpZiAoIWlzRnVsbExpc3QgJiYgb3B0aW9uVHlwZSA9PT0gJ2RpcmVjdG9yeU51bWJlcnMnKSB7XHJcbiAgICAgICAgICBvcHRpb25MaXN0ID0gb3B0aW9uTGlzdC5tYXAoKHN0cjogc3RyaW5nKSA9PiBzdHIuaW5kZXhPZignICcpID4gLTEgPyBzdHIuc3Vic3RyaW5nKDAsIHN0ci5pbmRleE9mKCcgJykpIDogc3RyKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKCFvcHRpb25MaXN0LmluY2x1ZGVzKGNvbnRyb2wudmFsdWUpKSB7XHJcbiAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBtYXRjaE9wdGlvbnM6IHRydWVcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfTtcclxuICB9O1xyXG5cclxuICBjb25maWRlbnRpYWxBY2Nlc3NMZXZlbCA9IChjb25maWRlbnRpYWxBY2Nlc3NNb2RlOiBzdHJpbmcpID0+IHtcclxuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XHJcbiAgICAgIGlmICghY29udHJvbC52YWx1ZSAmJiAhY29uZmlkZW50aWFsQWNjZXNzTW9kZSkge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICghY29udHJvbC52YWx1ZSkge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICByZXF1aXJlZDogdHJ1ZVxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9O1xyXG4gIH07XHJcblxyXG4gIG5vUmVzdWx0RE4gPSAob3B0aW9uVHlwZTogc3RyaW5nLCBsaXN0PzogYW55KSA9PiB7XHJcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoIWNvbnRyb2wudmFsdWUgfHwgbGlzdCA9PT0gbnVsbCkge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChsaXN0ICYmIGxpc3QubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIG5vUmVzdWx0RE5zOiB0cnVlXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH07XHJcbiAgfTtcclxuXHJcbiAgbWF0Y2hFeHRlbnNpb25PcHRpb24gPSAob3B0aW9uVHlwZTogc3RyaW5nLCBvcHRpb25MaXN0PzogYW55KSA9PiB7XHJcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoIWNvbnRyb2wudmFsdWUpIHtcclxuICAgICAgICByZXR1cm4gY29udHJvbC52YWx1ZTtcclxuICAgICAgfVxyXG4gICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgIGNvbnN0IG5ld0xpc3QgPSBbXTtcclxuICAgICAgaWYgKG9wdGlvbkxpc3QgJiYgb3B0aW9uTGlzdC5sZW5ndGgpIHtcclxuICAgICAgICBvcHRpb25MaXN0LmZvckVhY2goKGxpc3Q6IGFueSkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgbmV3T3B0aW9uTGlzdCA9IHRoaXMuZ2V0TWF0Y2hFeGlzdGluZ1ZtTGluZVZhbHVlKGxpc3QpO1xyXG4gICAgICAgICAgbmV3TGlzdC5wdXNoKG5ld09wdGlvbkxpc3QpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgICBpZiAobmV3TGlzdCAmJiAhbmV3TGlzdC5pbmNsdWRlcyhjb250cm9sLnZhbHVlKSkge1xyXG4gICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgbWF0Y2hPcHRpb25zOiB0cnVlXHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIGlmICghb3B0aW9uTGlzdCB8fCAhb3B0aW9uTGlzdC5sZW5ndGgpIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgbWF0Y2hPcHRpb25zOiB0cnVlXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH07XHJcbiAgfTtcclxuXHJcbiAgcHVibGljIGdldE1hdGNoRXhpc3RpbmdWbUxpbmVWYWx1ZShkbldpdGhUeXBlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgaW5kID0gZG5XaXRoVHlwZS5pbmRleE9mKCdUeXBlOicpO1xyXG4gICAgbGV0IGRuID0gZG5XaXRoVHlwZTtcclxuICAgIGlmIChpbmQgPiAtMSkge1xyXG4gICAgICBkbiA9IGRuV2l0aFR5cGUuc2xpY2UoMCwgaW5kKTtcclxuICAgICAgZG4gPSBkbi50cmltKCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZG47XHJcbiAgfVxyXG5cclxuICByZXF1aXJlZEVpdGhlckZvclZtRXh0ZW5zaW9uID0gKGZpZWxkTmFtZTE6IHN0cmluZywgZmllbGROYW1lMjogc3RyaW5nKSA9PiB7XHJcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoIWNvbnRyb2wucGFyZW50KSB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgbWF0Y2hDb250cm9sMSA9IGNvbnRyb2wucGFyZW50LmdldChmaWVsZE5hbWUxKS52YWx1ZTtcclxuICAgICAgY29uc3QgbWF0Y2hDb250cm9sMiA9IGNvbnRyb2wucGFyZW50LmdldChmaWVsZE5hbWUyKS52YWx1ZTtcclxuICAgICAgaWYgKCFtYXRjaENvbnRyb2wxICYmICFtYXRjaENvbnRyb2wyKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIHJlcXVpcmVkRWl0aGVyRm9yVm1FeHRlbnNpb246IHRydWVcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfTtcclxuICB9O1xyXG5cclxuICByZXF1aXJlZEVpdGhlck9uZSA9IChmaWVsZE5hbWUxOiBzdHJpbmcsIGZpZWxkTmFtZTI6IHN0cmluZykgPT4ge1xyXG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcclxuICAgICAgaWYgKCFjb250cm9sLnBhcmVudCkge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IG1hdGNoQ29udHJvbDEgPSBjb250cm9sLnBhcmVudC5nZXQoZmllbGROYW1lMSkgJiYgY29udHJvbC5wYXJlbnQuZ2V0KGZpZWxkTmFtZTEpLnZhbHVlO1xyXG4gICAgICBjb25zdCBtYXRjaENvbnRyb2wyID0gY29udHJvbC5wYXJlbnQuZ2V0KGZpZWxkTmFtZTIpICYmIGNvbnRyb2wucGFyZW50LmdldChmaWVsZE5hbWUyKS52YWx1ZTtcclxuICAgICAgaWYgKCFtYXRjaENvbnRyb2wxICYmICFtYXRjaENvbnRyb2wyKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIHJlcXVpcmVkRWl0aGVyT25lOiB0cnVlXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH07XHJcbiAgfTtcclxuXHJcbiAgcmVxdWlyZWRCeVZhbHVlID0gKGZpZWxkTmFtZTogc3RyaW5nLCByZXF1ZXN0ZWRGaWVsZFZhbDogYW55KSA9PiB7XHJcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoIWNvbnRyb2wgfHwgIWNvbnRyb2wucGFyZW50KSB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgZmllbGRWYWwgPSBjb250cm9sLnBhcmVudC5nZXQoZmllbGROYW1lKSAmJiBjb250cm9sLnBhcmVudC5nZXQoZmllbGROYW1lKS52YWx1ZTtcclxuICAgICAgaWYgKGZpZWxkVmFsICYmIGZpZWxkVmFsID09PSByZXF1ZXN0ZWRGaWVsZFZhbCAmJiAhY29udHJvbC52YWx1ZSkge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICByZXF1aXJlZDogdHJ1ZVxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9O1xyXG4gIH07XHJcblxyXG4gIE9uZUV4dGVuc2lvbkVtcHR5ID0gKGZpZWxkTmFtZTE6IHN0cmluZywgZmllbGROYW1lMjogc3RyaW5nKSA9PiB7XHJcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoIWNvbnRyb2wucGFyZW50KSB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgbWF0Y2hDb250cm9sMSA9IGNvbnRyb2wucGFyZW50LmdldChmaWVsZE5hbWUxKS52YWx1ZTtcclxuICAgICAgY29uc3QgbWF0Y2hDb250cm9sMiA9IGNvbnRyb2wucGFyZW50LmdldChmaWVsZE5hbWUyKS52YWx1ZTtcclxuICAgICAgaWYgKG1hdGNoQ29udHJvbDEgJiYgbWF0Y2hDb250cm9sMikge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICBPbmVFeHRlbnNpb25Jc0VtcHR5OiB0cnVlXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH07XHJcbiAgfTtcclxuXHJcbiAgcmVxdWlyZWRCeUNvbmRpdGlvbiA9IChyZXF1aXJlZEJ5OiBzdHJpbmcsIGZpZWxkTmFtZTogYW55KSA9PiB7XHJcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoIWNvbnRyb2wucGFyZW50KSB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgcmVxdWlyZWRCeUNvbnRyb2wgPSBjb250cm9sLnBhcmVudC5nZXQocmVxdWlyZWRCeSkudmFsdWU7XHJcbiAgICAgIGNvbnN0IHJlcXVpcmVkQ29udHJvbCA9IGNvbnRyb2wucGFyZW50LmdldChmaWVsZE5hbWUpLnZhbHVlO1xyXG4gICAgICBpZiAocmVxdWlyZWRCeUNvbnRyb2wgJiYgIXJlcXVpcmVkQ29udHJvbCkge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICByZXF1aXJlZDogdHJ1ZVxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9O1xyXG4gIH07XHJcblxyXG4gIHByaXZhdGUgZ2V0T3B0aW9uc0xpc3QodG9rZW46IHN0cmluZyk6IHN0cmluZ1tdIHtcclxuICAgIHN3aXRjaCAodG9rZW4pIHtcclxuICAgICAgY2FzZSAnY3NzJzpcclxuICAgICAgY2FzZSAncmVyb3V0ZUNzcyc6XHJcbiAgICAgIGNhc2UgJ2NhbGxpbmdTZWFyY2hTcGFjZSc6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l0ZVNldHRpbmdzU2VydmljZS5jYWxsaW5nU2VhcmNoU3BhY2VUeXBlcztcclxuICAgICAgY2FzZSAncmVyb3V0aW5nQ3NzJzpcclxuICAgICAgICByZXR1cm4gdGhpcy5zaXRlU2V0dGluZ3NTZXJ2aWNlLnNpdGVEZWZhdWx0cyAmJiB0aGlzLnNpdGVTZXR0aW5nc1NlcnZpY2Uuc2l0ZURlZmF1bHRzLmNzc0ZpbHRlcjtcclxuICAgICAgY2FzZSAnZGV2aWNlVHlwZSc6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l0ZVNldHRpbmdzU2VydmljZS5kZXZpY2VUeXBlcztcclxuICAgICAgY2FzZSAncm91dGVQYXJ0aXRpb24nOlxyXG4gICAgICAgIHJldHVybiB0aGlzLnNpdGVTZXR0aW5nc1NlcnZpY2Uucm91dGVQYXJ0aXRpb25OYW1lcztcclxuICAgICAgY2FzZSAncm91dGVQYXJ0aXRpb25GaWx0ZXJlZCc6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l0ZVNldHRpbmdzU2VydmljZS5maWx0ZXJlZFJvdXRlUGFydGl0aW9uTmFtZXM7XHJcbiAgICAgIGNhc2UgJ2RldmljZVBvb2xzJzpcclxuICAgICAgICByZXR1cm4gdGhpcy5zaXRlU2V0dGluZ3NTZXJ2aWNlLmRldmljZVBvb2xzO1xyXG4gICAgICBjYXNlICdhbGxSb3V0ZVBhcnRpdGlvbnMnOlxyXG4gICAgICAgIHJldHVybiB0aGlzLnNpdGVTZXR0aW5nc1NlcnZpY2UuYWxsUm91dGVQYXJ0aXRpb25OYW1lcztcclxuICAgICAgY2FzZSAnZGlyZWN0b3J5TnVtYmVycyc6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l0ZVNldHRpbmdzU2VydmljZS5kaXJlY3RvcnlOdW1iZXJzO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiBbXTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGF1dG9jb21wbGV0ZVR5cGUoY29udHJvbDogYW55KSB7XHJcbiAgICBpZiAoIWNvbnRyb2wudmFsdWUpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgICBpZiAodHlwZW9mIGNvbnRyb2wudmFsdWUgIT09ICdvYmplY3QnICYmIGNvbnRyb2wudmFsdWUgIT09ICcnKSB7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgc3RyaW5nRW50ZXJlZDogdHJ1ZVxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuXHJcbiAgcGFzc3dvcmQoY29udHJvbDogYW55KSB7XHJcbiAgICBjb25zdCBydWxlTnVtZXJpYyA9IG5ldyBSZWdFeHAoL1xcZCsvLCAnZycpO1xyXG4gICAgY29uc3QgcnVsZUNhcGl0YWxzID0gbmV3IFJlZ0V4cCgvW0EtWl0rLywgJ2cnKTtcclxuICAgIGNvbnN0IHJ1bGVTbWFsbCA9IG5ldyBSZWdFeHAoL1thLXpdKy8sICdnJyk7XHJcbiAgICBjb25zdCBydWxlU3BlY2lhbCA9IG5ldyBSZWdFeHAoL1shQCMkJSZcXC89XFw/X1xcLiw6O1xcLVxcXFwrXSsvLCAnZycpO1xyXG5cclxuICAgIGNvbnN0IGhhc051bWVyaWMgPSArcnVsZU51bWVyaWMudGVzdChjb250cm9sLnZhbHVlKTtcclxuICAgIGNvbnN0IGhhc0NhcGl0YWxzID0gK3J1bGVDYXBpdGFscy50ZXN0KGNvbnRyb2wudmFsdWUpO1xyXG4gICAgY29uc3QgaGFzU21hbGwgPSArcnVsZVNtYWxsLnRlc3QoY29udHJvbC52YWx1ZSk7XHJcbiAgICBjb25zdCBoYXNTcGVjaWFsID0gK3J1bGVTcGVjaWFsLnRlc3QoY29udHJvbC52YWx1ZSk7XHJcblxyXG4gICAgaWYgKGhhc051bWVyaWMgKyBoYXNDYXBpdGFscyArIGhhc1NtYWxsICsgaGFzU3BlY2lhbCA8IDMpIHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICB3ZWFrUGFzc3dvcmQ6IHRydWVcclxuICAgICAgfTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIHZlcmlmeUF1dG9BbnN3ZXIoY29udHJvbDogYW55KSB7XHJcbiAgICBpZiAoIWNvbnRyb2w/LnZhbHVlIHx8IGNvbnRyb2wudmFsdWUubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gICAgbGV0IGF1dG9BbnN3ZXJFcnJvckxpbmUgPSBudWxsO1xyXG4gICAgaWYgKGNvbnRyb2wucGFyZW50ICYmIGNvbnRyb2wucGFyZW50LnBhcmVudCAmJiBjb250cm9sLnBhcmVudC5wYXJlbnQucGFyZW50ICYmIGNvbnRyb2wucGFyZW50LnBhcmVudC5wYXJlbnQucGFyZW50KSB7XHJcbiAgICAgIGNvbnN0IGNvbnRyb2xTTlIgPSBjb250cm9sLnBhcmVudDtcclxuICAgICAgY29uc3QgY29udHJvbFVzZXIgPSBjb250cm9sLnBhcmVudC5wYXJlbnQucGFyZW50LnBhcmVudDtcclxuICAgICAgY29uc3QgbGluZUFzc29jaWF0aW9ucyA9IGNvbnRyb2xTTlIuZ2V0KCdsaW5lQXNzb2NpYXRpb25zJyk7XHJcbiAgICAgIGNvbnN0IGxpbmVzID0gY29udHJvbFVzZXIuZ2V0KCdsaW5lcycpO1xyXG4gICAgICBpZiAobGluZXMpIHtcclxuICAgICAgICBsaW5lQXNzb2NpYXRpb25zLnZhbHVlLmZvckVhY2goKGxpbmVBc3NvY2lhdGlvbjogYW55KSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBhdXRvQW5zd2VyTGluZSA9IGxpbmVzLmNvbnRyb2xzLmZpbmQoKGxpbmU6IGFueSkgPT4gbGluZS5nZXQoJ2RpcmVjdG9yeU51bWJlcicpLnZhbHVlLmRpcmVjdG9yeU51bWJlciA9PT0gbGluZUFzc29jaWF0aW9uLmRpcmVjdG9yeU51bWJlciAmJiBsaW5lLmdldCgnZGlyZWN0b3J5TnVtYmVyJykudmFsdWUucm91dGVQYXJ0aXRpb25OYW1lID09PSBsaW5lQXNzb2NpYXRpb24ucm91dGVQYXJ0aXRpb25OYW1lXHJcbiAgICAgICAgICAgICYmIGxpbmUuZ2V0KCdhdXRvQW5zd2VyJykudmFsdWUgIT09ICdBdXRvIEFuc3dlciBPZmYnKTtcclxuICAgICAgICAgIGlmIChhdXRvQW5zd2VyTGluZSkge1xyXG4gICAgICAgICAgICBhdXRvQW5zd2VyRXJyb3JMaW5lID0ge1xyXG4gICAgICAgICAgICAgIGF1dG9BbnN3ZXJFcnJvckxpbmU6IGxpbmVBc3NvY2lhdGlvbi5kaXJlY3RvcnlOdW1iZXJcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBhdXRvQW5zd2VyRXJyb3JMaW5lO1xyXG4gIH1cclxuXHJcbiAgdmVyaWZ5QmVnaW5FbmRUaW1lKGNvbnRyb2w6IGFueSkge1xyXG4gICAgY29uc3QgcGFyZW50ID0gY29udHJvbC5wYXJlbnQ7XHJcbiAgICBpZiAoIXBhcmVudCB8fCAhcGFyZW50LmdldCgnaXNBY3RpdmUnKSB8fCAhcGFyZW50LmdldCgnYWxsRGF5JykgfHwgIXBhcmVudC5nZXQoJ2Zyb20nKSB8fCAhcGFyZW50LmdldCgndG8nKSkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAocGFyZW50LmdldCgnaXNBY3RpdmUnKS52YWx1ZSkge1xyXG4gICAgICBpZiAoIXBhcmVudC5nZXQoJ2FsbERheScpLnZhbHVlKSB7XHJcbiAgICAgICAgaWYgKCFwYXJlbnQuZ2V0KCdmcm9tJykudmFsdWUgfHwgcGFyZW50LmdldCgnZnJvbScpLnZhbHVlID09PSAnTm8gT2ZmaWNlIEhvdXJzJ1xyXG4gICAgICAgICAgfHwgIXBhcmVudC5nZXQoJ3RvJykudmFsdWUgfHwgcGFyZW50LmdldCgndG8nKS52YWx1ZSA9PT0gJ05vIE9mZmljZSBIb3VycydcclxuICAgICAgICAgIHx8IHBhcmVudC5nZXQoJ2Zyb20nKS52YWx1ZSA+IHBhcmVudC5nZXQoJ3RvJykudmFsdWUpIHtcclxuICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGZyb21HcmVhdGVyVGhhblRvOiB0cnVlXHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgdGltZShjb250cm9sOiBhbnkpIHtcclxuICAgIGlmIChjb250cm9sLnZhbHVlICYmICF0aW1lUmVnZXgudGVzdChjb250cm9sLnZhbHVlKSkge1xyXG4gICAgICByZXR1cm4ge3RpbWVGb3JtYXQ6IHRydWV9O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuXHJcbiAgcGluTXVsdGlDaGFyYWN0ZXJDaGVjayA9IChmaWVsZE5hbWU6IHN0cmluZykgPT4ge1xyXG4gICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcclxuICAgICAgaWYgKCFjb250cm9sLnBhcmVudCkge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IG1hdGNoaW5nQ29udHJvbCA9IGNvbnRyb2wucGFyZW50LmdldChmaWVsZE5hbWUpO1xyXG4gICAgICBjb25zdCBydWxlTXVsdGlDaGFyYWN0ZXIgPSBuZXcgUmVnRXhwKCcoWzAtOV0pXFxcXDF7Mn0nKTtcclxuICAgICAgaWYgKG1hdGNoaW5nQ29udHJvbC52YWx1ZSkge1xyXG4gICAgICAgIGNvbnN0IGhhc011bHRpQ2hhcmFjdGVyID0gcnVsZU11bHRpQ2hhcmFjdGVyLnRlc3QobWF0Y2hpbmdDb250cm9sLnZhbHVlKTtcclxuICAgICAgICBpZiAoaGFzTXVsdGlDaGFyYWN0ZXIpIHtcclxuICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIG11bHRpQ2hhcmFjdGVyOiB0cnVlXHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfTtcclxuICB9O1xyXG5cclxuICBwaW5Db25zZWN1dGl2ZU51bWJlckNoZWNrID0gKGZpZWxkTmFtZTogc3RyaW5nKSA9PiB7XHJcbiAgICAvLyBAdHMtaWdub3JlXHJcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoIWNvbnRyb2wucGFyZW50KSB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgbWF0Y2hpbmdDb250cm9sID0gY29udHJvbC5wYXJlbnQuZ2V0KGZpZWxkTmFtZSk7XHJcbiAgICAgIGNvbnN0IHN0clRvQ2hlY2sgPSBtYXRjaGluZ0NvbnRyb2wudmFsdWU7XHJcbiAgICAgIGlmIChzdHJUb0NoZWNrICYmIHN0clRvQ2hlY2subGVuZ3RoID4gMSkge1xyXG4gICAgICAgIGNvbnN0IHJlc0FzYyA9IHRoaXMucGluT3JkZXJDaGVjayhzdHJUb0NoZWNrKTtcclxuICAgICAgICBpZiAocmVzQXNjID09PSB0cnVlKSB7XHJcbiAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBjb25zZWN1dGl2ZU51bWJlcnM6IHRydWVcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gIH07XHJcblxyXG5cclxuICBwaW5PcmRlckNoZWNrKHN0cjogc3RyaW5nKTogYW55IHtcclxuICAgIGlmIChzdHIpIHtcclxuICAgICAgY29uc3QgYXJyX251bSA9ICgnJyArIHN0cikuc3BsaXQoJycpO1xyXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFycl9udW0ubGVuZ3RoIC0gMjsgaSsrKSB7XHJcbiAgICAgICAgY29uc3QgbnVtMSA9IHBhcnNlSW50KGFycl9udW1baV0pO1xyXG4gICAgICAgIGNvbnN0IG51bTIgPSBwYXJzZUludChhcnJfbnVtW2kgKyAxXSk7XHJcbiAgICAgICAgY29uc3QgbnVtMyA9IHBhcnNlSW50KGFycl9udW1baSArIDJdKTtcclxuICAgICAgICBpZiAoKG51bTIgLSBudW0xKSA9PT0gMSAmJiAobnVtMyAtIG51bTIgPT09IG51bTIgLSBudW0xKSkge1xyXG4gICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICBwaW5NYWlsYm94RXh0ZW5zaW9uQ2hlY2sgPSAoZmllbGROYW1lOiBzdHJpbmcsIGV4dGVuc2lvbjogc3RyaW5nKSA9PiB7XHJcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoIWNvbnRyb2wucGFyZW50KSB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgbWF0Y2hpbmdDb250cm9sID0gY29udHJvbC5wYXJlbnQuZ2V0KGZpZWxkTmFtZSk7XHJcbiAgICAgIGNvbnN0IHN0clRvQ2hlY2sgPSBtYXRjaGluZ0NvbnRyb2wudmFsdWU7XHJcbiAgICAgIGlmIChzdHJUb0NoZWNrID09PSBleHRlbnNpb24gfHwgc3RyVG9DaGVjay5pbmNsdWRlcyhleHRlbnNpb24pKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIG1haWxib3hFeHRlbnNpb246IHRydWVcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfTtcclxuICB9O1xyXG5cclxuICBpc0l0ZW1BbHJlYWR5SW5MaXN0KGl0ZW06IGFueSwgbGlzdDogYW55KTogYm9vbGVhbiB7XHJcbiAgICBpZiAoIWl0ZW0gfHwgIWxpc3QgfHwgIWxpc3QubGVuZ3RoKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICAgIGZvciAoY29uc3QgbGlzdEl0ZW0gb2YgbGlzdCkge1xyXG4gICAgICBpZiAoaXRlbS5lcXVhbHMobGlzdEl0ZW0pKSB7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbn1cclxuIl19
|
|
760
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItZGV2aWNlLW1hbmFnZS9zcmMvc2VydmljZXMvdmFsaWRhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN6RyxPQUFPLEVBQVUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQUV6RCxNQUFNLGNBQWMsR0FBRyxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUM3QyxNQUFNLFFBQVEsR0FBRyxJQUFJLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztBQUMzQyxNQUFNLFNBQVMsR0FBRyxJQUFJLE1BQU0sQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO0FBR3JFLE1BQU0sT0FBTyxpQkFBaUI7SUFFNUIsWUFDVSxtQkFBd0M7UUFBeEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQTZIbEQsaUJBQVksR0FBRyxDQUFDLFNBQWlCLEVBQUUsRUFBRTtZQUNuQyxPQUFPLENBQUMsT0FBWSxFQUFFLEVBQUU7Z0JBQ3RCLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFO29CQUNwQixPQUFPLElBQUksQ0FBQztpQkFDYjtnQkFDRCxNQUFNLGVBQWUsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDdEQsSUFBSSxlQUFlLENBQUMsS0FBSyxJQUFJLGVBQWUsQ0FBQyxLQUFLLEtBQUssT0FBTyxDQUFDLEtBQUssRUFBRTtvQkFDcEUsT0FBTzt3QkFDTCxZQUFZLEVBQUUsSUFBSTtxQkFDbkIsQ0FB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SSxDQUFDLElBQUksR0FBRyxJQUFJLEtBQUssSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFO29CQUN4RCxPQUFPLElBQUksQ0FBQztpQkFDYjthQUNGO1lBQ0QsT0FBTyxLQUFLLENBQUM7U0FDZDtJQUNILENBQUM7SUFtQkQsbUJBQW1CLENBQUMsSUFBUyxFQUFFLElBQVM7UUFDdEMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDbEMsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUNELEtBQUssTUFBTSxRQUFRLElBQUksSUFBSSxFQUFFO1lBQzNCLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDekIsT0FBTyxJQUFJLENBQUM7YUFDYjtTQUNGO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOzsrR0FqekJVLGlCQUFpQjttSEFBakIsaUJBQWlCOzRGQUFqQixpQkFBaUI7a0JBRDdCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTaXRlU2V0dGluZ3NTZXJ2aWNlIH0gZnJvbSAnLi9zaXRlLXNldHRpbmdzLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGV2aWNlVHlwZXMsIE1haWxib3hRdW90YXNUeXBlLCBTcGVlZERpYWxUeXBlLCBWTU5vdGlmaWNhdGlvbnNUeXBlcyB9IGZyb20gJy4vLi4vY2xhc3Nlcy90eXBlcyc7XG5pbXBvcnQgeyBEZXZpY2UsIERldmljZUtpbmQgfSBmcm9tICcuLy4uL2NsYXNzZXMvZGV2aWNlJztcblxuY29uc3Qgc3BlZWREaWFsUmVnZXggPSBuZXcgUmVnRXhwKCdeW15cIl0qJCcpO1xuY29uc3QgQkxGUmVnZXggPSBuZXcgUmVnRXhwKCdeW15cIj48JiVdKiQnKTtcbmNvbnN0IHRpbWVSZWdleCA9IG5ldyBSZWdFeHAoJ14oWzAtMV1bMC05XXxbMl1bMC0zXSk6KFswLTVdWzAtOV0pJCcpO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVmFsaWRhdGlvblNlcnZpY2Uge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc2l0ZVNldHRpbmdzU2VydmljZTogU2l0ZVNldHRpbmdzU2VydmljZSxcbiAgKSB7XG4gIH1cblxuICBlMTY0TWFza0xhYmVsKGNvbnRyb2w6IGFueSkge1xuICAgIGNvbnN0IHJ1bGVUZXh0ID0gYF5bMC05KiMrWF17MCwyNH0kYDtcbiAgICBjb25zdCBydWxlID0gbmV3IFJlZ0V4cChydWxlVGV4dCwgJ2cnKTtcbiAgICBpZiAoY29udHJvbC52YWx1ZSAmJiBydWxlICYmICFydWxlLnRlc3QoY29udHJvbC52YWx1ZSkpIHtcbiAgICAgIHJldHVybiB7ZTE2NE1hc2tSdWxlOiB7cnVsZTogcnVsZVRleHR9fTtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBpbmRleChjb250cm9sOiBhbnkpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHBhcnNlSW50KGNvbnRyb2wudmFsdWUpO1xuICAgIGlmICghdmFsdWUpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBjb25zdCBwYXR0ZXJuID0gJ15bKzAtOV0qJCc7XG4gICAgaWYgKHZhbHVlICYmICFOdW1iZXIuaXNJbnRlZ2VyKHZhbHVlKSB8fCB2YWx1ZSA8IDEgfHwgdmFsdWUgPiAxOTkpIHtcbiAgICAgIHJldHVybiB7aW5kZXhSdWxlOiB0cnVlfTtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBkaXNwbGF5TGFiZWwoY29udHJvbDogYW55KSB7XG4gICAgY29uc3QgcnVsZVRleHQgPSBgXlteXCJcIlwiXCIlJjw+XXswLDMwfSRgO1xuICAgIGNvbnN0IHJ1bGUgPSBuZXcgUmVnRXhwKHJ1bGVUZXh0LCAnZycpO1xuICAgIGlmIChydWxlICYmICFydWxlLnRlc3QoY29udHJvbC52YWx1ZSkpIHtcbiAgICAgIHJldHVybiB7bGFiZWxSdWxlOiB7cnVsZTogcnVsZVRleHQsIGNvdW50OiAzMH19O1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG5cblxuICBkaXNwbGF5TGFiZWxBc2NpaShjb250cm9sOiBhbnkpIHtcbiAgICBjb25zdCBydWxlVGV4dCA9ICdeW2EtekEtWjAtOSAhIyRcXCcoKSorLC4vOjs9P0BcXFxcXl9gfX4tXXswLDMwfSQnO1xuICAgIGNvbnN0IHJ1bGUgPSBuZXcgUmVnRXhwKHJ1bGVUZXh0LCAnZycpO1xuICAgIGlmIChydWxlICYmICFydWxlLnRlc3QoY29udHJvbC52YWx1ZSkpIHtcbiAgICAgIHJldHVybiB7bGFiZWxSdWxlOiB7cnVsZTogcnVsZVRleHQsIGNvdW50OiAzMH19O1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJlcXVpcmVkRm9yU3BlZWREaWFsUG9zaXRpb24odHlwZTogc3RyaW5nKSB7XG5cbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xuICAgICAgY29uc3QgcGFyZW50ID0gY29udHJvbC5wYXJlbnQ7XG4gICAgICBpZiAodHlwZSA9PT0gU3BlZWREaWFsVHlwZS5zbG90QmFzaWMgfHwgIXBhcmVudCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICAgIGlmICghY29udHJvbC52YWx1ZSkge1xuICAgICAgICByZXR1cm4ge3JlcXVpcmVkOiB0cnVlfTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH07XG4gIH1cblxuICBzcGVlZERpYWxEZXN0aW5hdGlvbigpIHtcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xuICAgICAgaWYgKCFjb250cm9sIHx8ICFjb250cm9sLnZhbHVlKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgY29uc3QgbnVtYmVyT3JIb3N0TmFtZUlQID0gJycgK1xuICAgICAgICAnXihbMC05XFxcXCojK1BwQ2NGZixdKykkJyArXG4gICAgICAgICd8JyArXG4gICAgICAgICdeKCcgK1xuICAgICAgICAnKFthLXpBLVowLTldKXsxLDQ3fUAnICtcbiAgICAgICAgJygnICtcbiAgICAgICAgJygoPzpbMC05XXsxLDN9XFxcXC4pezN9WzAtOV17MSwzfSknICtcbiAgICAgICAgJ3wnICtcbiAgICAgICAgJyhbYS16QS1aMC05XVthLXpBLVowLTlcXFxcLV17MSw2MX1bYS16QS1aMC05XVxcXFwuW2EtekEtWl17Mix9KScgK1xuICAgICAgICAnKScgK1xuICAgICAgICAnKSQnO1xuICAgICAgY29uc3QgcnVsZSA9IG5ldyBSZWdFeHAobnVtYmVyT3JIb3N0TmFtZUlQLCAnZycpO1xuICAgICAgaWYgKHJ1bGUgJiYgIXJ1bGUudGVzdChjb250cm9sLnZhbHVlKSkge1xuICAgICAgICByZXR1cm4ge3BhdHRlcm46IHRydWV9O1xuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfTtcblxuICB9XG5cbiAgcmVxdWlyZWRGb3JTcGVlZERpYWxEZXN0aW5hdGlvbih0eXBlOiBzdHJpbmcpIHtcblxuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XG4gICAgICBjb25zdCBwYXJlbnQgPSBjb250cm9sLnBhcmVudDtcbiAgICAgIGlmICgoIXBhcmVudCB8fCAhcGFyZW50LmdldCgnbGFiZWwnKSkgfHwgKHR5cGUgPT09IFNwZWVkRGlhbFR5cGUuc2xvdEJhc2ljICYmICFjb250cm9sLnZhbHVlICYmICFwYXJlbnQuZ2V0KCdsYWJlbCcpLnZhbHVlKSkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH07XG4gIH1cblxuXG4gIGxhYmVsUGF0dGVybkRlcGVuZGluZ09uVHlwZShjb250cm9sOiBhbnkpIHtcbiAgICBjb25zdCBwYXJlbnQgPSBjb250cm9sPy5wYXJlbnQ7XG4gICAgaWYgKCFwYXJlbnQgfHwgIXBhcmVudC5nZXQoJ3R5cGUnKSB8fCAhY29udHJvbC52YWx1ZSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIGNvbnN0IHR5cGUgPSBwYXJlbnQuZ2V0KCd0eXBlJykudmFsdWU7XG4gICAgaWYgKCF0eXBlICYmICFzcGVlZERpYWxSZWdleC50ZXN0KGNvbnRyb2wudmFsdWUpKSB7XG4gICAgICByZXR1cm4ge2xhYmVsUnVsZToge3dyb25nOiAnXCInfX07XG4gICAgfVxuICAgIGlmICh0eXBlICYmICFCTEZSZWdleC50ZXN0KGNvbnRyb2wudmFsdWUpKSB7XG4gICAgICByZXR1cm4ge2xhYmVsUnVsZToge3dyb25nOiAnXCI+PCYlJ319O1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGxhYmVsUGF0dGVybkJMRihjb250cm9sOiBhbnkpIHtcbiAgICBpZiAoY29udHJvbC52YWx1ZSAmJiAhQkxGUmVnZXgudGVzdChjb250cm9sLnZhbHVlKSkge1xuICAgICAgcmV0dXJuIHtsYWJlbFJ1bGU6IHt3cm9uZzogJ1wiPjwmJSd9fTtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBsYWJlbFBhdHRlcm5TcGVlZERpYWwoY29udHJvbDogYW55KSB7XG4gICAgaWYgKGNvbnRyb2w/LnZhbHVlICYmICFzcGVlZERpYWxSZWdleC50ZXN0KGNvbnRyb2wudmFsdWUpKSB7XG4gICAgICByZXR1cm4ge2xhYmVsUnVsZToge3dyb25nOiAnXCInfX07XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgbWF0Y2hDb250cm9sID0gKGZpZWxkTmFtZTogc3RyaW5nKSA9PiB7XG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcbiAgICAgIGlmICghY29udHJvbD8ucGFyZW50KSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgY29uc3QgbWF0Y2hpbmdDb250cm9sID0gY29udHJvbC5wYXJlbnQuZ2V0KGZpZWxkTmFtZSk7XG4gICAgICBpZiAobWF0Y2hpbmdDb250cm9sLnZhbHVlICYmIG1hdGNoaW5nQ29udHJvbC52YWx1ZSAhPT0gY29udHJvbC52YWx1ZSkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG1hdGNoQ29udHJvbDogdHJ1ZVxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfTtcbiAgfTtcblxuICBtYXRjaExlbmd0aCA9IChmaWVsZE5hbWU6IHN0cmluZykgPT4ge1xuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XG4gICAgICBpZiAoIWNvbnRyb2wucGFyZW50IHx8ICFjb250cm9sLnZhbHVlKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgY29uc3QgbWF0Y2hpbmdDb250cm9sID0gY29udHJvbC5wYXJlbnQuZ2V0KGZpZWxkTmFtZSk7XG4gICAgICBpZiAoKCghY29udHJvbC52YWx1ZS5zdGFydHNXaXRoKCcrJykgJiYgIW1hdGNoaW5nQ29udHJvbC52YWx1ZS5zdGFydHNXaXRoKCcrJykpIHx8XG4gICAgICAgIChjb250cm9sLnZhbHVlLnN0YXJ0c1dpdGgoJysnKSAmJiBtYXRjaGluZ0NvbnRyb2wudmFsdWUuc3RhcnRzV2l0aCgnKycpKSkgJiZcbiAgICAgICAgKCghY29udHJvbC52YWx1ZS5zdGFydHNXaXRoKCdcXFxcKycpICYmICFtYXRjaGluZ0NvbnRyb2wudmFsdWUuc3RhcnRzV2l0aCgnXFxcXCsnKSkgfHxcbiAgICAgICAgICAoY29udHJvbC52YWx1ZS5zdGFydHNXaXRoKCdcXFxcKycpICYmIG1hdGNoaW5nQ29udHJvbC52YWx1ZS5zdGFydHNXaXRoKCdcXFxcKycpKSkgJiZcbiAgICAgICAgbWF0Y2hpbmdDb250cm9sLnZhbHVlLmxlbmd0aCAhPT0gY29udHJvbC52YWx1ZS5sZW5ndGgpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBtYXRjaExlbmd0aDogdHJ1ZVxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfTtcbiAgfTtcblxuICBkeW5hbWljTWF4TGVuZ3RoID0gKGxlbmd0aDE6IG51bWJlciwgbGVuZ3RoMjogbnVtYmVyKSA9PiB7XG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcbiAgICAgIGlmICghY29udHJvbC5wYXJlbnQgfHwgIWNvbnRyb2wudmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG4gICAgICBjb25zdCBtYXhMZW5ndGggPSBTdHJpbmcoY29udHJvbC52YWx1ZSkuaW5jbHVkZXMoJ1snKSA/IGxlbmd0aDEgOiBsZW5ndGgyO1xuICAgICAgaWYgKGNvbnRyb2wudmFsdWUubGVuZ3RoID4gbWF4TGVuZ3RoKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgbWF4TGVuZ3RoOiB0cnVlXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9O1xuICB9O1xuXG4gIGJpZ2dlclRoYW4gPSAoZmllbGROYW1lOiBzdHJpbmcpID0+IHtcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xuICAgICAgaWYgKCFjb250cm9sLnBhcmVudCB8fCAhY29udHJvbC52YWx1ZSkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICAgIGNvbnN0IG1hdGNoaW5nQ29udHJvbCA9IGNvbnRyb2wucGFyZW50LmdldChmaWVsZE5hbWUpO1xuICAgICAgaWYgKG1hdGNoaW5nQ29udHJvbC52YWx1ZS5sZW5ndGggPT09IGNvbnRyb2wudmFsdWUubGVuZ3RoICYmIG1hdGNoaW5nQ29udHJvbC52YWx1ZSAmJiBtYXRjaGluZ0NvbnRyb2wudmFsdWUgPiBjb250cm9sLnZhbHVlKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgYmlnZ2VyVGhhbjogdHJ1ZVxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfTtcbiAgfTtcblxuICByZXF1aXJlZEJ5VHlwZSA9IChmaWVsZE5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nKSA9PiB7XG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcbiAgICAgIGlmIChcbiAgICAgICAgZmllbGROYW1lID09PSAncGhvbmVTeXN0ZW0nICYmICh0eXBlID09PSBWTU5vdGlmaWNhdGlvbnNUeXBlc1snUGhvbmUgRGV2aWNlJ10gfHwgdHlwZSA9PT0gVk1Ob3RpZmljYXRpb25zVHlwZXNbJ1BhZ2VyIERldmljZSddKSB8fFxuICAgICAgICBmaWVsZE5hbWUgPT09ICdodG1sVGVtcGxhdGUnICYmIHR5cGUgPT09IFZNTm90aWZpY2F0aW9uc1R5cGVzWydIVE1MIERldmljZSddXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICByZXF1aXJlZDogdHJ1ZVxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfTtcbiAgfTtcblxuICBzbWFsbGVyVGhhblF1b3RhID0gKGZpZWxkTmFtZTogc3RyaW5nLCBxdW90YVR5cGU6IHN0cmluZywgc2Vjb25kUXVvdGFUeXBlOiBzdHJpbmcpID0+IHtcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xuICAgICAgaWYgKCFjb250cm9sLnBhcmVudCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICAgIGNvbnN0IG1hdGNoaW5nQ29udHJvbCA9IGNvbnRyb2wucGFyZW50LmdldChmaWVsZE5hbWUpO1xuICAgICAgY29uc3QgcXVvdGFUeXBlQ29udHJvbCA9IGNvbnRyb2wucGFyZW50LmdldChxdW90YVR5cGUpO1xuICAgICAgY29uc3Qgc2Vjb25kUXVvdGFUeXBlQ29udHJvbCA9IGNvbnRyb2wucGFyZW50LmdldChzZWNvbmRRdW90YVR5cGUpO1xuXG4gICAgICBpZiAocXVvdGFUeXBlQ29udHJvbCAmJiBzZWNvbmRRdW90YVR5cGVDb250cm9sICYmIHNlY29uZFF1b3RhVHlwZUNvbnRyb2wudmFsdWUgPT09IE1haWxib3hRdW90YXNUeXBlLnN5c3RlbSkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cblxuICAgICAgaWYgKHF1b3RhVHlwZUNvbnRyb2wgJiYgcXVvdGFUeXBlQ29udHJvbC52YWx1ZSA9PT0gTWFpbGJveFF1b3Rhc1R5cGUuc3lzdGVtIHx8IG1hdGNoaW5nQ29udHJvbCAmJiBtYXRjaGluZ0NvbnRyb2wudmFsdWUgJiYgcGFyc2VJbnQobWF0Y2hpbmdDb250cm9sLnZhbHVlKSA8IHBhcnNlSW50KGNvbnRyb2wudmFsdWUpKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgc21hbGxlclRoYW46IHRydWVcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH07XG4gIH07XG5cbiAgYmlnZ2VyVGhhblF1b3RhID0gKGZpZWxkTmFtZTogc3RyaW5nLCBxdW90YVR5cGU6IHN0cmluZykgPT4ge1xuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XG4gICAgICBpZiAoIWNvbnRyb2w/LnBhcmVudCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICAgIGNvbnN0IG1hdGNoaW5nQ29udHJvbCA9IGNvbnRyb2wucGFyZW50LmdldChmaWVsZE5hbWUpO1xuICAgICAgY29uc3QgcXVvdGFUeXBlQ29udHJvbCA9IGNvbnRyb2wucGFyZW50LmdldChxdW90YVR5cGUpO1xuXG4gICAgICBpZiAocXVvdGFUeXBlQ29udHJvbCAmJiBxdW90YVR5cGVDb250cm9sLnZhbHVlID09PSBNYWlsYm94UXVvdGFzVHlwZS5jdXN0b20gJiYgbWF0Y2hpbmdDb250cm9sLnZhbHVlICYmIHBhcnNlSW50KG1hdGNoaW5nQ29udHJvbC52YWx1ZSkgPiBwYXJzZUludChjb250cm9sLnZhbHVlKSkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGJpZ2dlclRoYW46IHRydWVcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH07XG4gIH07XG5cbiAgcmFuZ2VMaW1pdCA9IChmaWVsZE5hbWU6IHN0cmluZykgPT4ge1xuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XG4gICAgICBpZiAoIWNvbnRyb2w/LnBhcmVudCB8fCAhY29udHJvbC52YWx1ZSkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICAgIGNvbnN0IG1hdGNoaW5nQ29udHJvbCA9IGNvbnRyb2wucGFyZW50LmdldChmaWVsZE5hbWUpO1xuICAgICAgaWYgKChjb250cm9sLnZhbHVlIC0gbWF0Y2hpbmdDb250cm9sLnZhbHVlKSA+IDUwMDAwKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgcmFuZ2VMaW1pdDogdHJ1ZVxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfTtcbiAgfTtcblxuICBjb21wYXJlcGF0dGVyblBhcnRzID0gKGZpZWxkTmFtZTogc3RyaW5nKSA9PiB7XG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcbiAgICAgIGlmICghY29udHJvbD8udmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG4gICAgICBjb25zdCBtYXRjaGVzID0gY29udHJvbC52YWx1ZS5tYXRjaCgvXFxbKC4qPylcXF0vKTtcbiAgICAgIGlmIChtYXRjaGVzKSB7XG4gICAgICAgIGNvbnN0IHN1Ym1hdGNoID0gbWF0Y2hlc1sxXTtcbiAgICAgICAgY29uc3Qgc3VibWF0Y2hzcGxpdDogbnVtYmVyW10gPSBzdWJtYXRjaC5zcGxpdCgnLScpO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHN1Ym1hdGNoc3BsaXQubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICBpZiAoc3VibWF0Y2hzcGxpdFtpXSA+PSBzdWJtYXRjaHNwbGl0W2kgKyAxXSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgY29tcGFyZXBhdHRlcm5QYXJ0czogdHJ1ZVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH07XG4gIH07XG5cbiAgbWF0Y2hQcmVmaXggPSAoZmllbGROYW1lOiBzdHJpbmcpID0+IHtcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xuICAgICAgaWYgKCFjb250cm9sPy5wYXJlbnQgfHwgIWNvbnRyb2wudmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG4gICAgICBjb25zdCBtYXRjaGluZ0NvbnRyb2wgPSBjb250cm9sLnBhcmVudC5nZXQoZmllbGROYW1lKTtcbiAgICAgIGlmICgobWF0Y2hpbmdDb250cm9sLnZhbHVlLnN0YXJ0c1dpdGgoJysnKSB8fCBjb250cm9sLnZhbHVlLnN0YXJ0c1dpdGgoJysnKSB8fCBtYXRjaGluZ0NvbnRyb2wudmFsdWUuc3RhcnRzV2l0aCgnXFxcXCsnKSB8fCBjb250cm9sLnZhbHVlLnN0YXJ0c1dpdGgoJ1xcXFwrJykpICYmIChjb250cm9sLnZhbHVlLmNoYXJBdCgwKSAhPT0gbWF0Y2hpbmdDb250cm9sLnZhbHVlLmNoYXJBdCgwKSkpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBtYXRjaFByZWZpeDogdHJ1ZVxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfTtcbiAgfTtcblxuICBkZXZpY2VOYW1lVmFsaWRhdG9yID0gKGRldmljZTogRGV2aWNlKSA9PiB7XG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcbiAgICAgIGlmICghY29udHJvbC52YWx1ZSB8fCBkZXZpY2UuZGV2aWNlS2luZCA9PT0gRGV2aWNlS2luZC5kZXZpY2VQcm9maWxlKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGlmIChkZXZpY2UuaXNDdGlSb3V0ZVBvaW50KSB7XG4gICAgICAgIGxldCBlcnIgPSAnJztcbiAgICAgICAgaWYgKCFjb250cm9sLnZhbHVlLm1hdGNoKC9eW2EtekEtWjAtOS1fLl0rJC8pKSB7XG4gICAgICAgICAgZXJyID0gJ3BhdHRlcm4nO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjb250cm9sLnZhbHVlLnRyaW0oKS5sZW5ndGggPiAxNSkge1xuICAgICAgICAgIGVyciA9ICdtYXhMZW5ndGgnO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBlcnIgPyB7bmFtZVJ1bGU6IGVycn0gOiBudWxsO1xuICAgICAgfVxuICAgICAgaWYgKGRldmljZS5kZXZpY2VEZWZhdWx0cyAmJiAhZGV2aWNlLmlzQ3RpUm91dGVQb2ludCkge1xuICAgICAgICBjb25zdCBydWxlVGV4dCA9IGRldmljZS5kZXZpY2VEZWZhdWx0cy5kZXZpY2VOYW1lUmVnZXg7XG4gICAgICAgIGNvbnN0IHJ1bGUgPSBuZXcgUmVnRXhwKHJ1bGVUZXh0LCAnZycpO1xuICAgICAgICBjb25zdCBjYXB0aW9uID0gZGV2aWNlLmRldmljZURlZmF1bHRzPy5kZXZpY2VOYW1lRXhwbGFpbmVkO1xuICAgICAgICBjb25zdCBtYXRjaCA9IChjb250cm9sLnZhbHVlIHx8ICcnKS5tYXRjaChydWxlKSB8fCBbXTtcbiAgICAgICAgY29uc3QgZXhhY3RNYXRjaCA9IG1hdGNoICYmIGNvbnRyb2wudmFsdWUgPT09IG1hdGNoWzBdO1xuICAgICAgICBpZiAocnVsZSAmJiAhZXhhY3RNYXRjaCkge1xuICAgICAgICAgIHJldHVybiB7bmFtZVJ1bGU6IHtjYXB0aW9ufX07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH07XG4gIH07XG5cbiAgZGV2aWNlTmFtZVZhbHVlVmFsaWRhdG9yID0gKGRldmljZTogRGV2aWNlLCBkZXZpY2VOYW1lOiBzdHJpbmcpID0+IHtcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xuICAgICAgaWYgKCFjb250cm9sLnZhbHVlIHx8IGRldmljZS5kZXZpY2VLaW5kID09PSBEZXZpY2VLaW5kLmRldmljZVByb2ZpbGUpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgaWYgKGRldmljZS5uYW1lICYmIGRldmljZS5hbHJlYWR5VXNlZE5hbWUgJiYgZGV2aWNlLm5hbWUgPT09IGRldmljZS5hbHJlYWR5VXNlZE5hbWUpIHtcbiAgICAgICAgcmV0dXJuIHtuYW1lUnVsZTogJ2FscmVhZHlVc2VkTmFtZSd9O1xuICAgICAgfVxuICAgICAgaWYgKGRldmljZS5pc0N0aVJvdXRlUG9pbnQpIHtcbiAgICAgICAgbGV0IGVyciA9ICcnO1xuICAgICAgICBpZiAoIWRldmljZU5hbWUubWF0Y2goL15bYS16QS1aMC05LV8uXSskLykpIHtcbiAgICAgICAgICBlcnIgPSAncGF0dGVybic7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGRldmljZU5hbWUudHJpbSgpLmxlbmd0aCA+IDE1KSB7XG4gICAgICAgICAgZXJyID0gJ21heExlbmd0aCc7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGVyciA/IHtuYW1lUnVsZTogZXJyfSA6IG51bGw7XG4gICAgICB9XG4gICAgIGlmIChkZXZpY2UuZGV2aWNlRGVmYXVsdHMgJiYgIWRldmljZS5pc0N0aVJvdXRlUG9pbnQpIHtcbiAgICAgICBjb25zdCBydWxlVGV4dCA9IGRldmljZS5kZXZpY2VEZWZhdWx0cy5kZXZpY2VOYW1lUmVnZXg7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdEZXYgbmFtZSBydWxlIC0gJywgcnVsZVRleHQpO1xuICAgICAgICBjb25zdCBydWxlID0gbmV3IFJlZ0V4cChydWxlVGV4dCwgJ2cnKTtcbiAgICAgICAgbGV0IGNhcHRpb24gPSBkZXZpY2UuZGV2aWNlRGVmYXVsdHMuZGV2aWNlTmFtZUV4cGxhaW5lZDtcbiAgICAgICAgaWYgKCFjYXB0aW9uKSB7XG4gICAgICAgICAgY2FwdGlvbiA9IHJ1bGVUZXh0O1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG1hdGNoID0gKGRldmljZU5hbWUgfHwgJycpLm1hdGNoKHJ1bGUpIHx8IFtdO1xuICAgICAgICBjb25zdCBleGFjdE1hdGNoID0gbWF0Y2ggJiYgZGV2aWNlTmFtZSA9PT0gbWF0Y2hbMF07XG4gICAgICAgIGlmIChydWxlICYmICFleGFjdE1hdGNoKSB7XG4gICAgICAgICAgcmV0dXJuIHtuYW1lUnVsZToge2NhcHRpb259fTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfTtcbiAgfTtcblxuICBkZXZpY2VEdXBsaWNhdGluZ05hbWVWYWxpZGF0b3IgPSAodXNlcjogYW55LCBwa2lkID86IHN0cmluZywgcHJlZml4Pzogc3RyaW5nKSA9PiB7XG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcbiAgICAgIGlmICghY29udHJvbC52YWx1ZSB8fCAhdXNlciB8fCAhdXNlci5kZXZpY2VzIHx8IHVzZXIuZGV2aWNlcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY29uc3QgZGV2aWNlTmFtZSA9IHByZWZpeCA/IGAke3ByZWZpeH0ke2NvbnRyb2wudmFsdWV9YCA6IGNvbnRyb2wudmFsdWU7XG4gICAgICBjb25zdCBkZXZpY2VzV2l0aFRoZVNhbWVOYW1lID0gdXNlci5kZXZpY2VzLmZpbHRlcigoZGV2aWNlOiBEZXZpY2UpID0+IGRldmljZS5uYW1lID09PSBkZXZpY2VOYW1lKTtcbiAgICAgIGlmIChkZXZpY2VzV2l0aFRoZVNhbWVOYW1lLmxlbmd0aCA+IDApIHtcbiAgICAgICAgaWYgKCFwa2lkKSB7ICAvLyBGb3IgbmV3IGRldmljZVxuICAgICAgICAgIHJldHVybiB7ZHVwbGljYXRlTmFtZVJ1bGU6IHRydWV9O1xuICAgICAgICB9IGVsc2UgaWYgKHBraWQgIT09IGRldmljZXNXaXRoVGhlU2FtZU5hbWVbMF0ucGtpZCkgeyAvLyBGb3IgdXBkYXRpbmcgZGV2aWNlLCBhdm9pZCB2YWxpZGF0aW5nIHdpdGggaXRzZWxmXG4gICAgICAgICAgcmV0dXJuIHtkdXBsaWNhdGVOYW1lUnVsZTogdHJ1ZX07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH07XG4gIH07XG5cbiAgY29uZGl0aW9uYWxSZXF1aXJlZCA9IChmaWVsZE5hbWU6IHN0cmluZywgcmVxdWlyZWRDb25kaXRpb25WYWx1ZXM6IGFueVtdKSA9PiB7XG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IHBhcmVudDEgPSBjb250cm9sLnBhcmVudDtcbiAgICAgIGlmICghcGFyZW50MSB8fCAhcGFyZW50MS5nZXQoZmllbGROYW1lKSB8fCAhcGFyZW50MS5nZXQoZmllbGROYW1lKS52YWx1ZSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBpZiAocmVxdWlyZWRDb25kaXRpb25WYWx1ZXMuaW5jbHVkZXMocGFyZW50MS5nZXQoZmllbGROYW1lKS52YWx1ZSkgJiYgIWNvbnRyb2wudmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICByZXF1aXJlZDogdHJ1ZVxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfTtcbiAgfTtcblxuICBjb25kaXRpb25hbFJlcXVpcmVkRm9yR3JvdXBBZG1pbiA9IChmaWVsZE5hbWU6IHN0cmluZywgcmVxdWlyZWRDb25kaXRpb25WYWx1ZXM6IGFueVtdKSA9PiB7XG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IHBhcmVudDEgPSBjb250cm9sLnBhcmVudDtcbiAgICAgIGlmICghcGFyZW50MSB8fCAhcGFyZW50MS5nZXQoZmllbGROYW1lKSB8fCAhcGFyZW50MS5nZXQoZmllbGROYW1lKS52YWx1ZSB8fCAhcGFyZW50MS5nZXQoZmllbGROYW1lKS52YWx1ZS50eXBlKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGlmIChyZXF1aXJlZENvbmRpdGlvblZhbHVlcy5pbmNsdWRlcyhwYXJlbnQxLmdldChmaWVsZE5hbWUpLnZhbHVlLnR5cGUpICYmICFjb250cm9sLnZhbHVlKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgcmVxdWlyZWQ6IHRydWVcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH07XG4gIH07XG5cbiAgY29uZGl0aW9uYWxTaXRlR3JvdXBDaGVja0Zvckdyb3VwQWRtaW4gPSAoZmllbGROYW1lOiBzdHJpbmcsIHJlcXVpcmVkQ29uZGl0aW9uVmFsdWVzOiBhbnlbXSkgPT4ge1xuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XG4gICAgICBjb25zdCBwYXJlbnQxID0gY29udHJvbC5wYXJlbnQ7XG4gICAgICBpZiAoIXBhcmVudDEgfHwgIXBhcmVudDEuZ2V0KGZpZWxkTmFtZSkgfHwgIXBhcmVudDEuZ2V0KGZpZWxkTmFtZSkudmFsdWUgfHwgIXBhcmVudDEuZ2V0KGZpZWxkTmFtZSkudmFsdWUudHlwZSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBpZiAocGFyZW50MS5nZXQoZmllbGROYW1lKS52YWx1ZSAmJiByZXF1aXJlZENvbmRpdGlvblZhbHVlcy5pbmNsdWRlcyhwYXJlbnQxLmdldChmaWVsZE5hbWUpLnZhbHVlLnR5cGUpICYmXG4gICAgICAgIHBhcmVudDEuZ2V0KCdzaXRlR3JvdXAnKSAmJiBwYXJlbnQxLmdldCgnc2l0ZUdyb3VwJykudmFsdWUgJiZcbiAgICAgICAgcGFyZW50MS5nZXQoJ3NpdGVHcm91cCcpLnZhbHVlLnNpdGVHcm91cE1lbWJlcnMgJiYgcGFyZW50MS5nZXQoJ3NpdGVHcm91cCcpLnZhbHVlLnNpdGVHcm91cE1lbWJlcnMubGVuZ3RoIDwgMSkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGhhc1NpdGVHcm91cEVycm9yOiB0cnVlXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9O1xuICB9O1xuXG4gIHJlcXVpcmVkSWZGaWVsZElzRW1wdHlGb3JCTEYgPSAoZmllbGROYW1lOiBhbnkpID0+IHtcbiAgICBjb25zdCBEQVRFX1BBVFRFUk4gPSAnXigwWzEtOV18MVswMTJdKVstIFxcLy5dKDBbMS05XXxbMTJdWzAtOV18M1swMV0pWy0gXFwvLl0oMTl8MjApXFxkXFxkJCc7XG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IHBhcmVudCA9IGNvbnRyb2wucGFyZW50O1xuICAgICAgaWYgKCFwYXJlbnQgfHwgIXBhcmVudC5nZXQoZmllbGROYW1lKSkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICAgIGlmICghcGFyZW50LmdldChmaWVsZE5hbWUpLnZhbHVlICYmICFjb250cm9sLnZhbHVlKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgcmVxdWlyZWRFaXRoZXI6IHRydWUsXG4gICAgICAgICAgcmVxdWlyZWRCTEZETjogdHJ1ZVxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfTtcbiAgfTtcblxuXG4gIHZhbGlkRGF0ZSA9IChmaWVsZE5hbWU6IHN0cmluZykgPT4ge1xuXG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IHBhcmVudCA9IGNvbnRyb2wucGFyZW50O1xuICAgICAgY29uc3QgcnVsZVRleHQgPSAnXigwWzEtOV18MVswMTJdKVstIFxcLy5dKDBbMS05XXxbMTJdWzAtOV18M1swMV0pWy0gXFwvLl0oMTl8MjApXFxkXFxkJCc7XG4gICAgICBjb25zdCBydWxlID0gbmV3IFJlZ0V4cChydWxlVGV4dCwgJ2cnKTtcbiAgICAgIGNvbnN0IHZhbCA9IGNvbnRyb2wudmFsdWUgJiYgY29udHJvbC52YWx1ZS5nZXREYXRlKCk7XG4gICAgICBpZiAocnVsZSAmJiAhcnVsZS50ZXN0KHZhbCkpIHtcbiAgICAgICAgcmV0dXJuIHtwYXR0ZXJuOiB0cnVlfTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH07XG4gIH07XG5cblxuICBtYXRjaE9wdGlvbiA9IChvcHRpb25UeXBlOiBzdHJpbmcsIGxpc3Q/OiBhbnksIGlzRnVsbExpc3Q/OiBib29sZWFuKSA9PiB7XG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcbiAgICAgIGlmICghY29udHJvbC52YWx1ZSB8fCBjb250cm9sLnZhbHVlID09PSBEZXZpY2VUeXBlcy5DVElfUk9VVEVfUE9JTlQpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG4gICAgICBsZXQgb3B0aW9uTGlzdCA9IGxpc3QgfHwgdGhpcy5nZXRPcHRpb25zTGlzdChvcHRpb25UeXBlKTtcbiAgICAgIGlmIChvcHRpb25MaXN0ICYmIG9wdGlvbkxpc3QubGVuZ3RoKSB7XG4gICAgICAgIGlmICghaXNGdWxsTGlzdCAmJiBvcHRpb25UeXBlID09PSAnZGlyZWN0b3J5TnVtYmVycycpIHtcbiAgICAgICAgICBvcHRpb25MaXN0ID0gb3B0aW9uTGlzdC5tYXAoKHN0cjogc3RyaW5nKSA9PiBzdHIuaW5kZXhPZignICcpID4gLTEgPyBzdHIuc3Vic3RyaW5nKDAsIHN0ci5pbmRleE9mKCcgJykpIDogc3RyKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIW9wdGlvbkxpc3QuaW5jbHVkZXMoY29udHJvbC52YWx1ZSkpIHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbWF0Y2hPcHRpb25zOiB0cnVlXG4gICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfTtcbiAgfTtcblxuICBjb25maWRlbnRpYWxBY2Nlc3NMZXZlbCA9IChjb25maWRlbnRpYWxBY2Nlc3NNb2RlOiBzdHJpbmcpID0+IHtcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xuICAgICAgaWYgKCFjb250cm9sLnZhbHVlICYmICFjb25maWRlbnRpYWxBY2Nlc3NNb2RlKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgaWYgKCFjb250cm9sLnZhbHVlKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgcmVxdWlyZWQ6IHRydWVcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH07XG4gIH07XG5cbiAgbm9SZXN1bHRETiA9IChvcHRpb25UeXBlOiBzdHJpbmcsIGxpc3Q/OiBhbnkpID0+IHtcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xuICAgICAgaWYgKCFjb250cm9sLnZhbHVlIHx8IGxpc3QgPT09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG4gICAgICBpZiAobGlzdCAmJiBsaXN0Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG5vUmVzdWx0RE5zOiB0cnVlXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9O1xuICB9O1xuXG4gIG1hdGNoRXh0ZW5zaW9uT3B0aW9uID0gKG9wdGlvblR5cGU6IHN0cmluZywgb3B0aW9uTGlzdD86IGFueSkgPT4ge1xuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XG4gICAgICBpZiAoIWNvbnRyb2wudmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIGNvbnRyb2wudmFsdWU7XG4gICAgICB9XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBjb25zdCBuZXdMaXN0ID0gW107XG4gICAgICBpZiAob3B0aW9uTGlzdCAmJiBvcHRpb25MaXN0Lmxlbmd0aCkge1xuICAgICAgICBvcHRpb25MaXN0LmZvckVhY2goKGxpc3Q6IGFueSkgPT4ge1xuICAgICAgICAgIGNvbnN0IG5ld09wdGlvbkxpc3QgPSB0aGlzLmdldE1hdGNoRXhpc3RpbmdWbUxpbmVWYWx1ZShsaXN0KTtcbiAgICAgICAgICBuZXdMaXN0LnB1c2gobmV3T3B0aW9uTGlzdCk7XG4gICAgICAgIH0pO1xuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIGlmIChuZXdMaXN0ICYmICFuZXdMaXN0LmluY2x1ZGVzKGNvbnRyb2wudmFsdWUpKSB7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG1hdGNoT3B0aW9uczogdHJ1ZVxuICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAoIW9wdGlvbkxpc3QgfHwgIW9wdGlvbkxpc3QubGVuZ3RoKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgbWF0Y2hPcHRpb25zOiB0cnVlXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9O1xuICB9O1xuXG4gIHB1YmxpYyBnZXRNYXRjaEV4aXN0aW5nVm1MaW5lVmFsdWUoZG5XaXRoVHlwZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBpbmQgPSBkbldpdGhUeXBlLmluZGV4T2YoJ1R5cGU6Jyk7XG4gICAgbGV0IGRuID0gZG5XaXRoVHlwZTtcbiAgICBpZiAoaW5kID4gLTEpIHtcbiAgICAgIGRuID0gZG5XaXRoVHlwZS5zbGljZSgwLCBpbmQpO1xuICAgICAgZG4gPSBkbi50cmltKCk7XG4gICAgfVxuICAgIHJldHVybiBkbjtcbiAgfVxuXG4gIHJlcXVpcmVkRWl0aGVyRm9yVm1FeHRlbnNpb24gPSAoZmllbGROYW1lMTogc3RyaW5nLCBmaWVsZE5hbWUyOiBzdHJpbmcpID0+IHtcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xuICAgICAgaWYgKCFjb250cm9sLnBhcmVudCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICAgIGNvbnN0IG1hdGNoQ29udHJvbDEgPSBjb250cm9sLnBhcmVudC5nZXQoZmllbGROYW1lMSkudmFsdWU7XG4gICAgICBjb25zdCBtYXRjaENvbnRyb2wyID0gY29udHJvbC5wYXJlbnQuZ2V0KGZpZWxkTmFtZTIpLnZhbHVlO1xuICAgICAgaWYgKCFtYXRjaENvbnRyb2wxICYmICFtYXRjaENvbnRyb2wyKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgcmVxdWlyZWRFaXRoZXJGb3JWbUV4dGVuc2lvbjogdHJ1ZVxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfTtcbiAgfTtcblxuICByZXF1aXJlZEVpdGhlck9uZSA9IChmaWVsZE5hbWUxOiBzdHJpbmcsIGZpZWxkTmFtZTI6IHN0cmluZykgPT4ge1xuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XG4gICAgICBpZiAoIWNvbnRyb2wucGFyZW50KSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgY29uc3QgbWF0Y2hDb250cm9sMSA9IGNvbnRyb2wucGFyZW50LmdldChmaWVsZE5hbWUxKSAmJiBjb250cm9sLnBhcmVudC5nZXQoZmllbGROYW1lMSkudmFsdWU7XG4gICAgICBjb25zdCBtYXRjaENvbnRyb2wyID0gY29udHJvbC5wYXJlbnQuZ2V0KGZpZWxkTmFtZTIpICYmIGNvbnRyb2wucGFyZW50LmdldChmaWVsZE5hbWUyKS52YWx1ZTtcbiAgICAgIGlmICghbWF0Y2hDb250cm9sMSAmJiAhbWF0Y2hDb250cm9sMikge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIHJlcXVpcmVkRWl0aGVyT25lOiB0cnVlXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9O1xuICB9O1xuXG4gIHJlcXVpcmVkQnlWYWx1ZSA9IChmaWVsZE5hbWU6IHN0cmluZywgcmVxdWVzdGVkRmllbGRWYWw6IGFueSkgPT4ge1xuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XG4gICAgICBpZiAoIWNvbnRyb2wgfHwgIWNvbnRyb2wucGFyZW50KSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgY29uc3QgZmllbGRWYWwgPSBjb250cm9sLnBhcmVudC5nZXQoZmllbGROYW1lKSAmJiBjb250cm9sLnBhcmVudC5nZXQoZmllbGROYW1lKS52YWx1ZTtcbiAgICAgIGlmIChmaWVsZFZhbCAmJiBmaWVsZFZhbCA9PT0gcmVxdWVzdGVkRmllbGRWYWwgJiYgIWNvbnRyb2wudmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICByZXF1aXJlZDogdHJ1ZVxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfTtcbiAgfTtcblxuICBPbmVFeHRlbnNpb25FbXB0eSA9IChmaWVsZE5hbWUxOiBzdHJpbmcsIGZpZWxkTmFtZTI6IHN0cmluZykgPT4ge1xuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XG4gICAgICBpZiAoIWNvbnRyb2wucGFyZW50KSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgY29uc3QgbWF0Y2hDb250cm9sMSA9IGNvbnRyb2wucGFyZW50LmdldChmaWVsZE5hbWUxKS52YWx1ZTtcbiAgICAgIGNvbnN0IG1hdGNoQ29udHJvbDIgPSBjb250cm9sLnBhcmVudC5nZXQoZmllbGROYW1lMikudmFsdWU7XG4gICAgICBpZiAobWF0Y2hDb250cm9sMSAmJiBtYXRjaENvbnRyb2wyKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgT25lRXh0ZW5zaW9uSXNFbXB0eTogdHJ1ZVxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfTtcbiAgfTtcblxuICByZXF1aXJlZEJ5Q29uZGl0aW9uID0gKHJlcXVpcmVkQnk6IHN0cmluZywgZmllbGROYW1lOiBhbnkpID0+IHtcbiAgICByZXR1cm4gKGNvbnRyb2w6IGFueSkgPT4ge1xuICAgICAgaWYgKCFjb250cm9sLnBhcmVudCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHJlcXVpcmVkQnlDb250cm9sID0gY29udHJvbC5wYXJlbnQuZ2V0KHJlcXVpcmVkQnkpLnZhbHVlO1xuICAgICAgY29uc3QgcmVxdWlyZWRDb250cm9sID0gY29udHJvbC5wYXJlbnQuZ2V0KGZpZWxkTmFtZSkudmFsdWU7XG4gICAgICBpZiAocmVxdWlyZWRCeUNvbnRyb2wgJiYgIXJlcXVpcmVkQ29udHJvbCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIHJlcXVpcmVkOiB0cnVlXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9O1xuICB9O1xuXG4gIHByaXZhdGUgZ2V0T3B0aW9uc0xpc3QodG9rZW46IHN0cmluZyk6IHN0cmluZ1tdIHtcbiAgICBzd2l0Y2ggKHRva2VuKSB7XG4gICAgICBjYXNlICdjc3MnOlxuICAgICAgY2FzZSAncmVyb3V0ZUNzcyc6XG4gICAgICBjYXNlICdjYWxsaW5nU2VhcmNoU3BhY2UnOlxuICAgICAgICByZXR1cm4gdGhpcy5zaXRlU2V0dGluZ3NTZXJ2aWNlLmNhbGxpbmdTZWFyY2hTcGFjZVR5cGVzO1xuICAgICAgY2FzZSAncmVyb3V0aW5nQ3NzJzpcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l0ZVNldHRpbmdzU2VydmljZS5zaXRlRGVmYXVsdHMgJiYgdGhpcy5zaXRlU2V0dGluZ3NTZXJ2aWNlLnNpdGVEZWZhdWx0cy5jc3NGaWx0ZXI7XG4gICAgICBjYXNlICdkZXZpY2VUeXBlJzpcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l0ZVNldHRpbmdzU2VydmljZS5kZXZpY2VUeXBlcztcbiAgICAgIGNhc2UgJ3JvdXRlUGFydGl0aW9uJzpcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l0ZVNldHRpbmdzU2VydmljZS5yb3V0ZVBhcnRpdGlvbk5hbWVzO1xuICAgICAgY2FzZSAncm91dGVQYXJ0aXRpb25GaWx0ZXJlZCc6XG4gICAgICAgIHJldHVybiB0aGlzLnNpdGVTZXR0aW5nc1NlcnZpY2UuZmlsdGVyZWRSb3V0ZVBhcnRpdGlvbk5hbWVzO1xuICAgICAgY2FzZSAnZGV2aWNlUG9vbHMnOlxuICAgICAgICByZXR1cm4gdGhpcy5zaXRlU2V0dGluZ3NTZXJ2aWNlLmRldmljZVBvb2xzO1xuICAgICAgY2FzZSAnYWxsUm91dGVQYXJ0aXRpb25zJzpcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l0ZVNldHRpbmdzU2VydmljZS5hbGxSb3V0ZVBhcnRpdGlvbk5hbWVzO1xuICAgICAgY2FzZSAnZGlyZWN0b3J5TnVtYmVycyc6XG4gICAgICAgIHJldHVybiB0aGlzLnNpdGVTZXR0aW5nc1NlcnZpY2UuZGlyZWN0b3J5TnVtYmVycztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBbXTtcbiAgICB9XG4gIH1cblxuICBhdXRvY29tcGxldGVUeXBlKGNvbnRyb2w6IGFueSkge1xuICAgIGlmICghY29udHJvbC52YWx1ZSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIGlmICh0eXBlb2YgY29udHJvbC52YWx1ZSAhPT0gJ29iamVjdCcgJiYgY29udHJvbC52YWx1ZSAhPT0gJycpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHN0cmluZ0VudGVyZWQ6IHRydWVcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cblxuICBwYXNzd29yZChjb250cm9sOiBhbnkpIHtcbiAgICBjb25zdCBydWxlTnVtZXJpYyA9IG5ldyBSZWdFeHAoL1xcZCsvLCAnZycpO1xuICAgIGNvbnN0IHJ1bGVDYXBpdGFscyA9IG5ldyBSZWdFeHAoL1tBLVpdKy8sICdnJyk7XG4gICAgY29uc3QgcnVsZVNtYWxsID0gbmV3IFJlZ0V4cCgvW2Etel0rLywgJ2cnKTtcbiAgICBjb25zdCBydWxlU3BlY2lhbCA9IG5ldyBSZWdFeHAoL1shQCMkJSZcXC89XFw/X1xcLiw6O1xcLVxcXFwrXSsvLCAnZycpO1xuXG4gICAgY29uc3QgaGFzTnVtZXJpYyA9ICtydWxlTnVtZXJpYy50ZXN0KGNvbnRyb2wudmFsdWUpO1xuICAgIGNvbnN0IGhhc0NhcGl0YWxzID0gK3J1bGVDYXBpdGFscy50ZXN0KGNvbnRyb2wudmFsdWUpO1xuICAgIGNvbnN0IGhhc1NtYWxsID0gK3J1bGVTbWFsbC50ZXN0KGNvbnRyb2wudmFsdWUpO1xuICAgIGNvbnN0IGhhc1NwZWNpYWwgPSArcnVsZVNwZWNpYWwudGVzdChjb250cm9sLnZhbHVlKTtcblxuICAgIGlmIChoYXNOdW1lcmljICsgaGFzQ2FwaXRhbHMgKyBoYXNTbWFsbCArIGhhc1NwZWNpYWwgPCAzKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB3ZWFrUGFzc3dvcmQ6IHRydWVcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICB2ZXJpZnlBdXRvQW5zd2VyKGNvbnRyb2w6IGFueSkge1xuICAgIGlmICghY29udHJvbD8udmFsdWUgfHwgY29udHJvbC52YWx1ZS5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBsZXQgYXV0b0Fuc3dlckVycm9yTGluZSA9IG51bGw7XG4gICAgaWYgKGNvbnRyb2wucGFyZW50ICYmIGNvbnRyb2wucGFyZW50LnBhcmVudCAmJiBjb250cm9sLnBhcmVudC5wYXJlbnQucGFyZW50ICYmIGNvbnRyb2wucGFyZW50LnBhcmVudC5wYXJlbnQucGFyZW50KSB7XG4gICAgICBjb25zdCBjb250cm9sU05SID0gY29udHJvbC5wYXJlbnQ7XG4gICAgICBjb25zdCBjb250cm9sVXNlciA9IGNvbnRyb2wucGFyZW50LnBhcmVudC5wYXJlbnQucGFyZW50O1xuICAgICAgY29uc3QgbGluZUFzc29jaWF0aW9ucyA9IGNvbnRyb2xTTlIuZ2V0KCdsaW5lQXNzb2NpYXRpb25zJyk7XG4gICAgICBjb25zdCBsaW5lcyA9IGNvbnRyb2xVc2VyLmdldCgnbGluZXMnKTtcbiAgICAgIGlmIChsaW5lcykge1xuICAgICAgICBsaW5lQXNzb2NpYXRpb25zLnZhbHVlLmZvckVhY2goKGxpbmVBc3NvY2lhdGlvbjogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgYXV0b0Fuc3dlckxpbmUgPSBsaW5lcy5jb250cm9scy5maW5kKChsaW5lOiBhbnkpID0+IGxpbmUuZ2V0KCdkaXJlY3RvcnlOdW1iZXInKS52YWx1ZS5kaXJlY3RvcnlOdW1iZXIgPT09IGxpbmVBc3NvY2lhdGlvbi5kaXJlY3RvcnlOdW1iZXIgJiYgbGluZS5nZXQoJ2RpcmVjdG9yeU51bWJlcicpLnZhbHVlLnJvdXRlUGFydGl0aW9uTmFtZSA9PT0gbGluZUFzc29jaWF0aW9uLnJvdXRlUGFydGl0aW9uTmFtZVxuICAgICAgICAgICAgJiYgbGluZS5nZXQoJ2F1dG9BbnN3ZXInKS52YWx1ZSAhPT0gJ0F1dG8gQW5zd2VyIE9mZicpO1xuICAgICAgICAgIGlmIChhdXRvQW5zd2VyTGluZSkge1xuICAgICAgICAgICAgYXV0b0Fuc3dlckVycm9yTGluZSA9IHtcbiAgICAgICAgICAgICAgYXV0b0Fuc3dlckVycm9yTGluZTogbGluZUFzc29jaWF0aW9uLmRpcmVjdG9yeU51bWJlclxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBhdXRvQW5zd2VyRXJyb3JMaW5lO1xuICB9XG5cbiAgdmVyaWZ5QmVnaW5FbmRUaW1lKGNvbnRyb2w6IGFueSkge1xuICAgIGNvbnN0IHBhcmVudCA9IGNvbnRyb2wucGFyZW50O1xuICAgIGlmICghcGFyZW50IHx8ICFwYXJlbnQuZ2V0KCdpc0FjdGl2ZScpIHx8ICFwYXJlbnQuZ2V0KCdhbGxEYXknKSB8fCAhcGFyZW50LmdldCgnZnJvbScpIHx8ICFwYXJlbnQuZ2V0KCd0bycpKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAocGFyZW50LmdldCgnaXNBY3RpdmUnKS52YWx1ZSkge1xuICAgICAgaWYgKCFwYXJlbnQuZ2V0KCdhbGxEYXknKS52YWx1ZSkge1xuICAgICAgICBpZiAoIXBhcmVudC5nZXQoJ2Zyb20nKS52YWx1ZSB8fCBwYXJlbnQuZ2V0KCdmcm9tJykudmFsdWUgPT09ICdObyBPZmZpY2UgSG91cnMnXG4gICAgICAgICAgfHwgIXBhcmVudC5nZXQoJ3RvJykudmFsdWUgfHwgcGFyZW50LmdldCgndG8nKS52YWx1ZSA9PT0gJ05vIE9mZmljZSBIb3VycydcbiAgICAgICAgICB8fCBwYXJlbnQuZ2V0KCdmcm9tJykudmFsdWUgPiBwYXJlbnQuZ2V0KCd0bycpLnZhbHVlKSB7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGZyb21HcmVhdGVyVGhhblRvOiB0cnVlXG4gICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgdGltZShjb250cm9sOiBhbnkpIHtcbiAgICBpZiAoY29udHJvbC52YWx1ZSAmJiAhdGltZVJlZ2V4LnRlc3QoY29udHJvbC52YWx1ZSkpIHtcbiAgICAgIHJldHVybiB7dGltZUZvcm1hdDogdHJ1ZX07XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cblxuICBwaW5NdWx0aUNoYXJhY3RlckNoZWNrID0gKGZpZWxkTmFtZTogc3RyaW5nKSA9PiB7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XG4gICAgICBpZiAoIWNvbnRyb2wucGFyZW50KSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgY29uc3QgbWF0Y2hpbmdDb250cm9sID0gY29udHJvbC5wYXJlbnQuZ2V0KGZpZWxkTmFtZSk7XG4gICAgICBjb25zdCBydWxlTXVsdGlDaGFyYWN0ZXIgPSBuZXcgUmVnRXhwKCcoWzAtOV0pXFxcXDF7Mn0nKTtcbiAgICAgIGlmIChtYXRjaGluZ0NvbnRyb2wudmFsdWUpIHtcbiAgICAgICAgY29uc3QgaGFzTXVsdGlDaGFyYWN0ZXIgPSBydWxlTXVsdGlDaGFyYWN0ZXIudGVzdChtYXRjaGluZ0NvbnRyb2wudmFsdWUpO1xuICAgICAgICBpZiAoaGFzTXVsdGlDaGFyYWN0ZXIpIHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbXVsdGlDaGFyYWN0ZXI6IHRydWVcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcbiAgfTtcblxuICBwaW5Db25zZWN1dGl2ZU51bWJlckNoZWNrID0gKGZpZWxkTmFtZTogc3RyaW5nKSA9PiB7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIHJldHVybiAoY29udHJvbDogYW55KSA9PiB7XG4gICAgICBpZiAoIWNvbnRyb2wucGFyZW50KSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgY29uc3QgbWF0Y2hpbmdDb250cm9sID0gY29udHJvbC5wYXJlbnQuZ2V0KGZpZWxkTmFtZSk7XG4gICAgICBjb25zdCBzdHJUb0NoZWNrID0gbWF0Y2hpbmdDb250cm9sLnZhbHVlO1xuICAgICAgaWYgKHN0clRvQ2hlY2sgJiYgc3RyVG9DaGVjay5sZW5ndGggPiAxKSB7XG4gICAgICAgIGNvbnN0IHJlc0FzYyA9IHRoaXMucGluT3JkZXJDaGVjayhzdHJUb0NoZWNrKTtcbiAgICAgICAgaWYgKHJlc0FzYyA9PT0gdHJ1ZSkge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBjb25zZWN1dGl2ZU51bWJlcnM6IHRydWVcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcbiAgfTtcblxuXG4gIHBpbk9yZGVyQ2hlY2soc3RyOiBzdHJpbmcpOiBhbnkge1xuICAgIGlmIChzdHIpIHtcbiAgICAgIGNvbnN0IGFycl9udW0gPSAoJycgKyBzdHIpLnNwbGl0KCcnKTtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJyX251bS5sZW5ndGggLSAyOyBpKyspIHtcbiAgICAgICAgY29uc3QgbnVtMSA9IHBhcnNlSW50KGFycl9udW1baV0pO1xuICAgICAgICBjb25zdCBudW0yID0gcGFyc2VJbnQoYXJyX251bVtpICsgMV0pO1xuICAgICAgICBjb25zdCBudW0zID0gcGFyc2VJbnQoYXJyX251bVtpICsgMl0pO1xuICAgICAgICBpZiAoKG51bTIgLSBudW0xKSA9PT0gMSAmJiAobnVtMyAtIG51bTIgPT09IG51bTIgLSBudW0xKSkge1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cblxuICBwaW5NYWlsYm94RXh0ZW5zaW9uQ2hlY2sgPSAoZmllbGROYW1lOiBzdHJpbmcsIGV4dGVuc2lvbjogc3RyaW5nKSA9PiB7XG4gICAgcmV0dXJuIChjb250cm9sOiBhbnkpID0+IHtcbiAgICAgIGlmICghY29udHJvbC5wYXJlbnQpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG4gICAgICBjb25zdCBtYXRjaGluZ0NvbnRyb2wgPSBjb250cm9sLnBhcmVudC5nZXQoZmllbGROYW1lKTtcbiAgICAgIGNvbnN0IHN0clRvQ2hlY2sgPSBtYXRjaGluZ0NvbnRyb2wudmFsdWU7XG4gICAgICBpZiAoc3RyVG9DaGVjayA9PT0gZXh0ZW5zaW9uIHx8IHN0clRvQ2hlY2suaW5jbHVkZXMoZXh0ZW5zaW9uKSkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG1haWxib3hFeHRlbnNpb246IHRydWVcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH07XG4gIH07XG5cbiAgaXNJdGVtQWxyZWFkeUluTGlzdChpdGVtOiBhbnksIGxpc3Q6IGFueSk6IGJvb2xlYW4ge1xuICAgIGlmICghaXRlbSB8fCAhbGlzdCB8fCAhbGlzdC5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgZm9yIChjb25zdCBsaXN0SXRlbSBvZiBsaXN0KSB7XG4gICAgICBpZiAoaXRlbS5lcXVhbHMobGlzdEl0ZW0pKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -11,4 +11,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
11
11
|
type: Component,
|
|
12
12
|
args: [{ selector: 'app-loader', encapsulation: ViewEncapsulation.None, template: "<div class=\"overlay\">\n <mat-progress-spinner\n class=\"page-spinner\"\n mode=\"indeterminate\"\n [diameter]=\"70\"\n strokeWidth=\"3\"></mat-progress-spinner>\n</div>\n", styles: [".overlay{position:fixed;width:100%;height:100%;inset:0;background-color:#fff3;z-index:200}\n"] }]
|
|
13
13
|
}], ctorParameters: function () { return []; } });
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWxvYWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWRldmljZS1tYW5hZ2Uvc3JjL3V0aWxzL2FwcC1sb2FkZXIvYXBwLWxvYWRlci50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWRldmljZS1tYW5hZ2Uvc3JjL3V0aWxzL2FwcC1sb2FkZXIvYXBwLWxvYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFRN0QsTUFBTSxPQUFPLGtCQUFrQjtJQUM3QjtJQUNBLENBQUM7O2dIQUZVLGtCQUFrQjtvR0FBbEIsa0JBQWtCLGtEQ1IvQiwwTEFPQTs0RkRDYSxrQkFBa0I7a0JBTjlCLFNBQVM7K0JBQ0UsWUFBWSxpQkFHUCxpQkFBaUIsQ0FBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtbG9hZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FwcC1sb2FkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hcHAtbG9hZGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEFwcExvYWRlckNvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJvdmVybGF5XCI+XG4gIDxtYXQtcHJvZ3Jlc3Mtc3Bpbm5lclxuICAgIGNsYXNzPVwicGFnZS1zcGlubmVyXCJcbiAgICBtb2RlPVwiaW5kZXRlcm1pbmF0ZVwiXG4gICAgW2RpYW1ldGVyXT1cIjcwXCJcbiAgICBzdHJva2VXaWR0aD1cIjNcIj48L21hdC1wcm9ncmVzcy1zcGlubmVyPlxuPC9kaXY+XG4iXX0=
|
|
@@ -4,4 +4,4 @@ export * from "./src/services/user.service";
|
|
|
4
4
|
export * from "./src/services/utils.service";
|
|
5
5
|
export * from "./src/user-manage.module";
|
|
6
6
|
export * from "./src/user-manage-widget.component";
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLW1hbmFnZS9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLG9DQUFvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vc3JjL3NlcnZpY2VzL2FwaS5zZXJ2aWNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvc2VydmljZXMvc2l0ZS1zZXR0aW5ncy5zZXJ2aWNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvc2VydmljZXMvdXNlci5zZXJ2aWNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvc2VydmljZXMvdXRpbHMuc2VydmljZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL3VzZXItbWFuYWdlLm1vZHVsZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3JjL3VzZXItbWFuYWdlLXdpZGdldC5jb21wb25lbnRcIjtcbiJdfQ==
|
|
@@ -34,4 +34,4 @@ export var RecordingOptions;
|
|
|
34
34
|
RecordingOptions["auto_enabled"] = "Automatic Call Recording Enabled";
|
|
35
35
|
RecordingOptions["selective_enabled"] = "Selective Call Recording Enabled";
|
|
36
36
|
})(RecordingOptions || (RecordingOptions = {}));
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItbWFuYWdlL3NyYy9jbGFzc2VzL2RldmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFckQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBR3JELE1BQU0sT0FBTyxNQUFNO0lBd0JqQixZQUFZLE1BQVc7UUFsQnZCLCtCQUEwQixHQUFHLEtBQUssQ0FBQztRQWdCbkMsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFHbEIsSUFBSSxNQUFNLEVBQUU7WUFDVixJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO1lBQzFCLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztZQUNwQyxJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUM7WUFDaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDO1lBQ3RDLElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQztZQUM1QyxJQUFJLENBQUMsZUFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUM7WUFDOUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDO1lBQzVDLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQztZQUNoQyxJQUFJLENBQUMsZUFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUM7WUFDOUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDO1lBQ3RDLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxNQUFNLENBQUMsc0JBQXNCLENBQUM7WUFDNUQsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFNBQVMsQ0FBQyxDQUFDLGdCQUFnQjtZQUNyRCxJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxDQUFDLGdCQUFnQjtZQUV6QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUN2RCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7U0FDOUU7SUFDSCxDQUFDO0lBRUQsY0FBYztRQUNaLE1BQU0sY0FBYyxHQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDMUMsT0FBTyxjQUFjLENBQUMsSUFBSSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQzlDLENBQUM7Q0FDRjtBQTZERCxNQUFNLENBQU4sSUFBWSxnQkFJWDtBQUpELFdBQVksZ0JBQWdCO0lBQzFCLHdEQUFvQyxDQUFBO0lBQ3BDLHFFQUFpRCxDQUFBO0lBQ2pELDBFQUFzRCxDQUFBO0FBQ3hELENBQUMsRUFKVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBSTNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0U2F2YWJsZURhdGEgfSBmcm9tICcuLi9jb21tb24tZnVuY3Rpb25zJztcclxuaW1wb3J0IHsgRW50aXR5Q2hhbmdlVHlwZSB9IGZyb20gJy4vbGluZSc7XHJcbmltcG9ydCB7IExpbmVBc3NvY2lhdGlvbiB9IGZyb20gJy4vbGluZS1hc3NvY2lhdGlvbic7XHJcbmltcG9ydCB7IExpbmVBc3NvY2lhdGlvbkludGVyZmFjZSB9IGZyb20gJy4vbGluZS1hc3NvY2lhdGlvbi1pbnRlcmZhY2UnO1xyXG5cclxuZXhwb3J0IGNsYXNzIERldmljZSB7XHJcbiAgLy8gc2ltcGxpZmllZCBURU1QXHJcbiAgbmFtZSE6IHN0cmluZztcclxuICBwa2lpZCE6IHN0cmluZ1xyXG4gIGRldmljZVR5cGUhOiBzdHJpbmc7XHJcbiAgbGluZUFzc29jaWF0aW9ucyE6IExpbmVBc3NvY2lhdGlvbltdIHwgTGluZUFzc29jaWF0aW9uSW50ZXJmYWNlW107XHJcbiAgbGluZUFzc29jaWF0aW9uc0hhc0NoYW5nZXMgPSBmYWxzZTtcclxuICBwcm90b2NvbCE6IHN0cmluZztcclxuICBkZXNjcmlwdGlvbiE6IHN0cmluZztcclxuICBidXR0b25UZW1wbGF0ZSE6IHN0cmluZztcclxuICBzb2Z0a2V5VGVtcGxhdGUhOiBzdHJpbmc7XHJcbiAgZGV2aWNlUG9vbE5hbWUhOiBzdHJpbmc7XHJcbiAgbG9jYXRpb24hOiBzdHJpbmc7XHJcbiAgY2FsbGluZ1NlYXJjaFNwYWNlTmFtZSE6IHN0cmluZztcclxuICBmaXJtd2FyZVZlcnNpb24hOiBzdHJpbmc7XHJcbiAgcmVnaXN0cmF0aW9uU3RhdHVzITogc3RyaW5nXHJcbiAgaXBBZGRyZXNzITogc3RyaW5nO1xyXG4gIGRldmljZUtpbmQhOiBzdHJpbmc7XHJcbiAgaXNDdGlSb3V0ZVBvaW50ITogYm9vbGVhbjtcclxuICBhbHJlYWR5VXNlZE5hbWUhOiBzdHJpbmc7XHJcbiAgZGV2aWNlRGVmYXVsdHM6IGFueTtcclxuICBhdmFpbGFibGVTbG90cyE6IG51bWJlcltdO1xyXG4gIHBsYXJTZXJ2aWNlID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKGRldmljZTogYW55KSB7XHJcbiAgICBpZiAoZGV2aWNlKSB7XHJcbiAgICAgIHRoaXMubmFtZSA9IGRldmljZS5uYW1lO1xyXG4gICAgICB0aGlzLnBraWlkID0gZGV2aWNlLnBraWlkO1xyXG4gICAgICB0aGlzLmRldmljZVR5cGUgPSBkZXZpY2UuZGV2aWNlVHlwZTtcclxuICAgICAgdGhpcy5wcm90b2NvbCA9IGRldmljZS5wcm90b2NvbDtcclxuICAgICAgdGhpcy5kZXNjcmlwdGlvbiA9IGRldmljZS5kZXNjcmlwdGlvbjtcclxuICAgICAgdGhpcy5idXR0b25UZW1wbGF0ZSA9IGRldmljZS5idXR0b25UZW1wbGF0ZTtcclxuICAgICAgdGhpcy5zb2Z0a2V5VGVtcGxhdGUgPSBkZXZpY2Uuc29mdGtleVRlbXBsYXRlO1xyXG4gICAgICB0aGlzLmRldmljZVBvb2xOYW1lID0gZGV2aWNlLmRldmljZVBvb2xOYW1lO1xyXG4gICAgICB0aGlzLmxvY2F0aW9uID0gZGV2aWNlLmxvY2F0aW9uO1xyXG4gICAgICB0aGlzLmZpcm13YXJlVmVyc2lvbiA9IGRldmljZS5maXJtd2FyZVZlcnNpb247XHJcbiAgICAgIHRoaXMucGxhclNlcnZpY2UgPSBkZXZpY2UucGxhclNlcnZpY2U7XHJcbiAgICAgIHRoaXMuY2FsbGluZ1NlYXJjaFNwYWNlTmFtZSA9IGRldmljZS5jYWxsaW5nU2VhcmNoU3BhY2VOYW1lO1xyXG4gICAgICB0aGlzLnJlZ2lzdHJhdGlvblN0YXR1cyA9ICdVbmtub3duJzsgLy8gVEVNUCBmb3IgZGVtb1xyXG4gICAgICB0aGlzLmlwQWRkcmVzcyA9ICdOb25lJzsgLy8gVEVNUCBmb3IgZGVtb1xyXG5cclxuICAgICAgdGhpcy5saW5lQXNzb2NpYXRpb25zID0gZGV2aWNlLmxpbmVBc3NvY2lhdGlvbnM/Lmxlbmd0aCA/XHJcbiAgICAgICAgZGV2aWNlLmxpbmVBc3NvY2lhdGlvbnMubWFwKChsaW5lOiBhbnkpID0+IG5ldyBMaW5lQXNzb2NpYXRpb24obGluZSkpIDogW107XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRTYXZhYmxlRGF0YSgpIHtcclxuICAgIGNvbnN0IGV4Y2x1ZGVkRmllbGRzOiBzdHJpbmdbXSA9IFsnZm9ybSddO1xyXG4gICAgcmV0dXJuIGdldFNhdmFibGVEYXRhKHRoaXMsIGV4Y2x1ZGVkRmllbGRzKTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRGV2aWNlSW50ZXJmYWNlIHtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgbmV3TmFtZTogc3RyaW5nO1xyXG4gIHBraWQ6IHN0cmluZztcclxuICBlbnRpdHlDaGFuZ2VUeXBlOiBFbnRpdHlDaGFuZ2VUeXBlO1xyXG4gIGRldmljZVR5cGU6IHN0cmluZztcclxuICBwcm90b2NvbDogc3RyaW5nO1xyXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgYnV0dG9uVGVtcGxhdGU6IHN0cmluZztcclxuICBzb2Z0a2V5VGVtcGxhdGU6IHN0cmluZztcclxuICBkZXZpY2VQb29sTmFtZTogc3RyaW5nO1xyXG4gIGxvY2F0aW9uOiBzdHJpbmc7XHJcbiAgdXNlckxvY2FsZTogc3RyaW5nO1xyXG4gIGVuYWJsZWRFeHRlbnNpb25Nb2JpbGl0eTogYm9vbGVhbjtcclxuICBjYWxsaW5nU2VhcmNoU3BhY2VOYW1lOiBzdHJpbmc7XHJcbiAgc2VydmljZXM6IHN0cmluZ1tdO1xyXG4gIG5ldHdvcmtMb2NhbGU6IHN0cmluZztcclxuICBzZWN1cml0eVByb2ZpbGU6IHN0cmluZztcclxuICBsaW5lQXNzb2NpYXRpb25zOiBMaW5lQXNzb2NpYXRpb25JbnRlcmZhY2VbXTtcclxuICBzcGVlZERpYWxzOiBTcGVlZERpYWxJbnRlcmZhY2VbXTtcclxuICBzaXBQcm9maWxlOiBzdHJpbmc7XHJcbiAgc3Vic2NyaWJlQ2FsbGluZ1NlYXJjaFNwYWNlTmFtZTogc3RyaW5nO1xyXG4gIGNvbW1vblBob25lQ29uZmlnTmFtZTogc3RyaW5nO1xyXG4gIGN0aVJlbW90ZURldmljZTogYm9vbGVhbjtcclxuICBmaXJzdEV4cGFuc2lvbk1vZHVsZTogc3RyaW5nO1xyXG4gIHNlY29uZEV4cGFuc2lvbk1vZHVsZTogc3RyaW5nO1xyXG4gIHRoaXJkRXhwYW5zaW9uTW9kdWxlOiBzdHJpbmc7XHJcbiAgYnVpbHRJbkJyaWRnZTogc3RyaW5nO1xyXG4gIGV4dHJhT3B0aW9uczogRGV2aWNlRXh0cmFPcHRpb25zSW50ZXJmYWNlO1xyXG4gIGZvcm1EaXNhYmxlZENvbnRyb2xzOiBzdHJpbmdbXTtcclxuICBzaGFyZWRVc2Vyczogc3RyaW5nW107XHJcbiAgYnVzeUxhbXBGaWVsZHM6IEJ1c3lMYW1wRmllbGRzSW50ZXJmYWNlW107XHJcbiAgbWVldE1lRW5hYmxlZDogYm9vbGVhbjtcclxuICBkZXZpY2VLaW5kOiBhbnk7XHJcbiAgaXNDdGlSb3V0ZVBvaW50OiBib29sZWFuO1xyXG4gIGN1Y21JZDogc3RyaW5nO1xyXG4gIHBsYXJEZXZpY2U6IGJvb2xlYW47XHJcbiAgZmlybXdhcmVWZXJzaW9uOiBhbnk7XHJcbiAgY2VydGlmaWNhdGVPcGVyYXRpb246IHN0cmluZztcclxuICBhdXRoZW50aWNhdGlvbk1vZGU6IHN0cmluZztcclxuICBhdXRoZW50aWNhdGlvblN0cmluZzogc3RyaW5nO1xyXG4gIHJzYUtleVNpemU6IHN0cmluZztcclxuICBvcGVyYXRpb25Db21wbGV0ZXNCeTogc3RyaW5nO1xyXG4gIGNlcnRpZmljYXRlU3RhdHVzOiBzdHJpbmc7XHJcbiAgZGF5OiBzdHJpbmc7XHJcbiAgbW9udGg6IHN0cmluZztcclxuICB5ZWFyOiBzdHJpbmc7XHJcbiAgaG91cjogc3RyaW5nO1xyXG4gIHNlY3VyaXR5UHJvZmlsZVV1aWQ6IHN0cmluZztcclxuICBleGNsdWRlRGV2aWNlRXh0cmFPcHRpb25zOiBib29sZWFuO1xyXG4gIHdlYmV4VVVJRDogc3RyaW5nO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgU3BlZWREaWFsSW50ZXJmYWNlIHtcclxuICBpbmRleDogbnVtYmVyO1xyXG4gIHBvc2l0aW9uOiBudW1iZXI7XHJcbiAgZGVzdGluYXRpb246IHN0cmluZztcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIGVkaXRNb2RlOiBib29sZWFuO1xyXG59XHJcbmV4cG9ydCBlbnVtIFJlY29yZGluZ09wdGlvbnMge1xyXG4gIGRpc2FibGVkID0gJ0NhbGwgUmVjb3JkaW5nIERpc2FibGVkJyxcclxuICBhdXRvX2VuYWJsZWQgPSAnQXV0b21hdGljIENhbGwgUmVjb3JkaW5nIEVuYWJsZWQnLFxyXG4gIHNlbGVjdGl2ZV9lbmFibGVkID0gJ1NlbGVjdGl2ZSBDYWxsIFJlY29yZGluZyBFbmFibGVkJ1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgTGluZUNhbGxJbmZvRGlzcGxheUludGVyZmFjZSB7XHJcbiAgY2FsbGVyTmFtZTogc3RyaW5nO1xyXG4gIGNhbGxlck51bWJlcjogc3RyaW5nO1xyXG4gIHJlZGlyZWN0ZWROdW1iZXI6IHN0cmluZztcclxuICBkaWFsZWROdW1iZXI6IHN0cmluZztcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFNpdGVTaG9ydERhdGFJbnRlcmZhY2Uge1xyXG4gIGlkOiBudW1iZXI7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgRGV2aWNlRXh0cmFPcHRpb25zSW50ZXJmYWNlIHtcclxuICBtZWRpYVJlc291cmNlR3JvdXBMaXN0OiBzdHJpbmc7XHJcbiAgdXNlckhvbGRNT0hBdWRpb1NvdXJjZUlkOiBudW1iZXI7XHJcbiAgdXNlckhvbGRNT0hBdWRpb1NvdXJjZU5hbWU6IHN0cmluZztcclxuICBuZXR3b3JrTU9IQXVkaW9Tb3VyY2VJZDogbnVtYmVyO1xyXG4gIG5ldHdvcmtNT0hBdWRpb1NvdXJjZU5hbWU6IHN0cmluZztcclxuICBhYXJDc3M6IHN0cmluZztcclxuICBhYXJHcm91cDogc3RyaW5nO1xyXG4gIHByaXZhY3k6IHN0cmluZztcclxuICBkZXZpY2VNb2JpbGl0eU1vZGU6IHN0cmluZztcclxuICBtb2JpbGl0eVVzZXJJZDogc3RyaW5nO1xyXG4gIHBob25lUGVyc29uYWxpemF0aW9uOiBzdHJpbmc7XHJcbiAgc2VydmljZXNQcm92aXNpb25pbmc6IHN0cmluZztcclxuICBwaG9uZUxvYWROYW1lOiBzdHJpbmc7XHJcbiAgcGhvbmVJZGxlQkxGQWxlcnRTZXR0aW5nOiBzdHJpbmc7XHJcbiAgcGhvbmVCdXN5QkxGQWxlcnRTZXR0aW5nOiBzdHJpbmc7XHJcbiAgdXNlVHJ1c3RlZFJlbGF5UG9pbnQ6IHN0cmluZztcclxuICBhbHdheXNVc2VQcmltZUxpbmU6IHN0cmluZztcclxuICBhbHdheXNVc2VQcmltZUxpbmVGb3JWb2ljZU1lc3NhZ2U6IHN0cmluZztcclxuICBnZW9sb2NhdGlvbjogc3RyaW5nO1xyXG4gIGVtZXJnZW5jeUxvY2F0aW9uOiBzdHJpbmc7XHJcbiAgaWdub3JlUHJlc2VudGF0aW9uSW5kaWNhdG9yczogYm9vbGVhbjtcclxuICBsb2dnZWRJbnRvSHVudEdyb3VwOiBib29sZWFuO1xyXG4gIGVuYWJsZWRFeHRlbnNpb25Nb2JpbGl0eTogYm9vbGVhbjtcclxuICByZW1vdGVEZXZpY2U6IGJvb2xlYW47XHJcbiAgcHJvdGVjdGVkRGV2aWNlOiBib29sZWFuO1xyXG4gIGhvdGxpbmVEZXZpY2U6IGJvb2xlYW47XHJcbiAgdXNlRGV2aWNlUG9vbENncG5JbmdyZXNzRE46IGJvb2xlYW47XHJcbiAgY2dwbkluZ3Jlc3NETjogc3RyaW5nO1xyXG4gIHVzZURldmljZVBvb2xDZ3BuVHJhbnNmb3JtQ3NzOiBib29sZWFuO1xyXG4gIGNncG5UcmFuc2Zvcm1hdGlvbkNzczogc3RyaW5nO1xyXG4gIHBhY2tldENhcHR1cmVNb2RlOiBzdHJpbmc7XHJcbiAgcGFja2V0Q2FwdHVyZUR1cmF0aW9uOiBudW1iZXI7XHJcbiAgYmxmUHJlc2VuY2VHcm91cDogc3RyaW5nO1xyXG4gIHNpcERpYWxSdWxlczogc3RyaW5nO1xyXG4gIG10cFByZWZlcnJlZE9yaWdpbmF0aW5nQ29kZWM6IHN0cmluZztcclxuICByZXJvdXRlQ3NzOiBzdHJpbmc7XHJcbiAgc3Vic2NyaWJlQ3NzOiBzdHJpbmc7XHJcbiAgbXRwUmVxdWlyZWQ6IGJvb2xlYW47XHJcbiAgdW5hdHRlbmRlZFBvcnQ6IGJvb2xlYW47XHJcbiAgcmVxdWlyZUR0bWZSZWNlcHRpb246IGJvb2xlYW47XHJcbiAgaW5mb3JtYXRpb25Vcmw6IHN0cmluZztcclxuICBkaXJlY3RvcnlVcmw6IHN0cmluZztcclxuICBtZXNzYWdlc1VybDogc3RyaW5nO1xyXG4gIHNlcnZpY2VzVXJsOiBzdHJpbmc7XHJcbiAgYXV0aGVudGljYXRpb25Vcmw6IHN0cmluZztcclxuICBwcm94eVNlcnZlclVybDogc3RyaW5nO1xyXG4gIGlkbGVVcmw6IHN0cmluZztcclxuICBpZGxlVGltZW91dDogc3RyaW5nO1xyXG4gIHNlY3VyZUF1dGhlbnRpY2F0aW9uVXJsOiBzdHJpbmc7XHJcbiAgc2VjdXJlRGlyZWN0b3J5VXJsOiBzdHJpbmc7XHJcbiAgc2VjdXJlSWRsZVVybDogc3RyaW5nO1xyXG4gIHNlY3VyZUluZm9ybWF0aW9uVXJsOiBzdHJpbmc7XHJcbiAgc2VjdXJlTWVzc2FnZVVybDogc3RyaW5nO1xyXG4gIHNlY3VyZVNlcnZpY2VzVXJsOiBzdHJpbmc7XHJcbiAgbWxwcERvbWFpbjogc3RyaW5nO1xyXG4gIG1scHBJbmRpY2F0aW9uOiBzdHJpbmc7XHJcbiAgbWxwcFByZWVtcHRpb246IHN0cmluZztcclxuICBjb25maWRlbnRpYWxBY2Nlc3NNb2RlOiBzdHJpbmc7XHJcbiAgY29uZmlkZW50aWFsQWNjZXNzTGV2ZWw6IHN0cmluZztcclxuICBjb25maWRlbnRpYWxBY2Nlc3NMZXZlbE5hbWU6IHN0cmluZztcclxuICBkb05vdERpc3R1cmI6IGJvb2xlYW47XHJcbiAgZG5kT3B0aW9uOiBzdHJpbmc7XHJcbiAgZG5kSW5jb21pbmdDYWxsQWxlcnQ6IHN0cmluZztcclxuICBkaXNhYmxlU3BlYWtlcnBob25lOiBib29sZWFuO1xyXG4gIGRpc2FibGVTcGVha2VycGhvbmVBbmRIZWFkc2V0OiBib29sZWFuO1xyXG4gIGZvcndhcmRpbmdEZWxheTogYm9vbGVhbjtcclxuICBwY1BvcnQ6IGJvb2xlYW47XHJcbiAgc2V0dGluZ3NBY2Nlc3M6IHN0cmluZztcclxuICBncmF0dWl0b3VzQVJQOiBib29sZWFuO1xyXG4gIHBjVm9pY2VWbGFuQWNjZXNzOiBib29sZWFuO1xyXG4gIHZpZGVvQ2FwYWJpbGl0aWVzOiBib29sZWFuO1xyXG4gIHdlYkFjY2VzczogYm9vbGVhbjtcclxuICBkYXlzRGlzcGxheU5vdEFjdGl2ZTogc3RyaW5nW107XHJcbiAgZGlzcGxheU9uVGltZTogc3RyaW5nO1xyXG4gIGRpc3BsYXlPbkR1cmF0aW9uOiBzdHJpbmc7XHJcbiAgZGlzcGxheUlkbGVUaW1lb3V0OiBzdHJpbmc7XHJcbiAgd2lyZWxlc3NIZWFkc2V0SG9va3N3aXRjaENvbnRyb2w6IGJvb2xlYW47XHJcbiAgbWluUmluZ1ZvbHVtZTogc3RyaW5nO1xyXG4gIHNob3dBbGxDYWxsc09uUEw6IGJvb2xlYW47XHJcbiAgbGluZU1vZGU6IHN0cmluZztcclxuICBsYXRlbnRDYXBhYmlsaXR5UmVnaXN0cmF0aW9uOiBzdHJpbmc7XHJcbiAgYW5hbG9nR2F0ZXdheVBvcnRJbmZvcm1hdGlvbjogQW5hbG9nR2F0ZXdheVBvcnRJbmZvcm1hdGlvbkludGVyRmFjZTtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIEFuYWxvZ0dhdGV3YXlQb3J0SW5mb3JtYXRpb25JbnRlckZhY2Uge1xyXG4gIHBvcnREaXJlY3Rpb246IHN0cmluZztcclxuICBwcmVmaXhEbjogc3RyaW5nO1xyXG4gIG51bURpZ2l0czogbnVtYmVyO1xyXG4gIGV4cGVjdGVkRGlnaXRzOiBudW1iZXI7XHJcbiAgc21kaVBvcnROdW1iZXI6IG51bWJlcjtcclxuICB0cnVuazogc3RyaW5nO1xyXG4gIHVuYXR0ZW5kZWRQb3J0OiBzdHJpbmc7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBCdXN5TGFtcEZpZWxkc0ludGVyZmFjZSB7XHJcbiAgaW5kZXg6IG51bWJlcjtcclxuICBwb3NpdGlvbjogbnVtYmVyO1xyXG4gIGRlc3RpbmF0aW9uOiBzdHJpbmc7XHJcbiAgZG5XaXRoUm91dGVQYXJ0aXRpb246IHN0cmluZztcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIGNhbGxQaWNrdXA6IGJvb2xlYW47XHJcbn1cclxuIl19
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItbWFuYWdlL3NyYy9jbGFzc2VzL2RldmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFckQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBR3JELE1BQU0sT0FBTyxNQUFNO0lBd0JqQixZQUFZLE1BQVc7UUFsQnZCLCtCQUEwQixHQUFHLEtBQUssQ0FBQztRQWdCbkMsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFHbEIsSUFBSSxNQUFNLEVBQUU7WUFDVixJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO1lBQzFCLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztZQUNwQyxJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUM7WUFDaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDO1lBQ3RDLElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQztZQUM1QyxJQUFJLENBQUMsZUFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUM7WUFDOUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDO1lBQzVDLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQztZQUNoQyxJQUFJLENBQUMsZUFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUM7WUFDOUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDO1lBQ3RDLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxNQUFNLENBQUMsc0JBQXNCLENBQUM7WUFDNUQsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFNBQVMsQ0FBQyxDQUFDLGdCQUFnQjtZQUNyRCxJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxDQUFDLGdCQUFnQjtZQUV6QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUN2RCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7U0FDOUU7SUFDSCxDQUFDO0lBRUQsY0FBYztRQUNaLE1BQU0sY0FBYyxHQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDMUMsT0FBTyxjQUFjLENBQUMsSUFBSSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQzlDLENBQUM7Q0FDRjtBQTZERCxNQUFNLENBQU4sSUFBWSxnQkFJWDtBQUpELFdBQVksZ0JBQWdCO0lBQzFCLHdEQUFvQyxDQUFBO0lBQ3BDLHFFQUFpRCxDQUFBO0lBQ2pELDBFQUFzRCxDQUFBO0FBQ3hELENBQUMsRUFKVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBSTNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0U2F2YWJsZURhdGEgfSBmcm9tICcuLi9jb21tb24tZnVuY3Rpb25zJztcbmltcG9ydCB7IEVudGl0eUNoYW5nZVR5cGUgfSBmcm9tICcuL2xpbmUnO1xuaW1wb3J0IHsgTGluZUFzc29jaWF0aW9uIH0gZnJvbSAnLi9saW5lLWFzc29jaWF0aW9uJztcbmltcG9ydCB7IExpbmVBc3NvY2lhdGlvbkludGVyZmFjZSB9IGZyb20gJy4vbGluZS1hc3NvY2lhdGlvbi1pbnRlcmZhY2UnO1xuXG5leHBvcnQgY2xhc3MgRGV2aWNlIHtcbiAgLy8gc2ltcGxpZmllZCBURU1QXG4gIG5hbWUhOiBzdHJpbmc7XG4gIHBraWlkITogc3RyaW5nXG4gIGRldmljZVR5cGUhOiBzdHJpbmc7XG4gIGxpbmVBc3NvY2lhdGlvbnMhOiBMaW5lQXNzb2NpYXRpb25bXSB8IExpbmVBc3NvY2lhdGlvbkludGVyZmFjZVtdO1xuICBsaW5lQXNzb2NpYXRpb25zSGFzQ2hhbmdlcyA9IGZhbHNlO1xuICBwcm90b2NvbCE6IHN0cmluZztcbiAgZGVzY3JpcHRpb24hOiBzdHJpbmc7XG4gIGJ1dHRvblRlbXBsYXRlITogc3RyaW5nO1xuICBzb2Z0a2V5VGVtcGxhdGUhOiBzdHJpbmc7XG4gIGRldmljZVBvb2xOYW1lITogc3RyaW5nO1xuICBsb2NhdGlvbiE6IHN0cmluZztcbiAgY2FsbGluZ1NlYXJjaFNwYWNlTmFtZSE6IHN0cmluZztcbiAgZmlybXdhcmVWZXJzaW9uITogc3RyaW5nO1xuICByZWdpc3RyYXRpb25TdGF0dXMhOiBzdHJpbmdcbiAgaXBBZGRyZXNzITogc3RyaW5nO1xuICBkZXZpY2VLaW5kITogc3RyaW5nO1xuICBpc0N0aVJvdXRlUG9pbnQhOiBib29sZWFuO1xuICBhbHJlYWR5VXNlZE5hbWUhOiBzdHJpbmc7XG4gIGRldmljZURlZmF1bHRzOiBhbnk7XG4gIGF2YWlsYWJsZVNsb3RzITogbnVtYmVyW107XG4gIHBsYXJTZXJ2aWNlID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoZGV2aWNlOiBhbnkpIHtcbiAgICBpZiAoZGV2aWNlKSB7XG4gICAgICB0aGlzLm5hbWUgPSBkZXZpY2UubmFtZTtcbiAgICAgIHRoaXMucGtpaWQgPSBkZXZpY2UucGtpaWQ7XG4gICAgICB0aGlzLmRldmljZVR5cGUgPSBkZXZpY2UuZGV2aWNlVHlwZTtcbiAgICAgIHRoaXMucHJvdG9jb2wgPSBkZXZpY2UucHJvdG9jb2w7XG4gICAgICB0aGlzLmRlc2NyaXB0aW9uID0gZGV2aWNlLmRlc2NyaXB0aW9uO1xuICAgICAgdGhpcy5idXR0b25UZW1wbGF0ZSA9IGRldmljZS5idXR0b25UZW1wbGF0ZTtcbiAgICAgIHRoaXMuc29mdGtleVRlbXBsYXRlID0gZGV2aWNlLnNvZnRrZXlUZW1wbGF0ZTtcbiAgICAgIHRoaXMuZGV2aWNlUG9vbE5hbWUgPSBkZXZpY2UuZGV2aWNlUG9vbE5hbWU7XG4gICAgICB0aGlzLmxvY2F0aW9uID0gZGV2aWNlLmxvY2F0aW9uO1xuICAgICAgdGhpcy5maXJtd2FyZVZlcnNpb24gPSBkZXZpY2UuZmlybXdhcmVWZXJzaW9uO1xuICAgICAgdGhpcy5wbGFyU2VydmljZSA9IGRldmljZS5wbGFyU2VydmljZTtcbiAgICAgIHRoaXMuY2FsbGluZ1NlYXJjaFNwYWNlTmFtZSA9IGRldmljZS5jYWxsaW5nU2VhcmNoU3BhY2VOYW1lO1xuICAgICAgdGhpcy5yZWdpc3RyYXRpb25TdGF0dXMgPSAnVW5rbm93bic7IC8vIFRFTVAgZm9yIGRlbW9cbiAgICAgIHRoaXMuaXBBZGRyZXNzID0gJ05vbmUnOyAvLyBURU1QIGZvciBkZW1vXG5cbiAgICAgIHRoaXMubGluZUFzc29jaWF0aW9ucyA9IGRldmljZS5saW5lQXNzb2NpYXRpb25zPy5sZW5ndGggP1xuICAgICAgICBkZXZpY2UubGluZUFzc29jaWF0aW9ucy5tYXAoKGxpbmU6IGFueSkgPT4gbmV3IExpbmVBc3NvY2lhdGlvbihsaW5lKSkgOiBbXTtcbiAgICB9XG4gIH1cblxuICBnZXRTYXZhYmxlRGF0YSgpIHtcbiAgICBjb25zdCBleGNsdWRlZEZpZWxkczogc3RyaW5nW10gPSBbJ2Zvcm0nXTtcbiAgICByZXR1cm4gZ2V0U2F2YWJsZURhdGEodGhpcywgZXhjbHVkZWRGaWVsZHMpO1xuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGV2aWNlSW50ZXJmYWNlIHtcbiAgbmFtZTogc3RyaW5nO1xuICBuZXdOYW1lOiBzdHJpbmc7XG4gIHBraWQ6IHN0cmluZztcbiAgZW50aXR5Q2hhbmdlVHlwZTogRW50aXR5Q2hhbmdlVHlwZTtcbiAgZGV2aWNlVHlwZTogc3RyaW5nO1xuICBwcm90b2NvbDogc3RyaW5nO1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICBidXR0b25UZW1wbGF0ZTogc3RyaW5nO1xuICBzb2Z0a2V5VGVtcGxhdGU6IHN0cmluZztcbiAgZGV2aWNlUG9vbE5hbWU6IHN0cmluZztcbiAgbG9jYXRpb246IHN0cmluZztcbiAgdXNlckxvY2FsZTogc3RyaW5nO1xuICBlbmFibGVkRXh0ZW5zaW9uTW9iaWxpdHk6IGJvb2xlYW47XG4gIGNhbGxpbmdTZWFyY2hTcGFjZU5hbWU6IHN0cmluZztcbiAgc2VydmljZXM6IHN0cmluZ1tdO1xuICBuZXR3b3JrTG9jYWxlOiBzdHJpbmc7XG4gIHNlY3VyaXR5UHJvZmlsZTogc3RyaW5nO1xuICBsaW5lQXNzb2NpYXRpb25zOiBMaW5lQXNzb2NpYXRpb25JbnRlcmZhY2VbXTtcbiAgc3BlZWREaWFsczogU3BlZWREaWFsSW50ZXJmYWNlW107XG4gIHNpcFByb2ZpbGU6IHN0cmluZztcbiAgc3Vic2NyaWJlQ2FsbGluZ1NlYXJjaFNwYWNlTmFtZTogc3RyaW5nO1xuICBjb21tb25QaG9uZUNvbmZpZ05hbWU6IHN0cmluZztcbiAgY3RpUmVtb3RlRGV2aWNlOiBib29sZWFuO1xuICBmaXJzdEV4cGFuc2lvbk1vZHVsZTogc3RyaW5nO1xuICBzZWNvbmRFeHBhbnNpb25Nb2R1bGU6IHN0cmluZztcbiAgdGhpcmRFeHBhbnNpb25Nb2R1bGU6IHN0cmluZztcbiAgYnVpbHRJbkJyaWRnZTogc3RyaW5nO1xuICBleHRyYU9wdGlvbnM6IERldmljZUV4dHJhT3B0aW9uc0ludGVyZmFjZTtcbiAgZm9ybURpc2FibGVkQ29udHJvbHM6IHN0cmluZ1tdO1xuICBzaGFyZWRVc2Vyczogc3RyaW5nW107XG4gIGJ1c3lMYW1wRmllbGRzOiBCdXN5TGFtcEZpZWxkc0ludGVyZmFjZVtdO1xuICBtZWV0TWVFbmFibGVkOiBib29sZWFuO1xuICBkZXZpY2VLaW5kOiBhbnk7XG4gIGlzQ3RpUm91dGVQb2ludDogYm9vbGVhbjtcbiAgY3VjbUlkOiBzdHJpbmc7XG4gIHBsYXJEZXZpY2U6IGJvb2xlYW47XG4gIGZpcm13YXJlVmVyc2lvbjogYW55O1xuICBjZXJ0aWZpY2F0ZU9wZXJhdGlvbjogc3RyaW5nO1xuICBhdXRoZW50aWNhdGlvbk1vZGU6IHN0cmluZztcbiAgYXV0aGVudGljYXRpb25TdHJpbmc6IHN0cmluZztcbiAgcnNhS2V5U2l6ZTogc3RyaW5nO1xuICBvcGVyYXRpb25Db21wbGV0ZXNCeTogc3RyaW5nO1xuICBjZXJ0aWZpY2F0ZVN0YXR1czogc3RyaW5nO1xuICBkYXk6IHN0cmluZztcbiAgbW9udGg6IHN0cmluZztcbiAgeWVhcjogc3RyaW5nO1xuICBob3VyOiBzdHJpbmc7XG4gIHNlY3VyaXR5UHJvZmlsZVV1aWQ6IHN0cmluZztcbiAgZXhjbHVkZURldmljZUV4dHJhT3B0aW9uczogYm9vbGVhbjtcbiAgd2ViZXhVVUlEOiBzdHJpbmc7XG59XG5leHBvcnQgaW50ZXJmYWNlIFNwZWVkRGlhbEludGVyZmFjZSB7XG4gIGluZGV4OiBudW1iZXI7XG4gIHBvc2l0aW9uOiBudW1iZXI7XG4gIGRlc3RpbmF0aW9uOiBzdHJpbmc7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIGVkaXRNb2RlOiBib29sZWFuO1xufVxuZXhwb3J0IGVudW0gUmVjb3JkaW5nT3B0aW9ucyB7XG4gIGRpc2FibGVkID0gJ0NhbGwgUmVjb3JkaW5nIERpc2FibGVkJyxcbiAgYXV0b19lbmFibGVkID0gJ0F1dG9tYXRpYyBDYWxsIFJlY29yZGluZyBFbmFibGVkJyxcbiAgc2VsZWN0aXZlX2VuYWJsZWQgPSAnU2VsZWN0aXZlIENhbGwgUmVjb3JkaW5nIEVuYWJsZWQnXG59XG5leHBvcnQgaW50ZXJmYWNlIExpbmVDYWxsSW5mb0Rpc3BsYXlJbnRlcmZhY2Uge1xuICBjYWxsZXJOYW1lOiBzdHJpbmc7XG4gIGNhbGxlck51bWJlcjogc3RyaW5nO1xuICByZWRpcmVjdGVkTnVtYmVyOiBzdHJpbmc7XG4gIGRpYWxlZE51bWJlcjogc3RyaW5nO1xufVxuZXhwb3J0IGludGVyZmFjZSBTaXRlU2hvcnREYXRhSW50ZXJmYWNlIHtcbiAgaWQ6IG51bWJlcjtcbiAgbmFtZTogc3RyaW5nO1xufVxuZXhwb3J0IGludGVyZmFjZSBEZXZpY2VFeHRyYU9wdGlvbnNJbnRlcmZhY2Uge1xuICBtZWRpYVJlc291cmNlR3JvdXBMaXN0OiBzdHJpbmc7XG4gIHVzZXJIb2xkTU9IQXVkaW9Tb3VyY2VJZDogbnVtYmVyO1xuICB1c2VySG9sZE1PSEF1ZGlvU291cmNlTmFtZTogc3RyaW5nO1xuICBuZXR3b3JrTU9IQXVkaW9Tb3VyY2VJZDogbnVtYmVyO1xuICBuZXR3b3JrTU9IQXVkaW9Tb3VyY2VOYW1lOiBzdHJpbmc7XG4gIGFhckNzczogc3RyaW5nO1xuICBhYXJHcm91cDogc3RyaW5nO1xuICBwcml2YWN5OiBzdHJpbmc7XG4gIGRldmljZU1vYmlsaXR5TW9kZTogc3RyaW5nO1xuICBtb2JpbGl0eVVzZXJJZDogc3RyaW5nO1xuICBwaG9uZVBlcnNvbmFsaXphdGlvbjogc3RyaW5nO1xuICBzZXJ2aWNlc1Byb3Zpc2lvbmluZzogc3RyaW5nO1xuICBwaG9uZUxvYWROYW1lOiBzdHJpbmc7XG4gIHBob25lSWRsZUJMRkFsZXJ0U2V0dGluZzogc3RyaW5nO1xuICBwaG9uZUJ1c3lCTEZBbGVydFNldHRpbmc6IHN0cmluZztcbiAgdXNlVHJ1c3RlZFJlbGF5UG9pbnQ6IHN0cmluZztcbiAgYWx3YXlzVXNlUHJpbWVMaW5lOiBzdHJpbmc7XG4gIGFsd2F5c1VzZVByaW1lTGluZUZvclZvaWNlTWVzc2FnZTogc3RyaW5nO1xuICBnZW9sb2NhdGlvbjogc3RyaW5nO1xuICBlbWVyZ2VuY3lMb2NhdGlvbjogc3RyaW5nO1xuICBpZ25vcmVQcmVzZW50YXRpb25JbmRpY2F0b3JzOiBib29sZWFuO1xuICBsb2dnZWRJbnRvSHVudEdyb3VwOiBib29sZWFuO1xuICBlbmFibGVkRXh0ZW5zaW9uTW9iaWxpdHk6IGJvb2xlYW47XG4gIHJlbW90ZURldmljZTogYm9vbGVhbjtcbiAgcHJvdGVjdGVkRGV2aWNlOiBib29sZWFuO1xuICBob3RsaW5lRGV2aWNlOiBib29sZWFuO1xuICB1c2VEZXZpY2VQb29sQ2dwbkluZ3Jlc3NETjogYm9vbGVhbjtcbiAgY2dwbkluZ3Jlc3NETjogc3RyaW5nO1xuICB1c2VEZXZpY2VQb29sQ2dwblRyYW5zZm9ybUNzczogYm9vbGVhbjtcbiAgY2dwblRyYW5zZm9ybWF0aW9uQ3NzOiBzdHJpbmc7XG4gIHBhY2tldENhcHR1cmVNb2RlOiBzdHJpbmc7XG4gIHBhY2tldENhcHR1cmVEdXJhdGlvbjogbnVtYmVyO1xuICBibGZQcmVzZW5jZUdyb3VwOiBzdHJpbmc7XG4gIHNpcERpYWxSdWxlczogc3RyaW5nO1xuICBtdHBQcmVmZXJyZWRPcmlnaW5hdGluZ0NvZGVjOiBzdHJpbmc7XG4gIHJlcm91dGVDc3M6IHN0cmluZztcbiAgc3Vic2NyaWJlQ3NzOiBzdHJpbmc7XG4gIG10cFJlcXVpcmVkOiBib29sZWFuO1xuICB1bmF0dGVuZGVkUG9ydDogYm9vbGVhbjtcbiAgcmVxdWlyZUR0bWZSZWNlcHRpb246IGJvb2xlYW47XG4gIGluZm9ybWF0aW9uVXJsOiBzdHJpbmc7XG4gIGRpcmVjdG9yeVVybDogc3RyaW5nO1xuICBtZXNzYWdlc1VybDogc3RyaW5nO1xuICBzZXJ2aWNlc1VybDogc3RyaW5nO1xuICBhdXRoZW50aWNhdGlvblVybDogc3RyaW5nO1xuICBwcm94eVNlcnZlclVybDogc3RyaW5nO1xuICBpZGxlVXJsOiBzdHJpbmc7XG4gIGlkbGVUaW1lb3V0OiBzdHJpbmc7XG4gIHNlY3VyZUF1dGhlbnRpY2F0aW9uVXJsOiBzdHJpbmc7XG4gIHNlY3VyZURpcmVjdG9yeVVybDogc3RyaW5nO1xuICBzZWN1cmVJZGxlVXJsOiBzdHJpbmc7XG4gIHNlY3VyZUluZm9ybWF0aW9uVXJsOiBzdHJpbmc7XG4gIHNlY3VyZU1lc3NhZ2VVcmw6IHN0cmluZztcbiAgc2VjdXJlU2VydmljZXNVcmw6IHN0cmluZztcbiAgbWxwcERvbWFpbjogc3RyaW5nO1xuICBtbHBwSW5kaWNhdGlvbjogc3RyaW5nO1xuICBtbHBwUHJlZW1wdGlvbjogc3RyaW5nO1xuICBjb25maWRlbnRpYWxBY2Nlc3NNb2RlOiBzdHJpbmc7XG4gIGNvbmZpZGVudGlhbEFjY2Vzc0xldmVsOiBzdHJpbmc7XG4gIGNvbmZpZGVudGlhbEFjY2Vzc0xldmVsTmFtZTogc3RyaW5nO1xuICBkb05vdERpc3R1cmI6IGJvb2xlYW47XG4gIGRuZE9wdGlvbjogc3RyaW5nO1xuICBkbmRJbmNvbWluZ0NhbGxBbGVydDogc3RyaW5nO1xuICBkaXNhYmxlU3BlYWtlcnBob25lOiBib29sZWFuO1xuICBkaXNhYmxlU3BlYWtlcnBob25lQW5kSGVhZHNldDogYm9vbGVhbjtcbiAgZm9yd2FyZGluZ0RlbGF5OiBib29sZWFuO1xuICBwY1BvcnQ6IGJvb2xlYW47XG4gIHNldHRpbmdzQWNjZXNzOiBzdHJpbmc7XG4gIGdyYXR1aXRvdXNBUlA6IGJvb2xlYW47XG4gIHBjVm9pY2VWbGFuQWNjZXNzOiBib29sZWFuO1xuICB2aWRlb0NhcGFiaWxpdGllczogYm9vbGVhbjtcbiAgd2ViQWNjZXNzOiBib29sZWFuO1xuICBkYXlzRGlzcGxheU5vdEFjdGl2ZTogc3RyaW5nW107XG4gIGRpc3BsYXlPblRpbWU6IHN0cmluZztcbiAgZGlzcGxheU9uRHVyYXRpb246IHN0cmluZztcbiAgZGlzcGxheUlkbGVUaW1lb3V0OiBzdHJpbmc7XG4gIHdpcmVsZXNzSGVhZHNldEhvb2tzd2l0Y2hDb250cm9sOiBib29sZWFuO1xuICBtaW5SaW5nVm9sdW1lOiBzdHJpbmc7XG4gIHNob3dBbGxDYWxsc09uUEw6IGJvb2xlYW47XG4gIGxpbmVNb2RlOiBzdHJpbmc7XG4gIGxhdGVudENhcGFiaWxpdHlSZWdpc3RyYXRpb246IHN0cmluZztcbiAgYW5hbG9nR2F0ZXdheVBvcnRJbmZvcm1hdGlvbjogQW5hbG9nR2F0ZXdheVBvcnRJbmZvcm1hdGlvbkludGVyRmFjZTtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgQW5hbG9nR2F0ZXdheVBvcnRJbmZvcm1hdGlvbkludGVyRmFjZSB7XG4gIHBvcnREaXJlY3Rpb246IHN0cmluZztcbiAgcHJlZml4RG46IHN0cmluZztcbiAgbnVtRGlnaXRzOiBudW1iZXI7XG4gIGV4cGVjdGVkRGlnaXRzOiBudW1iZXI7XG4gIHNtZGlQb3J0TnVtYmVyOiBudW1iZXI7XG4gIHRydW5rOiBzdHJpbmc7XG4gIHVuYXR0ZW5kZWRQb3J0OiBzdHJpbmc7XG59XG5leHBvcnQgaW50ZXJmYWNlIEJ1c3lMYW1wRmllbGRzSW50ZXJmYWNlIHtcbiAgaW5kZXg6IG51bWJlcjtcbiAgcG9zaXRpb246IG51bWJlcjtcbiAgZGVzdGluYXRpb246IHN0cmluZztcbiAgZG5XaXRoUm91dGVQYXJ0aXRpb246IHN0cmluZztcbiAgbGFiZWw6IHN0cmluZztcbiAgY2FsbFBpY2t1cDogYm9vbGVhbjtcbn1cbiJdfQ==
|
|
@@ -107,4 +107,4 @@ export class LineAssociation {
|
|
|
107
107
|
this.directoryNumber.routePartitionName === line.directoryNumber.routePartitionName;
|
|
108
108
|
}
|
|
109
109
|
}
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1hc3NvY2lhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLW1hbmFnZS9zcmMvY2xhc3Nlcy9saW5lLWFzc29jaWF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsV0FBVyxFQUFhLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRTVDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUUxRCxNQUFNLE9BQU8sZUFBZTtJQStDMUIsWUFBWSxlQUFvQjtRQWRoQyxnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNqQixrQkFBYSxHQUFHLEVBQUUsQ0FBQztRQWNqQixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxlQUFlLElBQUksRUFBRSxDQUFDLENBQUM7UUFDM0MsSUFBSSxlQUFlLEVBQUU7WUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxlQUFlLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQztZQUMzQyxJQUFJLENBQUMsUUFBUSxHQUFHLGVBQWUsQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDO1lBQ2pELElBQUksQ0FBQyxRQUFRLEdBQUcsZUFBZSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUM7WUFDL0MsSUFBSSxDQUFDLFNBQVMsR0FBRyxlQUFlLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQztZQUNqRCxJQUFJLENB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Q2xCLENBQUM7SUFFRCxjQUFjO1FBQ1osTUFBTSxjQUFjLEdBQUcsQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLG9CQUFvQixFQUFFLHVCQUF1QixFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUM3SSxPQUFPLGNBQWMsQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELGdCQUFnQjtJQUVoQixDQUFDO0lBRUQsUUFBUTtRQUNOLDRCQUE0QjtRQUM1QixNQUFNLFdBQVcsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ3RDLE1BQU0sWUFBWSxHQUFHO1lBQ25CLGVBQWUsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxJQUFJLEVBQUUsQ0FBQztTQUM5RCxDQUFDO1FBQ0YsSUFBSSxDQUFDLElBQUksR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FtQ0c7SUFFRCxNQUFNLENBQUMsSUFBMkI7UUFDbEMsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNULE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFDRCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxLQUFLLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZTtZQUNsRixJQUFJLENBQUMsZUFBZSxDQUFDLGtCQUFrQixLQUFLLElBQUksQ0FBQyxlQUFlLENBQUMsa0JBQWtCLENBQUM7SUFDeEYsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTGluZURpcmVjdG9yeSB9IGZyb20gJy4vbGluZS1kaXJlY3RvcnknO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBMaW5lQ2FsbEluZm9EaXNwbGF5IH0gZnJvbSAnLi9saW5lLWNhbGwtaW5mby1kaXNwbGF5JztcclxuaW1wb3J0IHsgVHJhbnNsYXRpb25QYXR0ZXJuIH0gZnJvbSAnLi90cmFuc2xhdGlvbi1wYXR0ZXJuJztcclxuaW1wb3J0IHsgUmVjb3JkaW5nT3B0aW9ucyB9IGZyb20gJy4vZGV2aWNlJztcclxuaW1wb3J0IHsgTGluZUFzc29jaWF0aW9uSW50ZXJmYWNlIH0gZnJvbSAnLi9saW5lLWFzc29jaWF0aW9uLWludGVyZmFjZSc7XHJcbmltcG9ydCB7IGdldFNhdmFibGVEYXRhIH0gZnJvbSAnLi4vY29tbW9uLWZ1bmN0aW9ucyc7XHJcbmltcG9ydCB7IFJFQ09SRElOR19NRURJQV9TT1VSQ0UgfSBmcm9tICcuLi9hcHAuY29uc3RhbnRzJztcclxuXHJcbmV4cG9ydCBjbGFzcyBMaW5lQXNzb2NpYXRpb24gaW1wbGVtZW50cyBMaW5lQXNzb2NpYXRpb25JbnRlcmZhY2Uge1xyXG4gIGluZGV4ITogbnVtYmVyO1xyXG4gIHBvc2l0aW9uOiBhbnk7XHJcbiAgZTE2NE1hc2shOiBzdHJpbmc7XHJcbiAgdGV4dExhYmVsITogc3RyaW5nO1xyXG4gIGRpc3BsYXlMYWJlbCE6IHN0cmluZztcclxuICBkaXNwbGF5TGFiZWxBc2NpaSE6IHN0cmluZztcclxuICBkaXJlY3RvcnlOdW1iZXIhOiBhbnk7XHJcbiAgZGlkUGF0dGVybiE6IGFueTtcclxuICBtYXBwZWREaWRzITogQXJyYXk8c3RyaW5nPjtcclxuICBsaW5lUGtpZCE6IHN0cmluZztcclxuICBtYXhOdW1iZXJPZkNhbGxzITogbnVtYmVyO1xyXG4gIGJ1c3lUcmlnZ2VyITogbnVtYmVyO1xyXG4gIHJlY29yZGluZ09wdGlvbiE6IFJlY29yZGluZ09wdGlvbnM7XHJcbiAgcmVjb3JkaW5nUHJvZmlsZSE6IHN0cmluZztcclxuICByZWNvcmRpbmdNZWRpYVNvdXJjZSE6IHN0cmluZztcclxuICB2aXN1YWxNV0khOiBzdHJpbmc7XHJcbiAgYXVkaWJsZU1XSSE6IHN0cmluZztcclxuICByaW5nU2V0dGluZ19pZGxlITogc3RyaW5nO1xyXG4gIHJpbmdTZXR0aW5nX2FjdGl2ZSE6IHN0cmluZztcclxuICBwaWNrdXBBQVNfaWRsZSE6IHN0cmluZztcclxuICBwaWNrdXBBQVNfYWN0aXZlITogc3RyaW5nO1xyXG4gIG1vbml0b3JDU1MhOiBzdHJpbmc7XHJcbiAgbG9nTWlzc2VkQ2FsbCE6IHN0cmluZztcclxuICBjYWxsSW5mb0Rpc3BsYXkhOiBMaW5lQ2FsbEluZm9EaXNwbGF5O1xyXG4gIGxpbmVMb2NhbElkITogc3RyaW5nO1xyXG4gIGNhbGxlck5hbWUhOiBzdHJpbmc7XHJcbiAgY2FsbGVyTnVtYmVyITogc3RyaW5nO1xyXG4gIHJlZGlyZWN0ZWROdW1iZXIhOiBzdHJpbmc7XHJcbiAgZGlhbGVkTnVtYmVyITogc3RyaW5nO1xyXG4gIC8vIG5vbi1zYXZhYmxlIGRhdGEgZmllbGRzXHJcbiAgdmlld01vZGUhOiBib29sZWFuO1xyXG4gIGZvcm0hOiBGb3JtR3JvdXA7XHJcbiAgc2hhcmVkVXNlcnMgPSBbXTtcclxuICBzaGFyZWREZXZpY2VzID0gW107XHJcbiAgY2FsbGluZ1NlYXJjaFNwYWNlITogc3RyaW5nO1xyXG4gIG93bmVyVXNlcklkITogQXJyYXk8c3RyaW5nPjtcclxuICBhc3NvY2lhdGVkITogYm9vbGVhbjtcclxuICBwYXR0ZXJuVXNhZ2UhOiBib29sZWFuO1xyXG4gIHBsYXJEZXN0aW5hdGlvbk51bWJlciE6IHN0cmluZztcclxuICBwcmVmaXhEaWdpdHMhOiBzdHJpbmc7XHJcbiAgcGxhckRlc2NyaXB0aW9uITogc3RyaW5nO1xyXG4gIHBsYXJFbmFibGVkITogYm9vbGVhbjtcclxuICBhbGVydGluZ05hbWUhOiBzdHJpbmc7XHJcbiAgZGVzY3JpcHRpb24hOiBzdHJpbmc7XHJcbiAgcG9wdWxhdGVXaXRoRGlkITogYm9vbGVhbjtcclxuXHJcbiAgY29uc3RydWN0b3IobGluZUFzc29jaWF0aW9uOiBhbnkpIHtcclxuICAgIE9iamVjdC5hc3NpZ24odGhpcywgbGluZUFzc29jaWF0aW9uIHx8IHt9KTtcclxuICAgIGlmIChsaW5lQXNzb2NpYXRpb24pIHtcclxuICAgICAgdGhpcy5pbmRleCA9IGxpbmVBc3NvY2lhdGlvbi5pbmRleCB8fCBudWxsO1xyXG4gICAgICB0aGlzLnBvc2l0aW9uID0gbGluZUFzc29jaWF0aW9uLnBvc2l0aW9uIHx8IG51bGw7XHJcbiAgICAgIHRoaXMuZTE2NE1hc2sgPSBsaW5lQXNzb2NpYXRpb24uZTE2NE1hc2sgfHwgJyc7XHJcbiAgICAgIHRoaXMudGV4dExhYmVsID0gbGluZUFzc29jaWF0aW9uLnRleHRMYWJlbCB8fCAnJztcclxuICAgICAgdGhpcy5kaXNwbGF5TGFiZWwgPSBsaW5lQXNzb2NpYXRpb24uZGlzcGxheUxhYmVsIHx8ICcnO1xyXG4gICAgICB0aGlzLmRpc3BsYXlMYWJlbEFzY2lpID0gbGluZUFzc29jaWF0aW9uLmRpc3BsYXlMYWJlbEFzY2lpIHx8ICcnO1xyXG4gICAgICB0aGlzLmxpbmVQa2lkID0gbGluZUFzc29jaWF0aW9uLmxpbmVQa2lkIHx8IGxpbmVBc3NvY2lhdGlvbi5wa2lkIHx8ICcnO1xyXG4gICAgICB0aGlzLm1heE51bWJlck9mQ2FsbHMgPSBsaW5lQXNzb2NpYXRpb24ubWF4TnVtYmVyT2ZDYWxscyB8fCBudWxsO1xyXG4gICAgICB0aGlzLmJ1c3lUcmlnZ2VyID0gbGluZUFzc29jaWF0aW9uLmJ1c3lUcmlnZ2VyIHx8IG51bGw7XHJcbiAgICAgIHRoaXMuZGlyZWN0b3J5TnVtYmVyID0gbmV3IExpbmVEaXJlY3RvcnkobGluZUFzc29jaWF0aW9uLmRpcmVjdG9yeU51bWJlcik7XHJcbiAgICAgIHRoaXMuZGlkUGF0dGVybiA9IG5ldyBUcmFuc2xhdGlvblBhdHRlcm4obGluZUFzc29jaWF0aW9uLmRpZFBhdHRlcm4pO1xyXG4gICAgICB0aGlzLnJlY29yZGluZ09wdGlvbiA9IGxpbmVBc3NvY2lhdGlvbi5yZWNvcmRpbmdPcHRpb24gfHwgUmVjb3JkaW5nT3B0aW9ucy5kaXNhYmxlZDtcclxuICAgICAgdGhpcy5yZWNvcmRpbmdQcm9maWxlID0gbGluZUFzc29jaWF0aW9uLnJlY29yZGluZ1Byb2ZpbGUgfHwgJyc7XHJcbiAgICAgIHRoaXMucmVjb3JkaW5nTWVkaWFTb3VyY2UgPSBsaW5lQXNzb2NpYXRpb24ucmVjb3JkaW5nTWVkaWFTb3VyY2UgfHwgUkVDT1JESU5HX01FRElBX1NPVVJDRVswXTtcclxuICAgICAgdGhpcy52aXN1YWxNV0kgPSBsaW5lQXNzb2NpYXRpb24udmlzdWFsTVdJICB8fCAnJztcclxuICAgICAgdGhpcy5hdWRpYmxlTVdJID0gbGluZUFzc29jaWF0aW9uLmF1ZGlibGVNV0kgfHwgJyc7XHJcbiAgICAgIHRoaXMucmluZ1NldHRpbmdfaWRsZSA9IGxpbmVBc3NvY2lhdGlvbi5yaW5nU2V0dGluZ19pZGxlIHx8ICcnO1xyXG4gICAgICB0aGlzLnJpbmdTZXR0aW5nX2FjdGl2ZSA9IGxpbmVBc3NvY2lhdGlvbi4gcmluZ1NldHRpbmdfYWN0aXZlIHx8ICcnO1xyXG4gICAgICB0aGlzLnBpY2t1cEFBU19pZGxlID0gbGluZUFzc29jaWF0aW9uLnBpY2t1cEFBU19pZGxlIHx8ICcnO1xyXG4gICAgICB0aGlzLnBpY2t1cEFBU19hY3RpdmUgPSBsaW5lQXNzb2NpYXRpb24ucGlja3VwQUFTX2FjdGl2ZSB8fCAnJztcclxuICAgICAgdGhpcy5tb25pdG9yQ1NTID0gbGluZUFzc29jaWF0aW9uLm1vbml0b3JDU1MgfHwgJyc7XHJcbiAgICAgIHRoaXMubG9nTWlzc2VkQ2FsbCA9IGxpbmVBc3NvY2lhdGlvbi5sb2dNaXNzZWRDYWxsIHx8IHRydWU7XHJcbiAgICAgIHRoaXMuY2FsbEluZm9EaXNwbGF5ID0gbmV3IExpbmVDYWxsSW5mb0Rpc3BsYXkobGluZUFzc29jaWF0aW9uLmNhbGxJbmZvRGlzcGxheSk7XHJcbiAgICAgIHRoaXMubGluZUxvY2FsSWQgPSBsaW5lQXNzb2NpYXRpb24ubGluZUxvY2FsSWQgfHwgbGluZUFzc29jaWF0aW9uLmxvY2FsSWQgfHwgJyc7XHJcbiAgICAgIHRoaXMuY2FsbGluZ1NlYXJjaFNwYWNlID0gbGluZUFzc29jaWF0aW9uLmNhbGxpbmdTZWFyY2hTcGFjZSB8fCAnJztcclxuICAgICAgdGhpcy5vd25lclVzZXJJZCA9IGxpbmVBc3NvY2lhdGlvbi5vd25lclVzZXJJZDtcclxuICAgICAgdGhpcy5hc3NvY2lhdGVkID0gbGluZUFzc29jaWF0aW9uLmFzc29jaWF0ZWQ7XHJcbiAgICAgIHRoaXMuYWxlcnRpbmdOYW1lID0gbGluZUFzc29jaWF0aW9uLmFsZXJ0aW5nTmFtZTtcclxuICAgICAgdGhpcy5kZXNjcmlwdGlvbiA9IGxpbmVBc3NvY2lhdGlvbi5kZXNjcmlwdGlvbjtcclxuICAgICAgdGhpcy5wYXR0ZXJuVXNhZ2UgPSBsaW5lQXNzb2NpYXRpb24ucGF0dGVyblVzYWdlO1xyXG4gICAgICB0aGlzLnBsYXJEZXN0aW5hdGlvbk51bWJlciA9IGxpbmVBc3NvY2lhdGlvbi5wbGFyRGVzdGluYXRpb25OdW1iZXI7XHJcbiAgICAgIHRoaXMucHJlZml4RGlnaXRzID0gbGluZUFzc29jaWF0aW9uLnByZWZpeERpZ2l0cztcclxuICAgICAgdGhpcy5wbGFyRGVzY3JpcHRpb24gPSBsaW5lQXNzb2NpYXRpb24ucGxhckRlc2NyaXB0aW9uO1xyXG4gICAgICB0aGlzLnBsYXJFbmFibGVkID0gbGluZUFzc29jaWF0aW9uLnBsYXJFbmFibGVkO1xyXG4gICAgICB0aGlzLnBvcHVsYXRlV2l0aERpZCA9IGxpbmVBc3NvY2lhdGlvbi5wb3B1bGF0ZVdpdGhEaWQ7XHJcbiAgICB9XHJcbiAgICB0aGlzLmluaXRGb3JtKCk7XHJcbiAgfVxyXG5cclxuICBnZXRTYXZhYmxlRGF0YSgpIHtcclxuICAgIGNvbnN0IGV4Y2x1ZGVkRmllbGRzID0gWyd2aWV3TW9kZScsICdmb3JtJywgJ2NhbGxpbmdTZWFyY2hTcGFjZScsICdwbGFyRGVzdGluYXRpb25OdW1iZXInLCAncHJlZml4RGlnaXRzJywgJ3BsYXJEZXNjcmlwdGlvbicsICdwbGFyRW5hYmxlZCddO1xyXG4gICAgcmV0dXJuIGdldFNhdmFibGVEYXRhKHRoaXMsIGV4Y2x1ZGVkRmllbGRzKTtcclxuICB9XHJcblxyXG4gIGdldERuU2F2YWJsZURhdGEoKSB7XHJcblxyXG4gIH1cclxuXHJcbiAgaW5pdEZvcm0oKSB7XHJcbiAgICAvLyBURU1QIHNpbXBsaWZpZWQgbGluZSBmb3JtXHJcbiAgICBjb25zdCBmb3JtQnVpbGRlciA9IG5ldyBGb3JtQnVpbGRlcigpO1xyXG4gICAgY29uc3QgZm9ybVNldHRpbmdzID0ge1xyXG4gICAgICBkaXJlY3RvcnlOdW1iZXI6IFt0aGlzLmRpcmVjdG9yeU51bWJlci5kaXJlY3RvcnlOdW1iZXIgfHwgJyddLFxyXG4gICAgfTtcclxuICAgIHRoaXMuZm9ybSA9IGZvcm1CdWlsZGVyLmdyb3VwKGZvcm1TZXR0aW5ncyk7XHJcbiAgfVxyXG5cclxuICAvKmluaXRGb3JtKGFwcFZhbGlkYXRvcnM6IFZhbGlkYXRpb25TZXJ2aWNlKSB7XHJcbiAgICBjb25zdCBmb3JtQnVpbGRlciA9IG5ldyBGb3JtQnVpbGRlcigpO1xyXG4gICAgY29uc3QgZm9ybVNldHRpbmdzID0ge1xyXG4gICAgICBkaXNwbGF5TGFiZWw6IFt0aGlzLmRpc3BsYXlMYWJlbCB8fCAnJywgW1ZhbGlkYXRvcnMubWF4TGVuZ3RoKDMwKSwgVmFsaWRhdG9ycy5wYXR0ZXJuKCdbXiUmXFxcXFt7fXxcIjw+XFxcXF1dKicpXV0sXHJcbiAgICAgIGFsZXJ0aW5nTmFtZTogW3RoaXMuYWxlcnRpbmdOYW1lIHx8ICcnXSxcclxuICAgICAgZGVzY3JpcHRpb246IFt0aGlzLmRlc2NyaXB0aW9uIHx8ICcnXSxcclxuICAgICAgZTE2NE1hc2s6IFt0aGlzLmUxNjRNYXNrIHx8ICcnLCBbYXBwVmFsaWRhdG9ycy5lMTY0TWFza0xhYmVsXV0sXHJcbiAgICAgIGRpc3BsYXlMYWJlbEFzY2lpOiBbdGhpcy5kaXNwbGF5TGFiZWxBc2NpaSB8fCAnJywgW2FwcFZhbGlkYXRvcnMuZGlzcGxheUxhYmVsQXNjaWldXSxcclxuICAgICAgdGV4dExhYmVsOiBbdGhpcy50ZXh0TGFiZWwgfHwgJycsIFtWYWxpZGF0b3JzLm1heExlbmd0aCgzMCksIFZhbGlkYXRvcnMucGF0dGVybignW15cIl0qJyldXSxcclxuICAgICAgbWF4TnVtYmVyT2ZDYWxsczogW3RoaXMubWF4TnVtYmVyT2ZDYWxscyB8fCAnJywgWyBWYWxpZGF0b3JzLm1pbigwKV1dLFxyXG4gICAgICBidXN5VHJpZ2dlcjogW3RoaXMuYnVzeVRyaWdnZXIgfHwgJycsIFtWYWxpZGF0b3JzLm1pbigwKSwgVmFsaWRhdG9ycy5tYXgodGhpcy5tYXhOdW1iZXJPZkNhbGxzIHx8IDIwMCldXSxcclxuICAgICAgcmVjb3JkaW5nT3B0aW9uOiBbdGhpcy5yZWNvcmRpbmdPcHRpb24gfHwgJyddLFxyXG4gICAgICByZWNvcmRpbmdQcm9maWxlOiBbdGhpcy5yZWNvcmRpbmdQcm9maWxlIHx8ICcnLCBbYXBwVmFsaWRhdG9ycy5jb25kaXRpb25hbFJlcXVpcmVkKCdyZWNvcmRpbmdPcHRpb24nLFxyXG4gICAgICAgIFtSZWNvcmRpbmdPcHRpb25zLmF1dG9fZW5hYmxlZCwgUmVjb3JkaW5nT3B0aW9ucy5zZWxlY3RpdmVfZW5hYmxlZF0pXV0sXHJcbiAgICAgIHJlY29yZGluZ01lZGlhU291cmNlOiBbdGhpcy5yZWNvcmRpbmdNZWRpYVNvdXJjZSB8fCAnJ10sXHJcbiAgICAgIHZpc3VhbE1XSTogW3RoaXMudmlzdWFsTVdJIHx8ICcnXSxcclxuICAgICAgYXVkaWJsZU1XSTogW3RoaXMuYXVkaWJsZU1XSSB8fCAnJ10sXHJcbiAgICAgIHJpbmdTZXR0aW5nX2lkbGU6IFt0aGlzLnJpbmdTZXR0aW5nX2lkbGUgfHwgJyddLFxyXG4gICAgICByaW5nU2V0dGluZ19hY3RpdmU6IFt0aGlzLnJpbmdTZXR0aW5nX2FjdGl2ZSB8fCAnJ10sXHJcbiAgICAgIHBpY2t1cEFBU19pZGxlOiBbdGhpcy5waWNrdXBBQVNfaWRsZSB8fCAnJ10sXHJcbiAgICAgIHBpY2t1cEFBU19hY3RpdmU6IFt0aGlzLnBpY2t1cEFBU19hY3RpdmUgfHwgJyddLFxyXG4gICAgICBtb25pdG9yQ1NTOiBbdGhpcy5tb25pdG9yQ1NTIHx8ICcnXSxcclxuICAgICAgbG9nTWlzc2VkQ2FsbDogW3RoaXMubG9nTWlzc2VkQ2FsbCA9PT0gJ3RydWUnXSxcclxuICAgICAgY2FsbGVyTmFtZTogIFt0aGlzLmNhbGxJbmZvRGlzcGxheSAmJiB0aGlzLmNhbGxJbmZvRGlzcGxheS5jYWxsZXJOYW1lID09PSAndHJ1ZSddLFxyXG4gICAgICBjYWxsZXJOdW1iZXI6IFt0aGlzLmNhbGxJbmZvRGlzcGxheSAmJiB0aGlzLmNhbGxJbmZvRGlzcGxheS5jYWxsZXJOdW1iZXIgPT09ICd0cnVlJ10sXHJcbiAgICAgIHJlZGlyZWN0ZWROdW1iZXI6IFt0aGlzLmNhbGxJbmZvRGlzcGxheSAmJiB0aGlzLmNhbGxJbmZvRGlzcGxheS5yZWRpcmVjdGVkTnVtYmVyID09PSAndHJ1ZSddLFxyXG4gICAgICBkaWFsZWROdW1iZXI6IFt0aGlzLmNhbGxJbmZvRGlzcGxheSAmJiB0aGlzLmNhbGxJbmZvRGlzcGxheS5kaWFsZWROdW1iZXIgPT09ICd0cnVlJyBdXHJcbiAgICB9O1xyXG4gICAgdGhpcy5mb3JtID0gZm9ybUJ1aWxkZXIuZ3JvdXAoZm9ybVNldHRpbmdzKTtcclxuICAgIGlmICh0aGlzLmRpcmVjdG9yeU51bWJlcikge1xyXG4gICAgICB0aGlzLmZvcm0uYWRkQ29udHJvbCgnZGlyZWN0b3J5TnVtYmVyJywgdGhpcy5kaXJlY3RvcnlOdW1iZXIuZm9ybSk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5kaWRQYXR0ZXJuKSB7XHJcbiAgICAgIHRoaXMuZm9ybS5hZGRDb250cm9sKCdkaWRQYXR0ZXJuJywgdGhpcy5kaWRQYXR0ZXJuLmZvcm0pO1xyXG4gICAgfVxyXG4gIH0qL1xyXG5cclxuICAgIGVxdWFscyhsaW5lOiBMaW5lQXNzb2NpYXRpb24gfCBhbnkpIHtcclxuICAgIGlmICghbGluZSkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5kaXJlY3RvcnlOdW1iZXIuZGlyZWN0b3J5TnVtYmVyID09PSBsaW5lLmRpcmVjdG9yeU51bWJlci5kaXJlY3RvcnlOdW1iZXIgJiZcclxuICAgICAgdGhpcy5kaXJlY3RvcnlOdW1iZXIucm91dGVQYXJ0aXRpb25OYW1lID09PSBsaW5lLmRpcmVjdG9yeU51bWJlci5yb3V0ZVBhcnRpdGlvbk5hbWU7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1hc3NvY2lhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLW1hbmFnZS9zcmMvY2xhc3Nlcy9saW5lLWFzc29jaWF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsV0FBVyxFQUFhLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRTVDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUUxRCxNQUFNLE9BQU8sZUFBZTtJQStDMUIsWUFBWSxlQUFvQjtRQWRoQyxnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNqQixrQkFBYSxHQUFHLEVBQUUsQ0FBQztRQWNqQixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxlQUFlLElBQUksRUFBRSxDQUFDLENBQUM7UUFDM0MsSUFBSSxlQUFlLEVBQUU7WUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxlQUFlLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQztZQUMzQyxJQUFJLENBQUMsUUFBUSxHQUFHLGVBQWUsQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDO1lBQ2pELElBQUksQ0FBQyxRQUFRLEdBQUcsZUFBZSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUM7WUFDL0MsSUFBSSxDQUFDLFNBQVMsR0FBRyxlQUFlLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQztZQUNqRCxJQUFJLENB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Q2xCLENBQUM7SUFFRCxjQUFjO1FBQ1osTUFBTSxjQUFjLEdBQUcsQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLG9CQUFvQixFQUFFLHVCQUF1QixFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUM3SSxPQUFPLGNBQWMsQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELGdCQUFnQjtJQUVoQixDQUFDO0lBRUQsUUFBUTtRQUNOLDRCQUE0QjtRQUM1QixNQUFNLFdBQVcsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ3RDLE1BQU0sWUFBWSxHQUFHO1lBQ25CLGVBQWUsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxJQUFJLEVBQUUsQ0FBQztTQUM5RCxDQUFDO1FBQ0YsSUFBSSxDQUFDLElBQUksR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FtQ0c7SUFFRCxNQUFNLENBQUMsSUFBMkI7UUFDbEMsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNULE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFDRCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxLQUFLLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZTtZQUNsRixJQUFJLENBQUMsZUFBZSxDQUFDLGtCQUFrQixLQUFLLElBQUksQ0FBQyxlQUFlLENBQUMsa0JBQWtCLENBQUM7SUFDeEYsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTGluZURpcmVjdG9yeSB9IGZyb20gJy4vbGluZS1kaXJlY3RvcnknO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IExpbmVDYWxsSW5mb0Rpc3BsYXkgfSBmcm9tICcuL2xpbmUtY2FsbC1pbmZvLWRpc3BsYXknO1xuaW1wb3J0IHsgVHJhbnNsYXRpb25QYXR0ZXJuIH0gZnJvbSAnLi90cmFuc2xhdGlvbi1wYXR0ZXJuJztcbmltcG9ydCB7IFJlY29yZGluZ09wdGlvbnMgfSBmcm9tICcuL2RldmljZSc7XG5pbXBvcnQgeyBMaW5lQXNzb2NpYXRpb25JbnRlcmZhY2UgfSBmcm9tICcuL2xpbmUtYXNzb2NpYXRpb24taW50ZXJmYWNlJztcbmltcG9ydCB7IGdldFNhdmFibGVEYXRhIH0gZnJvbSAnLi4vY29tbW9uLWZ1bmN0aW9ucyc7XG5pbXBvcnQgeyBSRUNPUkRJTkdfTUVESUFfU09VUkNFIH0gZnJvbSAnLi4vYXBwLmNvbnN0YW50cyc7XG5cbmV4cG9ydCBjbGFzcyBMaW5lQXNzb2NpYXRpb24gaW1wbGVtZW50cyBMaW5lQXNzb2NpYXRpb25JbnRlcmZhY2Uge1xuICBpbmRleCE6IG51bWJlcjtcbiAgcG9zaXRpb246IGFueTtcbiAgZTE2NE1hc2shOiBzdHJpbmc7XG4gIHRleHRMYWJlbCE6IHN0cmluZztcbiAgZGlzcGxheUxhYmVsITogc3RyaW5nO1xuICBkaXNwbGF5TGFiZWxBc2NpaSE6IHN0cmluZztcbiAgZGlyZWN0b3J5TnVtYmVyITogYW55O1xuICBkaWRQYXR0ZXJuITogYW55O1xuICBtYXBwZWREaWRzITogQXJyYXk8c3RyaW5nPjtcbiAgbGluZVBraWQhOiBzdHJpbmc7XG4gIG1heE51bWJlck9mQ2FsbHMhOiBudW1iZXI7XG4gIGJ1c3lUcmlnZ2VyITogbnVtYmVyO1xuICByZWNvcmRpbmdPcHRpb24hOiBSZWNvcmRpbmdPcHRpb25zO1xuICByZWNvcmRpbmdQcm9maWxlITogc3RyaW5nO1xuICByZWNvcmRpbmdNZWRpYVNvdXJjZSE6IHN0cmluZztcbiAgdmlzdWFsTVdJITogc3RyaW5nO1xuICBhdWRpYmxlTVdJITogc3RyaW5nO1xuICByaW5nU2V0dGluZ19pZGxlITogc3RyaW5nO1xuICByaW5nU2V0dGluZ19hY3RpdmUhOiBzdHJpbmc7XG4gIHBpY2t1cEFBU19pZGxlITogc3RyaW5nO1xuICBwaWNrdXBBQVNfYWN0aXZlITogc3RyaW5nO1xuICBtb25pdG9yQ1NTITogc3RyaW5nO1xuICBsb2dNaXNzZWRDYWxsITogc3RyaW5nO1xuICBjYWxsSW5mb0Rpc3BsYXkhOiBMaW5lQ2FsbEluZm9EaXNwbGF5O1xuICBsaW5lTG9jYWxJZCE6IHN0cmluZztcbiAgY2FsbGVyTmFtZSE6IHN0cmluZztcbiAgY2FsbGVyTnVtYmVyITogc3RyaW5nO1xuICByZWRpcmVjdGVkTnVtYmVyITogc3RyaW5nO1xuICBkaWFsZWROdW1iZXIhOiBzdHJpbmc7XG4gIC8vIG5vbi1zYXZhYmxlIGRhdGEgZmllbGRzXG4gIHZpZXdNb2RlITogYm9vbGVhbjtcbiAgZm9ybSE6IEZvcm1Hcm91cDtcbiAgc2hhcmVkVXNlcnMgPSBbXTtcbiAgc2hhcmVkRGV2aWNlcyA9IFtdO1xuICBjYWxsaW5nU2VhcmNoU3BhY2UhOiBzdHJpbmc7XG4gIG93bmVyVXNlcklkITogQXJyYXk8c3RyaW5nPjtcbiAgYXNzb2NpYXRlZCE6IGJvb2xlYW47XG4gIHBhdHRlcm5Vc2FnZSE6IGJvb2xlYW47XG4gIHBsYXJEZXN0aW5hdGlvbk51bWJlciE6IHN0cmluZztcbiAgcHJlZml4RGlnaXRzITogc3RyaW5nO1xuICBwbGFyRGVzY3JpcHRpb24hOiBzdHJpbmc7XG4gIHBsYXJFbmFibGVkITogYm9vbGVhbjtcbiAgYWxlcnRpbmdOYW1lITogc3RyaW5nO1xuICBkZXNjcmlwdGlvbiE6IHN0cmluZztcbiAgcG9wdWxhdGVXaXRoRGlkITogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihsaW5lQXNzb2NpYXRpb246IGFueSkge1xuICAgIE9iamVjdC5hc3NpZ24odGhpcywgbGluZUFzc29jaWF0aW9uIHx8IHt9KTtcbiAgICBpZiAobGluZUFzc29jaWF0aW9uKSB7XG4gICAgICB0aGlzLmluZGV4ID0gbGluZUFzc29jaWF0aW9uLmluZGV4IHx8IG51bGw7XG4gICAgICB0aGlzLnBvc2l0aW9uID0gbGluZUFzc29jaWF0aW9uLnBvc2l0aW9uIHx8IG51bGw7XG4gICAgICB0aGlzLmUxNjRNYXNrID0gbGluZUFzc29jaWF0aW9uLmUxNjRNYXNrIHx8ICcnO1xuICAgICAgdGhpcy50ZXh0TGFiZWwgPSBsaW5lQXNzb2NpYXRpb24udGV4dExhYmVsIHx8ICcnO1xuICAgICAgdGhpcy5kaXNwbGF5TGFiZWwgPSBsaW5lQXNzb2NpYXRpb24uZGlzcGxheUxhYmVsIHx8ICcnO1xuICAgICAgdGhpcy5kaXNwbGF5TGFiZWxBc2NpaSA9IGxpbmVBc3NvY2lhdGlvbi5kaXNwbGF5TGFiZWxBc2NpaSB8fCAnJztcbiAgICAgIHRoaXMubGluZVBraWQgPSBsaW5lQXNzb2NpYXRpb24ubGluZVBraWQgfHwgbGluZUFzc29jaWF0aW9uLnBraWQgfHwgJyc7XG4gICAgICB0aGlzLm1heE51bWJlck9mQ2FsbHMgPSBsaW5lQXNzb2NpYXRpb24ubWF4TnVtYmVyT2ZDYWxscyB8fCBudWxsO1xuICAgICAgdGhpcy5idXN5VHJpZ2dlciA9IGxpbmVBc3NvY2lhdGlvbi5idXN5VHJpZ2dlciB8fCBudWxsO1xuICAgICAgdGhpcy5kaXJlY3RvcnlOdW1iZXIgPSBuZXcgTGluZURpcmVjdG9yeShsaW5lQXNzb2NpYXRpb24uZGlyZWN0b3J5TnVtYmVyKTtcbiAgICAgIHRoaXMuZGlkUGF0dGVybiA9IG5ldyBUcmFuc2xhdGlvblBhdHRlcm4obGluZUFzc29jaWF0aW9uLmRpZFBhdHRlcm4pO1xuICAgICAgdGhpcy5yZWNvcmRpbmdPcHRpb24gPSBsaW5lQXNzb2NpYXRpb24ucmVjb3JkaW5nT3B0aW9uIHx8IFJlY29yZGluZ09wdGlvbnMuZGlzYWJsZWQ7XG4gICAgICB0aGlzLnJlY29yZGluZ1Byb2ZpbGUgPSBsaW5lQXNzb2NpYXRpb24ucmVjb3JkaW5nUHJvZmlsZSB8fCAnJztcbiAgICAgIHRoaXMucmVjb3JkaW5nTWVkaWFTb3VyY2UgPSBsaW5lQXNzb2NpYXRpb24ucmVjb3JkaW5nTWVkaWFTb3VyY2UgfHwgUkVDT1JESU5HX01FRElBX1NPVVJDRVswXTtcbiAgICAgIHRoaXMudmlzdWFsTVdJID0gbGluZUFzc29jaWF0aW9uLnZpc3VhbE1XSSAgfHwgJyc7XG4gICAgICB0aGlzLmF1ZGlibGVNV0kgPSBsaW5lQXNzb2NpYXRpb24uYXVkaWJsZU1XSSB8fCAnJztcbiAgICAgIHRoaXMucmluZ1NldHRpbmdfaWRsZSA9IGxpbmVBc3NvY2lhdGlvbi5yaW5nU2V0dGluZ19pZGxlIHx8ICcnO1xuICAgICAgdGhpcy5yaW5nU2V0dGluZ19hY3RpdmUgPSBsaW5lQXNzb2NpYXRpb24uIHJpbmdTZXR0aW5nX2FjdGl2ZSB8fCAnJztcbiAgICAgIHRoaXMucGlja3VwQUFTX2lkbGUgPSBsaW5lQXNzb2NpYXRpb24ucGlja3VwQUFTX2lkbGUgfHwgJyc7XG4gICAgICB0aGlzLnBpY2t1cEFBU19hY3RpdmUgPSBsaW5lQXNzb2NpYXRpb24ucGlja3VwQUFTX2FjdGl2ZSB8fCAnJztcbiAgICAgIHRoaXMubW9uaXRvckNTUyA9IGxpbmVBc3NvY2lhdGlvbi5tb25pdG9yQ1NTIHx8ICcnO1xuICAgICAgdGhpcy5sb2dNaXNzZWRDYWxsID0gbGluZUFzc29jaWF0aW9uLmxvZ01pc3NlZENhbGwgfHwgdHJ1ZTtcbiAgICAgIHRoaXMuY2FsbEluZm9EaXNwbGF5ID0gbmV3IExpbmVDYWxsSW5mb0Rpc3BsYXkobGluZUFzc29jaWF0aW9uLmNhbGxJbmZvRGlzcGxheSk7XG4gICAgICB0aGlzLmxpbmVMb2NhbElkID0gbGluZUFzc29jaWF0aW9uLmxpbmVMb2NhbElkIHx8IGxpbmVBc3NvY2lhdGlvbi5sb2NhbElkIHx8ICcnO1xuICAgICAgdGhpcy5jYWxsaW5nU2VhcmNoU3BhY2UgPSBsaW5lQXNzb2NpYXRpb24uY2FsbGluZ1NlYXJjaFNwYWNlIHx8ICcnO1xuICAgICAgdGhpcy5vd25lclVzZXJJZCA9IGxpbmVBc3NvY2lhdGlvbi5vd25lclVzZXJJZDtcbiAgICAgIHRoaXMuYXNzb2NpYXRlZCA9IGxpbmVBc3NvY2lhdGlvbi5hc3NvY2lhdGVkO1xuICAgICAgdGhpcy5hbGVydGluZ05hbWUgPSBsaW5lQXNzb2NpYXRpb24uYWxlcnRpbmdOYW1lO1xuICAgICAgdGhpcy5kZXNjcmlwdGlvbiA9IGxpbmVBc3NvY2lhdGlvbi5kZXNjcmlwdGlvbjtcbiAgICAgIHRoaXMucGF0dGVyblVzYWdlID0gbGluZUFzc29jaWF0aW9uLnBhdHRlcm5Vc2FnZTtcbiAgICAgIHRoaXMucGxhckRlc3RpbmF0aW9uTnVtYmVyID0gbGluZUFzc29jaWF0aW9uLnBsYXJEZXN0aW5hdGlvbk51bWJlcjtcbiAgICAgIHRoaXMucHJlZml4RGlnaXRzID0gbGluZUFzc29jaWF0aW9uLnByZWZpeERpZ2l0cztcbiAgICAgIHRoaXMucGxhckRlc2NyaXB0aW9uID0gbGluZUFzc29jaWF0aW9uLnBsYXJEZXNjcmlwdGlvbjtcbiAgICAgIHRoaXMucGxhckVuYWJsZWQgPSBsaW5lQXNzb2NpYXRpb24ucGxhckVuYWJsZWQ7XG4gICAgICB0aGlzLnBvcHVsYXRlV2l0aERpZCA9IGxpbmVBc3NvY2lhdGlvbi5wb3B1bGF0ZVdpdGhEaWQ7XG4gICAgfVxuICAgIHRoaXMuaW5pdEZvcm0oKTtcbiAgfVxuXG4gIGdldFNhdmFibGVEYXRhKCkge1xuICAgIGNvbnN0IGV4Y2x1ZGVkRmllbGRzID0gWyd2aWV3TW9kZScsICdmb3JtJywgJ2NhbGxpbmdTZWFyY2hTcGFjZScsICdwbGFyRGVzdGluYXRpb25OdW1iZXInLCAncHJlZml4RGlnaXRzJywgJ3BsYXJEZXNjcmlwdGlvbicsICdwbGFyRW5hYmxlZCddO1xuICAgIHJldHVybiBnZXRTYXZhYmxlRGF0YSh0aGlzLCBleGNsdWRlZEZpZWxkcyk7XG4gIH1cblxuICBnZXREblNhdmFibGVEYXRhKCkge1xuXG4gIH1cblxuICBpbml0Rm9ybSgpIHtcbiAgICAvLyBURU1QIHNpbXBsaWZpZWQgbGluZSBmb3JtXG4gICAgY29uc3QgZm9ybUJ1aWxkZXIgPSBuZXcgRm9ybUJ1aWxkZXIoKTtcbiAgICBjb25zdCBmb3JtU2V0dGluZ3MgPSB7XG4gICAgICBkaXJlY3RvcnlOdW1iZXI6IFt0aGlzLmRpcmVjdG9yeU51bWJlci5kaXJlY3RvcnlOdW1iZXIgfHwgJyddLFxuICAgIH07XG4gICAgdGhpcy5mb3JtID0gZm9ybUJ1aWxkZXIuZ3JvdXAoZm9ybVNldHRpbmdzKTtcbiAgfVxuXG4gIC8qaW5pdEZvcm0oYXBwVmFsaWRhdG9yczogVmFsaWRhdGlvblNlcnZpY2UpIHtcbiAgICBjb25zdCBmb3JtQnVpbGRlciA9IG5ldyBGb3JtQnVpbGRlcigpO1xuICAgIGNvbnN0IGZvcm1TZXR0aW5ncyA9IHtcbiAgICAgIGRpc3BsYXlMYWJlbDogW3RoaXMuZGlzcGxheUxhYmVsIHx8ICcnLCBbVmFsaWRhdG9ycy5tYXhMZW5ndGgoMzApLCBWYWxpZGF0b3JzLnBhdHRlcm4oJ1teJSZcXFxcW3t9fFwiPD5cXFxcXV0qJyldXSxcbiAgICAgIGFsZXJ0aW5nTmFtZTogW3RoaXMuYWxlcnRpbmdOYW1lIHx8ICcnXSxcbiAgICAgIGRlc2NyaXB0aW9uOiBbdGhpcy5kZXNjcmlwdGlvbiB8fCAnJ10sXG4gICAgICBlMTY0TWFzazogW3RoaXMuZTE2NE1hc2sgfHwgJycsIFthcHBWYWxpZGF0b3JzLmUxNjRNYXNrTGFiZWxdXSxcbiAgICAgIGRpc3BsYXlMYWJlbEFzY2lpOiBbdGhpcy5kaXNwbGF5TGFiZWxBc2NpaSB8fCAnJywgW2FwcFZhbGlkYXRvcnMuZGlzcGxheUxhYmVsQXNjaWldXSxcbiAgICAgIHRleHRMYWJlbDogW3RoaXMudGV4dExhYmVsIHx8ICcnLCBbVmFsaWRhdG9ycy5tYXhMZW5ndGgoMzApLCBWYWxpZGF0b3JzLnBhdHRlcm4oJ1teXCJdKicpXV0sXG4gICAgICBtYXhOdW1iZXJPZkNhbGxzOiBbdGhpcy5tYXhOdW1iZXJPZkNhbGxzIHx8ICcnLCBbIFZhbGlkYXRvcnMubWluKDApXV0sXG4gICAgICBidXN5VHJpZ2dlcjogW3RoaXMuYnVzeVRyaWdnZXIgfHwgJycsIFtWYWxpZGF0b3JzLm1pbigwKSwgVmFsaWRhdG9ycy5tYXgodGhpcy5tYXhOdW1iZXJPZkNhbGxzIHx8IDIwMCldXSxcbiAgICAgIHJlY29yZGluZ09wdGlvbjogW3RoaXMucmVjb3JkaW5nT3B0aW9uIHx8ICcnXSxcbiAgICAgIHJlY29yZGluZ1Byb2ZpbGU6IFt0aGlzLnJlY29yZGluZ1Byb2ZpbGUgfHwgJycsIFthcHBWYWxpZGF0b3JzLmNvbmRpdGlvbmFsUmVxdWlyZWQoJ3JlY29yZGluZ09wdGlvbicsXG4gICAgICAgIFtSZWNvcmRpbmdPcHRpb25zLmF1dG9fZW5hYmxlZCwgUmVjb3JkaW5nT3B0aW9ucy5zZWxlY3RpdmVfZW5hYmxlZF0pXV0sXG4gICAgICByZWNvcmRpbmdNZWRpYVNvdXJjZTogW3RoaXMucmVjb3JkaW5nTWVkaWFTb3VyY2UgfHwgJyddLFxuICAgICAgdmlzdWFsTVdJOiBbdGhpcy52aXN1YWxNV0kgfHwgJyddLFxuICAgICAgYXVkaWJsZU1XSTogW3RoaXMuYXVkaWJsZU1XSSB8fCAnJ10sXG4gICAgICByaW5nU2V0dGluZ19pZGxlOiBbdGhpcy5yaW5nU2V0dGluZ19pZGxlIHx8ICcnXSxcbiAgICAgIHJpbmdTZXR0aW5nX2FjdGl2ZTogW3RoaXMucmluZ1NldHRpbmdfYWN0aXZlIHx8ICcnXSxcbiAgICAgIHBpY2t1cEFBU19pZGxlOiBbdGhpcy5waWNrdXBBQVNfaWRsZSB8fCAnJ10sXG4gICAgICBwaWNrdXBBQVNfYWN0aXZlOiBbdGhpcy5waWNrdXBBQVNfYWN0aXZlIHx8ICcnXSxcbiAgICAgIG1vbml0b3JDU1M6IFt0aGlzLm1vbml0b3JDU1MgfHwgJyddLFxuICAgICAgbG9nTWlzc2VkQ2FsbDogW3RoaXMubG9nTWlzc2VkQ2FsbCA9PT0gJ3RydWUnXSxcbiAgICAgIGNhbGxlck5hbWU6ICBbdGhpcy5jYWxsSW5mb0Rpc3BsYXkgJiYgdGhpcy5jYWxsSW5mb0Rpc3BsYXkuY2FsbGVyTmFtZSA9PT0gJ3RydWUnXSxcbiAgICAgIGNhbGxlck51bWJlcjogW3RoaXMuY2FsbEluZm9EaXNwbGF5ICYmIHRoaXMuY2FsbEluZm9EaXNwbGF5LmNhbGxlck51bWJlciA9PT0gJ3RydWUnXSxcbiAgICAgIHJlZGlyZWN0ZWROdW1iZXI6IFt0aGlzLmNhbGxJbmZvRGlzcGxheSAmJiB0aGlzLmNhbGxJbmZvRGlzcGxheS5yZWRpcmVjdGVkTnVtYmVyID09PSAndHJ1ZSddLFxuICAgICAgZGlhbGVkTnVtYmVyOiBbdGhpcy5jYWxsSW5mb0Rpc3BsYXkgJiYgdGhpcy5jYWxsSW5mb0Rpc3BsYXkuZGlhbGVkTnVtYmVyID09PSAndHJ1ZScgXVxuICAgIH07XG4gICAgdGhpcy5mb3JtID0gZm9ybUJ1aWxkZXIuZ3JvdXAoZm9ybVNldHRpbmdzKTtcbiAgICBpZiAodGhpcy5kaXJlY3RvcnlOdW1iZXIpIHtcbiAgICAgIHRoaXMuZm9ybS5hZGRDb250cm9sKCdkaXJlY3RvcnlOdW1iZXInLCB0aGlzLmRpcmVjdG9yeU51bWJlci5mb3JtKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuZGlkUGF0dGVybikge1xuICAgICAgdGhpcy5mb3JtLmFkZENvbnRyb2woJ2RpZFBhdHRlcm4nLCB0aGlzLmRpZFBhdHRlcm4uZm9ybSk7XG4gICAgfVxuICB9Ki9cblxuICAgIGVxdWFscyhsaW5lOiBMaW5lQXNzb2NpYXRpb24gfCBhbnkpIHtcbiAgICBpZiAoIWxpbmUpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZGlyZWN0b3J5TnVtYmVyLmRpcmVjdG9yeU51bWJlciA9PT0gbGluZS5kaXJlY3RvcnlOdW1iZXIuZGlyZWN0b3J5TnVtYmVyICYmXG4gICAgICB0aGlzLmRpcmVjdG9yeU51bWJlci5yb3V0ZVBhcnRpdGlvbk5hbWUgPT09IGxpbmUuZGlyZWN0b3J5TnVtYmVyLnJvdXRlUGFydGl0aW9uTmFtZTtcbiAgfVxufVxuIl19
|
|
@@ -7,4 +7,4 @@ export class LineCallInfoDisplay {
|
|
|
7
7
|
return getSavableData(this, ['form']);
|
|
8
8
|
}
|
|
9
9
|
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1jYWxsLWluZm8tZGlzcGxheS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLW1hbmFnZS9zcmMvY2xhc3Nlcy9saW5lLWNhbGwtaW5mby1kaXNwbGF5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVyRCxNQUFNLE9BQU8sbUJBQW1CO0lBUzlCLFlBQVksbUJBQWlEO1FBQzNELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLG1CQUFtQixJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxjQUFjO1FBQ1osT0FBTyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUN4QyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMaW5lQ2FsbEluZm9EaXNwbGF5SW50ZXJmYWNlIH0gZnJvbSAnLi9kZXZpY2UnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgZ2V0U2F2YWJsZURhdGEgfSBmcm9tICcuLi9jb21tb24tZnVuY3Rpb25zJztcblxuZXhwb3J0IGNsYXNzIExpbmVDYWxsSW5mb0Rpc3BsYXkgaW1wbGVtZW50cyBMaW5lQ2FsbEluZm9EaXNwbGF5SW50ZXJmYWNlIHtcbiAgY2FsbGVyTmFtZSE6IHN0cmluZztcbiAgY2FsbGVyTnVtYmVyITogc3RyaW5nO1xuICByZWRpcmVjdGVkTnVtYmVyITogc3RyaW5nO1xuICBkaWFsZWROdW1iZXIhOiBzdHJpbmc7XG5cbiAgLy8gbm9uLXNhdmFibGUgZGF0YSBmaWVsZHNcbiAgZm9ybSE6IEZvcm1Hcm91cDtcblxuICBjb25zdHJ1Y3RvcihsaW5lQ2FsbEluZm9EaXNwbGF5OiBMaW5lQ2FsbEluZm9EaXNwbGF5SW50ZXJmYWNlKSB7XG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCBsaW5lQ2FsbEluZm9EaXNwbGF5IHx8IHt9KTtcbiAgfVxuXG4gIGdldFNhdmFibGVEYXRhKCkge1xuICAgIHJldHVybiBnZXRTYXZhYmxlRGF0YSh0aGlzLCBbJ2Zvcm0nXSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -29,4 +29,4 @@ export class Notification {
|
|
|
29
29
|
return this.type === NotificationType.warning;
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItbWFuYWdlL3NyYy9jbGFzc2VzL25vdGlmaWNhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDMUQsTUFBTSxXQUFXLEdBQUcsV0FBVyxDQUFDLHFCQUFxQixDQUFDO0FBQ3RELE1BQU0sZ0JBQWdCLEdBQUcsV0FBVyxDQUFDLHlCQUF5QixDQUFDO0FBRS9ELE1BQU0sQ0FBTixJQUFZLGdCQUtYO0FBTEQsV0FBWSxnQkFBZ0I7SUFDeEIsaUNBQWEsQ0FBQTtJQUNiLG1DQUFlLENBQUE7SUFDZix1Q0FBbUIsQ0FBQTtJQUNuQix1Q0FBbUIsQ0FBQTtBQUN2QixDQUFDLEVBTFcsZ0JBQWdCLEtBQWhCLGdCQUFnQixRQUszQjtBQUVELE1BQU0sT0FBTyxZQUFZO0lBT3ZCLFlBQVksSUFBUztRQUhyQixRQUFHLEdBQVcsV0FBVyxDQUFDO1FBSXhCLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVoQyxJQUFHLElBQUksQ0FBQyxHQUFHLEtBQUssU0FBUyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUM7U0FDN0c7SUFDSCxDQUFDO0lBRUQsTUFBTTtRQUNKLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUM7SUFDN0MsQ0FBQztJQUNELE9BQU87UUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssZ0JBQWdCLENBQUMsS0FBSyxDQUFDO0lBQzlDLENBQUM7SUFDRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLGdCQUFnQixDQUFDLE9BQU8sQ0FBQztJQUNoRCxDQUFDO0lBQ0QsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUM7SUFDaEQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZW52aXJvbm1lbnQgfSBmcm9tICcuLi9lbnZpcm9ubWVudHMvZW52aXJvbm1lbnQnO1xuY29uc3QgVFRMX0RFRkFVTFQgPSBlbnZpcm9ubWVudC5ub3RpZmljYXRpb25zTGlmZXRpbWU7XG5jb25zdCBUVExfTE9OR19ERUZBVUxUID0gZW52aXJvbm1lbnQubG9uZ05vdGlmaWNhdGlvbnNMaWZldGltZTtcblxuZXhwb3J0IGVudW0gTm90aWZpY2F0aW9uVHlwZSB7XG4gICAgaW5mbyA9ICdpbmZvJyxcbiAgICBlcnJvciA9ICdlcnJvcicsXG4gICAgc3VjY2VzcyA9ICdzdWNjZXNzJyxcbiAgICB3YXJuaW5nID0gJ3dhcm5pbmcnXG59XG5cbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb24ge1xuICBpZD86IG51bWJlcjtcbiAgdHlwZT86IE5vdGlmaWNhdGlvblR5cGU7XG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG4gIHR0bDogbnVtYmVyID0gVFRMX0RFRkFVTFQ7XG4gIHRpbWVySWQ/OiBhbnk7XG5cbiAgY29uc3RydWN0b3IoZGF0YTogYW55KSB7XG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCBkYXRhIHx8IHt9KTtcblxuICAgIGlmKHRoaXMudHRsID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMudHRsID0gdGhpcy5tZXNzYWdlICYmIHRoaXMubWVzc2FnZS5sZW5ndGggJiYgdGhpcy5tZXNzYWdlLmxlbmd0aCA8IDgwID8gVFRMX0RFRkFVTFQgOiBUVExfTE9OR19ERUZBVUxUO1xuICAgIH1cbiAgfVxuXG4gIGlzSW5mbygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBOb3RpZmljYXRpb25UeXBlLmluZm87XG4gIH1cbiAgaXNFcnJvcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBOb3RpZmljYXRpb25UeXBlLmVycm9yO1xuICB9XG4gIGlzU3VjY2VzcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBOb3RpZmljYXRpb25UeXBlLnN1Y2Nlc3M7XG4gIH1cbiAgaXNXYXJuaW5nKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09IE5vdGlmaWNhdGlvblR5cGUud2FybmluZztcbiAgfVxufVxuIl19
|
|
@@ -4,4 +4,4 @@ export var RecordingOptions;
|
|
|
4
4
|
RecordingOptions["auto_enabled"] = "Automatic Call Recording Enabled";
|
|
5
5
|
RecordingOptions["selective_enabled"] = "Selective Call Recording Enabled";
|
|
6
6
|
})(RecordingOptions || (RecordingOptions = {}));
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkaW5nLW9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlci1tYW5hZ2Uvc3JjL2NsYXNzZXMvcmVjb3JkaW5nLW9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksZ0JBSVg7QUFKRCxXQUFZLGdCQUFnQjtJQUMxQix3REFBb0MsQ0FBQTtJQUNwQyxxRUFBaUQsQ0FBQTtJQUNqRCwwRUFBc0QsQ0FBQTtBQUN4RCxDQUFDLEVBSlcsZ0JBQWdCLEtBQWhCLGdCQUFnQixRQUkzQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFJlY29yZGluZ09wdGlvbnMge1xuICBkaXNhYmxlZCA9ICdDYWxsIFJlY29yZGluZyBEaXNhYmxlZCcsXG4gIGF1dG9fZW5hYmxlZCA9ICdBdXRvbWF0aWMgQ2FsbCBSZWNvcmRpbmcgRW5hYmxlZCcsXG4gIHNlbGVjdGl2ZV9lbmFibGVkID0gJ1NlbGVjdGl2ZSBDYWxsIFJlY29yZGluZyBFbmFibGVkJ1xufVxuXG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLW1hbmFnZS9zcmMvY2xhc3Nlcy90YWJsZS1kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJcbmV4cG9ydCBpbnRlcmZhY2UgVGFibGVEYXRhSW50ZXJmYWNlIHtcbiAgdG90YWw6IG51bWJlcjtcbiAgcGFnZURhdGE6IEFycmF5PGFueT47XG4gIHN5c3RlbVNldHRpbmdzPzogYW55O1xufVxuIl19
|
|
@@ -29,4 +29,4 @@ export class TranslationPattern {
|
|
|
29
29
|
return this.hasMultipleSites && !!this.multipleSitesId && this.multipleSitesId.length > 0;
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb24tcGF0dGVybi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLW1hbmFnZS9zcmMvY2xhc3Nlcy90cmFuc2xhdGlvbi1wYXR0ZXJuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxXQUFXLEVBQVksTUFBTSxnQkFBZ0IsQ0FBQztBQUV0RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFckQsTUFBTSxPQUFPLGtCQUFrQjtJQWE3QixZQUFZLGtCQUFnRDtRQUMxRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxrQkFBa0IsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUVNLGNBQWM7UUFDbkIsT0FBTyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxFQUFFLHNCQUFzQixDQUFDLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQsUUFBUTtRQUNOLE1BQU0sV0FBVyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFDdEMsTUFBTSxZQUFZLEdBQUc7WUFDbkIsT0FBTyxFQUFFLENBQUMsRUFBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFLEVBQUMsQ0FBQztZQUN0Qyw2QkFBNkIsRUFBRSxDQUFDLEVBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyw2QkFBNkIsSUFBSSxFQUFFLEVBQUMsQ0FBQztTQUNuRixDQUFDO1FBQ0YsSUFBSSxDQUFDLElBQUksR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTSxTQUFTO1FBQ2QsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLElBQUksRUFBRTtZQUNyQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1NBQ3JCO1FBQ0QsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsRUFBRTtZQUM3QixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQzNDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUM1RixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0Zvcm1CdWlsZGVyLCBGb3JtR3JvdXB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFRyYW5zbGF0aW9uUGF0dGVybkludGVyZmFjZSB9IGZyb20gJy4vbGluZSc7XG5pbXBvcnQgeyBnZXRTYXZhYmxlRGF0YSB9IGZyb20gJy4uL2NvbW1vbi1mdW5jdGlvbnMnO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNsYXRpb25QYXR0ZXJuIGltcGxlbWVudHMgVHJhbnNsYXRpb25QYXR0ZXJuSW50ZXJmYWNlIHtcbiAgcGF0dGVybiE6IHN0cmluZztcbiAgY2FsbGVkUGFydHlUcmFuc2Zvcm1hdGlvbk1hc2shOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uITogc3RyaW5nO1xuICBzaXRlITogYW55O1xuICBoYXNNdWx0aXBsZVNpdGVzITogYm9vbGVhbjtcbiAgbXVsdGlwbGVTaXRlc0lkITogc3RyaW5nO1xuICBjdWNtSWQhOiBudW1iZXI7XG5cbiAgLy8gbm9uLXNhdmFibGUgZGF0YSBmaWVsZHNcbiAgZm9ybSE6IEZvcm1Hcm91cDtcbiAgaXNOZXdGb3JFeGlzdGluZ0xpbmUhOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKHRyYW5zbGF0aW9uUGF0dGVybj86IFRyYW5zbGF0aW9uUGF0dGVybkludGVyZmFjZSkge1xuICAgIE9iamVjdC5hc3NpZ24odGhpcywgdHJhbnNsYXRpb25QYXR0ZXJuIHx8IHt9KTtcbiAgICB0aGlzLmluaXRGb3JtKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0U2F2YWJsZURhdGEoKSB7XG4gICAgcmV0dXJuIGdldFNhdmFibGVEYXRhKHRoaXMsIFsnZm9ybScsICdpc05ld0ZvckV4aXN0aW5nTGluZSddKTtcbiAgfVxuXG4gIGluaXRGb3JtKCkge1xuICAgIGNvbnN0IGZvcm1CdWlsZGVyID0gbmV3IEZvcm1CdWlsZGVyKCk7XG4gICAgY29uc3QgZm9ybVNldHRpbmdzID0ge1xuICAgICAgcGF0dGVybjogW3t2YWx1ZTogdGhpcy5wYXR0ZXJuIHx8ICcnfV0sXG4gICAgICBjYWxsZWRQYXJ0eVRyYW5zZm9ybWF0aW9uTWFzazogW3t2YWx1ZTogdGhpcy5jYWxsZWRQYXJ0eVRyYW5zZm9ybWF0aW9uTWFzayB8fCAnJ31dXG4gICAgfTtcbiAgICB0aGlzLmZvcm0gPSBmb3JtQnVpbGRlci5ncm91cChmb3JtU2V0dGluZ3MpO1xuICB9XG5cbiAgcHVibGljIGdldFNpdGVJZCgpIHtcbiAgICBpZiAodGhpcy5zaXRlICYmIHRoaXMuc2l0ZS5pZCAhPSBudWxsKSB7XG4gICAgICByZXR1cm4gdGhpcy5zaXRlLmlkO1xuICAgIH1cbiAgICBpZiAodGhpcy5oYXNNdWx0aXBsZVNpdGVJZHMoKSkge1xuICAgICAgcmV0dXJuIHRoaXMubXVsdGlwbGVTaXRlc0lkLnNwbGl0KCcsJylbMF07XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBoYXNNdWx0aXBsZVNpdGVJZHMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaGFzTXVsdGlwbGVTaXRlcyAmJiAhIXRoaXMubXVsdGlwbGVTaXRlc0lkICYmIHRoaXMubXVsdGlwbGVTaXRlc0lkLmxlbmd0aCA+IDA7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -7,4 +7,4 @@ export class ListUser {
|
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
9
|
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1saXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItbWFuYWdlL3NyYy9jbGFzc2VzL3VzZXItbGlzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLE9BQU8sUUFBUTtJQWdCbkIsWUFBWSxJQUFlO1FBVDNCLFlBQU8sR0FBc0IsRUFBRSxDQUFDO1FBQ2hDLG1CQUFjLEdBQXNCLEVBQUUsQ0FBQztRQVNyQyxJQUFJLElBQUksRUFBRTtZQUNSLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1NBQzNCO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGV2aWNlSW50ZXJmYWNlIH0gZnJvbSAnLi4vY2xhc3Nlcy9kZXZpY2UnO1xuaW1wb3J0IHsgTGluZUludGVyZmFjZSB9IGZyb20gJy4uL2NsYXNzZXMvbGluZSc7XG5cbmV4cG9ydCBjbGFzcyBMaXN0VXNlciB7XG4gIC8vIEB0cy1pZ25vcmVcbiAgdXNlcmlkOiBzdHJpbmc7XG4gIGZpcnN0TmFtZSE6IHN0cmluZztcbiAgbGFzdE5hbWUhOiBzdHJpbmc7XG4gIGVtYWlsITogc3RyaW5nO1xuICB0ZWxlcGhvbmVOdW1iZXIhOiBzdHJpbmc7XG4gIGRldmljZXM6IERldmljZUludGVyZmFjZVtdID0gW107XG4gIGRldmljZVByb2ZpbGVzOiBEZXZpY2VJbnRlcmZhY2VbXSA9IFtdO1xuICBsaW5lcyE6IExpbmVJbnRlcmZhY2VbXTtcbiAgc2l0ZUlkITogbnVtYmVyO1xuICBzaXRlTmFtZSE6IHN0cmluZztcbiAgd2ViZXhVVUlEITogc3RyaW5nO1xuICBjdWNtSWQhOiBudW1iZXI7XG4gIGlzTWlncmF0ZWQhOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKHVzZXI/OiBMaXN0VXNlcikge1xuICAgIGlmICh1c2VyKSB7XG4gICAgICBPYmplY3QuYXNzaWduKHRoaXMsIHVzZXIpO1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RVc2VySW50ZXJmYWNlIHtcbiAgdXNlcmlkOiBzdHJpbmc7XG4gIGZpcnN0TmFtZTogc3RyaW5nO1xuICBsYXN0TmFtZTogc3RyaW5nO1xuICBlbWFpbDogc3RyaW5nO1xuICB0ZWxlcGhvbmVOdW1iZXI6IHN0cmluZztcbiAgdmlld01vZGU6IGFueTtcbiAgZGV2aWNlczogRGV2aWNlSW50ZXJmYWNlW107XG4gIGRldmljZVByb2ZpbGVzOiBEZXZpY2VJbnRlcmZhY2VbXTtcbiAgbGluZXM6IExpbmVJbnRlcmZhY2VbXTtcbiAgc2l0ZUlkOiBudW1iZXI7XG4gIHNpdGVOYW1lOiBzdHJpbmc7XG4gIHdlYmV4VVVJRDogc3RyaW5nO1xuICBjdWNtSWQ6IG51bWJlcjtcbiAgaXNNaWdyYXRlZDogYm9vbGVhbjtcbn1cbiJdfQ==
|
|
@@ -16,4 +16,4 @@ export const getSavableData = (model, exclude) => {
|
|
|
16
16
|
return result;
|
|
17
17
|
}, {});
|
|
18
18
|
};
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLWZ1bmN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLW1hbmFnZS9zcmMvY29tbW9uLWZ1bmN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxLQUFVLEVBQUUsT0FBdUIsRUFBRSxFQUFFO0lBQ3BFLElBQUksTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEMsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLE1BQU0sRUFBRTtRQUM3QixNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDO0tBQ3BFO0lBQ0QsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxFQUFFO1FBQ25DLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxZQUFZLEtBQUssSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjLEVBQUU7WUFDbkYsTUFBYyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO1NBQzdFO2FBQU0sSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLFlBQVksTUFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxjQUFjLEVBQUU7WUFDbkUsTUFBYyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUNwRDthQUFNO1lBQ0osTUFBYyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNuQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUNULENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBnZXRTYXZhYmxlRGF0YSA9IChtb2RlbDogYW55LCBleGNsdWRlPzogQXJyYXk8c3RyaW5nPikgPT4ge1xuICBsZXQgcmVzdWx0ID0gT2JqZWN0LmtleXMobW9kZWwpO1xuICBpZiAoZXhjbHVkZSAmJiBleGNsdWRlLmxlbmd0aCkge1xuICAgIHJlc3VsdCA9IHJlc3VsdC5maWx0ZXIoa2V5ID0+ICFleGNsdWRlLnNvbWUoaXRlbSA9PiBpdGVtID09PSBrZXkpKTtcbiAgfVxuICByZXR1cm4gcmVzdWx0LnJlZHVjZSgocmVzdWx0LCBrZXkpID0+IHtcbiAgICBpZiAobW9kZWxba2V5XSBpbnN0YW5jZW9mIEFycmF5ICYmIG1vZGVsW2tleV0ubGVuZ3RoICYmIG1vZGVsW2tleV1bMF0uZ2V0U2F2YWJsZURhdGEpIHtcbiAgICAgIChyZXN1bHQgYXMgYW55KVtrZXldID0gbW9kZWxba2V5XS5tYXAoKGl0ZW06IGFueSkgPT4gaXRlbS5nZXRTYXZhYmxlRGF0YSgpKTtcbiAgICB9IGVsc2UgaWYgKG1vZGVsW2tleV0gaW5zdGFuY2VvZiBPYmplY3QgJiYgbW9kZWxba2V5XS5nZXRTYXZhYmxlRGF0YSkge1xuICAgICAgKHJlc3VsdCBhcyBhbnkpW2tleV0gPSBtb2RlbFtrZXldLmdldFNhdmFibGVEYXRhKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIChyZXN1bHQgYXMgYW55KVtrZXldID0gbW9kZWxba2V5XTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfSwge30pO1xufTtcbiJdfQ==
|