@senior-agronegocio/angular-components 0.0.76 → 0.0.78
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/senior-agronegocio-angular-components.umd.js +145 -139
- package/bundles/senior-agronegocio-angular-components.umd.js.map +1 -1
- package/bundles/senior-agronegocio-angular-components.umd.min.js +1 -1
- package/bundles/senior-agronegocio-angular-components.umd.min.js.map +1 -1
- package/components/cancel-event-dialog/index.d.ts +3 -3
- package/components/event-control-board/event-control-board.component.d.ts +4 -2
- package/components/event-control-board/index.d.ts +24 -24
- package/components/event-control-board/service/event-control-item/event-control-item.d.ts +4 -4
- package/components/event-steps/index.d.ts +2 -2
- package/components/index.d.ts +3 -3
- package/enums/index.d.ts +6 -6
- package/esm2015/common/agro-string-utils.class.js +13 -34
- package/esm2015/components/cancel-event-dialog/cancel-event-dialog.module.js +2 -10
- package/esm2015/components/cancel-event-dialog/index.js +3 -3
- package/esm2015/components/event-control-board/common/control-status.js +1 -1
- package/esm2015/components/event-control-board/common/event-control-constants.js +55 -14
- package/esm2015/components/event-control-board/event-control-board.component.js +70 -65
- package/esm2015/components/event-control-board/index.js +24 -24
- package/esm2015/components/event-control-board/service/event-control/event-control.module.js +7 -9
- package/esm2015/components/event-control-board/service/event-control-item/event-control-item.js +15 -15
- package/esm2015/components/event-control-board/service/event-control-item/event-control-item.module.js +7 -9
- package/esm2015/components/event-control-board/service/external-invoice/external-invoice.module.js +7 -9
- package/esm2015/components/event-control-board/service/fixation-entity/fixation.module.js +6 -6
- package/esm2015/components/event-control-board/service/rural-estate/rural-estate.module.js +7 -9
- package/esm2015/components/event-control-board/shared.module.js +9 -9
- package/esm2015/components/event-steps/index.js +3 -3
- package/esm2015/components/index.js +4 -4
- package/esm2015/enums/agro-string-masks.enum.js +1 -1
- package/esm2015/enums/date-comparison-type.enum.js +1 -1
- package/esm2015/enums/index.js +7 -7
- package/esm2015/enums/number-comparison-type.enum.js +1 -1
- package/esm2015/services/i18n/pt-BR.js +2 -2
- package/esm2015/services/websocket/websocket.service.js +1 -2
- package/esm5/common/agro-string-utils.class.js +13 -34
- package/esm5/components/cancel-event-dialog/cancel-event-dialog.module.js +2 -10
- package/esm5/components/cancel-event-dialog/index.js +3 -3
- package/esm5/components/event-control-board/common/control-status.js +1 -1
- package/esm5/components/event-control-board/common/event-control-constants.js +55 -14
- package/esm5/components/event-control-board/event-control-board.component.js +65 -62
- package/esm5/components/event-control-board/index.js +24 -24
- package/esm5/components/event-control-board/service/event-control/event-control.module.js +7 -9
- package/esm5/components/event-control-board/service/event-control-item/event-control-item.js +15 -15
- package/esm5/components/event-control-board/service/event-control-item/event-control-item.module.js +7 -9
- package/esm5/components/event-control-board/service/external-invoice/external-invoice.module.js +7 -9
- package/esm5/components/event-control-board/service/fixation-entity/fixation.module.js +6 -6
- package/esm5/components/event-control-board/service/rural-estate/rural-estate.module.js +7 -9
- package/esm5/components/event-control-board/shared.module.js +9 -9
- package/esm5/components/event-steps/index.js +3 -3
- package/esm5/components/index.js +4 -4
- package/esm5/enums/agro-string-masks.enum.js +1 -1
- package/esm5/enums/date-comparison-type.enum.js +1 -1
- package/esm5/enums/index.js +7 -7
- package/esm5/enums/number-comparison-type.enum.js +1 -1
- package/esm5/services/i18n/pt-BR.js +2 -2
- package/esm5/services/websocket/websocket.service.js +2 -3
- package/fesm2015/senior-agronegocio-angular-components.js +150 -142
- package/fesm2015/senior-agronegocio-angular-components.js.map +1 -1
- package/fesm5/senior-agronegocio-angular-components.js +145 -139
- package/fesm5/senior-agronegocio-angular-components.js.map +1 -1
- package/package.json +1 -1
|
@@ -32,7 +32,7 @@ const ptBR = {
|
|
|
32
32
|
"agro.angular_components.ticket": "Ticket",
|
|
33
33
|
"agro.angular_components.company": "Empresa",
|
|
34
34
|
"agro.angular_components.label_branch": "Filial",
|
|
35
|
-
"agro.angular_components.event_sidebar_title": "Evento
|
|
35
|
+
"agro.angular_components.event_sidebar_title": "Evento {eventNumber}",
|
|
36
36
|
"agro.angular_components.reprocessing_event_message_title": "Reprocessando Evento",
|
|
37
37
|
"agro.angular_components.reprocessing_event_message_description": "O evento selecionado está sendo reprocessado.",
|
|
38
38
|
"agro.angular_components.error_reprocessing_event_message_title": "Erro ao reprocessar evento",
|
|
@@ -244,4 +244,4 @@ const ptBR = {
|
|
|
244
244
|
"agro.angular_components.ORIGINATION_CREATE_PROVISIONAL_BALANCE": "Saldo provisório"
|
|
245
245
|
};
|
|
246
246
|
export default ptBR;
|
|
247
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHQtQlIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbInNlcnZpY2VzL2kxOG4vcHQtQlIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxJQUFJLEdBQUc7SUFDVCxpREFBaUQsRUFBRSwrREFBK0Q7SUFDbEgsdUNBQXVDLEVBQUUsNEJBQTRCO0lBQ3JFLG1EQUFtRCxFQUFFLFNBQVM7SUFDOUQsaUNBQWlDLEVBQUUsV0FBVztJQUM5Qyw4Q0FBOEMsRUFBRSxpQ0FBaUM7SUFDakYsNEJBQTRCLEVBQUUsS0FBSztJQUNuQyw2QkFBNkIsRUFBRSxLQUFLO0lBQ3BDLDJDQUEyQyxFQUFFLDRCQUE0QjtJQUN6RSxxQ0FBcUMsRUFBRSw4QkFBOEI7SUFDckUseUNBQXlDLEVBQUUsb0JBQW9CO0lBQy9ELHNDQUFzQyxFQUFFLFFBQVE7SUFDaEQsNkNBQTZDLEVBQUUsa0JBQWtCO0lBQ2pFLDBDQUEwQyxFQUFFLG9CQUFvQjtJQUNoRSw0Q0FBNEMsRUFBRSxvQkFBb0I7SUFDbEUsaUNBQWlDLEVBQUUsVUFBVTtJQUM3QyxvQ0FBb0MsRUFBRSxhQUFhO0lBQ25ELDZEQUE2RCxFQUFFLE9BQU87SUFDdEUsaUNBQWlDLEVBQUUsU0FBUztJQUM1QyxzQ0FBc0MsRUFBRSxjQUFjO0lBQ3RELHNEQUFzRCxFQUFFLHdCQUF3QjtJQUNoRixtREFBbUQsRUFBRSxzQkFBc0I7SUFDM0UsZ0RBQWdELEVBQUUsZUFBZTtJQUNqRSxxREFBcUQsRUFBRSx1QkFBdUI7SUFDOUUsNENBQTRDLEVBQUUsa0JBQWtCO0lBQ2hFLDhDQUE4QyxFQUFFLG9CQUFvQjtJQUNwRSx5Q0FBeUMsRUFBRSxtQ0FBbUM7SUFDOUUsOENBQThDLEVBQUUsc0JBQXNCO0lBQ3RFLHNDQUFzQyxFQUFFLFFBQVE7SUFDaEQsbUVBQW1FLEVBQUUsU0FBUztJQUM5RSxrQ0FBa0MsRUFBRSxZQUFZO0lBQ2hELGdD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ekYsbUVBQW1FLEVBQUUsa0VBQWtFO0lBQ3ZJLHVEQUF1RCxFQUFFLHlCQUF5QjtJQUNsRiw2REFBNkQsRUFBRSxpRUFBaUU7SUFDaEksNERBQTRELEVBQUUseUJBQXlCO0lBQ3ZGLGtFQUFrRSxFQUFFLHdEQUF3RDtJQUM1SCw0RUFBNEUsRUFBRSxvRUFBb0U7SUFDbEosK0NBQStDLEVBQUUseUJBQXlCO0lBQzFFLCtDQUErQyxFQUFFLFNBQVM7SUFDMUQsaURBQWlELEVBQUUsY0FBYztJQUNqRSxpREFBaUQsRUFBRSxRQUFRO0lBQzNELCtDQUErQyxFQUFFLE9BQU87SUFDeEQsNkNBQTZDLEVBQUUsV0FBVztJQUMxRCw4Q0FBOEMsRUFBRSxTQUFTO0lBQ3pELHNEQUFzRCxFQUFFLHFCQUFxQjtJQUM3RSx1Q0FBdUMsRUFBRSx3QkFBd0I7SUFDakUsMERBQTBELEVBQUUsK0JBQStCO0lBQzNGLDBEQUEwRCxFQUFFLDhCQUE4QjtJQUMxRiwyREFBMkQsRUFBRSxrQ0FBa0M7SUFDL0Ysa0RBQWtELEVBQUUsMkJBQTJCO0lBQy9FLHFEQUFxRCxFQUFFLCtCQUErQjtJQUN0RixpREFBaUQsRUFBRSxlQUFlO0lBQ2xFLGlEQUFpRCxFQUFFLG9CQUFvQjtJQUN2RSxvREFBb0QsRUFBRSxlQUFlO0lBQ3JFLDhEQUE4RCxFQUFFLDBCQUEwQjtJQUMxRiwyRUFBMkUsRUFBRSw4QkFBOEI7SUFDM0csZ0RBQWdELEVBQUUsa0JBQWtCO0lBQ3BFLG1FQUFtRSxFQUFFLHFCQUFxQjtJQUMxRixnRUFBZ0UsRUFBRSxrQkFBa0I7Q0FDdkYsQ0FBQztBQUNGLGVBQWUsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgcHRCUiA9IHtcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMudGFibGVfZW1wdHlfZGVzY3JpcHRpb25cIjogXCJBbHRlcmUgb3MgZmlsdHJvcyBhY2ltYSBwYXJhIGdlcmFyIG91dHJvcyByZXN1bHRhZG9zIGRlIGJ1c2NhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLm5vdGhpbmdfZm91bmRcIjogXCJOZW5odW0gcmVnaXN0cm8gZW5jb250cmFkb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5wYW5lbF90aXRsZV9ldmVudHNfZXZlbnRzXCI6IFwiRXZlbnRvc1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5yZWZyZXNoXCI6IFwiQXR1YWxpemFyXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfaGVhZGVyXCI6IFwiQ29uc3VsdGEgZGUgZXZlbnRvcy9pbnRlZ3Jhw6fDtWVzXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLm5vXCI6IFwiTsOjb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy55ZXNcIjogXCJTaW1cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfbW9kYWxfdGl0bGVcIjogXCJSZXByb2Nlc3NhbWVudG8gZGUgRXZlbnRvc1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9tb2RhbFwiOiBcIkRlc2VqYSByZXByb2Nlc3NhciBvIGV2ZW50bz9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucmVwcm9jZXNzX2V2ZW50XCI6IFwiUmVwcm9jZXNzYXIgZXZlbnRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50c19jbG9zZVwiOiBcIkZlY2hhclwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9lcnJvcl9tZXNzYWdlXCI6IFwiTWVuc2FnZW0gZGUgZXJyb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5sYXN0X3VwZGF0ZV9kYXRlXCI6IFwiw5psdGltYSBhdHVhbGl6YcOnw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnNob3dfZXZlbnRfZGV0YWlsc1wiOiBcIkRldGFsaGVzIGRvIGV2ZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5wZW5kaW5nXCI6IFwiUGVuZGVudGVcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucHJvY2Vzc2luZ1wiOiBcIlByb2Nlc3NhbmRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnBhbmVsX3RpdGxlX2V2ZW50c19lbmRlZF93aXRoX2Vycm9yXCI6IFwiRmFsaGFcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMudGlja2V0c1wiOiBcIlRpY2tldHNcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucnVyYWxfZXN0YXRlXCI6IFwiSW3Ds3ZlbCBSdXJhbFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5jaGFuZ2VfcmVxdWVzdF9ldmVudF9zdW1tYXJ5XCI6IFwiQWx0ZXJhw6fDo28gZGUgXFxuUGVzYWdlbVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy50aWNrZXRfbWFpbnRlbmFuY2VfaGVhZGVyXCI6IFwiTWFudXRlbsOnw6NvIGRlIHRpY2tldFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5pbnZvaWNlX2NyZWF0aW5nX2V2ZW50XCI6IFwiRW1pc3PDo28gZGUgTkZcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuYmFsYW5jZV9lbnRyeV9jb250cm9sX2V2ZW50XCI6IFwiRW50cmFkYS9zYcOtZGEgYmFsYW7Dp2FcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfb3JpZ2luX2xhYmVsXCI6IFwiT3JpZ2VtIGRvIGV2ZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9kZXRhaWxzX2hlYWRlclwiOiBcIkRldGFsaGVzIGRvIEV2ZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5yZWdpc3RlcnNfZm91bmRcIjogXCJ7dG90YWx9IHJlZ2lzdHJvKHMpIGVuY29udHJhZG8ocylcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuY2hhbmdlX3JlcXVlc3RfZXZlbnRcIjogXCJBbHRlcmHDp8OjbyBkZSBQZXNhZ2VtXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnN0YXR1c19sYWJlbFwiOiBcIlN0YXR1c1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5wYW5lbF90aXRsZV9ldmVudHNfY29tcGxldGVkX3N1Y2Nlc3NmdWxseVwiOiBcIlN1Y2Vzc29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuc3VwcGxpZXJcIjogXCJGb3JuZWNlZG9yXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnRpY2tldFwiOiBcIlRpY2tldFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5jb21wYW55XCI6IFwiRW1wcmVzYVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5sYWJlbF9icmFuY2hcIjogXCJGaWxpYWxcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfc2lkZWJhcl90aXRsZVwiOiBcIkV2ZW50byAtIHtldmVudH1cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucmVwcm9jZXNzaW5nX2V2ZW50X21lc3NhZ2VfdGl0bGVcIjogXCJSZXByb2Nlc3NhbmRvIEV2ZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5yZXByb2Nlc3NpbmdfZXZlbnRfbWVzc2FnZV9kZXNjcmlwdGlvblwiOiBcIk8gZXZlbnRvIHNlbGVjaW9uYWRvIGVzdMOhIHNlbmRvIHJlcHJvY2Vzc2Fkby5cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXJyb3JfcmVwcm9jZXNzaW5nX2V2ZW50X21lc3NhZ2VfdGl0bGVcIjogXCJFcnJvIGFvIHJlcHJvY2Vzc2FyIGV2ZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lcnJvcl9yZXByb2Nlc3NpbmdfZXZlbnRfbWVzc2FnZV9kZXNjcmlwdGlvblwiOiBcIkhvdXZlIHVtIGVycm8gYW8gcmVwcm9jZXNzYXIgbyBldmVudG8uIFRlbnRlIG5vdmFtZW50ZSBtYWlzIHRhcmRlLlwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5hY3Rpb25zXCI6IFwiQcOnw7Vlc1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5hZGRcIjogXCJBZGljaW9uYXJcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuYXRfZGF0ZVwiOiBcIk5hIGRhdGFcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuYXRfdGltZVwiOiBcIk5hIGhvcmFcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuY2FuY2VsXCI6IFwiQ2FuY2VsYXJcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuY2xlYXJcIjogXCJMaW1wYXJcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuY3JlYXRlZF9ieVwiOiBcIkNyaWFkbyBwb3JcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZGVsZXRlXCI6IFwiRXhjbHVpclwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5kZWxldGVfY29uZmlybWF0aW9uX21lc3NhZ2VcIjogXCJUZW0gY2VydGV6YSBxdWUgZGVzZWphIGV4Y2x1aXIgZXN0ZSBpdGVtP1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5kZWxldGVfY29uZmlybWF0aW9uX3RpdGxlXCI6IFwiQ29uZmlybWHDp8OjbyBkZSBleGNsdXPDo29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZGVsZXRlZF9tZXNzYWdlX2NvbnRlbnRcIjogXCJJdGVtIGV4Y2x1w61kbyBjb20gc3VjZXNzb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5kZWxldGVkX21lc3NhZ2VfdGl0bGVcIjogXCJFeGNsdXPDo28gcmVhbGl6YWRhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVfMDcwX2VtcF9jb2RfZW1wXCI6IFwiQ8OzZGlnbyBkYSBlbXByZXNhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVfMDcwX2VtcF9jcmVhdGVkX2J5XCI6IFwiQ3JpYWRvIHBvclwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lXzA3MF9lbXBfY3JlYXRlZF9kYXRlXCI6IFwiRGF0YSBkZSBjcmlhw6fDo29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZV8wNzBfZW1wX2lkXCI6IFwiSWRcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZV8wNzBfZW1wX2xhc3RfbW9kaWZpZWRfYnlcIjogXCLDmmx0aW1hIG1vZGlmaWNhw6fDo28gcG9yXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVfMDcwX2VtcF9sYXN0X21vZGlmaWVkX2RhdGVcIjogXCJEYXRhIGRhIMO6bHRpbWEgbW9kaWZpY2HDp8Ojb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lXzA3MF9lbXBfbm9tX2VtcFwiOiBcIk5vbWUgZGEgZW1wcmVzYVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lXzA3MF9lbXBfc2lnX2VtcFwiOiBcIk5vbWUgZmFudGFzaWEgLyBTaWdsYSBkYSBlbXByZXNhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVfMDcwX2ZpbF9jaWRfZmlsXCI6IFwiQ2lkYWRlXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVfMDcwX2ZpbF9jb2RfZmlsXCI6IFwiQ8OzZGlnbyBkYSBmaWxpYWxcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZV8wNzBfZmlsX2NyZWF0ZWRfYnlcIjogXCJDcmlhZG8gcG9yXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVfMDcwX2ZpbF9jcmVhdGVkX2RhdGVcIjogXCJEYXRhIGRlIGNyaWHDp8Ojb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lXzA3MF9maWxfaWRcIjogXCJJZFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lXzA3MF9maWxfbGFzdF9tb2RpZmllZF9ieVwiOiBcIsOabHRpbWEgbW9kaWZpY2HDp8OjbyBwb3JcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZV8wNzBfZmlsX2xhc3RfbW9kaWZpZWRfZGF0ZVwiOiBcIkRhdGEgZGEgw7psdGltYSBtb2RpZmljYcOnw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVfMDcwX2ZpbF9ub21fZmlsXCI6IFwiTm9tZSBkYSBmaWxpYWxcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZV8wNzBfZmlsX251bV9jZ2NcIjogXCJDTlBKXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVfMDcwX2ZpbF9udW1fZm9uXCI6IFwiTnVtZXJvIFRlbGVmb25lXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVfMDcwX2ZpbF9zaWdfZmlsXCI6IFwiTm9tZSBmYW50YXNpYSBkYSBmaWxpYWxcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZWRpdFwiOiBcIkVkaXRhclwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lcnJvcl9mb3JiaWRkZW5fZGVzY3JpcHRpb25cIjogXCJWb2PDqiBuw6NvIHRlbSBwZXJtaXNzw6NvIHBhcmEgYWNlc3NhciBlc3RlIHJlY3Vyc29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXJyb3JfZm9yYmlkZGVuX3RpdGxlXCI6IFwiQWNlc3NvIG5lZ2Fkb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lcnJvcl9pbnZhbGlkXCI6IFwiVmFsb3IgaW52w6FsaWRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX21heF9sZW5ndGhcIjogXCJPIHZhbG9yIG3DoXhpbW8gZGUgY2FyYWN0ZXJlcyDDqSB7MH1cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXJyb3JfbWF4X3ZhbHVlXCI6IFwiTyB2YWxvciBtw6F4aW1vIMOpIHswfVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lcnJvcl9taW5fbGVuZ3RoXCI6IFwiTyB2YWxvciBtw61uaW1vIGRlIGNhcmFjdGVyZXMgw6kge3ZhbG9yfVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lcnJvcl9taW5fdmFsdWVcIjogXCJPIHZhbG9yIG3DrW5pbW8gw6kgezB9XCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX25vdF9mb3VuZF9kZXNjcmlwdGlvblwiOiBcIk8gcmVjdXJzbyBzb2xpY2l0YWRvIG7Do28gZm9pIGVuY29udHJhZG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXJyb3Jfbm90X2ZvdW5kX3RpdGxlXCI6IFwiTsOjbyBlbmNvbnRyYWRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX3JlcXVpcmVkXCI6IFwiQ2FtcG8gb2JyaWdhdMOzcmlvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX3NlcnZlcl9kZXNjcmlwdGlvblwiOiBcIk9jb3JyZXUgdW0gZXJybyBhbyBwcm9jZXNzYXIgc3VhIHNvbGljaXRhw6fDo28uIFBvciBmYXZvciwgdGVudGUgbm92YW1lbnRlXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX3NlcnZlcl90aXRsZVwiOiBcIkVycm8gbm8gc2Vydmlkb3JcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXJyb3Jfc2VydmVyX3RyeV9hZ2FpblwiOiBcIlRlbnRlIG5vdmFtZW50ZVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lcnJvcl91bmF1dGhvcml6ZWRfZGVzY3JpcHRpb25cIjogXCJWb2PDqiBuw6NvIGVzdMOhIGF1dG9yaXphZG8gYSBhY2Vzc2FyIGVzdGUgcmVjdXJzb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lcnJvcl91bmF1dGhvcml6ZWRfdGl0bGVcIjogXCJOw6NvIGF1dG9yaXphZG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbFwiOiBcIkNvbnRyb2xlIGRlIGV2ZW50b3NcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9jcmVhdGVkX2J5XCI6IFwiQ3JpYWRvIHBvclwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2NyZWF0ZWRfZGF0ZVwiOiBcIkRhdGEgZGUgY3JpYcOnw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfZV8wNzBfZW1wXCI6IFwiRW1wcmVzYVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2VfMDcwX2VtcF9zZWFyY2hfdGl0bGVcIjogXCJTZWxlY2lvbmUgYSBlbXByZXNhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfZV8wNzBfZmlsXCI6IFwiRmlsaWFsXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfZV8wNzBfZmlsX3NlYXJjaF90aXRsZVwiOiBcIlNlbGVjaW9uZSBhIGZpbGlhbFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2VtcHR5X3N0YXRlX2Rlc2NyaXB0aW9uXCI6IFwiTmVuaHVtIHJlZ2lzdHJvIGVuY29udHJhZG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9lbXB0eV9zdGF0ZV90aXRsZVwiOiBcIk5lbmh1bSByZWdpc3RybyBlbmNvbnRyYWRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfZXZlbnRfb3JpZ2luXCI6IFwiT3JpZ2VtIGRvIGV2ZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2V2ZW50X29yaWdpbl9wbGFjZWhvbGRlclwiOiBcIlNlbGVjaW9uZSBhIG9yaWdlbSBkbyBldmVudG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9leHRlcm5hbF9pZFwiOiBcIklkIGV4dGVybm9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9mb3JtX2dlbmVyYWxfdGl0bGVcIjogXCJHZXJhbFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2Zvcm1fdGl0bGVcIjogXCJDb250cm9sZSBkZSBldmVudG9zXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfaWRcIjogXCJJZCBkYSBlbnRpZGFkZVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2l0ZW1cIjogXCJJdGVucyBkbyBjb250cm9sZSBkZSBldmVudG9zXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfaXRlbV9jcmVhdGVkX2J5XCI6IFwiQ3JpYWRvIHBvclwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2l0ZW1fY3JlYXRlZF9kYXRlXCI6IFwiRGF0YSBkZSBjcmlhw6fDo29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9pdGVtX2VtcHR5X3N0YXRlX2Rlc2NyaXB0aW9uXCI6IFwiTmVuaHVtIHJlZ2lzdHJvIGVuY29udHJhZG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9pdGVtX2VtcHR5X3N0YXRlX3RpdGxlXCI6IFwiTmVuaHVtIHJlZ2lzdHJvIGVuY29udHJhZG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9pdGVtX2V2ZW50X2NvbnRyb2xcIjogXCJldmVudENvbnRyb2xJZFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2l0ZW1fZXZlbnRfY29udHJvbF9zZWFyY2hfdGl0bGVcIjogXCJTZWxlY2lvbmUgbyBjb250cm9sZSBkZSBldmVudG9zXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfaXRlbV9ldmVudF9ncm91cFwiOiBcIkdydXBvIGRvIGV2ZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2l0ZW1fZXZlbnRfb3BlcmF0aW9uXCI6IFwiVGlwbyBkYSBvcGVyYcOnw6NvIGRvIGV2ZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2l0ZW1fZXZlbnRfb3BlcmF0aW9uX3BsYWNlaG9sZGVyXCI6IFwiU2VsZWNpb25lIG8gdGlwbyBkYSBvcGVyYcOnw6NvIGRvIGV2ZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2l0ZW1fZm9ybV9nZW5lcmFsX3RpdGxlXCI6IFwiR2VyYWxcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9pdGVtX2Zvcm1fdGl0bGVcIjogXCJJdGVucyBkbyBjb250cm9sZSBkZSBldmVudG9zXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfaXRlbV9pZFwiOiBcIklkIGRhIGVudGlkYWRlXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfaXRlbV9sYXN0X21vZGlmaWVkX2J5XCI6IFwiw5psdGltYSBtb2RpZmljYcOnw6NvIHBvclwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2l0ZW1fbGFzdF9tb2RpZmllZF9kYXRlXCI6IFwiRGF0YSBkYSDDumx0aW1hIG1vZGlmaWNhw6fDo29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9pdGVtX2xpc3RfZ3JpZF90aXRsZVwiOiBcIkl0ZW5zIGRvIGNvbnRyb2xlIGRlIGV2ZW50b3NcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9pdGVtX2xpc3RfdGl0bGVcIjogXCJJdGVucyBkbyBjb250cm9sZSBkZSBldmVudG9zXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfaXRlbV9tZXNzYWdlXCI6IFwiTWVuc2FnZW0gZGUgZXZlbnRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfaXRlbV9wYXJhbVwiOiBcIlBhcsOibWV0cm9zIGRvIGV2ZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2l0ZW1fcmVxdWVzdFwiOiBcIlNvbGljaXRhw6fDo28gcmVjZWJpZGFcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9pdGVtX3Jlc3BvbnNlXCI6IFwiUmVzcG9zdGEgZW52aWFkYVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2l0ZW1fc2VxdWVuY2VcIjogXCJTZXF1w6puY2lhIGRvIGV2ZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2l0ZW1fc3RhdHVzXCI6IFwiU3RhdHVzIGRvIGV2ZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2l0ZW1fc3RhdHVzX3BsYWNlaG9sZGVyXCI6IFwiU2VsZWNpb25lIG8gc3RhdHVzIGRvIGV2ZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2xhc3RfbW9kaWZpZWRfYnlcIjogXCLDmmx0aW1hIG1vZGlmaWNhw6fDo28gcG9yXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfbGFzdF9tb2RpZmllZF9kYXRlXCI6IFwiRGF0YSBkYSDDumx0aW1hIG1vZGlmaWNhw6fDo29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9saXN0X2dyaWRfdGl0bGVcIjogXCJDb250cm9sZSBkZSBldmVudG9zXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfbGlzdF90aXRsZVwiOiBcIkNvbnRyb2xlIGRlIGV2ZW50b3NcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfb3BlcmF0aW9uX2NoYW5nZV9yZXF1ZXN0XCI6IFwiU29saWNpdGHDp8OjbyBkZSBhbHRlcmHDp8Ojb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9vcGVyYXRpb25fY2hhbmdlX3Jlc3BvbnNlXCI6IFwiUmVzcG9zdGEgZGUgYWx0ZXJhw6fDo29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfb3BlcmF0aW9uX2VmZmVjdGl2ZVwiOiBcIkVmZXRpdm9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfb3BlcmF0aW9uX2VmZmVjdGl2ZV9jb25maXJtYXRpb25cIjogXCJDb25maXJtYcOnw6NvIGRlIGVmZXRpdmHDp8Ojb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9vcGVyYXRpb25faW52b2ljZV9jbG9zaW5nXCI6IFwiRmVjaGFtZW50byBkZSBub3RhIGZpc2NhbFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9vcGVyYXRpb25faW52b2ljZV9jcmVhdGluZ1wiOiBcIkNyaWHDp8OjbyBkZSBub3RhIGZpc2NhbFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9vcGVyYXRpb25faW52b2ljZV9pbnN0YWxsbWVudHNcIjogXCJQYXJjZWxhbWVudG8gZGUgbm9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfb3BlcmF0aW9uX3Byb3Zlc2lvbmFsXCI6IFwiU2FsZG8gUHJvdmlzw7NyaW9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfb3BlcmF0aW9uX3JlbW92ZV9wcm92aXNpb25hbFwiOiBcIlJlbW/Dp8OjbyBkZSBTYWxkbyBwcm92aXPDs3Jpb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9vcGVyYXRpb25fdGlja2V0XCI6IFwiVGlja2V0XCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X29yaWdpbl9iYWxhbmNlX2VudHJ5X2NvbnRyb2xcIjogXCJDb250cm9sZSBkZSBsYW7Dp2FtZW50byBkZSBzYWxkb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9vcmlnaW5fY2hhbmdlX3JlcXVlc3RcIjogXCJTb2xpY2l0YcOnw6NvIGRlIGFsdGVyYcOnw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X29yaWdpbl9pbnZvaWNlXCI6IFwiSW52b2ljZVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9vcmlnaW5fdGlja2V0XCI6IFwiVGlja2V0XCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X3N0YXR1c19jYW5jZWxlZFwiOiBcIkNhbmNlbGFkb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9zdGF0dXNfZmFpbGVkXCI6IFwiRmFsaGFcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfc3RhdHVzX3BlbmRpbmdcIjogXCJQZW5kZW50ZVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9zdGF0dXNfcHJvY2Vzc2luZ1wiOiBcIlByb2Nlc3NhZG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfc3RhdHVzX3N1Y2Nlc3NcIjogXCJTdWNlc3NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmZpbHRlclwiOiBcIkZpbHRyYXJcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZmlsdGVyc1wiOiBcIkZpbHRyb3NcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubGlzdF9ncmlkX2VtcHR5X2ZpZWxkXCI6IFwiTmVuaHVtIHJlZ2lzdHJvIGVuY29udHJhZG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucHJvZHVjdF9oZWFkZXJfdGl0bGVcIjogXCJFdmVudG9zXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnNhdmVcIjogXCJTYWx2YXJcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuc2VsZWN0XCI6IFwiU2VsZWNpb25lXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnVwZGF0ZWRfYnlcIjogXCJBdHVhbGl6YWRvIHBvclwiLFxyXG4gICAgXCJlcnJvcl9pbnZhbGlkXCI6IFwiVmFsb3IgaW52w6FsaWRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmNob29zZV9sYWJlbFwiOiBcIkVzY29saGFcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucmVtb3ZlX2xhYmVsXCI6IFwiUmVtb3ZlclwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5jYW5jZWxfbGFiZWxcIjogXCJDYW5jZWxhclwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5zdWNjZXNzX3Rvb2x0aXBcIjogXCJTdWNlc3NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLm1lbnVfYWdyb19ldmVudHNcIjogXCJFdmVudG9zIGRvIEFncm9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZGF0ZVwiOiBcIkRhdGFcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubGFiZWxfY29kZV9icmFuY2hcIjogXCJDw7NkaWdvIGRhIGZpbGlhbFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5sYWJlbF9jb2RlX2NvbXBhbnlcIjogXCJDw7NkaWdvIGRhIGVtcHJlc2FcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubGFiZWxfY29kZV9kZXBvc2l0XCI6IFwiQ8OzZGlnbyBkbyBkZXDDs3NpdG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubGFiZWxfY29kZVwiOiBcIkPDs2RpZ29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubGFiZWxfY29tcGFueVwiOiBcIkVtcHJlc2FcIixcclxuICAgIFwicGxhdGZvcm0uYmFja2VuZC5hZ3JvX29yaWdpbmF0aW9uX2VudHJ5X2NvbnRyb2xcIjogXCJDb250cm9sZSBlbnRyYWRhL3Nhw61kYSB2aWEgYmFsYW7Dp2FcIixcclxuICAgIFwicGxhdGZvcm0uYmFja2VuZC5hZ3JvX29yaWdpbmF0aW9uX2VudHJ5X2V4aXRfcXVlcnlcIjogXCJDb25zdWx0YSBlbnRyYWRhL3Nhw61kYVwiLFxyXG4gICAgXCJwbGF0Zm9ybS5iYWNrZW5kLmFncm9fb3JpZ2luYXRpb25fbGlua3NcIjogXCJMaWdhw6fDtWVzXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmZhbnRhc3lfbmFtZVwiOiBcIk5vbWUgZmFudGFzaWFcIixcclxuICAgIFwicGxhdGZvcm0uYmFja2VuZC5hZ3JvX29yaWdpbmF0aW9uX29wZXJhdGlvbl92ZXJzdXNfdHJhbnNhY3Rpb25fbGlua1wiOiBcIkxpZ2HDp8OjbyBvcGVyYcOnw6NvIHggdHJhbnNhw6fDo29cIixcclxuICAgIFwicGxhdGZvcm0uYmFja2VuZC5tZW51X2V2ZW50X2NvbnRyb2xcIjogXCJDb25zdWx0YSBkZSBldmVudG9zL2ludGVncmHDp8O1ZXNcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuY29tcGFueV9zZWFyY2hfbGFiZWxcIjogXCJDb25zdWx0YXIgRW1wcmVzYVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5jb21wYW55X3Rvb2x0aXBcIjogXCJTZWxlY2lvbmUgdW1hIGVtcHJlc2EgcGFyYSBwcm9zc2VndWlyXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmJyYW5jaF9zZWFyY2hfbGFiZWxcIjogXCJDb25zdWx0YXIgRmlsaWFsXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmJyYW5jaF90b29sdGlwXCI6IFwiRW5jb250cmUgYXMgZmlsaWFpcyBkYSBlbXByZXNhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmRhc2hcIjogXCItXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnRpY2tldF90b29sdGlwXCI6IFwiQWRpY2lvbmUgbyBuw7ptZXJvIGRvIHRpY2tldCBwYXJhIGVzcGVjaWZpY2FyIG5hIGJ1c2NhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnRpY2tldF9zZWFyY2hfbGFiZWxcIjogXCJDb25zdWx0YXIgVGlja2V0XCIsXHJcbiAgICBcImFncm8uZ3JhaW5fY2xhc3NpZmljYXRpb24udGlja2V0X3NlYXJjaF9sYWJlbFwiOiBcIkNvbnN1bHRhciBUaWNrZXRcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMua2lsb2dyYW1fdW5pdF9sYWJlbFwiOiBcIktHXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2xpc3RfaGVhZGVyXCI6IFwiTGlzdGEgZGUgRXZlbnRvc1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy50aWNrZXRfZXZlbnRcIjogXCJFbWlzc8OjbyBkbyBUaWNrZXRcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucHJvdmlzaW9uYWxfZXZlbnRcIjogXCJTYWxkbyBwcm92aXPDs3Jpb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lZmZlY3RpdmVfZXZlbnRcIjogXCJTYWxkbyBlZmV0aXZvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVmZmVjdGl2ZV9jb25maXJtYXRpb25fZXZlbnRcIjogXCJDb25maXJtYcOnw6NvIHNhbGRvIGVmZXRpdm9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucmVtb3ZlX3Byb3Zpc2lvbmFsX2V2ZW50XCI6IFwiUmVtb3ZlciBTYWxkbyBQcm92aXPDs3Jpb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5jYW5jZWxlZFwiOiBcIkNhbmNlbGFkb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5sYWJlbF9udW1iZXJcIjogXCJUaWNrZXRcIixcclxuICAgIFwiYWdyby5ncmFpbl9jbGFzc2lmaWNhdGlvbi5sYWJlbF9udW1iZXJcIjogXCJUaWNrZXRcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuY25walwiOiBcIkNOUEpcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubGFiZWxfY2l0eVwiOiBcIkNpZGFkZVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5tZW51X2V2ZW50X2NvbnRyb2xcIjogXCJDb25zdWx0YSBkZSBldmVudG9zL2ludGVncmHDp8O1ZXNcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMudHJhbnNmZXJfb3JpZ2luX2V2ZW50XCI6IFwiVHJhbnNmZXLDqm5jaWEgZW50cmUgUHJvZHV0b3Jlc1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5nZW5lcmF0aW9uX29mX2ludm9pY2VfaW5zdGFsbG1lbnRzXCI6IFwiR2VyYcOnw6NvIGRhcyBwYXJjZWxhcyBkYSBub3RhIGZpc2NhbFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5pbnZvaWNlX2NhbmNlbGVkXCI6IFwiRmVjaGFtZW50byBkYSBub3RhIGZpc2NhbFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5DQU5DRUxfSU5WT0lDRVwiOiBcIkNhbmNlbGFtZW50byBkZSBub3RhIGZpc2NhbFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5FRkZFQ1RJVkVfQ09ORklSTUFUSU9OXCI6IFwiQ29uZmlybWHDp8OjbyBlZmV0aXZhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLkNIQU5HRV9SRVFVRVNUXCI6IFwiU29saWNpdGHDp8OjbyBkZSBhbHRlcmHDp8Ojb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5DSEFOR0VfUkVTUE9OU0VcIjogXCJSZXNwb3N0YSBkYSBzb2xpY2l0YcOnw6NvIGRlIGFsdGVyYcOnw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLlBST0NFU1NfRklYQVRJT05cIjogXCJQcm9jZXNzYSBhIGZpeGHDp8Ojb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5UUkFOU0ZFUl9DUkVBVEVfSU5DT01JTkdfSU5WT0lDRVwiOiBcIkVtaXNzw6NvIE5GIGRlIGVudHJhZGFcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuVFJBTlNGRVJfQ1JFQVRFX09VVEdPSU5HX0lOVk9JQ0VcIjogXCJFbWlzc8OjbyBORiBkZSBzYcOtZGFcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuVFJBTlNGRVJfUFJPRFVDRVJfQkFMQU5DRVwiOiBcIlRyYW5zZmVyw6puY2lhIGRlIHNhbGRvIGVudHJlIHByb2R1dG9yZXNcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuY29udHJvbF9jb2RlXCI6IFwiSWRlbnRpZmljYWRvclwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5maXhhdGlvbl9ldmVudFwiOiBcIkZpeGHDp8Ojb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5GSU5JU0hfRklOQU5DSUFMX0ZJWEFUSU9OXCI6IFwiRW1pc3PDo28vQmFpeGEgZGUgdMOtdHVsb3NcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuRklOSVNIX1BST0RVQ0VSX05FVF9WQUxVRV9GSVhBVElPTlwiOiBcIkF0dWFsaXphw6fDo28gZGUgc2FsZG9zXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLkNPTkNMVURFX0ZJWEFUSU9OXCI6IFwiQ29uY2x1c8OjbyBkYSBmaXhhw6fDo29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuQ0FOQ0VMX0ZJTkFOQ0lBTF9GSVhBVElPTlwiOiBcIkNhbmNlbGEgZW1pc3PDo28gZGUgdMOtdHVsb3NcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuQ0FOQ0VMX1BST0RVQ0VSX05FVF9WQUxVRV9GSVhBVElPTlwiOiBcIlJldmVydGUgYXR1YWxpemHDp8OjbyBkZSBzYWxkb3NcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuQ0FOQ0VMX0ZJWEFUSU9OXCI6IFwiQ2FuY2VsYSBmaXhhw6fDo29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuY2FuY2VsX2ZpeGF0aW9uX3RpdGxlXCI6IFwiQ2FuY2VsYXIgZml4YcOnw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmNhbmNlbF9maXhhdGlvbl9kZXNjcmlwdGlvblwiOiBcIlRlbSBjZXJ0ZXphIHF1ZSBkZXNlamEgY2FuY2VsYXIgYSBmaXhhw6fDo28/XCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX2NhbmNlbF9maXhhdGlvbl9tZXNzYWdlX3RpdGxlXCI6IFwiRXJybyBhbyBjYW5jZWxhciBmaXhhw6fDo29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXJyb3JfY2FuY2VsX2ZpeGF0aW9uX21lc3NhZ2VfZGVzY3JpcHRpb25cIjogXCJIb3V2ZSB1bSBlcnJvIGFvIGNhbmNlbGFyIGEgZml4YcOnw6NvLiBUZW50ZSBub3ZhbWVudGUgbWFpcyB0YXJkZS5cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuY2FuY2VsX2ZpeGF0aW9uX21lc3NhZ2VfdGl0bGVcIjogXCJDYW5jZWxhbWVudG8gZGUgZml4YcOnw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmNhbmNlbF9maXhhdGlvbl9tZXNzYWdlX2Rlc2NyaXB0aW9uXCI6IFwiTyBwcm9jZXNzbyBkZSBjYW5jZWxhbWVudG8gZGEgZml4YcOnw6NvIGZvaSBpbmljaWFkbyBjb20gc3VjZXNzby5cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMud2Fybl9jYW5jZWxfZml4YXRpb25fbWVzc2FnZV90aXRsZVwiOiBcIkNhbmNlbGFtZW50byBkZSBmaXhhw6fDo29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMud2Fybl9jYW5jZWxfZml4YXRpb25fbWVzc2FnZV9kZXNjcmlwdGlvblwiOiBcIk7Do28gw6kgcGVybWl0aWRvIGNhbmNlbGFyIGEgZml4YcOnw6NvIGRlIGNvbXByYSBpbWVkaWF0YS5cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMud2Fybl9pbW1lZGlhdGVfY2FuY2VsX2ZpeGF0aW9uX21lc3NhZ2VfZGVzY3JpcHRpb25cIjogXCJOw6NvIMOpIHBvc3PDrXZlbCBjYW5jZWxhciB1bWEgZml4YcOnw6NvIHJlYWxpemFkYSB2aWEgY29tcHJhIGltZWRpYXRhLlwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5jYW5jZWxfZml4YXRpb25fZXZlbnRcIjogXCJDYW5jZWxhbWVudG8gZGUgZml4YcOnw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmludm9pY2VfdHlwZV9JTkNPTUlOR1wiOiBcIkVudHJhZGFcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuaW52b2ljZV90eXBlX0NPTVBMRU1FTlRcIjogXCJDb21wbGVtZW50YXJcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuaW52b2ljZV90eXBlX0FESlVTVE1FTlRcIjogXCJBanVzdGVcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuaW52b2ljZV90eXBlX09VVEdPSU5HXCI6IFwiU2HDrWRhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmludm9pY2VfdHlwZV9SRVRVUk5cIjogXCJEZXZvbHXDp8Ojb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5pbnZvaWNlX3R5cGVfU0VSVklDRVwiOiBcIlNlcnZpw6dvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmludm9pY2VfdHlwZV9TWU1CT0xJQ19SRVRVUk5cIjogXCJEZXZvbHXDp8OjbyBzaW1iw7NsaWNhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmNhbmNlbF9yZWFzb25cIjogXCJNb3Rpdm8gZG8gY2FuY2VsYW1lbnRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLlRSQU5TRkVSX0NBTkNFTF9JTkNPTUlOR19JTlZPSUNFXCI6IFwiQ2FuY2VsYW1lbnRvIGRlIE5GIGRlIGVudHJhZGFcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuVFJBTlNGRVJfQ0FOQ0VMX09VVEdPSU5HX0lOVk9JQ0VcIjogXCJDYW5jZWxhbWVudG8gZGUgTkYgZGUgc2HDrWRhIFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5UUkFOU0ZFUl9SRVZFUlNFX1BST0RVQ0VSX0JBTEFOQ0VcIjogXCJFc3Rvcm5vIGRvcyBzYWxkb3MgZGUgcHJvZHV0b3Jlc1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5UUkFOU0ZFUl9DT05DTFVERV9DQU5DRUxcIjogXCJDb25jbHVzw6NvIGRvIGNhbmNlbGFtZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy50cmFuc2Zlcl9jYW5jZWxsYXRpb25fZXZlbnRcIjogXCJDYW5jZWxhbWVudG8gZGUgdHJhbnNmZXLDqm5jaWFcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuQ1JFQVRFX0lOVk9JQ0VfRklYQVRJT05cIjogXCJFbWlzc8OjbyBkZSBORlwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5DQU5DRUxfSU5WT0lDRV9GSVhBVElPTlwiOiBcIkNhbmNlbGFtZW50byBkZSBORlwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5PUklHSU5BVElPTl9DUkVBVEVfSU5WT0lDRVwiOiBcIkVtaXNzw6NvIGRlIE5GXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLk9SSUdJTkFUSU9OX0NSRUFURV9FRkZFQ1RJVkVfQkFMQU5DRVwiOiBcIkVtaXNzw6NvIGRlIHNhbGRvIGVmZXRpdm9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuUFJPRFVDRVJfTkVUX1ZBTFVFX0VGRkVDVElWRV9CQUxBTkNFX0NPTkZJUk1BVElPTlwiOiBcIkNvbmZpcm1hw6fDo28gZGUgc2FsZG8gZWZldGl2b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5DTE9TRV9JTlZPSUNFX0ZJWEFUSU9OXCI6IFwiRmVjaGFtZW50byBkZSBORlwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5PUklHSU5BVElPTl9DUkVBVEVfRUZGRUNUSVZFX0NPTkZJUk1BVElPTlwiOiBcIkNvbmZpcm1hw6fDo28gZWZldGl2YVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5PUklHSU5BVElPTl9DUkVBVEVfUFJPVklTSU9OQUxfQkFMQU5DRVwiOiBcIlNhbGRvIHByb3Zpc8OzcmlvXCJcclxufTtcclxuZXhwb3J0IGRlZmF1bHQgcHRCUjsiXX0=
|
|
247
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHQtQlIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbInNlcnZpY2VzL2kxOG4vcHQtQlIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxJQUFJLEdBQUc7SUFDVCxpREFBaUQsRUFBRSwrREFBK0Q7SUFDbEgsdUNBQXVDLEVBQUUsNEJBQTRCO0lBQ3JFLG1EQUFtRCxFQUFFLFNBQVM7SUFDOUQsaUNBQWlDLEVBQUUsV0FBVztJQUM5Qyw4Q0FBOEMsRUFBRSxpQ0FBaUM7SUFDakYsNEJBQTRCLEVBQUUsS0FBSztJQUNuQyw2QkFBNkIsRUFBRSxLQUFLO0lBQ3BDLDJDQUEyQyxFQUFFLDRCQUE0QjtJQUN6RSxxQ0FBcUMsRUFBRSw4QkFBOEI7SUFDckUseUNBQXlDLEVBQUUsb0JBQW9CO0lBQy9ELHNDQUFzQyxFQUFFLFFBQVE7SUFDaEQsNkNBQTZDLEVBQUUsa0JBQWtCO0lBQ2pFLDBDQUEwQyxFQUFFLG9CQUFvQjtJQUNoRSw0Q0FBNEMsRUFBRSxvQkFBb0I7SUFDbEUsaUNBQWlDLEVBQUUsVUFBVTtJQUM3QyxvQ0FBb0MsRUFBRSxhQUFhO0lBQ25ELDZEQUE2RCxFQUFFLE9BQU87SUFDdEUsaUNBQWlDLEVBQUUsU0FBUztJQUM1QyxzQ0FBc0MsRUFBRSxjQUFjO0lBQ3RELHNEQUFzRCxFQUFFLHdCQUF3QjtJQUNoRixtREFBbUQsRUFBRSxzQkFBc0I7SUFDM0UsZ0RBQWdELEVBQUUsZUFBZTtJQUNqRSxxREFBcUQsRUFBRSx1QkFBdUI7SUFDOUUsNENBQTRDLEVBQUUsa0JBQWtCO0lBQ2hFLDhDQUE4QyxFQUFFLG9CQUFvQjtJQUNwRSx5Q0FBeUMsRUFBRSxtQ0FBbUM7SUFDOUUsOENBQThDLEVBQUUsc0JBQXNCO0lBQ3RFLHNDQUFzQyxFQUFFLFFBQVE7SUFDaEQsbUVBQW1FLEVBQUUsU0FBUztJQUM5RSxrQ0FBa0MsRUFBRSxZQUFZO0lBQ2hELGdD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ekYsbUVBQW1FLEVBQUUsa0VBQWtFO0lBQ3ZJLHVEQUF1RCxFQUFFLHlCQUF5QjtJQUNsRiw2REFBNkQsRUFBRSxpRUFBaUU7SUFDaEksNERBQTRELEVBQUUseUJBQXlCO0lBQ3ZGLGtFQUFrRSxFQUFFLHdEQUF3RDtJQUM1SCw0RUFBNEUsRUFBRSxvRUFBb0U7SUFDbEosK0NBQStDLEVBQUUseUJBQXlCO0lBQzFFLCtDQUErQyxFQUFFLFNBQVM7SUFDMUQsaURBQWlELEVBQUUsY0FBYztJQUNqRSxpREFBaUQsRUFBRSxRQUFRO0lBQzNELCtDQUErQyxFQUFFLE9BQU87SUFDeEQsNkNBQTZDLEVBQUUsV0FBVztJQUMxRCw4Q0FBOEMsRUFBRSxTQUFTO0lBQ3pELHNEQUFzRCxFQUFFLHFCQUFxQjtJQUM3RSx1Q0FBdUMsRUFBRSx3QkFBd0I7SUFDakUsMERBQTBELEVBQUUsK0JBQStCO0lBQzNGLDBEQUEwRCxFQUFFLDhCQUE4QjtJQUMxRiwyREFBMkQsRUFBRSxrQ0FBa0M7SUFDL0Ysa0RBQWtELEVBQUUsMkJBQTJCO0lBQy9FLHFEQUFxRCxFQUFFLCtCQUErQjtJQUN0RixpREFBaUQsRUFBRSxlQUFlO0lBQ2xFLGlEQUFpRCxFQUFFLG9CQUFvQjtJQUN2RSxvREFBb0QsRUFBRSxlQUFlO0lBQ3JFLDhEQUE4RCxFQUFFLDBCQUEwQjtJQUMxRiwyRUFBMkUsRUFBRSw4QkFBOEI7SUFDM0csZ0RBQWdELEVBQUUsa0JBQWtCO0lBQ3BFLG1FQUFtRSxFQUFFLHFCQUFxQjtJQUMxRixnRUFBZ0UsRUFBRSxrQkFBa0I7Q0FDdkYsQ0FBQztBQUNGLGVBQWUsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgcHRCUiA9IHtcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMudGFibGVfZW1wdHlfZGVzY3JpcHRpb25cIjogXCJBbHRlcmUgb3MgZmlsdHJvcyBhY2ltYSBwYXJhIGdlcmFyIG91dHJvcyByZXN1bHRhZG9zIGRlIGJ1c2NhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLm5vdGhpbmdfZm91bmRcIjogXCJOZW5odW0gcmVnaXN0cm8gZW5jb250cmFkb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5wYW5lbF90aXRsZV9ldmVudHNfZXZlbnRzXCI6IFwiRXZlbnRvc1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5yZWZyZXNoXCI6IFwiQXR1YWxpemFyXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfaGVhZGVyXCI6IFwiQ29uc3VsdGEgZGUgZXZlbnRvcy9pbnRlZ3Jhw6fDtWVzXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLm5vXCI6IFwiTsOjb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy55ZXNcIjogXCJTaW1cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfbW9kYWxfdGl0bGVcIjogXCJSZXByb2Nlc3NhbWVudG8gZGUgRXZlbnRvc1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9tb2RhbFwiOiBcIkRlc2VqYSByZXByb2Nlc3NhciBvIGV2ZW50bz9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucmVwcm9jZXNzX2V2ZW50XCI6IFwiUmVwcm9jZXNzYXIgZXZlbnRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50c19jbG9zZVwiOiBcIkZlY2hhclwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9lcnJvcl9tZXNzYWdlXCI6IFwiTWVuc2FnZW0gZGUgZXJyb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5sYXN0X3VwZGF0ZV9kYXRlXCI6IFwiw5psdGltYSBhdHVhbGl6YcOnw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnNob3dfZXZlbnRfZGV0YWlsc1wiOiBcIkRldGFsaGVzIGRvIGV2ZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5wZW5kaW5nXCI6IFwiUGVuZGVudGVcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucHJvY2Vzc2luZ1wiOiBcIlByb2Nlc3NhbmRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnBhbmVsX3RpdGxlX2V2ZW50c19lbmRlZF93aXRoX2Vycm9yXCI6IFwiRmFsaGFcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMudGlja2V0c1wiOiBcIlRpY2tldHNcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucnVyYWxfZXN0YXRlXCI6IFwiSW3Ds3ZlbCBSdXJhbFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5jaGFuZ2VfcmVxdWVzdF9ldmVudF9zdW1tYXJ5XCI6IFwiQWx0ZXJhw6fDo28gZGUgXFxuUGVzYWdlbVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy50aWNrZXRfbWFpbnRlbmFuY2VfaGVhZGVyXCI6IFwiTWFudXRlbsOnw6NvIGRlIHRpY2tldFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5pbnZvaWNlX2NyZWF0aW5nX2V2ZW50XCI6IFwiRW1pc3PDo28gZGUgTkZcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuYmFsYW5jZV9lbnRyeV9jb250cm9sX2V2ZW50XCI6IFwiRW50cmFkYS9zYcOtZGEgYmFsYW7Dp2FcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfb3JpZ2luX2xhYmVsXCI6IFwiT3JpZ2VtIGRvIGV2ZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9kZXRhaWxzX2hlYWRlclwiOiBcIkRldGFsaGVzIGRvIEV2ZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5yZWdpc3RlcnNfZm91bmRcIjogXCJ7dG90YWx9IHJlZ2lzdHJvKHMpIGVuY29udHJhZG8ocylcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuY2hhbmdlX3JlcXVlc3RfZXZlbnRcIjogXCJBbHRlcmHDp8OjbyBkZSBQZXNhZ2VtXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnN0YXR1c19sYWJlbFwiOiBcIlN0YXR1c1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5wYW5lbF90aXRsZV9ldmVudHNfY29tcGxldGVkX3N1Y2Nlc3NmdWxseVwiOiBcIlN1Y2Vzc29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuc3VwcGxpZXJcIjogXCJGb3JuZWNlZG9yXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnRpY2tldFwiOiBcIlRpY2tldFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5jb21wYW55XCI6IFwiRW1wcmVzYVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5sYWJlbF9icmFuY2hcIjogXCJGaWxpYWxcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfc2lkZWJhcl90aXRsZVwiOiBcIkV2ZW50byB7ZXZlbnROdW1iZXJ9XCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnJlcHJvY2Vzc2luZ19ldmVudF9tZXNzYWdlX3RpdGxlXCI6IFwiUmVwcm9jZXNzYW5kbyBFdmVudG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMucmVwcm9jZXNzaW5nX2V2ZW50X21lc3NhZ2VfZGVzY3JpcHRpb25cIjogXCJPIGV2ZW50byBzZWxlY2lvbmFkbyBlc3TDoSBzZW5kbyByZXByb2Nlc3NhZG8uXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX3JlcHJvY2Vzc2luZ19ldmVudF9tZXNzYWdlX3RpdGxlXCI6IFwiRXJybyBhbyByZXByb2Nlc3NhciBldmVudG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXJyb3JfcmVwcm9jZXNzaW5nX2V2ZW50X21lc3NhZ2VfZGVzY3JpcHRpb25cIjogXCJIb3V2ZSB1bSBlcnJvIGFvIHJlcHJvY2Vzc2FyIG8gZXZlbnRvLiBUZW50ZSBub3ZhbWVudGUgbWFpcyB0YXJkZS5cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuYWN0aW9uc1wiOiBcIkHDp8O1ZXNcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuYWRkXCI6IFwiQWRpY2lvbmFyXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmF0X2RhdGVcIjogXCJOYSBkYXRhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmF0X3RpbWVcIjogXCJOYSBob3JhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmNhbmNlbFwiOiBcIkNhbmNlbGFyXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmNsZWFyXCI6IFwiTGltcGFyXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmNyZWF0ZWRfYnlcIjogXCJDcmlhZG8gcG9yXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmRlbGV0ZVwiOiBcIkV4Y2x1aXJcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZGVsZXRlX2NvbmZpcm1hdGlvbl9tZXNzYWdlXCI6IFwiVGVtIGNlcnRlemEgcXVlIGRlc2VqYSBleGNsdWlyIGVzdGUgaXRlbT9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZGVsZXRlX2NvbmZpcm1hdGlvbl90aXRsZVwiOiBcIkNvbmZpcm1hw6fDo28gZGUgZXhjbHVzw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmRlbGV0ZWRfbWVzc2FnZV9jb250ZW50XCI6IFwiSXRlbSBleGNsdcOtZG8gY29tIHN1Y2Vzc29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZGVsZXRlZF9tZXNzYWdlX3RpdGxlXCI6IFwiRXhjbHVzw6NvIHJlYWxpemFkYVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lXzA3MF9lbXBfY29kX2VtcFwiOiBcIkPDs2RpZ28gZGEgZW1wcmVzYVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lXzA3MF9lbXBfY3JlYXRlZF9ieVwiOiBcIkNyaWFkbyBwb3JcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZV8wNzBfZW1wX2NyZWF0ZWRfZGF0ZVwiOiBcIkRhdGEgZGUgY3JpYcOnw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVfMDcwX2VtcF9pZFwiOiBcIklkXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVfMDcwX2VtcF9sYXN0X21vZGlmaWVkX2J5XCI6IFwiw5psdGltYSBtb2RpZmljYcOnw6NvIHBvclwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lXzA3MF9lbXBfbGFzdF9tb2RpZmllZF9kYXRlXCI6IFwiRGF0YSBkYSDDumx0aW1hIG1vZGlmaWNhw6fDo29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZV8wNzBfZW1wX25vbV9lbXBcIjogXCJOb21lIGRhIGVtcHJlc2FcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZV8wNzBfZW1wX3NpZ19lbXBcIjogXCJOb21lIGZhbnRhc2lhIC8gU2lnbGEgZGEgZW1wcmVzYVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lXzA3MF9maWxfY2lkX2ZpbFwiOiBcIkNpZGFkZVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lXzA3MF9maWxfY29kX2ZpbFwiOiBcIkPDs2RpZ28gZGEgZmlsaWFsXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVfMDcwX2ZpbF9jcmVhdGVkX2J5XCI6IFwiQ3JpYWRvIHBvclwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lXzA3MF9maWxfY3JlYXRlZF9kYXRlXCI6IFwiRGF0YSBkZSBjcmlhw6fDo29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZV8wNzBfZmlsX2lkXCI6IFwiSWRcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZV8wNzBfZmlsX2xhc3RfbW9kaWZpZWRfYnlcIjogXCLDmmx0aW1hIG1vZGlmaWNhw6fDo28gcG9yXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVfMDcwX2ZpbF9sYXN0X21vZGlmaWVkX2RhdGVcIjogXCJEYXRhIGRhIMO6bHRpbWEgbW9kaWZpY2HDp8Ojb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lXzA3MF9maWxfbm9tX2ZpbFwiOiBcIk5vbWUgZGEgZmlsaWFsXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVfMDcwX2ZpbF9udW1fY2djXCI6IFwiQ05QSlwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lXzA3MF9maWxfbnVtX2ZvblwiOiBcIk51bWVybyBUZWxlZm9uZVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lXzA3MF9maWxfc2lnX2ZpbFwiOiBcIk5vbWUgZmFudGFzaWEgZGEgZmlsaWFsXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVkaXRcIjogXCJFZGl0YXJcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXJyb3JfZm9yYmlkZGVuX2Rlc2NyaXB0aW9uXCI6IFwiVm9jw6ogbsOjbyB0ZW0gcGVybWlzc8OjbyBwYXJhIGFjZXNzYXIgZXN0ZSByZWN1cnNvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX2ZvcmJpZGRlbl90aXRsZVwiOiBcIkFjZXNzbyBuZWdhZG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXJyb3JfaW52YWxpZFwiOiBcIlZhbG9yIGludsOhbGlkb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lcnJvcl9tYXhfbGVuZ3RoXCI6IFwiTyB2YWxvciBtw6F4aW1vIGRlIGNhcmFjdGVyZXMgw6kgezB9XCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX21heF92YWx1ZVwiOiBcIk8gdmFsb3IgbcOheGltbyDDqSB7MH1cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXJyb3JfbWluX2xlbmd0aFwiOiBcIk8gdmFsb3IgbcOtbmltbyBkZSBjYXJhY3RlcmVzIMOpIHt2YWxvcn1cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXJyb3JfbWluX3ZhbHVlXCI6IFwiTyB2YWxvciBtw61uaW1vIMOpIHswfVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lcnJvcl9ub3RfZm91bmRfZGVzY3JpcHRpb25cIjogXCJPIHJlY3Vyc28gc29saWNpdGFkbyBuw6NvIGZvaSBlbmNvbnRyYWRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX25vdF9mb3VuZF90aXRsZVwiOiBcIk7Do28gZW5jb250cmFkb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lcnJvcl9yZXF1aXJlZFwiOiBcIkNhbXBvIG9icmlnYXTDs3Jpb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lcnJvcl9zZXJ2ZXJfZGVzY3JpcHRpb25cIjogXCJPY29ycmV1IHVtIGVycm8gYW8gcHJvY2Vzc2FyIHN1YSBzb2xpY2l0YcOnw6NvLiBQb3IgZmF2b3IsIHRlbnRlIG5vdmFtZW50ZVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lcnJvcl9zZXJ2ZXJfdGl0bGVcIjogXCJFcnJvIG5vIHNlcnZpZG9yXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX3NlcnZlcl90cnlfYWdhaW5cIjogXCJUZW50ZSBub3ZhbWVudGVcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXJyb3JfdW5hdXRob3JpemVkX2Rlc2NyaXB0aW9uXCI6IFwiVm9jw6ogbsOjbyBlc3TDoSBhdXRvcml6YWRvIGEgYWNlc3NhciBlc3RlIHJlY3Vyc29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXJyb3JfdW5hdXRob3JpemVkX3RpdGxlXCI6IFwiTsOjbyBhdXRvcml6YWRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xcIjogXCJDb250cm9sZSBkZSBldmVudG9zXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfY3JlYXRlZF9ieVwiOiBcIkNyaWFkbyBwb3JcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9jcmVhdGVkX2RhdGVcIjogXCJEYXRhIGRlIGNyaWHDp8Ojb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2VfMDcwX2VtcFwiOiBcIkVtcHJlc2FcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9lXzA3MF9lbXBfc2VhcmNoX3RpdGxlXCI6IFwiU2VsZWNpb25lIGEgZW1wcmVzYVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2VfMDcwX2ZpbFwiOiBcIkZpbGlhbFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2VfMDcwX2ZpbF9zZWFyY2hfdGl0bGVcIjogXCJTZWxlY2lvbmUgYSBmaWxpYWxcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9lbXB0eV9zdGF0ZV9kZXNjcmlwdGlvblwiOiBcIk5lbmh1bSByZWdpc3RybyBlbmNvbnRyYWRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfZW1wdHlfc3RhdGVfdGl0bGVcIjogXCJOZW5odW0gcmVnaXN0cm8gZW5jb250cmFkb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2V2ZW50X29yaWdpblwiOiBcIk9yaWdlbSBkbyBldmVudG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9ldmVudF9vcmlnaW5fcGxhY2Vob2xkZXJcIjogXCJTZWxlY2lvbmUgYSBvcmlnZW0gZG8gZXZlbnRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfZXh0ZXJuYWxfaWRcIjogXCJJZCBleHRlcm5vXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfZm9ybV9nZW5lcmFsX3RpdGxlXCI6IFwiR2VyYWxcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9mb3JtX3RpdGxlXCI6IFwiQ29udHJvbGUgZGUgZXZlbnRvc1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2lkXCI6IFwiSWQgZGEgZW50aWRhZGVcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9pdGVtXCI6IFwiSXRlbnMgZG8gY29udHJvbGUgZGUgZXZlbnRvc1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2l0ZW1fY3JlYXRlZF9ieVwiOiBcIkNyaWFkbyBwb3JcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9pdGVtX2NyZWF0ZWRfZGF0ZVwiOiBcIkRhdGEgZGUgY3JpYcOnw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfaXRlbV9lbXB0eV9zdGF0ZV9kZXNjcmlwdGlvblwiOiBcIk5lbmh1bSByZWdpc3RybyBlbmNvbnRyYWRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfaXRlbV9lbXB0eV9zdGF0ZV90aXRsZVwiOiBcIk5lbmh1bSByZWdpc3RybyBlbmNvbnRyYWRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfaXRlbV9ldmVudF9jb250cm9sXCI6IFwiZXZlbnRDb250cm9sSWRcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9pdGVtX2V2ZW50X2NvbnRyb2xfc2VhcmNoX3RpdGxlXCI6IFwiU2VsZWNpb25lIG8gY29udHJvbGUgZGUgZXZlbnRvc1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2l0ZW1fZXZlbnRfZ3JvdXBcIjogXCJHcnVwbyBkbyBldmVudG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9pdGVtX2V2ZW50X29wZXJhdGlvblwiOiBcIlRpcG8gZGEgb3BlcmHDp8OjbyBkbyBldmVudG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9pdGVtX2V2ZW50X29wZXJhdGlvbl9wbGFjZWhvbGRlclwiOiBcIlNlbGVjaW9uZSBvIHRpcG8gZGEgb3BlcmHDp8OjbyBkbyBldmVudG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9pdGVtX2Zvcm1fZ2VuZXJhbF90aXRsZVwiOiBcIkdlcmFsXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfaXRlbV9mb3JtX3RpdGxlXCI6IFwiSXRlbnMgZG8gY29udHJvbGUgZGUgZXZlbnRvc1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2l0ZW1faWRcIjogXCJJZCBkYSBlbnRpZGFkZVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2l0ZW1fbGFzdF9tb2RpZmllZF9ieVwiOiBcIsOabHRpbWEgbW9kaWZpY2HDp8OjbyBwb3JcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9pdGVtX2xhc3RfbW9kaWZpZWRfZGF0ZVwiOiBcIkRhdGEgZGEgw7psdGltYSBtb2RpZmljYcOnw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfaXRlbV9saXN0X2dyaWRfdGl0bGVcIjogXCJJdGVucyBkbyBjb250cm9sZSBkZSBldmVudG9zXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfaXRlbV9saXN0X3RpdGxlXCI6IFwiSXRlbnMgZG8gY29udHJvbGUgZGUgZXZlbnRvc1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2l0ZW1fbWVzc2FnZVwiOiBcIk1lbnNhZ2VtIGRlIGV2ZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2l0ZW1fcGFyYW1cIjogXCJQYXLDom1ldHJvcyBkbyBldmVudG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9pdGVtX3JlcXVlc3RcIjogXCJTb2xpY2l0YcOnw6NvIHJlY2ViaWRhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfaXRlbV9yZXNwb25zZVwiOiBcIlJlc3Bvc3RhIGVudmlhZGFcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9pdGVtX3NlcXVlbmNlXCI6IFwiU2VxdcOqbmNpYSBkbyBldmVudG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9pdGVtX3N0YXR1c1wiOiBcIlN0YXR1cyBkbyBldmVudG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9pdGVtX3N0YXR1c19wbGFjZWhvbGRlclwiOiBcIlNlbGVjaW9uZSBvIHN0YXR1cyBkbyBldmVudG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfY29udHJvbF9sYXN0X21vZGlmaWVkX2J5XCI6IFwiw5psdGltYSBtb2RpZmljYcOnw6NvIHBvclwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2xhc3RfbW9kaWZpZWRfZGF0ZVwiOiBcIkRhdGEgZGEgw7psdGltYSBtb2RpZmljYcOnw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X2NvbnRyb2xfbGlzdF9ncmlkX3RpdGxlXCI6IFwiQ29udHJvbGUgZGUgZXZlbnRvc1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9jb250cm9sX2xpc3RfdGl0bGVcIjogXCJDb250cm9sZSBkZSBldmVudG9zXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X29wZXJhdGlvbl9jaGFuZ2VfcmVxdWVzdFwiOiBcIlNvbGljaXRhw6fDo28gZGUgYWx0ZXJhw6fDo29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfb3BlcmF0aW9uX2NoYW5nZV9yZXNwb25zZVwiOiBcIlJlc3Bvc3RhIGRlIGFsdGVyYcOnw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X29wZXJhdGlvbl9lZmZlY3RpdmVcIjogXCJFZmV0aXZvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X29wZXJhdGlvbl9lZmZlY3RpdmVfY29uZmlybWF0aW9uXCI6IFwiQ29uZmlybWHDp8OjbyBkZSBlZmV0aXZhw6fDo29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfb3BlcmF0aW9uX2ludm9pY2VfY2xvc2luZ1wiOiBcIkZlY2hhbWVudG8gZGUgbm90YSBmaXNjYWxcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfb3BlcmF0aW9uX2ludm9pY2VfY3JlYXRpbmdcIjogXCJDcmlhw6fDo28gZGUgbm90YSBmaXNjYWxcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfb3BlcmF0aW9uX2ludm9pY2VfaW5zdGFsbG1lbnRzXCI6IFwiUGFyY2VsYW1lbnRvIGRlIG5vXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X29wZXJhdGlvbl9wcm92ZXNpb25hbFwiOiBcIlNhbGRvIFByb3Zpc8OzcmlvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X29wZXJhdGlvbl9yZW1vdmVfcHJvdmlzaW9uYWxcIjogXCJSZW1vw6fDo28gZGUgU2FsZG8gcHJvdmlzw7NyaW9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfb3BlcmF0aW9uX3RpY2tldFwiOiBcIlRpY2tldFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9vcmlnaW5fYmFsYW5jZV9lbnRyeV9jb250cm9sXCI6IFwiQ29udHJvbGUgZGUgbGFuw6dhbWVudG8gZGUgc2FsZG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfb3JpZ2luX2NoYW5nZV9yZXF1ZXN0XCI6IFwiU29saWNpdGHDp8OjbyBkZSBhbHRlcmHDp8Ojb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9vcmlnaW5faW52b2ljZVwiOiBcIkludm9pY2VcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfb3JpZ2luX3RpY2tldFwiOiBcIlRpY2tldFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9zdGF0dXNfY2FuY2VsZWRcIjogXCJDYW5jZWxhZG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfc3RhdHVzX2ZhaWxlZFwiOiBcIkZhbGhhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X3N0YXR1c19wZW5kaW5nXCI6IFwiUGVuZGVudGVcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZXZlbnRfc3RhdHVzX3Byb2Nlc3NpbmdcIjogXCJQcm9jZXNzYWRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmV2ZW50X3N0YXR1c19zdWNjZXNzXCI6IFwiU3VjZXNzb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5maWx0ZXJcIjogXCJGaWx0cmFyXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmZpbHRlcnNcIjogXCJGaWx0cm9zXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmxpc3RfZ3JpZF9lbXB0eV9maWVsZFwiOiBcIk5lbmh1bSByZWdpc3RybyBlbmNvbnRyYWRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnByb2R1Y3RfaGVhZGVyX3RpdGxlXCI6IFwiRXZlbnRvc1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5zYXZlXCI6IFwiU2FsdmFyXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnNlbGVjdFwiOiBcIlNlbGVjaW9uZVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy51cGRhdGVkX2J5XCI6IFwiQXR1YWxpemFkbyBwb3JcIixcclxuICAgIFwiZXJyb3JfaW52YWxpZFwiOiBcIlZhbG9yIGludsOhbGlkb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5jaG9vc2VfbGFiZWxcIjogXCJFc2NvbGhhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnJlbW92ZV9sYWJlbFwiOiBcIlJlbW92ZXJcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuY2FuY2VsX2xhYmVsXCI6IFwiQ2FuY2VsYXJcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuc3VjY2Vzc190b29sdGlwXCI6IFwiU3VjZXNzb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5tZW51X2Fncm9fZXZlbnRzXCI6IFwiRXZlbnRvcyBkbyBBZ3JvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmRhdGVcIjogXCJEYXRhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmxhYmVsX2NvZGVfYnJhbmNoXCI6IFwiQ8OzZGlnbyBkYSBmaWxpYWxcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubGFiZWxfY29kZV9jb21wYW55XCI6IFwiQ8OzZGlnbyBkYSBlbXByZXNhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmxhYmVsX2NvZGVfZGVwb3NpdFwiOiBcIkPDs2RpZ28gZG8gZGVww7NzaXRvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmxhYmVsX2NvZGVcIjogXCJDw7NkaWdvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmxhYmVsX2NvbXBhbnlcIjogXCJFbXByZXNhXCIsXHJcbiAgICBcInBsYXRmb3JtLmJhY2tlbmQuYWdyb19vcmlnaW5hdGlvbl9lbnRyeV9jb250cm9sXCI6IFwiQ29udHJvbGUgZW50cmFkYS9zYcOtZGEgdmlhIGJhbGFuw6dhXCIsXHJcbiAgICBcInBsYXRmb3JtLmJhY2tlbmQuYWdyb19vcmlnaW5hdGlvbl9lbnRyeV9leGl0X3F1ZXJ5XCI6IFwiQ29uc3VsdGEgZW50cmFkYS9zYcOtZGFcIixcclxuICAgIFwicGxhdGZvcm0uYmFja2VuZC5hZ3JvX29yaWdpbmF0aW9uX2xpbmtzXCI6IFwiTGlnYcOnw7Vlc1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5mYW50YXN5X25hbWVcIjogXCJOb21lIGZhbnRhc2lhXCIsXHJcbiAgICBcInBsYXRmb3JtLmJhY2tlbmQuYWdyb19vcmlnaW5hdGlvbl9vcGVyYXRpb25fdmVyc3VzX3RyYW5zYWN0aW9uX2xpbmtcIjogXCJMaWdhw6fDo28gb3BlcmHDp8OjbyB4IHRyYW5zYcOnw6NvXCIsXHJcbiAgICBcInBsYXRmb3JtLmJhY2tlbmQubWVudV9ldmVudF9jb250cm9sXCI6IFwiQ29uc3VsdGEgZGUgZXZlbnRvcy9pbnRlZ3Jhw6fDtWVzXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmNvbXBhbnlfc2VhcmNoX2xhYmVsXCI6IFwiQ29uc3VsdGFyIEVtcHJlc2FcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuY29tcGFueV90b29sdGlwXCI6IFwiU2VsZWNpb25lIHVtYSBlbXByZXNhIHBhcmEgcHJvc3NlZ3VpclwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5icmFuY2hfc2VhcmNoX2xhYmVsXCI6IFwiQ29uc3VsdGFyIEZpbGlhbFwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5icmFuY2hfdG9vbHRpcFwiOiBcIkVuY29udHJlIGFzIGZpbGlhaXMgZGEgZW1wcmVzYVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5kYXNoXCI6IFwiLVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy50aWNrZXRfdG9vbHRpcFwiOiBcIkFkaWNpb25lIG8gbsO6bWVybyBkbyB0aWNrZXQgcGFyYSBlc3BlY2lmaWNhciBuYSBidXNjYVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy50aWNrZXRfc2VhcmNoX2xhYmVsXCI6IFwiQ29uc3VsdGFyIFRpY2tldFwiLFxyXG4gICAgXCJhZ3JvLmdyYWluX2NsYXNzaWZpY2F0aW9uLnRpY2tldF9zZWFyY2hfbGFiZWxcIjogXCJDb25zdWx0YXIgVGlja2V0XCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmtpbG9ncmFtX3VuaXRfbGFiZWxcIjogXCJLR1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5ldmVudF9saXN0X2hlYWRlclwiOiBcIkxpc3RhIGRlIEV2ZW50b3NcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMudGlja2V0X2V2ZW50XCI6IFwiRW1pc3PDo28gZG8gVGlja2V0XCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnByb3Zpc2lvbmFsX2V2ZW50XCI6IFwiU2FsZG8gcHJvdmlzw7NyaW9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZWZmZWN0aXZlX2V2ZW50XCI6IFwiU2FsZG8gZWZldGl2b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lZmZlY3RpdmVfY29uZmlybWF0aW9uX2V2ZW50XCI6IFwiQ29uZmlybWHDp8OjbyBzYWxkbyBlZmV0aXZvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnJlbW92ZV9wcm92aXNpb25hbF9ldmVudFwiOiBcIlJlbW92ZXIgU2FsZG8gUHJvdmlzw7NyaW9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuY2FuY2VsZWRcIjogXCJDYW5jZWxhZG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubGFiZWxfbnVtYmVyXCI6IFwiVGlja2V0XCIsXHJcbiAgICBcImFncm8uZ3JhaW5fY2xhc3NpZmljYXRpb24ubGFiZWxfbnVtYmVyXCI6IFwiVGlja2V0XCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmNucGpcIjogXCJDTlBKXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmxhYmVsX2NpdHlcIjogXCJDaWRhZGVcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMubWVudV9ldmVudF9jb250cm9sXCI6IFwiQ29uc3VsdGEgZGUgZXZlbnRvcy9pbnRlZ3Jhw6fDtWVzXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLnRyYW5zZmVyX29yaWdpbl9ldmVudFwiOiBcIlRyYW5zZmVyw6puY2lhIGVudHJlIFByb2R1dG9yZXNcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZ2VuZXJhdGlvbl9vZl9pbnZvaWNlX2luc3RhbGxtZW50c1wiOiBcIkdlcmHDp8OjbyBkYXMgcGFyY2VsYXMgZGEgbm90YSBmaXNjYWxcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuaW52b2ljZV9jYW5jZWxlZFwiOiBcIkZlY2hhbWVudG8gZGEgbm90YSBmaXNjYWxcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuQ0FOQ0VMX0lOVk9JQ0VcIjogXCJDYW5jZWxhbWVudG8gZGUgbm90YSBmaXNjYWxcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuRUZGRUNUSVZFX0NPTkZJUk1BVElPTlwiOiBcIkNvbmZpcm1hw6fDo28gZWZldGl2YVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5DSEFOR0VfUkVRVUVTVFwiOiBcIlNvbGljaXRhw6fDo28gZGUgYWx0ZXJhw6fDo29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuQ0hBTkdFX1JFU1BPTlNFXCI6IFwiUmVzcG9zdGEgZGEgc29saWNpdGHDp8OjbyBkZSBhbHRlcmHDp8Ojb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5QUk9DRVNTX0ZJWEFUSU9OXCI6IFwiUHJvY2Vzc2EgYSBmaXhhw6fDo29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuVFJBTlNGRVJfQ1JFQVRFX0lOQ09NSU5HX0lOVk9JQ0VcIjogXCJFbWlzc8OjbyBORiBkZSBlbnRyYWRhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLlRSQU5TRkVSX0NSRUFURV9PVVRHT0lOR19JTlZPSUNFXCI6IFwiRW1pc3PDo28gTkYgZGUgc2HDrWRhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLlRSQU5TRkVSX1BST0RVQ0VSX0JBTEFOQ0VcIjogXCJUcmFuc2ZlcsOqbmNpYSBkZSBzYWxkbyBlbnRyZSBwcm9kdXRvcmVzXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmNvbnRyb2xfY29kZVwiOiBcIklkZW50aWZpY2Fkb3JcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuZml4YXRpb25fZXZlbnRcIjogXCJGaXhhw6fDo29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuRklOSVNIX0ZJTkFOQ0lBTF9GSVhBVElPTlwiOiBcIkVtaXNzw6NvL0JhaXhhIGRlIHTDrXR1bG9zXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLkZJTklTSF9QUk9EVUNFUl9ORVRfVkFMVUVfRklYQVRJT05cIjogXCJBdHVhbGl6YcOnw6NvIGRlIHNhbGRvc1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5DT05DTFVERV9GSVhBVElPTlwiOiBcIkNvbmNsdXPDo28gZGEgZml4YcOnw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLkNBTkNFTF9GSU5BTkNJQUxfRklYQVRJT05cIjogXCJDYW5jZWxhIGVtaXNzw6NvIGRlIHTDrXR1bG9zXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLkNBTkNFTF9QUk9EVUNFUl9ORVRfVkFMVUVfRklYQVRJT05cIjogXCJSZXZlcnRlIGF0dWFsaXphw6fDo28gZGUgc2FsZG9zXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLkNBTkNFTF9GSVhBVElPTlwiOiBcIkNhbmNlbGEgZml4YcOnw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmNhbmNlbF9maXhhdGlvbl90aXRsZVwiOiBcIkNhbmNlbGFyIGZpeGHDp8Ojb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5jYW5jZWxfZml4YXRpb25fZGVzY3JpcHRpb25cIjogXCJUZW0gY2VydGV6YSBxdWUgZGVzZWphIGNhbmNlbGFyIGEgZml4YcOnw6NvP1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5lcnJvcl9jYW5jZWxfZml4YXRpb25fbWVzc2FnZV90aXRsZVwiOiBcIkVycm8gYW8gY2FuY2VsYXIgZml4YcOnw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmVycm9yX2NhbmNlbF9maXhhdGlvbl9tZXNzYWdlX2Rlc2NyaXB0aW9uXCI6IFwiSG91dmUgdW0gZXJybyBhbyBjYW5jZWxhciBhIGZpeGHDp8Ojby4gVGVudGUgbm92YW1lbnRlIG1haXMgdGFyZGUuXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmNhbmNlbF9maXhhdGlvbl9tZXNzYWdlX3RpdGxlXCI6IFwiQ2FuY2VsYW1lbnRvIGRlIGZpeGHDp8Ojb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5jYW5jZWxfZml4YXRpb25fbWVzc2FnZV9kZXNjcmlwdGlvblwiOiBcIk8gcHJvY2Vzc28gZGUgY2FuY2VsYW1lbnRvIGRhIGZpeGHDp8OjbyBmb2kgaW5pY2lhZG8gY29tIHN1Y2Vzc28uXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLndhcm5fY2FuY2VsX2ZpeGF0aW9uX21lc3NhZ2VfdGl0bGVcIjogXCJDYW5jZWxhbWVudG8gZGUgZml4YcOnw6NvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLndhcm5fY2FuY2VsX2ZpeGF0aW9uX21lc3NhZ2VfZGVzY3JpcHRpb25cIjogXCJOw6NvIMOpIHBlcm1pdGlkbyBjYW5jZWxhciBhIGZpeGHDp8OjbyBkZSBjb21wcmEgaW1lZGlhdGEuXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLndhcm5faW1tZWRpYXRlX2NhbmNlbF9maXhhdGlvbl9tZXNzYWdlX2Rlc2NyaXB0aW9uXCI6IFwiTsOjbyDDqSBwb3Nzw612ZWwgY2FuY2VsYXIgdW1hIGZpeGHDp8OjbyByZWFsaXphZGEgdmlhIGNvbXByYSBpbWVkaWF0YS5cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuY2FuY2VsX2ZpeGF0aW9uX2V2ZW50XCI6IFwiQ2FuY2VsYW1lbnRvIGRlIGZpeGHDp8Ojb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5pbnZvaWNlX3R5cGVfSU5DT01JTkdcIjogXCJFbnRyYWRhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmludm9pY2VfdHlwZV9DT01QTEVNRU5UXCI6IFwiQ29tcGxlbWVudGFyXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmludm9pY2VfdHlwZV9BREpVU1RNRU5UXCI6IFwiQWp1c3RlXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLmludm9pY2VfdHlwZV9PVVRHT0lOR1wiOiBcIlNhw61kYVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5pbnZvaWNlX3R5cGVfUkVUVVJOXCI6IFwiRGV2b2x1w6fDo29cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuaW52b2ljZV90eXBlX1NFUlZJQ0VcIjogXCJTZXJ2acOnb1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5pbnZvaWNlX3R5cGVfU1lNQk9MSUNfUkVUVVJOXCI6IFwiRGV2b2x1w6fDo28gc2ltYsOzbGljYVwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5jYW5jZWxfcmVhc29uXCI6IFwiTW90aXZvIGRvIGNhbmNlbGFtZW50b1wiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5UUkFOU0ZFUl9DQU5DRUxfSU5DT01JTkdfSU5WT0lDRVwiOiBcIkNhbmNlbGFtZW50byBkZSBORiBkZSBlbnRyYWRhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLlRSQU5TRkVSX0NBTkNFTF9PVVRHT0lOR19JTlZPSUNFXCI6IFwiQ2FuY2VsYW1lbnRvIGRlIE5GIGRlIHNhw61kYSBcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuVFJBTlNGRVJfUkVWRVJTRV9QUk9EVUNFUl9CQUxBTkNFXCI6IFwiRXN0b3JubyBkb3Mgc2FsZG9zIGRlIHByb2R1dG9yZXNcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuVFJBTlNGRVJfQ09OQ0xVREVfQ0FOQ0VMXCI6IFwiQ29uY2x1c8OjbyBkbyBjYW5jZWxhbWVudG9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMudHJhbnNmZXJfY2FuY2VsbGF0aW9uX2V2ZW50XCI6IFwiQ2FuY2VsYW1lbnRvIGRlIHRyYW5zZmVyw6puY2lhXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLkNSRUFURV9JTlZPSUNFX0ZJWEFUSU9OXCI6IFwiRW1pc3PDo28gZGUgTkZcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuQ0FOQ0VMX0lOVk9JQ0VfRklYQVRJT05cIjogXCJDYW5jZWxhbWVudG8gZGUgTkZcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuT1JJR0lOQVRJT05fQ1JFQVRFX0lOVk9JQ0VcIjogXCJFbWlzc8OjbyBkZSBORlwiLFxyXG4gICAgXCJhZ3JvLmFuZ3VsYXJfY29tcG9uZW50cy5PUklHSU5BVElPTl9DUkVBVEVfRUZGRUNUSVZFX0JBTEFOQ0VcIjogXCJFbWlzc8OjbyBkZSBzYWxkbyBlZmV0aXZvXCIsXHJcbiAgICBcImFncm8uYW5ndWxhcl9jb21wb25lbnRzLlBST0RVQ0VSX05FVF9WQUxVRV9FRkZFQ1RJVkVfQkFMQU5DRV9DT05GSVJNQVRJT05cIjogXCJDb25maXJtYcOnw6NvIGRlIHNhbGRvIGVmZXRpdm9cIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuQ0xPU0VfSU5WT0lDRV9GSVhBVElPTlwiOiBcIkZlY2hhbWVudG8gZGUgTkZcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuT1JJR0lOQVRJT05fQ1JFQVRFX0VGRkVDVElWRV9DT05GSVJNQVRJT05cIjogXCJDb25maXJtYcOnw6NvIGVmZXRpdmFcIixcclxuICAgIFwiYWdyby5hbmd1bGFyX2NvbXBvbmVudHMuT1JJR0lOQVRJT05fQ1JFQVRFX1BST1ZJU0lPTkFMX0JBTEFOQ0VcIjogXCJTYWxkbyBwcm92aXPDs3Jpb1wiXHJcbn07XHJcbmV4cG9ydCBkZWZhdWx0IHB0QlI7Il19
|
|
@@ -193,7 +193,6 @@ let WebsocketService = class WebsocketService {
|
|
|
193
193
|
if (!this.debugEnable) {
|
|
194
194
|
return;
|
|
195
195
|
}
|
|
196
|
-
console.log('WS debug: ' + message, ...optionalParams);
|
|
197
196
|
}
|
|
198
197
|
info(message) {
|
|
199
198
|
console.info('WS info: ' + message);
|
|
@@ -336,4 +335,4 @@ WebsocketService = __decorate([
|
|
|
336
335
|
})
|
|
337
336
|
], WebsocketService);
|
|
338
337
|
export { WebsocketService };
|
|
339
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic29ja2V0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbInNlcnZpY2VzL3dlYnNvY2tldC93ZWJzb2NrZXQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFrQyxNQUFNLGdCQUFnQixDQUFDO0FBQ25GLE9BQU8sRUFBRSxlQUFlLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFDNUQsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDekMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRzVDLE1BQU0sK0JBQStCLEdBQUcsSUFBSSxDQUFDO0FBQzdDLE1BQU0sK0JBQStCLEdBQUcsSUFBSSxDQUFDO0FBSzdDLElBQWEsZ0JBQWdCLEdBQTdCLE1BQWEsZ0JBQWdCO0lBY3pCLFlBQTZCLHNCQUE4QztRQUE5QywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBYjFELGVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNqRCxrQkFBYSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFDcEMsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBQ25DLFdBQU0sR0FBRyxJQUFJLE9BQU8sRUFBYSxDQUFDO1FBQ2xD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QkFBdUIsQ0FBQyx3QkFBd0IsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzVHLE1BQU0sNkJBQTZCLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDLDJCQUEyQixFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFDbEgsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLDBCQUEwQixFQUFFLDZCQUE2QixDQUFDLENBQUM7UUFDdEYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRU8sa0JBQWtCO1FBQ3RCLE9BQU8sR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsZUFBZSxFQUFFLGVBQWUsQ0FBQztJQUMzRSxDQUFDO0NBQ0osQ0FBQTs7WUF6WHdELHNCQUFzQjs7O0FBZGxFLGdCQUFnQjtJQUg1QixVQUFVLENBQUM7UUFDUixVQUFVLEVBQUUsTUFBTTtLQUNyQixDQUFDO0dBQ1csZ0JBQWdCLENBdVk1QjtTQXZZWSxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGZpbHRlciwgZmluYWxpemUsIG1hcCwgc3dpdGNoTWFwLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBDbGllbnQsIEZyYW1lSW1wbCwgU3RvbXBDb25maWcsIFN0b21wU3Vic2NyaXB0aW9uIH0gZnJvbSAnQHN0b21wL3N0b21wanMnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuY29uc3QgU29ja0pTID0gcmVxdWlyZSgnc29ja2pzLWNsaWVudCcpO1xyXG5pbXBvcnQgeyBBc3luY0xvY2sgfSBmcm9tICcuL2FzeW5jLWxvY2snO1xyXG5pbXBvcnQgeyBVc2VySW5mb3JtYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi91c2VyLWluZm9ybWF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQcmltaXRpdmVNYW5hZ2VyIH0gZnJvbSAnLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBPbkV2ZW50T3B0aW9ucywgUHJpbWl0aXZlRXZlbnQgfSBmcm9tICcuL3Byb3RvY29scyc7XHJcblxyXG5jb25zdCBSRUNPTk5FQ1RfSU5URVJWQUxfTUlMTElTRUNPTkRTID0gMzAwMDtcclxuY29uc3QgQ09OTkVDVElPTl9USU1FT1VUX01JTExJU0VDT05EUyA9IDUwMDA7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFdlYnNvY2tldFNlcnZpY2Uge1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25uZWN0ZWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRpc2Nvbm5lY3RlZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSByZWNvbm5lY3RlZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBlcnJvciQgPSBuZXcgU3ViamVjdDxGcmFtZUltcGw+KCk7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN1YnNjcmliZWQkID0gbmV3IFN1YmplY3Q8UHJpbWl0aXZlTWFuYWdlcjxhbnk+PigpO1xyXG5cclxuICAgIHByaXZhdGUgcmVhZG9ubHkgcHJpbWl0aXZlTWFuYWdlcnM6IE1hcDxzdHJpbmcsIFByaW1pdGl2ZU1hbmFnZXI8YW55Pj4gPSBuZXcgTWFwPHN0cmluZywgUHJpbWl0aXZlTWFuYWdlcjxhbnk+PigpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25uZWN0aW9uTG9jayA9IG5ldyBBc3luY0xvY2soKTtcclxuXHJcbiAgICBwcml2YXRlIHN0b21wQ2xpZW50OiBDbGllbnQ7XHJcbiAgICBwcml2YXRlIGRlYnVnRW5hYmxlID0gZmFsc2U7XHJcbiAgICBwcml2YXRlIGxvc3RDb25uZWN0aW9uID0gZmFsc2U7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSB1c2VySW5mb3JtYXRpb25TZXJ2aWNlOiBVc2VySW5mb3JtYXRpb25TZXJ2aWNlKSB7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFbmFibGVzIHN0b21wanMgZGVidWcgbG9ncyBhbmQgYWRkaXRpb25hbCBpbmZvXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBlbmFibGVEZWJ1Z0xvZ3MoKSB7XHJcbiAgICAgICAgdGhpcy5kZWJ1Z0VuYWJsZSA9IHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBNYW51YWxseSBzdGFydHMgdGhlIGNvbm5lY3Rpb25cclxuICAgICAqL1xyXG4gICAgcHVibGljIGFzeW5jIGNvbm5lY3QoKSB7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5jb25uZWN0aW9uTG9jay5hY3F1aXJlKCk7XHJcblxyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmlzQ29ubmVjdGVkKCkgfHwgdGhpcy5pc0Nvbm5lY3RpbmcoKSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMubG9zdENvbm5lY3Rpb24gPSBmYWxzZTtcclxuXHJcbiAgICAgICAgICAgIGNvbnN0IHN0b21wQ29uZmlnOiBTdG9tcENvbmZpZyA9IHtcclxuICAgICAgICAgICAgICAgIHdlYlNvY2tldEZhY3Rvcnk6ICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3IFNvY2tKUyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXRTdWJzY3JpcHRpb25VcmwoKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCxcclxuICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZW91dDogQ09OTkVDVElPTl9USU1FT1VUX01JTExJU0VDT05EU1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICByZWNvbm5lY3REZWxheTogUkVDT05ORUNUX0lOVEVSVkFMX01JTExJU0VDT05EUyxcclxuICAgICAgICAgICAgICAgIGRlYnVnOiB0aGlzLmRlYnVnLmJpbmQodGhpcyksXHJcbiAgICAgICAgICAgICAgICBvbkNvbm5lY3Q6IHRoaXMuaGFuZGxlT25Db25uZWN0ZWQuYmluZCh0aGlzKSxcclxuICAgICAgICAgICAgICAgIG9uRGlzY29ubmVjdDogdGhpcy5oYW5kbGVPbkRpc2Nvbm5lY3QuYmluZCh0aGlzKSxcclxuICAgICAgICAgICAgICAgIG9uV2ViU29ja2V0Q2xvc2U6IHRoaXMuaGFuZGxlT25XZWJTb2NrZXRDbG9zZS5iaW5kKHRoaXMpLFxyXG4gICAgICAgICAgICAgICAgb25TdG9tcEVycm9yOiB0aGlzLmhhbmRsZU9uU3RvbXBFcnJvci5iaW5kKHRoaXMpLFxyXG4gICAgICAgICAgICAgICAgb25XZWJTb2NrZXRFcnJvcjogdGhpcy5oYW5kbGVPbldlYlNvY2tldEVycm9yLmJpbmQodGhpcylcclxuICAgICAgICAgICAgfTtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuZGVidWcoJ0Nvbm5lY3RpbmcgdGhlIFdlYnNjb2tldCcpO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5zdG9tcENsaWVudCA9IG5ldyBDbGllbnQoc3RvbXBDb25maWcpO1xyXG4gICAgICAgICAgICB0aGlzLnN0b21wQ2xpZW50LmFjdGl2YXRlKCk7XHJcbiAgICAgICAgfSBmaW5hbGx5IHtcclxuICAgICAgICAgICAgYXdhaXQgdGhpcy5jb25uZWN0aW9uTG9jay5yZWxlYXNlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogTWFudWFsbHkgZGlzY29ubmVjdCB0aGUgd2Vic29ja2V0LiBUaGUgcmVjb25uZWN0IGxvb3Agd2lsbCBiZSBzdG9wcGVkLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYXN5bmMgZGlzY29ubmVjdCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBpZiAoIXRoaXMuaXNDb25uZWN0ZWQoKSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhd2FpdCB0aGlzLmNvbm5lY3Rpb25Mb2NrLmFjcXVpcmUoKTtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBmb3IgKGNvbnN0IHByaW1pdGl2ZU1hbmFnZXIgb2YgdGhpcy5wcmltaXRpdmVNYW5hZ2Vycy52YWx1ZXMoKSkge1xyXG4gICAgICAgICAgICAgICAgcHJpbWl0aXZlTWFuYWdlci51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0aGlzLnByaW1pdGl2ZU1hbmFnZXJzLmNsZWFyKCk7XHJcbiAgICAgICAgICAgIHRoaXMuY29ubmVjdGVkJC5uZXh0KGZhbHNlKTtcclxuXHJcbiAgICAgICAgICAgIGlmICh0aGlzLnN0b21wQ2xpZW50KSB7XHJcbiAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLnN0b21wQ2xpZW50LmRlYWN0aXZhdGUoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gZmluYWxseSB7XHJcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuY29ubmVjdGlvbkxvY2sucmVsZWFzZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENoZWNrIGlmIHRoZSB3ZWJzb2NrZXQgaXMgY29ubmVjdGVkXHJcbiAgICAgKiBAcmV0dXJuIGBib29sZWFuYCByZXByZXNlbnRpbmcgaWYgdGhlIHdlYnNvY2tldCBpcyBjb25uZWN0ZWRcclxuICAgICAqL1xyXG4gICAgcHVibGljIGlzQ29ubmVjdGVkKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmICghdGhpcy5zdG9tcENsaWVudCkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5zdG9tcENsaWVudC5jb25uZWN0ZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDaGVjayBpZiB0aGUgd2Vic29ja2V0IGlzIHRyaW5nIHRvIGNvbm5lY3RcclxuICAgICAqIEByZXR1cm4gYGJvb2xlYW5gIHJlcHJlc2VudGluZyBpZiB0aGUgd2Vic29ja2V0IHN0YXR1c1xyXG4gICAgICovXHJcbiAgICBwdWJsaWMgaXNDb25uZWN0aW5nKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmICghdGhpcy5zdG9tcENsaWVudCkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gIXRoaXMuc3RvbXBDbGllbnQuY29ubmVjdGVkICYmIHRoaXMuc3RvbXBDbGllbnQuYWN0aXZlO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRXZlbnQgcmVzcG9uc2FibGUgdG8gZW1pdCBhbiBldmVudCB3aGVuIHRoZSBjb25uZWN0aW9uIGlzIGVzdGFibGlzaGVkLlxyXG4gICAgICogRG8gbm90IGZvcmdldCB0byB1bnN1YnNjcmliZSB0aGUgb2JzZXJ2YWJsZSB3aGVuIHlvdSBkb24ndCBuZWVkIGl0IGFueW1vcmUuXHJcbiAgICAgKiBAcmV0dXJuIGBPYnNlcnZhYmxlPGJvb2xlYW4+YFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgb25Db25uZWN0KCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmNvbm5lY3RlZCQuYXNPYnNlcnZhYmxlKClcclxuICAgICAgICAgICAgLnBpcGUoZmlsdGVyKHAgPT4gcCA9PT0gdHJ1ZSkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRXZlbnQgcmVzcG9uc2FibGUgdG8gZW1pdCBhbiBldmVudCB3aGVuIHRoZSBjb25uZWN0aW9uIGlzIGNsb3NlZC5cclxuICAgICAqIERvIG5vdCBmb3JnZXQgdG8gdW5zdWJzY3JpYmUgdGhlIG9ic2VydmFibGUgd2hlbiB5b3UgZG9uJ3QgbmVlZCBpdCBhbnltb3JlLlxyXG4gICAgICogQHJldHVybiBgT2JzZXJ2YWJsZTx2b2lkPmBcclxuICAgICAqL1xyXG4gICAgcHVibGljIG9uRGlzY29ubmVjdCgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5kaXNjb25uZWN0ZWQkLmFzT2JzZXJ2YWJsZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRXZlbnQgcmVzcG9uc2FibGUgdG8gZW1pdCBhbiBldmVudCB3aGVuIHRoZSBjb25uZWN0aW9uIGlzIHJlZXN0YWJsaXNoZWQuXHJcbiAgICAgKiBEbyBub3QgZm9yZ2V0IHRvIHVuc3Vic2NyaWJlIHRoZSBvYnNlcnZhYmxlIHdoZW4geW91IGRvbid0IG5lZWQgaXQgYW55bW9yZS5cclxuICAgICAqIEByZXR1cm4gYE9ic2VydmFibGU8dm9pZD5gXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBvblJlY29ubmVjdCgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5yZWNvbm5lY3RlZCQuYXNPYnNlcnZhYmxlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFdmVudCByZXNwb25zYWJsZSB0byBlbWl0IGFuIGV2ZW50IHdoZW4gYW4gZXJyb3Igb2N1cnJlZC5cclxuICAgICAqIERvIG5vdCBmb3JnZXQgdG8gdW5zdWJzY3JpYmUgdGhlIG9ic2VydmFibGUgd2hlbiB5b3UgZG9uJ3QgbmVlZCBpdCBhbnltb3JlLlxyXG4gICAgICogQHJldHVybiBgT2JzZXJ2YWJsZTxGcmFtZUltcGw+YFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgb25FcnJvcigpOiBPYnNlcnZhYmxlPEZyYW1lSW1wbD4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmVycm9yJC5hc09ic2VydmFibGUoKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEV2ZW50IHJlc3BvbnNpYmxlIHRvIGVtaXQgYW4gZXZlbnQgd2hlbiBhIHByaW1pdGl2ZSBpcyBjYWxsZWQuXHJcbiAgICAgKiBEbyBub3QgZm9yZ2V0IHRvIHVuc3Vic2NyaWJlIHRoZSBvYnNlcnZhYmxlIHdoZW4geW91IGRvbid0IG5lZWQgaXQgYW55bW9yZS5cclxuICAgICAqIEB0eXBlUGFyYW0gYDxUPmAgT2JqZWN0IHR5cGUgdGhhdCB3aWxsIGJlIHVzZWQgaW4gdGhlIG9ic2VydmFibGUgZm9yIHRoZSBgZGF0YWAgcHJvcGVydHkuXHJcbiAgICAgKiBAcGFyYW0ge09uRXZlbnRPcHRpb25zfSBvcHRpb25zIENvbmZpZ3VyYXRpb25zIGZvciB0aGUgZXZlbnQuXHJcbiAgICAgKiBAcmV0dXJuIGBPYnNlcnZhYmxlPFByaW1pdGl2ZUV2ZW50PFQ+PmAgT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIGFuIGV2ZW50IHdoZW4gdGhlIHNlcnZpY2UgY2FsbHMgdGhlIHByaW1pdGl2ZS5cclxuICAgICAqL1xyXG4gICAgcHVibGljIG9uRXZlbnQ8VD4ob3B0aW9uczogT25FdmVudE9wdGlvbnMpOiBPYnNlcnZhYmxlPFByaW1pdGl2ZUV2ZW50PFQ+PiB7XHJcbiAgICAgICAgY29uc3QgeyBkb21haW4sIHNlcnZpY2UsIHByaW1pdGl2ZSB9ID0gb3B0aW9ucztcclxuICAgICAgICBjb25zdCBrZXkgPSB0aGlzLmJ1aWxkUHJpbWl0aXZlTWFuYWdlcktleShkb21haW4sIHNlcnZpY2UsIHByaW1pdGl2ZSk7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLnByaW1pdGl2ZU1hbmFnZXJzLmhhcyhrZXkpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnByaW1pdGl2ZU1hbmFnZXJzLmdldChrZXkpLmdldEV2ZW50T2JzZXJ2YWJsZSgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgcHJpbWl0aXZlTWFuYWdlciA9IG5ldyBQcmltaXRpdmVNYW5hZ2VyPFQ+KGRvbWFpbiwgc2VydmljZSwgcHJpbWl0aXZlKTtcclxuICAgICAgICB0aGlzLnByaW1pdGl2ZU1hbmFnZXJzLnNldChrZXksIHByaW1pdGl2ZU1hbmFnZXIpO1xyXG5cclxuICAgICAgICB0aGlzLmNvbm5lY3QoKS50aGVuKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5vbkNvbm5lY3QoKVxyXG4gICAgICAgICAgICAgICAgLnBpcGUodGFrZSgxKSlcclxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlU3RvbXBTdWJzY3JpcHRpb25zKHByaW1pdGl2ZU1hbmFnZXIpO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHJldHVybiBwcmltaXRpdmVNYW5hZ2VyXHJcbiAgICAgICAgICAgIC5nZXRFdmVudE9ic2VydmFibGUoKVxyXG4gICAgICAgICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiB0aGlzLnVuc3Vic2NyaWJlUHJpbWl0aXZlT25GaW5hbGl6ZShwcmltaXRpdmVNYW5hZ2VyKSkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRXZlbnQgcmVzcG9uc2libGUgdG8gZW1pdCBhbiBldmVudCB3aGVuIGEgc3Vic2NyaXB0aW9uIGlzIGNyZWF0ZWQgZm9yIHRoZSBwcmltaXRpdmUuXHJcbiAgICAgKiBEbyBub3QgZm9yZ2V0IHRvIHVuc3Vic2NyaWJlIHRoZSBvYnNlcnZhYmxlIHdoZW4geW91IGRvbid0IG5lZWQgaXQgYW55bW9yZS5cclxuICAgICAqIEBwYXJhbSB7T25FdmVudE9wdGlvbnN9IG9wdGlvbnMgQ29uZmlndXJhdGlvbnMgZm9yIHRoZSBldmVudC5cclxuICAgICAqIE9ic2VydmFibGUgcmVzcG9uc8OhdmVsIHBvciBlbWl0aXIgdW1hIG5vdGlmaWNhw6fDo28gYXDDs3MgbyBzdWJzY3JpYmUgZG8gZXZlbnRvIHBlbGEgcHJpbWVpcmEgdmV6LlxyXG4gICAgICogQHJldHVybiBgT2JzZXJ2YWJsZTxib29sZWFuPmAgT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIGFuIGV2ZW50IHdoZW4gdGhlIHNlcnZpY2UgY2FsbHMgdGhlIHByaW1pdGl2ZS5cclxuICAgICAqL1xyXG4gICAgcHVibGljIG9uU3Vic2NyaWJlKG9wdGlvbnM6IE9uRXZlbnRPcHRpb25zKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICAgICAgY29uc3QgeyBkb21haW4sIHNlcnZpY2UsIHByaW1pdGl2ZSB9ID0gb3B0aW9ucztcclxuICAgICAgICBjb25zdCBrZXkgPSB0aGlzLmJ1aWxkUHJpbWl0aXZlTWFuYWdlcktleShkb21haW4sIHNlcnZpY2UsIHByaW1pdGl2ZSk7XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLm9uQ29ubmVjdCgpLnBpcGUoXHJcbiAgICAgICAgICAgIHRha2UoMSksXHJcbiAgICAgICAgICAgIHN3aXRjaE1hcCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5wcmltaXRpdmVNYW5hZ2Vycy5oYXMoa2V5KSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnByaW1pdGl2ZU1hbmFnZXJzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5nZXQoa2V5KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuZ2V0U3Vic2NyaXB0aW9uT2JzZXJ2YWJsZSgpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5waXBlKHRha2UoMSkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnN1YnNjcmliZWQkLmFzT2JzZXJ2YWJsZSgpLnBpcGUoXHJcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyKChwcmltaXRpdmVNYW5hZ2VyKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmJ1aWxkUHJpbWl0aXZlTWFuYWdlcktleShcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW1pdGl2ZU1hbmFnZXIuZG9tYWluLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpbWl0aXZlTWFuYWdlci5zZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpbWl0aXZlTWFuYWdlci5wcmltaXRpdmVcclxuICAgICAgICAgICAgICAgICAgICAgICAgKSA9PT0ga2V5O1xyXG4gICAgICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgICAgIG1hcCgoKSA9PiB0cnVlKSxcclxuICAgICAgICAgICAgICAgICAgICB0YWtlKDEpXHJcbiAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBkZWJ1ZyhtZXNzYWdlOiBzdHJpbmcsIC4uLm9wdGlvbmFsUGFyYW1zOiBhbnlbXSkge1xyXG4gICAgICAgIGlmICghdGhpcy5kZWJ1Z0VuYWJsZSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnNvbGUubG9nKCdXUyBkZWJ1ZzogJyArIG1lc3NhZ2UsIC4uLm9wdGlvbmFsUGFyYW1zKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGluZm8obWVzc2FnZTogc3RyaW5nKSB7XHJcbiAgICAgICAgY29uc29sZS5pbmZvKCdXUyBpbmZvOiAnICsgbWVzc2FnZSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBoYW5kbGVPbkNvbm5lY3RlZCgpIHtcclxuICAgICAgICB0aGlzLmluZm8oJ1dlYnNjb2tldCBjb25uZWN0ZWQnKTtcclxuXHJcbiAgICAgICAgdGhpcy5jb25uZWN0ZWQkLm5leHQodHJ1ZSk7XHJcbiAgICAgICAgaWYgKHRoaXMubG9zdENvbm5lY3Rpb24pIHtcclxuICAgICAgICAgICAgdGhpcy5pbmZvKCdXZWJzY29rZXQgcmVjb25uZWN0ZWQsIHJlY3JpYXRpbmcgc3Vic2NyaXB0aW9ucycpO1xyXG4gICAgICAgICAgICB0aGlzLmhhbmRsZVJlY29ubmVjdGlvbigpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGhhbmRsZU9uRGlzY29ubmVjdCgpIHtcclxuICAgICAgICB0aGlzLmluZm8oJ1dlYnNjb2tldCBkaXNjb25uZWN0ZWQnKTtcclxuXHJcbiAgICAgICAgdGhpcy5jb25uZWN0ZWQkLm5leHQoZmFsc2UpO1xyXG4gICAgICAgIHRoaXMuZGlzY29ubmVjdGVkJC5uZXh0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBoYW5kbGVPbldlYlNvY2tldENsb3NlKGRhdGE6IENsb3NlRXZlbnQpIHtcclxuICAgICAgICBpZiAoZGF0YT8ucmVhc29uPy50b0xvd2VyQ2FzZSgpLmluZGV4T2YoXCJnbyBhd2F5XCIpICE9PSAtMSkge1xyXG4gICAgICAgICAgICB0aGlzLmxvc3RDb25uZWN0aW9uID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5oYW5kbGVFcnJvcignQXV0aGVudGljYXRpb25FcnJvcicsIG5ldyBGcmFtZUltcGwoXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29tbWFuZDogZGF0YS50eXBlLFxyXG4gICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZTogZGF0YS5yZWFzb25cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICkpO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoZGF0YT8ucmVhc29uPy50b0xvd2VyQ2FzZSgpLmluZGV4T2YoXCJjYW5ub3QgY29ubmVjdCB0byBzZXJ2ZXJcIikgIT09IC0xKSB7XHJcbiAgICAgICAgICAgIHRoaXMubG9zdENvbm5lY3Rpb24gPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmhhbmRsZUVycm9yKCdDb25uZWN0aW9uRXJyb3InLCBuZXcgRnJhbWVJbXBsKFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbW1hbmQ6IGRhdGEudHlwZSxcclxuICAgICAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6IGRhdGEucmVhc29uXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKGRhdGEud2FzQ2xlYW4pIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5sb3N0Q29ubmVjdGlvbiA9IHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBoYW5kbGVPblN0b21wRXJyb3IoZGF0YTogRnJhbWVJbXBsKSB7XHJcbiAgICAgICAgdGhpcy5oYW5kbGVFcnJvcignU3RvbXBFcnJvcicsIGRhdGEpO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5pc0F1dGhlbnRpY2F0aW9uRXJyb3IoZGF0YSkpIHtcclxuICAgICAgICAgICAgdGhpcy5pbmZvKCdBdXRoZW50aWNhdGlvbiBlcnJvciwgcmVjcmlhdGluZyBzdWJzY3JpcHRpb25zJyk7XHJcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlUmVjb25uZWN0aW9uKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaXNBdXRoZW50aWNhdGlvbkVycm9yKGRhdGE6IEZyYW1lSW1wbCkge1xyXG4gICAgICAgIGNvbnN0IGVycm9yTWVzc2FnZSA9IGRhdGE/LmhlYWRlcnM/Lm1lc3NhZ2U7XHJcbiAgICAgICAgaWYgKCFlcnJvck1lc3NhZ2UpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGVycm9yTWVzc2FnZS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoJ2ZvcmJpZGRlbmV4Y2VwdGlvbicpICE9PSAtMTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGhhbmRsZU9uV2ViU29ja2V0RXJyb3IoZGF0YTogYW55KSB7XHJcbiAgICAgICAgdGhpcy5oYW5kbGVFcnJvcignV2ViU29ja2V0RXJyb3InLCBkYXRhKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGhhbmRsZUVycm9yKG9yaWdpbjogc3RyaW5nLCBkYXRhOiBGcmFtZUltcGwpIHtcclxuICAgICAgICBjb25zb2xlLmVycm9yKG9yaWdpbiwgZGF0YSk7XHJcbiAgICAgICAgdGhpcy5lcnJvciQubmV4dChkYXRhKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGhhbmRsZVJlY29ubmVjdGlvbigpIHtcclxuICAgICAgICB0aGlzLmxvc3RDb25uZWN0aW9uID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5yZWNvbm5lY3RQcmltaXRpdmVzKCk7XHJcbiAgICAgICAgdGhpcy5yZWNvbm5lY3RlZCQubmV4dCgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgcmVjb25uZWN0UHJpbWl0aXZlcygpOiB2b2lkIHtcclxuICAgICAgICBmb3IgKGNvbnN0IHByaW1pdGl2ZU1hbmFnZXIgb2YgdGhpcy5wcmltaXRpdmVNYW5hZ2Vycy52YWx1ZXMoKSkge1xyXG4gICAgICAgICAgICB0aGlzLmNyZWF0ZVN0b21wU3Vic2NyaXB0aW9ucyhwcmltaXRpdmVNYW5hZ2VyKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBidWlsZFN1YnNjcmlwdGlvblVybFdpdGhUb2tlbihkb21haW46IHN0cmluZywgc2VydmljZTogc3RyaW5nLCBwcmltaXRpdmU6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgY29uc3QgYXV0aFRva2VuID0gdGhpcy51c2VySW5mb3JtYXRpb25TZXJ2aWNlLmdldEF1dGhUb2tlbigpO1xyXG4gICAgICAgIGNvbnN0IHRlbmFudCA9IHRoaXMudXNlckluZm9ybWF0aW9uU2VydmljZS5nZXRUZW5hbnREb21haW4oKTtcclxuICAgICAgICByZXR1cm4gYC90b3BpYy8ke3RlbmFudH0vJHthdXRoVG9rZW59LyR7ZG9tYWlufS8ke3NlcnZpY2V9LyR7cHJpbWl0aXZlfWA7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBnZXRTdWJzY3JpcHRpb25VcmxXaXRob3V0VG9rZW4oZG9tYWluOiBzdHJpbmcsIHNlcnZpY2U6IHN0cmluZywgcHJpbWl0aXZlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIGNvbnN0IHRlbmFudCA9IHRoaXMudXNlckluZm9ybWF0aW9uU2VydmljZS5nZXRUZW5hbnREb21haW4oKTtcclxuICAgICAgICByZXR1cm4gYC90b3BpYy8ke3RlbmFudH0vJHtkb21haW59LyR7c2VydmljZX0vJHtwcmltaXRpdmV9YDtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGJ1aWxkUHJpbWl0aXZlTWFuYWdlcktleShkb21haW46IHN0cmluZywgc2VydmljZTogc3RyaW5nLCBwcmltaXRpdmU6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIGAke2RvbWFpbn0vJHtzZXJ2aWNlfS8ke3ByaW1pdGl2ZX1gO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgYXN5bmMgdW5zdWJzY3JpYmVQcmltaXRpdmVPbkZpbmFsaXplKHByaW1pdGl2ZU1hbmFnZXI6IFByaW1pdGl2ZU1hbmFnZXI8YW55Pikge1xyXG4gICAgICAgIGlmIChwcmltaXRpdmVNYW5hZ2VyLmhhc09ic2VydmVycygpKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHByaW1pdGl2ZU1hbmFnZXIudW5zdWJzY3JpYmUoKTtcclxuXHJcbiAgICAgICAgY29uc3Qga2V5ID0gdGhpcy5idWlsZFByaW1pdGl2ZU1hbmFnZXJLZXkocHJpbWl0aXZlTWFuYWdlci5kb21haW4sIHByaW1pdGl2ZU1hbmFnZXIuc2VydmljZSwgcHJpbWl0aXZlTWFuYWdlci5wcmltaXRpdmUpO1xyXG4gICAgICAgIHRoaXMucHJpbWl0aXZlTWFuYWdlcnMuZGVsZXRlKGtleSk7XHJcblxyXG4gICAgICAgIGF3YWl0IHRoaXMuZGlzY29ubmVjdElmTm9Nb3JlT2JzZXJ2YWJsZXMoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGFzeW5jIGRpc2Nvbm5lY3RJZk5vTW9yZU9ic2VydmFibGVzKCkge1xyXG4gICAgICAgIGlmICh0aGlzLmdldE9ic2VydmVyc0NvdW50KCkgPT09IDApIHtcclxuICAgICAgICAgICAgdGhpcy5kZWJ1ZygnTWFudWFsbHkgZGlzY29ubmVjdGluZyBiZWNhdXNlIHRoZXJlIGFyZSBubyBtb3JlIG9ic2VydmVycycpO1xyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLmRpc2Nvbm5lY3QoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBnZXRPYnNlcnZlcnNDb3VudCgpOiBudW1iZXIge1xyXG4gICAgICAgIGxldCBvYnNlcnZlcnNDb3VudCA9IDA7XHJcblxyXG4gICAgICAgIHRoaXMucHJpbWl0aXZlTWFuYWdlcnMuZm9yRWFjaChwcmltaXRpdmVNYW5hZ2VyID0+IHtcclxuICAgICAgICAgICAgb2JzZXJ2ZXJzQ291bnQgKz0gcHJpbWl0aXZlTWFuYWdlci5nZXRPYnNlcnZlcnNDb3VudCgpO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICByZXR1cm4gb2JzZXJ2ZXJzQ291bnQ7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjcmVhdGVTdG9tcFN1YnNjcmlwdGlvbjxUPihkZXN0aW5hdGlvbjogc3RyaW5nLCBwcmltaXRpdmVNYW5hZ2VyOiBQcmltaXRpdmVNYW5hZ2VyPFQ+KTogU3RvbXBTdWJzY3JpcHRpb24ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnN0b21wQ2xpZW50LnN1YnNjcmliZShkZXN0aW5hdGlvbiwgKG1lc3NhZ2U6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBldmVudCA9IEpTT04ucGFyc2UobWVzc2FnZS5ib2R5IHx8ICd7fScpO1xyXG4gICAgICAgICAgICBwcmltaXRpdmVNYW5hZ2VyLmZpcmVFdmVudChldmVudCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjcmVhdGVTdG9tcFN1YnNjcmlwdGlvbnM8VD4ocHJpbWl0aXZlTWFuYWdlcjogUHJpbWl0aXZlTWFuYWdlcjxUPik6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHN1YnNjcmlwdGlvblVybFdpdGhUb2tlbiA9IHRoaXMuYnVpbGRTdWJzY3JpcHRpb25VcmxXaXRoVG9rZW4oXHJcbiAgICAgICAgICAgIHByaW1pdGl2ZU1hbmFnZXIuZG9tYWluLFxyXG4gICAgICAgICAgICBwcmltaXRpdmVNYW5hZ2VyLnNlcnZpY2UsXHJcbiAgICAgICAgICAgIHByaW1pdGl2ZU1hbmFnZXIucHJpbWl0aXZlXHJcbiAgICAgICAgKTtcclxuICAgICAgICBjb25zdCBzdWJzY3JpcHRpb25VcmxXaXRob3V0VG9rZW4gPSB0aGlzLmdldFN1YnNjcmlwdGlvblVybFdpdGhvdXRUb2tlbihcclxuICAgICAgICAgICAgcHJpbWl0aXZlTWFuYWdlci5kb21haW4sXHJcbiAgICAgICAgICAgIHByaW1pdGl2ZU1hbmFnZXIuc2VydmljZSxcclxuICAgICAgICAgICAgcHJpbWl0aXZlTWFuYWdlci5wcmltaXRpdmVcclxuICAgICAgICApO1xyXG5cclxuICAgICAgICBjb25zdCBzdG9tcFN1YnNjcmlwdGlvbldpdGhUb2tlbiA9IHRoaXMuY3JlYXRlU3RvbXBTdWJzY3JpcHRpb24oc3Vic2NyaXB0aW9uVXJsV2l0aFRva2VuLCBwcmltaXRpdmVNYW5hZ2VyKTtcclxuICAgICAgICBjb25zdCBzdG9tcFN1YnNjcmlwdGlvbldpdGhvdXRUb2tlbiA9IHRoaXMuY3JlYXRlU3RvbXBTdWJzY3JpcHRpb24oc3Vic2NyaXB0aW9uVXJsV2l0aG91dFRva2VuLCBwcmltaXRpdmVNYW5hZ2VyKTtcclxuICAgICAgICBwcmltaXRpdmVNYW5hZ2VyLnN1YnNjcmliZShzdG9tcFN1YnNjcmlwdGlvbldpdGhUb2tlbiwgc3RvbXBTdWJzY3JpcHRpb25XaXRob3V0VG9rZW4pO1xyXG4gICAgICAgIHRoaXMuc3Vic2NyaWJlZCQubmV4dChwcmltaXRpdmVNYW5hZ2VyKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdldFN1YnNjcmlwdGlvblVybCgpIHtcclxuICAgICAgICByZXR1cm4gYCR7dGhpcy51c2VySW5mb3JtYXRpb25TZXJ2aWNlLmdldFdlYlNvY2tldFVybCgpfS9zdWJzY3JpcHRpb25gO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
338
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic29ja2V0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbInNlcnZpY2VzL3dlYnNvY2tldC93ZWJzb2NrZXQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFrQyxNQUFNLGdCQUFnQixDQUFDO0FBQ25GLE9BQU8sRUFBRSxlQUFlLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFDNUQsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDekMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRzVDLE1BQU0sK0JBQStCLEdBQUcsSUFBSSxDQUFDO0FBQzdDLE1BQU0sK0JBQStCLEdBQUcsSUFBSSxDQUFDO0FBSzdDLElBQWEsZ0JBQWdCLEdBQTdCLE1BQWEsZ0JBQWdCO0lBY3pCLFlBQTZCLHNCQUE4QztRQUE5QywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBYjFELGVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNqRCxrQkFBYSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFDcEMsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBQ25DLFdBQU0sR0FBRyxJQUFJLE9BQU8sRUFBYSxDQUFDO1FBQ2xD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SSxDQUFDLHVCQUF1QixDQUFDLDJCQUEyQixFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFDbEgsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLDBCQUEwQixFQUFFLDZCQUE2QixDQUFDLENBQUM7UUFDdEYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRU8sa0JBQWtCO1FBQ3RCLE9BQU8sR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsZUFBZSxFQUFFLGVBQWUsQ0FBQztJQUMzRSxDQUFDO0NBQ0osQ0FBQTs7WUF4WHdELHNCQUFzQjs7O0FBZGxFLGdCQUFnQjtJQUg1QixVQUFVLENBQUM7UUFDUixVQUFVLEVBQUUsTUFBTTtLQUNyQixDQUFDO0dBQ1csZ0JBQWdCLENBc1k1QjtTQXRZWSxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGZpbHRlciwgZmluYWxpemUsIG1hcCwgc3dpdGNoTWFwLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBDbGllbnQsIEZyYW1lSW1wbCwgU3RvbXBDb25maWcsIFN0b21wU3Vic2NyaXB0aW9uIH0gZnJvbSAnQHN0b21wL3N0b21wanMnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuY29uc3QgU29ja0pTID0gcmVxdWlyZSgnc29ja2pzLWNsaWVudCcpO1xyXG5pbXBvcnQgeyBBc3luY0xvY2sgfSBmcm9tICcuL2FzeW5jLWxvY2snO1xyXG5pbXBvcnQgeyBVc2VySW5mb3JtYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi91c2VyLWluZm9ybWF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQcmltaXRpdmVNYW5hZ2VyIH0gZnJvbSAnLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBPbkV2ZW50T3B0aW9ucywgUHJpbWl0aXZlRXZlbnQgfSBmcm9tICcuL3Byb3RvY29scyc7XHJcblxyXG5jb25zdCBSRUNPTk5FQ1RfSU5URVJWQUxfTUlMTElTRUNPTkRTID0gMzAwMDtcclxuY29uc3QgQ09OTkVDVElPTl9USU1FT1VUX01JTExJU0VDT05EUyA9IDUwMDA7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFdlYnNvY2tldFNlcnZpY2Uge1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25uZWN0ZWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRpc2Nvbm5lY3RlZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSByZWNvbm5lY3RlZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBlcnJvciQgPSBuZXcgU3ViamVjdDxGcmFtZUltcGw+KCk7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN1YnNjcmliZWQkID0gbmV3IFN1YmplY3Q8UHJpbWl0aXZlTWFuYWdlcjxhbnk+PigpO1xyXG5cclxuICAgIHByaXZhdGUgcmVhZG9ubHkgcHJpbWl0aXZlTWFuYWdlcnM6IE1hcDxzdHJpbmcsIFByaW1pdGl2ZU1hbmFnZXI8YW55Pj4gPSBuZXcgTWFwPHN0cmluZywgUHJpbWl0aXZlTWFuYWdlcjxhbnk+PigpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25uZWN0aW9uTG9jayA9IG5ldyBBc3luY0xvY2soKTtcclxuXHJcbiAgICBwcml2YXRlIHN0b21wQ2xpZW50OiBDbGllbnQ7XHJcbiAgICBwcml2YXRlIGRlYnVnRW5hYmxlID0gZmFsc2U7XHJcbiAgICBwcml2YXRlIGxvc3RDb25uZWN0aW9uID0gZmFsc2U7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSB1c2VySW5mb3JtYXRpb25TZXJ2aWNlOiBVc2VySW5mb3JtYXRpb25TZXJ2aWNlKSB7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFbmFibGVzIHN0b21wanMgZGVidWcgbG9ncyBhbmQgYWRkaXRpb25hbCBpbmZvXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBlbmFibGVEZWJ1Z0xvZ3MoKSB7XHJcbiAgICAgICAgdGhpcy5kZWJ1Z0VuYWJsZSA9IHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBNYW51YWxseSBzdGFydHMgdGhlIGNvbm5lY3Rpb25cclxuICAgICAqL1xyXG4gICAgcHVibGljIGFzeW5jIGNvbm5lY3QoKSB7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5jb25uZWN0aW9uTG9jay5hY3F1aXJlKCk7XHJcblxyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmlzQ29ubmVjdGVkKCkgfHwgdGhpcy5pc0Nvbm5lY3RpbmcoKSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMubG9zdENvbm5lY3Rpb24gPSBmYWxzZTtcclxuXHJcbiAgICAgICAgICAgIGNvbnN0IHN0b21wQ29uZmlnOiBTdG9tcENvbmZpZyA9IHtcclxuICAgICAgICAgICAgICAgIHdlYlNvY2tldEZhY3Rvcnk6ICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3IFNvY2tKUyhcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXRTdWJzY3JpcHRpb25VcmwoKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCxcclxuICAgICAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZW91dDogQ09OTkVDVElPTl9USU1FT1VUX01JTExJU0VDT05EU1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICByZWNvbm5lY3REZWxheTogUkVDT05ORUNUX0lOVEVSVkFMX01JTExJU0VDT05EUyxcclxuICAgICAgICAgICAgICAgIGRlYnVnOiB0aGlzLmRlYnVnLmJpbmQodGhpcyksXHJcbiAgICAgICAgICAgICAgICBvbkNvbm5lY3Q6IHRoaXMuaGFuZGxlT25Db25uZWN0ZWQuYmluZCh0aGlzKSxcclxuICAgICAgICAgICAgICAgIG9uRGlzY29ubmVjdDogdGhpcy5oYW5kbGVPbkRpc2Nvbm5lY3QuYmluZCh0aGlzKSxcclxuICAgICAgICAgICAgICAgIG9uV2ViU29ja2V0Q2xvc2U6IHRoaXMuaGFuZGxlT25XZWJTb2NrZXRDbG9zZS5iaW5kKHRoaXMpLFxyXG4gICAgICAgICAgICAgICAgb25TdG9tcEVycm9yOiB0aGlzLmhhbmRsZU9uU3RvbXBFcnJvci5iaW5kKHRoaXMpLFxyXG4gICAgICAgICAgICAgICAgb25XZWJTb2NrZXRFcnJvcjogdGhpcy5oYW5kbGVPbldlYlNvY2tldEVycm9yLmJpbmQodGhpcylcclxuICAgICAgICAgICAgfTtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuZGVidWcoJ0Nvbm5lY3RpbmcgdGhlIFdlYnNjb2tldCcpO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5zdG9tcENsaWVudCA9IG5ldyBDbGllbnQoc3RvbXBDb25maWcpO1xyXG4gICAgICAgICAgICB0aGlzLnN0b21wQ2xpZW50LmFjdGl2YXRlKCk7XHJcbiAgICAgICAgfSBmaW5hbGx5IHtcclxuICAgICAgICAgICAgYXdhaXQgdGhpcy5jb25uZWN0aW9uTG9jay5yZWxlYXNlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogTWFudWFsbHkgZGlzY29ubmVjdCB0aGUgd2Vic29ja2V0LiBUaGUgcmVjb25uZWN0IGxvb3Agd2lsbCBiZSBzdG9wcGVkLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYXN5bmMgZGlzY29ubmVjdCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBpZiAoIXRoaXMuaXNDb25uZWN0ZWQoKSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhd2FpdCB0aGlzLmNvbm5lY3Rpb25Mb2NrLmFjcXVpcmUoKTtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBmb3IgKGNvbnN0IHByaW1pdGl2ZU1hbmFnZXIgb2YgdGhpcy5wcmltaXRpdmVNYW5hZ2Vycy52YWx1ZXMoKSkge1xyXG4gICAgICAgICAgICAgICAgcHJpbWl0aXZlTWFuYWdlci51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0aGlzLnByaW1pdGl2ZU1hbmFnZXJzLmNsZWFyKCk7XHJcbiAgICAgICAgICAgIHRoaXMuY29ubmVjdGVkJC5uZXh0KGZhbHNlKTtcclxuXHJcbiAgICAgICAgICAgIGlmICh0aGlzLnN0b21wQ2xpZW50KSB7XHJcbiAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLnN0b21wQ2xpZW50LmRlYWN0aXZhdGUoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gZmluYWxseSB7XHJcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuY29ubmVjdGlvbkxvY2sucmVsZWFzZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENoZWNrIGlmIHRoZSB3ZWJzb2NrZXQgaXMgY29ubmVjdGVkXHJcbiAgICAgKiBAcmV0dXJuIGBib29sZWFuYCByZXByZXNlbnRpbmcgaWYgdGhlIHdlYnNvY2tldCBpcyBjb25uZWN0ZWRcclxuICAgICAqL1xyXG4gICAgcHVibGljIGlzQ29ubmVjdGVkKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmICghdGhpcy5zdG9tcENsaWVudCkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5zdG9tcENsaWVudC5jb25uZWN0ZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDaGVjayBpZiB0aGUgd2Vic29ja2V0IGlzIHRyaW5nIHRvIGNvbm5lY3RcclxuICAgICAqIEByZXR1cm4gYGJvb2xlYW5gIHJlcHJlc2VudGluZyBpZiB0aGUgd2Vic29ja2V0IHN0YXR1c1xyXG4gICAgICovXHJcbiAgICBwdWJsaWMgaXNDb25uZWN0aW5nKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmICghdGhpcy5zdG9tcENsaWVudCkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gIXRoaXMuc3RvbXBDbGllbnQuY29ubmVjdGVkICYmIHRoaXMuc3RvbXBDbGllbnQuYWN0aXZlO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRXZlbnQgcmVzcG9uc2FibGUgdG8gZW1pdCBhbiBldmVudCB3aGVuIHRoZSBjb25uZWN0aW9uIGlzIGVzdGFibGlzaGVkLlxyXG4gICAgICogRG8gbm90IGZvcmdldCB0byB1bnN1YnNjcmliZSB0aGUgb2JzZXJ2YWJsZSB3aGVuIHlvdSBkb24ndCBuZWVkIGl0IGFueW1vcmUuXHJcbiAgICAgKiBAcmV0dXJuIGBPYnNlcnZhYmxlPGJvb2xlYW4+YFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgb25Db25uZWN0KCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmNvbm5lY3RlZCQuYXNPYnNlcnZhYmxlKClcclxuICAgICAgICAgICAgLnBpcGUoZmlsdGVyKHAgPT4gcCA9PT0gdHJ1ZSkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRXZlbnQgcmVzcG9uc2FibGUgdG8gZW1pdCBhbiBldmVudCB3aGVuIHRoZSBjb25uZWN0aW9uIGlzIGNsb3NlZC5cclxuICAgICAqIERvIG5vdCBmb3JnZXQgdG8gdW5zdWJzY3JpYmUgdGhlIG9ic2VydmFibGUgd2hlbiB5b3UgZG9uJ3QgbmVlZCBpdCBhbnltb3JlLlxyXG4gICAgICogQHJldHVybiBgT2JzZXJ2YWJsZTx2b2lkPmBcclxuICAgICAqL1xyXG4gICAgcHVibGljIG9uRGlzY29ubmVjdCgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5kaXNjb25uZWN0ZWQkLmFzT2JzZXJ2YWJsZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRXZlbnQgcmVzcG9uc2FibGUgdG8gZW1pdCBhbiBldmVudCB3aGVuIHRoZSBjb25uZWN0aW9uIGlzIHJlZXN0YWJsaXNoZWQuXHJcbiAgICAgKiBEbyBub3QgZm9yZ2V0IHRvIHVuc3Vic2NyaWJlIHRoZSBvYnNlcnZhYmxlIHdoZW4geW91IGRvbid0IG5lZWQgaXQgYW55bW9yZS5cclxuICAgICAqIEByZXR1cm4gYE9ic2VydmFibGU8dm9pZD5gXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBvblJlY29ubmVjdCgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5yZWNvbm5lY3RlZCQuYXNPYnNlcnZhYmxlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFdmVudCByZXNwb25zYWJsZSB0byBlbWl0IGFuIGV2ZW50IHdoZW4gYW4gZXJyb3Igb2N1cnJlZC5cclxuICAgICAqIERvIG5vdCBmb3JnZXQgdG8gdW5zdWJzY3JpYmUgdGhlIG9ic2VydmFibGUgd2hlbiB5b3UgZG9uJ3QgbmVlZCBpdCBhbnltb3JlLlxyXG4gICAgICogQHJldHVybiBgT2JzZXJ2YWJsZTxGcmFtZUltcGw+YFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgb25FcnJvcigpOiBPYnNlcnZhYmxlPEZyYW1lSW1wbD4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmVycm9yJC5hc09ic2VydmFibGUoKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEV2ZW50IHJlc3BvbnNpYmxlIHRvIGVtaXQgYW4gZXZlbnQgd2hlbiBhIHByaW1pdGl2ZSBpcyBjYWxsZWQuXHJcbiAgICAgKiBEbyBub3QgZm9yZ2V0IHRvIHVuc3Vic2NyaWJlIHRoZSBvYnNlcnZhYmxlIHdoZW4geW91IGRvbid0IG5lZWQgaXQgYW55bW9yZS5cclxuICAgICAqIEB0eXBlUGFyYW0gYDxUPmAgT2JqZWN0IHR5cGUgdGhhdCB3aWxsIGJlIHVzZWQgaW4gdGhlIG9ic2VydmFibGUgZm9yIHRoZSBgZGF0YWAgcHJvcGVydHkuXHJcbiAgICAgKiBAcGFyYW0ge09uRXZlbnRPcHRpb25zfSBvcHRpb25zIENvbmZpZ3VyYXRpb25zIGZvciB0aGUgZXZlbnQuXHJcbiAgICAgKiBAcmV0dXJuIGBPYnNlcnZhYmxlPFByaW1pdGl2ZUV2ZW50PFQ+PmAgT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIGFuIGV2ZW50IHdoZW4gdGhlIHNlcnZpY2UgY2FsbHMgdGhlIHByaW1pdGl2ZS5cclxuICAgICAqL1xyXG4gICAgcHVibGljIG9uRXZlbnQ8VD4ob3B0aW9uczogT25FdmVudE9wdGlvbnMpOiBPYnNlcnZhYmxlPFByaW1pdGl2ZUV2ZW50PFQ+PiB7XHJcbiAgICAgICAgY29uc3QgeyBkb21haW4sIHNlcnZpY2UsIHByaW1pdGl2ZSB9ID0gb3B0aW9ucztcclxuICAgICAgICBjb25zdCBrZXkgPSB0aGlzLmJ1aWxkUHJpbWl0aXZlTWFuYWdlcktleShkb21haW4sIHNlcnZpY2UsIHByaW1pdGl2ZSk7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLnByaW1pdGl2ZU1hbmFnZXJzLmhhcyhrZXkpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnByaW1pdGl2ZU1hbmFnZXJzLmdldChrZXkpLmdldEV2ZW50T2JzZXJ2YWJsZSgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgcHJpbWl0aXZlTWFuYWdlciA9IG5ldyBQcmltaXRpdmVNYW5hZ2VyPFQ+KGRvbWFpbiwgc2VydmljZSwgcHJpbWl0aXZlKTtcclxuICAgICAgICB0aGlzLnByaW1pdGl2ZU1hbmFnZXJzLnNldChrZXksIHByaW1pdGl2ZU1hbmFnZXIpO1xyXG5cclxuICAgICAgICB0aGlzLmNvbm5lY3QoKS50aGVuKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5vbkNvbm5lY3QoKVxyXG4gICAgICAgICAgICAgICAgLnBpcGUodGFrZSgxKSlcclxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlU3RvbXBTdWJzY3JpcHRpb25zKHByaW1pdGl2ZU1hbmFnZXIpO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHJldHVybiBwcmltaXRpdmVNYW5hZ2VyXHJcbiAgICAgICAgICAgIC5nZXRFdmVudE9ic2VydmFibGUoKVxyXG4gICAgICAgICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiB0aGlzLnVuc3Vic2NyaWJlUHJpbWl0aXZlT25GaW5hbGl6ZShwcmltaXRpdmVNYW5hZ2VyKSkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRXZlbnQgcmVzcG9uc2libGUgdG8gZW1pdCBhbiBldmVudCB3aGVuIGEgc3Vic2NyaXB0aW9uIGlzIGNyZWF0ZWQgZm9yIHRoZSBwcmltaXRpdmUuXHJcbiAgICAgKiBEbyBub3QgZm9yZ2V0IHRvIHVuc3Vic2NyaWJlIHRoZSBvYnNlcnZhYmxlIHdoZW4geW91IGRvbid0IG5lZWQgaXQgYW55bW9yZS5cclxuICAgICAqIEBwYXJhbSB7T25FdmVudE9wdGlvbnN9IG9wdGlvbnMgQ29uZmlndXJhdGlvbnMgZm9yIHRoZSBldmVudC5cclxuICAgICAqIE9ic2VydmFibGUgcmVzcG9uc8OhdmVsIHBvciBlbWl0aXIgdW1hIG5vdGlmaWNhw6fDo28gYXDDs3MgbyBzdWJzY3JpYmUgZG8gZXZlbnRvIHBlbGEgcHJpbWVpcmEgdmV6LlxyXG4gICAgICogQHJldHVybiBgT2JzZXJ2YWJsZTxib29sZWFuPmAgT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIGFuIGV2ZW50IHdoZW4gdGhlIHNlcnZpY2UgY2FsbHMgdGhlIHByaW1pdGl2ZS5cclxuICAgICAqL1xyXG4gICAgcHVibGljIG9uU3Vic2NyaWJlKG9wdGlvbnM6IE9uRXZlbnRPcHRpb25zKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICAgICAgY29uc3QgeyBkb21haW4sIHNlcnZpY2UsIHByaW1pdGl2ZSB9ID0gb3B0aW9ucztcclxuICAgICAgICBjb25zdCBrZXkgPSB0aGlzLmJ1aWxkUHJpbWl0aXZlTWFuYWdlcktleShkb21haW4sIHNlcnZpY2UsIHByaW1pdGl2ZSk7XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLm9uQ29ubmVjdCgpLnBpcGUoXHJcbiAgICAgICAgICAgIHRha2UoMSksXHJcbiAgICAgICAgICAgIHN3aXRjaE1hcCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5wcmltaXRpdmVNYW5hZ2Vycy5oYXMoa2V5KSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnByaW1pdGl2ZU1hbmFnZXJzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5nZXQoa2V5KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuZ2V0U3Vic2NyaXB0aW9uT2JzZXJ2YWJsZSgpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5waXBlKHRha2UoMSkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnN1YnNjcmliZWQkLmFzT2JzZXJ2YWJsZSgpLnBpcGUoXHJcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyKChwcmltaXRpdmVNYW5hZ2VyKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmJ1aWxkUHJpbWl0aXZlTWFuYWdlcktleShcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW1pdGl2ZU1hbmFnZXIuZG9tYWluLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpbWl0aXZlTWFuYWdlci5zZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpbWl0aXZlTWFuYWdlci5wcmltaXRpdmVcclxuICAgICAgICAgICAgICAgICAgICAgICAgKSA9PT0ga2V5O1xyXG4gICAgICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgICAgIG1hcCgoKSA9PiB0cnVlKSxcclxuICAgICAgICAgICAgICAgICAgICB0YWtlKDEpXHJcbiAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBkZWJ1ZyhtZXNzYWdlOiBzdHJpbmcsIC4uLm9wdGlvbmFsUGFyYW1zOiBhbnlbXSkge1xyXG4gICAgICAgIGlmICghdGhpcy5kZWJ1Z0VuYWJsZSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaW5mbyhtZXNzYWdlOiBzdHJpbmcpIHtcclxuICAgICAgICBjb25zb2xlLmluZm8oJ1dTIGluZm86ICcgKyBtZXNzYWdlKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGhhbmRsZU9uQ29ubmVjdGVkKCkge1xyXG4gICAgICAgIHRoaXMuaW5mbygnV2Vic2Nva2V0IGNvbm5lY3RlZCcpO1xyXG5cclxuICAgICAgICB0aGlzLmNvbm5lY3RlZCQubmV4dCh0cnVlKTtcclxuICAgICAgICBpZiAodGhpcy5sb3N0Q29ubmVjdGlvbikge1xyXG4gICAgICAgICAgICB0aGlzLmluZm8oJ1dlYnNjb2tldCByZWNvbm5lY3RlZCwgcmVjcmlhdGluZyBzdWJzY3JpcHRpb25zJyk7XHJcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlUmVjb25uZWN0aW9uKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaGFuZGxlT25EaXNjb25uZWN0KCkge1xyXG4gICAgICAgIHRoaXMuaW5mbygnV2Vic2Nva2V0IGRpc2Nvbm5lY3RlZCcpO1xyXG5cclxuICAgICAgICB0aGlzLmNvbm5lY3RlZCQubmV4dChmYWxzZSk7XHJcbiAgICAgICAgdGhpcy5kaXNjb25uZWN0ZWQkLm5leHQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGhhbmRsZU9uV2ViU29ja2V0Q2xvc2UoZGF0YTogQ2xvc2VFdmVudCkge1xyXG4gICAgICAgIGlmIChkYXRhPy5yZWFzb24/LnRvTG93ZXJDYXNlKCkuaW5kZXhPZihcImdvIGF3YXlcIikgIT09IC0xKSB7XHJcbiAgICAgICAgICAgIHRoaXMubG9zdENvbm5lY3Rpb24gPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmhhbmRsZUVycm9yKCdBdXRoZW50aWNhdGlvbkVycm9yJywgbmV3IEZyYW1lSW1wbChcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBjb21tYW5kOiBkYXRhLnR5cGUsXHJcbiAgICAgICAgICAgICAgICAgICAgaGVhZGVyczoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlOiBkYXRhLnJlYXNvblxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKSk7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChkYXRhPy5yZWFzb24/LnRvTG93ZXJDYXNlKCkuaW5kZXhPZihcImNhbm5vdCBjb25uZWN0IHRvIHNlcnZlclwiKSAhPT0gLTEpIHtcclxuICAgICAgICAgICAgdGhpcy5sb3N0Q29ubmVjdGlvbiA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlRXJyb3IoJ0Nvbm5lY3Rpb25FcnJvcicsIG5ldyBGcmFtZUltcGwoXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29tbWFuZDogZGF0YS50eXBlLFxyXG4gICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZTogZGF0YS5yZWFzb25cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICkpO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoZGF0YS53YXNDbGVhbikge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmxvc3RDb25uZWN0aW9uID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGhhbmRsZU9uU3RvbXBFcnJvcihkYXRhOiBGcmFtZUltcGwpIHtcclxuICAgICAgICB0aGlzLmhhbmRsZUVycm9yKCdTdG9tcEVycm9yJywgZGF0YSk7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmlzQXV0aGVudGljYXRpb25FcnJvcihkYXRhKSkge1xyXG4gICAgICAgICAgICB0aGlzLmluZm8oJ0F1dGhlbnRpY2F0aW9uIGVycm9yLCByZWNyaWF0aW5nIHN1YnNjcmlwdGlvbnMnKTtcclxuICAgICAgICAgICAgdGhpcy5oYW5kbGVSZWNvbm5lY3Rpb24oKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBpc0F1dGhlbnRpY2F0aW9uRXJyb3IoZGF0YTogRnJhbWVJbXBsKSB7XHJcbiAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gZGF0YT8uaGVhZGVycz8ubWVzc2FnZTtcclxuICAgICAgICBpZiAoIWVycm9yTWVzc2FnZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gZXJyb3JNZXNzYWdlLnRvTG93ZXJDYXNlKCkuaW5kZXhPZignZm9yYmlkZGVuZXhjZXB0aW9uJykgIT09IC0xO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaGFuZGxlT25XZWJTb2NrZXRFcnJvcihkYXRhOiBhbnkpIHtcclxuICAgICAgICB0aGlzLmhhbmRsZUVycm9yKCdXZWJTb2NrZXRFcnJvcicsIGRhdGEpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaGFuZGxlRXJyb3Iob3JpZ2luOiBzdHJpbmcsIGRhdGE6IEZyYW1lSW1wbCkge1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3Iob3JpZ2luLCBkYXRhKTtcclxuICAgICAgICB0aGlzLmVycm9yJC5uZXh0KGRhdGEpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaGFuZGxlUmVjb25uZWN0aW9uKCkge1xyXG4gICAgICAgIHRoaXMubG9zdENvbm5lY3Rpb24gPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnJlY29ubmVjdFByaW1pdGl2ZXMoKTtcclxuICAgICAgICB0aGlzLnJlY29ubmVjdGVkJC5uZXh0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSByZWNvbm5lY3RQcmltaXRpdmVzKCk6IHZvaWQge1xyXG4gICAgICAgIGZvciAoY29uc3QgcHJpbWl0aXZlTWFuYWdlciBvZiB0aGlzLnByaW1pdGl2ZU1hbmFnZXJzLnZhbHVlcygpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlU3RvbXBTdWJzY3JpcHRpb25zKHByaW1pdGl2ZU1hbmFnZXIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGJ1aWxkU3Vic2NyaXB0aW9uVXJsV2l0aFRva2VuKGRvbWFpbjogc3RyaW5nLCBzZXJ2aWNlOiBzdHJpbmcsIHByaW1pdGl2ZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICBjb25zdCBhdXRoVG9rZW4gPSB0aGlzLnVzZXJJbmZvcm1hdGlvblNlcnZpY2UuZ2V0QXV0aFRva2VuKCk7XHJcbiAgICAgICAgY29uc3QgdGVuYW50ID0gdGhpcy51c2VySW5mb3JtYXRpb25TZXJ2aWNlLmdldFRlbmFudERvbWFpbigpO1xyXG4gICAgICAgIHJldHVybiBgL3RvcGljLyR7dGVuYW50fS8ke2F1dGhUb2tlbn0vJHtkb21haW59LyR7c2VydmljZX0vJHtwcmltaXRpdmV9YDtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdldFN1YnNjcmlwdGlvblVybFdpdGhvdXRUb2tlbihkb21haW46IHN0cmluZywgc2VydmljZTogc3RyaW5nLCBwcmltaXRpdmU6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgY29uc3QgdGVuYW50ID0gdGhpcy51c2VySW5mb3JtYXRpb25TZXJ2aWNlLmdldFRlbmFudERvbWFpbigpO1xyXG4gICAgICAgIHJldHVybiBgL3RvcGljLyR7dGVuYW50fS8ke2RvbWFpbn0vJHtzZXJ2aWNlfS8ke3ByaW1pdGl2ZX1gO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgYnVpbGRQcmltaXRpdmVNYW5hZ2VyS2V5KGRvbWFpbjogc3RyaW5nLCBzZXJ2aWNlOiBzdHJpbmcsIHByaW1pdGl2ZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gYCR7ZG9tYWlufS8ke3NlcnZpY2V9LyR7cHJpbWl0aXZlfWA7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBhc3luYyB1bnN1YnNjcmliZVByaW1pdGl2ZU9uRmluYWxpemUocHJpbWl0aXZlTWFuYWdlcjogUHJpbWl0aXZlTWFuYWdlcjxhbnk+KSB7XHJcbiAgICAgICAgaWYgKHByaW1pdGl2ZU1hbmFnZXIuaGFzT2JzZXJ2ZXJzKCkpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcHJpbWl0aXZlTWFuYWdlci51bnN1YnNjcmliZSgpO1xyXG5cclxuICAgICAgICBjb25zdCBrZXkgPSB0aGlzLmJ1aWxkUHJpbWl0aXZlTWFuYWdlcktleShwcmltaXRpdmVNYW5hZ2VyLmRvbWFpbiwgcHJpbWl0aXZlTWFuYWdlci5zZXJ2aWNlLCBwcmltaXRpdmVNYW5hZ2VyLnByaW1pdGl2ZSk7XHJcbiAgICAgICAgdGhpcy5wcmltaXRpdmVNYW5hZ2Vycy5kZWxldGUoa2V5KTtcclxuXHJcbiAgICAgICAgYXdhaXQgdGhpcy5kaXNjb25uZWN0SWZOb01vcmVPYnNlcnZhYmxlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgYXN5bmMgZGlzY29ubmVjdElmTm9Nb3JlT2JzZXJ2YWJsZXMoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuZ2V0T2JzZXJ2ZXJzQ291bnQoKSA9PT0gMCkge1xyXG4gICAgICAgICAgICB0aGlzLmRlYnVnKCdNYW51YWxseSBkaXNjb25uZWN0aW5nIGJlY2F1c2UgdGhlcmUgYXJlIG5vIG1vcmUgb2JzZXJ2ZXJzJyk7XHJcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuZGlzY29ubmVjdCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdldE9ic2VydmVyc0NvdW50KCk6IG51bWJlciB7XHJcbiAgICAgICAgbGV0IG9ic2VydmVyc0NvdW50ID0gMDtcclxuXHJcbiAgICAgICAgdGhpcy5wcmltaXRpdmVNYW5hZ2Vycy5mb3JFYWNoKHByaW1pdGl2ZU1hbmFnZXIgPT4ge1xyXG4gICAgICAgICAgICBvYnNlcnZlcnNDb3VudCArPSBwcmltaXRpdmVNYW5hZ2VyLmdldE9ic2VydmVyc0NvdW50KCk7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHJldHVybiBvYnNlcnZlcnNDb3VudDtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNyZWF0ZVN0b21wU3Vic2NyaXB0aW9uPFQ+KGRlc3RpbmF0aW9uOiBzdHJpbmcsIHByaW1pdGl2ZU1hbmFnZXI6IFByaW1pdGl2ZU1hbmFnZXI8VD4pOiBTdG9tcFN1YnNjcmlwdGlvbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RvbXBDbGllbnQuc3Vic2NyaWJlKGRlc3RpbmF0aW9uLCAobWVzc2FnZTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGV2ZW50ID0gSlNPTi5wYXJzZShtZXNzYWdlLmJvZHkgfHwgJ3t9Jyk7XHJcbiAgICAgICAgICAgIHByaW1pdGl2ZU1hbmFnZXIuZmlyZUV2ZW50KGV2ZW50KTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNyZWF0ZVN0b21wU3Vic2NyaXB0aW9uczxUPihwcmltaXRpdmVNYW5hZ2VyOiBQcmltaXRpdmVNYW5hZ2VyPFQ+KTogdm9pZCB7XHJcbiAgICAgICAgY29uc3Qgc3Vic2NyaXB0aW9uVXJsV2l0aFRva2VuID0gdGhpcy5idWlsZFN1YnNjcmlwdGlvblVybFdpdGhUb2tlbihcclxuICAgICAgICAgICAgcHJpbWl0aXZlTWFuYWdlci5kb21haW4sXHJcbiAgICAgICAgICAgIHByaW1pdGl2ZU1hbmFnZXIuc2VydmljZSxcclxuICAgICAgICAgICAgcHJpbWl0aXZlTWFuYWdlci5wcmltaXRpdmVcclxuICAgICAgICApO1xyXG4gICAgICAgIGNvbnN0IHN1YnNjcmlwdGlvblVybFdpdGhvdXRUb2tlbiA9IHRoaXMuZ2V0U3Vic2NyaXB0aW9uVXJsV2l0aG91dFRva2VuKFxyXG4gICAgICAgICAgICBwcmltaXRpdmVNYW5hZ2VyLmRvbWFpbixcclxuICAgICAgICAgICAgcHJpbWl0aXZlTWFuYWdlci5zZXJ2aWNlLFxyXG4gICAgICAgICAgICBwcmltaXRpdmVNYW5hZ2VyLnByaW1pdGl2ZVxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIGNvbnN0IHN0b21wU3Vic2NyaXB0aW9uV2l0aFRva2VuID0gdGhpcy5jcmVhdGVTdG9tcFN1YnNjcmlwdGlvbihzdWJzY3JpcHRpb25VcmxXaXRoVG9rZW4sIHByaW1pdGl2ZU1hbmFnZXIpO1xyXG4gICAgICAgIGNvbnN0IHN0b21wU3Vic2NyaXB0aW9uV2l0aG91dFRva2VuID0gdGhpcy5jcmVhdGVTdG9tcFN1YnNjcmlwdGlvbihzdWJzY3JpcHRpb25VcmxXaXRob3V0VG9rZW4sIHByaW1pdGl2ZU1hbmFnZXIpO1xyXG4gICAgICAgIHByaW1pdGl2ZU1hbmFnZXIuc3Vic2NyaWJlKHN0b21wU3Vic2NyaXB0aW9uV2l0aFRva2VuLCBzdG9tcFN1YnNjcmlwdGlvbldpdGhvdXRUb2tlbik7XHJcbiAgICAgICAgdGhpcy5zdWJzY3JpYmVkJC5uZXh0KHByaW1pdGl2ZU1hbmFnZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0U3Vic2NyaXB0aW9uVXJsKCkge1xyXG4gICAgICAgIHJldHVybiBgJHt0aGlzLnVzZXJJbmZvcm1hdGlvblNlcnZpY2UuZ2V0V2ViU29ja2V0VXJsKCl9L3N1YnNjcmlwdGlvbmA7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -254,42 +254,21 @@ var AgroStringUtils = /** @class */ (function () {
|
|
|
254
254
|
return matches ? matches.length : AGRO_NUMBERS.ZERO;
|
|
255
255
|
};
|
|
256
256
|
AgroStringUtils.validateCPF = function (cpf) {
|
|
257
|
-
// Remover caracteres não numéricos
|
|
258
257
|
cpf = cpf.replace(/\D/g, "");
|
|
259
|
-
|
|
260
|
-
if (cpf.length !== AGRO_NUMBERS.ELEVEN) {
|
|
258
|
+
if (cpf.length !== 11 || /^(\d)\1+$/.test(cpf)) {
|
|
261
259
|
return false;
|
|
262
260
|
}
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
if (remainder === AGRO_NUMBERS.TEN || remainder === AGRO_NUMBERS.ELEVEN) {
|
|
275
|
-
remainder = AGRO_NUMBERS.ZERO;
|
|
276
|
-
}
|
|
277
|
-
if (remainder !== parseInt(cpf[AGRO_NUMBERS.NINE])) {
|
|
278
|
-
return false;
|
|
279
|
-
}
|
|
280
|
-
// Calcular o segundo dígito verificador
|
|
281
|
-
sum = AGRO_NUMBERS.ZERO;
|
|
282
|
-
for (var i = AGRO_NUMBERS.ONE; i <= AGRO_NUMBERS.TEN; i++) {
|
|
283
|
-
sum += parseInt(cpf[i - AGRO_NUMBERS.ONE]) * (AGRO_NUMBERS.TWELVE - i);
|
|
284
|
-
}
|
|
285
|
-
remainder = sum % AGRO_NUMBERS.ELEVEN;
|
|
286
|
-
if (remainder === AGRO_NUMBERS.TEN || remainder === AGRO_NUMBERS.ELEVEN) {
|
|
287
|
-
remainder = AGRO_NUMBERS.ZERO;
|
|
288
|
-
}
|
|
289
|
-
if (remainder !== parseInt(cpf[AGRO_NUMBERS.TEN])) {
|
|
290
|
-
return false;
|
|
291
|
-
}
|
|
292
|
-
return true;
|
|
261
|
+
var calcVerifier = function (cpf, length) {
|
|
262
|
+
var sum = 0;
|
|
263
|
+
for (var i = 0; i < length; i++) {
|
|
264
|
+
sum += parseInt(cpf[i]) * (length + 1 - i);
|
|
265
|
+
}
|
|
266
|
+
var result = sum % 11;
|
|
267
|
+
return result < 2 ? 0 : 11 - result;
|
|
268
|
+
};
|
|
269
|
+
var digit1 = calcVerifier(cpf, 9);
|
|
270
|
+
var digit2 = calcVerifier(cpf, 10);
|
|
271
|
+
return digit1 === parseInt(cpf[9]) && digit2 === parseInt(cpf[10]);
|
|
293
272
|
};
|
|
294
273
|
AgroStringUtils.validateCNPJ = function (cnpj) {
|
|
295
274
|
// Remove todos os caracteres não numéricos
|
|
@@ -380,4 +359,4 @@ var AgroStringUtils = /** @class */ (function () {
|
|
|
380
359
|
return AgroStringUtils;
|
|
381
360
|
}());
|
|
382
361
|
export { AgroStringUtils };
|
|
383
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdyby1zdHJpbmctdXRpbHMuY2xhc3MuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbW1vbi9hZ3JvLXN0cmluZy11dGlscy5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFbkQsT0FBTyxFQUFFLGVBQWUsSUFBSSxXQUFXLEVBQUUsQ0FBQztBQUcxQzs7R0FFRztBQUNIO0lBQUE7SUE2WUEsQ0FBQztJQTVZRzs7OztPQUlHO0lBQ0ksdUJBQU8sR0FBZCxVQUFlLEdBQW1COztRQUM5QixPQUFPLENBQUMsR0FBRyxJQUFJLE9BQUEsR0FBRyxDQUFDLElBQUksRUFBRSwwQ0FBRSxNQUFNLE1BQUssWUFBWSxDQUFDLElBQUksQ0FBQztJQUM1RCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLDBCQUFVLEdBQWpCLFVBQWtCLEdBQW1CO1FBQ2pDLE9BQU8sQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksdUJBQU8sR0FBZCxVQUFlLEdBQW1CO1FBQzlCLE9BQU8sQ0FBQyxHQUFHLElBQUksVUFBVSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSwwQkFBVSxHQUFqQixVQUFrQixHQUFtQjtRQUNqQyxPQUFPLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLDBCQUFVLEdBQWpCLFVBQWtCLEdBQW1CO1FBQ2pDLElBQUksQ0FBQyxHQUFHO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDdEIsSUFB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bXNcIjtcclxuaW1wb3J0IHsgQUdST19SRUdFWCB9IGZyb20gXCIuL2Fncm8tcmVnZXguY29uc3RhbnRcIjtcclxuXHJcbmV4cG9ydCB7IEFncm9TdHJpbmdVdGlscyBhcyBTdHJpbmdVdGlscyB9O1xyXG5cclxuZXhwb3J0IHR5cGUgTnVsbGFibGVTdHJpbmcgPSBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkO1xyXG4vKipcclxuICogQ2xhc3NlIHV0aWxpdMOhcmlhIHBhcmEgb3BlcmHDp8O1ZXMgZGUgc3RyaW5nLlxyXG4gKi9cclxuZXhwb3J0IGNsYXNzIEFncm9TdHJpbmdVdGlscyB7XHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIHVtYSBzdHJpbmcgZXN0w6EgdmF6aWEgb3UgY29uc2lzdGUgYXBlbmFzIGRlIGNhcmFjdGVyZXMgZGUgZXNwYcOnbyBlbSBicmFuY28uXHJcbiAgICAgKiBAcGFyYW0gc3RyIC0gQSBzdHJpbmcgYSBzZXIgdmVyaWZpY2FkYS5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgYSBzdHJpbmcgZXN0aXZlciB2YXppYSBvdSBjb25zaXN0aXIgYXBlbmFzIGRlIGNhcmFjdGVyZXMgZGUgZXNwYcOnbyBlbSBicmFuY28sIGZhbHNlIGNhc28gY29udHLDoXJpby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGlzRW1wdHkoc3RyOiBOdWxsYWJsZVN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAhc3RyIHx8IHN0ci50cmltKCk/Lmxlbmd0aCA9PT0gQUdST19OVU1CRVJTLlpFUk87XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSB1bWEgc3RyaW5nIG7Do28gZXN0w6EgdmF6aWEgZSBuw6NvIGNvbnNpc3RlIGFwZW5hcyBkZSBjYXJhY3RlcmVzIGRlIGVzcGHDp28gZW0gYnJhbmNvLlxyXG4gICAgICogQHBhcmFtIHN0ciAtIEEgc3RyaW5nIGEgc2VyIHZlcmlmaWNhZGEuXHJcbiAgICAgKiBAcmV0dXJucyBUcnVlIHNlIGEgc3RyaW5nIG7Do28gZXN0aXZlciB2YXppYSBlIG7Do28gY29uc2lzdGlyIGFwZW5hcyBkZSBjYXJhY3RlcmVzIGRlIGVzcGHDp28gZW0gYnJhbmNvLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBpc05vdEVtcHR5KHN0cjogTnVsbGFibGVTdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gIUFncm9TdHJpbmdVdGlscy5pc0VtcHR5KHN0cik7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSB1bWEgc3RyaW5nIGVzdMOhIHZhemlhLCBjb25zaXN0ZSBhcGVuYXMgZGUgY2FyYWN0ZXJlcyBkZSBlc3Bhw6dvIGVtIGJyYW5jbyBvdSDDqSBudWxhLlxyXG4gICAgICogQHBhcmFtIHN0ciAtIEEgc3RyaW5nIGEgc2VyIHZlcmlmaWNhZGEuXHJcbiAgICAgKiBAcmV0dXJucyBUcnVlIHNlIGEgc3RyaW5nIGVzdGl2ZXIgdmF6aWEsIGNvbnNpc3RpciBhcGVuYXMgZGUgY2FyYWN0ZXJlcyBkZSBlc3Bhw6dvIGVtIGJyYW5jbyBvdSBmb3IgbnVsYSwgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaXNCbGFuayhzdHI6IE51bGxhYmxlU3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICFzdHIgfHwgQUdST19SRUdFWC5vbmx5QmxhbmtTcGFjZXMudGVzdChzdHIpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgdW1hIHN0cmluZyBuw6NvIGVzdMOhIHZhemlhLCBuw6NvIGNvbnNpc3RlIGFwZW5hcyBkZSBjYXJhY3RlcmVzIGRlIGVzcGHDp28gZW0gYnJhbmNvIGUgbsOjbyDDqSBudWxhLlxyXG4gICAgICogQHBhcmFtIHN0ciAtIEEgc3RyaW5nIGEgc2VyIHZlcmlmaWNhZGEuXHJcbiAgICAgKiBAcmV0dXJucyBUcnVlIHNlIGEgc3RyaW5nIG7Do28gZXN0aXZlciB2YXppYSwgbsOjbyBjb25zaXN0aXIgYXBlbmFzIGRlIGNhcmFjdGVyZXMgZGUgZXNwYcOnbyBlbSBicmFuY28gZSBuw6NvIGZvciBudWxhLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBpc05vdEJsYW5rKHN0cjogTnVsbGFibGVTdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gIUFncm9TdHJpbmdVdGlscy5pc0JsYW5rKHN0cik7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZW1vdmUgb3MgZXNwYcOnb3MgZW0gYnJhbmNvIGRlIHVtYSBzdHJpbmcgZSByZXRvcm5hIG51bGwgc2UgYSBzdHJpbmcgcmVzdWx0YW50ZSBlc3RpdmVyIHZhemlhLCBjYXNvIGNvbnRyw6FyaW8gcmV0b3JuYSBhIHN0cmluZyBzZW0gZXNwYcOnb3MgZW0gYnJhbmNvLlxyXG4gICAgICogQHBhcmFtIHN0ciAtIEEgc3RyaW5nIGEgc2VyIHJlbW92aWRvcyBvcyBlc3Bhw6dvcyBlbSBicmFuY28uXHJcbiAgICAgKiBAcmV0dXJucyBBIHN0cmluZyBzZW0gZXNwYcOnb3MgZW0gYnJhbmNvIG91IG51bGwgc2UgYSBzdHJpbmcgcmVzdWx0YW50ZSBlc3RpdmVyIHZhemlhLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgdHJpbVRvTnVsbChzdHI6IE51bGxhYmxlU3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICAgICAgaWYgKCFzdHIpIHJldHVybiBudWxsO1xyXG4gICAgICAgIGNvbnN0IHRyaW1tZWQgPSBzdHIudHJpbSgpO1xyXG4gICAgICAgIHJldHVybiB0cmltbWVkID09PSBcIlwiID8gbnVsbCA6IHRyaW1tZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSBkdWFzIHN0cmluZ3Mgc8OjbyBpZ3VhaXMsIGlnbm9yYW5kbyBtYWnDunNjdWxhcyBlIG1pbsO6c2N1bGFzLlxyXG4gICAgICogQHBhcmFtIHN0cjEgLSBBIHByaW1laXJhIHN0cmluZyBhIHNlciBjb21wYXJhZGEuXHJcbiAgICAgKiBAcGFyYW0gc3RyMiAtIEEgc2VndW5kYSBzdHJpbmcgYSBzZXIgY29tcGFyYWRhLlxyXG4gICAgICogQHJldHVybnMgVHJ1ZSBzZSBhcyBzdHJpbmdzIGZvcmVtIGlndWFpcywgaWdub3JhbmRvIG1hacO6c2N1bGFzIGUgbWluw7pzY3VsYXMsIGZhbHNlIGNhc28gY29udHLDoXJpby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGVxdWFsc0lnbm9yZUNhc2Uoc3RyMTogTnVsbGFibGVTdHJpbmcsIHN0cjI6IE51bGxhYmxlU3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHN0cjE/LnRvTG93ZXJDYXNlKCkgPT09IHN0cjI/LnRvTG93ZXJDYXNlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSBkdWFzIHN0cmluZ3Mgc8OjbyBpZ3VhaXMuXHJcbiAgICAgKiBAcGFyYW0gc3RyMVxyXG4gICAgICogQHBhcmFtIHN0cjJcclxuICAgICAqIEByZXR1cm5zXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBlcXVhbHMoc3RyMTogTnVsbGFibGVTdHJpbmcsIHN0cjI6IE51bGxhYmxlU3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHN0cjEgPT09IHN0cjI7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBJbnZlcnRlIG9zIGNhcmFjdGVyZXMgZGUgdW1hIHN0cmluZy5cclxuICAgICAqIEBwYXJhbSBzdHIgLSBBIHN0cmluZyBhIHNlciBpbnZlcnRpZGEuXHJcbiAgICAgKiBAcmV0dXJucyBBIHN0cmluZyBpbnZlcnRpZGEuXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyByZXZlcnNlKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gc3RyLnNwbGl0KFwiXCIpLnJldmVyc2UoKS5qb2luKFwiXCIpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgYSBzdHJpbmcgw6kgdW0gZS1tYWlsLlxyXG4gICAgICogQHBhcmFtIHN0ciAtIEEgc3RyaW5nIGEgc2VyIHRlc3RhZGFcclxuICAgICAqIEByZXR1cm5zIC0gVHJ1ZSBzZSBhIHN0cmluZyBmb3IgdW0gZS1tYWlsLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBpc0VtYWlsKHN0cjogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIEFHUk9fUkVHRVguaXNFbWFpbC50ZXN0KHN0cik7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSBhIHN0cmluZyDDqSB1bSBuw7ptZXJvIGludGVpcm8gcG9zaXRpdm8uXHJcbiAgICAgKiBAcGFyYW0gc3RyIC0gQSBzdHJpbmcgYSBzZXIgdGVzdGFkYVxyXG4gICAgICogQHJldHVybnMgLSBUcnVlIHNlIGEgc3RyaW5nIGZvciB1bSBuw7ptZXJvIGludGVpcm8gcG9zaXRpdm8sIGZhbHNlIGNhc28gY29udHLDoXJpby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGlzUG9zaXRpdmVJbnRlZ2VyKHN0cjogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIEFHUk9fUkVHRVgucG9zaXRpdmVJbnRlZ2VyLnRlc3Qoc3RyKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIGEgc3RyaW5nIMOpIHVtIG7Dum1lcm8gZGVjaW1hbCBwb3NpdGl2by5cclxuICAgICAqIEBwYXJhbSBzdHIgLSBBIHN0cmluZyBhIHNlciB0ZXN0YWRhXHJcbiAgICAgKiBAcmV0dXJucyAtIFRydWUgc2UgYSBzdHJpbmcgZm9yIHVtIG7Dum1lcm8gZGVjaW1hbCBwb3NpdGl2bywgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaXNQb3NpdGl2ZURlY2ltYWwoc3RyOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gQUdST19SRUdFWC5wb3NpdGl2ZURlY2ltYWwudGVzdChzdHIpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgYSBzdHJpbmcgw6kgdW0gQ0VQIChDw7NkaWdvIFBvc3RhbCkuXHJcbiAgICAgKiBAcGFyYW0gc3RyIC0gQSBzdHJpbmcgYSBzZXIgdGVzdGFkYVxyXG4gICAgICogQHJldHVybnMgLSBUcnVlIHNlIGEgc3RyaW5nIGZvciB1bSBDRVAsIGZhbHNlIGNhc28gY29udHLDoXJpby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGlzWmlwQ29kZShzdHI6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiBBR1JPX1JFR0VYLnppcENvZGUudGVzdChzdHIpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgYSBzdHJpbmcgw6kgdW0gVVVJRC5cclxuICAgICAqIEBwYXJhbSBzdHIgLSBBIHN0cmluZyBhIHNlciB0ZXN0YWRhXHJcbiAgICAgKiBAcmV0dXJucyAtIFRydWUgc2UgYSBzdHJpbmcgZm9yIHVtIFVVSUQsIGZhbHNlIGNhc28gY29udHLDoXJpby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGlzVVVJRChzdHI6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiBBR1JPX1JFR0VYLmlzVVVJRC50ZXN0KHN0cik7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSBhIHN0cmluZyDDqSB1bSBuw7ptZXJvLlxyXG4gICAgICogQHBhcmFtIHN0ciAtIEEgc3RyaW5nIGEgc2VyIHRlc3RhZGFcclxuICAgICAqIEByZXR1cm5zIC0gVHJ1ZSBzZSBhIHN0cmluZyBmb3IgdW0gbsO6bWVybywgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaXNOdW1iZXIoc3RyOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gQUdST19SRUdFWC5pc051bWJlci50ZXN0KHN0cik7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZXRvcm5hIGEgZGlmZXJlbsOnYSBlbnRyZSBkdWFzIHN0cmluZ3MuXHJcbiAgICAgKiBAcGFyYW0gc3RyMVxyXG4gICAgICogQHBhcmFtIHN0cjJcclxuICAgICAqIEByZXR1cm5zXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBkaWZmZXJlbmNlKHN0cjE6IHN0cmluZywgc3RyMjogc3RyaW5nKTogbnVtYmVyIHtcclxuICAgICAgICBjb25zdCBsZW4xID0gc3RyMS5sZW5ndGg7XHJcbiAgICAgICAgY29uc3QgbGVuMiA9IHN0cjIubGVuZ3RoO1xyXG4gICAgICAgIGxldCBkaWZmID0gTWF0aC5hYnMobGVuMSAtIGxlbjIpO1xyXG4gICAgICAgIGZvciAobGV0IGkgPSBBR1JPX05VTUJFUlMuWkVSTzsgaSA8IE1hdGgubWluKGxlbjEsIGxlbjIpOyBpKyspIHtcclxuICAgICAgICAgICAgaWYgKHN0cjFbaV0gIT09IHN0cjJbaV0pIHtcclxuICAgICAgICAgICAgICAgIGRpZmYrKztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZGlmZjtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJldG9ybmEgc2UgYSBzdHJpbmcgdGVybWluYSBjb20gYSBzdHJpbmcgZm9ybmVjaWRhLlxyXG4gICAgICogQHBhcmFtIHN0cjFcclxuICAgICAqIEBwYXJhbSBzdHIyXHJcbiAgICAgKiBAcmV0dXJuc1xyXG4gICAgICovXHJcbiAgICBzdGF0aWMgZW5kc1dpdGgoc3RyMTogc3RyaW5nLCBzdHIyOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gc3RyMS5lbmRzV2l0aChzdHIyKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJldG9ybmEgc2UgYSBzdHJpbmcgY29tZcOnYSBjb20gYSBzdHJpbmcgZm9ybmVjaWRhLlxyXG4gICAgICogQHBhcmFtIHN0cjFcclxuICAgICAqIEBwYXJhbSBzdHIyXHJcbiAgICAgKiBAcmV0dXJuc1xyXG4gICAgICovXHJcbiAgICBzdGF0aWMgc3RhcnRzV2l0aChzdHIxOiBzdHJpbmcsIHN0cjI6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiBzdHIxLnN0YXJ0c1dpdGgoc3RyMik7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZXRvcm5hIHNlIGEgc3RyaW5nIGNvbnTDqW0gYSBzdHJpbmcgZm9ybmVjaWRhLlxyXG4gICAgICogQHBhcmFtIHN0cjFcclxuICAgICAqIEBwYXJhbSBzdHIyXHJcbiAgICAgKiBAcmV0dXJuc1xyXG4gICAgICovXHJcbiAgICBzdGF0aWMgY29udGFpbnMoc3RyMTogc3RyaW5nLCBzdHIyOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gc3RyMS5pbmNsdWRlcyhzdHIyKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJldG9ybmEgc2UgYSBzdHJpbmcgY29tZcOnYSBjb20gYSBzdHJpbmcgZm9ybmVjaWRhIGlnbm9yYW5kbyBtYWnDunNjdWxhcyBlIG1pbsO6c2N1bGFzLlxyXG4gICAgICogQHBhcmFtIHN0cjFcclxuICAgICAqIEBwYXJhbSBzdHIyXHJcbiAgICAgKiBAcmV0dXJuc1xyXG4gICAgICovXHJcbiAgICBzdGF0aWMgc3RhcnRzV2l0aElnbm9yZUNhc2Uoc3RyMTogc3RyaW5nLCBzdHIyOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gc3RyMS50b0xvd2VyQ2FzZSgpLnN0YXJ0c1dpdGgoc3RyMi50b0xvd2VyQ2FzZSgpKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJldG9ybmEgc2UgYSBzdHJpbmcgdGVybWluYSBjb20gYSBzdHJpbmcgZm9ybmVjaWRhIGlnbm9yYW5kbyBtYWnDunNjdWxhcyBlIG1pbsO6c2N1bGFzLlxyXG4gICAgICogQHBhcmFtIHN0cjFcclxuICAgICAqIEBwYXJhbSBzdHIyXHJcbiAgICAgKiBAcmV0dXJuc1xyXG4gICAgICovXHJcbiAgICBzdGF0aWMgZW5kc1dpdGhJZ25vcmVDYXNlKHN0cjE6IHN0cmluZywgc3RyMjogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHN0cjEudG9Mb3dlckNhc2UoKS5lbmRzV2l0aChzdHIyLnRvTG93ZXJDYXNlKCkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ29udmVydGUgdW1hIHN0cmluZyBwYXJhIGxldHJhcyBtYWnDunNjdWxhcy5cclxuICAgICAqIEBwYXJhbSBzdHIgLSBBIHN0cmluZyBhIHNlciBjb252ZXJ0aWRhLlxyXG4gICAgICogQHJldHVybnMgQSBzdHJpbmcgY29udmVydGlkYSBwYXJhIGxldHJhcyBtYWnDunNjdWxhcy5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIHRvVXBwZXJDYXNlKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gc3RyLnRvVXBwZXJDYXNlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDb252ZXJ0ZSB1bWEgc3RyaW5nIHBhcmEgbGV0cmFzIG1pbsO6c2N1bGFzLlxyXG4gICAgICogQHBhcmFtIHN0ciAtIEEgc3RyaW5nIGEgc2VyIGNvbnZlcnRpZGEuXHJcbiAgICAgKiBAcmV0dXJucyBBIHN0cmluZyBjb252ZXJ0aWRhIHBhcmEgbGV0cmFzIG1pbsO6c2N1bGFzLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgdG9Mb3dlckNhc2Uoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiBzdHIudG9Mb3dlckNhc2UoKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEludmVydGUgbyBjYXNvIGRhcyBsZXRyYXMgZW0gdW1hIHN0cmluZy5cclxuICAgICAqIEBwYXJhbSBzdHIgLSBBIHN0cmluZyBhIHNlciBjb252ZXJ0aWRhLlxyXG4gICAgICogQHJldHVybnMgQSBzdHJpbmcgY29tIG8gY2FzbyBkYXMgbGV0cmFzIGludmVydGlkby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIHN3YXBDYXNlKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICBsZXQgc3dhcHBlZCA9IFwiXCI7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IEFHUk9fTlVNQkVSUy5aRVJPOyBpIDwgc3RyLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGNoYXIgPSBzdHJbaV07XHJcbiAgICAgICAgICAgIGlmIChjaGFyID09PSBjaGFyLnRvVXBwZXJDYXNlKCkpIHtcclxuICAgICAgICAgICAgICAgIHN3YXBwZWQgKz0gY2hhci50b0xvd2VyQ2FzZSgpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgc3dhcHBlZCArPSBjaGFyLnRvVXBwZXJDYXNlKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHN3YXBwZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDb252ZXJ0ZSBhIHByaW1laXJhIGxldHJhIGRlIHVtYSBzdHJpbmcgcGFyYSBtYWnDunNjdWxhLlxyXG4gICAgICogQHBhcmFtIHN0ciAtIEEgc3RyaW5nIGEgc2VyIGNvbnZlcnRpZGEuXHJcbiAgICAgKiBAcmV0dXJucyBBIHN0cmluZyBjb20gYSBwcmltZWlyYSBsZXRyYSBlbSBtYWnDunNjdWxhLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgY2FwaXRhbGl6ZShzdHI6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHN0ci5jaGFyQXQoQUdST19OVU1CRVJTLlpFUk8pLnRvVXBwZXJDYXNlKCkgKyBzdHIuc2xpY2UoMSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDb252ZXJ0ZSBhIHByaW1laXJhIGxldHJhIGRlIHVtYSBzdHJpbmcgcGFyYSBtaW7DunNjdWxhLlxyXG4gICAgICogQHBhcmFtIHN0ciAtIEEgc3RyaW5nIGEgc2VyIGNvbnZlcnRpZGEuXHJcbiAgICAgKiBAcmV0dXJucyBBIHN0cmluZyBjb20gYSBwcmltZWlyYSBsZXRyYSBlbSBtaW7DunNjdWxhLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgdW5jYXBpdGFsaXplKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gc3RyLmNoYXJBdChBR1JPX05VTUJFUlMuWkVSTykudG9Mb3dlckNhc2UoKSArIHN0ci5zbGljZSgxKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENvbnRhIG8gbsO6bWVybyBkZSBvY29ycsOqbmNpYXMgZGUgdW1hIHN1YnN0cmluZyBlbSB1bWEgc3RyaW5nLlxyXG4gICAgICogQHBhcmFtIHN0ciAtIEEgc3RyaW5nIG9uZGUgYSBjb250YWdlbSBzZXLDoSByZWFsaXphZGEuXHJcbiAgICAgKiBAcGFyYW0gc3Vic3RyaW5nIC0gQSBzdWJzdHJpbmcgYSBzZXIgY29udGFkYS5cclxuICAgICAqIEByZXR1cm5zIE8gbsO6bWVybyBkZSBvY29ycsOqbmNpYXMgZGEgc3Vic3RyaW5nIG5hIHN0cmluZy5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGNvdW50TWF0Y2hlcyhzdHI6IHN0cmluZywgc3Vic3RyaW5nOiBzdHJpbmcpOiBudW1iZXIge1xyXG4gICAgICAgIGNvbnN0IHJlZ2V4ID0gbmV3IFJlZ0V4cChzdWJzdHJpbmcsIFwiZ1wiKTtcclxuICAgICAgICBjb25zdCBtYXRjaGVzID0gW107XHJcbiAgICAgICAgbGV0IG1hdGNoO1xyXG4gICAgICAgIHdoaWxlICgobWF0Y2ggPSByZWdleC5leGVjKHN0cikpICE9PSBudWxsKSB7XHJcbiAgICAgICAgICAgIG1hdGNoZXMucHVzaChtYXRjaFswXSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBtYXRjaGVzID8gbWF0Y2hlcy5sZW5ndGggOiBBR1JPX05VTUJFUlMuWkVSTztcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgdmFsaWRhdGVDUEYoY3BmOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICAvLyBSZW1vdmVyIGNhcmFjdGVyZXMgbsOjbyBudW3DqXJpY29zXHJcbiAgICAgICAgY3BmID0gY3BmLnJlcGxhY2UoL1xcRC9nLCBcIlwiKTtcclxuXHJcbiAgICAgICAgLy8gVmVyaWZpY2FyIHNlIG8gQ1BGIHRlbSAxMSBkw61naXRvc1xyXG4gICAgICAgIGlmIChjcGYubGVuZ3RoICE9PSBBR1JPX05VTUJFUlMuRUxFVkVOKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIFZlcmlmaWNhciBzZSB0b2RvcyBvcyBkw61naXRvcyBzw6NvIGlndWFpcyAoY2FzbyBjb250csOhcmlvLCDDqSB1bSBzaW5hbCBkZSBDUEYgaW52w6FsaWRvKVxyXG4gICAgICAgIGlmICgvXihcXGQpXFwxezEwfSQvLnRlc3QoY3BmKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBDYWxjdWxhciBvIHByaW1laXJvIGTDrWdpdG8gdmVyaWZpY2Fkb3JcclxuICAgICAgICBsZXQgc3VtID0gQUdST19OVU1CRVJTLlpFUk87XHJcbiAgICAgICAgbGV0IHJlbWFpbmRlcjogbnVtYmVyO1xyXG4gICAgICAgIGZvciAobGV0IGkgPSBBR1JPX05VTUJFUlMuT05FOyBpIDw9IEFHUk9fTlVNQkVSUy5OSU5FOyBpKyspIHtcclxuICAgICAgICAgICAgc3VtICs9IHBhcnNlSW50KGNwZltpIC0gQUdST19OVU1CRVJTLk9ORV0pICogKEFHUk9fTlVNQkVSUy5FTEVWRU4gLSBpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVtYWluZGVyID0gc3VtICUgQUdST19OVU1CRVJTLkVMRVZFTjtcclxuICAgICAgICBpZiAocmVtYWluZGVyID09PSBBR1JPX05VTUJFUlMuVEVOIHx8IHJlbWFpbmRlciA9PT0gQUdST19OVU1CRVJTLkVMRVZFTikge1xyXG4gICAgICAgICAgICByZW1haW5kZXIgPSBBR1JPX05VTUJFUlMuWkVSTztcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHJlbWFpbmRlciAhPT0gcGFyc2VJbnQoY3BmW0FHUk9fTlVNQkVSUy5OSU5FXSkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gQ2FsY3VsYXIgbyBzZWd1bmRvIGTDrWdpdG8gdmVyaWZpY2Fkb3JcclxuICAgICAgICBzdW0gPSBBR1JPX05VTUJFUlMuWkVSTztcclxuICAgICAgICBmb3IgKGxldCBpID0gQUdST19OVU1CRVJTLk9ORTsgaSA8PSBBR1JPX05VTUJFUlMuVEVOOyBpKyspIHtcclxuICAgICAgICAgICAgc3VtICs9IHBhcnNlSW50KGNwZltpIC0gQUdST19OVU1CRVJTLk9ORV0pICogKEFHUk9fTlVNQkVSUy5UV0VMVkUgLSBpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVtYWluZGVyID0gc3VtICUgQUdST19OVU1CRVJTLkVMRVZFTjtcclxuICAgICAgICBpZiAocmVtYWluZGVyID09PSBBR1JPX05VTUJFUlMuVEVOIHx8IHJlbWFpbmRlciA9PT0gQUdST19OVU1CRVJTLkVMRVZFTikge1xyXG4gICAgICAgICAgICByZW1haW5kZXIgPSBBR1JPX05VTUJFUlMuWkVSTztcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHJlbWFpbmRlciAhPT0gcGFyc2VJbnQoY3BmW0FHUk9fTlVNQkVSUy5URU5dKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgc3RhdGljIHZhbGlkYXRlQ05QSihjbnBqOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICAvLyBSZW1vdmUgdG9kb3Mgb3MgY2FyYWN0ZXJlcyBuw6NvIG51bcOpcmljb3NcclxuICAgICAgICBjbnBqID0gY25wai5yZXBsYWNlKC9cXEQvZywgXCJcIik7XHJcblxyXG4gICAgICAgIC8vIFZlcmlmaWNhIHNlIHRlbSAxNCBkw61naXRvc1xyXG4gICAgICAgIGlmIChjbnBqLmxlbmd0aCAhPT0gMTQpIHJldHVybiBmYWxzZTtcclxuXHJcbiAgICAgICAgLy8gVmVyaWZpY2Egc2UgbyBDTlBKIMOpIHVtYSBzZXF1w6puY2lhIHJlcGV0aWRhIChleDogMTExMTExMTExMTExMTEsIDIyMjIyMjIyMjIyMjIyLCBldGMuKVxyXG4gICAgICAgIGlmICgvXihcXGQpXFwxezEzfSQvLnRlc3QoY25waikpIHJldHVybiBmYWxzZTtcclxuXHJcbiAgICAgICAgLy8gQ8OhbGN1bG8gZG8gcHJpbWVpcm8gZMOtZ2l0byB2ZXJpZmljYWRvclxyXG4gICAgICAgIGxldCBzb21hID0gMDtcclxuICAgICAgICBsZXQgcGVzb3MxID0gWzUsIDQsIDMsIDIsIDksIDgsIDcsIDYsIDUsIDQsIDMsIDJdO1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMTI7IGkrKykge1xyXG4gICAgICAgICAgICBzb21hICs9IHBhcnNlSW50KGNucGouY2hhckF0KGkpKSAqIHBlc29zMVtpXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgbGV0IHJlc3RvID0gc29tYSAlIDExO1xyXG4gICAgICAgIGxldCBkaWdpdG8xID0gcmVzdG8gPCAyID8gMCA6IDExIC0gcmVzdG87XHJcblxyXG4gICAgICAgIC8vIEPDoWxjdWxvIGRvIHNlZ3VuZG8gZMOtZ2l0byB2ZXJpZmljYWRvclxyXG4gICAgICAgIHNvbWEgPSAwO1xyXG4gICAgICAgIGxldCBwZXNvczIgPSBbNiwgNSwgNCwgMywgMiwgOSwgOCwgNywgNiwgNSwgNCwgMywgMl07XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCAxMzsgaSsrKSB7XHJcbiAgICAgICAgICAgIHNvbWEgKz0gcGFyc2VJbnQoY25wai5jaGFyQXQoaSkpICogcGVzb3MyW2ldO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXN0byA9IHNvbWEgJSAxMTtcclxuICAgICAgICBsZXQgZGlnaXRvMiA9IHJlc3RvIDwgMiA/IDAgOiAxMSAtIHJlc3RvO1xyXG5cclxuICAgICAgICAvLyBWZXJpZmljYSBzZSBvcyBkw61naXRvcyB2ZXJpZmljYWRvcmVzIHPDo28gdsOhbGlkb3NcclxuICAgICAgICByZXR1cm4gcGFyc2VJbnQoY25wai5jaGFyQXQoMTIpKSA9PT0gZGlnaXRvMSAmJiBwYXJzZUludChjbnBqLmNoYXJBdCgxMykpID09PSBkaWdpdG8yO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogTcOpdG9kbyBwYXJhIGFwbGljYXIgdW1hIG3DoXNjYXJhIGVtIHVtYSBzdHJpbmcuIENvbnNpZGVyZSBhIG3DoXNjYXJhIGNvbSB2YWxvcmVzIDkgcGFyYSBhcGxpY2HDp8Ojb1xyXG4gICAgICogQGV4YW1wbGUgQWdyb1N0cmluZ1V0aWxzLmFwcGx5TWFzaygnMTIzNDU2Nzg5MDEnLCAnOTk5Ljk5OS45OTktOTknKSA9PiAnMTIzLjQ1Ni43ODktMDEnXHJcbiAgICAgKiBAcGFyYW0gdmFsdWVcclxuICAgICAqIEBwYXJhbSBtYXNrXHJcbiAgICAgKiBAcmV0dXJuc1xyXG4gICAgICovXHJcbiAgICBzdGF0aWMgYXBwbHlNYXNrKHZhbHVlOiBzdHJpbmcsIG1hc2s6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgY29uc3QgdmFsdWVDaGFycyA9IHZhbHVlLnRvU3RyaW5nKCkuc3BsaXQoXCJcIik7XHJcbiAgICAgICAgY29uc3QgbWFza0NoYXJzID0gbWFzay5zcGxpdChcIlwiKTtcclxuICAgICAgICBsZXQgbWFza2VkVmFsdWUgPSBcIlwiO1xyXG5cclxuICAgICAgICBsZXQgaiA9IDA7XHJcbiAgICAgICAgZm9yIChjb25zdCBtYXNrQ2hhciBvZiBtYXNrQ2hhcnMpIHtcclxuICAgICAgICAgICAgaWYgKGogPj0gdmFsdWVDaGFycy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmIChtYXNrQ2hhciA9PT0gXCI5XCIpIHtcclxuICAgICAgICAgICAgICAgIG1hc2tlZFZhbHVlICs9IHZhbHVlQ2hhcnNbaisrXTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIG1hc2tlZFZhbHVlICs9IG1hc2tDaGFyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gbWFza2VkVmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSB1bWEgc3RyaW5nIMOpIHbDoWxpZGEuXHJcbiAgICAgKiBAcGFyYW0gc3RyIC0gQSBzdHJpbmcgYSBzZXIgdmVyaWZpY2FkYS5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgYSBzdHJpbmcgZm9yIHbDoWxpZGEsIGZhbHNlIGNhc28gY29udHLDoXJpby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGlzVmFsaWQoc3RyOiBOdWxsYWJsZVN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmICh0eXBlb2Ygc3RyID09PSBcInVuZGVmaW5lZFwiIHx8IHN0ciA9PT0gbnVsbCkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoQWdyb1N0cmluZ1V0aWxzLmlzTm90RW1wdHkoc3RyKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgdW1hIHN0cmluZyDDqSBpbnbDoWxpZGEuXHJcbiAgICAgKiBAcGFyYW0gc3RyIC0gQSBzdHJpbmcgYSBzZXIgdmVyaWZpY2FkYS5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgYSBzdHJpbmcgZm9yIGludsOhbGlkYSwgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaXNJbnZhbGlkKHN0cjogTnVsbGFibGVTdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gIUFncm9TdHJpbmdVdGlscy5pc1ZhbGlkKHN0cik7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
362
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdyby1zdHJpbmctdXRpbHMuY2xhc3MuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbW1vbi9hZ3JvLXN0cmluZy11dGlscy5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFbkQsT0FBTyxFQUFFLGVBQWUsSUFBSSxXQUFXLEVBQUUsQ0FBQztBQUcxQzs7R0FFRztBQUNIO0lBQUE7SUFzWEEsQ0FBQztJQXJYRzs7OztPQUlHO0lBQ0ksdUJBQU8sR0FBZCxVQUFlLEdBQW1COztRQUM5QixPQUFPLENBQUMsR0FBRyxJQUFJLE9BQUEsR0FBRyxDQUFDLElBQUksRUFBRSwwQ0FBRSxNQUFNLE1BQUssWUFBWSxDQUFDLElBQUksQ0FBQztJQUM1RCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLDBCQUFVLEdBQWpCLFVBQWtCLEdBQW1CO1FBQ2pDLE9BQU8sQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksdUJBQU8sR0FBZCxVQUFlLEdBQW1CO1FBQzlCLE9BQU8sQ0FBQyxHQUFHLElBQUksVUFBVSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSwwQkFBVSxHQUFqQixVQUFrQixHQUFtQjtRQUNqQyxPQUFPLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLDBCQUFVLEdBQWpCLFVBQWtCLEdBQW1CO1FBQ2pDLElBQUksQ0FBQyxHQUFHO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDdEIsSUFB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LENBQUMsSUFBSSxDQUFDO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFFNUMseUNBQXlDO1FBQ3pDLElBQUksSUFBSSxHQUFHLENBQUMsQ0FBQztRQUNiLElBQUksTUFBTSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNsRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3pCLElBQUksSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNoRDtRQUNELElBQUksS0FBSyxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7UUFDdEIsSUFBSSxPQUFPLEdBQUcsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsS0FBSyxDQUFDO1FBRXpDLHdDQUF3QztRQUN4QyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ1QsSUFBSSxNQUFNLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNyRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3pCLElBQUksSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNoRDtRQUNELEtBQUssR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLElBQUksT0FBTyxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLEtBQUssQ0FBQztRQUV6QyxtREFBbUQ7UUFDbkQsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLE9BQU8sSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLE9BQU8sQ0FBQztJQUMxRixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0kseUJBQVMsR0FBaEIsVUFBaUIsS0FBYSxFQUFFLElBQVk7O1FBQ3hDLElBQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDOUMsSUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNqQyxJQUFJLFdBQVcsR0FBRyxFQUFFLENBQUM7UUFFckIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDOztZQUNWLEtBQXVCLElBQUEsY0FBQSxTQUFBLFNBQVMsQ0FBQSxvQ0FBQSwyREFBRTtnQkFBN0IsSUFBTSxRQUFRLHNCQUFBO2dCQUNmLElBQUksQ0FBQyxJQUFJLFVBQVUsQ0FBQyxNQUFNLEVBQUU7b0JBQ3hCLE1BQU07aUJBQ1Q7Z0JBQ0QsSUFBSSxRQUFRLEtBQUssR0FBRyxFQUFFO29CQUNsQixXQUFXLElBQUksVUFBVSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7aUJBQ2xDO3FCQUFNO29CQUNILFdBQVcsSUFBSSxRQUFRLENBQUM7aUJBQzNCO2FBQ0o7Ozs7Ozs7OztRQUVELE9BQU8sV0FBVyxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksdUJBQU8sR0FBZCxVQUFlLEdBQW1CO1FBQzlCLElBQUksT0FBTyxHQUFHLEtBQUssV0FBVyxJQUFJLEdBQUcsS0FBSyxJQUFJLEVBQUU7WUFDNUMsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFFRCxJQUFJLGVBQWUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDakMsT0FBTyxJQUFJLENBQUM7U0FDZjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0kseUJBQVMsR0FBaEIsVUFBaUIsR0FBbUI7UUFDaEMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUNMLHNCQUFDO0FBQUQsQ0FBQyxBQXRYRCxJQXNYQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFHUk9fTlVNQkVSUyB9IGZyb20gXCIuLi9lbnVtc1wiO1xyXG5pbXBvcnQgeyBBR1JPX1JFR0VYIH0gZnJvbSBcIi4vYWdyby1yZWdleC5jb25zdGFudFwiO1xyXG5cclxuZXhwb3J0IHsgQWdyb1N0cmluZ1V0aWxzIGFzIFN0cmluZ1V0aWxzIH07XHJcblxyXG5leHBvcnQgdHlwZSBOdWxsYWJsZVN0cmluZyA9IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQ7XHJcbi8qKlxyXG4gKiBDbGFzc2UgdXRpbGl0w6FyaWEgcGFyYSBvcGVyYcOnw7VlcyBkZSBzdHJpbmcuXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgQWdyb1N0cmluZ1V0aWxzIHtcclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgdW1hIHN0cmluZyBlc3TDoSB2YXppYSBvdSBjb25zaXN0ZSBhcGVuYXMgZGUgY2FyYWN0ZXJlcyBkZSBlc3Bhw6dvIGVtIGJyYW5jby5cclxuICAgICAqIEBwYXJhbSBzdHIgLSBBIHN0cmluZyBhIHNlciB2ZXJpZmljYWRhLlxyXG4gICAgICogQHJldHVybnMgVHJ1ZSBzZSBhIHN0cmluZyBlc3RpdmVyIHZhemlhIG91IGNvbnNpc3RpciBhcGVuYXMgZGUgY2FyYWN0ZXJlcyBkZSBlc3Bhw6dvIGVtIGJyYW5jbywgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaXNFbXB0eShzdHI6IE51bGxhYmxlU3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICFzdHIgfHwgc3RyLnRyaW0oKT8ubGVuZ3RoID09PSBBR1JPX05VTUJFUlMuWkVSTztcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIHVtYSBzdHJpbmcgbsOjbyBlc3TDoSB2YXppYSBlIG7Do28gY29uc2lzdGUgYXBlbmFzIGRlIGNhcmFjdGVyZXMgZGUgZXNwYcOnbyBlbSBicmFuY28uXHJcbiAgICAgKiBAcGFyYW0gc3RyIC0gQSBzdHJpbmcgYSBzZXIgdmVyaWZpY2FkYS5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgYSBzdHJpbmcgbsOjbyBlc3RpdmVyIHZhemlhIGUgbsOjbyBjb25zaXN0aXIgYXBlbmFzIGRlIGNhcmFjdGVyZXMgZGUgZXNwYcOnbyBlbSBicmFuY28sIGZhbHNlIGNhc28gY29udHLDoXJpby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGlzTm90RW1wdHkoc3RyOiBOdWxsYWJsZVN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAhQWdyb1N0cmluZ1V0aWxzLmlzRW1wdHkoc3RyKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIHVtYSBzdHJpbmcgZXN0w6EgdmF6aWEsIGNvbnNpc3RlIGFwZW5hcyBkZSBjYXJhY3RlcmVzIGRlIGVzcGHDp28gZW0gYnJhbmNvIG91IMOpIG51bGEuXHJcbiAgICAgKiBAcGFyYW0gc3RyIC0gQSBzdHJpbmcgYSBzZXIgdmVyaWZpY2FkYS5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgYSBzdHJpbmcgZXN0aXZlciB2YXppYSwgY29uc2lzdGlyIGFwZW5hcyBkZSBjYXJhY3RlcmVzIGRlIGVzcGHDp28gZW0gYnJhbmNvIG91IGZvciBudWxhLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBpc0JsYW5rKHN0cjogTnVsbGFibGVTdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gIXN0ciB8fCBBR1JPX1JFR0VYLm9ubHlCbGFua1NwYWNlcy50ZXN0KHN0cik7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSB1bWEgc3RyaW5nIG7Do28gZXN0w6EgdmF6aWEsIG7Do28gY29uc2lzdGUgYXBlbmFzIGRlIGNhcmFjdGVyZXMgZGUgZXNwYcOnbyBlbSBicmFuY28gZSBuw6NvIMOpIG51bGEuXHJcbiAgICAgKiBAcGFyYW0gc3RyIC0gQSBzdHJpbmcgYSBzZXIgdmVyaWZpY2FkYS5cclxuICAgICAqIEByZXR1cm5zIFRydWUgc2UgYSBzdHJpbmcgbsOjbyBlc3RpdmVyIHZhemlhLCBuw6NvIGNvbnNpc3RpciBhcGVuYXMgZGUgY2FyYWN0ZXJlcyBkZSBlc3Bhw6dvIGVtIGJyYW5jbyBlIG7Do28gZm9yIG51bGEsIGZhbHNlIGNhc28gY29udHLDoXJpby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGlzTm90Qmxhbmsoc3RyOiBOdWxsYWJsZVN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAhQWdyb1N0cmluZ1V0aWxzLmlzQmxhbmsoc3RyKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJlbW92ZSBvcyBlc3Bhw6dvcyBlbSBicmFuY28gZGUgdW1hIHN0cmluZyBlIHJldG9ybmEgbnVsbCBzZSBhIHN0cmluZyByZXN1bHRhbnRlIGVzdGl2ZXIgdmF6aWEsIGNhc28gY29udHLDoXJpbyByZXRvcm5hIGEgc3RyaW5nIHNlbSBlc3Bhw6dvcyBlbSBicmFuY28uXHJcbiAgICAgKiBAcGFyYW0gc3RyIC0gQSBzdHJpbmcgYSBzZXIgcmVtb3ZpZG9zIG9zIGVzcGHDp29zIGVtIGJyYW5jby5cclxuICAgICAqIEByZXR1cm5zIEEgc3RyaW5nIHNlbSBlc3Bhw6dvcyBlbSBicmFuY28gb3UgbnVsbCBzZSBhIHN0cmluZyByZXN1bHRhbnRlIGVzdGl2ZXIgdmF6aWEuXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyB0cmltVG9OdWxsKHN0cjogTnVsbGFibGVTdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcclxuICAgICAgICBpZiAoIXN0cikgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgY29uc3QgdHJpbW1lZCA9IHN0ci50cmltKCk7XHJcbiAgICAgICAgcmV0dXJuIHRyaW1tZWQgPT09IFwiXCIgPyBudWxsIDogdHJpbW1lZDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIGR1YXMgc3RyaW5ncyBzw6NvIGlndWFpcywgaWdub3JhbmRvIG1hacO6c2N1bGFzIGUgbWluw7pzY3VsYXMuXHJcbiAgICAgKiBAcGFyYW0gc3RyMSAtIEEgcHJpbWVpcmEgc3RyaW5nIGEgc2VyIGNvbXBhcmFkYS5cclxuICAgICAqIEBwYXJhbSBzdHIyIC0gQSBzZWd1bmRhIHN0cmluZyBhIHNlciBjb21wYXJhZGEuXHJcbiAgICAgKiBAcmV0dXJucyBUcnVlIHNlIGFzIHN0cmluZ3MgZm9yZW0gaWd1YWlzLCBpZ25vcmFuZG8gbWFpw7pzY3VsYXMgZSBtaW7DunNjdWxhcywgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgZXF1YWxzSWdub3JlQ2FzZShzdHIxOiBOdWxsYWJsZVN0cmluZywgc3RyMjogTnVsbGFibGVTdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gc3RyMT8udG9Mb3dlckNhc2UoKSA9PT0gc3RyMj8udG9Mb3dlckNhc2UoKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIGR1YXMgc3RyaW5ncyBzw6NvIGlndWFpcy5cclxuICAgICAqIEBwYXJhbSBzdHIxXHJcbiAgICAgKiBAcGFyYW0gc3RyMlxyXG4gICAgICogQHJldHVybnNcclxuICAgICAqL1xyXG4gICAgc3RhdGljIGVxdWFscyhzdHIxOiBOdWxsYWJsZVN0cmluZywgc3RyMjogTnVsbGFibGVTdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gc3RyMSA9PT0gc3RyMjtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEludmVydGUgb3MgY2FyYWN0ZXJlcyBkZSB1bWEgc3RyaW5nLlxyXG4gICAgICogQHBhcmFtIHN0ciAtIEEgc3RyaW5nIGEgc2VyIGludmVydGlkYS5cclxuICAgICAqIEByZXR1cm5zIEEgc3RyaW5nIGludmVydGlkYS5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIHJldmVyc2Uoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiBzdHIuc3BsaXQoXCJcIikucmV2ZXJzZSgpLmpvaW4oXCJcIik7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSBhIHN0cmluZyDDqSB1bSBlLW1haWwuXHJcbiAgICAgKiBAcGFyYW0gc3RyIC0gQSBzdHJpbmcgYSBzZXIgdGVzdGFkYVxyXG4gICAgICogQHJldHVybnMgLSBUcnVlIHNlIGEgc3RyaW5nIGZvciB1bSBlLW1haWwsIGZhbHNlIGNhc28gY29udHLDoXJpby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGlzRW1haWwoc3RyOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gQUdST19SRUdFWC5pc0VtYWlsLnRlc3Qoc3RyKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIGEgc3RyaW5nIMOpIHVtIG7Dum1lcm8gaW50ZWlybyBwb3NpdGl2by5cclxuICAgICAqIEBwYXJhbSBzdHIgLSBBIHN0cmluZyBhIHNlciB0ZXN0YWRhXHJcbiAgICAgKiBAcmV0dXJucyAtIFRydWUgc2UgYSBzdHJpbmcgZm9yIHVtIG7Dum1lcm8gaW50ZWlybyBwb3NpdGl2bywgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaXNQb3NpdGl2ZUludGVnZXIoc3RyOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gQUdST19SRUdFWC5wb3NpdGl2ZUludGVnZXIudGVzdChzdHIpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgYSBzdHJpbmcgw6kgdW0gbsO6bWVybyBkZWNpbWFsIHBvc2l0aXZvLlxyXG4gICAgICogQHBhcmFtIHN0ciAtIEEgc3RyaW5nIGEgc2VyIHRlc3RhZGFcclxuICAgICAqIEByZXR1cm5zIC0gVHJ1ZSBzZSBhIHN0cmluZyBmb3IgdW0gbsO6bWVybyBkZWNpbWFsIHBvc2l0aXZvLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBpc1Bvc2l0aXZlRGVjaW1hbChzdHI6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiBBR1JPX1JFR0VYLnBvc2l0aXZlRGVjaW1hbC50ZXN0KHN0cik7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSBhIHN0cmluZyDDqSB1bSBDRVAgKEPDs2RpZ28gUG9zdGFsKS5cclxuICAgICAqIEBwYXJhbSBzdHIgLSBBIHN0cmluZyBhIHNlciB0ZXN0YWRhXHJcbiAgICAgKiBAcmV0dXJucyAtIFRydWUgc2UgYSBzdHJpbmcgZm9yIHVtIENFUCwgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaXNaaXBDb2RlKHN0cjogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIEFHUk9fUkVHRVguemlwQ29kZS50ZXN0KHN0cik7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBWZXJpZmljYSBzZSBhIHN0cmluZyDDqSB1bSBVVUlELlxyXG4gICAgICogQHBhcmFtIHN0ciAtIEEgc3RyaW5nIGEgc2VyIHRlc3RhZGFcclxuICAgICAqIEByZXR1cm5zIC0gVHJ1ZSBzZSBhIHN0cmluZyBmb3IgdW0gVVVJRCwgZmFsc2UgY2FzbyBjb250csOhcmlvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgaXNVVUlEKHN0cjogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIEFHUk9fUkVHRVguaXNVVUlELnRlc3Qoc3RyKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIGEgc3RyaW5nIMOpIHVtIG7Dum1lcm8uXHJcbiAgICAgKiBAcGFyYW0gc3RyIC0gQSBzdHJpbmcgYSBzZXIgdGVzdGFkYVxyXG4gICAgICogQHJldHVybnMgLSBUcnVlIHNlIGEgc3RyaW5nIGZvciB1bSBuw7ptZXJvLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBpc051bWJlcihzdHI6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiBBR1JPX1JFR0VYLmlzTnVtYmVyLnRlc3Qoc3RyKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJldG9ybmEgYSBkaWZlcmVuw6dhIGVudHJlIGR1YXMgc3RyaW5ncy5cclxuICAgICAqIEBwYXJhbSBzdHIxXHJcbiAgICAgKiBAcGFyYW0gc3RyMlxyXG4gICAgICogQHJldHVybnNcclxuICAgICAqL1xyXG4gICAgc3RhdGljIGRpZmZlcmVuY2Uoc3RyMTogc3RyaW5nLCBzdHIyOiBzdHJpbmcpOiBudW1iZXIge1xyXG4gICAgICAgIGNvbnN0IGxlbjEgPSBzdHIxLmxlbmd0aDtcclxuICAgICAgICBjb25zdCBsZW4yID0gc3RyMi5sZW5ndGg7XHJcbiAgICAgICAgbGV0IGRpZmYgPSBNYXRoLmFicyhsZW4xIC0gbGVuMik7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IEFHUk9fTlVNQkVSUy5aRVJPOyBpIDwgTWF0aC5taW4obGVuMSwgbGVuMik7IGkrKykge1xyXG4gICAgICAgICAgICBpZiAoc3RyMVtpXSAhPT0gc3RyMltpXSkge1xyXG4gICAgICAgICAgICAgICAgZGlmZisrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBkaWZmO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmV0b3JuYSBzZSBhIHN0cmluZyB0ZXJtaW5hIGNvbSBhIHN0cmluZyBmb3JuZWNpZGEuXHJcbiAgICAgKiBAcGFyYW0gc3RyMVxyXG4gICAgICogQHBhcmFtIHN0cjJcclxuICAgICAqIEByZXR1cm5zXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBlbmRzV2l0aChzdHIxOiBzdHJpbmcsIHN0cjI6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiBzdHIxLmVuZHNXaXRoKHN0cjIpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmV0b3JuYSBzZSBhIHN0cmluZyBjb21lw6dhIGNvbSBhIHN0cmluZyBmb3JuZWNpZGEuXHJcbiAgICAgKiBAcGFyYW0gc3RyMVxyXG4gICAgICogQHBhcmFtIHN0cjJcclxuICAgICAqIEByZXR1cm5zXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBzdGFydHNXaXRoKHN0cjE6IHN0cmluZywgc3RyMjogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHN0cjEuc3RhcnRzV2l0aChzdHIyKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJldG9ybmEgc2UgYSBzdHJpbmcgY29udMOpbSBhIHN0cmluZyBmb3JuZWNpZGEuXHJcbiAgICAgKiBAcGFyYW0gc3RyMVxyXG4gICAgICogQHBhcmFtIHN0cjJcclxuICAgICAqIEByZXR1cm5zXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBjb250YWlucyhzdHIxOiBzdHJpbmcsIHN0cjI6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiBzdHIxLmluY2x1ZGVzKHN0cjIpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmV0b3JuYSBzZSBhIHN0cmluZyBjb21lw6dhIGNvbSBhIHN0cmluZyBmb3JuZWNpZGEgaWdub3JhbmRvIG1hacO6c2N1bGFzIGUgbWluw7pzY3VsYXMuXHJcbiAgICAgKiBAcGFyYW0gc3RyMVxyXG4gICAgICogQHBhcmFtIHN0cjJcclxuICAgICAqIEByZXR1cm5zXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBzdGFydHNXaXRoSWdub3JlQ2FzZShzdHIxOiBzdHJpbmcsIHN0cjI6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiBzdHIxLnRvTG93ZXJDYXNlKCkuc3RhcnRzV2l0aChzdHIyLnRvTG93ZXJDYXNlKCkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmV0b3JuYSBzZSBhIHN0cmluZyB0ZXJtaW5hIGNvbSBhIHN0cmluZyBmb3JuZWNpZGEgaWdub3JhbmRvIG1hacO6c2N1bGFzIGUgbWluw7pzY3VsYXMuXHJcbiAgICAgKiBAcGFyYW0gc3RyMVxyXG4gICAgICogQHBhcmFtIHN0cjJcclxuICAgICAqIEByZXR1cm5zXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBlbmRzV2l0aElnbm9yZUNhc2Uoc3RyMTogc3RyaW5nLCBzdHIyOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gc3RyMS50b0xvd2VyQ2FzZSgpLmVuZHNXaXRoKHN0cjIudG9Mb3dlckNhc2UoKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDb252ZXJ0ZSB1bWEgc3RyaW5nIHBhcmEgbGV0cmFzIG1hacO6c2N1bGFzLlxyXG4gICAgICogQHBhcmFtIHN0ciAtIEEgc3RyaW5nIGEgc2VyIGNvbnZlcnRpZGEuXHJcbiAgICAgKiBAcmV0dXJucyBBIHN0cmluZyBjb252ZXJ0aWRhIHBhcmEgbGV0cmFzIG1hacO6c2N1bGFzLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgdG9VcHBlckNhc2Uoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiBzdHIudG9VcHBlckNhc2UoKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENvbnZlcnRlIHVtYSBzdHJpbmcgcGFyYSBsZXRyYXMgbWluw7pzY3VsYXMuXHJcbiAgICAgKiBAcGFyYW0gc3RyIC0gQSBzdHJpbmcgYSBzZXIgY29udmVydGlkYS5cclxuICAgICAqIEByZXR1cm5zIEEgc3RyaW5nIGNvbnZlcnRpZGEgcGFyYSBsZXRyYXMgbWluw7pzY3VsYXMuXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyB0b0xvd2VyQ2FzZShzdHI6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHN0ci50b0xvd2VyQ2FzZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogSW52ZXJ0ZSBvIGNhc28gZGFzIGxldHJhcyBlbSB1bWEgc3RyaW5nLlxyXG4gICAgICogQHBhcmFtIHN0ciAtIEEgc3RyaW5nIGEgc2VyIGNvbnZlcnRpZGEuXHJcbiAgICAgKiBAcmV0dXJucyBBIHN0cmluZyBjb20gbyBjYXNvIGRhcyBsZXRyYXMgaW52ZXJ0aWRvLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgc3dhcENhc2Uoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIGxldCBzd2FwcGVkID0gXCJcIjtcclxuICAgICAgICBmb3IgKGxldCBpID0gQUdST19OVU1CRVJTLlpFUk87IGkgPCBzdHIubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgICAgY29uc3QgY2hhciA9IHN0cltpXTtcclxuICAgICAgICAgICAgaWYgKGNoYXIgPT09IGNoYXIudG9VcHBlckNhc2UoKSkge1xyXG4gICAgICAgICAgICAgICAgc3dhcHBlZCArPSBjaGFyLnRvTG93ZXJDYXNlKCk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBzd2FwcGVkICs9IGNoYXIudG9VcHBlckNhc2UoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gc3dhcHBlZDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENvbnZlcnRlIGEgcHJpbWVpcmEgbGV0cmEgZGUgdW1hIHN0cmluZyBwYXJhIG1hacO6c2N1bGEuXHJcbiAgICAgKiBAcGFyYW0gc3RyIC0gQSBzdHJpbmcgYSBzZXIgY29udmVydGlkYS5cclxuICAgICAqIEByZXR1cm5zIEEgc3RyaW5nIGNvbSBhIHByaW1laXJhIGxldHJhIGVtIG1hacO6c2N1bGEuXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBjYXBpdGFsaXplKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gc3RyLmNoYXJBdChBR1JPX05VTUJFUlMuWkVSTykudG9VcHBlckNhc2UoKSArIHN0ci5zbGljZSgxKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENvbnZlcnRlIGEgcHJpbWVpcmEgbGV0cmEgZGUgdW1hIHN0cmluZyBwYXJhIG1pbsO6c2N1bGEuXHJcbiAgICAgKiBAcGFyYW0gc3RyIC0gQSBzdHJpbmcgYSBzZXIgY29udmVydGlkYS5cclxuICAgICAqIEByZXR1cm5zIEEgc3RyaW5nIGNvbSBhIHByaW1laXJhIGxldHJhIGVtIG1pbsO6c2N1bGEuXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyB1bmNhcGl0YWxpemUoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiBzdHIuY2hhckF0KEFHUk9fTlVNQkVSUy5aRVJPKS50b0xvd2VyQ2FzZSgpICsgc3RyLnNsaWNlKDEpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ29udGEgbyBuw7ptZXJvIGRlIG9jb3Jyw6puY2lhcyBkZSB1bWEgc3Vic3RyaW5nIGVtIHVtYSBzdHJpbmcuXHJcbiAgICAgKiBAcGFyYW0gc3RyIC0gQSBzdHJpbmcgb25kZSBhIGNvbnRhZ2VtIHNlcsOhIHJlYWxpemFkYS5cclxuICAgICAqIEBwYXJhbSBzdWJzdHJpbmcgLSBBIHN1YnN0cmluZyBhIHNlciBjb250YWRhLlxyXG4gICAgICogQHJldHVybnMgTyBuw7ptZXJvIGRlIG9jb3Jyw6puY2lhcyBkYSBzdWJzdHJpbmcgbmEgc3RyaW5nLlxyXG4gICAgICovXHJcbiAgICBzdGF0aWMgY291bnRNYXRjaGVzKHN0cjogc3RyaW5nLCBzdWJzdHJpbmc6IHN0cmluZyk6IG51bWJlciB7XHJcbiAgICAgICAgY29uc3QgcmVnZXggPSBuZXcgUmVnRXhwKHN1YnN0cmluZywgXCJnXCIpO1xyXG4gICAgICAgIGNvbnN0IG1hdGNoZXMgPSBbXTtcclxuICAgICAgICBsZXQgbWF0Y2g7XHJcbiAgICAgICAgd2hpbGUgKChtYXRjaCA9IHJlZ2V4LmV4ZWMoc3RyKSkgIT09IG51bGwpIHtcclxuICAgICAgICAgICAgbWF0Y2hlcy5wdXNoKG1hdGNoWzBdKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG1hdGNoZXMgPyBtYXRjaGVzLmxlbmd0aCA6IEFHUk9fTlVNQkVSUy5aRVJPO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyB2YWxpZGF0ZUNQRihjcGY6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGNwZiA9IGNwZi5yZXBsYWNlKC9cXEQvZywgXCJcIik7XHJcblxyXG4gICAgICAgIGlmIChjcGYubGVuZ3RoICE9PSAxMSB8fCAvXihcXGQpXFwxKyQvLnRlc3QoY3BmKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBjYWxjVmVyaWZpZXIgPSAoY3BmOiBzdHJpbmcsIGxlbmd0aDogbnVtYmVyKTogbnVtYmVyID0+IHtcclxuICAgICAgICAgICAgbGV0IHN1bSA9IDA7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgICAgICAgIHN1bSArPSBwYXJzZUludChjcGZbaV0pICogKGxlbmd0aCArIDEgLSBpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBsZXQgcmVzdWx0ID0gc3VtICUgMTE7XHJcbiAgICAgICAgICAgIHJldHVybiByZXN1bHQgPCAyID8gMCA6IDExIC0gcmVzdWx0O1xyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIGNvbnN0IGRpZ2l0MSA9IGNhbGNWZXJpZmllcihjcGYsIDkpO1xyXG4gICAgICAgIGNvbnN0IGRpZ2l0MiA9IGNhbGNWZXJpZmllcihjcGYsIDEwKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGRpZ2l0MSA9PT0gcGFyc2VJbnQoY3BmWzldKSAmJiBkaWdpdDIgPT09IHBhcnNlSW50KGNwZlsxMF0pO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyB2YWxpZGF0ZUNOUEooY25wajogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgLy8gUmVtb3ZlIHRvZG9zIG9zIGNhcmFjdGVyZXMgbsOjbyBudW3DqXJpY29zXHJcbiAgICAgICAgY25waiA9IGNucGoucmVwbGFjZSgvXFxEL2csIFwiXCIpO1xyXG5cclxuICAgICAgICAvLyBWZXJpZmljYSBzZSB0ZW0gMTQgZMOtZ2l0b3NcclxuICAgICAgICBpZiAoY25wai5sZW5ndGggIT09IDE0KSByZXR1cm4gZmFsc2U7XHJcblxyXG4gICAgICAgIC8vIFZlcmlmaWNhIHNlIG8gQ05QSiDDqSB1bWEgc2VxdcOqbmNpYSByZXBldGlkYSAoZXg6IDExMTExMTExMTExMTExLCAyMjIyMjIyMjIyMjIyMiwgZXRjLilcclxuICAgICAgICBpZiAoL14oXFxkKVxcMXsxM30kLy50ZXN0KGNucGopKSByZXR1cm4gZmFsc2U7XHJcblxyXG4gICAgICAgIC8vIEPDoWxjdWxvIGRvIHByaW1laXJvIGTDrWdpdG8gdmVyaWZpY2Fkb3JcclxuICAgICAgICBsZXQgc29tYSA9IDA7XHJcbiAgICAgICAgbGV0IHBlc29zMSA9IFs1LCA0LCAzLCAyLCA5LCA4LCA3LCA2LCA1LCA0LCAzLCAyXTtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDEyOyBpKyspIHtcclxuICAgICAgICAgICAgc29tYSArPSBwYXJzZUludChjbnBqLmNoYXJBdChpKSkgKiBwZXNvczFbaV07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCByZXN0byA9IHNvbWEgJSAxMTtcclxuICAgICAgICBsZXQgZGlnaXRvMSA9IHJlc3RvIDwgMiA/IDAgOiAxMSAtIHJlc3RvO1xyXG5cclxuICAgICAgICAvLyBDw6FsY3VsbyBkbyBzZWd1bmRvIGTDrWdpdG8gdmVyaWZpY2Fkb3JcclxuICAgICAgICBzb21hID0gMDtcclxuICAgICAgICBsZXQgcGVzb3MyID0gWzYsIDUsIDQsIDMsIDIsIDksIDgsIDcsIDYsIDUsIDQsIDMsIDJdO1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMTM7IGkrKykge1xyXG4gICAgICAgICAgICBzb21hICs9IHBhcnNlSW50KGNucGouY2hhckF0KGkpKSAqIHBlc29zMltpXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVzdG8gPSBzb21hICUgMTE7XHJcbiAgICAgICAgbGV0IGRpZ2l0bzIgPSByZXN0byA8IDIgPyAwIDogMTEgLSByZXN0bztcclxuXHJcbiAgICAgICAgLy8gVmVyaWZpY2Egc2Ugb3MgZMOtZ2l0b3MgdmVyaWZpY2Fkb3JlcyBzw6NvIHbDoWxpZG9zXHJcbiAgICAgICAgcmV0dXJuIHBhcnNlSW50KGNucGouY2hhckF0KDEyKSkgPT09IGRpZ2l0bzEgJiYgcGFyc2VJbnQoY25wai5jaGFyQXQoMTMpKSA9PT0gZGlnaXRvMjtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIE3DqXRvZG8gcGFyYSBhcGxpY2FyIHVtYSBtw6FzY2FyYSBlbSB1bWEgc3RyaW5nLiBDb25zaWRlcmUgYSBtw6FzY2FyYSBjb20gdmFsb3JlcyA5IHBhcmEgYXBsaWNhw6fDo29cclxuICAgICAqIEBleGFtcGxlIEFncm9TdHJpbmdVdGlscy5hcHBseU1hc2soJzEyMzQ1Njc4OTAxJywgJzk5OS45OTkuOTk5LTk5JykgPT4gJzEyMy40NTYuNzg5LTAxJ1xyXG4gICAgICogQHBhcmFtIHZhbHVlXHJcbiAgICAgKiBAcGFyYW0gbWFza1xyXG4gICAgICogQHJldHVybnNcclxuICAgICAqL1xyXG4gICAgc3RhdGljIGFwcGx5TWFzayh2YWx1ZTogc3RyaW5nLCBtYXNrOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIGNvbnN0IHZhbHVlQ2hhcnMgPSB2YWx1ZS50b1N0cmluZygpLnNwbGl0KFwiXCIpO1xyXG4gICAgICAgIGNvbnN0IG1hc2tDaGFycyA9IG1hc2suc3BsaXQoXCJcIik7XHJcbiAgICAgICAgbGV0IG1hc2tlZFZhbHVlID0gXCJcIjtcclxuXHJcbiAgICAgICAgbGV0IGogPSAwO1xyXG4gICAgICAgIGZvciAoY29uc3QgbWFza0NoYXIgb2YgbWFza0NoYXJzKSB7XHJcbiAgICAgICAgICAgIGlmIChqID49IHZhbHVlQ2hhcnMubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAobWFza0NoYXIgPT09IFwiOVwiKSB7XHJcbiAgICAgICAgICAgICAgICBtYXNrZWRWYWx1ZSArPSB2YWx1ZUNoYXJzW2orK107XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBtYXNrZWRWYWx1ZSArPSBtYXNrQ2hhcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIG1hc2tlZFZhbHVlO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVmVyaWZpY2Egc2UgdW1hIHN0cmluZyDDqSB2w6FsaWRhLlxyXG4gICAgICogQHBhcmFtIHN0ciAtIEEgc3RyaW5nIGEgc2VyIHZlcmlmaWNhZGEuXHJcbiAgICAgKiBAcmV0dXJucyBUcnVlIHNlIGEgc3RyaW5nIGZvciB2w6FsaWRhLCBmYWxzZSBjYXNvIGNvbnRyw6FyaW8uXHJcbiAgICAgKi9cclxuICAgIHN0YXRpYyBpc1ZhbGlkKHN0cjogTnVsbGFibGVTdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAodHlwZW9mIHN0ciA9PT0gXCJ1bmRlZmluZWRcIiB8fCBzdHIgPT09IG51bGwpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKEFncm9TdHJpbmdVdGlscy5pc05vdEVtcHR5KHN0cikpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFZlcmlmaWNhIHNlIHVtYSBzdHJpbmcgw6kgaW52w6FsaWRhLlxyXG4gICAgICogQHBhcmFtIHN0ciAtIEEgc3RyaW5nIGEgc2VyIHZlcmlmaWNhZGEuXHJcbiAgICAgKiBAcmV0dXJucyBUcnVlIHNlIGEgc3RyaW5nIGZvciBpbnbDoWxpZGEsIGZhbHNlIGNhc28gY29udHLDoXJpby5cclxuICAgICAqL1xyXG4gICAgc3RhdGljIGlzSW52YWxpZChzdHI6IE51bGxhYmxlU3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICFBZ3JvU3RyaW5nVXRpbHMuaXNWYWxpZChzdHIpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -11,15 +11,7 @@ var CancelEventDialogModule = /** @class */ (function () {
|
|
|
11
11
|
}
|
|
12
12
|
CancelEventDialogModule = __decorate([
|
|
13
13
|
NgModule({
|
|
14
|
-
imports: [
|
|
15
|
-
CommonModule,
|
|
16
|
-
ReactiveFormsModule,
|
|
17
|
-
TooltipModule,
|
|
18
|
-
ButtonModule,
|
|
19
|
-
LibTranslationModule,
|
|
20
|
-
DynamicFormModule,
|
|
21
|
-
LoadingStateModule
|
|
22
|
-
],
|
|
14
|
+
imports: [CommonModule, ReactiveFormsModule, TooltipModule, ButtonModule, LibTranslationModule, DynamicFormModule, LoadingStateModule],
|
|
23
15
|
declarations: [CancelEventDialogComponent],
|
|
24
16
|
exports: [CancelEventDialogComponent],
|
|
25
17
|
})
|
|
@@ -27,4 +19,4 @@ var CancelEventDialogModule = /** @class */ (function () {
|
|
|
27
19
|
return CancelEventDialogModule;
|
|
28
20
|
}());
|
|
29
21
|
export { CancelEventDialogModule };
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FuY2VsLWV2ZW50LWRpYWxvZy5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvY2FuY2VsLWV2ZW50LWRpYWxvZy9jYW5jZWwtZXZlbnQtZGlhbG9nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQU9yRDtJQUFBO0lBQXNDLENBQUM7SUFBMUIsdUJBQXVCO1FBTG5DLFFBQVEsQ0FBQztZQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixDQUFDO1lBQ3RJLFlBQVksRUFBRSxDQUFDLDBCQUEwQixDQUFDO1lBQzFDLE9BQU8sRUFBRSxDQUFDLDBCQUEwQixDQUFDO1NBQ3hDLENBQUM7T0FDVyx1QkFBdUIsQ0FBRztJQUFELDhCQUFDO0NBQUEsQUFBdkMsSUFBdUM7U0FBMUIsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tIFwicHJpbWVuZy90b29sdGlwXCI7XHJcbmltcG9ydCB7IENhbmNlbEV2ZW50RGlhbG9nQ29tcG9uZW50IH0gZnJvbSBcIi4vY2FuY2VsLWV2ZW50LWRpYWxvZy5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQnV0dG9uTW9kdWxlLCBEeW5hbWljRm9ybU1vZHVsZSwgTG9hZGluZ1N0YXRlTW9kdWxlIH0gZnJvbSBcIkBzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHNcIjtcclxuaW1wb3J0IHsgTGliVHJhbnNsYXRpb25Nb2R1bGUgfSBmcm9tIFwiLi4vLi4vbGliLXRyYW5zbGF0aW9uLm1vZHVsZVwiO1xyXG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgVG9vbHRpcE1vZHVsZSwgQnV0dG9uTW9kdWxlLCBMaWJUcmFuc2xhdGlvbk1vZHVsZSwgRHluYW1pY0Zvcm1Nb2R1bGUsIExvYWRpbmdTdGF0ZU1vZHVsZV0sXHJcbiAgICBkZWNsYXJhdGlvbnM6IFtDYW5jZWxFdmVudERpYWxvZ0NvbXBvbmVudF0sXHJcbiAgICBleHBvcnRzOiBbQ2FuY2VsRXZlbnREaWFsb2dDb21wb25lbnRdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2FuY2VsRXZlbnREaWFsb2dNb2R1bGUge31cclxuIl19
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { CancelEventDialogComponent } from
|
|
2
|
-
export { CancelEventDialogModule } from
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export { CancelEventDialogComponent } from "./cancel-event-dialog.component";
|
|
2
|
+
export { CancelEventDialogModule } from "./cancel-event-dialog.module";
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvY2FuY2VsLWV2ZW50LWRpYWxvZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IENhbmNlbEV2ZW50RGlhbG9nQ29tcG9uZW50IH0gZnJvbSBcIi4vY2FuY2VsLWV2ZW50LWRpYWxvZy5jb21wb25lbnRcIjtcclxuZXhwb3J0IHsgQ2FuY2VsRXZlbnREaWFsb2dNb2R1bGUgfSBmcm9tIFwiLi9jYW5jZWwtZXZlbnQtZGlhbG9nLm1vZHVsZVwiO1xyXG5leHBvcnQgeyBDYW5jZWxFdmVudERpYWxvZ0NvbmZpZyB9IGZyb20gXCIuL2NhbmNlbC1ldmVudC1kaWFsb2ctY29uZmlnXCI7XHJcbiJdfQ==
|
|
@@ -4,4 +4,4 @@ export var ControlStatus;
|
|
|
4
4
|
ControlStatus["EXIT"] = "EXIT";
|
|
5
5
|
ControlStatus["CANCELED"] = "CANCELED";
|
|
6
6
|
})(ControlStatus || (ControlStatus = {}));
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC1zdGF0dXMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWFncm9uZWdvY2lvL2FuZ3VsYXItY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvZXZlbnQtY29udHJvbC1ib2FyZC9jb21tb24vY29udHJvbC1zdGF0dXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksYUFJWDtBQUpELFdBQVksYUFBYTtJQUNyQixnQ0FBZSxDQUFBO0lBQ2YsOEJBQWEsQ0FBQTtJQUNiLHNDQUFxQixDQUFBO0FBQ3pCLENBQUMsRUFKVyxhQUFhLEtBQWIsYUFBYSxRQUl4QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIENvbnRyb2xTdGF0dXMge1xyXG4gICAgRU5UUlkgPSBcIkVOVFJZXCIsXHJcbiAgICBFWElUID0gXCJFWElUXCIsXHJcbiAgICBDQU5DRUxFRCA9IFwiQ0FOQ0VMRURcIixcclxufVxyXG4iXX0=
|