@kando-env/kando-ui 1.2.238-alpha.6 → 1.2.238
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/lib/Widgets/Map/Map.js +17 -86
- package/lib/Widgets/Map/Map.scss +0 -65
- package/lib/Widgets/Map/MapUtils.js +15 -27
- package/lib/Widgets/Map/areas/AreaPolygons.js +2 -2
- package/lib/Widgets/Map/edges/Edges.js +2 -17
- package/lib/Widgets/Map/events/EventUtils.js +9 -13
- package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +2 -9
- package/lib/Widgets/Map/events/PointOfEvent.js +9 -12
- package/lib/Widgets/Map/points/PointMarker.js +20 -22
- package/lib/Widgets/Map/points/PointMarkers.js +22 -90
- package/lib/Widgets/Map/points/PointUtils.js +32 -93
- package/lib/assets/icons/pin/pin-matash-white.svg +42 -8
- package/lib/assets/map/pin-matash-white.svg +28 -8
- package/lib/assets/map/pin-plant-white.svg +28 -6
- package/lib/assets/map/pin-water.svg +17 -7
- package/lib/assets/point_icons/WWTP-icon.svg +21 -8
- package/lib/assets/point_icons/factory-icon.svg +21 -6
- package/lib/assets/point_icons/pump-station-icon.svg +16 -6
- package/lib/components/CustomInputs/Select/Select.js +4 -24
- package/lib/components/Header/Slideshow/Slideshow.js +5 -5
- package/lib/hooks/useInitializeHeaders.js +3 -2
- package/lib/hooks/useMap.js +18 -4
- package/lib/i18n/en.json +7 -35
- package/lib/i18n/en_uk.json +0 -22
- package/lib/i18n/fr.json +0 -22
- package/lib/i18n/he.json +0 -29
- package/lib/i18n/it.json +0 -22
- package/lib/macros/getVersion.js +2 -2
- package/lib/pages/CovidPage/components/TrendPopupContent/TrendPopupContent.js +2 -4
- package/lib/pages/EventsPage/events/EventsStyle.scss +0 -1
- package/lib/pages/EventsPage/events/events_list/EventsList.js +2 -2
- package/lib/pages/ProfilePage/Container.js +2 -2
- package/lib/pages/ProfilePage/ProfilePage.js +50 -164
- package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +1 -4
- package/lib/pages/SamplingsPage/SamplingProperties/ImagePreviewModal.js +2 -2
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +4 -4
- package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js +2 -2
- package/lib/pages/WbeDashboard/WbeDashboardPage.js +25 -28
- package/lib/pages/WbeDashboard/WbeSummaryBar.js +3 -3
- package/lib/store/events/actions.js +3 -3
- package/lib/ui-kit/KandoTable/KandoTable.js +5 -5
- package/lib/utilities/edgesMath.js +3 -6
- package/lib/utilities/map/icons.js +7 -23
- package/package.json +3 -5
- package/lib/Widgets/Map/points/PointIcon.js +0 -60
- package/lib/Widgets/Map/points/PointIcon.scss +0 -244
- package/lib/assets/icons/plus_v.svg +0 -13
- package/lib/assets/icons/water_reuse.svg +0 -27
- package/lib/assets/map/pin-matash-clicked.svg +0 -12
- package/lib/assets/map/pin-plant-clicked.svg +0 -10
- package/lib/assets/map/pin-suction-clicked.svg +0 -10
- package/lib/assets/map/pin-water-clicked.svg +0 -11
|
@@ -298,7 +298,7 @@ var SamplingProperties = function SamplingProperties() {
|
|
|
298
298
|
break;
|
|
299
299
|
|
|
300
300
|
case 16:
|
|
301
|
-
if (
|
|
301
|
+
if (pageType.current === 'revert_cancel') {
|
|
302
302
|
formData.append("sampling[collection_time]", collectionTime);
|
|
303
303
|
} // update
|
|
304
304
|
|
|
@@ -337,7 +337,7 @@ var SamplingProperties = function SamplingProperties() {
|
|
|
337
337
|
var detectPageType = function detectPageType(isSamplingCancelled, op) {
|
|
338
338
|
var editPageValue = isSamplingCancelled ? 'cancel' : 'collect';
|
|
339
339
|
|
|
340
|
-
if (op ===
|
|
340
|
+
if (op === 'edit') {
|
|
341
341
|
return editPageValue;
|
|
342
342
|
} else if (op === _samplingsPageUtils.COLLECT_SAMPLING_OP) {
|
|
343
343
|
return 'collect';
|
|
@@ -355,7 +355,7 @@ var SamplingProperties = function SamplingProperties() {
|
|
|
355
355
|
var serverTime = serverCollectionTime ? new Date(serverCollectionTime) : currentTime;
|
|
356
356
|
var editPageValue = serverCollectionTime ? serverTime : currentTime;
|
|
357
357
|
|
|
358
|
-
if (op ===
|
|
358
|
+
if (op === 'edit') {
|
|
359
359
|
return editPageValue;
|
|
360
360
|
} else if (op === _samplingsPageUtils.COLLECT_SAMPLING_OP) {
|
|
361
361
|
return currentTime;
|
|
@@ -423,4 +423,4 @@ var SamplingProperties = function SamplingProperties() {
|
|
|
423
423
|
};
|
|
424
424
|
|
|
425
425
|
exports.SamplingProperties = SamplingProperties;
|
|
426
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL1NhbXBsaW5nUHJvcGVydGllcy9TYW1wbGluZ1Byb3BlcnRpZXMudHN4Il0sIm5hbWVzIjpbImlzUHJvcGVydGllc1BhZ2UiLCJwYWdlVHlwZSIsIlNhbXBsaW5nUHJvcGVydGllcyIsIkRhdGUiLCJjb2xsZWN0aW9uVGltZSIsInNldENvbGxlY3Rpb25UaW1lIiwicGhvdG9zIiwic2V0UGhvdG9zIiwicGhvdG9zVG9EZWxldGUiLCJzZXRQaG90b3NUb0RlbGV0ZSIsImkxOG4iLCJ0Iiwic2F2aW5nTXNnIiwic2V0U2F2aW5nTXNnIiwic2FtcGxpbmdVcGRhdGVkIiwic2V0U2FtcGxpbmdVcGRhdGVkIiwidW5kZWZpbmVkIiwic2FtcGxpbmdQbGFuIiwic2V0U2FtcGxpbmdQbGFuIiwiaGlzdG9yeSIsImxvY2F0aW9uIiwicXVlcnkiLCJ1c2VySW5mbyIsInN0YXRlIiwicGVybWlzc2lvbnMiLCJ1c2VyX2luZm8iLCJkYXRlRm9ybWF0IiwiZGF0ZV90aW1lX2Zvcm1hdCIsInNhbXBsaW5nUHJvcGVydGllcyIsInNldFNhbXBsaW5nUHJvcGVydGllcyIsInNhbXBsZUlkIiwid2F0ZXJBdXRob3JpdHlJZCIsImdsb2JhbF9kYXRhIiwibG9jYWxlIiwibmF2X2NvbnRleHRfZGF0YSIsIm5hdkNvbnRleHQiLCJpbml0Rm9ybWlrVmFsdWVzIiwiaXNDYW5jZWxlZCIsInRpbWVab25lIiwicGFnZUNvbGxlY3Rpb25UaW1lIiwiY3VycmVudCIsInNhbXBsaW5nIiwiY29sbGVjdGlvbl90aW1lIiwic2FtIiwiZm9ybWlrVmFsdWVzIiwibGFiX2lkIiwicHVtcF9zYW1wbGluZ192b2x1bWUiLCJwdW1wX2JhdHRlcnlfbGV2ZWwiLCJkZXNjcmlwdGlvbiIsImthbmRvX3JlcCIsInNhbXBsaW5nX3BsYW5faWQiLCJjYW5jZWxsYXRpb25fcmVhc29uIiwiaXNfY2FuY2VsZWQiLCJpc0NhbmNlbGxlZExheW91dCIsImNhbmNlbGVkX2J5X2lkIiwibmFtZSIsImZpcnN0X25hbWUiLCJsYXN0X25hbWUiLCJpZCIsInVzZXJfaWQiLCJmb3JtaWsiLCJzZXRWYWx1ZXMiLCJwYWdlVHlwZTJpc0NhbmNlbGxlZCIsImNhbmNlbCIsImNvbGxlY3QiLCJyZXZlcnRfY2FuY2VsIiwiZmV0Y2hTYW1wbGluZ1Byb3BlcnRpZXMiLCJzYW1wbGluZ0lkIiwib3AiLCJheGlvcyIsImdldCIsImZldGNoU2FtcGxpbmciLCJ1cmwiLCJyZXNwb25zZSIsImRhdGEiLCJzYW1wbGluZ19wcm9wZXJ0aWVzIiwiZGV0ZWN0UGFnZVR5cGUiLCJkZXRlcm1pbmVDb2xsZWN0aW9uVGltZSIsInNhbXBsaW5nX3BsYW4iLCJ0aW1lX3pvbmUiLCJnZXRVcmxRdWVyeU9wIiwidmFsaWRhdGlvblNjaGVtYSIsInByb3BlcnRpZXNWYWxpZGF0aW9uU2NoZW1hIiwiY2FuY2VsbGF0aW9uVmFsaWRhdGlvblNjaGVtYSIsImVuYWJsZVJlaW5pdGlhbGl6ZSIsImluaXRpYWxWYWx1ZXMiLCJzYW1wbGluZ1Byb3BlcnR5IiwidmFsaWRhdGVPbkNoYW5nZSIsInZhbGlkYXRlT25CbHVyIiwib25TdWJtaXQiLCJ2YWx1ZXMiLCJoYW5kbGVTdWJtaXQiLCJoYW5kbGVDbG9zZSIsImtleSIsImdvQmFjayIsInB1c2giLCJzYW1wbGluZ3NQYWdlIiwic2FtcGxpbmdzTGlzdFJvdXRlIiwicGljdHVyZXNfYXR0cmlidXRlcyIsInNhdmVGb3JtRGF0YSIsImZvcm1EYXRhQnVpbGRlciIsInVwZGF0ZU9yQ3JlYXRlIiwic2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0Iiwic2V0VGltZW91dCIsImZvcm1EYXRhIiwiRm9ybURhdGEiLCJ2YWx1ZSIsImFwcGVuZCIsInVuaXF1ZVBob3Rvc1RvRGVsZXRlIiwiU2V0IiwibGVuZ3RoIiwiZm9yRWFjaCIsImluZGV4IiwiSlNPTiIsInN0cmluZ2lmeSIsInVwZGF0ZU9yQ3JlYXRlU3VjY2VzcyIsIm1zZyIsInNhbXBsaW5nSUQiLCJwb3N0IiwiY3JlYXRlU2FtcGxpbmciLCJpbmNsdWRlcyIsInB1dCIsInVwZGF0ZVNhbXBsaW5nIiwiaXNTYW1wbGluZ0NhbmNlbGxlZCIsImVkaXRQYWdlVmFsdWUiLCJFRElUX1BST1BFUlRJRVNfT1AiLCJDT0xMRUNUX1NBTVBMSU5HX09QIiwiQ0FOQ0VMX1NBTVBMSU5HX09QIiwiUkVWRVJUX0NBTkNFTExBVElPTiIsInNlcnZlckNvbGxlY3Rpb25UaW1lIiwiY3VycmVudFRpbWUiLCJzZXJ2ZXJUaW1lIiwiaXNfcHVtcF9pbl9wcm9ncmVzcyIsImlzTW9iaWxlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBR0E7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBT0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBU0E7Ozs7OztBQXBDQTtBQUNBO0FBQ0E7QUFvQ0EsSUFBTUEsZ0JBQWdCLEdBQUcsU0FBbkJBLGdCQUFtQixDQUFDQyxRQUFEO0FBQUEsU0FBY0EsUUFBUSxLQUFLLE1BQTNCO0FBQUEsQ0FBekI7O0FBRU8sSUFBTUMsa0JBQXNCLEdBQUcsU0FBekJBLGtCQUF5QixHQUFNO0FBQzFDLGtCQUE0QyxxQkFDMUMsSUFBSUMsSUFBSixFQUQwQyxDQUE1QztBQUFBO0FBQUEsTUFBT0MsY0FBUDtBQUFBLE1BQXVCQyxpQkFBdkI7O0FBR0EsbUJBQTRCLHFCQUE4QixFQUE5QixDQUE1QjtBQUFBO0FBQUEsTUFBT0MsTUFBUDtBQUFBLE1BQWVDLFNBQWY7O0FBQ0EsbUJBQTRDLHFCQUFtQixFQUFuQixDQUE1QztBQUFBO0FBQUEsTUFBT0MsY0FBUDtBQUFBLE1BQXVCQyxpQkFBdkI7O0FBQ0EsbUJBQWtDLHFCQUFpQkMsY0FBS0MsQ0FBTCxDQUFPLGNBQVAsQ0FBakIsQ0FBbEM7QUFBQTtBQUFBLE1BQU9DLFNBQVA7QUFBQSxNQUFrQkMsWUFBbEI7O0FBQ0EsbUJBQThDLHFCQUFT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dEI7QUFFRSxJQUFBLFFBQVEsRUFBRVgsWUFGWjtBQUdFLElBQUEsTUFBTSxFQUFFMkMsTUFIVjtBQUlFLElBQUEsUUFBUSxFQUFFM0QsUUFBUSxDQUFDdUMsT0FKckI7QUFLRSxJQUFBLGNBQWMsRUFBRXBDLGNBTGxCO0FBTUUsSUFBQSxpQkFBaUIsRUFBRUMsaUJBTnJCO0FBT0UsSUFBQSxrQkFBa0IsRUFBRVUsa0JBUHRCO0FBUUUsSUFBQSxvQkFBb0IsRUFBRWYsZ0JBQWdCLENBQUNDLFFBQUQsQ0FSeEM7QUFTRSxJQUFBLFVBQVUsRUFBRXlCO0FBVGQsSUFoQkosRUE2QkdFLGtCQUFrQixJQUFJM0IsUUFBdEIsaUJBQ0MsNkJBQUMsOENBQUQ7QUFDRSxJQUFBLGtCQUFrQixFQUFFMkIsa0JBRHRCO0FBRUUsSUFBQSxRQUFRLEVBQUVYLFlBRlo7QUFHRSxJQUFBLFFBQVEsRUFBRWhCLFFBQVEsQ0FBQ3VDLE9BSHJCO0FBSUUsSUFBQSxrQkFBa0IsRUFBRXpCLGtCQUp0QjtBQUtFLElBQUEsU0FBUyxFQUFFSCxTQUxiO0FBTUUsSUFBQSxXQUFXLEVBQUVnRixXQU5mO0FBT0UsSUFBQSxpQkFBaUIsRUFBRW5GLGlCQVByQjtBQVFFLElBQUEsU0FBUyxFQUFFRixTQVJiO0FBU0UsSUFBQSxNQUFNLEVBQUVELE1BVFY7QUFVRSxJQUFBLE1BQU0sRUFBRXNEO0FBVlYsSUE5QkosQ0FERixDQURGLENBREY7QUFrREQsQ0FuVU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHJvcGVydGllcyBhbmQgQ2FuY2VsbGluZyBmb3Jtcy5cbiAqKi9cbmltcG9ydCBSZWFjdCwgeyBGQywgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgeyBGb3JtaWtDb25maWcgfSBmcm9tICdmb3JtaWsvZGlzdC90eXBlcyc7XG5pbXBvcnQgeyBpc01vYmlsZSB9IGZyb20gJ3JlYWN0LWRldmljZS1kZXRlY3QnO1xuaW1wb3J0IHsgdXNlRm9ybWlrIH0gZnJvbSAnZm9ybWlrJztcbmltcG9ydCB7IHVzZUhpc3RvcnksIHVzZVBhcmFtcywgdXNlTG9jYXRpb24gfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcbmltcG9ydCB7IHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuXG5pbXBvcnQgTGF5b3V0IGZyb20gJ3NyYy91aS1raXQvTGF5b3V0L0xheW91dCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHVzZVF1ZXJ5VVJMIGZyb20gJ3NyYy9ob29rcy91c2VRdWVyeVVSTCc7XG5pbXBvcnQgeyBTcGlubmVyIH0gZnJvbSAnc3JjL2NvbXBvbmVudHMvU3Bpbm5lci9TcGlubmVyJztcbmltcG9ydCB7IHVybHMgfSBmcm9tICdzcmMvdXRpbGl0aWVzL3VybHMnO1xuaW1wb3J0IHsgU2FtcGxpbmdQcm9wZXJ0aWVzU3R5bGUgfSBmcm9tICcuL3N0eWxlcyc7XG5pbXBvcnQge1xuICBDQU5DRUxfU0FNUExJTkdfT1AsXG4gIENPTExFQ1RfU0FNUExJTkdfT1AsXG4gIEVESVRfUFJPUEVSVElFU19PUCxcbiAgUkVWRVJUX0NBTkNFTExBVElPTixcbiAgU2FtcGxpbmdGZXRjaERhdGEsXG59IGZyb20gJy4uL3NhbXBsaW5nc1BhZ2VVdGlscyc7XG5pbXBvcnQgeyBTYW1wbGluZ1Byb3BlcnRpZXNGb3JtIH0gZnJvbSAnLi9TYW1wbGluZ1Byb3BlcnRpZXNGb3JtJztcbmltcG9ydCB7IFNhbXBsaW5nUHJvcGVydGllc0hlYWQgfSBmcm9tICcuL1NhbXBsaW5nUHJvcGVydGllc0hlYWQnO1xuaW1wb3J0IHsgU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZE1vYmlsZSB9IGZyb20gJy4vU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZE1vYmlsZSc7XG5pbXBvcnQge1xuICBGb3JtVHlwZSxcbiAgVFNhbXBsaW5nUHJvcGVydGllcyxcbiAgY2FuY2VsbGF0aW9uVmFsaWRhdGlvblNjaGVtYSxcbiAgaXNDb2xsZWN0TGF5b3V0LFxuICBwcm9wZXJ0aWVzVmFsaWRhdGlvblNjaGVtYSxcbiAgc2FtcGxpbmdQcm9wZXJ0eSxcbiAgY29sbGVjdGlvblRpbWVGb3JtYXQsXG59IGZyb20gJy4vc2FtcGxpbmdQcm9wZXJ0aWVzVXRpbHMnO1xuaW1wb3J0IFNhbXBsZXJJblByb2Nlc3MgZnJvbSAnLi9TYW1wbGVySW5Qcm9jZXNzJztcblxuY29uc3QgaXNQcm9wZXJ0aWVzUGFnZSA9IChwYWdlVHlwZSkgPT4gcGFnZVR5cGUgPT09ICdlZGl0JztcblxuZXhwb3J0IGNvbnN0IFNhbXBsaW5nUHJvcGVydGllczogRkMgPSAoKSA9PiB7XG4gIGNvbnN0IFtjb2xsZWN0aW9uVGltZSwgc2V0Q29sbGVjdGlvblRpbWVdID0gdXNlU3RhdGU8c3RyaW5nIHwgRGF0ZSB8IG51bGw+KFxuICAgIG5ldyBEYXRlKCksXG4gICk7XG4gIGNvbnN0IFtwaG90b3MsIHNldFBob3Rvc10gPSB1c2VTdGF0ZTxzdHJpbmcgfCBCbG9iIHwgYW55PihbXSk7XG4gIGNvbnN0IFtwaG90b3NUb0RlbGV0ZSwgc2V0UGhvdG9zVG9EZWxldGVdID0gdXNlU3RhdGU8bnVtYmVyW10+KFtdKTtcbiAgY29uc3QgW3NhdmluZ01zZywgc2V0U2F2aW5nTXNnXSA9IHVzZVN0YXRlPHN0cmluZz4oaTE4bi50KCdidXR0b25zLnNhdmUnKSk7XG4gIGNvbnN0IFtzYW1wbGluZ1VwZGF0ZWQsIHNldFNhbXBsaW5nVXBkYXRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtzYW1wbGluZ1BsYW4sIHNldFNhbXBsaW5nUGxhbl0gPSB1c2VTdGF0ZTxcbiAgICBTYW1wbGluZ0ZldGNoRGF0YSB8IHVuZGVmaW5lZFxuICA+KHVuZGVmaW5lZCk7XG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG4gIGNvbnN0IGxvY2F0aW9uID0gdXNlTG9jYXRpb24oKTtcbiAgY29uc3QgcXVlcnkgPSB1c2VRdWVyeVVSTCgpO1xuICBjb25zdCB1c2VySW5mbyA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUucGVybWlzc2lvbnMudXNlcl9pbmZvKTtcbiAgY29uc3QgZGF0ZUZvcm1hdCA9XG4gICAgdXNlckluZm8uZGF0ZV90aW1lX2Zvcm1hdCA9PT0gJ3VzJ1xuICAgICAgPyAnTU1NIGQsIHl5eXkgaGg6bW0gYWEnXG4gICAgICA6ICdkL01NL3l5eXkgSEg6bW0nO1xuICBjb25zdCBwYWdlVHlwZSA9IHVzZVJlZjxzdHJpbmc+KCcnKTtcbiAgY29uc3QgW3NhbXBsaW5nUHJvcGVydGllcywgc2V0U2FtcGxpbmdQcm9wZXJ0aWVzXSA9XG4gICAgdXNlU3RhdGU8VFNhbXBsaW5nUHJvcGVydGllcz4oKTtcbiAgY29uc3QgeyBzYW1wbGVJZCB9ID0gdXNlUGFyYW1zKCk7XG4gIGNvbnN0IHdhdGVyQXV0aG9yaXR5SWQgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGUpID0+IHN0YXRlLmdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsXG4gICk7XG4gIGNvbnN0IGxvY2FsZSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZSkgPT4gc3RhdGUubmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZSxcbiAgKTtcblxuICBjb25zdCBpbml0Rm9ybWlrVmFsdWVzID0gKFxuICAgIHNhbXBsaW5nUHJvcGVydGllcyxcbiAgICBpc0NhbmNlbGVkLFxuICAgIHRpbWVab25lLFxuICAgIHVzZXJJbmZvLFxuICApID0+IHtcbiAgICBjb25zdCBwYWdlQ29sbGVjdGlvblRpbWUgPSBpc0NvbGxlY3RMYXlvdXQocGFnZVR5cGUuY3VycmVudClcbiAgICAgID8gY29sbGVjdGlvblRpbWVcbiAgICAgIDogY29sbGVjdGlvblRpbWVGb3JtYXQoXG4gICAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmNvbGxlY3Rpb25fdGltZSxcbiAgICAgICAgICB0aW1lWm9uZSxcbiAgICAgICAgKTtcbiAgICBjb25zdCBzYW0gPSBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmc7XG4gICAgbGV0IGZvcm1pa1ZhbHVlczogRm9ybVR5cGUgPSB7XG4gICAgICBsYWJfaWQ6IHNhbS5sYWJfaWQsXG4gICAgICBjb2xsZWN0aW9uX3RpbWU6IHBhZ2VDb2xsZWN0aW9uVGltZSxcbiAgICAgIHB1bXBfc2FtcGxpbmdfdm9sdW1lOiBzYW0ucHVtcF9zYW1wbGluZ192b2x1bWUsXG4gICAgICBwdW1wX2JhdHRlcnlfbGV2ZWw6IHNhbS5wdW1wX2JhdHRlcnlfbGV2ZWwsXG4gICAgICBkZXNjcmlwdGlvbjogc2FtLmRlc2NyaXB0aW9uLFxuICAgICAga2FuZG9fcmVwOiBzYW0ua2FuZG9fcmVwLFxuICAgICAgc2FtcGxpbmdfcGxhbl9pZDogc2FtLnNhbXBsaW5nX3BsYW5faWQsXG4gICAgICBjYW5jZWxsYXRpb25fcmVhc29uOiBzYW0uY2FuY2VsbGF0aW9uX3JlYXNvbiB8fCAnJyxcbiAgICAgIGlzX2NhbmNlbGVkOiBpc0NhbmNlbGVkLFxuICAgIH07XG5cbiAgICBpZiAoaXNDYW5jZWxsZWRMYXlvdXQoc2FtcGxpbmdQcm9wZXJ0aWVzKSlcbiAgICAgIGZvcm1pa1ZhbHVlcy5jYW5jZWxlZF9ieV9pZCA9IHtcbiAgICAgICAgbmFtZTogdXNlckluZm8uZmlyc3RfbmFtZSArICcgJyArIHVzZXJJbmZvLmxhc3RfbmFtZSxcbiAgICAgICAgaWQ6IHVzZXJJbmZvLnVzZXJfaWQsXG4gICAgICB9O1xuICAgIGZvcm1pa1ZhbHVlcy5rYW5kb19yZXAgPSBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcua2FuZG9fcmVwO1xuICAgIGZvcm1pay5zZXRWYWx1ZXMoZm9ybWlrVmFsdWVzKTtcbiAgfTtcblxuICBjb25zdCBpc0NhbmNlbGxlZExheW91dCA9IChzYW1wbGluZ1Byb3BlcnRpZXMpID0+IHtcbiAgICBjb25zdCBwYWdlVHlwZTJpc0NhbmNlbGxlZCA9IHtcbiAgICAgIGNhbmNlbDogdHJ1ZSxcbiAgICAgIGNvbGxlY3Q6IGZhbHNlLFxuICAgICAgcmV2ZXJ0X2NhbmNlbDogZmFsc2UsXG4gICAgfTtcbiAgICBsZXQgaXNDYW5jZWxlZCA9IHBhZ2VUeXBlMmlzQ2FuY2VsbGVkW3BhZ2VUeXBlLmN1cnJlbnRdO1xuICAgIGlmIChpc0NhbmNlbGVkID09PSBudWxsKSB7XG4gICAgICBpc0NhbmNlbGVkID0gc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmlzX2NhbmNlbGVkIHx8IGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gaXNDYW5jZWxlZDtcbiAgfTtcblxuICBjb25zdCBmZXRjaFNhbXBsaW5nUHJvcGVydGllcyA9IHVzZUNhbGxiYWNrKFxuICAgIGFzeW5jIChzYW1wbGluZ0lkID0gc2FtcGxlSWQsIG9wKSA9PiB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGF4aW9zLmdldChcbiAgICAgICAgdXJscyh7IHNhbXBsaW5nSWQ6IHNhbXBsaW5nSWQgfSkuc2FtcGxpbmdQcm9wZXJ0aWVzLmZldGNoU2FtcGxpbmcudXJsLFxuICAgICAgKTtcbiAgICAgIGNvbnN0IHNhbXBsaW5nID0gcmVzcG9uc2UuZGF0YTtcbiAgICAgIGNvbnN0IHNhbXBsaW5nUHJvcGVydGllcyA9IHNhbXBsaW5nLnNhbXBsaW5nX3Byb3BlcnRpZXM7XG4gICAgICBwYWdlVHlwZS5jdXJyZW50ID0gZGV0ZWN0UGFnZVR5cGUoXG4gICAgICAgIHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZy5pc19jYW5jZWxlZCxcbiAgICAgICAgb3AsXG4gICAgICApO1xuICAgICAgc2V0Q29sbGVjdGlvblRpbWUoXG4gICAgICAgIGRldGVybWluZUNvbGxlY3Rpb25UaW1lKFxuICAgICAgICAgIGNvbGxlY3Rpb25UaW1lRm9ybWF0KFxuICAgICAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmNvbGxlY3Rpb25fdGltZSxcbiAgICAgICAgICAgIHNhbXBsaW5nLnNhbXBsaW5nX3BsYW4udGltZV96b25lLFxuICAgICAgICAgICksXG4gICAgICAgICAgb3AsXG4gICAgICAgICksXG4gICAgICApO1xuICAgICAgbGV0IGlzQ2FuY2VsZWQgPSBpc0NhbmNlbGxlZExheW91dChcbiAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmlzX2NhbmNlbGVkLFxuICAgICAgKTtcbiAgICAgIGluaXRGb3JtaWtWYWx1ZXMoXG4gICAgICAgIHNhbXBsaW5nUHJvcGVydGllcyxcbiAgICAgICAgaXNDYW5jZWxlZCxcbiAgICAgICAgc2FtcGxpbmcuc2FtcGxpbmdfcGxhbi50aW1lX3pvbmUsXG4gICAgICAgIHVzZXJJbmZvLFxuICAgICAgKTtcbiAgICAgIHNldFNhbXBsaW5nUHJvcGVydGllcyhzYW1wbGluZ1Byb3BlcnRpZXMpO1xuICAgICAgc2V0U2FtcGxpbmdQbGFuKHNhbXBsaW5nLnNhbXBsaW5nX3BsYW4pO1xuICAgIH0sXG4gICAgW10sXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBmZXRjaFNhbXBsaW5nUHJvcGVydGllcyhzYW1wbGVJZCwgZ2V0VXJsUXVlcnlPcCgpKTtcbiAgfSwgW3NhbXBsaW5nVXBkYXRlZF0pO1xuXG4gIGNvbnN0IHZhbGlkYXRpb25TY2hlbWEgPSBpc0NvbGxlY3RMYXlvdXQocGFnZVR5cGUuY3VycmVudClcbiAgICA/IHByb3BlcnRpZXNWYWxpZGF0aW9uU2NoZW1hXG4gICAgOiBjYW5jZWxsYXRpb25WYWxpZGF0aW9uU2NoZW1hO1xuICBjb25zdCBmb3JtaWsgPSB1c2VGb3JtaWs8Rm9ybWlrQ29uZmlnPEZvcm1UeXBlPj4oe1xuICAgIGVuYWJsZVJlaW5pdGlhbGl6ZTogdHJ1ZSxcbiAgICBpbml0aWFsVmFsdWVzOiBzYW1wbGluZ1Byb3BlcnR5LFxuICAgIHZhbGlkYXRpb25TY2hlbWE6IHZhbGlkYXRpb25TY2hlbWEsXG4gICAgdmFsaWRhdGVPbkNoYW5nZTogZmFsc2UsXG4gICAgdmFsaWRhdGVPbkJsdXI6IHRydWUsXG4gICAgb25TdWJtaXQ6ICh2YWx1ZXMpID0+IHtcbiAgICAgIGhhbmRsZVN1Ym1pdCh2YWx1ZXMpO1xuICAgIH0sXG4gIH0pO1xuXG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gKCkgPT4ge1xuICAgIGlmIChsb2NhdGlvbi5rZXkpIHtcbiAgICAgIGhpc3RvcnkuZ29CYWNrKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGhpc3RvcnkucHVzaChcbiAgICAgICAgdXJscyh7IGxvY2FsZSwgd2F0ZXJBdXRob3JpdHlJZCB9KS5zYW1wbGluZ3NQYWdlLnNhbXBsaW5nc0xpc3RSb3V0ZS51cmwsXG4gICAgICApO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVTdWJtaXQgPSAodmFsdWVzKSA9PiB7XG4gICAgc2V0U2F2aW5nTXNnKGkxOG4udCgnYnV0dG9ucy5zYXZpbmcnKSk7XG4gICAgdmFsdWVzLnBpY3R1cmVzX2F0dHJpYnV0ZXMgPSBwaG90b3M7XG4gICAgaWYgKHZhbHVlcy5jYW5jZWxlZF9ieV9pZCAmJiBpc0NhbmNlbGxlZExheW91dChzYW1wbGluZ1Byb3BlcnRpZXMpKVxuICAgICAgdmFsdWVzLmNhbmNlbGVkX2J5X2lkID0gdXNlckluZm8udXNlcl9pZDtcbiAgICBjb25zdCBzYXZlRm9ybURhdGEgPSBmb3JtRGF0YUJ1aWxkZXIodmFsdWVzKTtcbiAgICB1cGRhdGVPckNyZWF0ZShzYXZlRm9ybURhdGEpO1xuICB9O1xuXG4gIGNvbnN0IHNldE9yaWdpbmFsU2F2ZU1lc3NhZ2VXaXRoVGltZW91dCA9ICgpID0+IHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMuc2F2ZScpKTtcbiAgICB9LCAzMDAwKTtcbiAgfTtcblxuICBjb25zdCBmb3JtRGF0YUJ1aWxkZXIgPSAodmFsdWVzKSA9PiB7XG4gICAgY29uc3QgZm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiB2YWx1ZXMpIHtcbiAgICAgIGlmIChrZXkgIT09ICdwaWN0dXJlc19hdHRyaWJ1dGVzJykge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHZhbHVlc1trZXldID09PSBudWxsID8gJycgOiB2YWx1ZXNba2V5XTtcbiAgICAgICAgZm9ybURhdGEuYXBwZW5kKGBzYW1wbGluZ1ske2tleX1dYCwgdmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgICBsZXQgdW5pcXVlUGhvdG9zVG9EZWxldGUgPSBbLi4ubmV3IFNldChwaG90b3NUb0RlbGV0ZSldO1xuICAgIHVuaXF1ZVBob3Rvc1RvRGVsZXRlLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgdW5pcXVlUGhvdG9zVG9EZWxldGUuZm9yRWFjaCgoaWQsIGluZGV4KSA9PiB7XG4gICAgICAgIGZvcm1EYXRhLmFwcGVuZChcbiAgICAgICAgICBgc2FtcGxpbmdbcGljdHVyZXNfYXR0cmlidXRlc11bJHtpbmRleH1dW2lkXWAsXG4gICAgICAgICAgSlNPTi5zdHJpbmdpZnkoaWQpLFxuICAgICAgICApO1xuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoXG4gICAgICAgICAgYHNhbXBsaW5nW3BpY3R1cmVzX2F0dHJpYnV0ZXNdWyR7aW5kZXh9XVtfZGVzdHJveV1gLFxuICAgICAgICAgICd0cnVlJyxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgIHJldHVybiBmb3JtRGF0YTtcbiAgfTtcblxuICBjb25zdCB1cGRhdGVPckNyZWF0ZSA9IGFzeW5jIChmb3JtRGF0YSkgPT4ge1xuICAgIGNvbnN0IHVwZGF0ZU9yQ3JlYXRlU3VjY2VzcyA9IChtc2cpID0+IHtcbiAgICAgIHNldFNhdmluZ01zZyhpMThuLnQobXNnKSk7XG4gICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQodHJ1ZSk7XG4gICAgICBzZXRPcmlnaW5hbFNhdmVNZXNzYWdlV2l0aFRpbWVvdXQoKTtcbiAgICAgIGhhbmRsZUNsb3NlKCk7XG4gICAgfTtcblxuICAgIGNvbnN0IHNhbXBsaW5nSUQgPSBzYW1wbGluZ1Byb3BlcnRpZXM/LnNhbXBsaW5nPy5pZDtcbiAgICBpZiAoc2FtcGxpbmdJRCA9PT0gbnVsbCkge1xuICAgICAgLy8gY3JlYXRlXG4gICAgICBmb3JtRGF0YS5hcHBlbmQoYHNhbXBsaW5nW2RhdGVdYCwgY29sbGVjdGlvblRpbWUpO1xuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgYXhpb3MucG9zdChcbiAgICAgICAgICB1cmxzKHtcbiAgICAgICAgICAgIHdhdGVyQXV0aG9yaXR5SWQ6IHdhdGVyQXV0aG9yaXR5SWQsXG4gICAgICAgICAgfSkuc2FtcGxpbmdQcm9wZXJ0aWVzLmNyZWF0ZVNhbXBsaW5nLnVybCxcbiAgICAgICAgICBmb3JtRGF0YSxcbiAgICAgICAgKTtcbiAgICAgICAgdXBkYXRlT3JDcmVhdGVTdWNjZXNzKCdidXR0b25zLmNyZWF0ZWQnKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgc2V0U2F2aW5nTXNnKGkxOG4udCgnYnV0dG9ucy5lcnJvcicpKTtcbiAgICAgICAgc2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0KCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChcbiAgICAgICAgZ2V0VXJsUXVlcnlPcCgpID09PSAnZWRpdCcgfHxcbiAgICAgICAgWydyZXZlcnRfY2FuY2VsJ10uaW5jbHVkZXMocGFnZVR5cGUuY3VycmVudClcbiAgICAgICkge1xuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoYHNhbXBsaW5nW2NvbGxlY3Rpb25fdGltZV1gLCBjb2xsZWN0aW9uVGltZSk7XG4gICAgICB9XG4gICAgICAvLyB1cGRhdGVcbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IGF4aW9zLnB1dChcbiAgICAgICAgICB1cmxzKHsgc2FtcGxpbmdJZDogc2FtcGxpbmdJRCwgd2F0ZXJBdXRob3JpdHlJZDogd2F0ZXJBdXRob3JpdHlJZCB9KVxuICAgICAgICAgICAgLnNhbXBsaW5nUHJvcGVydGllcy51cGRhdGVTYW1wbGluZy51cmwsXG4gICAgICAgICAgZm9ybURhdGEsXG4gICAgICAgICk7XG4gICAgICAgIHVwZGF0ZU9yQ3JlYXRlU3VjY2VzcygnYnV0dG9ucy51cGRhdGVkJyk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMuZXJyb3InKSk7XG4gICAgICAgIHNldE9yaWdpbmFsU2F2ZU1lc3NhZ2VXaXRoVGltZW91dCgpO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBjb25zdCBkZXRlY3RQYWdlVHlwZSA9IChpc1NhbXBsaW5nQ2FuY2VsbGVkLCBvcCkgPT4ge1xuICAgIGNvbnN0IGVkaXRQYWdlVmFsdWUgPSBpc1NhbXBsaW5nQ2FuY2VsbGVkID8gJ2NhbmNlbCcgOiAnY29sbGVjdCc7XG4gICAgaWYgKG9wID09PSBFRElUX1BST1BFUlRJRVNfT1ApIHtcbiAgICAgIHJldHVybiBlZGl0UGFnZVZhbHVlO1xuICAgIH0gZWxzZSBpZiAob3AgPT09IENPTExFQ1RfU0FNUExJTkdfT1ApIHtcbiAgICAgIHJldHVybiAnY29sbGVjdCc7XG4gICAgfSBlbHNlIGlmIChvcCA9PT0gQ0FOQ0VMX1NBTVBMSU5HX09QKSB7XG4gICAgICByZXR1cm4gJ2NhbmNlbCc7XG4gICAgfSBlbHNlIGlmIChvcCA9PT0gUkVWRVJUX0NBTkNFTExBVElPTikge1xuICAgICAgcmV0dXJuICdyZXZlcnRfY2FuY2VsJztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGVkaXRQYWdlVmFsdWU7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGRldGVybWluZUNvbGxlY3Rpb25UaW1lID0gKHNlcnZlckNvbGxlY3Rpb25UaW1lLCBvcCkgPT4ge1xuICAgIGNvbnN0IGN1cnJlbnRUaW1lID0gbmV3IERhdGUoKTtcbiAgICBjb25zdCBzZXJ2ZXJUaW1lID0gc2VydmVyQ29sbGVjdGlvblRpbWVcbiAgICAgID8gbmV3IERhdGUoc2VydmVyQ29sbGVjdGlvblRpbWUpXG4gICAgICA6IGN1cnJlbnRUaW1lO1xuICAgIGNvbnN0IGVkaXRQYWdlVmFsdWUgPSBzZXJ2ZXJDb2xsZWN0aW9uVGltZSA/IHNlcnZlclRpbWUgOiBjdXJyZW50VGltZTtcbiAgICBpZiAob3AgPT09IEVESVRfUFJPUEVSVElFU19PUCkge1xuICAgICAgcmV0dXJuIGVkaXRQYWdlVmFsdWU7XG4gICAgfSBlbHNlIGlmIChvcCA9PT0gQ09MTEVDVF9TQU1QTElOR19PUCkge1xuICAgICAgcmV0dXJuIGN1cnJlbnRUaW1lO1xuICAgIH0gZWxzZSBpZiAoW0NBTkNFTF9TQU1QTElOR19PUCwgUkVWRVJUX0NBTkNFTExBVElPTl0uaW5jbHVkZXMob3ApKSB7XG4gICAgICByZXR1cm4gc2VydmVyVGltZTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGVkaXRQYWdlVmFsdWU7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGdldFVybFF1ZXJ5T3AgPSAoKSA9PiB7XG4gICAgbGV0IG9wID0gcXVlcnkuZ2V0KCdvcCcpO1xuICAgIC8vIGlmIG5vdCBwcmVzZW50IHRoZW4gZGVmYXVsdCBvcCBpcyAnY29sbGVjdGluZydcbiAgICBpZiAoW3VuZGVmaW5lZCwgbnVsbCwgJyddLmluY2x1ZGVzKG9wKSkge1xuICAgICAgcmV0dXJuIENPTExFQ1RfU0FNUExJTkdfT1A7XG4gICAgfVxuICAgIHJldHVybiBvcDtcbiAgfTtcblxuICBpZiAoIXNhbXBsaW5nUGxhbiB8fCAhc2FtcGxpbmdQcm9wZXJ0aWVzKSB7XG4gICAgcmV0dXJuIDxTcGlubmVyIC8+O1xuICB9XG5cbiAgaWYgKHNhbXBsaW5nUHJvcGVydGllcy5pc19wdW1wX2luX3Byb2dyZXNzKSB7XG4gICAgcmV0dXJuIDxTYW1wbGVySW5Qcm9jZXNzIGhhbmRsZUNsb3NlPXtoYW5kbGVDbG9zZX0gLz47XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxmb3JtIG9uU3VibWl0PXtmb3JtaWsuaGFuZGxlU3VibWl0fT5cbiAgICAgIDxMYXlvdXQ+XG4gICAgICAgIDxTYW1wbGluZ1Byb3BlcnRpZXNTdHlsZT5cbiAgICAgICAgICB7IWlzTW9iaWxlICYmIChcbiAgICAgICAgICAgIDxTYW1wbGluZ1Byb3BlcnRpZXNIZWFkXG4gICAgICAgICAgICAgIHNhbXBsaW5nUHJvcGVydGllcz17c2FtcGxpbmdQcm9wZXJ0aWVzfVxuICAgICAgICAgICAgICBzYW1wbGluZz17c2FtcGxpbmdQbGFufVxuICAgICAgICAgICAgICBmb3JtaWs9e2Zvcm1pa31cbiAgICAgICAgICAgICAgcGFnZVR5cGU9e3BhZ2VUeXBlLmN1cnJlbnR9XG4gICAgICAgICAgICAgIGNvbGxlY3Rpb25UaW1lPXtjb2xsZWN0aW9uVGltZX1cbiAgICAgICAgICAgICAgc2V0Q29sbGVjdGlvblRpbWU9e3NldENvbGxlY3Rpb25UaW1lfVxuICAgICAgICAgICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQ9e3NldFNhbXBsaW5nVXBkYXRlZH1cbiAgICAgICAgICAgICAgaXNEYXRlUGlja2VyRGlzYWJsZWQ9e2lzUHJvcGVydGllc1BhZ2UocGFnZVR5cGUpfVxuICAgICAgICAgICAgICBkYXRlRm9ybWF0PXtkYXRlRm9ybWF0fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge2lzTW9iaWxlICYmIChcbiAgICAgICAgICAgIDxTYW1wbGluZ1Byb3BlcnRpZXNIZWFkTW9iaWxlXG4gICAgICAgICAgICAgIHNhbXBsaW5nUHJvcGVydGllcz17c2FtcGxpbmdQcm9wZXJ0aWVzfVxuICAgICAgICAgICAgICBzYW1wbGluZz17c2FtcGxpbmdQbGFufVxuICAgICAgICAgICAgICBmb3JtaWs9e2Zvcm1pa31cbiAgICAgICAgICAgICAgcGFnZVR5cGU9e3BhZ2VUeXBlLmN1cnJlbnR9XG4gICAgICAgICAgICAgIGNvbGxlY3Rpb25UaW1lPXtjb2xsZWN0aW9uVGltZX1cbiAgICAgICAgICAgICAgc2V0Q29sbGVjdGlvblRpbWU9e3NldENvbGxlY3Rpb25UaW1lfVxuICAgICAgICAgICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQ9e3NldFNhbXBsaW5nVXBkYXRlZH1cbiAgICAgICAgICAgICAgaXNEYXRlUGlja2VyRGlzYWJsZWQ9e2lzUHJvcGVydGllc1BhZ2UocGFnZVR5cGUpfVxuICAgICAgICAgICAgICBkYXRlRm9ybWF0PXtkYXRlRm9ybWF0fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge3NhbXBsaW5nUHJvcGVydGllcyAmJiBwYWdlVHlwZSAmJiAoXG4gICAgICAgICAgICA8U2FtcGxpbmdQcm9wZXJ0aWVzRm9ybVxuICAgICAgICAgICAgICBzYW1wbGluZ1Byb3BlcnRpZXM9e3NhbXBsaW5nUHJvcGVydGllc31cbiAgICAgICAgICAgICAgc2FtcGxpbmc9e3NhbXBsaW5nUGxhbn1cbiAgICAgICAgICAgICAgcGFnZVR5cGU9e3BhZ2VUeXBlLmN1cnJlbnR9XG4gICAgICAgICAgICAgIHNldFNhbXBsaW5nVXBkYXRlZD17c2V0U2FtcGxpbmdVcGRhdGVkfVxuICAgICAgICAgICAgICBzYXZpbmdNc2c9e3NhdmluZ01zZ31cbiAgICAgICAgICAgICAgaGFuZGxlQ2xvc2U9e2hhbmRsZUNsb3NlfVxuICAgICAgICAgICAgICBzZXRQaG90b3NUb0RlbGV0ZT17c2V0UGhvdG9zVG9EZWxldGV9XG4gICAgICAgICAgICAgIHNldFBob3Rvcz17c2V0UGhvdG9zfVxuICAgICAgICAgICAgICBwaG90b3M9e3Bob3Rvc31cbiAgICAgICAgICAgICAgZm9ybWlrPXtmb3JtaWt9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICl9XG4gICAgICAgIDwvU2FtcGxpbmdQcm9wZXJ0aWVzU3R5bGU+XG4gICAgICA8L0xheW91dD5cbiAgICA8L2Zvcm0+XG4gICk7XG59O1xuIl19
|
|
426
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL1NhbXBsaW5nUHJvcGVydGllcy9TYW1wbGluZ1Byb3BlcnRpZXMudHN4Il0sIm5hbWVzIjpbImlzUHJvcGVydGllc1BhZ2UiLCJwYWdlVHlwZSIsIlNhbXBsaW5nUHJvcGVydGllcyIsIkRhdGUiLCJjb2xsZWN0aW9uVGltZSIsInNldENvbGxlY3Rpb25UaW1lIiwicGhvdG9zIiwic2V0UGhvdG9zIiwicGhvdG9zVG9EZWxldGUiLCJzZXRQaG90b3NUb0RlbGV0ZSIsImkxOG4iLCJ0Iiwic2F2aW5nTXNnIiwic2V0U2F2aW5nTXNnIiwic2FtcGxpbmdVcGRhdGVkIiwic2V0U2FtcGxpbmdVcGRhdGVkIiwidW5kZWZpbmVkIiwic2FtcGxpbmdQbGFuIiwic2V0U2FtcGxpbmdQbGFuIiwiaGlzdG9yeSIsImxvY2F0aW9uIiwicXVlcnkiLCJ1c2VySW5mbyIsInN0YXRlIiwicGVybWlzc2lvbnMiLCJ1c2VyX2luZm8iLCJkYXRlRm9ybWF0IiwiZGF0ZV90aW1lX2Zvcm1hdCIsInNhbXBsaW5nUHJvcGVydGllcyIsInNldFNhbXBsaW5nUHJvcGVydGllcyIsInNhbXBsZUlkIiwid2F0ZXJBdXRob3JpdHlJZCIsImdsb2JhbF9kYXRhIiwibG9jYWxlIiwibmF2X2NvbnRleHRfZGF0YSIsIm5hdkNvbnRleHQiLCJpbml0Rm9ybWlrVmFsdWVzIiwiaXNDYW5jZWxlZCIsInRpbWVab25lIiwicGFnZUNvbGxlY3Rpb25UaW1lIiwiY3VycmVudCIsInNhbXBsaW5nIiwiY29sbGVjdGlvbl90aW1lIiwic2FtIiwiZm9ybWlrVmFsdWVzIiwibGFiX2lkIiwicHVtcF9zYW1wbGluZ192b2x1bWUiLCJwdW1wX2JhdHRlcnlfbGV2ZWwiLCJkZXNjcmlwdGlvbiIsImthbmRvX3JlcCIsInNhbXBsaW5nX3BsYW5faWQiLCJjYW5jZWxsYXRpb25fcmVhc29uIiwiaXNfY2FuY2VsZWQiLCJpc0NhbmNlbGxlZExheW91dCIsImNhbmNlbGVkX2J5X2lkIiwibmFtZSIsImZpcnN0X25hbWUiLCJsYXN0X25hbWUiLCJpZCIsInVzZXJfaWQiLCJmb3JtaWsiLCJzZXRWYWx1ZXMiLCJwYWdlVHlwZTJpc0NhbmNlbGxlZCIsImNhbmNlbCIsImNvbGxlY3QiLCJyZXZlcnRfY2FuY2VsIiwiZmV0Y2hTYW1wbGluZ1Byb3BlcnRpZXMiLCJzYW1wbGluZ0lkIiwib3AiLCJheGlvcyIsImdldCIsImZldGNoU2FtcGxpbmciLCJ1cmwiLCJyZXNwb25zZSIsImRhdGEiLCJzYW1wbGluZ19wcm9wZXJ0aWVzIiwiZGV0ZWN0UGFnZVR5cGUiLCJkZXRlcm1pbmVDb2xsZWN0aW9uVGltZSIsInNhbXBsaW5nX3BsYW4iLCJ0aW1lX3pvbmUiLCJnZXRVcmxRdWVyeU9wIiwidmFsaWRhdGlvblNjaGVtYSIsInByb3BlcnRpZXNWYWxpZGF0aW9uU2NoZW1hIiwiY2FuY2VsbGF0aW9uVmFsaWRhdGlvblNjaGVtYSIsImVuYWJsZVJlaW5pdGlhbGl6ZSIsImluaXRpYWxWYWx1ZXMiLCJzYW1wbGluZ1Byb3BlcnR5IiwidmFsaWRhdGVPbkNoYW5nZSIsInZhbGlkYXRlT25CbHVyIiwib25TdWJtaXQiLCJ2YWx1ZXMiLCJoYW5kbGVTdWJtaXQiLCJoYW5kbGVDbG9zZSIsImtleSIsImdvQmFjayIsInB1c2giLCJzYW1wbGluZ3NQYWdlIiwic2FtcGxpbmdzTGlzdFJvdXRlIiwicGljdHVyZXNfYXR0cmlidXRlcyIsInNhdmVGb3JtRGF0YSIsImZvcm1EYXRhQnVpbGRlciIsInVwZGF0ZU9yQ3JlYXRlIiwic2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0Iiwic2V0VGltZW91dCIsImZvcm1EYXRhIiwiRm9ybURhdGEiLCJ2YWx1ZSIsImFwcGVuZCIsInVuaXF1ZVBob3Rvc1RvRGVsZXRlIiwiU2V0IiwibGVuZ3RoIiwiZm9yRWFjaCIsImluZGV4IiwiSlNPTiIsInN0cmluZ2lmeSIsInVwZGF0ZU9yQ3JlYXRlU3VjY2VzcyIsIm1zZyIsInNhbXBsaW5nSUQiLCJwb3N0IiwiY3JlYXRlU2FtcGxpbmciLCJwdXQiLCJ1cGRhdGVTYW1wbGluZyIsImlzU2FtcGxpbmdDYW5jZWxsZWQiLCJlZGl0UGFnZVZhbHVlIiwiQ09MTEVDVF9TQU1QTElOR19PUCIsIkNBTkNFTF9TQU1QTElOR19PUCIsIlJFVkVSVF9DQU5DRUxMQVRJT04iLCJzZXJ2ZXJDb2xsZWN0aW9uVGltZSIsImN1cnJlbnRUaW1lIiwic2VydmVyVGltZSIsImluY2x1ZGVzIiwiaXNfcHVtcF9pbl9wcm9ncmVzcyIsImlzTW9iaWxlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBR0E7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBTUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBU0E7Ozs7OztBQW5DQTtBQUNBO0FBQ0E7QUFtQ0EsSUFBTUEsZ0JBQWdCLEdBQUcsU0FBbkJBLGdCQUFtQixDQUFDQyxRQUFEO0FBQUEsU0FBY0EsUUFBUSxLQUFLLE1BQTNCO0FBQUEsQ0FBekI7O0FBRU8sSUFBTUMsa0JBQXNCLEdBQUcsU0FBekJBLGtCQUF5QixHQUFNO0FBQzFDLGtCQUE0QyxxQkFDMUMsSUFBSUMsSUFBSixFQUQwQyxDQUE1QztBQUFBO0FBQUEsTUFBT0MsY0FBUDtBQUFBLE1BQXVCQyxpQkFBdkI7O0FBR0EsbUJBQTRCLHFCQUE4QixFQUE5QixDQUE1QjtBQUFBO0FBQUEsTUFBT0MsTUFBUDtBQUFBLE1BQWVDLFNBQWY7O0FBQ0EsbUJBQTRDLHFCQUFtQixFQUFuQixDQUE1QztBQUFBO0FBQUEsTUFBT0MsY0FBUDtBQUFBLE1BQXVCQyxpQkFBdkI7O0FBQ0EsbUJBQWtDLHFCQUFpQkMsY0FBS0MsQ0FBTCxDQUFPLGNBQVAsQ0FBakIsQ0FBbEM7QUFBQTtBQUFBLE1BQU9DLFNBQVA7QUFBQSxNQUFrQkMsWUFBbEI7O0FBQ0EsbUJBQThDLHFCQUFTLEtBQVQsQ0FBOUM7QUFBQTtBQUFB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LEVBQUUzRCxRQUFRLENBQUN1QyxPQUpyQjtBQUtFLElBQUEsY0FBYyxFQUFFcEMsY0FMbEI7QUFNRSxJQUFBLGlCQUFpQixFQUFFQyxpQkFOckI7QUFPRSxJQUFBLGtCQUFrQixFQUFFVSxrQkFQdEI7QUFRRSxJQUFBLG9CQUFvQixFQUFFZixnQkFBZ0IsQ0FBQ0MsUUFBRCxDQVJ4QztBQVNFLElBQUEsVUFBVSxFQUFFeUI7QUFUZCxJQWhCSixFQTZCR0Usa0JBQWtCLElBQUkzQixRQUF0QixpQkFDQyw2QkFBQyw4Q0FBRDtBQUNFLElBQUEsa0JBQWtCLEVBQUUyQixrQkFEdEI7QUFFRSxJQUFBLFFBQVEsRUFBRVgsWUFGWjtBQUdFLElBQUEsUUFBUSxFQUFFaEIsUUFBUSxDQUFDdUMsT0FIckI7QUFJRSxJQUFBLGtCQUFrQixFQUFFekIsa0JBSnRCO0FBS0UsSUFBQSxTQUFTLEVBQUVILFNBTGI7QUFNRSxJQUFBLFdBQVcsRUFBRWdGLFdBTmY7QUFPRSxJQUFBLGlCQUFpQixFQUFFbkYsaUJBUHJCO0FBUUUsSUFBQSxTQUFTLEVBQUVGLFNBUmI7QUFTRSxJQUFBLE1BQU0sRUFBRUQsTUFUVjtBQVVFLElBQUEsTUFBTSxFQUFFc0Q7QUFWVixJQTlCSixDQURGLENBREYsQ0FERjtBQWtERCxDQWhVTSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQcm9wZXJ0aWVzIGFuZCBDYW5jZWxsaW5nIGZvcm1zLlxuICoqL1xuaW1wb3J0IFJlYWN0LCB7IEZDLCB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IGF4aW9zIGZyb20gJ2F4aW9zJztcbmltcG9ydCB7IEZvcm1pa0NvbmZpZyB9IGZyb20gJ2Zvcm1pay9kaXN0L3R5cGVzJztcbmltcG9ydCB7IGlzTW9iaWxlIH0gZnJvbSAncmVhY3QtZGV2aWNlLWRldGVjdCc7XG5pbXBvcnQgeyB1c2VGb3JtaWsgfSBmcm9tICdmb3JtaWsnO1xuaW1wb3J0IHsgdXNlSGlzdG9yeSwgdXNlUGFyYW1zLCB1c2VMb2NhdGlvbiB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5cbmltcG9ydCBMYXlvdXQgZnJvbSAnc3JjL3VpLWtpdC9MYXlvdXQvTGF5b3V0JztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgdXNlUXVlcnlVUkwgZnJvbSAnc3JjL2hvb2tzL3VzZVF1ZXJ5VVJMJztcbmltcG9ydCB7IFNwaW5uZXIgfSBmcm9tICdzcmMvY29tcG9uZW50cy9TcGlubmVyL1NwaW5uZXInO1xuaW1wb3J0IHsgdXJscyB9IGZyb20gJ3NyYy91dGlsaXRpZXMvdXJscyc7XG5pbXBvcnQgeyBTYW1wbGluZ1Byb3BlcnRpZXNTdHlsZSB9IGZyb20gJy4vc3R5bGVzJztcbmltcG9ydCB7XG4gIENBTkNFTF9TQU1QTElOR19PUCxcbiAgQ09MTEVDVF9TQU1QTElOR19PUCxcbiAgUkVWRVJUX0NBTkNFTExBVElPTixcbiAgU2FtcGxpbmdGZXRjaERhdGEsXG59IGZyb20gJy4uL3NhbXBsaW5nc1BhZ2VVdGlscyc7XG5pbXBvcnQgeyBTYW1wbGluZ1Byb3BlcnRpZXNGb3JtIH0gZnJvbSAnLi9TYW1wbGluZ1Byb3BlcnRpZXNGb3JtJztcbmltcG9ydCB7IFNhbXBsaW5nUHJvcGVydGllc0hlYWQgfSBmcm9tICcuL1NhbXBsaW5nUHJvcGVydGllc0hlYWQnO1xuaW1wb3J0IHsgU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZE1vYmlsZSB9IGZyb20gJy4vU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZE1vYmlsZSc7XG5pbXBvcnQge1xuICBGb3JtVHlwZSxcbiAgVFNhbXBsaW5nUHJvcGVydGllcyxcbiAgY2FuY2VsbGF0aW9uVmFsaWRhdGlvblNjaGVtYSxcbiAgaXNDb2xsZWN0TGF5b3V0LFxuICBwcm9wZXJ0aWVzVmFsaWRhdGlvblNjaGVtYSxcbiAgc2FtcGxpbmdQcm9wZXJ0eSxcbiAgY29sbGVjdGlvblRpbWVGb3JtYXQsXG59IGZyb20gJy4vc2FtcGxpbmdQcm9wZXJ0aWVzVXRpbHMnO1xuaW1wb3J0IFNhbXBsZXJJblByb2Nlc3MgZnJvbSAnLi9TYW1wbGVySW5Qcm9jZXNzJztcblxuY29uc3QgaXNQcm9wZXJ0aWVzUGFnZSA9IChwYWdlVHlwZSkgPT4gcGFnZVR5cGUgPT09ICdlZGl0JztcblxuZXhwb3J0IGNvbnN0IFNhbXBsaW5nUHJvcGVydGllczogRkMgPSAoKSA9PiB7XG4gIGNvbnN0IFtjb2xsZWN0aW9uVGltZSwgc2V0Q29sbGVjdGlvblRpbWVdID0gdXNlU3RhdGU8c3RyaW5nIHwgRGF0ZSB8IG51bGw+KFxuICAgIG5ldyBEYXRlKCksXG4gICk7XG4gIGNvbnN0IFtwaG90b3MsIHNldFBob3Rvc10gPSB1c2VTdGF0ZTxzdHJpbmcgfCBCbG9iIHwgYW55PihbXSk7XG4gIGNvbnN0IFtwaG90b3NUb0RlbGV0ZSwgc2V0UGhvdG9zVG9EZWxldGVdID0gdXNlU3RhdGU8bnVtYmVyW10+KFtdKTtcbiAgY29uc3QgW3NhdmluZ01zZywgc2V0U2F2aW5nTXNnXSA9IHVzZVN0YXRlPHN0cmluZz4oaTE4bi50KCdidXR0b25zLnNhdmUnKSk7XG4gIGNvbnN0IFtzYW1wbGluZ1VwZGF0ZWQsIHNldFNhbXBsaW5nVXBkYXRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtzYW1wbGluZ1BsYW4sIHNldFNhbXBsaW5nUGxhbl0gPSB1c2VTdGF0ZTxcbiAgICBTYW1wbGluZ0ZldGNoRGF0YSB8IHVuZGVmaW5lZFxuICA+KHVuZGVmaW5lZCk7XG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG4gIGNvbnN0IGxvY2F0aW9uID0gdXNlTG9jYXRpb24oKTtcbiAgY29uc3QgcXVlcnkgPSB1c2VRdWVyeVVSTCgpO1xuICBjb25zdCB1c2VySW5mbyA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUucGVybWlzc2lvbnMudXNlcl9pbmZvKTtcbiAgY29uc3QgZGF0ZUZvcm1hdCA9XG4gICAgdXNlckluZm8uZGF0ZV90aW1lX2Zvcm1hdCA9PT0gJ3VzJ1xuICAgICAgPyAnTU1NIGQsIHl5eXkgaGg6bW0gYWEnXG4gICAgICA6ICdkL01NL3l5eXkgSEg6bW0nO1xuICBjb25zdCBwYWdlVHlwZSA9IHVzZVJlZjxzdHJpbmc+KCcnKTtcbiAgY29uc3QgW3NhbXBsaW5nUHJvcGVydGllcywgc2V0U2FtcGxpbmdQcm9wZXJ0aWVzXSA9XG4gICAgdXNlU3RhdGU8VFNhbXBsaW5nUHJvcGVydGllcz4oKTtcbiAgY29uc3QgeyBzYW1wbGVJZCB9ID0gdXNlUGFyYW1zKCk7XG4gIGNvbnN0IHdhdGVyQXV0aG9yaXR5SWQgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGUpID0+IHN0YXRlLmdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsXG4gICk7XG4gIGNvbnN0IGxvY2FsZSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZSkgPT4gc3RhdGUubmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZSxcbiAgKTtcblxuICBjb25zdCBpbml0Rm9ybWlrVmFsdWVzID0gKFxuICAgIHNhbXBsaW5nUHJvcGVydGllcyxcbiAgICBpc0NhbmNlbGVkLFxuICAgIHRpbWVab25lLFxuICAgIHVzZXJJbmZvLFxuICApID0+IHtcbiAgICBjb25zdCBwYWdlQ29sbGVjdGlvblRpbWUgPSBpc0NvbGxlY3RMYXlvdXQocGFnZVR5cGUuY3VycmVudClcbiAgICAgID8gY29sbGVjdGlvblRpbWVcbiAgICAgIDogY29sbGVjdGlvblRpbWVGb3JtYXQoXG4gICAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmNvbGxlY3Rpb25fdGltZSxcbiAgICAgICAgICB0aW1lWm9uZSxcbiAgICAgICAgKTtcbiAgICBjb25zdCBzYW0gPSBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmc7XG4gICAgbGV0IGZvcm1pa1ZhbHVlczogRm9ybVR5cGUgPSB7XG4gICAgICBsYWJfaWQ6IHNhbS5sYWJfaWQsXG4gICAgICBjb2xsZWN0aW9uX3RpbWU6IHBhZ2VDb2xsZWN0aW9uVGltZSxcbiAgICAgIHB1bXBfc2FtcGxpbmdfdm9sdW1lOiBzYW0ucHVtcF9zYW1wbGluZ192b2x1bWUsXG4gICAgICBwdW1wX2JhdHRlcnlfbGV2ZWw6IHNhbS5wdW1wX2JhdHRlcnlfbGV2ZWwsXG4gICAgICBkZXNjcmlwdGlvbjogc2FtLmRlc2NyaXB0aW9uLFxuICAgICAga2FuZG9fcmVwOiBzYW0ua2FuZG9fcmVwLFxuICAgICAgc2FtcGxpbmdfcGxhbl9pZDogc2FtLnNhbXBsaW5nX3BsYW5faWQsXG4gICAgICBjYW5jZWxsYXRpb25fcmVhc29uOiBzYW0uY2FuY2VsbGF0aW9uX3JlYXNvbiB8fCAnJyxcbiAgICAgIGlzX2NhbmNlbGVkOiBpc0NhbmNlbGVkLFxuICAgIH07XG5cbiAgICBpZiAoaXNDYW5jZWxsZWRMYXlvdXQoc2FtcGxpbmdQcm9wZXJ0aWVzKSlcbiAgICAgIGZvcm1pa1ZhbHVlcy5jYW5jZWxlZF9ieV9pZCA9IHtcbiAgICAgICAgbmFtZTogdXNlckluZm8uZmlyc3RfbmFtZSArICcgJyArIHVzZXJJbmZvLmxhc3RfbmFtZSxcbiAgICAgICAgaWQ6IHVzZXJJbmZvLnVzZXJfaWQsXG4gICAgICB9O1xuICAgIGZvcm1pa1ZhbHVlcy5rYW5kb19yZXAgPSBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcua2FuZG9fcmVwO1xuICAgIGZvcm1pay5zZXRWYWx1ZXMoZm9ybWlrVmFsdWVzKTtcbiAgfTtcblxuICBjb25zdCBpc0NhbmNlbGxlZExheW91dCA9IChzYW1wbGluZ1Byb3BlcnRpZXMpID0+IHtcbiAgICBjb25zdCBwYWdlVHlwZTJpc0NhbmNlbGxlZCA9IHtcbiAgICAgIGNhbmNlbDogdHJ1ZSxcbiAgICAgIGNvbGxlY3Q6IGZhbHNlLFxuICAgICAgcmV2ZXJ0X2NhbmNlbDogZmFsc2UsXG4gICAgfTtcbiAgICBsZXQgaXNDYW5jZWxlZCA9IHBhZ2VUeXBlMmlzQ2FuY2VsbGVkW3BhZ2VUeXBlLmN1cnJlbnRdO1xuICAgIGlmIChpc0NhbmNlbGVkID09PSBudWxsKSB7XG4gICAgICBpc0NhbmNlbGVkID0gc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmlzX2NhbmNlbGVkIHx8IGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gaXNDYW5jZWxlZDtcbiAgfTtcblxuICBjb25zdCBmZXRjaFNhbXBsaW5nUHJvcGVydGllcyA9IHVzZUNhbGxiYWNrKFxuICAgIGFzeW5jIChzYW1wbGluZ0lkID0gc2FtcGxlSWQsIG9wKSA9PiB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGF4aW9zLmdldChcbiAgICAgICAgdXJscyh7IHNhbXBsaW5nSWQ6IHNhbXBsaW5nSWQgfSkuc2FtcGxpbmdQcm9wZXJ0aWVzLmZldGNoU2FtcGxpbmcudXJsLFxuICAgICAgKTtcbiAgICAgIGNvbnN0IHNhbXBsaW5nID0gcmVzcG9uc2UuZGF0YTtcbiAgICAgIGNvbnN0IHNhbXBsaW5nUHJvcGVydGllcyA9IHNhbXBsaW5nLnNhbXBsaW5nX3Byb3BlcnRpZXM7XG4gICAgICBwYWdlVHlwZS5jdXJyZW50ID0gZGV0ZWN0UGFnZVR5cGUoXG4gICAgICAgIHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZy5pc19jYW5jZWxlZCxcbiAgICAgICAgb3AsXG4gICAgICApO1xuICAgICAgc2V0Q29sbGVjdGlvblRpbWUoXG4gICAgICAgIGRldGVybWluZUNvbGxlY3Rpb25UaW1lKFxuICAgICAgICAgIGNvbGxlY3Rpb25UaW1lRm9ybWF0KFxuICAgICAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmNvbGxlY3Rpb25fdGltZSxcbiAgICAgICAgICAgIHNhbXBsaW5nLnNhbXBsaW5nX3BsYW4udGltZV96b25lLFxuICAgICAgICAgICksXG4gICAgICAgICAgb3AsXG4gICAgICAgICksXG4gICAgICApO1xuICAgICAgbGV0IGlzQ2FuY2VsZWQgPSBpc0NhbmNlbGxlZExheW91dChcbiAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmlzX2NhbmNlbGVkLFxuICAgICAgKTtcbiAgICAgIGluaXRGb3JtaWtWYWx1ZXMoXG4gICAgICAgIHNhbXBsaW5nUHJvcGVydGllcyxcbiAgICAgICAgaXNDYW5jZWxlZCxcbiAgICAgICAgc2FtcGxpbmcuc2FtcGxpbmdfcGxhbi50aW1lX3pvbmUsXG4gICAgICAgIHVzZXJJbmZvLFxuICAgICAgKTtcbiAgICAgIHNldFNhbXBsaW5nUHJvcGVydGllcyhzYW1wbGluZ1Byb3BlcnRpZXMpO1xuICAgICAgc2V0U2FtcGxpbmdQbGFuKHNhbXBsaW5nLnNhbXBsaW5nX3BsYW4pO1xuICAgIH0sXG4gICAgW10sXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBmZXRjaFNhbXBsaW5nUHJvcGVydGllcyhzYW1wbGVJZCwgZ2V0VXJsUXVlcnlPcCgpKTtcbiAgfSwgW3NhbXBsaW5nVXBkYXRlZF0pO1xuXG4gIGNvbnN0IHZhbGlkYXRpb25TY2hlbWEgPSBpc0NvbGxlY3RMYXlvdXQocGFnZVR5cGUuY3VycmVudClcbiAgICA/IHByb3BlcnRpZXNWYWxpZGF0aW9uU2NoZW1hXG4gICAgOiBjYW5jZWxsYXRpb25WYWxpZGF0aW9uU2NoZW1hO1xuICBjb25zdCBmb3JtaWsgPSB1c2VGb3JtaWs8Rm9ybWlrQ29uZmlnPEZvcm1UeXBlPj4oe1xuICAgIGVuYWJsZVJlaW5pdGlhbGl6ZTogdHJ1ZSxcbiAgICBpbml0aWFsVmFsdWVzOiBzYW1wbGluZ1Byb3BlcnR5LFxuICAgIHZhbGlkYXRpb25TY2hlbWE6IHZhbGlkYXRpb25TY2hlbWEsXG4gICAgdmFsaWRhdGVPbkNoYW5nZTogZmFsc2UsXG4gICAgdmFsaWRhdGVPbkJsdXI6IHRydWUsXG4gICAgb25TdWJtaXQ6ICh2YWx1ZXMpID0+IHtcbiAgICAgIGhhbmRsZVN1Ym1pdCh2YWx1ZXMpO1xuICAgIH0sXG4gIH0pO1xuXG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gKCkgPT4ge1xuICAgIGlmIChsb2NhdGlvbi5rZXkpIHtcbiAgICAgIGhpc3RvcnkuZ29CYWNrKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGhpc3RvcnkucHVzaChcbiAgICAgICAgdXJscyh7IGxvY2FsZSwgd2F0ZXJBdXRob3JpdHlJZCB9KS5zYW1wbGluZ3NQYWdlLnNhbXBsaW5nc0xpc3RSb3V0ZS51cmwsXG4gICAgICApO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVTdWJtaXQgPSAodmFsdWVzKSA9PiB7XG4gICAgc2V0U2F2aW5nTXNnKGkxOG4udCgnYnV0dG9ucy5zYXZpbmcnKSk7XG4gICAgdmFsdWVzLnBpY3R1cmVzX2F0dHJpYnV0ZXMgPSBwaG90b3M7XG4gICAgaWYgKHZhbHVlcy5jYW5jZWxlZF9ieV9pZCAmJiBpc0NhbmNlbGxlZExheW91dChzYW1wbGluZ1Byb3BlcnRpZXMpKVxuICAgICAgdmFsdWVzLmNhbmNlbGVkX2J5X2lkID0gdXNlckluZm8udXNlcl9pZDtcbiAgICBjb25zdCBzYXZlRm9ybURhdGEgPSBmb3JtRGF0YUJ1aWxkZXIodmFsdWVzKTtcbiAgICB1cGRhdGVPckNyZWF0ZShzYXZlRm9ybURhdGEpO1xuICB9O1xuXG4gIGNvbnN0IHNldE9yaWdpbmFsU2F2ZU1lc3NhZ2VXaXRoVGltZW91dCA9ICgpID0+IHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMuc2F2ZScpKTtcbiAgICB9LCAzMDAwKTtcbiAgfTtcblxuICBjb25zdCBmb3JtRGF0YUJ1aWxkZXIgPSAodmFsdWVzKSA9PiB7XG4gICAgY29uc3QgZm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiB2YWx1ZXMpIHtcbiAgICAgIGlmIChrZXkgIT09ICdwaWN0dXJlc19hdHRyaWJ1dGVzJykge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHZhbHVlc1trZXldID09PSBudWxsID8gJycgOiB2YWx1ZXNba2V5XTtcbiAgICAgICAgZm9ybURhdGEuYXBwZW5kKGBzYW1wbGluZ1ske2tleX1dYCwgdmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgICBsZXQgdW5pcXVlUGhvdG9zVG9EZWxldGUgPSBbLi4ubmV3IFNldChwaG90b3NUb0RlbGV0ZSldO1xuICAgIHVuaXF1ZVBob3Rvc1RvRGVsZXRlLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgdW5pcXVlUGhvdG9zVG9EZWxldGUuZm9yRWFjaCgoaWQsIGluZGV4KSA9PiB7XG4gICAgICAgIGZvcm1EYXRhLmFwcGVuZChcbiAgICAgICAgICBgc2FtcGxpbmdbcGljdHVyZXNfYXR0cmlidXRlc11bJHtpbmRleH1dW2lkXWAsXG4gICAgICAgICAgSlNPTi5zdHJpbmdpZnkoaWQpLFxuICAgICAgICApO1xuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoXG4gICAgICAgICAgYHNhbXBsaW5nW3BpY3R1cmVzX2F0dHJpYnV0ZXNdWyR7aW5kZXh9XVtfZGVzdHJveV1gLFxuICAgICAgICAgICd0cnVlJyxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgIHJldHVybiBmb3JtRGF0YTtcbiAgfTtcblxuICBjb25zdCB1cGRhdGVPckNyZWF0ZSA9IGFzeW5jIChmb3JtRGF0YSkgPT4ge1xuICAgIGNvbnN0IHVwZGF0ZU9yQ3JlYXRlU3VjY2VzcyA9IChtc2cpID0+IHtcbiAgICAgIHNldFNhdmluZ01zZyhpMThuLnQobXNnKSk7XG4gICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQodHJ1ZSk7XG4gICAgICBzZXRPcmlnaW5hbFNhdmVNZXNzYWdlV2l0aFRpbWVvdXQoKTtcbiAgICAgIGhhbmRsZUNsb3NlKCk7XG4gICAgfTtcblxuICAgIGNvbnN0IHNhbXBsaW5nSUQgPSBzYW1wbGluZ1Byb3BlcnRpZXM/LnNhbXBsaW5nPy5pZDtcbiAgICBpZiAoc2FtcGxpbmdJRCA9PT0gbnVsbCkge1xuICAgICAgLy8gY3JlYXRlXG4gICAgICBmb3JtRGF0YS5hcHBlbmQoYHNhbXBsaW5nW2RhdGVdYCwgY29sbGVjdGlvblRpbWUpO1xuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgYXhpb3MucG9zdChcbiAgICAgICAgICB1cmxzKHtcbiAgICAgICAgICAgIHdhdGVyQXV0aG9yaXR5SWQ6IHdhdGVyQXV0aG9yaXR5SWQsXG4gICAgICAgICAgfSkuc2FtcGxpbmdQcm9wZXJ0aWVzLmNyZWF0ZVNhbXBsaW5nLnVybCxcbiAgICAgICAgICBmb3JtRGF0YSxcbiAgICAgICAgKTtcbiAgICAgICAgdXBkYXRlT3JDcmVhdGVTdWNjZXNzKCdidXR0b25zLmNyZWF0ZWQnKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgc2V0U2F2aW5nTXNnKGkxOG4udCgnYnV0dG9ucy5lcnJvcicpKTtcbiAgICAgICAgc2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0KCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChwYWdlVHlwZS5jdXJyZW50ID09PSAncmV2ZXJ0X2NhbmNlbCcpIHtcbiAgICAgICAgZm9ybURhdGEuYXBwZW5kKGBzYW1wbGluZ1tjb2xsZWN0aW9uX3RpbWVdYCwgY29sbGVjdGlvblRpbWUpO1xuICAgICAgfVxuICAgICAgLy8gdXBkYXRlXG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCBheGlvcy5wdXQoXG4gICAgICAgICAgdXJscyh7IHNhbXBsaW5nSWQ6IHNhbXBsaW5nSUQsIHdhdGVyQXV0aG9yaXR5SWQ6IHdhdGVyQXV0aG9yaXR5SWQgfSlcbiAgICAgICAgICAgIC5zYW1wbGluZ1Byb3BlcnRpZXMudXBkYXRlU2FtcGxpbmcudXJsLFxuICAgICAgICAgIGZvcm1EYXRhLFxuICAgICAgICApO1xuICAgICAgICB1cGRhdGVPckNyZWF0ZVN1Y2Nlc3MoJ2J1dHRvbnMudXBkYXRlZCcpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBzZXRTYXZpbmdNc2coaTE4bi50KCdidXR0b25zLmVycm9yJykpO1xuICAgICAgICBzZXRPcmlnaW5hbFNhdmVNZXNzYWdlV2l0aFRpbWVvdXQoKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZGV0ZWN0UGFnZVR5cGUgPSAoaXNTYW1wbGluZ0NhbmNlbGxlZCwgb3ApID0+IHtcbiAgICBjb25zdCBlZGl0UGFnZVZhbHVlID0gaXNTYW1wbGluZ0NhbmNlbGxlZCA/ICdjYW5jZWwnIDogJ2NvbGxlY3QnO1xuICAgIGlmIChvcCA9PT0gJ2VkaXQnKSB7XG4gICAgICByZXR1cm4gZWRpdFBhZ2VWYWx1ZTtcbiAgICB9IGVsc2UgaWYgKG9wID09PSBDT0xMRUNUX1NBTVBMSU5HX09QKSB7XG4gICAgICByZXR1cm4gJ2NvbGxlY3QnO1xuICAgIH0gZWxzZSBpZiAob3AgPT09IENBTkNFTF9TQU1QTElOR19PUCkge1xuICAgICAgcmV0dXJuICdjYW5jZWwnO1xuICAgIH0gZWxzZSBpZiAob3AgPT09IFJFVkVSVF9DQU5DRUxMQVRJT04pIHtcbiAgICAgIHJldHVybiAncmV2ZXJ0X2NhbmNlbCc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBlZGl0UGFnZVZhbHVlO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBkZXRlcm1pbmVDb2xsZWN0aW9uVGltZSA9IChzZXJ2ZXJDb2xsZWN0aW9uVGltZSwgb3ApID0+IHtcbiAgICBjb25zdCBjdXJyZW50VGltZSA9IG5ldyBEYXRlKCk7XG4gICAgY29uc3Qgc2VydmVyVGltZSA9IHNlcnZlckNvbGxlY3Rpb25UaW1lXG4gICAgICA/IG5ldyBEYXRlKHNlcnZlckNvbGxlY3Rpb25UaW1lKVxuICAgICAgOiBjdXJyZW50VGltZTtcbiAgICBjb25zdCBlZGl0UGFnZVZhbHVlID0gc2VydmVyQ29sbGVjdGlvblRpbWUgPyBzZXJ2ZXJUaW1lIDogY3VycmVudFRpbWU7XG4gICAgaWYgKG9wID09PSAnZWRpdCcpIHtcbiAgICAgIHJldHVybiBlZGl0UGFnZVZhbHVlO1xuICAgIH0gZWxzZSBpZiAob3AgPT09IENPTExFQ1RfU0FNUExJTkdfT1ApIHtcbiAgICAgIHJldHVybiBjdXJyZW50VGltZTtcbiAgICB9IGVsc2UgaWYgKFtDQU5DRUxfU0FNUExJTkdfT1AsIFJFVkVSVF9DQU5DRUxMQVRJT05dLmluY2x1ZGVzKG9wKSkge1xuICAgICAgcmV0dXJuIHNlcnZlclRpbWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBlZGl0UGFnZVZhbHVlO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBnZXRVcmxRdWVyeU9wID0gKCkgPT4ge1xuICAgIGxldCBvcCA9IHF1ZXJ5LmdldCgnb3AnKTtcbiAgICAvLyBpZiBub3QgcHJlc2VudCB0aGVuIGRlZmF1bHQgb3AgaXMgJ2NvbGxlY3RpbmcnXG4gICAgaWYgKFt1bmRlZmluZWQsIG51bGwsICcnXS5pbmNsdWRlcyhvcCkpIHtcbiAgICAgIHJldHVybiBDT0xMRUNUX1NBTVBMSU5HX09QO1xuICAgIH1cbiAgICByZXR1cm4gb3A7XG4gIH07XG5cbiAgaWYgKCFzYW1wbGluZ1BsYW4gfHwgIXNhbXBsaW5nUHJvcGVydGllcykge1xuICAgIHJldHVybiA8U3Bpbm5lciAvPjtcbiAgfVxuXG4gIGlmIChzYW1wbGluZ1Byb3BlcnRpZXMuaXNfcHVtcF9pbl9wcm9ncmVzcykge1xuICAgIHJldHVybiA8U2FtcGxlckluUHJvY2VzcyBoYW5kbGVDbG9zZT17aGFuZGxlQ2xvc2V9IC8+O1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8Zm9ybSBvblN1Ym1pdD17Zm9ybWlrLmhhbmRsZVN1Ym1pdH0+XG4gICAgICA8TGF5b3V0PlxuICAgICAgICA8U2FtcGxpbmdQcm9wZXJ0aWVzU3R5bGU+XG4gICAgICAgICAgeyFpc01vYmlsZSAmJiAoXG4gICAgICAgICAgICA8U2FtcGxpbmdQcm9wZXJ0aWVzSGVhZFxuICAgICAgICAgICAgICBzYW1wbGluZ1Byb3BlcnRpZXM9e3NhbXBsaW5nUHJvcGVydGllc31cbiAgICAgICAgICAgICAgc2FtcGxpbmc9e3NhbXBsaW5nUGxhbn1cbiAgICAgICAgICAgICAgZm9ybWlrPXtmb3JtaWt9XG4gICAgICAgICAgICAgIHBhZ2VUeXBlPXtwYWdlVHlwZS5jdXJyZW50fVxuICAgICAgICAgICAgICBjb2xsZWN0aW9uVGltZT17Y29sbGVjdGlvblRpbWV9XG4gICAgICAgICAgICAgIHNldENvbGxlY3Rpb25UaW1lPXtzZXRDb2xsZWN0aW9uVGltZX1cbiAgICAgICAgICAgICAgc2V0U2FtcGxpbmdVcGRhdGVkPXtzZXRTYW1wbGluZ1VwZGF0ZWR9XG4gICAgICAgICAgICAgIGlzRGF0ZVBpY2tlckRpc2FibGVkPXtpc1Byb3BlcnRpZXNQYWdlKHBhZ2VUeXBlKX1cbiAgICAgICAgICAgICAgZGF0ZUZvcm1hdD17ZGF0ZUZvcm1hdH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cblxuICAgICAgICAgIHtpc01vYmlsZSAmJiAoXG4gICAgICAgICAgICA8U2FtcGxpbmdQcm9wZXJ0aWVzSGVhZE1vYmlsZVxuICAgICAgICAgICAgICBzYW1wbGluZ1Byb3BlcnRpZXM9e3NhbXBsaW5nUHJvcGVydGllc31cbiAgICAgICAgICAgICAgc2FtcGxpbmc9e3NhbXBsaW5nUGxhbn1cbiAgICAgICAgICAgICAgZm9ybWlrPXtmb3JtaWt9XG4gICAgICAgICAgICAgIHBhZ2VUeXBlPXtwYWdlVHlwZS5jdXJyZW50fVxuICAgICAgICAgICAgICBjb2xsZWN0aW9uVGltZT17Y29sbGVjdGlvblRpbWV9XG4gICAgICAgICAgICAgIHNldENvbGxlY3Rpb25UaW1lPXtzZXRDb2xsZWN0aW9uVGltZX1cbiAgICAgICAgICAgICAgc2V0U2FtcGxpbmdVcGRhdGVkPXtzZXRTYW1wbGluZ1VwZGF0ZWR9XG4gICAgICAgICAgICAgIGlzRGF0ZVBpY2tlckRpc2FibGVkPXtpc1Byb3BlcnRpZXNQYWdlKHBhZ2VUeXBlKX1cbiAgICAgICAgICAgICAgZGF0ZUZvcm1hdD17ZGF0ZUZvcm1hdH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cblxuICAgICAgICAgIHtzYW1wbGluZ1Byb3BlcnRpZXMgJiYgcGFnZVR5cGUgJiYgKFxuICAgICAgICAgICAgPFNhbXBsaW5nUHJvcGVydGllc0Zvcm1cbiAgICAgICAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzPXtzYW1wbGluZ1Byb3BlcnRpZXN9XG4gICAgICAgICAgICAgIHNhbXBsaW5nPXtzYW1wbGluZ1BsYW59XG4gICAgICAgICAgICAgIHBhZ2VUeXBlPXtwYWdlVHlwZS5jdXJyZW50fVxuICAgICAgICAgICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQ9e3NldFNhbXBsaW5nVXBkYXRlZH1cbiAgICAgICAgICAgICAgc2F2aW5nTXNnPXtzYXZpbmdNc2d9XG4gICAgICAgICAgICAgIGhhbmRsZUNsb3NlPXtoYW5kbGVDbG9zZX1cbiAgICAgICAgICAgICAgc2V0UGhvdG9zVG9EZWxldGU9e3NldFBob3Rvc1RvRGVsZXRlfVxuICAgICAgICAgICAgICBzZXRQaG90b3M9e3NldFBob3Rvc31cbiAgICAgICAgICAgICAgcGhvdG9zPXtwaG90b3N9XG4gICAgICAgICAgICAgIGZvcm1paz17Zm9ybWlrfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICA8L1NhbXBsaW5nUHJvcGVydGllc1N0eWxlPlxuICAgICAgPC9MYXlvdXQ+XG4gICAgPC9mb3JtPlxuICApO1xufTtcbiJdfQ==
|
package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js
CHANGED
|
@@ -49,9 +49,9 @@ var UtilityDashboardMapContainer = function UtilityDashboardMapContainer(props)
|
|
|
49
49
|
events: events_data.items,
|
|
50
50
|
focusedEvent: events_data.focusedEvent,
|
|
51
51
|
focusedEventPaths: events_data.focusedEventPaths,
|
|
52
|
-
includeUnmonitoredPoints:
|
|
52
|
+
includeUnmonitoredPoints: false
|
|
53
53
|
}, props));
|
|
54
54
|
};
|
|
55
55
|
|
|
56
56
|
exports.UtilityDashboardMapContainer = UtilityDashboardMapContainer;
|
|
57
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9VdGlsaXR5RGFzaGJvYXJkUGFnZS9VdGlsaXR5RGFzaGJvYXJkTWFwQ29udGFpbmVyL1V0aWxpdHlEYXNoYm9hcmRNYXBDb250YWluZXIudHN4Il0sIm5hbWVzIjpbIlV0aWxpdHlEYXNoYm9hcmRNYXBDb250YWluZXIiLCJwcm9wcyIsIlJlZHV4U3RhdGUiLCJzdGF0ZSIsImFyZWFzX2RhdGEiLCJnbG9iYWxfZGF0YSIsInBvaW50c19kYXRhIiwiZWRnZXNfZGF0YSIsImV2ZW50c19kYXRhIiwiZGFzaGJvYXJkIiwiZGlzcGF0Y2giLCJ3YXRlckF1dGhvcml0eUlkIiwicGVyaW9kIiwiaXRlbXMiLCJuZXdBcmVhcyIsImZvY3VzZWRFdmVudCIsImZvY3VzZWRFdmVudFBhdGhzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7O0FBRU8sSUFBTUEsNEJBQXlFLEdBQ3BGLFNBRFdBLDRCQUNYLENBQUNDLEtBQUQsRUFBVztBQUNULE1BQU1DLFVBQVUsR0FBRyw2QkFBWSxVQUFDQyxLQUFEO0FBQUEsV0FBV0EsS0FBWDtBQUFBLEdBQVosQ0FBbkI7QUFDQSxNQUNFQyxVQURGLEdBT0lGLFVBUEosQ0FDRUUsVUFERjtBQUFBLE1BRUVDLFdBRkYsR0FPSUgsVUFQSixDQUVFRyxXQUZGO0FBQUEsTUFHRUMsV0FIRixHQU9JSixVQVBKLENBR0VJLFdBSEY7QUFBQSxNQUlFQyxVQUpGLEdBT0lMLFVBUEosQ0FJRUssVUFKRjtBQUFBLE1BS0VDLFdBTEYsR0FPSU4sVUFQSixDQUtFTSxXQUxGO0FBQUEsTUFNRUMsU0FORixHQU9JUCxVQVBKLENBTUVPLFNBTkY7QUFTQSxNQUFNQyxRQUFRLEdBQUcsOEJBQWpCO0FBRUEsd0JBQVUsWUFBTTtBQUNkLFFBQUlMLFdBQVcsQ0FBQ00sZ0JBQWhCLEVBQWtDO0FBQ2hDRCxNQUFBQSxRQUFRLENBQUMsMkJBQVlMLFdBQVcsQ0FBQ00sZ0JBQXhCLENBQUQsQ0FBUjtBQUNBRCxNQUFBQSxRQUFRLENBQUMsMEJBQVdMLFdBQVcsQ0FBQ00sZ0JBQXZCLENBQUQsQ0FBUjtBQUNBRCxNQUFBQSxRQUFRLENBQUMseUJBQVdMLFdBQVcsQ0FBQ00sZ0JBQXZCLEVBQXlDRixTQUFTLENBQUNHLE1BQW5ELENBQUQsQ0FBUjtBQUNEO0FBQ0YsR0FORCxFQU1HLENBQUNQLFdBQVcsQ0FBQ00sZ0JBQWIsQ0FOSDtBQU9BLHNCQUNFLDZCQUFDLFFBQUQsb0JBQ01ULFVBRE47QUFFRSxJQUFBLE1BQU0sRUFBRUksV0FBVyxDQUFDTyxLQUZ0QjtBQUdFLElBQUEsS0FBSyxFQUFFVCxVQUFVLENBQUNVLFFBSHBCO0FBSUUsSUFBQSxXQUFXLEVBQUVULFdBSmY7QUFLRSxJQUFBLEtBQUssRUFBRUUsVUFBVSxDQUFDTSxLQUxwQjtBQU1FLElBQUEsTUFBTSxFQUFFTCxXQUFXLENBQUNLLEtBTnRCO0FBT0UsSUFBQSxZQUFZLEVBQUVMLFdBQVcsQ0FBQ08sWUFQNUI7QUFRRSxJQUFBLGlCQUFpQixFQUFFUCxXQUFXLENBQUNRLGlCQVJqQztBQVNFLElBQUEsd0JBQXdCLEVBQUU7QUFUNUIsS0FVTWYsS0FWTixFQURGO0FBY0QsQ0FuQ0kiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgZmV0Y2hBcmVhcyB9IGZyb20gJ3NyYy9zdG9yZS9hcmVhcy9hY3Rpb25zJztcbmltcG9ydCB7IGZldGNoRWRnZXMgfSBmcm9tICdzcmMvc3RvcmUvZWRnZXMvYWN0aW9ucyc7XG5pbXBvcnQgeyBmZXRjaFBvaW50cyB9IGZyb20gJ3NyYy9zdG9yZS9wb2ludHMvYWN0aW9ucyc7XG5pbXBvcnQgeyBNYXAgfSBmcm9tICdzcmMvV2lkZ2V0cy9NYXAvTWFwJztcbmludGVyZmFjZSBVdGlsaXR5RGFzaGJvYXJkTWFwQ29udGFpbmVyUHJvcHMge31cbmV4cG9ydCBjb25zdCBVdGlsaXR5RGFzaGJvYXJkTWFwQ29udGFpbmVyOiBSZWFjdC5GQzxVdGlsaXR5RGFzaGJvYXJkTWFwQ29udGFpbmVyUHJvcHM+ID1cbiAgKHByb3BzKSA9PiB7XG4gICAgY29uc3QgUmVkdXhTdGF0ZSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUpO1xuICAgIGNvbnN0IHtcbiAgICAgIGFyZWFzX2RhdGEsXG4gICAgICBnbG9iYWxfZGF0YSxcbiAgICAgIHBvaW50c19kYXRhLFxuICAgICAgZWRnZXNfZGF0YSxcbiAgICAgIGV2ZW50c19kYXRhLFxuICAgICAgZGFzaGJvYXJkLFxuICAgIH0gPSBSZWR1eFN0YXRlO1xuXG4gICAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuXG4gICAgdXNlRWZmZWN0KCgpID0+
|
|
57
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9VdGlsaXR5RGFzaGJvYXJkUGFnZS9VdGlsaXR5RGFzaGJvYXJkTWFwQ29udGFpbmVyL1V0aWxpdHlEYXNoYm9hcmRNYXBDb250YWluZXIudHN4Il0sIm5hbWVzIjpbIlV0aWxpdHlEYXNoYm9hcmRNYXBDb250YWluZXIiLCJwcm9wcyIsIlJlZHV4U3RhdGUiLCJzdGF0ZSIsImFyZWFzX2RhdGEiLCJnbG9iYWxfZGF0YSIsInBvaW50c19kYXRhIiwiZWRnZXNfZGF0YSIsImV2ZW50c19kYXRhIiwiZGFzaGJvYXJkIiwiZGlzcGF0Y2giLCJ3YXRlckF1dGhvcml0eUlkIiwicGVyaW9kIiwiaXRlbXMiLCJuZXdBcmVhcyIsImZvY3VzZWRFdmVudCIsImZvY3VzZWRFdmVudFBhdGhzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7O0FBRU8sSUFBTUEsNEJBQXlFLEdBQ3BGLFNBRFdBLDRCQUNYLENBQUNDLEtBQUQsRUFBVztBQUNULE1BQU1DLFVBQVUsR0FBRyw2QkFBWSxVQUFDQyxLQUFEO0FBQUEsV0FBV0EsS0FBWDtBQUFBLEdBQVosQ0FBbkI7QUFDQSxNQUNFQyxVQURGLEdBT0lGLFVBUEosQ0FDRUUsVUFERjtBQUFBLE1BRUVDLFdBRkYsR0FPSUgsVUFQSixDQUVFRyxXQUZGO0FBQUEsTUFHRUMsV0FIRixHQU9JSixVQVBKLENBR0VJLFdBSEY7QUFBQSxNQUlFQyxVQUpGLEdBT0lMLFVBUEosQ0FJRUssVUFKRjtBQUFBLE1BS0VDLFdBTEYsR0FPSU4sVUFQSixDQUtFTSxXQUxGO0FBQUEsTUFNRUMsU0FORixHQU9JUCxVQVBKLENBTUVPLFNBTkY7QUFTQSxNQUFNQyxRQUFRLEdBQUcsOEJBQWpCO0FBRUEsd0JBQVUsWUFBTTtBQUNkLFFBQUlMLFdBQVcsQ0FBQ00sZ0JBQWhCLEVBQWtDO0FBQ2hDRCxNQUFBQSxRQUFRLENBQUMsMkJBQVlMLFdBQVcsQ0FBQ00sZ0JBQXhCLENBQUQsQ0FBUjtBQUNBRCxNQUFBQSxRQUFRLENBQUMsMEJBQVdMLFdBQVcsQ0FBQ00sZ0JBQXZCLENBQUQsQ0FBUjtBQUNBRCxNQUFBQSxRQUFRLENBQUMseUJBQVdMLFdBQVcsQ0FBQ00sZ0JBQXZCLEVBQXlDRixTQUFTLENBQUNHLE1BQW5ELENBQUQsQ0FBUjtBQUNEO0FBQ0YsR0FORCxFQU1HLENBQUNQLFdBQVcsQ0FBQ00sZ0JBQWIsQ0FOSDtBQU9BLHNCQUNFLDZCQUFDLFFBQUQsb0JBQ01ULFVBRE47QUFFRSxJQUFBLE1BQU0sRUFBRUksV0FBVyxDQUFDTyxLQUZ0QjtBQUdFLElBQUEsS0FBSyxFQUFFVCxVQUFVLENBQUNVLFFBSHBCO0FBSUUsSUFBQSxXQUFXLEVBQUVULFdBSmY7QUFLRSxJQUFBLEtBQUssRUFBRUUsVUFBVSxDQUFDTSxLQUxwQjtBQU1FLElBQUEsTUFBTSxFQUFFTCxXQUFXLENBQUNLLEtBTnRCO0FBT0UsSUFBQSxZQUFZLEVBQUVMLFdBQVcsQ0FBQ08sWUFQNUI7QUFRRSxJQUFBLGlCQUFpQixFQUFFUCxXQUFXLENBQUNRLGlCQVJqQztBQVNFLElBQUEsd0JBQXdCLEVBQUU7QUFUNUIsS0FVTWYsS0FWTixFQURGO0FBY0QsQ0FuQ0kiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgZmV0Y2hBcmVhcyB9IGZyb20gJ3NyYy9zdG9yZS9hcmVhcy9hY3Rpb25zJztcbmltcG9ydCB7IGZldGNoRWRnZXMgfSBmcm9tICdzcmMvc3RvcmUvZWRnZXMvYWN0aW9ucyc7XG5pbXBvcnQgeyBmZXRjaFBvaW50cyB9IGZyb20gJ3NyYy9zdG9yZS9wb2ludHMvYWN0aW9ucyc7XG5pbXBvcnQgeyBNYXAgfSBmcm9tICdzcmMvV2lkZ2V0cy9NYXAvTWFwJztcbmludGVyZmFjZSBVdGlsaXR5RGFzaGJvYXJkTWFwQ29udGFpbmVyUHJvcHMge31cbmV4cG9ydCBjb25zdCBVdGlsaXR5RGFzaGJvYXJkTWFwQ29udGFpbmVyOiBSZWFjdC5GQzxVdGlsaXR5RGFzaGJvYXJkTWFwQ29udGFpbmVyUHJvcHM+ID1cbiAgKHByb3BzKSA9PiB7XG4gICAgY29uc3QgUmVkdXhTdGF0ZSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUpO1xuICAgIGNvbnN0IHtcbiAgICAgIGFyZWFzX2RhdGEsXG4gICAgICBnbG9iYWxfZGF0YSxcbiAgICAgIHBvaW50c19kYXRhLFxuICAgICAgZWRnZXNfZGF0YSxcbiAgICAgIGV2ZW50c19kYXRhLFxuICAgICAgZGFzaGJvYXJkLFxuICAgIH0gPSBSZWR1eFN0YXRlO1xuXG4gICAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgIGlmIChnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSB7XG4gICAgICAgIGRpc3BhdGNoKGZldGNoUG9pbnRzKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpKTtcbiAgICAgICAgZGlzcGF0Y2goZmV0Y2hFZGdlcyhnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSk7XG4gICAgICAgIGRpc3BhdGNoKGZldGNoQXJlYXMoZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCwgZGFzaGJvYXJkLnBlcmlvZCkpO1xuICAgICAgfVxuICAgIH0sIFtnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkXSk7XG4gICAgcmV0dXJuIChcbiAgICAgIDxNYXBcbiAgICAgICAgey4uLlJlZHV4U3RhdGV9XG4gICAgICAgIHBvaW50cz17cG9pbnRzX2RhdGEuaXRlbXN9XG4gICAgICAgIGFyZWFzPXthcmVhc19kYXRhLm5ld0FyZWFzfVxuICAgICAgICBnbG9iYWxfZGF0YT17Z2xvYmFsX2RhdGF9XG4gICAgICAgIGVkZ2VzPXtlZGdlc19kYXRhLml0ZW1zfVxuICAgICAgICBldmVudHM9e2V2ZW50c19kYXRhLml0ZW1zfVxuICAgICAgICBmb2N1c2VkRXZlbnQ9e2V2ZW50c19kYXRhLmZvY3VzZWRFdmVudH1cbiAgICAgICAgZm9jdXNlZEV2ZW50UGF0aHM9e2V2ZW50c19kYXRhLmZvY3VzZWRFdmVudFBhdGhzfVxuICAgICAgICBpbmNsdWRlVW5tb25pdG9yZWRQb2ludHM9e2ZhbHNlfVxuICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAvPlxuICAgICk7XG4gIH07XG4iXX0=
|
|
@@ -106,11 +106,12 @@ var WbeDashboardPage = function WbeDashboardPage() {
|
|
|
106
106
|
var query = (0, _useQueryURL.default)();
|
|
107
107
|
|
|
108
108
|
var getPathogen = function getPathogen() {
|
|
109
|
-
return query.get('pathogen') || '
|
|
109
|
+
return query.get('pathogen') || '';
|
|
110
110
|
};
|
|
111
111
|
|
|
112
|
-
var pathogens = (0, _reactRedux.useSelector)(function (
|
|
113
|
-
|
|
112
|
+
var pathogens = (0, _reactRedux.useSelector)(function (_ref) {
|
|
113
|
+
var permissions = _ref.permissions;
|
|
114
|
+
return permissions.pathogens;
|
|
114
115
|
});
|
|
115
116
|
|
|
116
117
|
var _useState = (0, _react.useState)([]),
|
|
@@ -118,35 +119,37 @@ var WbeDashboardPage = function WbeDashboardPage() {
|
|
|
118
119
|
currentData = _useState2[0],
|
|
119
120
|
setCurrentData = _useState2[1];
|
|
120
121
|
|
|
121
|
-
var _useState3 = (0, _react.useState)(
|
|
122
|
+
var _useState3 = (0, _react.useState)(pathogens.find(function (item) {
|
|
123
|
+
return item.toLowerCase() === getPathogen().toLowerCase();
|
|
124
|
+
}) || ''),
|
|
122
125
|
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
123
|
-
|
|
124
|
-
|
|
126
|
+
selectedPathogen = _useState4[0],
|
|
127
|
+
setSelectedPathogen = _useState4[1];
|
|
125
128
|
|
|
126
129
|
var _useState5 = (0, _react.useState)([]),
|
|
127
130
|
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
128
|
-
|
|
129
|
-
|
|
131
|
+
mapAreas = _useState6[0],
|
|
132
|
+
setMapAreas = _useState6[1];
|
|
130
133
|
|
|
131
134
|
var _useState7 = (0, _react.useState)([]),
|
|
132
135
|
_useState8 = (0, _slicedToArray2.default)(_useState7, 2),
|
|
133
|
-
|
|
134
|
-
|
|
136
|
+
mapZoom = _useState8[0],
|
|
137
|
+
setMapZoom = _useState8[1];
|
|
135
138
|
|
|
136
|
-
var _useState9 = (0, _react.useState)(
|
|
139
|
+
var _useState9 = (0, _react.useState)([]),
|
|
137
140
|
_useState10 = (0, _slicedToArray2.default)(_useState9, 2),
|
|
138
|
-
|
|
139
|
-
|
|
141
|
+
rows = _useState10[0],
|
|
142
|
+
setRows = _useState10[1];
|
|
140
143
|
|
|
141
|
-
var _useState11 = (0, _react.useState)(
|
|
144
|
+
var _useState11 = (0, _react.useState)(DEFAULT_TABS),
|
|
142
145
|
_useState12 = (0, _slicedToArray2.default)(_useState11, 2),
|
|
143
|
-
|
|
144
|
-
|
|
146
|
+
tabs = _useState12[0],
|
|
147
|
+
setTabs = _useState12[1];
|
|
145
148
|
|
|
146
|
-
var _useState13 = (0, _react.useState)(
|
|
149
|
+
var _useState13 = (0, _react.useState)(tabs[0]),
|
|
147
150
|
_useState14 = (0, _slicedToArray2.default)(_useState13, 2),
|
|
148
|
-
|
|
149
|
-
|
|
151
|
+
selectedTab = _useState14[0],
|
|
152
|
+
setSelectedTab = _useState14[1];
|
|
150
153
|
|
|
151
154
|
var _useKandoFetch = (0, _useKandoFetch2.default)(fetchUrl(convertTabNameToParam(selectedTab))),
|
|
152
155
|
data = _useKandoFetch.data,
|
|
@@ -409,16 +412,10 @@ var WbeDashboardPage = function WbeDashboardPage() {
|
|
|
409
412
|
initializeComponent();
|
|
410
413
|
}
|
|
411
414
|
}, [isFetching, selectedPathogen, data]);
|
|
412
|
-
|
|
413
|
-
return item.toLowerCase() === selectedPathogen.toLowerCase();
|
|
414
|
-
});
|
|
415
|
-
|
|
416
|
-
var dropDownTitle = pathogenTitle || _i18n.default.t('components.wbe_dashboard.pathogen_not_found');
|
|
417
|
-
|
|
418
|
-
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(Content, null, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("h1", null, "".concat(_i18n.default.t('components.wbe_dashboard.table_name'), " (").concat(pathogenTitle || getPathogen(), ")")), /*#__PURE__*/_react.default.createElement(ActionsContainer, null, pathogens.length > 1 && /*#__PURE__*/_react.default.createElement(_DropdownButton.default, {
|
|
415
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(Content, null, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("h1", null, "".concat(_i18n.default.t('components.wbe_dashboard.table_name'), " (").concat(selectedPathogen || getPathogen(), ")")), /*#__PURE__*/_react.default.createElement(ActionsContainer, null, pathogens.length > 1 && /*#__PURE__*/_react.default.createElement(_DropdownButton.default, {
|
|
419
416
|
id: "dropdown-basic-button",
|
|
420
417
|
className: 'button button--sort',
|
|
421
|
-
title:
|
|
418
|
+
title: selectedPathogen + ' ',
|
|
422
419
|
variant: "secondary"
|
|
423
420
|
}, pathogens.map(function (pathogen) {
|
|
424
421
|
return /*#__PURE__*/_react.default.createElement(_Dropdown.default.Item, {
|
|
@@ -501,4 +498,4 @@ var Content = _styledComponents.default.div.withConfig({
|
|
|
501
498
|
displayName: "WbeDashboardPage__Content",
|
|
502
499
|
componentId: "sc-14f81cv-5"
|
|
503
500
|
})(["@media (max-width:576px){padding:20px;}h1{font-weight:bold;}padding:60px 60px;"]);
|
|
504
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9XYmVEYXNoYm9hcmQvV2JlRGFzaGJvYXJkUGFnZS50c3giXSwibmFtZXMiOlsiVEFCTEVfUk9XU19QRVJfUEFHRSIsIk1BUEJPWF9XQkVfREFTSEJPQVJEX1NUWUxFIiwiV0JFSXNyYWVsSWQiLCJXYmVEYXNoYm9hcmRQYWdlIiwiZ2V0V0FJZCIsInF1ZXJ5IiwiZ2V0IiwiZmV0Y2hVcmwiLCJmaXJzdFBhcmFtIiwic2VsZWN0ZWRQYXRob2dlbiIsIkRFRkFVTFRfVEFCUyIsImkxOG4iLCJ0IiwiY29udmVydFRhYk5hbWVUb1BhcmFtIiwidGFiX25hbWUiLCJnZXRQYXRob2dlbiIsInBhdGhvZ2VucyIsInN0YXRlIiwicGVybWlzc2lvbnMiLCJjdXJyZW50RGF0YSIsInNldEN1cnJlbnREYXRhIiwibWFwQXJlYXMiLCJzZXRNYXBBcmVhcyIsIm1hcFpvb20iLCJzZXRNYXBab29tIiwicm93cyIsInNldFJvd3MiLCJ0YWJzIiwic2V0VGFicyIsInNlbGVjdGVkVGFiIiwic2V0U2VsZWN0ZWRUYWIiLCJzZXRTZWxlY3RlZFBhdGhvZ2VuIiwiZGF0YSIsImlzRmV0Y2hpbmciLCJzZXRGZXRjaGluZyIsImRpc3BhdGNoIiwibmF2Q29udGV4dCIsIm5hdl9jb250ZXh0X2RhdGEiLCJnbG9iYWxEYXRhIiwiZ2xvYmFsX2RhdGEiLCJpc1J0bCIsImxvY2FsZSIsImNvbG9yRm9yUm93Iiwicm93IiwicXVhbGl0eSIsInNhbXBsZV9hY3RpdmUiLCJpc0luZmVjdGVkIiwibnZsIiwiY29sdW1ucyIsIlJlYWN0IiwidXNlTWVtbyIsIm5hbWUiLCJzZWxlY3RvciIsInNvcnRhYmxlIiwiY2VsbCIsImhhbmRsZUFyZWFDbGljayIsImhhc19jaGlsZHJlbiIsIm52bF9jaGFuZ2UiLCJkaXJlY3Rpb24iLCJjb2xvciIsIm1hcmdpbiIsImZhQ2hldnJvblVwIiwiZmFDaGV2cm9uRG93biIsImxhc3RfdXBkYXRlZCIsIkRhdGUiLCJ0b0xvY2FsZURhdGVTdHJpbmciLCJpZCIsInBvcHVsYXRpb24iLCJwYXJzZUludCIsImluaXRpYWxpemVNYXBBcmVhcyIsImFyZWFzIiwibWFwcGVkV2l0aENvbG9yIiwibWFwIiwiYSIsIndiZV9kYXNoYm9hcmRfbmFtZSIsInNob3dDb2xvck9ubHlJbkJvcmRlcnMiLCJ0aGVtZSIsImNvbG9yU2NoZW1lIiwibmF0dXJhbCIsIm42MCIsIlIxMDAiLCJHMTAwIiwiem9vbVRvQXJlYSIsImFyZWEiLCJzaGFwZV9kYXRhIiwidW5kZWZpbmVkIiwiem9vbUFsbEFyZWFzIiwic2hhcGVEYXRhIiwiZGF0dW0iLCJoaXN0b3J5Iiwid2F0ZXJBdXRob3JpdHlJZCIsImRpciIsIkRpcmVjdGlvbiIsIlJUTCIsIkxUUiIsImZpbHRlclJlc3VsdHNBbmRTZXRSb3dzIiwidGV4dCIsInJlc3VsdHMiLCJmaWx0ZXIiLCJlbCIsInRvTG93ZXJDYXNlIiwiaW5jbHVkZXMiLCJoYW5kbGVPblJvd0V4cGFuZCIsImV4cGFuZGVkIiwid2F0ZXJBdXRob3JpdHlOYW1lIiwiaGFuZGxlU2VsZWN0UGF0aG9nZW5DbGljayIsInBhdGhvZ2VuIiwidXRpbGl0eV9uYW1lIiwicHVzaCIsImZldGNoRm9yVGFiU2VsZWN0aW9uIiwidGFiIiwiYXhpb3MiLCJ0aGVuIiwicmVzcG9uc2UiLCJyZXNwb25zZURhdGEiLCJoYW5kbGVUYWJTZWxlY3Rpb25DbGljayIsImluaXRpYWxpemVEcmlsbGVkQXJlYSIsImluaXRpYWxpemVDb21wb25lbnQiLCJwYXRob2dlblRpdGxlIiwiZmluZCIsIml0ZW0iLCJkcm9wRG93blRpdGxlIiwibGVuZ3RoIiwidGV4dEFsaWduIiwiRXhwYW5kZWRDb21wb25lbnQiLCJSb3dOYW1lIiwic3R5bGVkIiwiZGl2IiwicCIsIkFjdGlvbnNDb250YWluZXIiLCJGaXJzdFNlY3Rpb24iLCJTZWNvbmRTZWN0aW9uIiwiTWFwVGFibGVDb250YWluZXIiLCJDb250ZW50Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUVBOztBQUNBOzs7Ozs7QUFHQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7O0FBQ0EsSUFBTUEsbUJBQW1CLEdBQUcsRUFBNUI7QUFDQSxJQUFNQywwQkFBMEIsR0FBRywyQkFBbkM7QUFFTyxJQUFNQyxXQUFXLEdBQUcsR0FBcEI7OztBQUNBLElBQU1DLGdCQUFnQixHQUFHLFNBQW5CQSxnQkFBbUIsR0FBTTtBQUNwQyxNQUFNQyxPQUFPLEdBQUcsU0FBVkEsT0FBVSxHQUFNO0FBQ3BCLFdBQU9DLEtBQUssQ0FBQ0MsR0FBTixDQUFVLG9CQUFWLENBQVA7QUFDRCxHQUZEOztBQUdBLE1BQU1DLFFBQVEsR0FBRyxTQUFYQSxRQUFXLENBQUNDLFVBQUQsRUFBZ0I7QUFDL0IsMkNBQWdDQyxnQkFBaEMsY0FBb0RELFVBQXBELGlDQUFxRkosT0FBTyxFQUE1RjtBQUNELEdBRkQ7O0FBR0EsTUFBTU0sWUFBWSxHQUFHLENBQ25CQyxjQUFLQyxDQUFMLENBQU8saUNBQVAsQ0FEbUIsRUFFbkJELGNBQUtDLENBQUwsQ0FBTywwQ0FBUCxDQUZtQixDQUFyQjs7QUFJQSxNQUFNQyxxQkFBcUIsR0FBRyxTQUF4QkEscUJBQXdCLENBQUNDLFFBQUQsRUFBc0I7QUFDbEQsUUFBSUEsUUFBUSxLQUFLSCxjQUFLQyxDQUFMLENBQU8saUNBQVAsQ0FBakIsRUFBNEQ7QUFDMUQsYUFBTyxNQUFQO0FBQ0QsS0FGRCxNQUVPLElBQ0xFLFFBQVEsS0FBS0gsY0FBS0MsQ0FBTCxDQUFPLDBDQUFQLENBRFIsRUFFTDtBQUNBLGFBQU8sV0FBUDtBQUNEOztBQUVELFdBQU8sTUFBUDtBQUNELEdBVkQ7O0FBV0EsTUFBTVAsS0FBSyxHQUFHLDJCQUFkOztBQUNBLE1BQU1VLFdBQVcsR0FBRyxTQUFkQSxXQUFjLEdBQU07QUFDeEIsV0FBT1YsS0FBSyxDQUFDQyxHQUFOLENBQVUsVUFBVixLQUF5QixPQUFoQztBQUNELEdBRkQ7O0FBSUEsTUFBTVUsU0FBUyxHQUFHLDZCQUFZLFVBQUNDLEtBQUQ7QUFBQSxXQUFXQSxLQUFLLENBQUNDLFdBQU4sQ0FBa0JGLFNBQTdCO0FBQUEsR0FBWixDQUFsQjs7QUFFQSxrQkFBc0MscUJBQVMsRUFBVCxDQUF0QztBQUFBO0FBQUEsTUFBT0csV0FBUDtBQUFBLE1BQW9CQyxjQUFwQjs7QUFDQSxtQkFBZ0MscUJBQWdCLEVBQWhCLENBQWhDO0FBQUE7QUFBQSxNQUFPQyxRQUFQO0FBQUEsTUFBaUJDLFdBQWpCOztBQUNBLG1CQUE4QixxQkFBZ0IsRUFBaEIsQ0FBOUI7QUFBQTtBQUFBLE1BQU9DLE9BQVA7QUFBQSxNQUFnQkMsVUFBaEI7O0FBQ0EsbUJBQXdCLHFCQUFjLEVBQWQsQ0FBeEI7QUFBQTtBQUFBLE1BQU9DLElBQVA7QUFBQSxNQUFhQyxPQUFiOztBQUNBLG1CQUF3QixxQkFBbUJoQixZQUFuQixDQUF4QjtBQUFBO0FBQUEsTUFBT2lCLElBQVA7QUFBQSxNQUFhQyxPQUFiOztBQUNBLG9CQUFzQyxxQkFBaUJELElBQUksQ0FBQyxDQUFELENBQXJCLENBQXRDO0FBQUE7QUFBQSxNQUFPRSxXQUFQO0FBQUEsTUFBb0JDLGNBQXBCOztBQUNBLG9CQUFnRCxxQkFDOUNmLFdBQVcsRUFEbUMsQ0FBaEQ7QUFBQTtBQUFBLE1BQU9OLGdCQUFQO0FBQUEsTUFBeUJzQixtQkFBekI7O0FBR0EsdUJBQTBDLDZCQUN4Q3hCLFFBQVEsQ0FBQ00scUJBQXFCLENBQUNnQixXQUFELENBQXRCLENBRGdDLENBQTFDO0FBQUEsTUFBUUcsSUFBUixrQkFBUUEsSUFBUjtBQUFBLE1BQWNDLFVBQWQsa0JBQWNBLFVBQWQ7QUFBQSxNQUEwQkMsV0FBMUIsa0JBQTBCQSxXQUExQjs7QUFJQSxNQUFNQyxRQUFRLEdBQUcsOEJBQWpCO0FBQ0EsTUFBTUMsVUFBVSxHQUFHLDZCQUNqQixVQUFDbkIsS0FBRDtBQUFBLFdBQTBDQSxLQUFLLENBQUNvQixnQkFBTixDQUF1QkQsVUFBakU7QUFBQSxHQURpQixDQUFuQjtBQUdBLE1BQU1FLFVBQVUsR0FBRyw2QkFDakIsVUFBQ3JCLEtBQUQ7QUFBQSxXQUEwQ0EsS0FBSyxDQUFDc0IsV0FBaEQ7QUFBQSxHQURpQixDQUFuQjtBQUdBLE1BQU1DLEtBQWMsR0FBR0osVUFBVSxDQUFDSyxNQUFYLEtBQXNCLElBQXRCLEdBQTZCLElBQTdCLEdBQW9DLEtBQTNEOztBQUNBLE1BQU1DLFdBQVcsR0FBRyxTQUFkQSxXQUFjLENBQUNDLEdBQUQsRUFBUztBQUMzQixRQUFJQyxPQUFKOztBQUNBLFFBQUksQ0FBQ0QsR0FBRyxDQUFDRSxhQUFULEVBQXdCO0FBQ3RCRCxNQUFBQSxPQUFPLEdBQUcsbUJBQVY7QUFDRCxLQUZELE1BRU8sSUFBSUUsVUFBVSxDQUFDSCxHQUFHLENBQUNJLEdBQUwsQ0FBZCxFQUF5QjtBQUM5QkgsTUFBQUEsT0FBTyxHQUFHLFVBQVY7QUFDRCxLQUZNLE1BRUE7QUFDTEEsTUFBQUEsT0FBTyxHQUFHLE9BQVY7QUFDRDs7QUFFRCwrQkFBb0JBLE9BQXBCO0FBQ0QsR0FYRDs7QUFZQSxNQUFNSSxPQUFZLEdBQUdDLGVBQU1DLE9BQU4sQ0FDbkI7QUFBQSxXQUFNLENBQ0o7QUFDRUMsTUFBQUEsSUFBSSxFQUFFeEMsY0FBS0MsQ0FBTCxDQUFPLCtCQUFQLENBRFI7QUFFRXdDLE1BQUFBLFFBQVEsRUFBRSxrQkFBQ1QsR0FBRDtBQUFBLGVBQVNBLEdBQUcsQ0FBQ1EsSUFBYjtBQUFBLE9BRlo7QUFHRUUsTUFBQUEsUUFBUSxFQUFFLElBSFo7QUFJRUMsTUFBQUEsSUFBSSxFQUFFLGNBQUNYLEdBQUQ7QUFBQSw0QkFDSiw2QkFBQyxPQUFEO0FBQVMsVUFBQSxLQUFLLEVBQUVIO0FBQWhCLHdCQUNFO0FBQ0Usc0JBQVMsZ0JBRFg7QUFFRSxVQUFBLFNBQVMscUJBQWNFLFdBQVcsQ0FBQ0MsR0FBRCxDQUF6QixDQUZYO0FBR0UsVUFBQSxPQUFPLEVBQUUsbUJBQU07QUFDYlksWUFBQUEsZUFBZSxDQUFDWixHQUFELENBQWY7QUFDRDtBQUxILHdCQU9FO0FBQUssVUFBQSxTQUFTLEVBQUU7QUFBaEIsd0JBQ0UsMkNBQ0dBLEdBQUcsQ0FBQ2EsWUFBSixpQkFBb0IsNkJBQUMsNkJBQUQsT0FEdkIsRUFFRyxDQUFDYixHQUFHLENBQUNhLFlBQUwsaUJBQXFCLDZCQUFDLHlCQUFELE9BRnhCLENBREYsQ0FQRixlQWFFO0FBQU0sVUFBQSxTQUFTLEVBQUU7QUFBakIsd0JBQ0UsNkJBQUMsaUJBQUQ7QUFBVSxVQUFBLFVBQVUsRUFBRSxDQUF0QjtBQUF5QixVQUFBLGdCQUFnQixFQUFFO0FBQTNDLFdBQ0diLEdBQUcsQ0FBQ1EsSUFEUCxDQURGLENBYkYsQ0FERixDQURJO0FBQUE7QUFKUixLQURJLEVBNkJKO0FBQ0VBLE1BQUFBLElBQUksRUFBRXhDLGNBQUtDLENBQUwsQ0FBTyxvQ0FBUCxDQURSO0FBRUV3QyxNQUFBQSxRQUFRLEVBQUUsa0JBQUNULEdBQUQ7QUFBQSxlQUFTQSxHQUFHLENBQUNJLEdBQWI7QUFBQSxPQUZaO0FBR0VNLE1BQUFBLFFBQVEsRUFBRSxJQUhaO0FBSUVDLE1BQUFBLElBQUksRUFBRSxjQUFDWCxHQUFEO0FBQUEsNEJBQ0o7QUFBSyxzQkFBUztBQUFkLFdBQWdDQSxHQUFHLENBQUNJLEdBQXBDLENBREk7QUFBQTtBQUpSLEtBN0JJLEVBcUNKO0FBQ0VJLE1BQUFBLElBQUksRUFBRXhDLGNBQUtDLENBQUwsQ0FBTyx3REFBUCxDQURSO0FBRUV3QyxNQUFBQSxRQUFRLEVBQUUsa0JBQUNULEdBQUQ7QUFBQSxlQUFTQSxHQUFHLENBQUNjLFVBQWI7QUFBQSxPQUZaO0FBR0VKLE1BQUFBLFFBQVEsRUFBRSxJQUhaO0FBSUVDLE1BQUFBLElBQUksRUFBRSxjQUFDWCxHQUFEO0FBQUEsNEJBQ0o7QUFDRSxzQkFBUyxnQkFEWDtBQUVFLFVBQUEsS0FBSyxFQUFFO0FBQ0xlLFlBQUFBLFNBQVMsRUFBRTtBQUROO0FBRlQsd0JBTUU7QUFBTSxVQUFBLEtBQUssRUFBRTtBQUFFQyxZQUFBQSxLQUFLLEVBQUUsU0FBVDtBQUFvQkMsWUFBQUEsTUFBTSxFQUFFO0FBQTVCO0FBQWIsV0FDR2pCLEdBQUcsQ0FBQ2MsVUFEUCxNQU5GLGVBV0ksNkJBQUMsaUNBQUQ7QUFDRSxVQUFBLElBQUksRUFBRWQsR0FBRyxDQUFDYyxVQUFKLEdBQWlCLENBQWpCLEdBQXFCSSw4QkFBckIsR0FBbUNDO0FBRDNDLFVBWEosQ0FESTtBQUFBO0FBSlIsS0FyQ0ksRUE0REo7QUFDRVgsTUFBQUEsSUFBSSxFQUFFeEMsY0FBS0MsQ0FBTCxDQUFPLHVDQUFQLENBRFI7QUFFRXdDLE1BQUFBLFFBQVEsRUFBRSxjQUZaO0FBR0VDLE1BQUFBLFFBQVEsRUFBRSxrQkFBQ1YsR0FBRDtBQUFBLGVBQVNBLEdBQUcsQ0FBQ29CLFlBQWI7QUFBQSxPQUhaO0FBSUVULE1BQUFBLElBQUksRUFBRSxjQUFDWCxHQUFEO0FBQUEsNEJBQ0o7QUFBSyxzQkFBUztBQUFkLFdBQ0dBLEdBQUcsQ0FBQ29CLFlBQUosS0FBcUIsSUFBckIsR0FDRyxHQURILEdBRUcsSUFBSUMsSUFBSixDQUFTckIsR0FBRyxDQUFDb0IsWUFBYixFQUEyQkUsa0JBQTNCLENBQThDLE9BQTlDLENBSE4sQ0FESTtBQUFBO0FBSlIsS0E1REksRUF3RUo7QUFDRWQsTUFBQUEsSUFBSSxFQUFFeEMsY0FBS0MsQ0FBTCxDQUFPLHNDQUFQLENBRFI7QUFFRXdDLE1BQUFBLFFBQVEsRUFBRSxhQUZaO0FBR0VDLE1BQUFBLFFBQVEsRUFBRSxJQUhaO0FBSUVDLE1BQUFBLElBQUksRUFBRSxjQUFDWCxHQUFEO0FBQUEsNEJBQ0o7QUFBSyxzQkFBUztBQUFkLHdCQUNFLDZCQUFDLDBCQUFEO0FBQ0UsVUFBQSxHQUFHLEVBQUVBLEdBQUcsQ0FBQ3VCLEVBRFg7QUFFRSxVQUFBLEdBQUcsRUFBRXZCLEdBRlA7QUFHRSxVQUFBLGtCQUFrQixFQUFFdkMsT0FBTyxFQUg3QjtBQUlFLFVBQUEsUUFBUSxFQUFFSztBQUpaLFVBREYsQ0FESTtBQUFBO0FBSlIsS0F4RUksRUF1Rko7QUFDRTBDLE1BQUFBLElBQUksRUFBRXhDLGNBQUtDLENBQUwsQ0FBTyxxQ0FBUCxDQURSO0FBRUV3QyxNQUFBQSxRQUFRLEVBQUUsa0JBQUNULEdBQUQ7QUFBQSxlQUFTQSxHQUFHLENBQUN3QixVQUFiO0FBQUEsT0FGWjtBQUdFZCxNQUFBQSxRQUFRLEVBQUUsSUFIWjtBQUlFQyxNQUFBQSxJQUFJLEVBQUUsY0FBQ1gsR0FBRDtBQUFBLDRCQUNKO0FBQUssc0JBQVM7QUFBZCxXQUNHLDhCQUFXeUIsUUFBUSxDQUFDekIsR0FBRyxDQUFDd0IsVUFBTCxDQUFuQixDQURILENBREk7QUFBQTtBQUpSLEtBdkZJLENBQU47QUFBQSxHQURtQixFQW1HbkIsQ0FBQzNCLEtBQUQsRUFBUS9CLGdCQUFSLENBbkdtQixDQUFyQjs7QUFzR0EsTUFBTTRELGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBcUIsQ0FBQ0MsS0FBRCxFQUFXO0FBQ3BDLFFBQU1DLGVBQWUsR0FBR0QsS0FBSyxDQUFDRSxHQUFOLENBQVUsVUFBQ0MsQ0FBRCxFQUFZO0FBQzVDQSxNQUFBQSxDQUFDLENBQUNDLGtCQUFGLEdBQXVCRCxDQUFDLENBQUN0QixJQUF6QjtBQUNBc0IsTUFBQUEsQ0FBQyxDQUFDRSxzQkFBRixHQUEyQixJQUEzQjs7QUFFQSxVQUFJLENBQUNGLENBQUMsQ0FBQzVCLGFBQVAsRUFBc0I7QUFDcEI0QixRQUFBQSxDQUFDLENBQUNkLEtBQUYsR0FBVWlCLGFBQU1DLFdBQU4sQ0FBa0JDLE9BQWxCLENBQTBCQyxHQUFwQztBQUNBLGVBQU9OLENBQVA7QUFDRDs7QUFFRCxVQUFJM0IsVUFBVSxDQUFDMkIsQ0FBQyxDQUFDMUIsR0FBSCxDQUFkLEVBQXVCO0FBQ3JCMEIsUUFBQUEsQ0FBQyxDQUFDZCxLQUFGLEdBQVVpQixhQUFNQyxXQUFOLENBQWtCN0MsSUFBbEIsQ0FBdUJnRCxJQUFqQztBQUNBLGVBQU9QLENBQVA7QUFDRCxPQUhELE1BR087QUFDTEEsUUFBQUEsQ0FBQyxDQUFDZCxLQUFGLEdBQVVpQixhQUFNQyxXQUFOLENBQWtCN0MsSUFBbEIsQ0FBdUJpRCxJQUFqQztBQUNBLGVBQU9SLENBQVA7QUFDRDtBQUNGLEtBaEJ1QixDQUF4QjtBQWtCQW5ELElBQUFBLFdBQVcsQ0FBQ2lELGVBQUQsQ0FBWDtBQUNELEdBcEJEOztBQXNCQSxNQUFNVyxVQUFVLEdBQUcsU0FBYkEsVUFBYSxDQUFDQyxJQUFELEVBQVU7QUFDM0JBLElBQUFBLElBQUksQ0FBQ0MsVUFBTCxLQUFvQkMsU0FBcEIsSUFBaUM3RCxVQUFVLENBQUMyRCxJQUFJLENBQUNDLFVBQU4sQ0FBM0M7QUFDRCxHQUZEOztBQUlBLE1BQU1FLFlBQVksR0FBRyxTQUFmQSxZQUFlLENBQUN0RCxJQUFELEVBQVU7QUFDN0IsUUFBTXVELFNBQVMsR0FBR3ZELElBQUksQ0FBQ3dDLEdBQUwsQ0FBUyxVQUFDZ0IsS0FBRCxFQUFXO0FBQ3BDLGFBQU9BLEtBQUssQ0FBQ0osVUFBYjtBQUNELEtBRmlCLENBQWxCO0FBSUE1RCxJQUFBQSxVQUFVLENBQUMrRCxTQUFELENBQVY7QUFDRCxHQU5EOztBQVFBLE1BQU16QyxVQUFVLEdBQUcsU0FBYkEsVUFBYSxDQUFDQyxHQUFELEVBQWlCO0FBQ2xDLFFBQUksK0JBQVNBLEdBQVQsTUFBa0IsT0FBdEIsRUFBK0I7QUFDN0IsYUFBTyxLQUFQO0FBQ0QsS0FGRCxNQUVPLElBQ0wsK0JBQVNBLEdBQVQsTUFBa0IsS0FBbEIsSUFDQSwrQkFBU0EsR0FBVCxNQUFrQixRQURsQixJQUVBLCtCQUFTQSxHQUFULE1BQWtCLE1BSGIsRUFJTDtBQUNBLGFBQU8sSUFBUDtBQUNEOztBQUVEO0FBQ0QsR0FaRDs7QUFhQSxNQUFNMEMsT0FBTyxHQUFHLGlDQUFoQjtBQUNBLE1BQU1DLGdCQUFnQixHQUFHLDZCQUN2QixVQUFDekUsS0FBRDtBQUFBLFdBQ0VBLEtBQUssQ0FBQ3NCLFdBQU4sQ0FBa0JtRCxnQkFEcEI7QUFBQSxHQUR1QixDQUF6QjtBQUtBLE1BQU1DLEdBQWMsR0FDbEJ2RCxVQUFVLENBQUNLLE1BQVgsS0FBc0IsSUFBdEIsR0FBNkJtRCxtQ0FBVUMsR0FBdkMsR0FBNkNELG1DQUFVRSxHQUR6RDs7QUFHQSxNQUFNQyx1QkFBdUIsR0FBRyxTQUExQkEsdUJBQTBCLENBQUNDLElBQUQsRUFBa0I7QUFDaEQsUUFBSUMsT0FBTyxHQUFHOUUsV0FBVyxDQUFDK0UsTUFBWixDQUFtQixVQUFVQyxFQUFWLEVBQW1CO0FBQ2xELGFBQU9BLEVBQUUsQ0FBQ2hELElBQUgsQ0FBUWlELFdBQVIsR0FBc0JDLFFBQXRCLENBQStCTCxJQUFJLENBQUNJLFdBQUwsRUFBL0IsQ0FBUDtBQUNELEtBRmEsQ0FBZDtBQUlBMUUsSUFBQUEsT0FBTyxDQUFDdUUsT0FBRCxDQUFQO0FBQ0QsR0FORDs7QUFRQSxNQUFNSyxpQkFBaUIsR0FBRyxTQUFwQkEsaUJBQW9CLENBQUNDLFFBQUQsRUFBVzVELEdBQVgsRUFBbUI7QUFDM0M0RCxJQUFBQSxRQUFRLElBQUlyQixVQUFVLENBQUN2QyxHQUFELENBQXRCO0FBQ0EsS0FBQzRELFFBQUQsSUFBYWpCLFlBQVksQ0FBQ3RELElBQUQsQ0FBekI7QUFDRCxHQUhEOztBQUtBLE1BQU13RSxrQkFBa0IsR0FBRyw2QkFDekIsVUFBQ3ZGLEtBQUQ7QUFBQSxXQUFXQSxLQUFLLENBQUNzQixXQUFOLENBQWtCaUUsa0JBQTdCO0FBQUEsR0FEeUIsQ0FBM0I7O0FBSUEsTUFBTUMseUJBQXlCLEdBQUcsU0FBNUJBLHlCQUE0QixDQUFDQyxRQUFELEVBQWM7QUFDOUMsbUNBQWUsNkNBQWYsRUFBOEQ7QUFDNURBLE1BQUFBLFFBQVEsRUFBRUEsUUFEa0Q7QUFFNURDLE1BQUFBLFlBQVksRUFBRUg7QUFGOEMsS0FBOUQ7QUFJQXpFLElBQUFBLG1CQUFtQixDQUFDMkUsUUFBRCxDQUFuQjtBQUNBakIsSUFBQUEsT0FBTyxDQUFDbUIsSUFBUix1Q0FDaUN4RSxVQUFVLENBQUNLLE1BRDVDLGlDQUN5RWlELGdCQUR6RSx1QkFDc0dnQixRQUR0RztBQUdELEdBVEQ7O0FBV0EsTUFBTUcsb0JBQW9CLEdBQUcsU0FBdkJBLG9CQUF1QixDQUFDQyxHQUFELEVBQVM7QUFDcEM1RSxJQUFBQSxXQUFXLENBQUMsSUFBRCxDQUFYOztBQUNBNkUsbUJBQU16RyxHQUFOLENBQVVDLFFBQVEsQ0FBQ3VHLEdBQUQsQ0FBbEIsRUFBeUJFLElBQXpCLENBQThCLFVBQUNDLFFBQUQsRUFBYztBQUMxQyxVQUFJQyxZQUFZLEdBQUdELFFBQVEsQ0FBQ2pGLElBQVQsQ0FBY0EsSUFBakM7QUFFQUUsTUFBQUEsV0FBVyxDQUFDLEtBQUQsQ0FBWDtBQUNBTixNQUFBQSxPQUFPLENBQUNsQixZQUFELENBQVA7QUFDQWdCLE1BQUFBLE9BQU8sQ0FBQ3dGLFlBQUQsQ0FBUDtBQUNBOUYsTUFBQUEsY0FBYyxDQUFDOEYsWUFBRCxDQUFkO0FBQ0E3QyxNQUFBQSxrQkFBa0IsQ0FBQzZDLFlBQUQsQ0FBbEI7QUFDQTVCLE1BQUFBLFlBQVksQ0FBQzRCLFlBQUQsQ0FBWjtBQUNELEtBVEQ7QUFVRCxHQVpEOztBQWNBLE1BQU1DLHVCQUF1QixHQUFHLFNBQTFCQSx1QkFBMEIsQ0FBQ0wsR0FBRCxFQUFTO0FBQ3ZDLFFBQUksQ0FBQzdFLFVBQUwsRUFBaUI7QUFDZkgsTUFBQUEsY0FBYyxDQUFDZ0YsR0FBRCxDQUFkOztBQUVBLFVBQUlBLEdBQUcsS0FBS25HLGNBQUtDLENBQUwsQ0FBTyxpQ0FBUCxDQUFaLEVBQXVEO0FBQ3JEa0csUUFBQUEsR0FBRyxHQUNEQSxHQUFHLEtBQUtuRyxjQUFLQyxDQUFMLENBQU8saUNBQVAsQ0FBUixHQUNJLE1BREosR0FFSWtHLEdBQUcsS0FBS25HLGNBQUtDLENBQUwsQ0FBTywwQ0FBUCxDQUFSLEdBQ0EsV0FEQSxHQUVBLEVBTE47QUFPQWlHLFFBQUFBLG9CQUFvQixDQUFDQyxHQUFELENBQXBCO0FBQ0Q7QUFDRjtBQUNGLEdBZkQ7O0FBaUJBLE1BQU1NLHFCQUFxQixHQUFHLFNBQXhCQSxxQkFBd0IsQ0FBQ0gsUUFBRCxFQUFjO0FBQzFDLFFBQUlqRixJQUFJLEdBQUdpRixRQUFRLENBQUNqRixJQUFULENBQWNBLElBQXpCO0FBQ0FOLElBQUFBLE9BQU8sQ0FBQ00sSUFBRCxDQUFQO0FBQ0FaLElBQUFBLGNBQWMsQ0FBQ1ksSUFBRCxDQUFkO0FBQ0FxQyxJQUFBQSxrQkFBa0IsQ0FBQ3JDLElBQUQsQ0FBbEI7QUFDQXNELElBQUFBLFlBQVksQ0FBQ3RELElBQUQsQ0FBWjtBQUNELEdBTkQ7O0FBUUEsTUFBTXVCLGVBQWUsR0FBRyxTQUFsQkEsZUFBa0IsQ0FBQzRCLElBQUQsRUFBVTtBQUNoQ0QsSUFBQUEsVUFBVSxDQUFDQyxJQUFELENBQVY7O0FBRUEsUUFBSUEsSUFBSSxDQUFDM0IsWUFBVCxFQUF1QjtBQUNyQjVCLE1BQUFBLE9BQU8sNENBQUtELElBQUwsSUFBV2hCLGNBQUtDLENBQUwsQ0FBTyxpQ0FBUCxDQUFYLEdBQVA7QUFDQWtCLE1BQUFBLGNBQWMsQ0FBQ25CLGNBQUtDLENBQUwsQ0FBTyxpQ0FBUCxDQUFELENBQWQ7O0FBRUFtRyxxQkFBTXpHLEdBQU4sQ0FBVUMsUUFBUSxDQUFDNEUsSUFBSSxDQUFDakIsRUFBTixDQUFsQixFQUE2QjhDLElBQTdCLENBQWtDLFVBQUNDLFFBQUQsRUFBYztBQUM5Q0csUUFBQUEscUJBQXFCLENBQUNILFFBQUQsQ0FBckI7QUFDRCxPQUZEO0FBR0Q7QUFDRixHQVhEOztBQWFBLE1BQU1JLG1CQUFtQixHQUFHLFNBQXRCQSxtQkFBc0IsR0FBTTtBQUNoQ2pHLElBQUFBLGNBQWMsQ0FBQ1ksSUFBRCxDQUFkO0FBQ0FOLElBQUFBLE9BQU8sQ0FBQ00sSUFBRCxDQUFQO0FBQ0EsbUNBQWUsbUJBQWYsRUFBb0M7QUFDbEMyRSxNQUFBQSxZQUFZLEVBQUVIO0FBRG9CLEtBQXBDO0FBR0FyRSxJQUFBQSxRQUFRLENBQUMsK0JBQWlCO0FBQUVnQixNQUFBQSxJQUFJLEVBQUU7QUFBUixLQUFqQixDQUFELENBQVI7QUFDQWtCLElBQUFBLGtCQUFrQixDQUFDckMsSUFBRCxDQUFsQjtBQUNBc0QsSUFBQUEsWUFBWSxDQUFDdEQsSUFBRCxDQUFaO0FBQ0QsR0FURDs7QUFXQSx3QkFBVSxZQUFNO0FBQ2QsUUFBSSxDQUFDQyxVQUFELElBQWVELElBQUksS0FBSyxJQUE1QixFQUFrQztBQUNoQ3FGLE1BQUFBLG1CQUFtQjtBQUNwQjtBQUNGLEdBSkQsRUFJRyxDQUFDcEYsVUFBRCxFQUFheEIsZ0JBQWIsRUFBK0J1QixJQUEvQixDQUpIO0FBTUEsTUFBTXNGLGFBQWEsR0FBR3RHLFNBQVMsQ0FBQ3VHLElBQVYsQ0FDcEIsVUFBQ0MsSUFBRDtBQUFBLFdBQVVBLElBQUksQ0FBQ3BCLFdBQUwsT0FBdUIzRixnQkFBZ0IsQ0FBQzJGLFdBQWpCLEVBQWpDO0FBQUEsR0FEb0IsQ0FBdEI7O0FBR0EsTUFBTXFCLGFBQWEsR0FDakJILGFBQWEsSUFBSTNHLGNBQUtDLENBQUwsQ0FBTyw2Q0FBUCxDQURuQjs7QUFFQSxzQkFDRSx5RUFDRSw2QkFBQyxPQUFELHFCQUNFLHVEQUNFLG1EQUNNRCxjQUFLQyxDQUFMLENBQU8scUNBQVAsQ0FETixlQUVJMEcsYUFBYSxJQUFJdkcsV0FBVyxFQUZoQyxPQURGLGVBTUUsNkJBQUMsZ0JBQUQsUUFDR0MsU0FBUyxDQUFDMEcsTUFBVixHQUFtQixDQUFuQixpQkFDQyw2QkFBQyx1QkFBRDtBQUNFLElBQUEsRUFBRSxFQUFDLHVCQURMO0FBRUUsSUFBQSxTQUFTLEVBQUUscUJBRmI7QUFHRSxJQUFBLEtBQUssRUFBRUQsYUFBYSxHQUFHLEdBSHpCO0FBSUUsSUFBQSxPQUFPLEVBQUM7QUFKVixLQU1HekcsU0FBUyxDQUFDd0QsR0FBVixDQUFjLFVBQUNrQyxRQUFELEVBQWM7QUFDM0Isd0JBQ0UsNkJBQUMsaUJBQUQsQ0FBVSxJQUFWO0FBQ0UsTUFBQSxJQUFJLEVBQUMsR0FEUDtBQUVFLE1BQUEsT0FBTyxFQUFFO0FBQUEsZUFBTUQseUJBQXlCLENBQUNDLFFBQUQsQ0FBL0I7QUFBQSxPQUZYO0FBR0UsTUFBQSxLQUFLLEVBQUU7QUFDTGlCLFFBQUFBLFNBQVMsRUFDUHZGLFVBQVUsQ0FBQ0ssTUFBWCxLQUFzQixJQUF0QixHQUE2QixPQUE3QixHQUF1QztBQUZwQztBQUhULE9BUUdpRSxRQVJILENBREY7QUFZRCxHQWJBLENBTkgsQ0FGSixDQU5GLENBREYsZUFpQ0UsNkJBQUMsWUFBRCxxQkFDRSw2QkFBQyw0QkFBRDtBQUNFLElBQUEsUUFBUSxFQUFFakcsZ0JBRFo7QUFFRSxJQUFBLGdCQUFnQixFQUFFaUYsZ0JBRnBCO0FBR0UsSUFBQSxLQUFLLEVBQUVsRDtBQUhULElBREYsQ0FqQ0YsZUF5Q0UsNkJBQUMsYUFBRCxxQkFDRSw2QkFBQyx3QkFBRDtBQUFhLElBQUEsZ0JBQWdCLEVBQUV1RDtBQUEvQixJQURGLGVBRUU7QUFBSyxJQUFBLFNBQVMsRUFBRTtBQUFoQixrQkFDRSw2QkFBQyxVQUFEO0FBQ0UsSUFBQSxJQUFJLEVBQUVwRSxJQURSO0FBRUUsSUFBQSxXQUFXLEVBQUVFLFdBRmY7QUFHRSxJQUFBLGFBQWEsRUFBRXNGO0FBSGpCLElBREYsQ0FGRixlQVNFLDZCQUFDLGlCQUFEO0FBQW1CLElBQUEsS0FBSyxFQUFFM0U7QUFBMUIsS0FDR1AsVUFBVSxpQkFBSSw2QkFBQyxnQkFBRCxPQURqQixlQUVFO0FBQUssSUFBQSxTQUFTLEVBQUU7QUFBaEIsS0FDRyxDQUFDQSxVQUFELElBQWVSLElBQUksS0FBSyxJQUF4QixJQUFnQ0YsT0FBTyxLQUFLLElBQTVDLGlCQUNDLDZCQUFDLHNCQUFELHFCQUNFLDZCQUFDLFFBQUQ7QUFDRSxJQUFBLEtBQUssRUFBRUYsUUFEVDtBQUVFLElBQUEsY0FBYyxFQUFFRSxPQUZsQjtBQUdFLElBQUEsS0FBSyxFQUFFLEVBSFQ7QUFJRSxJQUFBLE1BQU0sRUFBRSxFQUpWO0FBS0UsSUFBQSxXQUFXLEVBQUVlLFVBTGY7QUFNRSxJQUFBLFdBQVcsRUFBRXJDO0FBTmYsSUFERixDQUZKLENBRkYsRUFnQkcsQ0FBQ2dDLFVBQUQsSUFBZVIsSUFBSSxLQUFLLElBQXhCLGlCQUNDLDZCQUFDLHNCQUFEO0FBQ0UsSUFBQSxrQkFBa0IsRUFBRTZFLGlCQUR0QjtBQUVFLElBQUEsSUFBSSxFQUFFN0UsSUFGUjtBQUdFLElBQUEsT0FBTyxFQUFFdUIsT0FIWDtBQUlFLElBQUEsU0FBUyxFQUFFMkMsR0FKYjtBQUtFLElBQUEsY0FBYyxFQUFFLElBTGxCO0FBTUUsSUFBQSxpQkFBaUIsRUFBRTNGLG1CQU5yQjtBQU9FLElBQUEsWUFBWSxFQUFFNEgsc0NBUGhCO0FBUUUsSUFBQSw0QkFBNEIsRUFBRTtBQUFFbEIsTUFBQUEsUUFBUSxFQUFFakc7QUFBWixLQVJoQztBQVNFLElBQUEsa0JBQWtCLEVBQUU7QUFUdEIsSUFqQkosQ0FURixDQXpDRixDQURGLENBREY7QUFzRkQsQ0F4Wk07Ozs7QUEwWlAsSUFBTW9ILE9BQU8sR0FBR0MsMEJBQU9DLEdBQVY7QUFBQTtBQUFBO0FBQUEseWRBaUNNbkQsYUFBTUMsV0FBTixDQUFrQkMsT0FBbEIsQ0FBMEJDLEdBakNoQyxFQW1DYUgsYUFBTUMsV0FBTixDQUFrQkMsT0FBbEIsQ0FBMEJDLEdBbkN2QyxFQTBDRCxVQUFDaUQsQ0FBRDtBQUFBLFNBQVFBLENBQUMsQ0FBQ3hGLEtBQUYsR0FBVSxjQUFWLEdBQTJCLGFBQW5DO0FBQUEsQ0ExQ0MsQ0FBYjs7QUFtREEsSUFBTXlGLGdCQUFnQixHQUFHSCwwQkFBT0MsR0FBVjtBQUFBO0FBQUE7QUFBQSw4REFBdEI7O0FBTUEsSUFBTUcsWUFBWSxHQUFHSiwwQkFBT0MsR0FBVjtBQUFBO0FBQUE7QUFBQSw2QkFBbEI7O0FBSUEsSUFBTUksYUFBYSxHQUFHTCwwQkFBT0MsR0FBVjtBQUFBO0FBQUE7QUFBQSxtRkFBbkI7O0FBT0EsSUFBTUssaUJBQWlCLEdBQUdOLDBCQUFPQyxHQUFWO0FBQUE7QUFBQTtBQUFBLGtnQkFBdkI7O0FBd0NBLElBQU1NLE9BQU8sR0FBR1AsMEJBQU9DLEdBQVY7QUFBQTtBQUFBO0FBQUEsc0ZBQWIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyB1c2VIaXN0b3J5IH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgeyBhbmFseXRpY3NUcmFjayB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9BbmFseXRpY3MnO1xuaW1wb3J0IHsgU2VhcmNoSW5wdXQgfSBmcm9tICcuL1NlYXJjaElucHV0JztcbmltcG9ydCB7IEZvbnRBd2Vzb21lSWNvbiB9IGZyb20gJ0Bmb3J0YXdlc29tZS9yZWFjdC1mb250YXdlc29tZSc7XG5pbXBvcnQgeyBHcmFwaFdyYXBwZXIgfSBmcm9tICcuL0dyYXBoV3JhcHBlcic7XG5pbXBvcnQgeyBmYUNoZXZyb25Eb3duLCBmYUNoZXZyb25VcCB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnLi4vLi4vc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IHsgdXBkYXRlTmF2Q29udGV4dCB9IGZyb20gJy4uLy4uL3N0b3JlL2NvbnRleHQvYWN0aW9ucyc7XG5pbXBvcnQgeyBrRm9ybWF0dGVyIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL1Rob3VzYW5kc1RvSyc7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBEcmlsbERvd25JY29uIH0gZnJvbSAnLi9EcmlsbERvd25JY29uLnN2Zyc7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBCYXNlTGV2ZWwgfSBmcm9tICcuL0Jhc2VMZXZlbC5zdmcnO1xuaW1wb3J0IHsgRGlyZWN0aW9uIH0gZnJvbSAncmVhY3QtZGF0YS10YWJsZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgbGV2ZWxOVkwgfSBmcm9tICcuLi9Db3ZpZFBhZ2UvY29tcG9uZW50cy9udmxTdGF0dXNIZWxwZXInO1xuaW1wb3J0IHsgTWFwIH0gZnJvbSAnLi4vLi4vV2lkZ2V0cy9NYXAvTWFwJztcbmltcG9ydCB7IEthbmRvVGFibGUgfSBmcm9tICdzcmMvdWkta2l0L0thbmRvVGFibGUvS2FuZG9UYWJsZSc7XG5pbXBvcnQgeyBUYWJzIH0gZnJvbSAnLi9UYWJzJztcbmltcG9ydCB1c2VLYW5kb0ZldGNoIGZyb20gJy4uLy4uL2hvb2tzL3VzZUthbmRvRmV0Y2gnO1xuaW1wb3J0IHVzZVF1ZXJ5VVJMIGZyb20gJy4uLy4uL2hvb2tzL3VzZVF1ZXJ5VVJMJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMvbWFjcm8nO1xuaW1wb3J0IERyb3Bkb3duIGZyb20gJ3JlYWN0LWJvb3RzdHJhcC9janMvRHJvcGRvd24nO1xuaW1wb3J0IERyb3Bkb3duQnV0dG9uIGZyb20gJ3JlYWN0LWJvb3RzdHJhcC9janMvRHJvcGRvd25CdXR0b24nO1xuaW1wb3J0IGF4aW9zIGZyb20gJ2F4aW9zJztcbmltcG9ydCBUcnVuY2F0ZSBmcm9tICcuLi8uLi91dGlsaXRpZXMvVHJ1bmNhdGUnO1xuaW1wb3J0IHsgRXhwYW5kZWRDb21wb25lbnQgfSBmcm9tICcuL0V4cGFuZGFibGVDb21wb25lbnQnO1xuaW1wb3J0IHsgU3Bpbm5lciB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvU3Bpbm5lci9TcGlubmVyJztcbmltcG9ydCB7IFdiZVN1bW1hcnlCYXIgfSBmcm9tICcuL1diZVN1bW1hcnlCYXInO1xuaW1wb3J0IEVycm9yQm91bmRhcnkgZnJvbSAnLi4vLi4vdXRpbGl0aWVzL0Vycm9yQm91bmRhcnknO1xuaW1wb3J0IHsgdGhlbWUgfSBmcm9tICcuLi8uLi9zdHlsZXMvdGhlbWUvdGhlbWUnO1xuY29uc3QgVEFCTEVfUk9XU19QRVJfUEFHRSA9IDI1O1xuY29uc3QgTUFQQk9YX1dCRV9EQVNIQk9BUkRfU1RZTEUgPSAnY2t6emtqc2k3MDA1ZjE0bzlpbTBtY3pzOSc7XG5cbmV4cG9ydCBjb25zdCBXQkVJc3JhZWxJZCA9IDQ2MztcbmV4cG9ydCBjb25zdCBXYmVEYXNoYm9hcmRQYWdlID0gKCkgPT4ge1xuICBjb25zdCBnZXRXQUlkID0gKCkgPT4ge1xuICAgIHJldHVybiBxdWVyeS5nZXQoJ3dhdGVyX2F1dGhvcml0eV9pZCcpO1xuICB9O1xuICBjb25zdCBmZXRjaFVybCA9IChmaXJzdFBhcmFtKSA9PiB7XG4gICAgcmV0dXJuIGAvYXBpX3VpL3diZV9kYXNoYm9hcmQvJHtzZWxlY3RlZFBhdGhvZ2VufS8ke2ZpcnN0UGFyYW19P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dldFdBSWQoKX1gO1xuICB9O1xuICBjb25zdCBERUZBVUxUX1RBQlMgPSBbXG4gICAgaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQuY2l0aWVzJyksXG4gICAgaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQubW9uaXRvcmVkX2FyZWFzJyksXG4gIF07XG4gIGNvbnN0IGNvbnZlcnRUYWJOYW1lVG9QYXJhbSA9ICh0YWJfbmFtZTogc3RyaW5nKSA9PiB7XG4gICAgaWYgKHRhYl9uYW1lID09PSBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5jaXRpZXMnKSkge1xuICAgICAgcmV0dXJuICdjaXR5JztcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgdGFiX25hbWUgPT09IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLm1vbml0b3JlZF9hcmVhcycpXG4gICAgKSB7XG4gICAgICByZXR1cm4gJ21vbml0b3JlZCc7XG4gICAgfVxuXG4gICAgcmV0dXJuICdjaXR5JztcbiAgfTtcbiAgY29uc3QgcXVlcnkgPSB1c2VRdWVyeVVSTCgpO1xuICBjb25zdCBnZXRQYXRob2dlbiA9ICgpID0+IHtcbiAgICByZXR1cm4gcXVlcnkuZ2V0KCdwYXRob2dlbicpIHx8ICdjb3ZpZCc7XG4gIH07XG5cbiAgY29uc3QgcGF0aG9nZW5zID0gdXNlU2VsZWN0b3IoKHN0YXRlKSA9PiBzdGF0ZS5wZXJtaXNzaW9ucy5wYXRob2dlbnMpO1xuXG4gIGNvbnN0IFtjdXJyZW50RGF0YSwgc2V0Q3VycmVudERhdGFdID0gdXNlU3RhdGUoW10pO1xuICBjb25zdCBbbWFwQXJlYXMsIHNldE1hcEFyZWFzXSA9IHVzZVN0YXRlPGFueVtdPihbXSk7XG4gIGNvbnN0IFttYXBab29tLCBzZXRNYXBab29tXSA9IHVzZVN0YXRlPGFueVtdPihbXSk7XG4gIGNvbnN0IFtyb3dzLCBzZXRSb3dzXSA9IHVzZVN0YXRlPGFueT4oW10pO1xuICBjb25zdCBbdGFicywgc2V0VGFic10gPSB1c2VTdGF0ZTxzdHJpbmdbXT4oREVGQVVMVF9UQUJTKTtcbiAgY29uc3QgW3NlbGVjdGVkVGFiLCBzZXRTZWxlY3RlZFRhYl0gPSB1c2VTdGF0ZTxzdHJpbmc+KHRhYnNbMF0pO1xuICBjb25zdCBbc2VsZWN0ZWRQYXRob2dlbiwgc2V0U2VsZWN0ZWRQYXRob2dlbl0gPSB1c2VTdGF0ZTxzdHJpbmc+KFxuICAgIGdldFBhdGhvZ2VuKCksXG4gICk7XG4gIGNvbnN0IHsgZGF0YSwgaXNGZXRjaGluZywgc2V0RmV0Y2hpbmcgfSA9IHVzZUthbmRvRmV0Y2goXG4gICAgZmV0Y2hVcmwoY29udmVydFRhYk5hbWVUb1BhcmFtKHNlbGVjdGVkVGFiKSksXG4gICk7XG5cbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCBuYXZDb250ZXh0ID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUubmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LFxuICApO1xuICBjb25zdCBnbG9iYWxEYXRhID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUuZ2xvYmFsX2RhdGEsXG4gICk7XG4gIGNvbnN0IGlzUnRsOiBib29sZWFuID0gbmF2Q29udGV4dC5sb2NhbGUgPT09ICdoZScgPyB0cnVlIDogZmFsc2U7XG4gIGNvbnN0IGNvbG9yRm9yUm93ID0gKHJvdykgPT4ge1xuICAgIGxldCBxdWFsaXR5O1xuICAgIGlmICghcm93LnNhbXBsZV9hY3RpdmUpIHtcbiAgICAgIHF1YWxpdHkgPSAnaW5hY3RpdmUtc2FtcGxpbmcnO1xuICAgIH0gZWxzZSBpZiAoaXNJbmZlY3RlZChyb3cubnZsKSkge1xuICAgICAgcXVhbGl0eSA9ICdpbmZlY3RlZCc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHF1YWxpdHkgPSAnY2xlYW4nO1xuICAgIH1cblxuICAgIHJldHVybiBgcm93X25hbWUtLSR7cXVhbGl0eX1gO1xuICB9O1xuICBjb25zdCBjb2x1bW5zOiBhbnkgPSBSZWFjdC51c2VNZW1vKFxuICAgICgpID0+IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQubmFtZScpLFxuICAgICAgICBzZWxlY3RvcjogKHJvdykgPT4gcm93Lm5hbWUsXG4gICAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgICBjZWxsOiAocm93OiB7IG5hbWU6IHN0cmluZzsgbnZsOiBudW1iZXI7IGhhc19jaGlsZHJlbjogYm9vbGVhbiB9KSA9PiAoXG4gICAgICAgICAgPFJvd05hbWUgaXNSdGw9e2lzUnRsfT5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgZGF0YS10YWc9XCJhbGxvd1Jvd0V2ZW50c1wiXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT17YHJvd19uYW1lICR7Y29sb3JGb3JSb3cocm93KX1gfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgaGFuZGxlQXJlYUNsaWNrKHJvdyk7XG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnZXhwYW5kYWJsZS1pY29uJ30+XG4gICAgICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAgICB7cm93Lmhhc19jaGlsZHJlbiAmJiA8RHJpbGxEb3duSWNvbiAvPn1cbiAgICAgICAgICAgICAgICAgIHshcm93Lmhhc19jaGlsZHJlbiAmJiA8QmFzZUxldmVsIC8+fVxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17J25hbWUnfT5cbiAgICAgICAgICAgICAgICA8VHJ1bmNhdGUgY2hhcmFjdGVycz17M30gaW5oZXJpdFRleHRBbGlnbj17dHJ1ZX0+XG4gICAgICAgICAgICAgICAgICB7cm93Lm5hbWV9XG4gICAgICAgICAgICAgICAgPC9UcnVuY2F0ZT5cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9Sb3dOYW1lPlxuICAgICAgICApLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQubnZsX3Njb3JlJyksXG4gICAgICAgIHNlbGVjdG9yOiAocm93KSA9PiByb3cubnZsLFxuICAgICAgICBzb3J0YWJsZTogdHJ1ZSxcbiAgICAgICAgY2VsbDogKHJvdzogeyBudmw6IG51bWJlciB9KSA9PiAoXG4gICAgICAgICAgPGRpdiBkYXRhLXRhZz1cImFsbG93Um93RXZlbnRzXCI+e3Jvdy5udmx9PC9kaXY+XG4gICAgICAgICksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5wZXJjZW50YWdlX2Zyb21fbGFzdF9zYW1wbGluZycpLFxuICAgICAgICBzZWxlY3RvcjogKHJvdykgPT4gcm93Lm52bF9jaGFuZ2UsXG4gICAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgICBjZWxsOiAocm93OiB7IG52bF9jaGFuZ2U6IG51bWJlciB9KSA9PiAoXG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgZGF0YS10YWc9XCJhbGxvd1Jvd0V2ZW50c1wiXG4gICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICBkaXJlY3Rpb246ICdsdHInLFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8c3BhbiBzdHlsZT17eyBjb2xvcjogJyMwMDAwMDAnLCBtYXJnaW46ICcwIDZweCcgfX0+XG4gICAgICAgICAgICAgIHtyb3cubnZsX2NoYW5nZX0lXG4gICAgICAgICAgICA8L3NwYW4+XG5cbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgPEZvbnRBd2Vzb21lSWNvblxuICAgICAgICAgICAgICAgIGljb249e3Jvdy5udmxfY2hhbmdlID4gMCA/IGZhQ2hldnJvblVwIDogZmFDaGV2cm9uRG93bn1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLmxhc3Rfc2FtcGxlZCcpLFxuICAgICAgICBzZWxlY3RvcjogJ2xhc3Rfc2FtcGxlZCcsXG4gICAgICAgIHNvcnRhYmxlOiAocm93KSA9PiByb3cubGFzdF91cGRhdGVkLFxuICAgICAgICBjZWxsOiAocm93OiB7IGxhc3RfdXBkYXRlZDogc3RyaW5nIH0pID0+IChcbiAgICAgICAgICA8ZGl2IGRhdGEtdGFnPVwiYWxsb3dSb3dFdmVudHNcIj5cbiAgICAgICAgICAgIHtyb3cubGFzdF91cGRhdGVkID09PSBudWxsXG4gICAgICAgICAgICAgID8gJy0nXG4gICAgICAgICAgICAgIDogbmV3IERhdGUocm93Lmxhc3RfdXBkYXRlZCkudG9Mb2NhbGVEYXRlU3RyaW5nKCdlbi1HQicpfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQudHJlbmRfZ3JhcGgnKSxcbiAgICAgICAgc2VsZWN0b3I6ICd0cmVuZF9ncmFwaCcsXG4gICAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgICBjZWxsOiAocm93OiB7IGlkOiBudW1iZXIgfSkgPT4gKFxuICAgICAgICAgIDxkaXYgZGF0YS10YWc9XCJhbGxvd1Jvd0V2ZW50c1wiPlxuICAgICAgICAgICAgPEdyYXBoV3JhcHBlclxuICAgICAgICAgICAgICBrZXk9e3Jvdy5pZH1cbiAgICAgICAgICAgICAgcm93PXtyb3d9XG4gICAgICAgICAgICAgIHdhdGVyX2F1dGhvcml0eV9pZD17Z2V0V0FJZCgpfVxuICAgICAgICAgICAgICBwYXRob2dlbj17c2VsZWN0ZWRQYXRob2dlbn1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5wb3B1bGF0aW9uJyksXG4gICAgICAgIHNlbGVjdG9yOiAocm93KSA9PiByb3cucG9wdWxhdGlvbixcbiAgICAgICAgc29ydGFibGU6IHRydWUsXG4gICAgICAgIGNlbGw6IChyb3c6IHsgcG9wdWxhdGlvbjogc3RyaW5nIH0pID0+IChcbiAgICAgICAgICA8ZGl2IGRhdGEtdGFnPVwiYWxsb3dSb3dFdmVudHNcIj5cbiAgICAgICAgICAgIHtrRm9ybWF0dGVyKHBhcnNlSW50KHJvdy5wb3B1bGF0aW9uKSl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICksXG4gICAgICB9LFxuICAgIF0sXG4gICAgW2lzUnRsLCBzZWxlY3RlZFBhdGhvZ2VuXSxcbiAgKTtcblxuICBjb25zdCBpbml0aWFsaXplTWFwQXJlYXMgPSAoYXJlYXMpID0+IHtcbiAgICBjb25zdCBtYXBwZWRXaXRoQ29sb3IgPSBhcmVhcy5tYXAoKGE6IGFueSkgPT4ge1xuICAgICAgYS53YmVfZGFzaGJvYXJkX25hbWUgPSBhLm5hbWU7XG4gICAgICBhLnNob3dDb2xvck9ubHlJbkJvcmRlcnMgPSB0cnVlO1xuXG4gICAgICBpZiAoIWEuc2FtcGxlX2FjdGl2ZSkge1xuICAgICAgICBhLmNvbG9yID0gdGhlbWUuY29sb3JTY2hlbWUubmF0dXJhbC5uNjA7XG4gICAgICAgIHJldHVybiBhO1xuICAgICAgfVxuXG4gICAgICBpZiAoaXNJbmZlY3RlZChhLm52bCkpIHtcbiAgICAgICAgYS5jb2xvciA9IHRoZW1lLmNvbG9yU2NoZW1lLmRhdGEuUjEwMDtcbiAgICAgICAgcmV0dXJuIGE7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhLmNvbG9yID0gdGhlbWUuY29sb3JTY2hlbWUuZGF0YS5HMTAwO1xuICAgICAgICByZXR1cm4gYTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHNldE1hcEFyZWFzKG1hcHBlZFdpdGhDb2xvcik7XG4gIH07XG5cbiAgY29uc3Qgem9vbVRvQXJlYSA9IChhcmVhKSA9PiB7XG4gICAgYXJlYS5zaGFwZV9kYXRhICE9PSB1bmRlZmluZWQgJiYgc2V0TWFwWm9vbShhcmVhLnNoYXBlX2RhdGEpO1xuICB9O1xuXG4gIGNvbnN0IHpvb21BbGxBcmVhcyA9IChkYXRhKSA9PiB7XG4gICAgY29uc3Qgc2hhcGVEYXRhID0gZGF0YS5tYXAoKGRhdHVtKSA9PiB7XG4gICAgICByZXR1cm4gZGF0dW0uc2hhcGVfZGF0YTtcbiAgICB9KTtcblxuICAgIHNldE1hcFpvb20oc2hhcGVEYXRhKTtcbiAgfTtcblxuICBjb25zdCBpc0luZmVjdGVkID0gKG52bDogbnVtYmVyKSA9PiB7XG4gICAgaWYgKGxldmVsTlZMKG52bCkgPT09ICdjbGVhbicpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgbGV2ZWxOVkwobnZsKSA9PT0gJ2xvdycgfHxcbiAgICAgIGxldmVsTlZMKG52bCkgPT09ICdtZWRpdW0nIHx8XG4gICAgICBsZXZlbE5WTChudmwpID09PSAnaGlnaCdcbiAgICApIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIHJldHVybjtcbiAgfTtcbiAgY29uc3QgaGlzdG9yeSA9IHVzZUhpc3RvcnkoKTtcbiAgY29uc3Qgd2F0ZXJBdXRob3JpdHlJZCA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+XG4gICAgICBzdGF0ZS5nbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkLFxuICApO1xuXG4gIGNvbnN0IGRpcjogRGlyZWN0aW9uID1cbiAgICBuYXZDb250ZXh0LmxvY2FsZSA9PT0gJ2hlJyA/IERpcmVjdGlvbi5SVEwgOiBEaXJlY3Rpb24uTFRSO1xuXG4gIGNvbnN0IGZpbHRlclJlc3VsdHNBbmRTZXRSb3dzID0gKHRleHQ6IHN0cmluZykgPT4ge1xuICAgIGxldCByZXN1bHRzID0gY3VycmVudERhdGEuZmlsdGVyKGZ1bmN0aW9uIChlbDogYW55KSB7XG4gICAgICByZXR1cm4gZWwubmFtZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRleHQudG9Mb3dlckNhc2UoKSk7XG4gICAgfSk7XG5cbiAgICBzZXRSb3dzKHJlc3VsdHMpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZU9uUm93RXhwYW5kID0gKGV4cGFuZGVkLCByb3cpID0+IHtcbiAgICBleHBhbmRlZCAmJiB6b29tVG9BcmVhKHJvdyk7XG4gICAgIWV4cGFuZGVkICYmIHpvb21BbGxBcmVhcyhkYXRhKTtcbiAgfTtcblxuICBjb25zdCB3YXRlckF1dGhvcml0eU5hbWUgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGUpID0+IHN0YXRlLmdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5TmFtZSxcbiAgKTtcblxuICBjb25zdCBoYW5kbGVTZWxlY3RQYXRob2dlbkNsaWNrID0gKHBhdGhvZ2VuKSA9PiB7XG4gICAgYW5hbHl0aWNzVHJhY2soJ1dCRSBTdGF0dXMgUmVwb3J0IC0gUGF0aG9nZW4gY2hhbmdlIGNsaWNrZWQnLCB7XG4gICAgICBwYXRob2dlbjogcGF0aG9nZW4sXG4gICAgICB1dGlsaXR5X25hbWU6IHdhdGVyQXV0aG9yaXR5TmFtZSxcbiAgICB9KTtcbiAgICBzZXRTZWxlY3RlZFBhdGhvZ2VuKHBhdGhvZ2VuKTtcbiAgICBoaXN0b3J5LnB1c2goXG4gICAgICBgL3diZV9kYXNoYm9hcmQvaW5kZXg/bG9jYWxlPSR7bmF2Q29udGV4dC5sb2NhbGV9JndhdGVyX2F1dGhvcml0eV9pZD0ke3dhdGVyQXV0aG9yaXR5SWR9JnBhdGhvZ2VuPSR7cGF0aG9nZW59YCxcbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGZldGNoRm9yVGFiU2VsZWN0aW9uID0gKHRhYikgPT4ge1xuICAgIHNldEZldGNoaW5nKHRydWUpO1xuICAgIGF4aW9zLmdldChmZXRjaFVybCh0YWIpKS50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgbGV0IHJlc3BvbnNlRGF0YSA9IHJlc3BvbnNlLmRhdGEuZGF0YTtcblxuICAgICAgc2V0RmV0Y2hpbmcoZmFsc2UpO1xuICAgICAgc2V0VGFicyhERUZBVUxUX1RBQlMpO1xuICAgICAgc2V0Um93cyhyZXNwb25zZURhdGEpO1xuICAgICAgc2V0Q3VycmVudERhdGEocmVzcG9uc2VEYXRhKTtcbiAgICAgIGluaXRpYWxpemVNYXBBcmVhcyhyZXNwb25zZURhdGEpO1xuICAgICAgem9vbUFsbEFyZWFzKHJlc3BvbnNlRGF0YSk7XG4gICAgfSk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlVGFiU2VsZWN0aW9uQ2xpY2sgPSAodGFiKSA9PiB7XG4gICAgaWYgKCFpc0ZldGNoaW5nKSB7XG4gICAgICBzZXRTZWxlY3RlZFRhYih0YWIpO1xuXG4gICAgICBpZiAodGFiICE9PSBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5jdXN0b20nKSkge1xuICAgICAgICB0YWIgPVxuICAgICAgICAgIHRhYiA9PT0gaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQuY2l0aWVzJylcbiAgICAgICAgICAgID8gJ2NpdHknXG4gICAgICAgICAgICA6IHRhYiA9PT0gaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQubW9uaXRvcmVkX2FyZWFzJylcbiAgICAgICAgICAgID8gJ21vbml0b3JlZCdcbiAgICAgICAgICAgIDogJyc7XG5cbiAgICAgICAgZmV0Y2hGb3JUYWJTZWxlY3Rpb24odGFiKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaW5pdGlhbGl6ZURyaWxsZWRBcmVhID0gKHJlc3BvbnNlKSA9PiB7XG4gICAgbGV0IGRhdGEgPSByZXNwb25zZS5kYXRhLmRhdGE7XG4gICAgc2V0Um93cyhkYXRhKTtcbiAgICBzZXRDdXJyZW50RGF0YShkYXRhKTtcbiAgICBpbml0aWFsaXplTWFwQXJlYXMoZGF0YSk7XG4gICAgem9vbUFsbEFyZWFzKGRhdGEpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUFyZWFDbGljayA9IChhcmVhKSA9PiB7XG4gICAgem9vbVRvQXJlYShhcmVhKTtcblxuICAgIGlmIChhcmVhLmhhc19jaGlsZHJlbikge1xuICAgICAgc2V0VGFicyhbLi4udGFicywgaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQuY3VzdG9tJyldKTtcbiAgICAgIHNldFNlbGVjdGVkVGFiKGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLmN1c3RvbScpKTtcblxuICAgICAgYXhpb3MuZ2V0KGZldGNoVXJsKGFyZWEuaWQpKS50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICBpbml0aWFsaXplRHJpbGxlZEFyZWEocmVzcG9uc2UpO1xuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGluaXRpYWxpemVDb21wb25lbnQgPSAoKSA9PiB7XG4gICAgc2V0Q3VycmVudERhdGEoZGF0YSk7XG4gICAgc2V0Um93cyhkYXRhKTtcbiAgICBhbmFseXRpY3NUcmFjaygnV0JFIFN0YXR1cyBSZXBvcnQnLCB7XG4gICAgICB1dGlsaXR5X25hbWU6IHdhdGVyQXV0aG9yaXR5TmFtZSxcbiAgICB9KTtcbiAgICBkaXNwYXRjaCh1cGRhdGVOYXZDb250ZXh0KHsgbmFtZTogJ3diZV9kYXNoYm9hcmQnIH0pKTtcbiAgICBpbml0aWFsaXplTWFwQXJlYXMoZGF0YSk7XG4gICAgem9vbUFsbEFyZWFzKGRhdGEpO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFpc0ZldGNoaW5nICYmIGRhdGEgIT09IG51bGwpIHtcbiAgICAgIGluaXRpYWxpemVDb21wb25lbnQoKTtcbiAgICB9XG4gIH0sIFtpc0ZldGNoaW5nLCBzZWxlY3RlZFBhdGhvZ2VuLCBkYXRhXSk7XG5cbiAgY29uc3QgcGF0aG9nZW5UaXRsZSA9IHBhdGhvZ2Vucy5maW5kKFxuICAgIChpdGVtKSA9PiBpdGVtLnRvTG93ZXJDYXNlKCkgPT09IHNlbGVjdGVkUGF0aG9nZW4udG9Mb3dlckNhc2UoKSxcbiAgKTtcbiAgY29uc3QgZHJvcERvd25UaXRsZSA9XG4gICAgcGF0aG9nZW5UaXRsZSB8fCBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5wYXRob2dlbl9ub3RfZm91bmQnKTtcbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPENvbnRlbnQ+XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgPGgxPlxuICAgICAgICAgICAge2Ake2kxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLnRhYmxlX25hbWUnKX0gKCR7XG4gICAgICAgICAgICAgIHBhdGhvZ2VuVGl0bGUgfHwgZ2V0UGF0aG9nZW4oKVxuICAgICAgICAgICAgfSlgfVxuICAgICAgICAgIDwvaDE+XG4gICAgICAgICAgPEFjdGlvbnNDb250YWluZXI+XG4gICAgICAgICAgICB7cGF0aG9nZW5zLmxlbmd0aCA+IDEgJiYgKFxuICAgICAgICAgICAgICA8RHJvcGRvd25CdXR0b25cbiAgICAgICAgICAgICAgICBpZD1cImRyb3Bkb3duLWJhc2ljLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXsnYnV0dG9uIGJ1dHRvbi0tc29ydCd9XG4gICAgICAgICAgICAgICAgdGl0bGU9e2Ryb3BEb3duVGl0bGUgKyAnICd9XG4gICAgICAgICAgICAgICAgdmFyaWFudD1cInNlY29uZGFyeVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7cGF0aG9nZW5zLm1hcCgocGF0aG9nZW4pID0+IHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgIDxEcm9wZG93bi5JdGVtXG4gICAgICAgICAgICAgICAgICAgICAgaHJlZj1cIiNcIlxuICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGhhbmRsZVNlbGVjdFBhdGhvZ2VuQ2xpY2socGF0aG9nZW4pfVxuICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0QWxpZ246XG4gICAgICAgICAgICAgICAgICAgICAgICAgIG5hdkNvbnRleHQubG9jYWxlID09PSAnaGUnID8gJ3JpZ2h0JyA6ICdsZWZ0JyxcbiAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAge3BhdGhvZ2VufVxuICAgICAgICAgICAgICAgICAgICA8L0Ryb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICA8L0Ryb3Bkb3duQnV0dG9uPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L0FjdGlvbnNDb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8Rmlyc3RTZWN0aW9uPlxuICAgICAgICAgIDxXYmVTdW1tYXJ5QmFyXG4gICAgICAgICAgICBwYXRob2dlbj17c2VsZWN0ZWRQYXRob2dlbn1cbiAgICAgICAgICAgIHdhdGVyQXV0aG9yaXR5SWQ9e3dhdGVyQXV0aG9yaXR5SWR9XG4gICAgICAgICAgICBpc1J0bD17aXNSdGx9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9GaXJzdFNlY3Rpb24+XG5cbiAgICAgICAgPFNlY29uZFNlY3Rpb24+XG4gICAgICAgICAgPFNlYXJjaElucHV0IG9uQ2hhbmdlQmVoYXZpb3I9e2ZpbHRlclJlc3VsdHNBbmRTZXRSb3dzfSAvPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsndGFicy1jb250YWluZXInfT5cbiAgICAgICAgICAgIDxUYWJzXG4gICAgICAgICAgICAgIHRhYnM9e3RhYnN9XG4gICAgICAgICAgICAgIHNlbGVjdGVkVGFiPXtzZWxlY3RlZFRhYn1cbiAgICAgICAgICAgICAgaGFuZGxlT25DbGljaz17aGFuZGxlVGFiU2VsZWN0aW9uQ2xpY2t9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxNYXBUYWJsZUNvbnRhaW5lciBpc1J0bD17aXNSdGx9PlxuICAgICAgICAgICAge2lzRmV0Y2hpbmcgJiYgPFNwaW5uZXIgLz59XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J21hcC1jb250YWluZXInfT5cbiAgICAgICAgICAgICAgeyFpc0ZldGNoaW5nICYmIHJvd3MgIT09IG51bGwgJiYgbWFwWm9vbSAhPT0gbnVsbCAmJiAoXG4gICAgICAgICAgICAgICAgPEVycm9yQm91bmRhcnk+XG4gICAgICAgICAgICAgICAgICA8TWFwXG4gICAgICAgICAgICAgICAgICAgIGFyZWFzPXttYXBBcmVhc31cbiAgICAgICAgICAgICAgICAgICAgYXJlYVRvQ2VudGVyQnk9e21hcFpvb219XG4gICAgICAgICAgICAgICAgICAgIGVkZ2VzPXtbXX1cbiAgICAgICAgICAgICAgICAgICAgcG9pbnRzPXtbXX1cbiAgICAgICAgICAgICAgICAgICAgZ2xvYmFsX2RhdGE9e2dsb2JhbERhdGF9XG4gICAgICAgICAgICAgICAgICAgIG1hcEJveFN0eWxlPXtNQVBCT1hfV0JFX0RBU0hCT0FSRF9TVFlMRX1cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9FcnJvckJvdW5kYXJ5PlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB7IWlzRmV0Y2hpbmcgJiYgcm93cyAhPT0gbnVsbCAmJiAoXG4gICAgICAgICAgICAgIDxLYW5kb1RhYmxlXG4gICAgICAgICAgICAgICAgb25Sb3dFeHBhbmRUb2dnbGVkPXtoYW5kbGVPblJvd0V4cGFuZH1cbiAgICAgICAgICAgICAgICBkYXRhPXtyb3dzfVxuICAgICAgICAgICAgICAgIGNvbHVtbnM9e2NvbHVtbnN9XG4gICAgICAgICAgICAgICAgZGlyZWN0aW9uPXtkaXJ9XG4gICAgICAgICAgICAgICAgZXhwYW5kYWJsZVJvd3M9e3RydWV9XG4gICAgICAgICAgICAgICAgcGFnaW5hdGlvblBlclBhZ2U9e1RBQkxFX1JPV1NfUEVSX1BBR0V9XG4gICAgICAgICAgICAgICAgcm93Q29tcG9uZW50PXtFeHBhbmRlZENvbXBvbmVudH1cbiAgICAgICAgICAgICAgICBleHBhbmRhYmxlUm93c0NvbXBvbmVudFByb3BzPXt7IHBhdGhvZ2VuOiBzZWxlY3RlZFBhdGhvZ2VuIH19XG4gICAgICAgICAgICAgICAgZGVmYXVsdFNvcnRGaWVsZElkPXszfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L01hcFRhYmxlQ29udGFpbmVyPlxuICAgICAgICA8L1NlY29uZFNlY3Rpb24+XG4gICAgICA8L0NvbnRlbnQ+XG4gICAgPC8+XG4gICk7XG59O1xuXG5jb25zdCBSb3dOYW1lID0gc3R5bGVkLmRpdjx7IGlzUnRsOiBib29sZWFuIH0+YFxuICAgIHdpZHRoOiAxMDAlO1xuICAgICAgXG4gICAgLnJvd19uYW1lIHtcbiAgICAgIC5leHBhbmRhYmxlLWljb24ge1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiAuMnMgZWFzZS1pbjsgICAgICBcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAwIDRweDtcbiAgICAgICAgXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDJweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi0tY2xlYW4ge1xuICAgICAgICAgY29sb3I6ICMyN2E2M2E7IFxuICAgICAgICAgLmV4cGFuZGFibGUtaWNvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMjdhNjNhOyAgICAgICAgXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLS1pbmZlY3RlZCB7XG4gICAgICAgICAgY29sb3I6ICNlMTAwMzY7XG4gICAgICAgICAgLmV4cGFuZGFibGUtaWNvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZTEwMDM2OyAgICAgICAgXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLS1pbmFjdGl2ZS1zYW1wbGluZyB7XG4gICAgICAgICAgY29sb3I6ICR7dGhlbWUuY29sb3JTY2hlbWUubmF0dXJhbC5uNjB9O1xuICAgICAgICAgIC5leHBhbmRhYmxlLWljb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHt0aGVtZS5jb2xvclNjaGVtZS5uYXR1cmFsLm42MH07ICAgICAgICBcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5uYW1lIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgICAgICAkeyhwKSA9PiAocC5pc1J0bCA/ICdyaWdodDogNTFweDsnIDogJ2xlZnQ6IDUxcHg7Jyl9XG4gICAgICAgICAgdG9wOiAxNnB4O1xuICAgICAgICAgIHdpZHRoOiA3LjVlbTtcbiAgICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAzcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIGA7XG5cbmNvbnN0IEFjdGlvbnNDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuYDtcblxuY29uc3QgRmlyc3RTZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgbWFyZ2luOiA4NXB4IDAgMjBweCAwO1xuYDtcblxuY29uc3QgU2Vjb25kU2VjdGlvbiA9IHN0eWxlZC5kaXZgXG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJhY2tncm91bmQ6ICNmY2ZjZmM7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlN2U3ZTc7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbmA7XG5cbmNvbnN0IE1hcFRhYmxlQ29udGFpbmVyID0gc3R5bGVkLmRpdjx7IGlzUnRsOiBib29sZWFuIH0+YFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIC5tYXAtY29udGFpbmVyIHtcbiAgICB3aWR0aDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAuZXZlbnQtdGltZXJhbmdlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgICNtYXAge1xuICAgICAgaGVpZ2h0OiA2OXZoO1xuICAgICAgd2lkdGg6IDMwdnc7XG4gICAgfVxuICB9XG4gIFtkYXRhLXRlc3RpZD0na2FuZG8tdGFibGUnXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgW2RhdGEtY29sdW1uLWlkPScxJ10ge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgJjpob3ZlciB7XG4gICAgICAubmFtZSB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLmV4cGFuZGFibGUtaWNvbiB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEyMHB4ICsgMXZ3KTtcbiAgICAgICAgdHJhbnNpdGlvbjogMC4ycyBjdWJpYy1iZXppZXIoMC42NSwgMC4wNSwgMC4zNiwgMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNwaW5uZXItY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG5gO1xuXG5jb25zdCBDb250ZW50ID0gc3R5bGVkLmRpdmBcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgcGFkZGluZzogMjBweDtcbiAgfVxuXG4gIGgxIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuXG4gIHBhZGRpbmc6IDYwcHggNjBweDtcbmA7XG4iXX0=
|
|
501
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9XYmVEYXNoYm9hcmQvV2JlRGFzaGJvYXJkUGFnZS50c3giXSwibmFtZXMiOlsiVEFCTEVfUk9XU19QRVJfUEFHRSIsIk1BUEJPWF9XQkVfREFTSEJPQVJEX1NUWUxFIiwiV0JFSXNyYWVsSWQiLCJXYmVEYXNoYm9hcmRQYWdlIiwiZ2V0V0FJZCIsInF1ZXJ5IiwiZ2V0IiwiZmV0Y2hVcmwiLCJmaXJzdFBhcmFtIiwic2VsZWN0ZWRQYXRob2dlbiIsIkRFRkFVTFRfVEFCUyIsImkxOG4iLCJ0IiwiY29udmVydFRhYk5hbWVUb1BhcmFtIiwidGFiX25hbWUiLCJnZXRQYXRob2dlbiIsInBhdGhvZ2VucyIsInBlcm1pc3Npb25zIiwiY3VycmVudERhdGEiLCJzZXRDdXJyZW50RGF0YSIsImZpbmQiLCJpdGVtIiwidG9Mb3dlckNhc2UiLCJzZXRTZWxlY3RlZFBhdGhvZ2VuIiwibWFwQXJlYXMiLCJzZXRNYXBBcmVhcyIsIm1hcFpvb20iLCJzZXRNYXBab29tIiwicm93cyIsInNldFJvd3MiLCJ0YWJzIiwic2V0VGFicyIsInNlbGVjdGVkVGFiIiwic2V0U2VsZWN0ZWRUYWIiLCJkYXRhIiwiaXNGZXRjaGluZyIsInNldEZldGNoaW5nIiwiZGlzcGF0Y2giLCJuYXZDb250ZXh0Iiwic3RhdGUiLCJuYXZfY29udGV4dF9kYXRhIiwiZ2xvYmFsRGF0YSIsImdsb2JhbF9kYXRhIiwiaXNSdGwiLCJsb2NhbGUiLCJjb2xvckZvclJvdyIsInJvdyIsInF1YWxpdHkiLCJzYW1wbGVfYWN0aXZlIiwiaXNJbmZlY3RlZCIsIm52bCIsImNvbHVtbnMiLCJSZWFjdCIsInVzZU1lbW8iLCJuYW1lIiwic2VsZWN0b3IiLCJzb3J0YWJsZSIsImNlbGwiLCJoYW5kbGVBcmVhQ2xpY2siLCJoYXNfY2hpbGRyZW4iLCJudmxfY2hhbmdlIiwiZGlyZWN0aW9uIiwiY29sb3IiLCJtYXJnaW4iLCJmYUNoZXZyb25VcCIsImZhQ2hldnJvbkRvd24iLCJsYXN0X3VwZGF0ZWQiLCJEYXRlIiwidG9Mb2NhbGVEYXRlU3RyaW5nIiwiaWQiLCJwb3B1bGF0aW9uIiwicGFyc2VJbnQiLCJpbml0aWFsaXplTWFwQXJlYXMiLCJhcmVhcyIsIm1hcHBlZFdpdGhDb2xvciIsIm1hcCIsImEiLCJ3YmVfZGFzaGJvYXJkX25hbWUiLCJzaG93Q29sb3JPbmx5SW5Cb3JkZXJzIiwidGhlbWUiLCJjb2xvclNjaGVtZSIsIm5hdHVyYWwiLCJuNjAiLCJSMTAwIiwiRzEwMCIsInpvb21Ub0FyZWEiLCJhcmVhIiwic2hhcGVfZGF0YSIsInVuZGVmaW5lZCIsInpvb21BbGxBcmVhcyIsInNoYXBlRGF0YSIsImRhdHVtIiwiaGlzdG9yeSIsIndhdGVyQXV0aG9yaXR5SWQiLCJkaXIiLCJEaXJlY3Rpb24iLCJSVEwiLCJMVFIiLCJmaWx0ZXJSZXN1bHRzQW5kU2V0Um93cyIsInRleHQiLCJyZXN1bHRzIiwiZmlsdGVyIiwiZWwiLCJpbmNsdWRlcyIsImhhbmRsZU9uUm93RXhwYW5kIiwiZXhwYW5kZWQiLCJ3YXRlckF1dGhvcml0eU5hbWUiLCJoYW5kbGVTZWxlY3RQYXRob2dlbkNsaWNrIiwicGF0aG9nZW4iLCJ1dGlsaXR5X25hbWUiLCJwdXNoIiwiZmV0Y2hGb3JUYWJTZWxlY3Rpb24iLCJ0YWIiLCJheGlvcyIsInRoZW4iLCJyZXNwb25zZSIsInJlc3BvbnNlRGF0YSIsImhhbmRsZVRhYlNlbGVjdGlvbkNsaWNrIiwiaW5pdGlhbGl6ZURyaWxsZWRBcmVhIiwiaW5pdGlhbGl6ZUNvbXBvbmVudCIsImxlbmd0aCIsInRleHRBbGlnbiIsIkV4cGFuZGVkQ29tcG9uZW50IiwiUm93TmFtZSIsInN0eWxlZCIsImRpdiIsInAiLCJBY3Rpb25zQ29udGFpbmVyIiwiRmlyc3RTZWN0aW9uIiwiU2Vjb25kU2VjdGlvbiIsIk1hcFRhYmxlQ29udGFpbmVyIiwiQ29udGVudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFD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RUFBRTBILHNDQVBoQjtBQVFFLElBQUEsNEJBQTRCLEVBQUU7QUFBRWQsTUFBQUEsUUFBUSxFQUFFbkc7QUFBWixLQVJoQztBQVNFLElBQUEsa0JBQWtCLEVBQUU7QUFUdEIsSUFqQkosQ0FURixDQXpDRixDQURGLENBREY7QUFzRkQsQ0FyWk07Ozs7QUF1WlAsSUFBTWtILE9BQU8sR0FBR0MsMEJBQU9DLEdBQVY7QUFBQTtBQUFBO0FBQUEseWRBaUNNOUMsYUFBTUMsV0FBTixDQUFrQkMsT0FBbEIsQ0FBMEJDLEdBakNoQyxFQW1DYUgsYUFBTUMsV0FBTixDQUFrQkMsT0FBbEIsQ0FBMEJDLEdBbkN2QyxFQTBDRCxVQUFDNEMsQ0FBRDtBQUFBLFNBQVFBLENBQUMsQ0FBQ25GLEtBQUYsR0FBVSxjQUFWLEdBQTJCLGFBQW5DO0FBQUEsQ0ExQ0MsQ0FBYjs7QUFtREEsSUFBTW9GLGdCQUFnQixHQUFHSCwwQkFBT0MsR0FBVjtBQUFBO0FBQUE7QUFBQSw4REFBdEI7O0FBTUEsSUFBTUcsWUFBWSxHQUFHSiwwQkFBT0MsR0FBVjtBQUFBO0FBQUE7QUFBQSw2QkFBbEI7O0FBSUEsSUFBTUksYUFBYSxHQUFHTCwwQkFBT0MsR0FBVjtBQUFBO0FBQUE7QUFBQSxtRkFBbkI7O0FBT0EsSUFBTUssaUJBQWlCLEdBQUdOLDBCQUFPQyxHQUFWO0FBQUE7QUFBQTtBQUFBLGtnQkFBdkI7O0FBd0NBLElBQU1NLE9BQU8sR0FBR1AsMEJBQU9DLEdBQVY7QUFBQTtBQUFBO0FBQUEsc0ZBQWIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyB1c2VIaXN0b3J5IH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgeyBhbmFseXRpY3NUcmFjayB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9BbmFseXRpY3MnO1xuaW1wb3J0IHsgU2VhcmNoSW5wdXQgfSBmcm9tICcuL1NlYXJjaElucHV0JztcbmltcG9ydCB7IEZvbnRBd2Vzb21lSWNvbiB9IGZyb20gJ0Bmb3J0YXdlc29tZS9yZWFjdC1mb250YXdlc29tZSc7XG5pbXBvcnQgeyBHcmFwaFdyYXBwZXIgfSBmcm9tICcuL0dyYXBoV3JhcHBlcic7XG5pbXBvcnQgeyBmYUNoZXZyb25Eb3duLCBmYUNoZXZyb25VcCB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnLi4vLi4vc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IHsgdXBkYXRlTmF2Q29udGV4dCB9IGZyb20gJy4uLy4uL3N0b3JlL2NvbnRleHQvYWN0aW9ucyc7XG5pbXBvcnQgeyBrRm9ybWF0dGVyIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL1Rob3VzYW5kc1RvSyc7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBEcmlsbERvd25JY29uIH0gZnJvbSAnLi9EcmlsbERvd25JY29uLnN2Zyc7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBCYXNlTGV2ZWwgfSBmcm9tICcuL0Jhc2VMZXZlbC5zdmcnO1xuaW1wb3J0IHsgRGlyZWN0aW9uIH0gZnJvbSAncmVhY3QtZGF0YS10YWJsZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgbGV2ZWxOVkwgfSBmcm9tICcuLi9Db3ZpZFBhZ2UvY29tcG9uZW50cy9udmxTdGF0dXNIZWxwZXInO1xuaW1wb3J0IHsgTWFwIH0gZnJvbSAnLi4vLi4vV2lkZ2V0cy9NYXAvTWFwJztcbmltcG9ydCB7IEthbmRvVGFibGUgfSBmcm9tICdzcmMvdWkta2l0L0thbmRvVGFibGUvS2FuZG9UYWJsZSc7XG5pbXBvcnQgeyBUYWJzIH0gZnJvbSAnLi9UYWJzJztcbmltcG9ydCB1c2VLYW5kb0ZldGNoIGZyb20gJy4uLy4uL2hvb2tzL3VzZUthbmRvRmV0Y2gnO1xuaW1wb3J0IHVzZVF1ZXJ5VVJMIGZyb20gJy4uLy4uL2hvb2tzL3VzZVF1ZXJ5VVJMJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMvbWFjcm8nO1xuaW1wb3J0IERyb3Bkb3duIGZyb20gJ3JlYWN0LWJvb3RzdHJhcC9janMvRHJvcGRvd24nO1xuaW1wb3J0IERyb3Bkb3duQnV0dG9uIGZyb20gJ3JlYWN0LWJvb3RzdHJhcC9janMvRHJvcGRvd25CdXR0b24nO1xuaW1wb3J0IGF4aW9zIGZyb20gJ2F4aW9zJztcbmltcG9ydCBUcnVuY2F0ZSBmcm9tICcuLi8uLi91dGlsaXRpZXMvVHJ1bmNhdGUnO1xuaW1wb3J0IHsgRXhwYW5kZWRDb21wb25lbnQgfSBmcm9tICcuL0V4cGFuZGFibGVDb21wb25lbnQnO1xuaW1wb3J0IHsgU3Bpbm5lciB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvU3Bpbm5lci9TcGlubmVyJztcbmltcG9ydCB7IFdiZVN1bW1hcnlCYXIgfSBmcm9tICcuL1diZVN1bW1hcnlCYXInO1xuaW1wb3J0IEVycm9yQm91bmRhcnkgZnJvbSAnLi4vLi4vdXRpbGl0aWVzL0Vycm9yQm91bmRhcnknO1xuaW1wb3J0IHsgdGhlbWUgfSBmcm9tICcuLi8uLi9zdHlsZXMvdGhlbWUvdGhlbWUnO1xuY29uc3QgVEFCTEVfUk9XU19QRVJfUEFHRSA9IDI1O1xuY29uc3QgTUFQQk9YX1dCRV9EQVNIQk9BUkRfU1RZTEUgPSAnY2t6emtqc2k3MDA1ZjE0bzlpbTBtY3pzOSc7XG5cbmV4cG9ydCBjb25zdCBXQkVJc3JhZWxJZCA9IDQ2MztcbmV4cG9ydCBjb25zdCBXYmVEYXNoYm9hcmRQYWdlID0gKCkgPT4ge1xuICBjb25zdCBnZXRXQUlkID0gKCkgPT4ge1xuICAgIHJldHVybiBxdWVyeS5nZXQoJ3dhdGVyX2F1dGhvcml0eV9pZCcpO1xuICB9O1xuICBjb25zdCBmZXRjaFVybCA9IChmaXJzdFBhcmFtKSA9PiB7XG4gICAgcmV0dXJuIGAvYXBpX3VpL3diZV9kYXNoYm9hcmQvJHtzZWxlY3RlZFBhdGhvZ2VufS8ke2ZpcnN0UGFyYW19P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dldFdBSWQoKX1gO1xuICB9O1xuICBjb25zdCBERUZBVUxUX1RBQlMgPSBbXG4gICAgaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQuY2l0aWVzJyksXG4gICAgaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQubW9uaXRvcmVkX2FyZWFzJyksXG4gIF07XG4gIGNvbnN0IGNvbnZlcnRUYWJOYW1lVG9QYXJhbSA9ICh0YWJfbmFtZTogc3RyaW5nKSA9PiB7XG4gICAgaWYgKHRhYl9uYW1lID09PSBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5jaXRpZXMnKSkge1xuICAgICAgcmV0dXJuICdjaXR5JztcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgdGFiX25hbWUgPT09IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLm1vbml0b3JlZF9hcmVhcycpXG4gICAgKSB7XG4gICAgICByZXR1cm4gJ21vbml0b3JlZCc7XG4gICAgfVxuXG4gICAgcmV0dXJuICdjaXR5JztcbiAgfTtcbiAgY29uc3QgcXVlcnkgPSB1c2VRdWVyeVVSTCgpO1xuICBjb25zdCBnZXRQYXRob2dlbiA9ICgpID0+IHtcbiAgICByZXR1cm4gcXVlcnkuZ2V0KCdwYXRob2dlbicpIHx8ICcnO1xuICB9O1xuXG4gIGNvbnN0IHBhdGhvZ2VucyA9IHVzZVNlbGVjdG9yKCh7IHBlcm1pc3Npb25zIH0pID0+IHBlcm1pc3Npb25zLnBhdGhvZ2Vucyk7XG5cbiAgY29uc3QgW2N1cnJlbnREYXRhLCBzZXRDdXJyZW50RGF0YV0gPSB1c2VTdGF0ZShbXSk7XG4gIGNvbnN0IFtzZWxlY3RlZFBhdGhvZ2VuLCBzZXRTZWxlY3RlZFBhdGhvZ2VuXSA9IHVzZVN0YXRlPHN0cmluZz4oXG4gICAgcGF0aG9nZW5zLmZpbmQoXG4gICAgICAoaXRlbSkgPT4gaXRlbS50b0xvd2VyQ2FzZSgpID09PSBnZXRQYXRob2dlbigpLnRvTG93ZXJDYXNlKCksXG4gICAgKSB8fCAnJyxcbiAgKTtcbiAgY29uc3QgW21hcEFyZWFzLCBzZXRNYXBBcmVhc10gPSB1c2VTdGF0ZTxhbnlbXT4oW10pO1xuICBjb25zdCBbbWFwWm9vbSwgc2V0TWFwWm9vbV0gPSB1c2VTdGF0ZTxhbnlbXT4oW10pO1xuICBjb25zdCBbcm93cywgc2V0Um93c10gPSB1c2VTdGF0ZTxhbnk+KFtdKTtcbiAgY29uc3QgW3RhYnMsIHNldFRhYnNdID0gdXNlU3RhdGU8c3RyaW5nW10+KERFRkFVTFRfVEFCUyk7XG4gIGNvbnN0IFtzZWxlY3RlZFRhYiwgc2V0U2VsZWN0ZWRUYWJdID0gdXNlU3RhdGU8c3RyaW5nPih0YWJzWzBdKTtcbiAgY29uc3QgeyBkYXRhLCBpc0ZldGNoaW5nLCBzZXRGZXRjaGluZyB9ID0gdXNlS2FuZG9GZXRjaChcbiAgICBmZXRjaFVybChjb252ZXJ0VGFiTmFtZVRvUGFyYW0oc2VsZWN0ZWRUYWIpKSxcbiAgKTtcblxuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGNvbnN0IG5hdkNvbnRleHQgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS5uYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQsXG4gICk7XG4gIGNvbnN0IGdsb2JhbERhdGEgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS5nbG9iYWxfZGF0YSxcbiAgKTtcbiAgY29uc3QgaXNSdGw6IGJvb2xlYW4gPSBuYXZDb250ZXh0LmxvY2FsZSA9PT0gJ2hlJyA/IHRydWUgOiBmYWxzZTtcbiAgY29uc3QgY29sb3JGb3JSb3cgPSAocm93KSA9PiB7XG4gICAgbGV0IHF1YWxpdHk7XG4gICAgaWYgKCFyb3cuc2FtcGxlX2FjdGl2ZSkge1xuICAgICAgcXVhbGl0eSA9ICdpbmFjdGl2ZS1zYW1wbGluZyc7XG4gICAgfSBlbHNlIGlmIChpc0luZmVjdGVkKHJvdy5udmwpKSB7XG4gICAgICBxdWFsaXR5ID0gJ2luZmVjdGVkJztcbiAgICB9IGVsc2Uge1xuICAgICAgcXVhbGl0eSA9ICdjbGVhbic7XG4gICAgfVxuXG4gICAgcmV0dXJuIGByb3dfbmFtZS0tJHtxdWFsaXR5fWA7XG4gIH07XG4gIGNvbnN0IGNvbHVtbnM6IGFueSA9IFJlYWN0LnVzZU1lbW8oXG4gICAgKCkgPT4gW1xuICAgICAge1xuICAgICAgICBuYW1lOiBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5uYW1lJyksXG4gICAgICAgIHNlbGVjdG9yOiAocm93KSA9PiByb3cubmFtZSxcbiAgICAgICAgc29ydGFibGU6IHRydWUsXG4gICAgICAgIGNlbGw6IChyb3c6IHsgbmFtZTogc3RyaW5nOyBudmw6IG51bWJlcjsgaGFzX2NoaWxkcmVuOiBib29sZWFuIH0pID0+IChcbiAgICAgICAgICA8Um93TmFtZSBpc1J0bD17aXNSdGx9PlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBkYXRhLXRhZz1cImFsbG93Um93RXZlbnRzXCJcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtgcm93X25hbWUgJHtjb2xvckZvclJvdyhyb3cpfWB9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICBoYW5kbGVBcmVhQ2xpY2socm93KTtcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydleHBhbmRhYmxlLWljb24nfT5cbiAgICAgICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICAgIHtyb3cuaGFzX2NoaWxkcmVuICYmIDxEcmlsbERvd25JY29uIC8+fVxuICAgICAgICAgICAgICAgICAgeyFyb3cuaGFzX2NoaWxkcmVuICYmIDxCYXNlTGV2ZWwgLz59XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXsnbmFtZSd9PlxuICAgICAgICAgICAgICAgIDxUcnVuY2F0ZSBjaGFyYWN0ZXJzPXszfSBpbmhlcml0VGV4dEFsaWduPXt0cnVlfT5cbiAgICAgICAgICAgICAgICAgIHtyb3cubmFtZX1cbiAgICAgICAgICAgICAgICA8L1RydW5jYXRlPlxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L1Jvd05hbWU+XG4gICAgICAgICksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5udmxfc2NvcmUnKSxcbiAgICAgICAgc2VsZWN0b3I6IChyb3cpID0+IHJvdy5udmwsXG4gICAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgICBjZWxsOiAocm93OiB7IG52bDogbnVtYmVyIH0pID0+IChcbiAgICAgICAgICA8ZGl2IGRhdGEtdGFnPVwiYWxsb3dSb3dFdmVudHNcIj57cm93Lm52bH08L2Rpdj5cbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLnBlcmNlbnRhZ2VfZnJvbV9sYXN0X3NhbXBsaW5nJyksXG4gICAgICAgIHNlbGVjdG9yOiAocm93KSA9PiByb3cubnZsX2NoYW5nZSxcbiAgICAgICAgc29ydGFibGU6IHRydWUsXG4gICAgICAgIGNlbGw6IChyb3c6IHsgbnZsX2NoYW5nZTogbnVtYmVyIH0pID0+IChcbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBkYXRhLXRhZz1cImFsbG93Um93RXZlbnRzXCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGRpcmVjdGlvbjogJ2x0cicsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuIHN0eWxlPXt7IGNvbG9yOiAnIzAwMDAwMCcsIG1hcmdpbjogJzAgNnB4JyB9fT5cbiAgICAgICAgICAgICAge3Jvdy5udmxfY2hhbmdlfSVcbiAgICAgICAgICAgIDwvc3Bhbj5cblxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICA8Rm9udEF3ZXNvbWVJY29uXG4gICAgICAgICAgICAgICAgaWNvbj17cm93Lm52bF9jaGFuZ2UgPiAwID8gZmFDaGV2cm9uVXAgOiBmYUNoZXZyb25Eb3dufVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQubGFzdF9zYW1wbGVkJyksXG4gICAgICAgIHNlbGVjdG9yOiAnbGFzdF9zYW1wbGVkJyxcbiAgICAgICAgc29ydGFibGU6IChyb3cpID0+IHJvdy5sYXN0X3VwZGF0ZWQsXG4gICAgICAgIGNlbGw6IChyb3c6IHsgbGFzdF91cGRhdGVkOiBzdHJpbmcgfSkgPT4gKFxuICAgICAgICAgIDxkaXYgZGF0YS10YWc9XCJhbGxvd1Jvd0V2ZW50c1wiPlxuICAgICAgICAgICAge3Jvdy5sYXN0X3VwZGF0ZWQgPT09IG51bGxcbiAgICAgICAgICAgICAgPyAnLSdcbiAgICAgICAgICAgICAgOiBuZXcgRGF0ZShyb3cubGFzdF91cGRhdGVkKS50b0xvY2FsZURhdGVTdHJpbmcoJ2VuLUdCJyl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC50cmVuZF9ncmFwaCcpLFxuICAgICAgICBzZWxlY3RvcjogJ3RyZW5kX2dyYXBoJyxcbiAgICAgICAgc29ydGFibGU6IHRydWUsXG4gICAgICAgIGNlbGw6IChyb3c6IHsgaWQ6IG51bWJlciB9KSA9PiAoXG4gICAgICAgICAgPGRpdiBkYXRhLXRhZz1cImFsbG93Um93RXZlbnRzXCI+XG4gICAgICAgICAgICA8R3JhcGhXcmFwcGVyXG4gICAgICAgICAgICAgIGtleT17cm93LmlkfVxuICAgICAgICAgICAgICByb3c9e3Jvd31cbiAgICAgICAgICAgICAgd2F0ZXJfYXV0aG9yaXR5X2lkPXtnZXRXQUlkKCl9XG4gICAgICAgICAgICAgIHBhdGhvZ2VuPXtzZWxlY3RlZFBhdGhvZ2VufVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLnBvcHVsYXRpb24nKSxcbiAgICAgICAgc2VsZWN0b3I6IChyb3cpID0+IHJvdy5wb3B1bGF0aW9uLFxuICAgICAgICBzb3J0YWJsZTogdHJ1ZSxcbiAgICAgICAgY2VsbDogKHJvdzogeyBwb3B1bGF0aW9uOiBzdHJpbmcgfSkgPT4gKFxuICAgICAgICAgIDxkaXYgZGF0YS10YWc9XCJhbGxvd1Jvd0V2ZW50c1wiPlxuICAgICAgICAgICAge2tGb3JtYXR0ZXIocGFyc2VJbnQocm93LnBvcHVsYXRpb24pKX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBbaXNSdGwsIHNlbGVjdGVkUGF0aG9nZW5dLFxuICApO1xuXG4gIGNvbnN0IGluaXRpYWxpemVNYXBBcmVhcyA9IChhcmVhcykgPT4ge1xuICAgIGNvbnN0IG1hcHBlZFdpdGhDb2xvciA9IGFyZWFzLm1hcCgoYTogYW55KSA9PiB7XG4gICAgICBhLndiZV9kYXNoYm9hcmRfbmFtZSA9IGEubmFtZTtcbiAgICAgIGEuc2hvd0NvbG9yT25seUluQm9yZGVycyA9IHRydWU7XG5cbiAgICAgIGlmICghYS5zYW1wbGVfYWN0aXZlKSB7XG4gICAgICAgIGEuY29sb3IgPSB0aGVtZS5jb2xvclNjaGVtZS5uYXR1cmFsLm42MDtcbiAgICAgICAgcmV0dXJuIGE7XG4gICAgICB9XG5cbiAgICAgIGlmIChpc0luZmVjdGVkKGEubnZsKSkge1xuICAgICAgICBhLmNvbG9yID0gdGhlbWUuY29sb3JTY2hlbWUuZGF0YS5SMTAwO1xuICAgICAgICByZXR1cm4gYTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGEuY29sb3IgPSB0aGVtZS5jb2xvclNjaGVtZS5kYXRhLkcxMDA7XG4gICAgICAgIHJldHVybiBhO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgc2V0TWFwQXJlYXMobWFwcGVkV2l0aENvbG9yKTtcbiAgfTtcblxuICBjb25zdCB6b29tVG9BcmVhID0gKGFyZWEpID0+IHtcbiAgICBhcmVhLnNoYXBlX2RhdGEgIT09IHVuZGVmaW5lZCAmJiBzZXRNYXBab29tKGFyZWEuc2hhcGVfZGF0YSk7XG4gIH07XG5cbiAgY29uc3Qgem9vbUFsbEFyZWFzID0gKGRhdGEpID0+IHtcbiAgICBjb25zdCBzaGFwZURhdGEgPSBkYXRhLm1hcCgoZGF0dW0pID0+IHtcbiAgICAgIHJldHVybiBkYXR1bS5zaGFwZV9kYXRhO1xuICAgIH0pO1xuXG4gICAgc2V0TWFwWm9vbShzaGFwZURhdGEpO1xuICB9O1xuXG4gIGNvbnN0IGlzSW5mZWN0ZWQgPSAobnZsOiBudW1iZXIpID0+IHtcbiAgICBpZiAobGV2ZWxOVkwobnZsKSA9PT0gJ2NsZWFuJykge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH0gZWxzZSBpZiAoXG4gICAgICBsZXZlbE5WTChudmwpID09PSAnbG93JyB8fFxuICAgICAgbGV2ZWxOVkwobnZsKSA9PT0gJ21lZGl1bScgfHxcbiAgICAgIGxldmVsTlZMKG52bCkgPT09ICdoaWdoJ1xuICAgICkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgcmV0dXJuO1xuICB9O1xuICBjb25zdCBoaXN0b3J5ID0gdXNlSGlzdG9yeSgpO1xuICBjb25zdCB3YXRlckF1dGhvcml0eUlkID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT5cbiAgICAgIHN0YXRlLmdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsXG4gICk7XG5cbiAgY29uc3QgZGlyOiBEaXJlY3Rpb24gPVxuICAgIG5hdkNvbnRleHQubG9jYWxlID09PSAnaGUnID8gRGlyZWN0aW9uLlJUTCA6IERpcmVjdGlvbi5MVFI7XG5cbiAgY29uc3QgZmlsdGVyUmVzdWx0c0FuZFNldFJvd3MgPSAodGV4dDogc3RyaW5nKSA9PiB7XG4gICAgbGV0IHJlc3VsdHMgPSBjdXJyZW50RGF0YS5maWx0ZXIoZnVuY3Rpb24gKGVsOiBhbnkpIHtcbiAgICAgIHJldHVybiBlbC5uYW1lLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGV4dC50b0xvd2VyQ2FzZSgpKTtcbiAgICB9KTtcblxuICAgIHNldFJvd3MocmVzdWx0cyk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlT25Sb3dFeHBhbmQgPSAoZXhwYW5kZWQsIHJvdykgPT4ge1xuICAgIGV4cGFuZGVkICYmIHpvb21Ub0FyZWEocm93KTtcbiAgICAhZXhwYW5kZWQgJiYgem9vbUFsbEFyZWFzKGRhdGEpO1xuICB9O1xuXG4gIGNvbnN0IHdhdGVyQXV0aG9yaXR5TmFtZSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZSkgPT4gc3RhdGUuZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlOYW1lLFxuICApO1xuXG4gIGNvbnN0IGhhbmRsZVNlbGVjdFBhdGhvZ2VuQ2xpY2sgPSAocGF0aG9nZW4pID0+IHtcbiAgICBhbmFseXRpY3NUcmFjaygnV0JFIFN0YXR1cyBSZXBvcnQgLSBQYXRob2dlbiBjaGFuZ2UgY2xpY2tlZCcsIHtcbiAgICAgIHBhdGhvZ2VuOiBwYXRob2dlbixcbiAgICAgIHV0aWxpdHlfbmFtZTogd2F0ZXJBdXRob3JpdHlOYW1lLFxuICAgIH0pO1xuICAgIHNldFNlbGVjdGVkUGF0aG9nZW4ocGF0aG9nZW4pO1xuICAgIGhpc3RvcnkucHVzaChcbiAgICAgIGAvd2JlX2Rhc2hib2FyZC9pbmRleD9sb2NhbGU9JHtuYXZDb250ZXh0LmxvY2FsZX0md2F0ZXJfYXV0aG9yaXR5X2lkPSR7d2F0ZXJBdXRob3JpdHlJZH0mcGF0aG9nZW49JHtwYXRob2dlbn1gLFxuICAgICk7XG4gIH07XG5cbiAgY29uc3QgZmV0Y2hGb3JUYWJTZWxlY3Rpb24gPSAodGFiKSA9PiB7XG4gICAgc2V0RmV0Y2hpbmcodHJ1ZSk7XG4gICAgYXhpb3MuZ2V0KGZldGNoVXJsKHRhYikpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICBsZXQgcmVzcG9uc2VEYXRhID0gcmVzcG9uc2UuZGF0YS5kYXRhO1xuXG4gICAgICBzZXRGZXRjaGluZyhmYWxzZSk7XG4gICAgICBzZXRUYWJzKERFRkFVTFRfVEFCUyk7XG4gICAgICBzZXRSb3dzKHJlc3BvbnNlRGF0YSk7XG4gICAgICBzZXRDdXJyZW50RGF0YShyZXNwb25zZURhdGEpO1xuICAgICAgaW5pdGlhbGl6ZU1hcEFyZWFzKHJlc3BvbnNlRGF0YSk7XG4gICAgICB6b29tQWxsQXJlYXMocmVzcG9uc2VEYXRhKTtcbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVUYWJTZWxlY3Rpb25DbGljayA9ICh0YWIpID0+IHtcbiAgICBpZiAoIWlzRmV0Y2hpbmcpIHtcbiAgICAgIHNldFNlbGVjdGVkVGFiKHRhYik7XG5cbiAgICAgIGlmICh0YWIgIT09IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLmN1c3RvbScpKSB7XG4gICAgICAgIHRhYiA9XG4gICAgICAgICAgdGFiID09PSBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5jaXRpZXMnKVxuICAgICAgICAgICAgPyAnY2l0eSdcbiAgICAgICAgICAgIDogdGFiID09PSBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5tb25pdG9yZWRfYXJlYXMnKVxuICAgICAgICAgICAgPyAnbW9uaXRvcmVkJ1xuICAgICAgICAgICAgOiAnJztcblxuICAgICAgICBmZXRjaEZvclRhYlNlbGVjdGlvbih0YWIpO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBjb25zdCBpbml0aWFsaXplRHJpbGxlZEFyZWEgPSAocmVzcG9uc2UpID0+IHtcbiAgICBsZXQgZGF0YSA9IHJlc3BvbnNlLmRhdGEuZGF0YTtcbiAgICBzZXRSb3dzKGRhdGEpO1xuICAgIHNldEN1cnJlbnREYXRhKGRhdGEpO1xuICAgIGluaXRpYWxpemVNYXBBcmVhcyhkYXRhKTtcbiAgICB6b29tQWxsQXJlYXMoZGF0YSk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQXJlYUNsaWNrID0gKGFyZWEpID0+IHtcbiAgICB6b29tVG9BcmVhKGFyZWEpO1xuXG4gICAgaWYgKGFyZWEuaGFzX2NoaWxkcmVuKSB7XG4gICAgICBzZXRUYWJzKFsuLi50YWJzLCBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5jdXN0b20nKV0pO1xuICAgICAgc2V0U2VsZWN0ZWRUYWIoaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQuY3VzdG9tJykpO1xuXG4gICAgICBheGlvcy5nZXQoZmV0Y2hVcmwoYXJlYS5pZCkpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgIGluaXRpYWxpemVEcmlsbGVkQXJlYShyZXNwb25zZSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaW5pdGlhbGl6ZUNvbXBvbmVudCA9ICgpID0+IHtcbiAgICBzZXRDdXJyZW50RGF0YShkYXRhKTtcbiAgICBzZXRSb3dzKGRhdGEpO1xuICAgIGFuYWx5dGljc1RyYWNrKCdXQkUgU3RhdHVzIFJlcG9ydCcsIHtcbiAgICAgIHV0aWxpdHlfbmFtZTogd2F0ZXJBdXRob3JpdHlOYW1lLFxuICAgIH0pO1xuICAgIGRpc3BhdGNoKHVwZGF0ZU5hdkNvbnRleHQoeyBuYW1lOiAnd2JlX2Rhc2hib2FyZCcgfSkpO1xuICAgIGluaXRpYWxpemVNYXBBcmVhcyhkYXRhKTtcbiAgICB6b29tQWxsQXJlYXMoZGF0YSk7XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIWlzRmV0Y2hpbmcgJiYgZGF0YSAhPT0gbnVsbCkge1xuICAgICAgaW5pdGlhbGl6ZUNvbXBvbmVudCgpO1xuICAgIH1cbiAgfSwgW2lzRmV0Y2hpbmcsIHNlbGVjdGVkUGF0aG9nZW4sIGRhdGFdKTtcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8Q29udGVudD5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8aDE+XG4gICAgICAgICAgICB7YCR7aTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQudGFibGVfbmFtZScpfSAoJHtcbiAgICAgICAgICAgICAgc2VsZWN0ZWRQYXRob2dlbiB8fCBnZXRQYXRob2dlbigpXG4gICAgICAgICAgICB9KWB9XG4gICAgICAgICAgPC9oMT5cbiAgICAgICAgICA8QWN0aW9uc0NvbnRhaW5lcj5cbiAgICAgICAgICAgIHtwYXRob2dlbnMubGVuZ3RoID4gMSAmJiAoXG4gICAgICAgICAgICAgIDxEcm9wZG93bkJ1dHRvblxuICAgICAgICAgICAgICAgIGlkPVwiZHJvcGRvd24tYmFzaWMtYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9eydidXR0b24gYnV0dG9uLS1zb3J0J31cbiAgICAgICAgICAgICAgICB0aXRsZT17c2VsZWN0ZWRQYXRob2dlbiArICcgJ31cbiAgICAgICAgICAgICAgICB2YXJpYW50PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtwYXRob2dlbnMubWFwKChwYXRob2dlbikgPT4ge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgPERyb3Bkb3duLkl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICBocmVmPVwiI1wiXG4gICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaGFuZGxlU2VsZWN0UGF0aG9nZW5DbGljayhwYXRob2dlbil9XG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHRBbGlnbjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbmF2Q29udGV4dC5sb2NhbGUgPT09ICdoZScgPyAncmlnaHQnIDogJ2xlZnQnLFxuICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICB7cGF0aG9nZW59XG4gICAgICAgICAgICAgICAgICAgIDwvRHJvcGRvd24uSXRlbT5cbiAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgIDwvRHJvcGRvd25CdXR0b24+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvQWN0aW9uc0NvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxGaXJzdFNlY3Rpb24+XG4gICAgICAgICAgPFdiZVN1bW1hcnlCYXJcbiAgICAgICAgICAgIHBhdGhvZ2VuPXtzZWxlY3RlZFBhdGhvZ2VufVxuICAgICAgICAgICAgd2F0ZXJBdXRob3JpdHlJZD17d2F0ZXJBdXRob3JpdHlJZH1cbiAgICAgICAgICAgIGlzUnRsPXtpc1J0bH1cbiAgICAgICAgICAvPlxuICAgICAgICA8L0ZpcnN0U2VjdGlvbj5cblxuICAgICAgICA8U2Vjb25kU2VjdGlvbj5cbiAgICAgICAgICA8U2VhcmNoSW5wdXQgb25DaGFuZ2VCZWhhdmlvcj17ZmlsdGVyUmVzdWx0c0FuZFNldFJvd3N9IC8+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9eyd0YWJzLWNvbnRhaW5lcid9PlxuICAgICAgICAgICAgPFRhYnNcbiAgICAgICAgICAgICAgdGFicz17dGFic31cbiAgICAgICAgICAgICAgc2VsZWN0ZWRUYWI9e3NlbGVjdGVkVGFifVxuICAgICAgICAgICAgICBoYW5kbGVPbkNsaWNrPXtoYW5kbGVUYWJTZWxlY3Rpb25DbGlja31cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPE1hcFRhYmxlQ29udGFpbmVyIGlzUnRsPXtpc1J0bH0+XG4gICAgICAgICAgICB7aXNGZXRjaGluZyAmJiA8U3Bpbm5lciAvPn1cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnbWFwLWNvbnRhaW5lcid9PlxuICAgICAgICAgICAgICB7IWlzRmV0Y2hpbmcgJiYgcm93cyAhPT0gbnVsbCAmJiBtYXBab29tICE9PSBudWxsICYmIChcbiAgICAgICAgICAgICAgICA8RXJyb3JCb3VuZGFyeT5cbiAgICAgICAgICAgICAgICAgIDxNYXBcbiAgICAgICAgICAgICAgICAgICAgYXJlYXM9e21hcEFyZWFzfVxuICAgICAgICAgICAgICAgICAgICBhcmVhVG9DZW50ZXJCeT17bWFwWm9vbX1cbiAgICAgICAgICAgICAgICAgICAgZWRnZXM9e1tdfVxuICAgICAgICAgICAgICAgICAgICBwb2ludHM9e1tdfVxuICAgICAgICAgICAgICAgICAgICBnbG9iYWxfZGF0YT17Z2xvYmFsRGF0YX1cbiAgICAgICAgICAgICAgICAgICAgbWFwQm94U3R5bGU9e01BUEJPWF9XQkVfREFTSEJPQVJEX1NUWUxFfVxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8L0Vycm9yQm91bmRhcnk+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIHshaXNGZXRjaGluZyAmJiByb3dzICE9PSBudWxsICYmIChcbiAgICAgICAgICAgICAgPEthbmRvVGFibGVcbiAgICAgICAgICAgICAgICBvblJvd0V4cGFuZFRvZ2dsZWQ9e2hhbmRsZU9uUm93RXhwYW5kfVxuICAgICAgICAgICAgICAgIGRhdGE9e3Jvd3N9XG4gICAgICAgICAgICAgICAgY29sdW1ucz17Y29sdW1uc31cbiAgICAgICAgICAgICAgICBkaXJlY3Rpb249e2Rpcn1cbiAgICAgICAgICAgICAgICBleHBhbmRhYmxlUm93cz17dHJ1ZX1cbiAgICAgICAgICAgICAgICBwYWdpbmF0aW9uUGVyUGFnZT17VEFCTEVfUk9XU19QRVJfUEFHRX1cbiAgICAgICAgICAgICAgICByb3dDb21wb25lbnQ9e0V4cGFuZGVkQ29tcG9uZW50fVxuICAgICAgICAgICAgICAgIGV4cGFuZGFibGVSb3dzQ29tcG9uZW50UHJvcHM9e3sgcGF0aG9nZW46IHNlbGVjdGVkUGF0aG9nZW4gfX1cbiAgICAgICAgICAgICAgICBkZWZhdWx0U29ydEZpZWxkSWQ9ezN9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvTWFwVGFibGVDb250YWluZXI+XG4gICAgICAgIDwvU2Vjb25kU2VjdGlvbj5cbiAgICAgIDwvQ29udGVudD5cbiAgICA8Lz5cbiAgKTtcbn07XG5cbmNvbnN0IFJvd05hbWUgPSBzdHlsZWQuZGl2PHsgaXNSdGw6IGJvb2xlYW4gfT5gXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgICBcbiAgICAucm93X25hbWUge1xuICAgICAgLmV4cGFuZGFibGUtaWNvbiB7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIHRyYW5zaXRpb246IC4ycyBlYXNlLWluOyAgICAgIFxuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDAgNHB4O1xuICAgICAgICBcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogMnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLS1jbGVhbiB7XG4gICAgICAgICBjb2xvcjogIzI3YTYzYTsgXG4gICAgICAgICAuZXhwYW5kYWJsZS1pY29uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMyN2E2M2E7ICAgICAgICBcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYtLWluZmVjdGVkIHtcbiAgICAgICAgICBjb2xvcjogI2UxMDAzNjtcbiAgICAgICAgICAuZXhwYW5kYWJsZS1pY29uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlMTAwMzY7ICAgICAgICBcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYtLWluYWN0aXZlLXNhbXBsaW5nIHtcbiAgICAgICAgICBjb2xvcjogJHt0aGVtZS5jb2xvclNjaGVtZS5uYXR1cmFsLm42MH07XG4gICAgICAgICAgLmV4cGFuZGFibGUtaWNvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAke3RoZW1lLmNvbG9yU2NoZW1lLm5hdHVyYWwubjYwfTsgICAgICAgIFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm5hbWUge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgICAgICR7KHApID0+IChwLmlzUnRsID8gJ3JpZ2h0OiA1MXB4OycgOiAnbGVmdDogNTFweDsnKX1cbiAgICAgICAgICB0b3A6IDE2cHg7XG4gICAgICAgICAgd2lkdGg6IDcuNWVtO1xuICAgICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDNweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgYDtcblxuY29uc3QgQWN0aW9uc0NvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBGaXJzdFNlY3Rpb24gPSBzdHlsZWQuZGl2YFxuICBtYXJnaW46IDg1cHggMCAyMHB4IDA7XG5gO1xuXG5jb25zdCBTZWNvbmRTZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgcGFkZGluZzogMjBweDtcbiAgYmFja2dyb3VuZDogI2ZjZmNmYztcbiAgYm9yZGVyOiAxcHggc29saWQgI2U3ZTdlNztcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuYDtcblxuY29uc3QgTWFwVGFibGVDb250YWluZXIgPSBzdHlsZWQuZGl2PHsgaXNSdGw6IGJvb2xlYW4gfT5gXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgLm1hcC1jb250YWluZXIge1xuICAgIHdpZHRoOiB1bnNldCAhaW1wb3J0YW50O1xuICAgIC5ldmVudC10aW1lcmFuZ2Uge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgI21hcCB7XG4gICAgICBoZWlnaHQ6IDY5dmg7XG4gICAgICB3aWR0aDogMzB2dztcbiAgICB9XG4gIH1cbiAgW2RhdGEtdGVzdGlkPSdrYW5kby10YWJsZSddIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBbZGF0YS1jb2x1bW4taWQ9JzEnXSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIC5uYW1lIHtcbiAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAuZXhwYW5kYWJsZS1pY29uIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTIwcHggKyAxdncpO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjJzIGN1YmljLWJlemllcigwLjY1LCAwLjA1LCAwLjM2LCAxKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc3Bpbm5lci1jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbmA7XG5cbmNvbnN0IENvbnRlbnQgPSBzdHlsZWQuZGl2YFxuICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG5cbiAgaDEge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgcGFkZGluZzogNjBweCA2MHB4O1xuYDtcbiJdfQ==
|
|
@@ -102,8 +102,8 @@ var WbeSummaryBar = function WbeSummaryBar(props) {
|
|
|
102
102
|
isRtl: isRtl
|
|
103
103
|
}, /*#__PURE__*/_react.default.createElement(_InfoTooltip.InfoTooltip, {
|
|
104
104
|
data: _i18n.default.t('components.wbe_dashboard.wbe_summary.tooltip.infected'),
|
|
105
|
-
title: _i18n.default.t('components.wbe_dashboard.wbe_summary.
|
|
106
|
-
}, _i18n.default.t('components.wbe_dashboard.wbe_summary.
|
|
105
|
+
title: _i18n.default.t('components.wbe_dashboard.wbe_summary.infected_points')
|
|
106
|
+
}, _i18n.default.t('components.wbe_dashboard.wbe_summary.infected_points'))), /*#__PURE__*/_react.default.createElement(Percentage, null, data.infected_percentage, "%"), /*#__PURE__*/_react.default.createElement(PercentageDescription, null, positiveOrNegativeString(data.infected_gap_from_previous_week), ' ', _i18n.default.t('components.wbe_dashboard.wbe_summary.from_last_week'))), /*#__PURE__*/_react.default.createElement(Box, null, /*#__PURE__*/_react.default.createElement(PercentageLabel, {
|
|
107
107
|
isRtl: isRtl
|
|
108
108
|
}, /*#__PURE__*/_react.default.createElement(_InfoTooltip.InfoTooltip, {
|
|
109
109
|
data: _i18n.default.t('components.wbe_dashboard.wbe_summary.tooltip.trend'),
|
|
@@ -202,4 +202,4 @@ var TopSection = _styledComponents.default.div.withConfig({
|
|
|
202
202
|
displayName: "WbeSummaryBar__TopSection",
|
|
203
203
|
componentId: "sc-1riqg8c-9"
|
|
204
204
|
})(["@media (max-width:1250px){width:100%;max-width:100%;}display:flex;justify-content:space-evenly;width:max-content;max-width:50%;"]);
|
|
205
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9XYmVEYXNoYm9hcmQvV2JlU3VtbWFyeUJhci50c3giXSwibmFtZXMiOlsiV2JlU3VtbWFyeUJhciIsInByb3BzIiwid2F0ZXJBdXRob3JpdHlJZCIsImlzUnRsIiwicGF0aG9nZW4iLCJpbml0aWFsU3VtbWFyeVN0YXRlIiwiY2xlYW5fcGVyY2VudGFnZSIsImNsZWFuZWRfZ2FwX2Zyb21fcHJldmlvdXNfd2VlayIsImluY3JlYXNpbmdfdHJlbmRfcGVyY2VudGFnZSIsImluZmVjdGVkX2dhcF9mcm9tX3ByZXZpb3VzX3dlZWsiLCJpbmZlY3RlZF9wZXJjZW50YWdlIiwiYXJlYXNfd2l0aF9hY3RpdmVfc2FtcGxpbmdzX3BlcmNlbnRhZ2UiLCJwb3B1bGF0aW9uIiwid2Vla3NfZm9yX2dvdl9mZXRjaCIsIndlZWtzIiwieF9heGlzIiwiZGF0YSIsInNldERhdGEiLCJpc1N1bW1hcnlHcmFwaE1vZGFsT3BlbiIsInNldElzU3VtbWFyeUdyYXBoTW9kYWxPcGVuIiwiZmV0Y2hBbmRTZXREYXRhIiwiYXhpb3MiLCJnZXQiLCJ3YmVEYXNoYm9hcmQiLCJzdW1tYXJ5QmFyIiwidXJsIiwidGhlbiIsInJlc3BvbnNlIiwic3VtbWFyeSIsInBvc2l0aXZlT3JOZWdhdGl2ZVN0cmluZyIsIm51bWJlciIsIk1hdGgiLCJzaWduIiwiaGFuZGxlRXhwYW5kQ2xpY2siLCJ1bmRlZmluZWQiLCJjbGVhbnVwIiwiaTE4biIsInQiLCJmYUFycm93c0FsdCIsIkJveENvbnRhaW5lciIsInN0eWxlZCIsImRpdiIsIkJveCIsIkdyYXBoQm94IiwiR3JhcGhDb250YWluZXIiLCJFeHBhbmRJY29uIiwicCIsInRoZW1lIiwiY29sb3JTY2hlbWUiLCJuYXR1cmFsIiwibjUwIiwicHJpbWFyeSIsInAxIiwiUGVyY2VudGFnZUxhYmVsIiwiUGVyY2VudGFnZSIsIlBlcmNlbnRhZ2VEZXNjcmlwdGlvbiIsIm42MCIsIkJvdHRvbVNlY3Rpb24iLCJUb3BT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RUFBekM7QUFBQSxDQUhLLENBQWhCOztBQU1BLElBQU1HLHFCQUFxQixHQUFHZiwwQkFBT0MsR0FBVjtBQUFBO0FBQUE7QUFBQSw4SUFVaEI7QUFBQSxNQUFHTSxLQUFILFNBQUdBLEtBQUg7QUFBQSxTQUFlQSxLQUFLLENBQUNDLFdBQU4sQ0FBa0JDLE9BQWxCLENBQTBCTyxHQUF6QztBQUFBLENBVmdCLENBQTNCOztBQWFBLElBQU1DLGFBQWEsR0FBR2pCLDBCQUFPQyxHQUFWO0FBQUE7QUFBQTtBQUFBLHFKQUFuQjs7QUFhQSxJQUFNaUIsVUFBVSxHQUFHbEIsMEJBQU9DLEdBQVY7QUFBQTtBQUFBO0FBQUEsdUlBQWhCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cy9tYWNybyc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgU3VtbWFyeUdyYXBoIH0gZnJvbSAnLi9TdW1tYXJ5R3JhcGgnO1xuaW1wb3J0IHsgdXJscyB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy91cmxzJztcbmltcG9ydCB7IEluZm9Ub29sdGlwIH0gZnJvbSAnc3JjL3VpLWtpdC9JbmZvVG9vbHRpcC9JbmZvVG9vbHRpcCc7XG5pbXBvcnQgeyBGb250QXdlc29tZUljb24gfSBmcm9tICdAZm9ydGF3ZXNvbWUvcmVhY3QtZm9udGF3ZXNvbWUnO1xuaW1wb3J0IHsgZmFBcnJvd3NBbHQgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgU3VtbWFyeUdyYXBoTW9kYWwgfSBmcm9tICcuL1N1bW1hcnlHcmFwaE1vZGFsJztcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3RoZW1lL3RoZW1lJztcblxudHlwZSBQcm9wcyA9IHtcbiAgd2F0ZXJBdXRob3JpdHlJZDogbnVtYmVyO1xuICBwYXRob2dlbjogc3RyaW5nO1xuICBpc1J0bDogYm9vbGVhbjtcbn07XG5cbnR5cGUgRGF0YSA9IHtcbiAgY2xlYW5fcGVyY2VudGFnZTogbnVtYmVyO1xuICBjbGVhbmVkX2dhcF9mcm9tX3ByZXZpb3VzX3dlZWs6IG51bWJlcjtcbiAgaW5jcmVhc2luZ190cmVuZF9wZXJjZW50YWdlOiBudW1iZXI7XG4gIGluZmVjdGVkX2dhcF9mcm9tX3ByZXZpb3VzX3dlZWs6IG51bWJlcjtcbiAgaW5mZWN0ZWRfcGVyY2VudGFnZTogbnVtYmVyO1xuICBhcmVhc193aXRoX2FjdGl2ZV9zYW1wbGluZ3NfcGVyY2VudGFnZTogbnVtYmVyO1xuICBwb3B1bGF0aW9uOiBudW1iZXI7XG4gIHdlZWtzX2Zvcl9nb3ZfZmV0Y2g6IHsgd2Vla3M6IHN0cmluZ1tdOyB4X2F4aXM6IHN0cmluZ1tdIH07XG59O1xuXG5leHBvcnQgY29uc3QgV2JlU3VtbWFyeUJhcjogUmVhY3QuRkM8UHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgd2F0ZXJBdXRob3JpdHlJZCwgaXNSdGwsIHBhdGhvZ2VuIH0gPSBwcm9wcztcbiAgY29uc3QgaW5pdGlhbFN1bW1hcnlTdGF0ZSA9IHtcbiAgICBjbGVhbl9wZXJjZW50YWdlOiAwLFxuICAgIGNsZWFuZWRfZ2FwX2Zyb21fcHJldmlvdXNfd2VlazogMCxcbiAgICBpbmNyZWFzaW5nX3RyZW5kX3BlcmNlbnRhZ2U6IDAsXG4gICAgaW5mZWN0ZWRfZ2FwX2Zyb21fcHJldmlvdXNfd2VlazogMCxcbiAgICBpbmZlY3RlZF9wZXJjZW50YWdlOiAwLFxuICAgIGFyZWFzX3dpdGhfYWN0aXZlX3NhbXBsaW5nc19wZXJjZW50YWdlOiAwLFxuICAgIHBvcHVsYXRpb246IDAsXG4gICAgd2Vla3NfZm9yX2dvdl9mZXRjaDogeyB3ZWVrczogW10sIHhfYXhpczogW10gfSxcbiAgfTtcbiAgY29uc3QgW2RhdGEsIHNldERhdGFdID0gdXNlU3RhdGU8RGF0YT4oaW5pdGlhbFN1bW1hcnlTdGF0ZSk7XG4gIGNvbnN0IFtpc1N1bW1hcnlHcmFwaE1vZGFsT3Blbiwgc2V0SXNTdW1tYXJ5R3JhcGhNb2RhbE9wZW5dID1cbiAgICB1c2VTdGF0ZTxib29sZWFuPihmYWxzZSk7XG4gIGNvbnN0IGZldGNoQW5kU2V0RGF0YSA9ICgpID0+IHtcbiAgICBheGlvc1xuICAgICAgLmdldChcbiAgICAgICAgdXJscyh7IHdhdGVyQXV0aG9yaXR5SWQ6IHdhdGVyQXV0aG9yaXR5SWQsIHBhdGhvZ2VuIH0pLndiZURhc2hib2FyZFxuICAgICAgICAgIC5zdW1tYXJ5QmFyLnVybCxcbiAgICAgIClcbiAgICAgIC50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICBzZXREYXRhKHJlc3BvbnNlLmRhdGEuc3VtbWFyeSk7XG4gICAgICB9KTtcbiAgfTtcbiAgY29uc3QgcG9zaXRpdmVPck5lZ2F0aXZlU3RyaW5nID0gKG51bWJlcikgPT4ge1xuICAgIGlmIChNYXRoLnNpZ24obnVtYmVyKSA9PT0gMSkge1xuICAgICAgcmV0dXJuIGArJHtudW1iZXJ9YDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG51bWJlcjtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlRXhwYW5kQ2xpY2sgPSAoKSA9PiB7XG4gICAgc2V0SXNTdW1tYXJ5R3JhcGhNb2RhbE9wZW4odHJ1ZSk7XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAod2F0ZXJBdXRob3JpdHlJZCA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gICAgZmV0Y2hBbmRTZXREYXRhKCk7XG5cbiAgICByZXR1cm4gZnVuY3Rpb24gY2xlYW51cCgpIHtcbiAgICAgIHNldERhdGEoaW5pdGlhbFN1bW1hcnlTdGF0ZSk7XG4gICAgfTtcbiAgfSwgW3dhdGVyQXV0aG9yaXR5SWQsIHBhdGhvZ2VuXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8Qm94Q29udGFpbmVyPlxuICAgICAgPFRvcFNlY3Rpb24+XG4gICAgICAgIDxCb3g+XG4gICAgICAgICAgPFBlcmNlbnRhZ2VMYWJlbCBpc1J0bD17aXNSdGx9PlxuICAgICAgICAgICAgPEluZm9Ub29sdGlwXG4gICAgICAgICAgICAgIGRhdGE9e2kxOG4udChcbiAgICAgICAgICAgICAgICAnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLndiZV9zdW1tYXJ5LnRvb2x0aXAuY2xlYW4nLFxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICB0aXRsZT17aTE4bi50KFxuICAgICAgICAgICAgICAgICdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQud2JlX3N1bW1hcnkuY2xlYW5lZF9hcmVhcycsXG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC53YmVfc3VtbWFyeS5jbGVhbmVkX2FyZWFzJyl9XG4gICAgICAgICAgICA8L0luZm9Ub29sdGlwPlxuICAgICAgICAgIDwvUGVyY2VudGFnZUxhYmVsPlxuXG4gICAgICAgICAgPFBlcmNlbnRhZ2U+e2RhdGEuY2xlYW5fcGVyY2VudGFnZX0lPC9QZXJjZW50YWdlPlxuICAgICAgICAgIDxQZXJjZW50YWdlRGVzY3JpcHRpb24+XG4gICAgICAgICAgICB7cG9zaXRpdmVPck5lZ2F0aXZlU3RyaW5nKGRhdGEuY2xlYW5lZF9nYXBfZnJvbV9wcmV2aW91c193ZWVrKX17JyAnfVxuICAgICAgICAgICAge2kxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLndiZV9zdW1tYXJ5LmZyb21fbGFzdF93ZWVrJyl9XG4gICAgICAgICAgPC9QZXJjZW50YWdlRGVzY3JpcHRpb24+XG4gICAgICAgIDwvQm94PlxuICAgICAgICA8Qm94PlxuICAgICAgICAgIDxQZXJjZW50YWdlTGFiZWwgaXNSdGw9e2lzUnRsfT5cbiAgICAgICAgICAgIDxJbmZvVG9vbHRpcFxuICAgICAgICAgICAgICBkYXRhPXtpMThuLnQoXG4gICAgICAgICAgICAgICAgJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC53YmVfc3VtbWFyeS50b29sdGlwLmluZmVjdGVkJyxcbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgdGl0bGU9e2kxOG4udChcbiAgICAgICAgICAgICAgICAnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLndiZV9zdW1tYXJ5LmluZmVjdGVkX2FyZWFzJyxcbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2kxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLndiZV9zdW1tYXJ5LmluZmVjdGVkX2FyZWFzJyl9XG4gICAgICAgICAgICA8L0luZm9Ub29sdGlwPlxuICAgICAgICAgIDwvUGVyY2VudGFnZUxhYmVsPlxuICAgICAgICAgIDxQZXJjZW50YWdlPntkYXRhLmluZmVjdGVkX3BlcmNlbnRhZ2V9JTwvUGVyY2VudGFnZT5cbiAgICAgICAgICA8UGVyY2VudGFnZURlc2NyaXB0aW9uPlxuICAgICAgICAgICAge3Bvc2l0aXZlT3JOZWdhdGl2ZVN0cmluZyhkYXRhLmluZmVjdGVkX2dhcF9mcm9tX3ByZXZpb3VzX3dlZWspfXsnICd9XG4gICAgICAgICAgICB7aTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQud2JlX3N1bW1hcnkuZnJvbV9sYXN0X3dlZWsnKX1cbiAgICAgICAgICA8L1BlcmNlbnRhZ2VEZXNjcmlwdGlvbj5cbiAgICAgICAgPC9Cb3g+XG4gICAgICAgIDxCb3g+XG4gICAgICAgICAgPFBlcmNlbnRhZ2VMYWJlbCBpc1J0bD17aXNSdGx9PlxuICAgICAgICAgICAgPEluZm9Ub29sdGlwXG4gICAgICAgICAgICAgIGRhdGE9e2kxOG4udChcbiAgICAgICAgICAgICAgICAnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLndiZV9zdW1tYXJ5LnRvb2x0aXAudHJlbmQnLFxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICB0aXRsZT17aTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQud2JlX3N1bW1hcnkudHJlbmQnKX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2kxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLndiZV9zdW1tYXJ5LnRyZW5kJyl9XG4gICAgICAgICAgICA8L0luZm9Ub29sdGlwPlxuICAgICAgICAgIDwvUGVyY2VudGFnZUxhYmVsPlxuICAgICAgICAgIDxQZXJjZW50YWdlPntkYXRhLmluY3JlYXNpbmdfdHJlbmRfcGVyY2VudGFnZX0lPC9QZXJjZW50YWdlPlxuICAgICAgICAgIDxQZXJjZW50YWdlRGVzY3JpcHRpb24+XG4gICAgICAgICAgICB7aTE4bi50KFxuICAgICAgICAgICAgICAnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLndiZV9zdW1tYXJ5LndpdGhfaW5jcmVhc2VkX3ZpcnVzX2xvYWQnLFxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L1BlcmNlbnRhZ2VEZXNjcmlwdGlvbj5cbiAgICAgICAgPC9Cb3g+XG4gICAgICA8L1RvcFNlY3Rpb24+XG4gICAgICA8Qm90dG9tU2VjdGlvbj5cbiAgICAgICAgPEJveD5cbiAgICAgICAgICA8UGVyY2VudGFnZUxhYmVsIGlzUnRsPXtpc1J0bH0+XG4gICAgICAgICAgICA8SW5mb1Rvb2x0aXBcbiAgICAgICAgICAgICAgZGF0YT17aTE4bi50KFxuICAgICAgICAgICAgICAgICdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQud2JlX3N1bW1hcnkudG9vbHRpcC5jb3ZlcmFnZScsXG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIHRpdGxlPXtpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC53YmVfc3VtbWFyeS5jb3ZlcmFnZScpfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7aTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQud2JlX3N1bW1hcnkuY292ZXJhZ2UnKX1cbiAgICAgICAgICAgIDwvSW5mb1Rvb2x0aXA+XG4gICAgICAgICAgPC9QZXJjZW50YWdlTGFiZWw+XG4gICAgICAgICAgPFBlcmNlbnRhZ2U+XG4gICAgICAgICAgICB7ZGF0YS5hcmVhc193aXRoX2FjdGl2ZV9zYW1wbGluZ3NfcGVyY2VudGFnZX0lXG4gICAgICAgICAgPC9QZXJjZW50YWdlPlxuICAgICAgICAgIDxQZXJjZW50YWdlRGVzY3JpcHRpb24+XG4gICAgICAgICAgICB7aTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQud2JlX3N1bW1hcnkucG9wdWxhdGlvbicpfXsnICd9XG4gICAgICAgICAgICB7ZGF0YS5wb3B1bGF0aW9ufVxuICAgICAgICAgIDwvUGVyY2VudGFnZURlc2NyaXB0aW9uPlxuICAgICAgICA8L0JveD5cbiAgICAgICAgPEdyYXBoQm94PlxuICAgICAgICAgIDxQZXJjZW50YWdlTGFiZWwgaXNSdGw9e2lzUnRsfT5cbiAgICAgICAgICAgIDxJbmZvVG9vbHRpcFxuICAgICAgICAgICAgICBkYXRhPXtpMThuLnQoXG4gICAgICAgICAgICAgICAgJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC53YmVfc3VtbWFyeS50b29sdGlwLm52bF9vZl9hbGwnLFxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICB0aXRsZT17aTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQud2JlX3N1bW1hcnkubnZsX29mX2FsbCcpfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7aTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQud2JlX3N1bW1hcnkubnZsX29mX2FsbCcpfVxuICAgICAgICAgICAgPC9JbmZvVG9vbHRpcD5cbiAgICAgICAgICA8L1BlcmNlbnRhZ2VMYWJlbD5cbiAgICAgICAgICA8R3JhcGhDb250YWluZXIgaXNSdGw9e2lzUnRsfT5cbiAgICAgICAgICAgIDxTdW1tYXJ5R3JhcGhcbiAgICAgICAgICAgICAgcGF0aG9nZW49e3BhdGhvZ2VufVxuICAgICAgICAgICAgICB3YXRlckF1dGhvcml0eUlkPXt3YXRlckF1dGhvcml0eUlkfVxuICAgICAgICAgICAgICB3ZWVrc0ZvckdvdkZldGNoPXtkYXRhLndlZWtzX2Zvcl9nb3ZfZmV0Y2h9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPEV4cGFuZEljb24gaXNSdGw9e2lzUnRsfT5cbiAgICAgICAgICAgICAgPEZvbnRBd2Vzb21lSWNvblxuICAgICAgICAgICAgICAgIGljb249e2ZhQXJyb3dzQWx0fVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGhhbmRsZUV4cGFuZENsaWNrKCl9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L0V4cGFuZEljb24+XG4gICAgICAgICAgICB7aXNTdW1tYXJ5R3JhcGhNb2RhbE9wZW4gJiYgKFxuICAgICAgICAgICAgICA8U3VtbWFyeUdyYXBoTW9kYWwgc2V0T3Blbj17c2V0SXNTdW1tYXJ5R3JhcGhNb2RhbE9wZW59PlxuICAgICAgICAgICAgICAgIDxTdW1tYXJ5R3JhcGhcbiAgICAgICAgICAgICAgICAgIHBhdGhvZ2VuPXtwYXRob2dlbn1cbiAgICAgICAgICAgICAgICAgIHdhdGVyQXV0aG9yaXR5SWQ9e3dhdGVyQXV0aG9yaXR5SWR9XG4gICAgICAgICAgICAgICAgICB3ZWVrc0ZvckdvdkZldGNoPXtkYXRhLndlZWtzX2Zvcl9nb3ZfZmV0Y2h9XG4gICAgICAgICAgICAgICAgICBtaW5pPXtmYWxzZX1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8L1N1bW1hcnlHcmFwaE1vZGFsPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L0dyYXBoQ29udGFpbmVyPlxuICAgICAgICA8L0dyYXBoQm94PlxuICAgICAgPC9Cb3R0b21TZWN0aW9uPlxuICAgIDwvQm94Q29udGFpbmVyPlxuICApO1xufTtcblxuY29uc3QgQm94Q29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMjRweCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cblxuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LWZhbWlseTogR2lscm95LVVsdHJhTGlnaHQ7XG4gIHdpZHRoOiAxMDAlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbmA7XG5cbmNvbnN0IEJveCA9IHN0eWxlZC5kaXZgXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMjI0cHgpIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgcGFkZGluZzogMjBweDtcbiAgYmFja2dyb3VuZDogI2ZjZmNmYztcbiAgYm9yZGVyOiAxcHggc29saWQgI2U3ZTdlNztcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBoZWlnaHQ6IDEyMnB4O1xuICB3aWR0aDogMzMwcHg7XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuYDtcblxuY29uc3QgR3JhcGhCb3ggPSBzdHlsZWQuZGl2YFxuICBwYWRkaW5nOiAwIDA7XG4gIGJhY2tncm91bmQ6ICNmY2ZjZmM7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlN2U3ZTc7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgaGVpZ2h0OiAxMjJweDtcbiAgd2lkdGg6IG1heC1jb250ZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5gO1xuXG5jb25zdCBHcmFwaENvbnRhaW5lciA9IHN0eWxlZC5kaXY8eyBpc1J0bDogYm9vbGVhbiB9PmBcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgd2lkdGg6IDYwdnc7XG4gIH1cblxuICBtYXJnaW4tdG9wOiA1cHg7XG4gIHdpZHRoOiAzMHZ3O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuYDtcblxuY29uc3QgRXhwYW5kSWNvbiA9IHN0eWxlZC5kaXY8eyBpc1J0bDogYm9vbGVhbiB9PmBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICAkeyhwKSA9PiAocC5pc1J0bCA/ICdsZWZ0OiA1cHg7JyA6ICdyaWdodDogNXB4OycpfVxuICB0b3A6IDVweDtcblxuICBzdmcge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogJHt0aGVtZS5jb2xvclNjaGVtZS5uYXR1cmFsLm41MH07XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHt0aGVtZS5jb2xvclNjaGVtZS5wcmltYXJ5LnAxfTtcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IFBlcmNlbnRhZ2VMYWJlbCA9IHN0eWxlZC5kaXY8eyBpc1J0bDogYm9vbGVhbiB9PmBcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyNTBweCkge1xuICAgIHRvcDogLTIwcHg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG5cbiAgZm9udC1zaXplOiAxNnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTMwcHg7XG4gIGxlZnQ6IDA7XG4gICR7KHApID0+IChwLmlzUnRsID8gJ3JpZ2h0OiAwcHg7JyA6ICdsZWZ0OiAwcHg7Jyl9XG5gO1xuXG5jb25zdCBQZXJjZW50YWdlID0gc3R5bGVkLmRpdmBcbiAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAydncpO1xuICBmb250LXdlaWdodDogMTAwO1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvclNjaGVtZS5wcmltYXJ5LnAxfTtcbmA7XG5cbmNvbnN0IFBlcmNlbnRhZ2VEZXNjcmlwdGlvbiA9IHN0eWxlZC5kaXZgXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMjUwcHgpIHtcbiAgICBmb250LXNpemU6IGNhbGMoOXB4ICsgMC42dncpO1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIGZvbnQtc2l6ZTogY2FsYyg0cHggKyAwLjZ2dyk7XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9yU2NoZW1lLm5hdHVyYWwubjYwfTtcbmA7XG5cbmNvbnN0IEJvdHRvbVNlY3Rpb24gPSBzdHlsZWQuZGl2YFxuICBAbWVkaWEgKG1heC13aWR0aDogMTI1MHB4KSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbWF4LXdpZHRoOiA1MCU7XG5gO1xuXG5jb25zdCBUb3BTZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyNTBweCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gIG1heC13aWR0aDogNTAlO1xuYDtcbiJdfQ==
|
|
205
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9XYmVEYXNoYm9hcmQvV2JlU3VtbWFyeUJhci50c3giXSwibmFtZXMiOlsiV2JlU3VtbWFyeUJhciIsInByb3BzIiwid2F0ZXJBdXRob3JpdHlJZCIsImlzUnRsIiwicGF0aG9nZW4iLCJpbml0aWFsU3VtbWFyeVN0YXRlIiwiY2xlYW5fcGVyY2VudGFnZSIsImNsZWFuZWRfZ2FwX2Zyb21fcHJldmlvdXNfd2VlayIsImluY3JlYXNpbmdfdHJlbmRfcGVyY2VudGFnZSIsImluZmVjdGVkX2dhcF9mcm9tX3ByZXZpb3VzX3dlZWsiLCJpbmZlY3RlZF9wZXJjZW50YWdlIiwiYXJlYXNfd2l0aF9hY3RpdmVfc2FtcGxpbmdzX3BlcmNlbnRhZ2UiLCJwb3B1bGF0aW9uIiwid2Vla3NfZm9yX2dvdl9mZXRjaCIsIndlZWtzIiwieF9heGlzIiwiZGF0YSIsInNldERhdGEiLCJpc1N1bW1hcnlHcmFwaE1vZGFsT3BlbiIsInNldElzU3VtbWFyeUdyYXBoTW9kYWxPcGVuIiwiZmV0Y2hBbmRTZXREYXRhIiwiYXhpb3MiLCJnZXQiLCJ3YmVEYXNoYm9hcmQiLCJzdW1tYXJ5QmFyIiwidXJsIiwidGhlbiIsInJlc3BvbnNlIiwic3VtbWFyeSIsInBvc2l0aXZlT3JOZWdhdGl2ZVN0cmluZyIsIm51bWJlciIsIk1hdGgiLCJzaWduIiwiaGFuZGxlRXhwYW5kQ2xpY2siLCJ1bmRlZmluZWQiLCJjbGVhbnVwIiwiaTE4biIsInQiLCJmYUFycm93c0FsdCIsIkJveENvbnRhaW5lciIsInN0eWxlZCIsImRpdiIsIkJveCIsIkdyYXBoQm94IiwiR3JhcGhDb250YWluZXIiLCJFeHBhbmRJY29uIiwicCIsInRoZW1lIiwiY29sb3JTY2hlbWUiLCJuYXR1cmFsIiwibjUwIiwicHJpbWFyeSIsInAxIiwiUGVyY2VudGFnZUxhYmVsIiwiUGVyY2VudGFnZSIsIlBlcmNlbnRhZ2VEZXNjcmlwdGlvbiIsIm42MCIsIkJvdHRvbVNlY3Rpb24iLCJUb3BT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RUFBekM7QUFBQSxDQUhLLENBQWhCOztBQU1BLElBQU1HLHFCQUFxQixHQUFHZiwwQkFBT0MsR0FBVjtBQUFBO0FBQUE7QUFBQSw4SUFVaEI7QUFBQSxNQUFHTSxLQUFILFNBQUdBLEtBQUg7QUFBQSxTQUFlQSxLQUFLLENBQUNDLFdBQU4sQ0FBa0JDLE9BQWxCLENBQTBCTyxHQUF6QztBQUFBLENBVmdCLENBQTNCOztBQWFBLElBQU1DLGFBQWEsR0FBR2pCLDBCQUFPQyxHQUFWO0FBQUE7QUFBQTtBQUFBLHFKQUFuQjs7QUFhQSxJQUFNaUIsVUFBVSxHQUFHbEIsMEJBQU9DLEdBQVY7QUFBQTtBQUFBO0FBQUEsdUlBQWhCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cy9tYWNybyc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgU3VtbWFyeUdyYXBoIH0gZnJvbSAnLi9TdW1tYXJ5R3JhcGgnO1xuaW1wb3J0IHsgdXJscyB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy91cmxzJztcbmltcG9ydCB7IEluZm9Ub29sdGlwIH0gZnJvbSAnc3JjL3VpLWtpdC9JbmZvVG9vbHRpcC9JbmZvVG9vbHRpcCc7XG5pbXBvcnQgeyBGb250QXdlc29tZUljb24gfSBmcm9tICdAZm9ydGF3ZXNvbWUvcmVhY3QtZm9udGF3ZXNvbWUnO1xuaW1wb3J0IHsgZmFBcnJvd3NBbHQgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgU3VtbWFyeUdyYXBoTW9kYWwgfSBmcm9tICcuL1N1bW1hcnlHcmFwaE1vZGFsJztcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3RoZW1lL3RoZW1lJztcblxudHlwZSBQcm9wcyA9IHtcbiAgd2F0ZXJBdXRob3JpdHlJZDogbnVtYmVyO1xuICBwYXRob2dlbjogc3RyaW5nO1xuICBpc1J0bDogYm9vbGVhbjtcbn07XG5cbnR5cGUgRGF0YSA9IHtcbiAgY2xlYW5fcGVyY2VudGFnZTogbnVtYmVyO1xuICBjbGVhbmVkX2dhcF9mcm9tX3ByZXZpb3VzX3dlZWs6IG51bWJlcjtcbiAgaW5jcmVhc2luZ190cmVuZF9wZXJjZW50YWdlOiBudW1iZXI7XG4gIGluZmVjdGVkX2dhcF9mcm9tX3ByZXZpb3VzX3dlZWs6IG51bWJlcjtcbiAgaW5mZWN0ZWRfcGVyY2VudGFnZTogbnVtYmVyO1xuICBhcmVhc193aXRoX2FjdGl2ZV9zYW1wbGluZ3NfcGVyY2VudGFnZTogbnVtYmVyO1xuICBwb3B1bGF0aW9uOiBudW1iZXI7XG4gIHdlZWtzX2Zvcl9nb3ZfZmV0Y2g6IHsgd2Vla3M6IHN0cmluZ1tdOyB4X2F4aXM6IHN0cmluZ1tdIH07XG59O1xuXG5leHBvcnQgY29uc3QgV2JlU3VtbWFyeUJhcjogUmVhY3QuRkM8UHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgd2F0ZXJBdXRob3JpdHlJZCwgaXNSdGwsIHBhdGhvZ2VuIH0gPSBwcm9wcztcbiAgY29uc3QgaW5pdGlhbFN1bW1hcnlTdGF0ZSA9IHtcbiAgICBjbGVhbl9wZXJjZW50YWdlOiAwLFxuICAgIGNsZWFuZWRfZ2FwX2Zyb21fcHJldmlvdXNfd2VlazogMCxcbiAgICBpbmNyZWFzaW5nX3RyZW5kX3BlcmNlbnRhZ2U6IDAsXG4gICAgaW5mZWN0ZWRfZ2FwX2Zyb21fcHJldmlvdXNfd2VlazogMCxcbiAgICBpbmZlY3RlZF9wZXJjZW50YWdlOiAwLFxuICAgIGFyZWFzX3dpdGhfYWN0aXZlX3NhbXBsaW5nc19wZXJjZW50YWdlOiAwLFxuICAgIHBvcHVsYXRpb246IDAsXG4gICAgd2Vla3NfZm9yX2dvdl9mZXRjaDogeyB3ZWVrczogW10sIHhfYXhpczogW10gfSxcbiAgfTtcbiAgY29uc3QgW2RhdGEsIHNldERhdGFdID0gdXNlU3RhdGU8RGF0YT4oaW5pdGlhbFN1bW1hcnlTdGF0ZSk7XG4gIGNvbnN0IFtpc1N1bW1hcnlHcmFwaE1vZGFsT3Blbiwgc2V0SXNTdW1tYXJ5R3JhcGhNb2RhbE9wZW5dID1cbiAgICB1c2VTdGF0ZTxib29sZWFuPihmYWxzZSk7XG4gIGNvbnN0IGZldGNoQW5kU2V0RGF0YSA9ICgpID0+IHtcbiAgICBheGlvc1xuICAgICAgLmdldChcbiAgICAgICAgdXJscyh7IHdhdGVyQXV0aG9yaXR5SWQ6IHdhdGVyQXV0aG9yaXR5SWQsIHBhdGhvZ2VuIH0pLndiZURhc2hib2FyZFxuICAgICAgICAgIC5zdW1tYXJ5QmFyLnVybCxcbiAgICAgIClcbiAgICAgIC50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICBzZXREYXRhKHJlc3BvbnNlLmRhdGEuc3VtbWFyeSk7XG4gICAgICB9KTtcbiAgfTtcbiAgY29uc3QgcG9zaXRpdmVPck5lZ2F0aXZlU3RyaW5nID0gKG51bWJlcikgPT4ge1xuICAgIGlmIChNYXRoLnNpZ24obnVtYmVyKSA9PT0gMSkge1xuICAgICAgcmV0dXJuIGArJHtudW1iZXJ9YDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG51bWJlcjtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlRXhwYW5kQ2xpY2sgPSAoKSA9PiB7XG4gICAgc2V0SXNTdW1tYXJ5R3JhcGhNb2RhbE9wZW4odHJ1ZSk7XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAod2F0ZXJBdXRob3JpdHlJZCA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gICAgZmV0Y2hBbmRTZXREYXRhKCk7XG5cbiAgICByZXR1cm4gZnVuY3Rpb24gY2xlYW51cCgpIHtcbiAgICAgIHNldERhdGEoaW5pdGlhbFN1bW1hcnlTdGF0ZSk7XG4gICAgfTtcbiAgfSwgW3dhdGVyQXV0aG9yaXR5SWQsIHBhdGhvZ2VuXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8Qm94Q29udGFpbmVyPlxuICAgICAgPFRvcFNlY3Rpb24+XG4gICAgICAgIDxCb3g+XG4gICAgICAgICAgPFBlcmNlbnRhZ2VMYWJlbCBpc1J0bD17aXNSdGx9PlxuICAgICAgICAgICAgPEluZm9Ub29sdGlwXG4gICAgICAgICAgICAgIGRhdGE9e2kxOG4udChcbiAgICAgICAgICAgICAgICAnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLndiZV9zdW1tYXJ5LnRvb2x0aXAuY2xlYW4nLFxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICB0aXRsZT17aTE4bi50KFxuICAgICAgICAgICAgICAgICdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQud2JlX3N1bW1hcnkuY2xlYW5lZF9hcmVhcycsXG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC53YmVfc3VtbWFyeS5jbGVhbmVkX2FyZWFzJyl9XG4gICAgICAgICAgICA8L0luZm9Ub29sdGlwPlxuICAgICAgICAgIDwvUGVyY2VudGFnZUxhYmVsPlxuXG4gICAgICAgICAgPFBlcmNlbnRhZ2U+e2RhdGEuY2xlYW5fcGVyY2VudGFnZX0lPC9QZXJjZW50YWdlPlxuICAgICAgICAgIDxQZXJjZW50YWdlRGVzY3JpcHRpb24+XG4gICAgICAgICAgICB7cG9zaXRpdmVPck5lZ2F0aXZlU3RyaW5nKGRhdGEuY2xlYW5lZF9nYXBfZnJvbV9wcmV2aW91c193ZWVrKX17JyAnfVxuICAgICAgICAgICAge2kxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLndiZV9zdW1tYXJ5LmZyb21fbGFzdF93ZWVrJyl9XG4gICAgICAgICAgPC9QZXJjZW50YWdlRGVzY3JpcHRpb24+XG4gICAgICAgIDwvQm94PlxuICAgICAgICA8Qm94PlxuICAgICAgICAgIDxQZXJjZW50YWdlTGFiZWwgaXNSdGw9e2lzUnRsfT5cbiAgICAgICAgICAgIDxJbmZvVG9vbHRpcFxuICAgICAgICAgICAgICBkYXRhPXtpMThuLnQoXG4gICAgICAgICAgICAgICAgJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC53YmVfc3VtbWFyeS50b29sdGlwLmluZmVjdGVkJyxcbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgdGl0bGU9e2kxOG4udChcbiAgICAgICAgICAgICAgICAnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLndiZV9zdW1tYXJ5LmluZmVjdGVkX3BvaW50cycsXG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC53YmVfc3VtbWFyeS5pbmZlY3RlZF9wb2ludHMnKX1cbiAgICAgICAgICAgIDwvSW5mb1Rvb2x0aXA+XG4gICAgICAgICAgPC9QZXJjZW50YWdlTGFiZWw+XG4gICAgICAgICAgPFBlcmNlbnRhZ2U+e2RhdGEuaW5mZWN0ZWRfcGVyY2VudGFnZX0lPC9QZXJjZW50YWdlPlxuICAgICAgICAgIDxQZXJjZW50YWdlRGVzY3JpcHRpb24+XG4gICAgICAgICAgICB7cG9zaXRpdmVPck5lZ2F0aXZlU3RyaW5nKGRhdGEuaW5mZWN0ZWRfZ2FwX2Zyb21fcHJldmlvdXNfd2Vlayl9eycgJ31cbiAgICAgICAgICAgIHtpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC53YmVfc3VtbWFyeS5mcm9tX2xhc3Rfd2VlaycpfVxuICAgICAgICAgIDwvUGVyY2VudGFnZURlc2NyaXB0aW9uPlxuICAgICAgICA8L0JveD5cbiAgICAgICAgPEJveD5cbiAgICAgICAgICA8UGVyY2VudGFnZUxhYmVsIGlzUnRsPXtpc1J0bH0+XG4gICAgICAgICAgICA8SW5mb1Rvb2x0aXBcbiAgICAgICAgICAgICAgZGF0YT17aTE4bi50KFxuICAgICAgICAgICAgICAgICdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQud2JlX3N1bW1hcnkudG9vbHRpcC50cmVuZCcsXG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIHRpdGxlPXtpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC53YmVfc3VtbWFyeS50cmVuZCcpfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7aTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQud2JlX3N1bW1hcnkudHJlbmQnKX1cbiAgICAgICAgICAgIDwvSW5mb1Rvb2x0aXA+XG4gICAgICAgICAgPC9QZXJjZW50YWdlTGFiZWw+XG4gICAgICAgICAgPFBlcmNlbnRhZ2U+e2RhdGEuaW5jcmVhc2luZ190cmVuZF9wZXJjZW50YWdlfSU8L1BlcmNlbnRhZ2U+XG4gICAgICAgICAgPFBlcmNlbnRhZ2VEZXNjcmlwdGlvbj5cbiAgICAgICAgICAgIHtpMThuLnQoXG4gICAgICAgICAgICAgICdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQud2JlX3N1bW1hcnkud2l0aF9pbmNyZWFzZWRfdmlydXNfbG9hZCcsXG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvUGVyY2VudGFnZURlc2NyaXB0aW9uPlxuICAgICAgICA8L0JveD5cbiAgICAgIDwvVG9wU2VjdGlvbj5cbiAgICAgIDxCb3R0b21TZWN0aW9uPlxuICAgICAgICA8Qm94PlxuICAgICAgICAgIDxQZXJjZW50YWdlTGFiZWwgaXNSdGw9e2lzUnRsfT5cbiAgICAgICAgICAgIDxJbmZvVG9vbHRpcFxuICAgICAgICAgICAgICBkYXRhPXtpMThuLnQoXG4gICAgICAgICAgICAgICAgJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC53YmVfc3VtbWFyeS50b29sdGlwLmNvdmVyYWdlJyxcbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgdGl0bGU9e2kxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLndiZV9zdW1tYXJ5LmNvdmVyYWdlJyl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC53YmVfc3VtbWFyeS5jb3ZlcmFnZScpfVxuICAgICAgICAgICAgPC9JbmZvVG9vbHRpcD5cbiAgICAgICAgICA8L1BlcmNlbnRhZ2VMYWJlbD5cbiAgICAgICAgICA8UGVyY2VudGFnZT5cbiAgICAgICAgICAgIHtkYXRhLmFyZWFzX3dpdGhfYWN0aXZlX3NhbXBsaW5nc19wZXJjZW50YWdlfSVcbiAgICAgICAgICA8L1BlcmNlbnRhZ2U+XG4gICAgICAgICAgPFBlcmNlbnRhZ2VEZXNjcmlwdGlvbj5cbiAgICAgICAgICAgIHtpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC53YmVfc3VtbWFyeS5wb3B1bGF0aW9uJyl9eycgJ31cbiAgICAgICAgICAgIHtkYXRhLnBvcHVsYXRpb259XG4gICAgICAgICAgPC9QZXJjZW50YWdlRGVzY3JpcHRpb24+XG4gICAgICAgIDwvQm94PlxuICAgICAgICA8R3JhcGhCb3g+XG4gICAgICAgICAgPFBlcmNlbnRhZ2VMYWJlbCBpc1J0bD17aXNSdGx9PlxuICAgICAgICAgICAgPEluZm9Ub29sdGlwXG4gICAgICAgICAgICAgIGRhdGE9e2kxOG4udChcbiAgICAgICAgICAgICAgICAnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLndiZV9zdW1tYXJ5LnRvb2x0aXAubnZsX29mX2FsbCcsXG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIHRpdGxlPXtpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC53YmVfc3VtbWFyeS5udmxfb2ZfYWxsJyl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC53YmVfc3VtbWFyeS5udmxfb2ZfYWxsJyl9XG4gICAgICAgICAgICA8L0luZm9Ub29sdGlwPlxuICAgICAgICAgIDwvUGVyY2VudGFnZUxhYmVsPlxuICAgICAgICAgIDxHcmFwaENvbnRhaW5lciBpc1J0bD17aXNSdGx9PlxuICAgICAgICAgICAgPFN1bW1hcnlHcmFwaFxuICAgICAgICAgICAgICBwYXRob2dlbj17cGF0aG9nZW59XG4gICAgICAgICAgICAgIHdhdGVyQXV0aG9yaXR5SWQ9e3dhdGVyQXV0aG9yaXR5SWR9XG4gICAgICAgICAgICAgIHdlZWtzRm9yR292RmV0Y2g9e2RhdGEud2Vla3NfZm9yX2dvdl9mZXRjaH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8RXhwYW5kSWNvbiBpc1J0bD17aXNSdGx9PlxuICAgICAgICAgICAgICA8Rm9udEF3ZXNvbWVJY29uXG4gICAgICAgICAgICAgICAgaWNvbj17ZmFBcnJvd3NBbHR9XG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaGFuZGxlRXhwYW5kQ2xpY2soKX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvRXhwYW5kSWNvbj5cbiAgICAgICAgICAgIHtpc1N1bW1hcnlHcmFwaE1vZGFsT3BlbiAmJiAoXG4gICAgICAgICAgICAgIDxTdW1tYXJ5R3JhcGhNb2RhbCBzZXRPcGVuPXtzZXRJc1N1bW1hcnlHcmFwaE1vZGFsT3Blbn0+XG4gICAgICAgICAgICAgICAgPFN1bW1hcnlHcmFwaFxuICAgICAgICAgICAgICAgICAgcGF0aG9nZW49e3BhdGhvZ2VufVxuICAgICAgICAgICAgICAgICAgd2F0ZXJBdXRob3JpdHlJZD17d2F0ZXJBdXRob3JpdHlJZH1cbiAgICAgICAgICAgICAgICAgIHdlZWtzRm9yR292RmV0Y2g9e2RhdGEud2Vla3NfZm9yX2dvdl9mZXRjaH1cbiAgICAgICAgICAgICAgICAgIG1pbmk9e2ZhbHNlfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvU3VtbWFyeUdyYXBoTW9kYWw+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvR3JhcGhDb250YWluZXI+XG4gICAgICAgIDwvR3JhcGhCb3g+XG4gICAgICA8L0JvdHRvbVNlY3Rpb24+XG4gICAgPC9Cb3hDb250YWluZXI+XG4gICk7XG59O1xuXG5jb25zdCBCb3hDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBAbWVkaWEgKG1heC13aWR0aDogMTIyNHB4KSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtZmFtaWx5OiBHaWxyb3ktVWx0cmFMaWdodDtcbiAgd2lkdGg6IDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuYDtcblxuY29uc3QgQm94ID0gc3R5bGVkLmRpdmBcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMjRweCkge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICBwYWRkaW5nOiAyMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmNmY2ZjO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTdlN2U3O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIGhlaWdodDogMTIycHg7XG4gIHdpZHRoOiAzMzBweDtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBHcmFwaEJveCA9IHN0eWxlZC5kaXZgXG4gIHBhZGRpbmc6IDAgMDtcbiAgYmFja2dyb3VuZDogI2ZjZmNmYztcbiAgYm9yZGVyOiAxcHggc29saWQgI2U3ZTdlNztcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBoZWlnaHQ6IDEyMnB4O1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbmA7XG5cbmNvbnN0IEdyYXBoQ29udGFpbmVyID0gc3R5bGVkLmRpdjx7IGlzUnRsOiBib29sZWFuIH0+YFxuICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICB3aWR0aDogNjB2dztcbiAgfVxuXG4gIG1hcmdpbi10b3A6IDVweDtcbiAgd2lkdGg6IDMwdnc7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5gO1xuXG5jb25zdCBFeHBhbmRJY29uID0gc3R5bGVkLmRpdjx7IGlzUnRsOiBib29sZWFuIH0+YFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICR7KHApID0+IChwLmlzUnRsID8gJ2xlZnQ6IDVweDsnIDogJ3JpZ2h0OiA1cHg7Jyl9XG4gIHRvcDogNXB4O1xuXG4gIHN2ZyB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGNvbG9yOiAke3RoZW1lLmNvbG9yU2NoZW1lLm5hdHVyYWwubjUwfTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAke3RoZW1lLmNvbG9yU2NoZW1lLnByaW1hcnkucDF9O1xuICAgIH1cbiAgfVxuYDtcblxuY29uc3QgUGVyY2VudGFnZUxhYmVsID0gc3R5bGVkLmRpdjx7IGlzUnRsOiBib29sZWFuIH0+YFxuICBAbWVkaWEgKG1heC13aWR0aDogMTI1MHB4KSB7XG4gICAgdG9wOiAtMjBweDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cblxuICBmb250LXNpemU6IDE2cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMzBweDtcbiAgbGVmdDogMDtcbiAgJHsocCkgPT4gKHAuaXNSdGwgPyAncmlnaHQ6IDBweDsnIDogJ2xlZnQ6IDBweDsnKX1cbmA7XG5cbmNvbnN0IFBlcmNlbnRhZ2UgPSBzdHlsZWQuZGl2YFxuICBmb250LXNpemU6IGNhbGMoMjBweCArIDJ2dyk7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIGNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9yU2NoZW1lLnByaW1hcnkucDF9O1xuYDtcblxuY29uc3QgUGVyY2VudGFnZURlc2NyaXB0aW9uID0gc3R5bGVkLmRpdmBcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyNTBweCkge1xuICAgIGZvbnQtc2l6ZTogY2FsYyg5cHggKyAwLjZ2dyk7XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgZm9udC1zaXplOiBjYWxjKDRweCArIDAuNnZ3KTtcbiAgY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JTY2hlbWUubmF0dXJhbC5uNjB9O1xuYDtcblxuY29uc3QgQm90dG9tU2VjdGlvbiA9IHN0eWxlZC5kaXZgXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMjUwcHgpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDIwcHggMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcbiAgd2lkdGg6IG1heC1jb250ZW50O1xuICBtYXgtd2lkdGg6IDUwJTtcbmA7XG5cbmNvbnN0IFRvcFNlY3Rpb24gPSBzdHlsZWQuZGl2YFxuICBAbWVkaWEgKG1heC13aWR0aDogMTI1MHB4KSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbWF4LXdpZHRoOiA1MCU7XG5gO1xuIl19
|