@sumaris-net/ngx-components 1.22.8 → 1.22.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/sumaris-net.ngx-components.umd.js +142 -460
- package/bundles/sumaris-net.ngx-components.umd.js.map +1 -1
- package/bundles/sumaris-net.ngx-components.umd.min.js +1 -1
- package/bundles/sumaris-net.ngx-components.umd.min.js.map +1 -1
- package/esm2015/public_api.js +1 -2
- package/esm2015/src/app/social/social.module.js +2 -2
- package/esm2015/src/app/social/user-event/user-event.module.js +2 -10
- package/esm2015/src/app/social/user-event/user-event.service.js +4 -82
- package/esm2015/sumaris-net.ngx-components.js +7 -8
- package/fesm2015/sumaris-net.ngx-components.js +129 -398
- package/fesm2015/sumaris-net.ngx-components.js.map +1 -1
- package/package.json +1 -1
- package/public_api.d.ts +0 -1
- package/src/app/social/user-event/user-event.service.d.ts +1 -13
- package/sumaris-net.ngx-components.d.ts +6 -7
- package/sumaris-net.ngx-components.metadata.json +1 -1
- package/esm2015/src/app/social/user-event/user-events.table.js +0 -131
- package/src/app/social/user-event/user-events.table.d.ts +0 -58
package/esm2015/public_api.js
CHANGED
|
@@ -187,7 +187,6 @@ export * from './src/app/social/user-event/user-event.module';
|
|
|
187
187
|
export * from './src/app/social/user-event/user-event.model';
|
|
188
188
|
export * from './src/app/social/user-event/user-event.fragments';
|
|
189
189
|
export * from './src/app/social/user-event/user-event.service';
|
|
190
|
-
export * from './src/app/social/user-event/user-events.table';
|
|
191
190
|
export * from './src/app/social/user-event/notification/user-event-notification.component';
|
|
192
191
|
export * from './src/app/social/job/job.module';
|
|
193
192
|
export * from './src/app/social/job/job.model';
|
|
@@ -233,4 +232,4 @@ export * from './src/app/core/table/testing/table.testing';
|
|
|
233
232
|
export * from './src/app/core/text-popover/testing/text-popover.testing.module';
|
|
234
233
|
export * from './src/app/core/text-popover/testing/text-popover.testing';
|
|
235
234
|
export { suggestFromArray } from "./src/app/shared/services";
|
|
236
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYztBQUVkLGNBQWMsc0NBQXNDLENBQUM7QUFFckQsU0FBUztBQUNULGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUUzRSxrQkFBa0I7QUFDbEIsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxvREFBb0QsQ0FBQztBQUNuRixjQUFjLHFFQUFxRSxDQUFDO0FBQ3BGLE9BQU8sRUFBQyxvQkFBb0IsRUFBOEIsMkJBQTJCLEVBQWlDLE1BQU0sOERBQThELENBQUM7QUFDM0wsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDN0UsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLDZEQUE2RCxDQUFDO0FBQzVFLGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sdURBQXVELENBQUM7QUFDbkYsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQ2pGLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUN6RSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFDbkYsY0FBYywyREFBMkQsQ0FBQztBQUMxRSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUNqRixjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FB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QztBQUN2RCxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsaUVBQWlFLENBQUM7QUFFaEYsZUFBZTtBQUNmLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEVudmlyb25tZW50XG5cbmV4cG9ydCAqIGZyb20gJy4vc3JjL2Vudmlyb25tZW50cy9lbnZpcm9ubWVudC5jbGFzcyc7XG5cbi8vIFNoYXJlZFxuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9zaGFyZWQubW9kdWxlJztcbmV4cG9ydCB7U2hhcmVkUm91dGluZ01vZHVsZX0gZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9zaGFyZWQtcm91dGluZy5tb2R1bGUnO1xuXG4vLyBTaGFyZWQgbWF0ZXJpYWxcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvbWF0ZXJpYWwubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvYm9vbGVhbi9ib29sZWFuLm1vZHVsZSc7XG5leHBvcnQge01hdEJvb2xlYW5GaWVsZH0gZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9ib29sZWFuL21hdGVyaWFsLmJvb2xlYW4nO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9hdXRvY29tcGxldGUvbWF0ZXJpYWwuYXV0b2NvbXBsZXRlLm1vZHVsZSc7XG5leHBvcnQge01hdEF1dG9jb21wbGV0ZUZpZWxkLCBNYXRBdXRvY29tcGxldGVGaWVsZENvbmZpZywgTWF0QXV0b2NvbXBsZXRlQ29uZmlnSG9sZGVyLCBNYXRBdXRvY29tcGxldGVGaWVsZEFkZE9wdGlvbnN9IGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlL21hdGVyaWFsLmF1dG9jb21wbGV0ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2NoaXBzL2NoaXBzLm1vZHVsZSc7XG5leHBvcnQge01hdENoaXBzRmllbGR9IGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvY2hpcHMvbWF0ZXJpYWwuY2hpcHMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9tYXRlcmlhbC5hbmltYXRpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvcGFnaW5hdG9yL21hdGVyaWFsLnBhZ2luYXRvci1pMThuJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvc3RlcHBlci9tYXRlcmlhbC5zdGVwcGVyLWkxOG4nO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9kYXRldGltZS9kYXRldGltZS5tb2R1bGUnO1xuZXhwb3J0IHtNYXREYXRlU2hvcnR9IGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvZGF0ZXRpbWUvbWF0ZXJpYWwuZGF0ZXNob3J0JztcbmV4cG9ydCB7TWF0RGF0ZVRpbWV9IGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvZGF0ZXRpbWUvbWF0ZXJpYWwuZGF0ZXRpbWUnO1xuZXhwb3J0IHtNYXREYXRlfSBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2RhdGV0aW1lL21hdGVyaWFsLmRhdGUnO1xuZXhwb3J0IHtNYXRMYXRMb25nRmllbGR9IGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvbGF0bG9uZy9tYXRlcmlhbC5sYXRsb25nJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvbGF0bG9uZy9tYXRlcmlhbC5sYXRsb25nLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2R1cmF0aW9uL2R1cmF0aW9uLm1vZHVsZSc7XG5leHBvcnQge01hdER1cmF0aW9ufSBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2R1cmF0aW9uL21hdGVyaWFsLmR1cmF0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvbnVtcGFkL251bXBhZC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9udW1wYWQvbnVtcGFkLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL251bXBhZC9udW1wYWQuYXBwZW5kLXRvLWlucHV0LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL251bXBhZC9udW1wYWQuY29udGFpbmVyJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvbnVtcGFkL251bXBhZC5jb250ZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvbnVtcGFkL251bXBhZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9zd2lwZS9zd2lwZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9zd2lwZS9tYXRlcmlhbC5zd2lwZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2JhZGdlL2JhZGdlLWljb24ubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvYmFkZ2UvYmFkZ2UtaWNvbi5kaXJlY3RpdmUnO1xuXG4vLyBTaGFyZWQgY29tcG9uZW50c1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9pbnB1dHMnO1xuZXhwb3J0IHtBcHBGb3JtRmllbGR9IGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvZm9ybS9maWVsZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9mb3JtL2xvYWRpbmctc3Bpbm5lcic7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2Zvcm0vZmllbGQubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC90b29sYmFyL3Rvb2xiYXInO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC90b29sYmFyL21vZGFsLXRvb2xiYXInO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9pbnRlcmNlcHRvcnMvcHJvZ2Vzcy5pbnRlcmNlcHRvcic7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3RvYXN0L3RvYXN0cyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2hlbHAvaGVscC5tb2RhbCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2d1YXJkL2NvbXBvbmVudC1kaXJ0eS5ndWFyZCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3VwbG9hZC1maWxlL3VwbG9hZC1maWxlLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvdXBsb2FkLWZpbGUvdXBsb2FkLWZpbGUtcG9wb3Zlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC91cGxvYWQtZmlsZS91cGxvYWQtZmlsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvdGV4dC1wb3BvdmVyL3RleHQtZm9ybS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvdGV4dC1wb3BvdmVyL3RleHQtcG9wb3Zlci5jb21wb25lbnQnO1xuXG4vLyBTaGFyZWQgZGlyZWN0aXZlc1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9kaXJlY3RpdmVzL2RpcmVjdGl2ZXMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvZGlyZWN0aXZlcy9hdXRvZm9jdXMuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvZGlyZWN0aXZlcy9uZy12YXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvZGlyZWN0aXZlcy9kcmFnLWFuZC1kcm9wLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2RpcmVjdGl2ZXMvYXV0b3RpdGxlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2RpcmVjdGl2ZXMvcmVzaXphYmxlL3Jlc2l6YWJsZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9kaXJlY3RpdmVzL3Jlc2l6YWJsZS9yZXNpemFibGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvZGlyZWN0aXZlcy9yZXNpemFibGUvcmVzaXphYmxlLm1vZHVsZSc7XG5cbi8vIFNoYXJlZCBwaXBlc1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9waXBlcy9waXBlcy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9waXBlcy9kYXRlLWZvcm1hdC5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvZGF0ZS1mcm9tLW5vdy5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvZGF0ZS1kaWZmLWR1cmF0aW9uLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9waXBlcy9sYXRsb25nLWZvcm1hdC5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvaGlnaGxpZ2h0LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9waXBlcy9udW1iZXItZm9ybWF0LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9waXBlcy9kdXJhdGlvbi5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvZmlsZS1zaXplLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9waXBlcy9wcm9wZXJ0eS5waXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3BpcGVzL21hdGgucGlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9waXBlcy9hcnJheXMucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3BpcGVzL21hcHMucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3BpcGVzL3N0cmluZy5waXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3BpcGVzL3RyYW5zbGF0ZS1jb250ZXh0LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9waXBlcy9uZy1pbml0LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9waXBlcy9mb3JtLnBpcGVzJztcblxuLy8gU2hhcmVkIHNlcnZpY2VzXG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2F1ZGlvL2F1ZGlvJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvZmlsZS9maWxlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9zZXJ2aWNlcy9zdGFydGFibGUtc2VydmljZS5jbGFzcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3NlcnZpY2VzL2VudGl0eS1zZXJ2aWNlLmNsYXNzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvc2VydmljZXMvbWVtb3J5LWVudGl0eS1zZXJ2aWNlLmNsYXNzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvc2VydmljZXMvcHJvZ3Jlc3MtYmFyLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9zZXJ2aWNlcy90cmFuc2xhdGUtY29udGV4dC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvc2VydmljZXMvam9iLnV0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvdmFsaWRhdG9yL2Zvcm0tZXJyb3ItYWRhcHRlci5jbGFzcyc7XG5cbi8vIFNoYXJlZCBvdGhlclxuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2RhdGVzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvZnVuY3Rpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvc2VydmljZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9mb3Jtcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL29ic2VydmFibGVzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvZXZlbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvYWxlcnRzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvcGxhdGZvcm1zJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvZmlsZS9maWxlLnV0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvZmlsZS9jc3YudXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9maWxlL3VyaS51dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2hvdGtleXMvc2hhcmVkLWhvdGtleXMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvaG90a2V5cy9ob3RrZXlzLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9ob3RrZXlzL2RpYWxvZy9ob3RrZXlzLWRpYWxvZy5jb21wb25lbnQnO1xuZXhwb3J0IHtDb2xvciwgQ29sb3JOYW1lLCBDb2xvclNjYWxlLCBDb2xvclNjYWxlTGVnZW5kLCBDb2xvclNjYWxlT3B0aW9ucywgQ29sb3JHcmFkaWVudE9wdGlvbnMsIENvbG9yU2NhbGVMZWdlbmRJdGVtfSBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2dyYXBoL2dyYXBoLWNvbG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2dyYXBoL2NvbG9ycy51dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2dlc3R1cmUvZ2VzdHVyZS1jb25maWcnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9nZXN0dXJlL2hhbW1lci51dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3ZhbGlkYXRvci92YWxpZGF0b3JzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvdmFsaWRhdG9yL2Zvcm0tZXJyb3ItYWRhcHRlci5jbGFzcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2xhdGxvbmcvbGF0bG9uZy51dGlscyc7XG5cbi8vIENvcmVcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL2NvcmUubW9kdWxlJztcblxuLy8gQ29yZSBtb2RlbFxuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvbW9kZWwvYWNjb3VudC5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9tb2RlbC9jb25maWcubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvbW9kZWwvZGVwYXJ0bWVudC5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9tb2RlbC9lbnRpdHkubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvbW9kZWwvZmlsdGVyLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL21vZGVsL2hpc3RvcnkubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvbW9kZWwvbW9kZWwuZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9tb2RlbC9wZWVyLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL21vZGVsL3BlcnNvbi5tb2RlbCc7XG5leHBvcnQgeyBJUmVmZXJlbnRpYWxSZWYsIFJlZmVyZW50aWFsUmVmLFxuICBCYXNlUmVmZXJlbnRpYWwsIFJlZmVyZW50aWFsLCBSZWZlcmVudGlhbFV0aWxzLFxuICBSZWZlcmVudGlhbEFzT2JqZWN0T3B0aW9ucyxcbiAgcmVmZXJlbnRpYWxUb1N0cmluZywgcmVmZXJlbnRpYWxzVG9TdHJpbmcsXG4gIElTdGF0dXMsIFN0YXR1c0xpc3QsIFN0YXR1c0J5SWQsXG4gIE1JTklGWV9FTlRJVFlfRk9SX0xPQ0FMX1NUT1JBR0UsIE1JTklGWV9FTlRJVFlfRk9SX1BPRCB9IGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL21vZGVsL3JlZmVyZW50aWFsLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL21vZGVsL3NldHRpbmdzLm1vZGVsJztcblxuLy8gR3JhcGhRTFxuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvZ3JhcGhxbC9ncmFwaHFsLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9ncmFwaHFsL2dyYXBocWwuc2VydmljZSc7XG5cbi8vIENvcmUgcGlwZXNcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL3BpcGVzL2FjY291bnQucGlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvcGlwZXMvZGVwYXJ0bWVudC10by1zdHJpbmcucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9waXBlcy9wZXJzb24tdG8tc3RyaW5nLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvcGlwZXMvdXNhZ2UtbW9kZS5waXBlcyc7XG5cbi8vIENvcmUgc2VydmljZXNcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC92ZW5kb3InO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvcGxhdGZvcm0uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9uZXR3b3JrLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvY29uZmlnLnNlcnZpY2UnO1xuZXhwb3J0IHtDT1JFX0NPTkZJR19PUFRJT05TfSBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9jb25maWcvY29yZS5jb25maWcnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvbG9jYWwtc2V0dGluZ3Muc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9hY2NvdW50LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvY3J5cHRvLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvYXV0aC1ndWFyZC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL2Jhc2U1OCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9iYXNlLWdyYXBocWwtc2VydmljZS5jbGFzcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9iYXNlLWVudGl0eS1zZXJ2aWNlLmNsYXNzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL3N0b3JhZ2UvZW50aXRpZXMtc3RvcmFnZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL3N0b3JhZ2UvZW50aXR5LXN0b3JlLmNsYXNzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL3ZhbGlkYXRvci9iYXNlLnZhbGlkYXRvci5jbGFzcyc7XG5cbi8vIENvcmUgY29tcG9uZW50c1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvZm9ybS9lZGl0b3IuY2xhc3MnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvZm9ybS9lbnRpdHktZWRpdG9yLmNsYXNzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL2Zvcm0vZW50aXR5LWVkaXRvci1tb2RhbC5jbGFzcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9mb3JtL2VudGl0eS1tZXRhZGF0YS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvZm9ybS9mb3JtLmNsYXNzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL2Zvcm0vZm9ybS51dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9mb3JtL2Zvcm0tYnV0dG9ucy1iYXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL2Zvcm0vbGlzdC5mb3JtJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL2Zvcm0vcHJvcGVydGllcy5mb3JtJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3RhYmxlL3RhYmxlLmNsYXNzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3RhYmxlL3RhYmxlLnV0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3RhYmxlL21lbW9yeS10YWJsZS5jbGFzcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS90YWJsZS9lbnRpdGllcy10YWJsZS1kYXRhc291cmNlLmNsYXNzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3RhYmxlL3RhYmxlLXNlbGVjdC1jb2x1bW5zLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS90YWJsZS9hY3Rpb25zLWNvbHVtbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvaWNvbi9pY29uLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9pY29uL2ljb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL2hvbWUvaG9tZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXR0aW5ncy9zZXR0aW5ncy5wYWdlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL2FjY291bnQvYWNjb3VudCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9hdXRoL2Zvcm0vZm9ybS1hdXRoJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL2F1dGgvbW9kYWwvbW9kYWwtYXV0aCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9yZWdpc3Rlci9jb25maXJtL2NvbmZpcm0nO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvYWJvdXQvbW9kYWwtYWJvdXQnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvcGVlci9zZWxlY3QtcGVlci5tb2RhbCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9pbnN0YWxsL2luc3RhbGwtdXBncmFkZS1jYXJkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9tZW51L21lbnUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL21lbnUvbWVudS5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9tZW51L21lbnUubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL21lbnUvbWVudS5zZXJ2aWNlJztcblxuLy8gQ29yZSBkZWNvcmF0b3JcbmV4cG9ydCB7RW50aXR5Q2xhc3MsIEVudGl0eUNsYXNzZXN9IGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL21vZGVsL2VudGl0eS5kZWNvcmF0b3JzJztcblxuXG4vLyBTb2NpYWxcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zb2NpYWwvc29jaWFsLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc29jaWFsL3NvY2lhbC5lcnJvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NvY2lhbC91c2VyLWV2ZW50L3VzZXItZXZlbnQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zb2NpYWwvdXNlci1ldmVudC91c2VyLWV2ZW50Lm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zb2NpYWwvdXNlci1ldmVudC91c2VyLWV2ZW50LmZyYWdtZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc29jaWFsL3VzZXItZXZlbnQvdXNlci1ldmVudC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zb2NpYWwvdXNlci1ldmVudC91c2VyLWV2ZW50cy50YWJsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc29jaWFsL3VzZXItZXZlbnQvbm90aWZpY2F0aW9uL3VzZXItZXZlbnQtbm90aWZpY2F0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc29jaWFsL2pvYi9qb2IubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zb2NpYWwvam9iL2pvYi5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc29jaWFsL2pvYi9qb2Iuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc29jaWFsL2pvYi9wcm9ncmVzc2lvbi9qb2ItcHJvZ3Jlc3Npb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zb2NpYWwvbWVzc2FnZS9tZXNzYWdlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc29jaWFsL21lc3NhZ2UvbWVzc2FnZS5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc29jaWFsL21lc3NhZ2UvbWVzc2FnZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zb2NpYWwvbWVzc2FnZS9tZXNzYWdlLmZvcm0nO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NvY2lhbC9tZXNzYWdlL21lc3NhZ2UubW9kYWwnO1xuXG4vLyBBZG1pblxuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2FkbWluL2FkbWluLm1vZHVsZSc7XG5leHBvcnQge0FkbWluUm91dGluZ01vZHVsZX0gZnJvbSAnLi9zcmMvYXBwL2FkbWluL2FkbWluLXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9hZG1pbi9zZXJ2aWNlcy9maWx0ZXIvcGVyc29uLmZpbHRlcic7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvYWRtaW4vc2VydmljZXMvdmFsaWRhdG9yL3BlcnNvbi52YWxpZGF0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2FkbWluL3NlcnZpY2VzL3BlcnNvbi5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9hZG1pbi91c2Vycy9saXN0L3VzZXJzJztcblxuLy8gU2hhcmVkIHRlc3RzIHBhZ2VcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvdGVzdGluZy90ZXN0cy5wYWdlJztcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUZXN0aW5nIG1vZHVsZSBhbmQgY29tcG9uZW50c1xuLy9cbi8vIFRPRE86IHRvIHJlbW92ZSB3aGVuIG5neC1jb21wb25lbnRzIHdpbGwgYmUgd2VsbCB0ZXN0ZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBTaGFyZWQgbWF0ZXJpYWwgdGVzdFxuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9tYXRlcmlhbC50ZXN0aW5nLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2F1dG9jb21wbGV0ZS90ZXN0aW5nL2F1dG9jb21wbGV0ZS50ZXN0JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvbGF0bG9uZy90ZXN0aW5nL2xhdGxvbmcudGVzdCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL3N3aXBlL3Rlc3Rpbmcvc3dpcGUudGVzdCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2RhdGV0aW1lL3Rlc3RpbmcvbWF0LWRhdGUtdGltZS50ZXN0JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvY2hpcHMvdGVzdGluZy9jaGlwcy50ZXN0JztcblxuLy8gU2hhcmVkIG90aGVyIHRlc3RcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvc2hhcmVkLnRlc3RpbmcubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvdXBsb2FkLWZpbGUvdGVzdGluZy91cGxvYWQtZmlsZS50ZXN0aW5nJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvdXBsb2FkLWZpbGUvdGVzdGluZy91cGxvYWQtZmlsZS50ZXN0aW5nLm1vZHVsZSc7XG5cbi8vIENvcmUgdGVzdGluZ1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvY29yZS50ZXN0aW5nLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy90ZXN0aW5nL3JlZmVyZW50aWFsLWZpbHRlci5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy90ZXN0aW5nL3JlZmVyZW50aWFsLnZhbGlkYXRvcic7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9lcnJvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvdGFibGUvdGVzdGluZy90YWJsZS50ZXN0aW5nLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS90YWJsZS90ZXN0aW5nL3RhYmxlLnRlc3RpbmcnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvdGV4dC1wb3BvdmVyL3Rlc3RpbmcvdGV4dC1wb3BvdmVyLnRlc3RpbmcubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3RleHQtcG9wb3Zlci90ZXN0aW5nL3RleHQtcG9wb3Zlci50ZXN0aW5nJztcbmV4cG9ydCB7c3VnZ2VzdEZyb21BcnJheX0gZnJvbSBcIi4vc3JjL2FwcC9zaGFyZWQvc2VydmljZXNcIjtcbiJdfQ==
|
|
235
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYztBQUVkLGNBQWMsc0NBQXNDLENBQUM7QUFFckQsU0FBUztBQUNULGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUUzRSxrQkFBa0I7QUFDbEIsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxvREFBb0QsQ0FBQztBQUNuRixjQUFjLHFFQUFxRSxDQUFDO0FBQ3BGLE9BQU8sRUFBQyxvQkFBb0IsRUFBOEIsMkJBQTJCLEVBQWlDLE1BQU0sOERBQThELENBQUM7QUFDM0wsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDN0UsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLDZEQUE2RCxDQUFDO0FBQzVFLGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sdURBQXVELENBQUM7QUFDbkYsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQ2pGLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUN6RSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFDbkYsY0FBYywyREFBMkQsQ0FBQztBQUMxRSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUNqRixjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FB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QztBQUN6RSxjQUFjLGlFQUFpRSxDQUFDO0FBRWhGLGVBQWU7QUFDZixjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYyx1REFBdUQsQ0FBQztBQUN0RSxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLGlFQUFpRSxDQUFDO0FBQ2hGLGNBQWMsMERBQTBELENBQUM7QUFDekUsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBFbnZpcm9ubWVudFxuXG5leHBvcnQgKiBmcm9tICcuL3NyYy9lbnZpcm9ubWVudHMvZW52aXJvbm1lbnQuY2xhc3MnO1xuXG4vLyBTaGFyZWRcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvY29uc3RhbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvc2hhcmVkLm1vZHVsZSc7XG5leHBvcnQge1NoYXJlZFJvdXRpbmdNb2R1bGV9IGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvc2hhcmVkLXJvdXRpbmcubW9kdWxlJztcblxuLy8gU2hhcmVkIG1hdGVyaWFsXG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL21hdGVyaWFsLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2Jvb2xlYW4vYm9vbGVhbi5tb2R1bGUnO1xuZXhwb3J0IHtNYXRCb29sZWFuRmllbGR9IGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvYm9vbGVhbi9tYXRlcmlhbC5ib29sZWFuJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlL21hdGVyaWFsLmF1dG9jb21wbGV0ZS5tb2R1bGUnO1xuZXhwb3J0IHtNYXRBdXRvY29tcGxldGVGaWVsZCwgTWF0QXV0b2NvbXBsZXRlRmllbGRDb25maWcsIE1hdEF1dG9jb21wbGV0ZUNvbmZpZ0hvbGRlciwgTWF0QXV0b2NvbXBsZXRlRmllbGRBZGRPcHRpb25zfSBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2F1dG9jb21wbGV0ZS9tYXRlcmlhbC5hdXRvY29tcGxldGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9jaGlwcy9jaGlwcy5tb2R1bGUnO1xuZXhwb3J0IHtNYXRDaGlwc0ZpZWxkfSBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2NoaXBzL21hdGVyaWFsLmNoaXBzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvbWF0ZXJpYWwuYW5pbWF0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL3BhZ2luYXRvci9tYXRlcmlhbC5wYWdpbmF0b3ItaTE4bic7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL3N0ZXBwZXIvbWF0ZXJpYWwuc3RlcHBlci1pMThuJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvZGF0ZXRpbWUvZGF0ZXRpbWUubW9kdWxlJztcbmV4cG9ydCB7TWF0RGF0ZVNob3J0fSBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2RhdGV0aW1lL21hdGVyaWFsLmRhdGVzaG9ydCc7XG5leHBvcnQge01hdERhdGVUaW1lfSBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2RhdGV0aW1lL21hdGVyaWFsLmRhdGV0aW1lJztcbmV4cG9ydCB7TWF0RGF0ZX0gZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9kYXRldGltZS9tYXRlcmlhbC5kYXRlJztcbmV4cG9ydCB7TWF0TGF0TG9uZ0ZpZWxkfSBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2xhdGxvbmcvbWF0ZXJpYWwubGF0bG9uZyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2xhdGxvbmcvbWF0ZXJpYWwubGF0bG9uZy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9kdXJhdGlvbi9kdXJhdGlvbi5tb2R1bGUnO1xuZXhwb3J0IHtNYXREdXJhdGlvbn0gZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9kdXJhdGlvbi9tYXRlcmlhbC5kdXJhdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL251bXBhZC9udW1wYWQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvbnVtcGFkL251bXBhZC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9udW1wYWQvbnVtcGFkLmFwcGVuZC10by1pbnB1dC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9udW1wYWQvbnVtcGFkLmNvbnRhaW5lcic7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL251bXBhZC9udW1wYWQuY29udGVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL251bXBhZC9udW1wYWQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvc3dpcGUvc3dpcGUubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvc3dpcGUvbWF0ZXJpYWwuc3dpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9iYWRnZS9iYWRnZS1pY29uLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2JhZGdlL2JhZGdlLWljb24uZGlyZWN0aXZlJztcblxuLy8gU2hhcmVkIGNvbXBvbmVudHNcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvaW5wdXRzJztcbmV4cG9ydCB7QXBwRm9ybUZpZWxkfSBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2Zvcm0vZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvZm9ybS9sb2FkaW5nLXNwaW5uZXInO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9mb3JtL2ZpZWxkLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvdG9vbGJhci90b29sYmFyJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvdG9vbGJhci9tb2RhbC10b29sYmFyJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvaW50ZXJjZXB0b3JzL3Byb2dlc3MuaW50ZXJjZXB0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC90b2FzdC90b2FzdHMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9oZWxwL2hlbHAubW9kYWwnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9ndWFyZC9jb21wb25lbnQtZGlydHkuZ3VhcmQnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC91cGxvYWQtZmlsZS91cGxvYWQtZmlsZS5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3VwbG9hZC1maWxlL3VwbG9hZC1maWxlLXBvcG92ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvdXBsb2FkLWZpbGUvdXBsb2FkLWZpbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3RleHQtcG9wb3Zlci90ZXh0LWZvcm0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3RleHQtcG9wb3Zlci90ZXh0LXBvcG92ZXIuY29tcG9uZW50JztcblxuLy8gU2hhcmVkIGRpcmVjdGl2ZXNcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvZGlyZWN0aXZlcy9kaXJlY3RpdmVzLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2RpcmVjdGl2ZXMvYXV0b2ZvY3VzLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2RpcmVjdGl2ZXMvbmctdmFyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2RpcmVjdGl2ZXMvZHJhZy1hbmQtZHJvcC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9kaXJlY3RpdmVzL2F1dG90aXRsZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9kaXJlY3RpdmVzL3Jlc2l6YWJsZS9yZXNpemFibGUuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvZGlyZWN0aXZlcy9yZXNpemFibGUvcmVzaXphYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2RpcmVjdGl2ZXMvcmVzaXphYmxlL3Jlc2l6YWJsZS5tb2R1bGUnO1xuXG4vLyBTaGFyZWQgcGlwZXNcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvcGlwZXMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvZGF0ZS1mb3JtYXQucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3BpcGVzL2RhdGUtZnJvbS1ub3cucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3BpcGVzL2RhdGUtZGlmZi1kdXJhdGlvbi5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvbGF0bG9uZy1mb3JtYXQucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3BpcGVzL2hpZ2hsaWdodC5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvbnVtYmVyLWZvcm1hdC5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvZHVyYXRpb24ucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3BpcGVzL2ZpbGUtc2l6ZS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvcHJvcGVydHkucGlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9waXBlcy9tYXRoLnBpcGVzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvYXJyYXlzLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9waXBlcy9tYXBzLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9waXBlcy9zdHJpbmcucGlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9waXBlcy90cmFuc2xhdGUtY29udGV4dC5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvbmctaW5pdC5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvZm9ybS5waXBlcyc7XG5cbi8vIFNoYXJlZCBzZXJ2aWNlc1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9hdWRpby9hdWRpbyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2ZpbGUvZmlsZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvc2VydmljZXMvc3RhcnRhYmxlLXNlcnZpY2UuY2xhc3MnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9zZXJ2aWNlcy9lbnRpdHktc2VydmljZS5jbGFzcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3NlcnZpY2VzL21lbW9yeS1lbnRpdHktc2VydmljZS5jbGFzcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3NlcnZpY2VzL3Byb2dyZXNzLWJhci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvc2VydmljZXMvdHJhbnNsYXRlLWNvbnRleHQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3NlcnZpY2VzL2pvYi51dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3ZhbGlkYXRvci9mb3JtLWVycm9yLWFkYXB0ZXIuY2xhc3MnO1xuXG4vLyBTaGFyZWQgb3RoZXJcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9kYXRlcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2Z1bmN0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3NlcnZpY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvZm9ybXMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9vYnNlcnZhYmxlcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2V2ZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2FsZXJ0cyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3BsYXRmb3Jtcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2ZpbGUvZmlsZS51dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2ZpbGUvY3N2LnV0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvZmlsZS91cmkudXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9ob3RrZXlzL3NoYXJlZC1ob3RrZXlzLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL2hvdGtleXMvaG90a2V5cy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvaG90a2V5cy9kaWFsb2cvaG90a2V5cy1kaWFsb2cuY29tcG9uZW50JztcbmV4cG9ydCB7Q29sb3IsIENvbG9yTmFtZSwgQ29sb3JTY2FsZSwgQ29sb3JTY2FsZUxlZ2VuZCwgQ29sb3JTY2FsZU9wdGlvbnMsIENvbG9yR3JhZGllbnRPcHRpb25zLCBDb2xvclNjYWxlTGVnZW5kSXRlbX0gZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9ncmFwaC9ncmFwaC1jb2xvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9ncmFwaC9jb2xvcnMudXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9nZXN0dXJlL2dlc3R1cmUtY29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvZ2VzdHVyZS9oYW1tZXIudXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC92YWxpZGF0b3IvdmFsaWRhdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3ZhbGlkYXRvci9mb3JtLWVycm9yLWFkYXB0ZXIuY2xhc3MnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9sYXRsb25nL2xhdGxvbmcudXRpbHMnO1xuXG4vLyBDb3JlXG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9jb3JlLm1vZHVsZSc7XG5cbi8vIENvcmUgbW9kZWxcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL21vZGVsL2FjY291bnQubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvbW9kZWwvY29uZmlnLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL21vZGVsL2RlcGFydG1lbnQubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvbW9kZWwvZW50aXR5Lm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL21vZGVsL2ZpbHRlci5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9tb2RlbC9oaXN0b3J5Lm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL21vZGVsL21vZGVsLmVudW0nO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvbW9kZWwvcGVlci5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9tb2RlbC9wZXJzb24ubW9kZWwnO1xuZXhwb3J0IHsgSVJlZmVyZW50aWFsUmVmLCBSZWZlcmVudGlhbFJlZixcbiAgQmFzZVJlZmVyZW50aWFsLCBSZWZlcmVudGlhbCwgUmVmZXJlbnRpYWxVdGlscyxcbiAgUmVmZXJlbnRpYWxBc09iamVjdE9wdGlvbnMsXG4gIHJlZmVyZW50aWFsVG9TdHJpbmcsIHJlZmVyZW50aWFsc1RvU3RyaW5nLFxuICBJU3RhdHVzLCBTdGF0dXNMaXN0LCBTdGF0dXNCeUlkLFxuICBNSU5JRllfRU5USVRZX0ZPUl9MT0NBTF9TVE9SQUdFLCBNSU5JRllfRU5USVRZX0ZPUl9QT0QgfSBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9tb2RlbC9yZWZlcmVudGlhbC5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9tb2RlbC9zZXR0aW5ncy5tb2RlbCc7XG5cbi8vIEdyYXBoUUxcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL2dyYXBocWwvZ3JhcGhxbC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvZ3JhcGhxbC9ncmFwaHFsLnNlcnZpY2UnO1xuXG4vLyBDb3JlIHBpcGVzXG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9waXBlcy9hY2NvdW50LnBpcGVzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL3BpcGVzL2RlcGFydG1lbnQtdG8tc3RyaW5nLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvcGlwZXMvcGVyc29uLXRvLXN0cmluZy5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL3BpcGVzL3VzYWdlLW1vZGUucGlwZXMnO1xuXG4vLyBDb3JlIHNlcnZpY2VzXG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvdmVuZG9yJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL3BsYXRmb3JtLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvbmV0d29yay5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL2NvbmZpZy5zZXJ2aWNlJztcbmV4cG9ydCB7Q09SRV9DT05GSUdfT1BUSU9OU30gZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvY29uZmlnL2NvcmUuY29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL2xvY2FsLXNldHRpbmdzLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvYWNjb3VudC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL2NyeXB0by5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL2F1dGgtZ3VhcmQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9iYXNlNTgnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvYmFzZS1ncmFwaHFsLXNlcnZpY2UuY2xhc3MnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvYmFzZS1lbnRpdHktc2VydmljZS5jbGFzcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9zdG9yYWdlL2VudGl0aWVzLXN0b3JhZ2Uuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9zdG9yYWdlL2VudGl0eS1zdG9yZS5jbGFzcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy92YWxpZGF0b3IvYmFzZS52YWxpZGF0b3IuY2xhc3MnO1xuXG4vLyBDb3JlIGNvbXBvbmVudHNcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL2Zvcm0vZWRpdG9yLmNsYXNzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL2Zvcm0vZW50aXR5LWVkaXRvci5jbGFzcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9mb3JtL2VudGl0eS1lZGl0b3ItbW9kYWwuY2xhc3MnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvZm9ybS9lbnRpdHktbWV0YWRhdGEuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL2Zvcm0vZm9ybS5jbGFzcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9mb3JtL2Zvcm0udXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvZm9ybS9mb3JtLWJ1dHRvbnMtYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9mb3JtL2xpc3QuZm9ybSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9mb3JtL3Byb3BlcnRpZXMuZm9ybSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS90YWJsZS90YWJsZS5jbGFzcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS90YWJsZS90YWJsZS51dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS90YWJsZS9tZW1vcnktdGFibGUuY2xhc3MnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvdGFibGUvZW50aXRpZXMtdGFibGUtZGF0YXNvdXJjZS5jbGFzcyc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS90YWJsZS90YWJsZS1zZWxlY3QtY29sdW1ucy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvdGFibGUvYWN0aW9ucy1jb2x1bW4uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL2ljb24vaWNvbi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvaWNvbi9pY29uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9ob21lL2hvbWUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2V0dGluZ3Mvc2V0dGluZ3MucGFnZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9hY2NvdW50L2FjY291bnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvYXV0aC9mb3JtL2Zvcm0tYXV0aCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9hdXRoL21vZGFsL21vZGFsLWF1dGgnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvcmVnaXN0ZXIvY29uZmlybS9jb25maXJtJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL2Fib3V0L21vZGFsLWFib3V0JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3BlZXIvc2VsZWN0LXBlZXIubW9kYWwnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvaW5zdGFsbC9pbnN0YWxsLXVwZ3JhZGUtY2FyZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvbWVudS9tZW51LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9tZW51L21lbnUubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvbWVudS9tZW51Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9tZW51L21lbnUuc2VydmljZSc7XG5cbi8vIENvcmUgZGVjb3JhdG9yXG5leHBvcnQge0VudGl0eUNsYXNzLCBFbnRpdHlDbGFzc2VzfSBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9tb2RlbC9lbnRpdHkuZGVjb3JhdG9ycyc7XG5cblxuLy8gU29jaWFsXG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc29jaWFsL3NvY2lhbC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NvY2lhbC9zb2NpYWwuZXJyb3JzJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zb2NpYWwvdXNlci1ldmVudC91c2VyLWV2ZW50Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc29jaWFsL3VzZXItZXZlbnQvdXNlci1ldmVudC5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc29jaWFsL3VzZXItZXZlbnQvdXNlci1ldmVudC5mcmFnbWVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NvY2lhbC91c2VyLWV2ZW50L3VzZXItZXZlbnQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc29jaWFsL3VzZXItZXZlbnQvbm90aWZpY2F0aW9uL3VzZXItZXZlbnQtbm90aWZpY2F0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc29jaWFsL2pvYi9qb2IubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zb2NpYWwvam9iL2pvYi5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc29jaWFsL2pvYi9qb2Iuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc29jaWFsL2pvYi9wcm9ncmVzc2lvbi9qb2ItcHJvZ3Jlc3Npb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zb2NpYWwvbWVzc2FnZS9tZXNzYWdlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc29jaWFsL21lc3NhZ2UvbWVzc2FnZS5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc29jaWFsL21lc3NhZ2UvbWVzc2FnZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zb2NpYWwvbWVzc2FnZS9tZXNzYWdlLmZvcm0nO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NvY2lhbC9tZXNzYWdlL21lc3NhZ2UubW9kYWwnO1xuXG4vLyBBZG1pblxuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2FkbWluL2FkbWluLm1vZHVsZSc7XG5leHBvcnQge0FkbWluUm91dGluZ01vZHVsZX0gZnJvbSAnLi9zcmMvYXBwL2FkbWluL2FkbWluLXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9hZG1pbi9zZXJ2aWNlcy9maWx0ZXIvcGVyc29uLmZpbHRlcic7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvYWRtaW4vc2VydmljZXMvdmFsaWRhdG9yL3BlcnNvbi52YWxpZGF0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2FkbWluL3NlcnZpY2VzL3BlcnNvbi5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9hZG1pbi91c2Vycy9saXN0L3VzZXJzJztcblxuLy8gU2hhcmVkIHRlc3RzIHBhZ2VcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvdGVzdGluZy90ZXN0cy5wYWdlJztcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUZXN0aW5nIG1vZHVsZSBhbmQgY29tcG9uZW50c1xuLy9cbi8vIFRPRE86IHRvIHJlbW92ZSB3aGVuIG5neC1jb21wb25lbnRzIHdpbGwgYmUgd2VsbCB0ZXN0ZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBTaGFyZWQgbWF0ZXJpYWwgdGVzdFxuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9tYXRlcmlhbC50ZXN0aW5nLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2F1dG9jb21wbGV0ZS90ZXN0aW5nL2F1dG9jb21wbGV0ZS50ZXN0JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvbGF0bG9uZy90ZXN0aW5nL2xhdGxvbmcudGVzdCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL3N3aXBlL3Rlc3Rpbmcvc3dpcGUudGVzdCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2RhdGV0aW1lL3Rlc3RpbmcvbWF0LWRhdGUtdGltZS50ZXN0JztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvY2hpcHMvdGVzdGluZy9jaGlwcy50ZXN0JztcblxuLy8gU2hhcmVkIG90aGVyIHRlc3RcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvc2hhcmVkLnRlc3RpbmcubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvdXBsb2FkLWZpbGUvdGVzdGluZy91cGxvYWQtZmlsZS50ZXN0aW5nJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvdXBsb2FkLWZpbGUvdGVzdGluZy91cGxvYWQtZmlsZS50ZXN0aW5nLm1vZHVsZSc7XG5cbi8vIENvcmUgdGVzdGluZ1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvY29yZS50ZXN0aW5nLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy90ZXN0aW5nL3JlZmVyZW50aWFsLWZpbHRlci5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy90ZXN0aW5nL3JlZmVyZW50aWFsLnZhbGlkYXRvcic7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy9lcnJvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvdGFibGUvdGVzdGluZy90YWJsZS50ZXN0aW5nLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9hcHAvY29yZS90YWJsZS90ZXN0aW5nL3RhYmxlLnRlc3RpbmcnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvYXBwL2NvcmUvdGV4dC1wb3BvdmVyL3Rlc3RpbmcvdGV4dC1wb3BvdmVyLnRlc3RpbmcubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL2FwcC9jb3JlL3RleHQtcG9wb3Zlci90ZXN0aW5nL3RleHQtcG9wb3Zlci50ZXN0aW5nJztcbmV4cG9ydCB7c3VnZ2VzdEZyb21BcnJheX0gZnJvbSBcIi4vc3JjL2FwcC9zaGFyZWQvc2VydmljZXNcIjtcbiJdfQ==
|
|
@@ -16,8 +16,8 @@ SocialModule.decorators = [
|
|
|
16
16
|
SharedModule,
|
|
17
17
|
UserEventModule,
|
|
18
18
|
JobModule,
|
|
19
|
-
MessageModule
|
|
19
|
+
MessageModule
|
|
20
20
|
],
|
|
21
21
|
},] }
|
|
22
22
|
];
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29jaWFsLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc29jaWFsL3NvY2lhbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFVN0MsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsSUFBSSxjQUFjLENBQXNCLHFCQUFxQixDQUFDLENBQUM7QUFhdkcsTUFBTSxPQUFPLFlBQVk7OztZQVh4QixRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osVUFBVTtvQkFDVixZQUFZO29CQUVaLGVBQWU7b0JBQ2YsU0FBUztvQkFDVCxhQUFhO2lCQUNkO2FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiwgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb3JlTW9kdWxlIH0gZnJvbSAnLi4vY29yZS9jb3JlLm1vZHVsZSc7XG5pbXBvcnQgeyBTaGFyZWRNb2R1bGUgfSBmcm9tICcuLi9zaGFyZWQvc2hhcmVkLm1vZHVsZSc7XG5pbXBvcnQgeyBVc2VyRXZlbnRNb2R1bGUgfSBmcm9tICcuL3VzZXItZXZlbnQvdXNlci1ldmVudC5tb2R1bGUnO1xuaW1wb3J0IHsgTWVzc2FnZU1vZHVsZSB9IGZyb20gJy4vbWVzc2FnZS9tZXNzYWdlLm1vZHVsZSc7XG5pbXBvcnQgeyBKb2JNb2R1bGUgfSBmcm9tICcuL2pvYi9qb2IubW9kdWxlJztcbmltcG9ydCB7IEpvYlByb2dyZXNzaW9uT3B0aW9ucyB9IGZyb20gJy4vam9iL3Byb2dyZXNzaW9uL2pvYi1wcm9ncmVzc2lvbi5jb21wb25lbnQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNvY2lhbE1vZHVsZU9wdGlvbnMge1xuICBzaG93VXNlckV2ZW50Tm90aWZpY2F0aW9uOiBib29sZWFuO1xuICAvLyB0b2RvIDogdXNlckV2ZW50Tm90aWZpY2F0aW9uT3B0aW9uc1xuICBzaG93Sm9iUHJvZ3Jlc3Npb246IGJvb2xlYW47XG4gIGpvYlByb2dyZXNzaW9uT3B0aW9uczogSm9iUHJvZ3Jlc3Npb25PcHRpb25zO1xufVxuXG5leHBvcnQgY29uc3QgU29jaWFsTW9kdWxlT3B0aW9uc1Rva2VuID0gbmV3IEluamVjdGlvblRva2VuPFNvY2lhbE1vZHVsZU9wdGlvbnM+
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29jaWFsLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc29jaWFsL3NvY2lhbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFVN0MsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsSUFBSSxjQUFjLENBQXNCLHFCQUFxQixDQUFDLENBQUM7QUFhdkcsTUFBTSxPQUFPLFlBQVk7OztZQVh4QixRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osVUFBVTtvQkFDVixZQUFZO29CQUVaLGVBQWU7b0JBQ2YsU0FBUztvQkFDVCxhQUFhO2lCQUNkO2FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiwgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb3JlTW9kdWxlIH0gZnJvbSAnLi4vY29yZS9jb3JlLm1vZHVsZSc7XG5pbXBvcnQgeyBTaGFyZWRNb2R1bGUgfSBmcm9tICcuLi9zaGFyZWQvc2hhcmVkLm1vZHVsZSc7XG5pbXBvcnQgeyBVc2VyRXZlbnRNb2R1bGUgfSBmcm9tICcuL3VzZXItZXZlbnQvdXNlci1ldmVudC5tb2R1bGUnO1xuaW1wb3J0IHsgTWVzc2FnZU1vZHVsZSB9IGZyb20gJy4vbWVzc2FnZS9tZXNzYWdlLm1vZHVsZSc7XG5pbXBvcnQgeyBKb2JNb2R1bGUgfSBmcm9tICcuL2pvYi9qb2IubW9kdWxlJztcbmltcG9ydCB7IEpvYlByb2dyZXNzaW9uT3B0aW9ucyB9IGZyb20gJy4vam9iL3Byb2dyZXNzaW9uL2pvYi1wcm9ncmVzc2lvbi5jb21wb25lbnQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNvY2lhbE1vZHVsZU9wdGlvbnMge1xuICBzaG93VXNlckV2ZW50Tm90aWZpY2F0aW9uOiBib29sZWFuO1xuICAvLyB0b2RvIDogdXNlckV2ZW50Tm90aWZpY2F0aW9uT3B0aW9uc1xuICBzaG93Sm9iUHJvZ3Jlc3Npb246IGJvb2xlYW47XG4gIGpvYlByb2dyZXNzaW9uT3B0aW9uczogSm9iUHJvZ3Jlc3Npb25PcHRpb25zO1xufVxuXG5leHBvcnQgY29uc3QgU29jaWFsTW9kdWxlT3B0aW9uc1Rva2VuID0gbmV3IEluamVjdGlvblRva2VuPFNvY2lhbE1vZHVsZU9wdGlvbnM+KFwiU29jaWFsTW9kdWxlT3B0aW9uc1wiKTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBDb3JlTW9kdWxlLFxuICAgIFNoYXJlZE1vZHVsZSxcblxuICAgIFVzZXJFdmVudE1vZHVsZSxcbiAgICBKb2JNb2R1bGUsXG4gICAgTWVzc2FnZU1vZHVsZVxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBTb2NpYWxNb2R1bGUge1xuXG59XG4iXX0=
|
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
import { NgModule } from '@angular/core';
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
3
|
import { SharedModule } from '../../shared/shared.module';
|
|
4
|
-
import { UserEventsTable } from './user-events.table';
|
|
5
4
|
import { UserEventNotificationComponent } from './notification/user-event-notification.component';
|
|
6
5
|
import { UserEventNotificationList } from './notification/user-event-notification.list';
|
|
7
|
-
import { USER_EVENT_SERVICE } from './user-event.service';
|
|
8
|
-
import { UserEventTestService } from './testing/user-event.testing.service';
|
|
9
6
|
import { AppIconModule } from '../../core/icon/icon.module';
|
|
10
7
|
export class UserEventModule {
|
|
11
8
|
}
|
|
@@ -17,17 +14,12 @@ UserEventModule.decorators = [
|
|
|
17
14
|
AppIconModule
|
|
18
15
|
],
|
|
19
16
|
declarations: [
|
|
20
|
-
UserEventsTable,
|
|
21
17
|
UserEventNotificationComponent,
|
|
22
|
-
UserEventNotificationList
|
|
18
|
+
UserEventNotificationList
|
|
23
19
|
],
|
|
24
20
|
exports: [
|
|
25
|
-
UserEventsTable,
|
|
26
21
|
UserEventNotificationComponent
|
|
27
|
-
],
|
|
28
|
-
providers: [
|
|
29
|
-
{ provide: USER_EVENT_SERVICE, useClass: UserEventTestService }
|
|
30
22
|
]
|
|
31
23
|
},] }
|
|
32
24
|
];
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1ldmVudC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NvY2lhbC91c2VyLWV2ZW50L3VzZXItZXZlbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBc0IsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDeEQsT0FBTyxFQUFDLDhCQUE4QixFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFDaEcsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFHdEYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBZ0IxRCxNQUFNLE9BQU8sZUFBZTs7O1lBZDNCLFFBQVEsU0FBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixZQUFZO29CQUNaLGFBQWE7aUJBQ2Q7Z0JBQ0QsWUFBWSxFQUFFO29CQUNaLDhCQUE4QjtvQkFDOUIseUJBQXlCO2lCQUMxQjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsOEJBQThCO2lCQUMvQjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7U2hhcmVkTW9kdWxlfSBmcm9tICcuLi8uLi9zaGFyZWQvc2hhcmVkLm1vZHVsZSc7XG5pbXBvcnQge1VzZXJFdmVudE5vdGlmaWNhdGlvbkNvbXBvbmVudH0gZnJvbSAnLi9ub3RpZmljYXRpb24vdXNlci1ldmVudC1ub3RpZmljYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7VXNlckV2ZW50Tm90aWZpY2F0aW9uTGlzdH0gZnJvbSAnLi9ub3RpZmljYXRpb24vdXNlci1ldmVudC1ub3RpZmljYXRpb24ubGlzdCc7XG5pbXBvcnQge1VTRVJfRVZFTlRfU0VSVklDRX0gZnJvbSAnLi91c2VyLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHtVc2VyRXZlbnRUZXN0U2VydmljZX0gZnJvbSAnLi90ZXN0aW5nL3VzZXItZXZlbnQudGVzdGluZy5zZXJ2aWNlJztcbmltcG9ydCB7QXBwSWNvbk1vZHVsZX0gZnJvbSAnLi4vLi4vY29yZS9pY29uL2ljb24ubW9kdWxlJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBTaGFyZWRNb2R1bGUsXG4gICAgQXBwSWNvbk1vZHVsZVxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBVc2VyRXZlbnROb3RpZmljYXRpb25Db21wb25lbnQsXG4gICAgVXNlckV2ZW50Tm90aWZpY2F0aW9uTGlzdFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgVXNlckV2ZW50Tm90aWZpY2F0aW9uQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgVXNlckV2ZW50TW9kdWxlIHtcbn1cbiJdfQ==
|
|
@@ -1,19 +1,15 @@
|
|
|
1
1
|
import { __awaiter } from "tslib";
|
|
2
|
-
import { Directive,
|
|
3
|
-
import { gql } from '@apollo/client/core';
|
|
2
|
+
import { Directive, InjectionToken } from '@angular/core';
|
|
4
3
|
import { SocialErrorCodes } from '../social.errors';
|
|
5
4
|
import { AccountService } from '../../core/services/account.service';
|
|
6
5
|
import { GraphqlService } from '../../core/graphql/graphql.service';
|
|
7
6
|
import { BehaviorSubject, merge, of, Subscription } from 'rxjs';
|
|
8
|
-
import { UserEvent, UserEventFilter } from './user-event.model';
|
|
9
|
-
import { UserEventFragments } from './user-event.fragments';
|
|
10
7
|
import { distinctUntilChanged, map, mergeMap } from 'rxjs/operators';
|
|
11
8
|
import { isEmptyArray, isNotNil, toNumber } from '../../shared/functions';
|
|
12
9
|
import { TranslateService } from '@ngx-translate/core';
|
|
13
10
|
import { NetworkService } from '../../core/services/network.service';
|
|
14
11
|
import { BaseGraphqlService } from '../../core/services/base-graphql-service.class';
|
|
15
12
|
import { EntityUtils } from '../../core/services/model/entity.model';
|
|
16
|
-
import { Environment, ENVIRONMENT } from '../../../environments/environment.class';
|
|
17
13
|
import { DateUtils } from '../../shared/dates';
|
|
18
14
|
import * as momentImported from 'moment';
|
|
19
15
|
const moment = momentImported;
|
|
@@ -40,7 +36,8 @@ export class AbstractUserEventService extends BaseGraphqlService {
|
|
|
40
36
|
ngOnStart() {
|
|
41
37
|
return __awaiter(this, void 0, void 0, function* () {
|
|
42
38
|
// Update component when refresh is need (=login events)
|
|
43
|
-
this._subscriptions.add(merge(this.accountService.onLogin, this.accountService.onLogout)
|
|
39
|
+
this._subscriptions.add(merge(this.accountService.onLogin, this.accountService.onLogout, of() // Starts with - first attempt if account is ready
|
|
40
|
+
)
|
|
44
41
|
.pipe(
|
|
45
42
|
// Wait account service ready (can be restarted)
|
|
46
43
|
mergeMap(() => this.accountService.ready()), map(() => this.accountService.isLogin()), distinctUntilChanged())
|
|
@@ -52,11 +49,6 @@ export class AbstractUserEventService extends BaseGraphqlService {
|
|
|
52
49
|
this.onLogout();
|
|
53
50
|
}
|
|
54
51
|
}));
|
|
55
|
-
// First attempt if account is ready
|
|
56
|
-
yield this.accountService.ready();
|
|
57
|
-
if (this.accountService.isLogin()) {
|
|
58
|
-
setTimeout(() => this.onLogin());
|
|
59
|
-
}
|
|
60
52
|
});
|
|
61
53
|
}
|
|
62
54
|
ngOnDestroy() {
|
|
@@ -441,74 +433,4 @@ AbstractUserEventService.ctorParameters = () => [
|
|
|
441
433
|
{ type: TranslateService },
|
|
442
434
|
{ type: undefined }
|
|
443
435
|
];
|
|
444
|
-
const userEventQueries = {
|
|
445
|
-
loadAll: gql `
|
|
446
|
-
query UserEvents($filter: UserEventFilterVOInput, $page: PageInput){
|
|
447
|
-
data: userEvents(filter: $filter, page: $page){
|
|
448
|
-
...LightUserEventFragment
|
|
449
|
-
}
|
|
450
|
-
}
|
|
451
|
-
${UserEventFragments.lightUserEvent}
|
|
452
|
-
`,
|
|
453
|
-
loadAllWithContent: gql `
|
|
454
|
-
query UserEventsWithContent($filter: UserEventFilterVOInput, $page: PageInput){
|
|
455
|
-
data: userEvents(filter: $filter, page: $page){
|
|
456
|
-
...UserEventFragment
|
|
457
|
-
}
|
|
458
|
-
}
|
|
459
|
-
${UserEventFragments.userEvent}
|
|
460
|
-
`
|
|
461
|
-
};
|
|
462
|
-
const userEventMutations = {
|
|
463
|
-
deleteByIds: gql `
|
|
464
|
-
mutation DeleteUserEvents($ids:[Int]){
|
|
465
|
-
deleteUserEvents(ids: $ids)
|
|
466
|
-
}
|
|
467
|
-
`,
|
|
468
|
-
save: gql `
|
|
469
|
-
mutation SaveUserEvent($data: UserEventVOInput){
|
|
470
|
-
data: saveUserEvent(userEvent: $data){
|
|
471
|
-
...UserEventFragment
|
|
472
|
-
}
|
|
473
|
-
}
|
|
474
|
-
${UserEventFragments.userEvent}
|
|
475
|
-
`
|
|
476
|
-
};
|
|
477
|
-
export class UserEventService extends AbstractUserEventService {
|
|
478
|
-
constructor(graphql, accountService, network, translate, environment) {
|
|
479
|
-
super(graphql, accountService, network, translate, {
|
|
480
|
-
queries: userEventQueries,
|
|
481
|
-
mutations: userEventMutations,
|
|
482
|
-
production: environment === null || environment === void 0 ? void 0 : environment.production
|
|
483
|
-
});
|
|
484
|
-
this.graphql = graphql;
|
|
485
|
-
this.accountService = accountService;
|
|
486
|
-
this.network = network;
|
|
487
|
-
this.translate = translate;
|
|
488
|
-
this.environment = environment;
|
|
489
|
-
}
|
|
490
|
-
asFilter(filter) {
|
|
491
|
-
return UserEventFilter.fromObject(filter);
|
|
492
|
-
}
|
|
493
|
-
fromObject(source) {
|
|
494
|
-
return UserEvent.fromObject(source);
|
|
495
|
-
}
|
|
496
|
-
/* -- protected methods -- */
|
|
497
|
-
fillDefaultProperties(entity) {
|
|
498
|
-
entity.issuer = this.accountService.account.pubkey;
|
|
499
|
-
// TODO: compute hash (using cryptoService)
|
|
500
|
-
// TODO: compute sign
|
|
501
|
-
console.warn('TODO: sign user event before sending');
|
|
502
|
-
}
|
|
503
|
-
}
|
|
504
|
-
UserEventService.decorators = [
|
|
505
|
-
{ type: Injectable }
|
|
506
|
-
];
|
|
507
|
-
UserEventService.ctorParameters = () => [
|
|
508
|
-
{ type: GraphqlService },
|
|
509
|
-
{ type: AccountService },
|
|
510
|
-
{ type: NetworkService },
|
|
511
|
-
{ type: TranslateService },
|
|
512
|
-
{ type: Environment, decorators: [{ type: Optional }, { type: Inject, args: [ENVIRONMENT,] }] }
|
|
513
|
-
];
|
|
514
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1ldmVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zb2NpYWwvdXNlci1ldmVudC91c2VyLWV2ZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQWEsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25HLE9BQU8sRUFBZSxHQUFHLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxlQUFlLEVBQUUsS0FBSyxFQUFjLEVBQUUsRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUUsT0FBTyxFQUFnQyxTQUFTLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDOUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFHNUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFFLGtCQUFrQixFQUE2QixNQUFNLGdEQUFnRCxDQUFDO0FBQy9HLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUNyRSxP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VTs7O1lBem1CRixjQUFjO1lBRGQsY0FBYztZQVVkLGNBQWM7WUFEZCxnQkFBZ0I7WUFJaEIsV0FBVyx1QkFzbUJmLFFBQVEsWUFBSSxNQUFNLFNBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiwgT25EZXN0cm95LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmV0Y2hQb2xpY3ksIGdxbCB9IGZyb20gJ0BhcG9sbG8vY2xpZW50L2NvcmUnO1xuaW1wb3J0IHsgU29jaWFsRXJyb3JDb2RlcyB9IGZyb20gJy4uL3NvY2lhbC5lcnJvcnMnO1xuaW1wb3J0IHsgQWNjb3VudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2VzL2FjY291bnQuc2VydmljZSc7XG5pbXBvcnQgeyBHcmFwaHFsU2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvZ3JhcGhxbC9ncmFwaHFsLnNlcnZpY2UnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBtZXJnZSwgT2JzZXJ2YWJsZSwgb2YsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSVVzZXJFdmVudCwgSVVzZXJFdmVudEZpbHRlciwgVXNlckV2ZW50LCBVc2VyRXZlbnRGaWx0ZXIgfSBmcm9tICcuL3VzZXItZXZlbnQubW9kZWwnO1xuaW1wb3J0IHsgVXNlckV2ZW50RnJhZ21lbnRzIH0gZnJvbSAnLi91c2VyLWV2ZW50LmZyYWdtZW50cyc7XG5pbXBvcnQgeyBTb3J0RGlyZWN0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc29ydCc7XG5pbXBvcnQgeyBFbnRpdGllc1NlcnZpY2VXYXRjaE9wdGlvbnMsIEVudGl0eVNlcnZpY2VMb2FkT3B0aW9ucywgSUVudGl0aWVzU2VydmljZSwgTG9hZFJlc3VsdCwgUGFnZSB9IGZyb20gJy4uLy4uL3NoYXJlZC9zZXJ2aWNlcy9lbnRpdHktc2VydmljZS5jbGFzcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBtZXJnZU1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IGlzRW1wdHlBcnJheSwgaXNOb3ROaWwsIHRvTnVtYmVyIH0gZnJvbSAnLi4vLi4vc2hhcmVkL2Z1bmN0aW9ucyc7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBOZXR3b3JrU2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvc2VydmljZXMvbmV0d29yay5zZXJ2aWNlJztcbmltcG9ydCB7IEJhc2VHcmFwaHFsU2VydmljZSwgQmFzZUdyYXBocWxTZXJ2aWNlT3B0aW9ucyB9IGZyb20gJy4uLy4uL2NvcmUvc2VydmljZXMvYmFzZS1ncmFwaHFsLXNlcnZpY2UuY2xhc3MnO1xuaW1wb3J0IHsgRW50aXR5VXRpbHMgfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2VzL21vZGVsL2VudGl0eS5tb2RlbCc7XG5pbXBvcnQgeyBFbnZpcm9ubWVudCwgRU5WSVJPTk1FTlQgfSBmcm9tICcuLi8uLi8uLi9lbnZpcm9ubWVudHMvZW52aXJvbm1lbnQuY2xhc3MnO1xuaW1wb3J0IHsgRGF0ZVV0aWxzIH0gZnJvbSAnLi4vLi4vc2hhcmVkL2RhdGVzJztcbmltcG9ydCAqIGFzIG1vbWVudEltcG9ydGVkIGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBNb21lbnQgfSBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHsgSVN0YXJ0YWJsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zaGFyZWQvc2VydmljZXMvc3RhcnRhYmxlLXNlcnZpY2UuY2xhc3MnO1xuXG5jb25zdCBtb21lbnQgPSBtb21lbnRJbXBvcnRlZDtcblxuZXhwb3J0IGNvbnN0IFVTRVJfRVZFTlRfU0VSVklDRSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxJVXNlckV2ZW50U2VydmljZTxhbnksIGFueT4+KCdVc2VyRXZlbnRTZXJ2aWNlJyk7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBVc2VyRXZlbnRXYXRjaE9wdGlvbnMgZXh0ZW5kcyBFbnRpdGllc1NlcnZpY2VXYXRjaE9wdGlvbnMge1xuICB3aXRoQ29udGVudD86IGJvb2xlYW47IC8vIERlZmF1bHQgdG8gZmFsc2Vcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJVXNlckV2ZW50UXVlcmllcyB7XG4gIGxvYWRBbGw6IGFueTtcbiAgbG9hZEFsbFdpdGhDb250ZW50OiBhbnk7XG4gIGNvdW50PzogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElVc2VyRXZlbnRNdXRhdGlvbnMge1xuICBzYXZlOiBhbnk7XG4gIG1hcmtBc1JlYWQ/OiBhbnk7XG4gIGRlbGV0ZUJ5SWRzOiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVVzZXJFdmVudFN1YnNjcmlwdGlvbnMge1xuICBsaXN0ZW5DaGFuZ2VzOiBhbnk7XG4gIGxpc3RlbkNvdW50Q2hhbmdlcz86IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJVXNlckV2ZW50TGlzdGVuZXI8RSBleHRlbmRzIElVc2VyRXZlbnQ8RT4+IHtcbiAgYWNjZXB0OiAoRSkgPT4gYm9vbGVhbjtcbiAgb25SZWNlaXZlZD86IChFKSA9PiBFIHwgdW5kZWZpbmVkO1xuICBvblJlYWQ/OiAoRSkgPT4gUHJvbWlzZTx2b2lkPiB8IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlckV2ZW50U2VydmljZU9wdGlvbnM8XG4gIFEgZXh0ZW5kcyBJVXNlckV2ZW50UXVlcmllcyA9IElVc2VyRXZlbnRRdWVyaWVzLFxuICBNIGV4dGVuZHMgSVVzZXJFdmVudE11dGF0aW9ucyA9IElVc2VyRXZlbnRNdXRhdGlvbnMsXG4gIFMgZXh0ZW5kcyBJVXNlckV2ZW50U3Vic2NyaXB0aW9ucyA9IElVc2VyRXZlbnRTdWJzY3JpcHRpb25zXG4gID4gZXh0ZW5kcyBCYXNlR3JhcGhxbFNlcnZpY2VPcHRpb25zIHtcbiAgcXVlcmllczogUTtcbiAgbXV0YXRpb25zPzogUGFydGlhbDxNPjtcbiAgc3Vic2NyaXB0aW9ucz86IFBhcnRpYWw8Uz47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVVzZXJFdmVudFNlcnZpY2U8RSBleHRlbmRzIElVc2VyRXZlbnQ8RT4sXG4gIEYgZXh0ZW5kcyBJVXNlckV2ZW50RmlsdGVyPEU+LFxuICBXTyBleHRlbmRzIFVzZXJFdmVudFdhdGNoT3B0aW9ucyA9IFVzZXJFdmVudFdhdGNoT3B0aW9ucz5cbiAgZXh0ZW5kcyBJRW50aXRpZXNTZXJ2aWNlPEUsIEYsIFdPPiwgSVN0YXJ0YWJsZVNlcnZpY2Uge1xuXG4gIHVzZXJFdmVudENvdW50OiBPYnNlcnZhYmxlPG51bWJlcj47XG5cbiAgYWRkKGVudGl0eTogRSk7XG5cbiAgY291bnQoZmlsdGVyOiBQYXJ0aWFsPEY+LCBvcHRpb25zPzogeyBmZXRjaFBvbGljeT86IEZldGNoUG9saWN5OyB9KTogUHJvbWlzZTxudW1iZXI+O1xuXG4gIGxpc3RlbkNvdW50Q2hhbmdlcyhmaWx0ZXI6IFBhcnRpYWw8Rj4sIG9wdGlvbnM/OiBXTyAmIHsgaW50ZXJ2YWw/OiBudW1iZXI7IGZldGNoUG9saWN5PzogRmV0Y2hQb2xpY3k7IH0pOiBPYnNlcnZhYmxlPG51bWJlcj47XG5cbiAgbGlzdGVuQ2hhbmdlcyhmaWx0ZXI6IFBhcnRpYWw8Rj4sIG9wdGlvbnM/OiBXTyAmIHsgaW50ZXJ2YWw/OiBudW1iZXI7IGZldGNoUG9saWN5PzogRmV0Y2hQb2xpY3k7IH0pOiBPYnNlcnZhYmxlPEVbXT47XG5cbiAgc2F2ZShlbnRpdHk6IEUsIG9wdGlvbnM/OiBFbnRpdHlTZXJ2aWNlTG9hZE9wdGlvbnMpOiBQcm9taXNlPEU+O1xuXG4gIGRlbGV0ZShlbnRpdHk6IEUpOiBQcm9taXNlPGFueT47XG5cbiAgbWFya0FzUmVhZChlbnRpdGllczogRVtdKTtcblxuICByZWdpc3Rlckxpc3RlbmVyKGxpc3RlbmVyOiBJVXNlckV2ZW50TGlzdGVuZXI8RT4pO1xuXG4gIHJlc2V0Q291bnQoKTtcbn1cblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RVc2VyRXZlbnRTZXJ2aWNlPEUgZXh0ZW5kcyBJVXNlckV2ZW50PEUsIGFueT4sXG4gIEYgZXh0ZW5kcyBJVXNlckV2ZW50RmlsdGVyPEUsIGFueT4sXG4gIFdPIGV4dGVuZHMgVXNlckV2ZW50V2F0Y2hPcHRpb25zID0gVXNlckV2ZW50V2F0Y2hPcHRpb25zLFxuICBRIGV4dGVuZHMgSVVzZXJFdmVudFF1ZXJpZXMgPSBJVXNlckV2ZW50UXVlcmllcyxcbiAgTSBleHRlbmRzIElVc2VyRXZlbnRNdXRhdGlvbnMgPSBJVXNlckV2ZW50TXV0YXRpb25zLFxuICBTIGV4dGVuZHMgSVVzZXJFdmVudFN1YnNjcmlwdGlvbnMgPSBJVXNlckV2ZW50U3Vic2NyaXB0aW9uc1xuICA+XG4gIGV4dGVuZHMgQmFzZUdyYXBocWxTZXJ2aWNlPEUsIEY+XG4gIGltcGxlbWVudHMgSVVzZXJFdmVudFNlcnZpY2U8RSwgRiwgV08+LCBPbkRlc3Ryb3kge1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBxdWVyaWVzOiBRO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbXV0YXRpb25zOiBQYXJ0aWFsPE0+O1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgc3Vic2NyaXB0aW9uczogUGFydGlhbDxTPjtcbiAgcHJvdGVjdGVkIGNvdW50JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPigwKTtcbiAgcHJvdGVjdGVkIHJlc2V0Q291bnREYXRlOiBNb21lbnQ7XG4gIHByb3RlY3RlZCBsaXN0ZW5lcnM6IElVc2VyRXZlbnRMaXN0ZW5lcjxFPltdID0gW107XG4gIHByaXZhdGUgX3N1YnNjcmlwdGlvbnMgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG4gIHByaXZhdGUgX2xpc3RlblN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gIGdldCB1c2VyRXZlbnRDb3VudCgpOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgIHJldHVybiB0aGlzLmNvdW50JC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgZ3JhcGhxbDogR3JhcGhxbFNlcnZpY2UsXG4gICAgcHJvdGVjdGVkIGFjY291bnRTZXJ2aWNlOiBBY2NvdW50U2VydmljZSxcbiAgICBwcm90ZWN0ZWQgbmV0d29yazogTmV0d29ya1NlcnZpY2UsXG4gICAgcHJvdGVjdGVkIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcm90ZWN0ZWQgb3B0aW9uczogVXNlckV2ZW50U2VydmljZU9wdGlvbnM8USwgTSwgUz5cbiAgKSB7XG4gICAgc3VwZXIoZ3JhcGhxbCwgb3B0aW9ucyk7XG4gICAgdGhpcy5xdWVyaWVzID0gb3B0aW9ucy5xdWVyaWVzO1xuICAgIHRoaXMubXV0YXRpb25zID0gb3B0aW9ucy5tdXRhdGlvbnMgfHwgPFBhcnRpYWw8TT4+e307XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zID0gb3B0aW9ucy5zdWJzY3JpcHRpb25zIHx8IDxQYXJ0aWFsPFM+Pnt9O1xuICAgIHRoaXMuX2xvZ1ByZWZpeCA9ICdbdXNlci1ldmVudC1zZXJ2aWNlXSAnO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIG5nT25TdGFydCgpOiBQcm9taXNlPHZvaWQ+IHtcblxuICAgIC8vIFVwZGF0ZSBjb21wb25lbnQgd2hlbiByZWZyZXNoIGlzIG5lZWQgKD1sb2dpbiBldmVudHMpXG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICBtZXJnZShcbiAgICAgICAgdGhpcy5hY2NvdW50U2VydmljZS5vbkxvZ2luLFxuICAgICAgICB0aGlzLmFjY291bnRTZXJ2aWNlLm9uTG9nb3V0XG4gICAgICApXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIC8vIFdhaXQgYWNjb3VudCBzZXJ2aWNlIHJlYWR5IChjYW4gYmUgcmVzdGFydGVkKVxuICAgICAgICAgIG1lcmdlTWFwKCgpID0+IHRoaXMuYWNjb3VudFNlcnZpY2UucmVhZHkoKSksXG4gICAgICAgICAgbWFwKCgpID0+IHRoaXMuYWNjb3VudFNlcnZpY2UuaXNMb2dpbigpKSxcbiAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZShsb2dpbiA9PiB7XG4gICAgICAgICAgaWYgKGxvZ2luKSB7XG4gICAgICAgICAgICB0aGlzLm9uTG9naW4oKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vbkxvZ291dCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSkpO1xuXG4gICAgLy8gRmlyc3QgYXR0ZW1wdCBpZiBhY2NvdW50IGlzIHJlYWR5XG4gICAgYXdhaXQgdGhpcy5hY2NvdW50U2VydmljZS5yZWFkeSgpO1xuICAgIGlmICh0aGlzLmFjY291bnRTZXJ2aWNlLmlzTG9naW4oKSkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLm9uTG9naW4oKSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgYWJzdHJhY3QgYXNGaWx0ZXIoZmlsdGVyOiBQYXJ0aWFsPEY+KTogRjtcblxuICBhYnN0cmFjdCBmcm9tT2JqZWN0KHNvdXJjZTogYW55KTogRTtcblxuICB3YXRjaEFsbChvZmZzZXQ6IG51bWJlciwgc2l6ZTogbnVtYmVyLCBzb3J0Qnk/OiBzdHJpbmcsIHNvcnREaXJlY3Rpb24/OiBTb3J0RGlyZWN0aW9uLCBmaWx0ZXI/OiBQYXJ0aWFsPEY+LCBvcHRpb25zPzogV08pOiBPYnNlcnZhYmxlPExvYWRSZXN1bHQ8RT4+IHtcbiAgICByZXR1cm4gdGhpcy53YXRjaFBhZ2UoPFBhZ2U+eyBvZmZzZXQsIHNpemUsIHNvcnRCeSwgc29ydERpcmVjdGlvbiB9LCBmaWx0ZXIsIG9wdGlvbnMpO1xuICB9XG5cbiAgd2F0Y2hQYWdlKHBhZ2U6IFBhZ2UsXG4gICAgICAgICAgICBmaWx0ZXI/OiBQYXJ0aWFsPEY+LFxuICAgICAgICAgICAgb3B0aW9ucz86IFdPKTogT2JzZXJ2YWJsZTxMb2FkUmVzdWx0PEU+PiB7XG5cbiAgICBsZXQgbm93ID0gdGhpcy5fZGVidWcgJiYgRGF0ZS5ub3coKTtcbiAgICBpZiAoIWZpbHRlcikge1xuICAgICAgZmlsdGVyID0gdGhpcy5kZWZhdWx0RmlsdGVyKCk7XG4gICAgfVxuICAgIGNvbnNvbGUuZGVidWcoYCR7dGhpcy5fbG9nUHJlZml4fUxvYWRpbmcgdXNlciBldmVudHMuLi5gLCBmaWx0ZXIpO1xuXG4gICAgZmlsdGVyID0gdGhpcy5hc0ZpbHRlcihmaWx0ZXIpO1xuXG4gICAgLy8gRm9yY2UgcmVjaXBpZW50IHRvIGN1cnJlbnQgaXNzdWVyLCBpZiBub3QgYWRtaW4gYW5kIG5vdCBzcGVjaWZpZWRcbiAgICBpZiAoaXNFbXB0eUFycmF5KGZpbHRlcj8ucmVjaXBpZW50cykgfHwgIXRoaXMuYWNjb3VudFNlcnZpY2UuaXNBZG1pbigpKSB7XG4gICAgICBjb25zdCByZWNpcGllbnQgPSB0aGlzLmRlZmF1bHRSZWNpcGllbnQoKTtcbiAgICAgIGlmICghZmlsdGVyPy5yZWNpcGllbnRzPy5pbmNsdWRlcyhyZWNpcGllbnQpKSB7XG4gICAgICAgIGNvbnNvbGUud2FybignW3VzZXItZXZlbnRzLXNlcnZpY2VdIEZvcmNlIHVzZXIgZXZlbnQgZmlsdGVyLnJlY2lwaWVudD0nICsgcmVjaXBpZW50KTtcbiAgICAgICAgZmlsdGVyLnJlY2lwaWVudHMgPSBbcmVjaXBpZW50XTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCB3aXRoQ29udGVudCA9IG9wdGlvbnM/LndpdGhDb250ZW50ID09PSB0cnVlO1xuXG4gICAgcmV0dXJuIHRoaXMubXV0YWJsZVdhdGNoUXVlcnk8TG9hZFJlc3VsdDxFPiwgeyBmaWx0ZXI6IGFueSwgcGFnZTogUGFnZSB9Pih7XG4gICAgICBxdWVyeU5hbWU6IHdpdGhDb250ZW50ID8gJ0xvYWRBbGxXaXRoQ29udGVudCcgOiAnTG9hZEFsbCcsXG4gICAgICBxdWVyeTogd2l0aENvbnRlbnQgPyB0aGlzLnF1ZXJpZXMubG9hZEFsbFdpdGhDb250ZW50IDogdGhpcy5xdWVyaWVzLmxvYWRBbGwsXG4gICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgcGFnZToge1xuICAgICAgICAgIHNvcnRCeTogJ2NyZWF0aW9uRGF0ZScsXG4gICAgICAgICAgLi4ucGFnZSxcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgc29ydERpcmVjdGlvbjogKHBhZ2Uuc29ydERpcmVjdGlvbiB8fCAnZGVzYycpLnRvVXBwZXJDYXNlKClcbiAgICAgICAgfSxcbiAgICAgICAgZmlsdGVyOiBmaWx0ZXIgJiYgZmlsdGVyLmFzUG9kT2JqZWN0KClcbiAgICAgIH0sXG4gICAgICBhcnJheUZpZWxkTmFtZTogJ2RhdGEnLFxuICAgICAgZXJyb3I6IHsgY29kZTogU29jaWFsRXJyb3JDb2Rlcy5MT0FEX1VTRVJfRVZFTlRTX0VSUk9SLCBtZXNzYWdlOiAnU09DSUFMLkVSUk9SLkxPQURfVVNFUl9FVkVOVFNfRVJST1InIH0sXG4gICAgICBmZXRjaFBvbGljeTogb3B0aW9ucz8uZmV0Y2hQb2xpY3kgfHwgJ2NhY2hlLWZpcnN0J1xuICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKHJlcyA9PiB7XG4gICAgICAgICAgbGV0IGRhdGEgPSAocmVzPy5kYXRhIHx8IFtdKS5tYXAodmFsdWUgPT4gdGhpcy5wcm9jZXNzVXNlckV2ZW50KHZhbHVlLCB0aGlzKSk7XG5cbiAgICAgICAgICBpZiAobm93KSB7XG4gICAgICAgICAgICBjb25zb2xlLmRlYnVnKGAke3RoaXMuX2xvZ1ByZWZpeH0ke2RhdGEubGVuZ3RofSB1c2VyIGV2ZW50cyBsb2FkZWQgaW4gJHtEYXRlLm5vdygpIC0gbm93fW1zYCk7XG4gICAgICAgICAgICBub3cgPSBudWxsO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIE11c3QgcmUtb3JkZXIgYmVjYXVzZSBvZiBsaXN0ZW5DaGFuZ2VzIHJlc3VsdCB3aWxsIGFkZCBuZXcgZXZlbnQgYXQgdGhlIGVuZFxuICAgICAgICAgIGRhdGEgPSBFbnRpdHlVdGlscy5zb3J0KGRhdGEsIHBhZ2Uuc29ydEJ5LCBwYWdlLnNvcnREaXJlY3Rpb24pO1xuXG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICB0b3RhbDogdG9OdW1iZXIocmVzPy50b3RhbCwgZGF0YS5sZW5ndGgpXG4gICAgICAgICAgfTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICBhZGQoZW50aXR5OiBFKSB7XG5cbiAgICAvLyBUT0RPIHNldCBhbiBpZCAhISEhISEhISEhISEhISEhISEhISEhISEhXG5cbiAgICBlbnRpdHkgPSB0aGlzLnByb2Nlc3NVc2VyRXZlbnQoZW50aXR5KTtcblxuICAgIGNvbnN0IHdpdGhDb250ZW50ID0gISFlbnRpdHkuY29udGVudDtcblxuICAgIC8vIEFkZCB1c2VyIGV2ZW50IGxvY2FsbHlcbiAgICB0aGlzLmluc2VydEludG9NdXRhYmxlQ2FjaGVkUXVlcmllcyhcbiAgICAgIHRoaXMuZ3JhcGhxbC5jYWNoZSxcbiAgICAgIHtcbiAgICAgICAgcXVlcnk6IHdpdGhDb250ZW50ID8gdGhpcy5xdWVyaWVzLmxvYWRBbGxXaXRoQ29udGVudCA6IHRoaXMucXVlcmllcy5sb2FkQWxsLFxuICAgICAgICBkYXRhOiBlbnRpdHlcbiAgICAgIH1cbiAgICApO1xuXG4gICAgLy8gVXBkYXRlIGNvdW50XG4gICAgdGhpcy5jb3VudCQubmV4dCh0aGlzLmNvdW50JC52YWx1ZSArIDEpO1xuICB9XG5cbiAgYXN5bmMgY291bnQoZmlsdGVyOiBQYXJ0aWFsPEY+LCBvcHRpb25zPzogeyBmZXRjaFBvbGljeT86IEZldGNoUG9saWN5OyB9KTogUHJvbWlzZTxudW1iZXI+IHtcblxuICAgIGlmICghdGhpcy5xdWVyaWVzPy5jb3VudCkge1xuICAgICAgY29uc29sZS53YXJuKGAke3RoaXMuX2xvZ1ByZWZpeH1RdWVyeSAnY291bnQnIG5vdCBwcm92aWRlZCwgc2tpcC5gKTtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgaWYgKCFmaWx0ZXIpIGZpbHRlciA9IHRoaXMuZGVmYXVsdEZpbHRlcigpO1xuICAgIC8vIEFwcGx5IGxhc3QgcmVzZXQgZGF0ZSBhcyBzdGFydCBkYXRlXG4gICAgZmlsdGVyLnN0YXJ0RGF0ZSA9IHRoaXMucmVzZXRDb3VudERhdGU7XG4gICAgZmlsdGVyID0gdGhpcy5hc0ZpbHRlcihmaWx0ZXIpO1xuXG4gICAgaWYgKHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKGAke3RoaXMuX2xvZ1ByZWZpeH1Db3VudGluZyB1c2VyIGV2ZW50cyB3aXRoIGZpbHRlcjpgLCBmaWx0ZXIpO1xuXG4gICAgY29uc3QgcmVzID0gYXdhaXQgdGhpcy5ncmFwaHFsLnF1ZXJ5PHsgdG90YWw6IG51bWJlcjsgfT4oe1xuICAgICAgcXVlcnk6IHRoaXMucXVlcmllcy5jb3VudCxcbiAgICAgIHZhcmlhYmxlczoge1xuICAgICAgICBmaWx0ZXI6IGZpbHRlci5hc1BvZE9iamVjdCgpXG4gICAgICB9LFxuICAgICAgZXJyb3I6IHsgY29kZTogU29jaWFsRXJyb3JDb2Rlcy5DT1VOVF9VU0VSX0VWRU5UX0VSUk9SLCBtZXNzYWdlOiAnU09DSUFMLkVSUk9SLkNPVU5UX1VTRVJfRVZFTlRfRVJST1InIH0sXG4gICAgICBmZXRjaFBvbGljeTogb3B0aW9ucz8uZmV0Y2hQb2xpY3kgfHwgJ25ldHdvcmstb25seSdcbiAgICB9KTtcbiAgICByZXR1cm4gcmVzLnRvdGFsO1xuICB9XG5cbiAgbGlzdGVuQ291bnRDaGFuZ2VzKGZpbHRlcjogUGFydGlhbDxGPiwgb3B0aW9ucz86IFdPICYgeyBpbnRlcnZhbD86IG51bWJlcjsgZmV0Y2hQb2xpY3k/OiBGZXRjaFBvbGljeSB9KTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcblxuICAgIGlmICghdGhpcy5zdWJzY3JpcHRpb25zPy5saXN0ZW5Db3VudENoYW5nZXMpIHtcbiAgICAgIGNvbnNvbGUud2FybihgJHt0aGlzLl9sb2dQcmVmaXh9U3Vic2NyaXB0aW9uIHF1ZXJ5ICdsaXN0ZW5Db3VudENoYW5nZXMnIG5vdCBwcm92aWRlZCwgc2tpcC5gKTtcbiAgICAgIHJldHVybiBvZigpO1xuICAgIH1cblxuICAgIGlmICghZmlsdGVyKSBmaWx0ZXIgPSB0aGlzLmRlZmF1bHRGaWx0ZXIoKTtcbiAgICAvLyBBcHBseSBsYXN0IHJlc2V0IGRhdGUgYXMgc3RhcnQgZGF0ZVxuICAgIGZpbHRlci5zdGFydERhdGUgPSB0aGlzLnJlc2V0Q291bnREYXRlXG4gICAgZmlsdGVyID0gdGhpcy5hc0ZpbHRlcihmaWx0ZXIpO1xuXG4gICAgaWYgKHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKGAke3RoaXMuX2xvZ1ByZWZpeH1bV1NdIExpc3RlbmluZyBjb3VudCBjaGFuZ2VzIGZvciB1c2VyIGV2ZW50cyB3aXRoIGZpbHRlcjpgLCBmaWx0ZXIpO1xuXG4gICAgcmV0dXJuIHRoaXMuZ3JhcGhxbC5zdWJzY3JpYmU8eyB0b3RhbDogbnVtYmVyIH0sIHsgZmlsdGVyOiBhbnksIGludGVydmFsOiBudW1iZXIgfT4oe1xuICAgICAgcXVlcnk6IHRoaXMuc3Vic2NyaXB0aW9ucy5saXN0ZW5Db3VudENoYW5nZXMsXG4gICAgICBmZXRjaFBvbGljeTogb3B0aW9ucz8uZmV0Y2hQb2xpY3ksXG4gICAgICB2YXJpYWJsZXM6IHsgZmlsdGVyOiBmaWx0ZXIuYXNQb2RPYmplY3QoKSwgaW50ZXJ2YWw6IHRvTnVtYmVyKG9wdGlvbnM/LmludGVydmFsLCAxMCkgfSxcbiAgICAgIGVycm9yOiB7XG4gICAgICAgIGNvZGU6IFNvY2lhbEVycm9yQ29kZXMuU1VCU0NSSUJFX1VTRVJfRVZFTlRTX0VSUk9SLFxuICAgICAgICBtZXNzYWdlOiAnU09DSUFMLkVSUk9SLlNVQlNDUklCRV9VU0VSX0VWRU5UU19FUlJPUidcbiAgICAgIH1cbiAgICB9KS5waXBlKFxuICAgICAgbWFwKCh7IHRvdGFsIH0pID0+IHtcbiAgICAgICAgICBpZiAodG90YWwgJiYgdGhpcy5fZGVidWcpIGNvbnNvbGUuZGVidWcoYCR7dGhpcy5fbG9nUHJlZml4fVJlY2VpdmVkIG5ldyB1c2VyIGV2ZW50cyBjb3VudDpgLCB0b3RhbCk7XG4gICAgICAgICAgLy8gdXBkYXRlIGNvdW50XG4gICAgICAgICAgdGhpcy5jb3VudCQubmV4dCh0b3RhbCk7XG4gICAgICAgICAgcmV0dXJuIHRvdGFsO1xuICAgICAgICB9XG4gICAgICApXG4gICAgKTtcblxuICB9XG5cbiAgbGlzdGVuQ2hhbmdlcyhmaWx0ZXI6IFBhcnRpYWw8Rj4sIG9wdGlvbnM/OiBXTyAmIHsgaW50ZXJ2YWw/OiBudW1iZXI7IGZldGNoUG9saWN5PzogRmV0Y2hQb2xpY3k7IH0pOiBPYnNlcnZhYmxlPEVbXT4ge1xuXG4gICAgaWYgKCF0aGlzLnN1YnNjcmlwdGlvbnM/Lmxpc3RlbkNoYW5nZXMpIHtcbiAgICAgIGNvbnNvbGUud2FybihgJHt0aGlzLl9sb2dQcmVmaXh9U3Vic2NyaXB0aW9uIHF1ZXJ5ICdsaXN0ZW5DaGFuZ2VzJyBub3QgcHJvdmlkZWQsIHNraXAuYCk7XG4gICAgICByZXR1cm4gb2YoKTtcbiAgICB9XG5cbiAgICBpZiAoIWZpbHRlcikgZmlsdGVyID0gdGhpcy5kZWZhdWx0RmlsdGVyKCk7XG4gICAgZmlsdGVyID0gdGhpcy5hc0ZpbHRlcihmaWx0ZXIpO1xuXG4gICAgY29uc3Qgd2l0aENvbnRlbnQgPSBvcHRpb25zPy53aXRoQ29udGVudCA9PT0gdHJ1ZTtcblxuICAgIGlmICh0aGlzLl9kZWJ1ZykgY29uc29sZS5kZWJ1ZyhgJHt0aGlzLl9sb2dQcmVmaXh9W1dTXSBMaXN0ZW5pbmcgY2hhbmdlcyBmb3IgdXNlciBldmVudHMgd2l0aCBmaWx0ZXI6YCwgZmlsdGVyKTtcblxuICAgIHJldHVybiB0aGlzLmdyYXBocWwuc3Vic2NyaWJlPHsgZGF0YTogYW55W10gfSwgeyBmaWx0ZXI6IGFueSwgaW50ZXJ2YWw6IG51bWJlciB9Pih7XG4gICAgICBxdWVyeTogdGhpcy5zdWJzY3JpcHRpb25zLmxpc3RlbkNoYW5nZXMsXG4gICAgICBmZXRjaFBvbGljeTogb3B0aW9ucz8uZmV0Y2hQb2xpY3ksXG4gICAgICB2YXJpYWJsZXM6IHsgZmlsdGVyOiBmaWx0ZXIuYXNQb2RPYmplY3QoKSwgaW50ZXJ2YWw6IHRvTnVtYmVyKG9wdGlvbnM/LmludGVydmFsLCAxMCkgfSxcbiAgICAgIGVycm9yOiB7XG4gICAgICAgIGNvZGU6IFNvY2lhbEVycm9yQ29kZXMuU1VCU0NSSUJFX1VTRVJfRVZFTlRTX0VSUk9SLFxuICAgICAgICBtZXNzYWdlOiAnU09DSUFMLkVSUk9SLlNVQlNDUklCRV9VU0VSX0VWRU5UU19FUlJPUidcbiAgICAgIH1cbiAgICB9KS5waXBlKFxuICAgICAgbWFwKCh7IGRhdGEgfSkgPT4ge1xuICAgICAgICAgIGlmIChkYXRhICYmIHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKGAke3RoaXMuX2xvZ1ByZWZpeH1SZWNlaXZlZCBuZXcgdXNlciBldmVudHM6YCwgZGF0YSk7XG4gICAgICAgICAgY29uc3QgdXBkYXRlZERhdGEgPSBkYXRhPy5tYXAodmFsdWUgPT4gdGhpcy5wcm9jZXNzVXNlckV2ZW50KHZhbHVlLCB0aGlzKSk7XG4gICAgICAgICAgLy8gVXBkYXRlIGNhY2hlXG4gICAgICAgICAgdGhpcy5pbnNlcnRJbnRvTXV0YWJsZUNhY2hlZFF1ZXJpZXMoXG4gICAgICAgICAgICB0aGlzLmdyYXBocWwuY2FjaGUsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHF1ZXJ5OiB3aXRoQ29udGVudCA/IHRoaXMucXVlcmllcy5sb2FkQWxsV2l0aENvbnRlbnQgOiB0aGlzLnF1ZXJpZXMubG9hZEFsbCxcbiAgICAgICAgICAgICAgZGF0YTogdXBkYXRlZERhdGFcbiAgICAgICAgICAgIH1cbiAgICAgICAgICApO1xuICAgICAgICAgIHJldHVybiB1cGRhdGVkRGF0YTtcbiAgICAgICAgfVxuICAgICAgKVxuICAgICk7XG5cbiAgfVxuXG4gIGFzeW5jIGRlbGV0ZShlbnRpdHk6IEUpOiBQcm9taXNlPGFueT4ge1xuICAgIGlmICghZW50aXR5KSByZXR1cm47IC8vIHNraXBcbiAgICBhd2FpdCB0aGlzLmRlbGV0ZUFsbChbZW50aXR5XSk7XG4gIH1cblxuICBhc3luYyBkZWxldGVBbGwoZW50aXRpZXM6IEVbXSwgb3B0cz86IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgY29uc3QgaWRzID0gZW50aXRpZXMgJiYgZW50aXRpZXNcbiAgICAgIC5tYXAodCA9PiB0LmlkKTtcbiAgICBpZiAoaXNFbXB0eUFycmF5KGlkcykpIHJldHVybjsgLy8gc3RvcCwgaWYgbm90aGluZyBlbHNlIHRvIGRvXG5cbiAgICBjb25zdCBub3cgPSBEYXRlLm5vdygpO1xuICAgIGlmICh0aGlzLl9kZWJ1ZykgY29uc29sZS5kZWJ1ZyhgJHt0aGlzLl9sb2dQcmVmaXh9RGVsZXRpbmcgZXZlbnRzLi4uIGlkczpgLCBpZHMpO1xuXG4gICAgYXdhaXQgdGhpcy5ncmFwaHFsLm11dGF0ZTxhbnk+KHtcbiAgICAgIG11dGF0aW9uOiB0aGlzLm11dGF0aW9ucy5kZWxldGVCeUlkcyxcbiAgICAgIHZhcmlhYmxlczoge1xuICAgICAgICBpZHNcbiAgICAgIH0sXG4gICAgICB1cGRhdGU6IChwcm94eSkgPT4ge1xuICAgICAgICAvLyBSZW1vdmUgZnJvbSBjYWNoZXNcbiAgICAgICAgdGhpcy5yZW1vdmVGcm9tTXV0YWJsZUNhY2hlZFF1ZXJpZXNCeUlkcyhwcm94eSwge1xuICAgICAgICAgIHF1ZXJ5OiB0aGlzLnF1ZXJpZXMubG9hZEFsbCxcbiAgICAgICAgICBpZHNcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMucmVtb3ZlRnJvbU11dGFibGVDYWNoZWRRdWVyaWVzQnlJZHMocHJveHksIHtcbiAgICAgICAgICBxdWVyeTogdGhpcy5xdWVyaWVzLmxvYWRBbGxXaXRoQ29udGVudCxcbiAgICAgICAgICBpZHNcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKGAke3RoaXMuX2xvZ1ByZWZpeH1FdmVudHMgZGVsZXRlZCBpbiAke0RhdGUubm93KCkgLSBub3d9bXNgKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIHNhdmUoZW50aXR5OiBFLCBvcHRpb25zPzogRW50aXR5U2VydmljZUxvYWRPcHRpb25zKTogUHJvbWlzZTxFPiB7XG4gICAgdGhpcy5maWxsRGVmYXVsdFByb3BlcnRpZXMoZW50aXR5KTtcblxuICAgIC8vIFRyYW5zZm9ybSBpbnRvIGpzb25cbiAgICBjb25zdCB3aXRoQ29udGVudCA9ICEhZW50aXR5LmNvbnRlbnQ7XG4gICAgY29uc3QganNvbiA9IGVudGl0eS5hc09iamVjdCgpO1xuXG4gICAgY29uc3Qgbm93ID0gRGF0ZS5ub3coKTtcbiAgICBpZiAodGhpcy5fZGVidWcpIGNvbnNvbGUuZGVidWcoYCR7dGhpcy5fbG9nUHJlZml4fVNhdmluZyB1c2VyIGV2ZW50Li4uYCwganNvbik7XG5cbiAgICBhd2FpdCB0aGlzLmdyYXBocWwubXV0YXRlPHsgZGF0YTogYW55IH0+KHtcbiAgICAgIG11dGF0aW9uOiB0aGlzLm11dGF0aW9ucy5zYXZlLFxuICAgICAgdmFyaWFibGVzOiB7XG4gICAgICAgIGRhdGE6IGpzb25cbiAgICAgIH0sXG4gICAgICBlcnJvcjogeyBjb2RlOiBTb2NpYWxFcnJvckNvZGVzLlNBVkVfVVNFUl9FVkVOVF9FUlJPUiwgbWVzc2FnZTogJ1NPQ0lBTC5FUlJPUi5TQVZFX1VTRVJfRVZFTlRfRVJST1InIH0sXG4gICAgICB1cGRhdGU6IChwcm94eSwgeyBkYXRhIH0pID0+IHtcbiAgICAgICAgLy8gVXBkYXRlIGVudGl0eVxuICAgICAgICBjb25zdCBzYXZlZEVudGl0eSA9IGRhdGEgJiYgZGF0YS5kYXRhO1xuICAgICAgICBpZiAoc2F2ZWRFbnRpdHkpIHtcbiAgICAgICAgICBpZiAodGhpcy5fZGVidWcpIGNvbnNvbGUuZGVidWcoYCR7dGhpcy5fbG9nUHJlZml4fVVzZXIgZXZlbnQgc2F2ZWQgaW4gJHtEYXRlLm5vdygpIC0gbm93fW1zYCwgZW50aXR5KTtcbiAgICAgICAgICB0aGlzLmNvcHlJZEFuZFVwZGF0ZURhdGUoc2F2ZWRFbnRpdHksIGVudGl0eSk7XG5cbiAgICAgICAgICAvLyBBZGQgdG8gY2FjaGVcbiAgICAgICAgICBpZiAod2l0aENvbnRlbnQpIHtcbiAgICAgICAgICAgIHRoaXMuaW5zZXJ0SW50b011dGFibGVDYWNoZWRRdWVyaWVzKHByb3h5LCB7XG4gICAgICAgICAgICAgIHF1ZXJ5OiB0aGlzLnF1ZXJpZXMubG9hZEFsbFdpdGhDb250ZW50LFxuICAgICAgICAgICAgICBkYXRhOiBzYXZlZEVudGl0eVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuaW5zZXJ0SW50b011dGFibGVDYWNoZWRRdWVyaWVzKHByb3h5LCB7XG4gICAgICAgICAgICAgIHF1ZXJ5OiB0aGlzLnF1ZXJpZXMubG9hZEFsbCxcbiAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIC4uLnNhdmVkRW50aXR5LFxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG51bGxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gZW50aXR5O1xuICB9XG5cbiAgYXN5bmMgc2F2ZUFsbChlbnRpdGllczogRVtdLCBvcHRzPzogYW55KTogUHJvbWlzZTxFW10+IHtcbiAgICByZXR1cm4gUHJvbWlzZS5hbGwoZW50aXRpZXNcbiAgICAgIC5tYXAoZW50aXR5ID0+IHRoaXMuc2F2ZShlbnRpdHksIG9wdHMpKVxuICAgICk7XG4gIH1cblxuICBhc3luYyBtYXJrQXNSZWFkKGVudGl0aWVzOiBFW10pIHtcblxuICAgIGNvbnN0IHVzZXJFdmVudFdpdGhvdXRSZWFkTGlzdGVuZXJzOiBFW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IGVudGl0eSBvZiAoZW50aXRpZXMgfHwgW10pKSB7XG4gICAgICAvLyBHZXQgb25SZWFkIGxpc3RlbmVyc1xuICAgICAgY29uc3Qgb25SZWFkTGlzdGVuZXJzID0gKHRoaXMubGlzdGVuZXJzIHx8IFtdKS5maWx0ZXIobGlzdGVuZXIgPT4gISFsaXN0ZW5lci5vblJlYWQpLmZpbHRlcihsaXN0ZW5lciA9PiBsaXN0ZW5lci5hY2NlcHQoZW50aXR5KSk7XG4gICAgICBpZiAob25SZWFkTGlzdGVuZXJzLmxlbmd0aCkge1xuICAgICAgICBmb3IgKGNvbnN0IGxpc3RlbmVyIG9mIG9uUmVhZExpc3RlbmVycykge1xuICAgICAgICAgIGF3YWl0IGxpc3RlbmVyLm9uUmVhZChlbnRpdHkpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBBZGQgdG8gdGhpcyBsaXN0IGZvciBkZWZhdWx0IG9wZXJhdGlvblxuICAgICAgICB1c2VyRXZlbnRXaXRob3V0UmVhZExpc3RlbmVycy5wdXNoKGVudGl0eSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gVXNlIGRlZmF1bHRcbiAgICBhd2FpdCB0aGlzLmRlZmF1bHRNYXJrQXNSZWFkKHVzZXJFdmVudFdpdGhvdXRSZWFkTGlzdGVuZXJzKTtcbiAgfVxuXG4gIHJlZ2lzdGVyTGlzdGVuZXIobGlzdGVuZXI6IElVc2VyRXZlbnRMaXN0ZW5lcjxFPikge1xuICAgIGlmICghdGhpcy5saXN0ZW5lcnMpIHRoaXMubGlzdGVuZXJzID0gW107XG4gICAgdGhpcy5saXN0ZW5lcnMucHVzaChsaXN0ZW5lcik7XG4gIH1cblxuICByZXNldENvdW50KCkge1xuICAgIHRoaXMuY291bnQkLm5leHQodW5kZWZpbmVkKTtcbiAgICB0aGlzLnJlc2V0Q291bnREYXRlID0gbW9tZW50KCk7XG4gICAgLy8gcmVzdGFydCBsaXN0ZW5pbmcgY291bnQgY2hhbmdlc1xuICAgIHRoaXMuc3RhcnRMaXN0ZW5Db3VudENoYW5nZXMoKTtcbiAgfVxuXG4gIC8qIC0tIHByb3RlY3RlZCBtZXRob2RzIC0tICovXG5cbiAgcHJvdGVjdGVkIGFzeW5jIG9uTG9naW4oKSB7XG4gICAgLy8gR2V0IGZpcnN0IGNvdW50XG4gICAgY29uc3QgY291bnQgPSBhd2FpdCB0aGlzLmNvdW50KHVuZGVmaW5lZCk7XG4gICAgaWYgKHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKGAke3RoaXMuX2xvZ1ByZWZpeH1SZWNlaXZpbmcgdXNlciBldmVudHMgY291bnRgLCBjb3VudCk7XG4gICAgLy8gVXBkYXRlIGNvdW50XG4gICAgdGhpcy5jb3VudCQubmV4dChjb3VudCk7XG5cbiAgICAvLyBUaGVuIGxpc3RlbiBjaGFuZ2VzXG4gICAgdGhpcy5zdGFydExpc3RlbkNvdW50Q2hhbmdlcygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uTG9nb3V0KCkge1xuICAgIHRoaXMuc3RvcExpc3RlbkNvdW50Q2hhbmdlcygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHN0YXJ0TGlzdGVuQ291bnRDaGFuZ2VzKCkge1xuICAgIHRoaXMuc3RvcExpc3RlbkNvdW50Q2hhbmdlcygpO1xuICAgIHRoaXMuX2xpc3RlblN1YnNjcmlwdGlvbiA9IHRoaXMubGlzdGVuQ291bnRDaGFuZ2VzKHVuZGVmaW5lZCkuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc3RvcExpc3RlbkNvdW50Q2hhbmdlcygpIHtcbiAgICB0aGlzLl9saXN0ZW5TdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5fbGlzdGVuU3Vic2NyaXB0aW9uID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJvdGVjdGVkIHByb2Nlc3NVc2VyRXZlbnQoc291cmNlOiBhbnksIHRoYXQ/OiBBYnN0cmFjdFVzZXJFdmVudFNlcnZpY2U8RSwgRj4pOiBFIHtcbiAgICB0aGF0ID0gdGhhdCB8fCB0aGlzO1xuXG4gICAgLy8gQ29udmVydCBqc29uIHNvdXJjZSB0byBJVXNlckV2ZW50XG4gICAgbGV0IHRhcmdldCA9IHRoYXQuZnJvbU9iamVjdChzb3VyY2UpO1xuXG4gICAgLy8gR2V0IGxpc3RlbmVyc1xuICAgIGNvbnN0IGxpc3RlbmVycyA9ICh0aGF0Lmxpc3RlbmVycyB8fCBbXSkuZmlsdGVyKGxpc3RlbmVyID0+IGxpc3RlbmVyLm9uUmVjZWl2ZWQpLmZpbHRlcihsaXN0ZW5lciA9PiBsaXN0ZW5lci5hY2NlcHQodGFyZ2V0KSk7XG4gICAgZm9yIChjb25zdCBsaXN0ZW5lciBvZiBsaXN0ZW5lcnMpIHtcbiAgICAgIGlmICh0YXJnZXQpIHtcbiAgICAgICAgdGFyZ2V0ID0gbGlzdGVuZXIub25SZWNlaXZlZCh0YXJnZXQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHRoYXQuX2RlYnVnKSBjb25zb2xlLmRlYnVnKGAke3RoYXQuX2xvZ1ByZWZpeH1FdmVudCBoYXMgYmVlbiByZWplY3RlZCBieSBhIGxpc3RlbmVyYCwgc291cmNlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRhcmdldDtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBkZWZhdWx0TWFya0FzUmVhZCh1c2VyRXZlbnRzOiBFW10pIHtcbiAgICBpZiAoIXVzZXJFdmVudHMpIHRocm93IG5ldyBFcnJvcihgJHt0aGlzLl9sb2dQcmVmaXh9SW52YWxpZCBldmVudCB0byBzYXZlYCk7XG4gICAgaWYgKCF1c2VyRXZlbnRzLmxlbmd0aCkgcmV0dXJuO1xuXG4gICAgLy8gc2V0IHJlYWQgZGF0ZVxuICAgIHVzZXJFdmVudHMuZm9yRWFjaCh1c2VyRXZlbnQgPT4gdXNlckV2ZW50LnJlYWREYXRlID0gbW9tZW50KCkpO1xuXG4gICAgLy8gc3BsaXQgbG9jYWwvcmVtb3RlIGVudGl0aWVzXG4gICAgY29uc3QgbG9jYWxFbnRpdGllcyA9IHVzZXJFdmVudHMuZmlsdGVyKHVzZXJFdmVudCA9PiAhdXNlckV2ZW50LmlkIHx8IHVzZXJFdmVudC5pZCA8IDApO1xuICAgIGNvbnN0IHJlbW90ZUVudGl0aWVzID0gdXNlckV2ZW50cy5maWx0ZXIodXNlckV2ZW50ID0+IHVzZXJFdmVudC5pZCA+IDApO1xuXG4gICAgLy8gc2F2ZSBsb2NhbCBlbnRpdGllc1xuICAgIGlmIChsb2NhbEVudGl0aWVzLmxlbmd0aCkge1xuICAgICAgaWYgKHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKGAke3RoaXMuX2xvZ1ByZWZpeH1TYXZlIGxvY2FsIHVzZXIgZXZlbnRgKTtcbiAgICAgIC8vIFRPRE8gISEhISEhISEhISEhIVxuICAgIH1cbiAgICAvLyBtYXJrIHJlbW90ZSBlbnRpdGllcyBhcyByZWFkXG4gICAgaWYgKHJlbW90ZUVudGl0aWVzLmxlbmd0aCkge1xuICAgICAgaWYgKCF0aGlzLm11dGF0aW9ucz8ubWFya0FzUmVhZCkge1xuICAgICAgICBjb25zb2xlLndhcm4oYCR7dGhpcy5fbG9nUHJlZml4fU11dGF0aW9uIHF1ZXJ5ICdtYXJrQXNSZWFkJyBub3QgcHJvdmlkZWQsIHNraXAuYCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgLy8gQ29sbGVjdCBpZHNcbiAgICAgIGNvbnN0IGlkcyA9IHJlbW90ZUVudGl0aWVzLm1hcCh2YWx1ZSA9PiB2YWx1ZS5pZCk7XG4gICAgICBjb25zdCBub3cgPSBEYXRlLm5vdygpO1xuICAgICAgaWYgKHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKGAke3RoaXMuX2xvZ1ByZWZpeH1NYXJrIHVzZXIgZXZlbnRzIGFzIHJlYWQuLi5gLCBpZHMpO1xuXG4gICAgICBhd2FpdCB0aGlzLmdyYXBocWwubXV0YXRlPHsgZGF0YTogYW55IH0+KHtcbiAgICAgICAgbXV0YXRpb246IHRoaXMubXV0YXRpb25zLm1hcmtBc1JlYWQsXG4gICAgICAgIHZhcmlhYmxlczoge1xuICAgICAgICAgIGlkc1xuICAgICAgICB9LFxuICAgICAgICBlcnJvcjogeyBjb2RlOiBTb2NpYWxFcnJvckNvZGVzLlNBVkVfVVNFUl9FVkVOVF9FUlJPUiwgbWVzc2FnZTogJ1NPQ0lBTC5FUlJPUi5TQVZFX1VTRVJfRVZFTlRfRVJST1InIH0sXG4gICAgICB9KTtcblxuICAgICAgaWYgKHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKGAke3RoaXMuX2xvZ1ByZWZpeH1Vc2VyIGV2ZW50cyBtYXJrZWQgYXMgcmVhZCBpbiAke0RhdGUubm93KCkgLSBub3d9bXNgLCBpZHMpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBkZWZhdWx0RmlsdGVyKCk6IEYge1xuICAgIC8vIEJ5IGRlZmF1bHRcbiAgICByZXR1cm4gPEY+e1xuICAgICAgcmVjaXBpZW50czogW3RoaXMuZGVmYXVsdFJlY2lwaWVudCgpXVxuICAgIH07XG4gIH1cblxuICBwcm90ZWN0ZWQgZGVmYXVsdFJlY2lwaWVudCgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLmFjY291bnRTZXJ2aWNlLnBlcnNvbi5wdWJrZXk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZmlsbERlZmF1bHRQcm9wZXJ0aWVzKGVudGl0eTogRSkge1xuICB9XG5cbiAgcHJvdGVjdGVkIHVucmVhZEV2ZW50cyhldmVudHM6IEVbXSk6IG51bWJlciB7XG4gICAgLy8gZGVmYXVsdCBjYWxjdWxhdGlvbiBvbiB1bnJlYWQgZXZlbnRzIGZyb20gYSBsaXN0XG4gICAgaWYgKGlzRW1wdHlBcnJheShldmVudHMpKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIGNvbnN0IGxhc3RSZWFkRGF0ZSA9IGV2ZW50c1xuICAgICAgLmZpbHRlcihldmVudCA9PiBpc05vdE5pbChldmVudC5yZWFkRGF0ZSkpXG4gICAgICAucmVkdWNlKChsYXN0RGF0ZSwgZXZlbnQpID0+IERhdGVVdGlscy5tYXgobGFzdERhdGUsIGV2ZW50LnJlYWREYXRlKSwgdW5kZWZpbmVkIGFzIE1vbWVudCk7XG4gICAgcmV0dXJuIGV2ZW50c1xuICAgICAgLmZpbHRlcihldmVudCA9PiBldmVudC5jcmVhdGlvbkRhdGUuaXNTYW1lT3JBZnRlcihsYXN0UmVhZERhdGUpKS5sZW5ndGg7XG4gIH1cblxuICBwcm90ZWN0ZWQgY29weUlkQW5kVXBkYXRlRGF0ZShzb3VyY2U6IEUsIHRhcmdldDogRSkge1xuICAgIEVudGl0eVV0aWxzLmNvcHlJZEFuZFVwZGF0ZURhdGUoc291cmNlLCB0YXJnZXQpO1xuICB9XG5cbn1cblxuXG5jb25zdCB1c2VyRXZlbnRRdWVyaWVzOiBJVXNlckV2ZW50UXVlcmllcyA9IHtcbiAgbG9hZEFsbDogZ3FsYFxuICAgIHF1ZXJ5IFVzZXJFdmVudHMoJGZpbHRlcjogVXNlckV2ZW50RmlsdGVyVk9JbnB1dCwgJHBhZ2U6IFBhZ2VJbnB1dCl7XG4gICAgICBkYXRhOiB1c2VyRXZlbnRzKGZpbHRlcjogJGZpbHRlciwgcGFnZTogJHBhZ2Upe1xuICAgICAgICAuLi5MaWdodFVzZXJFdmVudEZyYWdtZW50XG4gICAgICB9XG4gICAgfVxuICAgICR7VXNlckV2ZW50RnJhZ21lbnRzLmxpZ2h0VXNlckV2ZW50fVxuICBgLFxuXG4gIGxvYWRBbGxXaXRoQ29udGVudDogZ3FsYFxuICAgIHF1ZXJ5IFVzZXJFdmVudHNXaXRoQ29udGVudCgkZmlsdGVyOiBVc2VyRXZlbnRGaWx0ZXJWT0lucHV0LCAkcGFnZTogUGFnZUlucHV0KXtcbiAgICAgIGRhdGE6IHVzZXJFdmVudHMoZmlsdGVyOiAkZmlsdGVyLCBwYWdlOiAkcGFnZSl7XG4gICAgICAgIC4uLlVzZXJFdmVudEZyYWdtZW50XG4gICAgICB9XG4gICAgfVxuICAgICR7VXNlckV2ZW50RnJhZ21lbnRzLnVzZXJFdmVudH1cbiAgYFxufTtcblxuY29uc3QgdXNlckV2ZW50TXV0YXRpb25zOiBJVXNlckV2ZW50TXV0YXRpb25zID0ge1xuICBkZWxldGVCeUlkczogZ3FsYFxuICAgIG11dGF0aW9uIERlbGV0ZVVzZXJFdmVudHMoJGlkczpbSW50XSl7XG4gICAgICBkZWxldGVVc2VyRXZlbnRzKGlkczogJGlkcylcbiAgICB9XG4gIGAsXG5cbiAgc2F2ZTogZ3FsYFxuICAgIG11dGF0aW9uIFNhdmVVc2VyRXZlbnQoJGRhdGE6IFVzZXJFdmVudFZPSW5wdXQpe1xuICAgICAgZGF0YTogc2F2ZVVzZXJFdmVudCh1c2VyRXZlbnQ6ICRkYXRhKXtcbiAgICAgICAgLi4uVXNlckV2ZW50RnJhZ21lbnRcbiAgICAgIH1cbiAgICB9XG4gICAgJHtVc2VyRXZlbnRGcmFnbWVudHMudXNlckV2ZW50fVxuICBgXG59O1xuXG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBVc2VyRXZlbnRTZXJ2aWNlXG4gIGV4dGVuZHMgQWJzdHJhY3RVc2VyRXZlbnRTZXJ2aWNlPFVzZXJFdmVudCwgVXNlckV2ZW50RmlsdGVyPiB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGdyYXBocWw6IEdyYXBocWxTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCBhY2NvdW50U2VydmljZTogQWNjb3VudFNlcnZpY2UsXG4gICAgcHJvdGVjdGVkIG5ldHdvcms6IE5ldHdvcmtTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChFTlZJUk9OTUVOVCkgcHJvdGVjdGVkIGVudmlyb25tZW50OiBFbnZpcm9ubWVudFxuICApIHtcbiAgICBzdXBlcihncmFwaHFsLCBhY2NvdW50U2VydmljZSwgbmV0d29yaywgdHJhbnNsYXRlLCB7XG4gICAgICBxdWVyaWVzOiB1c2VyRXZlbnRRdWVyaWVzLFxuICAgICAgbXV0YXRpb25zOiB1c2VyRXZlbnRNdXRhdGlvbnMsXG4gICAgICBwcm9kdWN0aW9uOiBlbnZpcm9ubWVudD8ucHJvZHVjdGlvblxuICAgIH0pO1xuICB9XG5cblxuICBhc0ZpbHRlcihmaWx0ZXI6IFBhcnRpYWw8VXNlckV2ZW50RmlsdGVyPik6IFVzZXJFdmVudEZpbHRlciB7XG4gICAgcmV0dXJuIFVzZXJFdmVudEZpbHRlci5mcm9tT2JqZWN0KGZpbHRlcik7XG4gIH1cblxuICBmcm9tT2JqZWN0KHNvdXJjZTogYW55KTogVXNlckV2ZW50IHtcbiAgICByZXR1cm4gVXNlckV2ZW50LmZyb21PYmplY3Qoc291cmNlKTtcbiAgfVxuXG4gIC8qIC0tIHByb3RlY3RlZCBtZXRob2RzIC0tICovXG5cbiAgcHJvdGVjdGVkIGZpbGxEZWZhdWx0UHJvcGVydGllcyhlbnRpdHk6IFVzZXJFdmVudCkge1xuICAgIGVudGl0eS5pc3N1ZXIgPSB0aGlzLmFjY291bnRTZXJ2aWNlLmFjY291bnQucHVia2V5O1xuXG4gICAgLy8gVE9ETzogY29tcHV0ZSBoYXNoICh1c2luZyBjcnlwdG9TZXJ2aWNlKVxuICAgIC8vIFRPRE86IGNvbXB1dGUgc2lnblxuICAgIGNvbnNvbGUud2FybignVE9ETzogc2lnbiB1c2VyIGV2ZW50IGJlZm9yZSBzZW5kaW5nJyk7XG4gIH1cblxufVxuIl19
|
|
436
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1ldmVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zb2NpYWwvdXNlci1ldmVudC91c2VyLWV2ZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsY0FBYyxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBRW5FLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNuRSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDbEUsT0FBTyxFQUFDLGVBQWUsRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFFLFlBQVksRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUkxRSxPQUFPLEVBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ25FLE9BQU8sRUFBQyxZQUFZLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3hFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNuRSxPQUFPLEVBQUMsa0JBQWtCLEVBQTRCLE1BQU0sZ0RBQWdELENBQUM7QUFDN0csT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUM3QyxPQUFPLEtBQUssY0FBYyxNQUFNLFFBQVEsQ0FBQztBQUl6QyxNQUFNLE1BQU0sR0FBRyxjQUFjLENBQUM7QUFFOUIsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxjQUFjLENBQThCLGtCQUFrQixDQUFDLENBQUM7QUFr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LENBQUMsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLEVBQUUsU0FBbUIsQ0FBQyxDQUFDO1FBQzdGLE9BQU8sTUFBTTthQUNWLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQzVFLENBQUM7SUFFUyxtQkFBbUIsQ0FBQyxNQUFTLEVBQUUsTUFBUztRQUNoRCxXQUFXLENBQUMsbUJBQW1CLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2xELENBQUM7OztZQXBlRixTQUFTOzs7WUFuRkYsY0FBYztZQURkLGNBQWM7WUFTZCxjQUFjO1lBRGQsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEluamVjdGlvblRva2VuLCBPbkRlc3Ryb3l9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGZXRjaFBvbGljeX0gZnJvbSAnQGFwb2xsby9jbGllbnQvY29yZSc7XG5pbXBvcnQge1NvY2lhbEVycm9yQ29kZXN9IGZyb20gJy4uL3NvY2lhbC5lcnJvcnMnO1xuaW1wb3J0IHtBY2NvdW50U2VydmljZX0gZnJvbSAnLi4vLi4vY29yZS9zZXJ2aWNlcy9hY2NvdW50LnNlcnZpY2UnO1xuaW1wb3J0IHtHcmFwaHFsU2VydmljZX0gZnJvbSAnLi4vLi4vY29yZS9ncmFwaHFsL2dyYXBocWwuc2VydmljZSc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgbWVyZ2UsIE9ic2VydmFibGUsIG9mLCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtJVXNlckV2ZW50LCBJVXNlckV2ZW50RmlsdGVyfSBmcm9tICcuL3VzZXItZXZlbnQubW9kZWwnO1xuaW1wb3J0IHtTb3J0RGlyZWN0aW9ufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zb3J0JztcbmltcG9ydCB7RW50aXRpZXNTZXJ2aWNlV2F0Y2hPcHRpb25zLCBFbnRpdHlTZXJ2aWNlTG9hZE9wdGlvbnMsIElFbnRpdGllc1NlcnZpY2UsIExvYWRSZXN1bHQsIFBhZ2V9IGZyb20gJy4uLy4uL3NoYXJlZC9zZXJ2aWNlcy9lbnRpdHktc2VydmljZS5jbGFzcyc7XG5pbXBvcnQge2Rpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIG1lcmdlTWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge2lzRW1wdHlBcnJheSwgaXNOb3ROaWwsIHRvTnVtYmVyfSBmcm9tICcuLi8uLi9zaGFyZWQvZnVuY3Rpb25zJztcbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge05ldHdvcmtTZXJ2aWNlfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2VzL25ldHdvcmsuc2VydmljZSc7XG5pbXBvcnQge0Jhc2VHcmFwaHFsU2VydmljZSwgQmFzZUdyYXBocWxTZXJ2aWNlT3B0aW9uc30gZnJvbSAnLi4vLi4vY29yZS9zZXJ2aWNlcy9iYXNlLWdyYXBocWwtc2VydmljZS5jbGFzcyc7XG5pbXBvcnQge0VudGl0eVV0aWxzfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2VzL21vZGVsL2VudGl0eS5tb2RlbCc7XG5pbXBvcnQge0RhdGVVdGlsc30gZnJvbSAnLi4vLi4vc2hhcmVkL2RhdGVzJztcbmltcG9ydCAqIGFzIG1vbWVudEltcG9ydGVkIGZyb20gJ21vbWVudCc7XG5pbXBvcnQge01vbWVudH0gZnJvbSAnbW9tZW50JztcbmltcG9ydCB7SVN0YXJ0YWJsZVNlcnZpY2V9IGZyb20gJy4uLy4uL3NoYXJlZC9zZXJ2aWNlcy9zdGFydGFibGUtc2VydmljZS5jbGFzcyc7XG5cbmNvbnN0IG1vbWVudCA9IG1vbWVudEltcG9ydGVkO1xuXG5leHBvcnQgY29uc3QgVVNFUl9FVkVOVF9TRVJWSUNFID0gbmV3IEluamVjdGlvblRva2VuPElVc2VyRXZlbnRTZXJ2aWNlPGFueSwgYW55Pj4oJ1VzZXJFdmVudFNlcnZpY2UnKTtcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFVzZXJFdmVudFdhdGNoT3B0aW9ucyBleHRlbmRzIEVudGl0aWVzU2VydmljZVdhdGNoT3B0aW9ucyB7XG4gIHdpdGhDb250ZW50PzogYm9vbGVhbjsgLy8gRGVmYXVsdCB0byBmYWxzZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElVc2VyRXZlbnRRdWVyaWVzIHtcbiAgbG9hZEFsbDogYW55O1xuICBsb2FkQWxsV2l0aENvbnRlbnQ6IGFueTtcbiAgY291bnQ/OiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVVzZXJFdmVudE11dGF0aW9ucyB7XG4gIHNhdmU6IGFueTtcbiAgbWFya0FzUmVhZD86IGFueTtcbiAgZGVsZXRlQnlJZHM6IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJVXNlckV2ZW50U3Vic2NyaXB0aW9ucyB7XG4gIGxpc3RlbkNoYW5nZXM6IGFueTtcbiAgbGlzdGVuQ291bnRDaGFuZ2VzPzogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElVc2VyRXZlbnRMaXN0ZW5lcjxFIGV4dGVuZHMgSVVzZXJFdmVudDxFPj4ge1xuICBhY2NlcHQ6IChFKSA9PiBib29sZWFuO1xuICBvblJlY2VpdmVkPzogKEUpID0+IEUgfCB1bmRlZmluZWQ7XG4gIG9uUmVhZD86IChFKSA9PiBQcm9taXNlPHZvaWQ+IHwgdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVc2VyRXZlbnRTZXJ2aWNlT3B0aW9uczxcbiAgUSBleHRlbmRzIElVc2VyRXZlbnRRdWVyaWVzID0gSVVzZXJFdmVudFF1ZXJpZXMsXG4gIE0gZXh0ZW5kcyBJVXNlckV2ZW50TXV0YXRpb25zID0gSVVzZXJFdmVudE11dGF0aW9ucyxcbiAgUyBleHRlbmRzIElVc2VyRXZlbnRTdWJzY3JpcHRpb25zID0gSVVzZXJFdmVudFN1YnNjcmlwdGlvbnNcbiAgPiBleHRlbmRzIEJhc2VHcmFwaHFsU2VydmljZU9wdGlvbnMge1xuICBxdWVyaWVzOiBRO1xuICBtdXRhdGlvbnM/OiBQYXJ0aWFsPE0+O1xuICBzdWJzY3JpcHRpb25zPzogUGFydGlhbDxTPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJVXNlckV2ZW50U2VydmljZTxFIGV4dGVuZHMgSVVzZXJFdmVudDxFPixcbiAgRiBleHRlbmRzIElVc2VyRXZlbnRGaWx0ZXI8RT4sXG4gIFdPIGV4dGVuZHMgVXNlckV2ZW50V2F0Y2hPcHRpb25zID0gVXNlckV2ZW50V2F0Y2hPcHRpb25zPlxuICBleHRlbmRzIElFbnRpdGllc1NlcnZpY2U8RSwgRiwgV08+LCBJU3RhcnRhYmxlU2VydmljZSB7XG5cbiAgdXNlckV2ZW50Q291bnQ6IE9ic2VydmFibGU8bnVtYmVyPjtcblxuICBhZGQoZW50aXR5OiBFKTtcblxuICBjb3VudChmaWx0ZXI6IFBhcnRpYWw8Rj4sIG9wdGlvbnM/OiB7IGZldGNoUG9saWN5PzogRmV0Y2hQb2xpY3k7IH0pOiBQcm9taXNlPG51bWJlcj47XG5cbiAgbGlzdGVuQ291bnRDaGFuZ2VzKGZpbHRlcjogUGFydGlhbDxGPiwgb3B0aW9ucz86IFdPICYgeyBpbnRlcnZhbD86IG51bWJlcjsgZmV0Y2hQb2xpY3k/OiBGZXRjaFBvbGljeTsgfSk6IE9ic2VydmFibGU8bnVtYmVyPjtcblxuICBsaXN0ZW5DaGFuZ2VzKGZpbHRlcjogUGFydGlhbDxGPiwgb3B0aW9ucz86IFdPICYgeyBpbnRlcnZhbD86IG51bWJlcjsgZmV0Y2hQb2xpY3k/OiBGZXRjaFBvbGljeTsgfSk6IE9ic2VydmFibGU8RVtdPjtcblxuICBzYXZlKGVudGl0eTogRSwgb3B0aW9ucz86IEVudGl0eVNlcnZpY2VMb2FkT3B0aW9ucyk6IFByb21pc2U8RT47XG5cbiAgZGVsZXRlKGVudGl0eTogRSk6IFByb21pc2U8YW55PjtcblxuICBtYXJrQXNSZWFkKGVudGl0aWVzOiBFW10pO1xuXG4gIHJlZ2lzdGVyTGlzdGVuZXIobGlzdGVuZXI6IElVc2VyRXZlbnRMaXN0ZW5lcjxFPik7XG5cbiAgcmVzZXRDb3VudCgpO1xufVxuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdFVzZXJFdmVudFNlcnZpY2U8RSBleHRlbmRzIElVc2VyRXZlbnQ8RSwgYW55PixcbiAgRiBleHRlbmRzIElVc2VyRXZlbnRGaWx0ZXI8RSwgYW55PixcbiAgV08gZXh0ZW5kcyBVc2VyRXZlbnRXYXRjaE9wdGlvbnMgPSBVc2VyRXZlbnRXYXRjaE9wdGlvbnMsXG4gIFEgZXh0ZW5kcyBJVXNlckV2ZW50UXVlcmllcyA9IElVc2VyRXZlbnRRdWVyaWVzLFxuICBNIGV4dGVuZHMgSVVzZXJFdmVudE11dGF0aW9ucyA9IElVc2VyRXZlbnRNdXRhdGlvbnMsXG4gIFMgZXh0ZW5kcyBJVXNlckV2ZW50U3Vic2NyaXB0aW9ucyA9IElVc2VyRXZlbnRTdWJzY3JpcHRpb25zXG4gID5cbiAgZXh0ZW5kcyBCYXNlR3JhcGhxbFNlcnZpY2U8RSwgRj5cbiAgaW1wbGVtZW50cyBJVXNlckV2ZW50U2VydmljZTxFLCBGLCBXTz4sIE9uRGVzdHJveSB7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHF1ZXJpZXM6IFE7XG4gIHByb3RlY3RlZCByZWFkb25seSBtdXRhdGlvbnM6IFBhcnRpYWw8TT47XG4gIHByb3RlY3RlZCByZWFkb25seSBzdWJzY3JpcHRpb25zOiBQYXJ0aWFsPFM+O1xuICBwcm90ZWN0ZWQgY291bnQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDApO1xuICBwcm90ZWN0ZWQgcmVzZXRDb3VudERhdGU6IE1vbWVudDtcbiAgcHJvdGVjdGVkIGxpc3RlbmVyczogSVVzZXJFdmVudExpc3RlbmVyPEU+W10gPSBbXTtcbiAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9ucyA9IG5ldyBTdWJzY3JpcHRpb24oKTtcbiAgcHJpdmF0ZSBfbGlzdGVuU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgZ2V0IHVzZXJFdmVudENvdW50KCk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgcmV0dXJuIHRoaXMuY291bnQkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBncmFwaHFsOiBHcmFwaHFsU2VydmljZSxcbiAgICBwcm90ZWN0ZWQgYWNjb3VudFNlcnZpY2U6IEFjY291bnRTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCBuZXR3b3JrOiBOZXR3b3JrU2VydmljZSxcbiAgICBwcm90ZWN0ZWQgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCBvcHRpb25zOiBVc2VyRXZlbnRTZXJ2aWNlT3B0aW9uczxRLCBNLCBTPlxuICApIHtcbiAgICBzdXBlcihncmFwaHFsLCBvcHRpb25zKTtcbiAgICB0aGlzLnF1ZXJpZXMgPSBvcHRpb25zLnF1ZXJpZXM7XG4gICAgdGhpcy5tdXRhdGlvbnMgPSBvcHRpb25zLm11dGF0aW9ucyB8fCA8UGFydGlhbDxNPj57fTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMgPSBvcHRpb25zLnN1YnNjcmlwdGlvbnMgfHwgPFBhcnRpYWw8Uz4+e307XG4gICAgdGhpcy5fbG9nUHJlZml4ID0gJ1t1c2VyLWV2ZW50LXNlcnZpY2VdICc7XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgbmdPblN0YXJ0KCk6IFByb21pc2U8dm9pZD4ge1xuXG4gICAgLy8gVXBkYXRlIGNvbXBvbmVudCB3aGVuIHJlZnJlc2ggaXMgbmVlZCAoPWxvZ2luIGV2ZW50cylcbiAgICB0aGlzLl9zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIG1lcmdlKFxuICAgICAgICB0aGlzLmFjY291bnRTZXJ2aWNlLm9uTG9naW4sXG4gICAgICAgIHRoaXMuYWNjb3VudFNlcnZpY2Uub25Mb2dvdXQsXG4gICAgICAgIG9mKCkgLy8gU3RhcnRzIHdpdGggLSAgZmlyc3QgYXR0ZW1wdCBpZiBhY2NvdW50IGlzIHJlYWR5XG4gICAgICApXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIC8vIFdhaXQgYWNjb3VudCBzZXJ2aWNlIHJlYWR5IChjYW4gYmUgcmVzdGFydGVkKVxuICAgICAgICAgIG1lcmdlTWFwKCgpID0+IHRoaXMuYWNjb3VudFNlcnZpY2UucmVhZHkoKSksXG4gICAgICAgICAgbWFwKCgpID0+IHRoaXMuYWNjb3VudFNlcnZpY2UuaXNMb2dpbigpKSxcbiAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZShsb2dpbiA9PiB7XG4gICAgICAgICAgaWYgKGxvZ2luKSB7XG4gICAgICAgICAgICB0aGlzLm9uTG9naW4oKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vbkxvZ291dCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSkpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgYWJzdHJhY3QgYXNGaWx0ZXIoZmlsdGVyOiBQYXJ0aWFsPEY+KTogRjtcblxuICBhYnN0cmFjdCBmcm9tT2JqZWN0KHNvdXJjZTogYW55KTogRTtcblxuICB3YXRjaEFsbChvZmZzZXQ6IG51bWJlciwgc2l6ZTogbnVtYmVyLCBzb3J0Qnk/OiBzdHJpbmcsIHNvcnREaXJlY3Rpb24/OiBTb3J0RGlyZWN0aW9uLCBmaWx0ZXI/OiBQYXJ0aWFsPEY+LCBvcHRpb25zPzogV08pOiBPYnNlcnZhYmxlPExvYWRSZXN1bHQ8RT4+IHtcbiAgICByZXR1cm4gdGhpcy53YXRjaFBhZ2UoPFBhZ2U+eyBvZmZzZXQsIHNpemUsIHNvcnRCeSwgc29ydERpcmVjdGlvbiB9LCBmaWx0ZXIsIG9wdGlvbnMpO1xuICB9XG5cbiAgd2F0Y2hQYWdlKHBhZ2U6IFBhZ2UsXG4gICAgICAgICAgICBmaWx0ZXI/OiBQYXJ0aWFsPEY+LFxuICAgICAgICAgICAgb3B0aW9ucz86IFdPKTogT2JzZXJ2YWJsZTxMb2FkUmVzdWx0PEU+PiB7XG5cbiAgICBsZXQgbm93ID0gdGhpcy5fZGVidWcgJiYgRGF0ZS5ub3coKTtcbiAgICBpZiAoIWZpbHRlcikge1xuICAgICAgZmlsdGVyID0gdGhpcy5kZWZhdWx0RmlsdGVyKCk7XG4gICAgfVxuICAgIGNvbnNvbGUuZGVidWcoYCR7dGhpcy5fbG9nUHJlZml4fUxvYWRpbmcgdXNlciBldmVudHMuLi5gLCBmaWx0ZXIpO1xuXG4gICAgZmlsdGVyID0gdGhpcy5hc0ZpbHRlcihmaWx0ZXIpO1xuXG4gICAgLy8gRm9yY2UgcmVjaXBpZW50IHRvIGN1cnJlbnQgaXNzdWVyLCBpZiBub3QgYWRtaW4gYW5kIG5vdCBzcGVjaWZpZWRcbiAgICBpZiAoaXNFbXB0eUFycmF5KGZpbHRlcj8ucmVjaXBpZW50cykgfHwgIXRoaXMuYWNjb3VudFNlcnZpY2UuaXNBZG1pbigpKSB7XG4gICAgICBjb25zdCByZWNpcGllbnQgPSB0aGlzLmRlZmF1bHRSZWNpcGllbnQoKTtcbiAgICAgIGlmICghZmlsdGVyPy5yZWNpcGllbnRzPy5pbmNsdWRlcyhyZWNpcGllbnQpKSB7XG4gICAgICAgIGNvbnNvbGUud2FybignW3VzZXItZXZlbnRzLXNlcnZpY2VdIEZvcmNlIHVzZXIgZXZlbnQgZmlsdGVyLnJlY2lwaWVudD0nICsgcmVjaXBpZW50KTtcbiAgICAgICAgZmlsdGVyLnJlY2lwaWVudHMgPSBbcmVjaXBpZW50XTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCB3aXRoQ29udGVudCA9IG9wdGlvbnM/LndpdGhDb250ZW50ID09PSB0cnVlO1xuXG4gICAgcmV0dXJuIHRoaXMubXV0YWJsZVdhdGNoUXVlcnk8TG9hZFJlc3VsdDxFPiwgeyBmaWx0ZXI6IGFueSwgcGFnZTogUGFnZSB9Pih7XG4gICAgICBxdWVyeU5hbWU6IHdpdGhDb250ZW50ID8gJ0xvYWRBbGxXaXRoQ29udGVudCcgOiAnTG9hZEFsbCcsXG4gICAgICBxdWVyeTogd2l0aENvbnRlbnQgPyB0aGlzLnF1ZXJpZXMubG9hZEFsbFdpdGhDb250ZW50IDogdGhpcy5xdWVyaWVzLmxvYWRBbGwsXG4gICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgcGFnZToge1xuICAgICAgICAgIHNvcnRCeTogJ2NyZWF0aW9uRGF0ZScsXG4gICAgICAgICAgLi4ucGFnZSxcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgc29ydERpcmVjdGlvbjogKHBhZ2Uuc29ydERpcmVjdGlvbiB8fCAnZGVzYycpLnRvVXBwZXJDYXNlKClcbiAgICAgICAgfSxcbiAgICAgICAgZmlsdGVyOiBmaWx0ZXIgJiYgZmlsdGVyLmFzUG9kT2JqZWN0KClcbiAgICAgIH0sXG4gICAgICBhcnJheUZpZWxkTmFtZTogJ2RhdGEnLFxuICAgICAgZXJyb3I6IHsgY29kZTogU29jaWFsRXJyb3JDb2Rlcy5MT0FEX1VTRVJfRVZFTlRTX0VSUk9SLCBtZXNzYWdlOiAnU09DSUFMLkVSUk9SLkxPQURfVVNFUl9FVkVOVFNfRVJST1InIH0sXG4gICAgICBmZXRjaFBvbGljeTogb3B0aW9ucz8uZmV0Y2hQb2xpY3kgfHwgJ2NhY2hlLWZpcnN0J1xuICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKHJlcyA9PiB7XG4gICAgICAgICAgbGV0IGRhdGEgPSAocmVzPy5kYXRhIHx8IFtdKS5tYXAodmFsdWUgPT4gdGhpcy5wcm9jZXNzVXNlckV2ZW50KHZhbHVlLCB0aGlzKSk7XG5cbiAgICAgICAgICBpZiAobm93KSB7XG4gICAgICAgICAgICBjb25zb2xlLmRlYnVnKGAke3RoaXMuX2xvZ1ByZWZpeH0ke2RhdGEubGVuZ3RofSB1c2VyIGV2ZW50cyBsb2FkZWQgaW4gJHtEYXRlLm5vdygpIC0gbm93fW1zYCk7XG4gICAgICAgICAgICBub3cgPSBudWxsO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIE11c3QgcmUtb3JkZXIgYmVjYXVzZSBvZiBsaXN0ZW5DaGFuZ2VzIHJlc3VsdCB3aWxsIGFkZCBuZXcgZXZlbnQgYXQgdGhlIGVuZFxuICAgICAgICAgIGRhdGEgPSBFbnRpdHlVdGlscy5zb3J0KGRhdGEsIHBhZ2Uuc29ydEJ5LCBwYWdlLnNvcnREaXJlY3Rpb24pO1xuXG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICB0b3RhbDogdG9OdW1iZXIocmVzPy50b3RhbCwgZGF0YS5sZW5ndGgpXG4gICAgICAgICAgfTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICBhZGQoZW50aXR5OiBFKSB7XG5cbiAgICAvLyBUT0RPIHNldCBhbiBpZCAhISEhISEhISEhISEhISEhISEhISEhISEhXG5cbiAgICBlbnRpdHkgPSB0aGlzLnByb2Nlc3NVc2VyRXZlbnQoZW50aXR5KTtcblxuICAgIGNvbnN0IHdpdGhDb250ZW50ID0gISFlbnRpdHkuY29udGVudDtcblxuICAgIC8vIEFkZCB1c2VyIGV2ZW50IGxvY2FsbHlcbiAgICB0aGlzLmluc2VydEludG9NdXRhYmxlQ2FjaGVkUXVlcmllcyhcbiAgICAgIHRoaXMuZ3JhcGhxbC5jYWNoZSxcbiAgICAgIHtcbiAgICAgICAgcXVlcnk6IHdpdGhDb250ZW50ID8gdGhpcy5xdWVyaWVzLmxvYWRBbGxXaXRoQ29udGVudCA6IHRoaXMucXVlcmllcy5sb2FkQWxsLFxuICAgICAgICBkYXRhOiBlbnRpdHlcbiAgICAgIH1cbiAgICApO1xuXG4gICAgLy8gVXBkYXRlIGNvdW50XG4gICAgdGhpcy5jb3VudCQubmV4dCh0aGlzLmNvdW50JC52YWx1ZSArIDEpO1xuICB9XG5cbiAgYXN5bmMgY291bnQoZmlsdGVyOiBQYXJ0aWFsPEY+LCBvcHRpb25zPzogeyBmZXRjaFBvbGljeT86IEZldGNoUG9saWN5OyB9KTogUHJvbWlzZTxudW1iZXI+IHtcblxuICAgIGlmICghdGhpcy5xdWVyaWVzPy5jb3VudCkge1xuICAgICAgY29uc29sZS53YXJuKGAke3RoaXMuX2xvZ1ByZWZpeH1RdWVyeSAnY291bnQnIG5vdCBwcm92aWRlZCwgc2tpcC5gKTtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgaWYgKCFmaWx0ZXIpIGZpbHRlciA9IHRoaXMuZGVmYXVsdEZpbHRlcigpO1xuICAgIC8vIEFwcGx5IGxhc3QgcmVzZXQgZGF0ZSBhcyBzdGFydCBkYXRlXG4gICAgZmlsdGVyLnN0YXJ0RGF0ZSA9IHRoaXMucmVzZXRDb3VudERhdGU7XG4gICAgZmlsdGVyID0gdGhpcy5hc0ZpbHRlcihmaWx0ZXIpO1xuXG4gICAgaWYgKHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKGAke3RoaXMuX2xvZ1ByZWZpeH1Db3VudGluZyB1c2VyIGV2ZW50cyB3aXRoIGZpbHRlcjpgLCBmaWx0ZXIpO1xuXG4gICAgY29uc3QgcmVzID0gYXdhaXQgdGhpcy5ncmFwaHFsLnF1ZXJ5PHsgdG90YWw6IG51bWJlcjsgfT4oe1xuICAgICAgcXVlcnk6IHRoaXMucXVlcmllcy5jb3VudCxcbiAgICAgIHZhcmlhYmxlczoge1xuICAgICAgICBmaWx0ZXI6IGZpbHRlci5hc1BvZE9iamVjdCgpXG4gICAgICB9LFxuICAgICAgZXJyb3I6IHsgY29kZTogU29jaWFsRXJyb3JDb2Rlcy5DT1VOVF9VU0VSX0VWRU5UX0VSUk9SLCBtZXNzYWdlOiAnU09DSUFMLkVSUk9SLkNPVU5UX1VTRVJfRVZFTlRfRVJST1InIH0sXG4gICAgICBmZXRjaFBvbGljeTogb3B0aW9ucz8uZmV0Y2hQb2xpY3kgfHwgJ25ldHdvcmstb25seSdcbiAgICB9KTtcbiAgICByZXR1cm4gcmVzLnRvdGFsO1xuICB9XG5cbiAgbGlzdGVuQ291bnRDaGFuZ2VzKGZpbHRlcjogUGFydGlhbDxGPiwgb3B0aW9ucz86IFdPICYgeyBpbnRlcnZhbD86IG51bWJlcjsgZmV0Y2hQb2xpY3k/OiBGZXRjaFBvbGljeSB9KTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcblxuICAgIGlmICghdGhpcy5zdWJzY3JpcHRpb25zPy5saXN0ZW5Db3VudENoYW5nZXMpIHtcbiAgICAgIGNvbnNvbGUud2FybihgJHt0aGlzLl9sb2dQcmVmaXh9U3Vic2NyaXB0aW9uIHF1ZXJ5ICdsaXN0ZW5Db3VudENoYW5nZXMnIG5vdCBwcm92aWRlZCwgc2tpcC5gKTtcbiAgICAgIHJldHVybiBvZigpO1xuICAgIH1cblxuICAgIGlmICghZmlsdGVyKSBmaWx0ZXIgPSB0aGlzLmRlZmF1bHRGaWx0ZXIoKTtcbiAgICAvLyBBcHBseSBsYXN0IHJlc2V0IGRhdGUgYXMgc3RhcnQgZGF0ZVxuICAgIGZpbHRlci5zdGFydERhdGUgPSB0aGlzLnJlc2V0Q291bnREYXRlXG4gICAgZmlsdGVyID0gdGhpcy5hc0ZpbHRlcihmaWx0ZXIpO1xuXG4gICAgaWYgKHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKGAke3RoaXMuX2xvZ1ByZWZpeH1bV1NdIExpc3RlbmluZyBjb3VudCBjaGFuZ2VzIGZvciB1c2VyIGV2ZW50cyB3aXRoIGZpbHRlcjpgLCBmaWx0ZXIpO1xuXG4gICAgcmV0dXJuIHRoaXMuZ3JhcGhxbC5zdWJzY3JpYmU8eyB0b3RhbDogbnVtYmVyIH0sIHsgZmlsdGVyOiBhbnksIGludGVydmFsOiBudW1iZXIgfT4oe1xuICAgICAgcXVlcnk6IHRoaXMuc3Vic2NyaXB0aW9ucy5saXN0ZW5Db3VudENoYW5nZXMsXG4gICAgICBmZXRjaFBvbGljeTogb3B0aW9ucz8uZmV0Y2hQb2xpY3ksXG4gICAgICB2YXJpYWJsZXM6IHsgZmlsdGVyOiBmaWx0ZXIuYXNQb2RPYmplY3QoKSwgaW50ZXJ2YWw6IHRvTnVtYmVyKG9wdGlvbnM/LmludGVydmFsLCAxMCkgfSxcbiAgICAgIGVycm9yOiB7XG4gICAgICAgIGNvZGU6IFNvY2lhbEVycm9yQ29kZXMuU1VCU0NSSUJFX1VTRVJfRVZFTlRTX0VSUk9SLFxuICAgICAgICBtZXNzYWdlOiAnU09DSUFMLkVSUk9SLlNVQlNDUklCRV9VU0VSX0VWRU5UU19FUlJPUidcbiAgICAgIH1cbiAgICB9KS5waXBlKFxuICAgICAgbWFwKCh7IHRvdGFsIH0pID0+IHtcbiAgICAgICAgICBpZiAodG90YWwgJiYgdGhpcy5fZGVidWcpIGNvbnNvbGUuZGVidWcoYCR7dGhpcy5fbG9nUHJlZml4fVJlY2VpdmVkIG5ldyB1c2VyIGV2ZW50cyBjb3VudDpgLCB0b3RhbCk7XG4gICAgICAgICAgLy8gdXBkYXRlIGNvdW50XG4gICAgICAgICAgdGhpcy5jb3VudCQubmV4dCh0b3RhbCk7XG4gICAgICAgICAgcmV0dXJuIHRvdGFsO1xuICAgICAgICB9XG4gICAgICApXG4gICAgKTtcblxuICB9XG5cbiAgbGlzdGVuQ2hhbmdlcyhmaWx0ZXI6IFBhcnRpYWw8Rj4sIG9wdGlvbnM/OiBXTyAmIHsgaW50ZXJ2YWw/OiBudW1iZXI7IGZldGNoUG9saWN5PzogRmV0Y2hQb2xpY3k7IH0pOiBPYnNlcnZhYmxlPEVbXT4ge1xuXG4gICAgaWYgKCF0aGlzLnN1YnNjcmlwdGlvbnM/Lmxpc3RlbkNoYW5nZXMpIHtcbiAgICAgIGNvbnNvbGUud2FybihgJHt0aGlzLl9sb2dQcmVmaXh9U3Vic2NyaXB0aW9uIHF1ZXJ5ICdsaXN0ZW5DaGFuZ2VzJyBub3QgcHJvdmlkZWQsIHNraXAuYCk7XG4gICAgICByZXR1cm4gb2YoKTtcbiAgICB9XG5cbiAgICBpZiAoIWZpbHRlcikgZmlsdGVyID0gdGhpcy5kZWZhdWx0RmlsdGVyKCk7XG4gICAgZmlsdGVyID0gdGhpcy5hc0ZpbHRlcihmaWx0ZXIpO1xuXG4gICAgY29uc3Qgd2l0aENvbnRlbnQgPSBvcHRpb25zPy53aXRoQ29udGVudCA9PT0gdHJ1ZTtcblxuICAgIGlmICh0aGlzLl9kZWJ1ZykgY29uc29sZS5kZWJ1ZyhgJHt0aGlzLl9sb2dQcmVmaXh9W1dTXSBMaXN0ZW5pbmcgY2hhbmdlcyBmb3IgdXNlciBldmVudHMgd2l0aCBmaWx0ZXI6YCwgZmlsdGVyKTtcblxuICAgIHJldHVybiB0aGlzLmdyYXBocWwuc3Vic2NyaWJlPHsgZGF0YTogYW55W10gfSwgeyBmaWx0ZXI6IGFueSwgaW50ZXJ2YWw6IG51bWJlciB9Pih7XG4gICAgICBxdWVyeTogdGhpcy5zdWJzY3JpcHRpb25zLmxpc3RlbkNoYW5nZXMsXG4gICAgICBmZXRjaFBvbGljeTogb3B0aW9ucz8uZmV0Y2hQb2xpY3ksXG4gICAgICB2YXJpYWJsZXM6IHsgZmlsdGVyOiBmaWx0ZXIuYXNQb2RPYmplY3QoKSwgaW50ZXJ2YWw6IHRvTnVtYmVyKG9wdGlvbnM/LmludGVydmFsLCAxMCkgfSxcbiAgICAgIGVycm9yOiB7XG4gICAgICAgIGNvZGU6IFNvY2lhbEVycm9yQ29kZXMuU1VCU0NSSUJFX1VTRVJfRVZFTlRTX0VSUk9SLFxuICAgICAgICBtZXNzYWdlOiAnU09DSUFMLkVSUk9SLlNVQlNDUklCRV9VU0VSX0VWRU5UU19FUlJPUidcbiAgICAgIH1cbiAgICB9KS5waXBlKFxuICAgICAgbWFwKCh7IGRhdGEgfSkgPT4ge1xuICAgICAgICAgIGlmIChkYXRhICYmIHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKGAke3RoaXMuX2xvZ1ByZWZpeH1SZWNlaXZlZCBuZXcgdXNlciBldmVudHM6YCwgZGF0YSk7XG4gICAgICAgICAgY29uc3QgdXBkYXRlZERhdGEgPSBkYXRhPy5tYXAodmFsdWUgPT4gdGhpcy5wcm9jZXNzVXNlckV2ZW50KHZhbHVlLCB0aGlzKSk7XG4gICAgICAgICAgLy8gVXBkYXRlIGNhY2hlXG4gICAgICAgICAgdGhpcy5pbnNlcnRJbnRvTXV0YWJsZUNhY2hlZFF1ZXJpZXMoXG4gICAgICAgICAgICB0aGlzLmdyYXBocWwuY2FjaGUsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHF1ZXJ5OiB3aXRoQ29udGVudCA/IHRoaXMucXVlcmllcy5sb2FkQWxsV2l0aENvbnRlbnQgOiB0aGlzLnF1ZXJpZXMubG9hZEFsbCxcbiAgICAgICAgICAgICAgZGF0YTogdXBkYXRlZERhdGFcbiAgICAgICAgICAgIH1cbiAgICAgICAgICApO1xuICAgICAgICAgIHJldHVybiB1cGRhdGVkRGF0YTtcbiAgICAgICAgfVxuICAgICAgKVxuICAgICk7XG5cbiAgfVxuXG4gIGFzeW5jIGRlbGV0ZShlbnRpdHk6IEUpOiBQcm9taXNlPGFueT4ge1xuICAgIGlmICghZW50aXR5KSByZXR1cm47IC8vIHNraXBcbiAgICBhd2FpdCB0aGlzLmRlbGV0ZUFsbChbZW50aXR5XSk7XG4gIH1cblxuICBhc3luYyBkZWxldGVBbGwoZW50aXRpZXM6IEVbXSwgb3B0cz86IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgY29uc3QgaWRzID0gZW50aXRpZXMgJiYgZW50aXRpZXNcbiAgICAgIC5tYXAodCA9PiB0LmlkKTtcbiAgICBpZiAoaXNFbXB0eUFycmF5KGlkcykpIHJldHVybjsgLy8gc3RvcCwgaWYgbm90aGluZyBlbHNlIHRvIGRvXG5cbiAgICBjb25zdCBub3cgPSBEYXRlLm5vdygpO1xuICAgIGlmICh0aGlzLl9kZWJ1ZykgY29uc29sZS5kZWJ1ZyhgJHt0aGlzLl9sb2dQcmVmaXh9RGVsZXRpbmcgZXZlbnRzLi4uIGlkczpgLCBpZHMpO1xuXG4gICAgYXdhaXQgdGhpcy5ncmFwaHFsLm11dGF0ZTxhbnk+KHtcbiAgICAgIG11dGF0aW9uOiB0aGlzLm11dGF0aW9ucy5kZWxldGVCeUlkcyxcbiAgICAgIHZhcmlhYmxlczoge1xuICAgICAgICBpZHNcbiAgICAgIH0sXG4gICAgICB1cGRhdGU6IChwcm94eSkgPT4ge1xuICAgICAgICAvLyBSZW1vdmUgZnJvbSBjYWNoZXNcbiAgICAgICAgdGhpcy5yZW1vdmVGcm9tTXV0YWJsZUNhY2hlZFF1ZXJpZXNCeUlkcyhwcm94eSwge1xuICAgICAgICAgIHF1ZXJ5OiB0aGlzLnF1ZXJpZXMubG9hZEFsbCxcbiAgICAgICAgICBpZHNcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMucmVtb3ZlRnJvbU11dGFibGVDYWNoZWRRdWVyaWVzQnlJZHMocHJveHksIHtcbiAgICAgICAgICBxdWVyeTogdGhpcy5xdWVyaWVzLmxvYWRBbGxXaXRoQ29udGVudCxcbiAgICAgICAgICBpZHNcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKGAke3RoaXMuX2xvZ1ByZWZpeH1FdmVudHMgZGVsZXRlZCBpbiAke0RhdGUubm93KCkgLSBub3d9bXNgKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIHNhdmUoZW50aXR5OiBFLCBvcHRpb25zPzogRW50aXR5U2VydmljZUxvYWRPcHRpb25zKTogUHJvbWlzZTxFPiB7XG4gICAgdGhpcy5maWxsRGVmYXVsdFByb3BlcnRpZXMoZW50aXR5KTtcblxuICAgIC8vIFRyYW5zZm9ybSBpbnRvIGpzb25cbiAgICBjb25zdCB3aXRoQ29udGVudCA9ICEhZW50aXR5LmNvbnRlbnQ7XG4gICAgY29uc3QganNvbiA9IGVudGl0eS5hc09iamVjdCgpO1xuXG4gICAgY29uc3Qgbm93ID0gRGF0ZS5ub3coKTtcbiAgICBpZiAodGhpcy5fZGVidWcpIGNvbnNvbGUuZGVidWcoYCR7dGhpcy5fbG9nUHJlZml4fVNhdmluZyB1c2VyIGV2ZW50Li4uYCwganNvbik7XG5cbiAgICBhd2FpdCB0aGlzLmdyYXBocWwubXV0YXRlPHsgZGF0YTogYW55IH0+KHtcbiAgICAgIG11dGF0aW9uOiB0aGlzLm11dGF0aW9ucy5zYXZlLFxuICAgICAgdmFyaWFibGVzOiB7XG4gICAgICAgIGRhdGE6IGpzb25cbiAgICAgIH0sXG4gICAgICBlcnJvcjogeyBjb2RlOiBTb2NpYWxFcnJvckNvZGVzLlNBVkVfVVNFUl9FVkVOVF9FUlJPUiwgbWVzc2FnZTogJ1NPQ0lBTC5FUlJPUi5TQVZFX1VTRVJfRVZFTlRfRVJST1InIH0sXG4gICAgICB1cGRhdGU6IChwcm94eSwgeyBkYXRhIH0pID0+IHtcbiAgICAgICAgLy8gVXBkYXRlIGVudGl0eVxuICAgICAgICBjb25zdCBzYXZlZEVudGl0eSA9IGRhdGEgJiYgZGF0YS5kYXRhO1xuICAgICAgICBpZiAoc2F2ZWRFbnRpdHkpIHtcbiAgICAgICAgICBpZiAodGhpcy5fZGVidWcpIGNvbnNvbGUuZGVidWcoYCR7dGhpcy5fbG9nUHJlZml4fVVzZXIgZXZlbnQgc2F2ZWQgaW4gJHtEYXRlLm5vdygpIC0gbm93fW1zYCwgZW50aXR5KTtcbiAgICAgICAgICB0aGlzLmNvcHlJZEFuZFVwZGF0ZURhdGUoc2F2ZWRFbnRpdHksIGVudGl0eSk7XG5cbiAgICAgICAgICAvLyBBZGQgdG8gY2FjaGVcbiAgICAgICAgICBpZiAod2l0aENvbnRlbnQpIHtcbiAgICAgICAgICAgIHRoaXMuaW5zZXJ0SW50b011dGFibGVDYWNoZWRRdWVyaWVzKHByb3h5LCB7XG4gICAgICAgICAgICAgIHF1ZXJ5OiB0aGlzLnF1ZXJpZXMubG9hZEFsbFdpdGhDb250ZW50LFxuICAgICAgICAgICAgICBkYXRhOiBzYXZlZEVudGl0eVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuaW5zZXJ0SW50b011dGFibGVDYWNoZWRRdWVyaWVzKHByb3h5LCB7XG4gICAgICAgICAgICAgIHF1ZXJ5OiB0aGlzLnF1ZXJpZXMubG9hZEFsbCxcbiAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIC4uLnNhdmVkRW50aXR5LFxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG51bGxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gZW50aXR5O1xuICB9XG5cbiAgYXN5bmMgc2F2ZUFsbChlbnRpdGllczogRVtdLCBvcHRzPzogYW55KTogUHJvbWlzZTxFW10+IHtcbiAgICByZXR1cm4gUHJvbWlzZS5hbGwoZW50aXRpZXNcbiAgICAgIC5tYXAoZW50aXR5ID0+IHRoaXMuc2F2ZShlbnRpdHksIG9wdHMpKVxuICAgICk7XG4gIH1cblxuICBhc3luYyBtYXJrQXNSZWFkKGVudGl0aWVzOiBFW10pIHtcblxuICAgIGNvbnN0IHVzZXJFdmVudFdpdGhvdXRSZWFkTGlzdGVuZXJzOiBFW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IGVudGl0eSBvZiAoZW50aXRpZXMgfHwgW10pKSB7XG4gICAgICAvLyBHZXQgb25SZWFkIGxpc3RlbmVyc1xuICAgICAgY29uc3Qgb25SZWFkTGlzdGVuZXJzID0gKHRoaXMubGlzdGVuZXJzIHx8IFtdKS5maWx0ZXIobGlzdGVuZXIgPT4gISFsaXN0ZW5lci5vblJlYWQpLmZpbHRlcihsaXN0ZW5lciA9PiBsaXN0ZW5lci5hY2NlcHQoZW50aXR5KSk7XG4gICAgICBpZiAob25SZWFkTGlzdGVuZXJzLmxlbmd0aCkge1xuICAgICAgICBmb3IgKGNvbnN0IGxpc3RlbmVyIG9mIG9uUmVhZExpc3RlbmVycykge1xuICAgICAgICAgIGF3YWl0IGxpc3RlbmVyLm9uUmVhZChlbnRpdHkpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBBZGQgdG8gdGhpcyBsaXN0IGZvciBkZWZhdWx0IG9wZXJhdGlvblxuICAgICAgICB1c2VyRXZlbnRXaXRob3V0UmVhZExpc3RlbmVycy5wdXNoKGVudGl0eSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gVXNlIGRlZmF1bHRcbiAgICBhd2FpdCB0aGlzLmRlZmF1bHRNYXJrQXNSZWFkKHVzZXJFdmVudFdpdGhvdXRSZWFkTGlzdGVuZXJzKTtcbiAgfVxuXG4gIHJlZ2lzdGVyTGlzdGVuZXIobGlzdGVuZXI6IElVc2VyRXZlbnRMaXN0ZW5lcjxFPikge1xuICAgIGlmICghdGhpcy5saXN0ZW5lcnMpIHRoaXMubGlzdGVuZXJzID0gW107XG4gICAgdGhpcy5saXN0ZW5lcnMucHVzaChsaXN0ZW5lcik7XG4gIH1cblxuICByZXNldENvdW50KCkge1xuICAgIHRoaXMuY291bnQkLm5leHQodW5kZWZpbmVkKTtcbiAgICB0aGlzLnJlc2V0Q291bnREYXRlID0gbW9tZW50KCk7XG4gICAgLy8gcmVzdGFydCBsaXN0ZW5pbmcgY291bnQgY2hhbmdlc1xuICAgIHRoaXMuc3RhcnRMaXN0ZW5Db3VudENoYW5nZXMoKTtcbiAgfVxuXG4gIC8qIC0tIHByb3RlY3RlZCBtZXRob2RzIC0tICovXG5cbiAgcHJvdGVjdGVkIGFzeW5jIG9uTG9naW4oKSB7XG4gICAgLy8gR2V0IGZpcnN0IGNvdW50XG4gICAgY29uc3QgY291bnQgPSBhd2FpdCB0aGlzLmNvdW50KHVuZGVmaW5lZCk7XG4gICAgaWYgKHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKGAke3RoaXMuX2xvZ1ByZWZpeH1SZWNlaXZpbmcgdXNlciBldmVudHMgY291bnRgLCBjb3VudCk7XG4gICAgLy8gVXBkYXRlIGNvdW50XG4gICAgdGhpcy5jb3VudCQubmV4dChjb3VudCk7XG5cbiAgICAvLyBUaGVuIGxpc3RlbiBjaGFuZ2VzXG4gICAgdGhpcy5zdGFydExpc3RlbkNvdW50Q2hhbmdlcygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uTG9nb3V0KCkge1xuICAgIHRoaXMuc3RvcExpc3RlbkNvdW50Q2hhbmdlcygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHN0YXJ0TGlzdGVuQ291bnRDaGFuZ2VzKCkge1xuICAgIHRoaXMuc3RvcExpc3RlbkNvdW50Q2hhbmdlcygpO1xuICAgIHRoaXMuX2xpc3RlblN1YnNjcmlwdGlvbiA9IHRoaXMubGlzdGVuQ291bnRDaGFuZ2VzKHVuZGVmaW5lZCkuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc3RvcExpc3RlbkNvdW50Q2hhbmdlcygpIHtcbiAgICB0aGlzLl9saXN0ZW5TdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5fbGlzdGVuU3Vic2NyaXB0aW9uID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJvdGVjdGVkIHByb2Nlc3NVc2VyRXZlbnQoc291cmNlOiBhbnksIHRoYXQ/OiBBYnN0cmFjdFVzZXJFdmVudFNlcnZpY2U8RSwgRj4pOiBFIHtcbiAgICB0aGF0ID0gdGhhdCB8fCB0aGlzO1xuXG4gICAgLy8gQ29udmVydCBqc29uIHNvdXJjZSB0byBJVXNlckV2ZW50XG4gICAgbGV0IHRhcmdldCA9IHRoYXQuZnJvbU9iamVjdChzb3VyY2UpO1xuXG4gICAgLy8gR2V0IGxpc3RlbmVyc1xuICAgIGNvbnN0IGxpc3RlbmVycyA9ICh0aGF0Lmxpc3RlbmVycyB8fCBbXSkuZmlsdGVyKGxpc3RlbmVyID0+IGxpc3RlbmVyLm9uUmVjZWl2ZWQpLmZpbHRlcihsaXN0ZW5lciA9PiBsaXN0ZW5lci5hY2NlcHQodGFyZ2V0KSk7XG4gICAgZm9yIChjb25zdCBsaXN0ZW5lciBvZiBsaXN0ZW5lcnMpIHtcbiAgICAgIGlmICh0YXJnZXQpIHtcbiAgICAgICAgdGFyZ2V0ID0gbGlzdGVuZXIub25SZWNlaXZlZCh0YXJnZXQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHRoYXQuX2RlYnVnKSBjb25zb2xlLmRlYnVnKGAke3RoYXQuX2xvZ1ByZWZpeH1FdmVudCBoYXMgYmVlbiByZWplY3RlZCBieSBhIGxpc3RlbmVyYCwgc291cmNlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRhcmdldDtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBkZWZhdWx0TWFya0FzUmVhZCh1c2VyRXZlbnRzOiBFW10pIHtcbiAgICBpZiAoIXVzZXJFdmVudHMpIHRocm93IG5ldyBFcnJvcihgJHt0aGlzLl9sb2dQcmVmaXh9SW52YWxpZCBldmVudCB0byBzYXZlYCk7XG4gICAgaWYgKCF1c2VyRXZlbnRzLmxlbmd0aCkgcmV0dXJuO1xuXG4gICAgLy8gc2V0IHJlYWQgZGF0ZVxuICAgIHVzZXJFdmVudHMuZm9yRWFjaCh1c2VyRXZlbnQgPT4gdXNlckV2ZW50LnJlYWREYXRlID0gbW9tZW50KCkpO1xuXG4gICAgLy8gc3BsaXQgbG9jYWwvcmVtb3RlIGVudGl0aWVzXG4gICAgY29uc3QgbG9jYWxFbnRpdGllcyA9IHVzZXJFdmVudHMuZmlsdGVyKHVzZXJFdmVudCA9PiAhdXNlckV2ZW50LmlkIHx8IHVzZXJFdmVudC5pZCA8IDApO1xuICAgIGNvbnN0IHJlbW90ZUVudGl0aWVzID0gdXNlckV2ZW50cy5maWx0ZXIodXNlckV2ZW50ID0+IHVzZXJFdmVudC5pZCA+IDApO1xuXG4gICAgLy8gc2F2ZSBsb2NhbCBlbnRpdGllc1xuICAgIGlmIChsb2NhbEVudGl0aWVzLmxlbmd0aCkge1xuICAgICAgaWYgKHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKGAke3RoaXMuX2xvZ1ByZWZpeH1TYXZlIGxvY2FsIHVzZXIgZXZlbnRgKTtcbiAgICAgIC8vIFRPRE8gISEhISEhISEhISEhIVxuICAgIH1cbiAgICAvLyBtYXJrIHJlbW90ZSBlbnRpdGllcyBhcyByZWFkXG4gICAgaWYgKHJlbW90ZUVudGl0aWVzLmxlbmd0aCkge1xuICAgICAgaWYgKCF0aGlzLm11dGF0aW9ucz8ubWFya0FzUmVhZCkge1xuICAgICAgICBjb25zb2xlLndhcm4oYCR7dGhpcy5fbG9nUHJlZml4fU11dGF0aW9uIHF1ZXJ5ICdtYXJrQXNSZWFkJyBub3QgcHJvdmlkZWQsIHNraXAuYCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgLy8gQ29sbGVjdCBpZHNcbiAgICAgIGNvbnN0IGlkcyA9IHJlbW90ZUVudGl0aWVzLm1hcCh2YWx1ZSA9PiB2YWx1ZS5pZCk7XG4gICAgICBjb25zdCBub3cgPSBEYXRlLm5vdygpO1xuICAgICAgaWYgKHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKGAke3RoaXMuX2xvZ1ByZWZpeH1NYXJrIHVzZXIgZXZlbnRzIGFzIHJlYWQuLi5gLCBpZHMpO1xuXG4gICAgICBhd2FpdCB0aGlzLmdyYXBocWwubXV0YXRlPHsgZGF0YTogYW55IH0+KHtcbiAgICAgICAgbXV0YXRpb246IHRoaXMubXV0YXRpb25zLm1hcmtBc1JlYWQsXG4gICAgICAgIHZhcmlhYmxlczoge1xuICAgICAgICAgIGlkc1xuICAgICAgICB9LFxuICAgICAgICBlcnJvcjogeyBjb2RlOiBTb2NpYWxFcnJvckNvZGVzLlNBVkVfVVNFUl9FVkVOVF9FUlJPUiwgbWVzc2FnZTogJ1NPQ0lBTC5FUlJPUi5TQVZFX1VTRVJfRVZFTlRfRVJST1InIH0sXG4gICAgICB9KTtcblxuICAgICAgaWYgKHRoaXMuX2RlYnVnKSBjb25zb2xlLmRlYnVnKGAke3RoaXMuX2xvZ1ByZWZpeH1Vc2VyIGV2ZW50cyBtYXJrZWQgYXMgcmVhZCBpbiAke0RhdGUubm93KCkgLSBub3d9bXNgLCBpZHMpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBkZWZhdWx0RmlsdGVyKCk6IEYge1xuICAgIC8vIEJ5IGRlZmF1bHRcbiAgICByZXR1cm4gPEY+e1xuICAgICAgcmVjaXBpZW50czogW3RoaXMuZGVmYXVsdFJlY2lwaWVudCgpXVxuICAgIH07XG4gIH1cblxuICBwcm90ZWN0ZWQgZGVmYXVsdFJlY2lwaWVudCgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLmFjY291bnRTZXJ2aWNlLnBlcnNvbi5wdWJrZXk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZmlsbERlZmF1bHRQcm9wZXJ0aWVzKGVudGl0eTogRSkge1xuICB9XG5cbiAgcHJvdGVjdGVkIHVucmVhZEV2ZW50cyhldmVudHM6IEVbXSk6IG51bWJlciB7XG4gICAgLy8gZGVmYXVsdCBjYWxjdWxhdGlvbiBvbiB1bnJlYWQgZXZlbnRzIGZyb20gYSBsaXN0XG4gICAgaWYgKGlzRW1wdHlBcnJheShldmVudHMpKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIGNvbnN0IGxhc3RSZWFkRGF0ZSA9IGV2ZW50c1xuICAgICAgLmZpbHRlcihldmVudCA9PiBpc05vdE5pbChldmVudC5yZWFkRGF0ZSkpXG4gICAgICAucmVkdWNlKChsYXN0RGF0ZSwgZXZlbnQpID0+IERhdGVVdGlscy5tYXgobGFzdERhdGUsIGV2ZW50LnJlYWREYXRlKSwgdW5kZWZpbmVkIGFzIE1vbWVudCk7XG4gICAgcmV0dXJuIGV2ZW50c1xuICAgICAgLmZpbHRlcihldmVudCA9PiBldmVudC5jcmVhdGlvbkRhdGUuaXNTYW1lT3JBZnRlcihsYXN0UmVhZERhdGUpKS5sZW5ndGg7XG4gIH1cblxuICBwcm90ZWN0ZWQgY29weUlkQW5kVXBkYXRlRGF0ZShzb3VyY2U6IEUsIHRhcmdldDogRSkge1xuICAgIEVudGl0eVV0aWxzLmNvcHlJZEFuZFVwZGF0ZURhdGUoc291cmNlLCB0YXJnZXQpO1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -9,14 +9,13 @@ export { AccountValidatorService as ɵe } from './src/app/core/services/validato
|
|
|
9
9
|
export { LocalSettingsValidatorService as ɵh } from './src/app/core/services/validator/local-settings.validator';
|
|
10
10
|
export { UserSettingsValidatorService as ɵg } from './src/app/core/services/validator/user-settings.validator';
|
|
11
11
|
export { isFocusableElement as ɵc } from './src/app/shared/focusable';
|
|
12
|
-
export { MatBadgeIconTestPage as
|
|
13
|
-
export { DateTestPage as
|
|
12
|
+
export { MatBadgeIconTestPage as ɵn } from './src/app/shared/material/badge/badge-icon.test';
|
|
13
|
+
export { DateTestPage as ɵl } from './src/app/shared/material/datetime/testing/mat-date.test';
|
|
14
14
|
export { MatNumpadDomService as ɵb } from './src/app/shared/material/numpad/numpad.dom-service';
|
|
15
|
-
export { NumpadTestPage as
|
|
15
|
+
export { NumpadTestPage as ɵm } from './src/app/shared/material/numpad/testing/numpad.test';
|
|
16
16
|
export { CustomReuseStrategy as ɵa } from './src/app/shared/shared-routing.module';
|
|
17
|
-
export { ToastTestingPage as
|
|
18
|
-
export { ToastTestingModule as
|
|
19
|
-
export { JobProgressionList as
|
|
17
|
+
export { ToastTestingPage as ɵp } from './src/app/shared/toast/toast.testing';
|
|
18
|
+
export { ToastTestingModule as ɵo } from './src/app/shared/toast/toast.testing.module';
|
|
19
|
+
export { JobProgressionList as ɵk } from './src/app/social/job/progression/job-progression.list';
|
|
20
20
|
export { UserEventNotificationList as ɵj } from './src/app/social/user-event/notification/user-event-notification.list';
|
|
21
|
-
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VtYXJpcy1uZXQubmd4LWNvbXBvbmVudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zdW1hcmlzLW5ldC5uZ3gtY29tcG9uZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyx3QkFBd0IsSUFBSSxFQUFFLEVBQUMsTUFBTSwyREFBMkQsQ0FBQztBQUN6RyxPQUFPLEVBQUMsWUFBWSxJQUFJLEVBQUUsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQzlFLE9BQU8sRUFBQyxhQUFhLElBQUksRUFBRSxFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDakYsT0FBTyxFQUFDLHVCQUF1QixJQUFJLEVBQUUsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQ2xHLE9BQU8sRUFBQyw2QkFBNkIsSUFBSSxFQUFFLEVBQUMsTUFBTSw0REFBNEQsQ0FBQztBQUMvRyxPQUFPLEVBQUMsNEJBQTRCLElBQUksRUFBRSxFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDN0csT0FBTyxFQUFDLGtCQUFrQixJQUFJLEVBQUUsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxpREFBaUQsQ0FBQztBQUMzRixPQUFPLEVBQUMsWUFBWSxJQUFJLEVBQUUsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQzVGLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxxREFBcUQsQ0FBQztBQUM5RixPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUNqRixPQUFPLEVBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFDLGtCQUFrQixJQUFJLEVBQUUsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxFQUFFLEVBQUMsTUFBTSx1REFBdUQsQ0FBQztBQUMvRixPQUFPLEVBQUMseUJBQXlCLElBQUksRUFBRSxFQUFDLE1BQU0sdUVBQXVFLENBQUM7QUFDdEgsT0FBTyxFQUFDLG9CQUFvQixJQUFJLEVBQUUsRUFBQyxNQUFNLGdFQUFnRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuXG5leHBvcnQge0FwcFVwZGF0ZU9mZmxpbmVNb2RlQ2FyZCBhcyDJtWl9IGZyb20gJy4vc3JjL2FwcC9jb3JlL29mZmxpbmUvdXBkYXRlLW9mZmxpbmUtbW9kZS1jYXJkLmNvbXBvbmVudCc7XG5leHBvcnQge1JlZ2lzdGVyRm9ybSBhcyDJtWR9IGZyb20gJy4vc3JjL2FwcC9jb3JlL3JlZ2lzdGVyL2Zvcm0vZm9ybS1yZWdpc3Rlcic7XG5leHBvcnQge1JlZ2lzdGVyTW9kYWwgYXMgybVmfSBmcm9tICcuL3NyYy9hcHAvY29yZS9yZWdpc3Rlci9tb2RhbC9tb2RhbC1yZWdpc3Rlcic7XG5leHBvcnQge0FjY291bnRWYWxpZGF0b3JTZXJ2aWNlIGFzIMm1ZX0gZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvdmFsaWRhdG9yL2FjY291bnQudmFsaWRhdG9yJztcbmV4cG9ydCB7TG9jYWxTZXR0aW5nc1ZhbGlkYXRvclNlcnZpY2UgYXMgybVofSBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy92YWxpZGF0b3IvbG9jYWwtc2V0dGluZ3MudmFsaWRhdG9yJztcbmV4cG9ydCB7VXNlclNldHRpbmdzVmFsaWRhdG9yU2VydmljZSBhcyDJtWd9IGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL3ZhbGlkYXRvci91c2VyLXNldHRpbmdzLnZhbGlkYXRvcic7XG5leHBvcnQge2lzRm9jdXNhYmxlRWxlbWVudCBhcyDJtWN9IGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvZm9jdXNhYmxlJztcbmV4cG9ydCB7TWF0QmFkZ2VJY29uVGVzdFBhZ2UgYXMgybVvfSBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL2JhZGdlL2JhZGdlLWljb24udGVzdCc7XG5leHBvcnQge0RhdGVUZXN0UGFnZSBhcyDJtW19IGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvZGF0ZXRpbWUvdGVzdGluZy9tYXQtZGF0ZS50ZXN0JztcbmV4cG9ydCB7TWF0TnVtcGFkRG9tU2VydmljZSBhcyDJtWJ9IGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvbnVtcGFkL251bXBhZC5kb20tc2VydmljZSc7XG5leHBvcnQge051bXBhZFRlc3RQYWdlIGFzIMm1bn0gZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9udW1wYWQvdGVzdGluZy9udW1wYWQudGVzdCc7XG5leHBvcnQge0N1c3RvbVJldXNlU3RyYXRlZ3kgYXMgybVhfSBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3NoYXJlZC1yb3V0aW5nLm1vZHVsZSc7XG5leHBvcnQge1RvYXN0VGVzdGluZ1BhZ2UgYXMgybVxfSBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3RvYXN0L3RvYXN0LnRlc3RpbmcnO1xuZXhwb3J0IHtUb2FzdFRlc3RpbmdNb2R1bGUgYXMgybVwfSBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL3RvYXN0L3RvYXN0LnRlc3RpbmcubW9kdWxlJztcbmV4cG9ydCB7Sm9iUHJvZ3Jlc3Npb25MaXN0IGFzIMm1bH0gZnJvbSAnLi9zcmMvYXBwL3NvY2lhbC9qb2IvcHJvZ3Jlc3Npb24vam9iLXByb2dyZXNzaW9uLmxpc3QnO1xuZXhwb3J0IHtVc2VyRXZlbnROb3RpZmljYXRpb25MaXN0IGFzIMm1an0gZnJvbSAnLi9zcmMvYXBwL3NvY2lhbC91c2VyLWV2ZW50L25vdGlmaWNhdGlvbi91c2VyLWV2ZW50LW5vdGlmaWNhdGlvbi5saXN0JztcbmV4cG9ydCB7VXNlckV2ZW50VGVzdFNlcnZpY2UgYXMgybVrfSBmcm9tICcuL3NyYy9hcHAvc29jaWFsL3VzZXItZXZlbnQvdGVzdGluZy91c2VyLWV2ZW50LnRlc3Rpbmcuc2VydmljZSc7Il19
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VtYXJpcy1uZXQubmd4LWNvbXBvbmVudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zdW1hcmlzLW5ldC5uZ3gtY29tcG9uZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyx3QkFBd0IsSUFBSSxFQUFFLEVBQUMsTUFBTSwyREFBMkQsQ0FBQztBQUN6RyxPQUFPLEVBQUMsWUFBWSxJQUFJLEVBQUUsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQzlFLE9BQU8sRUFBQyxhQUFhLElBQUksRUFBRSxFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDakYsT0FBTyxFQUFDLHVCQUF1QixJQUFJLEVBQUUsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQ2xHLE9BQU8sRUFBQyw2QkFBNkIsSUFBSSxFQUFFLEVBQUMsTUFBTSw0REFBNEQsQ0FBQztBQUMvRyxPQUFPLEVBQUMsNEJBQTRCLElBQUksRUFBRSxFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDN0csT0FBTyxFQUFDLGtCQUFrQixJQUFJLEVBQUUsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxpREFBaUQsQ0FBQztBQUMzRixPQUFPLEVBQUMsWUFBWSxJQUFJLEVBQUUsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQzVGLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxxREFBcUQsQ0FBQztBQUM5RixPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUNqRixPQUFPLEVBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFDLGtCQUFrQixJQUFJLEVBQUUsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxFQUFFLEVBQUMsTUFBTSx1REFBdUQsQ0FBQztBQUMvRixPQUFPLEVBQUMseUJBQXlCLElBQUksRUFBRSxFQUFDLE1BQU0sdUVBQXVFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG5cbmV4cG9ydCB7QXBwVXBkYXRlT2ZmbGluZU1vZGVDYXJkIGFzIMm1aX0gZnJvbSAnLi9zcmMvYXBwL2NvcmUvb2ZmbGluZS91cGRhdGUtb2ZmbGluZS1tb2RlLWNhcmQuY29tcG9uZW50JztcbmV4cG9ydCB7UmVnaXN0ZXJGb3JtIGFzIMm1ZH0gZnJvbSAnLi9zcmMvYXBwL2NvcmUvcmVnaXN0ZXIvZm9ybS9mb3JtLXJlZ2lzdGVyJztcbmV4cG9ydCB7UmVnaXN0ZXJNb2RhbCBhcyDJtWZ9IGZyb20gJy4vc3JjL2FwcC9jb3JlL3JlZ2lzdGVyL21vZGFsL21vZGFsLXJlZ2lzdGVyJztcbmV4cG9ydCB7QWNjb3VudFZhbGlkYXRvclNlcnZpY2UgYXMgybVlfSBmcm9tICcuL3NyYy9hcHAvY29yZS9zZXJ2aWNlcy92YWxpZGF0b3IvYWNjb3VudC52YWxpZGF0b3InO1xuZXhwb3J0IHtMb2NhbFNldHRpbmdzVmFsaWRhdG9yU2VydmljZSBhcyDJtWh9IGZyb20gJy4vc3JjL2FwcC9jb3JlL3NlcnZpY2VzL3ZhbGlkYXRvci9sb2NhbC1zZXR0aW5ncy52YWxpZGF0b3InO1xuZXhwb3J0IHtVc2VyU2V0dGluZ3NWYWxpZGF0b3JTZXJ2aWNlIGFzIMm1Z30gZnJvbSAnLi9zcmMvYXBwL2NvcmUvc2VydmljZXMvdmFsaWRhdG9yL3VzZXItc2V0dGluZ3MudmFsaWRhdG9yJztcbmV4cG9ydCB7aXNGb2N1c2FibGVFbGVtZW50IGFzIMm1Y30gZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9mb2N1c2FibGUnO1xuZXhwb3J0IHtNYXRCYWRnZUljb25UZXN0UGFnZSBhcyDJtW59IGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvbWF0ZXJpYWwvYmFkZ2UvYmFkZ2UtaWNvbi50ZXN0JztcbmV4cG9ydCB7RGF0ZVRlc3RQYWdlIGFzIMm1bH0gZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9kYXRldGltZS90ZXN0aW5nL21hdC1kYXRlLnRlc3QnO1xuZXhwb3J0IHtNYXROdW1wYWREb21TZXJ2aWNlIGFzIMm1Yn0gZnJvbSAnLi9zcmMvYXBwL3NoYXJlZC9tYXRlcmlhbC9udW1wYWQvbnVtcGFkLmRvbS1zZXJ2aWNlJztcbmV4cG9ydCB7TnVtcGFkVGVzdFBhZ2UgYXMgybVtfSBmcm9tICcuL3NyYy9hcHAvc2hhcmVkL21hdGVyaWFsL251bXBhZC90ZXN0aW5nL251bXBhZC50ZXN0JztcbmV4cG9ydCB7Q3VzdG9tUmV1c2VTdHJhdGVneSBhcyDJtWF9IGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvc2hhcmVkLXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCB7VG9hc3RUZXN0aW5nUGFnZSBhcyDJtXB9IGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvdG9hc3QvdG9hc3QudGVzdGluZyc7XG5leHBvcnQge1RvYXN0VGVzdGluZ01vZHVsZSBhcyDJtW99IGZyb20gJy4vc3JjL2FwcC9zaGFyZWQvdG9hc3QvdG9hc3QudGVzdGluZy5tb2R1bGUnO1xuZXhwb3J0IHtKb2JQcm9ncmVzc2lvbkxpc3QgYXMgybVrfSBmcm9tICcuL3NyYy9hcHAvc29jaWFsL2pvYi9wcm9ncmVzc2lvbi9qb2ItcHJvZ3Jlc3Npb24ubGlzdCc7XG5leHBvcnQge1VzZXJFdmVudE5vdGlmaWNhdGlvbkxpc3QgYXMgybVqfSBmcm9tICcuL3NyYy9hcHAvc29jaWFsL3VzZXItZXZlbnQvbm90aWZpY2F0aW9uL3VzZXItZXZlbnQtbm90aWZpY2F0aW9uLmxpc3QnOyJdfQ==
|