@c8y/ngx-components 1006.6.36 → 1006.6.40
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/c8y-ngx-components-connectivity.umd.js +1 -1
- package/bundles/c8y-ngx-components-connectivity.umd.js.map +1 -1
- package/bundles/c8y-ngx-components-connectivity.umd.min.js +1 -1
- package/bundles/c8y-ngx-components-connectivity.umd.min.js.map +1 -1
- package/bundles/c8y-ngx-components-context-dashboard.umd.js +1 -1
- package/bundles/c8y-ngx-components-context-dashboard.umd.js.map +1 -1
- package/bundles/c8y-ngx-components-context-dashboard.umd.min.js +1 -1
- package/bundles/c8y-ngx-components-context-dashboard.umd.min.js.map +1 -1
- package/bundles/c8y-ngx-components-repository.umd.js +1 -1
- package/bundles/c8y-ngx-components-repository.umd.js.map +1 -1
- package/bundles/c8y-ngx-components-repository.umd.min.js +1 -1
- package/bundles/c8y-ngx-components-repository.umd.min.js.map +1 -1
- package/bundles/c8y-ngx-components-sensor-phone.umd.js +1 -1
- package/bundles/c8y-ngx-components-sensor-phone.umd.js.map +1 -1
- package/bundles/c8y-ngx-components-sensor-phone.umd.min.js +1 -1
- package/bundles/c8y-ngx-components-sensor-phone.umd.min.js.map +1 -1
- package/bundles/c8y-ngx-components.umd.js +400 -131
- package/bundles/c8y-ngx-components.umd.js.map +1 -1
- package/bundles/c8y-ngx-components.umd.min.js +2 -2
- package/bundles/c8y-ngx-components.umd.min.js.map +1 -1
- package/c8y-ngx-components.d.ts +90 -87
- package/c8y-ngx-components.metadata.json +1 -1
- package/connectivity/c8y-ngx-components-connectivity.metadata.json +1 -1
- package/context-dashboard/c8y-ngx-components-context-dashboard.metadata.json +1 -1
- package/core/authentication/new-password.component.d.ts +8 -6
- package/core/docs/guide-docs.component.d.ts +25 -3
- package/core/forms/validation-pattern.d.ts +1 -0
- package/core/i18n/force-html-translate.directive.d.ts +32 -0
- package/core/login/change-password.component.d.ts +1 -1
- package/core/login/login.service.d.ts +15 -2
- package/core/login/password-strength-validator.directive.d.ts +9 -0
- package/core/login/strength-validator-service.d.ts +7 -0
- package/core/user/user-edit.component.d.ts +4 -2
- package/esm2015/c8y-ngx-components.js +90 -87
- package/esm2015/connectivity/impact/impact-provider-settings.component.js +2 -2
- package/esm2015/context-dashboard/legacy-welcome/legacy-welcome.component.js +2 -2
- package/esm2015/core/authentication/new-password.component.js +15 -20
- package/esm2015/core/dashboard/widgets-dashboard.component.js +2 -2
- package/esm2015/core/docs/guide-docs.component.js +69 -4
- package/esm2015/core/forms/validation-pattern.js +2 -1
- package/esm2015/core/i18n/force-html-translate.directive.js +99 -0
- package/esm2015/core/i18n/i18n.module.js +5 -3
- package/esm2015/core/i18n/pattern-messages.data.js +2 -2
- package/esm2015/core/login/change-password.component.js +5 -5
- package/esm2015/core/login/credentials.component.js +2 -2
- package/esm2015/core/login/login.module.js +4 -2
- package/esm2015/core/login/login.service.js +40 -6
- package/esm2015/core/login/password-strength-validator.directive.js +32 -0
- package/esm2015/core/login/strength-validator-service.js +28 -0
- package/esm2015/core/user/user-edit.component.js +10 -5
- package/esm2015/repository/configuration/configuration-list.component.js +2 -2
- package/esm2015/sensor-phone/sensor-phone-modal.component.js +2 -2
- package/esm5/c8y-ngx-components.js +90 -87
- package/esm5/connectivity/impact/impact-provider-settings.component.js +2 -2
- package/esm5/context-dashboard/legacy-welcome/legacy-welcome.component.js +2 -2
- package/esm5/core/authentication/new-password.component.js +21 -25
- package/esm5/core/dashboard/widgets-dashboard.component.js +2 -2
- package/esm5/core/docs/guide-docs.component.js +72 -4
- package/esm5/core/forms/validation-pattern.js +2 -1
- package/esm5/core/i18n/force-html-translate.directive.js +105 -0
- package/esm5/core/i18n/i18n.module.js +5 -3
- package/esm5/core/i18n/pattern-messages.data.js +2 -2
- package/esm5/core/login/change-password.component.js +5 -5
- package/esm5/core/login/credentials.component.js +2 -2
- package/esm5/core/login/login.module.js +4 -2
- package/esm5/core/login/login.service.js +43 -6
- package/esm5/core/login/password-strength-validator.directive.js +38 -0
- package/esm5/core/login/strength-validator-service.js +29 -0
- package/esm5/core/user/user-edit.component.js +19 -9
- package/esm5/repository/configuration/configuration-list.component.js +2 -2
- package/esm5/sensor-phone/sensor-phone-modal.component.js +2 -2
- package/fesm2015/c8y-ngx-components-connectivity.js +1 -1
- package/fesm2015/c8y-ngx-components-connectivity.js.map +1 -1
- package/fesm2015/c8y-ngx-components-context-dashboard.js +1 -1
- package/fesm2015/c8y-ngx-components-context-dashboard.js.map +1 -1
- package/fesm2015/c8y-ngx-components-repository.js +1 -1
- package/fesm2015/c8y-ngx-components-repository.js.map +1 -1
- package/fesm2015/c8y-ngx-components-sensor-phone.js +1 -1
- package/fesm2015/c8y-ngx-components-sensor-phone.js.map +1 -1
- package/fesm2015/c8y-ngx-components.js +281 -40
- package/fesm2015/c8y-ngx-components.js.map +1 -1
- package/fesm5/c8y-ngx-components-connectivity.js +1 -1
- package/fesm5/c8y-ngx-components-connectivity.js.map +1 -1
- package/fesm5/c8y-ngx-components-context-dashboard.js +1 -1
- package/fesm5/c8y-ngx-components-context-dashboard.js.map +1 -1
- package/fesm5/c8y-ngx-components-repository.js +1 -1
- package/fesm5/c8y-ngx-components-repository.js.map +1 -1
- package/fesm5/c8y-ngx-components-sensor-phone.js +1 -1
- package/fesm5/c8y-ngx-components-sensor-phone.js.map +1 -1
- package/fesm5/c8y-ngx-components.js +315 -49
- package/fesm5/c8y-ngx-components.js.map +1 -1
- package/locales/de.po +71 -60
- package/locales/es.po +120 -85
- package/locales/fr.po +107 -72
- package/locales/ja_JP.po +89 -78
- package/locales/ko.po +92 -57
- package/locales/locales.pot +9 -9
- package/locales/nl.po +95 -60
- package/locales/pl.po +88 -53
- package/locales/pt_BR.po +174 -138
- package/locales/ru.po +120 -85
- package/locales/zh_CN.po +87 -52
- package/package.json +2 -2
- package/repository/c8y-ngx-components-repository.metadata.json +1 -1
- package/sensor-phone/c8y-ngx-components-sensor-phone.metadata.json +1 -1
|
@@ -1067,7 +1067,7 @@ export const MESSAGES = {
|
|
|
1067
1067
|
}
|
|
1068
1068
|
},
|
|
1069
1069
|
'^Error updating tenant! Cannot insert second configuration for Password code grant internal/Bad Request$': {
|
|
1070
|
-
gettext: gettext('This login mode was already set by
|
|
1070
|
+
gettext: gettext('This login mode was already set by another administrator. Refresh the page to update the data.')
|
|
1071
1071
|
},
|
|
1072
1072
|
};
|
|
1073
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0dGVybi1tZXNzYWdlcy5kYXRhLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGM4eS9uZ3gtY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvcmUvaTE4bi9wYXR0ZXJuLW1lc3NhZ2VzLmRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0NBQW9DO0FBQ3BDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFcEMsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHO0lBQ3RCLG9CQUFvQixFQUFFO1FBQ3BCLE9BQU8sRUFBRSxPQUFPLENBQUMsZ0JBQWdCLENBQUM7S0FDbkM7SUFDRCxpQkFBaUIsRUFBRTtRQUNqQixPQUFPLEVBQUUsT0FBTyxDQUFDLGVBQWUsQ0FBQztLQUNsQztJQUNELGlCQUFpQixFQUFFO1FBQ2pCLE9BQU8sRUFBRSxPQUFPLENBQUMsZUFBZSxDQUFDO0tBQ2xDO0lBQ0QsNENBQTRDLEVBQUU7UUFDNUMsT0FBTyxFQUFFLE9BQU8sQ0FBQywyREFBMkQsQ0FBQztLQUM5RTtJQUNELDZDQUE2QyxFQUFFO1FBQzdDLE9BQU8sRUFBRSxPQUFPLENBQUMsNkNBQTZDLENBQUM7S0FDaEU7SUFDRCxxRUFBcUUsRUFBRTtRQUNyRSxPQUFPLEVBQUUsT0FBTyxDQUFDLDhEQUE4RCxDQUFDO1FBQ2hGLFlBQVksRUFBRTtZQUNaLE1BQU0sRUFBRSxJQUFJO1NBQ2I7S0FDRjtJQUNELCtFQUErRSxFQUFFO1FBQy9FLE9BQU8sRUFBRSxPQUFPLENBQUMsZ0dBQWdHLENBQUM7UUFDbEgsWUFBWSxFQUFFO1lBQ1osTUFBTSxFQUFFLElBQUk7WUFDWixVQUFVLEVBQUUsSUFBSTtTQUNqQjtLQUNGO0lBQ0QsbURBQW1ELEVBQUU7UUFDbkQsT0FBTyxFQUFFLE9BQU8sQ0FBQyx1REFBdUQsQ0FBQztLQUMxRTtJQUNELGtDQUFrQyxFQUFFO1FBQ2xDLE9BQU8sRUFBRSxPQUFPLENBQUMsZ0NBQWdDLENBQUM7S0FDbkQ7SUFDRCwyRUFB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QUN4QixNQUFNO0lBQ04sS0FBSztJQUNMLDBDQUEwQyxFQUFFO1FBQzFDLE9BQU8sRUFBRSxPQUFPLENBQUMsb0VBQW9FLENBQUM7UUFDdEYsWUFBWSxFQUFFO1lBQ1osY0FBYyxFQUFFLElBQUk7WUFDcEIsV0FBVyxFQUFFLElBQUk7U0FDbEI7S0FDRjtJQUNELHFCQUFxQixFQUFFO1FBQ3JCLE9BQU8sRUFBRSxPQUFPLENBQUMsOEJBQThCLENBQUM7UUFDaEQsWUFBWSxFQUFFO1lBQ1osU0FBUyxFQUFFLElBQUk7U0FDaEI7S0FDRjtJQUNELHFEQUFxRCxFQUFFO1FBQ3JELE9BQU8sRUFBRSxPQUFPLENBQUMsaURBQWlELENBQUM7UUFDbkUsWUFBWSxFQUFFO1lBQ1osU0FBUyxFQUFFLElBQUk7U0FDaEI7S0FDRjtJQUNELDBHQUEwRyxFQUFFO1FBQzFHLE9BQU8sRUFBRSxPQUFPLENBQUMsb0ZBQW9GLENBQUM7S0FDdkc7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogdHNsaW50OmRpc2FibGU6bWF4LWxpbmUtbGVuZ3RoICovXG5pbXBvcnQgeyBnZXR0ZXh0IH0gZnJvbSAnLi9nZXR0ZXh0JztcblxuZXhwb3J0IGNvbnN0IE1FU1NBR0VTID0ge1xuICAnXkFjY2VzcyBpcyBkZW5pZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0FjY2VzcyBkZW5pZWQuJylcbiAgfSxcbiAgJ15BbGFybSBjcmVhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdBbGFybSBjcmVhdGVkJylcbiAgfSxcbiAgJ15BbGFybSB1cGRhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdBbGFybSB1cGRhdGVkJylcbiAgfSxcbiAgJ15BUEkgaXMgbm90IGF2YWlsYWJsZSB3aXRoIHRoZSBuZXcgZG9tYWluJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDb3VsZCBub3QgYWN0aXZhdGUgY3VzdG9tIGRvbWFpbi4gRE5TIHNldHVwIGlzIGluY29ycmVjdC4nKVxuICB9LFxuICAnXkFwcGxpY2F0aW9uIHdpdGggZ2l2ZW4gbmFtZSBhbHJlYWR5IGV4aXN0JCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdBcHBsaWNhdGlvbiB3aXRoIGdpdmVuIG5hbWUgYWxyZWFkeSBleGlzdHMuJylcbiAgfSxcbiAgJ15BcHBsaWNhdGlvbiB3aXRoIGlkICguKz8pIGlzIGFscmVhZHkgYXNzaWduZWQgdG8gdGhlIHRlbmFudCAoLis/KSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVGhpcyBhcHBsaWNhdGlvbiBpcyBhbHJlYWR5IGFzc2lnbmVkIHRvIHRlbmFudCBcInt7dGVuYW50fX1cIi4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRlbmFudDogJyQyJ1xuICAgIH1cbiAgfSxcbiAgJ14oLispcHBsaWNhdGlvbiBmb3IgdGVuYW50ICguKykgd2l0aCBwcm9wZXJ0aWVzIFxcXFwoICguKz8pIFxcXFwpIGFscmVhZHkgZXhpc3RzJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdBcHBsaWNhdGlvbiBmb3IgdGVuYW50IFwie3t0ZW5hbnR9fVwiIHdpdGggdGhlIGZvbGxvd2luZyB2YWx1ZXMgKHt7dmFsdWVzTGlzdH19KSBhbHJlYWR5IGV4aXN0cy4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRlbmFudDogJyQyJyxcbiAgICAgIHZhbHVlc0xpc3Q6ICckMydcbiAgICB9XG4gIH0sXG4gICdeQXV0aGVudGljYXRpb24gZmFpbGVkISA6IFVzZXIgYWNjb3VudCBpcyBsb2NrZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0F1dGhlbnRpY2F0aW9uIGZhaWxlZCBkdWUgdG86IHVzZXIgYWNjb3VudCBpcyBsb2NrZWQuJylcbiAgfSxcbiAgJ15BdmFpbGFiaWxpdHkgbW9uaXRvcmluZyByZWNvcmQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0F2YWlsYWJpbGl0eSBtb25pdG9yaW5nIHJlY29yZCcpXG4gIH0sXG4gICdeQ2FuIG5vdCBhY3RpdmF0ZSBhIGNlcnRpZmljYXRlIHdoaWNoIGlzIGVpdGhlciBleHBpcmVkIG9yIG5vdCB5ZXQgdmFsaWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0Nhbm5vdCBhY3RpdmF0ZSBhIGNlcnRpZmljYXRlIHdoaWNoIGlzIGVpdGhlciBleHBpcmVkIG9yIG5vdCB5ZXQgdmFsaWQuJylcbiAgfSxcbiAgJ15DYW5ub3QgYWRkIGNlcnRpZmljYXRlIC0gY2VydGlmaWNhdGUgd2l0aCAoLis/KSBmaW5nZXJwcmludCBhbHJlYWR5IGV4aXN0cy4gOiBDZXJ0aWZpY2F0ZSB3aXRoICguKz8pIGZpbmdlcnByaW50IGFscmVhZHkgZXhpc3RzLic6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDb3VsZCBub3QgYWRkIGNlcnRpZmljYXRlLiBDZXJ0aWZpY2F0ZSB3aXRoIHt7ZmluZ2VycHJpbnR9fSBmaW5nZXJwcmludCBhbHJlYWR5IGV4aXN0cy4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIGZpbmdlcnByaW50OiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkNhbm5vdCBjaGFuZ2UgcGFzc3dvcmQuIDogUHJvdmlkZWQgdG9rZW4gZG9lcyBub3QgZXhpc3QuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDYW5ub3QgY2hhbmdlIHBhc3N3b3JkOiBwcm92aWRlZCB0b2tlbiBpcyBpbnZhbGlkLicpXG4gIH0sXG4gICdeQ2Fubm90IGRlcGxveSBtb2R1bGUgKC4qKSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ2Fubm90IGRlcGxveSBtb2R1bGUgZHVlIHRvIGVycm9yOiBcInt7IGVycm9yTWVzc2FnZSB8IHRyYW5zbGF0ZSB9fVwiLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgZXJyb3JNZXNzYWdlOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkNhbm5vdCBkZXBsb3kgbW9kdWxlICguKz8pISA6IENvbXBpbGF0aW9uIGZhaWxlZCBpbiBtb2R1bGUgXFwnKC4rPylcXCcgaW4gZXhwcmVzc2lvbiBcXCcoLis/KVxcJyA6IEluY29ycmVjdCBzeW50YXggbmVhciBcXCcoLis/KVxcJyBhdCBsaW5lIChcXFxcZCspIGNvbHVtbiAoXFxcXGQrKSBcXFxcWyhbXFxcXFNcXFxcc10rPylcXFxcXSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ291bGQgbm90IGRlcGxveSBtb2R1bGUgXCJ7e21vZHVsZU5hbWV9fVwiLiBDb21waWxhdGlvbiBmYWlsZWQgaW4gZXhwcmVzc2lvbiBcInt7ZXhwcmVzc2lvbn19XCI6IGluY29ycmVjdCBzeW50YXggbmVhciBcInt7aW5jb3JyZWN0RXhwcmVzc2lvbn19XCIgYXQgbGluZSB7e2xpbmV9fSBjb2x1bW4ge3tjb2x1bW59fS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG1vZHVsZU5hbWU6ICckMScsXG4gICAgICBleHByZXNzaW9uOiAnJDMnLFxuICAgICAgaW5jb3JyZWN0RXhwcmVzc2lvbjogJyQ0JyxcbiAgICAgIGxpbmU6ICckNScsXG4gICAgICBjb2x1bW46ICckNidcbiAgICB9XG4gIH0sXG4gICdeQ2Fubm90IGRlcGxveSBtb2R1bGUgKC4rPykhIDogQ29tcGlsYXRpb24gZmFpbGVkIGluIG1vZHVsZSBcXCcoLis/KVxcJyBpbiBleHByZXNzaW9uIFxcJyguKz8pXFwnIDogSW5jb3JyZWN0IHN5bnRheCBuZWFyIFxcJyguKz8pXFwnIGF0IGxpbmUgKFxcXFxkKykgY29sdW1uIChcXFxcZCspIG5lYXIgcmVzZXJ2ZWQga2V5d29yZCBcXCcoLis/KVxcJyBcXFxcWyhbXFxcXFNcXFxcc10rPylcXFxcXSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ291bGQgbm90IGRlcGxveSBtb2R1bGUgXCJ7e21vZHVsZU5hbWV9fVwiLiBDb21waWxhdGlvbiBmYWlsZWQgaW4gZXhwcmVzc2lvbiBcInt7ZXhwcmVzc2lvbn19XCI6IGluY29ycmVjdCBzeW50YXggbmVhciBcInt7aW5jb3JyZWN0RXhwcmVzc2lvbn19XCIgYXQgbGluZSB7e2xpbmV9fSBjb2x1bW4ge3tjb2x1bW59fSBuZWFyIHJlc2VydmVkIGtleXdvcmQgXCJ7e2tleXdvcmR9fVwiLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbW9kdWxlTmFtZTogJyQxJyxcbiAgICAgIGV4cHJlc3Npb246ICckMycsXG4gICAgICBpbmNvcnJlY3RFeHByZXNzaW9uOiAnJDQnLFxuICAgICAgbGluZTogJyQ1JyxcbiAgICAgIGNvbHVtbjogJyQ2JyxcbiAgICAgIGtleXdvcmQ6ICckNydcbiAgICB9XG4gIH0sXG4gICdeQ2Fubm90IGRlcGxveSBtb2R1bGUgKC4rPykhIDogQ29tcGlsYXRpb24gZmFpbGVkIGluIG1vZHVsZSBcXCcoLis/KVxcJyBpbiBleHByZXNzaW9uIFxcJyguKz8pXFwnIDogSW5jb3JyZWN0IHN5bnRheCBuZWFyIFxcJyguKz8pXFwnIGF0IGxpbmUgKFxcXFxkKykgY29sdW1uIChcXFxcZCspLCBwbGVhc2UgY2hlY2sgdGhlIHdoZXJlIGNsYXVzZSBcXFxcWyhbXFxcXFNcXFxcc10rPylcXFxcXSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ291bGQgbm90IGRlcGxveSBtb2R1bGUgXCJ7e21vZHVsZU5hbWV9fVwiLiBDb21waWxhdGlvbiBmYWlsZWQgaW4gZXhwcmVzc2lvbiBcInt7ZXhwcmVzc2lvbn19XCI6IGluY29ycmVjdCBzeW50YXggbmVhciBcInt7aW5jb3JyZWN0RXhwcmVzc2lvbn19XCIgYXQgbGluZSB7e2xpbmV9fSBjb2x1bW4ge3tjb2x1bW59fSwgY2hlY2sgXCJ3aGVyZVwiIGNsYXVzZS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG1vZHVsZU5hbWU6ICckMScsXG4gICAgICBleHByZXNzaW9uOiAnJDMnLFxuICAgICAgaW5jb3JyZWN0RXhwcmVzc2lvbjogJyQ0JyxcbiAgICAgIGxpbmU6ICckNScsXG4gICAgICBjb2x1bW46ICckNidcbiAgICB9XG4gIH0sXG4gICdeQ2Fubm90IGRlcGxveSBtb2R1bGUgKC4rPykhIDogRGVwbG95bWVudCBmYWlsZWQgaW4gbW9kdWxlIFxcJyguKz8pXFwnIGluIGV4cHJlc3Npb24gXFwnKC4rPylcXCcgOiBFeGNlcHRpb24gY29tcGlsaW5nIHNjcmlwdCBcXCcoLis/KVxcJyBvZiBkaWFsZWN0IFxcJyguKz8pXFwnOiBtaXNzaW5nICguKz8pIGJlZm9yZSBzdGF0ZW1lbnQgXFxcXCgoLis/KVxcXFwpIFxcXFxbKFtcXFxcU1xcXFxzXSs/KVxcXFxdJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDb3VsZCBub3QgZGVwbG95IG1vZHVsZSBcInt7bW9kdWxlTmFtZX19XCIuIENvbXBpbGF0aW9uIGZhaWxlZCBpbiBleHByZXNzaW9uIFwie3tleHByZXNzaW9ufX1cIjogZXhjZXB0aW9uIGNvbXBpbGluZyBzY3JpcHQgXCJ7e3NjcmlwdE5hbWV9fVwiIG9mIGRpYWxlY3QgXCJ7e3NjcmlwdERpYWxlY3R9fVwiOiBtaXNzaW5nIFwie3ttaXNzaW5nU3ludGF4fX1cIiBiZWZvcmUgc3RhdGVtZW50IFwie3thZmZlY3RlZFN0YXRlbWVudH19XCIuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBtb2R1bGVOYW1lOiAnJDEnLFxuICAgICAgZXhwcmVzc2lvbjogJyQzJyxcbiAgICAgIHNjcmlwdE5hbWU6ICckNCcsXG4gICAgICBzY3JpcHREaWFsZWN0OiAnJDUnLFxuICAgICAgbWlzc2luZ1N5bnRheDogJyQ2JyxcbiAgICAgIGFmZmVjdGVkU3RhdGVtZW50OiAnJDcnXG4gICAgfVxuICB9LFxuICAnXkNhbm5vdCBleGVjdXRlIGJ1bGsgb3BlcmF0aW9uIG9uIGVtcHR5IGdyb3VwLiBHcm91cCB3aXRoIGlkPVxcJyhcXFxcZCs/KVxcJyBkb2VzblxcJ3QgaGF2ZSBjaGlsZCBhc3NldHMuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDb3VsZCBub3QgZXhlY3V0ZSBidWxrIG9wZXJhdGlvbiBvbiBhbiBlbXB0eSBncm91cC4gR3JvdXAgd2l0aCBJRCBcInt7Z3JvdXBJZH19XCIgaGFzIG5vIGNoaWxkIGFzc2V0cy4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIGdyb3VwSWQ6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeQ2Fubm90IGV4ZWN1dGUgYnVsayBvcGVyYXRpb24gb24gZW1wdHkgZ3JvdXAuIER5bmFtaWNHcm91cCB3aXRoIGlkPVxcJyhcXFxcZCs/KVxcJyBkb2VzblxcJ3QgaGF2ZSBjaGlsZCBhc3NldHMkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NvdWxkIG5vdCBleGVjdXRlIGJ1bGsgb3BlcmF0aW9uIG9uIGFuIGVtcHR5IGdyb3VwLiBTbWFydCBncm91cCB3aXRoIElEIFwie3tncm91cElkfX1cIiBoYXMgbm8gY2hpbGQgYXNzZXRzLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgZ3JvdXBJZDogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15DYW5ub3QgcGFyc2UgWDUwOSBjZXJ0aWZpY2F0ZS4gOiBDb3VsZCBub3QgcGFyc2UgY2VydGlmaWNhdGU6ICguKz8pJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDb3VsZCBub3QgcGFyc2UgWC41MDkgY2VydGlmaWNhdGU6IHt7IGZhaWx1cmVSZWFzb24gfCB0cmFuc2xhdGUgfX0uJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBmYWlsdXJlUmVhc29uOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkNhbm5vdCByZXNjaGVkdWxlIGJ1bGsgb3BlcmF0aW9uLiBBbGwgaXRzIG9wZXJhdGlvbnMgYXJlIHN1Y2Nlc3NmdWwkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0Nhbm5vdCByZXNjaGVkdWxlIGJ1bGsgb3BlcmF0aW9uLiBBbGwgaXRzIG9wZXJhdGlvbnMgYXJlIGFscmVhZHkgc3VjY2Vzc2Z1bC4nKVxuICB9LFxuICAnXkNhbm5vdCByZXNldCB1c2VyIHBhc3N3b3JkIDogQ2Fubm90IGZpbmQgdXNlciB3aXRoIHN1Y2ggZW1haWwuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDYW5ub3QgcmVzZXQgcGFzc3dvcmQgZm9yIHVzZXIgd2l0aCBzdWNoIGVtYWlsOiBlbWFpbCBub3QgZm91bmQuJylcbiAgfSxcbiAgJ15DYW5ub3QgdXBkYXRlL2RlbGV0ZSBhcHBsaWNhdGlvbiBiaW5hcnkgdmlhIHRoaXMgZW5kcG9pbnQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0Nhbm5vdCB1cGRhdGUvZGVsZXRlIGFwcGxpY2F0aW9uIGJpbmFyeSB2aWEgdGhpcyBlbmRwb2ludCcpXG4gIH0sXG4gICdeQ2FuXFwndCBkZWxldGUgdXNlciBiZWNhdXNlIGl0IGlzIHVzZWQgYnkgYW5vdGhlciBtYW5hZ2VkIG9iamVjdCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ2Fubm90IGRlbGV0ZSBkZXZpY2Ugd2l0aCBhc3NvY2lhdGVkIGRldmljZSBvd25lciBiZWNhdXNlIHRoaXMgb3duZXIgaXMgc3RpbGwgYXNzaWduZWQgdG8gb3RoZXIgZGV2aWNlKHMpLiBUcnkgdG8gcmVtb3ZlIG9ubHkgdGhlIGRldmljZS4nKVxuICB9LFxuICAnXkNlcCBtb2R1bGUgY3JlYXRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ0VQIG1vZHVsZSBjcmVhdGVkJylcbiAgfSxcbiAgJ15DZXAgbW9kdWxlIHVwZGF0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NFUCBtb2R1bGUgdXBkYXRlZCcpXG4gIH0sXG4gICdeQ2VwIG1vZHVsZSBkZWxldGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDRVAgbW9kdWxlIGRlbGV0ZWQnKVxuICB9LFxuICAnXkNlcCBtb2R1bGUgXCIoLis/KVwiIGNyZWF0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NFUCBtb2R1bGUgXCJ7e25hbWV9fVwiIGNyZWF0ZWQnKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG5hbWU6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeQ2VwIG1vZHVsZSBcIiguKz8pXCIgdXBkYXRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ0VQIG1vZHVsZSBcInt7bmFtZX19XCIgdXBkYXRlZCcpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbmFtZTogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15DZXAgbW9kdWxlIFwiKC4rPylcIiBkZWxldGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDRVAgbW9kdWxlIFwie3tuYW1lfX1cIiBkZWxldGVkJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkNvbW1hbmQgc3RhdGUgaXMgaW52YWxpZDogKC4rKSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ29tbWFuZCBzdGF0ZSBpcyBpbnZhbGlkOiB7e3Zpb2xhdGlvbnN9fScpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgdmlvbGF0aW9uczoge1xuICAgICAgICBjYXB0dXJlOiAnJDEnLFxuICAgICAgICB0cmFuc2xhdGU6IHtcbiAgICAgICAgICAnKFxcXFx3Kz8pIC0gbWF5IG5vdCBiZSBudWxsJzoge1xuICAgICAgICAgICAgZ2V0dGV4dDogZ2V0dGV4dCgnXCJ7e2ZpZWxkfX1cIiBtdXN0IG5vdCBiZSBudWxsJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgZmllbGQ6ICckMSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0sXG4gICdeQ291bGQgbm90IGNvbm5lY3QgdG8gZW5kcG9pbnQgKC4rKVxcXFwuIENvdWxkIG5vdCB2ZXJpZnkgYCguKylgIGhvc3Qga2V5IHdpdGggZmluZ2VycHJpbnQgYCguKylgIGZvciBgKC4rKWAgb24gcG9ydCAoLispXFxcXC4gSWYgeW91IGV4cGVjdGVkIHRoYXQga2V5LCBwbGVhc2UgcmVtb3ZlIHRoZSBwcmV2aW91cyBvbmUgZnJvbSBjb25maWd1cmF0aW9uIHRvIGFsbG93IGZvciBjb25uZWN0aW9uXFxcXC4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NvdWxkIG5vdCBjb25uZWN0IHRvIGVuZHBvaW50IFwie3tlbmRwb2ludE5hbWV9fVwiLiBDb3VsZCBub3QgdmVyaWZ5IHt7a2V5VHlwZX19IGhvc3Qga2V5IHdpdGggZmluZ2VycHJpbnQge3tmaW5nZXJwcmludH19IGZvciBob3N0IHt7aG9zdH19IG9uIHBvcnQge3twb3J0fX0uIElmIHlvdSBleHBlY3RlZCB0aGlzIGtleSwgcGxlYXNlIHJlbW92ZSB0aGUgcHJldmlvdXMgb25lIGZyb20gY29uZmlndXJhdGlvbiB0byBhbGxvdyBmb3IgY29ubmVjdGlvbi4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIGVuZHBvaW50TmFtZTogJyQxJyxcbiAgICAgIGtleVR5cGU6ICckMicsXG4gICAgICBmaW5nZXJwcmludDogJyQzJyxcbiAgICAgIGhvc3Q6ICckNCcsXG4gICAgICBwb3J0OiAnJDUnXG4gICAgfVxuICB9LFxuICAnXkNvdWxkIG5vdCBsb2dpbiB0byBzc2ggc2VydmVyIG9uIGVuZHBvaW50IFwiKC4rKVwiXFxcXC4gUHJvdmlkZWQgY3JlZGVudGlhbCBmb3IgdXNlciBcIiguKylcIiBpcyBpbmNvcnJlY3RcXFxcLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ291bGQgbm90IGFjY2VzcyBTU0ggc2VydmVyIG9uIGVuZHBvaW50IFwie3tlbmRwb2ludE5hbWV9fVwiLiBQcm92aWRlZCBjcmVkZW50aWFscyBmb3IgdXNlciBcInt7dXNlck5hbWV9fVwiIGFyZSBpbmNvcnJlY3QuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBlbmRwb2ludE5hbWU6ICckMScsXG4gICAgICB1c2VyTmFtZTogJyQyJ1xuICAgIH1cbiAgfSxcbiAgJ15Db3VsZCBub3Qgc2F2ZSBvYmplY3QgcmVtb3RlQWNjZXNzVXBkYXRlOiAoLispJCc6IHtcbiAgICBnZXR0ZXh0OiAne3tlcnJvck1lc3NhZ2VzfX0nLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgZXJyb3JNZXNzYWdlczoge1xuICAgICAgICBjYXB0dXJlOiAnJDEnLFxuICAgICAgICB0cmFuc2xhdGU6IHtcbiAgICAgICAgICAnQ291bGQgbm90IHJlY29nbml6ZSBob3N0LWtleSBmb3JtYXQnOiB7XG4gICAgICAgICAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDb3VsZCBub3QgcmVjb2duaXplIFwiSG9zdCBrZXlcIiBmb3JtYXQnKVxuICAgICAgICAgIH0sXG4gICAgICAgICAgJ0NvdWxkIG5vdCByZWNvZ25pemUga2V5LXBhaXIgZm9ybWF0Jzoge1xuICAgICAgICAgICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ291bGQgbm90IHJlY29nbml6ZSB0aGUgZm9ybWF0IG9mIFwiUHVibGljIGtleVwiIG9yIFwiUHJpdmF0ZSBrZXlcIicpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9LFxuICAnXkNvdWxkIG5vdCB1cGRhdGUgdXNlci4gOiBFcnJvciBwZXJzaXN0aW5nIHVzZXIgKC4rPykhJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDb3VsZCBub3QgdXBkYXRlIHVzZXIgXCJ7e3VzZXJuYW1lfX1cIi4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHVzZXJuYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkNyZWF0aW9uIHJhbXAgbXVzdCBiZSBncmVhdGVyIHRoYW4gKFxcXFxkKz8pJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdCdWxrIG9wZXJhdGlvbiBkZWxheSBtdXN0IGJlIGdyZWF0ZXIgdGhhbiB7e21pblNlY29uZHN9fSBzZWNvbmRzLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbWluU2Vjb25kczogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15DcmVhdGVkIGNvbnRhaW5lciQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ29udGFpbmVyIGNyZWF0ZWQuJylcbiAgfSxcbiAgJ15DcmVhdGVkIHBvZDogKC4rKSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnUG9kIFwie3tpbWFnZU5hbWV9fVwiIGNyZWF0ZWQuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBpbWFnZU5hbWU6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeQ1NWIGZpbGUgY29udGFpbmVkIGVtcHR5IGRhdGFzZXQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ05vIGVudHJpZXMgZm91bmQgaW4gdXBsb2FkZWQgQ1NWIGZpbGUuJylcbiAgfSxcbiAgJ15DeWNsZSBkZXRlY3RlZCBmb3Igcm91dGUgKC4rPykhJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDeWNsZSBkZXRlY3RlZCBmb3Igcm91dGUge3tyb3V0ZX19LicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgcm91dGU6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeRGF0YSBicm9rZXIgcHJvY2Vzc2luZyBpcyBjdXJyZW50bHkgb3ZlcmxvYWRlZCBhbmQgbWF5IHN0b3AgZm9yd2FyZGluZyB5b3VyIGRhdGFcXFxcLiBQbGVhc2UgY29udGFjdCBzdXBwb3J0XFxcXC4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0RhdGEgYnJva2VyIHByb2Nlc3NpbmcgaXMgY3VycmVudGx5IG92ZXJsb2FkZWQgYW5kIG1heSBzdG9wIGZvcndhcmRpbmcgeW91ciBkYXRhLiBQbGVhc2UgY29udGFjdCBzdXBwb3J0LicpXG4gIH0sXG4gICdeRGF0YSBicm9rZXIgcHJvY2Vzc2luZyBpcyBub3QgYWJsZSB0byBjb25uZWN0IGRvIGRlc3RpbmF0aW9uIHRlbmFudCwgdGh1cyBkYXRhIGZvcndhcmRpbmcgaXMgbm90IHdvcmtpbmdcXFxcLiBQbGVhc2UgY29udGFjdCBzdXBwb3J0XFxcXC4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0RhdGEgYnJva2VyIHByb2Nlc3NpbmcgaXMgbm90IGFibGUgdG8gY29ubmVjdCB0byBkZXN0aW5hdGlvbiB0ZW5hbnQsIHRodXMgZGF0YSBmb3J3YXJkaW5nIGlzIG5vdCB3b3JraW5nLiBQbGVhc2UgY29udGFjdCBzdXBwb3J0LicpXG4gIH0sXG4gICdeRGV2aWNlIGlkIFxcJyguKz8pXFwnIGNvbnRhaW5zIFxcJyguKz8pXFwnIGNoYXJhY3RlciB3aGljaCBpcyBub3QgcGVybWl0dGVkLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnSUQgXCJ7e2RldmljZUlkfX1cIiBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlcjogXCJ7e2ludmFsaWRDaGFyYWN0ZXJ9fVwiLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgZGV2aWNlSWQ6ICckMScsXG4gICAgICBpbnZhbGlkQ2hhcmFjdGVyOiAnJDInXG4gICAgfVxuICB9LFxuICAnXkRldmljZSBuYW1lOiBcXCcoLis/KVxcJywgYWxhcm0gdGV4dDogXFwnKC4rPylcXCckJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0RldmljZSBuYW1lOiBcInt7ZGV2aWNlTmFtZX19XCIsIGFsYXJtIHRleHQ6IFwie3thbGFybVRleHQgfCB0cmFuc2xhdGV9fVwiJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBkZXZpY2VOYW1lOiAnJDEnLFxuICAgICAgYWxhcm1UZXh0OiAnJDInXG4gICAgfVxuICB9LFxuICAnXkRpc3BsYXkgbmFtZSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnTG9naW4gYWxpYXMnKVxuICB9LFxuICAnXkRvbWFpbiBuYW1lIGluIHVwbG9hZGVkIGNlcnRpZmljYXRlIGRpZmZlcnMgZnJvbSB0aGUgb25lIGluIHVzZSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnRG9tYWluIG5hbWUgaW4gdXBsb2FkZWQgY2VydGlmaWNhdGUgZGlmZmVycyBmcm9tIHRoZSBvbmUgaW4gdXNlLiBQbGVhc2UgZGVhY3RpdmF0ZSB0aGUgY3VzdG9tIGRvbWFpbiBiZWZvcmUgdXBsb2FkaW5nIG5ldyBjZXJ0aWZpY2F0ZS4nKVxuICB9LFxuICAnXkRvbWFpbiBuYW1lIGlzIGFscmVhZHkgaW4gdXNlIGJ5IGFub3RoZXIgdGVuYW50ISQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnRG9tYWluIG5hbWUgaXMgYWxyZWFkeSB1c2VkIGJ5IGFub3RoZXIgdGVuYW50LicpXG4gIH0sXG4gICdeRHVwbGljYXRlZCBjb25uZWN0b3IgZm9yIGluc3RhbmNlVXJsICguKz8pISQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVGFyZ2V0IFVSTCB7e3RhcmdldFVybH19IGFscmVhZHkgdXNlZCBieSBhbm90aGVyIGNvbm5lY3Rvci4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRhcmdldFVybDogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15EdXBsaWNhdGVkIGNvbm5lY3RvciBmb3IgbmFtZSAoLis/KSEkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0Nvbm5lY3RvciBuYW1lIFwie3tuYW1lfX1cIiBhbHJlYWR5IHVzZWQgYnkgYW5vdGhlciBjb25uZWN0b3IuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkVudHJ5IGlzIG91dHNpZGUgb2YgdGhlIHRhcmdldCBkaXI6ICguKykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0ZpbGUgZW50cnkgb3V0c2lkZSBvZiB0aGUgdGFyZ2V0IGRpcmVjdG9yeTogXCJ7e3BhdGh9fVwiLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgcGF0aDogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15FcnJvciBkdXJpbmcgcGFzc3dvcmQgdmFsaWRhdGlvbi4gOiBQYXNzd29yZCBtdXN0IGhhdmUgYXQgbGVhc3QgKFxcXFxkKz8pIGNoYXJhY3RlcnMgYW5kIG5vIG1vcmUgdGhhbiAoXFxcXGQrPykgYW5kIG11c3QgY29udGFpbiBvbmx5IExhdGluMSBjaGFyYWN0ZXJzLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnUGFzc3dvcmQgaXMgaW52YWxpZC4gSXQgbXVzdCBoYXZlIGF0IGxlYXN0IHt7bWluQ2hhcmFjdGVyc0NvdW50fX0gYW5kIG5vIG1vcmUgdGhhbiB7e21heENoYXJhY3RlcnNDb3VudH19IGNoYXJhY3RlcnMuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBtaW5DaGFyYWN0ZXJzQ291bnQ6ICckMScsXG4gICAgICBtYXhDaGFyYWN0ZXJzQ291bnQ6ICckMidcbiAgICB9XG4gIH0sXG4gICdeRXJyb3IgZHVyaW5nIHBhc3N3b3JkIHZhbGlkYXRpb24uIDogWW91ciBwYXNzd29yZCBoYXMgYmVlbiB1c2VkIGFscmVhZHkuIENob29zZSBhbm90aGVyLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVGhpcyBwYXNzd29yZCBoYXMgYWxyZWFkeSBiZWVuIHVzZWQgZWFybGllci4gVXNlIGEgZGlmZmVyZW50IG9uZS4nKVxuICB9LFxuICAnXkVycm9yIGluIHN0YXRlbWVudCAoLis/KTooLis/KSEgOiBJbmNvcnJlY3Qgc3ludGF4IG5lYXIgXFwnKC4rPylcXCcgbmVhciByZXNlcnZlZCBrZXl3b3JkIFxcJyguKz8pXFwnIFxcXFxbKFtcXFxcU1xcXFxzXSs/KVxcXFxdJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdFcnJvciBpbiBzdGF0ZW1lbnQge3ttb2R1bGVOYW1lfX06e3tzdGF0ZW1lbnROdW1iZXJ9fS4gSW5jb3JyZWN0IHN5bnRheCBuZWFyIGV4cHJlc3Npb24gXCJ7e2V4cHJlc3Npb259fVwiIG5lYXIgcmVzZXJ2ZWQga2V5d29yZCBcInt7a2V5d29yZH19XCIuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBtb2R1bGVOYW1lOiAnJDEnLFxuICAgICAgc3RhdGVtZW50TnVtYmVyOiAnJDInLFxuICAgICAgZXhwcmVzc2lvbjogJyQzJyxcbiAgICAgIGtleXdvcmQ6ICckNCdcbiAgICB9XG4gIH0sXG4gICdeRXh0ZXJuYWwgaWQgbm90IGZvdW5kOyBleHRlcm5hbCBpZCA9IElEIFxcXFxbdHlwZT0oLis/KSwgdmFsdWU9KC4rPylcXFxcXSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnRXh0ZXJuYWwgSUQgbm90IGZvdW5kIGZvciB0eXBlIFwie3t0eXBlfX1cIiBhbmQgdmFsdWUgXCJ7e3ZhbHVlfX1cIi4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHR5cGU6ICckMScsXG4gICAgICB2YWx1ZTogJyQyJ1xuICAgIH1cbiAgfSxcbiAgJ15FcnJvciBvY2N1cnJlZCB3aGVuIHRyeWluZyB0byBmaW5kIGFuIEFwcGxpY2F0aW9uIGZvciBpZCBJRCAoLispIDogQ291bGQgbm90IGZpbmQgYXBwbGljYXRpb24gYnkgSUQgKFxcXFxkKykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NvdWxkIG5vdCBmaW5kIGFwcGxpY2F0aW9uIGJ5IElEIHt7YXBwbGljYXRpb25JZH19LicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgYXBwbGljYXRpb25JZDogJyQyJ1xuICAgIH1cbiAgfSxcbiAgJ15IdHRwIHN0YXR1cyBjb2RlOiA0MDRcXG57ZXJyb3I9XCJvcHRpb25zL05vdCBGb3VuZFwiLG1lc3NhZ2U9XCJVbmFibGUgdG8gZmluZCBvcHRpb24gYnkgZ2l2ZW4ga2V5OiBzaWdmb3gtYWdlbnQvcHJvdmlkZXIudG9rZW5cIixpbmZvPVwiaHR0cHM6Ly93d3cuY3VtdWxvY2l0eS5jb20vZ3VpZGVzL3JlZmVyZW5jZS1ndWlkZS8jZXJyb3JfcmVwb3J0aW5nXCIsZGV0YWlscz1cIm51bGxcIn0nOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVW5hYmxlIHRvIGZpbmQgb3B0aW9uIGJ5IGdpdmVuIGtleTogc2lnZm94LWFnZW50L3Byb3ZpZGVyLnRva2VuJylcbiAgfSxcbiAgJ15GYWlsZWQgdG8gZGVsZXRlIGFwcGxpY2F0aW9uLiAgOiBDYW5ub3QgcmVtb3ZlIGFwcGxpY2F0aW9uIGFzc2lnbmVkIHRvIG90aGVyIHRlbmFudHMuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDb3VsZCBub3QgZGVsZXRlIGFwcGxpY2F0aW9uIGFzc2lnbmVkIHRvIG90aGVyIHRlbmFudHMuJylcbiAgfSxcbiAgJ15GYWlsZWQgdG8gZXh0cmFjdCBjZXJ0aWZpY2F0ZSBmcm9tIFBLQ1MxMiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnRmFpbGVkIHRvIGV4dHJhY3QgY2VydGlmaWNhdGUgZnJvbSBQS0NTMTIuJylcbiAgfSxcbiAgJ15GYWlsZWQgdG8gdXBkYXRlIGRvbWFpbiBhdCB0aGUgcGxhdGZvcm0kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0ZhaWxlZCB0byB1cGRhdGUgZG9tYWluIGF0IHRoZSBwbGF0Zm9ybS4nKVxuICB9LFxuICAnXkZpbmRpbmcgZGV2aWNlIGRhdGEgZnJvbSBkYXRhYmFzZSBmYWlsZWQgOiBObyBtYW5hZ2VkT2JqZWN0IGZvciBpZCBcXCcoLis/KVxcJyEkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NvdWxkIG5vdCBmaW5kIG1hbmFnZWQgb2JqZWN0IHdpdGggSUQgXCJ7e2RldmljZUlkfX1cIi4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIGRldmljZUlkOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkZvbGxvd2luZyBtYW5kYXRvcnkgZmllbGRzIHNob3VsZCBiZSBpbmNsdWRlZDogKC4rPykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0ZvbGxvd2luZyBtYW5kYXRvcnkgZmllbGRzIHNob3VsZCBiZSBpbmNsdWRlZDoge3tmaWVsZHN9fScpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgZmllbGRzOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkdsb2JhbCBSb2xlIHVwZGF0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0dsb2JhbCByb2xlIHVwZGF0ZWQnKVxuICB9LFxuICAnXkdsb2JhbCBSb2xlICguKz8pIHVwZGF0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0dsb2JhbCByb2xlIFwie3tuYW1lfX1cIiB1cGRhdGVkJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkdsb2JhbCBSb2xlICguKz8pIHVwZGF0ZWQ6ICguKykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0dsb2JhbCByb2xlIFwie3tuYW1lfX1cIiB1cGRhdGVkOiB7e3VwZGF0ZXNMaXN0fX0nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG5hbWU6ICckMScsXG4gICAgICB1cGRhdGVzTGlzdDoge1xuICAgICAgICBjYXB0dXJlOiAnJDInLFxuICAgICAgICB0cmFuc2xhdGU6IHtcbiAgICAgICAgICAnYXBwbGljYXRpb25zIFxcXFxbKFteXFxcXF1dKz8pXFxcXF0gYWRkZWQnOiB7XG4gICAgICAgICAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdhcHBsaWNhdGlvbnMge3tsaXN0fX0gYWRkZWQnKSxcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgICAgICAgICBsaXN0OiAnJDEnXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICAnYXBwbGljYXRpb25zIFxcXFxbKFteXFxcXF1dKz8pXFxcXF0gcmVtb3ZlZCc6IHtcbiAgICAgICAgICAgIGdldHRleHQ6IGdldHRleHQoJ2FwcGxpY2F0aW9ucyB7e2xpc3R9fSByZW1vdmVkJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgbGlzdDogJyQxJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgJ3JvbGVzIFxcXFxbKFteXFxcXF1dKz8pXFxcXF0gYWRkZWQnOiB7XG4gICAgICAgICAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdyb2xlcyB7e2xpc3R9fSBhZGRlZCcpLFxuICAgICAgICAgICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICAgICAgICAgIGxpc3Q6ICckMSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgICdyb2xlcyBcXFxcWyhbXlxcXFxdXSs/KVxcXFxdIHJlbW92ZWQnOiB7XG4gICAgICAgICAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdyb2xlcyB7e2xpc3R9fSByZW1vdmVkJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgbGlzdDogJyQxJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSxcbiAgJ15HbG9iYWwgUm9sZXMkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0dsb2JhbCByb2xlcycpXG4gIH0sXG4gICdeT3BlcmF0aW9uIHVwZGF0ZWQ6ICguKykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ09wZXJhdGlvbiB1cGRhdGVkOiB7e3VwZGF0ZXNMaXN0fX0nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHVwZGF0ZXNMaXN0OiB7XG4gICAgICAgIGNhcHR1cmU6ICckMScsXG4gICAgICAgIHRyYW5zbGF0ZToge1xuICAgICAgICAgICdzdGF0dXM9XFwnKC4rPylcXCcnOiB7XG4gICAgICAgICAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdzdGF0dXM9XCJ7e3N0YXR1cyB8IHRyYW5zbGF0ZX19XCInKSxcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgICAgICAgICBzdGF0dXM6ICckMSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgICdkZXNjcmlwdGlvbj1cXCcoLis/KVxcJyc6IHtcbiAgICAgICAgICAgIGdldHRleHQ6IGdldHRleHQoJ2Rlc2NyaXB0aW9uPVwie3tkZXNjcmlwdGlvbiB8IHRyYW5zbGF0ZX19XCInKSxcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJyQxJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgJ2RldmljZSBuYW1lPVxcJyguKz8pXFwnJzoge1xuICAgICAgICAgICAgZ2V0dGV4dDogZ2V0dGV4dCgnZGV2aWNlIG5hbWU9XCJ7e2RldmljZU5hbWV9fVwiJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgZGV2aWNlTmFtZTogJyQxJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgJ2ZhaWx1cmUgcmVhc29uPVxcJyguKz8pXFwnJzoge1xuICAgICAgICAgICAgZ2V0dGV4dDogZ2V0dGV4dCgnZmFpbHVyZSByZWFzb249XCJ7e2ZhaWx1cmVSZWFzb24gfCB0cmFuc2xhdGV9fVwiJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgZmFpbHVyZVJlYXNvbjogJyQxJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSxcbiAgJ15JRCBcXFxcW3R5cGU9KC4rPyksIHZhbHVlPSguKz8pXFxcXF0gd2FzIGFscmVhZHkgYm91bmQgdG8gZGlmZmVyZW50IEdsb2JhbCBJRC4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0V4dGVybmFsIElEIFwie3t2YWx1ZX19XCIgb2YgdGhlIHR5cGUgXCJ7e3R5cGV9fVwiIGFscmVhZHkgZXhpc3RzLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgdHlwZTogJyQxJyxcbiAgICAgIHZhbHVlOiAnJDInXG4gICAgfVxuICB9LFxuICAnXkludmFsaWQgY3JlZGVudGlhbHMhIDogQmFkIGNyZWRlbnRpYWxzJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdJbnZhbGlkIGNyZWRlbnRpYWxzLicpXG4gIH0sXG4gICdeSW52YWxpZCBjcmVkZW50aWFscyEgOiBObyBwaG9uZSBudW1iZXIgcHJvdmlkZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0xvZyBpbnRvIHRoZSBtYW5hZ2VtZW50IHRlbmFudCBmaXJzdCBhbmQgZW50ZXIgeW91ciBwaG9uZSBudW1iZXIuJylcbiAgfSxcbiAgJ15JbnZlbnRvcnkgUm9sZSByZW1vdmVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdJbnZlbnRvcnkgcm9sZSByZW1vdmVkJylcbiAgfSxcbiAgJ15JbnZlbnRvcnkgUm9sZSAoLis/KSByZW1vdmVkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0ludmVudG9yeSByb2xlIFwie3tuYW1lfX1cIiBkZWxldGVkLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbmFtZTogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15JbnZlbnRvcnkgUm9sZSB1cGRhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdJbnZlbnRvcnkgcm9sZSB1cGRhdGVkJylcbiAgfSxcbiAgJ15JbnZlbnRvcnkgUm9sZSAoLis/KSB1cGRhdGVkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0ludmVudG9yeSByb2xlIFwie3tuYW1lfX1cIiB1cGRhdGVkLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbmFtZTogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15JL08gZXJyb3I6IENvbm5lY3Rpb24gcmVmdXNlZDsgbmVzdGVkIGV4Y2VwdGlvbiBpcyBDb25uZWN0aW9uIHJlZnVzZWQgOiBDb25uZWN0aW9uIHJlZnVzZWQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ29ubmVjdGlvbiByZWZ1c2VkJylcbiAgfSxcbiAgJ15JL08gZXJyb3I6IFJlYWQgdGltZWQgb3V0OyBuZXN0ZWQgZXhjZXB0aW9uIGlzIFJlYWQgdGltZWQgb3V0IDogUmVhZCB0aW1lZCBvdXQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnUmVhZCB0aW1lZCBvdXQnKVxuICB9LFxuICAnXkxvZyBmaWxlIHJlcXVlc3RlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnTG9nIGZpbGUgcmVxdWVzdGVkLicpXG4gIH0sXG4gICdeTWFuYWdlZCBvYmplY3QgZGVsZXRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnTWFuYWdlZCBvYmplY3QgZGVsZXRlZCcpXG4gIH0sXG4gICdeTWFuYWdlZCBvYmplY3QgXCIoLis/KVwiIGRlbGV0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ01hbmFnZWQgb2JqZWN0IFwie3tuYW1lfX1cIiBkZWxldGVkJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXk1heGltdW0gZmlsZSBzaXplIGV4Y2VlZGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdNYXhpbXVtIGZpbGUgc2l6ZSBleGNlZWRlZC4nKVxuICB9LFxuICAnXk1lc3NhZ2Ugd2l0aCBJRCAoLis/KSBkb2VzblxcJ3QgZXhpc3QgaW4gc21hcnQgcmVzdCB0ZW1wbGF0ZSAoLis/KSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnTWVzc2FnZSB3aXRoIElEIFwie3ttZXNzYWdlSWR9fVwiIGRvZXNuXFwndCBleGlzdCBpbiBTbWFydFJFU1QgdGVtcGxhdGUgd2l0aCBJRCBcInt7dGVtcGxhdGVJZH19XCInKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG1lc3NhZ2VJZDogJyQxJyxcbiAgICAgIHRlbXBsYXRlSWQ6ICckMidcbiAgICB9XG4gIH0sXG4gICdeTmV3RGV2aWNlUmVxdWVzdCBmb3IgaWQgPSAoLis/KSBhbHJlYWR5IGV4aXN0cy4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0RldmljZSByZWdpc3RyYXRpb24gcmVxdWVzdCB3aXRoIElEIHt7aWR9fSBhbHJlYWR5IGV4aXN0cy4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIGlkOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXk5vIGNvbW11bmljYXRpb24gd2l0aCBkZXZpY2Ugc2luY2UgKC4rPykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ05vIGNvbW11bmljYXRpb24gd2l0aCBkZXZpY2Ugc2luY2Uge3t0aW1lc3RhbXAgfCBhYnNvbHV0ZURhdGV9fS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRpbWVzdGFtcDogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15ObyBkYXRhIHJlY2VpdmVkIGZyb20gZGV2aWNlIHdpdGhpbiByZXF1aXJlZCBpbnRlcnZhbC4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ05vIGRhdGEgcmVjZWl2ZWQgZnJvbSBkZXZpY2Ugd2l0aGluIHJlcXVpcmVkIGludGVydmFsLicpXG4gIH0sXG4gICdeTm8gTG9SYSBwcm92aWRlciBzZXR0aW5ncyBhcmUgZm91bmQuIFBsZWFzZSBjb25maWd1cmUgdGhlIGNvbm5lY3Rpdml0eSBzZXR0aW5ncy4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ05vIExvUmEgcHJvdmlkZXIgc2V0dGluZ3MgYXJlIGZvdW5kLiBQbGVhc2UgY29uZmlndXJlIHRoZSBjb25uZWN0aXZpdHkgc2V0dGluZ3MuJylcbiAgfSxcbiAgJ15Ob3Qgd2l0aGluIGFueSBjb250ZXh0ISQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQSBwcm9ibGVtIG9jY3VycmVkIHdpdGggbWljcm9zZXJ2aWNlIHN1YnNjcmlwdGlvbi4nKVxuICB9LFxuICAnXk1heGltdW0gYWdlIGNhbm5vdCBiZSBiaWdnZXIgdGhhbiAxMCB5ZWFycy4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ01heGltdW0gYWdlIGNhbm5vdCBiZSBiaWdnZXIgdGhhbiAxMCB5ZWFycy4nKVxuICB9LFxuICAnXk1pY3Jvc2VydmljZSBhcHBsaWNhdGlvbiBuYW1lIGluY29ycmVjdC4gUGxlYXNlIHVzZSBvbmx5IGxvd2VyLWNhc2UgbGV0dGVycywgZGlnaXRzIGFuZCBkYXNoZXMuIE1heGltdW0gbGVuZ3RoIGlzIChcXFxcZCspIGNoYXJhY3RlcnMuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdNaWNyb3NlcnZpY2UgYXBwbGljYXRpb24gbmFtZSBpcyBpbmNvcnJlY3Q6IG9ubHkgbG93ZXIgY2FzZSBsZXR0ZXJzLCBkaWdpdHMgYW5kIGRhc2hlcyBhbGxvd2VkLiBNYXhpbXVtIGxlbmd0aDoge3ttYXhMZW5ndGh9fS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG1heExlbmd0aDogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15NaWNyb3NlcnZpY2Ugbm90IGF2YWlsYWJsZS4qJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdNaWNyb3NlcnZpY2UgaXMgbm90IGF2YWlsYWJsZS4nKVxuICB9LFxuICAnXk9wZXJhdGlvbiBjcmVhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdPcGVyYXRpb24gY3JlYXRlZC4nKVxuICB9LFxuICAnXk9wZXJhdGlvbiB1cGRhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdPcGVyYXRpb24gdXBkYXRlZC4nKVxuICB9LFxuICAnXk9wZXJhdGlvbiBjcmVhdGVkOiBzdGF0dXM9XFwnKC4rPylcXCcuJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ09wZXJhdGlvbiBjcmVhdGVkOiBzdGF0dXM9XCJ7e3N0YXR1cyB8IHRyYW5zbGF0ZX19XCIuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBzdGF0dXM6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeT3B0aW9uIGNyZWF0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ09wdGlvbiBjcmVhdGVkLicpXG4gIH0sXG4gICdeT3B0aW9uIFwiKC4rPylcIiBjcmVhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdPcHRpb24gXCJ7e29wdGlvbn19XCIgY3JlYXRlZC4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG9wdGlvbjogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15PcHRpb24gZGVsZXRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnT3B0aW9uIGRlbGV0ZWQuJylcbiAgfSxcbiAgJ15PcHRpb24gXCIoLis/KVwiIGRlbGV0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ09wdGlvbiBcInt7b3B0aW9ufX1cIiBkZWxldGVkLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgb3B0aW9uOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXk93bmVyIGZpZWxkIGVycm9yLiA6IENhbm5vdCBpbnRyb2R1Y2UgY3ljbGljIGRlcGVuZGVuY3kuJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NvdWxkIG5vdCBpbnRyb2R1Y2UgY3ljbGljIG93bmVyc2hpcCBkZXBlbmRlbmN5LicpXG4gIH0sXG4gICdeUGFzc3dvcmQgY2hhbmdlIGlzIHRlbXBvcmFyeSBibG9ja2VkLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnUGFzc3dvcmQgY2hhbmdlIGlzIHRlbXBvcmFyaWx5IGJsb2NrZWQuJylcbiAgfSxcbiAgJ15QYXNzd29yZCBjaXBoZXIgZG9lcyBub3QgbWF0Y2gnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnUGFzc3dvcmQgY2lwaGVyIGRvZXMgbm90IG1hdGNoLicpXG4gIH0sXG4gICdeUGxhdGZvcm0gYXBwbGljYXRpb24gY2Fubm90IGJlIGFkZGVkIHRvLCBub3IgcmVtb3ZlZCBmcm9tIGFueSB0ZW5hbnQuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdQbGF0Zm9ybSBhcHBsaWNhdGlvbiBjYW5ub3QgYmUgYWRkZWQgdG8sIG5vciByZW1vdmVkIGZyb20gYW55IHRlbmFudC4nKVxuICB9LFxuICAnXlByaXZhdGUga2V5IG11c3QgYmUgcHJvdmlkZWQgaW4gS0VZX1BBSVIgY3JlZGVudGlhbHMkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1ByaXZhdGUga2V5IG11c3QgYmUgcHJvdmlkZWQgd2hlbiBcIlB1YmxpYyAvIHByaXZhdGUga2V5c1wiIG9wdGlvbiBpcyBzZWxlY3RlZC4nKVxuICB9LFxuICAnXlByaXZhdGUga2V5IGNpcGhlciBkb2VzIG5vdCBtYXRjaCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdQcml2YXRlIGtleSBjaXBoZXIgZG9lcyBub3QgbWF0Y2gnKVxuICB9LFxuICAnXlByb3RvY29sIFwiKC4rPylcIiBkb2VzIG5vdCBzdXBwb3J0IFwiKC4rPylcIiBjcmVkZW50aWFscyB0eXBlJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdQcm90b2NvbCBcInt7cHJvdG9jb2x9fVwiIGRvZXMgbm90IHN1cHBvcnQgXCJ7e2NyZWRlbnRpYWxzVHlwZX19XCIgY3JlZGVudGlhbHMgdHlwZS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHByb3RvY29sOiAnJDEnLFxuICAgICAgY3JlZGVudGlhbHNUeXBlOiAnJDInXG4gICAgfVxuICB9LFxuICAnXnB1bGxpbmcgaW1hZ2UgXCIoLispXCIkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1B1bGxpbmcgaW1hZ2U6IFwie3tpbWFnZU5hbWV9fVwiLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgaW1hZ2VOYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXlJlYWwtdGltZSBldmVudCBwcm9jZXNzaW5nIGlzIGN1cnJlbnRseSBvdmVybG9hZGVkIGFuZCBtYXkgc3RvcCBwcm9jZXNzaW5nIHlvdXIgZXZlbnRzXFxcXC4gUGxlYXNlIGNvbnRhY3Qgc3VwcG9ydFxcXFwuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdSZWFsLXRpbWUgZXZlbnQgcHJvY2Vzc2luZyBpcyBjdXJyZW50bHkgb3ZlcmxvYWRlZCBhbmQgbWF5IHN0b3AgcHJvY2Vzc2luZyB5b3VyIGV2ZW50cy4gUGxlYXNlIGNvbnRhY3Qgc3VwcG9ydC4nKVxuICB9LFxuICAnXlJlc291cmNlIElEIFxcXFxbdHlwZT1jb21fY3VtdWxvY2l0eV9tb2RlbF9pZHR5cGVfR0lkLCB2YWx1ZT0oLis/KVxcXFxdIGZvciB0aGlzIHJlcXVlc3Qgbm90IGZvdW5kLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ291bGQgbm90IGZpbmQgdGhlIHJlc291cmNlIHdpdGggSUQgXCJ7e2lkfX1cIi4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIGlkOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXlNjYWxlZCB1cCByZXBsaWNhIHNldCAoLispIHRvIChcXFxcZCspJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdSZXBsaWNhIHNldCBcInt7cmVwbGljYVNldE5hbWV9fVwiIHNjYWxlZCB1cCB0byBcInt7c2NhbGVOdW1iZXJ9fVwiLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgcmVwbGljYVNldE5hbWU6ICckMScsXG4gICAgICBzY2FsZU51bWJlcjogJyQyJ1xuICAgIH1cbiAgfSxcbiAgJ15TaW11bGF0b3Igc3RhdGUgaXMgaW52YWxpZDogKC4rKSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnU2ltdWxhdG9yIHN0YXRlIGlzIGludmFsaWQ6IHt7dmlvbGF0aW9uc319JyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICB2aW9sYXRpb25zOiB7XG4gICAgICAgIGNhcHR1cmU6ICckMScsXG4gICAgICAgIHRyYW5zbGF0ZToge1xuICAgICAgICAgICcoXFxcXHcrPykgLSBtYXkgbm90IGJlIG51bGwnOiB7XG4gICAgICAgICAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdcInt7ZmllbGR9fVwiIHNob3VsZCBub3QgYmUgbnVsbCcpLFxuICAgICAgICAgICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICAgICAgICAgIGZpZWxkOiAnJDEnXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICAnKFxcXFx3Kz8pIC0gbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gKFxcXFxkKyknOiB7XG4gICAgICAgICAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdcInt7ZmllbGR9fVwiIG11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIHt7bWF4VmFsdWV9fScpLFxuICAgICAgICAgICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICAgICAgICAgIGZpZWxkOiAnJDEnLFxuICAgICAgICAgICAgICBtYXhWYWx1ZTogJyQyJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgJyhcXFxcdys/KSAtIHNob3VsZCBub3QgY29udGFpbiBudWxsIHZhbHVlcyc6IHtcbiAgICAgICAgICAgIGdldHRleHQ6IGdldHRleHQoJ1wie3tmaWVsZH19XCIgc2hvdWxkIG5vdCBjb250YWluIG51bGwgdmFsdWVzJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgZmllbGQ6ICckMSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0sXG4gICdeU21hcnQgcmVzdCB0ZW1wbGF0ZSAoLis/KSBkb2VzblxcJ3QgZXhpc3QkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1NtYXJ0UkVTVCB0ZW1wbGF0ZSB3aXRoIGlkIFwie3t0ZW1wbGF0ZUlkfX1cIiBkb2VzblxcJ3QgZXhpc3QnKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRlbXBsYXRlSWQ6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeU21hcnQgcnVsZSBjcmVhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdTbWFydCBydWxlIGNyZWF0ZWQuJylcbiAgfSxcbiAgJ15TbWFydCBydWxlIHVwZGF0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1NtYXJ0IHJ1bGUgdXBkYXRlZC4nKVxuICB9LFxuICAnXlNtYXJ0IHJ1bGUgZW5hYmxlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnU21hcnQgcnVsZSBhY3RpdmF0ZWQuJylcbiAgfSxcbiAgJ15TbWFydCBydWxlIGRpc2FibGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdTbWFydCBydWxlIGRlYWN0aXZhdGVkLicpXG4gIH0sXG4gICdeU21hcnQgcnVsZSBkZWxldGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdTbWFydCBydWxlIGRlbGV0ZWQuJylcbiAgfSxcbiAgJ15TbWFydCBydWxlIFwiKC4rPylcIiBjcmVhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdTbWFydCBydWxlIFwie3tuYW1lfX1cIiBjcmVhdGVkLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbmFtZTogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15TbWFydCBydWxlIFwiKC4rPylcIiB1cGRhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdTbWFydCBydWxlIFwie3tuYW1lfX1cIiB1cGRhdGVkLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbmFtZTogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15TbWFydCBydWxlIFwiKC4rPylcIiBlbmFibGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdTbWFydCBydWxlIFwie3tuYW1lfX1cIiBhY3RpdmF0ZWQuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXlNtYXJ0IHJ1bGUgXCIoLis/KVwiIGRpc2FibGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdTbWFydCBydWxlIFwie3tuYW1lfX1cIiBkZWFjdGl2YXRlZC4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG5hbWU6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeU21hcnQgcnVsZSBcIiguKz8pXCIgZGVsZXRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnU21hcnQgcnVsZSBcInt7bmFtZX19XCIgZGVsZXRlZC4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG5hbWU6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeU3RhcnRlZCBjb250YWluZXIkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NvbnRhaW5lciBzdGFydGVkLicpXG4gIH0sXG4gICdeU3VjY2Vzc2Z1bGx5IGFzc2lnbmVkICguKykgdG8gKC4rKSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnXCJ7e2ltYWdlTmFtZX19XCIgYXNzaWduZWQgdG8gXCJ7e2FkZHJlc3N9fVwiLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgaW1hZ2VOYW1lOiAnJDEnLFxuICAgICAgYWRkcmVzczogJyQyJ1xuICAgIH1cbiAgfSxcbiAgJ15TdWNjZXNzZnVsbHkgcHVsbGVkIGltYWdlIFwiKC4rKVwiJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdJbWFnZSBcInt7aW1hZ2VOYW1lfX1cIiBwdWxsZWQuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBpbWFnZU5hbWU6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeVGVuYW50IGNyZWF0aW9uIGZhaWxlZC4gOiBUZW5hbnQgd2l0aCBnaXZlbiBpZCBhbHJlYWR5IGV4aXN0cy4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NvdWxkIG5vdCBjcmVhdGUgYSB0ZW5hbnQuIFRlbmFudCB3aXRoIGdpdmVuIGRvbWFpbi9VUkwgYWxyZWFkeSBleGlzdHMuJylcbiAgfSxcbiAgJ15UZW5hbnQgaWQgY2Fubm90IGJlIGEgcmVzZXJ2ZWQgc3FsIGtleXdvcmQgXCIoLis/KVwiLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ291bGQgbm90IHVzZSBhIHJlc2VydmVkIFNRTCBrZXl3b3JkIFwie3t0ZW5hbnRJZH19XCIgYXMgYSBkb21haW4gbmFtZS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRlbmFudElkOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXlRlbmFudCBcIiguKz8pXCIgYWN0aXZhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdUZW5hbnQgXCJ7e3RlbmFudH19XCIgYWN0aXZhdGVkLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgdGVuYW50OiAnJDEnXG4gICAgfVxuICB9LFxuICAnXlRlbmFudCAoLis/KSBoYXMgc3ViLXRlbmFudHMsIHBsZWFzZSByZW1vdmUgdGhlbSBmaXJzdCEkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NvdWxkIG5vdCByZW1vdmUgdGVuYW50IFwie3t0ZW5hbnR9fVwiLiBSZW1vdmUgaXRzIHN1YnRlbmFudHMgZmlyc3QuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICB0ZW5hbnQ6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeVGVuYW50IGFjdGl2YXRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVGVuYW50IGFjdGl2YXRlZCcpXG4gIH0sXG4gICdeVGVuYW50IFwiKC4rPylcIiBjcmVhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdUZW5hbnQgXCJ7e3RlbmFudH19XCIgY3JlYXRlZC4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRlbmFudDogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15UZW5hbnQgY3JlYXRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVGVuYW50IGNyZWF0ZWQnKVxuICB9LFxuICAnXlRlbmFudCBcIiguKz8pXCIgZGVsZXRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVGVuYW50IFwie3t0ZW5hbnR9fVwiIGRlbGV0ZWQuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICB0ZW5hbnQ6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeVGVuYW50IGRlbGV0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1RlbmFudCBkZWxldGVkJylcbiAgfSxcbiAgJ15UZW5hbnQgXCIoLis/KVwiIHN1c3BlbmRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVGVuYW50IFwie3t0ZW5hbnR9fVwiIHN1c3BlbmRlZC4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRlbmFudDogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15UZW5hbnQgc3VzcGVuZGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdUZW5hbnQgc3VzcGVuZGVkJylcbiAgfSxcbiAgJ15UZW5hbnQgXCIoLis/KVwiIHVwZGF0ZWQ6ICguKz8pJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdUZW5hbnQgXCJ7e3RlbmFudH19XCIgdXBkYXRlZDoge3twcm9wZXJ0aWVzfX0uJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICB0ZW5hbnQ6ICckMScsXG4gICAgICBwcm9wZXJ0aWVzOiAnJDInXG4gICAgfVxuICB9LFxuICAnXlRlbmFudCB1cGRhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdUZW5hbnQgdXBkYXRlZCcpXG4gIH0sXG4gICdeVG9vIE1hbnkgUmVxdWVzdHMkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1RvbyBtYW55IHJlcXVlc3RzLiBUcnkgYWdhaW4gbGF0ZXIuJylcbiAgfSxcbiAgJ15Vc2VyIGFsaWFzIGVxdWFscyB1c2VybmFtZSBcXCcoLispXFwnJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdVc2VybmFtZSBhbmQgbG9naW4gYWxpYXMgbXVzdCBiZSBkaWZmZXJlbnQuJylcbiAgfSxcbiAgJ15Vc2VyIGNyZWF0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1VzZXIgY3JlYXRlZCcpXG4gIH0sXG4gICdeVXNlciAoLis/KSBjcmVhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdVc2VyIFwie3tuYW1lfX1cIiBjcmVhdGVkJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXlVzZXIgZGVsZXRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVXNlciBkZWxldGVkJylcbiAgfSxcbiAgJ15Vc2VyICguKz8pIGRlbGV0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1VzZXIgXCJ7e25hbWV9fVwiIGRlbGV0ZWQnKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG5hbWU6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeVXNlciB1cGRhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdVc2VyIHVwZGF0ZWQnKVxuICB9LFxuICAnXlVzZXIgKC4rPykgdXBkYXRlZDogKC4rKSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVXNlciBcInt7bmFtZX19XCIgdXBkYXRlZDoge3t1cGRhdGVzTGlzdH19JyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnLFxuICAgICAgdXBkYXRlc0xpc3Q6IHtcbiAgICAgICAgY2FwdHVyZTogJyQyJyxcbiAgICAgICAgdHJhbnNsYXRlOiB7XG4gICAgICAgICAgJ2RlbGVnYXRlZEJ5PVxcJyguKz8pXFwnJzoge1xuICAgICAgICAgICAgZ2V0dGV4dDogZ2V0dGV4dCgnZGVsZWdhdGVkIGJ5OiBcInt7ZGVsZWdhdGV9fVwiJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgZGVsZWdhdGU6ICckMSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgICdvd25lcj1cXCcoLis/KVxcJyc6IHtcbiAgICAgICAgICAgIGdldHRleHQ6IGdldHRleHQoJ293bmVyOiBcInt7b3duZXJ9fVwiJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgb3duZXI6ICckMSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgICdpbnZlbnRvcnkgYXNzaWdubWVudCBcXFxcWyguKz8pXFxcXF0gYWRkZWQnOiB7XG4gICAgICAgICAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdpbnZlbnRvcnkgYXNzaWdubWVudCBbe3tpbnZlbnRvcnlBc3NpZ25tZW50fX1dIGFkZGVkJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgaW52ZW50b3J5QXNzaWdubWVudDogJyQxJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgJ2ludmVudG9yeSBhc3NpZ25tZW50IFxcXFxbKC4rPylcXFxcXSByZW1vdmVkJzoge1xuICAgICAgICAgICAgZ2V0dGV4dDogZ2V0dGV4dCgnaW52ZW50b3J5IGFzc2lnbm1lbnQgW3t7aW52ZW50b3J5QXNzaWdubWVudH19XSByZW1vdmVkJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgaW52ZW50b3J5QXNzaWdubWVudDogJyQxJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgJ2FwcGxpY2F0aW9ucyBcXFxcWyguKz8pXFxcXF0gYWRkZWQkJzoge1xuICAgICAgICAgICAgZ2V0dGV4dDogZ2V0dGV4dCgnYXBwbGljYXRpb25zIFt7e2FwcGxpY2F0aW9uc0xpc3R9fV0gYWRkZWQnKSxcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgICAgICAgICBhcHBsaWNhdGlvbnNMaXN0OiAnJDEnXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICAnYXBwbGljYXRpb25zIFxcXFxbKC4rPylcXFxcXSByZW1vdmVkJCc6IHtcbiAgICAgICAgICAgIGdldHRleHQ6IGdldHRleHQoJ2FwcGxpY2F0aW9ucyBbe3thcHBsaWNhdGlvbnNMaXN0fX1dIHJlbW92ZWQnKSxcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgICAgICAgICBhcHBsaWNhdGlvbnNMaXN0OiAnJDEnXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICAnZ2xvYmFsIHJvbGVzIFxcXFxbKC4rPylcXFxcXSBhZGRlZCQnOiB7XG4gICAgICAgICAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdnbG9iYWwgcm9sZXMgW3t7Z2xvYmFsUm9sZXNMaXN0fX1dIGFkZGVkJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgZ2xvYmFsUm9sZXNMaXN0OiAnJDEnXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICAnZ2xvYmFsIHJvbGVzIFxcXFxbKC4rPylcXFxcXSByZW1vdmVkJCc6IHtcbiAgICAgICAgICAgIGdldHRleHQ6IGdldHRleHQoJ2dsb2JhbCByb2xlcyBbe3tnbG9iYWxSb2xlc0xpc3R9fV0gcmVtb3ZlZCcpLFxuICAgICAgICAgICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICAgICAgICAgIGdsb2JhbFJvbGVzTGlzdDogJyQxJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSxcbiAgJ15Vc2VyIHdpdGggdXNlcm5hbWUgXFwnKC4rPylcXCcgYWxyZWFkeSBleGlzdHMhIDogRHVwbGljYXRlZDogKC4rPykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1VzZXIgXCJ7e3VzZXJuYW1lfX1cIiBhbHJlYWR5IGV4aXN0cy4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHVzZXJuYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXlVzZXIgd2l0aCB1c2VybmFtZSBvciBhbGlhcyBcXCcoLispXFwnIGFscmVhZHkgZXhpc3RzISA6IER1cGxpY2F0ZWQ6ICguKykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1VzZXIgd2l0aCB1c2VybmFtZSBvciBsb2dpbiBhbGlhcyBcInt7dXNlcm5hbWVPckFsaWFzfX1cIiBhbHJlYWR5IGV4aXN0cy4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHVzZXJuYW1lT3JBbGlhczogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15Vc2VyIHdpdGggZW1haWwgXFwnKC4rPylcXCcgYWxyZWFkeSBleGlzdHMhIDogRHVwbGljYXRlZDogKC4rPykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1VzZXIgd2l0aCBlbWFpbCBcInt7ZW1haWx9fVwiIGFscmVhZHkgZXhpc3RzLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgZW1haWw6ICckMSdcbiAgICB9XG4gIH0sXG4gICdedW5hYmxlIHRvIGZpbmQgb3B0aW9uIHdpdGggZ2l2ZW4ga2V5ICguKz8pIDogQ291bGQgbm90IGZpbmQgZW50aXR5IE9wdGlvbiBieSBJRCAoLis/KSEkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1VuYWJsZSB0byBnZXQgdGVuYW50IG9wdGlvbjogXCJ7e29wdGlvbn19XCIuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBvcHRpb246ICckMidcbiAgICB9XG4gIH0sXG4gICdedW5hYmxlIHRvIGZpbmQgb3B0aW9uIHdpdGggZ2l2ZW4ga2V5ICguKz8pIDogVGhlcmUgaXMgbm8gc3lzdGVtIHByb3BlcnR5IGZvciBrZXkgKC4rPykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1VuYWJsZSB0byBnZXQgc3lzdGVtIG9wdGlvbjogXCJ7e29wdGlvbn19XCIuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBvcHRpb246ICckMidcbiAgICB9XG4gIH0sXG4gICdeV3JpdGUgZmFpbGVkIHdpdGggZXJyb3IgY29kZSAxNjczMyBhbmQgZXJyb3IgbWVzc2FnZSBcXCd0cnlpbmcgdG8gaW5kZXggdGV4dCB3aGVyZSB0ZXJtIGxpc3QgaXMgdG9vIGJpZywgbWF4IGlzIDRtYiBfaWQ6IFwiKC4rPylcIlxcJyQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVGhlIHVwbG9hZGVkIGltYWdlIGNhbm5vdCBiZSBiaWdnZXIgdGhhbiA0IE1CLiBQbGVhc2UgdXBsb2FkIGEgc21hbGxlciBvbmUuJylcbiAgfSxcbiAgJ15Xcml0ZSBmYWlsZWQgd2l0aCBlcnJvciBjb2RlIDE3MjgwIGFuZCBlcnJvciBtZXNzYWdlIFxcJ1dpcmVkVGlnZXJJbmRleDo6aW5zZXJ0OiBrZXkgdG9vIGxhcmdlIHRvIGluZGV4LCBmYWlsaW5nICguKz8pIHsgOiBcIiguKz8pXCIgfVxcJyQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVGhlIGNob3NlbiBuYW1lIGlzIHRvbyBsb25nLiBQbGVhc2UgdHJ5IGEgc2hvcnRlciBvbmUuJylcbiAgfSxcbiAgJ15Zb3UgaGF2ZSByZWFjaGVkIGRldmljZXMgbGltaXQuIE5vIG1vcmUgZGV2aWNlcyBjYW4gYmUgcmVnaXN0ZXJlZC4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1lvdSByZWFjaGVkIGRldmljZXMgbGltaXQuIE5vIG1vcmUgZGV2aWNlcyBjYW4gYmUgcmVnaXN0ZXJlZC4nKVxuICB9LFxuICAnXiguKykgc3VjY2VlZGVkIGZvciB2b2x1bWUgXCIoLispXCInOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnT3BlcmF0aW9uIFwie3tvcGVyYXRpb259fVwiIHN1Y2NlZWRlZCBmb3Igdm9sdW1lIFwie3t2b2x1bWV9fVwiLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgb3BlcmF0aW9uOiAnJDEnLFxuICAgICAgdm9sdW1lOiAnJDInXG4gICAgfVxuICB9LFxuICAnXkV4Y2VwdGlvbiBvbiB0ZW5hbnQgKC4rKSBpbiBzdGF0ZW1lbnQgXFwnKC4rKVxcJzogSW52b2NhdGlvbiBleGNlcHRpb24gd2hlbiBpbnZva2luZyBtZXRob2QgXFwnKC4rKVxcJyBvZiBjbGFzcyBcXCcoLispXFwnIHBhc3NpbmcgcGFyYW1ldGVycyBcXFxcWyguKylcXFxcXSBmb3Igc3RhdGVtZW50IFxcJyguKylcXCc6ICguKykgOiAoLispJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdFeGNlcHRpb24gb24gdGVuYW50IHt7dGVuYW50SWR9fSBpbiBzdGF0ZW1lbnQgXCJ7e21vZHVsZU5hbWV9fVwiOiBJbnZvY2F0aW9uIGV4Y2VwdGlvbiB3aGVuIGludm9raW5nIG1ldGhvZCBcInt7bWV0aG9kTmFtZX19XCIgb2YgY2xhc3MgXCJ7e2NsYXNzUGF0aH19XCIgcGFzc2luZyBwYXJhbWV0ZXJzIFt7e3BhcmFtZXRlcnN9fV0gZm9yIHN0YXRlbWVudCBcInt7c3RhdGVtZW50fX1cIjoge3tleGNlcHRpb25UeXBlfX0gOiB7e2V4Y2VwdGlvbk1lc3NhZ2V9fS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRlbmFudElkOiAnJDEnLFxuICAgICAgbW9kdWxlTmFtZTogJyQyJyxcbiAgICAgIG1ldGhvZE5hbWU6ICckMycsXG4gICAgICBjbGFzc1BhdGg6ICckNCcsXG4gICAgICBwYXJhbWV0ZXJzOiAnJDUnLFxuICAgICAgc3RhdGVtZW50OiAnJDYnLFxuICAgICAgZXhjZXB0aW9uVHlwZTogJyQ3JyxcbiAgICAgIGV4Y2VwdGlvbk1lc3NhZ2U6ICckOCdcbiAgICB9XG4gIH0sXG4gICdeTm8gbm9kZXMgYXJlIGF2YWlsYWJsZSB0aGF0IG1hdGNoIGFsbCBvZiB0aGUgcHJlZGljYXRlczogKC4rKS4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ05vIG5vZGVzIGFyZSBhdmFpbGFibGUgdGhhdCBtYXRjaCBhbGwgb2YgdGhlIHByZWRpY2F0ZXM6IFt7e3ByZWRpY2F0ZXN9fV0uJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBwcmVkaWNhdGVzOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXlJlYWRpbmVzcyBwcm9iZSBmYWlsZWQ6ICguKykgKC4rKTogKC4rKTogcmVxdWVzdCBjYW5jZWxlZCB3aGlsZSB3YWl0aW5nIGZvciBjb25uZWN0aW9uIFxcXFwoQ2xpZW50LlRpbWVvdXQgZXhjZWVkZWQgd2hpbGUgYXdhaXRpbmcgaGVhZGVyc1xcXFwpJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdSZWFkaW5lc3MgcHJvYmUgZmFpbGVkOiB7e3JlcXVlc3RNZXRob2R9fSB7e3VyaX19OiB7e3Byb3RvY29sfX06IHJlcXVlc3QgY2FuY2VsZWQgd2hpbGUgd2FpdGluZyBmb3IgY29ubmVjdGlvbiAoQ2xpZW50LlRpbWVvdXQgZXhjZWVkZWQgd2hpbGUgYXdhaXRpbmcgaGVhZGVycykuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICByZXF1ZXN0TWV0aG9kOiAnJDEnLFxuICAgICAgdXJpOiAnJDInLFxuICAgICAgcHJvdG9jb2w6ICckMydcbiAgICB9XG4gIH0sXG4gICdeTGl2ZW5lc3MgcHJvYmUgZmFpbGVkOiAoLispICguKyk6ICguKyk6IHJlcXVlc3QgY2FuY2VsZWQgd2hpbGUgd2FpdGluZyBmb3IgY29ubmVjdGlvbiBcXFxcKENsaWVudC5UaW1lb3V0IGV4Y2VlZGVkIHdoaWxlIGF3YWl0aW5nIGhlYWRlcnNcXFxcKSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnTGl2ZW5lc3MgcHJvYmUgZmFpbGVkOiB7e3JlcXVlc3RNZXRob2R9fSB7e3VyaX19OiB7e3Byb3RvY29sfX06IHJlcXVlc3QgY2FuY2VsZWQgd2hpbGUgd2FpdGluZyBmb3IgY29ubmVjdGlvbiAoQ2xpZW50LlRpbWVvdXQgZXhjZWVkZWQgd2hpbGUgYXdhaXRpbmcgaGVhZGVycykuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICByZXF1ZXN0TWV0aG9kOiAnJDEnLFxuICAgICAgdXJpOiAnJDInLFxuICAgICAgcHJvdG9jb2w6ICckMydcbiAgICB9XG4gIH0sXG4gICdeRXJyb3Igc3luY2luZyBwb2QkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1BvZCBzeW5jaHJvbml6YXRpb24gZXJyb3IuJylcbiAgfSxcbiAgJ15GYWlsZWQgY3JlYXRlIHBvZCBzYW5kYm94LiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnUG9kIHNhbmRib3ggY3JlYXRpb24gZmFpbGVkLicpXG4gIH0sXG4gICdeRXhjZXB0aW9uIG9uIHRlbmFudCAoLispIGluIHN0YXRlbWVudCBcXCcoLispXFwnOiBIdHRwIHN0YXR1cyBjb2RlOiAoXFxcXGQrKSBcXFxce2Vycm9yPVwiYWxhcm0vVW5wcm9jZXNzYWJsZSBFbnRpdHlcIixtZXNzYWdlPVwiKC4rKVwiLGluZm89XCJodHRwczovL3d3dy5jdW11bG9jaXR5LmNvbS9ndWlkZXMvcmVmZXJlbmNlLWd1aWRlLyNlcnJvcl9yZXBvcnRpbmdcIixkZXRhaWxzPVwibnVsbFwiXFxcXH0kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0V4Y2VwdGlvbiBvbiB0ZW5hbnQge3t0ZW5hbnRJZH19IGluIHN0YXRlbWVudCBcInt7c3RhdGVtZW50fX1cIjogSFRUUCBzdGF0dXMgY29kZToge3todHRwU3RhdHVzQ29kZX19IDoge3ttZXNzYWdlIHwgdHJhbnNsYXRlfX0nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRlbmFudElkOiAnJDEnLFxuICAgICAgc3RhdGVtZW50OiAnJDInLFxuICAgICAgaHR0cFN0YXR1c0NvZGU6ICckMycsXG4gICAgICBtZXNzYWdlOiAnJDQnXG4gICAgfVxuICB9LFxuICAnXlVzZXIgXFwnKC4rKVxcJyBpcyBtYW5hZ2VkIGJ5IGEgcmVtb3RlIGlkZW50aXR5IG1hbmFnZW1lbnQgc2VydmljZSBkZWZpbmVkIGJ5IGFuIGFkbWluaXN0cmF0b3IsIGRpcmVjdCB1cGRhdGUgaXMgZm9yYmlkZGVuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdVc2VyIFwie3t1c2VyTmFtZX19XCIgaXMgbWFuYWdlZCBieSBhIHJlbW90ZSBpZGVudGl0eSBtYW5hZ2VtZW50IHNlcnZpY2UgZGVmaW5lZCBieSBhbiBhZG1pbmlzdHJhdG9yLCBkaXJlY3QgdXBkYXRlIGlzIGZvcmJpZGRlbi4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHVzZXJOYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkFkZGVkIG5ldyBjaGlsZCBkZXZpY2UgdG8gXCIoLispXCIgXFxcXChJRDogKC4rKVxcXFwpLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQWRkZWQgbmV3IGNoaWxkIGRldmljZSB0byBcInt7cGFyZW50RGV2aWNlTmFtZX19XCIgKElEOiB7e3BhcmVudERldmljZUlkfX0pLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgcGFyZW50RGV2aWNlTmFtZTogJyQxJyxcbiAgICAgIHBhcmVudERldmljZUlkOiAnJDInXG4gICAgfVxuICB9LFxuICAnXlVwZGF0ZWQgY2hpbGQgZGV2aWNlIG9mIFwiKC4rKVwiIFxcXFwoSUQ6ICguKylcXFxcKS4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1VwZGF0ZWQgY2hpbGQgZGV2aWNlIG9mIFwie3twYXJlbnREZXZpY2VOYW1lfX1cIiAoSUQ6IHt7cGFyZW50RGV2aWNlSWR9fSkuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBwYXJlbnREZXZpY2VOYW1lOiAnJDEnLFxuICAgICAgcGFyZW50RGV2aWNlSWQ6ICckMidcbiAgICB9XG4gIH0sXG4gICdeQWRkZWQgY2hpbGQgZGV2aWNlIFwiKC4rKVwiIFxcXFwoSUQ6ICguKylcXFxcKS4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0FkZGVkIGNoaWxkIGRldmljZSBcInt7bmFtZX19XCIgKElEOiB7e2lkfX0pLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbmFtZTogJyQxJyxcbiAgICAgIGlkOiAnJDInXG4gICAgfVxuICB9LFxuICAnXlJlbW92ZWQgY2hpbGQgZGV2aWNlIFwiKC4rKVwiIFxcXFwoSUQ6ICguKylcXFxcKS4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1JlbW92ZWQgY2hpbGQgZGV2aWNlIFwie3tuYW1lfX1cIiAoSUQ6IHt7aWR9fSkuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnLFxuICAgICAgaWQ6ICckMidcbiAgICB9XG4gIH0sXG4gICdeQ2hhbmdlIHZhbHVlIG9mIFwiKC4rKVwiIHRvICguKykgKC4rKS4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NoYW5nZSB2YWx1ZSBvZiBcInt7bmFtZX19XCIgdG8ge3t2YWx1ZX19e3t1bml0fX0uJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnLFxuICAgICAgdmFsdWU6ICckMicsXG4gICAgICB1bml0OiAnJDMnXG4gICAgfVxuICB9LFxuICAnXkNoYW5nZSB2YWx1ZSBvZiBcIiguKylcIiB0byAoLispLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ2hhbmdlIHZhbHVlIG9mIFwie3tuYW1lfX1cIiB0byB7e3ZhbHVlfX0uJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnLFxuICAgICAgdmFsdWU6ICckMidcbiAgICB9XG4gIH0sXG4gICdeQ2hhbmdlIHN0YXR1cyBvZiBcIiguKylcIiB0byBcIiguKylcIi4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NoYW5nZSBzdGF0dXMgb2YgXCJ7e25hbWV9fVwiIHRvIFwie3tsYWJlbH19XCIuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnLFxuICAgICAgbGFiZWw6ICckMidcbiAgICB9XG4gIH0sXG4gICdeU2VuZCBtZXNzYWdlIFwiKC4rKVwiLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnU2VuZCBtZXNzYWdlIFwie3tzdHJ9fVwiLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgc3RyOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkNsb3NlIHJlbGF5ICguKykuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDbG9zZSByZWxheSB7e251bWJlcn19LicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbnVtYmVyOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXk9wZW4gcmVsYXkgKC4rKS4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ09wZW4gcmVsYXkge3tudW1iZXJ9fS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG51bWJlcjogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15DaGFuZ2UgdHJhY2Ugc3RhdHVzIHRvICguKykuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDaGFuZ2UgdHJhY2Ugc3RhdHVzIHRvIHt7c3RhdGUgfCB0cmFuc2xhdGV9fS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHN0YXRlOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkNoYW5nZSByZWxheSBzdGF0dXMgdG8gKC4rKS4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NoYW5nZSByZWxheSBzdGF0dXMgdG8ge3tzdGF0dXMgfCB0cmFuc2xhdGV9fS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHN0YXR1czogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15DbG9zaW5nIHJlbGF5ICguKykuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDbG9zaW5nIHJlbGF5IHt7bnVtYmVyfX0uJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBudW1iZXI6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeT3BlbmluZyByZWxheSAoLispLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnT3BlbmluZyByZWxheSB7e251bWJlcn19LicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbnVtYmVyOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXlVwZGF0ZSBmaXJtd2FyZSB0bzogKC4rKSBcXFxcKHZlcnNpb246ICguKylcXFxcKS4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1VwZGF0ZSBmaXJtd2FyZSB0bzoge3tuYW1lfX0gKHZlcnNpb246IHt7dmVyc2lvbn19KS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG5hbWU6ICckMScsXG4gICAgICB2ZXJzaW9uOiAnJDInXG4gICAgfVxuICB9LFxuICAnXkV4ZWN1dGUgZ2VuZXJpYyBjb21tYW5kOiAoLispLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnRXhlY3V0ZSBnZW5lcmljIGNvbW1hbmQ6IHt7Y29tbWFuZH19LicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgY29tbWFuZDogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15GYWlsZWQgdG8gcmVmcmVzaCBhcHBsaWNhdGlvbi4gOiBDYW5ub3QgcmVmcmVzaCBub24gbG9jYWwtaG9zdGVkIGFwcGxpY2F0aW9uLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ291bGQgbm90IHJlYWN0aXZhdGUgdGhlIGFwcGxpY2F0aW9uIGFzIGl0IGlzIG5vdCBob3N0ZWQgbG9jYWxseS4nKVxuICB9LFxuICAnXkZhaWxlZCB0byByZWZyZXNoIGFwcGxpY2F0aW9uLiA6IENhbm5vdCByZWZyZXNoIGFwcGxpY2F0aW9uIHdpdGhvdXQgYWN0aXZlIHZlcnNpb24gaWQuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDb3VsZCBub3QgcmVhY3RpdmF0ZSB0aGUgYXBwbGljYXRpb24gYXMgaXQgaGFzIG5vIGFjdGl2ZSB2ZXJzaW9uLicpXG4gIH0sXG4gIC8vIFRPRE86IHJlbW92ZSBpZiB3ZSBkZWNpZGUgbm90IHRvIHRyYW5zbGF0ZSBzdWNoIG1lc3NhZ2VzOlxuICAvLyAnXktpbGxpbmcgY29udGFpbmVyIHdpdGggaWQgKC4rKTpOZWVkIHRvIGtpbGwgUG9kJCc6IHtcbiAgLy8gICBnZXR0ZXh0OiBnZXR0ZXh0KCdLaWxsaW5nIGNvbnRhaW5lciB3aXRoIElEIFwie3tjb250YWluZXJJZH19XCIuIE5lZWQgdG8ga2lsbCBQb2QuJyksXG4gIC8vICAgcGxhY2Vob2xkZXJzOiB7XG4gIC8vICAgICBjb250YWluZXJJZDogJyQxJ1xuICAvLyAgIH1cbiAgLy8gfSxcbiAgJ15TY2FsZWQgZG93biByZXBsaWNhIHNldCAoLispIHRvIChcXFxcZCspJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdSZXBsaWNhIHNldCBcInt7cmVwbGljYVNldE5hbWV9fVwiIHNjYWxlZCBkb3duIHRvIFwie3tzY2FsZU51bWJlcn19XCIuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICByZXBsaWNhU2V0TmFtZTogJyQxJyxcbiAgICAgIHNjYWxlTnVtYmVyOiAnJDInXG4gICAgfVxuICB9LFxuICAnXkRlbGV0ZWQgcG9kOiAoLispJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdQb2QgXCJ7e2ltYWdlTmFtZX19XCIgZGVsZXRlZC4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIGltYWdlTmFtZTogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15Db250YWluZXIgaW1hZ2UgXCIoLispXCIgYWxyZWFkeSBwcmVzZW50IG9uIG1hY2hpbmUkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NvbnRhaW5lciBpbWFnZSBcInt7aW1hZ2VOYW1lfX1cIiBhbHJlYWR5IGV4aXN0cy4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIGltYWdlTmFtZTogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15FcnJvciB1cGRhdGluZyB0ZW5hbnQhIENhbm5vdCBpbnNlcnQgc2Vjb25kIGNvbmZpZ3VyYXRpb24gZm9yIFBhc3N3b3JkIGNvZGUgZ3JhbnQgaW50ZXJuYWwvQmFkIFJlcXVlc3QkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1RoaXMgbG9naW4gbW9kZSB3YXMgYWxyZWFkeSBzZXQgYnkgb3RoZXIgYWRtaW4sIHBsZWFzZSByZWZyZXNoIHBhZ2UgdG8gdXBkYXRlIGRhdGEnKVxuICB9LFxufTtcbiJdfQ==
|
|
1073
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0dGVybi1tZXNzYWdlcy5kYXRhLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGM4eS9uZ3gtY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvcmUvaTE4bi9wYXR0ZXJuLW1lc3NhZ2VzLmRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0NBQW9DO0FBQ3BDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFcEMsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHO0lBQ3RCLG9CQUFvQixFQUFFO1FBQ3BCLE9BQU8sRUFBRSxPQUFPLENBQUMsZ0JBQWdCLENBQUM7S0FDbkM7SUFDRCxpQkFBaUIsRUFBRTtRQUNqQixPQUFPLEVBQUUsT0FBTyxDQUFDLGVBQWUsQ0FBQztLQUNsQztJQUNELGlCQUFpQixFQUFFO1FBQ2pCLE9BQU8sRUFBRSxPQUFPLENBQUMsZUFBZSxDQUFDO0tBQ2xDO0lBQ0QsNENBQTRDLEVBQUU7UUFDNUMsT0FBTyxFQUFFLE9BQU8sQ0FBQywyREFBMkQsQ0FBQztLQUM5RTtJQUNELDZDQUE2QyxFQUFFO1FBQzdDLE9BQU8sRUFBRSxPQUFPLENBQUMsNkNBQTZDLENBQUM7S0FDaEU7SUFDRCxxRUFBcUUsRUFBRTtRQUNyRSxPQUFPLEVBQUUsT0FBTyxDQUFDLDhEQUE4RCxDQUFDO1FBQ2hGLFlBQVksRUFBRTtZQUNaLE1BQU0sRUFBRSxJQUFJO1NBQ2I7S0FDRjtJQUNELCtFQUErRSxFQUFFO1FBQy9FLE9BQU8sRUFBRSxPQUFPLENBQUMsZ0dBQWdHLENBQUM7UUFDbEgsWUFBWSxFQUFFO1lBQ1osTUFBTSxFQUFFLElBQUk7WUFDWixVQUFVLEVBQUUsSUFBSTtTQUNqQjtLQUNGO0lBQ0QsbURBQW1ELEVBQUU7UUFDbkQsT0FBTyxFQUFFLE9BQU8sQ0FBQyx1REFBdUQsQ0FBQztLQUMxRTtJQUNELGtDQUFrQyxFQUFFO1FBQ2xDLE9BQU8sRUFBRSxPQUFPLENBQUMsZ0NBQWdDLENBQUM7S0FDbkQ7SUFDRCwyRUFB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QUN4QixNQUFNO0lBQ04sS0FBSztJQUNMLDBDQUEwQyxFQUFFO1FBQzFDLE9BQU8sRUFBRSxPQUFPLENBQUMsb0VBQW9FLENBQUM7UUFDdEYsWUFBWSxFQUFFO1lBQ1osY0FBYyxFQUFFLElBQUk7WUFDcEIsV0FBVyxFQUFFLElBQUk7U0FDbEI7S0FDRjtJQUNELHFCQUFxQixFQUFFO1FBQ3JCLE9BQU8sRUFBRSxPQUFPLENBQUMsOEJBQThCLENBQUM7UUFDaEQsWUFBWSxFQUFFO1lBQ1osU0FBUyxFQUFFLElBQUk7U0FDaEI7S0FDRjtJQUNELHFEQUFxRCxFQUFFO1FBQ3JELE9BQU8sRUFBRSxPQUFPLENBQUMsaURBQWlELENBQUM7UUFDbkUsWUFBWSxFQUFFO1lBQ1osU0FBUyxFQUFFLElBQUk7U0FDaEI7S0FDRjtJQUNELDBHQUEwRyxFQUFFO1FBQzFHLE9BQU8sRUFBRSxPQUFPLENBQUMsZ0dBQWdHLENBQUM7S0FDbkg7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogdHNsaW50OmRpc2FibGU6bWF4LWxpbmUtbGVuZ3RoICovXG5pbXBvcnQgeyBnZXR0ZXh0IH0gZnJvbSAnLi9nZXR0ZXh0JztcblxuZXhwb3J0IGNvbnN0IE1FU1NBR0VTID0ge1xuICAnXkFjY2VzcyBpcyBkZW5pZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0FjY2VzcyBkZW5pZWQuJylcbiAgfSxcbiAgJ15BbGFybSBjcmVhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdBbGFybSBjcmVhdGVkJylcbiAgfSxcbiAgJ15BbGFybSB1cGRhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdBbGFybSB1cGRhdGVkJylcbiAgfSxcbiAgJ15BUEkgaXMgbm90IGF2YWlsYWJsZSB3aXRoIHRoZSBuZXcgZG9tYWluJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDb3VsZCBub3QgYWN0aXZhdGUgY3VzdG9tIGRvbWFpbi4gRE5TIHNldHVwIGlzIGluY29ycmVjdC4nKVxuICB9LFxuICAnXkFwcGxpY2F0aW9uIHdpdGggZ2l2ZW4gbmFtZSBhbHJlYWR5IGV4aXN0JCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdBcHBsaWNhdGlvbiB3aXRoIGdpdmVuIG5hbWUgYWxyZWFkeSBleGlzdHMuJylcbiAgfSxcbiAgJ15BcHBsaWNhdGlvbiB3aXRoIGlkICguKz8pIGlzIGFscmVhZHkgYXNzaWduZWQgdG8gdGhlIHRlbmFudCAoLis/KSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVGhpcyBhcHBsaWNhdGlvbiBpcyBhbHJlYWR5IGFzc2lnbmVkIHRvIHRlbmFudCBcInt7dGVuYW50fX1cIi4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRlbmFudDogJyQyJ1xuICAgIH1cbiAgfSxcbiAgJ14oLispcHBsaWNhdGlvbiBmb3IgdGVuYW50ICguKykgd2l0aCBwcm9wZXJ0aWVzIFxcXFwoICguKz8pIFxcXFwpIGFscmVhZHkgZXhpc3RzJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdBcHBsaWNhdGlvbiBmb3IgdGVuYW50IFwie3t0ZW5hbnR9fVwiIHdpdGggdGhlIGZvbGxvd2luZyB2YWx1ZXMgKHt7dmFsdWVzTGlzdH19KSBhbHJlYWR5IGV4aXN0cy4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRlbmFudDogJyQyJyxcbiAgICAgIHZhbHVlc0xpc3Q6ICckMydcbiAgICB9XG4gIH0sXG4gICdeQXV0aGVudGljYXRpb24gZmFpbGVkISA6IFVzZXIgYWNjb3VudCBpcyBsb2NrZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0F1dGhlbnRpY2F0aW9uIGZhaWxlZCBkdWUgdG86IHVzZXIgYWNjb3VudCBpcyBsb2NrZWQuJylcbiAgfSxcbiAgJ15BdmFpbGFiaWxpdHkgbW9uaXRvcmluZyByZWNvcmQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0F2YWlsYWJpbGl0eSBtb25pdG9yaW5nIHJlY29yZCcpXG4gIH0sXG4gICdeQ2FuIG5vdCBhY3RpdmF0ZSBhIGNlcnRpZmljYXRlIHdoaWNoIGlzIGVpdGhlciBleHBpcmVkIG9yIG5vdCB5ZXQgdmFsaWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0Nhbm5vdCBhY3RpdmF0ZSBhIGNlcnRpZmljYXRlIHdoaWNoIGlzIGVpdGhlciBleHBpcmVkIG9yIG5vdCB5ZXQgdmFsaWQuJylcbiAgfSxcbiAgJ15DYW5ub3QgYWRkIGNlcnRpZmljYXRlIC0gY2VydGlmaWNhdGUgd2l0aCAoLis/KSBmaW5nZXJwcmludCBhbHJlYWR5IGV4aXN0cy4gOiBDZXJ0aWZpY2F0ZSB3aXRoICguKz8pIGZpbmdlcnByaW50IGFscmVhZHkgZXhpc3RzLic6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDb3VsZCBub3QgYWRkIGNlcnRpZmljYXRlLiBDZXJ0aWZpY2F0ZSB3aXRoIHt7ZmluZ2VycHJpbnR9fSBmaW5nZXJwcmludCBhbHJlYWR5IGV4aXN0cy4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIGZpbmdlcnByaW50OiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkNhbm5vdCBjaGFuZ2UgcGFzc3dvcmQuIDogUHJvdmlkZWQgdG9rZW4gZG9lcyBub3QgZXhpc3QuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDYW5ub3QgY2hhbmdlIHBhc3N3b3JkOiBwcm92aWRlZCB0b2tlbiBpcyBpbnZhbGlkLicpXG4gIH0sXG4gICdeQ2Fubm90IGRlcGxveSBtb2R1bGUgKC4qKSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ2Fubm90IGRlcGxveSBtb2R1bGUgZHVlIHRvIGVycm9yOiBcInt7IGVycm9yTWVzc2FnZSB8IHRyYW5zbGF0ZSB9fVwiLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgZXJyb3JNZXNzYWdlOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkNhbm5vdCBkZXBsb3kgbW9kdWxlICguKz8pISA6IENvbXBpbGF0aW9uIGZhaWxlZCBpbiBtb2R1bGUgXFwnKC4rPylcXCcgaW4gZXhwcmVzc2lvbiBcXCcoLis/KVxcJyA6IEluY29ycmVjdCBzeW50YXggbmVhciBcXCcoLis/KVxcJyBhdCBsaW5lIChcXFxcZCspIGNvbHVtbiAoXFxcXGQrKSBcXFxcWyhbXFxcXFNcXFxcc10rPylcXFxcXSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ291bGQgbm90IGRlcGxveSBtb2R1bGUgXCJ7e21vZHVsZU5hbWV9fVwiLiBDb21waWxhdGlvbiBmYWlsZWQgaW4gZXhwcmVzc2lvbiBcInt7ZXhwcmVzc2lvbn19XCI6IGluY29ycmVjdCBzeW50YXggbmVhciBcInt7aW5jb3JyZWN0RXhwcmVzc2lvbn19XCIgYXQgbGluZSB7e2xpbmV9fSBjb2x1bW4ge3tjb2x1bW59fS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG1vZHVsZU5hbWU6ICckMScsXG4gICAgICBleHByZXNzaW9uOiAnJDMnLFxuICAgICAgaW5jb3JyZWN0RXhwcmVzc2lvbjogJyQ0JyxcbiAgICAgIGxpbmU6ICckNScsXG4gICAgICBjb2x1bW46ICckNidcbiAgICB9XG4gIH0sXG4gICdeQ2Fubm90IGRlcGxveSBtb2R1bGUgKC4rPykhIDogQ29tcGlsYXRpb24gZmFpbGVkIGluIG1vZHVsZSBcXCcoLis/KVxcJyBpbiBleHByZXNzaW9uIFxcJyguKz8pXFwnIDogSW5jb3JyZWN0IHN5bnRheCBuZWFyIFxcJyguKz8pXFwnIGF0IGxpbmUgKFxcXFxkKykgY29sdW1uIChcXFxcZCspIG5lYXIgcmVzZXJ2ZWQga2V5d29yZCBcXCcoLis/KVxcJyBcXFxcWyhbXFxcXFNcXFxcc10rPylcXFxcXSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ291bGQgbm90IGRlcGxveSBtb2R1bGUgXCJ7e21vZHVsZU5hbWV9fVwiLiBDb21waWxhdGlvbiBmYWlsZWQgaW4gZXhwcmVzc2lvbiBcInt7ZXhwcmVzc2lvbn19XCI6IGluY29ycmVjdCBzeW50YXggbmVhciBcInt7aW5jb3JyZWN0RXhwcmVzc2lvbn19XCIgYXQgbGluZSB7e2xpbmV9fSBjb2x1bW4ge3tjb2x1bW59fSBuZWFyIHJlc2VydmVkIGtleXdvcmQgXCJ7e2tleXdvcmR9fVwiLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbW9kdWxlTmFtZTogJyQxJyxcbiAgICAgIGV4cHJlc3Npb246ICckMycsXG4gICAgICBpbmNvcnJlY3RFeHByZXNzaW9uOiAnJDQnLFxuICAgICAgbGluZTogJyQ1JyxcbiAgICAgIGNvbHVtbjogJyQ2JyxcbiAgICAgIGtleXdvcmQ6ICckNydcbiAgICB9XG4gIH0sXG4gICdeQ2Fubm90IGRlcGxveSBtb2R1bGUgKC4rPykhIDogQ29tcGlsYXRpb24gZmFpbGVkIGluIG1vZHVsZSBcXCcoLis/KVxcJyBpbiBleHByZXNzaW9uIFxcJyguKz8pXFwnIDogSW5jb3JyZWN0IHN5bnRheCBuZWFyIFxcJyguKz8pXFwnIGF0IGxpbmUgKFxcXFxkKykgY29sdW1uIChcXFxcZCspLCBwbGVhc2UgY2hlY2sgdGhlIHdoZXJlIGNsYXVzZSBcXFxcWyhbXFxcXFNcXFxcc10rPylcXFxcXSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ291bGQgbm90IGRlcGxveSBtb2R1bGUgXCJ7e21vZHVsZU5hbWV9fVwiLiBDb21waWxhdGlvbiBmYWlsZWQgaW4gZXhwcmVzc2lvbiBcInt7ZXhwcmVzc2lvbn19XCI6IGluY29ycmVjdCBzeW50YXggbmVhciBcInt7aW5jb3JyZWN0RXhwcmVzc2lvbn19XCIgYXQgbGluZSB7e2xpbmV9fSBjb2x1bW4ge3tjb2x1bW59fSwgY2hlY2sgXCJ3aGVyZVwiIGNsYXVzZS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG1vZHVsZU5hbWU6ICckMScsXG4gICAgICBleHByZXNzaW9uOiAnJDMnLFxuICAgICAgaW5jb3JyZWN0RXhwcmVzc2lvbjogJyQ0JyxcbiAgICAgIGxpbmU6ICckNScsXG4gICAgICBjb2x1bW46ICckNidcbiAgICB9XG4gIH0sXG4gICdeQ2Fubm90IGRlcGxveSBtb2R1bGUgKC4rPykhIDogRGVwbG95bWVudCBmYWlsZWQgaW4gbW9kdWxlIFxcJyguKz8pXFwnIGluIGV4cHJlc3Npb24gXFwnKC4rPylcXCcgOiBFeGNlcHRpb24gY29tcGlsaW5nIHNjcmlwdCBcXCcoLis/KVxcJyBvZiBkaWFsZWN0IFxcJyguKz8pXFwnOiBtaXNzaW5nICguKz8pIGJlZm9yZSBzdGF0ZW1lbnQgXFxcXCgoLis/KVxcXFwpIFxcXFxbKFtcXFxcU1xcXFxzXSs/KVxcXFxdJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDb3VsZCBub3QgZGVwbG95IG1vZHVsZSBcInt7bW9kdWxlTmFtZX19XCIuIENvbXBpbGF0aW9uIGZhaWxlZCBpbiBleHByZXNzaW9uIFwie3tleHByZXNzaW9ufX1cIjogZXhjZXB0aW9uIGNvbXBpbGluZyBzY3JpcHQgXCJ7e3NjcmlwdE5hbWV9fVwiIG9mIGRpYWxlY3QgXCJ7e3NjcmlwdERpYWxlY3R9fVwiOiBtaXNzaW5nIFwie3ttaXNzaW5nU3ludGF4fX1cIiBiZWZvcmUgc3RhdGVtZW50IFwie3thZmZlY3RlZFN0YXRlbWVudH19XCIuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBtb2R1bGVOYW1lOiAnJDEnLFxuICAgICAgZXhwcmVzc2lvbjogJyQzJyxcbiAgICAgIHNjcmlwdE5hbWU6ICckNCcsXG4gICAgICBzY3JpcHREaWFsZWN0OiAnJDUnLFxuICAgICAgbWlzc2luZ1N5bnRheDogJyQ2JyxcbiAgICAgIGFmZmVjdGVkU3RhdGVtZW50OiAnJDcnXG4gICAgfVxuICB9LFxuICAnXkNhbm5vdCBleGVjdXRlIGJ1bGsgb3BlcmF0aW9uIG9uIGVtcHR5IGdyb3VwLiBHcm91cCB3aXRoIGlkPVxcJyhcXFxcZCs/KVxcJyBkb2VzblxcJ3QgaGF2ZSBjaGlsZCBhc3NldHMuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDb3VsZCBub3QgZXhlY3V0ZSBidWxrIG9wZXJhdGlvbiBvbiBhbiBlbXB0eSBncm91cC4gR3JvdXAgd2l0aCBJRCBcInt7Z3JvdXBJZH19XCIgaGFzIG5vIGNoaWxkIGFzc2V0cy4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIGdyb3VwSWQ6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeQ2Fubm90IGV4ZWN1dGUgYnVsayBvcGVyYXRpb24gb24gZW1wdHkgZ3JvdXAuIER5bmFtaWNHcm91cCB3aXRoIGlkPVxcJyhcXFxcZCs/KVxcJyBkb2VzblxcJ3QgaGF2ZSBjaGlsZCBhc3NldHMkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NvdWxkIG5vdCBleGVjdXRlIGJ1bGsgb3BlcmF0aW9uIG9uIGFuIGVtcHR5IGdyb3VwLiBTbWFydCBncm91cCB3aXRoIElEIFwie3tncm91cElkfX1cIiBoYXMgbm8gY2hpbGQgYXNzZXRzLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgZ3JvdXBJZDogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15DYW5ub3QgcGFyc2UgWDUwOSBjZXJ0aWZpY2F0ZS4gOiBDb3VsZCBub3QgcGFyc2UgY2VydGlmaWNhdGU6ICguKz8pJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDb3VsZCBub3QgcGFyc2UgWC41MDkgY2VydGlmaWNhdGU6IHt7IGZhaWx1cmVSZWFzb24gfCB0cmFuc2xhdGUgfX0uJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBmYWlsdXJlUmVhc29uOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkNhbm5vdCByZXNjaGVkdWxlIGJ1bGsgb3BlcmF0aW9uLiBBbGwgaXRzIG9wZXJhdGlvbnMgYXJlIHN1Y2Nlc3NmdWwkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0Nhbm5vdCByZXNjaGVkdWxlIGJ1bGsgb3BlcmF0aW9uLiBBbGwgaXRzIG9wZXJhdGlvbnMgYXJlIGFscmVhZHkgc3VjY2Vzc2Z1bC4nKVxuICB9LFxuICAnXkNhbm5vdCByZXNldCB1c2VyIHBhc3N3b3JkIDogQ2Fubm90IGZpbmQgdXNlciB3aXRoIHN1Y2ggZW1haWwuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDYW5ub3QgcmVzZXQgcGFzc3dvcmQgZm9yIHVzZXIgd2l0aCBzdWNoIGVtYWlsOiBlbWFpbCBub3QgZm91bmQuJylcbiAgfSxcbiAgJ15DYW5ub3QgdXBkYXRlL2RlbGV0ZSBhcHBsaWNhdGlvbiBiaW5hcnkgdmlhIHRoaXMgZW5kcG9pbnQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0Nhbm5vdCB1cGRhdGUvZGVsZXRlIGFwcGxpY2F0aW9uIGJpbmFyeSB2aWEgdGhpcyBlbmRwb2ludCcpXG4gIH0sXG4gICdeQ2FuXFwndCBkZWxldGUgdXNlciBiZWNhdXNlIGl0IGlzIHVzZWQgYnkgYW5vdGhlciBtYW5hZ2VkIG9iamVjdCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ2Fubm90IGRlbGV0ZSBkZXZpY2Ugd2l0aCBhc3NvY2lhdGVkIGRldmljZSBvd25lciBiZWNhdXNlIHRoaXMgb3duZXIgaXMgc3RpbGwgYXNzaWduZWQgdG8gb3RoZXIgZGV2aWNlKHMpLiBUcnkgdG8gcmVtb3ZlIG9ubHkgdGhlIGRldmljZS4nKVxuICB9LFxuICAnXkNlcCBtb2R1bGUgY3JlYXRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ0VQIG1vZHVsZSBjcmVhdGVkJylcbiAgfSxcbiAgJ15DZXAgbW9kdWxlIHVwZGF0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NFUCBtb2R1bGUgdXBkYXRlZCcpXG4gIH0sXG4gICdeQ2VwIG1vZHVsZSBkZWxldGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDRVAgbW9kdWxlIGRlbGV0ZWQnKVxuICB9LFxuICAnXkNlcCBtb2R1bGUgXCIoLis/KVwiIGNyZWF0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NFUCBtb2R1bGUgXCJ7e25hbWV9fVwiIGNyZWF0ZWQnKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG5hbWU6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeQ2VwIG1vZHVsZSBcIiguKz8pXCIgdXBkYXRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ0VQIG1vZHVsZSBcInt7bmFtZX19XCIgdXBkYXRlZCcpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbmFtZTogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15DZXAgbW9kdWxlIFwiKC4rPylcIiBkZWxldGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDRVAgbW9kdWxlIFwie3tuYW1lfX1cIiBkZWxldGVkJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkNvbW1hbmQgc3RhdGUgaXMgaW52YWxpZDogKC4rKSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ29tbWFuZCBzdGF0ZSBpcyBpbnZhbGlkOiB7e3Zpb2xhdGlvbnN9fScpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgdmlvbGF0aW9uczoge1xuICAgICAgICBjYXB0dXJlOiAnJDEnLFxuICAgICAgICB0cmFuc2xhdGU6IHtcbiAgICAgICAgICAnKFxcXFx3Kz8pIC0gbWF5IG5vdCBiZSBudWxsJzoge1xuICAgICAgICAgICAgZ2V0dGV4dDogZ2V0dGV4dCgnXCJ7e2ZpZWxkfX1cIiBtdXN0IG5vdCBiZSBudWxsJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgZmllbGQ6ICckMSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0sXG4gICdeQ291bGQgbm90IGNvbm5lY3QgdG8gZW5kcG9pbnQgKC4rKVxcXFwuIENvdWxkIG5vdCB2ZXJpZnkgYCguKylgIGhvc3Qga2V5IHdpdGggZmluZ2VycHJpbnQgYCguKylgIGZvciBgKC4rKWAgb24gcG9ydCAoLispXFxcXC4gSWYgeW91IGV4cGVjdGVkIHRoYXQga2V5LCBwbGVhc2UgcmVtb3ZlIHRoZSBwcmV2aW91cyBvbmUgZnJvbSBjb25maWd1cmF0aW9uIHRvIGFsbG93IGZvciBjb25uZWN0aW9uXFxcXC4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NvdWxkIG5vdCBjb25uZWN0IHRvIGVuZHBvaW50IFwie3tlbmRwb2ludE5hbWV9fVwiLiBDb3VsZCBub3QgdmVyaWZ5IHt7a2V5VHlwZX19IGhvc3Qga2V5IHdpdGggZmluZ2VycHJpbnQge3tmaW5nZXJwcmludH19IGZvciBob3N0IHt7aG9zdH19IG9uIHBvcnQge3twb3J0fX0uIElmIHlvdSBleHBlY3RlZCB0aGlzIGtleSwgcGxlYXNlIHJlbW92ZSB0aGUgcHJldmlvdXMgb25lIGZyb20gY29uZmlndXJhdGlvbiB0byBhbGxvdyBmb3IgY29ubmVjdGlvbi4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIGVuZHBvaW50TmFtZTogJyQxJyxcbiAgICAgIGtleVR5cGU6ICckMicsXG4gICAgICBmaW5nZXJwcmludDogJyQzJyxcbiAgICAgIGhvc3Q6ICckNCcsXG4gICAgICBwb3J0OiAnJDUnXG4gICAgfVxuICB9LFxuICAnXkNvdWxkIG5vdCBsb2dpbiB0byBzc2ggc2VydmVyIG9uIGVuZHBvaW50IFwiKC4rKVwiXFxcXC4gUHJvdmlkZWQgY3JlZGVudGlhbCBmb3IgdXNlciBcIiguKylcIiBpcyBpbmNvcnJlY3RcXFxcLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ291bGQgbm90IGFjY2VzcyBTU0ggc2VydmVyIG9uIGVuZHBvaW50IFwie3tlbmRwb2ludE5hbWV9fVwiLiBQcm92aWRlZCBjcmVkZW50aWFscyBmb3IgdXNlciBcInt7dXNlck5hbWV9fVwiIGFyZSBpbmNvcnJlY3QuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBlbmRwb2ludE5hbWU6ICckMScsXG4gICAgICB1c2VyTmFtZTogJyQyJ1xuICAgIH1cbiAgfSxcbiAgJ15Db3VsZCBub3Qgc2F2ZSBvYmplY3QgcmVtb3RlQWNjZXNzVXBkYXRlOiAoLispJCc6IHtcbiAgICBnZXR0ZXh0OiAne3tlcnJvck1lc3NhZ2VzfX0nLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgZXJyb3JNZXNzYWdlczoge1xuICAgICAgICBjYXB0dXJlOiAnJDEnLFxuICAgICAgICB0cmFuc2xhdGU6IHtcbiAgICAgICAgICAnQ291bGQgbm90IHJlY29nbml6ZSBob3N0LWtleSBmb3JtYXQnOiB7XG4gICAgICAgICAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDb3VsZCBub3QgcmVjb2duaXplIFwiSG9zdCBrZXlcIiBmb3JtYXQnKVxuICAgICAgICAgIH0sXG4gICAgICAgICAgJ0NvdWxkIG5vdCByZWNvZ25pemUga2V5LXBhaXIgZm9ybWF0Jzoge1xuICAgICAgICAgICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ291bGQgbm90IHJlY29nbml6ZSB0aGUgZm9ybWF0IG9mIFwiUHVibGljIGtleVwiIG9yIFwiUHJpdmF0ZSBrZXlcIicpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9LFxuICAnXkNvdWxkIG5vdCB1cGRhdGUgdXNlci4gOiBFcnJvciBwZXJzaXN0aW5nIHVzZXIgKC4rPykhJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDb3VsZCBub3QgdXBkYXRlIHVzZXIgXCJ7e3VzZXJuYW1lfX1cIi4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHVzZXJuYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkNyZWF0aW9uIHJhbXAgbXVzdCBiZSBncmVhdGVyIHRoYW4gKFxcXFxkKz8pJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdCdWxrIG9wZXJhdGlvbiBkZWxheSBtdXN0IGJlIGdyZWF0ZXIgdGhhbiB7e21pblNlY29uZHN9fSBzZWNvbmRzLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbWluU2Vjb25kczogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15DcmVhdGVkIGNvbnRhaW5lciQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ29udGFpbmVyIGNyZWF0ZWQuJylcbiAgfSxcbiAgJ15DcmVhdGVkIHBvZDogKC4rKSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnUG9kIFwie3tpbWFnZU5hbWV9fVwiIGNyZWF0ZWQuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBpbWFnZU5hbWU6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeQ1NWIGZpbGUgY29udGFpbmVkIGVtcHR5IGRhdGFzZXQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ05vIGVudHJpZXMgZm91bmQgaW4gdXBsb2FkZWQgQ1NWIGZpbGUuJylcbiAgfSxcbiAgJ15DeWNsZSBkZXRlY3RlZCBmb3Igcm91dGUgKC4rPykhJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDeWNsZSBkZXRlY3RlZCBmb3Igcm91dGUge3tyb3V0ZX19LicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgcm91dGU6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeRGF0YSBicm9rZXIgcHJvY2Vzc2luZyBpcyBjdXJyZW50bHkgb3ZlcmxvYWRlZCBhbmQgbWF5IHN0b3AgZm9yd2FyZGluZyB5b3VyIGRhdGFcXFxcLiBQbGVhc2UgY29udGFjdCBzdXBwb3J0XFxcXC4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0RhdGEgYnJva2VyIHByb2Nlc3NpbmcgaXMgY3VycmVudGx5IG92ZXJsb2FkZWQgYW5kIG1heSBzdG9wIGZvcndhcmRpbmcgeW91ciBkYXRhLiBQbGVhc2UgY29udGFjdCBzdXBwb3J0LicpXG4gIH0sXG4gICdeRGF0YSBicm9rZXIgcHJvY2Vzc2luZyBpcyBub3QgYWJsZSB0byBjb25uZWN0IGRvIGRlc3RpbmF0aW9uIHRlbmFudCwgdGh1cyBkYXRhIGZvcndhcmRpbmcgaXMgbm90IHdvcmtpbmdcXFxcLiBQbGVhc2UgY29udGFjdCBzdXBwb3J0XFxcXC4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0RhdGEgYnJva2VyIHByb2Nlc3NpbmcgaXMgbm90IGFibGUgdG8gY29ubmVjdCB0byBkZXN0aW5hdGlvbiB0ZW5hbnQsIHRodXMgZGF0YSBmb3J3YXJkaW5nIGlzIG5vdCB3b3JraW5nLiBQbGVhc2UgY29udGFjdCBzdXBwb3J0LicpXG4gIH0sXG4gICdeRGV2aWNlIGlkIFxcJyguKz8pXFwnIGNvbnRhaW5zIFxcJyguKz8pXFwnIGNoYXJhY3RlciB3aGljaCBpcyBub3QgcGVybWl0dGVkLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnSUQgXCJ7e2RldmljZUlkfX1cIiBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlcjogXCJ7e2ludmFsaWRDaGFyYWN0ZXJ9fVwiLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgZGV2aWNlSWQ6ICckMScsXG4gICAgICBpbnZhbGlkQ2hhcmFjdGVyOiAnJDInXG4gICAgfVxuICB9LFxuICAnXkRldmljZSBuYW1lOiBcXCcoLis/KVxcJywgYWxhcm0gdGV4dDogXFwnKC4rPylcXCckJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0RldmljZSBuYW1lOiBcInt7ZGV2aWNlTmFtZX19XCIsIGFsYXJtIHRleHQ6IFwie3thbGFybVRleHQgfCB0cmFuc2xhdGV9fVwiJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBkZXZpY2VOYW1lOiAnJDEnLFxuICAgICAgYWxhcm1UZXh0OiAnJDInXG4gICAgfVxuICB9LFxuICAnXkRpc3BsYXkgbmFtZSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnTG9naW4gYWxpYXMnKVxuICB9LFxuICAnXkRvbWFpbiBuYW1lIGluIHVwbG9hZGVkIGNlcnRpZmljYXRlIGRpZmZlcnMgZnJvbSB0aGUgb25lIGluIHVzZSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnRG9tYWluIG5hbWUgaW4gdXBsb2FkZWQgY2VydGlmaWNhdGUgZGlmZmVycyBmcm9tIHRoZSBvbmUgaW4gdXNlLiBQbGVhc2UgZGVhY3RpdmF0ZSB0aGUgY3VzdG9tIGRvbWFpbiBiZWZvcmUgdXBsb2FkaW5nIG5ldyBjZXJ0aWZpY2F0ZS4nKVxuICB9LFxuICAnXkRvbWFpbiBuYW1lIGlzIGFscmVhZHkgaW4gdXNlIGJ5IGFub3RoZXIgdGVuYW50ISQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnRG9tYWluIG5hbWUgaXMgYWxyZWFkeSB1c2VkIGJ5IGFub3RoZXIgdGVuYW50LicpXG4gIH0sXG4gICdeRHVwbGljYXRlZCBjb25uZWN0b3IgZm9yIGluc3RhbmNlVXJsICguKz8pISQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVGFyZ2V0IFVSTCB7e3RhcmdldFVybH19IGFscmVhZHkgdXNlZCBieSBhbm90aGVyIGNvbm5lY3Rvci4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRhcmdldFVybDogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15EdXBsaWNhdGVkIGNvbm5lY3RvciBmb3IgbmFtZSAoLis/KSEkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0Nvbm5lY3RvciBuYW1lIFwie3tuYW1lfX1cIiBhbHJlYWR5IHVzZWQgYnkgYW5vdGhlciBjb25uZWN0b3IuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkVudHJ5IGlzIG91dHNpZGUgb2YgdGhlIHRhcmdldCBkaXI6ICguKykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0ZpbGUgZW50cnkgb3V0c2lkZSBvZiB0aGUgdGFyZ2V0IGRpcmVjdG9yeTogXCJ7e3BhdGh9fVwiLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgcGF0aDogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15FcnJvciBkdXJpbmcgcGFzc3dvcmQgdmFsaWRhdGlvbi4gOiBQYXNzd29yZCBtdXN0IGhhdmUgYXQgbGVhc3QgKFxcXFxkKz8pIGNoYXJhY3RlcnMgYW5kIG5vIG1vcmUgdGhhbiAoXFxcXGQrPykgYW5kIG11c3QgY29udGFpbiBvbmx5IExhdGluMSBjaGFyYWN0ZXJzLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnUGFzc3dvcmQgaXMgaW52YWxpZC4gSXQgbXVzdCBoYXZlIGF0IGxlYXN0IHt7bWluQ2hhcmFjdGVyc0NvdW50fX0gYW5kIG5vIG1vcmUgdGhhbiB7e21heENoYXJhY3RlcnNDb3VudH19IGNoYXJhY3RlcnMuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBtaW5DaGFyYWN0ZXJzQ291bnQ6ICckMScsXG4gICAgICBtYXhDaGFyYWN0ZXJzQ291bnQ6ICckMidcbiAgICB9XG4gIH0sXG4gICdeRXJyb3IgZHVyaW5nIHBhc3N3b3JkIHZhbGlkYXRpb24uIDogWW91ciBwYXNzd29yZCBoYXMgYmVlbiB1c2VkIGFscmVhZHkuIENob29zZSBhbm90aGVyLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVGhpcyBwYXNzd29yZCBoYXMgYWxyZWFkeSBiZWVuIHVzZWQgZWFybGllci4gVXNlIGEgZGlmZmVyZW50IG9uZS4nKVxuICB9LFxuICAnXkVycm9yIGluIHN0YXRlbWVudCAoLis/KTooLis/KSEgOiBJbmNvcnJlY3Qgc3ludGF4IG5lYXIgXFwnKC4rPylcXCcgbmVhciByZXNlcnZlZCBrZXl3b3JkIFxcJyguKz8pXFwnIFxcXFxbKFtcXFxcU1xcXFxzXSs/KVxcXFxdJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdFcnJvciBpbiBzdGF0ZW1lbnQge3ttb2R1bGVOYW1lfX06e3tzdGF0ZW1lbnROdW1iZXJ9fS4gSW5jb3JyZWN0IHN5bnRheCBuZWFyIGV4cHJlc3Npb24gXCJ7e2V4cHJlc3Npb259fVwiIG5lYXIgcmVzZXJ2ZWQga2V5d29yZCBcInt7a2V5d29yZH19XCIuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBtb2R1bGVOYW1lOiAnJDEnLFxuICAgICAgc3RhdGVtZW50TnVtYmVyOiAnJDInLFxuICAgICAgZXhwcmVzc2lvbjogJyQzJyxcbiAgICAgIGtleXdvcmQ6ICckNCdcbiAgICB9XG4gIH0sXG4gICdeRXh0ZXJuYWwgaWQgbm90IGZvdW5kOyBleHRlcm5hbCBpZCA9IElEIFxcXFxbdHlwZT0oLis/KSwgdmFsdWU9KC4rPylcXFxcXSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnRXh0ZXJuYWwgSUQgbm90IGZvdW5kIGZvciB0eXBlIFwie3t0eXBlfX1cIiBhbmQgdmFsdWUgXCJ7e3ZhbHVlfX1cIi4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHR5cGU6ICckMScsXG4gICAgICB2YWx1ZTogJyQyJ1xuICAgIH1cbiAgfSxcbiAgJ15FcnJvciBvY2N1cnJlZCB3aGVuIHRyeWluZyB0byBmaW5kIGFuIEFwcGxpY2F0aW9uIGZvciBpZCBJRCAoLispIDogQ291bGQgbm90IGZpbmQgYXBwbGljYXRpb24gYnkgSUQgKFxcXFxkKykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NvdWxkIG5vdCBmaW5kIGFwcGxpY2F0aW9uIGJ5IElEIHt7YXBwbGljYXRpb25JZH19LicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgYXBwbGljYXRpb25JZDogJyQyJ1xuICAgIH1cbiAgfSxcbiAgJ15IdHRwIHN0YXR1cyBjb2RlOiA0MDRcXG57ZXJyb3I9XCJvcHRpb25zL05vdCBGb3VuZFwiLG1lc3NhZ2U9XCJVbmFibGUgdG8gZmluZCBvcHRpb24gYnkgZ2l2ZW4ga2V5OiBzaWdmb3gtYWdlbnQvcHJvdmlkZXIudG9rZW5cIixpbmZvPVwiaHR0cHM6Ly93d3cuY3VtdWxvY2l0eS5jb20vZ3VpZGVzL3JlZmVyZW5jZS1ndWlkZS8jZXJyb3JfcmVwb3J0aW5nXCIsZGV0YWlscz1cIm51bGxcIn0nOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVW5hYmxlIHRvIGZpbmQgb3B0aW9uIGJ5IGdpdmVuIGtleTogc2lnZm94LWFnZW50L3Byb3ZpZGVyLnRva2VuJylcbiAgfSxcbiAgJ15GYWlsZWQgdG8gZGVsZXRlIGFwcGxpY2F0aW9uLiAgOiBDYW5ub3QgcmVtb3ZlIGFwcGxpY2F0aW9uIGFzc2lnbmVkIHRvIG90aGVyIHRlbmFudHMuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDb3VsZCBub3QgZGVsZXRlIGFwcGxpY2F0aW9uIGFzc2lnbmVkIHRvIG90aGVyIHRlbmFudHMuJylcbiAgfSxcbiAgJ15GYWlsZWQgdG8gZXh0cmFjdCBjZXJ0aWZpY2F0ZSBmcm9tIFBLQ1MxMiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnRmFpbGVkIHRvIGV4dHJhY3QgY2VydGlmaWNhdGUgZnJvbSBQS0NTMTIuJylcbiAgfSxcbiAgJ15GYWlsZWQgdG8gdXBkYXRlIGRvbWFpbiBhdCB0aGUgcGxhdGZvcm0kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0ZhaWxlZCB0byB1cGRhdGUgZG9tYWluIGF0IHRoZSBwbGF0Zm9ybS4nKVxuICB9LFxuICAnXkZpbmRpbmcgZGV2aWNlIGRhdGEgZnJvbSBkYXRhYmFzZSBmYWlsZWQgOiBObyBtYW5hZ2VkT2JqZWN0IGZvciBpZCBcXCcoLis/KVxcJyEkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NvdWxkIG5vdCBmaW5kIG1hbmFnZWQgb2JqZWN0IHdpdGggSUQgXCJ7e2RldmljZUlkfX1cIi4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIGRldmljZUlkOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkZvbGxvd2luZyBtYW5kYXRvcnkgZmllbGRzIHNob3VsZCBiZSBpbmNsdWRlZDogKC4rPykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0ZvbGxvd2luZyBtYW5kYXRvcnkgZmllbGRzIHNob3VsZCBiZSBpbmNsdWRlZDoge3tmaWVsZHN9fScpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgZmllbGRzOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkdsb2JhbCBSb2xlIHVwZGF0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0dsb2JhbCByb2xlIHVwZGF0ZWQnKVxuICB9LFxuICAnXkdsb2JhbCBSb2xlICguKz8pIHVwZGF0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0dsb2JhbCByb2xlIFwie3tuYW1lfX1cIiB1cGRhdGVkJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkdsb2JhbCBSb2xlICguKz8pIHVwZGF0ZWQ6ICguKykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0dsb2JhbCByb2xlIFwie3tuYW1lfX1cIiB1cGRhdGVkOiB7e3VwZGF0ZXNMaXN0fX0nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG5hbWU6ICckMScsXG4gICAgICB1cGRhdGVzTGlzdDoge1xuICAgICAgICBjYXB0dXJlOiAnJDInLFxuICAgICAgICB0cmFuc2xhdGU6IHtcbiAgICAgICAgICAnYXBwbGljYXRpb25zIFxcXFxbKFteXFxcXF1dKz8pXFxcXF0gYWRkZWQnOiB7XG4gICAgICAgICAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdhcHBsaWNhdGlvbnMge3tsaXN0fX0gYWRkZWQnKSxcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgICAgICAgICBsaXN0OiAnJDEnXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICAnYXBwbGljYXRpb25zIFxcXFxbKFteXFxcXF1dKz8pXFxcXF0gcmVtb3ZlZCc6IHtcbiAgICAgICAgICAgIGdldHRleHQ6IGdldHRleHQoJ2FwcGxpY2F0aW9ucyB7e2xpc3R9fSByZW1vdmVkJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgbGlzdDogJyQxJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgJ3JvbGVzIFxcXFxbKFteXFxcXF1dKz8pXFxcXF0gYWRkZWQnOiB7XG4gICAgICAgICAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdyb2xlcyB7e2xpc3R9fSBhZGRlZCcpLFxuICAgICAgICAgICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICAgICAgICAgIGxpc3Q6ICckMSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgICdyb2xlcyBcXFxcWyhbXlxcXFxdXSs/KVxcXFxdIHJlbW92ZWQnOiB7XG4gICAgICAgICAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdyb2xlcyB7e2xpc3R9fSByZW1vdmVkJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgbGlzdDogJyQxJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSxcbiAgJ15HbG9iYWwgUm9sZXMkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0dsb2JhbCByb2xlcycpXG4gIH0sXG4gICdeT3BlcmF0aW9uIHVwZGF0ZWQ6ICguKykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ09wZXJhdGlvbiB1cGRhdGVkOiB7e3VwZGF0ZXNMaXN0fX0nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHVwZGF0ZXNMaXN0OiB7XG4gICAgICAgIGNhcHR1cmU6ICckMScsXG4gICAgICAgIHRyYW5zbGF0ZToge1xuICAgICAgICAgICdzdGF0dXM9XFwnKC4rPylcXCcnOiB7XG4gICAgICAgICAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdzdGF0dXM9XCJ7e3N0YXR1cyB8IHRyYW5zbGF0ZX19XCInKSxcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgICAgICAgICBzdGF0dXM6ICckMSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgICdkZXNjcmlwdGlvbj1cXCcoLis/KVxcJyc6IHtcbiAgICAgICAgICAgIGdldHRleHQ6IGdldHRleHQoJ2Rlc2NyaXB0aW9uPVwie3tkZXNjcmlwdGlvbiB8IHRyYW5zbGF0ZX19XCInKSxcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJyQxJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgJ2RldmljZSBuYW1lPVxcJyguKz8pXFwnJzoge1xuICAgICAgICAgICAgZ2V0dGV4dDogZ2V0dGV4dCgnZGV2aWNlIG5hbWU9XCJ7e2RldmljZU5hbWV9fVwiJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgZGV2aWNlTmFtZTogJyQxJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgJ2ZhaWx1cmUgcmVhc29uPVxcJyguKz8pXFwnJzoge1xuICAgICAgICAgICAgZ2V0dGV4dDogZ2V0dGV4dCgnZmFpbHVyZSByZWFzb249XCJ7e2ZhaWx1cmVSZWFzb24gfCB0cmFuc2xhdGV9fVwiJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgZmFpbHVyZVJlYXNvbjogJyQxJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSxcbiAgJ15JRCBcXFxcW3R5cGU9KC4rPyksIHZhbHVlPSguKz8pXFxcXF0gd2FzIGFscmVhZHkgYm91bmQgdG8gZGlmZmVyZW50IEdsb2JhbCBJRC4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0V4dGVybmFsIElEIFwie3t2YWx1ZX19XCIgb2YgdGhlIHR5cGUgXCJ7e3R5cGV9fVwiIGFscmVhZHkgZXhpc3RzLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgdHlwZTogJyQxJyxcbiAgICAgIHZhbHVlOiAnJDInXG4gICAgfVxuICB9LFxuICAnXkludmFsaWQgY3JlZGVudGlhbHMhIDogQmFkIGNyZWRlbnRpYWxzJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdJbnZhbGlkIGNyZWRlbnRpYWxzLicpXG4gIH0sXG4gICdeSW52YWxpZCBjcmVkZW50aWFscyEgOiBObyBwaG9uZSBudW1iZXIgcHJvdmlkZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0xvZyBpbnRvIHRoZSBtYW5hZ2VtZW50IHRlbmFudCBmaXJzdCBhbmQgZW50ZXIgeW91ciBwaG9uZSBudW1iZXIuJylcbiAgfSxcbiAgJ15JbnZlbnRvcnkgUm9sZSByZW1vdmVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdJbnZlbnRvcnkgcm9sZSByZW1vdmVkJylcbiAgfSxcbiAgJ15JbnZlbnRvcnkgUm9sZSAoLis/KSByZW1vdmVkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0ludmVudG9yeSByb2xlIFwie3tuYW1lfX1cIiBkZWxldGVkLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbmFtZTogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15JbnZlbnRvcnkgUm9sZSB1cGRhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdJbnZlbnRvcnkgcm9sZSB1cGRhdGVkJylcbiAgfSxcbiAgJ15JbnZlbnRvcnkgUm9sZSAoLis/KSB1cGRhdGVkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0ludmVudG9yeSByb2xlIFwie3tuYW1lfX1cIiB1cGRhdGVkLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbmFtZTogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15JL08gZXJyb3I6IENvbm5lY3Rpb24gcmVmdXNlZDsgbmVzdGVkIGV4Y2VwdGlvbiBpcyBDb25uZWN0aW9uIHJlZnVzZWQgOiBDb25uZWN0aW9uIHJlZnVzZWQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ29ubmVjdGlvbiByZWZ1c2VkJylcbiAgfSxcbiAgJ15JL08gZXJyb3I6IFJlYWQgdGltZWQgb3V0OyBuZXN0ZWQgZXhjZXB0aW9uIGlzIFJlYWQgdGltZWQgb3V0IDogUmVhZCB0aW1lZCBvdXQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnUmVhZCB0aW1lZCBvdXQnKVxuICB9LFxuICAnXkxvZyBmaWxlIHJlcXVlc3RlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnTG9nIGZpbGUgcmVxdWVzdGVkLicpXG4gIH0sXG4gICdeTWFuYWdlZCBvYmplY3QgZGVsZXRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnTWFuYWdlZCBvYmplY3QgZGVsZXRlZCcpXG4gIH0sXG4gICdeTWFuYWdlZCBvYmplY3QgXCIoLis/KVwiIGRlbGV0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ01hbmFnZWQgb2JqZWN0IFwie3tuYW1lfX1cIiBkZWxldGVkJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXk1heGltdW0gZmlsZSBzaXplIGV4Y2VlZGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdNYXhpbXVtIGZpbGUgc2l6ZSBleGNlZWRlZC4nKVxuICB9LFxuICAnXk1lc3NhZ2Ugd2l0aCBJRCAoLis/KSBkb2VzblxcJ3QgZXhpc3QgaW4gc21hcnQgcmVzdCB0ZW1wbGF0ZSAoLis/KSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnTWVzc2FnZSB3aXRoIElEIFwie3ttZXNzYWdlSWR9fVwiIGRvZXNuXFwndCBleGlzdCBpbiBTbWFydFJFU1QgdGVtcGxhdGUgd2l0aCBJRCBcInt7dGVtcGxhdGVJZH19XCInKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG1lc3NhZ2VJZDogJyQxJyxcbiAgICAgIHRlbXBsYXRlSWQ6ICckMidcbiAgICB9XG4gIH0sXG4gICdeTmV3RGV2aWNlUmVxdWVzdCBmb3IgaWQgPSAoLis/KSBhbHJlYWR5IGV4aXN0cy4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0RldmljZSByZWdpc3RyYXRpb24gcmVxdWVzdCB3aXRoIElEIHt7aWR9fSBhbHJlYWR5IGV4aXN0cy4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIGlkOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXk5vIGNvbW11bmljYXRpb24gd2l0aCBkZXZpY2Ugc2luY2UgKC4rPykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ05vIGNvbW11bmljYXRpb24gd2l0aCBkZXZpY2Ugc2luY2Uge3t0aW1lc3RhbXAgfCBhYnNvbHV0ZURhdGV9fS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRpbWVzdGFtcDogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15ObyBkYXRhIHJlY2VpdmVkIGZyb20gZGV2aWNlIHdpdGhpbiByZXF1aXJlZCBpbnRlcnZhbC4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ05vIGRhdGEgcmVjZWl2ZWQgZnJvbSBkZXZpY2Ugd2l0aGluIHJlcXVpcmVkIGludGVydmFsLicpXG4gIH0sXG4gICdeTm8gTG9SYSBwcm92aWRlciBzZXR0aW5ncyBhcmUgZm91bmQuIFBsZWFzZSBjb25maWd1cmUgdGhlIGNvbm5lY3Rpdml0eSBzZXR0aW5ncy4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ05vIExvUmEgcHJvdmlkZXIgc2V0dGluZ3MgYXJlIGZvdW5kLiBQbGVhc2UgY29uZmlndXJlIHRoZSBjb25uZWN0aXZpdHkgc2V0dGluZ3MuJylcbiAgfSxcbiAgJ15Ob3Qgd2l0aGluIGFueSBjb250ZXh0ISQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQSBwcm9ibGVtIG9jY3VycmVkIHdpdGggbWljcm9zZXJ2aWNlIHN1YnNjcmlwdGlvbi4nKVxuICB9LFxuICAnXk1heGltdW0gYWdlIGNhbm5vdCBiZSBiaWdnZXIgdGhhbiAxMCB5ZWFycy4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ01heGltdW0gYWdlIGNhbm5vdCBiZSBiaWdnZXIgdGhhbiAxMCB5ZWFycy4nKVxuICB9LFxuICAnXk1pY3Jvc2VydmljZSBhcHBsaWNhdGlvbiBuYW1lIGluY29ycmVjdC4gUGxlYXNlIHVzZSBvbmx5IGxvd2VyLWNhc2UgbGV0dGVycywgZGlnaXRzIGFuZCBkYXNoZXMuIE1heGltdW0gbGVuZ3RoIGlzIChcXFxcZCspIGNoYXJhY3RlcnMuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdNaWNyb3NlcnZpY2UgYXBwbGljYXRpb24gbmFtZSBpcyBpbmNvcnJlY3Q6IG9ubHkgbG93ZXIgY2FzZSBsZXR0ZXJzLCBkaWdpdHMgYW5kIGRhc2hlcyBhbGxvd2VkLiBNYXhpbXVtIGxlbmd0aDoge3ttYXhMZW5ndGh9fS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG1heExlbmd0aDogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15NaWNyb3NlcnZpY2Ugbm90IGF2YWlsYWJsZS4qJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdNaWNyb3NlcnZpY2UgaXMgbm90IGF2YWlsYWJsZS4nKVxuICB9LFxuICAnXk9wZXJhdGlvbiBjcmVhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdPcGVyYXRpb24gY3JlYXRlZC4nKVxuICB9LFxuICAnXk9wZXJhdGlvbiB1cGRhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdPcGVyYXRpb24gdXBkYXRlZC4nKVxuICB9LFxuICAnXk9wZXJhdGlvbiBjcmVhdGVkOiBzdGF0dXM9XFwnKC4rPylcXCcuJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ09wZXJhdGlvbiBjcmVhdGVkOiBzdGF0dXM9XCJ7e3N0YXR1cyB8IHRyYW5zbGF0ZX19XCIuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBzdGF0dXM6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeT3B0aW9uIGNyZWF0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ09wdGlvbiBjcmVhdGVkLicpXG4gIH0sXG4gICdeT3B0aW9uIFwiKC4rPylcIiBjcmVhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdPcHRpb24gXCJ7e29wdGlvbn19XCIgY3JlYXRlZC4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG9wdGlvbjogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15PcHRpb24gZGVsZXRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnT3B0aW9uIGRlbGV0ZWQuJylcbiAgfSxcbiAgJ15PcHRpb24gXCIoLis/KVwiIGRlbGV0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ09wdGlvbiBcInt7b3B0aW9ufX1cIiBkZWxldGVkLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgb3B0aW9uOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXk93bmVyIGZpZWxkIGVycm9yLiA6IENhbm5vdCBpbnRyb2R1Y2UgY3ljbGljIGRlcGVuZGVuY3kuJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NvdWxkIG5vdCBpbnRyb2R1Y2UgY3ljbGljIG93bmVyc2hpcCBkZXBlbmRlbmN5LicpXG4gIH0sXG4gICdeUGFzc3dvcmQgY2hhbmdlIGlzIHRlbXBvcmFyeSBibG9ja2VkLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnUGFzc3dvcmQgY2hhbmdlIGlzIHRlbXBvcmFyaWx5IGJsb2NrZWQuJylcbiAgfSxcbiAgJ15QYXNzd29yZCBjaXBoZXIgZG9lcyBub3QgbWF0Y2gnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnUGFzc3dvcmQgY2lwaGVyIGRvZXMgbm90IG1hdGNoLicpXG4gIH0sXG4gICdeUGxhdGZvcm0gYXBwbGljYXRpb24gY2Fubm90IGJlIGFkZGVkIHRvLCBub3IgcmVtb3ZlZCBmcm9tIGFueSB0ZW5hbnQuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdQbGF0Zm9ybSBhcHBsaWNhdGlvbiBjYW5ub3QgYmUgYWRkZWQgdG8sIG5vciByZW1vdmVkIGZyb20gYW55IHRlbmFudC4nKVxuICB9LFxuICAnXlByaXZhdGUga2V5IG11c3QgYmUgcHJvdmlkZWQgaW4gS0VZX1BBSVIgY3JlZGVudGlhbHMkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1ByaXZhdGUga2V5IG11c3QgYmUgcHJvdmlkZWQgd2hlbiBcIlB1YmxpYyAvIHByaXZhdGUga2V5c1wiIG9wdGlvbiBpcyBzZWxlY3RlZC4nKVxuICB9LFxuICAnXlByaXZhdGUga2V5IGNpcGhlciBkb2VzIG5vdCBtYXRjaCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdQcml2YXRlIGtleSBjaXBoZXIgZG9lcyBub3QgbWF0Y2gnKVxuICB9LFxuICAnXlByb3RvY29sIFwiKC4rPylcIiBkb2VzIG5vdCBzdXBwb3J0IFwiKC4rPylcIiBjcmVkZW50aWFscyB0eXBlJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdQcm90b2NvbCBcInt7cHJvdG9jb2x9fVwiIGRvZXMgbm90IHN1cHBvcnQgXCJ7e2NyZWRlbnRpYWxzVHlwZX19XCIgY3JlZGVudGlhbHMgdHlwZS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHByb3RvY29sOiAnJDEnLFxuICAgICAgY3JlZGVudGlhbHNUeXBlOiAnJDInXG4gICAgfVxuICB9LFxuICAnXnB1bGxpbmcgaW1hZ2UgXCIoLispXCIkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1B1bGxpbmcgaW1hZ2U6IFwie3tpbWFnZU5hbWV9fVwiLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgaW1hZ2VOYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXlJlYWwtdGltZSBldmVudCBwcm9jZXNzaW5nIGlzIGN1cnJlbnRseSBvdmVybG9hZGVkIGFuZCBtYXkgc3RvcCBwcm9jZXNzaW5nIHlvdXIgZXZlbnRzXFxcXC4gUGxlYXNlIGNvbnRhY3Qgc3VwcG9ydFxcXFwuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdSZWFsLXRpbWUgZXZlbnQgcHJvY2Vzc2luZyBpcyBjdXJyZW50bHkgb3ZlcmxvYWRlZCBhbmQgbWF5IHN0b3AgcHJvY2Vzc2luZyB5b3VyIGV2ZW50cy4gUGxlYXNlIGNvbnRhY3Qgc3VwcG9ydC4nKVxuICB9LFxuICAnXlJlc291cmNlIElEIFxcXFxbdHlwZT1jb21fY3VtdWxvY2l0eV9tb2RlbF9pZHR5cGVfR0lkLCB2YWx1ZT0oLis/KVxcXFxdIGZvciB0aGlzIHJlcXVlc3Qgbm90IGZvdW5kLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ291bGQgbm90IGZpbmQgdGhlIHJlc291cmNlIHdpdGggSUQgXCJ7e2lkfX1cIi4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIGlkOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXlNjYWxlZCB1cCByZXBsaWNhIHNldCAoLispIHRvIChcXFxcZCspJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdSZXBsaWNhIHNldCBcInt7cmVwbGljYVNldE5hbWV9fVwiIHNjYWxlZCB1cCB0byBcInt7c2NhbGVOdW1iZXJ9fVwiLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgcmVwbGljYVNldE5hbWU6ICckMScsXG4gICAgICBzY2FsZU51bWJlcjogJyQyJ1xuICAgIH1cbiAgfSxcbiAgJ15TaW11bGF0b3Igc3RhdGUgaXMgaW52YWxpZDogKC4rKSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnU2ltdWxhdG9yIHN0YXRlIGlzIGludmFsaWQ6IHt7dmlvbGF0aW9uc319JyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICB2aW9sYXRpb25zOiB7XG4gICAgICAgIGNhcHR1cmU6ICckMScsXG4gICAgICAgIHRyYW5zbGF0ZToge1xuICAgICAgICAgICcoXFxcXHcrPykgLSBtYXkgbm90IGJlIG51bGwnOiB7XG4gICAgICAgICAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdcInt7ZmllbGR9fVwiIHNob3VsZCBub3QgYmUgbnVsbCcpLFxuICAgICAgICAgICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICAgICAgICAgIGZpZWxkOiAnJDEnXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICAnKFxcXFx3Kz8pIC0gbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gKFxcXFxkKyknOiB7XG4gICAgICAgICAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdcInt7ZmllbGR9fVwiIG11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIHt7bWF4VmFsdWV9fScpLFxuICAgICAgICAgICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICAgICAgICAgIGZpZWxkOiAnJDEnLFxuICAgICAgICAgICAgICBtYXhWYWx1ZTogJyQyJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgJyhcXFxcdys/KSAtIHNob3VsZCBub3QgY29udGFpbiBudWxsIHZhbHVlcyc6IHtcbiAgICAgICAgICAgIGdldHRleHQ6IGdldHRleHQoJ1wie3tmaWVsZH19XCIgc2hvdWxkIG5vdCBjb250YWluIG51bGwgdmFsdWVzJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgZmllbGQ6ICckMSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0sXG4gICdeU21hcnQgcmVzdCB0ZW1wbGF0ZSAoLis/KSBkb2VzblxcJ3QgZXhpc3QkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1NtYXJ0UkVTVCB0ZW1wbGF0ZSB3aXRoIGlkIFwie3t0ZW1wbGF0ZUlkfX1cIiBkb2VzblxcJ3QgZXhpc3QnKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRlbXBsYXRlSWQ6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeU21hcnQgcnVsZSBjcmVhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdTbWFydCBydWxlIGNyZWF0ZWQuJylcbiAgfSxcbiAgJ15TbWFydCBydWxlIHVwZGF0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1NtYXJ0IHJ1bGUgdXBkYXRlZC4nKVxuICB9LFxuICAnXlNtYXJ0IHJ1bGUgZW5hYmxlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnU21hcnQgcnVsZSBhY3RpdmF0ZWQuJylcbiAgfSxcbiAgJ15TbWFydCBydWxlIGRpc2FibGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdTbWFydCBydWxlIGRlYWN0aXZhdGVkLicpXG4gIH0sXG4gICdeU21hcnQgcnVsZSBkZWxldGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdTbWFydCBydWxlIGRlbGV0ZWQuJylcbiAgfSxcbiAgJ15TbWFydCBydWxlIFwiKC4rPylcIiBjcmVhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdTbWFydCBydWxlIFwie3tuYW1lfX1cIiBjcmVhdGVkLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbmFtZTogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15TbWFydCBydWxlIFwiKC4rPylcIiB1cGRhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdTbWFydCBydWxlIFwie3tuYW1lfX1cIiB1cGRhdGVkLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbmFtZTogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15TbWFydCBydWxlIFwiKC4rPylcIiBlbmFibGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdTbWFydCBydWxlIFwie3tuYW1lfX1cIiBhY3RpdmF0ZWQuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXlNtYXJ0IHJ1bGUgXCIoLis/KVwiIGRpc2FibGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdTbWFydCBydWxlIFwie3tuYW1lfX1cIiBkZWFjdGl2YXRlZC4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG5hbWU6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeU21hcnQgcnVsZSBcIiguKz8pXCIgZGVsZXRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnU21hcnQgcnVsZSBcInt7bmFtZX19XCIgZGVsZXRlZC4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG5hbWU6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeU3RhcnRlZCBjb250YWluZXIkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NvbnRhaW5lciBzdGFydGVkLicpXG4gIH0sXG4gICdeU3VjY2Vzc2Z1bGx5IGFzc2lnbmVkICguKykgdG8gKC4rKSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnXCJ7e2ltYWdlTmFtZX19XCIgYXNzaWduZWQgdG8gXCJ7e2FkZHJlc3N9fVwiLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgaW1hZ2VOYW1lOiAnJDEnLFxuICAgICAgYWRkcmVzczogJyQyJ1xuICAgIH1cbiAgfSxcbiAgJ15TdWNjZXNzZnVsbHkgcHVsbGVkIGltYWdlIFwiKC4rKVwiJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdJbWFnZSBcInt7aW1hZ2VOYW1lfX1cIiBwdWxsZWQuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBpbWFnZU5hbWU6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeVGVuYW50IGNyZWF0aW9uIGZhaWxlZC4gOiBUZW5hbnQgd2l0aCBnaXZlbiBpZCBhbHJlYWR5IGV4aXN0cy4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NvdWxkIG5vdCBjcmVhdGUgYSB0ZW5hbnQuIFRlbmFudCB3aXRoIGdpdmVuIGRvbWFpbi9VUkwgYWxyZWFkeSBleGlzdHMuJylcbiAgfSxcbiAgJ15UZW5hbnQgaWQgY2Fubm90IGJlIGEgcmVzZXJ2ZWQgc3FsIGtleXdvcmQgXCIoLis/KVwiLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ291bGQgbm90IHVzZSBhIHJlc2VydmVkIFNRTCBrZXl3b3JkIFwie3t0ZW5hbnRJZH19XCIgYXMgYSBkb21haW4gbmFtZS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRlbmFudElkOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXlRlbmFudCBcIiguKz8pXCIgYWN0aXZhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdUZW5hbnQgXCJ7e3RlbmFudH19XCIgYWN0aXZhdGVkLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgdGVuYW50OiAnJDEnXG4gICAgfVxuICB9LFxuICAnXlRlbmFudCAoLis/KSBoYXMgc3ViLXRlbmFudHMsIHBsZWFzZSByZW1vdmUgdGhlbSBmaXJzdCEkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NvdWxkIG5vdCByZW1vdmUgdGVuYW50IFwie3t0ZW5hbnR9fVwiLiBSZW1vdmUgaXRzIHN1YnRlbmFudHMgZmlyc3QuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICB0ZW5hbnQ6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeVGVuYW50IGFjdGl2YXRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVGVuYW50IGFjdGl2YXRlZCcpXG4gIH0sXG4gICdeVGVuYW50IFwiKC4rPylcIiBjcmVhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdUZW5hbnQgXCJ7e3RlbmFudH19XCIgY3JlYXRlZC4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRlbmFudDogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15UZW5hbnQgY3JlYXRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVGVuYW50IGNyZWF0ZWQnKVxuICB9LFxuICAnXlRlbmFudCBcIiguKz8pXCIgZGVsZXRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVGVuYW50IFwie3t0ZW5hbnR9fVwiIGRlbGV0ZWQuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICB0ZW5hbnQ6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeVGVuYW50IGRlbGV0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1RlbmFudCBkZWxldGVkJylcbiAgfSxcbiAgJ15UZW5hbnQgXCIoLis/KVwiIHN1c3BlbmRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVGVuYW50IFwie3t0ZW5hbnR9fVwiIHN1c3BlbmRlZC4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRlbmFudDogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15UZW5hbnQgc3VzcGVuZGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdUZW5hbnQgc3VzcGVuZGVkJylcbiAgfSxcbiAgJ15UZW5hbnQgXCIoLis/KVwiIHVwZGF0ZWQ6ICguKz8pJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdUZW5hbnQgXCJ7e3RlbmFudH19XCIgdXBkYXRlZDoge3twcm9wZXJ0aWVzfX0uJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICB0ZW5hbnQ6ICckMScsXG4gICAgICBwcm9wZXJ0aWVzOiAnJDInXG4gICAgfVxuICB9LFxuICAnXlRlbmFudCB1cGRhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdUZW5hbnQgdXBkYXRlZCcpXG4gIH0sXG4gICdeVG9vIE1hbnkgUmVxdWVzdHMkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1RvbyBtYW55IHJlcXVlc3RzLiBUcnkgYWdhaW4gbGF0ZXIuJylcbiAgfSxcbiAgJ15Vc2VyIGFsaWFzIGVxdWFscyB1c2VybmFtZSBcXCcoLispXFwnJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdVc2VybmFtZSBhbmQgbG9naW4gYWxpYXMgbXVzdCBiZSBkaWZmZXJlbnQuJylcbiAgfSxcbiAgJ15Vc2VyIGNyZWF0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1VzZXIgY3JlYXRlZCcpXG4gIH0sXG4gICdeVXNlciAoLis/KSBjcmVhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdVc2VyIFwie3tuYW1lfX1cIiBjcmVhdGVkJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXlVzZXIgZGVsZXRlZCQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVXNlciBkZWxldGVkJylcbiAgfSxcbiAgJ15Vc2VyICguKz8pIGRlbGV0ZWQkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1VzZXIgXCJ7e25hbWV9fVwiIGRlbGV0ZWQnKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG5hbWU6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeVXNlciB1cGRhdGVkJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdVc2VyIHVwZGF0ZWQnKVxuICB9LFxuICAnXlVzZXIgKC4rPykgdXBkYXRlZDogKC4rKSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVXNlciBcInt7bmFtZX19XCIgdXBkYXRlZDoge3t1cGRhdGVzTGlzdH19JyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnLFxuICAgICAgdXBkYXRlc0xpc3Q6IHtcbiAgICAgICAgY2FwdHVyZTogJyQyJyxcbiAgICAgICAgdHJhbnNsYXRlOiB7XG4gICAgICAgICAgJ2RlbGVnYXRlZEJ5PVxcJyguKz8pXFwnJzoge1xuICAgICAgICAgICAgZ2V0dGV4dDogZ2V0dGV4dCgnZGVsZWdhdGVkIGJ5OiBcInt7ZGVsZWdhdGV9fVwiJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgZGVsZWdhdGU6ICckMSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgICdvd25lcj1cXCcoLis/KVxcJyc6IHtcbiAgICAgICAgICAgIGdldHRleHQ6IGdldHRleHQoJ293bmVyOiBcInt7b3duZXJ9fVwiJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgb3duZXI6ICckMSdcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgICdpbnZlbnRvcnkgYXNzaWdubWVudCBcXFxcWyguKz8pXFxcXF0gYWRkZWQnOiB7XG4gICAgICAgICAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdpbnZlbnRvcnkgYXNzaWdubWVudCBbe3tpbnZlbnRvcnlBc3NpZ25tZW50fX1dIGFkZGVkJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgaW52ZW50b3J5QXNzaWdubWVudDogJyQxJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgJ2ludmVudG9yeSBhc3NpZ25tZW50IFxcXFxbKC4rPylcXFxcXSByZW1vdmVkJzoge1xuICAgICAgICAgICAgZ2V0dGV4dDogZ2V0dGV4dCgnaW52ZW50b3J5IGFzc2lnbm1lbnQgW3t7aW52ZW50b3J5QXNzaWdubWVudH19XSByZW1vdmVkJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgaW52ZW50b3J5QXNzaWdubWVudDogJyQxJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgJ2FwcGxpY2F0aW9ucyBcXFxcWyguKz8pXFxcXF0gYWRkZWQkJzoge1xuICAgICAgICAgICAgZ2V0dGV4dDogZ2V0dGV4dCgnYXBwbGljYXRpb25zIFt7e2FwcGxpY2F0aW9uc0xpc3R9fV0gYWRkZWQnKSxcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgICAgICAgICBhcHBsaWNhdGlvbnNMaXN0OiAnJDEnXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICAnYXBwbGljYXRpb25zIFxcXFxbKC4rPylcXFxcXSByZW1vdmVkJCc6IHtcbiAgICAgICAgICAgIGdldHRleHQ6IGdldHRleHQoJ2FwcGxpY2F0aW9ucyBbe3thcHBsaWNhdGlvbnNMaXN0fX1dIHJlbW92ZWQnKSxcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgICAgICAgICBhcHBsaWNhdGlvbnNMaXN0OiAnJDEnXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICAnZ2xvYmFsIHJvbGVzIFxcXFxbKC4rPylcXFxcXSBhZGRlZCQnOiB7XG4gICAgICAgICAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdnbG9iYWwgcm9sZXMgW3t7Z2xvYmFsUm9sZXNMaXN0fX1dIGFkZGVkJyksXG4gICAgICAgICAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgICAgICAgICAgZ2xvYmFsUm9sZXNMaXN0OiAnJDEnXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICAnZ2xvYmFsIHJvbGVzIFxcXFxbKC4rPylcXFxcXSByZW1vdmVkJCc6IHtcbiAgICAgICAgICAgIGdldHRleHQ6IGdldHRleHQoJ2dsb2JhbCByb2xlcyBbe3tnbG9iYWxSb2xlc0xpc3R9fV0gcmVtb3ZlZCcpLFxuICAgICAgICAgICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICAgICAgICAgIGdsb2JhbFJvbGVzTGlzdDogJyQxJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSxcbiAgJ15Vc2VyIHdpdGggdXNlcm5hbWUgXFwnKC4rPylcXCcgYWxyZWFkeSBleGlzdHMhIDogRHVwbGljYXRlZDogKC4rPykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1VzZXIgXCJ7e3VzZXJuYW1lfX1cIiBhbHJlYWR5IGV4aXN0cy4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHVzZXJuYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXlVzZXIgd2l0aCB1c2VybmFtZSBvciBhbGlhcyBcXCcoLispXFwnIGFscmVhZHkgZXhpc3RzISA6IER1cGxpY2F0ZWQ6ICguKykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1VzZXIgd2l0aCB1c2VybmFtZSBvciBsb2dpbiBhbGlhcyBcInt7dXNlcm5hbWVPckFsaWFzfX1cIiBhbHJlYWR5IGV4aXN0cy4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHVzZXJuYW1lT3JBbGlhczogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15Vc2VyIHdpdGggZW1haWwgXFwnKC4rPylcXCcgYWxyZWFkeSBleGlzdHMhIDogRHVwbGljYXRlZDogKC4rPykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1VzZXIgd2l0aCBlbWFpbCBcInt7ZW1haWx9fVwiIGFscmVhZHkgZXhpc3RzLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgZW1haWw6ICckMSdcbiAgICB9XG4gIH0sXG4gICdedW5hYmxlIHRvIGZpbmQgb3B0aW9uIHdpdGggZ2l2ZW4ga2V5ICguKz8pIDogQ291bGQgbm90IGZpbmQgZW50aXR5IE9wdGlvbiBieSBJRCAoLis/KSEkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1VuYWJsZSB0byBnZXQgdGVuYW50IG9wdGlvbjogXCJ7e29wdGlvbn19XCIuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBvcHRpb246ICckMidcbiAgICB9XG4gIH0sXG4gICdedW5hYmxlIHRvIGZpbmQgb3B0aW9uIHdpdGggZ2l2ZW4ga2V5ICguKz8pIDogVGhlcmUgaXMgbm8gc3lzdGVtIHByb3BlcnR5IGZvciBrZXkgKC4rPykkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1VuYWJsZSB0byBnZXQgc3lzdGVtIG9wdGlvbjogXCJ7e29wdGlvbn19XCIuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBvcHRpb246ICckMidcbiAgICB9XG4gIH0sXG4gICdeV3JpdGUgZmFpbGVkIHdpdGggZXJyb3IgY29kZSAxNjczMyBhbmQgZXJyb3IgbWVzc2FnZSBcXCd0cnlpbmcgdG8gaW5kZXggdGV4dCB3aGVyZSB0ZXJtIGxpc3QgaXMgdG9vIGJpZywgbWF4IGlzIDRtYiBfaWQ6IFwiKC4rPylcIlxcJyQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVGhlIHVwbG9hZGVkIGltYWdlIGNhbm5vdCBiZSBiaWdnZXIgdGhhbiA0IE1CLiBQbGVhc2UgdXBsb2FkIGEgc21hbGxlciBvbmUuJylcbiAgfSxcbiAgJ15Xcml0ZSBmYWlsZWQgd2l0aCBlcnJvciBjb2RlIDE3MjgwIGFuZCBlcnJvciBtZXNzYWdlIFxcJ1dpcmVkVGlnZXJJbmRleDo6aW5zZXJ0OiBrZXkgdG9vIGxhcmdlIHRvIGluZGV4LCBmYWlsaW5nICguKz8pIHsgOiBcIiguKz8pXCIgfVxcJyQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnVGhlIGNob3NlbiBuYW1lIGlzIHRvbyBsb25nLiBQbGVhc2UgdHJ5IGEgc2hvcnRlciBvbmUuJylcbiAgfSxcbiAgJ15Zb3UgaGF2ZSByZWFjaGVkIGRldmljZXMgbGltaXQuIE5vIG1vcmUgZGV2aWNlcyBjYW4gYmUgcmVnaXN0ZXJlZC4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1lvdSByZWFjaGVkIGRldmljZXMgbGltaXQuIE5vIG1vcmUgZGV2aWNlcyBjYW4gYmUgcmVnaXN0ZXJlZC4nKVxuICB9LFxuICAnXiguKykgc3VjY2VlZGVkIGZvciB2b2x1bWUgXCIoLispXCInOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnT3BlcmF0aW9uIFwie3tvcGVyYXRpb259fVwiIHN1Y2NlZWRlZCBmb3Igdm9sdW1lIFwie3t2b2x1bWV9fVwiLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgb3BlcmF0aW9uOiAnJDEnLFxuICAgICAgdm9sdW1lOiAnJDInXG4gICAgfVxuICB9LFxuICAnXkV4Y2VwdGlvbiBvbiB0ZW5hbnQgKC4rKSBpbiBzdGF0ZW1lbnQgXFwnKC4rKVxcJzogSW52b2NhdGlvbiBleGNlcHRpb24gd2hlbiBpbnZva2luZyBtZXRob2QgXFwnKC4rKVxcJyBvZiBjbGFzcyBcXCcoLispXFwnIHBhc3NpbmcgcGFyYW1ldGVycyBcXFxcWyguKylcXFxcXSBmb3Igc3RhdGVtZW50IFxcJyguKylcXCc6ICguKykgOiAoLispJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdFeGNlcHRpb24gb24gdGVuYW50IHt7dGVuYW50SWR9fSBpbiBzdGF0ZW1lbnQgXCJ7e21vZHVsZU5hbWV9fVwiOiBJbnZvY2F0aW9uIGV4Y2VwdGlvbiB3aGVuIGludm9raW5nIG1ldGhvZCBcInt7bWV0aG9kTmFtZX19XCIgb2YgY2xhc3MgXCJ7e2NsYXNzUGF0aH19XCIgcGFzc2luZyBwYXJhbWV0ZXJzIFt7e3BhcmFtZXRlcnN9fV0gZm9yIHN0YXRlbWVudCBcInt7c3RhdGVtZW50fX1cIjoge3tleGNlcHRpb25UeXBlfX0gOiB7e2V4Y2VwdGlvbk1lc3NhZ2V9fS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRlbmFudElkOiAnJDEnLFxuICAgICAgbW9kdWxlTmFtZTogJyQyJyxcbiAgICAgIG1ldGhvZE5hbWU6ICckMycsXG4gICAgICBjbGFzc1BhdGg6ICckNCcsXG4gICAgICBwYXJhbWV0ZXJzOiAnJDUnLFxuICAgICAgc3RhdGVtZW50OiAnJDYnLFxuICAgICAgZXhjZXB0aW9uVHlwZTogJyQ3JyxcbiAgICAgIGV4Y2VwdGlvbk1lc3NhZ2U6ICckOCdcbiAgICB9XG4gIH0sXG4gICdeTm8gbm9kZXMgYXJlIGF2YWlsYWJsZSB0aGF0IG1hdGNoIGFsbCBvZiB0aGUgcHJlZGljYXRlczogKC4rKS4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ05vIG5vZGVzIGFyZSBhdmFpbGFibGUgdGhhdCBtYXRjaCBhbGwgb2YgdGhlIHByZWRpY2F0ZXM6IFt7e3ByZWRpY2F0ZXN9fV0uJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBwcmVkaWNhdGVzOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXlJlYWRpbmVzcyBwcm9iZSBmYWlsZWQ6ICguKykgKC4rKTogKC4rKTogcmVxdWVzdCBjYW5jZWxlZCB3aGlsZSB3YWl0aW5nIGZvciBjb25uZWN0aW9uIFxcXFwoQ2xpZW50LlRpbWVvdXQgZXhjZWVkZWQgd2hpbGUgYXdhaXRpbmcgaGVhZGVyc1xcXFwpJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdSZWFkaW5lc3MgcHJvYmUgZmFpbGVkOiB7e3JlcXVlc3RNZXRob2R9fSB7e3VyaX19OiB7e3Byb3RvY29sfX06IHJlcXVlc3QgY2FuY2VsZWQgd2hpbGUgd2FpdGluZyBmb3IgY29ubmVjdGlvbiAoQ2xpZW50LlRpbWVvdXQgZXhjZWVkZWQgd2hpbGUgYXdhaXRpbmcgaGVhZGVycykuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICByZXF1ZXN0TWV0aG9kOiAnJDEnLFxuICAgICAgdXJpOiAnJDInLFxuICAgICAgcHJvdG9jb2w6ICckMydcbiAgICB9XG4gIH0sXG4gICdeTGl2ZW5lc3MgcHJvYmUgZmFpbGVkOiAoLispICguKyk6ICguKyk6IHJlcXVlc3QgY2FuY2VsZWQgd2hpbGUgd2FpdGluZyBmb3IgY29ubmVjdGlvbiBcXFxcKENsaWVudC5UaW1lb3V0IGV4Y2VlZGVkIHdoaWxlIGF3YWl0aW5nIGhlYWRlcnNcXFxcKSQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnTGl2ZW5lc3MgcHJvYmUgZmFpbGVkOiB7e3JlcXVlc3RNZXRob2R9fSB7e3VyaX19OiB7e3Byb3RvY29sfX06IHJlcXVlc3QgY2FuY2VsZWQgd2hpbGUgd2FpdGluZyBmb3IgY29ubmVjdGlvbiAoQ2xpZW50LlRpbWVvdXQgZXhjZWVkZWQgd2hpbGUgYXdhaXRpbmcgaGVhZGVycykuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICByZXF1ZXN0TWV0aG9kOiAnJDEnLFxuICAgICAgdXJpOiAnJDInLFxuICAgICAgcHJvdG9jb2w6ICckMydcbiAgICB9XG4gIH0sXG4gICdeRXJyb3Igc3luY2luZyBwb2QkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1BvZCBzeW5jaHJvbml6YXRpb24gZXJyb3IuJylcbiAgfSxcbiAgJ15GYWlsZWQgY3JlYXRlIHBvZCBzYW5kYm94LiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnUG9kIHNhbmRib3ggY3JlYXRpb24gZmFpbGVkLicpXG4gIH0sXG4gICdeRXhjZXB0aW9uIG9uIHRlbmFudCAoLispIGluIHN0YXRlbWVudCBcXCcoLispXFwnOiBIdHRwIHN0YXR1cyBjb2RlOiAoXFxcXGQrKSBcXFxce2Vycm9yPVwiYWxhcm0vVW5wcm9jZXNzYWJsZSBFbnRpdHlcIixtZXNzYWdlPVwiKC4rKVwiLGluZm89XCJodHRwczovL3d3dy5jdW11bG9jaXR5LmNvbS9ndWlkZXMvcmVmZXJlbmNlLWd1aWRlLyNlcnJvcl9yZXBvcnRpbmdcIixkZXRhaWxzPVwibnVsbFwiXFxcXH0kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0V4Y2VwdGlvbiBvbiB0ZW5hbnQge3t0ZW5hbnRJZH19IGluIHN0YXRlbWVudCBcInt7c3RhdGVtZW50fX1cIjogSFRUUCBzdGF0dXMgY29kZToge3todHRwU3RhdHVzQ29kZX19IDoge3ttZXNzYWdlIHwgdHJhbnNsYXRlfX0nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHRlbmFudElkOiAnJDEnLFxuICAgICAgc3RhdGVtZW50OiAnJDInLFxuICAgICAgaHR0cFN0YXR1c0NvZGU6ICckMycsXG4gICAgICBtZXNzYWdlOiAnJDQnXG4gICAgfVxuICB9LFxuICAnXlVzZXIgXFwnKC4rKVxcJyBpcyBtYW5hZ2VkIGJ5IGEgcmVtb3RlIGlkZW50aXR5IG1hbmFnZW1lbnQgc2VydmljZSBkZWZpbmVkIGJ5IGFuIGFkbWluaXN0cmF0b3IsIGRpcmVjdCB1cGRhdGUgaXMgZm9yYmlkZGVuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdVc2VyIFwie3t1c2VyTmFtZX19XCIgaXMgbWFuYWdlZCBieSBhIHJlbW90ZSBpZGVudGl0eSBtYW5hZ2VtZW50IHNlcnZpY2UgZGVmaW5lZCBieSBhbiBhZG1pbmlzdHJhdG9yLCBkaXJlY3QgdXBkYXRlIGlzIGZvcmJpZGRlbi4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHVzZXJOYW1lOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkFkZGVkIG5ldyBjaGlsZCBkZXZpY2UgdG8gXCIoLispXCIgXFxcXChJRDogKC4rKVxcXFwpLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQWRkZWQgbmV3IGNoaWxkIGRldmljZSB0byBcInt7cGFyZW50RGV2aWNlTmFtZX19XCIgKElEOiB7e3BhcmVudERldmljZUlkfX0pLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgcGFyZW50RGV2aWNlTmFtZTogJyQxJyxcbiAgICAgIHBhcmVudERldmljZUlkOiAnJDInXG4gICAgfVxuICB9LFxuICAnXlVwZGF0ZWQgY2hpbGQgZGV2aWNlIG9mIFwiKC4rKVwiIFxcXFwoSUQ6ICguKylcXFxcKS4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1VwZGF0ZWQgY2hpbGQgZGV2aWNlIG9mIFwie3twYXJlbnREZXZpY2VOYW1lfX1cIiAoSUQ6IHt7cGFyZW50RGV2aWNlSWR9fSkuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBwYXJlbnREZXZpY2VOYW1lOiAnJDEnLFxuICAgICAgcGFyZW50RGV2aWNlSWQ6ICckMidcbiAgICB9XG4gIH0sXG4gICdeQWRkZWQgY2hpbGQgZGV2aWNlIFwiKC4rKVwiIFxcXFwoSUQ6ICguKylcXFxcKS4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0FkZGVkIGNoaWxkIGRldmljZSBcInt7bmFtZX19XCIgKElEOiB7e2lkfX0pLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbmFtZTogJyQxJyxcbiAgICAgIGlkOiAnJDInXG4gICAgfVxuICB9LFxuICAnXlJlbW92ZWQgY2hpbGQgZGV2aWNlIFwiKC4rKVwiIFxcXFwoSUQ6ICguKylcXFxcKS4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1JlbW92ZWQgY2hpbGQgZGV2aWNlIFwie3tuYW1lfX1cIiAoSUQ6IHt7aWR9fSkuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnLFxuICAgICAgaWQ6ICckMidcbiAgICB9XG4gIH0sXG4gICdeQ2hhbmdlIHZhbHVlIG9mIFwiKC4rKVwiIHRvICguKykgKC4rKS4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NoYW5nZSB2YWx1ZSBvZiBcInt7bmFtZX19XCIgdG8ge3t2YWx1ZX19e3t1bml0fX0uJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnLFxuICAgICAgdmFsdWU6ICckMicsXG4gICAgICB1bml0OiAnJDMnXG4gICAgfVxuICB9LFxuICAnXkNoYW5nZSB2YWx1ZSBvZiBcIiguKylcIiB0byAoLispLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ2hhbmdlIHZhbHVlIG9mIFwie3tuYW1lfX1cIiB0byB7e3ZhbHVlfX0uJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnLFxuICAgICAgdmFsdWU6ICckMidcbiAgICB9XG4gIH0sXG4gICdeQ2hhbmdlIHN0YXR1cyBvZiBcIiguKylcIiB0byBcIiguKylcIi4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NoYW5nZSBzdGF0dXMgb2YgXCJ7e25hbWV9fVwiIHRvIFwie3tsYWJlbH19XCIuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBuYW1lOiAnJDEnLFxuICAgICAgbGFiZWw6ICckMidcbiAgICB9XG4gIH0sXG4gICdeU2VuZCBtZXNzYWdlIFwiKC4rKVwiLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnU2VuZCBtZXNzYWdlIFwie3tzdHJ9fVwiLicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgc3RyOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkNsb3NlIHJlbGF5ICguKykuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDbG9zZSByZWxheSB7e251bWJlcn19LicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbnVtYmVyOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXk9wZW4gcmVsYXkgKC4rKS4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ09wZW4gcmVsYXkge3tudW1iZXJ9fS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG51bWJlcjogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15DaGFuZ2UgdHJhY2Ugc3RhdHVzIHRvICguKykuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDaGFuZ2UgdHJhY2Ugc3RhdHVzIHRvIHt7c3RhdGUgfCB0cmFuc2xhdGV9fS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHN0YXRlOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXkNoYW5nZSByZWxheSBzdGF0dXMgdG8gKC4rKS4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NoYW5nZSByZWxheSBzdGF0dXMgdG8ge3tzdGF0dXMgfCB0cmFuc2xhdGV9fS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIHN0YXR1czogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15DbG9zaW5nIHJlbGF5ICguKykuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDbG9zaW5nIHJlbGF5IHt7bnVtYmVyfX0uJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICBudW1iZXI6ICckMSdcbiAgICB9XG4gIH0sXG4gICdeT3BlbmluZyByZWxheSAoLispLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnT3BlbmluZyByZWxheSB7e251bWJlcn19LicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgbnVtYmVyOiAnJDEnXG4gICAgfVxuICB9LFxuICAnXlVwZGF0ZSBmaXJtd2FyZSB0bzogKC4rKSBcXFxcKHZlcnNpb246ICguKylcXFxcKS4kJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1VwZGF0ZSBmaXJtd2FyZSB0bzoge3tuYW1lfX0gKHZlcnNpb246IHt7dmVyc2lvbn19KS4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIG5hbWU6ICckMScsXG4gICAgICB2ZXJzaW9uOiAnJDInXG4gICAgfVxuICB9LFxuICAnXkV4ZWN1dGUgZ2VuZXJpYyBjb21tYW5kOiAoLispLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnRXhlY3V0ZSBnZW5lcmljIGNvbW1hbmQ6IHt7Y29tbWFuZH19LicpLFxuICAgIHBsYWNlaG9sZGVyczoge1xuICAgICAgY29tbWFuZDogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15GYWlsZWQgdG8gcmVmcmVzaCBhcHBsaWNhdGlvbi4gOiBDYW5ub3QgcmVmcmVzaCBub24gbG9jYWwtaG9zdGVkIGFwcGxpY2F0aW9uLiQnOiB7XG4gICAgZ2V0dGV4dDogZ2V0dGV4dCgnQ291bGQgbm90IHJlYWN0aXZhdGUgdGhlIGFwcGxpY2F0aW9uIGFzIGl0IGlzIG5vdCBob3N0ZWQgbG9jYWxseS4nKVxuICB9LFxuICAnXkZhaWxlZCB0byByZWZyZXNoIGFwcGxpY2F0aW9uLiA6IENhbm5vdCByZWZyZXNoIGFwcGxpY2F0aW9uIHdpdGhvdXQgYWN0aXZlIHZlcnNpb24gaWQuJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdDb3VsZCBub3QgcmVhY3RpdmF0ZSB0aGUgYXBwbGljYXRpb24gYXMgaXQgaGFzIG5vIGFjdGl2ZSB2ZXJzaW9uLicpXG4gIH0sXG4gIC8vIFRPRE86IHJlbW92ZSBpZiB3ZSBkZWNpZGUgbm90IHRvIHRyYW5zbGF0ZSBzdWNoIG1lc3NhZ2VzOlxuICAvLyAnXktpbGxpbmcgY29udGFpbmVyIHdpdGggaWQgKC4rKTpOZWVkIHRvIGtpbGwgUG9kJCc6IHtcbiAgLy8gICBnZXR0ZXh0OiBnZXR0ZXh0KCdLaWxsaW5nIGNvbnRhaW5lciB3aXRoIElEIFwie3tjb250YWluZXJJZH19XCIuIE5lZWQgdG8ga2lsbCBQb2QuJyksXG4gIC8vICAgcGxhY2Vob2xkZXJzOiB7XG4gIC8vICAgICBjb250YWluZXJJZDogJyQxJ1xuICAvLyAgIH1cbiAgLy8gfSxcbiAgJ15TY2FsZWQgZG93biByZXBsaWNhIHNldCAoLispIHRvIChcXFxcZCspJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdSZXBsaWNhIHNldCBcInt7cmVwbGljYVNldE5hbWV9fVwiIHNjYWxlZCBkb3duIHRvIFwie3tzY2FsZU51bWJlcn19XCIuJyksXG4gICAgcGxhY2Vob2xkZXJzOiB7XG4gICAgICByZXBsaWNhU2V0TmFtZTogJyQxJyxcbiAgICAgIHNjYWxlTnVtYmVyOiAnJDInXG4gICAgfVxuICB9LFxuICAnXkRlbGV0ZWQgcG9kOiAoLispJCc6IHtcbiAgICBnZXR0ZXh0OiBnZXR0ZXh0KCdQb2QgXCJ7e2ltYWdlTmFtZX19XCIgZGVsZXRlZC4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIGltYWdlTmFtZTogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15Db250YWluZXIgaW1hZ2UgXCIoLispXCIgYWxyZWFkeSBwcmVzZW50IG9uIG1hY2hpbmUkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ0NvbnRhaW5lciBpbWFnZSBcInt7aW1hZ2VOYW1lfX1cIiBhbHJlYWR5IGV4aXN0cy4nKSxcbiAgICBwbGFjZWhvbGRlcnM6IHtcbiAgICAgIGltYWdlTmFtZTogJyQxJ1xuICAgIH1cbiAgfSxcbiAgJ15FcnJvciB1cGRhdGluZyB0ZW5hbnQhIENhbm5vdCBpbnNlcnQgc2Vjb25kIGNvbmZpZ3VyYXRpb24gZm9yIFBhc3N3b3JkIGNvZGUgZ3JhbnQgaW50ZXJuYWwvQmFkIFJlcXVlc3QkJzoge1xuICAgIGdldHRleHQ6IGdldHRleHQoJ1RoaXMgbG9naW4gbW9kZSB3YXMgYWxyZWFkeSBzZXQgYnkgYW5vdGhlciBhZG1pbmlzdHJhdG9yLiBSZWZyZXNoIHRoZSBwYWdlIHRvIHVwZGF0ZSB0aGUgZGF0YS4nKVxuICB9LFxufTtcbiJdfQ==
|
|
@@ -20,9 +20,9 @@ let ChangePasswordComponent = class ChangePasswordComponent {
|
|
|
20
20
|
tenantId: '',
|
|
21
21
|
email: '',
|
|
22
22
|
newPassword: '',
|
|
23
|
-
newPasswordConfirm: ''
|
|
23
|
+
newPasswordConfirm: '',
|
|
24
|
+
passwordStrengthEnforced: false
|
|
24
25
|
};
|
|
25
|
-
this.enforcePasswordStrength = false;
|
|
26
26
|
this.emailReadOnly = false;
|
|
27
27
|
this.TOKEN_PARAM = 'token';
|
|
28
28
|
this.EMAIL_PARAM = 'email';
|
|
@@ -32,7 +32,7 @@ let ChangePasswordComponent = class ChangePasswordComponent {
|
|
|
32
32
|
this.model.tenantId = this.loginService.getTenant();
|
|
33
33
|
this.model.email = this.options.get(this.EMAIL_PARAM, '');
|
|
34
34
|
this.emailReadOnly = !!this.model.email;
|
|
35
|
-
this.
|
|
35
|
+
this.model.passwordStrengthEnforced = this.loginService.getEnforcePasswordStrength();
|
|
36
36
|
});
|
|
37
37
|
}
|
|
38
38
|
changePassword() {
|
|
@@ -80,8 +80,8 @@ tslib_1.__decorate([
|
|
|
80
80
|
ChangePasswordComponent = tslib_1.__decorate([
|
|
81
81
|
Component({
|
|
82
82
|
selector: 'c8y-change-password',
|
|
83
|
-
template: "<form\n role=\"form\"\n class=\"loginForm\"\n (ngSubmit)=\"changePassword()\"\n #changePasswordForm=\"ngForm\"\n novalidate\n>\n <c8y-form-group class=\"tenantField\" id=\"tenantField\" *ngIf=\"loginService.showTenant()\">\n <label translate>Tenant ID</label>\n <input\n [(ngModel)]=\"model.tenantId\"\n #tenantId=\"ngModel\"\n type=\"text\"\n name=\"tenantId\"\n autocapitalize=\"off\"\n autocorrect=\"off\"\n class=\"form-control\"\n placeholder=\"{{ 'Tenant ID' | translate }}\"\n required\n />\n </c8y-form-group>\n\n <c8y-form-group>\n <label translate>Email address</label>\n <input\n [(ngModel)]=\"model.email\"\n #email=\"ngModel\"\n type=\"text\"\n name=\"email\"\n autocapitalize=\"off\"\n autocorrect=\"off\"\n class=\"form-control\"\n placeholder=\"{{ 'Email address' | translate }}\"\n email\n required\n [readonly]=\"emailReadOnly\"\n />\n </c8y-form-group>\n\n <c8y-form-group>\n
|
|
83
|
+
template: "<form\n role=\"form\"\n class=\"loginForm\"\n (ngSubmit)=\"changePassword()\"\n #changePasswordForm=\"ngForm\"\n novalidate\n>\n\n <div\n class=\"legend form-block center\"\n translate\n >\n Change password\n </div>\n\n <c8y-form-group class=\"tenantField\" id=\"tenantField\" *ngIf=\"loginService.showTenant()\">\n <label translate>Tenant ID</label>\n <input\n [(ngModel)]=\"model.tenantId\"\n #tenantId=\"ngModel\"\n type=\"text\"\n name=\"tenantId\"\n autocapitalize=\"off\"\n autocorrect=\"off\"\n class=\"form-control\"\n placeholder=\"{{ 'Tenant ID' | translate }}\"\n required\n />\n </c8y-form-group>\n\n <c8y-form-group>\n <label translate>Email address</label>\n <input\n [(ngModel)]=\"model.email\"\n #email=\"ngModel\"\n type=\"text\"\n name=\"email\"\n autocapitalize=\"off\"\n autocorrect=\"off\"\n class=\"form-control\"\n placeholder=\"{{ 'Email address' | translate }}\"\n email\n required\n [readonly]=\"emailReadOnly\"\n />\n </c8y-form-group>\n\n <div class=\"row content-flex-50\">\n <div class=\"col-7\">\n <c8y-form-group>\n <label translate>New password</label>\n <input\n [(ngModel)]=\"model.newPassword\"\n #newPassword=\"ngModel\"\n type=\"password\"\n name=\"newPassword\"\n class=\"form-control\"\n placeholder=\"{{ 'New password' | translate }}\"\n [pattern]=\"passwordPattern\"\n autocomplete=\"new-password\"\n [passwordStrengthEnforced]=\"model.passwordStrengthEnforced\"\n required\n />\n <c8y-messages>\n <c8y-message\n name=\"pattern\"\n [text]=\"loginService.ERROR_MESSAGES.pattern_newPassword\"\n ></c8y-message>\n </c8y-messages>\n </c8y-form-group>\n\n <c8y-form-group>\n <label translate>Confirm password</label>\n <input\n [(ngModel)]=\"model.newPasswordConfirm\"\n #newPasswordConfirm=\"ngModel\"\n type=\"password\"\n name=\"newPasswordConfirm\"\n class=\"form-control\"\n placeholder=\"{{ 'Confirm password' | translate }}\"\n passwordConfirm=\"newPassword\"\n autocomplete=\"new-password\"\n required\n />\n <c8y-messages>\n <c8y-message\n name=\"passwordConfirm\"\n [text]=\"loginService.ERROR_MESSAGES.passwordConfirm\"\n ></c8y-message>\n </c8y-messages>\n </c8y-form-group>\n </div>\n <div class=\"col-5\">\n <c8y-password-strength\n [password]=\"model.newPassword\"\n [hidden]=\"!model.newPassword\"\n ></c8y-password-strength>\n <c8y-password-check-list\n class=\"m-t-32\"\n [password]=\"model.newPassword\"\n [hidden]=\"!model.newPassword || !model.passwordStrengthEnforced\"\n ></c8y-password-check-list>\n </div>\n </div>\n\n <button\n title=\"{{ 'Set password' | translate }}\"\n [disabled]=\"!changePasswordForm.form.valid || isLoading\"\n type=\"submit\"\n class=\"btn btn-primary btn-lg btn-block form-group\"\n translate\n >\n Set password\n </button>\n</form>\n"
|
|
84
84
|
})
|
|
85
85
|
], ChangePasswordComponent);
|
|
86
86
|
export { ChangePasswordComponent };
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
87
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BjOHkvbmd4LWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb3JlL2xvZ2luL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsY0FBYyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDeEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTzNDLElBQWEsdUJBQXVCLEdBQXBDLE1BQWEsdUJBQXVCO0lBa0JsQyxZQUNTLFlBQTBCLEVBQ3pCLEtBQWtCLEVBQ2xCLDhCQUErQyxFQUMvQyxPQUF1QixFQUN2QixLQUFtQjtRQUpwQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUN6QixVQUFLLEdBQUwsS0FBSyxDQUFhO1FBQ2xCLG1DQUE4QixHQUE5Qiw4QkFBOEIsQ0FBaUI7UUFDL0MsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFDdkIsVUFBSyxHQUFMLEtBQUssQ0FBYztRQXJCbkIsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTVDLG9CQUFlLEdBQUcsd0RBQXdELENBQUM7UUFDM0UsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixVQUFLLEdBQUc7WUFDTixRQUFRLEVBQUUsRUFBRTtZQUNaLEtBQUssRUFBRSxFQUFFO1lBQ1QsV0FBVyxFQUFFLEVBQUU7WUFDZixrQkFBa0IsRUFBRSxFQUFFO1lBQ3RCLHdCQUF3QixFQUFFLEtBQUs7U0FDaEMsQ0FBQztRQUNGLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBRWQsZ0JBQVcsR0FBRyxPQUFPLENBQUM7UUFDdEIsZ0JBQVcsR0FBRyxPQUFPLENBQUM7SUFRMUIsQ0FBQztJQUVDLFFBQVE7O1lBQ1osSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNwRCxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzFELElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1lBQ3hDLElBQUksQ0FBQyxLQUFLLENBQUMsd0JBQXdCLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1FBQ3ZGLENBQUM7S0FBQTtJQUVLLGNBQWM7O1lBQ2xCLE1BQU0scUJBQXFCLEdBQVEsSUFBSSxDQUFDLDhCQUE4QixDQUFDLGdCQUFnQixDQUNyRixJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FDdkIsQ0FBQztZQUNGLE1BQU0sYUFBYSxHQUFtQjtnQkFDcEMsS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSztnQkFDN0IsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSztnQkFDdkIsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVztnQkFDbkMsZ0JBQWdCLEVBQUUscUJBQXFCLENBQUMsZ0JBQWdCO2FBQ3pELENBQUM7WUFDRixJQUFJO2dCQUNGLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO2dCQUN0QixNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDbkYsSUFBSSxHQUFHLENBQUMsTUFBTSxLQUFLLEdBQUcsRUFBRTtvQkFDdEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO29CQUN4RCxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUM7b0JBQ25DLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFDLENBQUM7b0JBQzlDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO2lCQUMxRDthQUNGO1lBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ1YsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNoQztvQkFBUztnQkFDUixJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUMxQixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQzthQUN4QjtRQUNILENBQUM7S0FBQTtDQUNGLENBQUE7O1lBeEN3QixZQUFZO1lBQ2xCLFdBQVc7WUFDYyxlQUFlO1lBQ3RDLGNBQWM7WUFDaEIsWUFBWTs7QUF0QnBCO0lBQVIsS0FBSyxFQUFFOzREQUEyQjtBQUN6QjtJQUFULE1BQU0sRUFBRTs2REFBbUM7QUFGakMsdUJBQXVCO0lBTG5DLFNBQVMsQ0FBQztRQUNULFFBQVEsRUFBRSxxQkFBcUI7UUFDL0Isd3VHQUErQztLQUVoRCxDQUFDO0dBQ1csdUJBQXVCLENBMkRuQztTQTNEWSx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgT3V0cHV0LCBJbnB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMb2dpblNlcnZpY2UgfSBmcm9tICcuL2xvZ2luLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGFzc3dvcmRTZXJ2aWNlIH0gZnJvbSAnLi4vYXV0aGVudGljYXRpb24vcGFzc3dvcmQuc2VydmljZSc7XG5pbXBvcnQgeyBJUmVzZXRQYXNzd29yZCwgSUNyZWRlbnRpYWxzLCBVc2VyU2VydmljZSB9IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCB7IE9wdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi4vY29tbW9uL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi4vYWxlcnQvcHVibGljLWFwaSc7XG5pbXBvcnQgeyBMb2dpblZpZXdzIH0gZnJvbSAnLi9sb2dpbi5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1jaGFuZ2UtcGFzc3dvcmQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBDaGFuZ2VQYXNzd29yZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGNyZWRlbnRpYWxzOiBJQ3JlZGVudGlhbHM7XG4gIEBPdXRwdXQoKSBvbkNoYW5nZVZpZXcgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcGFzc3dvcmRQYXR0ZXJuID0gL15bYS16QS1aMC05YH4hQCMkJV4mKigpX3wrXFwtPT87OidcIiwuPD57fVtcXF1cXFxcL117OCwzMn0kLztcbiAgaXNMb2FkaW5nID0gZmFsc2U7XG4gIG1vZGVsID0ge1xuICAgIHRlbmFudElkOiAnJyxcbiAgICBlbWFpbDogJycsXG4gICAgbmV3UGFzc3dvcmQ6ICcnLFxuICAgIG5ld1Bhc3N3b3JkQ29uZmlybTogJycsXG4gICAgcGFzc3dvcmRTdHJlbmd0aEVuZm9yY2VkOiBmYWxzZVxuICB9O1xuICBlbWFpbFJlYWRPbmx5ID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBUT0tFTl9QQVJBTSA9ICd0b2tlbic7XG4gIHByaXZhdGUgRU1BSUxfUEFSQU0gPSAnZW1haWwnO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBsb2dpblNlcnZpY2U6IExvZ2luU2VydmljZSxcbiAgICBwcml2YXRlIHVzZXJzOiBVc2VyU2VydmljZSxcbiAgICBwcml2YXRlIHBhc3N3b3JkU3RyZW5ndGhDaGVja2VyU2VydmljZTogUGFzc3dvcmRTZXJ2aWNlLFxuICAgIHByaXZhdGUgb3B0aW9uczogT3B0aW9uc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBhbGVydDogQWxlcnRTZXJ2aWNlXG4gICkgeyB9XG5cbiAgYXN5bmMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5tb2RlbC50ZW5hbnRJZCA9IHRoaXMubG9naW5TZXJ2aWNlLmdldFRlbmFudCgpO1xuICAgIHRoaXMubW9kZWwuZW1haWwgPSB0aGlzLm9wdGlvbnMuZ2V0KHRoaXMuRU1BSUxfUEFSQU0sICcnKTtcbiAgICB0aGlzLmVtYWlsUmVhZE9ubHkgPSAhIXRoaXMubW9kZWwuZW1haWw7XG4gICAgdGhpcy5tb2RlbC5wYXNzd29yZFN0cmVuZ3RoRW5mb3JjZWQgPSB0aGlzLmxvZ2luU2VydmljZS5nZXRFbmZvcmNlUGFzc3dvcmRTdHJlbmd0aCgpO1xuICB9XG5cbiAgYXN5bmMgY2hhbmdlUGFzc3dvcmQoKSB7XG4gICAgY29uc3QgcGFzc3dvcmRTdHJlbmd0aENvbG9yOiBhbnkgPSB0aGlzLnBhc3N3b3JkU3RyZW5ndGhDaGVja2VyU2VydmljZS5nZXRTdHJlbmd0aENvbG9yKFxuICAgICAgdGhpcy5tb2RlbC5uZXdQYXNzd29yZFxuICAgICk7XG4gICAgY29uc3QgcmVzZXRQYXNzd29yZDogSVJlc2V0UGFzc3dvcmQgPSB7XG4gICAgICB0b2tlbjogdGhpcy5jcmVkZW50aWFscy50b2tlbixcbiAgICAgIGVtYWlsOiB0aGlzLm1vZGVsLmVtYWlsLFxuICAgICAgbmV3UGFzc3dvcmQ6IHRoaXMubW9kZWwubmV3UGFzc3dvcmQsXG4gICAgICBwYXNzd29yZFN0cmVuZ3RoOiBwYXNzd29yZFN0cmVuZ3RoQ29sb3IucGFzc3dvcmRTdHJlbmd0aFxuICAgIH07XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICAgIGNvbnN0IHsgcmVzIH0gPSBhd2FpdCB0aGlzLnVzZXJzLnJlc2V0UGFzc3dvcmQocmVzZXRQYXNzd29yZCwgdGhpcy5tb2RlbC50ZW5hbnRJZCk7XG4gICAgICBpZiAocmVzLnN0YXR1cyA9PT0gMjAwKSB7XG4gICAgICAgIHRoaXMubG9naW5TZXJ2aWNlLmFkZFN1Y2Nlc3NNZXNzYWdlKCdwYXNzd29yZF9jaGFuZ2VkJyk7XG4gICAgICAgIHRoaXMuY3JlZGVudGlhbHMudG9rZW4gPSB1bmRlZmluZWQ7XG4gICAgICAgIHRoaXMub3B0aW9ucy5zZXQodGhpcy5UT0tFTl9QQVJBTSwgdW5kZWZpbmVkKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZVZpZXcuZW1pdCh7IHZpZXc6IExvZ2luVmlld3MuQ3JlZGVudGlhbHMgfSk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhpcy5hbGVydC5hZGRTZXJ2ZXJGYWlsdXJlKGUpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmxvZ2luU2VydmljZS5yZXNldCgpO1xuICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -90,7 +90,7 @@ let CredentialsComponent = class CredentialsComponent {
|
|
|
90
90
|
}
|
|
91
91
|
handleNoPhoneNumberProvided() {
|
|
92
92
|
this.onChangeView.emit({ view: LoginViews.ProvidePhoneNumber, credentials: this.model });
|
|
93
|
-
this.alert.warning(gettext('Two-factor authentication has been turned on for this account.
|
|
93
|
+
this.alert.warning(gettext('Two-factor authentication has been turned on for this account. Provide your phone number above to save it in your user profile and start receiving verification codes via SMS.'));
|
|
94
94
|
}
|
|
95
95
|
};
|
|
96
96
|
CredentialsComponent.ctorParameters = () => [
|
|
@@ -108,4 +108,4 @@ CredentialsComponent = tslib_1.__decorate([
|
|
|
108
108
|
})
|
|
109
109
|
], CredentialsComponent);
|
|
110
110
|
export { CredentialsComponent };
|
|
111
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlZGVudGlhbHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGM4eS9uZ3gtY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvcmUvbG9naW4vY3JlZGVudGlhbHMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFPM0MsSUFBYSxvQkFBb0IsR0FBakMsTUFBYSxvQkFBb0I7SUFhL0IsWUFDUyxZQUEwQixFQUMxQixLQUFtQixFQUNuQixFQUFtQjtRQUZuQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixVQUFLLEdBQUwsS0FBSyxDQUFjO1FBQ25CLE9BQUUsR0FBRixFQUFFLENBQWlCO1FBZmxCLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUU1QyxnQkFBVyxHQUFHLFVBQVUsQ0FBQztRQUN6QixVQUFLLEdBQWlCLEVBQUUsQ0FBQztRQUN6QixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLGtCQUFhLEdBQVksS0FBSyxDQUFDO1FBQy9CLGtCQUFhLEdBQVksS0FBSyxDQUFDO1FBQy9CLGlCQUFZLEdBQVEsRUFBRSxDQUFDO1FBRU4sK0JBQTBCLEdBQUcsb0JBQW9CLENBQUM7UUFDbEQseUJBQW9CLEdBQUcsZUFBZSxDQUFDO0lBTXJELENBQUM7SUFFSixRQUFRO1FBQ04sTUFBTSxFQUFFLFlBQVksRUFBRSxTQUFTLEVB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QztDQUNGLENBQUE7O1lBbEZ3QixZQUFZO1lBQ25CLFlBQVk7WUFDZixlQUFlOztBQWZsQjtJQUFULE1BQU0sRUFBRTswREFBbUM7QUFEakMsb0JBQW9CO0lBTGhDLFNBQVMsQ0FBQztRQUNULFFBQVEsRUFBRSxpQkFBaUI7UUFDM0IsNHFHQUEyQztLQUU1QyxDQUFDO0dBQ1csb0JBQW9CLENBZ0doQztTQWhHWSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExvZ2luU2VydmljZSB9IGZyb20gJy4vbG9naW4uc2VydmljZSc7XG5pbXBvcnQgeyBJQ3JlZGVudGlhbHMgfSBmcm9tICdAYzh5L2NsaWVudCc7XG5pbXBvcnQgeyBBbGVydFNlcnZpY2UgfSBmcm9tICcuLi9hbGVydC9hbGVydC5zZXJ2aWNlJztcbmltcG9ydCB7IEFwcFN0YXRlU2VydmljZSB9IGZyb20gJy4uL2NvbW1vbi91aS1zdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IGdldHRleHQgfSBmcm9tICcuLi9pMThuL2dldHRleHQnO1xuaW1wb3J0IHsgTG9naW5WaWV3cyB9IGZyb20gJy4vbG9naW4ubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjOHktY3JlZGVudGlhbHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vY3JlZGVudGlhbHMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZXM6IFtdXG59KVxuZXhwb3J0IGNsYXNzIENyZWRlbnRpYWxzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQE91dHB1dCgpIG9uQ2hhbmdlVmlldyA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBMT0dJTl9WSUVXUyA9IExvZ2luVmlld3M7XG4gIG1vZGVsOiBJQ3JlZGVudGlhbHMgPSB7fTtcbiAgaXNMb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG4gIHNob3dMb2dpbkZvcm06IGJvb2xlYW4gPSBmYWxzZTtcbiAgc2hvd0Jhc2ljQXV0aDogYm9vbGVhbiA9IGZhbHNlO1xuICBvYXV0aE9wdGlvbnM6IGFueSA9IHt9O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgUEFTU1dPUkRfUkVTRVRfSEVBREVSX05BTUUgPSAncGFzc3dvcmRyZXNldHRva2VuJztcbiAgcHJpdmF0ZSByZWFkb25seSBOT19QSE9ORV9IRUFERVJfTkFNRSA9ICdOb1Bob25lSGVhZGVyJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgbG9naW5TZXJ2aWNlOiBMb2dpblNlcnZpY2UsXG4gICAgcHVibGljIGFsZXJ0OiBBbGVydFNlcnZpY2UsXG4gICAgcHVibGljIHVpOiBBcHBTdGF0ZVNlcnZpY2VcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGNvbnN0IHsgb2F1dGhPcHRpb25zLCBsb2dpbk1vZGUgfSA9IHRoaXMubG9naW5TZXJ2aWNlO1xuICAgIHRoaXMubW9kZWwudGVuYW50ID0gdGhpcy5sb2dpblNlcnZpY2UuZ2V0VGVuYW50KCk7XG4gICAgdGhpcy5zaG93TG9naW5Gb3JtID1cbiAgICAgIHR5cGVvZiBsb2dpbk1vZGUudmlzaWJsZU9uTG9naW5QYWdlID09PSAndW5kZWZpbmVkJyB8fCBsb2dpbk1vZGUudmlzaWJsZU9uTG9naW5QYWdlO1xuICAgIHRoaXMuc2hvd0Jhc2ljQXV0aCA9IGxvZ2luTW9kZS50eXBlID09PSAnQkFTSUMnO1xuICAgIHRoaXMub2F1dGhPcHRpb25zID0gb2F1dGhPcHRpb25zO1xuICB9XG5cbiAgcmVkaXJlY3RUb09hdXRoKCkge1xuICAgIHRoaXMubG9naW5TZXJ2aWNlLnJlZGlyZWN0VG9PYXV0aCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFsbG93cyB0byBsb2dpbiBpbnRvIHRoZSBhcHBsaWNhdGlvbiB1c2luZyBiYXNpYyBhdXRoLlxuICAgKiBJZiBzdWNjZXNzZnVsIGxvZ2dlZCBpbiB0aGUgY2xpZW50IGlzIHNldCBpbiBzaGFyZWQvY3VtdWxvY2l0eS5zZXJ2aWNlLnRzXG4gICAqL1xuICBhc3luYyBsb2dpbigpIHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xuICAgICAgY29uc3QgYmFzaWNBdXRoID0gdGhpcy5sb2dpblNlcnZpY2UudXNlQmFzaWNBdXRoKHRoaXMubW9kZWwpO1xuICAgICAgYXdhaXQgdGhpcy5sb2dpblNlcnZpY2UubG9naW4oYmFzaWNBdXRoLCB0aGlzLm1vZGVsKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBpZiAoZS5yZXMgJiYgZS5yZXMuaGVhZGVycyAmJiBlLnJlcy5oZWFkZXJzLmdldCh0aGlzLlBBU1NXT1JEX1JFU0VUX0hFQURFUl9OQU1FKSkge1xuICAgICAgICB0aGlzLmhhbmRsZVBhc3N3b3JkUmVzZXQoZS5yZXMpO1xuICAgICAgfSBlbHNlIGlmIChlLnJlcyAmJiBlLnJlcy5zdGF0dXMgPT09IDQwMSAmJiAvcGluL2kudGVzdChlLmRhdGEubWVzc2FnZSkpIHtcbiAgICAgICAgdGhpcy5oYW5kbGVTbXNDaGFsbGVuZ2UoZS5kYXRhLm1lc3NhZ2UpO1xuICAgICAgfSBlbHNlIGlmIChlLnJlcyAmJiBlLnJlcy5zdGF0dXMgPT09IDQwMSAmJiAvVE9UUC9pLnRlc3QoZS5kYXRhLm1lc3NhZ2UpKSB7XG4gICAgICAgIHRoaXMuaGFuZGxlVG90cENoYWxsZW5nZShlLmRhdGEubWVzc2FnZSk7XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICBlLnJlcyAmJlxuICAgICAgICBlLnJlcy5oZWFkZXJzICYmXG4gICAgICAgIGUucmVzLmhlYWRlcnMuZ2V0KHRoaXMuTk9fUEhPTkVfSEVBREVSX05BTUUpICYmXG4gICAgICAgICF0aGlzLm1vZGVsLnVzZXIuaW5jbHVkZXMoJyQnKVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMuaGFuZGxlTm9QaG9uZU51bWJlclByb3ZpZGVkKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmxvZ2luU2VydmljZS5yZXNldCgpO1xuICAgICAgICB0aGlzLmFsZXJ0LmFkZFNlcnZlckZhaWx1cmUoZSk7XG4gICAgICB9XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVQYXNzd29yZFJlc2V0KGU6IGFueSkge1xuICAgIHRoaXMuYWxlcnQucmVtb3ZlTGFzdERhbmdlcigpO1xuICAgIHRoaXMubW9kZWwudG9rZW4gPSBlLmhlYWRlcnMuZ2V0KHRoaXMuUEFTU1dPUkRfUkVTRVRfSEVBREVSX05BTUUpO1xuICAgIHRoaXMub25DaGFuZ2VWaWV3LmVtaXQoeyB2aWV3OiBMb2dpblZpZXdzLkNoYW5nZVBhc3N3b3JkLCBjcmVkZW50aWFsczogdGhpcy5tb2RlbCB9KTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlVG90cENoYWxsZW5nZShtZXNzYWdlKSB7XG4gICAgaWYgKC9UT1RQIHNldHVwIHJlcXVpcmVkL2kudGVzdChtZXNzYWdlKSkge1xuICAgICAgdGhpcy5vbkNoYW5nZVZpZXcuZW1pdCh7IHZpZXc6IExvZ2luVmlld3MuVG90cFNldHVwLCBjcmVkZW50aWFsczogdGhpcy5tb2RlbCB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vbkNoYW5nZVZpZXcuZW1pdCh7IHZpZXc6IExvZ2luVmlld3MuVG90cENoYWxsZW5nZSwgY3JlZGVudGlhbHM6IHRoaXMubW9kZWwgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVTbXNDaGFsbGVuZ2UobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgaWYgKC9waW4gaGFzIGFscmVhZHkgYmVlbiBnZW5lcmF0ZWQvaS50ZXN0KG1lc3NhZ2UpKSB7XG4gICAgICB0aGlzLmFsZXJ0Lndhcm5pbmcoXG4gICAgICAgIGdldHRleHQoXG4gICAgICAgICAgJ1RoZSB2ZXJpZmljYXRpb24gY29kZSB3YXMgYWxyZWFkeSBzZW50LiBGb3IgYSBuZXcgdmVyaWZpY2F0aW9uIGNvZGUsIHBsZWFzZSBjbGljayBvbiB0aGUgbGluayBhYm92ZS4nXG4gICAgICAgIClcbiAgICAgICk7XG4gICAgfVxuICAgIHRoaXMuYWxlcnQucmVtb3ZlTGFzdERhbmdlcigpO1xuICAgIHRoaXMub25DaGFuZ2VWaWV3LmVtaXQoeyB2aWV3OiBMb2dpblZpZXdzLlNtc0NoYWxsZW5nZSwgY3JlZGVudGlhbHM6IHRoaXMubW9kZWwgfSk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZU5vUGhvbmVOdW1iZXJQcm92aWRlZCgpIHtcbiAgICB0aGlzLm9uQ2hhbmdlVmlldy5lbWl0KHsgdmlldzogTG9naW5WaWV3cy5Qcm92aWRlUGhvbmVOdW1iZXIsIGNyZWRlbnRpYWxzOiB0aGlzLm1vZGVsIH0pO1xuICAgIHRoaXMuYWxlcnQud2FybmluZyhcbiAgICAgIGdldHRleHQoJ1R3by1mYWN0b3IgYXV0aGVudGljYXRpb24gaGFzIGJlZW4gdHVybmVkIG9uIGZvciB0aGlzIGFjY291bnQuIFBsZWFzZSBwcm92aWRlIHlvdXIgcGhvbmUgbnVtYmVyIGFib3ZlIHRvIHNhdmUgaXQgaW4geW91ciB1c2VyIHByb2ZpbGUgYW5kIHN0YXJ0IHJlY2VpdmluZyB2ZXJpZmljYXRpb24gY29kZXMgdmlhIFNNUy4nKVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
111
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlZGVudGlhbHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGM4eS9uZ3gtY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvcmUvbG9naW4vY3JlZGVudGlhbHMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFPM0MsSUFBYSxvQkFBb0IsR0FBakMsTUFBYSxvQkFBb0I7SUFhL0IsWUFDUyxZQUEwQixFQUMxQixLQUFtQixFQUNuQixFQUFtQjtRQUZuQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixVQUFLLEdBQUwsS0FBSyxDQUFjO1FBQ25CLE9BQUUsR0FBRixFQUFFLENBQWlCO1FBZmxCLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUU1QyxnQkFBVyxHQUFHLFVBQVUsQ0FBQztRQUN6QixVQUFLLEdBQWlCLEVBQUUsQ0FBQztRQUN6QixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLGtCQUFhLEdBQVksS0FBSyxDQUFDO1FBQy9CLGtCQUFhLEdBQVksS0FBSyxDQUFDO1FBQy9CLGlCQUFZLEdBQVEsRUFBRSxDQUFDO1FBRU4sK0JBQTBCLEdBQUcsb0JBQW9CLENBQUM7UUFDbEQseUJBQW9CLEdBQUcsZUFBZSxDQUFDO0lBTXJELENBQUM7SUFFSixRQUFRO1FBQ04sTUFBTSxFQUFFLFlBQVksRUFBRSxTQUFTLEVB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QztDQUNGLENBQUE7O1lBbEZ3QixZQUFZO1lBQ25CLFlBQVk7WUFDZixlQUFlOztBQWZsQjtJQUFULE1BQU0sRUFBRTswREFBbUM7QUFEakMsb0JBQW9CO0lBTGhDLFNBQVMsQ0FBQztRQUNULFFBQVEsRUFBRSxpQkFBaUI7UUFDM0IsNHFHQUEyQztLQUU1QyxDQUFDO0dBQ1csb0JBQW9CLENBZ0doQztTQWhHWSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExvZ2luU2VydmljZSB9IGZyb20gJy4vbG9naW4uc2VydmljZSc7XG5pbXBvcnQgeyBJQ3JlZGVudGlhbHMgfSBmcm9tICdAYzh5L2NsaWVudCc7XG5pbXBvcnQgeyBBbGVydFNlcnZpY2UgfSBmcm9tICcuLi9hbGVydC9hbGVydC5zZXJ2aWNlJztcbmltcG9ydCB7IEFwcFN0YXRlU2VydmljZSB9IGZyb20gJy4uL2NvbW1vbi91aS1zdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IGdldHRleHQgfSBmcm9tICcuLi9pMThuL2dldHRleHQnO1xuaW1wb3J0IHsgTG9naW5WaWV3cyB9IGZyb20gJy4vbG9naW4ubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjOHktY3JlZGVudGlhbHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vY3JlZGVudGlhbHMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZXM6IFtdXG59KVxuZXhwb3J0IGNsYXNzIENyZWRlbnRpYWxzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQE91dHB1dCgpIG9uQ2hhbmdlVmlldyA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBMT0dJTl9WSUVXUyA9IExvZ2luVmlld3M7XG4gIG1vZGVsOiBJQ3JlZGVudGlhbHMgPSB7fTtcbiAgaXNMb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG4gIHNob3dMb2dpbkZvcm06IGJvb2xlYW4gPSBmYWxzZTtcbiAgc2hvd0Jhc2ljQXV0aDogYm9vbGVhbiA9IGZhbHNlO1xuICBvYXV0aE9wdGlvbnM6IGFueSA9IHt9O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgUEFTU1dPUkRfUkVTRVRfSEVBREVSX05BTUUgPSAncGFzc3dvcmRyZXNldHRva2VuJztcbiAgcHJpdmF0ZSByZWFkb25seSBOT19QSE9ORV9IRUFERVJfTkFNRSA9ICdOb1Bob25lSGVhZGVyJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgbG9naW5TZXJ2aWNlOiBMb2dpblNlcnZpY2UsXG4gICAgcHVibGljIGFsZXJ0OiBBbGVydFNlcnZpY2UsXG4gICAgcHVibGljIHVpOiBBcHBTdGF0ZVNlcnZpY2VcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGNvbnN0IHsgb2F1dGhPcHRpb25zLCBsb2dpbk1vZGUgfSA9IHRoaXMubG9naW5TZXJ2aWNlO1xuICAgIHRoaXMubW9kZWwudGVuYW50ID0gdGhpcy5sb2dpblNlcnZpY2UuZ2V0VGVuYW50KCk7XG4gICAgdGhpcy5zaG93TG9naW5Gb3JtID1cbiAgICAgIHR5cGVvZiBsb2dpbk1vZGUudmlzaWJsZU9uTG9naW5QYWdlID09PSAndW5kZWZpbmVkJyB8fCBsb2dpbk1vZGUudmlzaWJsZU9uTG9naW5QYWdlO1xuICAgIHRoaXMuc2hvd0Jhc2ljQXV0aCA9IGxvZ2luTW9kZS50eXBlID09PSAnQkFTSUMnO1xuICAgIHRoaXMub2F1dGhPcHRpb25zID0gb2F1dGhPcHRpb25zO1xuICB9XG5cbiAgcmVkaXJlY3RUb09hdXRoKCkge1xuICAgIHRoaXMubG9naW5TZXJ2aWNlLnJlZGlyZWN0VG9PYXV0aCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFsbG93cyB0byBsb2dpbiBpbnRvIHRoZSBhcHBsaWNhdGlvbiB1c2luZyBiYXNpYyBhdXRoLlxuICAgKiBJZiBzdWNjZXNzZnVsIGxvZ2dlZCBpbiB0aGUgY2xpZW50IGlzIHNldCBpbiBzaGFyZWQvY3VtdWxvY2l0eS5zZXJ2aWNlLnRzXG4gICAqL1xuICBhc3luYyBsb2dpbigpIHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xuICAgICAgY29uc3QgYmFzaWNBdXRoID0gdGhpcy5sb2dpblNlcnZpY2UudXNlQmFzaWNBdXRoKHRoaXMubW9kZWwpO1xuICAgICAgYXdhaXQgdGhpcy5sb2dpblNlcnZpY2UubG9naW4oYmFzaWNBdXRoLCB0aGlzLm1vZGVsKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBpZiAoZS5yZXMgJiYgZS5yZXMuaGVhZGVycyAmJiBlLnJlcy5oZWFkZXJzLmdldCh0aGlzLlBBU1NXT1JEX1JFU0VUX0hFQURFUl9OQU1FKSkge1xuICAgICAgICB0aGlzLmhhbmRsZVBhc3N3b3JkUmVzZXQoZS5yZXMpO1xuICAgICAgfSBlbHNlIGlmIChlLnJlcyAmJiBlLnJlcy5zdGF0dXMgPT09IDQwMSAmJiAvcGluL2kudGVzdChlLmRhdGEubWVzc2FnZSkpIHtcbiAgICAgICAgdGhpcy5oYW5kbGVTbXNDaGFsbGVuZ2UoZS5kYXRhLm1lc3NhZ2UpO1xuICAgICAgfSBlbHNlIGlmIChlLnJlcyAmJiBlLnJlcy5zdGF0dXMgPT09IDQwMSAmJiAvVE9UUC9pLnRlc3QoZS5kYXRhLm1lc3NhZ2UpKSB7XG4gICAgICAgIHRoaXMuaGFuZGxlVG90cENoYWxsZW5nZShlLmRhdGEubWVzc2FnZSk7XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICBlLnJlcyAmJlxuICAgICAgICBlLnJlcy5oZWFkZXJzICYmXG4gICAgICAgIGUucmVzLmhlYWRlcnMuZ2V0KHRoaXMuTk9fUEhPTkVfSEVBREVSX05BTUUpICYmXG4gICAgICAgICF0aGlzLm1vZGVsLnVzZXIuaW5jbHVkZXMoJyQnKVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMuaGFuZGxlTm9QaG9uZU51bWJlclByb3ZpZGVkKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmxvZ2luU2VydmljZS5yZXNldCgpO1xuICAgICAgICB0aGlzLmFsZXJ0LmFkZFNlcnZlckZhaWx1cmUoZSk7XG4gICAgICB9XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVQYXNzd29yZFJlc2V0KGU6IGFueSkge1xuICAgIHRoaXMuYWxlcnQucmVtb3ZlTGFzdERhbmdlcigpO1xuICAgIHRoaXMubW9kZWwudG9rZW4gPSBlLmhlYWRlcnMuZ2V0KHRoaXMuUEFTU1dPUkRfUkVTRVRfSEVBREVSX05BTUUpO1xuICAgIHRoaXMub25DaGFuZ2VWaWV3LmVtaXQoeyB2aWV3OiBMb2dpblZpZXdzLkNoYW5nZVBhc3N3b3JkLCBjcmVkZW50aWFsczogdGhpcy5tb2RlbCB9KTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlVG90cENoYWxsZW5nZShtZXNzYWdlKSB7XG4gICAgaWYgKC9UT1RQIHNldHVwIHJlcXVpcmVkL2kudGVzdChtZXNzYWdlKSkge1xuICAgICAgdGhpcy5vbkNoYW5nZVZpZXcuZW1pdCh7IHZpZXc6IExvZ2luVmlld3MuVG90cFNldHVwLCBjcmVkZW50aWFsczogdGhpcy5tb2RlbCB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vbkNoYW5nZVZpZXcuZW1pdCh7IHZpZXc6IExvZ2luVmlld3MuVG90cENoYWxsZW5nZSwgY3JlZGVudGlhbHM6IHRoaXMubW9kZWwgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVTbXNDaGFsbGVuZ2UobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgaWYgKC9waW4gaGFzIGFscmVhZHkgYmVlbiBnZW5lcmF0ZWQvaS50ZXN0KG1lc3NhZ2UpKSB7XG4gICAgICB0aGlzLmFsZXJ0Lndhcm5pbmcoXG4gICAgICAgIGdldHRleHQoXG4gICAgICAgICAgJ1RoZSB2ZXJpZmljYXRpb24gY29kZSB3YXMgYWxyZWFkeSBzZW50LiBGb3IgYSBuZXcgdmVyaWZpY2F0aW9uIGNvZGUsIHBsZWFzZSBjbGljayBvbiB0aGUgbGluayBhYm92ZS4nXG4gICAgICAgIClcbiAgICAgICk7XG4gICAgfVxuICAgIHRoaXMuYWxlcnQucmVtb3ZlTGFzdERhbmdlcigpO1xuICAgIHRoaXMub25DaGFuZ2VWaWV3LmVtaXQoeyB2aWV3OiBMb2dpblZpZXdzLlNtc0NoYWxsZW5nZSwgY3JlZGVudGlhbHM6IHRoaXMubW9kZWwgfSk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZU5vUGhvbmVOdW1iZXJQcm92aWRlZCgpIHtcbiAgICB0aGlzLm9uQ2hhbmdlVmlldy5lbWl0KHsgdmlldzogTG9naW5WaWV3cy5Qcm92aWRlUGhvbmVOdW1iZXIsIGNyZWRlbnRpYWxzOiB0aGlzLm1vZGVsIH0pO1xuICAgIHRoaXMuYWxlcnQud2FybmluZyhcbiAgICAgIGdldHRleHQoJ1R3by1mYWN0b3IgYXV0aGVudGljYXRpb24gaGFzIGJlZW4gdHVybmVkIG9uIGZvciB0aGlzIGFjY291bnQuIFByb3ZpZGUgeW91ciBwaG9uZSBudW1iZXIgYWJvdmUgdG8gc2F2ZSBpdCBpbiB5b3VyIHVzZXIgcHJvZmlsZSBhbmQgc3RhcnQgcmVjZWl2aW5nIHZlcmlmaWNhdGlvbiBjb2RlcyB2aWEgU01TLicpXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -13,6 +13,7 @@ import { RecoverPasswordComponent } from './recover-password.component';
|
|
|
13
13
|
import { AuthenticationModule } from '../authentication/authentication.module';
|
|
14
14
|
import { AlertModule } from '../alert/alert.module';
|
|
15
15
|
import { TotpAuthComponent } from './totp-auth.component';
|
|
16
|
+
import { PasswordStrengthValidatorDirective } from './password-strength-validator.directive';
|
|
16
17
|
/**
|
|
17
18
|
* The angular module definition for the login.
|
|
18
19
|
* @exports LoginComponent
|
|
@@ -35,7 +36,8 @@ LoginModule = LoginModule_1 = tslib_1.__decorate([
|
|
|
35
36
|
RecoverPasswordComponent,
|
|
36
37
|
ChangePasswordComponent,
|
|
37
38
|
CredentialsComponent,
|
|
38
|
-
TotpAuthComponent
|
|
39
|
+
TotpAuthComponent,
|
|
40
|
+
PasswordStrengthValidatorDirective
|
|
39
41
|
],
|
|
40
42
|
imports: [
|
|
41
43
|
FormsModule,
|
|
@@ -49,4 +51,4 @@ LoginModule = LoginModule_1 = tslib_1.__decorate([
|
|
|
49
51
|
})
|
|
50
52
|
], LoginModule);
|
|
51
53
|
export { LoginModule };
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGM4eS9uZ3gtY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvcmUvbG9naW4vbG9naW4ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFdBQVcsSUFBSSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDeEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDL0UsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBRTdGOzs7R0FHRztBQW9CSCxJQUFhLFdBQVcsbUJBQXhCLE1BQWEsV0FBVztJQUN0QixNQUFNLENBQUMsT0FBTztRQUNaLE9BQU87WUFDTCxRQUFRLEVBQUUsYUFBVztZQUNyQixTQUFTLEVBQUUsYUFBVyxDQUFDLFNBQVMsRUFBRTtTQUNuQyxDQUFDO0lBQ0osQ0FBQztJQUNELE1BQU0sQ0FBQyxTQUFTO1FBQ2QsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3hCLENBQUM7Q0FDRixDQUFBO0FBVlksV0FBVztJQW5CdkIsUUFBUSxDQUFDO1FBQ1IsWUFBWSxFQUFFO1lBQ1osY0FBYztZQUNkLHdCQUF3QjtZQUN4Qix1QkFBdUI7WUFDdkIsb0JBQW9CO1lBQ3BCLGlCQUFpQjtZQUNqQixrQ0FBa0M7U0FDbkM7UUFDRCxPQUFPLEVBQUU7WUFDUCxXQUFXO1lBQ1gsYUFBYTtZQUNiLFlBQVk7WUFDWixvQkFBb0I7WUFDcEIsV0FBVztZQUNYLGNBQWM7U0FDZjtRQUNELE9BQU8sRUFBRSxDQUFDLGNBQWMsQ0FBQztLQUMxQixDQUFDO0dBQ1csV0FBVyxDQVV2QjtTQVZZLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSBhcyBDOHlGb3Jtc01vZHVsZSB9IGZyb20gJy4uL2Zvcm1zL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gJ25neC1ib290c3RyYXAvdG9vbHRpcCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICcuLi9jb21tb24vY29tbW9uLm1vZHVsZSc7XG5pbXBvcnQgeyBDaGFuZ2VQYXNzd29yZENvbXBvbmVudCB9IGZyb20gJy4vY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDcmVkZW50aWFsc0NvbXBvbmVudCB9IGZyb20gJy4vY3JlZGVudGlhbHMuY29tcG9uZW50JztcbmltcG9ydCB7IExvZ2luQ29tcG9uZW50IH0gZnJvbSAnLi9sb2dpbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTG9naW5TZXJ2aWNlIH0gZnJvbSAnLi9sb2dpbi5zZXJ2aWNlJztcbmltcG9ydCB7IFJlY292ZXJQYXNzd29yZENvbXBvbmVudCB9IGZyb20gJy4vcmVjb3Zlci1wYXNzd29yZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXV0aGVudGljYXRpb25Nb2R1bGUgfSBmcm9tICcuLi9hdXRoZW50aWNhdGlvbi9hdXRoZW50aWNhdGlvbi5tb2R1bGUnO1xuaW1wb3J0IHsgQWxlcnRNb2R1bGUgfSBmcm9tICcuLi9hbGVydC9hbGVydC5tb2R1bGUnO1xuaW1wb3J0IHsgVG90cEF1dGhDb21wb25lbnQgfSBmcm9tICcuL3RvdHAtYXV0aC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGFzc3dvcmRTdHJlbmd0aFZhbGlkYXRvckRpcmVjdGl2ZSB9IGZyb20gJy4vcGFzc3dvcmQtc3RyZW5ndGgtdmFsaWRhdG9yLmRpcmVjdGl2ZSc7XG5cbi8qKlxuICogVGhlIGFuZ3VsYXIgbW9kdWxlIGRlZmluaXRpb24gZm9yIHRoZSBsb2dpbi5cbiAqIEBleHBvcnRzIExvZ2luQ29tcG9uZW50XG4gKi9cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIExvZ2luQ29tcG9uZW50LFxuICAgIFJlY292ZXJQYXNzd29yZENvbXBvbmVudCxcbiAgICBDaGFuZ2VQYXNzd29yZENvbXBvbmVudCxcbiAgICBDcmVkZW50aWFsc0NvbXBvbmVudCxcbiAgICBUb3RwQXV0aENvbXBvbmVudCxcbiAgICBQYXNzd29yZFN0cmVuZ3RoVmFsaWRhdG9yRGlyZWN0aXZlXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBUb29sdGlwTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBBdXRoZW50aWNhdGlvbk1vZHVsZSxcbiAgICBBbGVydE1vZHVsZSxcbiAgICBDOHlGb3Jtc01vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbTG9naW5Db21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIExvZ2luTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBMb2dpbk1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogTG9naW5Nb2R1bGUucHJvdmlkZXJzKClcbiAgICB9O1xuICB9XG4gIHN0YXRpYyBwcm92aWRlcnMoKSB7XG4gICAgcmV0dXJuIFtMb2dpblNlcnZpY2VdO1xuICB9XG59XG4iXX0=
|