@po-ui/ng-components 17.20.0 → 17.21.0

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.
@@ -18,6 +18,7 @@ export * from './po-datepicker-range/po-datepicker-range.component';
18
18
  export * from './po-decimal/po-decimal.component';
19
19
  export * from './po-email/po-email.component';
20
20
  export * from './po-input/po-input.component';
21
+ export * from './po-input/po-mask';
21
22
  export * from './po-login/po-login.component';
22
23
  export * from './po-lookup/interfaces/po-lookup-column.interface';
23
24
  export * from './po-lookup/interfaces/po-lookup-filter.interface';
@@ -59,4 +60,4 @@ export * from './po-field.module';
59
60
  export * from './po-switch/index';
60
61
  export * from './po-field-container/index';
61
62
  export * from './po-clean/index';
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZmllbGQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsbUVBQW1FLENBQUM7QUFDbEYsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyx1REFBdUQsQ0FBQztBQUN0RSxjQUFjLHdFQUF3RSxDQUFDO0FBQ3ZGLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxxREFBcUQsQ0FBQztBQUNwRSxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYyx5RUFBeUUsQ0FBQztBQUN4RixjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYyxxREFBcUQsQ0FBQztBQUNwRSxjQUFjLHlEQUF5RCxDQUFDO0FBQ3hFLGNBQWMsdURBQXVELENBQUM7QUFDdEUsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDBGQUEwRixDQUFDO0FBQ3pHLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyw2REFBNkQsQ0FBQztBQUM1RSxjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYywrQkFBK0IsQ0FBQztBQUU5QyxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsNEJBQTRCLENBQUM7QUFFM0MsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLG1CQUFtQixDQUFDO0FBRWxDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcG8tY2hlY2tib3gvcG8tY2hlY2tib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG8tY2hlY2tib3gvcG8tY2hlY2tib3gtc2l6ZS5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tY2hlY2tib3gtZ3JvdXAvaW50ZXJmYWNlcy9wby1jaGVja2JveC1ncm91cC1vcHRpb24uaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tY2hlY2tib3gtZ3JvdXAvcG8tY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG8tY2xlYW4vcG8tY2xlYW4uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG8tY29tYm8vcG8tY29tYm8tZmlsdGVyLW1vZGUuZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLWNvbWJvL2ludGVyZmFjZXMvcG8tY29tYm8tZmlsdGVyLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLWNvbWJvL2ludGVyZmFjZXMvcG8tY29tYm8tbGl0ZXJhbHMuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tY29tYm8vaW50ZXJmYWNlcy9wby1jb21iby1vcHRpb24uaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tY29tYm8vaW50ZXJmYWNlcy9wby1jb21iby1vcHRpb24tZ3JvdXAuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tY29tYm8vcG8tY29tYm8tb3B0aW9uLXRlbXBsYXRlL3BvLWNvbWJvLW9wdGlvbi10ZW1wbGF0ZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1jb21iby9wby1jb21iby5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1kYXRlcGlja2VyL2VudW1zL3BvLWRhdGVwaWNrZXItaXNvLWZvcm1hdC5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tZGF0ZXBpY2tlci9wby1kYXRlcGlja2VyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3BvLWRhdGVwaWNrZXItcmFuZ2UvaW50ZXJmYWNlcy9wby1kYXRlcGlja2VyLXJhbmdlLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLWRhdGVwaWNrZXItcmFuZ2UvaW50ZXJmYWNlcy9wby1kYXRlcGlja2VyLXJhbmdlLWxpdGVyYWxzLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLWRhdGVwaWNrZXItcmFuZ2UvcG8tZGF0ZXBpY2tlci1yYW5nZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1kZWNpbWFsL3BvLWRlY2ltYWwuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG8tZW1haWwvcG8tZW1haWwuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG8taW5wdXQvcG8taW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG8tbG9naW4vcG8tbG9naW4uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG8tbG9va3VwL2ludGVyZmFjZXMvcG8tbG9va3VwLWNvbHVtbi5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1sb29rdXAvaW50ZXJmYWNlcy9wby1sb29rdXAtZmlsdGVyLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLWxvb2t1cC9pbnRlcmZhY2VzL3BvLWxvb2t1cC1maWx0ZXJlZC1pdGVtcy1wYXJhbXMuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tbG9va3VwL2ludGVyZmFjZXMvcG8tbG9va3VwLWxpdGVyYWxzLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLWxvb2t1cC9pbnRlcmZhY2VzL3BvLWxvb2t1cC1yZXNwb25zZS1hcGkuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tbG9va3VwL3BvLWxvb2t1cC1tb2RhbC9wby1sb29rdXAtbW9kYWwuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG8tbG9va3VwL3BvLWxvb2t1cC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1tdWx0aXNlbGVjdC9wby1tdWx0aXNlbGVjdC1vcHRpb24tdGVtcGxhdGUvcG8tbXVsdGlzZWxlY3Qtb3B0aW9uLXRlbXBsYXRlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLW11bHRpc2VsZWN0L3BvLW11bHRpc2VsZWN0LWZpbHRlci1tb2RlLmVudW0nO1xuZXhwb3J0ICogZnJvbSAnLi9wby1tdWx0aXNlbGVjdC9wby1tdWx0aXNlbGVjdC1saXRlcmFscy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1tdWx0aXNlbGVjdC9wby1tdWx0aXNlbGVjdC1vcHRpb24uaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tbXVsdGlzZWxlY3QvcG8tbXVsdGlzZWxlY3QtZmlsdGVyLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLW11bHRpc2VsZWN0L3BvLW11bHRpc2VsZWN0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3BvLW51bWJlci9wby1udW1iZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG8tcGFzc3dvcmQvcG8tcGFzc3dvcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG8tcmFkaW8tZ3JvdXAvcG8tcmFkaW8tZ3JvdXAtb3B0aW9uLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLXJhZGlvLWdyb3VwL3BvLXJhZGlvLWdyb3VwLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3BvLXJpY2gtdGV4dC9wby1yaWNoLXRleHQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG8tc2VsZWN0L3BvLXNlbGVjdC1vcHRpb24uaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tc2VsZWN0L3BvLXNlbGVjdC1vcHRpb24tZ3JvdXAuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tc2VsZWN0L3BvLXNlbGVjdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1zd2l0Y2gvcG8tc3dpdGNoLWxhYmVsLXBvc2l0aW9uLmVudW0nO1xuZXhwb3J0ICogZnJvbSAnLi9wby1zd2l0Y2gvcG8tc3dpdGNoLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3BvLXRleHRhcmVhL3BvLXRleHRhcmVhLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3BvLXVwbG9hZC9pbnRlcmZhY2VzL3BvLXVwbG9hZC1maWxlLXJlc3RyaWN0aW9uLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLXVwbG9hZC9pbnRlcmZhY2VzL3BvLXVwbG9hZC1saXRlcmFscy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9wby11cGxvYWQvcG8tdXBsb2FkLWZpbGUnO1xuZXhwb3J0ICogZnJvbSAnLi9wby11cGxvYWQvcG8tdXBsb2FkLXN0YXR1cy5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tdXBsb2FkL3BvLXVwbG9hZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wby11cmwvcG8tdXJsLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3BvLXJhZGlvL3BvLXJhZGlvLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vcG8tY2hlY2tib3gtZ3JvdXAvcG8tY2hlY2tib3gtZ3JvdXAubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tZGF0ZXBpY2tlci9wby1kYXRlcGlja2VyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLWNoZWNrYm94L3BvLWNoZWNrYm94Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLXJhZGlvLWdyb3VwL3BvLXJhZGlvLWdyb3VwLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLXJhZGlvL3BvLXJhZGlvLm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vcG8tZmllbGQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tc3dpdGNoL2luZGV4JztcblxuZXhwb3J0ICogZnJvbSAnLi9wby1maWVsZC1jb250YWluZXIvaW5kZXgnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1jbGVhbi9pbmRleCc7XG4iXX0=
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZmllbGQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsbUVBQW1FLENBQUM7QUFDbEYsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyx1REFBdUQsQ0FBQztBQUN0RSxjQUFjLHdFQUF3RSxDQUFDO0FBQ3ZGLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxxREFBcUQsQ0FBQztBQUNwRSxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYyx5RUFBeUUsQ0FBQztBQUN4RixjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxrRUFBa0UsQ0FBQztBQUNqRixjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYyx1REFBdUQsQ0FBQztBQUN0RSxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsMEZBQTBGLENBQUM7QUFDekcsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLDZEQUE2RCxDQUFDO0FBQzVFLGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLCtCQUErQixDQUFDO0FBRTlDLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyw0QkFBNEIsQ0FBQztBQUUzQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsbUJBQW1CLENBQUM7QUFFbEMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9wby1jaGVja2JveC9wby1jaGVja2JveC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1jaGVja2JveC9wby1jaGVja2JveC1zaXplLmVudW0nO1xuZXhwb3J0ICogZnJvbSAnLi9wby1jaGVja2JveC1ncm91cC9pbnRlcmZhY2VzL3BvLWNoZWNrYm94LWdyb3VwLW9wdGlvbi5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1jaGVja2JveC1ncm91cC9wby1jaGVja2JveC1ncm91cC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1jbGVhbi9wby1jbGVhbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1jb21iby9wby1jb21iby1maWx0ZXItbW9kZS5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tY29tYm8vaW50ZXJmYWNlcy9wby1jb21iby1maWx0ZXIuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tY29tYm8vaW50ZXJmYWNlcy9wby1jb21iby1saXRlcmFscy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1jb21iby9pbnRlcmZhY2VzL3BvLWNvbWJvLW9wdGlvbi5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1jb21iby9pbnRlcmZhY2VzL3BvLWNvbWJvLW9wdGlvbi1ncm91cC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1jb21iby9wby1jb21iby1vcHRpb24tdGVtcGxhdGUvcG8tY29tYm8tb3B0aW9uLXRlbXBsYXRlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLWNvbWJvL3BvLWNvbWJvLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3BvLWRhdGVwaWNrZXIvZW51bXMvcG8tZGF0ZXBpY2tlci1pc28tZm9ybWF0LmVudW0nO1xuZXhwb3J0ICogZnJvbSAnLi9wby1kYXRlcGlja2VyL3BvLWRhdGVwaWNrZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG8tZGF0ZXBpY2tlci1yYW5nZS9pbnRlcmZhY2VzL3BvLWRhdGVwaWNrZXItcmFuZ2UuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tZGF0ZXBpY2tlci1yYW5nZS9pbnRlcmZhY2VzL3BvLWRhdGVwaWNrZXItcmFuZ2UtbGl0ZXJhbHMuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tZGF0ZXBpY2tlci1yYW5nZS9wby1kYXRlcGlja2VyLXJhbmdlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3BvLWRlY2ltYWwvcG8tZGVjaW1hbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1lbWFpbC9wby1lbWFpbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1pbnB1dC9wby1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1pbnB1dC9wby1tYXNrJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tbG9naW4vcG8tbG9naW4uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG8tbG9va3VwL2ludGVyZmFjZXMvcG8tbG9va3VwLWNvbHVtbi5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1sb29rdXAvaW50ZXJmYWNlcy9wby1sb29rdXAtZmlsdGVyLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLWxvb2t1cC9pbnRlcmZhY2VzL3BvLWxvb2t1cC1maWx0ZXJlZC1pdGVtcy1wYXJhbXMuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tbG9va3VwL2ludGVyZmFjZXMvcG8tbG9va3VwLWxpdGVyYWxzLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLWxvb2t1cC9pbnRlcmZhY2VzL3BvLWxvb2t1cC1yZXNwb25zZS1hcGkuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tbG9va3VwL3BvLWxvb2t1cC1tb2RhbC9wby1sb29rdXAtbW9kYWwuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG8tbG9va3VwL3BvLWxvb2t1cC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1tdWx0aXNlbGVjdC9wby1tdWx0aXNlbGVjdC1vcHRpb24tdGVtcGxhdGUvcG8tbXVsdGlzZWxlY3Qtb3B0aW9uLXRlbXBsYXRlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLW11bHRpc2VsZWN0L3BvLW11bHRpc2VsZWN0LWZpbHRlci1tb2RlLmVudW0nO1xuZXhwb3J0ICogZnJvbSAnLi9wby1tdWx0aXNlbGVjdC9wby1tdWx0aXNlbGVjdC1saXRlcmFscy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1tdWx0aXNlbGVjdC9wby1tdWx0aXNlbGVjdC1vcHRpb24uaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tbXVsdGlzZWxlY3QvcG8tbXVsdGlzZWxlY3QtZmlsdGVyLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLW11bHRpc2VsZWN0L3BvLW11bHRpc2VsZWN0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3BvLW51bWJlci9wby1udW1iZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG8tcGFzc3dvcmQvcG8tcGFzc3dvcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG8tcmFkaW8tZ3JvdXAvcG8tcmFkaW8tZ3JvdXAtb3B0aW9uLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLXJhZGlvLWdyb3VwL3BvLXJhZGlvLWdyb3VwLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3BvLXJpY2gtdGV4dC9wby1yaWNoLXRleHQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG8tc2VsZWN0L3BvLXNlbGVjdC1vcHRpb24uaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tc2VsZWN0L3BvLXNlbGVjdC1vcHRpb24tZ3JvdXAuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tc2VsZWN0L3BvLXNlbGVjdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1zd2l0Y2gvcG8tc3dpdGNoLWxhYmVsLXBvc2l0aW9uLmVudW0nO1xuZXhwb3J0ICogZnJvbSAnLi9wby1zd2l0Y2gvcG8tc3dpdGNoLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3BvLXRleHRhcmVhL3BvLXRleHRhcmVhLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3BvLXVwbG9hZC9pbnRlcmZhY2VzL3BvLXVwbG9hZC1maWxlLXJlc3RyaWN0aW9uLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLXVwbG9hZC9pbnRlcmZhY2VzL3BvLXVwbG9hZC1saXRlcmFscy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9wby11cGxvYWQvcG8tdXBsb2FkLWZpbGUnO1xuZXhwb3J0ICogZnJvbSAnLi9wby11cGxvYWQvcG8tdXBsb2FkLXN0YXR1cy5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tdXBsb2FkL3BvLXVwbG9hZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wby11cmwvcG8tdXJsLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3BvLXJhZGlvL3BvLXJhZGlvLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vcG8tY2hlY2tib3gtZ3JvdXAvcG8tY2hlY2tib3gtZ3JvdXAubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tZGF0ZXBpY2tlci9wby1kYXRlcGlja2VyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLWNoZWNrYm94L3BvLWNoZWNrYm94Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLXJhZGlvLWdyb3VwL3BvLXJhZGlvLWdyb3VwLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLXJhZGlvL3BvLXJhZGlvLm1vZHVsZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vcG8tZmllbGQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tc3dpdGNoL2luZGV4JztcblxuZXhwb3J0ICogZnJvbSAnLi9wby1maWVsZC1jb250YWluZXIvaW5kZXgnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1jbGVhbi9pbmRleCc7XG4iXX0=
@@ -215,12 +215,19 @@ export class PoUploadBaseComponent {
215
215
  *
216
216
  * Função que será executada no momento de realizar o envio do arquivo,
217
217
  * onde será possível adicionar informações ao parâmetro que será enviado na requisição.
218
- * É passado por parâmetro um objeto com o arquivo e a propriedade data nesta propriedade pode ser informado algum dado,
219
- * que será enviado em conjunto com o arquivo na requisição, por exemplo:
218
+ * É passado por parâmetro um objeto com o arquivo e as propriedades data e extraFormData,
219
+ * que serão enviadas em conjunto com o arquivo na requisição, por exemplo:
220
220
  *
221
+ * > data, nesta propriedade pode ser informado algum dado
221
222
  * ```
222
223
  * event.data = {id: 'id do usuário'};
223
224
  * ```
225
+ * > extraFormData, nesta propriedade pode ser informado algum dado solicitado pela API
226
+ * > que não possa estar no objeto `data`, assim o conteúdo sará extraído do objeto e
227
+ * > enviado como parâmetro
228
+ * ```
229
+ * event.extraFormData = {id: 'id do usuário'};
230
+ * ```
224
231
  */
225
232
  onUpload = new EventEmitter();
226
233
  /**
@@ -713,4 +720,4 @@ export class PoUploadBaseComponent {
713
720
  type: Input,
714
721
  args: ['p-show-required']
715
722
  }] }); })();
716
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tdXBsb2FkLWJhc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9jb21wb25lbnRzL3BvLWZpZWxkL3BvLXVwbG9hZC9wby11cGxvYWQtYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHcEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFJckYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7OztBQUd6RCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRztJQUNyQyxFQUFFLEVBQW9CO1FBQ3BCLEtBQUssRUFBRSxPQUFPO1FBQ2QsT0FBTyxFQUFFLFNBQVM7UUFDbEIsVUFBVSxFQUFFLGFBQWE7UUFDekIsV0FBVyxFQUFFLGNBQWM7UUFDM0IsWUFBWSxFQUFFLGVBQWU7UUFDN0IsWUFBWSxFQUFFLGVBQWU7UUFDN0IsYUFBYSxFQUFFLGlCQUFpQjtRQUNoQyxlQUFlLEVBQUUsbUJBQW1CO1FBQ3BDLHFCQUFxQixFQUFFLGtDQUFrQztRQUN6RCxzQkFBc0IsRUFBRSxtQ0FBbUM7UUFDM0QsYUFBYSxFQUFFLGlCQUFpQjtRQUNoQyxlQUFlLEVBQUUsbUJBQW1CO1FBQ3BDLGVBQWUsRUFBRSwwQ0FBMEM7UUFDM0QsZUFBZSxFQUFFLGdFQUFnRTtRQUNqRixh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bUJBQUMsT0FBTztZQUdDLElBQUk7a0JBQWxCLEtBQUs7bUJBQUMsTUFBTTtZQWFXLFVBQVU7a0JBQWpDLEtBQUs7bUJBQUMsZUFBZTtZQWVELFFBQVE7a0JBQTVCLEtBQUs7bUJBQUMsWUFBWTtZQUdDLE9BQU87a0JBQTFCLEtBQUs7bUJBQUMsV0FBVztZQW1CbEIsV0FBVztrQkFGVixXQUFXO21CQUFDLHFCQUFxQjs7a0JBQ2pDLEtBQUs7bUJBQUMsRUFBRSxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO1lBaUIzQyxRQUFRO2tCQUEzQixNQUFNO21CQUFDLFVBQVU7WUFVQyxPQUFPO2tCQUF6QixNQUFNO21CQUFDLFNBQVM7WUFVSSxTQUFTO2tCQUE3QixNQUFNO21CQUFDLFdBQVc7WUFpQk0sYUFBYTtrQkFBckMsTUFBTTttQkFBQyxlQUFlO1lBd0NHLFNBQVM7a0JBQWxDLEtBQUs7bUJBQUMsYUFBYTtZQXVCTSxRQUFRO2tCQUFqQyxLQUFLO21CQUFDLGFBQWE7WUFpQm1CLG9CQUFvQjtrQkFBMUQsS0FBSzttQkFBQywwQkFBMEI7WUFvQkUsZ0JBQWdCO2tCQUFsRCxLQUFLO21CQUFDLHNCQUFzQjtZQW1CSSxjQUFjO2tCQUE5QyxLQUFLO21CQUFDLG9CQUFvQjtZQW9DRixRQUFRO2tCQUFoQyxLQUFLO21CQUFDLFlBQVk7WUF1QlUsZ0JBQWdCO2tCQUE1QyxLQUFLO21CQUFDLGdCQUFnQjtZQW1CSSxTQUFTO2tCQUFuQyxLQUFLO21CQUFDLGNBQWM7WUFpQkksUUFBUTtrQkFBaEMsS0FBSzttQkFBQyxZQUFZO1lBbUJNLFVBQVU7a0JBQWxDLEtBQUs7bUJBQUMsWUFBWTtZQWlCTSxRQUFRO2tCQUFoQyxLQUFLO21CQUFDLFlBQVk7WUFnQk8sWUFBWTtrQkFBckMsS0FBSzttQkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIFZhbGlkYXRvciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgY29udmVydFRvQm9vbGVhbiwgaXNFcXVhbHMsIGlzSUUsIGlzTW9iaWxlIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvdXRpbCc7XG5pbXBvcnQgeyByZXF1aXJlZEZhaWxlZCB9IGZyb20gJy4uL3ZhbGlkYXRvcnMnO1xuXG5pbXBvcnQgeyBwb0xvY2FsZURlZmF1bHQgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9wby1sYW5ndWFnZS9wby1sYW5ndWFnZS5jb25zdGFudCc7XG5pbXBvcnQgeyBQb0xhbmd1YWdlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3BvLWxhbmd1YWdlL3BvLWxhbmd1YWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgUG9VcGxvYWRGaWxlUmVzdHJpY3Rpb25zIH0gZnJvbSAnLi9pbnRlcmZhY2VzL3BvLXVwbG9hZC1maWxlLXJlc3RyaWN0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQb1VwbG9hZExpdGVyYWxzIH0gZnJvbSAnLi9pbnRlcmZhY2VzL3BvLXVwbG9hZC1saXRlcmFscy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUG9VcGxvYWRGaWxlIH0gZnJvbSAnLi9wby11cGxvYWQtZmlsZSc7XG5pbXBvcnQgeyBQb1VwbG9hZFN0YXR1cyB9IGZyb20gJy4vcG8tdXBsb2FkLXN0YXR1cy5lbnVtJztcbmltcG9ydCB7IFBvVXBsb2FkU2VydmljZSB9IGZyb20gJy4vcG8tdXBsb2FkLnNlcnZpY2UnO1xuXG5leHBvcnQgY29uc3QgcG9VcGxvYWRMaXRlcmFsc0RlZmF1bHQgPSB7XG4gIGVuOiA8UG9VcGxvYWRMaXRlcmFscz57XG4gICAgZmlsZXM6ICdmaWxlcycsXG4gICAgZm9sZGVyczogJ2ZvbGRlcnMnLFxuICAgIHNlbGVjdEZpbGU6ICdTZWxlY3QgZmlsZScsXG4gICAgc2VsZWN0RmlsZXM6ICdTZWxlY3QgZmlsZXMnLFxuICAgIHNlbGVjdEZvbGRlcjogJ1NlbGVjdCBmb2xkZXInLFxuICAgIHN0YXJ0U2VuZGluZzogJ1N0YXJ0IHNlbmRpbmcnLFxuICAgIGRyYWdGaWxlc0hlcmU6ICdEcmFnIGZpbGVzIGhlcmUnLFxuICAgIGRyYWdGb2xkZXJzSGVyZTogJ0RyYWcgZm9sZGVycyBoZXJlJyxcbiAgICBzZWxlY3RGaWxlc09uQ29tcHV0ZXI6ICdvciBzZWxlY3QgZmlsZXMgb24geW91ciBjb21wdXRlcicsXG4gICAgc2VsZWN0Rm9sZGVyT25Db21wdXRlcjogJ29yIHNlbGVjdCBmb2xkZXIgb24geW91ciBjb21wdXRlcicsXG4gICAgZHJvcEZpbGVzSGVyZTogJ0Ryb3AgZmlsZXMgaGVyZScsXG4gICAgZHJvcEZvbGRlcnNIZXJlOiAnRHJvcCBmb2xkZXJzIGhlcmUnLFxuICAgIGludmFsaWREcm9wQXJlYTogJ3swfSB3ZXJlIG5vdCBkcm9wcGVkIGluIHRoZSBjb3JyZWN0IGFyZWEnLFxuICAgIGludmFsaWRGaWxlVHlwZTogJ0ZhaWxlZCB0byBsb2FkIHswfSBmaWxlKHMpIGFzIGl0IGlzIG5vdCB0aGUgYWxsb3dlZCBmaWxlIHR5cGUuJyxcbiAgICBpbnZhbGlkQW1vdW50OiAnRmFpbGVkIHRvIGxvYWQgezB9IGZpbGUocyksIGFzIGl0IGV4Y2VlZHMgdGhlIGxpbWl0IGFtb3VudCBvZiBmaWxlcy4nLFxuICAgIGludmFsaWRGb3JtYXQ6ICdGYWlsZWQgdG8gbG9hZCB7MH0gZmlsZShzKSwgYXMgaXQgZG9lcyBub3QgbWF0Y2ggdGhlIGZvcm1hdChzKTogezF9LicsXG4gICAgaW52YWxpZFNpemU6ICdGYWlsZWQgdG8gbG9hZCB7MH0gZmlsZXMocyksIGFzIGl0IGlzIG5vdCB0aGUgYWxsb3dlZCBzaXplOiBmcm9tIHsxfSB0byB7Mn0uJyxcbiAgICBudW1iZXJPZkZpbGVzQWxsb3dlZDogJ3swfSBmaWxlKHMpIGFsbG93ZWQnLFxuICAgIGFsbG93ZWRGb3JtYXRzOiAnQWNjZXB0ZWQgZmlsZSBmb3JtYXRzOiB7MH0uJyxcbiAgICBhbGxvd2VkRmlsZVNpemVSYW5nZTogJ1NpemUgbGltaXQgcGVyIGZpbGU6IGZyb20gezB9IHRvIHsxfScsXG4gICAgbWF4RmlsZVNpemVBbGxvd2VkOiAnU2l6ZSBsaW1pdCBwZXIgZmlsZTogezB9IG1heGltdW0nLFxuICAgIG1pbkZpbGVTaXplQWxsb3dlZDogJ1NpemUgbGltaXQgcGVyIGZpbGU6IHswfSBtaW5pbXVtJyxcbiAgICBlcnJvck9jY3VycmVkOiAnQW4gZXJyb3IgaGFzIG9jY3VycmVkJyxcbiAgICBzZW50V2l0aFN1Y2Nlc3M6ICdTZW50IHdpdGggc3VjY2VzcydcbiAgfSxcbiAgZXM6IDxQb1VwbG9hZExpdGVyYWxzPntcbiAgICBmaWxlczogJ2FyY2hpdm9zJyxcbiAgICBmb2xkZXJzOiAnY2FycGV0YXMnLFxuICAgIHNlbGVjdEZpbGU6ICdTZWxlY2Npb25hciBhcmNoaXZvJyxcbiAgICBzZWxlY3RGaWxlczogJ1NlbGVjY2lvbmFyIGFyY2hpdm9zJyxcbiAgICBzZWxlY3RGb2xkZXI6ICdTZWxlY2Npb25hciBjYXJwZXRhJyxcbiAgICBzdGFydFNlbmRpbmc6ICdJbmljaWFyIGNhcmdhJyxcbiAgICBkcmFnRmlsZXNIZXJlOiAnQXJyYXN0cmEgbG9zIGFyY2hpdm9zIGFxdcOtJyxcbiAgICBkcmFnRm9sZGVyc0hlcmU6ICdBcnJhc3RyYSBsYXMgY2FycGV0YXMgYXF1w60nLFxuICAgIHNlbGVjdEZpbGVzT25Db21wdXRlcjogJ28gc2VsZWNjaW9uYSBsb3MgYXJjaGl2b3MgZW4gdHUgY29tcHV0YWRvcmEnLFxuICAgIHNlbGVjdEZvbGRlck9uQ29tcHV0ZXI6ICdvIHNlbGVjY2lvbmEgbGEgY2FycGV0YSBlbiB0dSBjb21wdXRhZG9yYScsXG4gICAgZHJvcEZpbGVzSGVyZTogJ0RlamEgbG9zIGFyY2hpdm9zIGFxdcOtJyxcbiAgICBkcm9wRm9sZGVyc0hlcmU6ICdEZWphIGxhcyBjYXJwZXRhcyBhcXXDrScsXG4gICAgaW52YWxpZERyb3BBcmVhOiAnTG9zIHswfSBubyBzZSBpbnNlcnRhcm9uIGVuIGxhIHViaWNhY2nDs24gY29ycmVjdGEnLFxuICAgIGludmFsaWRGaWxlVHlwZTogJ0Vycm9yIGFsIGNhcmdhciB7MH0gYXJjaGl2byAocykgeWEgcXVlIG5vIGVzIGVsIHRpcG8gZGUgYXJjaGl2byBwZXJtaXRpZG8nLFxuICAgIGludmFsaWRBbW91bnQ6ICdFcnJvciBhbCBjYXJnYXIgezB9IGFyY2hpdm8gKHMpIHlhIHF1ZSBleGNlZGUgbGEgY2FudGlkYWQgbGltaXRlIGRlIGFyY2hpdm9zLicsXG4gICAgaW52YWxpZEZvcm1hdDogJ0Vycm9yIGFsIGNhcmdhciB7MH0gYXJjaGl2byAocykgeWEgcXVlIG5vIGNvaW5jaWRlIGNvbiBlbCBmb3JtYXRvIChzKTogezF9LicsXG4gICAgaW52YWxpZFNpemU6ICdFcnJvciBhbCBjYXJnYXIgezB9IGFyY2hpdm8gKHMpIHlhIHF1ZSBubyBjdW1wbGUgY29uIGVsIHRhbWHDsW8gcGVybWl0aWRvOiBkZXNkZSB7MX0gaGFzdGEgezJ9LicsXG4gICAgbnVtYmVyT2ZGaWxlc0FsbG93ZWQ6ICd7MH0gYXJjaGl2byhzKSBwZXJtaXRpZG8ocyknLFxuICAgIGFsbG93ZWRGb3JtYXRzOiAnRm9ybWF0b3MgYWNlcHRhZG9zOiB7MH0uJyxcbiAgICBhbGxvd2VkRmlsZVNpemVSYW5nZTogJ0xpbWl0ZSBkZSB0YW1hw7FvIGRlIGFyY2hpdm86IGRlc2RlIHswfSBoYXN0YSB7MX0nLFxuICAgIG1heEZpbGVTaXplQWxsb3dlZDogJ0xpbWl0ZSBkZSB0YW1hw7FvIGRlIGFyY2hpdm86IGhhc3RhIHswfScsXG4gICAgbWluRmlsZVNpemVBbGxvd2VkOiAnTGltaXRlIGRlIHRhbWHDsW8gZGUgYXJjaGl2bzogbWluaW1vIHswfScsXG4gICAgZXJyb3JPY2N1cnJlZDogJ09jdXJyaW8gdW4gZXJyb3InLFxuICAgIHNlbnRXaXRoU3VjY2VzczogJ0VudmlhZG8gY29uIMOpeGl0bydcbiAgfSxcbiAgcHQ6IDxQb1VwbG9hZExpdGVyYWxzPntcbiAgICBmaWxlczogJ2FycXVpdm9zJyxcbiAgICBmb2xkZXJzOiAnZGlyZXTDs3Jpb3MnLFxuICAgIHNlbGVjdEZpbGU6ICdTZWxlY2lvbmFyIGFycXVpdm8nLFxuICAgIHNlbGVjdEZpbGVzOiAnU2VsZWNpb25hciBhcnF1aXZvcycsXG4gICAgc2VsZWN0Rm9sZGVyOiAnU2VsZWNpb25hciBwYXN0YScsXG4gICAgc3RhcnRTZW5kaW5nOiAnSW5pY2lhciBlbnZpbycsXG4gICAgZHJhZ0ZpbGVzSGVyZTogJ0FycmFzdGUgb3MgYXJxdWl2b3MgYXF1aScsXG4gICAgZHJhZ0ZvbGRlcnNIZXJlOiAnQXJyYXN0ZSBhcyBwYXN0YXMgYXF1aScsXG4gICAgc2VsZWN0RmlsZXNPbkNvbXB1dGVyOiAnb3Ugc2VsZWNpb25lIG9zIGFycXVpdm9zIG5vIGNvbXB1dGFkb3InLFxuICAgIHNlbGVjdEZvbGRlck9uQ29tcHV0ZXI6ICdvdSBzZWxlY2lvbmUgYSBwYXN0YSBubyBjb21wdXRhZG9yJyxcbiAgICBkcm9wRmlsZXNIZXJlOiAnU29sdGUgb3MgYXJxdWl2b3MgYXF1aScsXG4gICAgZHJvcEZvbGRlcnNIZXJlOiAnU29sdGUgYXMgcGFzdGFzIGFxdWknLFxuICAgIGludmFsaWREcm9wQXJlYTogJ09zIHswfSBuw6NvIGZvcmFtIGluc2VyaWRvcyBubyBsb2NhbCBjb3JyZXRvJyxcbiAgICBpbnZhbGlkRmlsZVR5cGU6ICdGYWxoYSBhbyBjYXJyZWdhciB7MH0gYXJxdWl2byAocyksIHBvaXMgbsOjbyDDqSBvIHRpcG8gZGUgYXJxdWl2byBwZXJtaXRpZG8nLFxuICAgIGludmFsaWRBbW91bnQ6ICdGYWxoYSBhbyBjYXJyZWdhciB7MH0gYXJxdWl2byhzKSwgcG9pcyBleGNlZGUobSkgYSBxdWFudGlkYWRlIGxpbWl0ZSBkZSBhcnF1aXZvcy4nLFxuICAgIGludmFsaWRGb3JtYXQ6ICdGYWxoYSBhbyBjYXJyZWdhciB7MH0gYXJxdWl2byhzKSwgcG9pcyBuw6NvIGNvcnJlc3BvbmRlKG0pIGFvKHMpIGZvcm1hdG8ocyk6IHsxfS4nLFxuICAgIGludmFsaWRTaXplOiAnRmFsaGEgYW8gY2FycmVnYXIgezB9IGFycXVpdm8ocyksIHBvaXMgbsOjbyBhdGVuZGUgYW8gdGFtYW5obyBwZXJtaXRpZG86IHsxfSBhdMOpIHsyfS4nLFxuICAgIG51bWJlck9mRmlsZXNBbGxvd2VkOiAnUXVhbnRpZGFkZSBtw6F4aW1hOiB7MH0gYXJxdWl2byhzKScsXG4gICAgYWxsb3dlZEZvcm1hdHM6ICdGb3JtYXRvcyBhZG90YWRvczogezB9LicsXG4gICAgYWxsb3dlZEZpbGVTaXplUmFuZ2U6ICdMaW1pdGUgZGUgdGFtYW5obyBwb3IgYXJxdWl2bzogZGUgezB9IGF0w6kgezF9JyxcbiAgICBtYXhGaWxlU2l6ZUFsbG93ZWQ6ICdMaW1pdGUgZGUgdGFtYW5obyBwb3IgYXJxdWl2bzogYXTDqSB7MH0nLFxuICAgIG1pbkZpbGVTaXplQWxsb3dlZDogJ0xpbWl0ZSBkZSB0YW1hbmhvIHBvciBhcnF1aXZvOiBubyBtw61uaW1vIHswfScsXG4gICAgZXJyb3JPY2N1cnJlZDogJ09jb3JyZXUgdW0gZXJybycsXG4gICAgc2VudFdpdGhTdWNjZXNzOiAnRW52aWFkbyBjb20gc3VjZXNzbydcbiAgfSxcbiAgcnU6IDxQb1VwbG9hZExpdGVyYWxzPntcbiAgICBmaWxlczogJ9GE0LDQudC70YsnLFxuICAgIGZvbGRlcnM6ICfQv9Cw0L/QutC4INGBINGE0LDQudC70LDQvNC4JyxcbiAgICBzZWxlY3RGaWxlOiAn0JLRi9Cx0LXRgNC40YLQtSDRhNCw0LnQuycsXG4gICAgc2VsZWN0RmlsZXM6ICfQktGL0LHQtdGA0LjRgtC1INGE0LDQudC70YsnLFxuICAgIHNlbGVjdEZvbGRlcjogJ9CS0YvQsdC10YDQuNGC0LUg0L/QsNC/0LrRgyDRgSDRhNCw0LnQu9Cw0LzQuCcsXG4gICAgc3RhcnRTZW5kaW5nOiAn0J3QsNGH0LDRgtGMINC30LDQs9GA0YPQt9C60YMnLFxuICAgIGRyYWdGaWxlc0hlcmU6ICfQn9C10YDQtdGC0LDRidC40YLQtSDRhNCw0LnQu9GLINGB0Y7QtNCwJyxcbiAgICBkcmFnRm9sZGVyc0hlcmU6ICfQn9C10YDQtdGC0LDRidC40YLQtSDRgdGO0LTQsCDQv9Cw0L/QutC4JyxcbiAgICBzZWxlY3RGaWxlc09uQ29tcHV0ZXI6ICfQuNC70Lgg0LLRi9Cx0LXRgNC40YLQtSDRhNCw0LnQu9GLINC90LAg0LrQvtC80L/RjNGO0YLQtdGA0LUnLFxuICAgIHNlbGVjdEZvbGRlck9uQ29tcHV0ZXI6ICfQuNC70Lgg0LLRi9Cx0LXRgNC40YLQtSDQv9Cw0L/QutGDINC90LAg0LLQsNGI0LXQvCDQutC+0LzQv9GM0Y7RgtC10YDQtScsXG4gICAgZHJvcEZpbGVzSGVyZTogJ9Ce0YHRgtCw0LLRjNGC0LUg0YTQsNC50LvRiyDQt9C00LXRgdGMJyxcbiAgICBkcm9wRm9sZGVyc0hlcmU6ICfQn9C10YDQtdGC0LDRidC40YLQtSDRgdGO0LTQsCDQv9Cw0L/QutC4JyxcbiAgICBpbnZhbGlkRHJvcEFyZWE6ICd7MH0g0L3QtSDQsdGL0LvQuCDQstGB0YLQsNCy0LvQtdC90Ysg0LIg0L/RgNCw0LLQuNC70YzQvdC+0Lwg0LzQtdGB0YLQtS4nLFxuICAgIGludmFsaWRGaWxlVHlwZTogJ9Cd0LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNCz0YDRg9C30LjRgtGMINGE0LDQudC70YsgezB9LCDRgtCw0Log0LrQsNC6INGN0YLQviDQvdC10LLQtdGA0L3Ri9C5INGC0LjQvyDRhNCw0LnQu9CwJyxcbiAgICBpbnZhbGlkQW1vdW50OiAnTsOjbyBmb2kgcG9zc8OtdmVsIGNhcnJlZ2FyIG9zIGFycXVpdm9zIHswfSBwb3JxdWUgZWxlcyBleGNlZGVyYW0gbyBsaW1pdGUgZGUgYXJxdWl2b3MuJyxcbiAgICBpbnZhbGlkRm9ybWF0OiAn0J3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0LPRgNGD0LfQuNGC0Ywg0YTQsNC50LvRiyB7MH0sINGC0LDQuiDQutCw0Log0L7QvdC4INC90LUg0YHQvtC+0YLQstC10YLRgdGC0LLRg9GO0YIg0YTQvtGA0LzQsNGC0YMgKNCw0LwpOiB7MX0uJyxcbiAgICBpbnZhbGlkU2l6ZTogJ9Cd0LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNCz0YDRg9C30LjRgtGMINGE0LDQudC70YsgezB9LCDQv9C+0YHQutC+0LvRjNC60YMg0L7QvdC4INC90LUg0YHQvtC+0YLQstC10YLRgdGC0LLRg9GO0YIg0YDQsNC30YDQtdGI0LXQvdC90L7QvNGDINGA0LDQt9C80LXRgNGDOiDQvtGCIHsxfSDQtNC+IHsyfS4nLFxuICAgIG51bWJlck9mRmlsZXNBbGxvd2VkOiAn0JzQsNC60YHQuNC80LDQu9GM0L3QvtC1INC60L7Qu9C40YfQtdGB0YLQstC+OiB7MH0g0YTQsNC50LvQvtCyJyxcbiAgICBhbGxvd2VkRm9ybWF0czogJ9Ck0L7RgNC80LDRgtGLINC/0YDQuNC90Y/RgtGLOiB7MH0uJyxcbiAgICBhbGxvd2VkRmlsZVNpemVSYW5nZTogJ9Ce0LPRgNCw0L3QuNGH0LXQvdC40LUg0YDQsNC30LzQtdGA0LAg0YTQsNC50LvQsDog0L7RgiB7MH0g0LTQviB7MX0nLFxuICAgIG1heEZpbGVTaXplQWxsb3dlZDogJ9Ce0LPRgNCw0L3QuNGH0LXQvdC40LUg0YDQsNC30LzQtdGA0LAg0YTQsNC50LvQsDog0LTQviB7MH0nLFxuICAgIG1pbkZpbGVTaXplQWxsb3dlZDogJ9Ce0LPRgNCw0L3QuNGH0LXQvdC40LUg0YDQsNC30LzQtdGA0LAg0YTQsNC50LvQsDog0L3QtSDQvNC10L3QtdC1IHswfScsXG4gICAgZXJyb3JPY2N1cnJlZDogJ9Cf0YDQvtC40LfQvtGI0LvQsCDQvtGI0LjQsdC60LAuJyxcbiAgICBzZW50V2l0aFN1Y2Nlc3M6ICfQo9GB0L/QtdGI0L3QviDQvtGC0L/RgNCw0LLQu9C10L3QvidcbiAgfVxufTtcblxuY29uc3QgcG9VcGxvYWRGb3JtRmllbGREZWZhdWx0ID0gJ2ZpbGVzJztcblxuY29uc3QgcG9VcGxvYWRNYXhGaWxlU2l6ZSA9IDMxNDU3MjgwOyAvLyAzME1CXG5jb25zdCBwb1VwbG9hZE1pbkZpbGVTaXplID0gMDtcblxuLyoqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBPIGNvbXBvbmVudGUgYHBvLXVwbG9hZGAgcGVybWl0ZSBxdWUgbyB1c3XDoXJpbyBlbnZpZSBhcnF1aXZvKHMpIGFvIHNlcnZpZG9yIGUgYWNvbXBhbmhlIG8gcHJvZ3Jlc3NvLlxuICogRXN0ZSBjb21wb25lbnRlIHRhbWLDqW0gcG9zc2liaWxpdGEgYWxndW1hcyBjb25maWd1cmHDp8O1ZXMgY29tbzpcbiAqICDigJMgRW52aW8gZGUgZGlyZXTDs3Jpb3MsIG9uZGUgZWxlIGFjZXNzYSBvIGRpcmV0w7NyaW8gc2VsZWNpb25hZG8gYXNzaW0gY29tbyBzZXVzIHN1Yi1kaXJldMOzcmlvcztcbiAqICAtIE3Dumx0aXBsYSBzZWxlw6fDo28sIG9uZGUgbyB1c3XDoXJpbyBwb2RlIGVudmlhciBtYWlzIGRlIHVtIGFycXVpdm8gYW8gc2Vydmlkb3IuXG4gKiAgLSBBdXRvIGVudmlvLCBvbmRlIG8gYXJxdWl2byDDqSBlbnZpYWRvIGltZWRpYXRhbWVudGUgYXDDs3MgYSBzZWxlw6fDo28gZG8gdXN1w6FyaW8sIG7Do28gbmVjZXNzaXRhbmRvIHF1ZSBvIHVzdcOhcmlvXG4gKiBjbGlxdWUgZW0gZW52aWFyLlxuICogIC0gUmVzdHJpw6fDtWVzIGRlIGZvcm1hdG9zIGRlIGFycXVpdm8gZSB0YW1hbmhvLlxuICogIC0gRnVuw6fDo28gZGUgc3VjZXNzbyBxdWUgc2Vyw6EgZGlzcGFyYWRhIHF1YW5kbyBvcyBhcnF1aXZvcyBmb3JlbSBlbnZpYWRvcyBjb20gc3VjZXNzby5cbiAqICAtIEZ1bsOnw6NvIGRlIGVycm8gcXVlIHNlcsOhIGRpc3BhcmFkYSBxdWFuZG8gaG91dmVyIGVycm8gbm8gZW52aW8gZG9zIGFycXVpdm9zLlxuICogIC0gUGVybWl0ZSBoYWJpbGl0YXIgdW1hIMOhcmVhIG9uZGUgb3MgYXJxdWl2b3MgcG9kZW0gc2VyIGFycmFzdGFkb3MuXG4gKi9cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFBvVXBsb2FkQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBWYWxpZGF0b3Ige1xuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBBcGxpY2EgZm9jbyBubyBlbGVtZW50byBhbyBzZXIgaW5pY2lhZG8uXG4gICAqXG4gICAqID4gQ2FzbyBtYWlzIGRlIHVtIGVsZW1lbnRvIHNlamEgY29uZmlndXJhZG8gY29tIGVzc2EgcHJvcHJpZWRhZGUsIGFwZW5hcyBvIMO6bHRpbW8gZWxlbWVudG8gZGVjbGFyYWRvIGNvbSBlbGEgdGVyw6EgbyBmb2NvLlxuICAgKlxuICAgKiBAZGVmYXVsdCBgZmFsc2VgXG4gICAqL1xuICBASW5wdXQoeyBhbGlhczogJ3AtYXV0by1mb2N1cycsIHRyYW5zZm9ybTogY29udmVydFRvQm9vbGVhbiB9KSBhdXRvRm9jdXM6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBEZWZpbmUgZW0gKnBpeGVscyogYSBhbHR1cmEgZGEgw6FyZWEgb25kZSBwb2RlbSBzZXIgYXJyYXN0YWRvcyBvcyBhcnF1aXZvcy4gQSBhbHR1cmEgbcOtbmltYSBhY2VpdGEgw6kgYDE2MHB4YC5cbiAgICpcbiAgICogPiBFc3RhIHByb3ByaWVkYWRlIGZ1bmNpb25hIHNvbWVudGUgc2UgYSBwcm9wcmllZGFkZSBgcC1kcmFnLWRyb3BgIGVzdGl2ZXIgaGFiaWxpdGFkYS5cbiAgICpcbiAgICogQGRlZmF1bHQgYDMyMGBcbiAgICovXG4gIEBJbnB1dCgncC1kcmFnLWRyb3AtaGVpZ2h0JykgZHJhZ0Ryb3BIZWlnaHQ6IG51bWJlcjtcblxuICAvKiogUsOzdHVsbyBkbyBjYW1wby4gKi9cbiAgQElucHV0KCdwLWxhYmVsJykgbGFiZWw/OiBzdHJpbmc7XG5cbiAgLyoqIFRleHRvIGRlIGFwb2lvIHBhcmEgbyBjYW1wby4gKi9cbiAgQElucHV0KCdwLWhlbHAnKSBoZWxwPzogc3RyaW5nO1xuXG4gIC8qKiBVUkwgcXVlIGRldmUgc2VyIGZlaXRhIGEgcmVxdWlzacOnw6NvIGNvbSBvcyBhcnF1aXZvcyBzZWxlY2lvbmFkb3MuICovXG4gIEBJbnB1dCgncC11cmwnKSB1cmw6IHN0cmluZztcblxuICAvKiogRGVmaW5lIG8gdmFsb3IgZG8gYXRyaWJ1dG8gYG5hbWVgIGRvIGNvbXBvbmVudGUuICovXG4gIEBJbnB1dCgnbmFtZScpIG5hbWU6IHN0cmluZyA9ICdmaWxlJztcblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBEZWZpbmUgc2UgbyBlbnZpbyBkbyBhcnF1aXZvIHNlcsOhIGF1dG9tw6F0aWNvIGFvIHNlbGVjaW9uYXIgbyBtZXNtby5cbiAgICpcbiAgICogPiBFc3RhIHByb3ByaWVkYWRlIGZ1bmNpb25hIHNvbWVudGUgc2UgYSBwcm9wcmllZGFkZSBgcC11cmxgIHRpdmVyIHVtIHZhbG9yIGF0cmlidcOtZG8uXG4gICAqXG4gICAqIEBkZWZhdWx0IGBmYWxzZWBcbiAgICovXG4gIEBJbnB1dCgncC1hdXRvLXVwbG9hZCcpIGF1dG9VcGxvYWQ/OiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogRGVmaW5lIHNlIGEgaW5kaWNhw6fDo28gZGUgY2FtcG8gb3BjaW9uYWwgc2Vyw6EgZXhpYmlkYS5cbiAgICpcbiAgICogPiBOw6NvIHNlcsOhIGV4aWJpZGEgYSBpbmRpY2HDp8OjbyBzZTpcbiAgICogIC0gTyBjYW1wbyBjb250ZXIgYHAtcmVxdWlyZWRgO1xuICAgKiAgLSBOw6NvIHBvc3N1aXIgYHAtaGVscGAgZS9vdSBgcC1sYWJlbGAuXG4gICAqXG4gICAqIEBkZWZhdWx0IGBmYWxzZWBcbiAgICovXG4gIEBJbnB1dCgncC1vcHRpb25hbCcpIG9wdGlvbmFsOiBib29sZWFuO1xuXG4gIC8qKiBPYmpldG8gcXVlIGNvbnTDqW0gb3MgY2FiZcOnYWxob3MgcXVlIHNlcsOhIGVudmlhZG8gbmEgcmVxdWlzacOnw6NvIGRvcyBhcnF1aXZvcy4gKi9cbiAgQElucHV0KCdwLWhlYWRlcnMnKSBoZWFkZXJzOiB7IFtuYW1lOiBzdHJpbmddOiBzdHJpbmcgfCBBcnJheTxzdHJpbmc+IH07XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogRGVmaW5lIHNlIGEgcHJvcHJpZWRhZGUgYHAtdXJsYCDDqSBvYnJpZ2F0w7NyaWEuXG4gICAqXG4gICAqIENhc28gYSBwcm9wcmllZGFkZSBzZWphIGRlZmluaWRhIGNvbW8gYGZhbHNlYDpcbiAgICogLSBvIGJvdMOjbyBkZSBcIlNlbGVjaW9uYXIgYXJxdWl2b1wiIGZpY2Fyw6EgaGFiaWxpdGFkbyBtZXNtbyBzZW0gYSBwcm9wcmllZGFkZSBgcC11cmxgIGRlZmluaWRhLlxuICAgKiAtIG8gYm90w6NvIFwiSW5pY2lhciBlbnZpb1wiIGZpY2Fyw6Egb2N1bHRvIGF0w6kgcXVlIGEgcHJvcHJpZWRhZGUgYHAtdXJsYCBzZWphIGRlZmluaWRhLlxuICAgKlxuICAgKiA+IFNlIHV0aWxpemFkYSBjb20gYSBwcm9wcmllZGFkZSBgcC1hdXRvLXVwbG9hZGAgZGVmaW5pZGEgY29tbyBgdHJ1ZWAgc2Vyw6EgbmVjZXNzw6FyaW8gZGVmaW5pciBhIHByb3ByaWVkYWRlIGBwLXVybGAuXG4gICAqXG4gICAqIEBkZWZhdWx0IGB0cnVlYFxuICAgKi9cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnAtcmVxdWlyZWQtdXJsJylcbiAgQElucHV0KHsgYWxpYXM6ICdwLXJlcXVpcmVkLXVybCcsIHRyYW5zZm9ybTogY29udmVydFRvQm9vbGVhbiB9KVxuICByZXF1aXJlZFVybDogYm9vbGVhbiA9IHRydWU7XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogRnVuw6fDo28gcXVlIHNlcsOhIGV4ZWN1dGFkYSBubyBtb21lbnRvIGRlIHJlYWxpemFyIG8gZW52aW8gZG8gYXJxdWl2byxcbiAgICogb25kZSBzZXLDoSBwb3Nzw612ZWwgYWRpY2lvbmFyIGluZm9ybWHDp8O1ZXMgYW8gcGFyw6JtZXRybyBxdWUgc2Vyw6EgZW52aWFkbyBuYSByZXF1aXNpw6fDo28uXG4gICAqIMOJIHBhc3NhZG8gcG9yIHBhcsOibWV0cm8gdW0gb2JqZXRvIGNvbSBvIGFycXVpdm8gZSBhIHByb3ByaWVkYWRlIGRhdGEgbmVzdGEgcHJvcHJpZWRhZGUgcG9kZSBzZXIgaW5mb3JtYWRvIGFsZ3VtIGRhZG8sXG4gICAqIHF1ZSBzZXLDoSBlbnZpYWRvIGVtIGNvbmp1bnRvIGNvbSBvIGFycXVpdm8gbmEgcmVxdWlzacOnw6NvLCBwb3IgZXhlbXBsbzpcbiAgICpcbiAgICogYGBgXG4gICAqICAgZXZlbnQuZGF0YSA9IHtpZDogJ2lkIGRvIHVzdcOhcmlvJ307XG4gICAqIGBgYFxuICAgKi9cbiAgQE91dHB1dCgncC11cGxvYWQnKSBvblVwbG9hZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBFdmVudG8gc2Vyw6EgZGlzcGFyYWRvIHF1YW5kbyBvY29ycmVyIGFsZ3VtIGVycm8gbm8gZW52aW8gZG8gYXJxdWl2by5cbiAgICogPiBQb3IgcGFyw6JtZXRybyBzZXLDoSBwYXNzYWRvIG8gb2JqZXRvIGRvIHJldG9ybm8gcXVlIMOpIGRvIHRpcG8gYEh0dHBFcnJvclJlc3BvbnNlYC5cbiAgICovXG4gIEBPdXRwdXQoJ3AtZXJyb3InKSBvbkVycm9yOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIEV2ZW50byBzZXLDoSBkaXNwYXJhZG8gcXVhbmRvIG8gZW52aW8gZG8gYXJxdWl2byBmb3IgcmVhbGl6YWRvIGNvbSBzdWNlc3NvLlxuICAgKiA+IFBvciBwYXLDom1ldHJvIHNlcsOhIHBhc3NhZG8gbyBvYmpldG8gZG8gcmV0b3JubyBxdWUgw6kgZG8gdGlwbyBgSHR0cFJlc3BvbnNlYC5cbiAgICovXG4gIEBPdXRwdXQoJ3Atc3VjY2VzcycpIG9uU3VjY2VzczogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBGdW7Dp8OjbyBwYXJhIGF0dWFsaXphciBvIG5nTW9kZWwgZG8gY29tcG9uZW50ZSwgbmVjZXNzw6FyaW8gcXVhbmRvIG7Do28gZm9yIHV0aWxpemFkbyBkZW50cm8gZGEgKnRhZyogYGZvcm1gLlxuICAgKlxuICAgKiBOYSB2ZXJzw6NvIDEyLjIuMCBkbyBBbmd1bGFyIGEgdmVyaWZpY2HDp8OjbyBgc3RyaWN0VGVtcGxhdGVzYCB2ZW0gdHJ1ZSBjb21vIGRlZmF1bHQuIFBvcnRhbnRvLCBwYXJhIHV0aWxpemFyXG4gICAqIHR3by13YXkgYmluZGluZyBubyBjb21wb25lbnRlIGRldmUgc2UgdXRpbGl6YXIgZGEgc2VndWludGUgZm9ybWE6XG4gICAqXG4gICAqIGBgYFxuICAgKiA8cG8tdXBsb2FkIC4uLiBbbmdNb2RlbF09XCJVcGxvYWRNb2RlbFwiIChuZ01vZGVsQ2hhbmdlKT1cInVwbG9hZE1vZGVsID0gJGV2ZW50XCI+IDwvcG8tdXBsb2FkPlxuICAgKiBgYGBcbiAgICpcbiAgICovXG4gIEBPdXRwdXQoJ25nTW9kZWxDaGFuZ2UnKSBuZ01vZGVsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIGFsbG93ZWRFeHRlbnNpb25zOiBzdHJpbmc7XG4gIGN1cnJlbnRGaWxlczogQXJyYXk8UG9VcGxvYWRGaWxlPjtcblxuICBjYW5IYW5kbGVEaXJlY3Rvcnk6IGJvb2xlYW47XG4gIG9uTW9kZWxDaGFuZ2U6IGFueTtcblxuICBwcm90ZWN0ZWQgZXh0ZW5zaW9uTm90QWxsb3dlZCA9IDA7XG4gIHByb3RlY3RlZCBxdWFudGl0eU5vdEFsbG93ZWQgPSAwO1xuICBwcm90ZWN0ZWQgc2l6ZU5vdEFsbG93ZWQgPSAwO1xuICBwcm90ZWN0ZWQgb25Nb2RlbFRvdWNoZWQ6IGFueSA9IG51bGw7XG5cbiAgcHJpdmF0ZSBfZGlyZWN0b3J5PzogYm9vbGVhbjtcbiAgcHJpdmF0ZSBfZGlzYWJsZWQ/OiBib29sZWFuO1xuICBwcml2YXRlIF9kcmFnRHJvcD86IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBfZmlsZVJlc3RyaWN0aW9ucz86IFBvVXBsb2FkRmlsZVJlc3RyaWN0aW9ucztcbiAgcHJpdmF0ZSBfZm9ybUZpZWxkPzogc3RyaW5nO1xuICBwcml2YXRlIF9oaWRlUmVzdHJpY3Rpb25zSW5mbz86IGJvb2xlYW47XG4gIHByaXZhdGUgX2hpZGVTZWxlY3RCdXR0b24/OiBib29sZWFuO1xuICBwcml2YXRlIF9oaWRlU2VuZEJ1dHRvbj86IGJvb2xlYW47XG4gIHByaXZhdGUgX2lzTXVsdGlwbGU/OiBib29sZWFuO1xuICBwcml2YXRlIF9saXRlcmFscz86IGFueTtcbiAgcHJpdmF0ZSBfcmVxdWlyZWQ/OiBib29sZWFuO1xuICBwcml2YXRlIGxhbmd1YWdlOiBzdHJpbmc7XG4gIHByaXZhdGUgdmFsaWRhdG9yQ2hhbmdlOiBhbnk7XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogUGVybWl0ZSBhIHNlbGXDp8OjbyBkZSBkaXJldMOzcmlvcyBjb250ZW5kbyB1bSBvdSBtYWlzIGFycXVpdm9zIHBhcmEgZW52aW8uXG4gICAqXG4gICAqID4gQSBoYWJpbGl0YcOnw6NvIGRlc3RhIHByb3ByaWVkYWRlIHNlIHJlc3RyaW5nZSBhcGVuYXMgw6Agc2VsZcOnw6NvIGRlIGRpcmV0w7NyaW9zLlxuICAgKlxuICAgKiA+IERlZmluacOnw6NvIG7Do28gc3Vwb3J0YWRhIHBlbG8gYnJvd3NlciAqKkludGVybmV0IEV4cGxvcmVyKiosIHRvZGF2aWEgc2Vyw6EgcG9zc8OtdmVsIGEgc2VsZcOnw6NvIGRlIGFycXVpdm9zIHBhZHLDo28uXG4gICAqXG4gICAqIEBkZWZhdWx0IGBmYWxzZWBcbiAgICovXG4gIEBJbnB1dCgncC1kaXJlY3RvcnknKSBzZXQgZGlyZWN0b3J5KHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZGlyZWN0b3J5ID0gY29udmVydFRvQm9vbGVhbih2YWx1ZSk7XG5cbiAgICB0aGlzLmNhbkhhbmRsZURpcmVjdG9yeSA9IHRoaXMuX2RpcmVjdG9yeSAmJiAhaXNJRSgpICYmICFpc01vYmlsZSgpO1xuICAgIHRoaXMuc2V0RGlyZWN0b3J5QXR0cmlidXRlKHRoaXMuY2FuSGFuZGxlRGlyZWN0b3J5KTtcbiAgfVxuXG4gIGdldCBkaXJlY3RvcnkoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2RpcmVjdG9yeTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIEV4aWJlIGEgw6FyZWEgb25kZSDDqSBwb3Nzw612ZWwgYXJyYXN0YXIgZSBzZWxlY2lvbmFyIG9zIGFycXVpdm9zLiBRdWFuZG8gZXN0aXZlciBkZWZpbmlkYSwgb21pdGUgbyBib3TDo28gcGFyYSBzZWxlw6fDo28gZGUgYXJxdWl2b3NcbiAgICogYXV0b21hdGljYW1lbnRlLlxuICAgKlxuICAgKiA+IFJlY29tZW5kYW1vcyB1dGlsaXphciBhcGVuYXMgdW0gYHBvLXVwbG9hZGAgY29tIGVzdGEgZnVuY2lvbmFsaWRhZGUgcG9yIHRlbGEuXG4gICAqXG4gICAqIEBkZWZhdWx0IGBmYWxzZWBcbiAgICovXG4gIEBJbnB1dCgncC1kcmFnLWRyb3AnKSBzZXQgZHJhZ0Ryb3AodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kcmFnRHJvcCA9IGNvbnZlcnRUb0Jvb2xlYW4odmFsdWUpO1xuICB9XG5cbiAgZ2V0IGRyYWdEcm9wKCkge1xuICAgIHJldHVybiB0aGlzLl9kcmFnRHJvcDtcbiAgfVxuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIE9jdWx0YSB2aXN1YWxtZW50ZSBhcyBpbmZvcm1hw6fDtWVzIGRlIHJlc3RyacOnw7VlcyBwYXJhIG8gdXBsb2FkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBgZmFsc2VgXG4gICAqL1xuICBASW5wdXQoJ3AtaGlkZS1yZXN0cmljdGlvbnMtaW5mbycpIHNldCBoaWRlUmVzdHJpY3Rpb25zSW5mbyh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2hpZGVSZXN0cmljdGlvbnNJbmZvID0gY29udmVydFRvQm9vbGVhbih2YWx1ZSk7XG4gIH1cblxuICBnZXQgaGlkZVJlc3RyaWN0aW9uc0luZm8oKSB7XG4gICAgcmV0dXJuIHRoaXMuX2hpZGVSZXN0cmljdGlvbnNJbmZvO1xuICB9XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogT21pdGUgbyBib3TDo28gZGUgc2VsZcOnw6NvIGRlIGFycXVpdm9zLlxuICAgKlxuICAgKiA+IENhc28gbyB2YWxvciBkZWZpbmlkbyBzZWphIGB0cnVlYCwgY2FiZXLDoSBhbyBkZXNlbnZvbHZlZG9yIGEgcmVzcG9uc2FiaWxpZGFkZVxuICAgKiBwZWxhIGNoYW1hZGEgZG8gbcOpdG9kbyBgc2VsZWN0RmlsZXMoKWAgcGFyYSBzZWxlw6fDo28gZGUgYXJxdWl2b3MuXG4gICAqXG4gICAqIEBkZWZhdWx0IGBmYWxzZWBcbiAgICovXG4gIEBJbnB1dCgncC1oaWRlLXNlbGVjdC1idXR0b24nKSBzZXQgaGlkZVNlbGVjdEJ1dHRvbih2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2hpZGVTZWxlY3RCdXR0b24gPSBjb252ZXJ0VG9Cb29sZWFuKHZhbHVlKTtcbiAgfVxuICBnZXQgaGlkZVNlbGVjdEJ1dHRvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5faGlkZVNlbGVjdEJ1dHRvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIE9taXRlIG8gYm90w6NvIGRlIGVudmlvIGRlIGFycXVpdm9zLlxuICAgKlxuICAgKiA+IENhc28gbyB2YWxvciBkZWZpbmlkbyBzZWphIGB0cnVlYCwgY2FiZXLDoSBhbyBkZXNlbnZvbHZlZG9yIGEgcmVzcG9uc2FiaWxpZGFkZVxuICAgKiBwZWxhIGNoYW1hZGEgZG8gbcOpdG9kbyBgc2VuZEZpbGVzKClgIHBhcmEgZW52aW8gZG8ocykgYXJxdWl2byhzKSBzZWxlY2lvbmFkbyhzKS5cbiAgICpcbiAgICogQGRlZmF1bHQgYGZhbHNlYFxuICAgKi9cbiAgQElucHV0KCdwLWhpZGUtc2VuZC1idXR0b24nKSBzZXQgaGlkZVNlbmRCdXR0b24odmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9oaWRlU2VuZEJ1dHRvbiA9IGNvbnZlcnRUb0Jvb2xlYW4odmFsdWUpO1xuICB9XG4gIGdldCBoaWRlU2VuZEJ1dHRvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5faGlkZVNlbmRCdXR0b247XG4gIH1cblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBPYmpldG8gY29tIGFzIGxpdGVyYWlzIHVzYWRhcyBubyBgcG8tdXBsb2FkYC5cbiAgICpcbiAgICogRXhpc3RlbSBkdWFzIG1hbmVpcmFzIGRlIGN1c3RvbWl6YXIgbyBjb21wb25lbnRlOlxuICAgKlxuICAgKiAtIHBhc3NhbmRvIHVtIG9iamV0byBpbXBsZW1lbnRhbmRvIGEgaW50ZXJmYWNlIGBQb1VwbG9hZExpdGVyYWxzYCBjb20gdG9kYXMgYXMgbGl0ZXJhaXMgZGlzcG9uw612ZWlzO1xuICAgKiAtIHBhc3NhbmRvIGFwZW5hcyBhcyBsaXRlcmFpcyBxdWUgZGVzZWphIGN1c3RvbWl6YXI6XG4gICAqIGBgYFxuICAgKiAgY29uc3QgY3VzdG9tTGl0ZXJhbHM6IFBvVXBsb2FkTGl0ZXJhbHMgPSB7XG4gICAqICAgIGZvbGRlcnM6ICdQYXN0YXMnLFxuICAgKiAgICBzZWxlY3RGaWxlOiAnQnVzY2FyIGFycXVpdm8nLFxuICAgKiAgICBzdGFydFNlbmRpbmc6ICdFbnZpYXInXG4gICAqICB9O1xuICAgKiBgYGBcbiAgICpcbiAgICogRSBwYXJhIGNhcnJlZ2FyIGFzIGxpdGVyYWlzIGN1c3RvbWl6YWRhcywgYmFzdGEgYXBlbmFzIHBhc3NhciBvIG9iamV0byBwYXJhIG8gY29tcG9uZW50ZTpcbiAgICpcbiAgICogYGBgXG4gICAqIDxwby11cGxvYWRcbiAgICogICBbcC1saXRlcmFsc109XCJjdXN0b21MaXRlcmFsc1wiPlxuICAgKiA8L3BvLXVwbG9hZD5cbiAgICogYGBgXG4gICAqXG4gICAqID4gTyBvYmpldG8gcGFkcsOjbyBkZSBsaXRlcmFpcyBzZXLDoSB0cmFkdXppZG8gZGUgYWNvcmRvIGNvbSBvIGlkaW9tYSBkbyAqYnJvd3NlciogKHB0LCBlbiwgZXMsIHJ1KS5cbiAgICovXG4gIEBJbnB1dCgncC1saXRlcmFscycpIHNldCBsaXRlcmFscyh2YWx1ZTogUG9VcGxvYWRMaXRlcmFscykge1xuICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIE9iamVjdCAmJiAhKHZhbHVlIGluc3RhbmNlb2YgQXJyYXkpKSB7XG4gICAgICB0aGlzLl9saXRlcmFscyA9IHtcbiAgICAgICAgLi4ucG9VcGxvYWRMaXRlcmFsc0RlZmF1bHRbcG9Mb2NhbGVEZWZhdWx0XSxcbiAgICAgICAgLi4ucG9VcGxvYWRMaXRlcmFsc0RlZmF1bHRbdGhpcy5sYW5ndWFnZV0sXG4gICAgICAgIC4uLnZhbHVlXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9saXRlcmFscyA9IHBvVXBsb2FkTGl0ZXJhbHNEZWZhdWx0W3RoaXMubGFuZ3VhZ2VdO1xuICAgIH1cbiAgfVxuICBnZXQgbGl0ZXJhbHMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2xpdGVyYWxzIHx8IHBvVXBsb2FkTGl0ZXJhbHNEZWZhdWx0W3RoaXMubGFuZ3VhZ2VdO1xuICB9XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogT2JqZXRvIHF1ZSBzZWd1ZSBhIGRlZmluacOnw6NvIGRhIGludGVyZmFjZSBgUG9VcGxvYWRGaWxlUmVzdHJpY3Rpb25zYCxcbiAgICogcXVlIHBvc3NpYmlsaXRhIGRlZmluaXIgdGFtYW5obyBtw6F4aW1vL23DrW5pbW8gZSBleHRlbnPDo28gZG9zIGFycXVpdm9zIHBlcm1pdGlkb3MuXG4gICAqL1xuICBASW5wdXQoJ3AtcmVzdHJpY3Rpb25zJykgc2V0IGZpbGVSZXN0cmljdGlvbnMocmVzdHJpY3Rpb25zOiBQb1VwbG9hZEZpbGVSZXN0cmljdGlvbnMpIHtcbiAgICB0aGlzLl9maWxlUmVzdHJpY3Rpb25zID0gdGhpcy5pbml0UmVzdHJpY3Rpb25zKHJlc3RyaWN0aW9ucyk7XG5cbiAgICB0aGlzLnNldEFsbG93ZWRFeHRlbnNpb25zKHJlc3RyaWN0aW9ucyk7XG4gIH1cblxuICBnZXQgZmlsZVJlc3RyaWN0aW9ucygpOiBQb1VwbG9hZEZpbGVSZXN0cmljdGlvbnMge1xuICAgIHJldHVybiB0aGlzLl9maWxlUmVzdHJpY3Rpb25zO1xuICB9XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogTm9tZSBkbyBjYW1wbyBkZSBmb3JtdWzDoXJpbyBxdWUgc2Vyw6EgZW52aWFkbyBwYXJhIG8gc2VydmnDp28gaW5mb3JtYWRvIG5hIHByb3ByaWVkYWRlIGBwLXVybGAuXG4gICAqXG4gICAqIEBkZWZhdWx0IGBmaWxlc2BcbiAgICovXG4gIEBJbnB1dCgncC1mb3JtLWZpZWxkJykgc2V0IGZvcm1GaWVsZCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fZm9ybUZpZWxkID0gdmFsdWUgJiYgdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyA/IHZhbHVlIDogcG9VcGxvYWRGb3JtRmllbGREZWZhdWx0O1xuXG4gICAgdGhpcy5nZXRVcGxvYWRTZXJ2aWNlKCkuZm9ybUZpZWxkID0gdGhpcy5mb3JtRmllbGQ7XG4gIH1cblxuICBnZXQgZm9ybUZpZWxkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2Zvcm1GaWVsZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIEluZGljYSBxdWUgbyBjYW1wbyBzZXLDoSBkZXNhYmlsaXRhZG8uXG4gICAqL1xuICBASW5wdXQoJ3AtZGlzYWJsZWQnKSBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IGNvbnZlcnRUb0Jvb2xlYW4odmFsdWUpO1xuXG4gICAgdGhpcy52YWxpZGF0ZU1vZGVsKHRoaXMuY3VycmVudEZpbGVzKTtcbiAgfVxuXG4gIGdldCBkaXNhYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gIH1cblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBEZWZpbmUgc2UgcG9kZSBzZWxlY2lvbmFyIG1haXMgZGUgdW0gYXJxdWl2by5cbiAgICpcbiAgICogPiBTZSB1dGlsaXphZGEgYSBgcC1kaXJlY3RvcnlgLCBoYWJpbGl0YS1zZSBhdXRvbWF0aWNhbWVudGUgZXN0YSBwcm9wcmllZGFkZS5cbiAgICovXG4gIEBJbnB1dCgncC1tdWx0aXBsZScpIHNldCBpc011bHRpcGxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5faXNNdWx0aXBsZSA9IGNvbnZlcnRUb0Jvb2xlYW4odmFsdWUpO1xuICB9XG5cbiAgZ2V0IGlzTXVsdGlwbGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuY2FuSGFuZGxlRGlyZWN0b3J5ID8gdHJ1ZSA6IHRoaXMuX2lzTXVsdGlwbGU7XG4gIH1cblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBEZWZpbmUgcXVlIG8gY2FtcG8gc2Vyw6Egb2JyaWdhdMOzcmlvLlxuICAgKlxuICAgKiBAZGVmYXVsdCBgZmFsc2VgXG4gICAqL1xuICBASW5wdXQoJ3AtcmVxdWlyZWQnKSBzZXQgcmVxdWlyZWQocmVxdWlyZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9yZXF1aXJlZCA9IGNvbnZlcnRUb0Jvb2xlYW4ocmVxdWlyZWQpO1xuXG4gICAgdGhpcy52YWxpZGF0ZU1vZGVsKHRoaXMuY3VycmVudEZpbGVzKTtcbiAgfVxuXG4gIGdldCByZXF1aXJlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fcmVxdWlyZWQ7XG4gIH1cblxuICAvKipcbiAgICogRGVmaW5lIHNlIGEgaW5kaWNhw6fDo28gZGUgY2FtcG8gb2JyaWdhdMOzcmlvIHNlcsOhIGV4aWJpZGEuXG4gICAqXG4gICAqID4gTsOjbyBzZXLDoSBleGliaWRhIGEgaW5kaWNhw6fDo28gc2U6XG4gICAqIC0gTsOjbyBwb3NzdWlyIGBwLWhlbHBgIGUvb3UgYHAtbGFiZWxgLlxuICAgKi9cbiAgQElucHV0KCdwLXNob3ctcmVxdWlyZWQnKSBzaG93UmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgdXBsb2FkU2VydmljZTogUG9VcGxvYWRTZXJ2aWNlLFxuICAgIGxhbmd1YWdlU2VydmljZTogUG9MYW5ndWFnZVNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5sYW5ndWFnZSA9IGxhbmd1YWdlU2VydmljZS5nZXRTaG9ydExhbmd1YWdlKCk7XG4gIH1cblxuICAvLyBGdW7Dp8OjbyBpbXBsZW1lbnRhZGEgZG8gQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgLy8gVXNhZGEgcGFyYSBpbnRlcmNlcHRhciBvcyBlc3RhZG9zIGRlIGhhYmlsaXRhZG8gdmlhIGZvcm1zIGFwaVxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Nb2RlbENoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Nb2RlbFRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25WYWxpZGF0b3JDaGFuZ2UoZm46ICgpID0+IHZvaWQpIHtcbiAgICB0aGlzLnZhbGlkYXRvckNoYW5nZSA9IGZuO1xuICB9XG5cbiAgdmFsaWRhdGUoYWJzdHJhY3RDb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9IHtcbiAgICBpZiAocmVxdWlyZWRGYWlsZWQodGhpcy5yZXF1aXJlZCwgdGhpcy5kaXNhYmxlZCwgYWJzdHJhY3RDb250cm9sLnZhbHVlKSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcmVxdWlyZWQ6IHtcbiAgICAgICAgICB2YWxpZDogZmFsc2VcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICB9XG4gIH1cblxuICB3cml0ZVZhbHVlKG1vZGVsOiBhbnkpOiB2b2lkIHtcbiAgICBpZiAobW9kZWwpIHtcbiAgICAgIGlmICghaXNFcXVhbHModGhpcy5jdXJyZW50RmlsZXMsIG1vZGVsKSkge1xuICAgICAgICB0aGlzLmN1cnJlbnRGaWxlcyA9IHRoaXMucGFyc2VGaWxlcyhtb2RlbCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY3VycmVudEZpbGVzID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBpc0V4Y2VlZGVkRmlsZUxpbWl0KGN1cnJlbnRGaWxlc0xlbmd0aDogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuaXNNdWx0aXBsZSAmJlxuICAgICAgdGhpcy5maWxlUmVzdHJpY3Rpb25zICYmXG4gICAgICB0aGlzLmZpbGVSZXN0cmljdGlvbnMubWF4RmlsZXMgPiAwICYmXG4gICAgICB0aGlzLmZpbGVSZXN0cmljdGlvbnMubWF4RmlsZXMgPD0gY3VycmVudEZpbGVzTGVuZ3RoXG4gICAgKTtcbiAgfVxuXG4gIC8vIEZheiBvIHBhcnNlIGRvcyBhcnF1aXZvcyBzZWxlY2lvbmFkb3MgcGFyYSBhcnF1aXZvcyBkbyBmb3JtYXRvIFBvVXBsb2FkRmlsZSBlIGF0dWFsaXphIG9zIGFycXVpdm9zIGNvcnJlbnRlcy5cbiAgcHJvdGVjdGVkIHBhcnNlRmlsZXMoZmlsZXM6IEFycmF5PEZpbGU+KTogQXJyYXk8UG9VcGxvYWRGaWxlPiB7XG4gICAgbGV0IHBvVXBsb2FkRmlsZXM6IEFycmF5PFBvVXBsb2FkRmlsZT4gPSB0aGlzLmN1cnJlbnRGaWxlcyB8fCBbXTtcbiAgICBjb25zdCBmaWxlc0xlbmd0aCA9IGZpbGVzLmxlbmd0aDtcblxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZmlsZXNMZW5ndGg7IGkrKykge1xuICAgICAgaWYgKHRoaXMuaXNFeGNlZWRlZEZpbGVMaW1pdChwb1VwbG9hZEZpbGVzLmxlbmd0aCkpIHtcbiAgICAgICAgdGhpcy5xdWFudGl0eU5vdEFsbG93ZWQgPSBmaWxlc0xlbmd0aCAtIHRoaXMuZmlsZVJlc3RyaWN0aW9ucy5tYXhGaWxlcztcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjb25zdCBmaWxlID0gbmV3IFBvVXBsb2FkRmlsZShmaWxlc1tpXSk7XG5cbiAgICAgIGlmICh0aGlzLmNoZWNrUmVzdHJpY3Rpb25zKGZpbGUpKSB7XG4gICAgICAgIHBvVXBsb2FkRmlsZXMgPSB0aGlzLmluc2VydEZpbGVJbkZpbGVzKGZpbGUsIHBvVXBsb2FkRmlsZXMpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLnNlbmRGZWVkYmFjaygpO1xuICAgIHJldHVybiBwb1VwbG9hZEZpbGVzO1xuICB9XG5cbiAgcHJvdGVjdGVkIHZhbGlkYXRlTW9kZWwobW9kZWw6IGFueSkge1xuICAgIGlmICh0aGlzLnZhbGlkYXRvckNoYW5nZSkge1xuICAgICAgdGhpcy52YWxpZGF0b3JDaGFuZ2UobW9kZWwpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFZlcmlmaWNhIHNlIG8gYXJxdWl2byBlc3TDoSBkZSBhY29yZG8gY29tIGFzIHJlc3RyacOnw7Vlcy5cbiAgcHJpdmF0ZSBjaGVja1Jlc3RyaWN0aW9ucyhmaWxlOiBQb1VwbG9hZEZpbGUpOiBib29sZWFuIHtcbiAgICBjb25zdCByZXN0cmljdGlvbnMgPSB0aGlzLmZpbGVSZXN0cmljdGlvbnM7XG5cbiAgICBpZiAocmVzdHJpY3Rpb25zKSB7XG4gICAgICBjb25zdCBhbGxvd2VkRXh0ZW5zaW9ucyA9IHJlc3RyaWN0aW9ucy5hbGxvd2VkRXh0ZW5zaW9ucztcbiAgICAgIGNvbnN0IG1pbkZpbGVTaXplID0gcmVzdHJpY3Rpb25zLm1pbkZpbGVTaXplO1xuICAgICAgY29uc3QgbWF4RmlsZVNpemUgPSByZXN0cmljdGlvbnMubWF4RmlsZVNpemU7XG5cbiAgICAgIGNvbnN0IGlzQWNjZXB0ID0gYWxsb3dlZEV4dGVuc2lvbnMgPyB0aGlzLmlzQWxsb3dlZEV4dGVuc2lvbihmaWxlLmV4dGVuc2lvbiwgYWxsb3dlZEV4dGVuc2lvbnMpIDogdHJ1ZTtcbiAgICAgIGNvbnN0IGlzQWNjZXB0U2l6ZSA9IGZpbGUuc2l6ZSA+PSBtaW5GaWxlU2l6ZSAmJiBmaWxlLnNpemUgPD0gbWF4RmlsZVNpemU7XG5cbiAgICAgIGlmICghaXNBY2NlcHRTaXplKSB7XG4gICAgICAgIHRoaXMuc2l6ZU5vdEFsbG93ZWQgPSB0aGlzLnNpemVOb3RBbGxvd2VkICsgMTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGlzQWNjZXB0ICYmIGlzQWNjZXB0U2l6ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHByaXZhdGUgZXhpc3RzRmlsZVNhbWVOYW1lKGZpbGU6IFBvVXBsb2FkRmlsZSwgZmlsZXM6IEFycmF5PFBvVXBsb2FkRmlsZT4pOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmlsZXMuc29tZShjdXJyZW50RmlsZSA9PiBmaWxlLm5hbWUgPT09IGN1cnJlbnRGaWxlLm5hbWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRVcGxvYWRTZXJ2aWNlKCk6IFBvVXBsb2FkU2VydmljZSB7XG4gICAgcmV0dXJuIHRoaXMudXBsb2FkU2VydmljZTtcbiAgfVxuXG4gIHByaXZhdGUgaW5zZXJ0RmlsZUluRmlsZXMobmV3RmlsZTogUG9VcGxvYWRGaWxlLCBmaWxlczogQXJyYXk8UG9VcGxvYWRGaWxlPikge1xuICAgIGlmICh0aGlzLmV4aXN0c0ZpbGVTYW1lTmFtZShuZXdGaWxlLCBmaWxlcykpIHtcbiAgICAgIHJldHVybiB0aGlzLnVwZGF0ZUV4aXN0c0ZpbGVJbkZpbGVzKG5ld0ZpbGUsIGZpbGVzKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc011bHRpcGxlKSB7XG4gICAgICBmaWxlcy5wdXNoKG5ld0ZpbGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBmaWxlcy5zcGxpY2UoMCwgZmlsZXMubGVuZ3RoLCBuZXdGaWxlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZmlsZXM7XG4gIH1cblxuICBwcml2YXRlIGlzQWxsb3dlZEV4dGVuc2lvbihleHRlbnNpb246IHN0cmluZywgYWxsb3dlZEV4dGVuc2lvbnM6IEFycmF5PHN0cmluZz4gPSBbXSk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGlzQWxsb3dlZCA9IGFsbG93ZWRFeHRlbnNpb25zLnNvbWUoZXh0ID0+IGV4dC50b0xvd2VyQ2FzZSgpID09PSBleHRlbnNpb24pO1xuICAgIGlmICghaXNBbGxvd2VkKSB7XG4gICAgICB0aGlzLmV4dGVuc2lvbk5vdEFsbG93ZWQgPSB0aGlzLmV4dGVuc2lvbk5vdEFsbG93ZWQgKyAxO1xuICAgIH1cbiAgICByZXR1cm4gaXNBbGxvd2VkO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRBbGxvd2VkRXh0ZW5zaW9ucyhyZXN0cmljdGlvbnM6IFBvVXBsb2FkRmlsZVJlc3RyaWN0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgX2FsbG93ZWRFeHRlbnNpb25zID0gcmVzdHJpY3Rpb25zLmFsbG93ZWRFeHRlbnNpb25zIHx8IFtdO1xuXG4gICAgdGhpcy5hbGxvd2VkRXh0ZW5zaW9ucyA9IF9hbGxvd2VkRXh0ZW5zaW9ucy5qb2luKCcsJyk7XG4gIH1cblxuICBwcml2YXRlIGluaXRSZXN0cmljdGlvbnMocmVzdHJpY3Rpb25zOiBQb1VwbG9hZEZpbGVSZXN0cmljdGlvbnMpOiBQb1VwbG9hZEZpbGVSZXN0cmljdGlvbnMge1xuICAgIGlmICghcmVzdHJpY3Rpb25zKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgbWluRmlsZVNpemUgPSByZXN0cmljdGlvbnMubWluRmlsZVNpemUgfHwgcG9VcGxvYWRNaW5GaWxlU2l6ZTtcbiAgICBjb25zdCBtYXhGaWxlU2l6ZSA9IHJlc3RyaWN0aW9ucy5tYXhGaWxlU2l6ZSB8fCBwb1VwbG9hZE1heEZpbGVTaXplO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnJlc3RyaWN0aW9ucyxcbiAgICAgIG1heEZpbGVTaXplOiBtYXhGaWxlU2l6ZSxcbiAgICAgIG1pbkZpbGVTaXplOiBtaW5GaWxlU2l6ZVxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUV4aXN0c0ZpbGVJbkZpbGVzKG5ld0ZpbGU6IFBvVXBsb2FkRmlsZSwgZmlsZXM6IEFycmF5PFBvVXBsb2FkRmlsZT4pIHtcbiAgICBjb25zdCBmaWxlSW5kZXggPSBmaWxlcy5maW5kSW5kZXgoXG4gICAgICBjdXJyZW50RmlsZSA9PiBuZXdGaWxlLm5hbWUgPT09IGN1cnJlbnRGaWxlLm5hbWUgJiYgY3VycmVudEZpbGUuc3RhdHVzICE9PSBQb1VwbG9hZFN0YXR1cy5VcGxvYWRlZFxuICAgICk7XG5cbiAgICBpZiAoZmlsZUluZGV4ICE9PSAtMSkge1xuICAgICAgZmlsZXMuc3BsaWNlKGZpbGVJbmRleCwgMSwgbmV3RmlsZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZpbGVzO1xuICB9XG5cbiAgYWJzdHJhY3Qgc2VuZEZlZWRiYWNrKCk6IHZvaWQ7XG5cbiAgYWJzdHJhY3Qgc2V0RGlyZWN0b3J5QXR0cmlidXRlKHZhbHVlOiBib29sZWFuKTtcbn1cbiJdfQ==
723
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tdXBsb2FkLWJhc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9jb21wb25lbnRzL3BvLWZpZWxkL3BvLXVwbG9hZC9wby11cGxvYWQtYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHcEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFJckYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7OztBQUd6RCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRztJQUNyQyxFQUFFLEVBQW9CO1FBQ3BCLEtBQUssRUFBRSxPQUFPO1FBQ2QsT0FBTyxFQUFFLFNBQVM7UUFDbEIsVUFBVSxFQUFFLGFBQWE7UUFDekIsV0FBVyxFQUFFLGNBQWM7UUFDM0IsWUFBWSxFQUFFLGVBQWU7UUFDN0IsWUFBWSxFQUFFLGVBQWU7UUFDN0IsYUFBYSxFQUFFLGlCQUFpQjtRQUNoQyxlQUFlLEVBQUUsbUJBQW1CO1FBQ3BDLHFCQUFxQixFQUFFLGtDQUFrQztRQUN6RCxzQkFBc0IsRUFBRSxtQ0FBbUM7UUFDM0QsYUFBYSxFQUFFLGlCQUFpQjtRQUNoQyxlQUFlLEVBQUUsbUJBQW1CO1FBQ3BDLGVBQWUsRUFBRSwwQ0FBMEM7UUFDM0QsZUFBZSxFQUFFLGdFQUFnRTtRQUNqRixh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bEIsS0FBSzttQkFBQyxPQUFPO1lBR0MsSUFBSTtrQkFBbEIsS0FBSzttQkFBQyxNQUFNO1lBYVcsVUFBVTtrQkFBakMsS0FBSzttQkFBQyxlQUFlO1lBZUQsUUFBUTtrQkFBNUIsS0FBSzttQkFBQyxZQUFZO1lBR0MsT0FBTztrQkFBMUIsS0FBSzttQkFBQyxXQUFXO1lBbUJsQixXQUFXO2tCQUZWLFdBQVc7bUJBQUMscUJBQXFCOztrQkFDakMsS0FBSzttQkFBQyxFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7WUF3QjNDLFFBQVE7a0JBQTNCLE1BQU07bUJBQUMsVUFBVTtZQVVDLE9BQU87a0JBQXpCLE1BQU07bUJBQUMsU0FBUztZQVVJLFNBQVM7a0JBQTdCLE1BQU07bUJBQUMsV0FBVztZQWlCTSxhQUFhO2tCQUFyQyxNQUFNO21CQUFDLGVBQWU7WUF3Q0csU0FBUztrQkFBbEMsS0FBSzttQkFBQyxhQUFhO1lBdUJNLFFBQVE7a0JBQWpDLEtBQUs7bUJBQUMsYUFBYTtZQWlCbUIsb0JBQW9CO2tCQUExRCxLQUFLO21CQUFDLDBCQUEwQjtZQW9CRSxnQkFBZ0I7a0JBQWxELEtBQUs7bUJBQUMsc0JBQXNCO1lBbUJJLGNBQWM7a0JBQTlDLEtBQUs7bUJBQUMsb0JBQW9CO1lBb0NGLFFBQVE7a0JBQWhDLEtBQUs7bUJBQUMsWUFBWTtZQXVCVSxnQkFBZ0I7a0JBQTVDLEtBQUs7bUJBQUMsZ0JBQWdCO1lBbUJJLFNBQVM7a0JBQW5DLEtBQUs7bUJBQUMsY0FBYztZQWlCSSxRQUFRO2tCQUFoQyxLQUFLO21CQUFDLFlBQVk7WUFtQk0sVUFBVTtrQkFBbEMsS0FBSzttQkFBQyxZQUFZO1lBaUJNLFFBQVE7a0JBQWhDLEtBQUs7bUJBQUMsWUFBWTtZQWdCTyxZQUFZO2tCQUFyQyxLQUFLO21CQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBjb252ZXJ0VG9Cb29sZWFuLCBpc0VxdWFscywgaXNJRSwgaXNNb2JpbGUgfSBmcm9tICcuLi8uLi8uLi91dGlscy91dGlsJztcbmltcG9ydCB7IHJlcXVpcmVkRmFpbGVkIH0gZnJvbSAnLi4vdmFsaWRhdG9ycyc7XG5cbmltcG9ydCB7IHBvTG9jYWxlRGVmYXVsdCB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3BvLWxhbmd1YWdlL3BvLWxhbmd1YWdlLmNvbnN0YW50JztcbmltcG9ydCB7IFBvTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvcG8tbGFuZ3VhZ2UvcG8tbGFuZ3VhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBQb1VwbG9hZEZpbGVSZXN0cmljdGlvbnMgfSBmcm9tICcuL2ludGVyZmFjZXMvcG8tdXBsb2FkLWZpbGUtcmVzdHJpY3Rpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IFBvVXBsb2FkTGl0ZXJhbHMgfSBmcm9tICcuL2ludGVyZmFjZXMvcG8tdXBsb2FkLWxpdGVyYWxzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQb1VwbG9hZEZpbGUgfSBmcm9tICcuL3BvLXVwbG9hZC1maWxlJztcbmltcG9ydCB7IFBvVXBsb2FkU3RhdHVzIH0gZnJvbSAnLi9wby11cGxvYWQtc3RhdHVzLmVudW0nO1xuaW1wb3J0IHsgUG9VcGxvYWRTZXJ2aWNlIH0gZnJvbSAnLi9wby11cGxvYWQuc2VydmljZSc7XG5cbmV4cG9ydCBjb25zdCBwb1VwbG9hZExpdGVyYWxzRGVmYXVsdCA9IHtcbiAgZW46IDxQb1VwbG9hZExpdGVyYWxzPntcbiAgICBmaWxlczogJ2ZpbGVzJyxcbiAgICBmb2xkZXJzOiAnZm9sZGVycycsXG4gICAgc2VsZWN0RmlsZTogJ1NlbGVjdCBmaWxlJyxcbiAgICBzZWxlY3RGaWxlczogJ1NlbGVjdCBmaWxlcycsXG4gICAgc2VsZWN0Rm9sZGVyOiAnU2VsZWN0IGZvbGRlcicsXG4gICAgc3RhcnRTZW5kaW5nOiAnU3RhcnQgc2VuZGluZycsXG4gICAgZHJhZ0ZpbGVzSGVyZTogJ0RyYWcgZmlsZXMgaGVyZScsXG4gICAgZHJhZ0ZvbGRlcnNIZXJlOiAnRHJhZyBmb2xkZXJzIGhlcmUnLFxuICAgIHNlbGVjdEZpbGVzT25Db21wdXRlcjogJ29yIHNlbGVjdCBmaWxlcyBvbiB5b3VyIGNvbXB1dGVyJyxcbiAgICBzZWxlY3RGb2xkZXJPbkNvbXB1dGVyOiAnb3Igc2VsZWN0IGZvbGRlciBvbiB5b3VyIGNvbXB1dGVyJyxcbiAgICBkcm9wRmlsZXNIZXJlOiAnRHJvcCBmaWxlcyBoZXJlJyxcbiAgICBkcm9wRm9sZGVyc0hlcmU6ICdEcm9wIGZvbGRlcnMgaGVyZScsXG4gICAgaW52YWxpZERyb3BBcmVhOiAnezB9IHdlcmUgbm90IGRyb3BwZWQgaW4gdGhlIGNvcnJlY3QgYXJlYScsXG4gICAgaW52YWxpZEZpbGVUeXBlOiAnRmFpbGVkIHRvIGxvYWQgezB9IGZpbGUocykgYXMgaXQgaXMgbm90IHRoZSBhbGxvd2VkIGZpbGUgdHlwZS4nLFxuICAgIGludmFsaWRBbW91bnQ6ICdGYWlsZWQgdG8gbG9hZCB7MH0gZmlsZShzKSwgYXMgaXQgZXhjZWVkcyB0aGUgbGltaXQgYW1vdW50IG9mIGZpbGVzLicsXG4gICAgaW52YWxpZEZvcm1hdDogJ0ZhaWxlZCB0byBsb2FkIHswfSBmaWxlKHMpLCBhcyBpdCBkb2VzIG5vdCBtYXRjaCB0aGUgZm9ybWF0KHMpOiB7MX0uJyxcbiAgICBpbnZhbGlkU2l6ZTogJ0ZhaWxlZCB0byBsb2FkIHswfSBmaWxlcyhzKSwgYXMgaXQgaXMgbm90IHRoZSBhbGxvd2VkIHNpemU6IGZyb20gezF9IHRvIHsyfS4nLFxuICAgIG51bWJlck9mRmlsZXNBbGxvd2VkOiAnezB9IGZpbGUocykgYWxsb3dlZCcsXG4gICAgYWxsb3dlZEZvcm1hdHM6ICdBY2NlcHRlZCBmaWxlIGZvcm1hdHM6IHswfS4nLFxuICAgIGFsbG93ZWRGaWxlU2l6ZVJhbmdlOiAnU2l6ZSBsaW1pdCBwZXIgZmlsZTogZnJvbSB7MH0gdG8gezF9JyxcbiAgICBtYXhGaWxlU2l6ZUFsbG93ZWQ6ICdTaXplIGxpbWl0IHBlciBmaWxlOiB7MH0gbWF4aW11bScsXG4gICAgbWluRmlsZVNpemVBbGxvd2VkOiAnU2l6ZSBsaW1pdCBwZXIgZmlsZTogezB9IG1pbmltdW0nLFxuICAgIGVycm9yT2NjdXJyZWQ6ICdBbiBlcnJvciBoYXMgb2NjdXJyZWQnLFxuICAgIHNlbnRXaXRoU3VjY2VzczogJ1NlbnQgd2l0aCBzdWNjZXNzJ1xuICB9LFxuICBlczogPFBvVXBsb2FkTGl0ZXJhbHM+e1xuICAgIGZpbGVzOiAnYXJjaGl2b3MnLFxuICAgIGZvbGRlcnM6ICdjYXJwZXRhcycsXG4gICAgc2VsZWN0RmlsZTogJ1NlbGVjY2lvbmFyIGFyY2hpdm8nLFxuICAgIHNlbGVjdEZpbGVzOiAnU2VsZWNjaW9uYXIgYXJjaGl2b3MnLFxuICAgIHNlbGVjdEZvbGRlcjogJ1NlbGVjY2lvbmFyIGNhcnBldGEnLFxuICAgIHN0YXJ0U2VuZGluZzogJ0luaWNpYXIgY2FyZ2EnLFxuICAgIGRyYWdGaWxlc0hlcmU6ICdBcnJhc3RyYSBsb3MgYXJjaGl2b3MgYXF1w60nLFxuICAgIGRyYWdGb2xkZXJzSGVyZTogJ0FycmFzdHJhIGxhcyBjYXJwZXRhcyBhcXXDrScsXG4gICAgc2VsZWN0RmlsZXNPbkNvbXB1dGVyOiAnbyBzZWxlY2Npb25hIGxvcyBhcmNoaXZvcyBlbiB0dSBjb21wdXRhZG9yYScsXG4gICAgc2VsZWN0Rm9sZGVyT25Db21wdXRlcjogJ28gc2VsZWNjaW9uYSBsYSBjYXJwZXRhIGVuIHR1IGNvbXB1dGFkb3JhJyxcbiAgICBkcm9wRmlsZXNIZXJlOiAnRGVqYSBsb3MgYXJjaGl2b3MgYXF1w60nLFxuICAgIGRyb3BGb2xkZXJzSGVyZTogJ0RlamEgbGFzIGNhcnBldGFzIGFxdcOtJyxcbiAgICBpbnZhbGlkRHJvcEFyZWE6ICdMb3MgezB9IG5vIHNlIGluc2VydGFyb24gZW4gbGEgdWJpY2FjacOzbiBjb3JyZWN0YScsXG4gICAgaW52YWxpZEZpbGVUeXBlOiAnRXJyb3IgYWwgY2FyZ2FyIHswfSBhcmNoaXZvIChzKSB5YSBxdWUgbm8gZXMgZWwgdGlwbyBkZSBhcmNoaXZvIHBlcm1pdGlkbycsXG4gICAgaW52YWxpZEFtb3VudDogJ0Vycm9yIGFsIGNhcmdhciB7MH0gYXJjaGl2byAocykgeWEgcXVlIGV4Y2VkZSBsYSBjYW50aWRhZCBsaW1pdGUgZGUgYXJjaGl2b3MuJyxcbiAgICBpbnZhbGlkRm9ybWF0OiAnRXJyb3IgYWwgY2FyZ2FyIHswfSBhcmNoaXZvIChzKSB5YSBxdWUgbm8gY29pbmNpZGUgY29uIGVsIGZvcm1hdG8gKHMpOiB7MX0uJyxcbiAgICBpbnZhbGlkU2l6ZTogJ0Vycm9yIGFsIGNhcmdhciB7MH0gYXJjaGl2byAocykgeWEgcXVlIG5vIGN1bXBsZSBjb24gZWwgdGFtYcOxbyBwZXJtaXRpZG86IGRlc2RlIHsxfSBoYXN0YSB7Mn0uJyxcbiAgICBudW1iZXJPZkZpbGVzQWxsb3dlZDogJ3swfSBhcmNoaXZvKHMpIHBlcm1pdGlkbyhzKScsXG4gICAgYWxsb3dlZEZvcm1hdHM6ICdGb3JtYXRvcyBhY2VwdGFkb3M6IHswfS4nLFxuICAgIGFsbG93ZWRGaWxlU2l6ZVJhbmdlOiAnTGltaXRlIGRlIHRhbWHDsW8gZGUgYXJjaGl2bzogZGVzZGUgezB9IGhhc3RhIHsxfScsXG4gICAgbWF4RmlsZVNpemVBbGxvd2VkOiAnTGltaXRlIGRlIHRhbWHDsW8gZGUgYXJjaGl2bzogaGFzdGEgezB9JyxcbiAgICBtaW5GaWxlU2l6ZUFsbG93ZWQ6ICdMaW1pdGUgZGUgdGFtYcOxbyBkZSBhcmNoaXZvOiBtaW5pbW8gezB9JyxcbiAgICBlcnJvck9jY3VycmVkOiAnT2N1cnJpbyB1biBlcnJvcicsXG4gICAgc2VudFdpdGhTdWNjZXNzOiAnRW52aWFkbyBjb24gw6l4aXRvJ1xuICB9LFxuICBwdDogPFBvVXBsb2FkTGl0ZXJhbHM+e1xuICAgIGZpbGVzOiAnYXJxdWl2b3MnLFxuICAgIGZvbGRlcnM6ICdkaXJldMOzcmlvcycsXG4gICAgc2VsZWN0RmlsZTogJ1NlbGVjaW9uYXIgYXJxdWl2bycsXG4gICAgc2VsZWN0RmlsZXM6ICdTZWxlY2lvbmFyIGFycXVpdm9zJyxcbiAgICBzZWxlY3RGb2xkZXI6ICdTZWxlY2lvbmFyIHBhc3RhJyxcbiAgICBzdGFydFNlbmRpbmc6ICdJbmljaWFyIGVudmlvJyxcbiAgICBkcmFnRmlsZXNIZXJlOiAnQXJyYXN0ZSBvcyBhcnF1aXZvcyBhcXVpJyxcbiAgICBkcmFnRm9sZGVyc0hlcmU6ICdBcnJhc3RlIGFzIHBhc3RhcyBhcXVpJyxcbiAgICBzZWxlY3RGaWxlc09uQ29tcHV0ZXI6ICdvdSBzZWxlY2lvbmUgb3MgYXJxdWl2b3Mgbm8gY29tcHV0YWRvcicsXG4gICAgc2VsZWN0Rm9sZGVyT25Db21wdXRlcjogJ291IHNlbGVjaW9uZSBhIHBhc3RhIG5vIGNvbXB1dGFkb3InLFxuICAgIGRyb3BGaWxlc0hlcmU6ICdTb2x0ZSBvcyBhcnF1aXZvcyBhcXVpJyxcbiAgICBkcm9wRm9sZGVyc0hlcmU6ICdTb2x0ZSBhcyBwYXN0YXMgYXF1aScsXG4gICAgaW52YWxpZERyb3BBcmVhOiAnT3MgezB9IG7Do28gZm9yYW0gaW5zZXJpZG9zIG5vIGxvY2FsIGNvcnJldG8nLFxuICAgIGludmFsaWRGaWxlVHlwZTogJ0ZhbGhhIGFvIGNhcnJlZ2FyIHswfSBhcnF1aXZvIChzKSwgcG9pcyBuw6NvIMOpIG8gdGlwbyBkZSBhcnF1aXZvIHBlcm1pdGlkbycsXG4gICAgaW52YWxpZEFtb3VudDogJ0ZhbGhhIGFvIGNhcnJlZ2FyIHswfSBhcnF1aXZvKHMpLCBwb2lzIGV4Y2VkZShtKSBhIHF1YW50aWRhZGUgbGltaXRlIGRlIGFycXVpdm9zLicsXG4gICAgaW52YWxpZEZvcm1hdDogJ0ZhbGhhIGFvIGNhcnJlZ2FyIHswfSBhcnF1aXZvKHMpLCBwb2lzIG7Do28gY29ycmVzcG9uZGUobSkgYW8ocykgZm9ybWF0byhzKTogezF9LicsXG4gICAgaW52YWxpZFNpemU6ICdGYWxoYSBhbyBjYXJyZWdhciB7MH0gYXJxdWl2byhzKSwgcG9pcyBuw6NvIGF0ZW5kZSBhbyB0YW1hbmhvIHBlcm1pdGlkbzogezF9IGF0w6kgezJ9LicsXG4gICAgbnVtYmVyT2ZGaWxlc0FsbG93ZWQ6ICdRdWFudGlkYWRlIG3DoXhpbWE6IHswfSBhcnF1aXZvKHMpJyxcbiAgICBhbGxvd2VkRm9ybWF0czogJ0Zvcm1hdG9zIGFkb3RhZG9zOiB7MH0uJyxcbiAgICBhbGxvd2VkRmlsZVNpemVSYW5nZTogJ0xpbWl0ZSBkZSB0YW1hbmhvIHBvciBhcnF1aXZvOiBkZSB7MH0gYXTDqSB7MX0nLFxuICAgIG1heEZpbGVTaXplQWxsb3dlZDogJ0xpbWl0ZSBkZSB0YW1hbmhvIHBvciBhcnF1aXZvOiBhdMOpIHswfScsXG4gICAgbWluRmlsZVNpemVBbGxvd2VkOiAnTGltaXRlIGRlIHRhbWFuaG8gcG9yIGFycXVpdm86IG5vIG3DrW5pbW8gezB9JyxcbiAgICBlcnJvck9jY3VycmVkOiAnT2NvcnJldSB1bSBlcnJvJyxcbiAgICBzZW50V2l0aFN1Y2Nlc3M6ICdFbnZpYWRvIGNvbSBzdWNlc3NvJ1xuICB9LFxuICBydTogPFBvVXBsb2FkTGl0ZXJhbHM+e1xuICAgIGZpbGVzOiAn0YTQsNC50LvRiycsXG4gICAgZm9sZGVyczogJ9C/0LDQv9C60Lgg0YEg0YTQsNC50LvQsNC80LgnLFxuICAgIHNlbGVjdEZpbGU6ICfQktGL0LHQtdGA0LjRgtC1INGE0LDQudC7JyxcbiAgICBzZWxlY3RGaWxlczogJ9CS0YvQsdC10YDQuNGC0LUg0YTQsNC50LvRiycsXG4gICAgc2VsZWN0Rm9sZGVyOiAn0JLRi9Cx0LXRgNC40YLQtSDQv9Cw0L/QutGDINGBINGE0LDQudC70LDQvNC4JyxcbiAgICBzdGFydFNlbmRpbmc6ICfQndCw0YfQsNGC0Ywg0LfQsNCz0YDRg9C30LrRgycsXG4gICAgZHJhZ0ZpbGVzSGVyZTogJ9Cf0LXRgNC10YLQsNGJ0LjRgtC1INGE0LDQudC70Ysg0YHRjtC00LAnLFxuICAgIGRyYWdGb2xkZXJzSGVyZTogJ9Cf0LXRgNC10YLQsNGJ0LjRgtC1INGB0Y7QtNCwINC/0LDQv9C60LgnLFxuICAgIHNlbGVjdEZpbGVzT25Db21wdXRlcjogJ9C40LvQuCDQstGL0LHQtdGA0LjRgtC1INGE0LDQudC70Ysg0L3QsCDQutC+0LzQv9GM0Y7RgtC10YDQtScsXG4gICAgc2VsZWN0Rm9sZGVyT25Db21wdXRlcjogJ9C40LvQuCDQstGL0LHQtdGA0LjRgtC1INC/0LDQv9C60YMg0L3QsCDQstCw0YjQtdC8INC60L7QvNC/0YzRjtGC0LXRgNC1JyxcbiAgICBkcm9wRmlsZXNIZXJlOiAn0J7RgdGC0LDQstGM0YLQtSDRhNCw0LnQu9GLINC30LTQtdGB0YwnLFxuICAgIGRyb3BGb2xkZXJzSGVyZTogJ9Cf0LXRgNC10YLQsNGJ0LjRgtC1INGB0Y7QtNCwINC/0LDQv9C60LgnLFxuICAgIGludmFsaWREcm9wQXJlYTogJ3swfSDQvdC1INCx0YvQu9C4INCy0YHRgtCw0LLQu9C10L3RiyDQsiDQv9GA0LDQstC40LvRjNC90L7QvCDQvNC10YHRgtC1LicsXG4gICAgaW52YWxpZEZpbGVUeXBlOiAn0J3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0LPRgNGD0LfQuNGC0Ywg0YTQsNC50LvRiyB7MH0sINGC0LDQuiDQutCw0Log0Y3RgtC+INC90LXQstC10YDQvdGL0Lkg0YLQuNC/INGE0LDQudC70LAnLFxuICAgIGludmFsaWRBbW91bnQ6ICdOw6NvIGZvaSBwb3Nzw612ZWwgY2FycmVnYXIgb3MgYXJxdWl2b3MgezB9IHBvcnF1ZSBlbGVzIGV4Y2VkZXJhbSBvIGxpbWl0ZSBkZSBhcnF1aXZvcy4nLFxuICAgIGludmFsaWRGb3JtYXQ6ICfQndC1INGD0LTQsNC70L7RgdGMINC30LDQs9GA0YPQt9C40YLRjCDRhNCw0LnQu9GLIHswfSwg0YLQsNC6INC60LDQuiDQvtC90Lgg0L3QtSDRgdC+0L7RgtCy0LXRgtGB0YLQstGD0Y7RgiDRhNC+0YDQvNCw0YLRgyAo0LDQvCk6IHsxfS4nLFxuICAgIGludmFsaWRTaXplOiAn0J3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0LPRgNGD0LfQuNGC0Ywg0YTQsNC50LvRiyB7MH0sINC/0L7RgdC60L7Qu9GM0LrRgyDQvtC90Lgg0L3QtSDRgdC+0L7RgtCy0LXRgtGB0YLQstGD0Y7RgiDRgNCw0LfRgNC10YjQtdC90L3QvtC80YMg0YDQsNC30LzQtdGA0YM6INC+0YIgezF9INC00L4gezJ9LicsXG4gICAgbnVtYmVyT2ZGaWxlc0FsbG93ZWQ6ICfQnNCw0LrRgdC40LzQsNC70YzQvdC+0LUg0LrQvtC70LjRh9C10YHRgtCy0L46IHswfSDRhNCw0LnQu9C+0LInLFxuICAgIGFsbG93ZWRGb3JtYXRzOiAn0KTQvtGA0LzQsNGC0Ysg0L/RgNC40L3Rj9GC0Ys6IHswfS4nLFxuICAgIGFsbG93ZWRGaWxlU2l6ZVJhbmdlOiAn0J7Qs9GA0LDQvdC40YfQtdC90LjQtSDRgNCw0LfQvNC10YDQsCDRhNCw0LnQu9CwOiDQvtGCIHswfSDQtNC+IHsxfScsXG4gICAgbWF4RmlsZVNpemVBbGxvd2VkOiAn0J7Qs9GA0LDQvdC40YfQtdC90LjQtSDRgNCw0LfQvNC10YDQsCDRhNCw0LnQu9CwOiDQtNC+IHswfScsXG4gICAgbWluRmlsZVNpemVBbGxvd2VkOiAn0J7Qs9GA0LDQvdC40YfQtdC90LjQtSDRgNCw0LfQvNC10YDQsCDRhNCw0LnQu9CwOiDQvdC1INC80LXQvdC10LUgezB9JyxcbiAgICBlcnJvck9jY3VycmVkOiAn0J/RgNC+0LjQt9C+0YjQu9CwINC+0YjQuNCx0LrQsC4nLFxuICAgIHNlbnRXaXRoU3VjY2VzczogJ9Cj0YHQv9C10YjQvdC+INC+0YLQv9GA0LDQstC70LXQvdC+J1xuICB9XG59O1xuXG5jb25zdCBwb1VwbG9hZEZvcm1GaWVsZERlZmF1bHQgPSAnZmlsZXMnO1xuXG5jb25zdCBwb1VwbG9hZE1heEZpbGVTaXplID0gMzE0NTcyODA7IC8vIDMwTUJcbmNvbnN0IHBvVXBsb2FkTWluRmlsZVNpemUgPSAwO1xuXG4vKipcbiAqIEBkZXNjcmlwdGlvblxuICpcbiAqIE8gY29tcG9uZW50ZSBgcG8tdXBsb2FkYCBwZXJtaXRlIHF1ZSBvIHVzdcOhcmlvIGVudmllIGFycXVpdm8ocykgYW8gc2Vydmlkb3IgZSBhY29tcGFuaGUgbyBwcm9ncmVzc28uXG4gKiBFc3RlIGNvbXBvbmVudGUgdGFtYsOpbSBwb3NzaWJpbGl0YSBhbGd1bWFzIGNvbmZpZ3VyYcOnw7VlcyBjb21vOlxuICogIOKAkyBFbnZpbyBkZSBkaXJldMOzcmlvcywgb25kZSBlbGUgYWNlc3NhIG8gZGlyZXTDs3JpbyBzZWxlY2lvbmFkbyBhc3NpbSBjb21vIHNldXMgc3ViLWRpcmV0w7NyaW9zO1xuICogIC0gTcO6bHRpcGxhIHNlbGXDp8Ojbywgb25kZSBvIHVzdcOhcmlvIHBvZGUgZW52aWFyIG1haXMgZGUgdW0gYXJxdWl2byBhbyBzZXJ2aWRvci5cbiAqICAtIEF1dG8gZW52aW8sIG9uZGUgbyBhcnF1aXZvIMOpIGVudmlhZG8gaW1lZGlhdGFtZW50ZSBhcMOzcyBhIHNlbGXDp8OjbyBkbyB1c3XDoXJpbywgbsOjbyBuZWNlc3NpdGFuZG8gcXVlIG8gdXN1w6FyaW9cbiAqIGNsaXF1ZSBlbSBlbnZpYXIuXG4gKiAgLSBSZXN0cmnDp8O1ZXMgZGUgZm9ybWF0b3MgZGUgYXJxdWl2byBlIHRhbWFuaG8uXG4gKiAgLSBGdW7Dp8OjbyBkZSBzdWNlc3NvIHF1ZSBzZXLDoSBkaXNwYXJhZGEgcXVhbmRvIG9zIGFycXVpdm9zIGZvcmVtIGVudmlhZG9zIGNvbSBzdWNlc3NvLlxuICogIC0gRnVuw6fDo28gZGUgZXJybyBxdWUgc2Vyw6EgZGlzcGFyYWRhIHF1YW5kbyBob3V2ZXIgZXJybyBubyBlbnZpbyBkb3MgYXJxdWl2b3MuXG4gKiAgLSBQZXJtaXRlIGhhYmlsaXRhciB1bWEgw6FyZWEgb25kZSBvcyBhcnF1aXZvcyBwb2RlbSBzZXIgYXJyYXN0YWRvcy5cbiAqL1xuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUG9VcGxvYWRCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIFZhbGlkYXRvciB7XG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIEFwbGljYSBmb2NvIG5vIGVsZW1lbnRvIGFvIHNlciBpbmljaWFkby5cbiAgICpcbiAgICogPiBDYXNvIG1haXMgZGUgdW0gZWxlbWVudG8gc2VqYSBjb25maWd1cmFkbyBjb20gZXNzYSBwcm9wcmllZGFkZSwgYXBlbmFzIG8gw7psdGltbyBlbGVtZW50byBkZWNsYXJhZG8gY29tIGVsYSB0ZXLDoSBvIGZvY28uXG4gICAqXG4gICAqIEBkZWZhdWx0IGBmYWxzZWBcbiAgICovXG4gIEBJbnB1dCh7IGFsaWFzOiAncC1hdXRvLWZvY3VzJywgdHJhbnNmb3JtOiBjb252ZXJ0VG9Cb29sZWFuIH0pIGF1dG9Gb2N1czogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIERlZmluZSBlbSAqcGl4ZWxzKiBhIGFsdHVyYSBkYSDDoXJlYSBvbmRlIHBvZGVtIHNlciBhcnJhc3RhZG9zIG9zIGFycXVpdm9zLiBBIGFsdHVyYSBtw61uaW1hIGFjZWl0YSDDqSBgMTYwcHhgLlxuICAgKlxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgZnVuY2lvbmEgc29tZW50ZSBzZSBhIHByb3ByaWVkYWRlIGBwLWRyYWctZHJvcGAgZXN0aXZlciBoYWJpbGl0YWRhLlxuICAgKlxuICAgKiBAZGVmYXVsdCBgMzIwYFxuICAgKi9cbiAgQElucHV0KCdwLWRyYWctZHJvcC1oZWlnaHQnKSBkcmFnRHJvcEhlaWdodDogbnVtYmVyO1xuXG4gIC8qKiBSw7N0dWxvIGRvIGNhbXBvLiAqL1xuICBASW5wdXQoJ3AtbGFiZWwnKSBsYWJlbD86IHN0cmluZztcblxuICAvKiogVGV4dG8gZGUgYXBvaW8gcGFyYSBvIGNhbXBvLiAqL1xuICBASW5wdXQoJ3AtaGVscCcpIGhlbHA/OiBzdHJpbmc7XG5cbiAgLyoqIFVSTCBxdWUgZGV2ZSBzZXIgZmVpdGEgYSByZXF1aXNpw6fDo28gY29tIG9zIGFycXVpdm9zIHNlbGVjaW9uYWRvcy4gKi9cbiAgQElucHV0KCdwLXVybCcpIHVybDogc3RyaW5nO1xuXG4gIC8qKiBEZWZpbmUgbyB2YWxvciBkbyBhdHJpYnV0byBgbmFtZWAgZG8gY29tcG9uZW50ZS4gKi9cbiAgQElucHV0KCduYW1lJykgbmFtZTogc3RyaW5nID0gJ2ZpbGUnO1xuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIERlZmluZSBzZSBvIGVudmlvIGRvIGFycXVpdm8gc2Vyw6EgYXV0b23DoXRpY28gYW8gc2VsZWNpb25hciBvIG1lc21vLlxuICAgKlxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgZnVuY2lvbmEgc29tZW50ZSBzZSBhIHByb3ByaWVkYWRlIGBwLXVybGAgdGl2ZXIgdW0gdmFsb3IgYXRyaWJ1w61kby5cbiAgICpcbiAgICogQGRlZmF1bHQgYGZhbHNlYFxuICAgKi9cbiAgQElucHV0KCdwLWF1dG8tdXBsb2FkJykgYXV0b1VwbG9hZD86IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBEZWZpbmUgc2UgYSBpbmRpY2HDp8OjbyBkZSBjYW1wbyBvcGNpb25hbCBzZXLDoSBleGliaWRhLlxuICAgKlxuICAgKiA+IE7Do28gc2Vyw6EgZXhpYmlkYSBhIGluZGljYcOnw6NvIHNlOlxuICAgKiAgLSBPIGNhbXBvIGNvbnRlciBgcC1yZXF1aXJlZGA7XG4gICAqICAtIE7Do28gcG9zc3VpciBgcC1oZWxwYCBlL291IGBwLWxhYmVsYC5cbiAgICpcbiAgICogQGRlZmF1bHQgYGZhbHNlYFxuICAgKi9cbiAgQElucHV0KCdwLW9wdGlvbmFsJykgb3B0aW9uYWw6IGJvb2xlYW47XG5cbiAgLyoqIE9iamV0byBxdWUgY29udMOpbSBvcyBjYWJlw6dhbGhvcyBxdWUgc2Vyw6EgZW52aWFkbyBuYSByZXF1aXNpw6fDo28gZG9zIGFycXVpdm9zLiAqL1xuICBASW5wdXQoJ3AtaGVhZGVycycpIGhlYWRlcnM6IHsgW25hbWU6IHN0cmluZ106IHN0cmluZyB8IEFycmF5PHN0cmluZz4gfTtcblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBEZWZpbmUgc2UgYSBwcm9wcmllZGFkZSBgcC11cmxgIMOpIG9icmlnYXTDs3JpYS5cbiAgICpcbiAgICogQ2FzbyBhIHByb3ByaWVkYWRlIHNlamEgZGVmaW5pZGEgY29tbyBgZmFsc2VgOlxuICAgKiAtIG8gYm90w6NvIGRlIFwiU2VsZWNpb25hciBhcnF1aXZvXCIgZmljYXLDoSBoYWJpbGl0YWRvIG1lc21vIHNlbSBhIHByb3ByaWVkYWRlIGBwLXVybGAgZGVmaW5pZGEuXG4gICAqIC0gbyBib3TDo28gXCJJbmljaWFyIGVudmlvXCIgZmljYXLDoSBvY3VsdG8gYXTDqSBxdWUgYSBwcm9wcmllZGFkZSBgcC11cmxgIHNlamEgZGVmaW5pZGEuXG4gICAqXG4gICAqID4gU2UgdXRpbGl6YWRhIGNvbSBhIHByb3ByaWVkYWRlIGBwLWF1dG8tdXBsb2FkYCBkZWZpbmlkYSBjb21vIGB0cnVlYCBzZXLDoSBuZWNlc3PDoXJpbyBkZWZpbmlyIGEgcHJvcHJpZWRhZGUgYHAtdXJsYC5cbiAgICpcbiAgICogQGRlZmF1bHQgYHRydWVgXG4gICAqL1xuICBASG9zdEJpbmRpbmcoJ2F0dHIucC1yZXF1aXJlZC11cmwnKVxuICBASW5wdXQoeyBhbGlhczogJ3AtcmVxdWlyZWQtdXJsJywgdHJhbnNmb3JtOiBjb252ZXJ0VG9Cb29sZWFuIH0pXG4gIHJlcXVpcmVkVXJsOiBib29sZWFuID0gdHJ1ZTtcblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBGdW7Dp8OjbyBxdWUgc2Vyw6EgZXhlY3V0YWRhIG5vIG1vbWVudG8gZGUgcmVhbGl6YXIgbyBlbnZpbyBkbyBhcnF1aXZvLFxuICAgKiBvbmRlIHNlcsOhIHBvc3PDrXZlbCBhZGljaW9uYXIgaW5mb3JtYcOnw7VlcyBhbyBwYXLDom1ldHJvIHF1ZSBzZXLDoSBlbnZpYWRvIG5hIHJlcXVpc2nDp8Ojby5cbiAgICogw4kgcGFzc2FkbyBwb3IgcGFyw6JtZXRybyB1bSBvYmpldG8gY29tIG8gYXJxdWl2byBlIGFzIHByb3ByaWVkYWRlcyBkYXRhIGUgZXh0cmFGb3JtRGF0YSxcbiAgICogcXVlIHNlcsOjbyBlbnZpYWRhcyBlbSBjb25qdW50byBjb20gbyBhcnF1aXZvIG5hIHJlcXVpc2nDp8OjbywgcG9yIGV4ZW1wbG86XG4gICAqXG4gICAqID4gZGF0YSwgbmVzdGEgcHJvcHJpZWRhZGUgcG9kZSBzZXIgaW5mb3JtYWRvIGFsZ3VtIGRhZG9cbiAgICogYGBgXG4gICAqICAgZXZlbnQuZGF0YSA9IHtpZDogJ2lkIGRvIHVzdcOhcmlvJ307XG4gICAqIGBgYFxuICAgKiA+IGV4dHJhRm9ybURhdGEsIG5lc3RhIHByb3ByaWVkYWRlIHBvZGUgc2VyIGluZm9ybWFkbyBhbGd1bSBkYWRvIHNvbGljaXRhZG8gcGVsYSBBUElcbiAgICogPiBxdWUgbsOjbyBwb3NzYSBlc3RhciBubyBvYmpldG8gYGRhdGFgLCBhc3NpbSBvIGNvbnRlw7pkbyBzYXLDoSBleHRyYcOtZG8gZG8gb2JqZXRvIGVcbiAgICogPiBlbnZpYWRvIGNvbW8gcGFyw6JtZXRyb1xuICAgKiBgYGBcbiAgICogICBldmVudC5leHRyYUZvcm1EYXRhID0ge2lkOiAnaWQgZG8gdXN1w6FyaW8nfTtcbiAgICogYGBgXG4gICAqL1xuICBAT3V0cHV0KCdwLXVwbG9hZCcpIG9uVXBsb2FkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIEV2ZW50byBzZXLDoSBkaXNwYXJhZG8gcXVhbmRvIG9jb3JyZXIgYWxndW0gZXJybyBubyBlbnZpbyBkbyBhcnF1aXZvLlxuICAgKiA+IFBvciBwYXLDom1ldHJvIHNlcsOhIHBhc3NhZG8gbyBvYmpldG8gZG8gcmV0b3JubyBxdWUgw6kgZG8gdGlwbyBgSHR0cEVycm9yUmVzcG9uc2VgLlxuICAgKi9cbiAgQE91dHB1dCgncC1lcnJvcicpIG9uRXJyb3I6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogRXZlbnRvIHNlcsOhIGRpc3BhcmFkbyBxdWFuZG8gbyBlbnZpbyBkbyBhcnF1aXZvIGZvciByZWFsaXphZG8gY29tIHN1Y2Vzc28uXG4gICAqID4gUG9yIHBhcsOibWV0cm8gc2Vyw6EgcGFzc2FkbyBvIG9iamV0byBkbyByZXRvcm5vIHF1ZSDDqSBkbyB0aXBvIGBIdHRwUmVzcG9uc2VgLlxuICAgKi9cbiAgQE91dHB1dCgncC1zdWNjZXNzJykgb25TdWNjZXNzOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIEZ1bsOnw6NvIHBhcmEgYXR1YWxpemFyIG8gbmdNb2RlbCBkbyBjb21wb25lbnRlLCBuZWNlc3PDoXJpbyBxdWFuZG8gbsOjbyBmb3IgdXRpbGl6YWRvIGRlbnRybyBkYSAqdGFnKiBgZm9ybWAuXG4gICAqXG4gICAqIE5hIHZlcnPDo28gMTIuMi4wIGRvIEFuZ3VsYXIgYSB2ZXJpZmljYcOnw6NvIGBzdHJpY3RUZW1wbGF0ZXNgIHZlbSB0cnVlIGNvbW8gZGVmYXVsdC4gUG9ydGFudG8sIHBhcmEgdXRpbGl6YXJcbiAgICogdHdvLXdheSBiaW5kaW5nIG5vIGNvbXBvbmVudGUgZGV2ZSBzZSB1dGlsaXphciBkYSBzZWd1aW50ZSBmb3JtYTpcbiAgICpcbiAgICogYGBgXG4gICAqIDxwby11cGxvYWQgLi4uIFtuZ01vZGVsXT1cIlVwbG9hZE1vZGVsXCIgKG5nTW9kZWxDaGFuZ2UpPVwidXBsb2FkTW9kZWwgPSAkZXZlbnRcIj4gPC9wby11cGxvYWQ+XG4gICAqIGBgYFxuICAgKlxuICAgKi9cbiAgQE91dHB1dCgnbmdNb2RlbENoYW5nZScpIG5nTW9kZWxDaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgYWxsb3dlZEV4dGVuc2lvbnM6IHN0cmluZztcbiAgY3VycmVudEZpbGVzOiBBcnJheTxQb1VwbG9hZEZpbGU+O1xuXG4gIGNhbkhhbmRsZURpcmVjdG9yeTogYm9vbGVhbjtcbiAgb25Nb2RlbENoYW5nZTogYW55O1xuXG4gIHByb3RlY3RlZCBleHRlbnNpb25Ob3RBbGxvd2VkID0gMDtcbiAgcHJvdGVjdGVkIHF1YW50aXR5Tm90QWxsb3dlZCA9IDA7XG4gIHByb3RlY3RlZCBzaXplTm90QWxsb3dlZCA9IDA7XG4gIHByb3RlY3RlZCBvbk1vZGVsVG91Y2hlZDogYW55ID0gbnVsbDtcblxuICBwcml2YXRlIF9kaXJlY3Rvcnk/OiBib29sZWFuO1xuICBwcml2YXRlIF9kaXNhYmxlZD86IGJvb2xlYW47XG4gIHByaXZhdGUgX2RyYWdEcm9wPzogYm9vbGVhbiA9IGZhbHNlO1xuICBwcml2YXRlIF9maWxlUmVzdHJpY3Rpb25zPzogUG9VcGxvYWRGaWxlUmVzdHJpY3Rpb25zO1xuICBwcml2YXRlIF9mb3JtRmllbGQ/OiBzdHJpbmc7XG4gIHByaXZhdGUgX2hpZGVSZXN0cmljdGlvbnNJbmZvPzogYm9vbGVhbjtcbiAgcHJpdmF0ZSBfaGlkZVNlbGVjdEJ1dHRvbj86IGJvb2xlYW47XG4gIHByaXZhdGUgX2hpZGVTZW5kQnV0dG9uPzogYm9vbGVhbjtcbiAgcHJpdmF0ZSBfaXNNdWx0aXBsZT86IGJvb2xlYW47XG4gIHByaXZhdGUgX2xpdGVyYWxzPzogYW55O1xuICBwcml2YXRlIF9yZXF1aXJlZD86IGJvb2xlYW47XG4gIHByaXZhdGUgbGFuZ3VhZ2U6IHN0cmluZztcbiAgcHJpdmF0ZSB2YWxpZGF0b3JDaGFuZ2U6IGFueTtcblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBQZXJtaXRlIGEgc2VsZcOnw6NvIGRlIGRpcmV0w7NyaW9zIGNvbnRlbmRvIHVtIG91IG1haXMgYXJxdWl2b3MgcGFyYSBlbnZpby5cbiAgICpcbiAgICogPiBBIGhhYmlsaXRhw6fDo28gZGVzdGEgcHJvcHJpZWRhZGUgc2UgcmVzdHJpbmdlIGFwZW5hcyDDoCBzZWxlw6fDo28gZGUgZGlyZXTDs3Jpb3MuXG4gICAqXG4gICAqID4gRGVmaW5pw6fDo28gbsOjbyBzdXBvcnRhZGEgcGVsbyBicm93c2VyICoqSW50ZXJuZXQgRXhwbG9yZXIqKiwgdG9kYXZpYSBzZXLDoSBwb3Nzw612ZWwgYSBzZWxlw6fDo28gZGUgYXJxdWl2b3MgcGFkcsOjby5cbiAgICpcbiAgICogQGRlZmF1bHQgYGZhbHNlYFxuICAgKi9cbiAgQElucHV0KCdwLWRpcmVjdG9yeScpIHNldCBkaXJlY3RvcnkodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9kaXJlY3RvcnkgPSBjb252ZXJ0VG9Cb29sZWFuKHZhbHVlKTtcblxuICAgIHRoaXMuY2FuSGFuZGxlRGlyZWN0b3J5ID0gdGhpcy5fZGlyZWN0b3J5ICYmICFpc0lFKCkgJiYgIWlzTW9iaWxlKCk7XG4gICAgdGhpcy5zZXREaXJlY3RvcnlBdHRyaWJ1dGUodGhpcy5jYW5IYW5kbGVEaXJlY3RvcnkpO1xuICB9XG5cbiAgZ2V0IGRpcmVjdG9yeSgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGlyZWN0b3J5O1xuICB9XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogRXhpYmUgYSDDoXJlYSBvbmRlIMOpIHBvc3PDrXZlbCBhcnJhc3RhciBlIHNlbGVjaW9uYXIgb3MgYXJxdWl2b3MuIFF1YW5kbyBlc3RpdmVyIGRlZmluaWRhLCBvbWl0ZSBvIGJvdMOjbyBwYXJhIHNlbGXDp8OjbyBkZSBhcnF1aXZvc1xuICAgKiBhdXRvbWF0aWNhbWVudGUuXG4gICAqXG4gICAqID4gUmVjb21lbmRhbW9zIHV0aWxpemFyIGFwZW5hcyB1bSBgcG8tdXBsb2FkYCBjb20gZXN0YSBmdW5jaW9uYWxpZGFkZSBwb3IgdGVsYS5cbiAgICpcbiAgICogQGRlZmF1bHQgYGZhbHNlYFxuICAgKi9cbiAgQElucHV0KCdwLWRyYWctZHJvcCcpIHNldCBkcmFnRHJvcCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2RyYWdEcm9wID0gY29udmVydFRvQm9vbGVhbih2YWx1ZSk7XG4gIH1cblxuICBnZXQgZHJhZ0Ryb3AoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2RyYWdEcm9wO1xuICB9XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogT2N1bHRhIHZpc3VhbG1lbnRlIGFzIGluZm9ybWHDp8O1ZXMgZGUgcmVzdHJpw6fDtWVzIHBhcmEgbyB1cGxvYWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGBmYWxzZWBcbiAgICovXG4gIEBJbnB1dCgncC1oaWRlLXJlc3RyaWN0aW9ucy1pbmZvJykgc2V0IGhpZGVSZXN0cmljdGlvbnNJbmZvKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5faGlkZVJlc3RyaWN0aW9uc0luZm8gPSBjb252ZXJ0VG9Cb29sZWFuKHZhbHVlKTtcbiAgfVxuXG4gIGdldCBoaWRlUmVzdHJpY3Rpb25zSW5mbygpIHtcbiAgICByZXR1cm4gdGhpcy5faGlkZVJlc3RyaWN0aW9uc0luZm87XG4gIH1cblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBPbWl0ZSBvIGJvdMOjbyBkZSBzZWxlw6fDo28gZGUgYXJxdWl2b3MuXG4gICAqXG4gICAqID4gQ2FzbyBvIHZhbG9yIGRlZmluaWRvIHNlamEgYHRydWVgLCBjYWJlcsOhIGFvIGRlc2Vudm9sdmVkb3IgYSByZXNwb25zYWJpbGlkYWRlXG4gICAqIHBlbGEgY2hhbWFkYSBkbyBtw6l0b2RvIGBzZWxlY3RGaWxlcygpYCBwYXJhIHNlbGXDp8OjbyBkZSBhcnF1aXZvcy5cbiAgICpcbiAgICogQGRlZmF1bHQgYGZhbHNlYFxuICAgKi9cbiAgQElucHV0KCdwLWhpZGUtc2VsZWN0LWJ1dHRvbicpIHNldCBoaWRlU2VsZWN0QnV0dG9uKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5faGlkZVNlbGVjdEJ1dHRvbiA9IGNvbnZlcnRUb0Jvb2xlYW4odmFsdWUpO1xuICB9XG4gIGdldCBoaWRlU2VsZWN0QnV0dG9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9oaWRlU2VsZWN0QnV0dG9uO1xuICB9XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogT21pdGUgbyBib3TDo28gZGUgZW52aW8gZGUgYXJxdWl2b3MuXG4gICAqXG4gICAqID4gQ2FzbyBvIHZhbG9yIGRlZmluaWRvIHNlamEgYHRydWVgLCBjYWJlcsOhIGFvIGRlc2Vudm9sdmVkb3IgYSByZXNwb25zYWJpbGlkYWRlXG4gICAqIHBlbGEgY2hhbWFkYSBkbyBtw6l0b2RvIGBzZW5kRmlsZXMoKWAgcGFyYSBlbnZpbyBkbyhzKSBhcnF1aXZvKHMpIHNlbGVjaW9uYWRvKHMpLlxuICAgKlxuICAgKiBAZGVmYXVsdCBgZmFsc2VgXG4gICAqL1xuICBASW5wdXQoJ3AtaGlkZS1zZW5kLWJ1dHRvbicpIHNldCBoaWRlU2VuZEJ1dHRvbih2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2hpZGVTZW5kQnV0dG9uID0gY29udmVydFRvQm9vbGVhbih2YWx1ZSk7XG4gIH1cbiAgZ2V0IGhpZGVTZW5kQnV0dG9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9oaWRlU2VuZEJ1dHRvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIE9iamV0byBjb20gYXMgbGl0ZXJhaXMgdXNhZGFzIG5vIGBwby11cGxvYWRgLlxuICAgKlxuICAgKiBFeGlzdGVtIGR1YXMgbWFuZWlyYXMgZGUgY3VzdG9taXphciBvIGNvbXBvbmVudGU6XG4gICAqXG4gICAqIC0gcGFzc2FuZG8gdW0gb2JqZXRvIGltcGxlbWVudGFuZG8gYSBpbnRlcmZhY2UgYFBvVXBsb2FkTGl0ZXJhbHNgIGNvbSB0b2RhcyBhcyBsaXRlcmFpcyBkaXNwb27DrXZlaXM7XG4gICAqIC0gcGFzc2FuZG8gYXBlbmFzIGFzIGxpdGVyYWlzIHF1ZSBkZXNlamEgY3VzdG9taXphcjpcbiAgICogYGBgXG4gICAqICBjb25zdCBjdXN0b21MaXRlcmFsczogUG9VcGxvYWRMaXRlcmFscyA9IHtcbiAgICogICAgZm9sZGVyczogJ1Bhc3RhcycsXG4gICAqICAgIHNlbGVjdEZpbGU6ICdCdXNjYXIgYXJxdWl2bycsXG4gICAqICAgIHN0YXJ0U2VuZGluZzogJ0VudmlhcidcbiAgICogIH07XG4gICAqIGBgYFxuICAgKlxuICAgKiBFIHBhcmEgY2FycmVnYXIgYXMgbGl0ZXJhaXMgY3VzdG9taXphZGFzLCBiYXN0YSBhcGVuYXMgcGFzc2FyIG8gb2JqZXRvIHBhcmEgbyBjb21wb25lbnRlOlxuICAgKlxuICAgKiBgYGBcbiAgICogPHBvLXVwbG9hZFxuICAgKiAgIFtwLWxpdGVyYWxzXT1cImN1c3RvbUxpdGVyYWxzXCI+XG4gICAqIDwvcG8tdXBsb2FkPlxuICAgKiBgYGBcbiAgICpcbiAgICogPiBPIG9iamV0byBwYWRyw6NvIGRlIGxpdGVyYWlzIHNlcsOhIHRyYWR1emlkbyBkZSBhY29yZG8gY29tIG8gaWRpb21hIGRvICpicm93c2VyKiAocHQsIGVuLCBlcywgcnUpLlxuICAgKi9cbiAgQElucHV0KCdwLWxpdGVyYWxzJykgc2V0IGxpdGVyYWxzKHZhbHVlOiBQb1VwbG9hZExpdGVyYWxzKSB7XG4gICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgT2JqZWN0ICYmICEodmFsdWUgaW5zdGFuY2VvZiBBcnJheSkpIHtcbiAgICAgIHRoaXMuX2xpdGVyYWxzID0ge1xuICAgICAgICAuLi5wb1VwbG9hZExpdGVyYWxzRGVmYXVsdFtwb0xvY2FsZURlZmF1bHRdLFxuICAgICAgICAuLi5wb1VwbG9hZExpdGVyYWxzRGVmYXVsdFt0aGlzLmxhbmd1YWdlXSxcbiAgICAgICAgLi4udmFsdWVcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2xpdGVyYWxzID0gcG9VcGxvYWRMaXRlcmFsc0RlZmF1bHRbdGhpcy5sYW5ndWFnZV07XG4gICAgfVxuICB9XG4gIGdldCBsaXRlcmFscygpIHtcbiAgICByZXR1cm4gdGhpcy5fbGl0ZXJhbHMgfHwgcG9VcGxvYWRMaXRlcmFsc0RlZmF1bHRbdGhpcy5sYW5ndWFnZV07XG4gIH1cblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBPYmpldG8gcXVlIHNlZ3VlIGEgZGVmaW5pw6fDo28gZGEgaW50ZXJmYWNlIGBQb1VwbG9hZEZpbGVSZXN0cmljdGlvbnNgLFxuICAgKiBxdWUgcG9zc2liaWxpdGEgZGVmaW5pciB0YW1hbmhvIG3DoXhpbW8vbcOtbmltbyBlIGV4dGVuc8OjbyBkb3MgYXJxdWl2b3MgcGVybWl0aWRvcy5cbiAgICovXG4gIEBJbnB1dCgncC1yZXN0cmljdGlvbnMnKSBzZXQgZmlsZVJlc3RyaWN0aW9ucyhyZXN0cmljdGlvbnM6IFBvVXBsb2FkRmlsZVJlc3RyaWN0aW9ucykge1xuICAgIHRoaXMuX2ZpbGVSZXN0cmljdGlvbnMgPSB0aGlzLmluaXRSZXN0cmljdGlvbnMocmVzdHJpY3Rpb25zKTtcblxuICAgIHRoaXMuc2V0QWxsb3dlZEV4dGVuc2lvbnMocmVzdHJpY3Rpb25zKTtcbiAgfVxuXG4gIGdldCBmaWxlUmVzdHJpY3Rpb25zKCk6IFBvVXBsb2FkRmlsZVJlc3RyaWN0aW9ucyB7XG4gICAgcmV0dXJuIHRoaXMuX2ZpbGVSZXN0cmljdGlvbnM7XG4gIH1cblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBOb21lIGRvIGNhbXBvIGRlIGZvcm11bMOhcmlvIHF1ZSBzZXLDoSBlbnZpYWRvIHBhcmEgbyBzZXJ2acOnbyBpbmZvcm1hZG8gbmEgcHJvcHJpZWRhZGUgYHAtdXJsYC5cbiAgICpcbiAgICogQGRlZmF1bHQgYGZpbGVzYFxuICAgKi9cbiAgQElucHV0KCdwLWZvcm0tZmllbGQnKSBzZXQgZm9ybUZpZWxkKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9mb3JtRmllbGQgPSB2YWx1ZSAmJiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnID8gdmFsdWUgOiBwb1VwbG9hZEZvcm1GaWVsZERlZmF1bHQ7XG5cbiAgICB0aGlzLmdldFVwbG9hZFNlcnZpY2UoKS5mb3JtRmllbGQgPSB0aGlzLmZvcm1GaWVsZDtcbiAgfVxuXG4gIGdldCBmb3JtRmllbGQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fZm9ybUZpZWxkO1xuICB9XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogSW5kaWNhIHF1ZSBvIGNhbXBvIHNlcsOhIGRlc2FiaWxpdGFkby5cbiAgICovXG4gIEBJbnB1dCgncC1kaXNhYmxlZCcpIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2Rpc2FibGVkID0gY29udmVydFRvQm9vbGVhbih2YWx1ZSk7XG5cbiAgICB0aGlzLnZhbGlkYXRlTW9kZWwodGhpcy5jdXJyZW50RmlsZXMpO1xuICB9XG5cbiAgZ2V0IGRpc2FibGVkKCkge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIERlZmluZSBzZSBwb2RlIHNlbGVjaW9uYXIgbWFpcyBkZSB1bSBhcnF1aXZvLlxuICAgKlxuICAgKiA+IFNlIHV0aWxpemFkYSBhIGBwLWRpcmVjdG9yeWAsIGhhYmlsaXRhLXNlIGF1dG9tYXRpY2FtZW50ZSBlc3RhIHByb3ByaWVkYWRlLlxuICAgKi9cbiAgQElucHV0KCdwLW11bHRpcGxlJykgc2V0IGlzTXVsdGlwbGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9pc011bHRpcGxlID0gY29udmVydFRvQm9vbGVhbih2YWx1ZSk7XG4gIH1cblxuICBnZXQgaXNNdWx0aXBsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jYW5IYW5kbGVEaXJlY3RvcnkgPyB0cnVlIDogdGhpcy5faXNNdWx0aXBsZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIERlZmluZSBxdWUgbyBjYW1wbyBzZXLDoSBvYnJpZ2F0w7NyaW8uXG4gICAqXG4gICAqIEBkZWZhdWx0IGBmYWxzZWBcbiAgICovXG4gIEBJbnB1dCgncC1yZXF1aXJlZCcpIHNldCByZXF1aXJlZChyZXF1aXJlZDogYm9vbGVhbikge1xuICAgIHRoaXMuX3JlcXVpcmVkID0gY29udmVydFRvQm9vbGVhbihyZXF1aXJlZCk7XG5cbiAgICB0aGlzLnZhbGlkYXRlTW9kZWwodGhpcy5jdXJyZW50RmlsZXMpO1xuICB9XG5cbiAgZ2V0IHJlcXVpcmVkKCkge1xuICAgIHJldHVybiB0aGlzLl9yZXF1aXJlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWZpbmUgc2UgYSBpbmRpY2HDp8OjbyBkZSBjYW1wbyBvYnJpZ2F0w7NyaW8gc2Vyw6EgZXhpYmlkYS5cbiAgICpcbiAgICogPiBOw6NvIHNlcsOhIGV4aWJpZGEgYSBpbmRpY2HDp8OjbyBzZTpcbiAgICogLSBOw6NvIHBvc3N1aXIgYHAtaGVscGAgZS9vdSBgcC1sYWJlbGAuXG4gICAqL1xuICBASW5wdXQoJ3Atc2hvdy1yZXF1aXJlZCcpIHNob3dSZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCB1cGxvYWRTZXJ2aWNlOiBQb1VwbG9hZFNlcnZpY2UsXG4gICAgbGFuZ3VhZ2VTZXJ2aWNlOiBQb0xhbmd1YWdlU2VydmljZVxuICApIHtcbiAgICB0aGlzLmxhbmd1YWdlID0gbGFuZ3VhZ2VTZXJ2aWNlLmdldFNob3J0TGFuZ3VhZ2UoKTtcbiAgfVxuXG4gIC8vIEZ1bsOnw6NvIGltcGxlbWVudGFkYSBkbyBDb250cm9sVmFsdWVBY2Nlc3NvclxuICAvLyBVc2FkYSBwYXJhIGludGVyY2VwdGFyIG9zIGVzdGFkb3MgZGUgaGFiaWxpdGFkbyB2aWEgZm9ybXMgYXBpXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbikge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vbk1vZGVsQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vbk1vZGVsVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblZhbGlkYXRvckNoYW5nZShmbjogKCkgPT4gdm9pZCkge1xuICAgIHRoaXMudmFsaWRhdG9yQ2hhbmdlID0gZm47XG4gIH1cblxuICB2YWxpZGF0ZShhYnN0cmFjdENvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xuICAgIGlmIChyZXF1aXJlZEZhaWxlZCh0aGlzLnJlcXVpcmVkLCB0aGlzLmRpc2FibGVkLCBhYnN0cmFjdENvbnRyb2wudmFsdWUpKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICByZXF1aXJlZDoge1xuICAgICAgICAgIHZhbGlkOiBmYWxzZVxuICAgICAgICB9XG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIHdyaXRlVmFsdWUobW9kZWw6IGFueSk6IHZvaWQge1xuICAgIGlmIChtb2RlbCkge1xuICAgICAgaWYgKCFpc0VxdWFscyh0aGlzLmN1cnJlbnRGaWxlcywgbW9kZWwpKSB7XG4gICAgICAgIHRoaXMuY3VycmVudEZpbGVzID0gdGhpcy5wYXJzZUZpbGVzKG1vZGVsKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jdXJyZW50RmlsZXMgPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGlzRXhjZWVkZWRGaWxlTGltaXQoY3VycmVudEZpbGVzTGVuZ3RoOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5pc011bHRpcGxlICYmXG4gICAgICB0aGlzLmZpbGVSZXN0cmljdGlvbnMgJiZcbiAgICAgIHRoaXMuZmlsZVJlc3RyaWN0aW9ucy5tYXhGaWxlcyA+IDAgJiZcbiAgICAgIHRoaXMuZmlsZVJlc3RyaWN0aW9ucy5tYXhGaWxlcyA8PSBjdXJyZW50RmlsZXNMZW5ndGhcbiAgICApO1xuICB9XG5cbiAgLy8gRmF6IG8gcGFyc2UgZG9zIGFycXVpdm9zIHNlbGVjaW9uYWRvcyBwYXJhIGFycXVpdm9zIGRvIGZvcm1hdG8gUG9VcGxvYWRGaWxlIGUgYXR1YWxpemEgb3MgYXJxdWl2b3MgY29ycmVudGVzLlxuICBwcm90ZWN0ZWQgcGFyc2VGaWxlcyhmaWxlczogQXJyYXk8RmlsZT4pOiBBcnJheTxQb1VwbG9hZEZpbGU+IHtcbiAgICBsZXQgcG9VcGxvYWRGaWxlczogQXJyYXk8UG9VcGxvYWRGaWxlPiA9IHRoaXMuY3VycmVudEZpbGVzIHx8IFtdO1xuICAgIGNvbnN0IGZpbGVzTGVuZ3RoID0gZmlsZXMubGVuZ3RoO1xuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBmaWxlc0xlbmd0aDsgaSsrKSB7XG4gICAgICBpZiAodGhpcy5pc0V4Y2VlZGVkRmlsZUxpbWl0KHBvVXBsb2FkRmlsZXMubGVuZ3RoKSkge1xuICAgICAgICB0aGlzLnF1YW50aXR5Tm90QWxsb3dlZCA9IGZpbGVzTGVuZ3RoIC0gdGhpcy5maWxlUmVzdHJpY3Rpb25zLm1heEZpbGVzO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNvbnN0IGZpbGUgPSBuZXcgUG9VcGxvYWRGaWxlKGZpbGVzW2ldKTtcblxuICAgICAgaWYgKHRoaXMuY2hlY2tSZXN0cmljdGlvbnMoZmlsZSkpIHtcbiAgICAgICAgcG9VcGxvYWRGaWxlcyA9IHRoaXMuaW5zZXJ0RmlsZUluRmlsZXMoZmlsZSwgcG9VcGxvYWRGaWxlcyk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuc2VuZEZlZWRiYWNrKCk7XG4gICAgcmV0dXJuIHBvVXBsb2FkRmlsZXM7XG4gIH1cblxuICBwcm90ZWN0ZWQgdmFsaWRhdGVNb2RlbChtb2RlbDogYW55KSB7XG4gICAgaWYgKHRoaXMudmFsaWRhdG9yQ2hhbmdlKSB7XG4gICAgICB0aGlzLnZhbGlkYXRvckNoYW5nZShtb2RlbCk7XG4gICAgfVxuICB9XG5cbiAgLy8gVmVyaWZpY2Egc2UgbyBhcnF1aXZvIGVzdMOhIGRlIGFjb3JkbyBjb20gYXMgcmVzdHJpw6fDtWVzLlxuICBwcml2YXRlIGNoZWNrUmVzdHJpY3Rpb25zKGZpbGU6IFBvVXBsb2FkRmlsZSk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHJlc3RyaWN0aW9ucyA9IHRoaXMuZmlsZVJlc3RyaWN0aW9ucztcblxuICAgIGlmIChyZXN0cmljdGlvbnMpIHtcbiAgICAgIGNvbnN0IGFsbG93ZWRFeHRlbnNpb25zID0gcmVzdHJpY3Rpb25zLmFsbG93ZWRFeHRlbnNpb25zO1xuICAgICAgY29uc3QgbWluRmlsZVNpemUgPSByZXN0cmljdGlvbnMubWluRmlsZVNpemU7XG4gICAgICBjb25zdCBtYXhGaWxlU2l6ZSA9IHJlc3RyaWN0aW9ucy5tYXhGaWxlU2l6ZTtcblxuICAgICAgY29uc3QgaXNBY2NlcHQgPSBhbGxvd2VkRXh0ZW5zaW9ucyA/IHRoaXMuaXNBbGxvd2VkRXh0ZW5zaW9uKGZpbGUuZXh0ZW5zaW9uLCBhbGxvd2VkRXh0ZW5zaW9ucykgOiB0cnVlO1xuICAgICAgY29uc3QgaXNBY2NlcHRTaXplID0gZmlsZS5zaXplID49IG1pbkZpbGVTaXplICYmIGZpbGUuc2l6ZSA8PSBtYXhGaWxlU2l6ZTtcblxuICAgICAgaWYgKCFpc0FjY2VwdFNpemUpIHtcbiAgICAgICAgdGhpcy5zaXplTm90QWxsb3dlZCA9IHRoaXMuc2l6ZU5vdEFsbG93ZWQgKyAxO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gaXNBY2NlcHQgJiYgaXNBY2NlcHRTaXplO1xuICAgIH1cblxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBleGlzdHNGaWxlU2FtZU5hbWUoZmlsZTogUG9VcGxvYWRGaWxlLCBmaWxlczogQXJyYXk8UG9VcGxvYWRGaWxlPik6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmaWxlcy5zb21lKGN1cnJlbnRGaWxlID0+IGZpbGUubmFtZSA9PT0gY3VycmVudEZpbGUubmFtZSk7XG4gIH1cblxuICBwcml2YXRlIGdldFVwbG9hZFNlcnZpY2UoKTogUG9VcGxvYWRTZXJ2aWNlIHtcbiAgICByZXR1cm4gdGhpcy51cGxvYWRTZXJ2aWNlO1xuICB9XG5cbiAgcHJpdmF0ZSBpbnNlcnRGaWxlSW5GaWxlcyhuZXdGaWxlOiBQb1VwbG9hZEZpbGUsIGZpbGVzOiBBcnJheTxQb1VwbG9hZEZpbGU+KSB7XG4gICAgaWYgKHRoaXMuZXhpc3RzRmlsZVNhbWVOYW1lKG5ld0ZpbGUsIGZpbGVzKSkge1xuICAgICAgcmV0dXJuIHRoaXMudXBkYXRlRXhpc3RzRmlsZUluRmlsZXMobmV3RmlsZSwgZmlsZXMpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmlzTXVsdGlwbGUpIHtcbiAgICAgIGZpbGVzLnB1c2gobmV3RmlsZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGZpbGVzLnNwbGljZSgwLCBmaWxlcy5sZW5ndGgsIG5ld0ZpbGUpO1xuICAgIH1cblxuICAgIHJldHVybiBmaWxlcztcbiAgfVxuXG4gIHByaXZhdGUgaXNBbGxvd2VkRXh0ZW5zaW9uKGV4dGVuc2lvbjogc3RyaW5nLCBhbGxvd2VkRXh0ZW5zaW9uczogQXJyYXk8c3RyaW5nPiA9IFtdKTogYm9vbGVhbiB7XG4gICAgY29uc3QgaXNBbGxvd2VkID0gYWxsb3dlZEV4dGVuc2lvbnMuc29tZShleHQgPT4gZXh0LnRvTG93ZXJDYXNlKCkgPT09IGV4dGVuc2lvbik7XG4gICAgaWYgKCFpc0FsbG93ZWQpIHtcbiAgICAgIHRoaXMuZXh0ZW5zaW9uTm90QWxsb3dlZCA9IHRoaXMuZXh0ZW5zaW9uTm90QWxsb3dlZCArIDE7XG4gICAgfVxuICAgIHJldHVybiBpc0FsbG93ZWQ7XG4gIH1cblxuICBwcml2YXRlIHNldEFsbG93ZWRFeHRlbnNpb25zKHJlc3RyaWN0aW9uczogUG9VcGxvYWRGaWxlUmVzdHJpY3Rpb25zID0ge30pIHtcbiAgICBjb25zdCBfYWxsb3dlZEV4dGVuc2lvbnMgPSByZXN0cmljdGlvbnMuYWxsb3dlZEV4dGVuc2lvbnMgfHwgW107XG5cbiAgICB0aGlzLmFsbG93ZWRFeHRlbnNpb25zID0gX2FsbG93ZWRFeHRlbnNpb25zLmpvaW4oJywnKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdFJlc3RyaWN0aW9ucyhyZXN0cmljdGlvbnM6IFBvVXBsb2FkRmlsZVJlc3RyaWN0aW9ucyk6IFBvVXBsb2FkRmlsZVJlc3RyaWN0aW9ucyB7XG4gICAgaWYgKCFyZXN0cmljdGlvbnMpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBtaW5GaWxlU2l6ZSA9IHJlc3RyaWN0aW9ucy5taW5GaWxlU2l6ZSB8fCBwb1VwbG9hZE1pbkZpbGVTaXplO1xuICAgIGNvbnN0IG1heEZpbGVTaXplID0gcmVzdHJpY3Rpb25zLm1heEZpbGVTaXplIHx8IHBvVXBsb2FkTWF4RmlsZVNpemU7XG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4ucmVzdHJpY3Rpb25zLFxuICAgICAgbWF4RmlsZVNpemU6IG1heEZpbGVTaXplLFxuICAgICAgbWluRmlsZVNpemU6IG1pbkZpbGVTaXplXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlRXhpc3RzRmlsZUluRmlsZXMobmV3RmlsZTogUG9VcGxvYWRGaWxlLCBmaWxlczogQXJyYXk8UG9VcGxvYWRGaWxlPikge1xuICAgIGNvbnN0IGZpbGVJbmRleCA9IGZpbGVzLmZpbmRJbmRleChcbiAgICAgIGN1cnJlbnRGaWxlID0+IG5ld0ZpbGUubmFtZSA9PT0gY3VycmVudEZpbGUubmFtZSAmJiBjdXJyZW50RmlsZS5zdGF0dXMgIT09IFBvVXBsb2FkU3RhdHVzLlVwbG9hZGVkXG4gICAgKTtcblxuICAgIGlmIChmaWxlSW5kZXggIT09IC0xKSB7XG4gICAgICBmaWxlcy5zcGxpY2UoZmlsZUluZGV4LCAxLCBuZXdGaWxlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZmlsZXM7XG4gIH1cblxuICBhYnN0cmFjdCBzZW5kRmVlZGJhY2soKTogdm9pZDtcblxuICBhYnN0cmFjdCBzZXREaXJlY3RvcnlBdHRyaWJ1dGUodmFsdWU6IGJvb2xlYW4pO1xufVxuIl19
@@ -24,6 +24,7 @@ export class PoUploadBaseService {
24
24
  const filesLength = files.length;
25
25
  const uploadEvent = {
26
26
  data: {},
27
+ extraFormData: {},
27
28
  file: null,
28
29
  url: url,
29
30
  headers: headers
@@ -37,6 +38,9 @@ export class PoUploadBaseService {
37
38
  if (tOnUpload) {
38
39
  uploadEvent['file'] = file;
39
40
  tOnUpload.emit(uploadEvent);
41
+ Object.keys(uploadEvent.extraFormData).forEach(key => {
42
+ formData.append(key, uploadEvent.extraFormData[key]);
43
+ });
40
44
  formData.append('data', JSON.stringify(uploadEvent.data));
41
45
  url = uploadEvent.url;
42
46
  headers = uploadEvent.headers;
@@ -93,4 +97,4 @@ export class PoUploadBaseService {
93
97
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PoUploadBaseService, [{
94
98
  type: Injectable
95
99
  }], () => [{ type: i1.HttpClient }], null); })();
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tdXBsb2FkLWJhc2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby11cGxvYWQvcG8tdXBsb2FkLWJhc2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBRUwsYUFBYSxFQUViLFdBQVcsRUFDWCxZQUFZLEVBQ1osV0FBVyxFQUNaLE1BQU0sc0JBQXNCLENBQUM7QUFJOUIsT0FBTyxFQUFjLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBR2hELE1BQU0sT0FBTyxtQkFBbUI7SUFJVjtJQUhwQixTQUFTLEdBQVcsT0FBTyxDQUFDO0lBQzVCLFFBQVEsR0FBZSxFQUFFLENBQUM7SUFFMUIsWUFBb0IsSUFBZ0I7UUFBaEIsU0FBSSxHQUFKLElBQUksQ0FBWTtJQUFHLENBQUM7SUFFeEM7Ozs7Ozs7OztPQVNHO0lBQ0ksTUFBTSxDQUNYLEdBQVcsRUFDWCxLQUEwQixFQUMxQixPQUFtRCxFQUNuRCxTQUE0QixFQUM1QixjQUE2RCxFQUM3RCxlQUF5RCxFQUN6RCxhQUF1RDtRQUV2RCxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQ2pDLE1BQU0sV0FBVyxHQUFRO1lBQ3ZCLElBQUksRUFBRSxFQUFFO1lBQ1IsSUFBSSxFQUFFLElBQUk7WUFDVixHQUFHLEVBQUUsR0FBRztZQUNSLE9BQU8sRUFBRSxPQUFPO1NBQ2pCLENBQUM7UUFFRixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsV0FBVyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3BDLE1BQU0sUUFBUSxHQUFhLElBQUksUUFBUSxFQUFFLENBQUM7WUFDMUMsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLENBQUMs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LENBQUM7WUFDL0IsUUFBUSxFQUFFLENBQUM7U0FDWjtJQUNILENBQUM7SUFFTSxhQUFhLENBQUMsVUFBZTtRQUNsQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNoRCxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVNLFVBQVUsQ0FBQyxJQUFrQixFQUFFLE9BQXFCO1FBQ3pELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRXhFLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDZixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZDO0lBQ0gsQ0FBQzs2RUF0SFUsbUJBQW1CO2dFQUFuQixtQkFBbUIsV0FBbkIsbUJBQW1COztpRkFBbkIsbUJBQW1CO2NBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEh0dHBDbGllbnQsXG4gIEh0dHBFdmVudFR5cGUsXG4gIEh0dHBFcnJvclJlc3BvbnNlLFxuICBIdHRwUmVxdWVzdCxcbiAgSHR0cFJlc3BvbnNlLFxuICBIdHRwSGVhZGVyc1xufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5cbmltcG9ydCB7IFBvVXBsb2FkRmlsZSB9IGZyb20gJy4vcG8tdXBsb2FkLWZpbGUnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFBvVXBsb2FkQmFzZVNlcnZpY2Uge1xuICBmb3JtRmllbGQ6IHN0cmluZyA9ICdmaWxlcyc7XG4gIHJlcXVlc3RzOiBBcnJheTxhbnk+ID0gW107XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50KSB7fVxuXG4gIC8qKlxuICAgKiBNw6l0b2RvIHJlc3BvbnPDoXZlbCBwb3IgZW52aWFyIG9zIGFycXVpdm9zIGFvIHNlcnZpZG9yLCBjb25mb3JtZSBvIHBhcsOibWV0cm8gVVJMLlxuICAgKlxuICAgKiBAcGFyYW0gdXJsIFVSTCBkYSByZXF1aXNpw6fDo28gYSBzZXIgZWZldHVhZGEuXG4gICAqIEBwYXJhbSBmaWxlcyBBcnF1aXZvcyBhIHNlcmVtIGVudmlhZG9zLlxuICAgKiBAcGFyYW0gdE9uVXBsb2FkIEZ1bsOnw6NvIGEgc2VyIGV4ZWN1dGFkYSBxdWFuZG8gbyBhcnF1aXZvIGZvciBlbnZpYWRvIGFvIHNlcnZpZG9yLlxuICAgKiBAcGFyYW0gdXBsb2FkQ2FsbGJhY2sgRnVuw6fDo28gcXVlIHNlcsOhIGV4ZWN1dGFkYSBlbnF1YW50byBvcyBhcnF1aXZvcyBlc3RpdmVyZW0gc2VuZG8gZW52aWFkb3MuXG4gICAqIEBwYXJhbSBzdWNjZXNzQ2FsbGJhY2sgRnVuw6fDo28gYSBzZXIgZXhlY3V0YWRhIHF1YW5kbyBhIHJlcXVpc2nDp8OjbyBmb3IgZWZldHVhZGEgY29tIHN1Y2Vzc28uXG4gICAqIEBwYXJhbSBlcnJvckNhbGxiYWNrIEZ1bsOnw6NvIGEgc2VyIGV4ZWN1dGFkYSBxdWFuZG8gYSByZXF1aXNpw6fDo28gZm9pIGVmZXR1YWRhIGNvbSBzdWNlc3NvLlxuICAgKi9cbiAgcHVibGljIHVwbG9hZChcbiAgICB1cmw6IHN0cmluZyxcbiAgICBmaWxlczogQXJyYXk8UG9VcGxvYWRGaWxlPixcbiAgICBoZWFkZXJzOiB7IFtuYW1lOiBzdHJpbmddOiBzdHJpbmcgfCBBcnJheTxzdHJpbmc+IH0sXG4gICAgdE9uVXBsb2FkOiBFdmVudEVtaXR0ZXI8YW55PixcbiAgICB1cGxvYWRDYWxsYmFjazogKGZpbGU6IFBvVXBsb2FkRmlsZSwgcGVyY2VudDogbnVtYmVyKSA9PiB2b2lkLFxuICAgIHN1Y2Nlc3NDYWxsYmFjazogKGZpbGU6IFBvVXBsb2FkRmlsZSwgZXZlbnQ6IGFueSkgPT4gdm9pZCxcbiAgICBlcnJvckNhbGxiYWNrOiAoZmlsZTogUG9VcGxvYWRGaWxlLCBldmVudDogYW55KSA9PiB2b2lkXG4gICkge1xuICAgIGNvbnN0IGZpbGVzTGVuZ3RoID0gZmlsZXMubGVuZ3RoO1xuICAgIGNvbnN0IHVwbG9hZEV2ZW50OiBhbnkgPSB7XG4gICAgICBkYXRhOiB7fSxcbiAgICAgIGZpbGU6IG51bGwsXG4gICAgICB1cmw6IHVybCxcbiAgICAgIGhlYWRlcnM6IGhlYWRlcnNcbiAgICB9O1xuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBmaWxlc0xlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCBmb3JtRGF0YTogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICAgIGNvbnN0IGZpbGUgPSBmaWxlc1tpXTtcbiAgICAgIGNvbnN0IGZpbGVOYW1lID0gZmlsZS5yYXdGaWxlLm5hbWU7XG5cbiAgICAgIGZvcm1EYXRhLmFwcGVuZCh0aGlzLmZvcm1GaWVsZCwgZmlsZS5yYXdGaWxlLCBmaWxlTmFtZSk7XG5cbiAgICAgIC8vIEZ1bsOnw6NvIHVwbG9hZCwgb25kZSBvIGRlc2Vudm9sdmVkb3IgcG9kZSBlbnZpYXIgZGFkb3MgcGFyYSBhIHJlcXVpc2nDp8Ojby5cbiAgICAgIGlmICh0T25VcGxvYWQpIHtcbiAgICAgICAgdXBsb2FkRXZlbnRbJ2ZpbGUnXSA9IGZpbGU7XG4gICAgICAgIHRPblVwbG9hZC5lbWl0KHVwbG9hZEV2ZW50KTtcblxuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoJ2RhdGEnLCBKU09OLnN0cmluZ2lmeSh1cGxvYWRFdmVudC5kYXRhKSk7XG4gICAgICAgIHVybCA9IHVwbG9hZEV2ZW50LnVybDtcbiAgICAgICAgaGVhZGVycyA9IHVwbG9hZEV2ZW50LmhlYWRlcnM7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2VuZEZpbGUodXJsLCBmaWxlLCBoZWFkZXJzLCBmb3JtRGF0YSwgdXBsb2FkQ2FsbGJhY2ssIHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjayk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHNlbmRGaWxlKFxuICAgIHVybDogc3RyaW5nLFxuICAgIGZpbGU6IFBvVXBsb2FkRmlsZSxcbiAgICBoZWFkZXJzOiB7IFtuYW1lOiBzdHJpbmddOiBzdHJpbmcgfCBBcnJheTxzdHJpbmc+IH0sXG4gICAgZm9ybURhdGE6IEZvcm1EYXRhLFxuICAgIHVwbG9hZENhbGxiYWNrOiAoZmlsZTogUG9VcGxvYWRGaWxlLCBwZXJjZW50OiBudW1iZXIpID0+IHZvaWQsXG4gICAgc3VjY2Vzc0NhbGxiYWNrOiAoZmlsZTogUG9VcGxvYWRGaWxlLCBldmVudDogYW55KSA9PiB2b2lkLFxuICAgIGVycm9yQ2FsbGJhY2s6IChmaWxlOiBQb1VwbG9hZEZpbGUsIGV2ZW50OiBhbnkpID0+IHZvaWRcbiAgKSB7XG4gICAgbGV0IHJlcXVlc3Q6IFN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcbiAgICByZXF1ZXN0ID0gdGhpcy5nZXRSZXF1ZXN0KHVybCwgaGVhZGVycywgZm9ybURhdGEpLnN1YnNjcmliZShcbiAgICAgIGV2ZW50ID0+IHtcbiAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09IEh0dHBFdmVudFR5cGUuVXBsb2FkUHJvZ3Jlc3MpIHtcbiAgICAgICAgICB0aGlzLmFkZFJlcXVlc3QoZmlsZSwgcmVxdWVzdCk7XG5cbiAgICAgICAgICBjb25zdCBwZXJjZW50RG9uZSA9IE1hdGgucm91bmQoKDEwMCAqIGV2ZW50LmxvYWRlZCkgLyBldmVudC50b3RhbCk7XG4gICAgICAgICAgdXBsb2FkQ2FsbGJhY2soZmlsZSwgcGVyY2VudERvbmUpO1xuICAgICAgICB9IGVsc2UgaWYgKGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSB7XG4gICAgICAgICAgLy8gU3VjZXNzbywgYXJxdWl2b3MgZW52aWFkb3MuXG4gICAgICAgICAgc3VjY2Vzc0NhbGxiYWNrKGZpbGUsIGV2ZW50KTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIChlcnI6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgIGVycm9yQ2FsbGJhY2soZmlsZSwgZXJyKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgcHVibGljIGdldFJlcXVlc3QoXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgaGVhZGVyczogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIHwgQXJyYXk8c3RyaW5nPiB9LFxuICAgIGZvcm1EYXRhOiBGb3JtRGF0YVxuICApOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IGh0dHBIZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKGhlYWRlcnMpO1xuXG4gICAgY29uc3QgcmVxID0gbmV3IEh0dHBSZXF1ZXN0KCdQT1NUJywgdXJsLCBmb3JtRGF0YSwge1xuICAgICAgcmVwb3J0UHJvZ3Jlc3M6IHRydWUsXG4gICAgICBoZWFkZXJzOiBodHRwSGVhZGVyc1xuICAgIH0pO1xuICAgIHJldHVybiB0aGlzLmh0dHAucmVxdWVzdChyZXEpO1xuICB9XG5cbiAgcHVibGljIHN0b3BSZXF1ZXN0QnlGaWxlKGZpbGU6IGFueSwgY2FsbGJhY2s6ICgpID0+IHZvaWQpIHtcbiAgICBjb25zdCByZXF1ZXN0T2JqID0gdGhpcy5yZXF1ZXN0cy5maW5kKHJlcSA9PiByZXEuZmlsZS51aWQgPT09IGZpbGUudWlkKTtcblxuICAgIGlmIChyZXF1ZXN0T2JqKSB7XG4gICAgICBjb25zdCByZXF1ZXN0ID0gcmVxdWVzdE9iai5yZXF1ZXN0O1xuICAgICAgcmVxdWVzdC51bnN1YnNjcmliZSgpO1xuICAgICAgdGhpcy5yZW1vdmVSZXF1ZXN0KHJlcXVlc3RPYmopO1xuICAgICAgY2FsbGJhY2soKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlUmVxdWVzdChyZXF1ZXN0T2JqOiBhbnkpIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMucmVxdWVzdHMuaW5kZXhPZihyZXF1ZXN0T2JqKTtcbiAgICB0aGlzLnJlcXVlc3RzLnNwbGljZShpbmRleCwgMSk7XG4gIH1cblxuICBwdWJsaWMgYWRkUmVxdWVzdChmaWxlOiBQb1VwbG9hZEZpbGUsIHJlcXVlc3Q6IFN1YnNjcmlwdGlvbikge1xuICAgIGNvbnN0IGhhc1JlcXVlc3QgPSB0aGlzLnJlcXVlc3RzLnNvbWUocmVxID0+IHJlcS5maWxlLnVpZCA9PT0gZmlsZS51aWQpO1xuXG4gICAgaWYgKCFoYXNSZXF1ZXN0KSB7XG4gICAgICB0aGlzLnJlcXVlc3RzLnB1c2goeyBmaWxlLCByZXF1ZXN0IH0pO1xuICAgIH1cbiAgfVxufVxuIl19
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tdXBsb2FkLWJhc2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby11cGxvYWQvcG8tdXBsb2FkLWJhc2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBRUwsYUFBYSxFQUViLFdBQVcsRUFDWCxZQUFZLEVBQ1osV0FBVyxFQUNaLE1BQU0sc0JBQXNCLENBQUM7QUFJOUIsT0FBTyxFQUFjLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBR2hELE1BQU0sT0FBTyxtQkFBbUI7SUFJVjtJQUhwQixTQUFTLEdBQVcsT0FBTyxDQUFDO0lBQzVCLFFBQVEsR0FBZSxFQUFFLENBQUM7SUFFMUIsWUFBb0IsSUFBZ0I7UUFBaEIsU0FBSSxHQUFKLElBQUksQ0FBWTtJQUFHLENBQUM7SUFFeEM7Ozs7Ozs7OztPQVNHO0lBQ0ksTUFBTSxDQUNYLEdBQVcsRUFDWCxLQUEwQixFQUMxQixPQUFtRCxFQUNuRCxTQUE0QixFQUM1QixjQUE2RCxFQUM3RCxlQUF5RCxFQUN6RCxhQUF1RDtRQUV2RCxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQ2pDLE1BQU0sV0FBVyxHQUFRO1lBQ3ZCLElBQUksRUFBRSxFQUFFO1lBQ1IsYUFBYSxFQUFFLEVBQUU7WUFDakIsSUFBSSxFQUFFLElBQUk7WUFDVixHQUFHLEVBQUUsR0FBRztZQUNSLE9BQU8sRUFBRSxPQUFPO1NBQ2pCLENBQUM7UUFFRixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsV0FBVyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3BDLE1BQU0sUUFBUSxHQUFhLElBQUksUUFBUSxFQUFFLENBQUM7WUFDMUMsTUFBTSxJQUFJ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QUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFeEUsSUFBSSxVQUFVLEVBQUU7WUFDZCxNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDO1lBQ25DLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQy9CLFFBQVEsRUFBRSxDQUFDO1NBQ1o7SUFDSCxDQUFDO0lBRU0sYUFBYSxDQUFDLFVBQWU7UUFDbEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDaEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTSxVQUFVLENBQUMsSUFBa0IsRUFBRSxPQUFxQjtRQUN6RCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV4RSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztTQUN2QztJQUNILENBQUM7NkVBM0hVLG1CQUFtQjtnRUFBbkIsbUJBQW1CLFdBQW5CLG1CQUFtQjs7aUZBQW5CLG1CQUFtQjtjQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBIdHRwQ2xpZW50LFxuICBIdHRwRXZlbnRUeXBlLFxuICBIdHRwRXJyb3JSZXNwb25zZSxcbiAgSHR0cFJlcXVlc3QsXG4gIEh0dHBSZXNwb25zZSxcbiAgSHR0cEhlYWRlcnNcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuXG5pbXBvcnQgeyBQb1VwbG9hZEZpbGUgfSBmcm9tICcuL3BvLXVwbG9hZC1maWxlJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBQb1VwbG9hZEJhc2VTZXJ2aWNlIHtcbiAgZm9ybUZpZWxkOiBzdHJpbmcgPSAnZmlsZXMnO1xuICByZXF1ZXN0czogQXJyYXk8YW55PiA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCkge31cblxuICAvKipcbiAgICogTcOpdG9kbyByZXNwb25zw6F2ZWwgcG9yIGVudmlhciBvcyBhcnF1aXZvcyBhbyBzZXJ2aWRvciwgY29uZm9ybWUgbyBwYXLDom1ldHJvIFVSTC5cbiAgICpcbiAgICogQHBhcmFtIHVybCBVUkwgZGEgcmVxdWlzacOnw6NvIGEgc2VyIGVmZXR1YWRhLlxuICAgKiBAcGFyYW0gZmlsZXMgQXJxdWl2b3MgYSBzZXJlbSBlbnZpYWRvcy5cbiAgICogQHBhcmFtIHRPblVwbG9hZCBGdW7Dp8OjbyBhIHNlciBleGVjdXRhZGEgcXVhbmRvIG8gYXJxdWl2byBmb3IgZW52aWFkbyBhbyBzZXJ2aWRvci5cbiAgICogQHBhcmFtIHVwbG9hZENhbGxiYWNrIEZ1bsOnw6NvIHF1ZSBzZXLDoSBleGVjdXRhZGEgZW5xdWFudG8gb3MgYXJxdWl2b3MgZXN0aXZlcmVtIHNlbmRvIGVudmlhZG9zLlxuICAgKiBAcGFyYW0gc3VjY2Vzc0NhbGxiYWNrIEZ1bsOnw6NvIGEgc2VyIGV4ZWN1dGFkYSBxdWFuZG8gYSByZXF1aXNpw6fDo28gZm9yIGVmZXR1YWRhIGNvbSBzdWNlc3NvLlxuICAgKiBAcGFyYW0gZXJyb3JDYWxsYmFjayBGdW7Dp8OjbyBhIHNlciBleGVjdXRhZGEgcXVhbmRvIGEgcmVxdWlzacOnw6NvIGZvaSBlZmV0dWFkYSBjb20gc3VjZXNzby5cbiAgICovXG4gIHB1YmxpYyB1cGxvYWQoXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgZmlsZXM6IEFycmF5PFBvVXBsb2FkRmlsZT4sXG4gICAgaGVhZGVyczogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIHwgQXJyYXk8c3RyaW5nPiB9LFxuICAgIHRPblVwbG9hZDogRXZlbnRFbWl0dGVyPGFueT4sXG4gICAgdXBsb2FkQ2FsbGJhY2s6IChmaWxlOiBQb1VwbG9hZEZpbGUsIHBlcmNlbnQ6IG51bWJlcikgPT4gdm9pZCxcbiAgICBzdWNjZXNzQ2FsbGJhY2s6IChmaWxlOiBQb1VwbG9hZEZpbGUsIGV2ZW50OiBhbnkpID0+IHZvaWQsXG4gICAgZXJyb3JDYWxsYmFjazogKGZpbGU6IFBvVXBsb2FkRmlsZSwgZXZlbnQ6IGFueSkgPT4gdm9pZFxuICApIHtcbiAgICBjb25zdCBmaWxlc0xlbmd0aCA9IGZpbGVzLmxlbmd0aDtcbiAgICBjb25zdCB1cGxvYWRFdmVudDogYW55ID0ge1xuICAgICAgZGF0YToge30sXG4gICAgICBleHRyYUZvcm1EYXRhOiB7fSxcbiAgICAgIGZpbGU6IG51bGwsXG4gICAgICB1cmw6IHVybCxcbiAgICAgIGhlYWRlcnM6IGhlYWRlcnNcbiAgICB9O1xuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBmaWxlc0xlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCBmb3JtRGF0YTogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICAgIGNvbnN0IGZpbGUgPSBmaWxlc1tpXTtcbiAgICAgIGNvbnN0IGZpbGVOYW1lID0gZmlsZS5yYXdGaWxlLm5hbWU7XG5cbiAgICAgIGZvcm1EYXRhLmFwcGVuZCh0aGlzLmZvcm1GaWVsZCwgZmlsZS5yYXdGaWxlLCBmaWxlTmFtZSk7XG5cbiAgICAgIC8vIEZ1bsOnw6NvIHVwbG9hZCwgb25kZSBvIGRlc2Vudm9sdmVkb3IgcG9kZSBlbnZpYXIgZGFkb3MgcGFyYSBhIHJlcXVpc2nDp8Ojby5cbiAgICAgIGlmICh0T25VcGxvYWQpIHtcbiAgICAgICAgdXBsb2FkRXZlbnRbJ2ZpbGUnXSA9IGZpbGU7XG4gICAgICAgIHRPblVwbG9hZC5lbWl0KHVwbG9hZEV2ZW50KTtcblxuICAgICAgICBPYmplY3Qua2V5cyh1cGxvYWRFdmVudC5leHRyYUZvcm1EYXRhKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgZm9ybURhdGEuYXBwZW5kKGtleSwgdXBsb2FkRXZlbnQuZXh0cmFGb3JtRGF0YVtrZXldKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgZm9ybURhdGEuYXBwZW5kKCdkYXRhJywgSlNPTi5zdHJpbmdpZnkodXBsb2FkRXZlbnQuZGF0YSkpO1xuICAgICAgICB1cmwgPSB1cGxvYWRFdmVudC51cmw7XG4gICAgICAgIGhlYWRlcnMgPSB1cGxvYWRFdmVudC5oZWFkZXJzO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnNlbmRGaWxlKHVybCwgZmlsZSwgaGVhZGVycywgZm9ybURhdGEsIHVwbG9hZENhbGxiYWNrLCBzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJhY2spO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzZW5kRmlsZShcbiAgICB1cmw6IHN0cmluZyxcbiAgICBmaWxlOiBQb1VwbG9hZEZpbGUsXG4gICAgaGVhZGVyczogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIHwgQXJyYXk8c3RyaW5nPiB9LFxuICAgIGZvcm1EYXRhOiBGb3JtRGF0YSxcbiAgICB1cGxvYWRDYWxsYmFjazogKGZpbGU6IFBvVXBsb2FkRmlsZSwgcGVyY2VudDogbnVtYmVyKSA9PiB2b2lkLFxuICAgIHN1Y2Nlc3NDYWxsYmFjazogKGZpbGU6IFBvVXBsb2FkRmlsZSwgZXZlbnQ6IGFueSkgPT4gdm9pZCxcbiAgICBlcnJvckNhbGxiYWNrOiAoZmlsZTogUG9VcGxvYWRGaWxlLCBldmVudDogYW55KSA9PiB2b2lkXG4gICkge1xuICAgIGxldCByZXF1ZXN0OiBTdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG4gICAgcmVxdWVzdCA9IHRoaXMuZ2V0UmVxdWVzdCh1cmwsIGhlYWRlcnMsIGZvcm1EYXRhKS5zdWJzY3JpYmUoXG4gICAgICBldmVudCA9PiB7XG4gICAgICAgIGlmIChldmVudC50eXBlID09PSBIdHRwRXZlbnRUeXBlLlVwbG9hZFByb2dyZXNzKSB7XG4gICAgICAgICAgdGhpcy5hZGRSZXF1ZXN0KGZpbGUsIHJlcXVlc3QpO1xuXG4gICAgICAgICAgY29uc3QgcGVyY2VudERvbmUgPSBNYXRoLnJvdW5kKCgxMDAgKiBldmVudC5sb2FkZWQpIC8gZXZlbnQudG90YWwpO1xuICAgICAgICAgIHVwbG9hZENhbGxiYWNrKGZpbGUsIHBlcmNlbnREb25lKTtcbiAgICAgICAgfSBlbHNlIGlmIChldmVudCBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSkge1xuICAgICAgICAgIC8vIFN1Y2Vzc28sIGFycXVpdm9zIGVudmlhZG9zLlxuICAgICAgICAgIHN1Y2Nlc3NDYWxsYmFjayhmaWxlLCBldmVudCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICAoZXJyOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICBlcnJvckNhbGxiYWNrKGZpbGUsIGVycik7XG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRSZXF1ZXN0KFxuICAgIHVybDogc3RyaW5nLFxuICAgIGhlYWRlcnM6IHsgW25hbWU6IHN0cmluZ106IHN0cmluZyB8IEFycmF5PHN0cmluZz4gfSxcbiAgICBmb3JtRGF0YTogRm9ybURhdGFcbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBodHRwSGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycyhoZWFkZXJzKTtcblxuICAgIGNvbnN0IHJlcSA9IG5ldyBIdHRwUmVxdWVzdCgnUE9TVCcsIHVybCwgZm9ybURhdGEsIHtcbiAgICAgIHJlcG9ydFByb2dyZXNzOiB0cnVlLFxuICAgICAgaGVhZGVyczogaHR0cEhlYWRlcnNcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnJlcXVlc3QocmVxKTtcbiAgfVxuXG4gIHB1YmxpYyBzdG9wUmVxdWVzdEJ5RmlsZShmaWxlOiBhbnksIGNhbGxiYWNrOiAoKSA9PiB2b2lkKSB7XG4gICAgY29uc3QgcmVxdWVzdE9iaiA9IHRoaXMucmVxdWVzdHMuZmluZChyZXEgPT4gcmVxLmZpbGUudWlkID09PSBmaWxlLnVpZCk7XG5cbiAgICBpZiAocmVxdWVzdE9iaikge1xuICAgICAgY29uc3QgcmVxdWVzdCA9IHJlcXVlc3RPYmoucmVxdWVzdDtcbiAgICAgIHJlcXVlc3QudW5zdWJzY3JpYmUoKTtcbiAgICAgIHRoaXMucmVtb3ZlUmVxdWVzdChyZXF1ZXN0T2JqKTtcbiAgICAgIGNhbGxiYWNrKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHJlbW92ZVJlcXVlc3QocmVxdWVzdE9iajogYW55KSB7XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLnJlcXVlc3RzLmluZGV4T2YocmVxdWVzdE9iaik7XG4gICAgdGhpcy5yZXF1ZXN0cy5zcGxpY2UoaW5kZXgsIDEpO1xuICB9XG5cbiAgcHVibGljIGFkZFJlcXVlc3QoZmlsZTogUG9VcGxvYWRGaWxlLCByZXF1ZXN0OiBTdWJzY3JpcHRpb24pIHtcbiAgICBjb25zdCBoYXNSZXF1ZXN0ID0gdGhpcy5yZXF1ZXN0cy5zb21lKHJlcSA9PiByZXEuZmlsZS51aWQgPT09IGZpbGUudWlkKTtcblxuICAgIGlmICghaGFzUmVxdWVzdCkge1xuICAgICAgdGhpcy5yZXF1ZXN0cy5wdXNoKHsgZmlsZSwgcmVxdWVzdCB9KTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -36604,6 +36604,7 @@ class PoUploadBaseService {
36604
36604
  const filesLength = files.length;
36605
36605
  const uploadEvent = {
36606
36606
  data: {},
36607
+ extraFormData: {},
36607
36608
  file: null,
36608
36609
  url: url,
36609
36610
  headers: headers
@@ -36617,6 +36618,9 @@ class PoUploadBaseService {
36617
36618
  if (tOnUpload) {
36618
36619
  uploadEvent['file'] = file;
36619
36620
  tOnUpload.emit(uploadEvent);
36621
+ Object.keys(uploadEvent.extraFormData).forEach(key => {
36622
+ formData.append(key, uploadEvent.extraFormData[key]);
36623
+ });
36620
36624
  formData.append('data', JSON.stringify(uploadEvent.data));
36621
36625
  url = uploadEvent.url;
36622
36626
  headers = uploadEvent.headers;
@@ -36890,12 +36894,19 @@ class PoUploadBaseComponent {
36890
36894
  *
36891
36895
  * Função que será executada no momento de realizar o envio do arquivo,
36892
36896
  * onde será possível adicionar informações ao parâmetro que será enviado na requisição.
36893
- * É passado por parâmetro um objeto com o arquivo e a propriedade data nesta propriedade pode ser informado algum dado,
36894
- * que será enviado em conjunto com o arquivo na requisição, por exemplo:
36897
+ * É passado por parâmetro um objeto com o arquivo e as propriedades data e extraFormData,
36898
+ * que serão enviadas em conjunto com o arquivo na requisição, por exemplo:
36895
36899
  *
36900
+ * > data, nesta propriedade pode ser informado algum dado
36896
36901
  * ```
36897
36902
  * event.data = {id: 'id do usuário'};
36898
36903
  * ```
36904
+ * > extraFormData, nesta propriedade pode ser informado algum dado solicitado pela API
36905
+ * > que não possa estar no objeto `data`, assim o conteúdo sará extraído do objeto e
36906
+ * > enviado como parâmetro
36907
+ * ```
36908
+ * event.extraFormData = {id: 'id do usuário'};
36909
+ * ```
36899
36910
  */
36900
36911
  onUpload = new EventEmitter();
36901
36912
  /**
@@ -57554,5 +57565,5 @@ const poThemeDefaultDarkValues = {
57554
57565
  * Generated bundle index. Do not edit.
57555
57566
  */
57556
57567
 
57557
- export { ForceBooleanComponentEnum, ForceOptionComponentEnum, I18N_CONFIG, ICONS_DICTIONARY, InputBoolean, InputRequired, PO_CONTROL_POSITIONS, PhosphorIconDictionary, PoAccordionComponent, PoAccordionItemComponent, PoAccordionModule, PoActiveOverlayModule, PoActiveOverlayService, PoAvatarComponent, PoAvatarModule, PoBadgeComponent, PoBadgeModule, PoBreadcrumbComponent, PoBreadcrumbModule, PoButtonComponent, PoButtonGroupComponent, PoButtonGroupModule, PoButtonGroupToggle, PoButtonModule, PoCalendarComponent, PoCalendarMode, PoCalendarModule, PoChartComponent, PoChartModule, PoChartType, PoCheckboxComponent, PoCheckboxGroupComponent, PoCheckboxGroupModule, PoCheckboxModule, PoCheckboxSize, PoCleanComponent, PoCleanModule, PoColorPaletteModule, PoColorPaletteService, PoComboComponent, PoComboFilterMode, PoComboOptionTemplateDirective, PoComponentInjectorModule, PoComponentInjectorService, PoComponentsModule, PoContainerComponent, PoContainerModule, PoControlPositionModule, PoDateService, PoDateTimeModule, PoDatepickerComponent, PoDatepickerIsoFormat, PoDatepickerModule, PoDatepickerRangeComponent, PoDecimalComponent, PoDialogComponent, PoDialogModule, PoDialogService, PoDialogType, PoDirectivesModule, PoDisclaimerComponent, PoDisclaimerGroupComponent, PoDisclaimerGroupModule, PoDisclaimerModule, PoDividerComponent, PoDividerModule, PoDividerSize, PoDropdownComponent, PoDropdownModule, PoDynamicContainerComponent, PoDynamicFieldType, PoDynamicFormComponent, PoDynamicModule, PoDynamicSharedBase, PoDynamicViewComponent, PoEmailComponent, PoFieldContainerBottomComponent, PoFieldContainerComponent, PoFieldContainerModule, PoFieldModule, PoGaugeComponent, PoGaugeModule, PoGridComponent, PoGridModule, PoGuardsModule, PoHttpInterceptorModule, PoHttpInterceptorService, PoHttpRequestInterceptorService, PoHttpRequestModule, PoI18nModule, PoI18nPipe, PoI18nService, PoIconComponent, PoIconDictionary, PoIconModule, PoImageComponent, PoImageModule, PoInfoComponent, PoInfoModule, PoInfoOrientation, PoInputComponent, PoInterceptorsModule, PoItemListComponent, PoLabelComponent, PoLabelModule, PoLanguageModule, PoLanguageService, PoLinkComponent, PoLinkModule, PoListBoxComponent, PoListBoxModule, PoListViewComponent, PoListViewContentTemplateDirective, PoListViewDetailTemplateDirective, PoListViewModule, PoLoadingComponent, PoLoadingIconComponent, PoLoadingModule, PoLoadingOverlayComponent, PoLoginComponent, PoLogoComponent, PoLogoModule, PoLookupComponent, PoLookupModalComponent, PoMenuComponent, PoMenuGlobalService, PoMenuHeaderTemplateDirective, PoMenuModule, PoMenuPanelComponent, PoMenuPanelModule, PoModalComponent, PoModalFooterComponent, PoModalModule, PoModule, PoMultiselectComponent, PoMultiselectFilterMode, PoMultiselectOptionTemplateDirective, PoNavbarComponent, PoNavbarModule, PoNotificationModule, PoNotificationService, PoNumberComponent, PoOverlayComponent, PoOverlayModule, PoPageDefaultComponent, PoPageDetailComponent, PoPageEditComponent, PoPageListComponent, PoPageModule, PoPageSlideComponent, PoPageSlideModule, PoPasswordComponent, PoPipesModule, PoPopoverComponent, PoPopoverModule, PoPopupComponent, PoPopupModule, PoProgressComponent, PoProgressModule, PoProgressSize, PoProgressStatus, PoRadioComponent, PoRadioGroupComponent, PoRadioGroupModule, PoRadioModule, PoRichTextComponent, PoSearchComponent, PoSearchFilterMode, PoSearchListComponent, PoSearchModule, PoSelectComponent, PoServicesModule, PoSlideComponent, PoSlideContentTemplateDirective, PoSlideModule, PoStepComponent, PoStepperComponent, PoStepperModule, PoStepperOrientation, PoStepperStatus, PoSwitchComponent, PoSwitchLabelPosition, PoSwitchModule, PoTabComponent, PoTableCellTemplateDirective, PoTableColumnFrozenDirective, PoTableColumnSortType, PoTableColumnSpacing, PoTableColumnTemplateDirective, PoTableComponent, PoTableModule, PoTableRowTemplateArrowDirection, PoTableRowTemplateDirective, PoTabsComponent, PoTabsModule, PoTabsService, PoTagComponent, PoTagModule, PoTagOrientation, PoTagType, PoTextareaComponent, PoThemeModule, PoThemeService, PoThemeTypeEnum, PoTimeModule, PoTimePipe, PoToasterComponent, PoToasterMode, PoToasterModule, PoToasterOrientation, PoToasterType, PoToolbarComponent, PoToolbarModule, PoTooltipDirective, PoTooltipModule, PoTreeViewComponent, PoTreeViewModule, PoUploadComponent, PoUploadFile, PoUploadStatus, PoUrlComponent, PoWidgetComponent, PoWidgetModule, initializeLanguageDefault, poBreadcrumbLiterals, poDialogAlertLiteralsDefault, poDialogConfirmLiteralsDefault, poLanguageDefault, poLocaleDateSeparatorList, poLocaleDecimalSeparatorList, poLocaleDefault, poLocaleThousandSeparatorList, poLocales, poTabsLiterals, poThemeDefault, poThemeDefaultActions, poThemeDefaultActionsDark, poThemeDefaultBrands, poThemeDefaultDarkValues, poThemeDefaultFeedback, poThemeDefaultFeedbackDark, poThemeDefaultLight, poThemeDefaultLightValues, poThemeDefaultNeutrals, poThemeDefaultNeutralsDark, poToasterLiterals, returnPoI18nService };
57568
+ export { ForceBooleanComponentEnum, ForceOptionComponentEnum, I18N_CONFIG, ICONS_DICTIONARY, InputBoolean, InputRequired, PO_CONTROL_POSITIONS, PhosphorIconDictionary, PoAccordionComponent, PoAccordionItemComponent, PoAccordionModule, PoActiveOverlayModule, PoActiveOverlayService, PoAvatarComponent, PoAvatarModule, PoBadgeComponent, PoBadgeModule, PoBreadcrumbComponent, PoBreadcrumbModule, PoButtonComponent, PoButtonGroupComponent, PoButtonGroupModule, PoButtonGroupToggle, PoButtonModule, PoCalendarComponent, PoCalendarMode, PoCalendarModule, PoChartComponent, PoChartModule, PoChartType, PoCheckboxComponent, PoCheckboxGroupComponent, PoCheckboxGroupModule, PoCheckboxModule, PoCheckboxSize, PoCleanComponent, PoCleanModule, PoColorPaletteModule, PoColorPaletteService, PoComboComponent, PoComboFilterMode, PoComboOptionTemplateDirective, PoComponentInjectorModule, PoComponentInjectorService, PoComponentsModule, PoContainerComponent, PoContainerModule, PoControlPositionModule, PoDateService, PoDateTimeModule, PoDatepickerComponent, PoDatepickerIsoFormat, PoDatepickerModule, PoDatepickerRangeComponent, PoDecimalComponent, PoDialogComponent, PoDialogModule, PoDialogService, PoDialogType, PoDirectivesModule, PoDisclaimerComponent, PoDisclaimerGroupComponent, PoDisclaimerGroupModule, PoDisclaimerModule, PoDividerComponent, PoDividerModule, PoDividerSize, PoDropdownComponent, PoDropdownModule, PoDynamicContainerComponent, PoDynamicFieldType, PoDynamicFormComponent, PoDynamicModule, PoDynamicSharedBase, PoDynamicViewComponent, PoEmailComponent, PoFieldContainerBottomComponent, PoFieldContainerComponent, PoFieldContainerModule, PoFieldModule, PoGaugeComponent, PoGaugeModule, PoGridComponent, PoGridModule, PoGuardsModule, PoHttpInterceptorModule, PoHttpInterceptorService, PoHttpRequestInterceptorService, PoHttpRequestModule, PoI18nModule, PoI18nPipe, PoI18nService, PoIconComponent, PoIconDictionary, PoIconModule, PoImageComponent, PoImageModule, PoInfoComponent, PoInfoModule, PoInfoOrientation, PoInputComponent, PoInterceptorsModule, PoItemListComponent, PoLabelComponent, PoLabelModule, PoLanguageModule, PoLanguageService, PoLinkComponent, PoLinkModule, PoListBoxComponent, PoListBoxModule, PoListViewComponent, PoListViewContentTemplateDirective, PoListViewDetailTemplateDirective, PoListViewModule, PoLoadingComponent, PoLoadingIconComponent, PoLoadingModule, PoLoadingOverlayComponent, PoLoginComponent, PoLogoComponent, PoLogoModule, PoLookupComponent, PoLookupModalComponent, PoMask, PoMenuComponent, PoMenuGlobalService, PoMenuHeaderTemplateDirective, PoMenuModule, PoMenuPanelComponent, PoMenuPanelModule, PoModalComponent, PoModalFooterComponent, PoModalModule, PoModule, PoMultiselectComponent, PoMultiselectFilterMode, PoMultiselectOptionTemplateDirective, PoNavbarComponent, PoNavbarModule, PoNotificationModule, PoNotificationService, PoNumberComponent, PoOverlayComponent, PoOverlayModule, PoPageDefaultComponent, PoPageDetailComponent, PoPageEditComponent, PoPageListComponent, PoPageModule, PoPageSlideComponent, PoPageSlideModule, PoPasswordComponent, PoPipesModule, PoPopoverComponent, PoPopoverModule, PoPopupComponent, PoPopupModule, PoProgressComponent, PoProgressModule, PoProgressSize, PoProgressStatus, PoRadioComponent, PoRadioGroupComponent, PoRadioGroupModule, PoRadioModule, PoRichTextComponent, PoSearchComponent, PoSearchFilterMode, PoSearchListComponent, PoSearchModule, PoSelectComponent, PoServicesModule, PoSlideComponent, PoSlideContentTemplateDirective, PoSlideModule, PoStepComponent, PoStepperComponent, PoStepperModule, PoStepperOrientation, PoStepperStatus, PoSwitchComponent, PoSwitchLabelPosition, PoSwitchModule, PoTabComponent, PoTableCellTemplateDirective, PoTableColumnFrozenDirective, PoTableColumnSortType, PoTableColumnSpacing, PoTableColumnTemplateDirective, PoTableComponent, PoTableModule, PoTableRowTemplateArrowDirection, PoTableRowTemplateDirective, PoTabsComponent, PoTabsModule, PoTabsService, PoTagComponent, PoTagModule, PoTagOrientation, PoTagType, PoTextareaComponent, PoThemeModule, PoThemeService, PoThemeTypeEnum, PoTimeModule, PoTimePipe, PoToasterComponent, PoToasterMode, PoToasterModule, PoToasterOrientation, PoToasterType, PoToolbarComponent, PoToolbarModule, PoTooltipDirective, PoTooltipModule, PoTreeViewComponent, PoTreeViewModule, PoUploadComponent, PoUploadFile, PoUploadStatus, PoUrlComponent, PoWidgetComponent, PoWidgetModule, initializeLanguageDefault, poBreadcrumbLiterals, poDialogAlertLiteralsDefault, poDialogConfirmLiteralsDefault, poLanguageDefault, poLocaleDateSeparatorList, poLocaleDecimalSeparatorList, poLocaleDefault, poLocaleThousandSeparatorList, poLocales, poTabsLiterals, poThemeDefault, poThemeDefaultActions, poThemeDefaultActionsDark, poThemeDefaultBrands, poThemeDefaultDarkValues, poThemeDefaultFeedback, poThemeDefaultFeedbackDark, poThemeDefaultLight, poThemeDefaultLightValues, poThemeDefaultNeutrals, poThemeDefaultNeutralsDark, poToasterLiterals, returnPoI18nService };
57558
57569
  //# sourceMappingURL=po-ui-ng-components.mjs.map