@c8y/ngx-components 1018.503.22 → 1018.503.26

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.
Files changed (85) hide show
  1. package/api/services.d.ts +1 -1
  2. package/core/common/permissions.service.d.ts +2 -2
  3. package/core/forms/validation-pattern.d.ts +4 -0
  4. package/esm2020/api/services.mjs +2 -2
  5. package/esm2020/assets-navigator/asset-node.service.mjs +9 -3
  6. package/esm2020/context-dashboard/add-dashboard.factory.mjs +10 -3
  7. package/esm2020/context-dashboard/context-dashboard.service.mjs +11 -3
  8. package/esm2020/context-dashboard/dashboard-detail.component.mjs +7 -2
  9. package/esm2020/context-dashboard/report-dashboard/report-dashboard-list.component.mjs +4 -2
  10. package/esm2020/core/bottom-drawer/bottom-drawer.service.mjs +1 -1
  11. package/esm2020/core/common/permissions.service.mjs +2 -2
  12. package/esm2020/core/common/user-preferences/user-preferences.service.mjs +6 -2
  13. package/esm2020/core/forms/validation-pattern.mjs +5 -1
  14. package/esm2020/core/user/user-edit.component.mjs +1 -1
  15. package/esm2020/files-repository/files-repository.guard.mjs +6 -5
  16. package/esm2020/replace-device/replace-device.service.mjs +13 -5
  17. package/esm2020/repository/configuration/device-tab/configuration-preview.component.mjs +11 -3
  18. package/esm2020/sub-assets/add-group/add-group.component.mjs +7 -2
  19. package/esm2020/sub-assets/groups.component.mjs +5 -2
  20. package/esm2020/sub-assets/sub-assets.component.mjs +7 -2
  21. package/esm2020/sub-assets/sub-assets.service.mjs +12 -6
  22. package/esm2020/trusted-certificates/crl/crl-check-settings.component.mjs +39 -0
  23. package/esm2020/trusted-certificates/crl/crl-settings.component.mjs +109 -0
  24. package/esm2020/trusted-certificates/crl/crl-settings.module.mjs +46 -0
  25. package/esm2020/trusted-certificates/factories/tabs.factory.mjs +36 -0
  26. package/esm2020/trusted-certificates/factories/trusted-certificates-navigation.factory.mjs +26 -0
  27. package/esm2020/trusted-certificates/index.mjs +4 -4
  28. package/esm2020/trusted-certificates/{add-trusted-certificate.component.mjs → list/add-trusted-certificate.component.mjs} +1 -1
  29. package/esm2020/trusted-certificates/list/trusted-certificate-list.component.mjs +184 -0
  30. package/esm2020/trusted-certificates/list/trusted-certificate-list.module.mjs +54 -0
  31. package/esm2020/trusted-certificates/list/trusted-certificate.model.mjs +36 -0
  32. package/esm2020/trusted-certificates/trusted-certificates.module.mjs +24 -35
  33. package/fesm2015/c8y-ngx-components-api.mjs +3 -2
  34. package/fesm2015/c8y-ngx-components-api.mjs.map +1 -1
  35. package/fesm2015/c8y-ngx-components-assets-navigator.mjs +8 -2
  36. package/fesm2015/c8y-ngx-components-assets-navigator.mjs.map +1 -1
  37. package/fesm2015/c8y-ngx-components-context-dashboard.mjs +28 -6
  38. package/fesm2015/c8y-ngx-components-context-dashboard.mjs.map +1 -1
  39. package/fesm2015/c8y-ngx-components-files-repository.mjs +5 -4
  40. package/fesm2015/c8y-ngx-components-files-repository.mjs.map +1 -1
  41. package/fesm2015/c8y-ngx-components-replace-device.mjs +13 -5
  42. package/fesm2015/c8y-ngx-components-replace-device.mjs.map +1 -1
  43. package/fesm2015/c8y-ngx-components-repository-configuration.mjs +10 -2
  44. package/fesm2015/c8y-ngx-components-repository-configuration.mjs.map +1 -1
  45. package/fesm2015/c8y-ngx-components-sub-assets.mjs +27 -8
  46. package/fesm2015/c8y-ngx-components-sub-assets.mjs.map +1 -1
  47. package/fesm2015/c8y-ngx-components-trusted-certificates.mjs +329 -86
  48. package/fesm2015/c8y-ngx-components-trusted-certificates.mjs.map +1 -1
  49. package/fesm2015/c8y-ngx-components.mjs +10 -2
  50. package/fesm2015/c8y-ngx-components.mjs.map +1 -1
  51. package/fesm2020/c8y-ngx-components-api.mjs +3 -2
  52. package/fesm2020/c8y-ngx-components-api.mjs.map +1 -1
  53. package/fesm2020/c8y-ngx-components-assets-navigator.mjs +8 -2
  54. package/fesm2020/c8y-ngx-components-assets-navigator.mjs.map +1 -1
  55. package/fesm2020/c8y-ngx-components-context-dashboard.mjs +28 -6
  56. package/fesm2020/c8y-ngx-components-context-dashboard.mjs.map +1 -1
  57. package/fesm2020/c8y-ngx-components-files-repository.mjs +5 -4
  58. package/fesm2020/c8y-ngx-components-files-repository.mjs.map +1 -1
  59. package/fesm2020/c8y-ngx-components-replace-device.mjs +13 -5
  60. package/fesm2020/c8y-ngx-components-replace-device.mjs.map +1 -1
  61. package/fesm2020/c8y-ngx-components-repository-configuration.mjs +10 -2
  62. package/fesm2020/c8y-ngx-components-repository-configuration.mjs.map +1 -1
  63. package/fesm2020/c8y-ngx-components-sub-assets.mjs +27 -8
  64. package/fesm2020/c8y-ngx-components-sub-assets.mjs.map +1 -1
  65. package/fesm2020/c8y-ngx-components-trusted-certificates.mjs +314 -85
  66. package/fesm2020/c8y-ngx-components-trusted-certificates.mjs.map +1 -1
  67. package/fesm2020/c8y-ngx-components.mjs +10 -2
  68. package/fesm2020/c8y-ngx-components.mjs.map +1 -1
  69. package/locales/locales.pot +48 -0
  70. package/package.json +1 -1
  71. package/replace-device/replace-device.service.d.ts +3 -1
  72. package/trusted-certificates/crl/crl-check-settings.component.d.ts +18 -0
  73. package/trusted-certificates/crl/crl-settings.component.d.ts +28 -0
  74. package/trusted-certificates/crl/crl-settings.module.d.ts +13 -0
  75. package/trusted-certificates/factories/tabs.factory.d.ts +10 -0
  76. package/trusted-certificates/index.d.ts +3 -3
  77. package/trusted-certificates/{trusted-certificates.component.d.ts → list/trusted-certificate-list.component.d.ts} +4 -4
  78. package/trusted-certificates/list/trusted-certificate-list.module.d.ts +15 -0
  79. package/trusted-certificates/trusted-certificates.module.d.ts +4 -10
  80. package/esm2020/trusted-certificates/trusted-certificate.model.mjs +0 -36
  81. package/esm2020/trusted-certificates/trusted-certificates-navigation.factory.mjs +0 -26
  82. package/esm2020/trusted-certificates/trusted-certificates.component.mjs +0 -184
  83. /package/trusted-certificates/{trusted-certificates-navigation.factory.d.ts → factories/trusted-certificates-navigation.factory.d.ts} +0 -0
  84. /package/trusted-certificates/{add-trusted-certificate.component.d.ts → list/add-trusted-certificate.component.d.ts} +0 -0
  85. /package/trusted-certificates/{trusted-certificate.model.d.ts → list/trusted-certificate.model.d.ts} +0 -0
@@ -131,4 +131,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
131
131
  }], onCancel: [{
132
132
  type: Output
133
133
  }] } });
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1lZGl0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2NvcmUvdXNlci91c2VyLWVkaXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vY29yZS91c2VyL3VzZXItZWRpdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBUyx5QkFBeUIsRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzNGLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDbEMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7QUFZckUsTUFBTSxPQUFPLGlCQUFpQjtJQUU1QixJQUFhLElBQUksQ0FBQyxDQUFPO1FBQ3ZCLElBQUksQ0FBQyxFQUFFO1lBQ0wsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxLQUFLLFFBQVEsQ0FBQztZQUNqRSxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLDhCQUE4QixDQUFDO1NBQ2pGO0lBQ0gsQ0FBQztJQUNELElBQUksSUFBSTtRQUNOLE9BQU8sSUFB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IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElVc2VyLCBUZW5hbnRMb2dpbk9wdGlvbnNTZXJ2aWNlLCBUZW5hbnRTZXJ2aWNlLCBVc2VyU2VydmljZSB9IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCB7IGNsb25lIH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IEJzTW9kYWxTZXJ2aWNlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9tb2RhbCc7XG5pbXBvcnQgeyBBbGVydFNlcnZpY2UgfSBmcm9tICcuLi9hbGVydC9hbGVydC5zZXJ2aWNlJztcbmltcG9ydCB7IE5ld1Bhc3N3b3JkIH0gZnJvbSAnLi4vYXV0aGVudGljYXRpb24vcGFzc3dvcmQubW9kZWwnO1xuaW1wb3J0IHsgQXBwU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vY29tbW9uL3VpLXN0YXRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJy4uL2kxOG4vdHJhbnNsYXRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgVXNlclRvdHBTZXR1cENvbXBvbmVudCB9IGZyb20gJy4vdXNlci10b3RwLXNldHVwLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlciBleHRlbmRzIElVc2VyIHtcbiAgcGhvbmU6IHN0cmluZztcbiAgc2VuZFBhc3N3b3JkUmVzZXRFbWFpbDogYm9vbGVhbjtcbiAgbmV3c2xldHRlcj86IGJvb2xlYW47XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS11c2VyLWVkaXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vdXNlci1lZGl0LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBVc2VyRWRpdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGxvYWRpbmcgPSBmYWxzZTtcbiAgQElucHV0KCkgc2V0IHVzZXIodTogVXNlcikge1xuICAgIGlmICh1KSB7XG4gICAgICB0aGlzLl91c2VyID0gY2xvbmUodSk7XG4gICAgICB0aGlzLnVzZXJJc0V4dGVybmFsID0gdS5jdXN0b21Qcm9wZXJ0aWVzLnVzZXJPcmlnaW4gPT09ICdPQVVUSDInO1xuICAgICAgdGhpcy5pc1Bob25lUmVxdWlyZWQgPSB0aGlzLmlzUGhvbmVSZXF1aXJlZCAmJiB1LnR3b0ZhY3RvckF1dGhlbnRpY2F0aW9uRW5hYmxlZDtcbiAgICB9XG4gIH1cbiAgZ2V0IHVzZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3VzZXI7XG4gIH1cbiAgQElucHV0KCkgc2hvd1Byb2R1Y3RFeHBlcmllbmNlT3B0aW9ucyA9IGZhbHNlO1xuICBASW5wdXQoKSBpc1VzYWdlVHJhY2tpbmdFbmFibGVkID0gdHJ1ZTtcbiAgQElucHV0KCkgaXNVc2VyRW5nYWdlbWVudFByZWZlcmVuY2VFbmFibGVkID0gdHJ1ZTtcbiAgQE91dHB1dCgpIG9uVXNlcjogRXZlbnRFbWl0dGVyPFVzZXI+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgb25Vc2FnZVRyYWNraW5nQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBvblVzZXJFbmdhZ2VtZW50UHJlZmVyZW5jZUNoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgb25DYW5jZWw6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgdXNlckhhc0FjdGl2ZVRvdHAgPSBmYWxzZTtcbiAgdXNlckNhblNldHVwVG90cCA9IGZhbHNlO1xuICBpc1Bob25lUmVxdWlyZWQgPSBmYWxzZTtcbiAgdXNlcklzRXh0ZXJuYWw6IGJvb2xlYW47XG4gIGlzVGZhRW5hYmxlZDogYm9vbGVhbjtcblxuICBwcml2YXRlIF91c2VyOiBVc2VyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBzdGF0ZTogQXBwU3RhdGVTZXJ2aWNlLFxuICAgIHB1YmxpYyB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBic01vZGFsU2VydmljZTogQnNNb2RhbFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhbGVydDogQWxlcnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgdGVuYW50TG9naW5PcHRpb25zU2VydmljZTogVGVuYW50TG9naW5PcHRpb25zU2VydmljZSxcbiAgICBwcml2YXRlIHRlbmFudFNlcnZpY2U6IFRlbmFudFNlcnZpY2VcbiAgKSB7fVxuXG4gIGFzeW5jIG5nT25Jbml0KCkge1xuICAgIGNvbnN0IGN1cnJlbnRUZW5hbnQgPSAoYXdhaXQgdGhpcy50ZW5hbnRTZXJ2aWNlLmN1cnJlbnQoKSkuZGF0YTtcbiAgICBjb25zdCB7IGVuYWJsZWRPblN5c3RlbUxldmVsLCBlbmFibGVkT25UZW5hbnRMZXZlbCB9ID0gYXdhaXQgdGhpcy50ZW5hbnRTZXJ2aWNlLmdldFRmYVNldHRpbmdzKFxuICAgICAgY3VycmVudFRlbmFudFxuICAgICk7XG4gICAgdGhpcy5pc1RmYUVuYWJsZWQgPSBlbmFibGVkT25TeXN0ZW1MZXZlbCB8fCBlbmFibGVkT25UZW5hbnRMZXZlbDtcblxuICAgIGF3YWl0IHRoaXMuaW5pdGlhbGl6ZVRvdHBTZXR0aW5ncygpO1xuICAgIGlmICh0aGlzLnVzZXIudHdvRmFjdG9yQXV0aGVudGljYXRpb25FbmFibGVkICYmICF0aGlzLnVzZXJDYW5TZXR1cFRvdHApIHtcbiAgICAgIHRoaXMuaXNQaG9uZVJlcXVpcmVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBzZXR1cFRvdHAoKSB7XG4gICAgdGhpcy5ic01vZGFsU2VydmljZS5zaG93KFVzZXJUb3RwU2V0dXBDb21wb25lbnQsIHtcbiAgICAgIGNsYXNzOiAnbW9kYWwtc20nLFxuICAgICAgYXJpYURlc2NyaWJlZGJ5OiAnbW9kYWwtYm9keScsXG4gICAgICBhcmlhTGFiZWxsZWRCeTogJ21vZGFsLXRpdGxlJ1xuICAgIH0pO1xuICAgIHRoaXMuY2FuY2VsKCk7IC8vIHRvIGNsb3NlIHRoZSB1c2VyIGVkaXQgbW9kYWwgYW5kIHByZXZlbnQgY29uc29sZSBlcnJvcnMgb24gbG9nb3V0XG4gIH1cblxuICBjYW5jZWwoKSB7XG4gICAgdGhpcy5vbkNhbmNlbC5lbWl0KCk7XG4gIH1cblxuICBhc3luYyBzYXZlKCkge1xuICAgIGlmICh0aGlzLmxvYWRpbmcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5zaG93UHJvZHVjdEV4cGVyaWVuY2VPcHRpb25zKSB7XG4gICAgICB0aGlzLm9uVXNhZ2VUcmFja2luZ0NoYW5nZS5lbWl0KHRoaXMuaXNVc2FnZVRyYWNraW5nRW5hYmxlZCk7XG4gICAgICAvKipcbiAgICAgICAqIEVtaXRzIGEgdXNlciBlbmdhZ2VtZW50IHByZWZlcmVuY2UgY2hhbmdlIGV2ZW50LlxuICAgICAgICogSWYgdXNhZ2UgdHJhY2tpbmcgaXMgZGlzYWJsZWQsIGl0IGVtaXRzIGBmYWxzZWAuIE90aGVyd2lzZSwgaXQgZW1pdHMgdGhlIGN1cnJlbnQgc3RhdGUgb2YgdGhlIHVzZXIgZW5nYWdlbWVudCBwcmVmZXJlbmNlLlxuICAgICAgICovXG4gICAgICB0aGlzLm9uVXNlckVuZ2FnZW1lbnRQcmVmZXJlbmNlQ2hhbmdlLmVtaXQoXG4gICAgICAgIHRoaXMuaXNVc2FnZVRyYWNraW5nRW5hYmxlZCA9PT0gZmFsc2UgPyBmYWxzZSA6IHRoaXMuaXNVc2VyRW5nYWdlbWVudFByZWZlcmVuY2VFbmFibGVkXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMub25Vc2VyLmVtaXQodGhpcy5fdXNlcik7XG4gIH1cblxuICBvbk5ld1Bhc3N3b3JkQ2hhbmdlZChuZXdQYXNzd29yZDogTmV3UGFzc3dvcmQpIHtcbiAgICB0aGlzLl91c2VyLnBhc3N3b3JkID0gbmV3UGFzc3dvcmQucGFzc3dvcmQ7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGluaXRpYWxpemVUb3RwU2V0dGluZ3MoKSB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMudXNlckNhblNldHVwVG90cCA9IGF3YWl0IHRoaXMuY2FuVXNlclNldHVwVG90cCgpO1xuICAgICAgaWYgKHRoaXMudXNlckNhblNldHVwVG90cCkge1xuICAgICAgICBjb25zdCB7IGRhdGE6IHRvdHBBY3Rpdml0eSB9ID0gYXdhaXQgdGhpcy51c2VyU2VydmljZS5nZXRBY3Rpdml0eVRvdHAoKTtcbiAgICAgICAgdGhpcy51c2VySGFzQWN0aXZlVG90cCA9IHRvdHBBY3Rpdml0eS5pc0FjdGl2ZTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChleCkge1xuICAgICAgdGhpcy5hbGVydC5yZW1vdmVMYXN0RGFuZ2VyKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBjYW5Vc2VyU2V0dXBUb3RwKCkge1xuICAgIC8vIHdlIGRvbid0IGNoZWNrIGZvciB0ZW5hbnQgb3B0aW9ucyBoZXJlIGR1ZSB0byBwZXJtaXNzaW9uIHJlc3RyaWN0aW9ucyBvbiB0aGF0IGVuZC1wb2ludFxuICAgIGNvbnN0IGxvZ2luT3B0aW9ucyA9IChhd2FpdCB0aGlzLnRlbmFudExvZ2luT3B0aW9uc1NlcnZpY2UubGlzdEZvckN1cnJlbnRUZW5hbnQoKSkuZGF0YTtcbiAgICByZXR1cm4gbG9naW5PcHRpb25zLnNvbWUoKHsgdGZhU3RyYXRlZ3kgPSAnJyB9KSA9PiB0ZmFTdHJhdGVneS50b0xvd2VyQ2FzZSgpID09PSAndG90cCcpO1xuICB9XG59XG4iLCI8Zm9ybSAjdXNlckZvcm09XCJuZ0Zvcm1cIiAobmdTdWJtaXQpPVwidXNlckZvcm0uZm9ybS52YWxpZCAmJiBzYXZlKClcIj5cbiAgPGRpdiBjbGFzcz1cImQtYmxvY2sgcC0yNCBwLWItMFwiPlxuICAgIDxkaXYgY2xhc3M9XCJhbGVydCBhbGVydC13YXJuaW5nXCIgcm9sZT1cImFsZXJ0XCIgKm5nSWY9XCJ1c2VySXNFeHRlcm5hbFwiIHRyYW5zbGF0ZT5cbiAgICAgIFNvbWUgb2YgdGhlIHVzZXIgc2V0dGluZ3MgYXJlIG5vdCBlZGl0YWJsZSBoZXJlIGJlY2F1c2UgdGhleSBhcmUgbWFuYWdlZCB2aWEgeW91clxuICAgICAgYXV0aG9yaXphdGlvbiBzZXJ2ZXIuXG4gICAgPC9kaXY+XG4gICAgPGM4eS1mb3JtLWdyb3VwPlxuICAgICAgPGxhYmVsIHRyYW5zbGF0ZSBmb3I9XCJ1c2VyTmFtZVwiPlVzZXJuYW1lPC9sYWJlbD5cbiAgICAgIDxpbnB1dFxuICAgICAgICBpZD1cInVzZXJOYW1lXCJcbiAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICBbKG5nTW9kZWwpXT1cInVzZXIudXNlck5hbWVcIlxuICAgICAgICBuYW1lPVwidXNlck5hbWVcIlxuICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICByZXF1aXJlZFxuICAgICAgICBtYXhsZW5ndGg9XCIyNTRcIlxuICAgICAgICBwbGFjZWhvbGRlcj1cInt7ICdlLmcuIGpvZS5kb2VAZXhhbXBsZS5jb21gTE9DQUxJWkVgJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJ1c2VyLmlkXCJcbiAgICAgICAgYzh5RGVmYXVsdFZhbGlkYXRpb249XCJ1c2VyXCJcbiAgICAgIC8+XG4gICAgPC9jOHktZm9ybS1ncm91cD5cblxuICAgIDxjOHktZm9ybS1ncm91cD5cbiAgICAgIDxsYWJlbCB0cmFuc2xhdGUgZm9yPVwiZGlzcGxheU5hbWVcIj5Mb2dpbiBhbGlhczwvbGFiZWw+XG4gICAgICA8aW5wdXRcbiAgICAgICAgaWQ9XCJkaXNwbGF5TmFtZVwiXG4gICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJ1c2VyLmRpc3BsYXlOYW1lXCJcbiAgICAgICAgbmFtZT1cImRpc3BsYXlOYW1lXCJcbiAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICAgICAgbWF4bGVuZ3RoPVwiMjU0XCJcbiAgICAgICAgcGxhY2Vob2xkZXI9XCJ7eyAnZS5nLiBqb2UuZG9lYExPQ0FMSVpFYCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICBbZGlzYWJsZWRdPVwidXNlcklzRXh0ZXJuYWxcIlxuICAgICAgICBjOHlEZWZhdWx0VmFsaWRhdGlvbj1cImxvZ2luQWxpYXNcIlxuICAgICAgLz5cbiAgICA8L2M4eS1mb3JtLWdyb3VwPlxuXG4gICAgPGM4eS1mb3JtLWdyb3VwIFtoYXNXYXJuaW5nXT1cIiF1c2VyLmVtYWlsXCI+XG4gICAgICA8bGFiZWwgdHJhbnNsYXRlIGZvcj1cInVzZXJFbWFpbFwiPkVtYWlsPC9sYWJlbD5cbiAgICAgIDxpbnB1dFxuICAgICAgICBpZD1cInVzZXJFbWFpbFwiXG4gICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgdHlwZT1cImVtYWlsXCJcbiAgICAgICAgbmFtZT1cImVtYWlsXCJcbiAgICAgICAgW21heGxlbmd0aF09XCIyNTRcIlxuICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICBwbGFjZWhvbGRlcj1cInt7ICdlLmcuIGpvZS5kb2VAZXhhbXBsZS5jb21gTE9DQUxJWkVgJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgIFsobmdNb2RlbCldPVwidXNlci5lbWFpbFwiXG4gICAgICAgIGVtYWlsXG4gICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cInVzZXJJc0V4dGVybmFsXCJcbiAgICAgIC8+XG4gICAgPC9jOHktZm9ybS1ncm91cD5cblxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tNlwiPlxuICAgICAgICA8Yzh5LWZvcm0tZ3JvdXA+XG4gICAgICAgICAgPGxhYmVsIHRyYW5zbGF0ZSBmb3I9XCJ1c2VyRmlyc3ROYW1lXCI+Rmlyc3QgbmFtZTwvbGFiZWw+XG4gICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICBpZD1cInVzZXJGaXJzdE5hbWVcIlxuICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwie3sgJ2UuZy4gSm9lYExPQ0FMSVpFYCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgICAgbWF4bGVuZ3RoPVwiNTBcIlxuICAgICAgICAgICAgbmFtZT1cImZpcnN0TmFtZVwiXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cInVzZXIuZmlyc3ROYW1lXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ1c2VySXNFeHRlcm5hbFwiXG4gICAgICAgICAgLz5cbiAgICAgICAgPC9jOHktZm9ybS1ncm91cD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS02XCI+XG4gICAgICAgIDxjOHktZm9ybS1ncm91cD5cbiAgICAgICAgICA8bGFiZWwgdHJhbnNsYXRlIGZvcj1cInVzZXJMYXN0TmFtZVwiPkxhc3QgbmFtZTwvbGFiZWw+XG4gICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICBpZD1cInVzZXJMYXN0TmFtZVwiXG4gICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJ7eyAnZS5nLiBEb2VgTE9DQUxJWkVgJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgICAgICBtYXhsZW5ndGg9XCI1MFwiXG4gICAgICAgICAgICBuYW1lPVwibGFzdE5hbWVcIlxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJ1c2VyLmxhc3ROYW1lXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ1c2VySXNFeHRlcm5hbFwiXG4gICAgICAgICAgLz5cbiAgICAgICAgPC9jOHktZm9ybS1ncm91cD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPGM4eS1mb3JtLWdyb3VwPlxuICAgICAgPGxhYmVsIHRyYW5zbGF0ZSBmb3I9XCJ1c2VyVGVsZXBob25lXCI+VGVsZXBob25lPC9sYWJlbD5cbiAgICAgIDxpbnB1dFxuICAgICAgICBpZD1cInVzZXJUZWxlcGhvbmVcIlxuICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiXG4gICAgICAgIG5hbWU9XCJwaG9uZVwiXG4gICAgICAgIG1heGxlbmd0aD1cIjI1NFwiXG4gICAgICAgIFsobmdNb2RlbCldPVwidXNlci5waG9uZVwiXG4gICAgICAgIHBsYWNlaG9sZGVyPVwie3sgJ2UuZy4gKzQ5IDkgODc2IDU0MyAyMTBgTE9DQUxJWkVgJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgIGM4eVBob25lVmFsaWRhdGlvblxuICAgICAgICBbcmVxdWlyZWRdPVwiaXNQaG9uZVJlcXVpcmVkXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cInVzZXJJc0V4dGVybmFsXCJcbiAgICAgIC8+XG4gICAgPC9jOHktZm9ybS1ncm91cD5cblxuICAgIDxjOHktZm9ybS1ncm91cCBjbGFzcz1cInAtdC0xNiBzZXBhcmF0b3ItdG9wXCIgKm5nSWY9XCJzaG93UHJvZHVjdEV4cGVyaWVuY2VPcHRpb25zXCI+XG4gICAgICA8bGFiZWwgdHJhbnNsYXRlPlByb2R1Y3QgZXhwZXJpZW5jZTwvbGFiZWw+XG4gICAgICA8bGFiZWwgY2xhc3M9XCJjOHktc3dpdGNoXCIgZm9yPVwicHJvZHVjdFVzYWdlVHJhY2tpbmdcIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgaWQ9XCJwcm9kdWN0VXNhZ2VUcmFja2luZ1wiXG4gICAgICAgICAgbmFtZT1cInByb2R1Y3RVc2FnZVRyYWNraW5nXCJcbiAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICAgIFsobmdNb2RlbCldPVwiaXNVc2FnZVRyYWNraW5nRW5hYmxlZFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxzcGFuPjwvc3Bhbj5cbiAgICAgICAge3sgJ0VuYWJsZSBwZXJzb25hbGl6ZWQgcHJvZHVjdCBleHBlcmllbmNlIHRyYWNraW5nJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9sYWJlbD5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc1VzYWdlVHJhY2tpbmdFbmFibGVkXCI+XG4gICAgICAgIDxsYWJlbCBjbGFzcz1cImM4eS1zd2l0Y2ggbS1sLTBcIiBmb3I9XCJ1c2VyRW5nYWdlbWVudFByZWZlcmVuY2VcIj5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIGlkPVwidXNlckVuZ2FnZW1lbnRQcmVmZXJlbmNlXCJcbiAgICAgICAgICAgIG5hbWU9XCJ1c2VyRW5nYWdlbWVudFByZWZlcmVuY2VcIlxuICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiaXNVc2VyRW5nYWdlbWVudFByZWZlcmVuY2VFbmFibGVkXCJcbiAgICAgICAgICAvPlxuICAgICAgICAgIDxzcGFuPjwvc3Bhbj5cbiAgICAgICAgICB7eyAnRW5hYmxlIGluLXByb2R1Y3QgaW5mb3JtYXRpb24gJiBjb21tdW5pY2F0aW9uJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L2xhYmVsPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9jOHktZm9ybS1ncm91cD5cblxuICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIHAtdC0xNiBzZXBhcmF0b3ItdG9wXCIgKm5nSWY9XCIhdXNlcklzRXh0ZXJuYWxcIj5cbiAgICAgIDxsYWJlbCBjbGFzcz1cImNvbnRyb2wtbGFiZWxcIj57eyAnTG9naW4gb3B0aW9ucycgfCB0cmFuc2xhdGUgfX08L2xhYmVsPlxuICAgICAgPGM4eS1uZXctcGFzc3dvcmQgKHBhc3N3b3JkKT1cIm9uTmV3UGFzc3dvcmRDaGFuZ2VkKCRldmVudClcIj48L2M4eS1uZXctcGFzc3dvcmQ+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0XCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIHRpdGxlPVwie3sgJ1NldCB1cCB0d28tZmFjdG9yIGF1dGhlbnRpY2F0aW9uJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgIChjbGljayk9XCJzZXR1cFRvdHAoKVwiXG4gICAgICAgICpuZ0lmPVwidXNlckNhblNldHVwVG90cCAmJiAhdXNlckhhc0FjdGl2ZVRvdHAgJiYgaXNUZmFFbmFibGVkXCJcbiAgICAgID5cbiAgICAgICAge3sgJ1NldCB1cCB0d28tZmFjdG9yIGF1dGhlbnRpY2F0aW9uJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG5cbiAgICA8Yzh5LWZvcm0tZ3JvdXAgKm5nSWY9XCIhIShzdGF0ZS5zdGF0ZSQgfCBhc3luYykubmV3c2xldHRlclwiPlxuICAgICAgPGxhYmVsIHRyYW5zbGF0ZT5OZXdzbGV0dGVyPC9sYWJlbD5cbiAgICAgIDxsYWJlbFxuICAgICAgICB0aXRsZT1cInt7ICdTZW5kIG1lIGluZm9ybWF0aW9uIGFib3V0IG91dGFnZXMsIG1haW50ZW5hbmNlIG9yIHVwZGF0ZXMuJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgIGNsYXNzPVwiYzh5LWNoZWNrYm94XCJcbiAgICAgID5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICBuYW1lPVwibmV3c2xldHRlclwiXG4gICAgICAgICAgWyhuZ01vZGVsKV09XCJ1c2VyLm5ld3NsZXR0ZXJcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJ1c2VySXNFeHRlcm5hbFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxzcGFuPjwvc3Bhbj5cbiAgICAgICAgPHNwYW4+XG4gICAgICAgICAge3sgJ1NlbmQgbWUgaW5mb3JtYXRpb24gYWJvdXQgb3V0YWdlcywgbWFpbnRlbmFuY2Ugb3IgdXBkYXRlcy4nIHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvbGFiZWw+XG4gICAgPC9jOHktZm9ybS1ncm91cD5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJtb2RhbC1mb290ZXIgc2VwYXJhdG9yLXRvcCBiZy1sZXZlbC0wIHN0aWNreS1ib3R0b21cIj5cbiAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cImJ0biBidG4tZGVmYXVsdFwiXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIHRpdGxlPVwie3sgJ0NhbmNlbCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgKGNsaWNrKT1cImNhbmNlbCgpXCJcbiAgICA+XG4gICAgICB7eyAnQ2FuY2VsJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCJcbiAgICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgdGl0bGU9XCJ7eyAnU2F2ZScgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgW2Rpc2FibGVkXT1cIiF1c2VyRm9ybS5mb3JtLnZhbGlkIHx8IHVzZXJGb3JtLmZvcm0ucHJpc3RpbmUgfHwgbG9hZGluZ1wiXG4gICAgPlxuICAgICAge3sgJ1NhdmUnIHwgdHJhbnNsYXRlIH19XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuPC9mb3JtPlxuIl19
134
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1lZGl0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2NvcmUvdXNlci91c2VyLWVkaXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vY29yZS91c2VyL3VzZXItZWRpdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBUyx5QkFBeUIsRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzNGLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDbEMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7QUFZckUsTUFBTSxPQUFPLGlCQUFpQjtJQUU1QixJQUFhLElBQUksQ0FBQyxDQUFPO1FBQ3ZCLElBQUksQ0FBQyxFQUFFO1lBQ0wsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxLQUFLLFFBQVEsQ0FBQztZQUNqRSxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLDhCQUE4QixDQUFDO1NBQ2pGO0lBQ0gsQ0FBQztJQUNELElBQUksSUFBSTtRQUNOLE9BQU8sSUFB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dCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJVXNlciwgVGVuYW50TG9naW5PcHRpb25zU2VydmljZSwgVGVuYW50U2VydmljZSwgVXNlclNlcnZpY2UgfSBmcm9tICdAYzh5L2NsaWVudCc7XG5pbXBvcnQgeyBjbG9uZSB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBCc01vZGFsU2VydmljZSB9IGZyb20gJ25neC1ib290c3RyYXAvbW9kYWwnO1xuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi4vYWxlcnQvYWxlcnQuc2VydmljZSc7XG5pbXBvcnQgeyBOZXdQYXNzd29yZCB9IGZyb20gJy4uL2F1dGhlbnRpY2F0aW9uL3Bhc3N3b3JkLm1vZGVsJztcbmltcG9ydCB7IEFwcFN0YXRlU2VydmljZSB9IGZyb20gJy4uL2NvbW1vbi91aS1zdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICcuLi9pMThuL3RyYW5zbGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IFVzZXJUb3RwU2V0dXBDb21wb25lbnQgfSBmcm9tICcuL3VzZXItdG90cC1zZXR1cC5jb21wb25lbnQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFVzZXIgZXh0ZW5kcyBJVXNlciB7XG4gIHBob25lOiBzdHJpbmc7XG4gIHNlbmRQYXNzd29yZFJlc2V0RW1haWw6IGJvb2xlYW47XG4gIG5ld3NsZXR0ZXI/OiBib29sZWFuO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjOHktdXNlci1lZGl0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VzZXItZWRpdC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgVXNlckVkaXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBsb2FkaW5nID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNldCB1c2VyKHU6IFVzZXIpIHtcbiAgICBpZiAodSkge1xuICAgICAgdGhpcy5fdXNlciA9IGNsb25lKHUpO1xuICAgICAgdGhpcy51c2VySXNFeHRlcm5hbCA9IHUuY3VzdG9tUHJvcGVydGllcy51c2VyT3JpZ2luID09PSAnT0FVVEgyJztcbiAgICAgIHRoaXMuaXNQaG9uZVJlcXVpcmVkID0gdGhpcy5pc1Bob25lUmVxdWlyZWQgJiYgdS50d29GYWN0b3JBdXRoZW50aWNhdGlvbkVuYWJsZWQ7XG4gICAgfVxuICB9XG4gIGdldCB1c2VyKCkge1xuICAgIHJldHVybiB0aGlzLl91c2VyO1xuICB9XG4gIEBJbnB1dCgpIHNob3dQcm9kdWN0RXhwZXJpZW5jZU9wdGlvbnMgPSBmYWxzZTtcbiAgQElucHV0KCkgaXNVc2FnZVRyYWNraW5nRW5hYmxlZCA9IHRydWU7XG4gIEBJbnB1dCgpIGlzVXNlckVuZ2FnZW1lbnRQcmVmZXJlbmNlRW5hYmxlZCA9IHRydWU7XG4gIEBPdXRwdXQoKSBvblVzZXI6IEV2ZW50RW1pdHRlcjxVc2VyPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIG9uVXNhZ2VUcmFja2luZ0NoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgb25Vc2VyRW5nYWdlbWVudFByZWZlcmVuY2VDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIG9uQ2FuY2VsOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIHVzZXJIYXNBY3RpdmVUb3RwID0gZmFsc2U7XG4gIHVzZXJDYW5TZXR1cFRvdHAgPSBmYWxzZTtcbiAgaXNQaG9uZVJlcXVpcmVkID0gZmFsc2U7XG4gIHVzZXJJc0V4dGVybmFsOiBib29sZWFuO1xuICBpc1RmYUVuYWJsZWQ6IGJvb2xlYW47XG5cbiAgcHJpdmF0ZSBfdXNlcjogVXNlcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgc3RhdGU6IEFwcFN0YXRlU2VydmljZSxcbiAgICBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgYnNNb2RhbFNlcnZpY2U6IEJzTW9kYWxTZXJ2aWNlLFxuICAgIHByaXZhdGUgYWxlcnQ6IEFsZXJ0U2VydmljZSxcbiAgICBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICBwcml2YXRlIHRlbmFudExvZ2luT3B0aW9uc1NlcnZpY2U6IFRlbmFudExvZ2luT3B0aW9uc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSB0ZW5hbnRTZXJ2aWNlOiBUZW5hbnRTZXJ2aWNlXG4gICkge31cblxuICBhc3luYyBuZ09uSW5pdCgpIHtcbiAgICBjb25zdCBjdXJyZW50VGVuYW50ID0gKGF3YWl0IHRoaXMudGVuYW50U2VydmljZS5jdXJyZW50KCkpLmRhdGE7XG4gICAgY29uc3QgeyBlbmFibGVkT25TeXN0ZW1MZXZlbCwgZW5hYmxlZE9uVGVuYW50TGV2ZWwgfSA9XG4gICAgICBhd2FpdCB0aGlzLnRlbmFudFNlcnZpY2UuZ2V0VGZhU2V0dGluZ3MoY3VycmVudFRlbmFudCk7XG4gICAgdGhpcy5pc1RmYUVuYWJsZWQgPSBlbmFibGVkT25TeXN0ZW1MZXZlbCB8fCBlbmFibGVkT25UZW5hbnRMZXZlbDtcblxuICAgIGF3YWl0IHRoaXMuaW5pdGlhbGl6ZVRvdHBTZXR0aW5ncygpO1xuICAgIGlmICh0aGlzLnVzZXIudHdvRmFjdG9yQXV0aGVudGljYXRpb25FbmFibGVkICYmICF0aGlzLnVzZXJDYW5TZXR1cFRvdHApIHtcbiAgICAgIHRoaXMuaXNQaG9uZVJlcXVpcmVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBzZXR1cFRvdHAoKSB7XG4gICAgdGhpcy5ic01vZGFsU2VydmljZS5zaG93KFVzZXJUb3RwU2V0dXBDb21wb25lbnQsIHtcbiAgICAgIGNsYXNzOiAnbW9kYWwtc20nLFxuICAgICAgYXJpYURlc2NyaWJlZGJ5OiAnbW9kYWwtYm9keScsXG4gICAgICBhcmlhTGFiZWxsZWRCeTogJ21vZGFsLXRpdGxlJ1xuICAgIH0pO1xuICAgIHRoaXMuY2FuY2VsKCk7IC8vIHRvIGNsb3NlIHRoZSB1c2VyIGVkaXQgbW9kYWwgYW5kIHByZXZlbnQgY29uc29sZSBlcnJvcnMgb24gbG9nb3V0XG4gIH1cblxuICBjYW5jZWwoKSB7XG4gICAgdGhpcy5vbkNhbmNlbC5lbWl0KCk7XG4gIH1cblxuICBhc3luYyBzYXZlKCkge1xuICAgIGlmICh0aGlzLmxvYWRpbmcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5zaG93UHJvZHVjdEV4cGVyaWVuY2VPcHRpb25zKSB7XG4gICAgICB0aGlzLm9uVXNhZ2VUcmFja2luZ0NoYW5nZS5lbWl0KHRoaXMuaXNVc2FnZVRyYWNraW5nRW5hYmxlZCk7XG4gICAgICAvKipcbiAgICAgICAqIEVtaXRzIGEgdXNlciBlbmdhZ2VtZW50IHByZWZlcmVuY2UgY2hhbmdlIGV2ZW50LlxuICAgICAgICogSWYgdXNhZ2UgdHJhY2tpbmcgaXMgZGlzYWJsZWQsIGl0IGVtaXRzIGBmYWxzZWAuIE90aGVyd2lzZSwgaXQgZW1pdHMgdGhlIGN1cnJlbnQgc3RhdGUgb2YgdGhlIHVzZXIgZW5nYWdlbWVudCBwcmVmZXJlbmNlLlxuICAgICAgICovXG4gICAgICB0aGlzLm9uVXNlckVuZ2FnZW1lbnRQcmVmZXJlbmNlQ2hhbmdlLmVtaXQoXG4gICAgICAgIHRoaXMuaXNVc2FnZVRyYWNraW5nRW5hYmxlZCA9PT0gZmFsc2UgPyBmYWxzZSA6IHRoaXMuaXNVc2VyRW5nYWdlbWVudFByZWZlcmVuY2VFbmFibGVkXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMub25Vc2VyLmVtaXQodGhpcy5fdXNlcik7XG4gIH1cblxuICBvbk5ld1Bhc3N3b3JkQ2hhbmdlZChuZXdQYXNzd29yZDogTmV3UGFzc3dvcmQpIHtcbiAgICB0aGlzLl91c2VyLnBhc3N3b3JkID0gbmV3UGFzc3dvcmQucGFzc3dvcmQ7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGluaXRpYWxpemVUb3RwU2V0dGluZ3MoKSB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMudXNlckNhblNldHVwVG90cCA9IGF3YWl0IHRoaXMuY2FuVXNlclNldHVwVG90cCgpO1xuICAgICAgaWYgKHRoaXMudXNlckNhblNldHVwVG90cCkge1xuICAgICAgICBjb25zdCB7IGRhdGE6IHRvdHBBY3Rpdml0eSB9ID0gYXdhaXQgdGhpcy51c2VyU2VydmljZS5nZXRBY3Rpdml0eVRvdHAoKTtcbiAgICAgICAgdGhpcy51c2VySGFzQWN0aXZlVG90cCA9IHRvdHBBY3Rpdml0eS5pc0FjdGl2ZTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChleCkge1xuICAgICAgdGhpcy5hbGVydC5yZW1vdmVMYXN0RGFuZ2VyKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBjYW5Vc2VyU2V0dXBUb3RwKCkge1xuICAgIC8vIHdlIGRvbid0IGNoZWNrIGZvciB0ZW5hbnQgb3B0aW9ucyBoZXJlIGR1ZSB0byBwZXJtaXNzaW9uIHJlc3RyaWN0aW9ucyBvbiB0aGF0IGVuZC1wb2ludFxuICAgIGNvbnN0IGxvZ2luT3B0aW9ucyA9IChhd2FpdCB0aGlzLnRlbmFudExvZ2luT3B0aW9uc1NlcnZpY2UubGlzdEZvckN1cnJlbnRUZW5hbnQoKSkuZGF0YTtcbiAgICByZXR1cm4gbG9naW5PcHRpb25zLnNvbWUoKHsgdGZhU3RyYXRlZ3kgPSAnJyB9KSA9PiB0ZmFTdHJhdGVneS50b0xvd2VyQ2FzZSgpID09PSAndG90cCcpO1xuICB9XG59XG4iLCI8Zm9ybSAjdXNlckZvcm09XCJuZ0Zvcm1cIiAobmdTdWJtaXQpPVwidXNlckZvcm0uZm9ybS52YWxpZCAmJiBzYXZlKClcIj5cbiAgPGRpdiBjbGFzcz1cImQtYmxvY2sgcC0yNCBwLWItMFwiPlxuICAgIDxkaXYgY2xhc3M9XCJhbGVydCBhbGVydC13YXJuaW5nXCIgcm9sZT1cImFsZXJ0XCIgKm5nSWY9XCJ1c2VySXNFeHRlcm5hbFwiIHRyYW5zbGF0ZT5cbiAgICAgIFNvbWUgb2YgdGhlIHVzZXIgc2V0dGluZ3MgYXJlIG5vdCBlZGl0YWJsZSBoZXJlIGJlY2F1c2UgdGhleSBhcmUgbWFuYWdlZCB2aWEgeW91clxuICAgICAgYXV0aG9yaXphdGlvbiBzZXJ2ZXIuXG4gICAgPC9kaXY+XG4gICAgPGM4eS1mb3JtLWdyb3VwPlxuICAgICAgPGxhYmVsIHRyYW5zbGF0ZSBmb3I9XCJ1c2VyTmFtZVwiPlVzZXJuYW1lPC9sYWJlbD5cbiAgICAgIDxpbnB1dFxuICAgICAgICBpZD1cInVzZXJOYW1lXCJcbiAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICBbKG5nTW9kZWwpXT1cInVzZXIudXNlck5hbWVcIlxuICAgICAgICBuYW1lPVwidXNlck5hbWVcIlxuICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICByZXF1aXJlZFxuICAgICAgICBtYXhsZW5ndGg9XCIyNTRcIlxuICAgICAgICBwbGFjZWhvbGRlcj1cInt7ICdlLmcuIGpvZS5kb2VAZXhhbXBsZS5jb21gTE9DQUxJWkVgJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJ1c2VyLmlkXCJcbiAgICAgICAgYzh5RGVmYXVsdFZhbGlkYXRpb249XCJ1c2VyXCJcbiAgICAgIC8+XG4gICAgPC9jOHktZm9ybS1ncm91cD5cblxuICAgIDxjOHktZm9ybS1ncm91cD5cbiAgICAgIDxsYWJlbCB0cmFuc2xhdGUgZm9yPVwiZGlzcGxheU5hbWVcIj5Mb2dpbiBhbGlhczwvbGFiZWw+XG4gICAgICA8aW5wdXRcbiAgICAgICAgaWQ9XCJkaXNwbGF5TmFtZVwiXG4gICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJ1c2VyLmRpc3BsYXlOYW1lXCJcbiAgICAgICAgbmFtZT1cImRpc3BsYXlOYW1lXCJcbiAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICAgICAgbWF4bGVuZ3RoPVwiMjU0XCJcbiAgICAgICAgcGxhY2Vob2xkZXI9XCJ7eyAnZS5nLiBqb2UuZG9lYExPQ0FMSVpFYCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICBbZGlzYWJsZWRdPVwidXNlcklzRXh0ZXJuYWxcIlxuICAgICAgICBjOHlEZWZhdWx0VmFsaWRhdGlvbj1cImxvZ2luQWxpYXNcIlxuICAgICAgLz5cbiAgICA8L2M4eS1mb3JtLWdyb3VwPlxuXG4gICAgPGM4eS1mb3JtLWdyb3VwIFtoYXNXYXJuaW5nXT1cIiF1c2VyLmVtYWlsXCI+XG4gICAgICA8bGFiZWwgdHJhbnNsYXRlIGZvcj1cInVzZXJFbWFpbFwiPkVtYWlsPC9sYWJlbD5cbiAgICAgIDxpbnB1dFxuICAgICAgICBpZD1cInVzZXJFbWFpbFwiXG4gICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgdHlwZT1cImVtYWlsXCJcbiAgICAgICAgbmFtZT1cImVtYWlsXCJcbiAgICAgICAgW21heGxlbmd0aF09XCIyNTRcIlxuICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICBwbGFjZWhvbGRlcj1cInt7ICdlLmcuIGpvZS5kb2VAZXhhbXBsZS5jb21gTE9DQUxJWkVgJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgIFsobmdNb2RlbCldPVwidXNlci5lbWFpbFwiXG4gICAgICAgIGVtYWlsXG4gICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cInVzZXJJc0V4dGVybmFsXCJcbiAgICAgIC8+XG4gICAgPC9jOHktZm9ybS1ncm91cD5cblxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tNlwiPlxuICAgICAgICA8Yzh5LWZvcm0tZ3JvdXA+XG4gICAgICAgICAgPGxhYmVsIHRyYW5zbGF0ZSBmb3I9XCJ1c2VyRmlyc3ROYW1lXCI+Rmlyc3QgbmFtZTwvbGFiZWw+XG4gICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICBpZD1cInVzZXJGaXJzdE5hbWVcIlxuICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwie3sgJ2UuZy4gSm9lYExPQ0FMSVpFYCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgICAgbWF4bGVuZ3RoPVwiNTBcIlxuICAgICAgICAgICAgbmFtZT1cImZpcnN0TmFtZVwiXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cInVzZXIuZmlyc3ROYW1lXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ1c2VySXNFeHRlcm5hbFwiXG4gICAgICAgICAgLz5cbiAgICAgICAgPC9jOHktZm9ybS1ncm91cD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS02XCI+XG4gICAgICAgIDxjOHktZm9ybS1ncm91cD5cbiAgICAgICAgICA8bGFiZWwgdHJhbnNsYXRlIGZvcj1cInVzZXJMYXN0TmFtZVwiPkxhc3QgbmFtZTwvbGFiZWw+XG4gICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICBpZD1cInVzZXJMYXN0TmFtZVwiXG4gICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJ7eyAnZS5nLiBEb2VgTE9DQUxJWkVgJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgICAgICBtYXhsZW5ndGg9XCI1MFwiXG4gICAgICAgICAgICBuYW1lPVwibGFzdE5hbWVcIlxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJ1c2VyLmxhc3ROYW1lXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ1c2VySXNFeHRlcm5hbFwiXG4gICAgICAgICAgLz5cbiAgICAgICAgPC9jOHktZm9ybS1ncm91cD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPGM4eS1mb3JtLWdyb3VwPlxuICAgICAgPGxhYmVsIHRyYW5zbGF0ZSBmb3I9XCJ1c2VyVGVsZXBob25lXCI+VGVsZXBob25lPC9sYWJlbD5cbiAgICAgIDxpbnB1dFxuICAgICAgICBpZD1cInVzZXJUZWxlcGhvbmVcIlxuICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiXG4gICAgICAgIG5hbWU9XCJwaG9uZVwiXG4gICAgICAgIG1heGxlbmd0aD1cIjI1NFwiXG4gICAgICAgIFsobmdNb2RlbCldPVwidXNlci5waG9uZVwiXG4gICAgICAgIHBsYWNlaG9sZGVyPVwie3sgJ2UuZy4gKzQ5IDkgODc2IDU0MyAyMTBgTE9DQUxJWkVgJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgIGM4eVBob25lVmFsaWRhdGlvblxuICAgICAgICBbcmVxdWlyZWRdPVwiaXNQaG9uZVJlcXVpcmVkXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cInVzZXJJc0V4dGVybmFsXCJcbiAgICAgIC8+XG4gICAgPC9jOHktZm9ybS1ncm91cD5cblxuICAgIDxjOHktZm9ybS1ncm91cCBjbGFzcz1cInAtdC0xNiBzZXBhcmF0b3ItdG9wXCIgKm5nSWY9XCJzaG93UHJvZHVjdEV4cGVyaWVuY2VPcHRpb25zXCI+XG4gICAgICA8bGFiZWwgdHJhbnNsYXRlPlByb2R1Y3QgZXhwZXJpZW5jZTwvbGFiZWw+XG4gICAgICA8bGFiZWwgY2xhc3M9XCJjOHktc3dpdGNoXCIgZm9yPVwicHJvZHVjdFVzYWdlVHJhY2tpbmdcIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgaWQ9XCJwcm9kdWN0VXNhZ2VUcmFja2luZ1wiXG4gICAgICAgICAgbmFtZT1cInByb2R1Y3RVc2FnZVRyYWNraW5nXCJcbiAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICAgIFsobmdNb2RlbCldPVwiaXNVc2FnZVRyYWNraW5nRW5hYmxlZFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxzcGFuPjwvc3Bhbj5cbiAgICAgICAge3sgJ0VuYWJsZSBwZXJzb25hbGl6ZWQgcHJvZHVjdCBleHBlcmllbmNlIHRyYWNraW5nJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9sYWJlbD5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc1VzYWdlVHJhY2tpbmdFbmFibGVkXCI+XG4gICAgICAgIDxsYWJlbCBjbGFzcz1cImM4eS1zd2l0Y2ggbS1sLTBcIiBmb3I9XCJ1c2VyRW5nYWdlbWVudFByZWZlcmVuY2VcIj5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIGlkPVwidXNlckVuZ2FnZW1lbnRQcmVmZXJlbmNlXCJcbiAgICAgICAgICAgIG5hbWU9XCJ1c2VyRW5nYWdlbWVudFByZWZlcmVuY2VcIlxuICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiaXNVc2VyRW5nYWdlbWVudFByZWZlcmVuY2VFbmFibGVkXCJcbiAgICAgICAgICAvPlxuICAgICAgICAgIDxzcGFuPjwvc3Bhbj5cbiAgICAgICAgICB7eyAnRW5hYmxlIGluLXByb2R1Y3QgaW5mb3JtYXRpb24gJiBjb21tdW5pY2F0aW9uJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L2xhYmVsPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9jOHktZm9ybS1ncm91cD5cblxuICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIHAtdC0xNiBzZXBhcmF0b3ItdG9wXCIgKm5nSWY9XCIhdXNlcklzRXh0ZXJuYWxcIj5cbiAgICAgIDxsYWJlbCBjbGFzcz1cImNvbnRyb2wtbGFiZWxcIj57eyAnTG9naW4gb3B0aW9ucycgfCB0cmFuc2xhdGUgfX08L2xhYmVsPlxuICAgICAgPGM4eS1uZXctcGFzc3dvcmQgKHBhc3N3b3JkKT1cIm9uTmV3UGFzc3dvcmRDaGFuZ2VkKCRldmVudClcIj48L2M4eS1uZXctcGFzc3dvcmQ+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0XCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIHRpdGxlPVwie3sgJ1NldCB1cCB0d28tZmFjdG9yIGF1dGhlbnRpY2F0aW9uJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgIChjbGljayk9XCJzZXR1cFRvdHAoKVwiXG4gICAgICAgICpuZ0lmPVwidXNlckNhblNldHVwVG90cCAmJiAhdXNlckhhc0FjdGl2ZVRvdHAgJiYgaXNUZmFFbmFibGVkXCJcbiAgICAgID5cbiAgICAgICAge3sgJ1NldCB1cCB0d28tZmFjdG9yIGF1dGhlbnRpY2F0aW9uJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG5cbiAgICA8Yzh5LWZvcm0tZ3JvdXAgKm5nSWY9XCIhIShzdGF0ZS5zdGF0ZSQgfCBhc3luYykubmV3c2xldHRlclwiPlxuICAgICAgPGxhYmVsIHRyYW5zbGF0ZT5OZXdzbGV0dGVyPC9sYWJlbD5cbiAgICAgIDxsYWJlbFxuICAgICAgICB0aXRsZT1cInt7ICdTZW5kIG1lIGluZm9ybWF0aW9uIGFib3V0IG91dGFnZXMsIG1haW50ZW5hbmNlIG9yIHVwZGF0ZXMuJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgIGNsYXNzPVwiYzh5LWNoZWNrYm94XCJcbiAgICAgID5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICBuYW1lPVwibmV3c2xldHRlclwiXG4gICAgICAgICAgWyhuZ01vZGVsKV09XCJ1c2VyLm5ld3NsZXR0ZXJcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJ1c2VySXNFeHRlcm5hbFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxzcGFuPjwvc3Bhbj5cbiAgICAgICAgPHNwYW4+XG4gICAgICAgICAge3sgJ1NlbmQgbWUgaW5mb3JtYXRpb24gYWJvdXQgb3V0YWdlcywgbWFpbnRlbmFuY2Ugb3IgdXBkYXRlcy4nIHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvbGFiZWw+XG4gICAgPC9jOHktZm9ybS1ncm91cD5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJtb2RhbC1mb290ZXIgc2VwYXJhdG9yLXRvcCBiZy1sZXZlbC0wIHN0aWNreS1ib3R0b21cIj5cbiAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cImJ0biBidG4tZGVmYXVsdFwiXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIHRpdGxlPVwie3sgJ0NhbmNlbCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgKGNsaWNrKT1cImNhbmNlbCgpXCJcbiAgICA+XG4gICAgICB7eyAnQ2FuY2VsJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCJcbiAgICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgdGl0bGU9XCJ7eyAnU2F2ZScgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgW2Rpc2FibGVkXT1cIiF1c2VyRm9ybS5mb3JtLnZhbGlkIHx8IHVzZXJGb3JtLmZvcm0ucHJpc3RpbmUgfHwgbG9hZGluZ1wiXG4gICAgPlxuICAgICAge3sgJ1NhdmUnIHwgdHJhbnNsYXRlIH19XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuPC9mb3JtPlxuIl19
@@ -13,10 +13,11 @@ export class FilesRepositoryGuard {
13
13
  * @returns True, if the feature should be active.
14
14
  */
15
15
  canActivate() {
16
- return this.permissions.hasAnyRole([
17
- Permissions.ROLE_INVENTORY_READ,
18
- Permissions.ROLE_INVENTORY_ADMIN
19
- ]);
16
+ return (this.permissions.hasRole(Permissions.ROLE_INVENTORY_READ) ||
17
+ this.permissions.hasAllRoles([
18
+ Permissions.ROLE_MANAGED_OBJECT_READ,
19
+ Permissions.ROLE_BINARY_READ
20
+ ]));
20
21
  }
21
22
  }
22
23
  FilesRepositoryGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FilesRepositoryGuard, deps: [{ token: i1.Permissions }], target: i0.ɵɵFactoryTarget.Injectable });
@@ -27,4 +28,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
27
28
  providedIn: 'root'
28
29
  }]
29
30
  }], ctorParameters: function () { return [{ type: i1.Permissions }]; } });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZXMtcmVwb3NpdG9yeS5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2ZpbGVzLXJlcG9zaXRvcnkvZmlsZXMtcmVwb3NpdG9yeS5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7O0FBS2xELE1BQU0sT0FBTyxvQkFBb0I7SUFDL0IsWUFBb0IsV0FBd0I7UUFBeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7SUFBRyxDQUFDO0lBRWhEOzs7OztPQUtHO0lBQ0gsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUM7WUFDakMsV0FBVyxDQUFDLG1CQUFtQjtZQUMvQixXQUFXLENBQUMsb0JBQW9CO1NBQ2pDLENBQUMsQ0FBQztJQUNMLENBQUM7O2lIQWRVLG9CQUFvQjtxSEFBcEIsb0JBQW9CLGNBRm5CLE1BQU07MkZBRVAsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhbkFjdGl2YXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFBlcm1pc3Npb25zIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVzUmVwb3NpdG9yeUd1YXJkIGltcGxlbWVudHMgQ2FuQWN0aXZhdGUge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBlcm1pc3Npb25zOiBQZXJtaXNzaW9ucykge31cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIGZpbGVzIHJlcG9zaXRvcnkgc2hvdWxkIGJlIGFjdGl2ZSxcbiAgICogaS5lLiB3aGV0aGVyIHRoZSBjdXJyZW50IHRlbmFudCBjYW4gcmVhZCBvciBhZG1pbiBmaWxlcyBpbiByZXBvc2l0b3J5LlxuICAgKlxuICAgKiBAcmV0dXJucyBUcnVlLCBpZiB0aGUgZmVhdHVyZSBzaG91bGQgYmUgYWN0aXZlLlxuICAgKi9cbiAgY2FuQWN0aXZhdGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucGVybWlzc2lvbnMuaGFzQW55Um9sZShbXG4gICAgICBQZXJtaXNzaW9ucy5ST0xFX0lOVkVOVE9SWV9SRUFELFxuICAgICAgUGVybWlzc2lvbnMuUk9MRV9JTlZFTlRPUllfQURNSU5cbiAgICBdKTtcbiAgfVxufVxuIl19
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZXMtcmVwb3NpdG9yeS5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2ZpbGVzLXJlcG9zaXRvcnkvZmlsZXMtcmVwb3NpdG9yeS5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7O0FBS2xELE1BQU0sT0FBTyxvQkFBb0I7SUFDL0IsWUFBb0IsV0FBd0I7UUFBeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7SUFBRyxDQUFDO0lBRWhEOzs7OztPQUtHO0lBQ0gsV0FBVztRQUNULE9BQU8sQ0FDTCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsbUJBQW1CLENBQUM7WUFDekQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUM7Z0JBQzNCLFdBQVcsQ0FBQyx3QkFBd0I7Z0JBQ3BDLFdBQVcsQ0FBQyxnQkFBZ0I7YUFDN0IsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDOztpSEFqQlUsb0JBQW9CO3FIQUFwQixvQkFBb0IsY0FGbkIsTUFBTTsyRkFFUCxvQkFBb0I7a0JBSGhDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2FuQWN0aXZhdGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgUGVybWlzc2lvbnMgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRmlsZXNSZXBvc2l0b3J5R3VhcmQgaW1wbGVtZW50cyBDYW5BY3RpdmF0ZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcGVybWlzc2lvbnM6IFBlcm1pc3Npb25zKSB7fVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgZmlsZXMgcmVwb3NpdG9yeSBzaG91bGQgYmUgYWN0aXZlLFxuICAgKiBpLmUuIHdoZXRoZXIgdGhlIGN1cnJlbnQgdGVuYW50IGNhbiByZWFkIG9yIGFkbWluIGZpbGVzIGluIHJlcG9zaXRvcnkuXG4gICAqXG4gICAqIEByZXR1cm5zIFRydWUsIGlmIHRoZSBmZWF0dXJlIHNob3VsZCBiZSBhY3RpdmUuXG4gICAqL1xuICBjYW5BY3RpdmF0ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5wZXJtaXNzaW9ucy5oYXNSb2xlKFBlcm1pc3Npb25zLlJPTEVfSU5WRU5UT1JZX1JFQUQpIHx8XG4gICAgICB0aGlzLnBlcm1pc3Npb25zLmhhc0FsbFJvbGVzKFtcbiAgICAgICAgUGVybWlzc2lvbnMuUk9MRV9NQU5BR0VEX09CSkVDVF9SRUFELFxuICAgICAgICBQZXJtaXNzaW9ucy5ST0xFX0JJTkFSWV9SRUFEXG4gICAgICBdKVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -5,12 +5,18 @@ import { Subject } from 'rxjs';
5
5
  import { takeUntil } from 'rxjs/operators';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "@c8y/ngx-components";
8
- export const REQUIRED_ROLES = [
9
- Permissions.ROLE_INVENTORY_READ,
10
- Permissions.ROLE_INVENTORY_ADMIN,
8
+ export const REQUIRED_IDENTITY_ROLES = [
11
9
  Permissions.ROLE_IDENTITY_READ,
12
10
  Permissions.ROLE_IDENTITY_ADMIN
13
11
  ];
12
+ export const REQUIRED_INVENTORY_ROLES = [
13
+ Permissions.ROLE_INVENTORY_READ,
14
+ Permissions.ROLE_INVENTORY_ADMIN
15
+ ];
16
+ export const REQUIRED_MANAGED_OBJECT_ROLES = [
17
+ Permissions.ROLE_MANAGED_OBJECT_READ,
18
+ Permissions.ROLE_MANAGED_OBJECT_ADMIN
19
+ ];
14
20
  export class ReplaceDeviceService {
15
21
  constructor(permissions, breadcrumbService, drawerService) {
16
22
  this.permissions = permissions;
@@ -19,7 +25,9 @@ export class ReplaceDeviceService {
19
25
  this.destroyed$ = new Subject();
20
26
  }
21
27
  canShowReplaceDevice(device) {
22
- return (this.permissions.hasAllRoles(REQUIRED_ROLES) &&
28
+ return ((this.permissions.hasAllRoles(REQUIRED_INVENTORY_ROLES) ||
29
+ this.permissions.hasAllRoles(REQUIRED_MANAGED_OBJECT_ROLES)) &&
30
+ this.permissions.hasAllRoles(REQUIRED_IDENTITY_ROLES) &&
23
31
  !isNil(device.c8y_IsDevice) &&
24
32
  isNil(device.c8y_IsLwm2mDevice));
25
33
  }
@@ -55,4 +63,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
55
63
  type: Injectable,
56
64
  args: [{ providedIn: 'root' }]
57
65
  }], ctorParameters: function () { return [{ type: i1.Permissions }, { type: i1.BreadcrumbService }, { type: i1.BottomDrawerService }]; } });
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwbGFjZS1kZXZpY2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3JlcGxhY2UtZGV2aWNlL3JlcGxhY2UtZGV2aWNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUV0RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsaUJBQWlCLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25HLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDbEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUUzQyxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUc7SUFDNUIsV0FBVyxDQUFDLG1CQUFtQjtJQUMvQixXQUFXLENBQUMsb0JBQW9CO0lBQ2hDLFdBQVcsQ0FBQyxrQkFBa0I7SUFDOUIsV0FBVyxDQUFDLG1CQUFtQjtDQUNoQyxDQUFDO0FBR0YsTUFBTSxPQUFPLG9CQUFvQjtJQUcvQixZQUNVLFdBQXdCLEVBQ3hCLGlCQUFvQyxFQUNwQyxhQUFrQztRQUZsQyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLGtCQUFhLEdBQWIsYUFBYSxDQUFxQjtRQUxwQyxlQUFVLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQU10QyxDQUFDO0lBRUosb0JBQW9CLENBQUMsTUFBc0I7UUFDekMsT0FBTyxDQUNMLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQztZQUM1QyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDO1lBQzNCLEtBQUssQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FDaEMsQ0FBQztJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMsVUFBVSxDQUFDLGVBQStCLEVBQUUsYUFBMEI7UUFDMUUsTUFBTSxFQUFFLDRCQUE0QixFQUFFLEdBQUcsTUFBTSxNQUFNLENBQ25ELDJDQUEyQyxDQUM1QyxDQUFDO1FBQ0YsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsNEJBQTRCLEVBQUU7WUFDNUUsWUFBWSxFQUFFLEVBQUUsZUFBZSxFQUFFO1NBQ2xDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3pCLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2xFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3pCLElBQUksT0FBTyxhQUFhLEtBQUssVUFBVSxFQUFFO2dCQUN2QyxhQUFhLEVBQUUsQ0FBQzthQUNqQjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FDbEMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FDeEYsQ0FBQztRQUNGLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRU8saUJBQWlCO1FBQ3ZCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNuQyxDQUFDOztpSEFoRFUsb0JBQW9CO3FIQUFwQixvQkFBb0IsY0FEUCxNQUFNOzJGQUNuQixvQkFBb0I7a0JBRGhDLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJTWFuYWdlZE9iamVjdCB9IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCB7IEJvdHRvbURyYXdlclNlcnZpY2UsIEJyZWFkY3J1bWJTZXJ2aWNlLCBnZXR0ZXh0LCBQZXJtaXNzaW9ucyB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgaXNOaWwgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5leHBvcnQgY29uc3QgUkVRVUlSRURfUk9MRVMgPSBbXG4gIFBlcm1pc3Npb25zLlJPTEVfSU5WRU5UT1JZX1JFQUQsXG4gIFBlcm1pc3Npb25zLlJPTEVfSU5WRU5UT1JZX0FETUlOLFxuICBQZXJtaXNzaW9ucy5ST0xFX0lERU5USVRZX1JFQUQsXG4gIFBlcm1pc3Npb25zLlJPTEVfSURFTlRJVFlfQURNSU5cbl07XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgUmVwbGFjZURldmljZVNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIGRlc3Ryb3llZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcGVybWlzc2lvbnM6IFBlcm1pc3Npb25zLFxuICAgIHByaXZhdGUgYnJlYWRjcnVtYlNlcnZpY2U6IEJyZWFkY3J1bWJTZXJ2aWNlLFxuICAgIHByaXZhdGUgZHJhd2VyU2VydmljZTogQm90dG9tRHJhd2VyU2VydmljZVxuICApIHt9XG5cbiAgY2FuU2hvd1JlcGxhY2VEZXZpY2UoZGV2aWNlOiBJTWFuYWdlZE9iamVjdCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLnBlcm1pc3Npb25zLmhhc0FsbFJvbGVzKFJFUVVJUkVEX1JPTEVTKSAmJlxuICAgICAgIWlzTmlsKGRldmljZS5jOHlfSXNEZXZpY2UpICYmXG4gICAgICBpc05pbChkZXZpY2UuYzh5X0lzTHdtMm1EZXZpY2UpXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIG9wZW5EcmF3ZXIoZGV2aWNlVG9SZXBsYWNlOiBJTWFuYWdlZE9iamVjdCwgY2xvc2VDYWxsYmFjaz86ICgpID0+IHZvaWQpIHtcbiAgICBjb25zdCB7IFJlcGxhY2VEZXZpY2VXaXphcmRDb21wb25lbnQgfSA9IGF3YWl0IGltcG9ydChcbiAgICAgICdAYzh5L25neC1jb21wb25lbnRzL3JlcGxhY2UtZGV2aWNlLXdpemFyZCdcbiAgICApO1xuICAgIGNvbnN0IGRyYXdlclJlZiA9IHRoaXMuZHJhd2VyU2VydmljZS5vcGVuRHJhd2VyKFJlcGxhY2VEZXZpY2VXaXphcmRDb21wb25lbnQsIHtcbiAgICAgIGluaXRpYWxTdGF0ZTogeyBkZXZpY2VUb1JlcGxhY2UgfVxuICAgIH0pO1xuICAgIHRoaXMuYXBwZW5kQnJlYWRjcnVtYnMoKTtcbiAgICBkcmF3ZXJSZWYub25DbG9zZWQkLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnJlbW92ZUJyZWFkY3J1bWJzKCk7XG4gICAgICBpZiAodHlwZW9mIGNsb3NlQ2FsbGJhY2sgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgY2xvc2VDYWxsYmFjaygpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95ZWQkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3llZCQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgYXBwZW5kQnJlYWRjcnVtYnMoKTogdm9pZCB7XG4gICAgdGhpcy5icmVhZGNydW1iU2VydmljZS5zdGF0ZS5mb3JFYWNoKFxuICAgICAgYmMgPT4gKGJjLml0ZW1zID0gWy4uLmJjLml0ZW1zLCB7IGxhYmVsOiBnZXR0ZXh0KCdSZXBsYWNlIGRldmljZScpLCBwYXRoOiB1bmRlZmluZWQgfV0pXG4gICAgKTtcbiAgICB0aGlzLmJyZWFkY3J1bWJTZXJ2aWNlLnJlZnJlc2goKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlQnJlYWRjcnVtYnMoKTogdm9pZCB7XG4gICAgdGhpcy5icmVhZGNydW1iU2VydmljZS5zdGF0ZS5mb3JFYWNoKGJjID0+IGJjLml0ZW1zPy5wb3AoKSk7XG4gICAgdGhpcy5icmVhZGNydW1iU2VydmljZS5yZWZyZXNoKCk7XG4gIH1cbn1cbiJdfQ==
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwbGFjZS1kZXZpY2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3JlcGxhY2UtZGV2aWNlL3JlcGxhY2UtZGV2aWNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUV0RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsaUJBQWlCLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25HLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDbEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUUzQyxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRztJQUNyQyxXQUFXLENBQUMsa0JBQWtCO0lBQzlCLFdBQVcsQ0FBQyxtQkFBbUI7Q0FDaEMsQ0FBQztBQUNGLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHO0lBQ3RDLFdBQVcsQ0FBQyxtQkFBbUI7SUFDL0IsV0FBVyxDQUFDLG9CQUFvQjtDQUNqQyxDQUFDO0FBQ0YsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUc7SUFDM0MsV0FBVyxDQUFDLHdCQUF3QjtJQUNwQyxXQUFXLENBQUMseUJBQXlCO0NBQ3RDLENBQUM7QUFHRixNQUFNLE9BQU8sb0JBQW9CO0lBRy9CLFlBQ1UsV0FBd0IsRUFDeEIsaUJBQW9DLEVBQ3BDLGFBQWtDO1FBRmxDLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsa0JBQWEsR0FBYixhQUFhLENBQXFCO1FBTHBDLGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBTXRDLENBQUM7SUFFSixvQkFBb0IsQ0FBQyxNQUFzQjtRQUN6QyxPQUFPLENBQ0wsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyx3QkFBd0IsQ0FBQztZQUNyRCxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO1lBQzlELElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLHVCQUF1QixDQUFDO1lBQ3JELENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUM7WUFDM0IsS0FBSyxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUNoQyxDQUFDO0lBQ0osQ0FBQztJQUVELEtBQUssQ0FBQyxVQUFVLENBQUMsZUFBK0IsRUFBRSxhQUEwQjtRQUMxRSxNQUFNLEVBQUUsNEJBQTRCLEVBQUUsR0FBRyxNQUFNLE1BQU0sQ0FDbkQsMkNBQTJDLENBQzVDLENBQUM7UUFDRixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyw0QkFBNEIsRUFBRTtZQUM1RSxZQUFZLEVBQUUsRUFBRSxlQUFlLEVBQUU7U0FDbEMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDekIsU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDbEUsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDekIsSUFBSSxPQUFPLGFBQWEsS0FBSyxVQUFVLEVBQUU7Z0JBQ3ZDLGFBQWEsRUFBRSxDQUFDO2FBQ2pCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRU8saUJBQWlCO1FBQ3ZCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUNsQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUN4RixDQUFDO1FBQ0YsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFTyxpQkFBaUI7UUFDdkIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ25DLENBQUM7O2lIQWxEVSxvQkFBb0I7cUhBQXBCLG9CQUFvQixjQURQLE1BQU07MkZBQ25CLG9CQUFvQjtrQkFEaEMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElNYW5hZ2VkT2JqZWN0IH0gZnJvbSAnQGM4eS9jbGllbnQnO1xuaW1wb3J0IHsgQm90dG9tRHJhd2VyU2VydmljZSwgQnJlYWRjcnVtYlNlcnZpY2UsIGdldHRleHQsIFBlcm1pc3Npb25zIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBpc05pbCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmV4cG9ydCBjb25zdCBSRVFVSVJFRF9JREVOVElUWV9ST0xFUyA9IFtcbiAgUGVybWlzc2lvbnMuUk9MRV9JREVOVElUWV9SRUFELFxuICBQZXJtaXNzaW9ucy5ST0xFX0lERU5USVRZX0FETUlOXG5dO1xuZXhwb3J0IGNvbnN0IFJFUVVJUkVEX0lOVkVOVE9SWV9ST0xFUyA9IFtcbiAgUGVybWlzc2lvbnMuUk9MRV9JTlZFTlRPUllfUkVBRCxcbiAgUGVybWlzc2lvbnMuUk9MRV9JTlZFTlRPUllfQURNSU5cbl07XG5leHBvcnQgY29uc3QgUkVRVUlSRURfTUFOQUdFRF9PQkpFQ1RfUk9MRVMgPSBbXG4gIFBlcm1pc3Npb25zLlJPTEVfTUFOQUdFRF9PQkpFQ1RfUkVBRCxcbiAgUGVybWlzc2lvbnMuUk9MRV9NQU5BR0VEX09CSkVDVF9BRE1JTlxuXTtcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBSZXBsYWNlRGV2aWNlU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgZGVzdHJveWVkJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBwZXJtaXNzaW9uczogUGVybWlzc2lvbnMsXG4gICAgcHJpdmF0ZSBicmVhZGNydW1iU2VydmljZTogQnJlYWRjcnVtYlNlcnZpY2UsXG4gICAgcHJpdmF0ZSBkcmF3ZXJTZXJ2aWNlOiBCb3R0b21EcmF3ZXJTZXJ2aWNlXG4gICkge31cblxuICBjYW5TaG93UmVwbGFjZURldmljZShkZXZpY2U6IElNYW5hZ2VkT2JqZWN0KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgICh0aGlzLnBlcm1pc3Npb25zLmhhc0FsbFJvbGVzKFJFUVVJUkVEX0lOVkVOVE9SWV9ST0xFUykgfHxcbiAgICAgICAgdGhpcy5wZXJtaXNzaW9ucy5oYXNBbGxSb2xlcyhSRVFVSVJFRF9NQU5BR0VEX09CSkVDVF9ST0xFUykpICYmXG4gICAgICB0aGlzLnBlcm1pc3Npb25zLmhhc0FsbFJvbGVzKFJFUVVJUkVEX0lERU5USVRZX1JPTEVTKSAmJlxuICAgICAgIWlzTmlsKGRldmljZS5jOHlfSXNEZXZpY2UpICYmXG4gICAgICBpc05pbChkZXZpY2UuYzh5X0lzTHdtMm1EZXZpY2UpXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIG9wZW5EcmF3ZXIoZGV2aWNlVG9SZXBsYWNlOiBJTWFuYWdlZE9iamVjdCwgY2xvc2VDYWxsYmFjaz86ICgpID0+IHZvaWQpIHtcbiAgICBjb25zdCB7IFJlcGxhY2VEZXZpY2VXaXphcmRDb21wb25lbnQgfSA9IGF3YWl0IGltcG9ydChcbiAgICAgICdAYzh5L25neC1jb21wb25lbnRzL3JlcGxhY2UtZGV2aWNlLXdpemFyZCdcbiAgICApO1xuICAgIGNvbnN0IGRyYXdlclJlZiA9IHRoaXMuZHJhd2VyU2VydmljZS5vcGVuRHJhd2VyKFJlcGxhY2VEZXZpY2VXaXphcmRDb21wb25lbnQsIHtcbiAgICAgIGluaXRpYWxTdGF0ZTogeyBkZXZpY2VUb1JlcGxhY2UgfVxuICAgIH0pO1xuICAgIHRoaXMuYXBwZW5kQnJlYWRjcnVtYnMoKTtcbiAgICBkcmF3ZXJSZWYub25DbG9zZWQkLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnJlbW92ZUJyZWFkY3J1bWJzKCk7XG4gICAgICBpZiAodHlwZW9mIGNsb3NlQ2FsbGJhY2sgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgY2xvc2VDYWxsYmFjaygpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95ZWQkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3llZCQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgYXBwZW5kQnJlYWRjcnVtYnMoKTogdm9pZCB7XG4gICAgdGhpcy5icmVhZGNydW1iU2VydmljZS5zdGF0ZS5mb3JFYWNoKFxuICAgICAgYmMgPT4gKGJjLml0ZW1zID0gWy4uLmJjLml0ZW1zLCB7IGxhYmVsOiBnZXR0ZXh0KCdSZXBsYWNlIGRldmljZScpLCBwYXRoOiB1bmRlZmluZWQgfV0pXG4gICAgKTtcbiAgICB0aGlzLmJyZWFkY3J1bWJTZXJ2aWNlLnJlZnJlc2goKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlQnJlYWRjcnVtYnMoKTogdm9pZCB7XG4gICAgdGhpcy5icmVhZGNydW1iU2VydmljZS5zdGF0ZS5mb3JFYWNoKGJjID0+IGJjLml0ZW1zPy5wb3AoKSk7XG4gICAgdGhpcy5icmVhZGNydW1iU2VydmljZS5yZWZyZXNoKCk7XG4gIH1cbn1cbiJdfQ==
@@ -140,10 +140,18 @@ export class ConfigurationPreviewComponent {
140
140
  }
141
141
  }
142
142
  hasPermission() {
143
- return this.user.hasAnyRole(this.appState.currentUser.value, [
143
+ return (this.user.hasAnyRole(this.appState.currentUser.value, [
144
144
  Permissions.ROLE_INVENTORY_ADMIN,
145
145
  Permissions.ROLE_INVENTORY_CREATE
146
- ]);
146
+ ]) ||
147
+ (this.user.hasAnyRole(this.appState.currentUser.value, [
148
+ Permissions.ROLE_MANAGED_OBJECT_ADMIN,
149
+ Permissions.ROLE_MANAGED_OBJECT_CREATE
150
+ ]) &&
151
+ this.user.hasAnyRole(this.appState.currentUser.value, [
152
+ Permissions.ROLE_BINARY_ADMIN,
153
+ Permissions.ROLE_BINARY_CREATE
154
+ ])));
147
155
  }
148
156
  ngOnDestroy() {
149
157
  if (this.operationsSubscription) {
@@ -179,4 +187,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
179
187
  }], operationToTrigger: [{
180
188
  type: Input
181
189
  }] } });
182
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi1wcmV2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3JlcG9zaXRvcnkvY29uZmlndXJhdGlvbi9kZXZpY2UtdGFiL2NvbmZpZ3VyYXRpb24tcHJldmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9yZXBvc2l0b3J5L2NvbmZpZ3VyYXRpb24vZGV2aWNlLXRhYi9jb25maWd1cmF0aW9uLXByZXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFFTCw0QkFBNEIsRUFDNUIsaUJBQWlCLEVBQ2xCLE1BQU0sdUNBQXVDLENBQUM7QUFDL0MsT0FBTyxFQUdMLGdCQUFnQixFQUNoQixlQUFlLEVBQ2YsV0FBVyxFQUNaLE1BQU0sYUFBYSxDQUFDO0FBQ3JCLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRTVFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFDTCxZQUFZLEVBQ1osZUFBZSxFQUNmLHdCQUF3QixFQUN4QixXQUFXLEVBQ1osTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7Ozs7OztBQU03QixNQUFNLE9BQU8sNkJBQTZCO0lBR3hDLElBQWEsaUJBQWlCLENBQUMsSUFBWTtRQUN6QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDO1FBQy9CLElB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LENBQUMsNEJBQTRCLENBQUMsYUFBYSxDQUFDO1lBQ3JELFNBQVMsQ0FBQyxNQUFNLEtBQUssZUFBZSxDQUFDLFVBQVUsRUFDL0M7WUFDQSxJQUFJLENBQUMsMEJBQTBCLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztTQUN4RDtJQUNILENBQUM7OzBIQWhNVSw2QkFBNkI7OEdBQTdCLDZCQUE2QixnV0MvQjFDLGs3RUEwRUE7MkZEM0NhLDZCQUE2QjtrQkFKekMsU0FBUzsrQkFDRSxrQ0FBa0M7dVVBSW5DLE1BQU07c0JBQWQsS0FBSztnQkFFTyxpQkFBaUI7c0JBQTdCLEtBQUs7Z0JBU0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQ29uZmlndXJhdGlvblNuYXBzaG90LFxuICBEZXZpY2VDb25maWd1cmF0aW9uT3BlcmF0aW9uLFxuICBSZXBvc2l0b3J5U2VydmljZVxufSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL3JlcG9zaXRvcnkvc2hhcmVkJztcbmltcG9ydCB7XG4gIElNYW5hZ2VkT2JqZWN0LFxuICBJT3BlcmF0aW9uLFxuICBPcGVyYXRpb25TZXJ2aWNlLFxuICBPcGVyYXRpb25TdGF0dXMsXG4gIFVzZXJTZXJ2aWNlXG59IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCB7IERldmljZUNvbmZpZ3VyYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9kZXZpY2UtY29uZmlndXJhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgc2F2ZUFzIH0gZnJvbSAnZmlsZS1zYXZlcic7XG5pbXBvcnQgeyBCc01vZGFsU2VydmljZSB9IGZyb20gJ25neC1ib290c3RyYXAvbW9kYWwnO1xuaW1wb3J0IHsgU2F2ZVRvUmVwb3NpdG9yeUNvbXBvbmVudCB9IGZyb20gJy4vc2F2ZS10by1yZXBvc2l0b3J5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBjbG9uZURlZXAgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHtcbiAgQWxlcnRTZXJ2aWNlLFxuICBBcHBTdGF0ZVNlcnZpY2UsXG4gIE9wZXJhdGlvblJlYWx0aW1lU2VydmljZSxcbiAgUGVybWlzc2lvbnNcbn0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1kZXZpY2UtY29uZmlndXJhdGlvbi1wcmV2aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbmZpZ3VyYXRpb24tcHJldmlldy5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgQ29uZmlndXJhdGlvblByZXZpZXdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIGRldmljZTogSU1hbmFnZWRPYmplY3Q7XG5cbiAgQElucHV0KCkgc2V0IGNvbmZpZ3VyYXRpb25UeXBlKHR5cGU6IHN0cmluZykge1xuICAgIHRoaXMuX2NvbmZpZ3VyYXRpb25UeXBlID0gdHlwZTtcbiAgICB0aGlzLnNldE9wZXJhdGlvbih0eXBlKTtcbiAgfVxuXG4gIGdldCBjb25maWd1cmF0aW9uVHlwZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9jb25maWd1cmF0aW9uVHlwZTtcbiAgfVxuXG4gIEBJbnB1dCgpIGNvbmZpZ1NuYXBzaG90OiBDb25maWd1cmF0aW9uU25hcHNob3Q7XG4gIEBJbnB1dCgpIGNhblNhdmVTbmFwc2hvdDogYm9vbGVhbjtcbiAgQElucHV0KCkgYWN0aW9uQnV0dG9uVGV4dDogc3RyaW5nO1xuICBASW5wdXQoKSBhY3Rpb25CdXR0b25JY29uOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGlzTGVnYWN5ID0gZmFsc2U7XG4gIEBJbnB1dCgpIG9wZXJhdGlvblRvVHJpZ2dlcjpcbiAgICB8IERldmljZUNvbmZpZ3VyYXRpb25PcGVyYXRpb24uVVBMT0FEX0NPTkZJR1xuICAgIHwgRGV2aWNlQ29uZmlndXJhdGlvbk9wZXJhdGlvbi5ET1dOTE9BRF9DT05GSUc7XG5cbiAgb3BlcmF0aW9uOiBJT3BlcmF0aW9uO1xuICBjYW5DYWxsQWN0aW9uID0gdHJ1ZTtcbiAgZGV2aWNlQ29uZmlndXJhdGlvbk9wZXJhdGlvbiA9IERldmljZUNvbmZpZ3VyYXRpb25PcGVyYXRpb247XG4gIHByaXZhdGUgX2NvbmZpZ3VyYXRpb25UeXBlOiBzdHJpbmc7XG4gIHByaXZhdGUgb3BlcmF0aW9uc1N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZGV2aWNlQ29uZmlndXJhdGlvblNlcnZpY2U6IERldmljZUNvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgb3BlcmF0aW9uUmVhbHRpbWU6IE9wZXJhdGlvblJlYWx0aW1lU2VydmljZSxcbiAgICBwcml2YXRlIGJzTW9kYWw6IEJzTW9kYWxTZXJ2aWNlLFxuICAgIHByaXZhdGUgdXNlcjogVXNlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhcHBTdGF0ZTogQXBwU3RhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVwb3NpdG9yeVNlcnZpY2U6IFJlcG9zaXRvcnlTZXJ2aWNlLFxuICAgIHByaXZhdGUgb3BlcmF0aW9uU2VydmljZTogT3BlcmF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlXG4gICkge31cblxuICBhc3luYyBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNldENhbkNhbGxBY3Rpb24oKTtcbiAgICB0aGlzLnNldE9wZXJhdGlvbih0aGlzLl9jb25maWd1cmF0aW9uVHlwZSk7XG4gICAgdGhpcy5vcGVyYXRpb25zU3Vic2NyaXB0aW9uID0gdGhpcy5vcGVyYXRpb25SZWFsdGltZVxuICAgICAgLm9uQWxsJCh0aGlzLmRldmljZS5pZClcbiAgICAgIC5waXBlKG1hcCgoeyBkYXRhIH0pID0+IGRhdGEgYXMgSU9wZXJhdGlvbikpXG4gICAgICAuc3Vic2NyaWJlKG9wZXJhdGlvbiA9PiB7XG4gICAgICAgIHRoaXMudXBkYXRlUHJldmlldyhvcGVyYXRpb24pO1xuICAgICAgfSk7XG4gIH1cblxuICBhc3luYyBzZXRPcGVyYXRpb24oY29uZmlnVHlwZSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IG9wZXJhdGlvbkxpc3QgPSBhd2FpdCB0aGlzLnJlcG9zaXRvcnlTZXJ2aWNlLmdldENvbmZpZ0ZpbGVPcGVyYXRpb25MaXN0KFxuICAgICAgdGhpcy5kZXZpY2UuaWQsXG4gICAgICB0aGlzLm9wZXJhdGlvblRvVHJpZ2dlclxuICAgICk7XG5cbiAgICBjb25zdCBvcGVyYXRpb24gPSB0aGlzLmlzTGVnYWN5XG4gICAgICA/IG9wZXJhdGlvbkxpc3QuZmluZChvcCA9PiBvcFt0aGlzLm9wZXJhdGlvblRvVHJpZ2dlcl0gJiYgIW9wW3RoaXMub3BlcmF0aW9uVG9UcmlnZ2VyXS50eXBlKVxuICAgICAgOiBvcGVyYXRpb25MaXN0LmZpbmQob3AgPT4gb3BbdGhpcy5vcGVyYXRpb25Ub1RyaWdnZXJdLnR5cGUgPT09IGNvbmZpZ1R5cGUpO1xuXG4gICAgdGhpcy5vcGVyYXRpb24gPVxuICAgICAgb3BlcmF0aW9uICYmIG9wZXJhdGlvbi5zdGF0dXMgIT09IE9wZXJhdGlvblN0YXR1cy5TVUNDRVNTRlVMID8gb3BlcmF0aW9uIDogdW5kZWZpbmVkO1xuICB9XG5cbiAgc2V0Q2FuQ2FsbEFjdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLmNhbkNhbGxBY3Rpb24gPSB0aGlzLmRldmljZUNvbmZpZ3VyYXRpb25TZXJ2aWNlLmhhc0FueVN1cHBvcnRlZE9wZXJhdGlvbihcbiAgICAgIHRoaXMuZGV2aWNlLFxuICAgICAgdGhpcy5vcGVyYXRpb25Ub1RyaWdnZXJcbiAgICApO1xuICB9XG5cbiAgYXN5bmMgY3JlYXRlRGV2aWNlT3BlcmF0aW9uKCkge1xuICAgIGxldCBvcGVyYXRpb25DZmc7XG4gICAgaWYgKHRoaXMub3BlcmF0aW9uVG9UcmlnZ2VyID09PSBEZXZpY2VDb25maWd1cmF0aW9uT3BlcmF0aW9uLkRPV05MT0FEX0NPTkZJRykge1xuICAgICAgb3BlcmF0aW9uQ2ZnID0gdGhpcy5yZXBvc2l0b3J5U2VydmljZS5nZXREb3dubG9hZENvbmZpZ3VyYXRpb25GaWxlT3BlcmF0aW9uKFxuICAgICAgICB0aGlzLmRldmljZSxcbiAgICAgICAgdGhpcy5fY29uZmlndXJhdGlvblR5cGUsXG4gICAgICAgIHRoaXMuY29uZmlnU25hcHNob3QsXG4gICAgICAgIHRoaXMuaXNMZWdhY3lcbiAgICAgICk7XG4gICAgfVxuICAgIGlmICh0aGlzLm9wZXJhdGlvblRvVHJpZ2dlciA9PT0gRGV2aWNlQ29uZmlndXJhdGlvbk9wZXJhdGlvbi5VUExPQURfQ09ORklHKSB7XG4gICAgICBvcGVyYXRpb25DZmcgPSB0aGlzLnJlcG9zaXRvcnlTZXJ2aWNlLmdldFVwbG9hZENvbmZpZ3VyYXRpb25GaWxlT3BlcmF0aW9uKFxuICAgICAgICB0aGlzLmRldmljZSxcbiAgICAgICAgdGhpcy5fY29uZmlndXJhdGlvblR5cGUsXG4gICAgICAgIHRoaXMuaXNMZWdhY3lcbiAgICAgICk7XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICB0aGlzLm9wZXJhdGlvbiA9IChhd2FpdCB0aGlzLm9wZXJhdGlvblNlcnZpY2UuY3JlYXRlKG9wZXJhdGlvbkNmZykpLmRhdGE7XG4gICAgfSBjYXRjaCAoZXgpIHtcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmFkZFNlcnZlckZhaWx1cmUoZXgpO1xuICAgIH1cbiAgfVxuXG4gIHNob3dPcGVyYXRpb24oKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMub3BlcmF0aW9uVG9UcmlnZ2VyID09PSBEZXZpY2VDb25maWd1cmF0aW9uT3BlcmF0aW9uLkRPV05MT0FEX0NPTkZJRykge1xuICAgICAgcmV0dXJuICEhdGhpcy5vcGVyYXRpb247XG4gICAgfVxuICAgIHJldHVybiAoXG4gICAgICB0aGlzLm9wZXJhdGlvbiAmJlxuICAgICAgW09wZXJhdGlvblN0YXR1cy5QRU5ESU5HLCBPcGVyYXRpb25TdGF0dXMuRVhFQ1VUSU5HLCBPcGVyYXRpb25TdGF0dXMuRkFJTEVEXS5pbmNsdWRlcyhcbiAgICAgICAgdGhpcy5vcGVyYXRpb24uc3RhdHVzXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHNob3dCaW5hcnkoKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMub3BlcmF0aW9uVG9UcmlnZ2VyID09PSBEZXZpY2VDb25maWd1cmF0aW9uT3BlcmF0aW9uLkRPV05MT0FEX0NPTkZJRykge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiAhdGhpcy5zaG93T3BlcmF0aW9uKCk7XG4gIH1cblxuICBpc0NyZWF0ZU9wZXJhdGlvbkRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLm9wZXJhdGlvbiAmJlxuICAgICAgW09wZXJhdGlvblN0YXR1cy5QRU5ESU5HLCBPcGVyYXRpb25TdGF0dXMuRVhFQ1VUSU5HXS5pbmNsdWRlcyh0aGlzLm9wZXJhdGlvbi5zdGF0dXMpXG4gICAgKTtcbiAgfVxuXG4gIHVwZGF0ZVByZXZpZXcob3BlcmF0aW9uOiBJT3BlcmF0aW9uKSB7XG4gICAgaWYgKFxuICAgICAgb3BlcmF0aW9uICYmXG4gICAgICBvcGVyYXRpb25bdGhpcy5vcGVyYXRpb25Ub1RyaWdnZXJdICYmXG4gICAgICAodGhpcy5pc0xlZ2FjeSB8fFxuICAgICAgICAob3BlcmF0aW9uW3RoaXMub3BlcmF0aW9uVG9UcmlnZ2VyXS50eXBlICYmXG4gICAgICAgICAgb3BlcmF0aW9uW3RoaXMub3BlcmF0aW9uVG9UcmlnZ2VyXS50eXBlID09PSB0aGlzLmNvbmZpZ3VyYXRpb25UeXBlKSlcbiAgICApIHtcbiAgICAgIHRoaXMub3BlcmF0aW9uID0gb3BlcmF0aW9uO1xuICAgICAgdGhpcy51cGRhdGVTbmFwc2hvdHNPbkNvbmZpZ1VwbG9hZChvcGVyYXRpb24pO1xuICAgIH1cbiAgfVxuXG4gIGRvd25sb2FkKCkge1xuICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbdGhpcy5jb25maWdTbmFwc2hvdC5iaW5hcnldLCB7IHR5cGU6IHRoaXMuY29uZmlnU25hcHNob3QuYmluYXJ5VHlwZSB9KTtcbiAgICBsZXQgZmlsZU5hbWUgPSB0aGlzLmNvbmZpZ1NuYXBzaG90Lm5hbWU7XG4gICAgc3dpdGNoICh0aGlzLmNvbmZpZ1NuYXBzaG90LmJpbmFyeVR5cGUpIHtcbiAgICAgIGNhc2UgJ3RleHQvY3N2JzpcbiAgICAgIGNhc2UgJ2FwcGxpY2F0aW9uL2Nzdic6XG4gICAgICAgIGZpbGVOYW1lID0gZmlsZU5hbWUuY29uY2F0KCcuY3N2Jyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAndGV4dC95YW1sJzpcbiAgICAgIGNhc2UgJ2FwcGxpY2F0aW9uL3gteWFtbCc6XG4gICAgICAgIGZpbGVOYW1lID0gZmlsZU5hbWUuY29uY2F0KCcueWFtbCcpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2FwcGxpY2F0aW9uL2pzb24nOlxuICAgICAgICBmaWxlTmFtZSA9IGZpbGVOYW1lLmNvbmNhdCgnLmpzb24nKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICAgIHNhdmVBcyhibG9iLCBmaWxlTmFtZSk7XG4gIH1cblxuICBhc3luYyBzYXZlVG9SZXBvc2l0b3J5KCkge1xuICAgIGNvbnN0IGluaXRpYWxTdGF0ZSA9IHtcbiAgICAgIGNvbmZpZ1NuYXBzaG90OiBjbG9uZURlZXAodGhpcy5jb25maWdTbmFwc2hvdClcbiAgICB9O1xuICAgIGNvbnN0IG1vZGFsID0gdGhpcy5ic01vZGFsLnNob3coU2F2ZVRvUmVwb3NpdG9yeUNvbXBvbmVudCwge1xuICAgICAgY2xhc3M6ICdtb2RhbC1zbScsXG4gICAgICBhcmlhRGVzY3JpYmVkYnk6ICdtb2RhbC1ib2R5JyxcbiAgICAgIGFyaWFMYWJlbGxlZEJ5OiAnbW9kYWwtdGl0bGUnLFxuICAgICAgaW5pdGlhbFN0YXRlLFxuICAgICAgaWdub3JlQmFja2Ryb3BDbGljazogdHJ1ZVxuICAgIH0pLmNvbnRlbnQgYXMgU2F2ZVRvUmVwb3NpdG9yeUNvbXBvbmVudDtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgbW9kYWwucmVzdWx0O1xuICAgICAgdGhpcy5kZXZpY2VDb25maWd1cmF0aW9uU2VydmljZS51cGRhdGVDb25maWd1cmF0aW9ucyh0cnVlKTtcbiAgICAgIG1vZGFsLmNsb3NlKCk7XG4gICAgfSBjYXRjaCAoZXgpIHtcbiAgICAgIC8vIGRvIG5vdGhpbmdcbiAgICB9XG4gIH1cblxuICBoYXNQZXJtaXNzaW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnVzZXIuaGFzQW55Um9sZSh0aGlzLmFwcFN0YXRlLmN1cnJlbnRVc2VyLnZhbHVlLCBbXG4gICAgICBQZXJtaXNzaW9ucy5ST0xFX0lOVkVOVE9SWV9BRE1JTixcbiAgICAgIFBlcm1pc3Npb25zLlJPTEVfSU5WRU5UT1JZX0NSRUFURVxuICAgIF0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMub3BlcmF0aW9uc1N1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5vcGVyYXRpb25zU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyB1cGRhdGVTbmFwc2hvdHNPbkNvbmZpZ1VwbG9hZChvcGVyYXRpb24pIHtcbiAgICBpZiAoXG4gICAgICBvcGVyYXRpb25bRGV2aWNlQ29uZmlndXJhdGlvbk9wZXJhdGlvbi5VUExPQURfQ09ORklHXSAmJlxuICAgICAgb3BlcmF0aW9uLnN0YXR1cyA9PT0gT3BlcmF0aW9uU3RhdHVzLlNVQ0NFU1NGVUxcbiAgICApIHtcbiAgICAgIHRoaXMuZGV2aWNlQ29uZmlndXJhdGlvblNlcnZpY2UudXBkYXRlQ29uZmlndXJhdGlvbnMoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjb250ZW50LWZsZXgtNTUgcC1iLTE2XCI+XG4gIDxkaXYgY2xhc3M9XCJjb2wtNyBwLXQtNFwiPlxuICAgIDxwPlxuICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWxhYmVsLXNtYWxsIHRleHQtdXBwZXJjYXNlIG0tci00XCIgdHJhbnNsYXRlPkNvbmZpZ3VyYXRpb248L3NwYW4+XG4gICAgICA8c3BhbiAqbmdJZj1cImNvbmZpZ1NuYXBzaG90Py5uYW1lOyBlbHNlIGVtcHR5VGV4dFwiPlxuICAgICAgICA8c3Ryb25nPnt7IGNvbmZpZ1NuYXBzaG90Lm5hbWUgfX08L3N0cm9uZz5cbiAgICAgIDwvc3Bhbj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjZW1wdHlUZXh0Pi0tLTwvbmctdGVtcGxhdGU+XG4gICAgPC9wPlxuICAgIDxwPlxuICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWxhYmVsLXNtYWxsIHRleHQtdXBwZXJjYXNlIG0tci00XCIgdHJhbnNsYXRlPkxhc3QgdXBkYXRlZDwvc3Bhbj5cbiAgICAgIDxzbWFsbCAqbmdJZj1cImNvbmZpZ1NuYXBzaG90Py50aW1lOyBlbHNlIGVtcHR5RGF0ZVwiPlxuICAgICAgICB7eyBjb25maWdTbmFwc2hvdC50aW1lIHwgYzh5RGF0ZSB9fVxuICAgICAgPC9zbWFsbD5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjZW1wdHlEYXRlPi0tLTwvbmctdGVtcGxhdGU+XG4gICAgPC9wPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImNvbC01XCI+XG4gICAgPGJ1dHRvblxuICAgICAgaWQ9XCJhY3Rpb24tYnRuXCJcbiAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IGJ0bi1zbSBwdWxsLXJpZ2h0XCJcbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgdGl0bGU9XCJ7eyBhY3Rpb25CdXR0b25UZXh0IHwgdHJhbnNsYXRlIH19XCJcbiAgICAgIChjbGljayk9XCJjcmVhdGVEZXZpY2VPcGVyYXRpb24oKVwiXG4gICAgICBbZGlzYWJsZWRdPVwiaXNDcmVhdGVPcGVyYXRpb25EaXNhYmxlZCgpXCJcbiAgICAgICpuZ0lmPVwiY2FuQ2FsbEFjdGlvblwiXG4gICAgPlxuICAgICAgPGkgW2M4eUljb25dPVwiYWN0aW9uQnV0dG9uSWNvblwiPjwvaT5cbiAgICAgIHt7IGFjdGlvbkJ1dHRvblRleHQgfCB0cmFuc2xhdGUgfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJjOHktZW1wdHktc3RhdGUgdGV4dC1sZWZ0XCIgKm5nSWY9XCIhY29uZmlnU25hcHNob3Q/LmJpbmFyeSAmJiBzaG93QmluYXJ5KClcIj5cbiAgPGgxIFtjOHlJY29uXT1cIidmaWxlLWltYWdlLW8nXCI+PC9oMT5cbiAgPHA+XG4gICAgPHN0cm9uZyB0cmFuc2xhdGU+Tm8gcHJldmlldyBhdmFpbGFibGUuPC9zdHJvbmc+XG4gICAgPGJyIC8+XG4gICAgPHNtYWxsICpuZ0lmPVwiY29uZmlnU25hcHNob3Q/LmJpbmFyeSAhPT0gJyc7IGVsc2UgZW1wdHlGaWxlXCIgdHJhbnNsYXRlPlxuICAgICAgVGhlIGZpbGUgaXMgbm90IGF2YWlsYWJsZS5cbiAgICA8L3NtYWxsPlxuICAgIDxuZy10ZW1wbGF0ZSAjZW1wdHlGaWxlPlxuICAgICAgPHNtYWxsIHRyYW5zbGF0ZT5UaGUgZmlsZSBpcyBlbXB0eS48L3NtYWxsPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvcD5cbjwvZGl2PlxuPGRpdiAqbmdJZj1cImNvbmZpZ1NuYXBzaG90Py5iaW5hcnkgJiYgc2hvd0JpbmFyeSgpXCIgY2xhc3M9XCJmbGV4LWdyb3cgZC1mbGV4IGQtY29sXCI+XG4gIDxjOHktc291cmNlLWNvZGUtcHJldmlld1xuICAgIFt0ZXh0XT1cImNvbmZpZ1NuYXBzaG90LmJpbmFyeVwiXG4gICAgW2lzRGlzYWJsZWRdPVwidHJ1ZVwiXG4gICAgY2xhc3M9XCJkLWNvbnRlbnRzXCJcbiAgPjwvYzh5LXNvdXJjZS1jb2RlLXByZXZpZXc+XG4gIDxkaXYgKm5nSWY9XCJjYW5TYXZlU25hcHNob3RcIiBjbGFzcz1cInAtdC0xNlwiPlxuICAgIDxidXR0b25cbiAgICAgIHRpdGxlPVwie3sgJ0Rvd25sb2FkJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGJ0bi1zbSBwdWxsLXJpZ2h0IG0tbC04XCJcbiAgICAgIChjbGljayk9XCJkb3dubG9hZCgpXCJcbiAgICA+XG4gICAgICB7eyAnRG93bmxvYWQnIHwgdHJhbnNsYXRlIH19XG4gICAgPC9idXR0b24+XG4gICAgPGJ1dHRvblxuICAgICAgdGl0bGU9XCJ7eyAnU2F2ZSB0byByZXBvc2l0b3J5JyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAqbmdJZj1cImhhc1Blcm1pc3Npb24oKVwiXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IGJ0bi1zbSBwdWxsLXJpZ2h0XCJcbiAgICAgIChjbGljayk9XCJzYXZlVG9SZXBvc2l0b3J5KClcIlxuICAgID5cbiAgICAgIHt7ICdTYXZlIHRvIHJlcG9zaXRvcnknIHwgdHJhbnNsYXRlIH19XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuPC9kaXY+XG48ZGl2ICpuZ0lmPVwic2hvd09wZXJhdGlvbigpXCI+XG4gIDxjOHktb3BlcmF0aW9uLWRldGFpbHMgW29wZXJhdGlvbl09XCJvcGVyYXRpb25cIj48L2M4eS1vcGVyYXRpb24tZGV0YWlscz5cbjwvZGl2PlxuIl19
190
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi1wcmV2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3JlcG9zaXRvcnkvY29uZmlndXJhdGlvbi9kZXZpY2UtdGFiL2NvbmZpZ3VyYXRpb24tcHJldmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9yZXBvc2l0b3J5L2NvbmZpZ3VyYXRpb24vZGV2aWNlLXRhYi9jb25maWd1cmF0aW9uLXByZXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFFTCw0QkFBNEIsRUFDNUIsaUJBQWlCLEVBQ2xCLE1BQU0sdUNBQXVDLENBQUM7QUFDL0MsT0FBTyxFQUdMLGdCQUFnQixFQUNoQixlQUFlLEVBQ2YsV0FBVyxFQUNaLE1BQU0sYUFBYSxDQUFDO0FBQ3JCLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRTVFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFDTCxZQUFZLEVBQ1osZUFBZSxFQUNmLHdCQUF3QixFQUN4QixXQUFXLEVBQ1osTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7Ozs7OztBQU03QixNQUFNLE9BQU8sNkJBQTZCO0lBR3hDLElBQWEsaUJBQWlCLENBQUMsSUFBWTtRQUN6QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDO1FBQy9CLElB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SSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUU7b0JBQ3BELFdBQVcsQ0FBQyxpQkFBaUI7b0JBQzdCLFdBQVcsQ0FBQyxrQkFBa0I7aUJBQy9CLENBQUMsQ0FBQyxDQUNOLENBQUM7SUFDSixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLHNCQUFzQixFQUFFO1lBQy9CLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUMzQztJQUNILENBQUM7SUFFTyxLQUFLLENBQUMsNkJBQTZCLENBQUMsU0FBUztRQUNuRCxJQUNFLFNBQVMsQ0FBQyw0QkFBNEIsQ0FBQyxhQUFhLENBQUM7WUFDckQsU0FBUyxDQUFDLE1BQU0sS0FBSyxlQUFlLENBQUMsVUFBVSxFQUMvQztZQUNBLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1NBQ3hEO0lBQ0gsQ0FBQzs7MEhBMU1VLDZCQUE2Qjs4R0FBN0IsNkJBQTZCLGdXQy9CMUMsazdFQTBFQTsyRkQzQ2EsNkJBQTZCO2tCQUp6QyxTQUFTOytCQUNFLGtDQUFrQzt1VUFJbkMsTUFBTTtzQkFBZCxLQUFLO2dCQUVPLGlCQUFpQjtzQkFBN0IsS0FBSztnQkFTRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBDb25maWd1cmF0aW9uU25hcHNob3QsXG4gIERldmljZUNvbmZpZ3VyYXRpb25PcGVyYXRpb24sXG4gIFJlcG9zaXRvcnlTZXJ2aWNlXG59IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvcmVwb3NpdG9yeS9zaGFyZWQnO1xuaW1wb3J0IHtcbiAgSU1hbmFnZWRPYmplY3QsXG4gIElPcGVyYXRpb24sXG4gIE9wZXJhdGlvblNlcnZpY2UsXG4gIE9wZXJhdGlvblN0YXR1cyxcbiAgVXNlclNlcnZpY2Vcbn0gZnJvbSAnQGM4eS9jbGllbnQnO1xuaW1wb3J0IHsgRGV2aWNlQ29uZmlndXJhdGlvblNlcnZpY2UgfSBmcm9tICcuL2RldmljZS1jb25maWd1cmF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBzYXZlQXMgfSBmcm9tICdmaWxlLXNhdmVyJztcbmltcG9ydCB7IEJzTW9kYWxTZXJ2aWNlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9tb2RhbCc7XG5pbXBvcnQgeyBTYXZlVG9SZXBvc2l0b3J5Q29tcG9uZW50IH0gZnJvbSAnLi9zYXZlLXRvLXJlcG9zaXRvcnkuY29tcG9uZW50JztcbmltcG9ydCB7IGNsb25lRGVlcCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQge1xuICBBbGVydFNlcnZpY2UsXG4gIEFwcFN0YXRlU2VydmljZSxcbiAgT3BlcmF0aW9uUmVhbHRpbWVTZXJ2aWNlLFxuICBQZXJtaXNzaW9uc1xufSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYzh5LWRldmljZS1jb25maWd1cmF0aW9uLXByZXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29uZmlndXJhdGlvbi1wcmV2aWV3LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBDb25maWd1cmF0aW9uUHJldmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KCkgZGV2aWNlOiBJTWFuYWdlZE9iamVjdDtcblxuICBASW5wdXQoKSBzZXQgY29uZmlndXJhdGlvblR5cGUodHlwZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fY29uZmlndXJhdGlvblR5cGUgPSB0eXBlO1xuICAgIHRoaXMuc2V0T3BlcmF0aW9uKHR5cGUpO1xuICB9XG5cbiAgZ2V0IGNvbmZpZ3VyYXRpb25UeXBlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZ3VyYXRpb25UeXBlO1xuICB9XG5cbiAgQElucHV0KCkgY29uZmlnU25hcHNob3Q6IENvbmZpZ3VyYXRpb25TbmFwc2hvdDtcbiAgQElucHV0KCkgY2FuU2F2ZVNuYXBzaG90OiBib29sZWFuO1xuICBASW5wdXQoKSBhY3Rpb25CdXR0b25UZXh0OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGFjdGlvbkJ1dHRvbkljb246IHN0cmluZztcbiAgQElucHV0KCkgaXNMZWdhY3kgPSBmYWxzZTtcbiAgQElucHV0KCkgb3BlcmF0aW9uVG9UcmlnZ2VyOlxuICAgIHwgRGV2aWNlQ29uZmlndXJhdGlvbk9wZXJhdGlvbi5VUExPQURfQ09ORklHXG4gICAgfCBEZXZpY2VDb25maWd1cmF0aW9uT3BlcmF0aW9uLkRPV05MT0FEX0NPTkZJRztcblxuICBvcGVyYXRpb246IElPcGVyYXRpb247XG4gIGNhbkNhbGxBY3Rpb24gPSB0cnVlO1xuICBkZXZpY2VDb25maWd1cmF0aW9uT3BlcmF0aW9uID0gRGV2aWNlQ29uZmlndXJhdGlvbk9wZXJhdGlvbjtcbiAgcHJpdmF0ZSBfY29uZmlndXJhdGlvblR5cGU6IHN0cmluZztcbiAgcHJpdmF0ZSBvcGVyYXRpb25zU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBkZXZpY2VDb25maWd1cmF0aW9uU2VydmljZTogRGV2aWNlQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBvcGVyYXRpb25SZWFsdGltZTogT3BlcmF0aW9uUmVhbHRpbWVTZXJ2aWNlLFxuICAgIHByaXZhdGUgYnNNb2RhbDogQnNNb2RhbFNlcnZpY2UsXG4gICAgcHJpdmF0ZSB1c2VyOiBVc2VyU2VydmljZSxcbiAgICBwcml2YXRlIGFwcFN0YXRlOiBBcHBTdGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZXBvc2l0b3J5U2VydmljZTogUmVwb3NpdG9yeVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBvcGVyYXRpb25TZXJ2aWNlOiBPcGVyYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgYWxlcnRTZXJ2aWNlOiBBbGVydFNlcnZpY2VcbiAgKSB7fVxuXG4gIGFzeW5jIG5nT25Jbml0KCkge1xuICAgIHRoaXMuc2V0Q2FuQ2FsbEFjdGlvbigpO1xuICAgIHRoaXMuc2V0T3BlcmF0aW9uKHRoaXMuX2NvbmZpZ3VyYXRpb25UeXBlKTtcbiAgICB0aGlzLm9wZXJhdGlvbnNTdWJzY3JpcHRpb24gPSB0aGlzLm9wZXJhdGlvblJlYWx0aW1lXG4gICAgICAub25BbGwkKHRoaXMuZGV2aWNlLmlkKVxuICAgICAgLnBpcGUobWFwKCh7IGRhdGEgfSkgPT4gZGF0YSBhcyBJT3BlcmF0aW9uKSlcbiAgICAgIC5zdWJzY3JpYmUob3BlcmF0aW9uID0+IHtcbiAgICAgICAgdGhpcy51cGRhdGVQcmV2aWV3KG9wZXJhdGlvbik7XG4gICAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIHNldE9wZXJhdGlvbihjb25maWdUeXBlKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3Qgb3BlcmF0aW9uTGlzdCA9IGF3YWl0IHRoaXMucmVwb3NpdG9yeVNlcnZpY2UuZ2V0Q29uZmlnRmlsZU9wZXJhdGlvbkxpc3QoXG4gICAgICB0aGlzLmRldmljZS5pZCxcbiAgICAgIHRoaXMub3BlcmF0aW9uVG9UcmlnZ2VyXG4gICAgKTtcblxuICAgIGNvbnN0IG9wZXJhdGlvbiA9IHRoaXMuaXNMZWdhY3lcbiAgICAgID8gb3BlcmF0aW9uTGlzdC5maW5kKG9wID0+IG9wW3RoaXMub3BlcmF0aW9uVG9UcmlnZ2VyXSAmJiAhb3BbdGhpcy5vcGVyYXRpb25Ub1RyaWdnZXJdLnR5cGUpXG4gICAgICA6IG9wZXJhdGlvbkxpc3QuZmluZChvcCA9PiBvcFt0aGlzLm9wZXJhdGlvblRvVHJpZ2dlcl0udHlwZSA9PT0gY29uZmlnVHlwZSk7XG5cbiAgICB0aGlzLm9wZXJhdGlvbiA9XG4gICAgICBvcGVyYXRpb24gJiYgb3BlcmF0aW9uLnN0YXR1cyAhPT0gT3BlcmF0aW9uU3RhdHVzLlNVQ0NFU1NGVUwgPyBvcGVyYXRpb24gOiB1bmRlZmluZWQ7XG4gIH1cblxuICBzZXRDYW5DYWxsQWN0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuY2FuQ2FsbEFjdGlvbiA9IHRoaXMuZGV2aWNlQ29uZmlndXJhdGlvblNlcnZpY2UuaGFzQW55U3VwcG9ydGVkT3BlcmF0aW9uKFxuICAgICAgdGhpcy5kZXZpY2UsXG4gICAgICB0aGlzLm9wZXJhdGlvblRvVHJpZ2dlclxuICAgICk7XG4gIH1cblxuICBhc3luYyBjcmVhdGVEZXZpY2VPcGVyYXRpb24oKSB7XG4gICAgbGV0IG9wZXJhdGlvbkNmZztcbiAgICBpZiAodGhpcy5vcGVyYXRpb25Ub1RyaWdnZXIgPT09IERldmljZUNvbmZpZ3VyYXRpb25PcGVyYXRpb24uRE9XTkxPQURfQ09ORklHKSB7XG4gICAgICBvcGVyYXRpb25DZmcgPSB0aGlzLnJlcG9zaXRvcnlTZXJ2aWNlLmdldERvd25sb2FkQ29uZmlndXJhdGlvbkZpbGVPcGVyYXRpb24oXG4gICAgICAgIHRoaXMuZGV2aWNlLFxuICAgICAgICB0aGlzLl9jb25maWd1cmF0aW9uVHlwZSxcbiAgICAgICAgdGhpcy5jb25maWdTbmFwc2hvdCxcbiAgICAgICAgdGhpcy5pc0xlZ2FjeVxuICAgICAgKTtcbiAgICB9XG4gICAgaWYgKHRoaXMub3BlcmF0aW9uVG9UcmlnZ2VyID09PSBEZXZpY2VDb25maWd1cmF0aW9uT3BlcmF0aW9uLlVQTE9BRF9DT05GSUcpIHtcbiAgICAgIG9wZXJhdGlvbkNmZyA9IHRoaXMucmVwb3NpdG9yeVNlcnZpY2UuZ2V0VXBsb2FkQ29uZmlndXJhdGlvbkZpbGVPcGVyYXRpb24oXG4gICAgICAgIHRoaXMuZGV2aWNlLFxuICAgICAgICB0aGlzLl9jb25maWd1cmF0aW9uVHlwZSxcbiAgICAgICAgdGhpcy5pc0xlZ2FjeVxuICAgICAgKTtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMub3BlcmF0aW9uID0gKGF3YWl0IHRoaXMub3BlcmF0aW9uU2VydmljZS5jcmVhdGUob3BlcmF0aW9uQ2ZnKSkuZGF0YTtcbiAgICB9IGNhdGNoIChleCkge1xuICAgICAgdGhpcy5hbGVydFNlcnZpY2UuYWRkU2VydmVyRmFpbHVyZShleCk7XG4gICAgfVxuICB9XG5cbiAgc2hvd09wZXJhdGlvbigpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5vcGVyYXRpb25Ub1RyaWdnZXIgPT09IERldmljZUNvbmZpZ3VyYXRpb25PcGVyYXRpb24uRE9XTkxPQURfQ09ORklHKSB7XG4gICAgICByZXR1cm4gISF0aGlzLm9wZXJhdGlvbjtcbiAgICB9XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMub3BlcmF0aW9uICYmXG4gICAgICBbT3BlcmF0aW9uU3RhdHVzLlBFTkRJTkcsIE9wZXJhdGlvblN0YXR1cy5FWEVDVVRJTkcsIE9wZXJhdGlvblN0YXR1cy5GQUlMRURdLmluY2x1ZGVzKFxuICAgICAgICB0aGlzLm9wZXJhdGlvbi5zdGF0dXNcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgc2hvd0JpbmFyeSgpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5vcGVyYXRpb25Ub1RyaWdnZXIgPT09IERldmljZUNvbmZpZ3VyYXRpb25PcGVyYXRpb24uRE9XTkxPQURfQ09ORklHKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuICF0aGlzLnNob3dPcGVyYXRpb24oKTtcbiAgfVxuXG4gIGlzQ3JlYXRlT3BlcmF0aW9uRGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMub3BlcmF0aW9uICYmXG4gICAgICBbT3BlcmF0aW9uU3RhdHVzLlBFTkRJTkcsIE9wZXJhdGlvblN0YXR1cy5FWEVDVVRJTkddLmluY2x1ZGVzKHRoaXMub3BlcmF0aW9uLnN0YXR1cylcbiAgICApO1xuICB9XG5cbiAgdXBkYXRlUHJldmlldyhvcGVyYXRpb246IElPcGVyYXRpb24pIHtcbiAgICBpZiAoXG4gICAgICBvcGVyYXRpb24gJiZcbiAgICAgIG9wZXJhdGlvblt0aGlzLm9wZXJhdGlvblRvVHJpZ2dlcl0gJiZcbiAgICAgICh0aGlzLmlzTGVnYWN5IHx8XG4gICAgICAgIChvcGVyYXRpb25bdGhpcy5vcGVyYXRpb25Ub1RyaWdnZXJdLnR5cGUgJiZcbiAgICAgICAgICBvcGVyYXRpb25bdGhpcy5vcGVyYXRpb25Ub1RyaWdnZXJdLnR5cGUgPT09IHRoaXMuY29uZmlndXJhdGlvblR5cGUpKVxuICAgICkge1xuICAgICAgdGhpcy5vcGVyYXRpb24gPSBvcGVyYXRpb247XG4gICAgICB0aGlzLnVwZGF0ZVNuYXBzaG90c09uQ29uZmlnVXBsb2FkKG9wZXJhdGlvbik7XG4gICAgfVxuICB9XG5cbiAgZG93bmxvYWQoKSB7XG4gICAgY29uc3QgYmxvYiA9IG5ldyBCbG9iKFt0aGlzLmNvbmZpZ1NuYXBzaG90LmJpbmFyeV0sIHsgdHlwZTogdGhpcy5jb25maWdTbmFwc2hvdC5iaW5hcnlUeXBlIH0pO1xuICAgIGxldCBmaWxlTmFtZSA9IHRoaXMuY29uZmlnU25hcHNob3QubmFtZTtcbiAgICBzd2l0Y2ggKHRoaXMuY29uZmlnU25hcHNob3QuYmluYXJ5VHlwZSkge1xuICAgICAgY2FzZSAndGV4dC9jc3YnOlxuICAgICAgY2FzZSAnYXBwbGljYXRpb24vY3N2JzpcbiAgICAgICAgZmlsZU5hbWUgPSBmaWxlTmFtZS5jb25jYXQoJy5jc3YnKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICd0ZXh0L3lhbWwnOlxuICAgICAgY2FzZSAnYXBwbGljYXRpb24veC15YW1sJzpcbiAgICAgICAgZmlsZU5hbWUgPSBmaWxlTmFtZS5jb25jYXQoJy55YW1sJyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnYXBwbGljYXRpb24vanNvbic6XG4gICAgICAgIGZpbGVOYW1lID0gZmlsZU5hbWUuY29uY2F0KCcuanNvbicpO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gICAgc2F2ZUFzKGJsb2IsIGZpbGVOYW1lKTtcbiAgfVxuXG4gIGFzeW5jIHNhdmVUb1JlcG9zaXRvcnkoKSB7XG4gICAgY29uc3QgaW5pdGlhbFN0YXRlID0ge1xuICAgICAgY29uZmlnU25hcHNob3Q6IGNsb25lRGVlcCh0aGlzLmNvbmZpZ1NuYXBzaG90KVxuICAgIH07XG4gICAgY29uc3QgbW9kYWwgPSB0aGlzLmJzTW9kYWwuc2hvdyhTYXZlVG9SZXBvc2l0b3J5Q29tcG9uZW50LCB7XG4gICAgICBjbGFzczogJ21vZGFsLXNtJyxcbiAgICAgIGFyaWFEZXNjcmliZWRieTogJ21vZGFsLWJvZHknLFxuICAgICAgYXJpYUxhYmVsbGVkQnk6ICdtb2RhbC10aXRsZScsXG4gICAgICBpbml0aWFsU3RhdGUsXG4gICAgICBpZ25vcmVCYWNrZHJvcENsaWNrOiB0cnVlXG4gICAgfSkuY29udGVudCBhcyBTYXZlVG9SZXBvc2l0b3J5Q29tcG9uZW50O1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCBtb2RhbC5yZXN1bHQ7XG4gICAgICB0aGlzLmRldmljZUNvbmZpZ3VyYXRpb25TZXJ2aWNlLnVwZGF0ZUNvbmZpZ3VyYXRpb25zKHRydWUpO1xuICAgICAgbW9kYWwuY2xvc2UoKTtcbiAgICB9IGNhdGNoIChleCkge1xuICAgICAgLy8gZG8gbm90aGluZ1xuICAgIH1cbiAgfVxuXG4gIGhhc1Blcm1pc3Npb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMudXNlci5oYXNBbnlSb2xlKHRoaXMuYXBwU3RhdGUuY3VycmVudFVzZXIudmFsdWUsIFtcbiAgICAgICAgUGVybWlzc2lvbnMuUk9MRV9JTlZFTlRPUllfQURNSU4sXG4gICAgICAgIFBlcm1pc3Npb25zLlJPTEVfSU5WRU5UT1JZX0NSRUFURVxuICAgICAgXSkgfHxcbiAgICAgICh0aGlzLnVzZXIuaGFzQW55Um9sZSh0aGlzLmFwcFN0YXRlLmN1cnJlbnRVc2VyLnZhbHVlLCBbXG4gICAgICAgIFBlcm1pc3Npb25zLlJPTEVfTUFOQUdFRF9PQkpFQ1RfQURNSU4sXG4gICAgICAgIFBlcm1pc3Npb25zLlJPTEVfTUFOQUdFRF9PQkpFQ1RfQ1JFQVRFXG4gICAgICBdKSAmJlxuICAgICAgICB0aGlzLnVzZXIuaGFzQW55Um9sZSh0aGlzLmFwcFN0YXRlLmN1cnJlbnRVc2VyLnZhbHVlLCBbXG4gICAgICAgICAgUGVybWlzc2lvbnMuUk9MRV9CSU5BUllfQURNSU4sXG4gICAgICAgICAgUGVybWlzc2lvbnMuUk9MRV9CSU5BUllfQ1JFQVRFXG4gICAgICAgIF0pKVxuICAgICk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy5vcGVyYXRpb25zU3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLm9wZXJhdGlvbnNTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHVwZGF0ZVNuYXBzaG90c09uQ29uZmlnVXBsb2FkKG9wZXJhdGlvbikge1xuICAgIGlmIChcbiAgICAgIG9wZXJhdGlvbltEZXZpY2VDb25maWd1cmF0aW9uT3BlcmF0aW9uLlVQTE9BRF9DT05GSUddICYmXG4gICAgICBvcGVyYXRpb24uc3RhdHVzID09PSBPcGVyYXRpb25TdGF0dXMuU1VDQ0VTU0ZVTFxuICAgICkge1xuICAgICAgdGhpcy5kZXZpY2VDb25maWd1cmF0aW9uU2VydmljZS51cGRhdGVDb25maWd1cmF0aW9ucygpO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNvbnRlbnQtZmxleC01NSBwLWItMTZcIj5cbiAgPGRpdiBjbGFzcz1cImNvbC03IHAtdC00XCI+XG4gICAgPHA+XG4gICAgICA8c3BhbiBjbGFzcz1cInRleHQtbGFiZWwtc21hbGwgdGV4dC11cHBlcmNhc2UgbS1yLTRcIiB0cmFuc2xhdGU+Q29uZmlndXJhdGlvbjwvc3Bhbj5cbiAgICAgIDxzcGFuICpuZ0lmPVwiY29uZmlnU25hcHNob3Q/Lm5hbWU7IGVsc2UgZW1wdHlUZXh0XCI+XG4gICAgICAgIDxzdHJvbmc+e3sgY29uZmlnU25hcHNob3QubmFtZSB9fTwvc3Ryb25nPlxuICAgICAgPC9zcGFuPlxuICAgICAgPG5nLXRlbXBsYXRlICNlbXB0eVRleHQ+LS0tPC9uZy10ZW1wbGF0ZT5cbiAgICA8L3A+XG4gICAgPHA+XG4gICAgICA8c3BhbiBjbGFzcz1cInRleHQtbGFiZWwtc21hbGwgdGV4dC11cHBlcmNhc2UgbS1yLTRcIiB0cmFuc2xhdGU+TGFzdCB1cGRhdGVkPC9zcGFuPlxuICAgICAgPHNtYWxsICpuZ0lmPVwiY29uZmlnU25hcHNob3Q/LnRpbWU7IGVsc2UgZW1wdHlEYXRlXCI+XG4gICAgICAgIHt7IGNvbmZpZ1NuYXBzaG90LnRpbWUgfCBjOHlEYXRlIH19XG4gICAgICA8L3NtYWxsPlxuICAgICAgPG5nLXRlbXBsYXRlICNlbXB0eURhdGU+LS0tPC9uZy10ZW1wbGF0ZT5cbiAgICA8L3A+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiY29sLTVcIj5cbiAgICA8YnV0dG9uXG4gICAgICBpZD1cImFjdGlvbi1idG5cIlxuICAgICAgY2xhc3M9XCJidG4gYnRuLWRlZmF1bHQgYnRuLXNtIHB1bGwtcmlnaHRcIlxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICB0aXRsZT1cInt7IGFjdGlvbkJ1dHRvblRleHQgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgKGNsaWNrKT1cImNyZWF0ZURldmljZU9wZXJhdGlvbigpXCJcbiAgICAgIFtkaXNhYmxlZF09XCJpc0NyZWF0ZU9wZXJhdGlvbkRpc2FibGVkKClcIlxuICAgICAgKm5nSWY9XCJjYW5DYWxsQWN0aW9uXCJcbiAgICA+XG4gICAgICA8aSBbYzh5SWNvbl09XCJhY3Rpb25CdXR0b25JY29uXCI+PC9pPlxuICAgICAge3sgYWN0aW9uQnV0dG9uVGV4dCB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cImM4eS1lbXB0eS1zdGF0ZSB0ZXh0LWxlZnRcIiAqbmdJZj1cIiFjb25maWdTbmFwc2hvdD8uYmluYXJ5ICYmIHNob3dCaW5hcnkoKVwiPlxuICA8aDEgW2M4eUljb25dPVwiJ2ZpbGUtaW1hZ2UtbydcIj48L2gxPlxuICA8cD5cbiAgICA8c3Ryb25nIHRyYW5zbGF0ZT5ObyBwcmV2aWV3IGF2YWlsYWJsZS48L3N0cm9uZz5cbiAgICA8YnIgLz5cbiAgICA8c21hbGwgKm5nSWY9XCJjb25maWdTbmFwc2hvdD8uYmluYXJ5ICE9PSAnJzsgZWxzZSBlbXB0eUZpbGVcIiB0cmFuc2xhdGU+XG4gICAgICBUaGUgZmlsZSBpcyBub3QgYXZhaWxhYmxlLlxuICAgIDwvc21hbGw+XG4gICAgPG5nLXRlbXBsYXRlICNlbXB0eUZpbGU+XG4gICAgICA8c21hbGwgdHJhbnNsYXRlPlRoZSBmaWxlIGlzIGVtcHR5Ljwvc21hbGw+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9wPlxuPC9kaXY+XG48ZGl2ICpuZ0lmPVwiY29uZmlnU25hcHNob3Q/LmJpbmFyeSAmJiBzaG93QmluYXJ5KClcIiBjbGFzcz1cImZsZXgtZ3JvdyBkLWZsZXggZC1jb2xcIj5cbiAgPGM4eS1zb3VyY2UtY29kZS1wcmV2aWV3XG4gICAgW3RleHRdPVwiY29uZmlnU25hcHNob3QuYmluYXJ5XCJcbiAgICBbaXNEaXNhYmxlZF09XCJ0cnVlXCJcbiAgICBjbGFzcz1cImQtY29udGVudHNcIlxuICA+PC9jOHktc291cmNlLWNvZGUtcHJldmlldz5cbiAgPGRpdiAqbmdJZj1cImNhblNhdmVTbmFwc2hvdFwiIGNsYXNzPVwicC10LTE2XCI+XG4gICAgPGJ1dHRvblxuICAgICAgdGl0bGU9XCJ7eyAnRG93bmxvYWQnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgYnRuLXNtIHB1bGwtcmlnaHQgbS1sLThcIlxuICAgICAgKGNsaWNrKT1cImRvd25sb2FkKClcIlxuICAgID5cbiAgICAgIHt7ICdEb3dubG9hZCcgfCB0cmFuc2xhdGUgfX1cbiAgICA8L2J1dHRvbj5cbiAgICA8YnV0dG9uXG4gICAgICB0aXRsZT1cInt7ICdTYXZlIHRvIHJlcG9zaXRvcnknIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICpuZ0lmPVwiaGFzUGVybWlzc2lvbigpXCJcbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgY2xhc3M9XCJidG4gYnRuLWRlZmF1bHQgYnRuLXNtIHB1bGwtcmlnaHRcIlxuICAgICAgKGNsaWNrKT1cInNhdmVUb1JlcG9zaXRvcnkoKVwiXG4gICAgPlxuICAgICAge3sgJ1NhdmUgdG8gcmVwb3NpdG9yeScgfCB0cmFuc2xhdGUgfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgKm5nSWY9XCJzaG93T3BlcmF0aW9uKClcIj5cbiAgPGM4eS1vcGVyYXRpb24tZGV0YWlscyBbb3BlcmF0aW9uXT1cIm9wZXJhdGlvblwiPjwvYzh5LW9wZXJhdGlvbi1kZXRhaWxzPlxuPC9kaXY+XG4iXX0=
@@ -52,7 +52,12 @@ export class AddGroupComponent {
52
52
  this.subscription = this.onCancel.subscribe(() => this.resetStepper());
53
53
  this.canCreateGroup =
54
54
  this.subAssetsService.canCreateGroup() ||
55
- (await this.permissionsService.canEdit([Permissions.ROLE_INVENTORY_ADMIN, Permissions.ROLE_INVENTORY_CREATE], {
55
+ (await this.permissionsService.canEdit([
56
+ Permissions.ROLE_INVENTORY_ADMIN,
57
+ Permissions.ROLE_INVENTORY_CREATE,
58
+ Permissions.ROLE_MANAGED_OBJECT_ADMIN,
59
+ Permissions.ROLE_MANAGED_OBJECT_CREATE
60
+ ], {
56
61
  id: this.currentGroupId
57
62
  }));
58
63
  this.canAssignDevice = await this.subAssetsService.canAssignDevice({
@@ -130,4 +135,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
130
135
  type: HostListener,
131
136
  args: ['document:keydown.enter', ['$event']]
132
137
  }] } });
133
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3N1Yi1hc3NldHMvYWRkLWdyb3VwL2FkZC1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zdWItYXNzZXRzL2FkZC1ncm91cC9hZGQtZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXBFLE9BQU8sRUFDTCxZQUFZLEVBQ1osVUFBVSxFQUNWLGdCQUFnQixFQUNoQixPQUFPLEVBRVAsV0FBVyxFQUNaLE1BQU0scUJBQXFCLENBQUM7QUFFN0IsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7Ozs7QUFNdEQsTUFBTSxPQUFPLGlCQUFpQjtJQTRCNUIsWUFDVSxFQUFlLEVBQ2YsZUFBZ0MsRUFDaEMsS0FBbUIsRUFDbkIsZ0JBQWtDLEVBQ2xDLGdCQUFrQyxFQUNsQyxrQkFBK0I7UUFML0IsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUNmLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxVQUFLLEdBQUwsS0FBSyxDQUFjO1FBQ25CLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQWE7UUFoQ2hDLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFB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RUFBRSxDQUFDO1NBQ3pCO0lBQ0gsQ0FBQzs7OEdBNUhVLGlCQUFpQjtrR0FBakIsaUJBQWlCLHdVQUtqQixVQUFVLDBJQ2pDdkIsNHFKQXNIQTsyRkQxRmEsaUJBQWlCO2tCQUo3QixTQUFTOytCQUNFLGVBQWU7bVBBSWhCLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNJLHlCQUF5QjtzQkFBbEMsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUVQLE9BQU87c0JBRE4sU0FBUzt1QkFBQyxVQUFVLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUd4QyxZQUFZO3NCQURYLFNBQVM7dUJBQUMsU0FBUyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkE4QmEsY0FBYztzQkFBakUsWUFBWTt1QkFBQyx3QkFBd0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBJTWFuYWdlZE9iamVjdCB9IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCB7XG4gIEFsZXJ0U2VydmljZSxcbiAgQzh5U3RlcHBlcixcbiAgR2FpbnNpZ2h0U2VydmljZSxcbiAgZ2V0dGV4dCxcbiAgUGFnaW5hdGlvbixcbiAgUGVybWlzc2lvbnNcbn0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFBST0RVQ1RfRVhQRVJJRU5DRSB9IGZyb20gJy4uL3NoYXJlZC9zdWItYXNzZXRzLm1vZGVsJztcbmltcG9ydCB7IFN1YkFzc2V0c1NlcnZpY2UgfSBmcm9tICcuLi9zdWItYXNzZXRzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWRkR3JvdXBTZXJ2aWNlIH0gZnJvbSAnLi9hZGQtZ3JvdXAuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1hZGQtZ3JvdXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWRkLWdyb3VwLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBBZGRHcm91cENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGN1cnJlbnRHcm91cElkOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHJlZnJlc2ggPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBvbkRldmljZVF1ZXJ5U3RyaW5nQ2hhbmdlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgb25DYW5jZWwgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBWaWV3Q2hpbGQoQzh5U3RlcHBlciwgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIHN0ZXBwZXI6IEM4eVN0ZXBwZXI7XG4gIEBWaWV3Q2hpbGQoJ25hbWVSZWYnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgbmFtZUlucHV0UmVmOiBFbGVtZW50UmVmO1xuICBkZXZpY2VRdWVyeVN0cmluZ091dHB1dDogc3RyaW5nO1xuICBmb3JtR3JvdXBTdGVwT25lOiBGb3JtR3JvdXA7XG4gIHBlbmRpbmdTdGF0dXMgPSBmYWxzZTtcbiAgcGFnaW5hdGlvbjogUGFnaW5hdGlvbiA9IHsgcGFnZVNpemU6IDIwLCBjdXJyZW50UGFnZTogMSB9O1xuICBzZWxlY3RlZDogc3RyaW5nW10gPSBbXTtcbiAgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIGNhbkNyZWF0ZUdyb3VwID0gZmFsc2U7XG4gIGNhbkFzc2lnbkRldmljZSA9IGZhbHNlO1xuICBQUk9EVUNUX0VYUEVSSUVOQ0UgPSBQUk9EVUNUX0VYUEVSSUVOQ0U7XG5cbiAgcmVhZG9ubHkgSVRFTVNfU0VMRUNUX0xJTUlUOiBudW1iZXIgPSAxNTtcbiAgcmVhZG9ubHkgYnRuTGFiZWxzID0ge1xuICAgIG5leHQ6IGdldHRleHQoJ05leHQnKSxcbiAgICBjYW5jZWw6IGdldHRleHQoJ0NhbmNlbCcpLFxuICAgIGNyZWF0ZTogZ2V0dGV4dCgnQ3JlYXRlJylcbiAgfTtcblxuICBwcml2YXRlIG5hbWVJbnB1dDogSFRNTElucHV0RWxlbWVudDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZiOiBGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIGFkZEdyb3VwU2VydmljZTogQWRkR3JvdXBTZXJ2aWNlLFxuICAgIHByaXZhdGUgYWxlcnQ6IEFsZXJ0U2VydmljZSxcbiAgICBwcml2YXRlIHN1YkFzc2V0c1NlcnZpY2U6IFN1YkFzc2V0c1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBnYWluc2lnaHRTZXJ2aWNlOiBHYWluc2lnaHRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcGVybWlzc2lvbnNTZXJ2aWNlOiBQZXJtaXNzaW9uc1xuICApIHt9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bi5lbnRlcicsIFsnJGV2ZW50J10pIG9uRW50ZXJLZXlEb3duKF9ldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIC8vIE9yZGVyIG1hdHRlcnMhIE5lZWRzIHRvIGJlIHBsYWNlZCBiZWZvcmUgdGhpcy5zdGVwcGVyLm5leHRcbiAgICBpZiAoKHRoaXMuaXNHcm91cERldGFpbHNTdGVwKCkgJiYgIXRoaXMuY2FuQXNzaWduRGV2aWNlKSB8fCB0aGlzLmlzQXNzaWduRGV2aWNlU3RlcCgpKSB7XG4gICAgICB0aGlzLmNyZWF0ZUdyb3VwKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuc3RlcHBlci5uZXh0KCk7XG4gIH1cblxuICBhc3luYyBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmZvcm1Hcm91cFN0ZXBPbmUgPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgIG5hbWU6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXG4gICAgICBkZXNjcmlwdGlvbjogWycnXVxuICAgIH0pO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy5vbkNhbmNlbC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5yZXNldFN0ZXBwZXIoKSk7XG4gICAgdGhpcy5jYW5DcmVhdGVHcm91cCA9XG4gICAgICB0aGlzLnN1YkFzc2V0c1NlcnZpY2UuY2FuQ3JlYXRlR3JvdXAoKSB8fFxuICAgICAgKGF3YWl0IHRoaXMucGVybWlzc2lvbnNTZXJ2aWNlLmNhbkVkaXQoXG4gICAgICAgIFtQZXJtaXNzaW9ucy5ST0xFX0lOVkVOVE9SWV9BRE1JTiwgUGVybWlzc2lvbnMuUk9MRV9JTlZFTlRPUllfQ1JFQVRFXSxcbiAgICAgICAge1xuICAgICAgICAgIGlkOiB0aGlzLmN1cnJlbnRHcm91cElkXG4gICAgICAgIH1cbiAgICAgICkpO1xuICAgIHRoaXMuY2FuQXNzaWduRGV2aWNlID0gYXdhaXQgdGhpcy5zdWJBc3NldHNTZXJ2aWNlLmNhbkFzc2lnbkRldmljZSh7XG4gICAgICBpZDogdGhpcy5jdXJyZW50R3JvdXBJZFxuICAgIH0gYXMgSU1hbmFnZWRPYmplY3QpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMubmFtZUlucHV0ID0gdGhpcy5uYW1lSW5wdXRSZWYubmF0aXZlRWxlbWVudCBhcyBIVE1MSW5wdXRFbGVtZW50O1xuICAgIHRoaXMuc2V0Rm9jdXNPbk5hbWVJbnB1dCgpO1xuICB9XG5cbiAgYXN5bmMgY3JlYXRlR3JvdXAoKSB7XG4gICAgaWYgKHRoaXMuY2FuQ3JlYXRlR3JvdXAgPT09IGZhbHNlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5wZW5kaW5nU3RhdHVzID0gdHJ1ZTtcbiAgICBhd2FpdCB0aGlzLmFkZEdyb3VwU2VydmljZS5jcmVhdGVHcm91cEFuZEFzc2lnbkRldmljZXMoXG4gICAgICB0aGlzLmZvcm1Hcm91cFN0ZXBPbmUudmFsdWUsXG4gICAgICB0aGlzLmN1cnJlbnRHcm91cElkLFxuICAgICAgdGhpcy5zZWxlY3RlZFxuICAgICk7XG5cbiAgICB0aGlzLnBlbmRpbmdTdGF0dXMgPSBmYWxzZTtcbiAgICB0aGlzLnJlc2V0U3RlcHBlcigpO1xuICAgIGNvbnN0IGFsZXJ0TXNnID0gZ2V0dGV4dCgnR3JvdXAgY3JlYXRlZC4nKTtcbiAgICB0aGlzLmdhaW5zaWdodFNlcnZpY2UudHJpZ2dlckV2ZW50KFBST0RVQ1RfRVhQRVJJRU5DRS5FVkVOVCwge1xuICAgICAgY29tcG9uZW50OiBQUk9EVUNUX0VYUEVSSUVOQ0UuQUREX0dST1VQLkNPTVBPTkVOVFMuQUREX0dST1VQLFxuICAgICAgdXJsOiB3aW5kb3cubG9jYXRpb24uaHJlZixcbiAgICAgIHJlc3VsdDogUFJPRFVDVF9FWFBFUklFTkNFLkFERF9HUk9VUC5SRVNVTFRTLkFERF9TVUNDRVNTXG4gICAgfSk7XG4gICAgdGhpcy5hbGVydC5zdWNjZXNzKGFsZXJ0TXNnKTtcbiAgICB0aGlzLnJlZnJlc2guZW1pdCgpO1xuICAgIHRoaXMub25DYW5jZWwuZW1pdCgpO1xuICB9XG5cbiAgb25TZWxlY3RlZChzZWxlY3RlZERldmljZXNJRHM6IHN0cmluZ1tdKSB7XG4gICAgdGhpcy5zZWxlY3RlZCA9IHNlbGVjdGVkRGV2aWNlc0lEcztcbiAgfVxuXG4gIHJlc2V0U3RlcHBlcigpIHtcbiAgICB0aGlzLnN0ZXBwZXIucmVzZXQoKTtcbiAgICB0aGlzLnN0ZXBwZXIuc2VsZWN0ZWRJbmRleCA9IDE7XG4gICAgdGhpcy5zZWxlY3RlZCA9IFtdO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMuc3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaXNHcm91cERldGFpbHNTdGVwKCkge1xuICAgIHJldHVybiB0aGlzLnN0ZXBwZXIuc2VsZWN0ZWRJbmRleCA9PT0gMDtcbiAgfVxuXG4gIHByaXZhdGUgaXNBc3NpZ25EZXZpY2VTdGVwKCkge1xuICAgIHJldHVybiB0aGlzLnN0ZXBwZXIuc2VsZWN0ZWRJbmRleCA9PT0gMTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0Rm9jdXNPbk5hbWVJbnB1dCgpIHtcbiAgICBpZiAodGhpcy5uYW1lSW5wdXQpIHtcbiAgICAgIHRoaXMubmFtZUlucHV0LmZvY3VzKCk7XG4gICAgICB0aGlzLm5hbWVJbnB1dC5zZWxlY3QoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJkLWNvbnRlbnRzXCIgKm5nSWY9XCIhY3VycmVudEdyb3VwSWQ7IGVsc2Ugc3RlcHBlclwiPlxuICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInN0ZXBwZXJcIj48L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3N0ZXBwZXI+XG4gIDxjOHktc3RlcHBlclxuICAgIGNsYXNzPVwiZC1jb2wgZmxleC1ub3dyYXAgbm8tYWxpZ24taXRlbXMgZml0LWggYzh5LXN0ZXBwZXItLW5vLWJ0bnNcIlxuICAgIFtkaXNhYmxlRGVmYXVsdEljb25zXT1cInsgZWRpdDogdHJ1ZSwgZG9uZTogZmFsc2UgfVwiXG4gICAgW2N1c3RvbUNsYXNzZXNdPVwiWydjb2wtbWQtNicsICdjb2wtbWQtb2Zmc2V0LTMnLCAnbS10LTI0JywgJ20tYi00MCcsICdwLTAnLCAnZmxleC1uby1zaHJpbmsnXVwiXG4gICAgbGluZWFyXG4gICAgYzh5UHJvZHVjdEV4cGVyaWVuY2VcbiAgICBpbmhlcml0XG4gICAgW2FjdGlvbk5hbWVdPVwiUFJPRFVDVF9FWFBFUklFTkNFLkVWRU5UXCJcbiAgICBbYWN0aW9uRGF0YV09XCJ7IGNvbXBvbmVudDogUFJPRFVDVF9FWFBFUklFTkNFLkFERF9HUk9VUC5DT01QT05FTlRTLkFERF9HUk9VUCB9XCJcbiAgPlxuICAgIDxjZGstc3RlcCBbc3RlcENvbnRyb2xdPVwiZm9ybUdyb3VwU3RlcE9uZVwiIFtsYWJlbF09XCInTmV3IGdyb3VwJyB8IHRyYW5zbGF0ZVwiPlxuICAgICAgPGRpdiBjbGFzcz1cInAtMTYgcC10LTAgZmxleC1uby1zaHJpbmsgc2VwYXJhdG9yLWJvdHRvbSBjb2wteHMtMTJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBjb2wtbWQtb2Zmc2V0LTMgY29sLWxnLTQgY29sLWxnLW9mZnNldC00XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaDQgdGV4dC1jZW50ZXIgdGV4dC1tZWRpdW1cIj5cbiAgICAgICAgICAgICAge3sgJ05ldyBncm91cCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xMiBmbGV4LWdyb3cgbm8tZ3V0dGVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWlubmVyLXNjcm9sbCBmaXQtaFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJsb2NrIHAtYi0wXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBjb2wtbWQtb2Zmc2V0LTMgY29sLWxnLTQgY29sLWxnLW9mZnNldC00XCI+XG4gICAgICAgICAgICAgICAgPGM4eS1mb3JtLWdyb3VwIFtub3ZhbGlkYXRpb25dPVwidHJ1ZVwiPlxuICAgICAgICAgICAgICAgICAgPGRpdiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFN0ZXBPbmVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGM4eS1mb3JtLWdyb3VwPlxuICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCB0cmFuc2xhdGU+TmFtZTwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJuYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwie3sgJ2UuZy4gRmlyc3QgZmxvb3InIHwgdHJhbnNsYXRlIH19IFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhsZW5ndGg9XCIyNTRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgI25hbWVSZWZcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9jOHktZm9ybS1ncm91cD5cblxuICAgICAgICAgICAgICAgICAgICA8Yzh5LWZvcm0tZ3JvdXA+XG4gICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIHRyYW5zbGF0ZT5EZXNjcmlwdGlvbjwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJkZXNjcmlwdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7ICdlLmcuIGZpcnN0IGZsb29yIGRldmljZXMnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICA8L2M4eS1mb3JtLWdyb3VwPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9jOHktZm9ybS1ncm91cD5cbiAgICAgICAgICAgICAgICA8Yzh5LWZvcm0tZ3JvdXA+XG4gICAgICAgICAgICAgICAgICA8ZGl2IFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwU3RlcE9uZVwiPjwvZGl2PlxuICAgICAgICAgICAgICAgIDwvYzh5LWZvcm0tZ3JvdXA+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWluZm8gbWF4LXdpZHRoLTEwMFwiIHRyYW5zbGF0ZSAqbmdJZj1cIiFjYW5Bc3NpZ25EZXZpY2VcIj5cbiAgICAgICAgICAgICAgICAgIFlvdSBkb24ndCBoYXZlIHBlcm1pc3Npb24gdG8gYXNzaWduIGRldmljZXMuXG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxjOHktc3RlcHBlci1idXR0b25zXG4gICAgICAgIGNsYXNzPVwiZC1ibG9jayBjYXJkLWZvb3RlciBwLTI0IHNlcGFyYXRvclwiXG4gICAgICAgIChvbkNhbmNlbCk9XCJvbkNhbmNlbC5lbWl0KClcIlxuICAgICAgICAob25DdXN0b20pPVwiY3JlYXRlR3JvdXAoKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCIhY2FuQ3JlYXRlR3JvdXBcIlxuICAgICAgICBbbGFiZWxzXT1cIlxuICAgICAgICAgIGNhbkFzc2lnbkRldmljZVxuICAgICAgICAgICAgPyB7IG5leHQ6IGJ0bkxhYmVscy5uZXh0LCBjYW5jZWw6IGJ0bkxhYmVscy5jYW5jZWwgfVxuICAgICAgICAgICAgOiB7IGN1c3RvbTogYnRuTGFiZWxzLmNyZWF0ZSwgY2FuY2VsOiBidG5MYWJlbHMuY2FuY2VsIH1cbiAgICAgICAgXCJcbiAgICAgICAgW3Nob3dCdXR0b25zXT1cIlxuICAgICAgICAgIGNhbkFzc2lnbkRldmljZSA/IHsgbmV4dDogdHJ1ZSwgY2FuY2VsOiB0cnVlIH0gOiB7IGN1c3RvbTogdHJ1ZSwgY2FuY2VsOiB0cnVlIH1cbiAgICAgICAgXCJcbiAgICAgID48L2M4eS1zdGVwcGVyLWJ1dHRvbnM+XG4gICAgPC9jZGstc3RlcD5cbiAgICA8Y2RrLXN0ZXAgW2xhYmVsXT1cIidBc3NpZ24gZGV2aWNlcycgfCB0cmFuc2xhdGVcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwLTE2IHAtdC0wIGZsZXgtbm8tc2hyaW5rIHNlcGFyYXRvci1ib3R0b20gY29sLXhzLTEyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgY29sLW1kLW9mZnNldC0zIGNvbC1sZy00IGNvbC1sZy1vZmZzZXQtNFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImg0IHRleHQtY2VudGVyIHRleHQtbWVkaXVtXCI+XG4gICAgICAgICAgICAgIHt7ICdBc3NpZ24gZGV2aWNlcycgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xMiBuby1ndXR0ZXIgZmxleC1ncm93XCI+XG4gICAgICAgIDxjOHktZGV2aWNlLWdyaWRcbiAgICAgICAgICBbdGl0bGVdPVwiJ1NlbGVjdCB0YXJnZXQgZGV2aWNlcycgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgIFthY3Rpb25Db250cm9sc109XCJbXVwiXG4gICAgICAgICAgW2luZmluaXRlU2Nyb2xsXT1cIidhdXRvJ1wiXG4gICAgICAgICAgW3NlbGVjdGFibGVdPVwidHJ1ZVwiXG4gICAgICAgICAgW3BhZ2luYXRpb25dPVwicGFnaW5hdGlvblwiXG4gICAgICAgICAgKGl0ZW1zU2VsZWN0KT1cIm9uU2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgICAgW3JlZnJlc2hdPVwicmVmcmVzaFwiXG4gICAgICAgICAgYzh5UHJvZHVjdEV4cGVyaWVuY2VcbiAgICAgICAgICBbYWN0aW9uTmFtZV09XCJQUk9EVUNUX0VYUEVSSUVOQ0UuRVZFTlRcIlxuICAgICAgICAgIFthY3Rpb25EYXRhXT1cInsgY29tcG9uZW50OiBQUk9EVUNUX0VYUEVSSUVOQ0UuQUREX0dST1VQLkNPTVBPTkVOVFMuQUREX0dST1VQIH1cIlxuICAgICAgICA+PC9jOHktZGV2aWNlLWdyaWQ+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxjOHktc3RlcHBlci1idXR0b25zXG4gICAgICAgIGNsYXNzPVwiZC1ibG9jayBjYXJkLWZvb3RlciBwLTI0IHNlcGFyYXRvclwiXG4gICAgICAgIChvbkNhbmNlbCk9XCJvbkNhbmNlbC5lbWl0KClcIlxuICAgICAgICAob25DdXN0b20pPVwiY3JlYXRlR3JvdXAoKVwiXG4gICAgICAgIFtsYWJlbHNdPVwieyBjdXN0b206IGJ0bkxhYmVscy5jcmVhdGUgfVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCIhY2FuQXNzaWduRGV2aWNlXCJcbiAgICAgICAgW3BlbmRpbmddPVwicGVuZGluZ1N0YXR1c1wiXG4gICAgICA+PC9jOHktc3RlcHBlci1idXR0b25zPlxuICAgIDwvY2RrLXN0ZXA+XG4gIDwvYzh5LXN0ZXBwZXI+XG48L25nLXRlbXBsYXRlPlxuIl19
138
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3N1Yi1hc3NldHMvYWRkLWdyb3VwL2FkZC1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zdWItYXNzZXRzL2FkZC1ncm91cC9hZGQtZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXBFLE9BQU8sRUFDTCxZQUFZLEVBQ1osVUFBVSxFQUNWLGdCQUFnQixFQUNoQixPQUFPLEVBRVAsV0FBVyxFQUNaLE1BQU0scUJBQXFCLENBQUM7QUFFN0IsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7Ozs7QUFNdEQsTUFBTSxPQUFPLGlCQUFpQjtJQTRCNUIsWUFDVSxFQUFlLEVBQ2YsZUFBZ0MsRUFDaEMsS0FBbUIsRUFDbkIsZ0JBQWtDLEVBQ2xDLGdCQUFrQyxFQUNsQyxrQkFBK0I7UUFML0IsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUNmLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxVQUFLLEdBQUwsS0FBSyxDQUFjO1FBQ25CLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQWE7UUFoQ2hDLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFB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LENBQUMsS0FBSyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztTQUN6QjtJQUNILENBQUM7OzhHQWpJVSxpQkFBaUI7a0dBQWpCLGlCQUFpQix3VUFLakIsVUFBVSwwSUNqQ3ZCLDRxSkFzSEE7MkZEMUZhLGlCQUFpQjtrQkFKN0IsU0FBUzsrQkFDRSxlQUFlO21QQUloQixjQUFjO3NCQUF0QixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDSSx5QkFBeUI7c0JBQWxDLE1BQU07Z0JBQ0csUUFBUTtzQkFBakIsTUFBTTtnQkFFUCxPQUFPO3NCQUROLFNBQVM7dUJBQUMsVUFBVSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFHeEMsWUFBWTtzQkFEWCxTQUFTO3VCQUFDLFNBQVMsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBOEJhLGNBQWM7c0JBQWpFLFlBQVk7dUJBQUMsd0JBQXdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgSU1hbmFnZWRPYmplY3QgfSBmcm9tICdAYzh5L2NsaWVudCc7XG5pbXBvcnQge1xuICBBbGVydFNlcnZpY2UsXG4gIEM4eVN0ZXBwZXIsXG4gIEdhaW5zaWdodFNlcnZpY2UsXG4gIGdldHRleHQsXG4gIFBhZ2luYXRpb24sXG4gIFBlcm1pc3Npb25zXG59IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQUk9EVUNUX0VYUEVSSUVOQ0UgfSBmcm9tICcuLi9zaGFyZWQvc3ViLWFzc2V0cy5tb2RlbCc7XG5pbXBvcnQgeyBTdWJBc3NldHNTZXJ2aWNlIH0gZnJvbSAnLi4vc3ViLWFzc2V0cy5zZXJ2aWNlJztcbmltcG9ydCB7IEFkZEdyb3VwU2VydmljZSB9IGZyb20gJy4vYWRkLWdyb3VwLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjOHktYWRkLWdyb3VwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FkZC1ncm91cC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgQWRkR3JvdXBDb21wb25lbnQge1xuICBASW5wdXQoKSBjdXJyZW50R3JvdXBJZDogc3RyaW5nO1xuICBASW5wdXQoKSByZWZyZXNoID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAT3V0cHV0KCkgb25EZXZpY2VRdWVyeVN0cmluZ0NoYW5nZTogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIG9uQ2FuY2VsID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAVmlld0NoaWxkKEM4eVN0ZXBwZXIsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBzdGVwcGVyOiBDOHlTdGVwcGVyO1xuICBAVmlld0NoaWxkKCduYW1lUmVmJywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIG5hbWVJbnB1dFJlZjogRWxlbWVudFJlZjtcbiAgZGV2aWNlUXVlcnlTdHJpbmdPdXRwdXQ6IHN0cmluZztcbiAgZm9ybUdyb3VwU3RlcE9uZTogRm9ybUdyb3VwO1xuICBwZW5kaW5nU3RhdHVzID0gZmFsc2U7XG4gIHBhZ2luYXRpb246IFBhZ2luYXRpb24gPSB7IHBhZ2VTaXplOiAyMCwgY3VycmVudFBhZ2U6IDEgfTtcbiAgc2VsZWN0ZWQ6IHN0cmluZ1tdID0gW107XG4gIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBjYW5DcmVhdGVHcm91cCA9IGZhbHNlO1xuICBjYW5Bc3NpZ25EZXZpY2UgPSBmYWxzZTtcbiAgUFJPRFVDVF9FWFBFUklFTkNFID0gUFJPRFVDVF9FWFBFUklFTkNFO1xuXG4gIHJlYWRvbmx5IElURU1TX1NFTEVDVF9MSU1JVDogbnVtYmVyID0gMTU7XG4gIHJlYWRvbmx5IGJ0bkxhYmVscyA9IHtcbiAgICBuZXh0OiBnZXR0ZXh0KCdOZXh0JyksXG4gICAgY2FuY2VsOiBnZXR0ZXh0KCdDYW5jZWwnKSxcbiAgICBjcmVhdGU6IGdldHRleHQoJ0NyZWF0ZScpXG4gIH07XG5cbiAgcHJpdmF0ZSBuYW1lSW5wdXQ6IEhUTUxJbnB1dEVsZW1lbnQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsXG4gICAgcHJpdmF0ZSBhZGRHcm91cFNlcnZpY2U6IEFkZEdyb3VwU2VydmljZSxcbiAgICBwcml2YXRlIGFsZXJ0OiBBbGVydFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzdWJBc3NldHNTZXJ2aWNlOiBTdWJBc3NldHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgZ2FpbnNpZ2h0U2VydmljZTogR2FpbnNpZ2h0U2VydmljZSxcbiAgICBwcml2YXRlIHBlcm1pc3Npb25zU2VydmljZTogUGVybWlzc2lvbnNcbiAgKSB7fVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24uZW50ZXInLCBbJyRldmVudCddKSBvbkVudGVyS2V5RG93bihfZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAvLyBPcmRlciBtYXR0ZXJzISBOZWVkcyB0byBiZSBwbGFjZWQgYmVmb3JlIHRoaXMuc3RlcHBlci5uZXh0XG4gICAgaWYgKCh0aGlzLmlzR3JvdXBEZXRhaWxzU3RlcCgpICYmICF0aGlzLmNhbkFzc2lnbkRldmljZSkgfHwgdGhpcy5pc0Fzc2lnbkRldmljZVN0ZXAoKSkge1xuICAgICAgdGhpcy5jcmVhdGVHcm91cCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnN0ZXBwZXIubmV4dCgpO1xuICB9XG5cbiAgYXN5bmMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5mb3JtR3JvdXBTdGVwT25lID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBuYW1lOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgICAgZGVzY3JpcHRpb246IFsnJ11cbiAgICB9KTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMub25DYW5jZWwuc3Vic2NyaWJlKCgpID0+IHRoaXMucmVzZXRTdGVwcGVyKCkpO1xuICAgIHRoaXMuY2FuQ3JlYXRlR3JvdXAgPVxuICAgICAgdGhpcy5zdWJBc3NldHNTZXJ2aWNlLmNhbkNyZWF0ZUdyb3VwKCkgfHxcbiAgICAgIChhd2FpdCB0aGlzLnBlcm1pc3Npb25zU2VydmljZS5jYW5FZGl0KFxuICAgICAgICBbXG4gICAgICAgICAgUGVybWlzc2lvbnMuUk9MRV9JTlZFTlRPUllfQURNSU4sXG4gICAgICAgICAgUGVybWlzc2lvbnMuUk9MRV9JTlZFTlRPUllfQ1JFQVRFLFxuICAgICAgICAgIFBlcm1pc3Npb25zLlJPTEVfTUFOQUdFRF9PQkpFQ1RfQURNSU4sXG4gICAgICAgICAgUGVybWlzc2lvbnMuUk9MRV9NQU5BR0VEX09CSkVDVF9DUkVBVEVcbiAgICAgICAgXSxcbiAgICAgICAge1xuICAgICAgICAgIGlkOiB0aGlzLmN1cnJlbnRHcm91cElkXG4gICAgICAgIH1cbiAgICAgICkpO1xuICAgIHRoaXMuY2FuQXNzaWduRGV2aWNlID0gYXdhaXQgdGhpcy5zdWJBc3NldHNTZXJ2aWNlLmNhbkFzc2lnbkRldmljZSh7XG4gICAgICBpZDogdGhpcy5jdXJyZW50R3JvdXBJZFxuICAgIH0gYXMgSU1hbmFnZWRPYmplY3QpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMubmFtZUlucHV0ID0gdGhpcy5uYW1lSW5wdXRSZWYubmF0aXZlRWxlbWVudCBhcyBIVE1MSW5wdXRFbGVtZW50O1xuICAgIHRoaXMuc2V0Rm9jdXNPbk5hbWVJbnB1dCgpO1xuICB9XG5cbiAgYXN5bmMgY3JlYXRlR3JvdXAoKSB7XG4gICAgaWYgKHRoaXMuY2FuQ3JlYXRlR3JvdXAgPT09IGZhbHNlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5wZW5kaW5nU3RhdHVzID0gdHJ1ZTtcbiAgICBhd2FpdCB0aGlzLmFkZEdyb3VwU2VydmljZS5jcmVhdGVHcm91cEFuZEFzc2lnbkRldmljZXMoXG4gICAgICB0aGlzLmZvcm1Hcm91cFN0ZXBPbmUudmFsdWUsXG4gICAgICB0aGlzLmN1cnJlbnRHcm91cElkLFxuICAgICAgdGhpcy5zZWxlY3RlZFxuICAgICk7XG5cbiAgICB0aGlzLnBlbmRpbmdTdGF0dXMgPSBmYWxzZTtcbiAgICB0aGlzLnJlc2V0U3RlcHBlcigpO1xuICAgIGNvbnN0IGFsZXJ0TXNnID0gZ2V0dGV4dCgnR3JvdXAgY3JlYXRlZC4nKTtcbiAgICB0aGlzLmdhaW5zaWdodFNlcnZpY2UudHJpZ2dlckV2ZW50KFBST0RVQ1RfRVhQRVJJRU5DRS5FVkVOVCwge1xuICAgICAgY29tcG9uZW50OiBQUk9EVUNUX0VYUEVSSUVOQ0UuQUREX0dST1VQLkNPTVBPTkVOVFMuQUREX0dST1VQLFxuICAgICAgdXJsOiB3aW5kb3cubG9jYXRpb24uaHJlZixcbiAgICAgIHJlc3VsdDogUFJPRFVDVF9FWFBFUklFTkNFLkFERF9HUk9VUC5SRVNVTFRTLkFERF9TVUNDRVNTXG4gICAgfSk7XG4gICAgdGhpcy5hbGVydC5zdWNjZXNzKGFsZXJ0TXNnKTtcbiAgICB0aGlzLnJlZnJlc2guZW1pdCgpO1xuICAgIHRoaXMub25DYW5jZWwuZW1pdCgpO1xuICB9XG5cbiAgb25TZWxlY3RlZChzZWxlY3RlZERldmljZXNJRHM6IHN0cmluZ1tdKSB7XG4gICAgdGhpcy5zZWxlY3RlZCA9IHNlbGVjdGVkRGV2aWNlc0lEcztcbiAgfVxuXG4gIHJlc2V0U3RlcHBlcigpIHtcbiAgICB0aGlzLnN0ZXBwZXIucmVzZXQoKTtcbiAgICB0aGlzLnN0ZXBwZXIuc2VsZWN0ZWRJbmRleCA9IDE7XG4gICAgdGhpcy5zZWxlY3RlZCA9IFtdO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMuc3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaXNHcm91cERldGFpbHNTdGVwKCkge1xuICAgIHJldHVybiB0aGlzLnN0ZXBwZXIuc2VsZWN0ZWRJbmRleCA9PT0gMDtcbiAgfVxuXG4gIHByaXZhdGUgaXNBc3NpZ25EZXZpY2VTdGVwKCkge1xuICAgIHJldHVybiB0aGlzLnN0ZXBwZXIuc2VsZWN0ZWRJbmRleCA9PT0gMTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0Rm9jdXNPbk5hbWVJbnB1dCgpIHtcbiAgICBpZiAodGhpcy5uYW1lSW5wdXQpIHtcbiAgICAgIHRoaXMubmFtZUlucHV0LmZvY3VzKCk7XG4gICAgICB0aGlzLm5hbWVJbnB1dC5zZWxlY3QoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJkLWNvbnRlbnRzXCIgKm5nSWY9XCIhY3VycmVudEdyb3VwSWQ7IGVsc2Ugc3RlcHBlclwiPlxuICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInN0ZXBwZXJcIj48L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3N0ZXBwZXI+XG4gIDxjOHktc3RlcHBlclxuICAgIGNsYXNzPVwiZC1jb2wgZmxleC1ub3dyYXAgbm8tYWxpZ24taXRlbXMgZml0LWggYzh5LXN0ZXBwZXItLW5vLWJ0bnNcIlxuICAgIFtkaXNhYmxlRGVmYXVsdEljb25zXT1cInsgZWRpdDogdHJ1ZSwgZG9uZTogZmFsc2UgfVwiXG4gICAgW2N1c3RvbUNsYXNzZXNdPVwiWydjb2wtbWQtNicsICdjb2wtbWQtb2Zmc2V0LTMnLCAnbS10LTI0JywgJ20tYi00MCcsICdwLTAnLCAnZmxleC1uby1zaHJpbmsnXVwiXG4gICAgbGluZWFyXG4gICAgYzh5UHJvZHVjdEV4cGVyaWVuY2VcbiAgICBpbmhlcml0XG4gICAgW2FjdGlvbk5hbWVdPVwiUFJPRFVDVF9FWFBFUklFTkNFLkVWRU5UXCJcbiAgICBbYWN0aW9uRGF0YV09XCJ7IGNvbXBvbmVudDogUFJPRFVDVF9FWFBFUklFTkNFLkFERF9HUk9VUC5DT01QT05FTlRTLkFERF9HUk9VUCB9XCJcbiAgPlxuICAgIDxjZGstc3RlcCBbc3RlcENvbnRyb2xdPVwiZm9ybUdyb3VwU3RlcE9uZVwiIFtsYWJlbF09XCInTmV3IGdyb3VwJyB8IHRyYW5zbGF0ZVwiPlxuICAgICAgPGRpdiBjbGFzcz1cInAtMTYgcC10LTAgZmxleC1uby1zaHJpbmsgc2VwYXJhdG9yLWJvdHRvbSBjb2wteHMtMTJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBjb2wtbWQtb2Zmc2V0LTMgY29sLWxnLTQgY29sLWxnLW9mZnNldC00XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaDQgdGV4dC1jZW50ZXIgdGV4dC1tZWRpdW1cIj5cbiAgICAgICAgICAgICAge3sgJ05ldyBncm91cCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xMiBmbGV4LWdyb3cgbm8tZ3V0dGVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWlubmVyLXNjcm9sbCBmaXQtaFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJsb2NrIHAtYi0wXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtNiBjb2wtbWQtb2Zmc2V0LTMgY29sLWxnLTQgY29sLWxnLW9mZnNldC00XCI+XG4gICAgICAgICAgICAgICAgPGM4eS1mb3JtLWdyb3VwIFtub3ZhbGlkYXRpb25dPVwidHJ1ZVwiPlxuICAgICAgICAgICAgICAgICAgPGRpdiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFN0ZXBPbmVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGM4eS1mb3JtLWdyb3VwPlxuICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCB0cmFuc2xhdGU+TmFtZTwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJuYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwie3sgJ2UuZy4gRmlyc3QgZmxvb3InIHwgdHJhbnNsYXRlIH19IFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhsZW5ndGg9XCIyNTRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgI25hbWVSZWZcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9jOHktZm9ybS1ncm91cD5cblxuICAgICAgICAgICAgICAgICAgICA8Yzh5LWZvcm0tZ3JvdXA+XG4gICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIHRyYW5zbGF0ZT5EZXNjcmlwdGlvbjwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJkZXNjcmlwdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7ICdlLmcuIGZpcnN0IGZsb29yIGRldmljZXMnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICA8L2M4eS1mb3JtLWdyb3VwPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9jOHktZm9ybS1ncm91cD5cbiAgICAgICAgICAgICAgICA8Yzh5LWZvcm0tZ3JvdXA+XG4gICAgICAgICAgICAgICAgICA8ZGl2IFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwU3RlcE9uZVwiPjwvZGl2PlxuICAgICAgICAgICAgICAgIDwvYzh5LWZvcm0tZ3JvdXA+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWluZm8gbWF4LXdpZHRoLTEwMFwiIHRyYW5zbGF0ZSAqbmdJZj1cIiFjYW5Bc3NpZ25EZXZpY2VcIj5cbiAgICAgICAgICAgICAgICAgIFlvdSBkb24ndCBoYXZlIHBlcm1pc3Npb24gdG8gYXNzaWduIGRldmljZXMuXG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxjOHktc3RlcHBlci1idXR0b25zXG4gICAgICAgIGNsYXNzPVwiZC1ibG9jayBjYXJkLWZvb3RlciBwLTI0IHNlcGFyYXRvclwiXG4gICAgICAgIChvbkNhbmNlbCk9XCJvbkNhbmNlbC5lbWl0KClcIlxuICAgICAgICAob25DdXN0b20pPVwiY3JlYXRlR3JvdXAoKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCIhY2FuQ3JlYXRlR3JvdXBcIlxuICAgICAgICBbbGFiZWxzXT1cIlxuICAgICAgICAgIGNhbkFzc2lnbkRldmljZVxuICAgICAgICAgICAgPyB7IG5leHQ6IGJ0bkxhYmVscy5uZXh0LCBjYW5jZWw6IGJ0bkxhYmVscy5jYW5jZWwgfVxuICAgICAgICAgICAgOiB7IGN1c3RvbTogYnRuTGFiZWxzLmNyZWF0ZSwgY2FuY2VsOiBidG5MYWJlbHMuY2FuY2VsIH1cbiAgICAgICAgXCJcbiAgICAgICAgW3Nob3dCdXR0b25zXT1cIlxuICAgICAgICAgIGNhbkFzc2lnbkRldmljZSA/IHsgbmV4dDogdHJ1ZSwgY2FuY2VsOiB0cnVlIH0gOiB7IGN1c3RvbTogdHJ1ZSwgY2FuY2VsOiB0cnVlIH1cbiAgICAgICAgXCJcbiAgICAgID48L2M4eS1zdGVwcGVyLWJ1dHRvbnM+XG4gICAgPC9jZGstc3RlcD5cbiAgICA8Y2RrLXN0ZXAgW2xhYmVsXT1cIidBc3NpZ24gZGV2aWNlcycgfCB0cmFuc2xhdGVcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwLTE2IHAtdC0wIGZsZXgtbm8tc2hyaW5rIHNlcGFyYXRvci1ib3R0b20gY29sLXhzLTEyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTYgY29sLW1kLW9mZnNldC0zIGNvbC1sZy00IGNvbC1sZy1vZmZzZXQtNFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImg0IHRleHQtY2VudGVyIHRleHQtbWVkaXVtXCI+XG4gICAgICAgICAgICAgIHt7ICdBc3NpZ24gZGV2aWNlcycgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xMiBuby1ndXR0ZXIgZmxleC1ncm93XCI+XG4gICAgICAgIDxjOHktZGV2aWNlLWdyaWRcbiAgICAgICAgICBbdGl0bGVdPVwiJ1NlbGVjdCB0YXJnZXQgZGV2aWNlcycgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgIFthY3Rpb25Db250cm9sc109XCJbXVwiXG4gICAgICAgICAgW2luZmluaXRlU2Nyb2xsXT1cIidhdXRvJ1wiXG4gICAgICAgICAgW3NlbGVjdGFibGVdPVwidHJ1ZVwiXG4gICAgICAgICAgW3BhZ2luYXRpb25dPVwicGFnaW5hdGlvblwiXG4gICAgICAgICAgKGl0ZW1zU2VsZWN0KT1cIm9uU2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgICAgW3JlZnJlc2hdPVwicmVmcmVzaFwiXG4gICAgICAgICAgYzh5UHJvZHVjdEV4cGVyaWVuY2VcbiAgICAgICAgICBbYWN0aW9uTmFtZV09XCJQUk9EVUNUX0VYUEVSSUVOQ0UuRVZFTlRcIlxuICAgICAgICAgIFthY3Rpb25EYXRhXT1cInsgY29tcG9uZW50OiBQUk9EVUNUX0VYUEVSSUVOQ0UuQUREX0dST1VQLkNPTVBPTkVOVFMuQUREX0dST1VQIH1cIlxuICAgICAgICA+PC9jOHktZGV2aWNlLWdyaWQ+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxjOHktc3RlcHBlci1idXR0b25zXG4gICAgICAgIGNsYXNzPVwiZC1ibG9jayBjYXJkLWZvb3RlciBwLTI0IHNlcGFyYXRvclwiXG4gICAgICAgIChvbkNhbmNlbCk9XCJvbkNhbmNlbC5lbWl0KClcIlxuICAgICAgICAob25DdXN0b20pPVwiY3JlYXRlR3JvdXAoKVwiXG4gICAgICAgIFtsYWJlbHNdPVwieyBjdXN0b206IGJ0bkxhYmVscy5jcmVhdGUgfVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCIhY2FuQXNzaWduRGV2aWNlXCJcbiAgICAgICAgW3BlbmRpbmddPVwicGVuZGluZ1N0YXR1c1wiXG4gICAgICA+PC9jOHktc3RlcHBlci1idXR0b25zPlxuICAgIDwvY2RrLXN0ZXA+XG4gIDwvYzh5LXN0ZXBwZXI+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -21,7 +21,10 @@ export class GroupsComponent {
21
21
  this.columns = [];
22
22
  }
23
23
  ngOnInit() {
24
- if (!this.permissions.hasRole(Permissions.ROLE_INVENTORY_READ)) {
24
+ if (!this.permissions.hasAnyRole([
25
+ Permissions.ROLE_INVENTORY_READ,
26
+ Permissions.ROLE_MANAGED_OBJECT_READ
27
+ ])) {
25
28
  this.sortable = false;
26
29
  }
27
30
  this.shouldDisableAddGroup = !this.subAssetsService.canCreateGroup();
@@ -39,4 +42,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
39
42
  type: Inject,
40
43
  args: [SUB_ASSETS_CONFIG]
41
44
  }] }]; } });
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXBzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3N1Yi1hc3NldHMvZ3JvdXBzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3N1Yi1hc3NldHMvZ3JvdXBzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQVUsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUQsT0FBTyxFQUFtQixpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7O0FBTXhELE1BQU0sT0FBTyxlQUFlO0lBUTFCLFlBQ1UsV0FBd0IsRUFDeEIsZ0JBQWtDLEVBQ1IsWUFBNkI7UUFGdkQsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNSLGlCQUFZLEdBQVosWUFBWSxDQUFpQjtRQVZqRSxZQUFPLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDaEQsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFDckIsZUFBVSxHQUFHLElBQUksQ0FBQztRQUNsQixhQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ2hCLDBCQUFxQixHQUFHLEtBQUssQ0FBQztRQUM5QixZQUFPLEdBQWEsRUFBRSxDQUFDO0lBTXBCLENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFO1lBQzlELElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1NBQ3ZCO1FBQ0QsSUFBSSxDQUFDLHFCQUFxQixHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsRUFBRSxDQUFDO1FBRXJFLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGdCQUFnQjthQUNqQyxpQkFBaUIsRUFBRTthQUNuQixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDO0lBQ2hELENBQUM7OzRHQXZCVSxlQUFlLDZFQVdoQixpQkFBaUI7Z0dBWGhCLGVBQWUsdURDVDVCLHMzQ0FxREE7MkZENUNhLGVBQWU7a0JBSjNCLFNBQVM7K0JBQ0UsaUJBQWlCOzswQkFjeEIsTUFBTTsyQkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbHVtbiwgUGVybWlzc2lvbnMgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcbmltcG9ydCB7IFN1YkFzc2V0c0NvbmZpZywgU1VCX0FTU0VUU19DT05GSUcgfSBmcm9tICcuL3N1Yi1hc3NldHMubW9kZWwnO1xuaW1wb3J0IHsgU3ViQXNzZXRzU2VydmljZSB9IGZyb20gJy4vc3ViLWFzc2V0cy5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYzh5LWdyb3Vwcy1uYW1lJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dyb3Vwcy5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgR3JvdXBzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcmVmcmVzaDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIHNob3dBZGRHcm91cCA9IGZhbHNlO1xuICBmaWx0ZXJhYmxlID0gdHJ1ZTtcbiAgc29ydGFibGUgPSB0cnVlO1xuICBzaG91bGREaXNhYmxlQWRkR3JvdXAgPSBmYWxzZTtcbiAgY29sdW1uczogQ29sdW1uW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHBlcm1pc3Npb25zOiBQZXJtaXNzaW9ucyxcbiAgICBwcml2YXRlIHN1YkFzc2V0c1NlcnZpY2U6IFN1YkFzc2V0c1NlcnZpY2UsXG4gICAgQEluamVjdChTVUJfQVNTRVRTX0NPTkZJRykgcHVibGljIG1vZHVsZUNvbmZpZzogU3ViQXNzZXRzQ29uZmlnXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAoIXRoaXMucGVybWlzc2lvbnMuaGFzUm9sZShQZXJtaXNzaW9ucy5ST0xFX0lOVkVOVE9SWV9SRUFEKSkge1xuICAgICAgdGhpcy5zb3J0YWJsZSA9IGZhbHNlO1xuICAgIH1cbiAgICB0aGlzLnNob3VsZERpc2FibGVBZGRHcm91cCA9ICF0aGlzLnN1YkFzc2V0c1NlcnZpY2UuY2FuQ3JlYXRlR3JvdXAoKTtcblxuICAgIHRoaXMuY29sdW1ucyA9IHRoaXMuc3ViQXNzZXRzU2VydmljZVxuICAgICAgLmdldERlZmF1bHRDb2x1bW5zKClcbiAgICAgIC5maWx0ZXIoY29sdW1uID0+IGNvbHVtbi5uYW1lICE9PSAnYWxhcm1zJyk7XG4gIH1cbn1cbiIsIjxjOHktdGl0bGU+XG4gIHt7IG1vZHVsZUNvbmZpZy5uYW1lIHwgdHJhbnNsYXRlIH19XG48L2M4eS10aXRsZT5cblxuPGM4eS1icmVhZGNydW1iPlxuICA8Yzh5LWJyZWFkY3J1bWItaXRlbVxuICAgIGljb249XCJjOHktZ3JvdXAtb3BlblwiXG4gICAgbGFiZWw9XCJ7eyBtb2R1bGVDb25maWcubmFtZSB8IHRyYW5zbGF0ZSB9fVwiXG4gID48L2M4eS1icmVhZGNydW1iLWl0ZW0+XG48L2M4eS1icmVhZGNydW1iPlxuXG48Yzh5LWFjdGlvbi1iYXItaXRlbVxuICBbcGxhY2VtZW50XT1cIidyaWdodCdcIlxuICAqbmdJZj1cIm1vZHVsZUNvbmZpZy5zaG93QWRkR3JvdXBCdG5cIlxuPlxuICA8YnV0dG9uXG4gICAgY2xhc3M9XCJidG4gYnRuLWxpbmtcIlxuICAgIHRpdGxlPVwie3sgJ0FkZCBncm91cCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgIChjbGljayk9XCJzaG93QWRkR3JvdXAgPSAhc2hvd0FkZEdyb3VwXCJcbiAgICBbZGlzYWJsZWRdPVwic2hvdWxkRGlzYWJsZUFkZEdyb3VwXCJcbiAgICBbYXR0ci5kYXRhLWN5XT1cIidncm91cHMtYWRkLWdyb3VwLWJ1dHRvbidcIlxuICA+XG4gICAgPGlcbiAgICAgIGNsYXNzPVwibS1yLTRcIlxuICAgICAgYzh5SWNvbj1cInBsdXMtY2lyY2xlXCJcbiAgICA+PC9pPlxuICAgIHt7ICdBZGQgZ3JvdXAnIHwgdHJhbnNsYXRlIH19XG4gIDwvYnV0dG9uPlxuPC9jOHktYWN0aW9uLWJhci1pdGVtPlxuXG48Yzh5LWhlbHBcbiAgc3JjPVwiL3VzZXJzLWd1aWRlL2RldmljZS1tYW5hZ2VtZW50LyNncm91cGluZy1kZXZpY2VzXCJcbiAgKm5nSWY9XCJtb2R1bGVDb25maWcuc2hvd0dyb3Vwc0NvbnRleHRIZWxwXCJcbj48L2M4eS1oZWxwPlxuXG48ZGl2IFtuZ0NsYXNzXT1cInsgZHJhd2VyT3Blbjogc2hvd0FkZEdyb3VwIH1cIj5cbiAgPGRpdiBjbGFzcz1cImJvdHRvbS1kcmF3ZXJcIj5cbiAgICA8Yzh5LWFkZC1ncm91cFxuICAgICAgW3JlZnJlc2hdPVwicmVmcmVzaFwiXG4gICAgICAob25DYW5jZWwpPVwic2hvd0FkZEdyb3VwID0gZmFsc2VcIlxuICAgICAgKm5nSWY9XCJzaG93QWRkR3JvdXBcIlxuICAgID48L2M4eS1hZGQtZ3JvdXA+XG4gIDwvZGl2PlxuPC9kaXY+XG48Yzh5LXN1Yi1hc3NldHMtZ3JpZFxuICBjbGFzcz1cImNvbnRlbnQtZnVsbHBhZ2UgZC1mbGV4IGQtY29sIGJvcmRlci10b3AgYm9yZGVyLWJvdHRvbVwiXG4gIFtyZWZyZXNoXT1cInJlZnJlc2hcIlxuICBbZmlsdGVyYWJsZV09XCJmaWx0ZXJhYmxlXCJcbiAgW3NvcnRhYmxlXT1cInNvcnRhYmxlXCJcbiAgW2NvbHVtbnNdPVwiY29sdW1uc1wiXG4gIFtjb2x1bW5zQ29uZmlnS2V5XT1cIidzdWItYXNzZXRzLWdyaWQnXCJcbiAgW2Jhc2VRdWVyeV09XCJtb2R1bGVDb25maWcuYmFzZVF1ZXJ5XCJcbj48L2M4eS1zdWItYXNzZXRzLWdyaWQ+XG4iXX0=
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXBzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3N1Yi1hc3NldHMvZ3JvdXBzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3N1Yi1hc3NldHMvZ3JvdXBzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQVUsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUQsT0FBTyxFQUFtQixpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7O0FBTXhELE1BQU0sT0FBTyxlQUFlO0lBUTFCLFlBQ1UsV0FBd0IsRUFDeEIsZ0JBQWtDLEVBQ1IsWUFBNkI7UUFGdkQsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNSLGlCQUFZLEdBQVosWUFBWSxDQUFpQjtRQVZqRSxZQUFPLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDaEQsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFDckIsZUFBVSxHQUFHLElBQUksQ0FBQztRQUNsQixhQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ2hCLDBCQUFxQixHQUFHLEtBQUssQ0FBQztRQUM5QixZQUFPLEdBQWEsRUFBRSxDQUFDO0lBTXBCLENBQUM7SUFFSixRQUFRO1FBQ04sSUFDRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDO1lBQzNCLFdBQVcsQ0FBQyxtQkFBbUI7WUFDL0IsV0FBVyxDQUFDLHdCQUF3QjtTQUNyQyxDQUFDLEVBQ0Y7WUFDQSxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztTQUN2QjtRQUNELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUVyRSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxnQkFBZ0I7YUFDakMsaUJBQWlCLEVBQUU7YUFDbkIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQztJQUNoRCxDQUFDOzs0R0E1QlUsZUFBZSw2RUFXaEIsaUJBQWlCO2dHQVhoQixlQUFlLHVEQ1Q1QixzM0NBcURBOzJGRDVDYSxlQUFlO2tCQUozQixTQUFTOytCQUNFLGlCQUFpQjs7MEJBY3hCLE1BQU07MkJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEluamVjdCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb2x1bW4sIFBlcm1pc3Npb25zIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBTdWJBc3NldHNDb25maWcsIFNVQl9BU1NFVFNfQ09ORklHIH0gZnJvbSAnLi9zdWItYXNzZXRzLm1vZGVsJztcbmltcG9ydCB7IFN1YkFzc2V0c1NlcnZpY2UgfSBmcm9tICcuL3N1Yi1hc3NldHMuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1ncm91cHMtbmFtZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9ncm91cHMuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEdyb3Vwc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHJlZnJlc2g6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBzaG93QWRkR3JvdXAgPSBmYWxzZTtcbiAgZmlsdGVyYWJsZSA9IHRydWU7XG4gIHNvcnRhYmxlID0gdHJ1ZTtcbiAgc2hvdWxkRGlzYWJsZUFkZEdyb3VwID0gZmFsc2U7XG4gIGNvbHVtbnM6IENvbHVtbltdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBwZXJtaXNzaW9uczogUGVybWlzc2lvbnMsXG4gICAgcHJpdmF0ZSBzdWJBc3NldHNTZXJ2aWNlOiBTdWJBc3NldHNTZXJ2aWNlLFxuICAgIEBJbmplY3QoU1VCX0FTU0VUU19DT05GSUcpIHB1YmxpYyBtb2R1bGVDb25maWc6IFN1YkFzc2V0c0NvbmZpZ1xuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKFxuICAgICAgIXRoaXMucGVybWlzc2lvbnMuaGFzQW55Um9sZShbXG4gICAgICAgIFBlcm1pc3Npb25zLlJPTEVfSU5WRU5UT1JZX1JFQUQsXG4gICAgICAgIFBlcm1pc3Npb25zLlJPTEVfTUFOQUdFRF9PQkpFQ1RfUkVBRFxuICAgICAgXSlcbiAgICApIHtcbiAgICAgIHRoaXMuc29ydGFibGUgPSBmYWxzZTtcbiAgICB9XG4gICAgdGhpcy5zaG91bGREaXNhYmxlQWRkR3JvdXAgPSAhdGhpcy5zdWJBc3NldHNTZXJ2aWNlLmNhbkNyZWF0ZUdyb3VwKCk7XG5cbiAgICB0aGlzLmNvbHVtbnMgPSB0aGlzLnN1YkFzc2V0c1NlcnZpY2VcbiAgICAgIC5nZXREZWZhdWx0Q29sdW1ucygpXG4gICAgICAuZmlsdGVyKGNvbHVtbiA9PiBjb2x1bW4ubmFtZSAhPT0gJ2FsYXJtcycpO1xuICB9XG59XG4iLCI8Yzh5LXRpdGxlPlxuICB7eyBtb2R1bGVDb25maWcubmFtZSB8IHRyYW5zbGF0ZSB9fVxuPC9jOHktdGl0bGU+XG5cbjxjOHktYnJlYWRjcnVtYj5cbiAgPGM4eS1icmVhZGNydW1iLWl0ZW1cbiAgICBpY29uPVwiYzh5LWdyb3VwLW9wZW5cIlxuICAgIGxhYmVsPVwie3sgbW9kdWxlQ29uZmlnLm5hbWUgfCB0cmFuc2xhdGUgfX1cIlxuICA+PC9jOHktYnJlYWRjcnVtYi1pdGVtPlxuPC9jOHktYnJlYWRjcnVtYj5cblxuPGM4eS1hY3Rpb24tYmFyLWl0ZW1cbiAgW3BsYWNlbWVudF09XCIncmlnaHQnXCJcbiAgKm5nSWY9XCJtb2R1bGVDb25maWcuc2hvd0FkZEdyb3VwQnRuXCJcbj5cbiAgPGJ1dHRvblxuICAgIGNsYXNzPVwiYnRuIGJ0bi1saW5rXCJcbiAgICB0aXRsZT1cInt7ICdBZGQgZ3JvdXAnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAoY2xpY2spPVwic2hvd0FkZEdyb3VwID0gIXNob3dBZGRHcm91cFwiXG4gICAgW2Rpc2FibGVkXT1cInNob3VsZERpc2FibGVBZGRHcm91cFwiXG4gICAgW2F0dHIuZGF0YS1jeV09XCInZ3JvdXBzLWFkZC1ncm91cC1idXR0b24nXCJcbiAgPlxuICAgIDxpXG4gICAgICBjbGFzcz1cIm0tci00XCJcbiAgICAgIGM4eUljb249XCJwbHVzLWNpcmNsZVwiXG4gICAgPjwvaT5cbiAgICB7eyAnQWRkIGdyb3VwJyB8IHRyYW5zbGF0ZSB9fVxuICA8L2J1dHRvbj5cbjwvYzh5LWFjdGlvbi1iYXItaXRlbT5cblxuPGM4eS1oZWxwXG4gIHNyYz1cIi91c2Vycy1ndWlkZS9kZXZpY2UtbWFuYWdlbWVudC8jZ3JvdXBpbmctZGV2aWNlc1wiXG4gICpuZ0lmPVwibW9kdWxlQ29uZmlnLnNob3dHcm91cHNDb250ZXh0SGVscFwiXG4+PC9jOHktaGVscD5cblxuPGRpdiBbbmdDbGFzc109XCJ7IGRyYXdlck9wZW46IHNob3dBZGRHcm91cCB9XCI+XG4gIDxkaXYgY2xhc3M9XCJib3R0b20tZHJhd2VyXCI+XG4gICAgPGM4eS1hZGQtZ3JvdXBcbiAgICAgIFtyZWZyZXNoXT1cInJlZnJlc2hcIlxuICAgICAgKG9uQ2FuY2VsKT1cInNob3dBZGRHcm91cCA9IGZhbHNlXCJcbiAgICAgICpuZ0lmPVwic2hvd0FkZEdyb3VwXCJcbiAgICA+PC9jOHktYWRkLWdyb3VwPlxuICA8L2Rpdj5cbjwvZGl2PlxuPGM4eS1zdWItYXNzZXRzLWdyaWRcbiAgY2xhc3M9XCJjb250ZW50LWZ1bGxwYWdlIGQtZmxleCBkLWNvbCBib3JkZXItdG9wIGJvcmRlci1ib3R0b21cIlxuICBbcmVmcmVzaF09XCJyZWZyZXNoXCJcbiAgW2ZpbHRlcmFibGVdPVwiZmlsdGVyYWJsZVwiXG4gIFtzb3J0YWJsZV09XCJzb3J0YWJsZVwiXG4gIFtjb2x1bW5zXT1cImNvbHVtbnNcIlxuICBbY29sdW1uc0NvbmZpZ0tleV09XCInc3ViLWFzc2V0cy1ncmlkJ1wiXG4gIFtiYXNlUXVlcnldPVwibW9kdWxlQ29uZmlnLmJhc2VRdWVyeVwiXG4+PC9jOHktc3ViLWFzc2V0cy1ncmlkPlxuIl19
@@ -47,7 +47,12 @@ export class SubAssetsComponent {
47
47
  this.group = { ...contextData };
48
48
  this.title = this.group.name;
49
49
  this.currentGroupId = this.group.id;
50
- this.shouldDisableAddGroup = !(await this.permissionsService.canEdit([Permissions.ROLE_INVENTORY_ADMIN, Permissions.ROLE_INVENTORY_CREATE], this.group));
50
+ this.shouldDisableAddGroup = !(await this.permissionsService.canEdit([
51
+ Permissions.ROLE_INVENTORY_ADMIN,
52
+ Permissions.ROLE_INVENTORY_CREATE,
53
+ Permissions.ROLE_MANAGED_OBJECT_ADMIN,
54
+ Permissions.ROLE_MANAGED_OBJECT_CREATE
55
+ ], this.group));
51
56
  this.shouldDisableAssignDevices = !(await this.subAssetsService.canAssignDevice(this.group));
52
57
  this.customProperties = await this.subAssetsService.getCustomProperties(this.group);
53
58
  this.shouldShowAssetsProperties =
@@ -78,4 +83,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
78
83
  type: Inject,
79
84
  args: [SUB_ASSETS_CONFIG]
80
85
  }] }]; } });
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ViLWFzc2V0cy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zdWItYXNzZXRzL3N1Yi1hc3NldHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vc3ViLWFzc2V0cy9zdWItYXNzZXRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWpELE9BQU8sRUFBRSxtQkFBbUIsRUFBa0IsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFdkYsT0FBTyxFQUFFLGlCQUFpQixFQUFtQixNQUFNLG9CQUFvQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7Ozs7QUFNeEQsTUFBTSxPQUFPLGtCQUFrQjtJQW9CN0IsWUFDVSxLQUFxQixFQUNyQixnQkFBa0MsRUFDbEMsbUJBQXdDLEVBQ3hDLGtCQUErQixFQUNMLFlBQTZCO1FBSnZELFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4Qyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQWE7UUFDTCxpQkFBWSxHQUFaLFlBQVksQ0FBaUI7UUFwQmpFLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFDZixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUNyQixzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFFMUIsMkJBQXNCLEdBQUcsS0FBSyxDQUFDO1FBQy9CLFlBQU8sR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNoRCxlQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLDBCQUFxQixHQUFHLEtBQUssQ0FBQztRQUM5QiwrQkFBMEIsR0FBRyxLQUFLLENBQUM7UUFDbkMsK0JBQTBCLEdBQUcsS0FBSyxDQUFDO1FBRW5DLHFCQUFnQixHQUFxQixFQUFFLENBQUM7UUFXdEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFO1lBQ2xFLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSyxDQUFDLFFBQVE7UUFDWixJQUFJLENBQUMsY0FBYyxHQUFHO1lBQ3BCLE9BQU8sRUFBRSxJQUFJO1lBQ2IsUUFBUSxFQUFFLEtBQUs7WUFDZixVQUFVLEVBQUUsSUFBSTtZQUNoQixNQUFNLEVBQUUsSUFBSTtTQUNiLENBQUM7SUFDSixDQUFDO0lBRUQsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXO1FBQ3BCLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxHQUFHLFdBQVcsRUFBRSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDN0IsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUNwQyxJQUFJLENBQUMscUJBQXFCLEdBQUcsQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FDbEUsQ0FBQyxXQUFXLENBQUMsb0JBQW9CLEVBQUUsV0FBVyxDQUFDLHFCQUFxQixDQUFDLEVBQ3JFLElBQUksQ0FBQyxLQUFLLENBQ1gsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLDBCQUEwQixHQUFHLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDN0YsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsMEJBQTBCO1lBQzdCLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBcUI7UUFDL0IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN2RCxJQUFJLENBQUMsbUJBQW1CLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDMUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUM1QjtJQUNILENBQUM7OytHQXZFVSxrQkFBa0IsOElBeUJuQixpQkFBaUI7bUdBekJoQixrQkFBa0Isc0RDWi9CLHl5R0FzSEE7MkZEMUdhLGtCQUFrQjtrQkFKOUIsU0FBUzsrQkFDRSxnQkFBZ0I7OzBCQTRCdkIsTUFBTTsyQkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5qZWN0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgSU1hbmFnZWRPYmplY3QgfSBmcm9tICdAYzh5L2NsaWVudCc7XG5pbXBvcnQgeyBDb250ZXh0Um91dGVTZXJ2aWNlLCBEaXNwbGF5T3B0aW9ucywgUGVybWlzc2lvbnMgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU1VCX0FTU0VUU19DT05GSUcsIFN1YkFzc2V0c0NvbmZpZyB9IGZyb20gJy4vc3ViLWFzc2V0cy5tb2RlbCc7XG5pbXBvcnQgeyBTdWJBc3NldHNTZXJ2aWNlIH0gZnJvbSAnLi9zdWItYXNzZXRzLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjOHktc3ViLWFzc2V0cycsXG4gIHRlbXBsYXRlVXJsOiAnLi9zdWItYXNzZXRzLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBTdWJBc3NldHNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIGdyb3VwOiBJTWFuYWdlZE9iamVjdDtcbiAgY3VycmVudEdyb3VwSWQ6IHN0cmluZztcbiAgc2hvd0NoaWxkcmVuRm9yRGV2aWNlOiBJTWFuYWdlZE9iamVjdDtcbiAgdGl0bGU6IHN0cmluZztcbiAgdG9nZ2xlID0gZmFsc2U7XG4gIHNob3dBZGRHcm91cCA9IGZhbHNlO1xuICBzaG93QXNzaWduRGV2aWNlcyA9IGZhbHNlO1xuICByZXF1ZXN0SW5Qcm9ncmVzczogYm9vbGVhbjtcbiAgc2hvd0Fzc2lnbkNoaWxkRGV2aWNlcyA9IGZhbHNlO1xuICByZWZyZXNoOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgZmlsdGVyYWJsZSA9IHRydWU7XG4gIHNob3VsZERpc2FibGVBZGRHcm91cCA9IGZhbHNlO1xuICBzaG91bGREaXNhYmxlQXNzaWduRGV2aWNlcyA9IGZhbHNlO1xuICBzaG91bGRTaG93QXNzZXRzUHJvcGVydGllcyA9IGZhbHNlO1xuICBkaXNwbGF5T3B0aW9uczogRGlzcGxheU9wdGlvbnM7XG4gIGN1c3RvbVByb3BlcnRpZXM6IElNYW5hZ2VkT2JqZWN0W10gPSBbXTtcblxuICBwcml2YXRlIGRhdGFTdWI6IFN1YnNjcmlwdGlvbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIHN1YkFzc2V0c1NlcnZpY2U6IFN1YkFzc2V0c1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb250ZXh0Um91dGVTZXJ2aWNlOiBDb250ZXh0Um91dGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcGVybWlzc2lvbnNTZXJ2aWNlOiBQZXJtaXNzaW9ucyxcbiAgICBASW5qZWN0KFNVQl9BU1NFVFNfQ09ORklHKSBwdWJsaWMgbW9kdWxlQ29uZmlnOiBTdWJBc3NldHNDb25maWdcbiAgKSB7XG4gICAgdGhpcy5kYXRhU3ViID0gdGhpcy5yb3V0ZS5wYXJlbnQuZGF0YS5zdWJzY3JpYmUoKHsgY29udGV4dERhdGEgfSkgPT4ge1xuICAgICAgdGhpcy5pbml0KGNvbnRleHREYXRhKTtcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIG5nT25Jbml0KCkge1xuICAgIHRoaXMuZGlzcGxheU9wdGlvbnMgPSB7XG4gICAgICBzdHJpcGVkOiB0cnVlLFxuICAgICAgYm9yZGVyZWQ6IGZhbHNlLFxuICAgICAgZ3JpZEhlYWRlcjogdHJ1ZSxcbiAgICAgIGZpbHRlcjogdHJ1ZVxuICAgIH07XG4gIH1cblxuICBhc3luYyBpbml0KGNvbnRleHREYXRhKSB7XG4gICAgdGhpcy5ncm91cCA9IHsgLi4uY29udGV4dERhdGEgfTtcbiAgICB0aGlzLnRpdGxlID0gdGhpcy5ncm91cC5uYW1lO1xuICAgIHRoaXMuY3VycmVudEdyb3VwSWQgPSB0aGlzLmdyb3VwLmlkO1xuICAgIHRoaXMuc2hvdWxkRGlzYWJsZUFkZEdyb3VwID0gIShhd2FpdCB0aGlzLnBlcm1pc3Npb25zU2VydmljZS5jYW5FZGl0KFxuICAgICAgW1Blcm1pc3Npb25zLlJPTEVfSU5WRU5UT1JZX0FETUlOLCBQZXJtaXNzaW9ucy5ST0xFX0lOVkVOVE9SWV9DUkVBVEVdLFxuICAgICAgdGhpcy5ncm91cFxuICAgICkpO1xuICAgIHRoaXMuc2hvdWxkRGlzYWJsZUFzc2lnbkRldmljZXMgPSAhKGF3YWl0IHRoaXMuc3ViQXNzZXRzU2VydmljZS5jYW5Bc3NpZ25EZXZpY2UodGhpcy5ncm91cCkpO1xuICAgIHRoaXMuY3VzdG9tUHJvcGVydGllcyA9IGF3YWl0IHRoaXMuc3ViQXNzZXRzU2VydmljZS5nZXRDdXN0b21Qcm9wZXJ0aWVzKHRoaXMuZ3JvdXApO1xuICAgIHRoaXMuc2hvdWxkU2hvd0Fzc2V0c1Byb3BlcnRpZXMgPVxuICAgICAgdGhpcy5tb2R1bGVDb25maWcuc2hvd1Byb3BlcnRpZXMgJiYgdGhpcy5jdXN0b21Qcm9wZXJ0aWVzLmxlbmd0aCA+IDA7XG4gIH1cblxuICBncm91cENoYW5nZShncm91cDogSU1hbmFnZWRPYmplY3QpOiB2b2lkIHtcbiAgICB0aGlzLmdyb3VwID0gZ3JvdXA7XG4gICAgdGhpcy50aXRsZSA9IGdyb3VwLm5hbWU7XG4gICAgdGhpcy5jb250ZXh0Um91dGVTZXJ2aWNlLnNldENvbnRleHQodGhpcy5yb3V0ZSwgZ3JvdXApO1xuICAgIHRoaXMuY29udGV4dFJvdXRlU2VydmljZS5yZWZyZXNoQ29udGV4dCgpO1xuICAgIHRoaXMucmVmcmVzaC5lbWl0KCk7XG4gIH1cblxuICBpc1NtYXJ0R3JvdXAoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3ViQXNzZXRzU2VydmljZS5pc1NtYXJ0R3JvdXAodGhpcy5ncm91cCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kYXRhU3ViKSB7XG4gICAgICB0aGlzLmRhdGFTdWIudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxjOHktdGl0bGU+XG4gIHt7IHRpdGxlIH19XG48L2M4eS10aXRsZT5cblxuPGM4eS1hY3Rpb24tYmFyLWl0ZW1cbiAgW3BsYWNlbWVudF09XCIncmlnaHQnXCJcbiAgKm5nSWY9XCIhaXNTbWFydEdyb3VwKCkgJiYgbW9kdWxlQ29uZmlnLnNob3dBZGRHcm91cEJ0blwiXG4+XG4gIDxidXR0b25cbiAgICBjbGFzcz1cImJ0biBidG4tbGlua1wiXG4gICAgdGl0bGU9XCJ7eyAnQWRkIGdyb3VwJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgKGNsaWNrKT1cInNob3dBZGRHcm91cCA9ICFzaG93QWRkR3JvdXBcIlxuICAgIFtkaXNhYmxlZF09XCJzaG91bGREaXNhYmxlQWRkR3JvdXBcIlxuICA+XG4gICAgPGlcbiAgICAgIGNsYXNzPVwibS1yLTRcIlxuICAgICAgYzh5SWNvbj1cInBsdXMtY2lyY2xlXCJcbiAgICA+PC9pPlxuICAgIDxzcGFuIHRyYW5zbGF0ZT5BZGQgZ3JvdXA8L3NwYW4+XG4gIDwvYnV0dG9uPlxuPC9jOHktYWN0aW9uLWJhci1pdGVtPlxuXG48Yzh5LWFjdGlvbi1iYXItaXRlbVxuICBbcGxhY2VtZW50XT1cIidyaWdodCdcIlxuICAqbmdJZj1cIiFpc1NtYXJ0R3JvdXAoKSAmJiBtb2R1bGVDb25maWcuc2hvd0Fzc2lnbkRldmljZUJ0blwiXG4+XG4gIDxidXR0b25cbiAgICBjbGFzcz1cImJ0biBidG4tbGlua1wiXG4gICAgdGl0bGU9XCJ7eyAnQXNzaWduIGRldmljZXMnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAoY2xpY2spPVwic2hvd0Fzc2lnbkRldmljZXMgPSAhc2hvd0Fzc2lnbkRldmljZXNcIlxuICAgIFtkaXNhYmxlZF09XCJzaG91bGREaXNhYmxlQXNzaWduRGV2aWNlc1wiXG4gID5cbiAgICA8aVxuICAgICAgY2xhc3M9XCJtLXItNFwiXG4gICAgICBjOHlJY29uPVwicGx1cy1jaXJjbGVcIlxuICAgID48L2k+XG4gICAgPHNwYW4gdHJhbnNsYXRlPkFzc2lnbiBkZXZpY2VzPC9zcGFuPlxuICA8L2J1dHRvbj5cbjwvYzh5LWFjdGlvbi1iYXItaXRlbT5cblxuPGM4eS1oZWxwIHNyYz1cIi91c2Vycy1ndWlkZS9jb2NrcGl0LyNtYW5hZ2luZy1hc3NldHNcIj48L2M4eS1oZWxwPlxuXG48ZGl2XG4gIGNsYXNzPVwiY2FyZCBjb250ZW50LWZ1bGxwYWdlXCJcbiAgW25nQ2xhc3NdPVwie1xuICAgICdjYXJkLS1ncmlkIGdyaWRfX2NvbC0tOC00LS1tZCBncmlkX19yb3ctLWZpdC1hdXRvJzogc2hvdWxkU2hvd0Fzc2V0c1Byb3BlcnRpZXMsXG4gICAgJ2QtZmxleCBkLWNvbCc6ICFzaG91bGRTaG93QXNzZXRzUHJvcGVydGllc1xuICB9XCJcbj5cbiAgPGM4eS1ncm91cC1pbmZvXG4gICAgY2xhc3M9XCJncmlkX19jb2wtLWZ1bGxzcGFuXCJcbiAgICAqbmdJZj1cIm1vZHVsZUNvbmZpZy5zaG93RGV0YWlsc1wiXG4gICAgW2dyb3VwXT1cImdyb3VwXCJcbiAgICAoZ3JvdXBDaGFuZ2UpPVwiZ3JvdXBDaGFuZ2UoJGV2ZW50KVwiXG4gID48L2M4eS1ncm91cC1pbmZvPlxuICA8Yzh5LXN1Yi1hc3NldHMtZ3JpZFxuICAgIGNsYXNzPVwiZC1jb250ZW50c1wiXG4gICAgW3JlZnJlc2hdPVwicmVmcmVzaFwiXG4gICAgW3BhcmVudC1ncm91cF09XCJncm91cFwiXG4gICAgW2ZpbHRlcmFibGVdPVwiZmlsdGVyYWJsZVwiXG4gICAgW2Rpc3BsYXlPcHRpb25zXT1cImRpc3BsYXlPcHRpb25zXCJcbiAgICBbY29sdW1uc0NvbmZpZ0tleV09XCInc3ViLWFzc2V0cy1ncmlkJ1wiXG4gICAgW2Jhc2VRdWVyeV09XCJtb2R1bGVDb25maWcuYmFzZVF1ZXJ5XCJcbiAgPjwvYzh5LXN1Yi1hc3NldHMtZ3JpZD5cbiAgPGRpdlxuICAgIGNsYXNzPVwiaW5uZXItc2Nyb2xsIGJnLWxldmVsLTFcIlxuICAgICpuZ0lmPVwic2hvdWxkU2hvd0Fzc2V0c1Byb3BlcnRpZXNcIlxuICA+XG4gICAgPGM4eS1hc3NldC1wcm9wZXJ0aWVzXG4gICAgICBjbGFzcz1cImQtY29udGVudHNcIlxuICAgICAgW3Byb3BlcnRpZXNdPVwiY3VzdG9tUHJvcGVydGllc1wiXG4gICAgICBbYXNzZXRdPVwiZ3JvdXBcIlxuICAgICAgKGFzc2V0Q2hhbmdlKT1cImdyb3VwQ2hhbmdlKCRldmVudClcIlxuICAgID48L2M4eS1hc3NldC1wcm9wZXJ0aWVzPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IFtuZ0NsYXNzXT1cInsgZHJhd2VyT3Blbjogc2hvd0FkZEdyb3VwIH1cIj5cbiAgPGRpdiBjbGFzcz1cImJvdHRvbS1kcmF3ZXJcIj5cbiAgICA8Yzh5LWFkZC1ncm91cFxuICAgICAgW2N1cnJlbnRHcm91cElkXT1cImN1cnJlbnRHcm91cElkXCJcbiAgICAgIFtyZWZyZXNoXT1cInJlZnJlc2hcIlxuICAgICAgKG9uQ2FuY2VsKT1cInNob3dBZGRHcm91cCA9IGZhbHNlXCJcbiAgICAgICpuZ0lmPVwic2hvd0FkZEdyb3VwXCJcbiAgICA+PC9jOHktYWRkLWdyb3VwPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IFtuZ0NsYXNzXT1cInsgZHJhd2VyT3Blbjogc2hvd0Fzc2lnbkRldmljZXMgfVwiPlxuICA8ZGl2IGNsYXNzPVwiYm90dG9tLWRyYXdlclwiPlxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZC1jb2wgbm8tYWxpZ24taXRlbXMgZml0LWhcIj5cbiAgICAgIDxjOHktYXNzaWduLWRldmljZXNcbiAgICAgICAgY2xhc3M9XCJkLWNvbnRlbnRzXCJcbiAgICAgICAgKG9uQ2FuY2VsKT1cInNob3dBc3NpZ25EZXZpY2VzID0gZmFsc2VcIlxuICAgICAgICBbcmVmcmVzaF09XCJyZWZyZXNoXCJcbiAgICAgICAgW2N1cnJlbnRHcm91cElkXT1cImN1cnJlbnRHcm91cElkXCJcbiAgICAgICAgKG9uU2hvd0NoaWxkRGV2aWNlcyk9XCJzaG93QXNzaWduQ2hpbGREZXZpY2VzID0gJGV2ZW50XCJcbiAgICAgICAgKHNlbGVjdGVkRGV2aWNlKT1cInNob3dDaGlsZHJlbkZvckRldmljZSA9ICRldmVudFwiXG4gICAgICAgICpuZ0lmPVwic2hvd0Fzc2lnbkRldmljZXNcIlxuICAgICAgPjwvYzh5LWFzc2lnbi1kZXZpY2VzPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IFtuZ0NsYXNzXT1cInsgZHJhd2VyT3Blbjogc2hvd0Fzc2lnbkNoaWxkRGV2aWNlcyB9XCI+XG4gIDxkaXYgY2xhc3M9XCJib3R0b20tZHJhd2VyIG0tdC00MFwiPlxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZC1jb2wgbm8tYWxpZ24taXRlbXMgZml0LWhcIj5cbiAgICAgIDxjOHktYXNzaWduLWNoaWxkLWRldmljZXNcbiAgICAgICAgY2xhc3M9XCJkLWNvbnRlbnRzXCJcbiAgICAgICAgKm5nSWY9XCJzaG93QXNzaWduQ2hpbGREZXZpY2VzXCJcbiAgICAgICAgKG9uQ2FuY2VsKT1cInNob3dBc3NpZ25DaGlsZERldmljZXMgPSBmYWxzZVwiXG4gICAgICAgIFtyZWZyZXNoXT1cInJlZnJlc2hcIlxuICAgICAgICBbY3VycmVudEdyb3VwSWRdPVwiY3VycmVudEdyb3VwSWRcIlxuICAgICAgICBbcGFyZW50RGV2aWNlXT1cInNob3dDaGlsZHJlbkZvckRldmljZVwiXG4gICAgICA+PC9jOHktYXNzaWduLWNoaWxkLWRldmljZXM+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ViLWFzc2V0cy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zdWItYXNzZXRzL3N1Yi1hc3NldHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vc3ViLWFzc2V0cy9zdWItYXNzZXRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWpELE9BQU8sRUFBRSxtQkFBbUIsRUFBa0IsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFdkYsT0FBTyxFQUFFLGlCQUFpQixFQUFtQixNQUFNLG9CQUFvQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7Ozs7QUFNeEQsTUFBTSxPQUFPLGtCQUFrQjtJQW9CN0IsWUFDVSxLQUFxQixFQUNyQixnQkFBa0MsRUFDbEMsbUJBQXdDLEVBQ3hDLGtCQUErQixFQUNMLFlBQTZCO1FBSnZELFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4Qyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQWE7UUFDTCxpQkFBWSxHQUFaLFlBQVksQ0FBaUI7UUFwQmpFLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFDZixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUNyQixzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFFMUIsMkJBQXNCLEdBQUcsS0FBSyxDQUFDO1FBQy9CLFlBQU8sR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNoRCxlQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLDBCQUFxQixHQUFHLEtBQUssQ0FBQztRQUM5QiwrQkFBMEIsR0FBRyxLQUFLLENBQUM7UUFDbkMsK0JBQTBCLEdBQUcsS0FBSyxDQUFDO1FBRW5DLHFCQUFnQixHQUFxQixFQUFFLENBQUM7UUFXdEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFO1lBQ2xFLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSyxDQUFDLFFBQVE7UUFDWixJQUFJLENBQUMsY0FBYyxHQUFHO1lBQ3BCLE9BQU8sRUFBRSxJQUFJO1lBQ2IsUUFBUSxFQUFFLEtBQUs7WUFDZixVQUFVLEVBQUUsSUFBSTtZQUNoQixNQUFNLEVBQUUsSUFBSTtTQUNiLENBQUM7SUFDSixDQUFDO0lBRUQsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXO1FBQ3BCLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxHQUFHLFdBQVcsRUFBRSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDN0IsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUNwQyxJQUFJLENBQUMscUJBQXFCLEdBQUcsQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FDbEU7WUFDRSxXQUFXLENBQUMsb0JBQW9CO1lBQ2hDLFdBQVcsQ0FBQyxxQkFBcUI7WUFDakMsV0FBVyxDQUFDLHlCQUF5QjtZQUNyQyxXQUFXLENBQUMsMEJBQTBCO1NBQ3ZDLEVBQ0QsSUFBSSxDQUFDLEtBQUssQ0FDWCxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsMEJBQTBCLEdBQUcsQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUM3RixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BGLElBQUksQ0FBQywwQkFBMEI7WUFDN0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFxQjtRQUMvQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDeEIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUMxQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNoQixJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQzVCO0lBQ0gsQ0FBQzs7K0dBNUVVLGtCQUFrQiw4SUF5Qm5CLGlCQUFpQjttR0F6QmhCLGtCQUFrQixzRENaL0IseXlHQXNIQTsyRkQxR2Esa0JBQWtCO2tCQUo5QixTQUFTOytCQUNFLGdCQUFnQjs7MEJBNEJ2QixNQUFNOzJCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBJTWFuYWdlZE9iamVjdCB9IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCB7IENvbnRleHRSb3V0ZVNlcnZpY2UsIERpc3BsYXlPcHRpb25zLCBQZXJtaXNzaW9ucyB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTVUJfQVNTRVRTX0NPTkZJRywgU3ViQXNzZXRzQ29uZmlnIH0gZnJvbSAnLi9zdWItYXNzZXRzLm1vZGVsJztcbmltcG9ydCB7IFN1YkFzc2V0c1NlcnZpY2UgfSBmcm9tICcuL3N1Yi1hc3NldHMuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1zdWItYXNzZXRzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N1Yi1hc3NldHMuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFN1YkFzc2V0c0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgZ3JvdXA6IElNYW5hZ2VkT2JqZWN0O1xuICBjdXJyZW50R3JvdXBJZDogc3RyaW5nO1xuICBzaG93Q2hpbGRyZW5Gb3JEZXZpY2U6IElNYW5hZ2VkT2JqZWN0O1xuICB0aXRsZTogc3RyaW5nO1xuICB0b2dnbGUgPSBmYWxzZTtcbiAgc2hvd0FkZEdyb3VwID0gZmFsc2U7XG4gIHNob3dBc3NpZ25EZXZpY2VzID0gZmFsc2U7XG4gIHJlcXVlc3RJblByb2dyZXNzOiBib29sZWFuO1xuICBzaG93QXNzaWduQ2hpbGREZXZpY2VzID0gZmFsc2U7XG4gIHJlZnJlc2g6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBmaWx0ZXJhYmxlID0gdHJ1ZTtcbiAgc2hvdWxkRGlzYWJsZUFkZEdyb3VwID0gZmFsc2U7XG4gIHNob3VsZERpc2FibGVBc3NpZ25EZXZpY2VzID0gZmFsc2U7XG4gIHNob3VsZFNob3dBc3NldHNQcm9wZXJ0aWVzID0gZmFsc2U7XG4gIGRpc3BsYXlPcHRpb25zOiBEaXNwbGF5T3B0aW9ucztcbiAgY3VzdG9tUHJvcGVydGllczogSU1hbmFnZWRPYmplY3RbXSA9IFtdO1xuXG4gIHByaXZhdGUgZGF0YVN1YjogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgc3ViQXNzZXRzU2VydmljZTogU3ViQXNzZXRzU2VydmljZSxcbiAgICBwcml2YXRlIGNvbnRleHRSb3V0ZVNlcnZpY2U6IENvbnRleHRSb3V0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwZXJtaXNzaW9uc1NlcnZpY2U6IFBlcm1pc3Npb25zLFxuICAgIEBJbmplY3QoU1VCX0FTU0VUU19DT05GSUcpIHB1YmxpYyBtb2R1bGVDb25maWc6IFN1YkFzc2V0c0NvbmZpZ1xuICApIHtcbiAgICB0aGlzLmRhdGFTdWIgPSB0aGlzLnJvdXRlLnBhcmVudC5kYXRhLnN1YnNjcmliZSgoeyBjb250ZXh0RGF0YSB9KSA9PiB7XG4gICAgICB0aGlzLmluaXQoY29udGV4dERhdGEpO1xuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5kaXNwbGF5T3B0aW9ucyA9IHtcbiAgICAgIHN0cmlwZWQ6IHRydWUsXG4gICAgICBib3JkZXJlZDogZmFsc2UsXG4gICAgICBncmlkSGVhZGVyOiB0cnVlLFxuICAgICAgZmlsdGVyOiB0cnVlXG4gICAgfTtcbiAgfVxuXG4gIGFzeW5jIGluaXQoY29udGV4dERhdGEpIHtcbiAgICB0aGlzLmdyb3VwID0geyAuLi5jb250ZXh0RGF0YSB9O1xuICAgIHRoaXMudGl0bGUgPSB0aGlzLmdyb3VwLm5hbWU7XG4gICAgdGhpcy5jdXJyZW50R3JvdXBJZCA9IHRoaXMuZ3JvdXAuaWQ7XG4gICAgdGhpcy5zaG91bGREaXNhYmxlQWRkR3JvdXAgPSAhKGF3YWl0IHRoaXMucGVybWlzc2lvbnNTZXJ2aWNlLmNhbkVkaXQoXG4gICAgICBbXG4gICAgICAgIFBlcm1pc3Npb25zLlJPTEVfSU5WRU5UT1JZX0FETUlOLFxuICAgICAgICBQZXJtaXNzaW9ucy5ST0xFX0lOVkVOVE9SWV9DUkVBVEUsXG4gICAgICAgIFBlcm1pc3Npb25zLlJPTEVfTUFOQUdFRF9PQkpFQ1RfQURNSU4sXG4gICAgICAgIFBlcm1pc3Npb25zLlJPTEVfTUFOQUdFRF9PQkpFQ1RfQ1JFQVRFXG4gICAgICBdLFxuICAgICAgdGhpcy5ncm91cFxuICAgICkpO1xuICAgIHRoaXMuc2hvdWxkRGlzYWJsZUFzc2lnbkRldmljZXMgPSAhKGF3YWl0IHRoaXMuc3ViQXNzZXRzU2VydmljZS5jYW5Bc3NpZ25EZXZpY2UodGhpcy5ncm91cCkpO1xuICAgIHRoaXMuY3VzdG9tUHJvcGVydGllcyA9IGF3YWl0IHRoaXMuc3ViQXNzZXRzU2VydmljZS5nZXRDdXN0b21Qcm9wZXJ0aWVzKHRoaXMuZ3JvdXApO1xuICAgIHRoaXMuc2hvdWxkU2hvd0Fzc2V0c1Byb3BlcnRpZXMgPVxuICAgICAgdGhpcy5tb2R1bGVDb25maWcuc2hvd1Byb3BlcnRpZXMgJiYgdGhpcy5jdXN0b21Qcm9wZXJ0aWVzLmxlbmd0aCA+IDA7XG4gIH1cblxuICBncm91cENoYW5nZShncm91cDogSU1hbmFnZWRPYmplY3QpOiB2b2lkIHtcbiAgICB0aGlzLmdyb3VwID0gZ3JvdXA7XG4gICAgdGhpcy50aXRsZSA9IGdyb3VwLm5hbWU7XG4gICAgdGhpcy5jb250ZXh0Um91dGVTZXJ2aWNlLnNldENvbnRleHQodGhpcy5yb3V0ZSwgZ3JvdXApO1xuICAgIHRoaXMuY29udGV4dFJvdXRlU2VydmljZS5yZWZyZXNoQ29udGV4dCgpO1xuICAgIHRoaXMucmVmcmVzaC5lbWl0KCk7XG4gIH1cblxuICBpc1NtYXJ0R3JvdXAoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3ViQXNzZXRzU2VydmljZS5pc1NtYXJ0R3JvdXAodGhpcy5ncm91cCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kYXRhU3ViKSB7XG4gICAgICB0aGlzLmRhdGFTdWIudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxjOHktdGl0bGU+XG4gIHt7IHRpdGxlIH19XG48L2M4eS10aXRsZT5cblxuPGM4eS1hY3Rpb24tYmFyLWl0ZW1cbiAgW3BsYWNlbWVudF09XCIncmlnaHQnXCJcbiAgKm5nSWY9XCIhaXNTbWFydEdyb3VwKCkgJiYgbW9kdWxlQ29uZmlnLnNob3dBZGRHcm91cEJ0blwiXG4+XG4gIDxidXR0b25cbiAgICBjbGFzcz1cImJ0biBidG4tbGlua1wiXG4gICAgdGl0bGU9XCJ7eyAnQWRkIGdyb3VwJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgKGNsaWNrKT1cInNob3dBZGRHcm91cCA9ICFzaG93QWRkR3JvdXBcIlxuICAgIFtkaXNhYmxlZF09XCJzaG91bGREaXNhYmxlQWRkR3JvdXBcIlxuICA+XG4gICAgPGlcbiAgICAgIGNsYXNzPVwibS1yLTRcIlxuICAgICAgYzh5SWNvbj1cInBsdXMtY2lyY2xlXCJcbiAgICA+PC9pPlxuICAgIDxzcGFuIHRyYW5zbGF0ZT5BZGQgZ3JvdXA8L3NwYW4+XG4gIDwvYnV0dG9uPlxuPC9jOHktYWN0aW9uLWJhci1pdGVtPlxuXG48Yzh5LWFjdGlvbi1iYXItaXRlbVxuICBbcGxhY2VtZW50XT1cIidyaWdodCdcIlxuICAqbmdJZj1cIiFpc1NtYXJ0R3JvdXAoKSAmJiBtb2R1bGVDb25maWcuc2hvd0Fzc2lnbkRldmljZUJ0blwiXG4+XG4gIDxidXR0b25cbiAgICBjbGFzcz1cImJ0biBidG4tbGlua1wiXG4gICAgdGl0bGU9XCJ7eyAnQXNzaWduIGRldmljZXMnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAoY2xpY2spPVwic2hvd0Fzc2lnbkRldmljZXMgPSAhc2hvd0Fzc2lnbkRldmljZXNcIlxuICAgIFtkaXNhYmxlZF09XCJzaG91bGREaXNhYmxlQXNzaWduRGV2aWNlc1wiXG4gID5cbiAgICA8aVxuICAgICAgY2xhc3M9XCJtLXItNFwiXG4gICAgICBjOHlJY29uPVwicGx1cy1jaXJjbGVcIlxuICAgID48L2k+XG4gICAgPHNwYW4gdHJhbnNsYXRlPkFzc2lnbiBkZXZpY2VzPC9zcGFuPlxuICA8L2J1dHRvbj5cbjwvYzh5LWFjdGlvbi1iYXItaXRlbT5cblxuPGM4eS1oZWxwIHNyYz1cIi91c2Vycy1ndWlkZS9jb2NrcGl0LyNtYW5hZ2luZy1hc3NldHNcIj48L2M4eS1oZWxwPlxuXG48ZGl2XG4gIGNsYXNzPVwiY2FyZCBjb250ZW50LWZ1bGxwYWdlXCJcbiAgW25nQ2xhc3NdPVwie1xuICAgICdjYXJkLS1ncmlkIGdyaWRfX2NvbC0tOC00LS1tZCBncmlkX19yb3ctLWZpdC1hdXRvJzogc2hvdWxkU2hvd0Fzc2V0c1Byb3BlcnRpZXMsXG4gICAgJ2QtZmxleCBkLWNvbCc6ICFzaG91bGRTaG93QXNzZXRzUHJvcGVydGllc1xuICB9XCJcbj5cbiAgPGM4eS1ncm91cC1pbmZvXG4gICAgY2xhc3M9XCJncmlkX19jb2wtLWZ1bGxzcGFuXCJcbiAgICAqbmdJZj1cIm1vZHVsZUNvbmZpZy5zaG93RGV0YWlsc1wiXG4gICAgW2dyb3VwXT1cImdyb3VwXCJcbiAgICAoZ3JvdXBDaGFuZ2UpPVwiZ3JvdXBDaGFuZ2UoJGV2ZW50KVwiXG4gID48L2M4eS1ncm91cC1pbmZvPlxuICA8Yzh5LXN1Yi1hc3NldHMtZ3JpZFxuICAgIGNsYXNzPVwiZC1jb250ZW50c1wiXG4gICAgW3JlZnJlc2hdPVwicmVmcmVzaFwiXG4gICAgW3BhcmVudC1ncm91cF09XCJncm91cFwiXG4gICAgW2ZpbHRlcmFibGVdPVwiZmlsdGVyYWJsZVwiXG4gICAgW2Rpc3BsYXlPcHRpb25zXT1cImRpc3BsYXlPcHRpb25zXCJcbiAgICBbY29sdW1uc0NvbmZpZ0tleV09XCInc3ViLWFzc2V0cy1ncmlkJ1wiXG4gICAgW2Jhc2VRdWVyeV09XCJtb2R1bGVDb25maWcuYmFzZVF1ZXJ5XCJcbiAgPjwvYzh5LXN1Yi1hc3NldHMtZ3JpZD5cbiAgPGRpdlxuICAgIGNsYXNzPVwiaW5uZXItc2Nyb2xsIGJnLWxldmVsLTFcIlxuICAgICpuZ0lmPVwic2hvdWxkU2hvd0Fzc2V0c1Byb3BlcnRpZXNcIlxuICA+XG4gICAgPGM4eS1hc3NldC1wcm9wZXJ0aWVzXG4gICAgICBjbGFzcz1cImQtY29udGVudHNcIlxuICAgICAgW3Byb3BlcnRpZXNdPVwiY3VzdG9tUHJvcGVydGllc1wiXG4gICAgICBbYXNzZXRdPVwiZ3JvdXBcIlxuICAgICAgKGFzc2V0Q2hhbmdlKT1cImdyb3VwQ2hhbmdlKCRldmVudClcIlxuICAgID48L2M4eS1hc3NldC1wcm9wZXJ0aWVzPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IFtuZ0NsYXNzXT1cInsgZHJhd2VyT3Blbjogc2hvd0FkZEdyb3VwIH1cIj5cbiAgPGRpdiBjbGFzcz1cImJvdHRvbS1kcmF3ZXJcIj5cbiAgICA8Yzh5LWFkZC1ncm91cFxuICAgICAgW2N1cnJlbnRHcm91cElkXT1cImN1cnJlbnRHcm91cElkXCJcbiAgICAgIFtyZWZyZXNoXT1cInJlZnJlc2hcIlxuICAgICAgKG9uQ2FuY2VsKT1cInNob3dBZGRHcm91cCA9IGZhbHNlXCJcbiAgICAgICpuZ0lmPVwic2hvd0FkZEdyb3VwXCJcbiAgICA+PC9jOHktYWRkLWdyb3VwPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IFtuZ0NsYXNzXT1cInsgZHJhd2VyT3Blbjogc2hvd0Fzc2lnbkRldmljZXMgfVwiPlxuICA8ZGl2IGNsYXNzPVwiYm90dG9tLWRyYXdlclwiPlxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZC1jb2wgbm8tYWxpZ24taXRlbXMgZml0LWhcIj5cbiAgICAgIDxjOHktYXNzaWduLWRldmljZXNcbiAgICAgICAgY2xhc3M9XCJkLWNvbnRlbnRzXCJcbiAgICAgICAgKG9uQ2FuY2VsKT1cInNob3dBc3NpZ25EZXZpY2VzID0gZmFsc2VcIlxuICAgICAgICBbcmVmcmVzaF09XCJyZWZyZXNoXCJcbiAgICAgICAgW2N1cnJlbnRHcm91cElkXT1cImN1cnJlbnRHcm91cElkXCJcbiAgICAgICAgKG9uU2hvd0NoaWxkRGV2aWNlcyk9XCJzaG93QXNzaWduQ2hpbGREZXZpY2VzID0gJGV2ZW50XCJcbiAgICAgICAgKHNlbGVjdGVkRGV2aWNlKT1cInNob3dDaGlsZHJlbkZvckRldmljZSA9ICRldmVudFwiXG4gICAgICAgICpuZ0lmPVwic2hvd0Fzc2lnbkRldmljZXNcIlxuICAgICAgPjwvYzh5LWFzc2lnbi1kZXZpY2VzPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IFtuZ0NsYXNzXT1cInsgZHJhd2VyT3Blbjogc2hvd0Fzc2lnbkNoaWxkRGV2aWNlcyB9XCI+XG4gIDxkaXYgY2xhc3M9XCJib3R0b20tZHJhd2VyIG0tdC00MFwiPlxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZC1jb2wgbm8tYWxpZ24taXRlbXMgZml0LWhcIj5cbiAgICAgIDxjOHktYXNzaWduLWNoaWxkLWRldmljZXNcbiAgICAgICAgY2xhc3M9XCJkLWNvbnRlbnRzXCJcbiAgICAgICAgKm5nSWY9XCJzaG93QXNzaWduQ2hpbGREZXZpY2VzXCJcbiAgICAgICAgKG9uQ2FuY2VsKT1cInNob3dBc3NpZ25DaGlsZERldmljZXMgPSBmYWxzZVwiXG4gICAgICAgIFtyZWZyZXNoXT1cInJlZnJlc2hcIlxuICAgICAgICBbY3VycmVudEdyb3VwSWRdPVwiY3VycmVudEdyb3VwSWRcIlxuICAgICAgICBbcGFyZW50RGV2aWNlXT1cInNob3dDaGlsZHJlbkZvckRldmljZVwiXG4gICAgICA+PC9jOHktYXNzaWduLWNoaWxkLWRldmljZXM+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=