@provoly/dashboard 1.0.0 → 1.1.1

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.
Files changed (73) hide show
  1. package/assets/svgs/analytic.svg +1 -0
  2. package/esm2022/admin/components/admin-dataset/admin-select-dataset/admin-select-dataset.component.mjs +5 -4
  3. package/esm2022/import/components/import.component.mjs +22 -10
  4. package/esm2022/import/i18n/en.translations.mjs +3 -1
  5. package/esm2022/import/i18n/fr.translations.mjs +3 -1
  6. package/esm2022/lib/core/access/access.service.mjs +4 -1
  7. package/esm2022/lib/core/i18n/en.translations.mjs +2 -1
  8. package/esm2022/lib/core/i18n/fr.translations.mjs +2 -1
  9. package/esm2022/lib/core/model/public-api.mjs +2 -1
  10. package/esm2022/lib/core/model/widget-analytic-manifest.interface.mjs +2 -0
  11. package/esm2022/lib/core/store/data-source/data-source.effects.mjs +5 -2
  12. package/esm2022/lib/core/toolbox/toolbox-manifest.service.mjs +12 -1
  13. package/esm2022/lib/core/toolbox/toolbox-menu.service.mjs +4 -3
  14. package/esm2022/lib/dashboard/store/dashboard.actions.mjs +2 -2
  15. package/esm2022/lib/dashboard/store/dashboard.effects.mjs +6 -4
  16. package/esm2022/lib/dashboard/store/dashboard.reducers.mjs +17 -9
  17. package/esm2022/lib/dashboard/store/dashboard.selectors.mjs +8 -2
  18. package/esm2022/presentation/components/presentation.component.mjs +18 -9
  19. package/esm2022/widgets/widget-analytic/component/widget-analytic.component.mjs +108 -0
  20. package/esm2022/widgets/widget-analytic/i18n/en.translations.mjs +13 -0
  21. package/esm2022/widgets/widget-analytic/i18n/fr.translations.mjs +13 -0
  22. package/esm2022/widgets/widget-analytic/provoly-dashboard-widgets-widget-analytic.mjs +5 -0
  23. package/esm2022/widgets/widget-analytic/public-api.mjs +3 -0
  24. package/esm2022/widgets/widget-analytic/style/css.component.mjs +11 -0
  25. package/esm2022/widgets/widget-analytic/widget-analytic.module.mjs +70 -0
  26. package/esm2022/widgets/widget-map/component/widget-map.component.mjs +14 -137
  27. package/esm2022/widgets/widget-map/interaction/interaction-manager.class.mjs +2 -34
  28. package/esm2022/widgets/widget-map/interaction/tooltip-manager.class.mjs +191 -0
  29. package/esm2022/widgets/widget-map/public-api.mjs +2 -1
  30. package/esm2022/widgets/widget-tile/component/widget-tile.component.mjs +24 -5
  31. package/fesm2022/provoly-dashboard-admin.mjs +3 -2
  32. package/fesm2022/provoly-dashboard-admin.mjs.map +1 -1
  33. package/fesm2022/provoly-dashboard-import.mjs +25 -9
  34. package/fesm2022/provoly-dashboard-import.mjs.map +1 -1
  35. package/fesm2022/provoly-dashboard-presentation.mjs +17 -8
  36. package/fesm2022/provoly-dashboard-presentation.mjs.map +1 -1
  37. package/fesm2022/provoly-dashboard-widgets-widget-analytic.mjs +211 -0
  38. package/fesm2022/provoly-dashboard-widgets-widget-analytic.mjs.map +1 -0
  39. package/fesm2022/provoly-dashboard-widgets-widget-map.mjs +201 -169
  40. package/fesm2022/provoly-dashboard-widgets-widget-map.mjs.map +1 -1
  41. package/fesm2022/provoly-dashboard-widgets-widget-tile.mjs +23 -4
  42. package/fesm2022/provoly-dashboard-widgets-widget-tile.mjs.map +1 -1
  43. package/fesm2022/provoly-dashboard.mjs +52 -16
  44. package/fesm2022/provoly-dashboard.mjs.map +1 -1
  45. package/import/components/import.component.d.ts +4 -2
  46. package/import/i18n/en.translations.d.ts +2 -0
  47. package/import/i18n/fr.translations.d.ts +2 -0
  48. package/lib/core/access/access.service.d.ts +3 -0
  49. package/lib/core/i18n/en.translations.d.ts +1 -0
  50. package/lib/core/i18n/fr.translations.d.ts +1 -0
  51. package/lib/core/model/public-api.d.ts +1 -0
  52. package/lib/core/model/widget-analytic-manifest.interface.d.ts +6 -0
  53. package/lib/core/store/data-source/data-source.effects.d.ts +4 -2
  54. package/lib/dashboard/store/dashboard.actions.d.ts +11 -1
  55. package/lib/dashboard/store/dashboard.effects.d.ts +2 -0
  56. package/lib/dashboard/store/dashboard.reducers.d.ts +3 -1
  57. package/lib/dashboard/store/dashboard.selectors.d.ts +1 -1
  58. package/package.json +54 -48
  59. package/presentation/components/presentation.component.d.ts +5 -3
  60. package/styles/components/_o-pry-admin-classes-customize.scss +1 -0
  61. package/widgets/widget-analytic/component/widget-analytic.component.d.ts +47 -0
  62. package/widgets/widget-analytic/i18n/en.translations.d.ts +12 -0
  63. package/widgets/widget-analytic/i18n/fr.translations.d.ts +12 -0
  64. package/widgets/widget-analytic/index.d.ts +5 -0
  65. package/widgets/widget-analytic/public-api.d.ts +2 -0
  66. package/widgets/widget-analytic/style/_o-widget-analytic.scss +43 -0
  67. package/widgets/widget-analytic/style/css.component.d.ts +5 -0
  68. package/widgets/widget-analytic/widget-analytic.module.d.ts +19 -0
  69. package/widgets/widget-map/component/widget-map.component.d.ts +9 -22
  70. package/widgets/widget-map/interaction/interaction-manager.class.d.ts +0 -5
  71. package/widgets/widget-map/interaction/tooltip-manager.class.d.ts +43 -0
  72. package/widgets/widget-map/public-api.d.ts +1 -0
  73. package/widgets/widget-tile/component/widget-tile.component.d.ts +4 -1
@@ -63,6 +63,7 @@ export const frTranslations = {
63
63
  },
64
64
  toolbox: {
65
65
  defaultSize: 'Taille de restitution',
66
+ analytic: 'Tableau analytique',
66
67
  manifest: {
67
68
  name: 'Nom de la présentation',
68
69
  description: 'Description de la présentation',
@@ -397,4 +398,4 @@ export const frTranslations = {
397
398
  }
398
399
  }
399
400
  };
400
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnIudHJhbnNsYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvbGliL2NvcmUvaTE4bi9mci50cmFuc2xhdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLE1BQU0sRUFBRTtRQUNOLE1BQU0sRUFBRTtZQUNOLEtBQUssRUFBRSxpQkFBaUI7WUFDeEIsT0FBTyxFQUFFLHFCQUFxQjtTQUMvQjtRQUNELEtBQUssRUFBRTtZQUNMLEtBQUssRUFBRSxpQkFBaUI7WUFDeEIsR0FBRyxFQUFFLGFBQWE7WUFDbEIsSUFBSSxFQUFFLFNBQVM7WUFDZixNQUFNLEVBQUUsT0FBTztZQUNmLElBQUksRUFBRSxXQUFXO1lBQ2pCLE9BQU8sRUFBRSxnQkFBZ0I7WUFDekIsU0FBUyxFQUFFLHFCQUFxQjtTQUNqQztRQUNELE1BQU0sRUFBRTtZQUNOLHFCQUFxQixFQUFFLDhCQUE4QjtTQUN0RDtRQUNELE1BQU0sRUFBRTtZQUNOLE1BQU0sRUFBRSx1Q0FBdUM7WUFDL0MsWUFBWSxFQUFFLDhDQUE4QztZQUM1RCxXQUFXLEVBQUUsc0RBQXNEO1lBQ25FLGFBQWEsRUFBRSwwREFBMEQ7WUFDekUsUUFBUSxFQUFFO2dCQUNSLEtBQUssRUFBRSxhQUFhO2dCQUNwQixXQUFXLEVBQUUseUJBQXlCO2dCQUN0QyxnQkFBZ0IsRUFBRSx5QkFBeUI7YUFDNUM7WUFDRCxhQUFhLEVBQUUsc0NBQXNDO1lBQ3JELFlBQVksRUFBRSw4QkFBOEI7WUFDNUMsT0FBTyxFQUFFO2dCQUNQLE1BQU0sRUFBRSx3Q0FBd0M7Z0JBQ2hELFVBQVUsRUFBRSxxQkFBcUI7Z0JBQ2pDLFlBQVksRUFBRSw2QkFBNkI7Z0JBQzNDLGFBQWEsRUFBRSxzQkFBc0I7Z0JBQ3JDLFVBQVUsRUFBRSx1QkFBdUI7Z0JBQ25DLFFBQVEsRUFBRSx5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QUUsU0FBUztZQUNoQixJQUFJLEVBQUU7Z0JBQ0osVUFBVSxFQUFFLGFBQWE7Z0JBQ3pCLEdBQUcsRUFBRSxpQkFBaUI7Z0JBQ3RCLE1BQU0sRUFBRSxXQUFXO2dCQUNuQixNQUFNLEVBQUUsVUFBVTthQUNuQjtZQUNELFFBQVEsRUFBRTtnQkFDUixNQUFNLEVBQUUsaUJBQWlCO2dCQUN6QixNQUFNLEVBQUUsb0JBQW9CO2dCQUM1QixJQUFJLEVBQUUsZUFBZTtnQkFDckIsSUFBSSxFQUFFLGdCQUFnQjtnQkFDdEIsTUFBTSxFQUFFLFFBQVE7Z0JBQ2hCLFVBQVUsRUFBRSxXQUFXO2dCQUN2QixLQUFLLEVBQUUsUUFBUTtnQkFDZixNQUFNLEVBQUUsU0FBUztnQkFDakIsUUFBUSxFQUFFLFNBQVM7Z0JBQ25CLEtBQUssRUFBRSxpREFBaUQ7Z0JBQ3hELFNBQVMsRUFBRSxnQkFBZ0I7YUFDNUI7WUFDRCxVQUFVLEVBQUU7Z0JBQ1YsVUFBVSxFQUFFLFlBQVk7Z0JBQ3hCLEtBQUssRUFBRSxRQUFRO2dCQUNmLFFBQVEsRUFBRSxXQUFXO2FBQ3RCO1lBQ0QsS0FBSyxFQUFFO2dCQUNMLElBQUksRUFBRSxPQUFPO2dCQUNiLElBQUksRUFBRSxNQUFNO2dCQUNaLElBQUksRUFBRSxPQUFPO2dCQUNiLE1BQU0sRUFBRSxXQUFXO2dCQUNuQixZQUFZLEVBQUUsdUJBQXVCO2FBQ3RDO1NBQ0Y7UUFDRCxPQUFPLEVBQUU7WUFDUCxPQUFPLEVBQUUsa0JBQWtCO1NBQzVCO1FBQ0QsSUFBSSxFQUFFO1lBQ0osSUFBSSxFQUFFLFFBQVE7WUFDZCxPQUFPLEVBQUUsVUFBVTtTQUNwQjtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBmclRyYW5zbGF0aW9ucyA9IHtcbiAgJ0BwcnknOiB7XG4gICAgc2VsZWN0OiB7XG4gICAgICBsYWJlbDogJ0xpc3RlIGRlcyBjaG9peCcsXG4gICAgICBsb2FkaW5nOiAnQ2hhcmdlbWVudCBlbiBjb3VycydcbiAgICB9LFxuICAgIGFib3V0OiB7XG4gICAgICBmcm9udDogJ0xpYnJhaXJpZSBmcm9udCcsXG4gICAgICByZWY6ICdSw6lmw6lyZW50aWVsJyxcbiAgICAgIGRhdGE6ICdEb25uw6llcycsXG4gICAgICByZXBsYXk6ICdSZWpldScsXG4gICAgICBleGVjOiAnRXjDqWN1dGlvbicsXG4gICAgICB0cmFuc2ZvOiAnVHJhbnNmb3JtYXRpb24nLFxuICAgICAgbm9WZXJzaW9uOiAnVmVyc2lvbiBub24gdHJvdXbDqWUnXG4gICAgfSxcbiAgICBoZWFkZXI6IHtcbiAgICAgIG5vQ3VycmVudFByZXNlbnRhdGlvbjogJ1Byw6lzZW50YXRpb24gbm9uIHNhdXZlZ2FyZMOpZSdcbiAgICB9LFxuICAgIHdpZGdldDoge1xuICAgICAgbm9EYXRhOiAnQXVjdW5lIHNvdXJjZSBkZSBkb25uw6llcyBzw6lsZWN0aW9ubsOpZScsXG4gICAgICB1bnJlY29nbml6ZWQ6ICdMYSByZXN0aXR1dGlvbiBkZSB0eXBlIHt7dHlwZX19IGVzdCBpbmNvbm51LicsXG4gICAgICBhZGRlZEluVmlldzogJ0xhIHJlc3RpdHV0aW9uIGEgw6l0w6kgYWpvdXTDqWUgc3VyIGxhIHBhZ2UgbsKwe3tpbmRleH19JyxcbiAgICAgIHVwZGF0ZWRJblZpZXc6ICdMYSByZXN0aXR1dGlvbiBhIMOpdMOpIG1pc2Ugw6Agam91ciBzdXIgbGEgcGFnZSBuwrB7e2luZGV4fX0nLFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgdGl0bGU6ICdQYXJhbcOpdHJhZ2UnLFxuICAgICAgICBjaGFuZ2VUaXRsZTogJ1RpdHJlIGRlIGxhIHJlc3RpdHV0aW9uJyxcbiAgICAgICAgdmFsaWRhdGVVcGRhdGluZzogJ1ZhbGlkZXIgbGEgbW9kaWZpY2F0aW9uJ1xuICAgICAgfSxcbiAgICAgIGRlZmluZUNhdGFsb2c6ICdEw6lmaW5pc3NleiB2b3RyZSBlbnRyw6llIGRlIGNhdGFsb2d1ZScsXG4gICAgICBidXR0b25DaG9pY2U6ICdTw6lsZWN0aW9ubmVyIHVuZSByZXN0aXR1dGlvbicsXG4gICAgICB0b29sdGlwOiB7XG4gICAgICAgIHBhcmFtczogJ1BhcmFtw6l0cmVyIGxhIHZ1ZSBkZSB2b3RyZSByZXN0aXR1dGlvbicsXG4gICAgICAgIHJlYWRTZWFyY2g6ICdDaG9pc2lyIGxlcyBkb25uw6llcycsXG4gICAgICAgIGRlbGV0ZVdpZGdldDogJ1N1cHByaW1lciB2b3RyZSByZXN0aXR1dGlvbicsXG4gICAgICAgIGNhdGFsb2dXaWRnZXQ6ICdBam91dGVyIGF1IGNhdGFsb2d1ZScsXG4gICAgICAgIGNoYW5nZVNwb3Q6IFwiQ2hhbmdlciBkJ2VtcGxhY2VtZW50XCIsXG4gICAgICAgIHNwb3ROYW1lOiAnRW1wbGFjZW1lbnQgbsKwe3twbGFjZX19J1xuICAgICAgfSxcbiAgICAgIHRhcmdldDoge1xuICAgICAgICBuZXc6ICdPdXZyaXIgZGFucyB1bmUgbm91dmVsbGUgcGFnZScsXG4gICAgICAgIGV4aXN0aW5nOiAnT3V2cmlyIGRhbnMgbGEgcGFnZSBuwrB7e3RhcmdldEluZGV4fX0nLFxuICAgICAgICBkZWxldGU6ICdTdXBwcmltZXInLFxuICAgICAgICBtYXhpbWl6ZTogJ01heGltaXNlcicsXG4gICAgICAgIG5vbmVfYXV0bzogJ0luc8OpcmV6IGljaSB2b3MgcmVzdGl0dXRpb25zJyxcbiAgICAgICAgbm9uZV9tYW51YWw6ICdHbGlzc2VyIC0gRMOpcG9zZXInLFxuICAgICAgICBsb2FkaW5nOiAnQ2hhcmdlbWVudCdcbiAgICAgIH0sXG4gICAgICBuYW1lZFF1ZXJ5OiB7XG4gICAgICAgIGRlZmF1bHRSczogJ1JlY2hlcmNoZSBjb3VyYW50ZScsXG4gICAgICAgIHJlc3VsdHNBY2N1cmF0ZTogJ3t7dG90YWx9fScsXG4gICAgICAgIHJlc3VsdHNOb25BY2N1cmF0ZTogJ3t7ZGlzcGxheWVkfX0gc3VyIGVudmlyb24ge3t0b3RhbH19J1xuICAgICAgfSxcbiAgICAgIG1vZGFsVGl0bGU6ICdWb3VsZXotdm91cyBjb25maXJtZXIgPycsXG4gICAgICBpdGVtSWQ6ICdJZCcsXG4gICAgICBjbGFzczogJ0NsYXNzZScsXG4gICAgICBjb2xvclNjaGVtZTogJ1NjaMOpbWEgZGUgY291bGV1cicsXG4gICAgICBjdXN0b206ICdQZXJzb25hbGlzw6kgbsKwe3tpZH19JyxcbiAgICAgIGFkZENvbG9yOiAnQWpvdXRlciB1bmUgY291bGV1cicsXG4gICAgICByZW1vdmVDb2xvcjogJ1N1cHByaW1lciB1bmUgY291bGV1cidcbiAgICB9LFxuICAgIHZpZXc6IHtcbiAgICAgIG5hbWU6ICdQYWdlIG7CsHt7cmFua319J1xuICAgIH0sXG4gICAgdG9vbGJveDoge1xuICAgICAgZGVmYXVsdFNpemU6ICdUYWlsbGUgZGUgcmVzdGl0dXRpb24nLFxuICAgICAgbWFuaWZlc3Q6IHtcbiAgICAgICAgbmFtZTogJ05vbSBkZSBsYSBwcsOpc2VudGF0aW9uJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbiBkZSBsYSBwcsOpc2VudGF0aW9uJyxcbiAgICAgICAgc2F2ZWQ6ICdQcsOpc2VudGF0aW9uIHt7dmlld0lkfX0gc2F1dmVnYXJkw6llJyxcbiAgICAgICAgc2F2ZUVycm9yQ29kZToge1xuICAgICAgICAgIFVOS05PV046ICdFcnJldXIgaW5jb25udWUnLFxuICAgICAgICAgIEZPUkJJRERFTjogXCJWb3VzIG4nw6p0ZXMgcGFzIGxlIHByb3ByacOpdGFpcmUgZGUgY2V0dGUgcHLDqXNlbnRhdGlvbiBcIixcbiAgICAgICAgICBOQU1FX0FMUkVBRFlfVVNFRDogJ1VuZSBwcsOpc2VudGF0aW9uIGF2ZWMgbGUgbm9tIFwie3tuYW1lfX1cIiBleGlzdGUgZMOpasOgLCB2ZXVpbGxleiBzw6lsZWN0aW9ubmVyIHVuIGF1dHJlIG5vbS4nLFxuICAgICAgICAgIFNBVkVfTUVUQURBVEE6ICdWZXVpbGxleiBzYXV2ZWdhcmRlciBsYSBwcmVzZW50YXRpb24gYXZhbnQgZGUgY2hvaXNpciB1bmUgdGjDqW1hdGlxdWUuJ1xuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0ZWQ6ICdQcsOpc2VudGF0aW9uIHt7dmlld0lkfX0gbWFycXXDqWUgcGFyIGTDqWZhdXQnLFxuICAgICAgICB1bmRlZmF1bHRlZDogXCJMYSBwcsOpc2VudGF0aW9uIHt7dmlld0lkfX0gbidlc3QgcGx1cyBtYXJxdcOpZSBwYXIgZMOpZmF1dFwiLFxuICAgICAgICB2YWxpZGF0ZWQ6ICdWYWxpZGVyJyxcbiAgICAgICAgY2hlY2s6ICdFbnJlZ2lzdHJlcicsXG4gICAgICAgIGNsb3NlOiAnQW5udWxlcicsXG4gICAgICAgIHZhbGlkYXRlOiAnVmFsaWRlcidcbiAgICAgIH0sXG4gICAgICBjYXRhbG9nOiB7XG4gICAgICAgIHRpdGxlOiAnUGVyc29ubmFsaXPDqXMnLFxuICAgICAgICBsYWJlbDogJ05vbScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24nLFxuICAgICAgICBpY29uOiAnSW1hZ2UnLFxuICAgICAgICBmaWx0ZXI6IHtcbiAgICAgICAgICBkZWxldGU6ICdTdXBwcmltZXIgY2UgZmlsdHJlJyxcbiAgICAgICAgICB0eXBlOiAnRmlsdHJlciBwYXIgdHlwZScsXG4gICAgICAgICAgbmFtZTogJ0ZpbHRyZXIgcGFyIG5vbSdcbiAgICAgICAgfSxcbiAgICAgICAgc2F2ZUVycm9yQ29kZToge1xuICAgICAgICAgIFVOS05PV046ICdFcnJldXIgaW5jb25udWUnLFxuICAgICAgICAgIE5BTUVfQUxSRUFEWV9VU0VEOiAnVW5lIHJlc3RpdHV0aW9uIGF2ZWMgbGUgbm9tIFwie3tuYW1lfX1cIiBleGlzdGUgZMOpasOgLCB2ZXVpbGxleiBzw6lsZWN0aW9ubmVyIHVuIGF1dHJlIG5vbS4nXG4gICAgICAgIH0sXG4gICAgICAgIHNhdmVkOiAnUHLDqXNlbnRhdGlvbiB7e3ZpZXdJZH19IHNhdXZlZ2FyZMOpZSdcbiAgICAgIH0sXG4gICAgICBhYm91dDogJ0luZm9ybWF0aW9ucycsXG4gICAgICBlZGl0OiAnTW9kaWZpZXIgbGEgZGlzcG9zaXRpb24nLFxuICAgICAgZWRpdE9mZjogJ1Zpc3VhbGlzZXIgbGEgZGlzcG9zaXRpb24nLFxuICAgICAgbGF1bmNoOiAnTm91dmVsbGUgcGFnZScsXG4gICAgICBsYXVuY2hJbmRpY2F0aW9uOiAnT3V2cmlyIGNldHRlIHBhZ2UgZGFucyB1bicsXG4gICAgICBjaG9vc2VHcmlkOiAnQ2hhbmdlciBsYSBncmlsbGUnLFxuICAgICAgY2xlYXI6IFwiVmlkZXIgbCdhZmZpY2hhZ2VcIixcbiAgICAgIHJlZnJlc2g6ICdSYWZyYWljaGlyIGxlcyBkb25uw6llcycsXG4gICAgICBhdXRvbWF0ZVJlZnJlc2g6IFwiQXV0b21hdGlzZXIgbCdhY3R1YWxpc2F0aW9uXCIsXG4gICAgICBvcHRpb25zOiAnT3B0aW9ucycsXG4gICAgICBjbG9zZTogJ0Zlcm1lcicsXG4gICAgICBmaWx0ZXI6ICdGaWx0cmVyJyxcbiAgICAgIGhlYXRtYXA6ICdGcsOpcXVlbnRhdGlvbicsXG4gICAgICBidWJibGVtYXA6ICdCdWxsZXMnLFxuICAgICAgbWFya2VybWFwOiAnTWFycXVldXJzJyxcbiAgICAgIHNpbXBsZW1hcDogJ0NhcnRlJyxcbiAgICAgIG1hcDogJ0NhcnRlJyxcbiAgICAgIHRhYmxlOiAnVGFibGVhdScsXG4gICAgICBkZXRhaWw6ICdEw6l0YWlsJyxcbiAgICAgIGNoYXJ0OiAnR3JhcGhpcXVlJyxcbiAgICAgIHJlc3VsdFNldDogJ1JlY2hlcmNoZXMgbm9tbcOpZXMnLFxuICAgICAgcmVuYW1lOiAnRW5yZWdpc3RyZXIgc291cycsXG4gICAgICByZXN0b3JlOiAnUmVzdGF1cmVyIGxlcyBwYWdlcycsXG4gICAgICBzYXZlOiAnRW5yZWdpc3RyZXInLFxuICAgICAgZHJhZzogJ1Jlc3RpdHV0aW9uLi4uJyxcbiAgICAgIGRyYWdJbmRpY2F0aW9uOiAnSW5zw6lyZXIgdW4nLFxuICAgICAgYmFyY2hhcnQ6ICdCYXJyZXMnLFxuICAgICAgaGlzdG9ncmFtOiAnSGlzdG9ncmFtbWUnLFxuICAgICAgbGluZWNoYXJ0OiAnQ291cmJlJyxcbiAgICAgIHBvaW50Y2hhcnQ6ICdQb2ludHMnLFxuICAgICAgYXJlYWNoYXJ0OiAnQWlyZScsXG4gICAgICBhcmNjaGFydDogJ0NpcmN1bGFpcmUnLFxuICAgICAgcmFkYXJjaGFydDogJ1JhZGFyJyxcbiAgICAgIGNpcmNsZWNoYXJ0OiAnUGFxdWV0cyBkZSBjZXJjbGVzJyxcbiAgICAgIGlmcmFtZTogJ0FwcGxpY2F0aW9uIGV4dGVybmUnLFxuICAgICAgdmVnYTogJ0dyYXBoaXF1ZSBhdmFuY8OpJyxcbiAgICAgIGdyYXBoOiAnUmVsYXRpb25zJyxcbiAgICAgIHBsYWNlaG9sZGVyOiAnJyxcbiAgICAgIHN1Yjoge1xuICAgICAgICBtYXA6ICdDYXJ0b2dyYXBoaWUnLFxuICAgICAgICBjaGFydDogJ0dyYXBoaXF1ZScsXG4gICAgICAgIG90aGVyOiAnQXV0cmUnXG4gICAgICB9LFxuICAgICAgdGlsZTogJ1R1aWxlcycsXG4gICAgICB0ZW1wbGF0ZTogJ1RlbXBsYXRlIEhUTUwnLFxuICAgICAgbm93OiBcIkF1am91cmQnaHVpXCIsXG4gICAgICBzaW5jZV9kYXk6ICdJbCB5IGEge3tkYXl9fSBqb3Vye3twbHVyYWx9fScsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgJzAnOiAnQ29tcG9zaXRpb24gbGlicmUnLFxuICAgICAgICAnMF9kZXRhaWxsZWQnOlxuICAgICAgICAgIFwiQWZmaWNoYWdlIGVuIG1vZGUgbGlicmUsIGxhIHRhaWxsZSBldCBsZSBwb3NpdGlvbm5lbWVudCBkZXMgcmVzdGl0dXRpb25zIHNvbnQgZW50acOocmVtZW50IHBhcmFtw6l0cmFibGVzIHBhciBsJ3V0aWxpc2F0ZXVyLlwiLFxuICAgICAgICAnMSc6ICdQbGVpbiDDqWNyYW4nLFxuICAgICAgICAnMV9kZXRhaWxsZWQnOlxuICAgICAgICAgIFwiQWZmaWNoYWdlIGTigJl1bmUgc2V1bGUgcmVzdGl0dXRpb24gc3VyIGwnZW5zZW1ibGUgZGUgbCfDqWNyYW4sIGxlIHBsYWNlbWVudCBlc3QgZ3VpZMOpIHBhciBsZSBzeXN0w6htZS5cIixcbiAgICAgICAgJzEvMnYnOiAnMS8yIMOpY3JhbiB2ZXJ0aWNhbCcsXG4gICAgICAgICcxLzJ2X2RldGFpbGxlZCc6XG4gICAgICAgICAgXCJBZmZpY2hhZ2UgZGUgMiByZXN0aXR1dGlvbnMgbWF4aW11bSBzdXIgbCfDqWNyYW4gZMOpY291cMOpIGVuIGRldXggem9uZXMgdmVydGljYWxlcywgbCdham91dCBkZSByZXN0aXR1dGlvbiBzZSBmYWl0IGRhbnMgbGVzIHpvbmVzIHZpZGVzLiBMZSBwbGFjZW1lbnQgZXN0IGd1aWTDqSBwYXIgbGUgc3lzdMOobWUuXCIsXG4gICAgICAgICcxLzJoJzogJzEvMiDDqWNyYW4gaG9yaXpvbnRhbCcsXG4gICAgICAgICcxLzJoX2RldGFpbGxlZCc6XG4gICAgICAgICAgXCJBZmZpY2hhZ2UgZGUgMiByZXN0aXR1dGlvbnMgbWF4aW11bSBzdXIgbOKAmcOpY3JhbiBkw6ljb3Vww6kgZW4gZGV1eCB6b25lcyBob3Jpem9udGFsZXMsIGwnYWpvdXQgZGUgcmVzdGl0dXRpb24gc2UgZmFpdCBkYW5zIGxlcyB6b25lcyB2aWRlcy4gTGUgcGxhY2VtZW50IGVzdCBndWlkw6kgcGFyIGxlIHN5c3TDqG1lLlwiLFxuICAgICAgICAnMS8zdic6ICcxLzMgw6ljcmFuIHZlcnRpY2FsJyxcbiAgICAgICAgJzEvM3ZfZGV0YWlsbGVkJzpcbiAgICAgICAgICBcIkFmZmljaGFnZSBkZSAzIHJlc3RpdHV0aW9ucyBtYXhpbXVtIHN1ciBs4oCZw6ljcmFuIGTDqWNvdXDDqSBlbiB0cm9pcyB6b25lcyB2ZXJ0aWNhbGVzLCBsJ2Fqb3V0IGRlIHJlc3RpdHV0aW9uIHNlIGZhaXQgZGFucyBsZXMgem9uZXMgdmlkZXMuIExlIHBsYWNlbWVudCBlc3QgZ3VpZMOpIHBhciBsZSBzeXN0w6htZS5cIixcbiAgICAgICAgJzEvM2gnOiAnMS8zIMOpY3JhbiBob3Jpem9udGFsJyxcbiAgICAgICAgJzEvM2hfZGV0YWlsbGVkJzpcbiAgICAgICAgICBcIkFmZmljaGFnZSBkZSAzIHJlc3RpdHV0aW9ucyBtYXhpbXVtIHN1ciBs4oCZw6ljcmFuIGTDqWNvdXDDqSBlbiB0cm9pcyB6b25lcyBob3Jpem9udGFsZXMsIGwnYWpvdXQgZGUgcmVzdGl0dXRpb24gc2UgZmFpdCBkYW5zIGxlcyB6b25lcyB2aWRlcy4gTGUgcGxhY2VtZW50IGVzdCBndWlkw6kgcGFyIGxlIHN5c3TDqG1lLlwiLFxuICAgICAgICAnMS80JzogJzEvNCDDqWNyYW4nLFxuICAgICAgICAnMS80X2RldGFpbGxlZCc6XG4gICAgICAgICAgXCJBZmZpY2hhZ2UgZGUgNCByZXN0aXR1dGlvbnMgbWF4aW11bSBzdXIgbOKAmcOpY3JhbiBkw6ljb3Vww6kgZW4gcXVhdHJlIHpvbmVzICwgbCdham91dCBkZSByZXN0aXR1dGlvbiBzZSBmYWl0IGRhbnMgbGVzIHpvbmVzIHZpZGVzLiBMZSBwbGFjZW1lbnQgZXN0IGd1aWTDqSBwYXIgbGUgc3lzdMOobWUuXCJcbiAgICAgIH0sXG4gICAgICBzd2l0Y2hFZGl0OiAnTW9kaWZpZXInLFxuICAgICAgc3dpdGNoRWRpdENvbnRlbnQ6ICdNb2RpZmllciBsYSBjb21wb3NpdGlvbicsXG4gICAgICBzaGFyZTogJ1BhcnRhZ2VyJyxcbiAgICAgIGRlbGV0ZTogJ1N1cHByaW1lcicsXG4gICAgICBub3RJbkRzQXR0cjogJ0F0dHJpYnV0IGluZGlzcG9uaWJsZSdcbiAgICB9LFxuICAgIG1hbmlmZXN0OiB7XG4gICAgICBuYW1lOiAnTm9tJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24nLFxuICAgICAgY3JlYXRpb246ICdEYXRlIGRlIGNyw6lhdGlvbicsXG4gICAgICBtb2RpZmljYXRpb246ICdEYXRlIGRlIG1vZGlmaWNhdGlvbicsXG4gICAgICBhY3Rpb25zOiAnQWN0aW9ucycsXG4gICAgICBpbXBvcnQ6ICdJbXBvcnRlcicsXG4gICAgICBpbXBvcnRBbHQ6ICdJbXBvcnRlciB1bmUgcHLDqXNlbnRhdGlvbicsXG4gICAgICB0aXRsZTogJ1Byw6lzZW50YXRpb25zJyxcbiAgICAgIGdldDoge1xuICAgICAgICBlcnJvckZyb250OiAnRXJyZXVyIGNsaWVudCA6IHt7bXNnfX0nLFxuICAgICAgICBlcnJvckJhY2s6ICdFcnJldXIgc2VydmV1ciBkZSBjb2RlIFt7e2NvZGV9fV0nXG4gICAgICB9LFxuICAgICAgZGVmYXVsdDogJ0TDqWZpbmlyIHBhciBkw6lmYXV0JyxcbiAgICAgIGRvd25sb2FkOiAnVMOpbMOpY2hhcmdlcicsXG4gICAgICBsb2FkOiAnQ2hhcmdlcicsXG4gICAgICBkZWxldGU6ICdTdXBwcmltZXInLFxuICAgICAgZGVsZXRlRXJyb3I6XG4gICAgICAgIFwiUmVjaGVyY2hlIHV0aWxpc8OpZSBkYW5zIHVuZSBvdSBwbHVzaWV1cnMgcmVzdGl0dXRpb24ocyksIHZldWlsbGV6IHN1cHByaW1lciBsZXMgdXRpbGlzYXRpb25zIGQnYWJvcmRcIlxuICAgIH0sXG4gICAgZm9ybWF0OiB7XG4gICAgICBkYXRlOiAnZGQvTU0veXl5eScsXG4gICAgICBkYXRldGltZTogJ2RkL01NL3l5eXkgSEg6bW06c3MnLFxuICAgICAgZGVjaW1hbDogJywnLFxuICAgICAgdGhvdXNhbmRzOiAnICdcbiAgICB9LFxuICAgIGNvbnRleHQ6IHtcbiAgICAgIGFkZDogJ0Fqb3V0ZXIgw6AgbGEgc8OpbGVjdGlvbicsXG4gICAgICByZW1vdmU6ICdFbmxldmVyIGRlIGxhIHPDqWxlY3Rpb24nLFxuICAgICAgbGluazogJ0xpZXIgw6AgbGEgc8OpbGVjdGlvbicsXG4gICAgICBpbnZlcnQ6ICdJbnZlcnNlciBsYSBzw6lsZWN0aW9uJyxcbiAgICAgIHByb3hpbWl0eTogJ1JlY2hlcmNoZXIgbGVzIG9iamV0cyBsacOpcycsXG4gICAgICBleHBsb3JlOiAnT3V2cmlyIGxhIHJlc3RpdHV0aW9uIFJlbGF0aW9ucycsXG4gICAgICBkZXRhaWw6ICdPdXZyaXIgbGEgcmVzdGl0dXRpb24gRMOpdGFpbCcsXG4gICAgICBmbHlpbmdEZXRhaWw6IFwiQ29uc3VsdGVyIGwnb2JqZXRcIixcbiAgICAgIGFkZHJlc3NGcm9tTG9jOiBcIk9idGVuaXIgbCdhZHJlc3NlXCIsXG4gICAgICBlcnJvclNlYXJjaEFkZHJlc3M6ICdBZHJlc3NlIGludHJvdXZhYmxlJyxcbiAgICAgIGNhbmNlbDogJ0FubnVsZXInLFxuICAgICAgY3JlYXRlOiAnQ3LDqWVyJyxcbiAgICAgIGNyZWF0ZU9iamVjdDoge1xuICAgICAgICB0aXRsZToge1xuICAgICAgICAgIG9iamVjdDogJ0Nyw6llciB1biBvYmpldCcsXG4gICAgICAgICAgbGluazogJ0Nyw6llciB1bmUgcmVsYXRpb24nLFxuICAgICAgICAgIGludmVyc2lvbjogJ0ludmVyc2VyIGxhIHJlbGF0aW9uJyxcbiAgICAgICAgICBsaW5rZWRPYmplY3Q6ICdDcsOpZXIgdW4gb2JqZXQgbGnDqSdcbiAgICAgICAgfSxcbiAgICAgICAgY2xhc3M6IFwiQ2xhc3NlIGRlIGwnb2JqZXRcIixcbiAgICAgICAgbGluazogJ1JlbGF0aW9uIGF2ZWMgbGUgbm91dmVsIG9iamV0JyxcbiAgICAgICAgY3JlYXRlZDogXCJMJ29iamV0IGEgw6l0w6kgY3LDqcOpXCIsXG4gICAgICAgIGRldGFpbHM6ICdWb2lyIGxlIGTDqXRhaWwnLFxuICAgICAgICBhZGRNdWx0aUZpZWxkOiAnQWpvdXRlciB1bmUgdmFsZXVyIGRlIHt7bmFtZX19J1xuICAgICAgfVxuICAgIH0sXG4gICAgYWN0aW9uOiB7XG4gICAgICBjbG9zZTogJ0Zlcm1lcicsXG4gICAgICBjbG9zZVBhbmVsOiAnRmVybWVyIGxlIHBhbm5lYXUnLFxuICAgICAgZGVsZXRlOiAnU3VwcHJpbWVyJyxcbiAgICAgIGVkaXQ6ICdFZGl0ZXInLFxuICAgICAgZWRpdFByb2ZpbDogJ0VkaXRlciBsZSBwcm9maWwnLFxuICAgICAgZWRpdFRpdGxlOiAnRWRpdGVyIGxlIHRpdHJlJyxcbiAgICAgIGNob2ljZTogJ0Nob2lzaXIgdW4gLi4uLicsXG4gICAgICBjaG9pY2VJbkxpc3Q6ICdDaG9pc2lyIHVuIMOpbMOpbWVudCBkYW5zIGxhIGxpc3RlJyxcbiAgICAgIHRleHQ6ICdSZW1wbGlyIGxlIGNoYW1wJyxcbiAgICAgIHNvcnRhYmxlQ29sdW1uSGVhZGVyOiBcIlV0aWxpc2V6IGxlcyBib3V0b25zIGQnZW4tdMOqdGUgZGUgY29sb25uZSBwb3VyIHRyaWVyLlwiLFxuICAgICAgdmlld0RldGFpbHM6ICdWb2lyIGxlcyBkw6l0YWlscycsXG4gICAgICBzZWxlY3REYXRlOiAnQ2hvaXNpciB1bmUgZGF0ZScsXG4gICAgICBvcGVuc0luTmV3VGFiOiBcIlMnb3V2cmUgZGFucyB1bmUgbm91dmVsbGUgZmVuw6p0cmVcIixcbiAgICAgIHNraXBMaW5rOiAnQWxsZXIgYXUgY29udGVudScsXG4gICAgICBzZWxlY3RQaWN0dXJlOiAnU8OpbGVjdGlvbm5lciB1bmUgaW1hZ2UnLFxuICAgICAgbW92ZURvd246ICdEw6lwbGFjZXIgdmVycyBsZSBiYXMnLFxuICAgICAgbW92ZVVwOiAnRMOpcGxhY2VyIHZlcnMgbGUgaGF1dCcsXG4gICAgICBleHBvcnRBc0Zvcm1hdDogJ0V4cG9ydGVyIGF1IGZvcm1hdCcsXG4gICAgICBvcGVuTWVudVdpZGdldDogJ01lbnUgZGUgbGEgcmVzdGl0dXRpb24nLFxuICAgICAgc2VhcmNoOiAnUmVjaGVyY2hlcicsXG4gICAgICB1cGxvYWQ6ICdBam91dGVyIHVuZSBpbWFnZScsXG4gICAgICBuZXh0OiAnU3VpdmFudCcsXG4gICAgICBiYWNrOiAnUmV0b3VyJyxcbiAgICAgIGZpbHRlckJ5VHlwZTogJ0ZpbHRyZXIgcGFyIHR5cGUnLFxuICAgICAgZWRpdE1ldGFkYXRhOiAnTW9kaWZpZXIgbGEgbcOpdGFkb25uw6llJyxcbiAgICAgIGFkZE1ldGFkYXRhOiAnQWpvdXRlciBsYSBtw6l0YWRvbm7DqWUnXG4gICAgfSxcbiAgICBzbmFjazoge1xuICAgICAgZGVmYXVsdDogJ1ZlZ2EgYSByZW5jb250csOpIHVuZSBlcnJldXIgZW4gdXRpbGlzYW50IHZvcyBkb25uw6llcyBldCBwYXJhbcOpdHJhZ2UuJyxcbiAgICAgIG1pc3NpbmdQYXJlbnQ6IFwiVW4gbm9ldWQgZXN0IG1hbnF1YW50IGRhbnMgbCdhcmJyZSBkZSByZXByw6lzZW50YXRpb24uIE1lcmNpIGRlIGNvcnJpZ2VyIHZvcyBkb25uw6llcy5cIixcbiAgICAgIG1pc3NpbmdWYWx1ZTogXCJVbiBpdGVtIMOgIGFmZmljaGVyIG5lIHBvc3PDqGRlIHBhcyBsJ2F0dHJpYnV0IMOgIGFmZmljaGVyLiBNZXJjaSBkZSBjb3JyaWdlciB2b3MgZG9ubsOpZXMuXCIsXG4gICAgICBlbXB0eVZhbHVlczogXCJMZXMgdmFsZXVycyBkZSBsJ2F0dHJpYnV0IMOgIGFmZmljaGVyIG5lIHBldXZlbnQgw6p0cmUgdG91dGVzIG51bGxlcy4gTWVyY2kgZGUgY29ycmlnZXIgdm9zIGRvbm7DqWVzLlwiLFxuICAgICAgcGFnZXNDaGFuZ2VkOiAnQXR0ZW50aW9uLCBsZSBub21icmUgZGUgcGFnZXMgZGUgdm90cmUgcHLDqXNlbnRhdGlvbiBhIGNoYW5nw6ksIHF1ZSBzb3VoYWl0ZXotdm91cyBmYWlyZSA/JyxcbiAgICAgIGltYWdlTmFtZUFscmVhZHlVc2VkOiAnTGUgbm9tIGRlIGNldHRlIGltYWdlIGVzdCBkw6lqw6AgdXRpbGlzw6knXG4gICAgfSxcbiAgICB0aGVtZToge1xuICAgICAgZWRpdElucHV0OiB7XG4gICAgICAgIHRvZ2dsZTogJ0VkaXRlcicsXG4gICAgICAgIGNvbmZpcm06ICdDb25maXJtZXInXG4gICAgICB9LFxuICAgICAgcHJldmlvdXNNb250aDogJ01vaXMgcHLDqWPDqWRlbnQnLFxuICAgICAgbmV4dE1vbnRoOiAnTW9pcyBzdWl2YW50JyxcbiAgICAgIHdlZWtkYXlzOiB7XG4gICAgICAgIDA6ICdMdW5kaScsXG4gICAgICAgIDE6ICdNYXJkaScsXG4gICAgICAgIDI6ICdNZXJjcmVkaScsXG4gICAgICAgIDM6ICdKZXVkaScsXG4gICAgICAgIDQ6ICdWZW5kcmVkaScsXG4gICAgICAgIDU6ICdTYW1lZGknLFxuICAgICAgICA2OiAnRGltYW5jaGUnXG4gICAgICB9LFxuICAgICAgc2hvcnRXZWVrZGF5czoge1xuICAgICAgICAwOiAnTHUnLFxuICAgICAgICAxOiAnTWEnLFxuICAgICAgICAyOiAnTWUnLFxuICAgICAgICAzOiAnSmUnLFxuICAgICAgICA0OiAnVmUnLFxuICAgICAgICA1OiAnU2EnLFxuICAgICAgICA2OiAnRGknXG4gICAgICB9LFxuICAgICAgbW9udGhzOiB7XG4gICAgICAgIDA6ICdKYW52aWVyJyxcbiAgICAgICAgMTogJ0bDqXZyaWVyJyxcbiAgICAgICAgMjogJ01hcnMnLFxuICAgICAgICAzOiAnQXZyaWwnLFxuICAgICAgICA0OiAnTWFpJyxcbiAgICAgICAgNTogJ0p1aW4nLFxuICAgICAgICA2OiAnSnVpbGxldCcsXG4gICAgICAgIDc6ICdBb8O7dCcsXG4gICAgICAgIDg6ICdTZXB0ZW1icmUnLFxuICAgICAgICA5OiAnT2N0b2JyZScsXG4gICAgICAgIDEwOiAnTm92ZW1icmUnLFxuICAgICAgICAxMTogJ0TDqWNlbWJyZSdcbiAgICAgIH1cbiAgICB9LFxuICAgIHNoYXJlOiB7XG4gICAgICBwcml2YXRlOiAnUHJpdsOpJyxcbiAgICAgIHB1YmxpYzogJ1B1YmxpYycsXG4gICAgICByZXN0cmljdGVkOiAnUmVzdHJlaW50JyxcbiAgICAgIHR5cGU6ICdWaXNpYmlsaXTDqScsXG4gICAgICB1c2VyczogJ1V0aWxpc2F0ZXVycyBhdXRvcmlzw6lzJyxcbiAgICAgIG5vR3JvdXBzOiAnQXVjdW4gZ3JvdXBlIGRpc3BvbmlibGUnLFxuICAgICAgY29uZmxpY3Q6IHtcbiAgICAgICAgdGl0bGU6ICdXYXJuaW5nJyxcbiAgICAgICAgbWFpbjogJ0F0dGVudGlvbiwgbGVzIHNvdXJjZXMgZGUgZG9ubsOpZXMgc3VpdmFudGVzIG5lIHNlcm9udCBwYXMgdmlzaWJsZSBkZSB0b3V0ZXMgbGVzIHBlcnNvbm5lcyBhY2PDqWRhbnQgw6AgbGEgcHLDqXNlbnRhdGlvbiA6ICcsXG4gICAgICAgIHVuYXZhaWxhYmxlOiAnaW5hY2Nlc3NpYmxlIGF1eCBncm91cGVzIDogJ1xuICAgICAgfVxuICAgIH0sXG4gICAgaG9tZXBhZ2U6IHtcbiAgICAgIG1lbnU6IHtcbiAgICAgICAgbW9kZWw6ICdNb2TDqGxlIGRlIGRvbm7DqWVzJyxcbiAgICAgICAgZGF0YTogJ0FjY8OocyBhdXggZG9ubsOpZXMnXG4gICAgICB9XG4gICAgfSxcbiAgICBtZXRhZGF0YToge1xuICAgICAgdmlldzogJ0NvbnN1bHRlciBsZXMgbWV0YWRvbm7DqWVzJ1xuICAgIH0sXG4gICAgY29tcG9uZW50czoge1xuICAgICAgc2VhcmNoRGF0YTogJ1JlY2hlcmNoZXogdW5lIGRvbm7DqWUnLFxuICAgICAgY2hpcHNTZWxlY3Rvcjoge1xuICAgICAgICBkYXRhc291cmNlOiB7XG4gICAgICAgICAgc2VsZWN0OiAnU8OpbGVjdGlvbm5lciB1bmUgb3UgcGx1c2lldXJzIHNvdXJjZShzKSBkZSBkb25uw6llcyA6JyxcbiAgICAgICAgICBzZWxlY3Rpb246ICdTb3VyY2UocykgZGUgZG9ubsOpZXMgc8OpbGVjdGlvbm7DqWVzOicsXG4gICAgICAgICAgc2VsZWN0SXRlbTogJ1PDqWxlY3Rpb25uZXIgbGEgc291cmNlIGRlIGRvbm7DqWVzJyxcbiAgICAgICAgICB1bnNlbGVjdEl0ZW06ICdEw6lzw6lsZWN0aW9ubmVyIGxhIHNvdXJjZSBkZSBkb25uw6llcycsXG4gICAgICAgICAgbm9JdGVtU2VsZWN0ZWQ6ICdBdWN1bmUgc291cmNlIGRlIGRvbm7DqWVzIHPDqWxlY3Rpb25uw6llJ1xuICAgICAgICB9LFxuICAgICAgICBzaGFyZToge1xuICAgICAgICAgIHNlbGVjdDogXCJTw6lsZWN0aW9ubmVyIHVuIG91IHBsdXNpZXVycyBncm91cGUocykgZCd1dGlsaXNhdGV1cnMgOlwiLFxuICAgICAgICAgIHNlbGVjdGlvbjogXCJHcm91cGUocykgZCd1dGlsaXNhdGV1cnMgc8OpbGVjdGlvbm7DqXM6XCIsXG4gICAgICAgICAgc2VsZWN0SXRlbTogXCJTw6lsZWN0aW9ubmVyIGxlIGdyb3VwZSBkJ3V0aWxpc2F0ZXVyc1wiLFxuICAgICAgICAgIHVuc2VsZWN0SXRlbTogXCJEw6lzw6lsZWN0aW9ubmVyIGxlIGdyb3VwZSBkJ3V0aWxpc2F0ZXVyc1wiLFxuICAgICAgICAgIG5vSXRlbVNlbGVjdGVkOiBcIkF1Y3VuIGdyb3VwZSBkJ3V0aWxpc2F0ZXVycyBzw6lsZWN0aW9ubsOpXCIsXG4gICAgICAgICAgZ3JvdXBzOiB7XG4gICAgICAgICAgICBBTEw6ICdQdWJsaWMnLFxuICAgICAgICAgICAgQVVUSEVOVElDQVRFRDogJ0xlcyB1dGlsaXNhdGV1cnMgY29ubmVjdMOpcydcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuICAgIGVycm9yczoge1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgJ1VuZSBlcnJldXIgZXN0IHN1cnZlbnVlLiBWZXVpbGxleiB2w6lyaWZpZXogbGVzIGluZm9ybWF0aW9ucyBvdSBjb250YWN0ZXIgdm90cmUgYWRtaW5pc3RyYXRldXIgc2kgbGUgcHJvYmzDqG1lIHBlcnNpc3RlJyxcbiAgICAgIGNvZGVzOiB7XG4gICAgICAgIDA6ICdVbmUgZXJyZXVyIGVzdCBzdXJ2ZW51ZSBhdSBuaXZlYXUgbmF2aWdhdGV1ci4gQ2VsYSBwZXV0LcOqdHJlIHVuZSBlcnJldXIgQ09SUywgZGUgcsOpc2VhdSAuLi4gTGEgcmVzc291cmNlIG5lIHBldXQgcGFzIMOqdHJlIHLDqWN1cMOpcsOpZS4nLFxuICAgICAgICA0MDA6ICdVbmUgZXJyZXVyIGVzdCBzdXJ2ZW51ZS4nLFxuICAgICAgICA0MDE6ICdWb3RyZSBzZXNzaW9uIGVzdCBpbnZhbGlkZS4gRXNzYXlleiBkZSB2b3VzIHJlY29ubmVjdGVyICEnLFxuICAgICAgICA0MDM6IFwiVm91cyBuJ2F2ZXogcGFzIGxlcyBkcm9pdHMgcG91ciBjb25zdWx0ZXIgY2V0dGUgcmVzc291cmNlXCIsXG4gICAgICAgIDQwNDogXCJMYSByZXNzb3VyY2UgZGVtYW5kw6llIG4nZXhpc3RlIHBhc1wiLFxuICAgICAgICA0MDk6ICdVbmUgcmVzc291cmNlIHNpbWlsYWlyZSBleGlzdGUgZMOpasOgJyxcbiAgICAgICAgNTAwOiAnVW5lIGVycmV1ciBlc3Qgc3VydmVudWUuJyxcbiAgICAgICAgNTAzOiAnTGUgc2VydmljZSBlc3QgYWN0dWVsbGVtZW50IGluZGlzcG9uaWJsZS4gUsOpZXNzYXllciB1bHTDqXJpZXVyZW1lbnQgISdcbiAgICAgIH1cbiAgICB9LFxuICAgIGZpbHRlcnM6IHtcbiAgICAgIGxhYmVsOiAnUGFyYW3DqXRyZXIgbGVzIGZpbHRyZXMnLFxuICAgICAgbm9BdHRyaWJ1dGVzOiBcIkxhIHByw6lzZW50YXRpb24gZW4gY291cnMgbmUgZGlzcG9zZSBkJ2F1Y3VuZSBhdHRyaWJ1dCBzdXIgbGVxdWVsIGZpbHRyZXJcIixcbiAgICAgIG5vRmlsdGVyczogXCJWb3VzIG4nYXZleiBwYXMgZW5jb3JlIHBhcmFtw6l0csOpIGRlIGZpbHRyZS5cIixcbiAgICAgIGNsZWFyOiAnRWZmYWNlcicsXG4gICAgICBsaXN0OiB7XG4gICAgICAgIGF0dHJpYnV0ZXM6ICdBdHRyaWJ1dHM6ICcsXG4gICAgICAgIGFkZDogJ0Nyw6llciB1biBmaWx0cmUnLFxuICAgICAgICBkZWxldGU6ICdTdXBwcmltZXInLFxuICAgICAgICBtb2RpZnk6ICdNb2RpZmllcidcbiAgICAgIH0sXG4gICAgICBjcmVhdGlvbjoge1xuICAgICAgICBjcmVhdGU6ICdDcsOpZXIgdW4gZmlsdHJlJyxcbiAgICAgICAgdXBkYXRlOiAnTW9kaWZpZXIgdW4gZmlsdHJlJyxcbiAgICAgICAgbmFtZTogJ05vbSBkdSBmaWx0cmUnLFxuICAgICAgICB0eXBlOiAnVHlwZSBkdSBmaWx0cmUnLFxuICAgICAgICBmaWx0ZXI6ICdGaWx0cmUnLFxuICAgICAgICBhdHRyaWJ1dGVzOiAnQXR0cmlidXRzJyxcbiAgICAgICAgdmFsdWU6ICdWYWxldXInLFxuICAgICAgICB2YWx1ZXM6ICdWYWxldXJzJyxcbiAgICAgICAgdmFsaWRhdGU6ICdWYWxpZGVyJyxcbiAgICAgICAgbGltaXQ6IFwiTm9tYnJlIGRlIHN1Z2dlc3Rpb25zIHByb3Bvc8OpZXMgw6AgbCd1dGlsaXNhdGV1clwiLFxuICAgICAgICBkYXRlUmFuZ2U6ICdQbGFnZSBkZSBkYXRlcydcbiAgICAgIH0sXG4gICAgICBhdHRyaWJ1dGVzOiB7XG4gICAgICAgIGRhdGFzb3VyY2U6ICdEYXRhc291cmNlJyxcbiAgICAgICAgY2xhc3M6ICdDbGFzc2UnLFxuICAgICAgICBvcGVyYXRvcjogJ09ww6lyYXRldXInXG4gICAgICB9LFxuICAgICAgdHlwZXM6IHtcbiAgICAgICAgdGV4dDogJ1RleHRlJyxcbiAgICAgICAgZGF0ZTogJ0RhdGUnLFxuICAgICAgICBsaXN0OiAnTGlzdGUnLFxuICAgICAgICBudW1iZXI6ICdOdW3DqXJpcXVlJyxcbiAgICAgICAgYXV0b2NvbXBsZXRlOiAnTGlzdGUgYXZlYyBzdWdnZXN0aW9uJ1xuICAgICAgfVxuICAgIH0sXG4gICAgZ2VvQXV0aDoge1xuICAgICAgZmFpbHVyZTogJ0VycmV1ciBnZW9zZXJ2ZXInXG4gICAgfSxcbiAgICBncmlkOiB7XG4gICAgICByb3dzOiAnTGlnbmVzJyxcbiAgICAgIGNvbHVtbnM6ICdDb2xvbm5lcydcbiAgICB9XG4gIH1cbn07XG4iXX0=
401
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnIudHJhbnNsYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvbGliL2NvcmUvaTE4bi9mci50cmFuc2xhdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLE1BQU0sRUFBRTtRQUNOLE1BQU0sRUFBRTtZQUNOLEtBQUssRUFBRSxpQkFBaUI7WUFDeEIsT0FBTyxFQUFFLHFCQUFxQjtTQUMvQjtRQUNELEtBQUssRUFBRTtZQUNMLEtBQUssRUFBRSxpQkFBaUI7WUFDeEIsR0FBRyxFQUFFLGFBQWE7WUFDbEIsSUFBSSxFQUFFLFNBQVM7WUFDZixNQUFNLEVBQUUsT0FBTztZQUNmLElBQUksRUFBRSxXQUFXO1lBQ2pCLE9BQU8sRUFBRSxnQkFBZ0I7WUFDekIsU0FBUyxFQUFFLHFCQUFxQjtTQUNqQztRQUNELE1BQU0sRUFBRTtZQUNOLHFCQUFxQixFQUFFLDhCQUE4QjtTQUN0RDtRQUNELE1BQU0sRUFBRTtZQUNOLE1BQU0sRUFBRSx1Q0FBdUM7WUFDL0MsWUFBWSxFQUFFLDhDQUE4QztZQUM1RCxXQUFXLEVBQUUsc0RBQXNEO1lBQ25FLGFBQWEsRUFBRSwwREFBMEQ7WUFDekUsUUFBUSxFQUFFO2dCQUNSLEtBQUssRUFBRSxhQUFhO2dCQUNwQixXQUFXLEVBQUUseUJBQXlCO2dCQUN0QyxnQkFBZ0IsRUFBRSx5QkFBeUI7YUFDNUM7WUFDRCxhQUFhLEVBQUUsc0NBQXNDO1lBQ3JELFlBQVksRUFBRSw4QkFBOEI7WUFDNUMsT0FBTyxFQUFFO2dCQUNQLE1BQU0sRUFBRSx3Q0FBd0M7Z0JBQ2hELFVBQVUsRUFBRSxxQkFBcUI7Z0JBQ2pDLFlBQVksRUFBRSw2QkFBNkI7Z0JBQzNDLGFBQWEsRUFBRSxzQkFBc0I7Z0JBQ3JDLFVBQVUsRUFBRSx1QkFBdUI7Z0JBQ25DLFFBQVEsRUFBRSx5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QUUsNkNBQTZDO1lBQ3hELEtBQUssRUFBRSxTQUFTO1lBQ2hCLElBQUksRUFBRTtnQkFDSixVQUFVLEVBQUUsYUFBYTtnQkFDekIsR0FBRyxFQUFFLGlCQUFpQjtnQkFDdEIsTUFBTSxFQUFFLFdBQVc7Z0JBQ25CLE1BQU0sRUFBRSxVQUFVO2FBQ25CO1lBQ0QsUUFBUSxFQUFFO2dCQUNSLE1BQU0sRUFBRSxpQkFBaUI7Z0JBQ3pCLE1BQU0sRUFBRSxvQkFBb0I7Z0JBQzVCLElBQUksRUFBRSxlQUFlO2dCQUNyQixJQUFJLEVBQUUsZ0JBQWdCO2dCQUN0QixNQUFNLEVBQUUsUUFBUTtnQkFDaEIsVUFBVSxFQUFFLFdBQVc7Z0JBQ3ZCLEtBQUssRUFBRSxRQUFRO2dCQUNmLE1BQU0sRUFBRSxTQUFTO2dCQUNqQixRQUFRLEVBQUUsU0FBUztnQkFDbkIsS0FBSyxFQUFFLGlEQUFpRDtnQkFDeEQsU0FBUyxFQUFFLGdCQUFnQjthQUM1QjtZQUNELFVBQVUsRUFBRTtnQkFDVixVQUFVLEVBQUUsWUFBWTtnQkFDeEIsS0FBSyxFQUFFLFFBQVE7Z0JBQ2YsUUFBUSxFQUFFLFdBQVc7YUFDdEI7WUFDRCxLQUFLLEVBQUU7Z0JBQ0wsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsSUFBSSxFQUFFLE1BQU07Z0JBQ1osSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFLFdBQVc7Z0JBQ25CLFlBQVksRUFBRSx1QkFBdUI7YUFDdEM7U0FDRjtRQUNELE9BQU8sRUFBRTtZQUNQLE9BQU8sRUFBRSxrQkFBa0I7U0FDNUI7UUFDRCxJQUFJLEVBQUU7WUFDSixJQUFJLEVBQUUsUUFBUTtZQUNkLE9BQU8sRUFBRSxVQUFVO1NBQ3BCO0tBQ0Y7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGZyVHJhbnNsYXRpb25zID0ge1xuICAnQHByeSc6IHtcbiAgICBzZWxlY3Q6IHtcbiAgICAgIGxhYmVsOiAnTGlzdGUgZGVzIGNob2l4JyxcbiAgICAgIGxvYWRpbmc6ICdDaGFyZ2VtZW50IGVuIGNvdXJzJ1xuICAgIH0sXG4gICAgYWJvdXQ6IHtcbiAgICAgIGZyb250OiAnTGlicmFpcmllIGZyb250JyxcbiAgICAgIHJlZjogJ1LDqWbDqXJlbnRpZWwnLFxuICAgICAgZGF0YTogJ0Rvbm7DqWVzJyxcbiAgICAgIHJlcGxheTogJ1JlamV1JyxcbiAgICAgIGV4ZWM6ICdFeMOpY3V0aW9uJyxcbiAgICAgIHRyYW5zZm86ICdUcmFuc2Zvcm1hdGlvbicsXG4gICAgICBub1ZlcnNpb246ICdWZXJzaW9uIG5vbiB0cm91dsOpZSdcbiAgICB9LFxuICAgIGhlYWRlcjoge1xuICAgICAgbm9DdXJyZW50UHJlc2VudGF0aW9uOiAnUHLDqXNlbnRhdGlvbiBub24gc2F1dmVnYXJkw6llJ1xuICAgIH0sXG4gICAgd2lkZ2V0OiB7XG4gICAgICBub0RhdGE6ICdBdWN1bmUgc291cmNlIGRlIGRvbm7DqWVzIHPDqWxlY3Rpb25uw6llJyxcbiAgICAgIHVucmVjb2duaXplZDogJ0xhIHJlc3RpdHV0aW9uIGRlIHR5cGUge3t0eXBlfX0gZXN0IGluY29ubnUuJyxcbiAgICAgIGFkZGVkSW5WaWV3OiAnTGEgcmVzdGl0dXRpb24gYSDDqXTDqSBham91dMOpZSBzdXIgbGEgcGFnZSBuwrB7e2luZGV4fX0nLFxuICAgICAgdXBkYXRlZEluVmlldzogJ0xhIHJlc3RpdHV0aW9uIGEgw6l0w6kgbWlzZSDDoCBqb3VyIHN1ciBsYSBwYWdlIG7CsHt7aW5kZXh9fScsXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICB0aXRsZTogJ1BhcmFtw6l0cmFnZScsXG4gICAgICAgIGNoYW5nZVRpdGxlOiAnVGl0cmUgZGUgbGEgcmVzdGl0dXRpb24nLFxuICAgICAgICB2YWxpZGF0ZVVwZGF0aW5nOiAnVmFsaWRlciBsYSBtb2RpZmljYXRpb24nXG4gICAgICB9LFxuICAgICAgZGVmaW5lQ2F0YWxvZzogJ0TDqWZpbmlzc2V6IHZvdHJlIGVudHLDqWUgZGUgY2F0YWxvZ3VlJyxcbiAgICAgIGJ1dHRvbkNob2ljZTogJ1PDqWxlY3Rpb25uZXIgdW5lIHJlc3RpdHV0aW9uJyxcbiAgICAgIHRvb2x0aXA6IHtcbiAgICAgICAgcGFyYW1zOiAnUGFyYW3DqXRyZXIgbGEgdnVlIGRlIHZvdHJlIHJlc3RpdHV0aW9uJyxcbiAgICAgICAgcmVhZFNlYXJjaDogJ0Nob2lzaXIgbGVzIGRvbm7DqWVzJyxcbiAgICAgICAgZGVsZXRlV2lkZ2V0OiAnU3VwcHJpbWVyIHZvdHJlIHJlc3RpdHV0aW9uJyxcbiAgICAgICAgY2F0YWxvZ1dpZGdldDogJ0Fqb3V0ZXIgYXUgY2F0YWxvZ3VlJyxcbiAgICAgICAgY2hhbmdlU3BvdDogXCJDaGFuZ2VyIGQnZW1wbGFjZW1lbnRcIixcbiAgICAgICAgc3BvdE5hbWU6ICdFbXBsYWNlbWVudCBuwrB7e3BsYWNlfX0nXG4gICAgICB9LFxuICAgICAgdGFyZ2V0OiB7XG4gICAgICAgIG5ldzogJ091dnJpciBkYW5zIHVuZSBub3V2ZWxsZSBwYWdlJyxcbiAgICAgICAgZXhpc3Rpbmc6ICdPdXZyaXIgZGFucyBsYSBwYWdlIG7CsHt7dGFyZ2V0SW5kZXh9fScsXG4gICAgICAgIGRlbGV0ZTogJ1N1cHByaW1lcicsXG4gICAgICAgIG1heGltaXplOiAnTWF4aW1pc2VyJyxcbiAgICAgICAgbm9uZV9hdXRvOiAnSW5zw6lyZXogaWNpIHZvcyByZXN0aXR1dGlvbnMnLFxuICAgICAgICBub25lX21hbnVhbDogJ0dsaXNzZXIgLSBEw6lwb3NlcicsXG4gICAgICAgIGxvYWRpbmc6ICdDaGFyZ2VtZW50J1xuICAgICAgfSxcbiAgICAgIG5hbWVkUXVlcnk6IHtcbiAgICAgICAgZGVmYXVsdFJzOiAnUmVjaGVyY2hlIGNvdXJhbnRlJyxcbiAgICAgICAgcmVzdWx0c0FjY3VyYXRlOiAne3t0b3RhbH19JyxcbiAgICAgICAgcmVzdWx0c05vbkFjY3VyYXRlOiAne3tkaXNwbGF5ZWR9fSBzdXIgZW52aXJvbiB7e3RvdGFsfX0nXG4gICAgICB9LFxuICAgICAgbW9kYWxUaXRsZTogJ1ZvdWxlei12b3VzIGNvbmZpcm1lciA/JyxcbiAgICAgIGl0ZW1JZDogJ0lkJyxcbiAgICAgIGNsYXNzOiAnQ2xhc3NlJyxcbiAgICAgIGNvbG9yU2NoZW1lOiAnU2Now6ltYSBkZSBjb3VsZXVyJyxcbiAgICAgIGN1c3RvbTogJ1BlcnNvbmFsaXPDqSBuwrB7e2lkfX0nLFxuICAgICAgYWRkQ29sb3I6ICdBam91dGVyIHVuZSBjb3VsZXVyJyxcbiAgICAgIHJlbW92ZUNvbG9yOiAnU3VwcHJpbWVyIHVuZSBjb3VsZXVyJ1xuICAgIH0sXG4gICAgdmlldzoge1xuICAgICAgbmFtZTogJ1BhZ2UgbsKwe3tyYW5rfX0nXG4gICAgfSxcbiAgICB0b29sYm94OiB7XG4gICAgICBkZWZhdWx0U2l6ZTogJ1RhaWxsZSBkZSByZXN0aXR1dGlvbicsXG4gICAgICBhbmFseXRpYzogJ1RhYmxlYXUgYW5hbHl0aXF1ZScsXG4gICAgICBtYW5pZmVzdDoge1xuICAgICAgICBuYW1lOiAnTm9tIGRlIGxhIHByw6lzZW50YXRpb24nLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uIGRlIGxhIHByw6lzZW50YXRpb24nLFxuICAgICAgICBzYXZlZDogJ1Byw6lzZW50YXRpb24ge3t2aWV3SWR9fSBzYXV2ZWdhcmTDqWUnLFxuICAgICAgICBzYXZlRXJyb3JDb2RlOiB7XG4gICAgICAgICAgVU5LTk9XTjogJ0VycmV1ciBpbmNvbm51ZScsXG4gICAgICAgICAgRk9SQklEREVOOiBcIlZvdXMgbifDqnRlcyBwYXMgbGUgcHJvcHJpw6l0YWlyZSBkZSBjZXR0ZSBwcsOpc2VudGF0aW9uIFwiLFxuICAgICAgICAgIE5BTUVfQUxSRUFEWV9VU0VEOiAnVW5lIHByw6lzZW50YXRpb24gYXZlYyBsZSBub20gXCJ7e25hbWV9fVwiIGV4aXN0ZSBkw6lqw6AsIHZldWlsbGV6IHPDqWxlY3Rpb25uZXIgdW4gYXV0cmUgbm9tLicsXG4gICAgICAgICAgU0FWRV9NRVRBREFUQTogJ1ZldWlsbGV6IHNhdXZlZ2FyZGVyIGxhIHByZXNlbnRhdGlvbiBhdmFudCBkZSBjaG9pc2lyIHVuZSB0aMOpbWF0aXF1ZS4nXG4gICAgICAgIH0sXG4gICAgICAgIGRlZmF1bHRlZDogJ1Byw6lzZW50YXRpb24ge3t2aWV3SWR9fSBtYXJxdcOpZSBwYXIgZMOpZmF1dCcsXG4gICAgICAgIHVuZGVmYXVsdGVkOiBcIkxhIHByw6lzZW50YXRpb24ge3t2aWV3SWR9fSBuJ2VzdCBwbHVzIG1hcnF1w6llIHBhciBkw6lmYXV0XCIsXG4gICAgICAgIHZhbGlkYXRlZDogJ1ZhbGlkZXInLFxuICAgICAgICBjaGVjazogJ0VucmVnaXN0cmVyJyxcbiAgICAgICAgY2xvc2U6ICdBbm51bGVyJyxcbiAgICAgICAgdmFsaWRhdGU6ICdWYWxpZGVyJ1xuICAgICAgfSxcbiAgICAgIGNhdGFsb2c6IHtcbiAgICAgICAgdGl0bGU6ICdQZXJzb25uYWxpc8OpcycsXG4gICAgICAgIGxhYmVsOiAnTm9tJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbicsXG4gICAgICAgIGljb246ICdJbWFnZScsXG4gICAgICAgIGZpbHRlcjoge1xuICAgICAgICAgIGRlbGV0ZTogJ1N1cHByaW1lciBjZSBmaWx0cmUnLFxuICAgICAgICAgIHR5cGU6ICdGaWx0cmVyIHBhciB0eXBlJyxcbiAgICAgICAgICBuYW1lOiAnRmlsdHJlciBwYXIgbm9tJ1xuICAgICAgICB9LFxuICAgICAgICBzYXZlRXJyb3JDb2RlOiB7XG4gICAgICAgICAgVU5LTk9XTjogJ0VycmV1ciBpbmNvbm51ZScsXG4gICAgICAgICAgTkFNRV9BTFJFQURZX1VTRUQ6ICdVbmUgcmVzdGl0dXRpb24gYXZlYyBsZSBub20gXCJ7e25hbWV9fVwiIGV4aXN0ZSBkw6lqw6AsIHZldWlsbGV6IHPDqWxlY3Rpb25uZXIgdW4gYXV0cmUgbm9tLidcbiAgICAgICAgfSxcbiAgICAgICAgc2F2ZWQ6ICdQcsOpc2VudGF0aW9uIHt7dmlld0lkfX0gc2F1dmVnYXJkw6llJ1xuICAgICAgfSxcbiAgICAgIGFib3V0OiAnSW5mb3JtYXRpb25zJyxcbiAgICAgIGVkaXQ6ICdNb2RpZmllciBsYSBkaXNwb3NpdGlvbicsXG4gICAgICBlZGl0T2ZmOiAnVmlzdWFsaXNlciBsYSBkaXNwb3NpdGlvbicsXG4gICAgICBsYXVuY2g6ICdOb3V2ZWxsZSBwYWdlJyxcbiAgICAgIGxhdW5jaEluZGljYXRpb246ICdPdXZyaXIgY2V0dGUgcGFnZSBkYW5zIHVuJyxcbiAgICAgIGNob29zZUdyaWQ6ICdDaGFuZ2VyIGxhIGdyaWxsZScsXG4gICAgICBjbGVhcjogXCJWaWRlciBsJ2FmZmljaGFnZVwiLFxuICAgICAgcmVmcmVzaDogJ1JhZnJhaWNoaXIgbGVzIGRvbm7DqWVzJyxcbiAgICAgIGF1dG9tYXRlUmVmcmVzaDogXCJBdXRvbWF0aXNlciBsJ2FjdHVhbGlzYXRpb25cIixcbiAgICAgIG9wdGlvbnM6ICdPcHRpb25zJyxcbiAgICAgIGNsb3NlOiAnRmVybWVyJyxcbiAgICAgIGZpbHRlcjogJ0ZpbHRyZXInLFxuICAgICAgaGVhdG1hcDogJ0Zyw6lxdWVudGF0aW9uJyxcbiAgICAgIGJ1YmJsZW1hcDogJ0J1bGxlcycsXG4gICAgICBtYXJrZXJtYXA6ICdNYXJxdWV1cnMnLFxuICAgICAgc2ltcGxlbWFwOiAnQ2FydGUnLFxuICAgICAgbWFwOiAnQ2FydGUnLFxuICAgICAgdGFibGU6ICdUYWJsZWF1JyxcbiAgICAgIGRldGFpbDogJ0TDqXRhaWwnLFxuICAgICAgY2hhcnQ6ICdHcmFwaGlxdWUnLFxuICAgICAgcmVzdWx0U2V0OiAnUmVjaGVyY2hlcyBub21tw6llcycsXG4gICAgICByZW5hbWU6ICdFbnJlZ2lzdHJlciBzb3VzJyxcbiAgICAgIHJlc3RvcmU6ICdSZXN0YXVyZXIgbGVzIHBhZ2VzJyxcbiAgICAgIHNhdmU6ICdFbnJlZ2lzdHJlcicsXG4gICAgICBkcmFnOiAnUmVzdGl0dXRpb24uLi4nLFxuICAgICAgZHJhZ0luZGljYXRpb246ICdJbnPDqXJlciB1bicsXG4gICAgICBiYXJjaGFydDogJ0JhcnJlcycsXG4gICAgICBoaXN0b2dyYW06ICdIaXN0b2dyYW1tZScsXG4gICAgICBsaW5lY2hhcnQ6ICdDb3VyYmUnLFxuICAgICAgcG9pbnRjaGFydDogJ1BvaW50cycsXG4gICAgICBhcmVhY2hhcnQ6ICdBaXJlJyxcbiAgICAgIGFyY2NoYXJ0OiAnQ2lyY3VsYWlyZScsXG4gICAgICByYWRhcmNoYXJ0OiAnUmFkYXInLFxuICAgICAgY2lyY2xlY2hhcnQ6ICdQYXF1ZXRzIGRlIGNlcmNsZXMnLFxuICAgICAgaWZyYW1lOiAnQXBwbGljYXRpb24gZXh0ZXJuZScsXG4gICAgICB2ZWdhOiAnR3JhcGhpcXVlIGF2YW5jw6knLFxuICAgICAgZ3JhcGg6ICdSZWxhdGlvbnMnLFxuICAgICAgcGxhY2Vob2xkZXI6ICcnLFxuICAgICAgc3ViOiB7XG4gICAgICAgIG1hcDogJ0NhcnRvZ3JhcGhpZScsXG4gICAgICAgIGNoYXJ0OiAnR3JhcGhpcXVlJyxcbiAgICAgICAgb3RoZXI6ICdBdXRyZSdcbiAgICAgIH0sXG4gICAgICB0aWxlOiAnVHVpbGVzJyxcbiAgICAgIHRlbXBsYXRlOiAnVGVtcGxhdGUgSFRNTCcsXG4gICAgICBub3c6IFwiQXVqb3VyZCdodWlcIixcbiAgICAgIHNpbmNlX2RheTogJ0lsIHkgYSB7e2RheX19IGpvdXJ7e3BsdXJhbH19JyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICAnMCc6ICdDb21wb3NpdGlvbiBsaWJyZScsXG4gICAgICAgICcwX2RldGFpbGxlZCc6XG4gICAgICAgICAgXCJBZmZpY2hhZ2UgZW4gbW9kZSBsaWJyZSwgbGEgdGFpbGxlIGV0IGxlIHBvc2l0aW9ubmVtZW50IGRlcyByZXN0aXR1dGlvbnMgc29udCBlbnRpw6hyZW1lbnQgcGFyYW3DqXRyYWJsZXMgcGFyIGwndXRpbGlzYXRldXIuXCIsXG4gICAgICAgICcxJzogJ1BsZWluIMOpY3JhbicsXG4gICAgICAgICcxX2RldGFpbGxlZCc6XG4gICAgICAgICAgXCJBZmZpY2hhZ2UgZOKAmXVuZSBzZXVsZSByZXN0aXR1dGlvbiBzdXIgbCdlbnNlbWJsZSBkZSBsJ8OpY3JhbiwgbGUgcGxhY2VtZW50IGVzdCBndWlkw6kgcGFyIGxlIHN5c3TDqG1lLlwiLFxuICAgICAgICAnMS8ydic6ICcxLzIgw6ljcmFuIHZlcnRpY2FsJyxcbiAgICAgICAgJzEvMnZfZGV0YWlsbGVkJzpcbiAgICAgICAgICBcIkFmZmljaGFnZSBkZSAyIHJlc3RpdHV0aW9ucyBtYXhpbXVtIHN1ciBsJ8OpY3JhbiBkw6ljb3Vww6kgZW4gZGV1eCB6b25lcyB2ZXJ0aWNhbGVzLCBsJ2Fqb3V0IGRlIHJlc3RpdHV0aW9uIHNlIGZhaXQgZGFucyBsZXMgem9uZXMgdmlkZXMuIExlIHBsYWNlbWVudCBlc3QgZ3VpZMOpIHBhciBsZSBzeXN0w6htZS5cIixcbiAgICAgICAgJzEvMmgnOiAnMS8yIMOpY3JhbiBob3Jpem9udGFsJyxcbiAgICAgICAgJzEvMmhfZGV0YWlsbGVkJzpcbiAgICAgICAgICBcIkFmZmljaGFnZSBkZSAyIHJlc3RpdHV0aW9ucyBtYXhpbXVtIHN1ciBs4oCZw6ljcmFuIGTDqWNvdXDDqSBlbiBkZXV4IHpvbmVzIGhvcml6b250YWxlcywgbCdham91dCBkZSByZXN0aXR1dGlvbiBzZSBmYWl0IGRhbnMgbGVzIHpvbmVzIHZpZGVzLiBMZSBwbGFjZW1lbnQgZXN0IGd1aWTDqSBwYXIgbGUgc3lzdMOobWUuXCIsXG4gICAgICAgICcxLzN2JzogJzEvMyDDqWNyYW4gdmVydGljYWwnLFxuICAgICAgICAnMS8zdl9kZXRhaWxsZWQnOlxuICAgICAgICAgIFwiQWZmaWNoYWdlIGRlIDMgcmVzdGl0dXRpb25zIG1heGltdW0gc3VyIGzigJnDqWNyYW4gZMOpY291cMOpIGVuIHRyb2lzIHpvbmVzIHZlcnRpY2FsZXMsIGwnYWpvdXQgZGUgcmVzdGl0dXRpb24gc2UgZmFpdCBkYW5zIGxlcyB6b25lcyB2aWRlcy4gTGUgcGxhY2VtZW50IGVzdCBndWlkw6kgcGFyIGxlIHN5c3TDqG1lLlwiLFxuICAgICAgICAnMS8zaCc6ICcxLzMgw6ljcmFuIGhvcml6b250YWwnLFxuICAgICAgICAnMS8zaF9kZXRhaWxsZWQnOlxuICAgICAgICAgIFwiQWZmaWNoYWdlIGRlIDMgcmVzdGl0dXRpb25zIG1heGltdW0gc3VyIGzigJnDqWNyYW4gZMOpY291cMOpIGVuIHRyb2lzIHpvbmVzIGhvcml6b250YWxlcywgbCdham91dCBkZSByZXN0aXR1dGlvbiBzZSBmYWl0IGRhbnMgbGVzIHpvbmVzIHZpZGVzLiBMZSBwbGFjZW1lbnQgZXN0IGd1aWTDqSBwYXIgbGUgc3lzdMOobWUuXCIsXG4gICAgICAgICcxLzQnOiAnMS80IMOpY3JhbicsXG4gICAgICAgICcxLzRfZGV0YWlsbGVkJzpcbiAgICAgICAgICBcIkFmZmljaGFnZSBkZSA0IHJlc3RpdHV0aW9ucyBtYXhpbXVtIHN1ciBs4oCZw6ljcmFuIGTDqWNvdXDDqSBlbiBxdWF0cmUgem9uZXMgLCBsJ2Fqb3V0IGRlIHJlc3RpdHV0aW9uIHNlIGZhaXQgZGFucyBsZXMgem9uZXMgdmlkZXMuIExlIHBsYWNlbWVudCBlc3QgZ3VpZMOpIHBhciBsZSBzeXN0w6htZS5cIlxuICAgICAgfSxcbiAgICAgIHN3aXRjaEVkaXQ6ICdNb2RpZmllcicsXG4gICAgICBzd2l0Y2hFZGl0Q29udGVudDogJ01vZGlmaWVyIGxhIGNvbXBvc2l0aW9uJyxcbiAgICAgIHNoYXJlOiAnUGFydGFnZXInLFxuICAgICAgZGVsZXRlOiAnU3VwcHJpbWVyJyxcbiAgICAgIG5vdEluRHNBdHRyOiAnQXR0cmlidXQgaW5kaXNwb25pYmxlJ1xuICAgIH0sXG4gICAgbWFuaWZlc3Q6IHtcbiAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbicsXG4gICAgICBjcmVhdGlvbjogJ0RhdGUgZGUgY3LDqWF0aW9uJyxcbiAgICAgIG1vZGlmaWNhdGlvbjogJ0RhdGUgZGUgbW9kaWZpY2F0aW9uJyxcbiAgICAgIGFjdGlvbnM6ICdBY3Rpb25zJyxcbiAgICAgIGltcG9ydDogJ0ltcG9ydGVyJyxcbiAgICAgIGltcG9ydEFsdDogJ0ltcG9ydGVyIHVuZSBwcsOpc2VudGF0aW9uJyxcbiAgICAgIHRpdGxlOiAnUHLDqXNlbnRhdGlvbnMnLFxuICAgICAgZ2V0OiB7XG4gICAgICAgIGVycm9yRnJvbnQ6ICdFcnJldXIgY2xpZW50IDoge3ttc2d9fScsXG4gICAgICAgIGVycm9yQmFjazogJ0VycmV1ciBzZXJ2ZXVyIGRlIGNvZGUgW3t7Y29kZX19XSdcbiAgICAgIH0sXG4gICAgICBkZWZhdWx0OiAnRMOpZmluaXIgcGFyIGTDqWZhdXQnLFxuICAgICAgZG93bmxvYWQ6ICdUw6lsw6ljaGFyZ2VyJyxcbiAgICAgIGxvYWQ6ICdDaGFyZ2VyJyxcbiAgICAgIGRlbGV0ZTogJ1N1cHByaW1lcicsXG4gICAgICBkZWxldGVFcnJvcjpcbiAgICAgICAgXCJSZWNoZXJjaGUgdXRpbGlzw6llIGRhbnMgdW5lIG91IHBsdXNpZXVycyByZXN0aXR1dGlvbihzKSwgdmV1aWxsZXogc3VwcHJpbWVyIGxlcyB1dGlsaXNhdGlvbnMgZCdhYm9yZFwiXG4gICAgfSxcbiAgICBmb3JtYXQ6IHtcbiAgICAgIGRhdGU6ICdkZC9NTS95eXl5JyxcbiAgICAgIGRhdGV0aW1lOiAnZGQvTU0veXl5eSBISDptbTpzcycsXG4gICAgICBkZWNpbWFsOiAnLCcsXG4gICAgICB0aG91c2FuZHM6ICcgJ1xuICAgIH0sXG4gICAgY29udGV4dDoge1xuICAgICAgYWRkOiAnQWpvdXRlciDDoCBsYSBzw6lsZWN0aW9uJyxcbiAgICAgIHJlbW92ZTogJ0VubGV2ZXIgZGUgbGEgc8OpbGVjdGlvbicsXG4gICAgICBsaW5rOiAnTGllciDDoCBsYSBzw6lsZWN0aW9uJyxcbiAgICAgIGludmVydDogJ0ludmVyc2VyIGxhIHPDqWxlY3Rpb24nLFxuICAgICAgcHJveGltaXR5OiAnUmVjaGVyY2hlciBsZXMgb2JqZXRzIGxpw6lzJyxcbiAgICAgIGV4cGxvcmU6ICdPdXZyaXIgbGEgcmVzdGl0dXRpb24gUmVsYXRpb25zJyxcbiAgICAgIGRldGFpbDogJ091dnJpciBsYSByZXN0aXR1dGlvbiBEw6l0YWlsJyxcbiAgICAgIGZseWluZ0RldGFpbDogXCJDb25zdWx0ZXIgbCdvYmpldFwiLFxuICAgICAgYWRkcmVzc0Zyb21Mb2M6IFwiT2J0ZW5pciBsJ2FkcmVzc2VcIixcbiAgICAgIGVycm9yU2VhcmNoQWRkcmVzczogJ0FkcmVzc2UgaW50cm91dmFibGUnLFxuICAgICAgY2FuY2VsOiAnQW5udWxlcicsXG4gICAgICBjcmVhdGU6ICdDcsOpZXInLFxuICAgICAgY3JlYXRlT2JqZWN0OiB7XG4gICAgICAgIHRpdGxlOiB7XG4gICAgICAgICAgb2JqZWN0OiAnQ3LDqWVyIHVuIG9iamV0JyxcbiAgICAgICAgICBsaW5rOiAnQ3LDqWVyIHVuZSByZWxhdGlvbicsXG4gICAgICAgICAgaW52ZXJzaW9uOiAnSW52ZXJzZXIgbGEgcmVsYXRpb24nLFxuICAgICAgICAgIGxpbmtlZE9iamVjdDogJ0Nyw6llciB1biBvYmpldCBsacOpJ1xuICAgICAgICB9LFxuICAgICAgICBjbGFzczogXCJDbGFzc2UgZGUgbCdvYmpldFwiLFxuICAgICAgICBsaW5rOiAnUmVsYXRpb24gYXZlYyBsZSBub3V2ZWwgb2JqZXQnLFxuICAgICAgICBjcmVhdGVkOiBcIkwnb2JqZXQgYSDDqXTDqSBjcsOpw6lcIixcbiAgICAgICAgZGV0YWlsczogJ1ZvaXIgbGUgZMOpdGFpbCcsXG4gICAgICAgIGFkZE11bHRpRmllbGQ6ICdBam91dGVyIHVuZSB2YWxldXIgZGUge3tuYW1lfX0nXG4gICAgICB9XG4gICAgfSxcbiAgICBhY3Rpb246IHtcbiAgICAgIGNsb3NlOiAnRmVybWVyJyxcbiAgICAgIGNsb3NlUGFuZWw6ICdGZXJtZXIgbGUgcGFubmVhdScsXG4gICAgICBkZWxldGU6ICdTdXBwcmltZXInLFxuICAgICAgZWRpdDogJ0VkaXRlcicsXG4gICAgICBlZGl0UHJvZmlsOiAnRWRpdGVyIGxlIHByb2ZpbCcsXG4gICAgICBlZGl0VGl0bGU6ICdFZGl0ZXIgbGUgdGl0cmUnLFxuICAgICAgY2hvaWNlOiAnQ2hvaXNpciB1biAuLi4uJyxcbiAgICAgIGNob2ljZUluTGlzdDogJ0Nob2lzaXIgdW4gw6lsw6ltZW50IGRhbnMgbGEgbGlzdGUnLFxuICAgICAgdGV4dDogJ1JlbXBsaXIgbGUgY2hhbXAnLFxuICAgICAgc29ydGFibGVDb2x1bW5IZWFkZXI6IFwiVXRpbGlzZXogbGVzIGJvdXRvbnMgZCdlbi10w6p0ZSBkZSBjb2xvbm5lIHBvdXIgdHJpZXIuXCIsXG4gICAgICB2aWV3RGV0YWlsczogJ1ZvaXIgbGVzIGTDqXRhaWxzJyxcbiAgICAgIHNlbGVjdERhdGU6ICdDaG9pc2lyIHVuZSBkYXRlJyxcbiAgICAgIG9wZW5zSW5OZXdUYWI6IFwiUydvdXZyZSBkYW5zIHVuZSBub3V2ZWxsZSBmZW7DqnRyZVwiLFxuICAgICAgc2tpcExpbms6ICdBbGxlciBhdSBjb250ZW51JyxcbiAgICAgIHNlbGVjdFBpY3R1cmU6ICdTw6lsZWN0aW9ubmVyIHVuZSBpbWFnZScsXG4gICAgICBtb3ZlRG93bjogJ0TDqXBsYWNlciB2ZXJzIGxlIGJhcycsXG4gICAgICBtb3ZlVXA6ICdEw6lwbGFjZXIgdmVycyBsZSBoYXV0JyxcbiAgICAgIGV4cG9ydEFzRm9ybWF0OiAnRXhwb3J0ZXIgYXUgZm9ybWF0JyxcbiAgICAgIG9wZW5NZW51V2lkZ2V0OiAnTWVudSBkZSBsYSByZXN0aXR1dGlvbicsXG4gICAgICBzZWFyY2g6ICdSZWNoZXJjaGVyJyxcbiAgICAgIHVwbG9hZDogJ0Fqb3V0ZXIgdW5lIGltYWdlJyxcbiAgICAgIG5leHQ6ICdTdWl2YW50JyxcbiAgICAgIGJhY2s6ICdSZXRvdXInLFxuICAgICAgZmlsdGVyQnlUeXBlOiAnRmlsdHJlciBwYXIgdHlwZScsXG4gICAgICBlZGl0TWV0YWRhdGE6ICdNb2RpZmllciBsYSBtw6l0YWRvbm7DqWUnLFxuICAgICAgYWRkTWV0YWRhdGE6ICdBam91dGVyIGxhIG3DqXRhZG9ubsOpZSdcbiAgICB9LFxuICAgIHNuYWNrOiB7XG4gICAgICBkZWZhdWx0OiAnVmVnYSBhIHJlbmNvbnRyw6kgdW5lIGVycmV1ciBlbiB1dGlsaXNhbnQgdm9zIGRvbm7DqWVzIGV0IHBhcmFtw6l0cmFnZS4nLFxuICAgICAgbWlzc2luZ1BhcmVudDogXCJVbiBub2V1ZCBlc3QgbWFucXVhbnQgZGFucyBsJ2FyYnJlIGRlIHJlcHLDqXNlbnRhdGlvbi4gTWVyY2kgZGUgY29ycmlnZXIgdm9zIGRvbm7DqWVzLlwiLFxuICAgICAgbWlzc2luZ1ZhbHVlOiBcIlVuIGl0ZW0gw6AgYWZmaWNoZXIgbmUgcG9zc8OoZGUgcGFzIGwnYXR0cmlidXQgw6AgYWZmaWNoZXIuIE1lcmNpIGRlIGNvcnJpZ2VyIHZvcyBkb25uw6llcy5cIixcbiAgICAgIGVtcHR5VmFsdWVzOiBcIkxlcyB2YWxldXJzIGRlIGwnYXR0cmlidXQgw6AgYWZmaWNoZXIgbmUgcGV1dmVudCDDqnRyZSB0b3V0ZXMgbnVsbGVzLiBNZXJjaSBkZSBjb3JyaWdlciB2b3MgZG9ubsOpZXMuXCIsXG4gICAgICBwYWdlc0NoYW5nZWQ6ICdBdHRlbnRpb24sIGxlIG5vbWJyZSBkZSBwYWdlcyBkZSB2b3RyZSBwcsOpc2VudGF0aW9uIGEgY2hhbmfDqSwgcXVlIHNvdWhhaXRlei12b3VzIGZhaXJlID8nLFxuICAgICAgaW1hZ2VOYW1lQWxyZWFkeVVzZWQ6ICdMZSBub20gZGUgY2V0dGUgaW1hZ2UgZXN0IGTDqWrDoCB1dGlsaXPDqSdcbiAgICB9LFxuICAgIHRoZW1lOiB7XG4gICAgICBlZGl0SW5wdXQ6IHtcbiAgICAgICAgdG9nZ2xlOiAnRWRpdGVyJyxcbiAgICAgICAgY29uZmlybTogJ0NvbmZpcm1lcidcbiAgICAgIH0sXG4gICAgICBwcmV2aW91c01vbnRoOiAnTW9pcyBwcsOpY8OpZGVudCcsXG4gICAgICBuZXh0TW9udGg6ICdNb2lzIHN1aXZhbnQnLFxuICAgICAgd2Vla2RheXM6IHtcbiAgICAgICAgMDogJ0x1bmRpJyxcbiAgICAgICAgMTogJ01hcmRpJyxcbiAgICAgICAgMjogJ01lcmNyZWRpJyxcbiAgICAgICAgMzogJ0pldWRpJyxcbiAgICAgICAgNDogJ1ZlbmRyZWRpJyxcbiAgICAgICAgNTogJ1NhbWVkaScsXG4gICAgICAgIDY6ICdEaW1hbmNoZSdcbiAgICAgIH0sXG4gICAgICBzaG9ydFdlZWtkYXlzOiB7XG4gICAgICAgIDA6ICdMdScsXG4gICAgICAgIDE6ICdNYScsXG4gICAgICAgIDI6ICdNZScsXG4gICAgICAgIDM6ICdKZScsXG4gICAgICAgIDQ6ICdWZScsXG4gICAgICAgIDU6ICdTYScsXG4gICAgICAgIDY6ICdEaSdcbiAgICAgIH0sXG4gICAgICBtb250aHM6IHtcbiAgICAgICAgMDogJ0phbnZpZXInLFxuICAgICAgICAxOiAnRsOpdnJpZXInLFxuICAgICAgICAyOiAnTWFycycsXG4gICAgICAgIDM6ICdBdnJpbCcsXG4gICAgICAgIDQ6ICdNYWknLFxuICAgICAgICA1OiAnSnVpbicsXG4gICAgICAgIDY6ICdKdWlsbGV0JyxcbiAgICAgICAgNzogJ0Fvw7t0JyxcbiAgICAgICAgODogJ1NlcHRlbWJyZScsXG4gICAgICAgIDk6ICdPY3RvYnJlJyxcbiAgICAgICAgMTA6ICdOb3ZlbWJyZScsXG4gICAgICAgIDExOiAnRMOpY2VtYnJlJ1xuICAgICAgfVxuICAgIH0sXG4gICAgc2hhcmU6IHtcbiAgICAgIHByaXZhdGU6ICdQcml2w6knLFxuICAgICAgcHVibGljOiAnUHVibGljJyxcbiAgICAgIHJlc3RyaWN0ZWQ6ICdSZXN0cmVpbnQnLFxuICAgICAgdHlwZTogJ1Zpc2liaWxpdMOpJyxcbiAgICAgIHVzZXJzOiAnVXRpbGlzYXRldXJzIGF1dG9yaXPDqXMnLFxuICAgICAgbm9Hcm91cHM6ICdBdWN1biBncm91cGUgZGlzcG9uaWJsZScsXG4gICAgICBjb25mbGljdDoge1xuICAgICAgICB0aXRsZTogJ1dhcm5pbmcnLFxuICAgICAgICBtYWluOiAnQXR0ZW50aW9uLCBsZXMgc291cmNlcyBkZSBkb25uw6llcyBzdWl2YW50ZXMgbmUgc2Vyb250IHBhcyB2aXNpYmxlIGRlIHRvdXRlcyBsZXMgcGVyc29ubmVzIGFjY8OpZGFudCDDoCBsYSBwcsOpc2VudGF0aW9uIDogJyxcbiAgICAgICAgdW5hdmFpbGFibGU6ICdpbmFjY2Vzc2libGUgYXV4IGdyb3VwZXMgOiAnXG4gICAgICB9XG4gICAgfSxcbiAgICBob21lcGFnZToge1xuICAgICAgbWVudToge1xuICAgICAgICBtb2RlbDogJ01vZMOobGUgZGUgZG9ubsOpZXMnLFxuICAgICAgICBkYXRhOiAnQWNjw6hzIGF1eCBkb25uw6llcydcbiAgICAgIH1cbiAgICB9LFxuICAgIG1ldGFkYXRhOiB7XG4gICAgICB2aWV3OiAnQ29uc3VsdGVyIGxlcyBtZXRhZG9ubsOpZXMnXG4gICAgfSxcbiAgICBjb21wb25lbnRzOiB7XG4gICAgICBzZWFyY2hEYXRhOiAnUmVjaGVyY2hleiB1bmUgZG9ubsOpZScsXG4gICAgICBjaGlwc1NlbGVjdG9yOiB7XG4gICAgICAgIGRhdGFzb3VyY2U6IHtcbiAgICAgICAgICBzZWxlY3Q6ICdTw6lsZWN0aW9ubmVyIHVuZSBvdSBwbHVzaWV1cnMgc291cmNlKHMpIGRlIGRvbm7DqWVzIDonLFxuICAgICAgICAgIHNlbGVjdGlvbjogJ1NvdXJjZShzKSBkZSBkb25uw6llcyBzw6lsZWN0aW9ubsOpZXM6JyxcbiAgICAgICAgICBzZWxlY3RJdGVtOiAnU8OpbGVjdGlvbm5lciBsYSBzb3VyY2UgZGUgZG9ubsOpZXMnLFxuICAgICAgICAgIHVuc2VsZWN0SXRlbTogJ0TDqXPDqWxlY3Rpb25uZXIgbGEgc291cmNlIGRlIGRvbm7DqWVzJyxcbiAgICAgICAgICBub0l0ZW1TZWxlY3RlZDogJ0F1Y3VuZSBzb3VyY2UgZGUgZG9ubsOpZXMgc8OpbGVjdGlvbm7DqWUnXG4gICAgICAgIH0sXG4gICAgICAgIHNoYXJlOiB7XG4gICAgICAgICAgc2VsZWN0OiBcIlPDqWxlY3Rpb25uZXIgdW4gb3UgcGx1c2lldXJzIGdyb3VwZShzKSBkJ3V0aWxpc2F0ZXVycyA6XCIsXG4gICAgICAgICAgc2VsZWN0aW9uOiBcIkdyb3VwZShzKSBkJ3V0aWxpc2F0ZXVycyBzw6lsZWN0aW9ubsOpczpcIixcbiAgICAgICAgICBzZWxlY3RJdGVtOiBcIlPDqWxlY3Rpb25uZXIgbGUgZ3JvdXBlIGQndXRpbGlzYXRldXJzXCIsXG4gICAgICAgICAgdW5zZWxlY3RJdGVtOiBcIkTDqXPDqWxlY3Rpb25uZXIgbGUgZ3JvdXBlIGQndXRpbGlzYXRldXJzXCIsXG4gICAgICAgICAgbm9JdGVtU2VsZWN0ZWQ6IFwiQXVjdW4gZ3JvdXBlIGQndXRpbGlzYXRldXJzIHPDqWxlY3Rpb25uw6lcIixcbiAgICAgICAgICBncm91cHM6IHtcbiAgICAgICAgICAgIEFMTDogJ1B1YmxpYycsXG4gICAgICAgICAgICBBVVRIRU5USUNBVEVEOiAnTGVzIHV0aWxpc2F0ZXVycyBjb25uZWN0w6lzJ1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgZXJyb3JzOiB7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICAnVW5lIGVycmV1ciBlc3Qgc3VydmVudWUuIFZldWlsbGV6IHbDqXJpZmlleiBsZXMgaW5mb3JtYXRpb25zIG91IGNvbnRhY3RlciB2b3RyZSBhZG1pbmlzdHJhdGV1ciBzaSBsZSBwcm9ibMOobWUgcGVyc2lzdGUnLFxuICAgICAgY29kZXM6IHtcbiAgICAgICAgMDogJ1VuZSBlcnJldXIgZXN0IHN1cnZlbnVlIGF1IG5pdmVhdSBuYXZpZ2F0ZXVyLiBDZWxhIHBldXQtw6p0cmUgdW5lIGVycmV1ciBDT1JTLCBkZSByw6lzZWF1IC4uLiBMYSByZXNzb3VyY2UgbmUgcGV1dCBwYXMgw6p0cmUgcsOpY3Vww6lyw6llLicsXG4gICAgICAgIDQwMDogJ1VuZSBlcnJldXIgZXN0IHN1cnZlbnVlLicsXG4gICAgICAgIDQwMTogJ1ZvdHJlIHNlc3Npb24gZXN0IGludmFsaWRlLiBFc3NheWV6IGRlIHZvdXMgcmVjb25uZWN0ZXIgIScsXG4gICAgICAgIDQwMzogXCJWb3VzIG4nYXZleiBwYXMgbGVzIGRyb2l0cyBwb3VyIGNvbnN1bHRlciBjZXR0ZSByZXNzb3VyY2VcIixcbiAgICAgICAgNDA0OiBcIkxhIHJlc3NvdXJjZSBkZW1hbmTDqWUgbidleGlzdGUgcGFzXCIsXG4gICAgICAgIDQwOTogJ1VuZSByZXNzb3VyY2Ugc2ltaWxhaXJlIGV4aXN0ZSBkw6lqw6AnLFxuICAgICAgICA1MDA6ICdVbmUgZXJyZXVyIGVzdCBzdXJ2ZW51ZS4nLFxuICAgICAgICA1MDM6ICdMZSBzZXJ2aWNlIGVzdCBhY3R1ZWxsZW1lbnQgaW5kaXNwb25pYmxlLiBSw6llc3NheWVyIHVsdMOpcmlldXJlbWVudCAhJ1xuICAgICAgfVxuICAgIH0sXG4gICAgZmlsdGVyczoge1xuICAgICAgbGFiZWw6ICdQYXJhbcOpdHJlciBsZXMgZmlsdHJlcycsXG4gICAgICBub0F0dHJpYnV0ZXM6IFwiTGEgcHLDqXNlbnRhdGlvbiBlbiBjb3VycyBuZSBkaXNwb3NlIGQnYXVjdW5lIGF0dHJpYnV0IHN1ciBsZXF1ZWwgZmlsdHJlclwiLFxuICAgICAgbm9GaWx0ZXJzOiBcIlZvdXMgbidhdmV6IHBhcyBlbmNvcmUgcGFyYW3DqXRyw6kgZGUgZmlsdHJlLlwiLFxuICAgICAgY2xlYXI6ICdFZmZhY2VyJyxcbiAgICAgIGxpc3Q6IHtcbiAgICAgICAgYXR0cmlidXRlczogJ0F0dHJpYnV0czogJyxcbiAgICAgICAgYWRkOiAnQ3LDqWVyIHVuIGZpbHRyZScsXG4gICAgICAgIGRlbGV0ZTogJ1N1cHByaW1lcicsXG4gICAgICAgIG1vZGlmeTogJ01vZGlmaWVyJ1xuICAgICAgfSxcbiAgICAgIGNyZWF0aW9uOiB7XG4gICAgICAgIGNyZWF0ZTogJ0Nyw6llciB1biBmaWx0cmUnLFxuICAgICAgICB1cGRhdGU6ICdNb2RpZmllciB1biBmaWx0cmUnLFxuICAgICAgICBuYW1lOiAnTm9tIGR1IGZpbHRyZScsXG4gICAgICAgIHR5cGU6ICdUeXBlIGR1IGZpbHRyZScsXG4gICAgICAgIGZpbHRlcjogJ0ZpbHRyZScsXG4gICAgICAgIGF0dHJpYnV0ZXM6ICdBdHRyaWJ1dHMnLFxuICAgICAgICB2YWx1ZTogJ1ZhbGV1cicsXG4gICAgICAgIHZhbHVlczogJ1ZhbGV1cnMnLFxuICAgICAgICB2YWxpZGF0ZTogJ1ZhbGlkZXInLFxuICAgICAgICBsaW1pdDogXCJOb21icmUgZGUgc3VnZ2VzdGlvbnMgcHJvcG9zw6llcyDDoCBsJ3V0aWxpc2F0ZXVyXCIsXG4gICAgICAgIGRhdGVSYW5nZTogJ1BsYWdlIGRlIGRhdGVzJ1xuICAgICAgfSxcbiAgICAgIGF0dHJpYnV0ZXM6IHtcbiAgICAgICAgZGF0YXNvdXJjZTogJ0RhdGFzb3VyY2UnLFxuICAgICAgICBjbGFzczogJ0NsYXNzZScsXG4gICAgICAgIG9wZXJhdG9yOiAnT3DDqXJhdGV1cidcbiAgICAgIH0sXG4gICAgICB0eXBlczoge1xuICAgICAgICB0ZXh0OiAnVGV4dGUnLFxuICAgICAgICBkYXRlOiAnRGF0ZScsXG4gICAgICAgIGxpc3Q6ICdMaXN0ZScsXG4gICAgICAgIG51bWJlcjogJ051bcOpcmlxdWUnLFxuICAgICAgICBhdXRvY29tcGxldGU6ICdMaXN0ZSBhdmVjIHN1Z2dlc3Rpb24nXG4gICAgICB9XG4gICAgfSxcbiAgICBnZW9BdXRoOiB7XG4gICAgICBmYWlsdXJlOiAnRXJyZXVyIGdlb3NlcnZlcidcbiAgICB9LFxuICAgIGdyaWQ6IHtcbiAgICAgIHJvd3M6ICdMaWduZXMnLFxuICAgICAgY29sdW1uczogJ0NvbG9ubmVzJ1xuICAgIH1cbiAgfVxufTtcbiJdfQ==
@@ -5,6 +5,7 @@ export * from './search-mono-class.model';
5
5
  export * from './search-multi-class.model';
6
6
  export * from './widget-map-manifest.interface';
7
7
  export * from './widget-aggregated-chart-manifest.interface';
8
+ export * from './widget-analytic-manifest.interface';
8
9
  export * from './widget-chart-manifest.interface';
9
10
  export * from './widget-graph-manifest.interface';
10
11
  export * from './widget-table-manifest.interface';
@@ -25,4 +26,4 @@ export * from './filter.interface';
25
26
  export * from './admin-api.model';
26
27
  export * from './display-options.interface';
27
28
  export * from './automatic-grid-layout-definition.interface';
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2xpYi9jb3JlL21vZGVsL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsOENBQThDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3Jlc3VsdC1zZXQuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vaXRlbS5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9yZWxhdGlvbi5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zZWFyY2gtbW9uby1jbGFzcy5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NlYXJjaC1tdWx0aS1jbGFzcy5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3dpZGdldC1tYXAtbWFuaWZlc3QuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vd2lkZ2V0LWFnZ3JlZ2F0ZWQtY2hhcnQtbWFuaWZlc3QuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vd2lkZ2V0LWNoYXJ0LW1hbmlmZXN0LmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3dpZGdldC1ncmFwaC1tYW5pZmVzdC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi93aWRnZXQtdGFibGUtbWFuaWZlc3QuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vd2lkZ2V0LWlmcmFtZS1tYW5pZmVzdC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi93aWRnZXQtZGV0YWlsLW1hbmlmZXN0LmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3dpZGdldC1pbWFnZS1tYW5pZmVzdC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi93aWRnZXQtdGVtcGxhdGUtbWFuaWZlc3QuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vd2lkZ2V0LXRpbGUtbWFuaWZlc3QuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vd2lkZ2V0LXZlZ2EtbWFuaWZlc3QuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbWFuaWZlc3QuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vd2lkZ2V0LmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL21pbWV0eXBlLXJlc3VsdHNldC5jb25zdGFudCc7XG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbi1pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi90b29sdGlwLW9mLWNsYXNzLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3Jlc3VsdC1vcmRlci5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9kYXRhc2V0LmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbHRlci5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9hZG1pbi1hcGkubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXNwbGF5LW9wdGlvbnMuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vYXV0b21hdGljLWdyaWQtbGF5b3V0LWRlZmluaXRpb24uaW50ZXJmYWNlJztcbiJdfQ==
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2xpYi9jb3JlL21vZGVsL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyw4Q0FBOEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcmVzdWx0LXNldC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9pdGVtLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3JlbGF0aW9uLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlYXJjaC1tb25vLWNsYXNzLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vc2VhcmNoLW11bHRpLWNsYXNzLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vd2lkZ2V0LW1hcC1tYW5pZmVzdC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi93aWRnZXQtYWdncmVnYXRlZC1jaGFydC1tYW5pZmVzdC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi93aWRnZXQtYW5hbHl0aWMtbWFuaWZlc3QuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vd2lkZ2V0LWNoYXJ0LW1hbmlmZXN0LmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3dpZGdldC1ncmFwaC1tYW5pZmVzdC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi93aWRnZXQtdGFibGUtbWFuaWZlc3QuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vd2lkZ2V0LWlmcmFtZS1tYW5pZmVzdC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi93aWRnZXQtZGV0YWlsLW1hbmlmZXN0LmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3dpZGdldC1pbWFnZS1tYW5pZmVzdC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi93aWRnZXQtdGVtcGxhdGUtbWFuaWZlc3QuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vd2lkZ2V0LXRpbGUtbWFuaWZlc3QuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vd2lkZ2V0LXZlZ2EtbWFuaWZlc3QuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbWFuaWZlc3QuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vd2lkZ2V0LmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL21pbWV0eXBlLXJlc3VsdHNldC5jb25zdGFudCc7XG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbi1pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi90b29sdGlwLW9mLWNsYXNzLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3Jlc3VsdC1vcmRlci5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9kYXRhc2V0LmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbHRlci5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9hZG1pbi1hcGkubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXNwbGF5LW9wdGlvbnMuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vYXV0b21hdGljLWdyaWQtbGF5b3V0LWRlZmluaXRpb24uaW50ZXJmYWNlJztcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LWFuYWx5dGljLW1hbmlmZXN0LmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2xpYi9jb3JlL21vZGVsL3dpZGdldC1hbmFseXRpYy1tYW5pZmVzdC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgQW5hbHl0aWNXaWRnZXRPcHRpb25zIHtcbiAgcHJpbWFyeVByb3A6IHN0cmluZztcbiAgc2Vjb25kYXJ5UHJvcDogc3RyaW5nO1xuICB2ZXJ0aWNhbFByb3A6IHN0cmluZztcbiAgdmFsdWVQcm9wOiBzdHJpbmc7XG59XG4iXX0=
@@ -103,7 +103,10 @@ export class DataSourceEffects {
103
103
  DataSourceActions.dataset.unselectDataset(),
104
104
  DataSourceActions.dataset.created({ path: props.route })
105
105
  ]))), catchError((error) => [DataSourceActions.dataset.failure({ error })])));
106
- this.unsetMissingGroupsOnDatasetSelection$ = createEffect(() => this.actions$.pipe(ofType(DataSourceActions.dataset.selectDataset), map(() => DataSourceActions.dataset.setMissingGroups({ missingGroups: undefined }))));
106
+ this.unsetMissingGroupsOnDatasetSelection$ = createEffect(() => this.actions$.pipe(ofType(DataSourceActions.dataset.selectDataset), mergeMap((action) => [
107
+ DataSourceActions.dataset.setMissingGroups({ missingGroups: undefined }),
108
+ DataSourceActions.dataset.listVersionsByDatasetId({ id: action.dataset.id })
109
+ ])));
107
110
  this.deleteDataset$ = createEffect(() => this.actions$.pipe(ofType(DataSourceActions.dataset.delete), switchMap((action) => this.dataSourceService.deleteDataset(action.name).pipe(mergeMap(() => [
108
111
  DataSourceActions.dataset.loadDataset(),
109
112
  DataSourceActions.dataset.unselectDataset(),
@@ -167,4 +170,4 @@ export class DataSourceEffects {
167
170
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: DataSourceEffects, decorators: [{
168
171
  type: Injectable
169
172
  }], ctorParameters: () => [{ type: i1.Actions }, { type: i2.SearchService }, { type: i3.DataSourceService }, { type: i4.PrySnackbarService }, { type: i5.PryI18nService }, { type: i6.Store }, { type: i7.PryDialogService }] });
170
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1zb3VyY2UuZWZmZWN0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2xpYi9jb3JlL3N0b3JlL2RhdGEtc291cmNlL2RhdGEtc291cmNlLmVmZmVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQVcsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUseUJBQXlCLEVBQXdCLE1BQU0sbURBQW1ELENBQUM7QUFJcEgsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUUxRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7Ozs7Ozs7O0FBSTlELE1BQU0sT0FBTyxpQkFBaUI7SUFHNUIsWUFDVSxRQUFpQixFQUNqQixhQUE0QixFQUM1QixpQkFBb0MsRUFDcEMsUUFBNEIsRUFDNUIsU0FBeUIsRUFDekIsS0FBWSxFQUNaLFNBQTJCO1FBTjNCLGFBQVEsR0FBUixRQUFRLENBQVM7UUFDakIsa0JB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dGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGlvbnMsIGNyZWF0ZUVmZmVjdCwgb2ZUeXBlIH0gZnJvbSAnQG5ncngvZWZmZWN0cyc7XG5pbXBvcnQgeyBBY3Rpb24sIFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBmaWx0ZXIsIG1hcCwgbWVyZ2VNYXAsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCB3aXRoTGF0ZXN0RnJvbSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IERhc2hib2FyZEFjdGlvbnMgfSBmcm9tICcuLi8uLi8uLi9kYXNoYm9hcmQvc3RvcmUvZGFzaGJvYXJkLmFjdGlvbnMnO1xuaW1wb3J0IHsgRGFzaGJvYXJkU2VsZWN0b3JzIH0gZnJvbSAnLi4vLi4vLi4vZGFzaGJvYXJkL3N0b3JlL2Rhc2hib2FyZC5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgUHJ5RGlhbG9nQ29uZmlybUNvbXBvbmVudCwgUHJ5RGlhbG9nQ29uZmlybURhdGEgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL292ZXJsYXkvZGlhbG9nLWNvbmZpcm0uY29tcG9uZW50JztcbmltcG9ydCB7IFByeURpYWxvZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL292ZXJsYXkvZGlhbG9nLnNlcnZpY2UnO1xuaW1wb3J0IHsgUHJ5U25hY2tiYXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9zbmFja2Jhci9zbmFja2Jhci5zZXJ2aWNlJztcbmltcG9ydCB7IFByeUkxOG5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaTE4bi9pMThuLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29uZmlnU2VsZWN0b3JzIH0gZnJvbSAnLi4vY29uZmlnL2NvbmZpZy5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgU2VhcmNoQWN0aW9ucyB9IGZyb20gJy4uL3NlYXJjaC9zZWFyY2guYWN0aW9ucyc7XG5pbXBvcnQgeyBTZWFyY2hTZXJ2aWNlIH0gZnJvbSAnLi4vc2VhcmNoL3NlYXJjaC5zZXJ2aWNlJztcbmltcG9ydCB7IERhdGFTb3VyY2VBY3Rpb25zIH0gZnJvbSAnLi9kYXRhLXNvdXJjZS5hY3Rpb25zJztcbmltcG9ydCB7IERhdGFzZXQsIE5hbWVkUXVlcnkgfSBmcm9tICcuL2RhdGEtc291cmNlLm1vZGVsJztcbmltcG9ydCB7IERhdGFTb3VyY2VTZWxlY3RvcnMgfSBmcm9tICcuL2RhdGEtc291cmNlLnNlbGVjdG9ycyc7XG5pbXBvcnQgeyBEYXRhU291cmNlU2VydmljZSB9IGZyb20gJy4vZGF0YS1zb3VyY2Uuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEYXRhU291cmNlRWZmZWN0cyB7XG4gIHByaXZhdGUgaWROYW1lZFF1ZXJ5Pzogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYWN0aW9ucyQ6IEFjdGlvbnMsXG4gICAgcHJpdmF0ZSBzZWFyY2hTZXJ2aWNlOiBTZWFyY2hTZXJ2aWNlLFxuICAgIHByaXZhdGUgZGF0YVNvdXJjZVNlcnZpY2U6IERhdGFTb3VyY2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgc25hY2tCYXI6IFByeVNuYWNrYmFyU2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogUHJ5STE4blNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmUsXG4gICAgcHJpdmF0ZSBwcnlEaWFsb2c6IFByeURpYWxvZ1NlcnZpY2VcbiAgKSB7fVxuXG4gIHBvc3ROYW1lUXVlcnkkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLm5hbWVkUXVlcnkucG9zdCksXG4gICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLnN0b3JlLnNlbGVjdChDb25maWdTZWxlY3RvcnMucmFuZG9tQ29sb3IpKSxcbiAgICAgIHN3aXRjaE1hcCgoW2FjdGlvbiwgcmFuZG9tQ29sb3JdKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgbmFtZSwgaWQsIHBheWxvYWQsIGRlc2NyaXB0aW9uLCBjb2xvciwgZmF2b3JpdGUsIGlzRWRpdCwgdmlzaWJpbGl0eSB9ID0gYWN0aW9uO1xuICAgICAgICB0aGlzLmlkTmFtZWRRdWVyeSA9IGlzRWRpdCA/IGlkIDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBuYW1lZFF1ZXJ5OiBOYW1lZFF1ZXJ5ID0ge1xuICAgICAgICAgIGlkOiBpZCA/PyAnJyxcbiAgICAgICAgICBzb3VyY2VUeXBlOiAnbmFtZWRRdWVyeScsXG4gICAgICAgICAgbmFtZSxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogZGVzY3JpcHRpb24gPz8gdW5kZWZpbmVkLFxuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2liaWxpdHkgPz8gdW5kZWZpbmVkLFxuICAgICAgICAgIHJlcXVlc3Q6IHBheWxvYWQsXG4gICAgICAgICAgY29sb3I6IGNvbG9yID8/IHJhbmRvbUNvbG9yLFxuICAgICAgICAgIGZhdm9yaXRlXG4gICAgICAgIH07XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGFTb3VyY2VTZXJ2aWNlLnBvc3QobmFtZWRRdWVyeSk7XG4gICAgICB9KSxcbiAgICAgIG1lcmdlTWFwKCgpID0+IHtcbiAgICAgICAgY29uc3QgYWN0aW9ucyA9IFtdIGFzIEFjdGlvbltdO1xuICAgICAgICBpZiAodGhpcy5pZE5hbWVkUXVlcnkpIHtcbiAgICAgICAgICBhY3Rpb25zLnB1c2goXG4gICAgICAgICAgICBTZWFyY2hBY3Rpb25zLmdldERhdGFzb3VyY2VJdGVtcyh7IGlkOiB0aGlzLmlkTmFtZWRRdWVyeSwgZXhjbHVkZUdlbzogZmFsc2UsIGZyb206ICdwb3N0TmFtZVF1ZXJ5JCcgfSlcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaWROYW1lZFF1ZXJ5ID0gdW5kZWZpbmVkO1xuICAgICAgICBhY3Rpb25zLnB1c2goRGF0YVNvdXJjZUFjdGlvbnMubmFtZWRRdWVyeS5sb2FkKCkpO1xuICAgICAgICByZXR1cm4gYWN0aW9ucztcbiAgICAgIH0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IFtEYXRhU291cmNlQWN0aW9ucy5uYW1lZFF1ZXJ5LmZhaWx1cmUoeyBlcnJvciB9KV0pXG4gICAgKVxuICApO1xuXG4gIGdldE5hbWVkUXVlcnkkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLm5hbWVkUXVlcnkubG9hZCksXG4gICAgICBkZWJvdW5jZVRpbWUoMTAwKSxcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLmRhdGFTb3VyY2VTZXJ2aWNlLmdldCgpKSxcbiAgICAgIG1hcCgobmFtZWRRdWVyeUxpc3Q6IE5hbWVkUXVlcnlbXSkgPT4gRGF0YVNvdXJjZUFjdGlvbnMubmFtZWRRdWVyeS5sb2FkZWQoeyBsaXN0OiBuYW1lZFF1ZXJ5TGlzdCB9KSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gW0RhdGFTb3VyY2VBY3Rpb25zLm5hbWVkUXVlcnkuZmFpbHVyZSh7IGVycm9yIH0pXSlcbiAgICApXG4gICk7XG5cbiAgbG9hZGVkJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5uYW1lZFF1ZXJ5LmxvYWRlZCksXG4gICAgICBtYXAoKGFjdGlvbjogeyBsaXN0OiBOYW1lZFF1ZXJ5W107IHR5cGU6IHN0cmluZyB9KSA9PiB7XG4gICAgICAgIHJldHVybiBEYXNoYm9hcmRBY3Rpb25zLnNldEF2YWlsYWJsZU5hbWVkUXVlcmllcyh7IG5hbWVzOiBhY3Rpb24ubGlzdC5tYXAoKG5xKSA9PiBucS5pZCkgfSk7XG4gICAgICB9KVxuICAgIClcbiAgKTtcblxuICBkZWxldGVOYW1lZFF1ZXJ5JCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5uYW1lZFF1ZXJ5LmRlbGV0ZSksXG4gICAgICBzd2l0Y2hNYXAoKHByb3BzOiB7IGlkOiBzdHJpbmcgfSkgPT5cbiAgICAgICAgdGhpcy5kYXRhU291cmNlU2VydmljZS5kZWxldGUocHJvcHMuaWQpLnBpcGUoXG4gICAgICAgICAgbWVyZ2VNYXAoKCkgPT4gW0RhdGFTb3VyY2VBY3Rpb25zLm5hbWVkUXVlcnkubG9hZCgpXSksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IFtEYXRhU291cmNlQWN0aW9ucy5uYW1lZFF1ZXJ5LmZhaWx1cmUoeyBlcnJvciB9KV0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgYWRkRmF2b3JpdGVOYW1lZFF1ZXJ5JCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5uYW1lZFF1ZXJ5LmFkZEZhdm9yaXRlKSxcbiAgICAgIHN3aXRjaE1hcCgocHJvcHM6IHsgaWQ6IHN0cmluZyB9KSA9PiB0aGlzLmRhdGFTb3VyY2VTZXJ2aWNlLmFkZEZhdm9yaXRlKHByb3BzLmlkKSksXG4gICAgICBtZXJnZU1hcCgoKSA9PiBbRGF0YVNvdXJjZUFjdGlvbnMubmFtZWRRdWVyeS5sb2FkKCldKSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiBbRGF0YVNvdXJjZUFjdGlvbnMubmFtZWRRdWVyeS5mYWlsdXJlKHsgZXJyb3IgfSldKVxuICAgIClcbiAgKTtcblxuICBkZWxldGVGYXZvcml0ZU5hbWVkUXVlcnkkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLm5hbWVkUXVlcnkuZGVsZXRlRmF2b3JpdGUpLFxuICAgICAgc3dpdGNoTWFwKChwcm9wczogeyBpZDogc3RyaW5nIH0pID0+IHRoaXMuZGF0YVNvdXJjZVNlcnZpY2UuZGVsZXRlRmF2b3JpdGUocHJvcHMuaWQpKSxcbiAgICAgIG1lcmdlTWFwKCgpID0+IFtEYXRhU291cmNlQWN0aW9ucy5uYW1lZFF1ZXJ5LmxvYWQoKV0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IFtEYXRhU291cmNlQWN0aW9ucy5uYW1lZFF1ZXJ5LmZhaWx1cmUoeyBlcnJvciB9KV0pXG4gICAgKVxuICApO1xuXG4gIHRyeUVkaXQkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLm5hbWVkUXVlcnkuZWRpdCksXG4gICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLnN0b3JlLnNlbGVjdChEYXRhU291cmNlU2VsZWN0b3JzLmVkaXRJblByb2dyZXNzKSksXG4gICAgICBtYXAoKFthY3Rpb24sIGluUHJvZ3Jlc3NdKSA9PiB7XG4gICAgICAgIGlmICghaW5Qcm9ncmVzcykge1xuICAgICAgICAgIHJldHVybiBEYXRhU291cmNlQWN0aW9ucy5uYW1lZFF1ZXJ5Lm9wZW5FZGl0KGFjdGlvbik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5zbmFja0Jhci5vcGVuKHtcbiAgICAgICAgICAgIG1lc3NhZ2U6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ0Bwcnkuc2VhcmNoLm5hbWVkUXVlcnkuYWxyZWFkeUVkaXRpbmcnKSxcbiAgICAgICAgICAgIHR5cGU6ICdlcnJvcidcbiAgICAgICAgICB9KTtcbiAgICAgICAgICByZXR1cm4gRGF0YVNvdXJjZUFjdGlvbnMubmFtZWRRdWVyeS5mYWlsdXJlKHsgZXJyb3I6IG5ldyBFcnJvcignQHByeS5zZWFyY2gubmFtZWRRdWVyeS5hbHJlYWR5RWRpdGluZycpIH0pO1xuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiBbRGF0YVNvdXJjZUFjdGlvbnMubmFtZWRRdWVyeS5mYWlsdXJlKHsgZXJyb3IgfSldKVxuICAgIClcbiAgKTtcblxuICB1cGRhdGVXaWRnZXRBZnRlclNhdmUkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgLy8gVXNpbmcgc3RyaW5ncyB0byBwcmV2ZW50IGhhdmluZyBjb3JlIG1vZHVsZSBkZXBlbmRpbmcgb24gc2VhcmNoIG1vZHVsZVxuICAgICAgb2ZUeXBlKCdbU2VhcmNoTW9ub0NsYXNzXSBzYXZlJywgJ1tTZWFyY2hNdWx0aUNsYXNzXSBsYXVuY2ggc2F2ZScsICdbU2VhcmNoIEZ1bGx0ZXh0XSBzYXZlJyksXG4gICAgICB3aXRoTGF0ZXN0RnJvbShcbiAgICAgICAgdGhpcy5zdG9yZS5zZWxlY3QoRGF0YVNvdXJjZVNlbGVjdG9ycy5lZGl0RnJvbVdpZGdldCksXG4gICAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KERhdGFTb3VyY2VTZWxlY3RvcnMuY3VycmVudEVkaXQpLFxuICAgICAgICB0aGlzLnN0b3JlLnNlbGVjdChEYXNoYm9hcmRTZWxlY3RvcnMud2luZG93TWFuaWZlc3QpXG4gICAgICApLFxuICAgICAgZmlsdGVyKChbYWN0aW9uLCBmcm9tV2lkZ2V0LCBjdXJyZW50RWRpdCwgd2luZG93TWFuaWZlc3RdKSA9PiBmcm9tV2lkZ2V0ICE9PSB1bmRlZmluZWQpLFxuICAgICAgbWFwKChbYWN0aW9uLCBmcm9tV2lkZ2V0LCBjdXJyZW50RWRpdCwgd2luZG93TWFuaWZlc3RdKSA9PiB7XG4gICAgICAgIGNvbnN0IHdpZGdldE1hbmlmZXN0Q29weSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkod2luZG93TWFuaWZlc3Qud2lkZ2V0c1tmcm9tV2lkZ2V0Py53aWRnZXRJbmRleCA/PyAwXSkpO1xuICAgICAgICAvLyBSZXBsYWNpbmcgdXBkYXRlZCBxdWVyeSBpZCBieSBuZXcgcXVlcnkgaWRcbiAgICAgICAgY29uc3QgYXJyYXlPZk5hbWVkUXVlcnkgPSBBcnJheS5pc0FycmF5KHdpZGdldE1hbmlmZXN0Q29weS5uYW1lZFF1ZXJ5KVxuICAgICAgICAgID8gd2lkZ2V0TWFuaWZlc3RDb3B5Lm5hbWVkUXVlcnlcbiAgICAgICAgICA6IFt3aWRnZXRNYW5pZmVzdENvcHkubmFtZWRRdWVyeV07XG5cbiAgICAgICAgLy8gQHRzLWlnbm9yZSA6IHdlIGRvbid0IHdhbnQgdG8gbWFrZSBjb3JlIGRlcGVuZGluZyBvbiBzZWFyY2hcbiAgICAgICAgY29uc3QgbmV3UXVlcnlJZCA9IGFjdGlvbi5pZDtcbiAgICAgICAgY29uc3QgcHJldmlvdXNOcUluZGV4ID0gYXJyYXlPZk5hbWVkUXVlcnkuaW5kZXhPZihmcm9tV2lkZ2V0Py5lZGl0ZWRRdWVyeSk7XG4gICAgICAgIGlmIChwcmV2aW91c05xSW5kZXggPj0gMCkge1xuICAgICAgICAgIGFycmF5T2ZOYW1lZFF1ZXJ5W3ByZXZpb3VzTnFJbmRleF0gPSBuZXdRdWVyeUlkO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIEVkaXRpbmcgYSByZXF1ZXN0IHRoYXQncyBub3QgaW4gdGhlIHdpZGdldC4gQWRkaW5nIGl0XG4gICAgICAgICAgYXJyYXlPZk5hbWVkUXVlcnkucHVzaChuZXdRdWVyeUlkKTtcbiAgICAgICAgfVxuICAgICAgICB3aWRnZXRNYW5pZmVzdENvcHkubmFtZWRRdWVyeSA9IGFycmF5T2ZOYW1lZFF1ZXJ5O1xuXG4gICAgICAgIHJldHVybiBEYXNoYm9hcmRBY3Rpb25zLnVwZGF0ZVdpZGdldE1hbmlmZXN0KHtcbiAgICAgICAgICBpbmRleDogZnJvbVdpZGdldD8ud2lkZ2V0SW5kZXggPz8gMCxcbiAgICAgICAgICBtYW5pZmVzdDogd2lkZ2V0TWFuaWZlc3RDb3B5XG4gICAgICAgIH0pO1xuICAgICAgfSlcbiAgICApXG4gICk7XG5cbiAgbG9hZGVkRGF0YXNldCQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5sb2FkRGF0YXNldCksXG4gICAgICBtZXJnZU1hcCgoYWN0aW9uKSA9PlxuICAgICAgICB0aGlzLmRhdGFTb3VyY2VTZXJ2aWNlXG4gICAgICAgICAgLmdldERhdGFzZXRzKClcbiAgICAgICAgICAucGlwZShtYXAoKGRzZCkgPT4gRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5sb2FkZWREYXRhc2V0KHsgZGF0YXNldHM6IGRzZCB9KSkpXG4gICAgICApXG4gICAgKVxuICApO1xuXG4gIGxvYWREYXRhc2V0JCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5sb2FkKSxcbiAgICAgIGRlYm91bmNlVGltZSgxMDApLFxuICAgICAgbWVyZ2VNYXAoKGFjdGlvbikgPT4gW0RhdGFTb3VyY2VBY3Rpb25zLm5hbWVkUXVlcnkubG9hZCgpLCBEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmxvYWREYXRhc2V0KCldKVxuICAgIClcbiAgKTtcblxuICBjcmVhdGVEYXRhc2V0JCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmNyZWF0ZSksXG4gICAgICBzd2l0Y2hNYXAoKHByb3BzOiB7IGRhdGFzZXQ6IERhdGFzZXQ7IHJvdXRlOiBzdHJpbmcgfSkgPT5cbiAgICAgICAgdGhpcy5kYXRhU291cmNlU2VydmljZVxuICAgICAgICAgIC5hZGREYXRhc2V0KHByb3BzLmRhdGFzZXQpXG4gICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICBtZXJnZU1hcCgoKSA9PiBbXG4gICAgICAgICAgICAgIERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQubG9hZERhdGFzZXQoKSxcbiAgICAgICAgICAgICAgRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC51bnNlbGVjdERhdGFzZXQoKSxcbiAgICAgICAgICAgICAgRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5jcmVhdGVkKHsgcGF0aDogcHJvcHMucm91dGUgfSlcbiAgICAgICAgICAgIF0pXG4gICAgICAgICAgKVxuICAgICAgKSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBhbnkpID0+IFtEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmZhaWx1cmUoeyBlcnJvciB9KV0pXG4gICAgKVxuICApO1xuXG4gIHVuc2V0TWlzc2luZ0dyb3Vwc09uRGF0YXNldFNlbGVjdGlvbiQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5zZWxlY3REYXRhc2V0KSxcbiAgICAgIG1hcCgoKSA9PiBEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LnNldE1pc3NpbmdHcm91cHMoeyBtaXNzaW5nR3JvdXBzOiB1bmRlZmluZWQgfSkpXG4gICAgKVxuICApO1xuXG4gIGRlbGV0ZURhdGFzZXQkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuZGVsZXRlKSxcbiAgICAgIHN3aXRjaE1hcCgoYWN0aW9uKSA9PlxuICAgICAgICB0aGlzLmRhdGFTb3VyY2VTZXJ2aWNlLmRlbGV0ZURhdGFzZXQoYWN0aW9uLm5hbWUpLnBpcGUoXG4gICAgICAgICAgbWVyZ2VNYXAoKCkgPT4gW1xuICAgICAgICAgICAgRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5sb2FkRGF0YXNldCgpLFxuICAgICAgICAgICAgRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC51bnNlbGVjdERhdGFzZXQoKSxcbiAgICAgICAgICAgIERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuZGVsZXRlZCh7IGFkZFJvdXRlOiBhY3Rpb24uYWRkUm91dGUgfSlcbiAgICAgICAgICBdKSxcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gW0RhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuZmFpbHVyZSh7IGVycm9yIH0pXSlcbiAgICAgICAgKVxuICAgICAgKVxuICAgIClcbiAgKTtcblxuICBnZXREYXRhc2V0QnlJZCQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5nZXREYXRhc2V0QnlJZCksXG4gICAgICBtZXJnZU1hcCgoYWN0aW9uKSA9PlxuICAgICAgICB0aGlzLmRhdGFTb3VyY2VTZXJ2aWNlLmdldERhdGFzZXRCeUlkKGFjdGlvbi5pZCkucGlwZShcbiAgICAgICAgICBtYXAoKGRhdGEpID0+IERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuZ2V0RGF0YXNldEJ5SWRTdWNjZXNzKHsgZGF0YSB9KSksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IFtEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmdldERhdGFzZXRCeUlkRmFpbHVyZSh7IGVycm9yIH0pXSlcbiAgICAgICAgKVxuICAgICAgKVxuICAgIClcbiAgKTtcblxuICBsaXN0VmVyc2lvbnMkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQubGlzdFZlcnNpb25zKSxcbiAgICAgIHN3aXRjaE1hcCgoYWN0aW9uKSA9PlxuICAgICAgICB0aGlzLmRhdGFTb3VyY2VTZXJ2aWNlLmdldERhdGFzZXRWZXJzaW9ucygpLnBpcGUoXG4gICAgICAgICAgbWFwKCh2ZXJzaW9ucykgPT4gRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5saXN0VmVyc2lvbnNTdWNjZXNzKHsgdmVyc2lvbnMgfSkpLFxuICAgICAgICAgIGNhdGNoRXJyb3IoKF8pID0+IFtEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0Lmxpc3RWZXJzaW9uc0ZhaWx1cmUoKV0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgbGlzdFZlcnNpb25zQnlJZCQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5saXN0VmVyc2lvbnNCeURhdGFzZXRJZCksXG4gICAgICBzd2l0Y2hNYXAoKGFjdGlvbikgPT5cbiAgICAgICAgdGhpcy5kYXRhU291cmNlU2VydmljZS5nZXREYXRhc2V0VmVyc2lvbnNCeUlkKGFjdGlvbi5pZCkucGlwZShcbiAgICAgICAgICBtYXAoKHZlcnNpb25zKSA9PiBEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LnVwZGF0ZVZlcnNpb25MaXN0KHsgaWQ6IGFjdGlvbi5pZCwgdmVyc2lvbnMgfSkpLFxuICAgICAgICAgIGNhdGNoRXJyb3IoKF8pID0+IFtEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0Lmxpc3RWZXJzaW9uc0ZhaWx1cmUoKV0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgY29uZmlybURhdGFzb3VyY2VEZWxldGlvbiQgPSBjcmVhdGVFZmZlY3QoXG4gICAgKCkgPT5cbiAgICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuY29uZmlybURhdGFTb3VyY2VEZWxldGlvbiksXG4gICAgICAgIHRhcCgoYWN0aW9uKSA9PiB7XG4gICAgICAgICAgY29uc3QgZGF0YTogUHJ5RGlhbG9nQ29uZmlybURhdGEgPSB7XG4gICAgICAgICAgICB0aXRsZTogJ0BwcnkuYWRtaW4uaW5mb01vZGFsVGl0bGUnLFxuICAgICAgICAgICAgbWVzc2FnZTogJ0BwcnkuYWRtaW4uZGF0YXNldC5kZWxldGUnLFxuICAgICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaWQ6IDAsXG4gICAgICAgICAgICAgICAgbGFiZWw6ICdAcHJ5LmFkbWluLmRlbGV0ZScsXG4gICAgICAgICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAgICAgICAgRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5kZWxldGUoe1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBhY3Rpb24ubmFtZSxcbiAgICAgICAgICAgICAgICAgICAgcm91dGU6IGFjdGlvbi5yb3V0ZSxcbiAgICAgICAgICAgICAgICAgICAgYWRkUm91dGU6IGFjdGlvbi5hZGRSb3V0ZVxuICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHsgaWQ6IDAsIGxhYmVsOiAnQHByeS5hZG1pbi5jYW5jZWwnIH1cbiAgICAgICAgICAgIF1cbiAgICAgICAgICB9O1xuICAgICAgICAgIHRoaXMucHJ5RGlhbG9nLm9wZW4oUHJ5RGlhbG9nQ29uZmlybUNvbXBvbmVudCwgeyBkYXRhIH0pO1xuICAgICAgICB9KVxuICAgICAgKSxcbiAgICB7IGRpc3BhdGNoOiBmYWxzZSB9XG4gICk7XG5cbiAgZGVhY3RpdmF0ZURhdGFzZXRWZXJzaW9uJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmRlYWN0aXZhdGVEYXRhc2V0VmVyc2lvbiksXG4gICAgICBzd2l0Y2hNYXAoKGFjdGlvbjogYW55KSA9PlxuICAgICAgICB0aGlzLmRhdGFTb3VyY2VTZXJ2aWNlLmRlYWN0aXZhdGVEYXRhc2V0VmVyc2lvbihhY3Rpb24udmVyc2lvbklkKS5waXBlKFxuICAgICAgICAgIG1hcCgoZGF0YXNldFZlcnNpb24pID0+IERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuZGVhY3RpdmF0ZURhdGFzZXRWZXJzaW9uU3VjY2Vzcyh7IGRhdGFzZXRWZXJzaW9uIH0pKSxcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gW0RhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuZGVhY3RpdmF0ZURhdGFzZXRWZXJzaW9uRmFpbHVyZSh7IGVycm9yIH0pXSlcbiAgICAgICAgKVxuICAgICAgKVxuICAgIClcbiAgKTtcblxuICBhY3RpdmF0ZURhdGFzZXRWZXJzaW9uJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmFjdGl2YXRlRGF0YXNldFZlcnNpb24pLFxuICAgICAgc3dpdGNoTWFwKChhY3Rpb246IGFueSkgPT5cbiAgICAgICAgdGhpcy5kYXRhU291cmNlU2VydmljZS5hY3RpdmF0ZURhdGFzZXRWZXJzaW9uKGFjdGlvbi52ZXJzaW9uSWQpLnBpcGUoXG4gICAgICAgICAgbWFwKChkYXRhc2V0VmVyc2lvbikgPT4gRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5hY3RpdmF0ZURhdGFzZXRWZXJzaW9uU3VjY2Vzcyh7IGRhdGFzZXRWZXJzaW9uIH0pKSxcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gW0RhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuYWN0aXZhdGVEYXRhc2V0VmVyc2lvbkZhaWx1cmUoeyBlcnJvciB9KV0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgYWN0aXZhdGVPckRlYWN0aXZhdGVEYXRhc2V0VmVyc2lvblN1Y2Nlc3MkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKFxuICAgICAgICBEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmFjdGl2YXRlRGF0YXNldFZlcnNpb25TdWNjZXNzLFxuICAgICAgICBEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmRlYWN0aXZhdGVEYXRhc2V0VmVyc2lvblN1Y2Nlc3NcbiAgICAgICksXG4gICAgICBtYXAoKGFjdGlvbjogYW55KSA9PiBEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0Lmxpc3RWZXJzaW9ucygpKVxuICAgIClcbiAgKTtcblxuICBwcmV2aWV3c0dldEJ5SWQkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQucHJldmlld3MuZ2V0QnlJZCksXG4gICAgICBzd2l0Y2hNYXAoKGFjdGlvbjogYW55KSA9PlxuICAgICAgICB0aGlzLmRhdGFTb3VyY2VTZXJ2aWNlLmdldFByZXZpZXdzKGFjdGlvbi5pZCkucGlwZShcbiAgICAgICAgICBtYXAoKHByZXZpZXdzKSA9PiBEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LnByZXZpZXdzLmdldEJ5SWRTdWNjZXNzKHsgcHJldmlld3MgfSkpLFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiBbRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5wcmV2aWV3cy5nZXRCeUlkRmFpbHVyZSh7IGVycm9yIH0pXSlcbiAgICAgICAgKVxuICAgICAgKVxuICAgIClcbiAgKTtcblxuICB1cGRhdGVEYXRhc2V0VmVyc2lvbkluZm8gPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC51cGRhdGVEYXRhc2V0VmVyc2lvbkluZm8pLFxuICAgICAgc3dpdGNoTWFwKChhY3Rpb24pID0+XG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZVNlcnZpY2VcbiAgICAgICAgICAudXBkYXRlRGF0YXNldFZlcnNpb25JbmZvKGFjdGlvbi52ZXJzaW9uKVxuICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgbWFwKChwcmV2aWV3cykgPT4gRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC51cGRhdGVEYXRhc2V0VmVyc2lvbkluZm9TdWNjZXNzKHsgdmVyc2lvbjogYWN0aW9uLnZlcnNpb24gfSkpXG4gICAgICAgICAgKVxuICAgICAgKVxuICAgIClcbiAgKTtcblxuICBjb25maXJtRGVsZXRlRGF0YXNldFZlcnNpb24kID0gY3JlYXRlRWZmZWN0KFxuICAgICgpID0+XG4gICAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmNvbmZpcm1EZWxldGVWZXJzaW9uKSxcbiAgICAgICAgdGFwKChhY3Rpb24pID0+IHtcbiAgICAgICAgICBjb25zdCBkYXRhOiBQcnlEaWFsb2dDb25maXJtRGF0YSA9IHtcbiAgICAgICAgICAgIHRpdGxlOiAnQHByeS5kYXRhc2V0LnZlcnNpb24uZGVsZXRlLnRpdGxlJyxcbiAgICAgICAgICAgIG1lc3NhZ2U6ICdAcHJ5LmRhdGFzZXQudmVyc2lvbi5kZWxldGUubWVzc2FnZScsXG4gICAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpZDogMCxcbiAgICAgICAgICAgICAgICBsYWJlbDogJ0BwcnkuZGF0YXNldC5idXR0b25BY3Rpb24uZGVsZXRlJyxcbiAgICAgICAgICAgICAgICBhY3Rpb25zOiBbRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5kZWxldGVWZXJzaW9uKHsgdmVyc2lvbjogYWN0aW9uLnZlcnNpb24gfSldXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpZDogMSxcbiAgICAgICAgICAgICAgICBsYWJlbDogJ0BwcnkuZGF0YXNldC5idXR0b25BY3Rpb24uY2FuY2VsJyxcbiAgICAgICAgICAgICAgICBjb2xvcjogJ3NlY29uZGFyeSdcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICAgIH07XG4gICAgICAgICAgdGhpcy5wcnlEaWFsb2cub3BlbihQcnlEaWFsb2dDb25maXJtQ29tcG9uZW50LCB7IGRhdGEgfSk7XG4gICAgICAgIH0pXG4gICAgICApLFxuICAgIHsgZGlzcGF0Y2g6IGZhbHNlIH1cbiAgKTtcblxuICBkZWxldGVEYXRhc2V0VmVyc2lvbiQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5kZWxldGVWZXJzaW9uKSxcbiAgICAgIHN3aXRjaE1hcCgoYWN0aW9uKSA9PlxuICAgICAgICB0aGlzLmRhdGFTb3VyY2VTZXJ2aWNlLmRlbGV0ZURhdGFzZXRWZXJzaW9uKGFjdGlvbi52ZXJzaW9uKS5waXBlKFxuICAgICAgICAgIG1lcmdlTWFwKCgpID0+IFtEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0Lmxpc3RWZXJzaW9uc0J5RGF0YXNldElkKHsgaWQ6IGFjdGlvbi52ZXJzaW9uLmRhdGFzZXQgfSldKSxcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnIpID0+IFtEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmRlbGV0ZVZlcnNpb25GYWlsdXJlKHsgZXJyIH0pXSlcbiAgICAgICAgKVxuICAgICAgKVxuICAgIClcbiAgKTtcbn1cbiJdfQ==
173
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1zb3VyY2UuZWZmZWN0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2xpYi9jb3JlL3N0b3JlL2RhdGEtc291cmNlL2RhdGEtc291cmNlLmVmZmVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQVcsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUseUJBQXlCLEVBQXdCLE1BQU0sbURBQW1ELENBQUM7QUFJcEgsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUUxRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7Ozs7Ozs7O0FBSTlELE1BQU0sT0FBTyxpQkFBaUI7SUFHNUIsWUFDVSxRQUFpQixFQUNqQixhQUE0QixFQUM1QixpQkFBb0MsRUFDcEMsUUFBNEIsRUFDNUIsU0FBeUIsRUFDekIsS0FBWSxFQUNaLFNBQTJCO1FBTjNCLGFBQVEsR0FBUixRQUFRLENBQVM7UUFDakIsa0JB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RixDQUNGLENBQUM7SUE1V0MsQ0FBQzs4R0FYTyxpQkFBaUI7a0hBQWpCLGlCQUFpQjs7MkZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGlvbnMsIGNyZWF0ZUVmZmVjdCwgb2ZUeXBlIH0gZnJvbSAnQG5ncngvZWZmZWN0cyc7XG5pbXBvcnQgeyBBY3Rpb24sIFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBmaWx0ZXIsIG1hcCwgbWVyZ2VNYXAsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCB3aXRoTGF0ZXN0RnJvbSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IERhc2hib2FyZEFjdGlvbnMgfSBmcm9tICcuLi8uLi8uLi9kYXNoYm9hcmQvc3RvcmUvZGFzaGJvYXJkLmFjdGlvbnMnO1xuaW1wb3J0IHsgRGFzaGJvYXJkU2VsZWN0b3JzIH0gZnJvbSAnLi4vLi4vLi4vZGFzaGJvYXJkL3N0b3JlL2Rhc2hib2FyZC5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgUHJ5RGlhbG9nQ29uZmlybUNvbXBvbmVudCwgUHJ5RGlhbG9nQ29uZmlybURhdGEgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL292ZXJsYXkvZGlhbG9nLWNvbmZpcm0uY29tcG9uZW50JztcbmltcG9ydCB7IFByeURpYWxvZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL292ZXJsYXkvZGlhbG9nLnNlcnZpY2UnO1xuaW1wb3J0IHsgUHJ5U25hY2tiYXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9zbmFja2Jhci9zbmFja2Jhci5zZXJ2aWNlJztcbmltcG9ydCB7IFByeUkxOG5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaTE4bi9pMThuLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29uZmlnU2VsZWN0b3JzIH0gZnJvbSAnLi4vY29uZmlnL2NvbmZpZy5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgU2VhcmNoQWN0aW9ucyB9IGZyb20gJy4uL3NlYXJjaC9zZWFyY2guYWN0aW9ucyc7XG5pbXBvcnQgeyBTZWFyY2hTZXJ2aWNlIH0gZnJvbSAnLi4vc2VhcmNoL3NlYXJjaC5zZXJ2aWNlJztcbmltcG9ydCB7IERhdGFTb3VyY2VBY3Rpb25zIH0gZnJvbSAnLi9kYXRhLXNvdXJjZS5hY3Rpb25zJztcbmltcG9ydCB7IERhdGFzZXQsIE5hbWVkUXVlcnkgfSBmcm9tICcuL2RhdGEtc291cmNlLm1vZGVsJztcbmltcG9ydCB7IERhdGFTb3VyY2VTZWxlY3RvcnMgfSBmcm9tICcuL2RhdGEtc291cmNlLnNlbGVjdG9ycyc7XG5pbXBvcnQgeyBEYXRhU291cmNlU2VydmljZSB9IGZyb20gJy4vZGF0YS1zb3VyY2Uuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEYXRhU291cmNlRWZmZWN0cyB7XG4gIHByaXZhdGUgaWROYW1lZFF1ZXJ5Pzogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYWN0aW9ucyQ6IEFjdGlvbnMsXG4gICAgcHJpdmF0ZSBzZWFyY2hTZXJ2aWNlOiBTZWFyY2hTZXJ2aWNlLFxuICAgIHByaXZhdGUgZGF0YVNvdXJjZVNlcnZpY2U6IERhdGFTb3VyY2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgc25hY2tCYXI6IFByeVNuYWNrYmFyU2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogUHJ5STE4blNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmUsXG4gICAgcHJpdmF0ZSBwcnlEaWFsb2c6IFByeURpYWxvZ1NlcnZpY2VcbiAgKSB7fVxuXG4gIHBvc3ROYW1lUXVlcnkkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLm5hbWVkUXVlcnkucG9zdCksXG4gICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLnN0b3JlLnNlbGVjdChDb25maWdTZWxlY3RvcnMucmFuZG9tQ29sb3IpKSxcbiAgICAgIHN3aXRjaE1hcCgoW2FjdGlvbiwgcmFuZG9tQ29sb3JdKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgbmFtZSwgaWQsIHBheWxvYWQsIGRlc2NyaXB0aW9uLCBjb2xvciwgZmF2b3JpdGUsIGlzRWRpdCwgdmlzaWJpbGl0eSB9ID0gYWN0aW9uO1xuICAgICAgICB0aGlzLmlkTmFtZWRRdWVyeSA9IGlzRWRpdCA/IGlkIDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBuYW1lZFF1ZXJ5OiBOYW1lZFF1ZXJ5ID0ge1xuICAgICAgICAgIGlkOiBpZCA/PyAnJyxcbiAgICAgICAgICBzb3VyY2VUeXBlOiAnbmFtZWRRdWVyeScsXG4gICAgICAgICAgbmFtZSxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogZGVzY3JpcHRpb24gPz8gdW5kZWZpbmVkLFxuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2liaWxpdHkgPz8gdW5kZWZpbmVkLFxuICAgICAgICAgIHJlcXVlc3Q6IHBheWxvYWQsXG4gICAgICAgICAgY29sb3I6IGNvbG9yID8/IHJhbmRvbUNvbG9yLFxuICAgICAgICAgIGZhdm9yaXRlXG4gICAgICAgIH07XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGFTb3VyY2VTZXJ2aWNlLnBvc3QobmFtZWRRdWVyeSk7XG4gICAgICB9KSxcbiAgICAgIG1lcmdlTWFwKCgpID0+IHtcbiAgICAgICAgY29uc3QgYWN0aW9ucyA9IFtdIGFzIEFjdGlvbltdO1xuICAgICAgICBpZiAodGhpcy5pZE5hbWVkUXVlcnkpIHtcbiAgICAgICAgICBhY3Rpb25zLnB1c2goXG4gICAgICAgICAgICBTZWFyY2hBY3Rpb25zLmdldERhdGFzb3VyY2VJdGVtcyh7IGlkOiB0aGlzLmlkTmFtZWRRdWVyeSwgZXhjbHVkZUdlbzogZmFsc2UsIGZyb206ICdwb3N0TmFtZVF1ZXJ5JCcgfSlcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaWROYW1lZFF1ZXJ5ID0gdW5kZWZpbmVkO1xuICAgICAgICBhY3Rpb25zLnB1c2goRGF0YVNvdXJjZUFjdGlvbnMubmFtZWRRdWVyeS5sb2FkKCkpO1xuICAgICAgICByZXR1cm4gYWN0aW9ucztcbiAgICAgIH0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IFtEYXRhU291cmNlQWN0aW9ucy5uYW1lZFF1ZXJ5LmZhaWx1cmUoeyBlcnJvciB9KV0pXG4gICAgKVxuICApO1xuXG4gIGdldE5hbWVkUXVlcnkkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLm5hbWVkUXVlcnkubG9hZCksXG4gICAgICBkZWJvdW5jZVRpbWUoMTAwKSxcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLmRhdGFTb3VyY2VTZXJ2aWNlLmdldCgpKSxcbiAgICAgIG1hcCgobmFtZWRRdWVyeUxpc3Q6IE5hbWVkUXVlcnlbXSkgPT4gRGF0YVNvdXJjZUFjdGlvbnMubmFtZWRRdWVyeS5sb2FkZWQoeyBsaXN0OiBuYW1lZFF1ZXJ5TGlzdCB9KSksXG4gICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gW0RhdGFTb3VyY2VBY3Rpb25zLm5hbWVkUXVlcnkuZmFpbHVyZSh7IGVycm9yIH0pXSlcbiAgICApXG4gICk7XG5cbiAgbG9hZGVkJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5uYW1lZFF1ZXJ5LmxvYWRlZCksXG4gICAgICBtYXAoKGFjdGlvbjogeyBsaXN0OiBOYW1lZFF1ZXJ5W107IHR5cGU6IHN0cmluZyB9KSA9PiB7XG4gICAgICAgIHJldHVybiBEYXNoYm9hcmRBY3Rpb25zLnNldEF2YWlsYWJsZU5hbWVkUXVlcmllcyh7IG5hbWVzOiBhY3Rpb24ubGlzdC5tYXAoKG5xKSA9PiBucS5pZCkgfSk7XG4gICAgICB9KVxuICAgIClcbiAgKTtcblxuICBkZWxldGVOYW1lZFF1ZXJ5JCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5uYW1lZFF1ZXJ5LmRlbGV0ZSksXG4gICAgICBzd2l0Y2hNYXAoKHByb3BzOiB7IGlkOiBzdHJpbmcgfSkgPT5cbiAgICAgICAgdGhpcy5kYXRhU291cmNlU2VydmljZS5kZWxldGUocHJvcHMuaWQpLnBpcGUoXG4gICAgICAgICAgbWVyZ2VNYXAoKCkgPT4gW0RhdGFTb3VyY2VBY3Rpb25zLm5hbWVkUXVlcnkubG9hZCgpXSksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IFtEYXRhU291cmNlQWN0aW9ucy5uYW1lZFF1ZXJ5LmZhaWx1cmUoeyBlcnJvciB9KV0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgYWRkRmF2b3JpdGVOYW1lZFF1ZXJ5JCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5uYW1lZFF1ZXJ5LmFkZEZhdm9yaXRlKSxcbiAgICAgIHN3aXRjaE1hcCgocHJvcHM6IHsgaWQ6IHN0cmluZyB9KSA9PiB0aGlzLmRhdGFTb3VyY2VTZXJ2aWNlLmFkZEZhdm9yaXRlKHByb3BzLmlkKSksXG4gICAgICBtZXJnZU1hcCgoKSA9PiBbRGF0YVNvdXJjZUFjdGlvbnMubmFtZWRRdWVyeS5sb2FkKCldKSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiBbRGF0YVNvdXJjZUFjdGlvbnMubmFtZWRRdWVyeS5mYWlsdXJlKHsgZXJyb3IgfSldKVxuICAgIClcbiAgKTtcblxuICBkZWxldGVGYXZvcml0ZU5hbWVkUXVlcnkkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLm5hbWVkUXVlcnkuZGVsZXRlRmF2b3JpdGUpLFxuICAgICAgc3dpdGNoTWFwKChwcm9wczogeyBpZDogc3RyaW5nIH0pID0+IHRoaXMuZGF0YVNvdXJjZVNlcnZpY2UuZGVsZXRlRmF2b3JpdGUocHJvcHMuaWQpKSxcbiAgICAgIG1lcmdlTWFwKCgpID0+IFtEYXRhU291cmNlQWN0aW9ucy5uYW1lZFF1ZXJ5LmxvYWQoKV0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IFtEYXRhU291cmNlQWN0aW9ucy5uYW1lZFF1ZXJ5LmZhaWx1cmUoeyBlcnJvciB9KV0pXG4gICAgKVxuICApO1xuXG4gIHRyeUVkaXQkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLm5hbWVkUXVlcnkuZWRpdCksXG4gICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLnN0b3JlLnNlbGVjdChEYXRhU291cmNlU2VsZWN0b3JzLmVkaXRJblByb2dyZXNzKSksXG4gICAgICBtYXAoKFthY3Rpb24sIGluUHJvZ3Jlc3NdKSA9PiB7XG4gICAgICAgIGlmICghaW5Qcm9ncmVzcykge1xuICAgICAgICAgIHJldHVybiBEYXRhU291cmNlQWN0aW9ucy5uYW1lZFF1ZXJ5Lm9wZW5FZGl0KGFjdGlvbik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5zbmFja0Jhci5vcGVuKHtcbiAgICAgICAgICAgIG1lc3NhZ2U6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ0Bwcnkuc2VhcmNoLm5hbWVkUXVlcnkuYWxyZWFkeUVkaXRpbmcnKSxcbiAgICAgICAgICAgIHR5cGU6ICdlcnJvcidcbiAgICAgICAgICB9KTtcbiAgICAgICAgICByZXR1cm4gRGF0YVNvdXJjZUFjdGlvbnMubmFtZWRRdWVyeS5mYWlsdXJlKHsgZXJyb3I6IG5ldyBFcnJvcignQHByeS5zZWFyY2gubmFtZWRRdWVyeS5hbHJlYWR5RWRpdGluZycpIH0pO1xuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiBbRGF0YVNvdXJjZUFjdGlvbnMubmFtZWRRdWVyeS5mYWlsdXJlKHsgZXJyb3IgfSldKVxuICAgIClcbiAgKTtcblxuICB1cGRhdGVXaWRnZXRBZnRlclNhdmUkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgLy8gVXNpbmcgc3RyaW5ncyB0byBwcmV2ZW50IGhhdmluZyBjb3JlIG1vZHVsZSBkZXBlbmRpbmcgb24gc2VhcmNoIG1vZHVsZVxuICAgICAgb2ZUeXBlKCdbU2VhcmNoTW9ub0NsYXNzXSBzYXZlJywgJ1tTZWFyY2hNdWx0aUNsYXNzXSBsYXVuY2ggc2F2ZScsICdbU2VhcmNoIEZ1bGx0ZXh0XSBzYXZlJyksXG4gICAgICB3aXRoTGF0ZXN0RnJvbShcbiAgICAgICAgdGhpcy5zdG9yZS5zZWxlY3QoRGF0YVNvdXJjZVNlbGVjdG9ycy5lZGl0RnJvbVdpZGdldCksXG4gICAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KERhdGFTb3VyY2VTZWxlY3RvcnMuY3VycmVudEVkaXQpLFxuICAgICAgICB0aGlzLnN0b3JlLnNlbGVjdChEYXNoYm9hcmRTZWxlY3RvcnMud2luZG93TWFuaWZlc3QpXG4gICAgICApLFxuICAgICAgZmlsdGVyKChbYWN0aW9uLCBmcm9tV2lkZ2V0LCBjdXJyZW50RWRpdCwgd2luZG93TWFuaWZlc3RdKSA9PiBmcm9tV2lkZ2V0ICE9PSB1bmRlZmluZWQpLFxuICAgICAgbWFwKChbYWN0aW9uLCBmcm9tV2lkZ2V0LCBjdXJyZW50RWRpdCwgd2luZG93TWFuaWZlc3RdKSA9PiB7XG4gICAgICAgIGNvbnN0IHdpZGdldE1hbmlmZXN0Q29weSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkod2luZG93TWFuaWZlc3Qud2lkZ2V0c1tmcm9tV2lkZ2V0Py53aWRnZXRJbmRleCA/PyAwXSkpO1xuICAgICAgICAvLyBSZXBsYWNpbmcgdXBkYXRlZCBxdWVyeSBpZCBieSBuZXcgcXVlcnkgaWRcbiAgICAgICAgY29uc3QgYXJyYXlPZk5hbWVkUXVlcnkgPSBBcnJheS5pc0FycmF5KHdpZGdldE1hbmlmZXN0Q29weS5uYW1lZFF1ZXJ5KVxuICAgICAgICAgID8gd2lkZ2V0TWFuaWZlc3RDb3B5Lm5hbWVkUXVlcnlcbiAgICAgICAgICA6IFt3aWRnZXRNYW5pZmVzdENvcHkubmFtZWRRdWVyeV07XG5cbiAgICAgICAgLy8gQHRzLWlnbm9yZSA6IHdlIGRvbid0IHdhbnQgdG8gbWFrZSBjb3JlIGRlcGVuZGluZyBvbiBzZWFyY2hcbiAgICAgICAgY29uc3QgbmV3UXVlcnlJZCA9IGFjdGlvbi5pZDtcbiAgICAgICAgY29uc3QgcHJldmlvdXNOcUluZGV4ID0gYXJyYXlPZk5hbWVkUXVlcnkuaW5kZXhPZihmcm9tV2lkZ2V0Py5lZGl0ZWRRdWVyeSk7XG4gICAgICAgIGlmIChwcmV2aW91c05xSW5kZXggPj0gMCkge1xuICAgICAgICAgIGFycmF5T2ZOYW1lZFF1ZXJ5W3ByZXZpb3VzTnFJbmRleF0gPSBuZXdRdWVyeUlkO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIEVkaXRpbmcgYSByZXF1ZXN0IHRoYXQncyBub3QgaW4gdGhlIHdpZGdldC4gQWRkaW5nIGl0XG4gICAgICAgICAgYXJyYXlPZk5hbWVkUXVlcnkucHVzaChuZXdRdWVyeUlkKTtcbiAgICAgICAgfVxuICAgICAgICB3aWRnZXRNYW5pZmVzdENvcHkubmFtZWRRdWVyeSA9IGFycmF5T2ZOYW1lZFF1ZXJ5O1xuXG4gICAgICAgIHJldHVybiBEYXNoYm9hcmRBY3Rpb25zLnVwZGF0ZVdpZGdldE1hbmlmZXN0KHtcbiAgICAgICAgICBpbmRleDogZnJvbVdpZGdldD8ud2lkZ2V0SW5kZXggPz8gMCxcbiAgICAgICAgICBtYW5pZmVzdDogd2lkZ2V0TWFuaWZlc3RDb3B5XG4gICAgICAgIH0pO1xuICAgICAgfSlcbiAgICApXG4gICk7XG5cbiAgbG9hZGVkRGF0YXNldCQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5sb2FkRGF0YXNldCksXG4gICAgICBtZXJnZU1hcCgoYWN0aW9uKSA9PlxuICAgICAgICB0aGlzLmRhdGFTb3VyY2VTZXJ2aWNlXG4gICAgICAgICAgLmdldERhdGFzZXRzKClcbiAgICAgICAgICAucGlwZShtYXAoKGRzZCkgPT4gRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5sb2FkZWREYXRhc2V0KHsgZGF0YXNldHM6IGRzZCB9KSkpXG4gICAgICApXG4gICAgKVxuICApO1xuXG4gIGxvYWREYXRhc2V0JCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5sb2FkKSxcbiAgICAgIGRlYm91bmNlVGltZSgxMDApLFxuICAgICAgbWVyZ2VNYXAoKGFjdGlvbikgPT4gW0RhdGFTb3VyY2VBY3Rpb25zLm5hbWVkUXVlcnkubG9hZCgpLCBEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmxvYWREYXRhc2V0KCldKVxuICAgIClcbiAgKTtcblxuICBjcmVhdGVEYXRhc2V0JCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmNyZWF0ZSksXG4gICAgICBzd2l0Y2hNYXAoKHByb3BzOiB7IGRhdGFzZXQ6IERhdGFzZXQ7IHJvdXRlOiBzdHJpbmcgfSkgPT5cbiAgICAgICAgdGhpcy5kYXRhU291cmNlU2VydmljZVxuICAgICAgICAgIC5hZGREYXRhc2V0KHByb3BzLmRhdGFzZXQpXG4gICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICBtZXJnZU1hcCgoKSA9PiBbXG4gICAgICAgICAgICAgIERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQubG9hZERhdGFzZXQoKSxcbiAgICAgICAgICAgICAgRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC51bnNlbGVjdERhdGFzZXQoKSxcbiAgICAgICAgICAgICAgRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5jcmVhdGVkKHsgcGF0aDogcHJvcHMucm91dGUgfSlcbiAgICAgICAgICAgIF0pXG4gICAgICAgICAgKVxuICAgICAgKSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBhbnkpID0+IFtEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmZhaWx1cmUoeyBlcnJvciB9KV0pXG4gICAgKVxuICApO1xuXG4gIHVuc2V0TWlzc2luZ0dyb3Vwc09uRGF0YXNldFNlbGVjdGlvbiQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5zZWxlY3REYXRhc2V0KSxcbiAgICAgIG1lcmdlTWFwKChhY3Rpb24pID0+IFtcbiAgICAgICAgRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5zZXRNaXNzaW5nR3JvdXBzKHsgbWlzc2luZ0dyb3VwczogdW5kZWZpbmVkIH0pLFxuICAgICAgICBEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0Lmxpc3RWZXJzaW9uc0J5RGF0YXNldElkKHsgaWQ6IGFjdGlvbi5kYXRhc2V0LmlkIH0pXG4gICAgICBdKVxuICAgIClcbiAgKTtcblxuICBkZWxldGVEYXRhc2V0JCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmRlbGV0ZSksXG4gICAgICBzd2l0Y2hNYXAoKGFjdGlvbikgPT5cbiAgICAgICAgdGhpcy5kYXRhU291cmNlU2VydmljZS5kZWxldGVEYXRhc2V0KGFjdGlvbi5uYW1lKS5waXBlKFxuICAgICAgICAgIG1lcmdlTWFwKCgpID0+IFtcbiAgICAgICAgICAgIERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQubG9hZERhdGFzZXQoKSxcbiAgICAgICAgICAgIERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQudW5zZWxlY3REYXRhc2V0KCksXG4gICAgICAgICAgICBEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmRlbGV0ZWQoeyBhZGRSb3V0ZTogYWN0aW9uLmFkZFJvdXRlIH0pXG4gICAgICAgICAgXSksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IFtEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmZhaWx1cmUoeyBlcnJvciB9KV0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgZ2V0RGF0YXNldEJ5SWQkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuZ2V0RGF0YXNldEJ5SWQpLFxuICAgICAgbWVyZ2VNYXAoKGFjdGlvbikgPT5cbiAgICAgICAgdGhpcy5kYXRhU291cmNlU2VydmljZS5nZXREYXRhc2V0QnlJZChhY3Rpb24uaWQpLnBpcGUoXG4gICAgICAgICAgbWFwKChkYXRhKSA9PiBEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmdldERhdGFzZXRCeUlkU3VjY2Vzcyh7IGRhdGEgfSkpLFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiBbRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5nZXREYXRhc2V0QnlJZEZhaWx1cmUoeyBlcnJvciB9KV0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgbGlzdFZlcnNpb25zJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0Lmxpc3RWZXJzaW9ucyksXG4gICAgICBzd2l0Y2hNYXAoKGFjdGlvbikgPT5cbiAgICAgICAgdGhpcy5kYXRhU291cmNlU2VydmljZS5nZXREYXRhc2V0VmVyc2lvbnMoKS5waXBlKFxuICAgICAgICAgIG1hcCgodmVyc2lvbnMpID0+IERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQubGlzdFZlcnNpb25zU3VjY2Vzcyh7IHZlcnNpb25zIH0pKSxcbiAgICAgICAgICBjYXRjaEVycm9yKChfKSA9PiBbRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5saXN0VmVyc2lvbnNGYWlsdXJlKCldKVxuICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApO1xuXG4gIGxpc3RWZXJzaW9uc0J5SWQkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQubGlzdFZlcnNpb25zQnlEYXRhc2V0SWQpLFxuICAgICAgc3dpdGNoTWFwKChhY3Rpb24pID0+XG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZVNlcnZpY2UuZ2V0RGF0YXNldFZlcnNpb25zQnlJZChhY3Rpb24uaWQpLnBpcGUoXG4gICAgICAgICAgbWFwKCh2ZXJzaW9ucykgPT4gRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC51cGRhdGVWZXJzaW9uTGlzdCh7IGlkOiBhY3Rpb24uaWQsIHZlcnNpb25zIH0pKSxcbiAgICAgICAgICBjYXRjaEVycm9yKChfKSA9PiBbRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5saXN0VmVyc2lvbnNGYWlsdXJlKCldKVxuICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApO1xuXG4gIGNvbmZpcm1EYXRhc291cmNlRGVsZXRpb24kID0gY3JlYXRlRWZmZWN0KFxuICAgICgpID0+XG4gICAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmNvbmZpcm1EYXRhU291cmNlRGVsZXRpb24pLFxuICAgICAgICB0YXAoKGFjdGlvbikgPT4ge1xuICAgICAgICAgIGNvbnN0IGRhdGE6IFByeURpYWxvZ0NvbmZpcm1EYXRhID0ge1xuICAgICAgICAgICAgdGl0bGU6ICdAcHJ5LmFkbWluLmluZm9Nb2RhbFRpdGxlJyxcbiAgICAgICAgICAgIG1lc3NhZ2U6ICdAcHJ5LmFkbWluLmRhdGFzZXQuZGVsZXRlJyxcbiAgICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGlkOiAwLFxuICAgICAgICAgICAgICAgIGxhYmVsOiAnQHByeS5hZG1pbi5kZWxldGUnLFxuICAgICAgICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgICAgICAgIERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuZGVsZXRlKHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogYWN0aW9uLm5hbWUsXG4gICAgICAgICAgICAgICAgICAgIHJvdXRlOiBhY3Rpb24ucm91dGUsXG4gICAgICAgICAgICAgICAgICAgIGFkZFJvdXRlOiBhY3Rpb24uYWRkUm91dGVcbiAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7IGlkOiAwLCBsYWJlbDogJ0BwcnkuYWRtaW4uY2FuY2VsJyB9XG4gICAgICAgICAgICBdXG4gICAgICAgICAgfTtcbiAgICAgICAgICB0aGlzLnByeURpYWxvZy5vcGVuKFByeURpYWxvZ0NvbmZpcm1Db21wb25lbnQsIHsgZGF0YSB9KTtcbiAgICAgICAgfSlcbiAgICAgICksXG4gICAgeyBkaXNwYXRjaDogZmFsc2UgfVxuICApO1xuXG4gIGRlYWN0aXZhdGVEYXRhc2V0VmVyc2lvbiQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5kZWFjdGl2YXRlRGF0YXNldFZlcnNpb24pLFxuICAgICAgc3dpdGNoTWFwKChhY3Rpb246IGFueSkgPT5cbiAgICAgICAgdGhpcy5kYXRhU291cmNlU2VydmljZS5kZWFjdGl2YXRlRGF0YXNldFZlcnNpb24oYWN0aW9uLnZlcnNpb25JZCkucGlwZShcbiAgICAgICAgICBtYXAoKGRhdGFzZXRWZXJzaW9uKSA9PiBEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmRlYWN0aXZhdGVEYXRhc2V0VmVyc2lvblN1Y2Nlc3MoeyBkYXRhc2V0VmVyc2lvbiB9KSksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IFtEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmRlYWN0aXZhdGVEYXRhc2V0VmVyc2lvbkZhaWx1cmUoeyBlcnJvciB9KV0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgYWN0aXZhdGVEYXRhc2V0VmVyc2lvbiQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5hY3RpdmF0ZURhdGFzZXRWZXJzaW9uKSxcbiAgICAgIHN3aXRjaE1hcCgoYWN0aW9uOiBhbnkpID0+XG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZVNlcnZpY2UuYWN0aXZhdGVEYXRhc2V0VmVyc2lvbihhY3Rpb24udmVyc2lvbklkKS5waXBlKFxuICAgICAgICAgIG1hcCgoZGF0YXNldFZlcnNpb24pID0+IERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuYWN0aXZhdGVEYXRhc2V0VmVyc2lvblN1Y2Nlc3MoeyBkYXRhc2V0VmVyc2lvbiB9KSksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IFtEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmFjdGl2YXRlRGF0YXNldFZlcnNpb25GYWlsdXJlKHsgZXJyb3IgfSldKVxuICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApO1xuXG4gIGFjdGl2YXRlT3JEZWFjdGl2YXRlRGF0YXNldFZlcnNpb25TdWNjZXNzJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShcbiAgICAgICAgRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5hY3RpdmF0ZURhdGFzZXRWZXJzaW9uU3VjY2VzcyxcbiAgICAgICAgRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5kZWFjdGl2YXRlRGF0YXNldFZlcnNpb25TdWNjZXNzXG4gICAgICApLFxuICAgICAgbWFwKChhY3Rpb246IGFueSkgPT4gRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5saXN0VmVyc2lvbnMoKSlcbiAgICApXG4gICk7XG5cbiAgcHJldmlld3NHZXRCeUlkJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LnByZXZpZXdzLmdldEJ5SWQpLFxuICAgICAgc3dpdGNoTWFwKChhY3Rpb246IGFueSkgPT5cbiAgICAgICAgdGhpcy5kYXRhU291cmNlU2VydmljZS5nZXRQcmV2aWV3cyhhY3Rpb24uaWQpLnBpcGUoXG4gICAgICAgICAgbWFwKChwcmV2aWV3cykgPT4gRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5wcmV2aWV3cy5nZXRCeUlkU3VjY2Vzcyh7IHByZXZpZXdzIH0pKSxcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gW0RhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQucHJldmlld3MuZ2V0QnlJZEZhaWx1cmUoeyBlcnJvciB9KV0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgdXBkYXRlRGF0YXNldFZlcnNpb25JbmZvID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQudXBkYXRlRGF0YXNldFZlcnNpb25JbmZvKSxcbiAgICAgIHN3aXRjaE1hcCgoYWN0aW9uKSA9PlxuICAgICAgICB0aGlzLmRhdGFTb3VyY2VTZXJ2aWNlXG4gICAgICAgICAgLnVwZGF0ZURhdGFzZXRWZXJzaW9uSW5mbyhhY3Rpb24udmVyc2lvbilcbiAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgIG1hcCgocHJldmlld3MpID0+IERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQudXBkYXRlRGF0YXNldFZlcnNpb25JbmZvU3VjY2Vzcyh7IHZlcnNpb246IGFjdGlvbi52ZXJzaW9uIH0pKVxuICAgICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgY29uZmlybURlbGV0ZURhdGFzZXRWZXJzaW9uJCA9IGNyZWF0ZUVmZmVjdChcbiAgICAoKSA9PlxuICAgICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgICBvZlR5cGUoRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5jb25maXJtRGVsZXRlVmVyc2lvbiksXG4gICAgICAgIHRhcCgoYWN0aW9uKSA9PiB7XG4gICAgICAgICAgY29uc3QgZGF0YTogUHJ5RGlhbG9nQ29uZmlybURhdGEgPSB7XG4gICAgICAgICAgICB0aXRsZTogJ0BwcnkuZGF0YXNldC52ZXJzaW9uLmRlbGV0ZS50aXRsZScsXG4gICAgICAgICAgICBtZXNzYWdlOiAnQHByeS5kYXRhc2V0LnZlcnNpb24uZGVsZXRlLm1lc3NhZ2UnLFxuICAgICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaWQ6IDAsXG4gICAgICAgICAgICAgICAgbGFiZWw6ICdAcHJ5LmRhdGFzZXQuYnV0dG9uQWN0aW9uLmRlbGV0ZScsXG4gICAgICAgICAgICAgICAgYWN0aW9uczogW0RhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuZGVsZXRlVmVyc2lvbih7IHZlcnNpb246IGFjdGlvbi52ZXJzaW9uIH0pXVxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaWQ6IDEsXG4gICAgICAgICAgICAgICAgbGFiZWw6ICdAcHJ5LmRhdGFzZXQuYnV0dG9uQWN0aW9uLmNhbmNlbCcsXG4gICAgICAgICAgICAgICAgY29sb3I6ICdzZWNvbmRhcnknXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF1cbiAgICAgICAgICB9O1xuICAgICAgICAgIHRoaXMucHJ5RGlhbG9nLm9wZW4oUHJ5RGlhbG9nQ29uZmlybUNvbXBvbmVudCwgeyBkYXRhIH0pO1xuICAgICAgICB9KVxuICAgICAgKSxcbiAgICB7IGRpc3BhdGNoOiBmYWxzZSB9XG4gICk7XG5cbiAgZGVsZXRlRGF0YXNldFZlcnNpb24kID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuZGVsZXRlVmVyc2lvbiksXG4gICAgICBzd2l0Y2hNYXAoKGFjdGlvbikgPT5cbiAgICAgICAgdGhpcy5kYXRhU291cmNlU2VydmljZS5kZWxldGVEYXRhc2V0VmVyc2lvbihhY3Rpb24udmVyc2lvbikucGlwZShcbiAgICAgICAgICBtZXJnZU1hcCgoKSA9PiBbRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5saXN0VmVyc2lvbnNCeURhdGFzZXRJZCh7IGlkOiBhY3Rpb24udmVyc2lvbi5kYXRhc2V0IH0pXSksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoZXJyKSA9PiBbRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5kZWxldGVWZXJzaW9uRmFpbHVyZSh7IGVyciB9KV0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG59XG4iXX0=
@@ -232,6 +232,17 @@ export class ToolboxManifestService extends SubscriptionnerDirective {
232
232
  baseSpec: {}
233
233
  },
234
234
  datasource: USE_CURRENT_RESULTSET
235
+ },
236
+ analytic: {
237
+ type: 'analytic',
238
+ layout: {
239
+ x: 1,
240
+ y: 1,
241
+ height: 2,
242
+ width: 3
243
+ },
244
+ options: { primaryProp: '', secondaryProp: '', verticalProp: '', valueProp: '' },
245
+ datasource: USE_CURRENT_RESULTSET
235
246
  }
236
247
  });
237
248
  this.currentResultSet = [];
@@ -281,4 +292,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImpor
281
292
  providedIn: 'root'
282
293
  }]
283
294
  }], ctorParameters: () => [{ type: i1.Store }] });
284
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJveC1tYW5pZmVzdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvbGliL2NvcmUvdG9vbGJveC90b29sYm94LW1hbmlmZXN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ2xILE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUNoRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7QUFFbkUsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsdUJBQXVCLENBQUM7QUFLN0QsTUFBTSxPQUFPLHNCQUF1QixTQUFRLHdCQUF3QjtJQWlPbEUsWUFBb0IsS0FBaUI7UUFDbkMsS0FBSyxFQUFFLENBQUM7UUFEVSxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBaE9yQyxzQkFBaUIsR0FBRyxJQUFJLGVBQWUsQ0FBb0M7WUFDekUsU0FBUyxFQUFFO2dCQUNULElBQUksRUFBRSxLQUFLO2dCQUNYLE1BQU0sRUFBRTtvQkFDTixDQUFDLEVBQUUsQ0FBQztvQkFDSixDQUFDLEVBQUUsQ0FBQztvQkFDSixNQUFNLEVBQUUsQ0FBQztvQkFDVCxLQUFLLEVBQUUsQ0FBQztpQkFDVDtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsR0FBRyxFQUFFLElBQUk7b0JBQ1QsZUFBZSxFQUFFLElBQUk7b0JBQ3JCLE1BQU0sRUFBRSxFQUFFO29CQUNWLFdBQVcsRUFBRSxXQUFXLENBQUMsS0FBSztpQkFDL0I7Z0JBQ0QsVUFBVSxFQUFFLHFCQUFxQjthQUNsQztZQUNELE9BQU8sRUFBRTtnQkFDUCxJQUFJLEVBQUUsS0FBSztnQkFDWCxNQUFNLEVBQUU7b0JBQ04sQ0FBQyxFQUFFLENBQUM7b0JBQ0osQ0FBQyxFQUFFLENBQUM7b0JBQ0osTUFBTSxFQUFFLENBQUM7b0JBQ1QsS0FBSyxFQUFFLENBQUM7aUJBQ1Q7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLEdBQUcsRUFBRSxJQUFJO29CQUNULE1BQU0sRUFBRTt3QkFDTjs0QkFDRSxJQUFJLEVBQUUsU0FBUzt5QkFDaEI7cUJBQ0Y7b0JBQ0QsV0FBVyxFQUFFLFdBQVcsQ0FBQyxLQUFLO2lCQUMvQjtnQkFDRCxVQUFVLEVBQUUscUJBQXFCO2FBQ2xDO1lBQ0QsU0FBUyxFQUFFO2dCQUNULElBQUksRUFBRSxLQUFLO2dCQUNYLE1BQU0sRUFBRTtvQkFDTixDQUFDLEVBQUUsQ0FBQztvQkFDSixDQUFDLEVBQUUsQ0FBQztvQkFDSixNQUFNLEVBQUUsQ0FBQztvQkFDVCxLQUFLLEVBQUUsQ0FBQztpQkFDVDtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsR0FBRyxFQUFFLElBQUk7b0JBQ1QsTUFBTSxFQUFFO3dCQUNOOzRCQUNFLElBQUksRUFBRSxRQUFRO3lCQUNmO3FCQUNGO29CQUNELFdBQVcsRUFBRSxXQUFXLENBQUMsS0FBSztpQkFDL0I7Z0JBQ0QsVUFBVSxFQUFFLHFCQUFxQjthQUNsQztZQUNELFNBQVMsRUFBRTtnQkFDVCxJQUFJLEVBQUUsS0FBSztnQkFDWCxNQUFNLEVBQUU7b0JBQ04sQ0FBQyxFQUFFLENBQUM7b0JBQ0osQ0FBQyxFQUFFLENBQUM7b0JBQ0osTUFBTSxFQUFFLENBQUM7b0JBQ1QsS0FBSyxFQUFFLENBQUM7aUJBQ1Q7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLEdBQUcsRUFBRSxJQUFJO29CQUNULE1BQU0sRUFBRTt3QkFDTjs0QkFDRSxJQUFJLEVBQUUsUUFBUTt5QkFDZjtxQkFDRjtvQkFDRCxXQUFXLEVBQUUsV0FBVyxDQUFDLEtBQUs7aUJBQy9CO2dCQUNELFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxLQUFLLEVBQUU7Z0JBQ0wsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFO2dCQUNYLFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQzNDLFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxTQUFTLEVBQUU7Z0JBQ1QsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsU0FBUyxFQUFFLEVBQUU7Z0JBQ2pELFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxTQUFTLEVBQUU7Z0JBQ1QsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQzdDLFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxVQUFVLEVBQUU7Z0JBQ1YsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQzlDLFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxTQUFTLEVBQUU7Z0JBQ1QsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQzVDLFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFLEVBQUU7Z0JBQ2hELFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxNQUFNLEVBQUU7Z0JBQ04s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QyxHQUFHLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3JDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsSUFBSSxRQUFRLENBQUMsVUFBVSxLQUFLLHFCQUFxQixDQUFDO0lBQ3JFLENBQUM7SUFFRCxZQUFZLENBQUMsTUFBaUIsRUFBRSxFQUFVO1FBQ3hDLElBQUksQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLFlBQVksSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyx5QkFBeUIsQ0FBQyxFQUFFLENBQUM7WUFDeEcsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUU5QixNQUFNLENBQUMsWUFBWSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUM7WUFDeEMsTUFBTSxDQUFDLFlBQVksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDO1lBRTNDLE1BQU0sQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLHlCQUF5QixFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUNqRixNQUFNLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsR0FBRyxRQUFRLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQy9FLENBQUM7SUFDSCxDQUFDOzhHQXJSVSxzQkFBc0I7a0hBQXRCLHNCQUFzQixjQUZyQixNQUFNOzsyRkFFUCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE1JTUVfVFlQRV9XSURHRVRfTUFOSUZFU1QsIE1JTUVfVFlQRV9XSURHRVRfVFlQRSB9IGZyb20gJy4uLy4uL2Rhc2hib2FyZC9jb21wb25lbnRzL2Rhc2hib2FyZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGFzaGJvYXJkL2NvbXBvbmVudHMvc3Vic2NyaXB0aW9ubmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBEYXNoYm9hcmRTZWxlY3RvcnMgfSBmcm9tICcuLi8uLi9kYXNoYm9hcmQvc3RvcmUvZGFzaGJvYXJkLnNlbGVjdG9ycyc7XG5pbXBvcnQgeyBXaWRnZXRMYXlvdXQsIFdpZGdldE1hbmlmZXN0IH0gZnJvbSAnLi4vbW9kZWwvbWFuaWZlc3QuaW50ZXJmYWNlJztcbmltcG9ydCB7IEdyYXBoVHlwZSB9IGZyb20gJy4uL21vZGVsL3dpZGdldC1hZ2dyZWdhdGVkLWNoYXJ0LW1hbmlmZXN0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBUb29sdGlwTW9kZSB9IGZyb20gJy4uL21vZGVsL3dpZGdldC1tYXAtbWFuaWZlc3QuaW50ZXJmYWNlJztcbmltcG9ydCB7IENvbmZpZ1NlbGVjdG9ycyB9IGZyb20gJy4uL3N0b3JlL2NvbmZpZy9jb25maWcuc2VsZWN0b3JzJztcblxuZXhwb3J0IGNvbnN0IFVTRV9DVVJSRU5UX1JFU1VMVFNFVCA9ICd1c2UtY3VycmVudC1yZXN1bHRzZXQnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBUb29sYm94TWFuaWZlc3RTZXJ2aWNlIGV4dGVuZHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIHtcbiAgaW5pdGlhbE1hbmlmZXN0cyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHsgW2tleTogc3RyaW5nXTogV2lkZ2V0TWFuaWZlc3QgfT4oe1xuICAgIHNpbXBsZW1hcDoge1xuICAgICAgdHlwZTogJ21hcCcsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgZml0OiB0cnVlLFxuICAgICAgICBhdXRvbWF0aWNMYXllcnM6IHRydWUsXG4gICAgICAgIGxheWVyczogW10sXG4gICAgICAgIHRvb2x0aXBNb2RlOiBUb29sdGlwTW9kZS5DTElDS1xuICAgICAgfSxcbiAgICAgIGRhdGFzb3VyY2U6IFVTRV9DVVJSRU5UX1JFU1VMVFNFVFxuICAgIH0sXG4gICAgaGVhdG1hcDoge1xuICAgICAgdHlwZTogJ21hcCcsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgZml0OiB0cnVlLFxuICAgICAgICBsYXllcnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0eXBlOiAnaGVhdG1hcCdcbiAgICAgICAgICB9XG4gICAgICAgIF0sXG4gICAgICAgIHRvb2x0aXBNb2RlOiBUb29sdGlwTW9kZS5DTElDS1xuICAgICAgfSxcbiAgICAgIGRhdGFzb3VyY2U6IFVTRV9DVVJSRU5UX1JFU1VMVFNFVFxuICAgIH0sXG4gICAgYnViYmxlbWFwOiB7XG4gICAgICB0eXBlOiAnbWFwJyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczoge1xuICAgICAgICBmaXQ6IHRydWUsXG4gICAgICAgIGxheWVyczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHR5cGU6ICdidWJibGUnXG4gICAgICAgICAgfVxuICAgICAgICBdLFxuICAgICAgICB0b29sdGlwTW9kZTogVG9vbHRpcE1vZGUuQ0xJQ0tcbiAgICAgIH0sXG4gICAgICBkYXRhc291cmNlOiBVU0VfQ1VSUkVOVF9SRVNVTFRTRVRcbiAgICB9LFxuICAgIG1hcmtlcm1hcDoge1xuICAgICAgdHlwZTogJ21hcCcsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgZml0OiB0cnVlLFxuICAgICAgICBsYXllcnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0eXBlOiAnbWFya2VyJ1xuICAgICAgICAgIH1cbiAgICAgICAgXSxcbiAgICAgICAgdG9vbHRpcE1vZGU6IFRvb2x0aXBNb2RlLkNMSUNLXG4gICAgICB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICB0YWJsZToge1xuICAgICAgdHlwZTogJ3RhYmxlJyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczoge30sXG4gICAgICBkYXRhc291cmNlOiBVU0VfQ1VSUkVOVF9SRVNVTFRTRVRcbiAgICB9LFxuICAgIGJhcmNoYXJ0OiB7XG4gICAgICB0eXBlOiAnY2hhcnQnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7IGdyYXBoOiB7IHR5cGU6IEdyYXBoVHlwZS5CQVIgfSB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICBoaXN0b2dyYW06IHtcbiAgICAgIHR5cGU6ICdjaGFydCcsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHsgZ3JhcGg6IHsgdHlwZTogR3JhcGhUeXBlLkhJU1RPR1JBTSB9IH0sXG4gICAgICBkYXRhc291cmNlOiBVU0VfQ1VSUkVOVF9SRVNVTFRTRVRcbiAgICB9LFxuICAgIGxpbmVjaGFydDoge1xuICAgICAgdHlwZTogJ2NoYXJ0JyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczogeyBncmFwaDogeyB0eXBlOiBHcmFwaFR5cGUuQ1VSVkUgfSB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICBwb2ludGNoYXJ0OiB7XG4gICAgICB0eXBlOiAnY2hhcnQnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7IGdyYXBoOiB7IHR5cGU6IEdyYXBoVHlwZS5QT0lOVFMgfSB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICBhcmVhY2hhcnQ6IHtcbiAgICAgIHR5cGU6ICdjaGFydCcsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHsgZ3JhcGg6IHsgdHlwZTogR3JhcGhUeXBlLkFSRUEgfSB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICBhcmNjaGFydDoge1xuICAgICAgdHlwZTogJ2NoYXJ0JyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczogeyBncmFwaDogeyB0eXBlOiBHcmFwaFR5cGUuQ0lSQ1VMQVIgfSB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICBkZXRhaWw6IHtcbiAgICAgIHR5cGU6ICdkZXRhaWwnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7fVxuICAgIH0sXG4gICAgaWZyYW1lOiB7XG4gICAgICB0eXBlOiAnaWZyYW1lJyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczoge31cbiAgICB9LFxuICAgIGdyYXBoOiB7XG4gICAgICB0eXBlOiAnZ3JhcGgnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7XG4gICAgICAgIG1pbmlNYXA6IHRydWVcbiAgICAgIH0sXG4gICAgICBkYXRhc291cmNlOiBVU0VfQ1VSUkVOVF9SRVNVTFRTRVRcbiAgICB9LFxuICAgIHRpbGU6IHtcbiAgICAgIHR5cGU6ICd0aWxlJyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczoge30sXG4gICAgICBkYXRhc291cmNlOiBVU0VfQ1VSUkVOVF9SRVNVTFRTRVRcbiAgICB9LFxuICAgIHRlbXBsYXRlOiB7XG4gICAgICB0eXBlOiAndGVtcGxhdGUnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7IGh0bWw6ICcnLCBjc3M6ICcnIH0sXG4gICAgICBkYXRhc291cmNlOiBVU0VfQ1VSUkVOVF9SRVNVTFRTRVRcbiAgICB9LFxuICAgIHZlZ2E6IHtcbiAgICAgIHR5cGU6ICd2ZWdhJyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczoge1xuICAgICAgICBwbGFjZURhdGE6IFsnZGF0YScsIDAsICd2YWx1ZXMnXSxcbiAgICAgICAgYmFzZVNwZWM6IHt9XG4gICAgICB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfVxuICB9KTtcblxuICBjdXJyZW50UmVzdWx0U2V0OiBzdHJpbmdbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmU6IFN0b3JlPGFueT4pIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnN0b3JlLnNlbGVjdChEYXNoYm9hcmRTZWxlY3RvcnMuZGVmYXVsdERhdGFzb3VyY2VOYW1lcykuc3Vic2NyaWJlKChyc05hbWUpID0+IHtcbiAgICAgICAgdGhpcy5jdXJyZW50UmVzdWx0U2V0ID0gcnNOYW1lO1xuICAgICAgfSlcbiAgICApO1xuXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KENvbmZpZ1NlbGVjdG9ycy5jYXRhbG9nKS5zdWJzY3JpYmUoKHdpZGdldHMpID0+IHtcbiAgICAgICAgd2lkZ2V0cy5mb3JFYWNoKCh3aWRnZXQpID0+IHRoaXMuc2V0KHdpZGdldC5pZCwgeyAuLi5KU09OLnBhcnNlKHdpZGdldC5jb250ZW50KSwgdGl0bGU6IHdpZGdldC5uYW1lIH0pKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldChpZDogc3RyaW5nLCBpbnN0YW5jaWF0ZSA9IHRydWUpOiBXaWRnZXRNYW5pZmVzdCB7XG4gICAgY29uc3QgbWFuaWZlc3QgPSB0aGlzLmluaXRpYWxNYW5pZmVzdHMkLmdldFZhbHVlKClbaWRdO1xuICAgIGlmICghbWFuaWZlc3QpIHtcbiAgICAgIHJldHVybiBtYW5pZmVzdDtcbiAgICB9XG4gICAgY29uc3QgY29weSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkobWFuaWZlc3QpKTtcbiAgICBpZiAoaW5zdGFuY2lhdGUgJiYgISFjb3B5ICYmIGNvcHkuZGF0YXNvdXJjZSA9PT0gVVNFX0NVUlJFTlRfUkVTVUxUU0VUKSB7XG4gICAgICBjb3B5LmRhdGFzb3VyY2UgPSBbXTtcbiAgICB9XG4gICAgcmV0dXJuIGNvcHk7XG4gIH1cblxuICBzZXQoaWQ6IHN0cmluZywgbWFuaWZlc3Q6IFdpZGdldE1hbmlmZXN0KTogdm9pZCB7XG4gICAgdGhpcy5pbml0aWFsTWFuaWZlc3RzJC5uZXh0KHsgLi4udGhpcy5pbml0aWFsTWFuaWZlc3RzJC5nZXRWYWx1ZSgpLCBbaWRdOiBtYW5pZmVzdCB9KTtcbiAgfVxuXG4gIHNldEFsbExheW91dHMobGF5b3V0OiBXaWRnZXRMYXlvdXQpOiB2b2lkIHtcbiAgICBPYmplY3Qua2V5cyh0aGlzLmluaXRpYWxNYW5pZmVzdHMkLmdldFZhbHVlKCkpLmZvckVhY2goXG4gICAgICAoa2V5KSA9PiAodGhpcy5pbml0aWFsTWFuaWZlc3RzJC5nZXRWYWx1ZSgpW2tleV0ubGF5b3V0ID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShsYXlvdXQpKSlcbiAgICApO1xuICB9XG5cbiAgaXNNb2RlbChpZDogc3RyaW5nKSB7XG4gICAgY29uc3QgbWFuaWZlc3QgPSB0aGlzLmdldChpZCwgZmFsc2UpO1xuICAgIHJldHVybiAhIW1hbmlmZXN0ICYmIG1hbmlmZXN0LmRhdGFzb3VyY2UgPT09IFVTRV9DVVJSRU5UX1JFU1VMVFNFVDtcbiAgfVxuXG4gIGRhdGFUcmFuc2ZlcigkZXZlbnQ6IERyYWdFdmVudCwgaWQ6IHN0cmluZykge1xuICAgIGlmICghISRldmVudCAmJiAhISRldmVudC5kYXRhVHJhbnNmZXIgJiYgISRldmVudC5kYXRhVHJhbnNmZXIudHlwZXMuaW5jbHVkZXMoTUlNRV9UWVBFX1dJREdFVF9NQU5JRkVTVCkpIHtcbiAgICAgIGNvbnN0IG1hbmlmZXN0ID0gdGhpcy5nZXQoaWQpO1xuXG4gICAgICAkZXZlbnQuZGF0YVRyYW5zZmVyLmRyb3BFZmZlY3QgPSAnY29weSc7XG4gICAgICAkZXZlbnQuZGF0YVRyYW5zZmVyLmVmZmVjdEFsbG93ZWQgPSAnY29weSc7XG5cbiAgICAgICRldmVudC5kYXRhVHJhbnNmZXIuc2V0RGF0YShNSU1FX1RZUEVfV0lER0VUX01BTklGRVNULCBKU09OLnN0cmluZ2lmeShtYW5pZmVzdCkpO1xuICAgICAgJGV2ZW50LmRhdGFUcmFuc2Zlci5zZXREYXRhKE1JTUVfVFlQRV9XSURHRVRfVFlQRSArIG1hbmlmZXN0LnR5cGUsICd1bnVzZWQnKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
295
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJveC1tYW5pZmVzdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvbGliL2NvcmUvdG9vbGJveC90b29sYm94LW1hbmlmZXN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ2xILE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUNoRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7QUFFbkUsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsdUJBQXVCLENBQUM7QUFLN0QsTUFBTSxPQUFPLHNCQUF1QixTQUFRLHdCQUF3QjtJQTRPbEUsWUFBb0IsS0FBaUI7UUFDbkMsS0FBSyxFQUFFLENBQUM7UUFEVSxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBM09yQyxzQkFBaUIsR0FBRyxJQUFJLGVBQWUsQ0FBb0M7WUFDekUsU0FBUyxFQUFFO2dCQUNULElBQUksRUFBRSxLQUFLO2dCQUNYLE1BQU0sRUFBRTtvQkFDTixDQUFDLEVBQUUsQ0FBQztvQkFDSixDQUFDLEVBQUUsQ0FBQztvQkFDSixNQUFNLEVBQUUsQ0FBQztvQkFDVCxLQUFLLEVBQUUsQ0FBQztpQkFDVDtnQkFDRCxPQUFPLEVBQUU7b0JBQ1As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O29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQzdDLFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxVQUFVLEVBQUU7Z0JBQ1YsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQzlDLFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxTQUFTLEVBQUU7Z0JBQ1QsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQzVDLFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFLEVBQUU7Z0JBQ2hELFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxNQUFNLEVBQUU7Z0JBQ04sSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFO2FBQ1o7WUFDRCxNQUFNLEVBQUU7Z0JBQ04sSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFO2FBQ1o7WUFDRCxLQUFLLEVBQUU7Z0JBQ0wsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxPQUFPLEVBQUUsSUFBSTtpQkFDZDtnQkFDRCxVQUFVLEVBQUUscUJBQXFCO2FBQ2xDO1lBQ0QsSUFBSSxFQUFFO2dCQUNKLElBQUksRUFBRSxNQUFNO2dCQUNaLE1BQU0sRUFBRTtvQkFDTixDQUFDLEVBQUUsQ0FBQztvQkFDSixDQUFDLEVBQUUsQ0FBQztvQkFDSixNQUFNLEVBQUUsQ0FBQztvQkFDVCxLQUFLLEVBQUUsQ0FBQztpQkFDVDtnQkFDRCxPQUFPLEVBQUUsRUFBRTtnQkFDWCxVQUFVLEVBQUUscUJBQXFCO2FBQ2xDO1lBQ0QsUUFBUSxFQUFFO2dCQUNSLElBQUksRUFBRSxVQUFVO2dCQUNoQixNQUFNLEVBQUU7b0JBQ04sQ0FBQyxFQUFFLENBQUM7b0JBQ0osQ0FBQyxFQUFFLENBQUM7b0JBQ0osTUFBTSxFQUFFLENBQUM7b0JBQ1QsS0FBSyxFQUFFLENBQUM7aUJBQ1Q7Z0JBQ0QsT0FBTyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFO2dCQUM5QixVQUFVLEVBQUUscUJBQXFCO2FBQ2xDO1lBQ0QsSUFBSSxFQUFFO2dCQUNKLElBQUksRUFBRSxNQUFNO2dCQUNaLE1BQU0sRUFBRTtvQkFDTixDQUFDLEVBQUUsQ0FBQztvQkFDSixDQUFDLEVBQUUsQ0FBQztvQkFDSixNQUFNLEVBQUUsQ0FBQztvQkFDVCxLQUFLLEVBQUUsQ0FBQztpQkFDVDtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsU0FBUyxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxRQUFRLENBQUM7b0JBQ2hDLFFBQVEsRUFBRSxFQUFFO2lCQUNiO2dCQUNELFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsSUFBSSxFQUFFLFVBQVU7Z0JBQ2hCLE1BQU0sRUFBRTtvQkFDTixDQUFDLEVBQUUsQ0FBQztvQkFDSixDQUFDLEVBQUUsQ0FBQztvQkFDSixNQUFNLEVBQUUsQ0FBQztvQkFDVCxLQUFLLEVBQUUsQ0FBQztpQkFDVDtnQkFDRCxPQUFPLEVBQUUsRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFO2dCQUNoRixVQUFVLEVBQUUscUJBQXFCO2FBQ2xDO1NBQ0YsQ0FBQyxDQUFDO1FBRUgscUJBQWdCLEdBQWEsRUFBRSxDQUFDO1FBSTlCLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUNwQixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2hGLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxNQUFNLENBQUM7UUFDakMsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUVGLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUNwQixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDL0QsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMxRyxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELEdBQUcsQ0FBQyxFQUFVLEVBQUUsV0FBVyxHQUFHLElBQUk7UUFDaEMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNkLE9BQU8sUUFBUSxDQUFDO1FBQ2xCLENBQUM7UUFDRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUNsRCxJQUFJLFdBQVcsSUFBSSxDQUFDLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUsscUJBQXFCLEVBQUUsQ0FBQztZQUN2RSxJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztRQUN2QixDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsR0FBRyxDQUFDLEVBQVUsRUFBRSxRQUF3QjtRQUN0QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ3hGLENBQUM7SUFFRCxhQUFhLENBQUMsTUFBb0I7UUFDaEMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQ3BELENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FDOUYsQ0FBQztJQUNKLENBQUM7SUFFRCxPQUFPLENBQUMsRUFBVTtRQUNoQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNyQyxPQUFPLENBQUMsQ0FBQyxRQUFRLElBQUksUUFBUSxDQUFDLFVBQVUsS0FBSyxxQkFBcUIsQ0FBQztJQUNyRSxDQUFDO0lBRUQsWUFBWSxDQUFDLE1BQWlCLEVBQUUsRUFBVTtRQUN4QyxJQUFJLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxZQUFZLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMseUJBQXlCLENBQUMsRUFBRSxDQUFDO1lBQ3hHLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7WUFFOUIsTUFBTSxDQUFDLFlBQVksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDO1lBQ3hDLE1BQU0sQ0FBQyxZQUFZLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQztZQUUzQyxNQUFNLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyx5QkFBeUIsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDakYsTUFBTSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMscUJBQXFCLEdBQUcsUUFBUSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUMvRSxDQUFDO0lBQ0gsQ0FBQzs4R0FoU1Usc0JBQXNCO2tIQUF0QixzQkFBc0IsY0FGckIsTUFBTTs7MkZBRVAsc0JBQXNCO2tCQUhsQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBNSU1FX1RZUEVfV0lER0VUX01BTklGRVNULCBNSU1FX1RZUEVfV0lER0VUX1RZUEUgfSBmcm9tICcuLi8uLi9kYXNoYm9hcmQvY29tcG9uZW50cy9kYXNoYm9hcmQuY29tcG9uZW50JztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbm5lckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2Rhc2hib2FyZC9jb21wb25lbnRzL3N1YnNjcmlwdGlvbm5lci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRGFzaGJvYXJkU2VsZWN0b3JzIH0gZnJvbSAnLi4vLi4vZGFzaGJvYXJkL3N0b3JlL2Rhc2hib2FyZC5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgV2lkZ2V0TGF5b3V0LCBXaWRnZXRNYW5pZmVzdCB9IGZyb20gJy4uL21vZGVsL21hbmlmZXN0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBHcmFwaFR5cGUgfSBmcm9tICcuLi9tb2RlbC93aWRnZXQtYWdncmVnYXRlZC1jaGFydC1tYW5pZmVzdC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgVG9vbHRpcE1vZGUgfSBmcm9tICcuLi9tb2RlbC93aWRnZXQtbWFwLW1hbmlmZXN0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBDb25maWdTZWxlY3RvcnMgfSBmcm9tICcuLi9zdG9yZS9jb25maWcvY29uZmlnLnNlbGVjdG9ycyc7XG5cbmV4cG9ydCBjb25zdCBVU0VfQ1VSUkVOVF9SRVNVTFRTRVQgPSAndXNlLWN1cnJlbnQtcmVzdWx0c2V0JztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgVG9vbGJveE1hbmlmZXN0U2VydmljZSBleHRlbmRzIFN1YnNjcmlwdGlvbm5lckRpcmVjdGl2ZSB7XG4gIGluaXRpYWxNYW5pZmVzdHMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDx7IFtrZXk6IHN0cmluZ106IFdpZGdldE1hbmlmZXN0IH0+KHtcbiAgICBzaW1wbGVtYXA6IHtcbiAgICAgIHR5cGU6ICdtYXAnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7XG4gICAgICAgIGZpdDogdHJ1ZSxcbiAgICAgICAgYXV0b21hdGljTGF5ZXJzOiB0cnVlLFxuICAgICAgICBsYXllcnM6IFtdLFxuICAgICAgICB0b29sdGlwTW9kZTogVG9vbHRpcE1vZGUuQ0xJQ0tcbiAgICAgIH0sXG4gICAgICBkYXRhc291cmNlOiBVU0VfQ1VSUkVOVF9SRVNVTFRTRVRcbiAgICB9LFxuICAgIGhlYXRtYXA6IHtcbiAgICAgIHR5cGU6ICdtYXAnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7XG4gICAgICAgIGZpdDogdHJ1ZSxcbiAgICAgICAgbGF5ZXJzOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgdHlwZTogJ2hlYXRtYXAnXG4gICAgICAgICAgfVxuICAgICAgICBdLFxuICAgICAgICB0b29sdGlwTW9kZTogVG9vbHRpcE1vZGUuQ0xJQ0tcbiAgICAgIH0sXG4gICAgICBkYXRhc291cmNlOiBVU0VfQ1VSUkVOVF9SRVNVTFRTRVRcbiAgICB9LFxuICAgIGJ1YmJsZW1hcDoge1xuICAgICAgdHlwZTogJ21hcCcsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgZml0OiB0cnVlLFxuICAgICAgICBsYXllcnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0eXBlOiAnYnViYmxlJ1xuICAgICAgICAgIH1cbiAgICAgICAgXSxcbiAgICAgICAgdG9vbHRpcE1vZGU6IFRvb2x0aXBNb2RlLkNMSUNLXG4gICAgICB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICBtYXJrZXJtYXA6IHtcbiAgICAgIHR5cGU6ICdtYXAnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7XG4gICAgICAgIGZpdDogdHJ1ZSxcbiAgICAgICAgbGF5ZXJzOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgdHlwZTogJ21hcmtlcidcbiAgICAgICAgICB9XG4gICAgICAgIF0sXG4gICAgICAgIHRvb2x0aXBNb2RlOiBUb29sdGlwTW9kZS5DTElDS1xuICAgICAgfSxcbiAgICAgIGRhdGFzb3VyY2U6IFVTRV9DVVJSRU5UX1JFU1VMVFNFVFxuICAgIH0sXG4gICAgdGFibGU6IHtcbiAgICAgIHR5cGU6ICd0YWJsZScsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHt9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICBiYXJjaGFydDoge1xuICAgICAgdHlwZTogJ2NoYXJ0JyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczogeyBncmFwaDogeyB0eXBlOiBHcmFwaFR5cGUuQkFSIH0gfSxcbiAgICAgIGRhdGFzb3VyY2U6IFVTRV9DVVJSRU5UX1JFU1VMVFNFVFxuICAgIH0sXG4gICAgaGlzdG9ncmFtOiB7XG4gICAgICB0eXBlOiAnY2hhcnQnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7IGdyYXBoOiB7IHR5cGU6IEdyYXBoVHlwZS5ISVNUT0dSQU0gfSB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICBsaW5lY2hhcnQ6IHtcbiAgICAgIHR5cGU6ICdjaGFydCcsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHsgZ3JhcGg6IHsgdHlwZTogR3JhcGhUeXBlLkNVUlZFIH0gfSxcbiAgICAgIGRhdGFzb3VyY2U6IFVTRV9DVVJSRU5UX1JFU1VMVFNFVFxuICAgIH0sXG4gICAgcG9pbnRjaGFydDoge1xuICAgICAgdHlwZTogJ2NoYXJ0JyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczogeyBncmFwaDogeyB0eXBlOiBHcmFwaFR5cGUuUE9JTlRTIH0gfSxcbiAgICAgIGRhdGFzb3VyY2U6IFVTRV9DVVJSRU5UX1JFU1VMVFNFVFxuICAgIH0sXG4gICAgYXJlYWNoYXJ0OiB7XG4gICAgICB0eXBlOiAnY2hhcnQnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7IGdyYXBoOiB7IHR5cGU6IEdyYXBoVHlwZS5BUkVBIH0gfSxcbiAgICAgIGRhdGFzb3VyY2U6IFVTRV9DVVJSRU5UX1JFU1VMVFNFVFxuICAgIH0sXG4gICAgYXJjY2hhcnQ6IHtcbiAgICAgIHR5cGU6ICdjaGFydCcsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHsgZ3JhcGg6IHsgdHlwZTogR3JhcGhUeXBlLkNJUkNVTEFSIH0gfSxcbiAgICAgIGRhdGFzb3VyY2U6IFVTRV9DVVJSRU5UX1JFU1VMVFNFVFxuICAgIH0sXG4gICAgZGV0YWlsOiB7XG4gICAgICB0eXBlOiAnZGV0YWlsJyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczoge31cbiAgICB9LFxuICAgIGlmcmFtZToge1xuICAgICAgdHlwZTogJ2lmcmFtZScsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHt9XG4gICAgfSxcbiAgICBncmFwaDoge1xuICAgICAgdHlwZTogJ2dyYXBoJyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczoge1xuICAgICAgICBtaW5pTWFwOiB0cnVlXG4gICAgICB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICB0aWxlOiB7XG4gICAgICB0eXBlOiAndGlsZScsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHt9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICB0ZW1wbGF0ZToge1xuICAgICAgdHlwZTogJ3RlbXBsYXRlJyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczogeyBodG1sOiAnJywgY3NzOiAnJyB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICB2ZWdhOiB7XG4gICAgICB0eXBlOiAndmVnYScsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgcGxhY2VEYXRhOiBbJ2RhdGEnLCAwLCAndmFsdWVzJ10sXG4gICAgICAgIGJhc2VTcGVjOiB7fVxuICAgICAgfSxcbiAgICAgIGRhdGFzb3VyY2U6IFVTRV9DVVJSRU5UX1JFU1VMVFNFVFxuICAgIH0sXG4gICAgYW5hbHl0aWM6IHtcbiAgICAgIHR5cGU6ICdhbmFseXRpYycsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHsgcHJpbWFyeVByb3A6ICcnLCBzZWNvbmRhcnlQcm9wOiAnJywgdmVydGljYWxQcm9wOiAnJywgdmFsdWVQcm9wOiAnJyB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfVxuICB9KTtcblxuICBjdXJyZW50UmVzdWx0U2V0OiBzdHJpbmdbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmU6IFN0b3JlPGFueT4pIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnN0b3JlLnNlbGVjdChEYXNoYm9hcmRTZWxlY3RvcnMuZGVmYXVsdERhdGFzb3VyY2VOYW1lcykuc3Vic2NyaWJlKChyc05hbWUpID0+IHtcbiAgICAgICAgdGhpcy5jdXJyZW50UmVzdWx0U2V0ID0gcnNOYW1lO1xuICAgICAgfSlcbiAgICApO1xuXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KENvbmZpZ1NlbGVjdG9ycy5jYXRhbG9nKS5zdWJzY3JpYmUoKHdpZGdldHMpID0+IHtcbiAgICAgICAgd2lkZ2V0cy5mb3JFYWNoKCh3aWRnZXQpID0+IHRoaXMuc2V0KHdpZGdldC5pZCwgeyAuLi5KU09OLnBhcnNlKHdpZGdldC5jb250ZW50KSwgdGl0bGU6IHdpZGdldC5uYW1lIH0pKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldChpZDogc3RyaW5nLCBpbnN0YW5jaWF0ZSA9IHRydWUpOiBXaWRnZXRNYW5pZmVzdCB7XG4gICAgY29uc3QgbWFuaWZlc3QgPSB0aGlzLmluaXRpYWxNYW5pZmVzdHMkLmdldFZhbHVlKClbaWRdO1xuICAgIGlmICghbWFuaWZlc3QpIHtcbiAgICAgIHJldHVybiBtYW5pZmVzdDtcbiAgICB9XG4gICAgY29uc3QgY29weSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkobWFuaWZlc3QpKTtcbiAgICBpZiAoaW5zdGFuY2lhdGUgJiYgISFjb3B5ICYmIGNvcHkuZGF0YXNvdXJjZSA9PT0gVVNFX0NVUlJFTlRfUkVTVUxUU0VUKSB7XG4gICAgICBjb3B5LmRhdGFzb3VyY2UgPSBbXTtcbiAgICB9XG4gICAgcmV0dXJuIGNvcHk7XG4gIH1cblxuICBzZXQoaWQ6IHN0cmluZywgbWFuaWZlc3Q6IFdpZGdldE1hbmlmZXN0KTogdm9pZCB7XG4gICAgdGhpcy5pbml0aWFsTWFuaWZlc3RzJC5uZXh0KHsgLi4udGhpcy5pbml0aWFsTWFuaWZlc3RzJC5nZXRWYWx1ZSgpLCBbaWRdOiBtYW5pZmVzdCB9KTtcbiAgfVxuXG4gIHNldEFsbExheW91dHMobGF5b3V0OiBXaWRnZXRMYXlvdXQpOiB2b2lkIHtcbiAgICBPYmplY3Qua2V5cyh0aGlzLmluaXRpYWxNYW5pZmVzdHMkLmdldFZhbHVlKCkpLmZvckVhY2goXG4gICAgICAoa2V5KSA9PiAodGhpcy5pbml0aWFsTWFuaWZlc3RzJC5nZXRWYWx1ZSgpW2tleV0ubGF5b3V0ID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShsYXlvdXQpKSlcbiAgICApO1xuICB9XG5cbiAgaXNNb2RlbChpZDogc3RyaW5nKSB7XG4gICAgY29uc3QgbWFuaWZlc3QgPSB0aGlzLmdldChpZCwgZmFsc2UpO1xuICAgIHJldHVybiAhIW1hbmlmZXN0ICYmIG1hbmlmZXN0LmRhdGFzb3VyY2UgPT09IFVTRV9DVVJSRU5UX1JFU1VMVFNFVDtcbiAgfVxuXG4gIGRhdGFUcmFuc2ZlcigkZXZlbnQ6IERyYWdFdmVudCwgaWQ6IHN0cmluZykge1xuICAgIGlmICghISRldmVudCAmJiAhISRldmVudC5kYXRhVHJhbnNmZXIgJiYgISRldmVudC5kYXRhVHJhbnNmZXIudHlwZXMuaW5jbHVkZXMoTUlNRV9UWVBFX1dJREdFVF9NQU5JRkVTVCkpIHtcbiAgICAgIGNvbnN0IG1hbmlmZXN0ID0gdGhpcy5nZXQoaWQpO1xuXG4gICAgICAkZXZlbnQuZGF0YVRyYW5zZmVyLmRyb3BFZmZlY3QgPSAnY29weSc7XG4gICAgICAkZXZlbnQuZGF0YVRyYW5zZmVyLmVmZmVjdEFsbG93ZWQgPSAnY29weSc7XG5cbiAgICAgICRldmVudC5kYXRhVHJhbnNmZXIuc2V0RGF0YShNSU1FX1RZUEVfV0lER0VUX01BTklGRVNULCBKU09OLnN0cmluZ2lmeShtYW5pZmVzdCkpO1xuICAgICAgJGV2ZW50LmRhdGFUcmFuc2Zlci5zZXREYXRhKE1JTUVfVFlQRV9XSURHRVRfVFlQRSArIG1hbmlmZXN0LnR5cGUsICd1bnVzZWQnKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==