@alauda-fe/common 1.4.23 → 1.4.24-beta-3

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 (147) hide show
  1. package/array-form-table/form/component.d.ts +1 -1
  2. package/core/abstract/base-nested-form-control.d.ts +1 -1
  3. package/core/pipes/minimum-format.pipe.d.ts +3 -3
  4. package/core/types/k8s/raw.d.ts +16 -0
  5. package/core/types/resource-definitions.d.ts +456 -4
  6. package/esm2022/abnormal-page/abnormal-page.component.mjs +1 -1
  7. package/esm2022/array-form-table/form/component.mjs +1 -1
  8. package/esm2022/array-form-table/key-value-form/component.mjs +1 -1
  9. package/esm2022/array-form-table/key-value-table/component.mjs +1 -1
  10. package/esm2022/array-form-table/string-array-form/component.mjs +1 -1
  11. package/esm2022/async-data/error-page/component.mjs +1 -1
  12. package/esm2022/async-data/page-state/component.mjs +1 -1
  13. package/esm2022/business/notification-disabled-container/component.mjs +1 -1
  14. package/esm2022/business/resource-select/exports/cluster-list/component.mjs +1 -1
  15. package/esm2022/business/resource-select/exports/cluster-selector/component.mjs +1 -1
  16. package/esm2022/business/resource-select/exports/icon/component.mjs +1 -1
  17. package/esm2022/business/resource-select/exports/mesh-group-selector/component.mjs +1 -1
  18. package/esm2022/business/resource-select/exports/namespace-list/component.mjs +1 -1
  19. package/esm2022/business/resource-select/exports/namespace-page/component.mjs +1 -1
  20. package/esm2022/business/resource-select/exports/namespace-selector/component.mjs +1 -1
  21. package/esm2022/business/resource-select/exports/project-list/component.mjs +1 -1
  22. package/esm2022/business/resource-select/exports/project-page/component.mjs +1 -1
  23. package/esm2022/business/resource-select/exports/project-selector/component.mjs +1 -1
  24. package/esm2022/business/resource-select/internals/data-grid/component.mjs +1 -1
  25. package/esm2022/business/resource-select/internals/meshgroup-list/component.mjs +1 -1
  26. package/esm2022/business/resource-select/internals/no-data/component.mjs +1 -1
  27. package/esm2022/business/resource-select/internals/resource-dashboard/component.mjs +1 -1
  28. package/esm2022/business/resource-select/internals/selector-popup/component.mjs +1 -1
  29. package/esm2022/chart/common/axis/axis-label.component.mjs +1 -1
  30. package/esm2022/chart/common/axis/x-axis-ticks.component.mjs +1 -1
  31. package/esm2022/chart/common/axis/x-axis.component.mjs +1 -1
  32. package/esm2022/chart/common/axis/x-plot-lines.component.mjs +1 -1
  33. package/esm2022/chart/common/axis/y-axis-ticks.component.mjs +1 -1
  34. package/esm2022/chart/common/axis/y-axis.component.mjs +1 -1
  35. package/esm2022/chart/common/axis/y-plot-lines.component.mjs +1 -1
  36. package/esm2022/chart/common/chart/chart.component.mjs +1 -1
  37. package/esm2022/chart/common/legend/legend.component.mjs +1 -1
  38. package/esm2022/chart/common/range-area/range-area.component.mjs +1 -1
  39. package/esm2022/chart/common/reference-area/reference-area.component.mjs +1 -1
  40. package/esm2022/chart/common/series/area-series.component.mjs +1 -1
  41. package/esm2022/chart/common/series/bar-path.component.mjs +1 -1
  42. package/esm2022/chart/common/series/bar-series.component.mjs +1 -1
  43. package/esm2022/chart/common/series/line-series.component.mjs +1 -1
  44. package/esm2022/chart/common/tooltip/tooltip.component.mjs +1 -1
  45. package/esm2022/chart/custom-template/dropdown-legend.mjs +1 -1
  46. package/esm2022/code/code-display-dialog/component.mjs +1 -1
  47. package/esm2022/code/k8s-yaml-display-dialog/component.mjs +1 -1
  48. package/esm2022/code/resource-yaml-display/component.mjs +1 -1
  49. package/esm2022/core/components/tree/node/component.mjs +1 -1
  50. package/esm2022/core/components/tree/tree/component.mjs +1 -1
  51. package/esm2022/core/directives/readonly-field.directive.mjs +1 -1
  52. package/esm2022/core/pipes/minimum-format.pipe.mjs +7 -6
  53. package/esm2022/core/types/k8s/raw.mjs +1 -1
  54. package/esm2022/core/types/resource-definitions.mjs +277 -51
  55. package/esm2022/core/utils/common.mjs +2 -2
  56. package/esm2022/custom-columns-setting/component.mjs +1 -1
  57. package/esm2022/disabled-container/disabled-container.component.mjs +1 -1
  58. package/esm2022/editable/editable.component.mjs +1 -1
  59. package/esm2022/editable-text/component.mjs +1 -1
  60. package/esm2022/exec/placeholder/component.mjs +1 -1
  61. package/esm2022/exec/terminal/component.mjs +1 -1
  62. package/esm2022/exec/terminal-group/component.mjs +1 -1
  63. package/esm2022/feature-gate-forbidden/component/component.mjs +1 -1
  64. package/esm2022/form/errors-mapper/errors-mapper-component/component.mjs +1 -1
  65. package/esm2022/form/errors-mapper/errors-mapper.directive.mjs +1 -1
  66. package/esm2022/form/labels-editor/component.mjs +1 -1
  67. package/esm2022/form/taints-editor/component.mjs +1 -1
  68. package/esm2022/form/upload-file/component.mjs +1 -1
  69. package/esm2022/form/validators/strong-password/strong-password-tooltip/component.mjs +1 -1
  70. package/esm2022/graph-canvas/components/graph-actions.component.mjs +1 -1
  71. package/esm2022/graph-canvas/components/graph-canvas.component.mjs +1 -1
  72. package/esm2022/graph-canvas/components/graph-link.component.mjs +1 -1
  73. package/esm2022/graph-canvas/components/graph-links.component.mjs +1 -1
  74. package/esm2022/grid-layout/components/grid/component.mjs +1 -1
  75. package/esm2022/grid-layout/components/grid-items/component.mjs +1 -1
  76. package/esm2022/help-document/component.mjs +1 -1
  77. package/esm2022/k8s-resource-list/footer/component.mjs +1 -1
  78. package/esm2022/k8s-shared/resource-mark/k8s-resource-mark.component.mjs +1 -1
  79. package/esm2022/k8s-shared/update-description-dialog/component.mjs +1 -1
  80. package/esm2022/k8s-shared/update-display-name-dialog/component.mjs +1 -1
  81. package/esm2022/k8s-shared/update-key-value-dialog/component.mjs +1 -1
  82. package/esm2022/lazy-component/lazy-load-component.mjs +1 -1
  83. package/esm2022/license/license-error/component.mjs +1 -1
  84. package/esm2022/list-display/component.mjs +1 -1
  85. package/esm2022/metric-chart/metric-chart.component.mjs +1 -1
  86. package/esm2022/metric-chart/metric-time-pick.mjs +1 -1
  87. package/esm2022/multi-search/action-input/component.mjs +1 -1
  88. package/esm2022/multi-search/form/component.mjs +1 -1
  89. package/esm2022/multi-search/multi-search-tags/component.mjs +1 -1
  90. package/esm2022/mutable/mosaic/mosaic.component.mjs +1 -1
  91. package/esm2022/notification/feedback-notification/component.mjs +1 -1
  92. package/esm2022/overview-banner/overview-banner.component.mjs +1 -1
  93. package/esm2022/page-guard/component/component.mjs +1 -1
  94. package/esm2022/page-scaffold/navigation/breadcrumb/breadcrumb.component.mjs +1 -1
  95. package/esm2022/page-scaffold/navigation/nav-menu/nav-item-li/nav-item-li.component.mjs +1 -1
  96. package/esm2022/page-scaffold/navigation/nav-menu/nav-item-ul/nav-item-ul.component.mjs +1 -1
  97. package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.component.mjs +1 -1
  98. package/esm2022/page-scaffold/page/notices/maintenance.component.mjs +1 -1
  99. package/esm2022/page-scaffold/page/notices/notice.component.mjs +1 -1
  100. package/esm2022/page-scaffold/page/page.component.mjs +1 -1
  101. package/esm2022/page-scaffold/page-header/account-menu/component/component.mjs +1 -1
  102. package/esm2022/page-scaffold/page-header/common-layout/namespace-select/component.mjs +1 -1
  103. package/esm2022/page-scaffold/page-header/common-layout/product-select/component.mjs +1 -1
  104. package/esm2022/page-scaffold/page-header/component.mjs +1 -1
  105. package/esm2022/page-scaffold/page-header/enterprise-support-status/component.mjs +1 -1
  106. package/esm2022/page-scaffold/page-header/header-notify/component/header-notify.component.mjs +1 -1
  107. package/esm2022/page-scaffold/page-header/header-notify/component/notification-list/notification-list.component.mjs +1 -1
  108. package/esm2022/page-scaffold/page-header/help-menu/component/component.mjs +1 -1
  109. package/esm2022/pie-derivative-chart/donut-status/component.mjs +1 -1
  110. package/esm2022/pie-derivative-chart/radial-bar/radial-bar-chart.component.mjs +1 -1
  111. package/esm2022/pod-status/component.mjs +1 -1
  112. package/esm2022/searchable-selector/component.mjs +1 -1
  113. package/esm2022/skeleton/item/component.mjs +1 -1
  114. package/esm2022/skeleton/nav-skeleton/component.mjs +1 -1
  115. package/esm2022/table/component.mjs +1 -1
  116. package/esm2022/view-chart/custom-template/dropdown-legend.mjs +1 -1
  117. package/esm2022/view-chart/legend/legend.component.mjs +1 -1
  118. package/esm2022/view-chart/view-chart.component.mjs +1 -1
  119. package/esm2022/view-zchart/custom-template/dropdown-legend.mjs +1 -1
  120. package/esm2022/view-zchart/legend/legend.component.mjs +1 -1
  121. package/esm2022/view-zchart/view-zchart.component.mjs +1 -1
  122. package/esm2022/widget/card-section/card-section.component.mjs +1 -1
  123. package/esm2022/widget/confirm-delete/confirm-delete.component.mjs +1 -1
  124. package/esm2022/widget/current-time/component.mjs +1 -1
  125. package/esm2022/widget/date-range-picker/component.mjs +1 -1
  126. package/esm2022/widget/field-set/column/component.mjs +2 -2
  127. package/esm2022/widget/field-set/group/component.mjs +1 -1
  128. package/esm2022/widget/field-set/item/component.mjs +1 -1
  129. package/esm2022/widget/foldable-block/component.mjs +1 -1
  130. package/esm2022/widget/foldable-item-in-table/component.mjs +1 -1
  131. package/esm2022/widget/loading-mask/loading-mask.component.mjs +1 -1
  132. package/esm2022/widget/password-input/component.mjs +1 -1
  133. package/esm2022/widget/relative-time/component.mjs +1 -1
  134. package/esm2022/widget/resource-label/component.mjs +1 -1
  135. package/esm2022/widget/resource-multi-select/component.mjs +1 -1
  136. package/esm2022/widget/search-panel/component.mjs +1 -1
  137. package/esm2022/widget/search-panel/search-item/component.mjs +1 -1
  138. package/esm2022/widget/status-icon/status-icon.component.mjs +1 -1
  139. package/esm2022/widget/tags-label/component.mjs +1 -1
  140. package/esm2022/widget/terminating-tag/component.mjs +1 -1
  141. package/esm2022/widget/text-ellipsis/component.mjs +1 -1
  142. package/esm2022/widget/text-with-url/component.mjs +1 -1
  143. package/esm2022/widget/zero-state/zero-state.component.mjs +1 -1
  144. package/esm2022/workload-status-icon/component.mjs +1 -1
  145. package/esm2022/xterm/xterm-terminal/xterm-terminal.component.mjs +1 -1
  146. package/esm2022/xterm/xterm.component.mjs +1 -1
  147. package/package.json +1 -1
@@ -1,40 +1,48 @@
1
1
  import { createResourceDefinitions } from '../../api/helpers';
2
- const CRD_GROUP = 'crd.alauda.io';
3
- const AIOPS_GROUP = 'aiops.alauda.io';
4
- const AUTH_GROUP = 'auth.alauda.io';
5
- const COREOS_OPERATOR_GROUP = 'operators.coreos.com';
6
- const APP_GROUP = 'app.alauda.io';
7
- const STORAGE_GROUP = 'storage.k8s.io';
8
- const TKE_PLATFORM_GROUP = 'platform.tkestack.io';
9
- const CLUSTER_API_GROUP = 'cluster.alauda.io';
2
+ export const CRD_API_GROUP = 'crd.alauda.io';
3
+ export const AIOPS_API_GROUP = 'aiops.alauda.io';
4
+ export const AUTH_API_GROUP = 'auth.alauda.io';
5
+ export const COREOS_OPERATOR_API_GROUP = 'operators.coreos.com';
6
+ export const APP_API_GROUP = 'app.alauda.io';
7
+ export const STORAGE_API_GROUP = 'storage.k8s.io';
8
+ export const TKE_PLATFORM_API_GROUP = 'platform.tkestack.io';
9
+ export const CLUSTER_API_GROUP = 'cluster.alauda.io';
10
10
  export const AIT_API_GROUP = 'ait.alauda.io';
11
- export const OAM_GROUP = 'core.oam.dev';
12
- export const ARGOCD_GROUP = 'argoproj.io';
11
+ export const MONITORING_API_GROUP = 'monitoring.coreos.com';
12
+ export const OAM_API_GROUP = 'core.oam.dev';
13
+ export const ARGOCD_API_GROUP = 'argoproj.io';
13
14
  export const MACHINE_API_GROUP = 'machine.alauda.io';
14
- export const VOLUME_SNAPSHOT_GROUP = 'snapshot.storage.k8s.io';
15
+ export const VOLUME_SNAPSHOT_API_GROUP = 'snapshot.storage.k8s.io';
15
16
  export const K8S_CORE_API_GROUP = 'core.kubernetes.io';
16
17
  export const K8S_APP_API_GROUP = 'app.k8s.io';
18
+ export const PRODUCT_API_GROUP = 'product.alauda.io';
19
+ export const INFRASTRUCTURE_API_GROUP = 'infrastructure.alauda.io';
20
+ export const VELERO_API_GROUP = 'velero.io';
21
+ export const RESOURCE_API_GROUP = 'resource.alauda.io';
22
+ export const ETCD_BACKUP_API_GROUP = 'etcdbackup.alauda.io';
23
+ export const CLUSTER_X_K8S_API_GROUP = 'infrastructure.cluster.x-k8s.io';
24
+ export const OPERATOR_API_GROUP = 'operator.alauda.io';
17
25
  // reference: http://confluence.alaudatech.com/pages/viewpage.action?pageId=39338225
18
26
  // FIXME: object destructuring will result `any` type here, why???
19
27
  const _ = createResourceDefinitions({
20
28
  ALAUDA_LOADBALANCER2: {
21
- apiGroup: CRD_GROUP,
29
+ apiGroup: CRD_API_GROUP,
22
30
  type: 'alaudaloadbalancer2',
23
31
  },
24
32
  ALB2: {
25
- apiGroup: CRD_GROUP,
33
+ apiGroup: CRD_API_GROUP,
26
34
  apiVersion: 'v2beta1',
27
35
  type: 'alaudaloadbalancer2',
28
36
  },
29
37
  HELM_REQUEST: {
30
38
  type: 'helmrequests',
31
- apiGroup: APP_GROUP,
39
+ apiGroup: APP_API_GROUP,
32
40
  apiVersion: 'v1alpha1',
33
41
  },
34
42
  // TODO: 只提供云边使用,后续容器平台需要升级到 v1
35
43
  HELM_REQUEST_V1: {
36
44
  type: 'helmrequests',
37
- apiGroup: APP_GROUP,
45
+ apiGroup: APP_API_GROUP,
38
46
  apiVersion: 'v1',
39
47
  },
40
48
  DEPLOYMENT: {
@@ -50,11 +58,11 @@ const _ = createResourceDefinitions({
50
58
  type: 'statefulsets',
51
59
  },
52
60
  FRONTEND: {
53
- apiGroup: CRD_GROUP,
61
+ apiGroup: CRD_API_GROUP,
54
62
  type: 'frontends',
55
63
  },
56
64
  RULE: {
57
- apiGroup: CRD_GROUP,
65
+ apiGroup: CRD_API_GROUP,
58
66
  type: 'rules',
59
67
  },
60
68
  POD: {
@@ -70,7 +78,7 @@ const _ = createResourceDefinitions({
70
78
  type: 'configmaps',
71
79
  },
72
80
  ALERT_TEMPLATE: {
73
- apiGroup: AIOPS_GROUP,
81
+ apiGroup: AIOPS_API_GROUP,
74
82
  apiVersion: 'v1beta1',
75
83
  type: 'alerttemplates',
76
84
  },
@@ -103,7 +111,7 @@ const _ = createResourceDefinitions({
103
111
  type: 'statefulsets',
104
112
  },
105
113
  DOMAIN: {
106
- apiGroup: CRD_GROUP,
114
+ apiGroup: CRD_API_GROUP,
107
115
  apiVersion: 'v2',
108
116
  type: 'domains',
109
117
  },
@@ -128,21 +136,21 @@ const _ = createResourceDefinitions({
128
136
  type: 'horizontalpodautoscalers',
129
137
  },
130
138
  LOG: {
131
- apiGroup: AIOPS_GROUP,
139
+ apiGroup: AIOPS_API_GROUP,
132
140
  apiVersion: 'v1beta1',
133
141
  type: 'logs',
134
142
  },
135
143
  PROJECT: {
136
- apiGroup: AUTH_GROUP,
144
+ apiGroup: AUTH_API_GROUP,
137
145
  type: 'projects',
138
146
  },
139
147
  PROMETHEUS_RULE: {
140
- apiGroup: 'monitoring.coreos.com',
148
+ apiGroup: MONITORING_API_GROUP,
141
149
  apiVersion: 'v1',
142
150
  type: 'prometheusrules',
143
151
  },
144
152
  ALERT_HISTORY: {
145
- apiGroup: AIOPS_GROUP,
153
+ apiGroup: AIOPS_API_GROUP,
146
154
  type: 'alerthistories',
147
155
  },
148
156
  SELF_SUBJECT_ACCESS_REVIEW: {
@@ -150,7 +158,7 @@ const _ = createResourceDefinitions({
150
158
  type: 'selfsubjectaccessreviews',
151
159
  },
152
160
  VIEW: {
153
- apiGroup: AUTH_GROUP,
161
+ apiGroup: AUTH_API_GROUP,
154
162
  type: 'views',
155
163
  },
156
164
  SERVICE: {
@@ -169,7 +177,7 @@ const _ = createResourceDefinitions({
169
177
  },
170
178
  ADVANCED_CRON_JOB: {
171
179
  type: 'advancedcronjobs',
172
- apiGroup: 'operator.alauda.io',
180
+ apiGroup: OPERATOR_API_GROUP,
173
181
  apiVersion: 'v1alpha1',
174
182
  },
175
183
  JOB: {
@@ -203,12 +211,12 @@ const _ = createResourceDefinitions({
203
211
  },
204
212
  CHART_REPO: {
205
213
  type: 'chartrepos',
206
- apiGroup: APP_GROUP,
214
+ apiGroup: APP_API_GROUP,
207
215
  apiVersion: 'v1beta1',
208
216
  },
209
217
  CHART: {
210
218
  type: 'charts',
211
- apiGroup: APP_GROUP,
219
+ apiGroup: APP_API_GROUP,
212
220
  apiVersion: 'v1alpha1',
213
221
  },
214
222
  NETWORK_POLICY: {
@@ -232,27 +240,27 @@ const _ = createResourceDefinitions({
232
240
  type: 'namespaceoverviews',
233
241
  },
234
242
  CSP: {
235
- apiGroup: 'product.alauda.io',
243
+ apiGroup: PRODUCT_API_GROUP,
236
244
  type: 'csps',
237
245
  },
238
246
  RESOURCE_QUOTA: {
239
247
  type: 'resourcequotas',
240
248
  },
241
249
  CLUSTER_NETWORK_POLICY: {
242
- apiGroup: CRD_GROUP,
250
+ apiGroup: CRD_API_GROUP,
243
251
  type: 'clusternetworkpolicies',
244
252
  },
245
253
  PROJECT_QUOTA: {
246
- apiGroup: 'auth.alauda.io',
254
+ apiGroup: AUTH_API_GROUP,
247
255
  apiVersion: 'v1',
248
256
  type: 'projectquotas',
249
257
  },
250
258
  TKE_CLUSTER: {
251
- apiGroup: TKE_PLATFORM_GROUP,
259
+ apiGroup: TKE_PLATFORM_API_GROUP,
252
260
  type: 'clusters',
253
261
  },
254
262
  TKE_MACHINE: {
255
- apiGroup: TKE_PLATFORM_GROUP,
263
+ apiGroup: TKE_PLATFORM_API_GROUP,
256
264
  type: 'machines',
257
265
  },
258
266
  MACHINE: {
@@ -266,7 +274,7 @@ const _ = createResourceDefinitions({
266
274
  type: 'nodegroups',
267
275
  },
268
276
  CLUSTERSERVICEVERSION: {
269
- apiGroup: COREOS_OPERATOR_GROUP,
277
+ apiGroup: COREOS_OPERATOR_API_GROUP,
270
278
  apiVersion: 'v1alpha1',
271
279
  type: 'clusterserviceversions',
272
280
  },
@@ -276,7 +284,7 @@ const _ = createResourceDefinitions({
276
284
  type: 'tenants',
277
285
  },
278
286
  SUBSCRIPTION: {
279
- apiGroup: COREOS_OPERATOR_GROUP,
287
+ apiGroup: COREOS_OPERATOR_API_GROUP,
280
288
  apiVersion: 'v1alpha1',
281
289
  type: 'subscriptions',
282
290
  },
@@ -297,16 +305,16 @@ const _ = createResourceDefinitions({
297
305
  },
298
306
  STORAGE_CLASS: {
299
307
  type: 'storageclasses',
300
- apiGroup: STORAGE_GROUP,
308
+ apiGroup: STORAGE_API_GROUP,
301
309
  },
302
310
  VOLUME_SNAPSHOT_CLASS: {
303
311
  type: 'volumesnapshotclasses',
304
- apiGroup: VOLUME_SNAPSHOT_GROUP,
312
+ apiGroup: VOLUME_SNAPSHOT_API_GROUP,
305
313
  apiVersion: 'v1',
306
314
  },
307
315
  PRODUCT_BASE: {
308
316
  type: 'productbases',
309
- apiGroup: 'product.alauda.io',
317
+ apiGroup: PRODUCT_API_GROUP,
310
318
  apiVersion: 'v1alpha1',
311
319
  },
312
320
  MODULE_INFO: {
@@ -355,33 +363,33 @@ const _ = createResourceDefinitions({
355
363
  },
356
364
  ACCESS_TOKEN_INFO: {
357
365
  type: 'accesstokeninfoes',
358
- apiGroup: AUTH_GROUP,
366
+ apiGroup: AUTH_API_GROUP,
359
367
  },
360
368
  FUNCTION_RESOURCE: {
361
369
  type: 'functionresources',
362
- apiGroup: AUTH_GROUP,
370
+ apiGroup: AUTH_API_GROUP,
363
371
  apiVersion: 'v1beta1',
364
372
  },
365
373
  USER_BINDING: {
366
374
  type: 'userbindings',
367
- apiGroup: AUTH_GROUP,
375
+ apiGroup: AUTH_API_GROUP,
368
376
  apiVersion: 'v1',
369
377
  },
370
378
  USER: {
371
379
  type: 'users',
372
- apiGroup: AUTH_GROUP,
380
+ apiGroup: AUTH_API_GROUP,
373
381
  },
374
382
  GROUP: {
375
383
  type: 'groups',
376
- apiGroup: AUTH_GROUP,
384
+ apiGroup: AUTH_API_GROUP,
377
385
  },
378
386
  PROJECT_MEMBER: {
379
387
  type: 'projectmembers',
380
- apiGroup: AUTH_GROUP,
388
+ apiGroup: AUTH_API_GROUP,
381
389
  },
382
390
  ROLE_TEMPLATE: {
383
391
  type: 'roletemplates',
384
- apiGroup: AUTH_GROUP,
392
+ apiGroup: AUTH_API_GROUP,
385
393
  apiVersion: 'v1beta1',
386
394
  },
387
395
  BATCH_ACTION: {
@@ -394,35 +402,253 @@ const _ = createResourceDefinitions({
394
402
  apiVersion: 'v1',
395
403
  },
396
404
  SERVICE_MONITOR: {
397
- apiGroup: 'monitoring.coreos.com',
405
+ apiGroup: MONITORING_API_GROUP,
398
406
  type: 'servicemonitors',
399
407
  apiVersion: 'v1',
400
408
  },
401
409
  OAM_APPLICATION: {
402
- apiGroup: OAM_GROUP,
410
+ apiGroup: OAM_API_GROUP,
403
411
  apiVersion: 'v1beta1',
404
412
  type: 'applications',
405
413
  },
406
414
  ARGOCD_APPLICATION_SET: {
407
- apiGroup: ARGOCD_GROUP,
415
+ apiGroup: ARGOCD_API_GROUP,
408
416
  apiVersion: 'v1alpha1',
409
417
  type: 'applicationsets',
410
418
  },
411
419
  ARGOCD_APPLICATION: {
412
- apiGroup: ARGOCD_GROUP,
420
+ apiGroup: ARGOCD_API_GROUP,
413
421
  apiVersion: 'v1alpha1',
414
422
  type: 'applications',
415
423
  },
416
424
  OPERATOR_VIEW: {
417
425
  type: 'operatorviews',
418
- apiGroup: APP_GROUP,
426
+ apiGroup: APP_API_GROUP,
419
427
  apiVersion: 'v1beta2',
420
428
  },
421
429
  MODULE_PLUGIN_VIEW: {
422
430
  type: 'modulepluginview',
423
- apiGroup: APP_GROUP,
431
+ apiGroup: APP_API_GROUP,
424
432
  apiVersion: 'v1beta2',
425
433
  },
434
+ RESOURCE_PATCH: {
435
+ apiGroup: OPERATOR_API_GROUP,
436
+ apiVersion: 'v1alpha1',
437
+ type: 'resourcepatches',
438
+ },
439
+ COMPONENT_PROBER: {
440
+ type: 'componentprobers',
441
+ apiGroup: AIT_API_GROUP,
442
+ apiVersion: 'v1alpha1',
443
+ },
444
+ INSPECTION: {
445
+ type: 'inspections',
446
+ apiGroup: AIT_API_GROUP,
447
+ apiVersion: 'v1alpha1',
448
+ },
449
+ INSPECTION_DETAILS: {
450
+ type: 'inspectiondetails',
451
+ apiGroup: AIT_API_GROUP,
452
+ apiVersion: 'v1alpha1',
453
+ },
454
+ INSPECTION_ITEMS: {
455
+ type: 'inspectionitems',
456
+ apiGroup: AIT_API_GROUP,
457
+ apiVersion: 'v1alpha1',
458
+ },
459
+ MESSAGE: {
460
+ apiGroup: AIT_API_GROUP,
461
+ apiVersion: 'v1alpha1',
462
+ type: 'messages',
463
+ },
464
+ MODULE_HEALTH: {
465
+ type: 'modulehealths',
466
+ apiGroup: AIT_API_GROUP,
467
+ apiVersion: 'v1alpha1',
468
+ },
469
+ MODULE_HEALTH_RECORD: {
470
+ type: 'modulehealthrecords',
471
+ apiGroup: AIT_API_GROUP,
472
+ apiVersion: 'v1alpha1',
473
+ },
474
+ AUDIT: {
475
+ apiGroup: AIOPS_API_GROUP,
476
+ type: 'audits',
477
+ },
478
+ LOG_POLICY: {
479
+ apiGroup: AIOPS_API_GROUP,
480
+ apiVersion: 'v1alpha1',
481
+ type: 'logpolicies',
482
+ },
483
+ FUNCTION_TEST: {
484
+ type: 'functiontests',
485
+ apiGroup: 'testing.alauda.io',
486
+ apiVersion: 'v1alpha1',
487
+ },
488
+ PROJECT_BINDING: {
489
+ type: 'projectbindings',
490
+ apiGroup: AUTH_API_GROUP,
491
+ },
492
+ PROBE: {
493
+ type: 'probes',
494
+ apiVersion: 'v1',
495
+ apiGroup: MONITORING_API_GROUP,
496
+ },
497
+ REPORT: {
498
+ type: 'reports',
499
+ apiGroup: 'metering.alauda.io',
500
+ apiVersion: 'v1beta1',
501
+ },
502
+ NAMESPACE_RESOURCE_RATIO: {
503
+ type: 'namespaceresourceratios',
504
+ apiGroup: RESOURCE_API_GROUP,
505
+ },
506
+ CUSTOM_RESOURCE_DEFINITION: {
507
+ type: 'customresourcedefinitions',
508
+ apiGroup: 'apiextensions.k8s.io',
509
+ apiVersion: 'v1beta1',
510
+ },
511
+ LICENSE: {
512
+ type: 'secrets',
513
+ },
514
+ RECORD: {
515
+ type: 'records',
516
+ apiGroup: 'metering.alauda.io',
517
+ apiVersion: 'v1beta1',
518
+ },
519
+ CSI_NODE: {
520
+ apiGroup: 'storage.k8s.io',
521
+ type: 'csinodes',
522
+ },
523
+ TSF: {
524
+ type: 'tsfproducts',
525
+ apiGroup: PRODUCT_API_GROUP,
526
+ apiVersion: 'v1beta1',
527
+ },
528
+ TDSQL: {
529
+ type: 'tdsqldeploys',
530
+ apiVersion: 'v1alpha1',
531
+ apiGroup: PRODUCT_API_GROUP,
532
+ },
533
+ PORTAL: {
534
+ type: '*',
535
+ apiGroup: PRODUCT_API_GROUP,
536
+ },
537
+ NAMESPACE_IMPORT: {
538
+ type: 'namespace-import',
539
+ apiGroup: 'namespace.alauda.io',
540
+ },
541
+ CLUSTER_ADDON_TYPE: {
542
+ apiGroup: TKE_PLATFORM_API_GROUP,
543
+ type: 'clusteraddontypes',
544
+ },
545
+ CLUSTER_CREDENTIAL: {
546
+ apiGroup: TKE_PLATFORM_API_GROUP,
547
+ type: 'clustercredentials',
548
+ },
549
+ CODING: {
550
+ type: 'codings',
551
+ apiGroup: PRODUCT_API_GROUP,
552
+ apiVersion: 'v1',
553
+ },
554
+ TI_MATRIX: {
555
+ type: 'timatrixes',
556
+ apiVersion: 'v1alpha1',
557
+ apiGroup: PRODUCT_API_GROUP,
558
+ },
559
+ SYSTEM_CONFIG: {
560
+ apiGroup: 'alauda.io',
561
+ apiVersion: 'v1',
562
+ type: 'systemconfigs',
563
+ },
564
+ CERTIFICATE: {
565
+ type: 'certificates',
566
+ apiGroup: 'cert-manager.io',
567
+ },
568
+ SECURITY_RULE: {
569
+ type: 'securityrules',
570
+ apiGroup: AIT_API_GROUP,
571
+ apiVersion: 'v1alpha1',
572
+ },
573
+ REGION: {
574
+ apiGroup: INFRASTRUCTURE_API_GROUP,
575
+ apiVersion: 'v1alpha1',
576
+ type: 'regions',
577
+ },
578
+ TOPOLVM_CLUSTER_V2: {
579
+ type: 'topolvmclusters',
580
+ apiGroup: 'topolvm.cybozu.com',
581
+ apiVersion: 'v2',
582
+ },
583
+ BUCKET: {
584
+ apiGroup: 'objectstorage.k8s.io',
585
+ apiVersion: 'v1alpha1',
586
+ type: 'buckets',
587
+ },
588
+ SCHEDULE: {
589
+ apiGroup: VELERO_API_GROUP,
590
+ type: 'schedules',
591
+ },
592
+ BACKUP_STORAGE_LOCATION: {
593
+ apiGroup: VELERO_API_GROUP,
594
+ type: 'backupstoragelocations',
595
+ },
596
+ BACKUP_STORAGE_LOCATION_REPO: {
597
+ apiGroup: 'ait.velero.io',
598
+ type: 'backupstoragelocationrepoes',
599
+ },
600
+ BACKUP: {
601
+ apiGroup: VELERO_API_GROUP,
602
+ type: 'backups',
603
+ },
604
+ DELETE_BACKUP_REQUEST: {
605
+ apiGroup: VELERO_API_GROUP,
606
+ type: 'deletebackuprequests',
607
+ },
608
+ ETCD_BACKUP_RECORD: {
609
+ apiGroup: ETCD_BACKUP_API_GROUP,
610
+ apiVersion: 'v1alpha1',
611
+ type: 'etcdbackuprecords',
612
+ },
613
+ RESTORE: {
614
+ apiGroup: VELERO_API_GROUP,
615
+ apiVersion: 'v1',
616
+ type: 'restores',
617
+ },
618
+ RAW_DEVICE: {
619
+ apiGroup: 'nativestor.alauda.io',
620
+ type: 'rawdevices',
621
+ },
622
+ APP_RELEASES: {
623
+ apiGroup: OPERATOR_API_GROUP,
624
+ apiVersion: 'v1alpha1',
625
+ type: 'appreleases',
626
+ },
627
+ NOTIFICATION_TEMPLATE: {
628
+ apiGroup: AIT_API_GROUP,
629
+ apiVersion: 'v1beta1',
630
+ type: 'notificationtemplates',
631
+ },
632
+ NOTIFICATION_GROUP: {
633
+ apiGroup: AIT_API_GROUP,
634
+ apiVersion: 'v1beta1',
635
+ type: 'notificationgroups',
636
+ },
637
+ NOTIFICATION: {
638
+ apiGroup: AIT_API_GROUP,
639
+ apiVersion: 'v1beta1',
640
+ type: 'notifications',
641
+ },
642
+ TUNNEL_CLUSTER: {
643
+ type: 'tunnelclusters',
644
+ apiVersion: 'v1beta1',
645
+ apiGroup: CLUSTER_X_K8S_API_GROUP,
646
+ },
647
+ K8S_CLUSTER: {
648
+ type: 'clusters',
649
+ apiGroup: 'cluster.x-k8s.io',
650
+ apiVersion: 'v1beta1',
651
+ },
426
652
  });
427
653
  export const COMMON_RESOURCE_DEFINITIONS = _.RESOURCE_DEFINITIONS;
428
654
  export const RESOURCE_TYPES = _.RESOURCE_TYPES;
@@ -439,4 +665,4 @@ export const ServiceTypeMeta = {
439
665
  apiVersion: getYamlApiVersion(RESOURCE_TYPES.SERVICE),
440
666
  kind: 'Service',
441
667
  };
442
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2UtZGVmaW5pdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvY29yZS90eXBlcy9yZXNvdXJjZS1kZWZpbml0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUk5RCxNQUFNLFNBQVMsR0FBRyxlQUFlLENBQUM7QUFDbEMsTUFBTSxXQUFXLEdBQUcsaUJBQWlCLENBQUM7QUFDdEMsTUFBTSxVQUFVLEdBQUcsZ0JBQWdCLENBQUM7QUFDcEMsTUFBTSxxQkFBcUIsR0FBRyxzQkFBc0IsQ0FBQztBQUNyRCxNQUFNLFNBQVMsR0FBRyxlQUFlLENBQUM7QUFDbEMsTUFBTSxhQUFhLEdBQUcsZ0JBQWdCLENBQUM7QUFDdkMsTUFBTSxrQkFBa0IsR0FBRyxzQkFBc0IsQ0FBQztBQUNsRCxNQUFNLGlCQUFpQixHQUFHLG1CQUFtQixDQUFDO0FBQzlDLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxlQUFlLENBQUM7QUFFN0MsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLGNBQWMsQ0FBQztBQUV4QyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsYUFBYSxDQUFDO0FBQzFDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLG1CQUFtQixDQUFDO0FBQ3JELE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLHlCQUF5QixDQUFDO0FBQy9ELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLG9CQUFvQixDQUFDO0FBQ3ZELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLFlBQVksQ0FBQztBQUU5QyxvRkFBb0Y7QUFDcEYsa0VBQWtFO0FBQ2xFLE1BQU0sQ0FBQyxHQUFHLHlCQUF5QixDQUFDO0lBQ2xDLG9CQUFvQixFQUFFO1FBQ3BCLFFBQVEsRUFBRSxTQUFTO1FBQ25CLElBQUksRUFBRSxxQkFBcUI7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LFFBQVEsRUFBRSxZQUFZO1FBQ3RCLFVBQVUsRUFBRSxVQUFVO1FBQ3RCLElBQUksRUFBRSxpQkFBaUI7S0FDeEI7SUFDRCxrQkFBa0IsRUFBRTtRQUNsQixRQUFRLEVBQUUsWUFBWTtRQUN0QixVQUFVLEVBQUUsVUFBVTtRQUN0QixJQUFJLEVBQUUsY0FBYztLQUNyQjtJQUNELGFBQWEsRUFBRTtRQUNiLElBQUksRUFBRSxlQUFlO1FBQ3JCLFFBQVEsRUFBRSxTQUFTO1FBQ25CLFVBQVUsRUFBRSxTQUFTO0tBQ3RCO0lBQ0Qsa0JBQWtCLEVBQUU7UUFDbEIsSUFBSSxFQUFFLGtCQUFrQjtRQUN4QixRQUFRLEVBQUUsU0FBUztRQUNuQixVQUFVLEVBQUUsU0FBUztLQUN0QjtDQUNGLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQztBQUNsRSxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxDQUFDLGNBQWMsQ0FBQztBQUMvQyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLENBQUMsaUJBQWlCLENBQUM7QUFJckQsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFhO0lBQ25DLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDO0lBQ3pELElBQUksRUFBRSxTQUFTO0NBQ2hCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxjQUFjLEdBQWE7SUFDdEMsVUFBVSxFQUFFLGlCQUFpQixDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUM7SUFDekQsSUFBSSxFQUFFLFNBQVM7Q0FDaEIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRztJQUM3QixVQUFVLEVBQUUsaUJBQWlCLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQztJQUNyRCxJQUFJLEVBQUUsU0FBUztDQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVSZXNvdXJjZURlZmluaXRpb25zIH0gZnJvbSAnLi4vLi4vYXBpL2hlbHBlcnMnO1xuXG5pbXBvcnQgeyBUeXBlTWV0YSB9IGZyb20gJy4vazhzL3B1YmxpYy1hcGknO1xuXG5jb25zdCBDUkRfR1JPVVAgPSAnY3JkLmFsYXVkYS5pbyc7XG5jb25zdCBBSU9QU19HUk9VUCA9ICdhaW9wcy5hbGF1ZGEuaW8nO1xuY29uc3QgQVVUSF9HUk9VUCA9ICdhdXRoLmFsYXVkYS5pbyc7XG5jb25zdCBDT1JFT1NfT1BFUkFUT1JfR1JPVVAgPSAnb3BlcmF0b3JzLmNvcmVvcy5jb20nO1xuY29uc3QgQVBQX0dST1VQID0gJ2FwcC5hbGF1ZGEuaW8nO1xuY29uc3QgU1RPUkFHRV9HUk9VUCA9ICdzdG9yYWdlLms4cy5pbyc7XG5jb25zdCBUS0VfUExBVEZPUk1fR1JPVVAgPSAncGxhdGZvcm0udGtlc3RhY2suaW8nO1xuY29uc3QgQ0xVU1RFUl9BUElfR1JPVVAgPSAnY2x1c3Rlci5hbGF1ZGEuaW8nO1xuZXhwb3J0IGNvbnN0IEFJVF9BUElfR1JPVVAgPSAnYWl0LmFsYXVkYS5pbyc7XG5cbmV4cG9ydCBjb25zdCBPQU1fR1JPVVAgPSAnY29yZS5vYW0uZGV2JztcblxuZXhwb3J0IGNvbnN0IEFSR09DRF9HUk9VUCA9ICdhcmdvcHJvai5pbyc7XG5leHBvcnQgY29uc3QgTUFDSElORV9BUElfR1JPVVAgPSAnbWFjaGluZS5hbGF1ZGEuaW8nO1xuZXhwb3J0IGNvbnN0IFZPTFVNRV9TTkFQU0hPVF9HUk9VUCA9ICdzbmFwc2hvdC5zdG9yYWdlLms4cy5pbyc7XG5leHBvcnQgY29uc3QgSzhTX0NPUkVfQVBJX0dST1VQID0gJ2NvcmUua3ViZXJuZXRlcy5pbyc7XG5leHBvcnQgY29uc3QgSzhTX0FQUF9BUElfR1JPVVAgPSAnYXBwLms4cy5pbyc7XG5cbi8vIHJlZmVyZW5jZTogaHR0cDovL2NvbmZsdWVuY2UuYWxhdWRhdGVjaC5jb20vcGFnZXMvdmlld3BhZ2UuYWN0aW9uP3BhZ2VJZD0zOTMzODIyNVxuLy8gRklYTUU6IG9iamVjdCBkZXN0cnVjdHVyaW5nIHdpbGwgcmVzdWx0IGBhbnlgIHR5cGUgaGVyZSwgd2h5Pz8/XG5jb25zdCBfID0gY3JlYXRlUmVzb3VyY2VEZWZpbml0aW9ucyh7XG4gIEFMQVVEQV9MT0FEQkFMQU5DRVIyOiB7XG4gICAgYXBpR3JvdXA6IENSRF9HUk9VUCxcbiAgICB0eXBlOiAnYWxhdWRhbG9hZGJhbGFuY2VyMicsXG4gIH0sXG4gIEFMQjI6IHtcbiAgICBhcGlHcm91cDogQ1JEX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MmJldGExJyxcbiAgICB0eXBlOiAnYWxhdWRhbG9hZGJhbGFuY2VyMicsXG4gIH0sXG4gIEhFTE1fUkVRVUVTVDoge1xuICAgIHR5cGU6ICdoZWxtcmVxdWVzdHMnLFxuICAgIGFwaUdyb3VwOiBBUFBfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgfSxcbiAgLy8gVE9ETzog5Y+q5o+Q5L6b5LqR6L655L2/55So77yM5ZCO57ut5a655Zmo5bmz5Y+w6ZyA6KaB5Y2H57qn5YiwIHYxXG4gIEhFTE1fUkVRVUVTVF9WMToge1xuICAgIHR5cGU6ICdoZWxtcmVxdWVzdHMnLFxuICAgIGFwaUdyb3VwOiBBUFBfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgfSxcbiAgREVQTE9ZTUVOVDoge1xuICAgIGFwaUdyb3VwOiAnYXBwcycsXG4gICAgdHlwZTogJ2RlcGxveW1lbnRzJyxcbiAgfSxcbiAgREFFTU9OU0VUOiB7XG4gICAgYXBpR3JvdXA6ICdhcHBzJyxcbiAgICB0eXBlOiAnZGFlbW9uc2V0cycsXG4gIH0sXG4gIFNUQVRFRlVMU0VUOiB7XG4gICAgYXBpR3JvdXA6ICdhcHBzJyxcbiAgICB0eXBlOiAnc3RhdGVmdWxzZXRzJyxcbiAgfSxcbiAgRlJPTlRFTkQ6IHtcbiAgICBhcGlHcm91cDogQ1JEX0dST1VQLFxuICAgIHR5cGU6ICdmcm9udGVuZHMnLFxuICB9LFxuICBSVUxFOiB7XG4gICAgYXBpR3JvdXA6IENSRF9HUk9VUCxcbiAgICB0eXBlOiAncnVsZXMnLFxuICB9LFxuICBQT0Q6IHtcbiAgICB0eXBlOiAncG9kcycsXG4gIH0sXG4gIFBPRFNfRVhFQzoge1xuICAgIHR5cGU6ICdwb2RzL2V4ZWMnLFxuICB9LFxuICBQT0RTX1JPT1RfRVhFQzoge1xuICAgIHR5cGU6ICdwb2RzL3Jvb3QtZXhlYycsXG4gIH0sXG4gIENPTkZJR19NQVA6IHtcbiAgICB0eXBlOiAnY29uZmlnbWFwcycsXG4gIH0sXG4gIEFMRVJUX1RFTVBMQVRFOiB7XG4gICAgYXBpR3JvdXA6IEFJT1BTX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgICB0eXBlOiAnYWxlcnR0ZW1wbGF0ZXMnLFxuICB9LFxuICBBUFBMSUNBVElPTjoge1xuICAgIGFwaUdyb3VwOiBLOFNfQVBQX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFiZXRhMScsXG4gICAgdHlwZTogJ2FwcGxpY2F0aW9ucycsXG4gIH0sXG4gIEFQUExJQ0FUSU9OX0hJU1RPUlk6IHtcbiAgICBhcGlHcm91cDogSzhTX0FQUF9BUElfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYmV0YTEnLFxuICAgIHR5cGU6ICdhcHBsaWNhdGlvbmhpc3RvcmllcycsXG4gIH0sXG4gIENMVVNURVI6IHtcbiAgICBhcGlHcm91cDogJ2NsdXN0ZXJyZWdpc3RyeS5rOHMuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ2NsdXN0ZXJzJyxcbiAgfSxcbiAgQ0xVU1RFUl9WSUVXOiB7XG4gICAgYXBpR3JvdXA6ICdjbHVzdGVyLmFsYXVkYS5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgICB0eXBlOiAnY2x1c3RlcnZpZXdzJyxcbiAgfSxcbiAgREFFTU9OX1NFVDoge1xuICAgIGFwaUdyb3VwOiAnYXBwcycsXG4gICAgdHlwZTogJ2RhZW1vbnNldHMnLFxuICB9LFxuICBTVEFURUZVTF9TRVQ6IHtcbiAgICBhcGlHcm91cDogJ2FwcHMnLFxuICAgIHR5cGU6ICdzdGF0ZWZ1bHNldHMnLFxuICB9LFxuICBET01BSU46IHtcbiAgICBhcGlHcm91cDogQ1JEX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MicsXG4gICAgdHlwZTogJ2RvbWFpbnMnLFxuICB9LFxuICBGRUFUVVJFOiB7XG4gICAgYXBpR3JvdXA6ICdpbmZyYXN0cnVjdHVyZS5hbGF1ZGEuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ2ZlYXR1cmVzJyxcbiAgfSxcbiAgQUxBVURBX0ZFQVRVUkVfR0FURToge1xuICAgIGFwaUdyb3VwOiAnYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICAgIHR5cGU6ICdhbGF1ZGFmZWF0dXJlZ2F0ZXMnLFxuICB9LFxuICBDTFVTVEVSX0FMQVVEQV9GRUFUVVJFX0dBVEU6IHtcbiAgICBhcGlHcm91cDogJ2FsYXVkYS5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgICB0eXBlOiAnY2x1c3RlcmFsYXVkYWZlYXR1cmVnYXRlcycsXG4gIH0sXG4gIEhPUklaT05UQUxfUE9EX0FVVE9TQ0FMRVI6IHtcbiAgICBhcGlHcm91cDogJ2F1dG9zY2FsaW5nJyxcbiAgICBhcGlWZXJzaW9uOiAndjInLFxuICAgIHR5cGU6ICdob3Jpem9udGFscG9kYXV0b3NjYWxlcnMnLFxuICB9LFxuICBMT0c6IHtcbiAgICBhcGlHcm91cDogQUlPUFNfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYmV0YTEnLFxuICAgIHR5cGU6ICdsb2dzJyxcbiAgfSxcbiAgUFJPSkVDVDoge1xuICAgIGFwaUdyb3VwOiBBVVRIX0dST1VQLFxuICAgIHR5cGU6ICdwcm9qZWN0cycsXG4gIH0sXG4gIFBST01FVEhFVVNfUlVMRToge1xuICAgIGFwaUdyb3VwOiAnbW9uaXRvcmluZy5jb3Jlb3MuY29tJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICAgIHR5cGU6ICdwcm9tZXRoZXVzcnVsZXMnLFxuICB9LFxuICBBTEVSVF9ISVNUT1JZOiB7XG4gICAgYXBpR3JvdXA6IEFJT1BTX0dST1VQLFxuICAgIHR5cGU6ICdhbGVydGhpc3RvcmllcycsXG4gIH0sXG4gIFNFTEZfU1VCSkVDVF9BQ0NFU1NfUkVWSUVXOiB7XG4gICAgYXBpR3JvdXA6ICdhdXRob3JpemF0aW9uLms4cy5pbycsXG4gICAgdHlwZTogJ3NlbGZzdWJqZWN0YWNjZXNzcmV2aWV3cycsXG4gIH0sXG4gIFZJRVc6IHtcbiAgICBhcGlHcm91cDogQVVUSF9HUk9VUCxcbiAgICB0eXBlOiAndmlld3MnLFxuICB9LFxuICBTRVJWSUNFOiB7XG4gICAgdHlwZTogJ3NlcnZpY2VzJyxcbiAgfSxcbiAgTElNSVRfUkFOR0U6IHtcbiAgICB0eXBlOiAnbGltaXRyYW5nZXMnLFxuICB9LFxuICBTRUNSRVQ6IHtcbiAgICB0eXBlOiAnc2VjcmV0cycsXG4gIH0sXG4gIENST05fSk9COiB7XG4gICAgYXBpR3JvdXA6ICdiYXRjaCcsXG4gICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgICB0eXBlOiAnY3JvbmpvYnMnLFxuICB9LFxuICBBRFZBTkNFRF9DUk9OX0pPQjoge1xuICAgIHR5cGU6ICdhZHZhbmNlZGNyb25qb2JzJyxcbiAgICBhcGlHcm91cDogJ29wZXJhdG9yLmFsYXVkYS5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgfSxcbiAgSk9COiB7XG4gICAgYXBpR3JvdXA6ICdiYXRjaCcsXG4gICAgdHlwZTogJ2pvYnMnLFxuICB9LFxuICBJTkdSRVNTOiB7XG4gICAgYXBpR3JvdXA6ICduZXR3b3JraW5nLms4cy5pbycsXG4gICAgdHlwZTogJ2luZ3Jlc3NlcycsXG4gIH0sXG4gIFBFUlNJU1RFTlRfVk9MVU1FX0NMQUlNOiB7XG4gICAgdHlwZTogJ3BlcnNpc3RlbnR2b2x1bWVjbGFpbXMnLFxuICB9LFxuICBOQU1FU1BBQ0U6IHtcbiAgICB0eXBlOiAnbmFtZXNwYWNlcycsXG4gIH0sXG4gIE5PREU6IHtcbiAgICB0eXBlOiAnbm9kZXMnLFxuICB9LFxuICBOT0RFX01FVFJJQ1M6IHtcbiAgICBhcGlHcm91cDogJ21ldHJpY3MuazhzLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFiZXRhMScsXG4gICAgdHlwZTogJ25vZGVzJyxcbiAgfSxcbiAgUFY6IHtcbiAgICB0eXBlOiAncGVyc2lzdGVudHZvbHVtZXMnLFxuICB9LFxuICBDUkQ6IHtcbiAgICBhcGlHcm91cDogJ2FwaWV4dGVuc2lvbnMuazhzLmlvJyxcbiAgICB0eXBlOiAnY3VzdG9tcmVzb3VyY2VkZWZpbml0aW9ucycsXG4gIH0sXG4gIENIQVJUX1JFUE86IHtcbiAgICB0eXBlOiAnY2hhcnRyZXBvcycsXG4gICAgYXBpR3JvdXA6IEFQUF9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFiZXRhMScsXG4gIH0sXG4gIENIQVJUOiB7XG4gICAgdHlwZTogJ2NoYXJ0cycsXG4gICAgYXBpR3JvdXA6IEFQUF9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICB9LFxuICBORVRXT1JLX1BPTElDWToge1xuICAgIGFwaUdyb3VwOiAnbmV0d29ya2luZy5rOHMuaW8nLFxuICAgIHR5cGU6ICduZXR3b3JrcG9saWNpZXMnLFxuICB9LFxuICBTRVJWSUNFX0FDQ09VTlQ6IHtcbiAgICB0eXBlOiAnc2VydmljZWFjY291bnRzJyxcbiAgfSxcbiAgUkVQTElDQV9TRVQ6IHtcbiAgICBhcGlHcm91cDogJ2FwcHMnLFxuICAgIHR5cGU6ICdyZXBsaWNhc2V0cycsXG4gIH0sXG4gIFBPRF9TRUNVUklUWV9QT0xJQ1k6IHtcbiAgICBhcGlHcm91cDogJ3BvbGljeScsXG4gICAgYXBpVmVyc2lvbjogJ3YxYmV0YTEnLFxuICAgIHR5cGU6ICdwb2RzZWN1cml0eXBvbGljaWVzJyxcbiAgfSxcbiAgTkFNRVNQQUNFX09WRVJWSUVXOiB7XG4gICAgYXBpR3JvdXA6ICdrOHMuaW8nLFxuICAgIHR5cGU6ICduYW1lc3BhY2VvdmVydmlld3MnLFxuICB9LFxuICBDU1A6IHtcbiAgICBhcGlHcm91cDogJ3Byb2R1Y3QuYWxhdWRhLmlvJyxcbiAgICB0eXBlOiAnY3NwcycsXG4gIH0sXG4gIFJFU09VUkNFX1FVT1RBOiB7XG4gICAgdHlwZTogJ3Jlc291cmNlcXVvdGFzJyxcbiAgfSxcbiAgQ0xVU1RFUl9ORVRXT1JLX1BPTElDWToge1xuICAgIGFwaUdyb3VwOiBDUkRfR1JPVVAsXG4gICAgdHlwZTogJ2NsdXN0ZXJuZXR3b3JrcG9saWNpZXMnLFxuICB9LFxuICBQUk9KRUNUX1FVT1RBOiB7XG4gICAgYXBpR3JvdXA6ICdhdXRoLmFsYXVkYS5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgICB0eXBlOiAncHJvamVjdHF1b3RhcycsXG4gIH0sXG4gIFRLRV9DTFVTVEVSOiB7XG4gICAgYXBpR3JvdXA6IFRLRV9QTEFURk9STV9HUk9VUCxcbiAgICB0eXBlOiAnY2x1c3RlcnMnLFxuICB9LFxuICBUS0VfTUFDSElORToge1xuICAgIGFwaUdyb3VwOiBUS0VfUExBVEZPUk1fR1JPVVAsXG4gICAgdHlwZTogJ21hY2hpbmVzJyxcbiAgfSxcbiAgTUFDSElORToge1xuICAgIGFwaUdyb3VwOiBNQUNISU5FX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFiZXRhMScsXG4gICAgdHlwZTogJ21hY2hpbmVzJyxcbiAgfSxcbiAgTk9ERV9HUk9VUDoge1xuICAgIGFwaUdyb3VwOiAnc2VjdXJpdHkuYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFiZXRhMScsXG4gICAgdHlwZTogJ25vZGVncm91cHMnLFxuICB9LFxuICBDTFVTVEVSU0VSVklDRVZFUlNJT046IHtcbiAgICBhcGlHcm91cDogQ09SRU9TX09QRVJBVE9SX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ2NsdXN0ZXJzZXJ2aWNldmVyc2lvbnMnLFxuICB9LFxuICBURU5BTlQ6IHtcbiAgICBhcGlHcm91cDogJ21pbmlvLm1pbi5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YyJyxcbiAgICB0eXBlOiAndGVuYW50cycsXG4gIH0sXG4gIFNVQlNDUklQVElPTjoge1xuICAgIGFwaUdyb3VwOiBDT1JFT1NfT1BFUkFUT1JfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgICB0eXBlOiAnc3Vic2NyaXB0aW9ucycsXG4gIH0sXG4gIFBBQ0tBR0VfTUFOSUZFU1Q6IHtcbiAgICBhcGlHcm91cDogJ3BhY2thZ2VzLm9wZXJhdG9ycy5jb3Jlb3MuY29tJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICAgIHR5cGU6ICdwYWNrYWdlbWFuaWZlc3RzJyxcbiAgfSxcbiAgQlVDS0VUX0NMQVNTOiB7XG4gICAgYXBpR3JvdXA6ICdvYmplY3RzdG9yYWdlLms4cy5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgICB0eXBlOiAnYnVja2V0Y2xhc3NlcycsXG4gIH0sXG4gIFBST0RVQ1RfQ09ORklHOiB7XG4gICAgdHlwZTogJ3Byb2R1Y3Rjb25maWdzJyxcbiAgICBhcGlHcm91cDogJ2FsYXVkYS5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgfSxcbiAgU1RPUkFHRV9DTEFTUzoge1xuICAgIHR5cGU6ICdzdG9yYWdlY2xhc3NlcycsXG4gICAgYXBpR3JvdXA6IFNUT1JBR0VfR1JPVVAsXG4gIH0sXG4gIFZPTFVNRV9TTkFQU0hPVF9DTEFTUzoge1xuICAgIHR5cGU6ICd2b2x1bWVzbmFwc2hvdGNsYXNzZXMnLFxuICAgIGFwaUdyb3VwOiBWT0xVTUVfU05BUFNIT1RfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgfSxcbiAgUFJPRFVDVF9CQVNFOiB7XG4gICAgdHlwZTogJ3Byb2R1Y3RiYXNlcycsXG4gICAgYXBpR3JvdXA6ICdwcm9kdWN0LmFsYXVkYS5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgfSxcbiAgTU9EVUxFX0lORk86IHtcbiAgICB0eXBlOiAnbW9kdWxlaW5mb2VzJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIGFwaUdyb3VwOiBDTFVTVEVSX0FQSV9HUk9VUCxcbiAgfSxcbiAgTU9EVUxFX0NPTkZJRzoge1xuICAgIGFwaUdyb3VwOiBDTFVTVEVSX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIHR5cGU6ICdtb2R1bGVjb25maWdzJyxcbiAgfSxcbiAgTU9EVUxFX1BMVUdJTjoge1xuICAgIGFwaUdyb3VwOiBDTFVTVEVSX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIHR5cGU6ICdtb2R1bGVwbHVnaW5zJyxcbiAgfSxcbiAgUFJPRFVDVF9FTlRSWToge1xuICAgIHR5cGU6ICdwcm9kdWN0ZW50cmllcycsXG4gICAgYXBpR3JvdXA6ICdhbGF1ZGEuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gIH0sXG4gIFBST0RVQ1RfRE9DU19FTlRSWToge1xuICAgIHR5cGU6ICdwcm9kdWN0ZG9jc2VudHJpZXMnLFxuICAgIGFwaUdyb3VwOiAnYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICB9LFxuICBTRVJWSUNFTUVTSF9HUk9VUDoge1xuICAgIGFwaUdyb3VwOiAnYXNtLmFsYXVkYS5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgICB0eXBlOiAnc2VydmljZW1lc2hncm91cHMnLFxuICB9LFxuICBDTFVTVEVSX01PRFVMRToge1xuICAgIHR5cGU6ICdjbHVzdGVybW9kdWxlcycsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgICBhcGlHcm91cDogQ0xVU1RFUl9BUElfR1JPVVAsXG4gIH0sXG4gIFVTRVJfU0VDVVJJVFlfUE9MSUNZOiB7XG4gICAgdHlwZTogJ3VzZXJwb2xpY2llcycsXG4gICAgYXBpR3JvdXA6ICdzZWN1cml0eS5hbGF1ZGEuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gIH0sXG4gIENPTk5FQ1RPUjoge1xuICAgIHR5cGU6ICdjb25uZWN0b3JzJyxcbiAgICBhcGlHcm91cDogJ2RleC5jb3Jlb3MuY29tJyxcbiAgfSxcbiAgQUNDRVNTX1RPS0VOX0lORk86IHtcbiAgICB0eXBlOiAnYWNjZXNzdG9rZW5pbmZvZXMnLFxuICAgIGFwaUdyb3VwOiBBVVRIX0dST1VQLFxuICB9LFxuICBGVU5DVElPTl9SRVNPVVJDRToge1xuICAgIHR5cGU6ICdmdW5jdGlvbnJlc291cmNlcycsXG4gICAgYXBpR3JvdXA6IEFVVEhfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYmV0YTEnLFxuICB9LFxuICBVU0VSX0JJTkRJTkc6IHtcbiAgICB0eXBlOiAndXNlcmJpbmRpbmdzJyxcbiAgICBhcGlHcm91cDogQVVUSF9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICB9LFxuICBVU0VSOiB7XG4gICAgdHlwZTogJ3VzZXJzJyxcbiAgICBhcGlHcm91cDogQVVUSF9HUk9VUCxcbiAgfSxcbiAgR1JPVVA6IHtcbiAgICB0eXBlOiAnZ3JvdXBzJyxcbiAgICBhcGlHcm91cDogQVVUSF9HUk9VUCxcbiAgfSxcbiAgUFJPSkVDVF9NRU1CRVI6IHtcbiAgICB0eXBlOiAncHJvamVjdG1lbWJlcnMnLFxuICAgIGFwaUdyb3VwOiBBVVRIX0dST1VQLFxuICB9LFxuICBST0xFX1RFTVBMQVRFOiB7XG4gICAgdHlwZTogJ3JvbGV0ZW1wbGF0ZXMnLFxuICAgIGFwaUdyb3VwOiBBVVRIX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgfSxcbiAgQkFUQ0hfQUNUSU9OOiB7XG4gICAgYXBpR3JvdXA6ICdiYXRjaC5hbGF1ZGEuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ2JhdGNoYWN0aW9ucycsXG4gIH0sXG4gIEVWRU5UOiB7XG4gICAgdHlwZTogJ2V2ZW50cycsXG4gICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgfSxcbiAgU0VSVklDRV9NT05JVE9SOiB7XG4gICAgYXBpR3JvdXA6ICdtb25pdG9yaW5nLmNvcmVvcy5jb20nLFxuICAgIHR5cGU6ICdzZXJ2aWNlbW9uaXRvcnMnLFxuICAgIGFwaVZlcnNpb246ICd2MScsXG4gIH0sXG4gIE9BTV9BUFBMSUNBVElPTjoge1xuICAgIGFwaUdyb3VwOiBPQU1fR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYmV0YTEnLFxuICAgIHR5cGU6ICdhcHBsaWNhdGlvbnMnLFxuICB9LFxuICBBUkdPQ0RfQVBQTElDQVRJT05fU0VUOiB7XG4gICAgYXBpR3JvdXA6IEFSR09DRF9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIHR5cGU6ICdhcHBsaWNhdGlvbnNldHMnLFxuICB9LFxuICBBUkdPQ0RfQVBQTElDQVRJT046IHtcbiAgICBhcGlHcm91cDogQVJHT0NEX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ2FwcGxpY2F0aW9ucycsXG4gIH0sXG4gIE9QRVJBVE9SX1ZJRVc6IHtcbiAgICB0eXBlOiAnb3BlcmF0b3J2aWV3cycsXG4gICAgYXBpR3JvdXA6IEFQUF9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFiZXRhMicsXG4gIH0sXG4gIE1PRFVMRV9QTFVHSU5fVklFVzoge1xuICAgIHR5cGU6ICdtb2R1bGVwbHVnaW52aWV3JyxcbiAgICBhcGlHcm91cDogQVBQX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGEyJyxcbiAgfSxcbn0pO1xuXG5leHBvcnQgY29uc3QgQ09NTU9OX1JFU09VUkNFX0RFRklOSVRJT05TID0gXy5SRVNPVVJDRV9ERUZJTklUSU9OUztcbmV4cG9ydCBjb25zdCBSRVNPVVJDRV9UWVBFUyA9IF8uUkVTT1VSQ0VfVFlQRVM7XG5leHBvcnQgY29uc3QgZ2V0WWFtbEFwaVZlcnNpb24gPSBfLmdldFlhbWxBcGlWZXJzaW9uO1xuXG5leHBvcnQgdHlwZSBSZXNvdXJjZVR5cGUgPSBrZXlvZiB0eXBlb2YgUkVTT1VSQ0VfVFlQRVM7XG5cbmV4cG9ydCBjb25zdCBNYWNoaW5lTWV0YTogVHlwZU1ldGEgPSB7XG4gIGFwaVZlcnNpb246IGdldFlhbWxBcGlWZXJzaW9uKFJFU09VUkNFX1RZUEVTLlRLRV9NQUNISU5FKSxcbiAga2luZDogJ01hY2hpbmUnLFxufTtcblxuZXhwb3J0IGNvbnN0IFRLRUNsdXN0ZXJNZXRhOiBUeXBlTWV0YSA9IHtcbiAgYXBpVmVyc2lvbjogZ2V0WWFtbEFwaVZlcnNpb24oUkVTT1VSQ0VfVFlQRVMuVEtFX0NMVVNURVIpLFxuICBraW5kOiAnQ2x1c3RlcicsXG59O1xuXG5leHBvcnQgY29uc3QgU2VydmljZVR5cGVNZXRhID0ge1xuICBhcGlWZXJzaW9uOiBnZXRZYW1sQXBpVmVyc2lvbihSRVNPVVJDRV9UWVBFUy5TRVJWSUNFKSxcbiAga2luZDogJ1NlcnZpY2UnLFxufSBhcyBjb25zdDtcbiJdfQ==
668
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2UtZGVmaW5pdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvY29yZS90eXBlcy9yZXNvdXJjZS1kZWZpbml0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUk5RCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsZUFBZSxDQUFDO0FBQzdDLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxpQkFBaUIsQ0FBQztBQUNqRCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsZ0JBQWdCLENBQUM7QUFDL0MsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsc0JBQXNCLENBQUM7QUFDaEUsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLGVBQWUsQ0FBQztBQUM3QyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxnQkFBZ0IsQ0FBQztBQUNsRCxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxzQkFBc0IsQ0FBQztBQUM3RCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxtQkFBbUIsQ0FBQztBQUNyRCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsZUFBZSxDQUFDO0FBQzdDLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLHVCQUF1QixDQUFDO0FBQzVELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxjQUFjLENBQUM7QUFDNUMsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsYUFBYSxDQUFDO0FBQzlDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLG1CQUFtQixDQUFDO0FBQ3JELE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLHlCQUF5QixDQUFDO0FBQ25FLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLG9CQUFvQixDQUFDO0FBQ3ZELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLFlBQVksQ0FBQztBQUM5QyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxtQkFBbUIsQ0FBQztBQUNyRCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRywwQkFBMEIsQ0FBQztBQUNuRSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxXQUFXLENBQUM7QUFDNUMsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsb0JBQW9CLENBQUM7QUFDdkQsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsc0JBQXNCLENBQUM7QUFDNUQsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsaUNBQWlDLENBQUM7QUFDekUsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsb0JBQW9CLENBQUM7QUFFdkQsb0ZBQW9GO0FBQ3BGLGtFQUFrRTtBQUNsRSxNQUFNLENBQUMsR0FBRyx5QkFBeUIsQ0FBQztJQUNsQyxvQkFBb0IsRUFBRTtRQUNwQixRQUFRLEVBQUUsYUFBYTtRQUN2QixJQUFJLEVBQUUscUJBQXFCO0tBQzVCO0lBQ0QsSUFBSSxFQUFFO1FBQ0osUUFBUSxFQUFFLGFBQWE7UUFDdkIsVUFBVSxFQUFFLFNBQVM7UUFDckIsSUFBSSxFQUFFLHFCQUFxQjtLQUM1QjtJQUNELFlBQVksRUFBRTtRQUNaLElBQUksRUFBRSxjQUFjO1FBQ3BCLFFBQVEsRUFBRSxhQUFhO1FBQ3ZCLFVBQVUsRUFBRSxVQUFVO0tBQ3ZCO0lBQ0QsK0JBQStCO0lBQy9CLGVBQWUsRUFBRTtRQUNmLElBQUksRUFBRSxjQUFjO1FBQ3BCLFFBQVEsRUFBRSxhQUFhO1FBQ3ZCLFVBQVUsRUFBRSxJQUFJO0tBQ2pCO0lBQ0QsVUFBVSxFQUFFO1FBQ1YsUUFBUSxFQUFFLE1BQU07UUFDaEIsSUFBSSxFQUFFLGFBQWE7S0FDcEI7SUFDRCxTQUFTLEVBQUU7UUFDVCxRQUFRLEVBQUUsTUFBTTtRQUNoQixJQUFJLEVBQUUsWUFBWTtLQUNuQjtJQUNELFdBQVcsRUFBRTtRQUNYLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLElBQUksRUFBRSxjQUFjO0tBQ3JCO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLGFBQWE7UUFDdkIsSUFBSSxFQUFFLFdBQVc7S0FDbEI7SUFDRCxJQUFJLEVBQUU7UUFDSixRQUFRLEVBQUUsYUFBYTtRQUN2QixJQUFJLEVBQUUsT0FBTztLQUNkO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsSUFBSSxFQUFFLE1BQU07S0FDYjtJQUNELFNBQVMsRUFBRTtRQUNULElBQUksRUFBRSxXQUFXO0tBQ2xCO0lBQ0QsY0FBYyxFQUFFO1FBQ2QsSUFBSSxFQUFFLGdCQUFnQjtLQUN2QjtJQUNELFVBQVUsRUFBRTtRQUNWLElBQUksRUFBRSxZQUFZO0tBQ25CO0lBQ0QsY0FBYyxFQUFFO1FBQ2QsUUFBUSxFQUFFLGVBQWU7UUFDekIsVUFBVSxFQUFFLFNBQVM7UUFDckIsSUFBSSxFQUFFLGdCQUFnQjtLQUN2QjtJQUNELFdBQVcsRUFBRTtRQUNYLFFBQVEsRUFBRSxpQkFBaUI7UUFDM0IsVUFBVSxFQUFFLFNBQVM7UUFDckIsSUFBSSxFQUFFLGNBQWM7S0FDckI7SUFDRCxtQkFBbUIsRUFBRTtRQUNuQixRQUFRLEVBQUUsaUJBQWlCO1FBQzNCLFVBQVUsRUFBRSxTQUFTO1FBQ3JCLElBQUksRUFBRSxzQkFBc0I7S0FDN0I7SUFDRCxPQUFPLEVBQUU7UUFDUCxRQUFRLEVBQUUsd0JBQXdCO1FBQ2xDLFVBQVUsRUFBRSxVQUFVO1FBQ3RCLElBQUksRUFBRSxVQUFVO0tBQ2pCO0lBQ0QsWUFBWSxFQUFFO1FBQ1osUUFBUSxFQUFFLG1CQUFtQjtRQUM3QixVQUFVLEVBQUUsSUFBSTtRQUNoQixJQUFJLEVBQUUsY0FBYztLQUNyQjtJQUNELFVBQVUsRUFBRTtRQUNWLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLElBQUksRUFBRSxZQUFZO0tBQ25CO0lBQ0QsWUFBWSxFQUFFO1FBQ1osUUFBUSxFQUFFLE1BQU07UUFDaEIsSUFBSSxFQUFFLGNBQWM7S0FDckI7SUFDRCxNQUFNLEVBQUU7UUFDTixRQUFRLEVBQUUsYUFBYTtRQUN2QixVQUFVLEVBQUUsSUFBSTtRQUNoQixJQUFJLEVBQUUsU0FBUztLQUNoQjtJQUNELE9BQU8sRUFBRTtRQUNQLFFBQVEsRUFBRSwwQkFBMEI7UUFDcEMsVUFBVSxFQUFFLFVBQVU7UUFDdEIsSUFBSSxFQUFFLFVBQVU7S0FDakI7SUFDRCxtQkFBbUIsRUFBRTtRQUNuQixRQUFRLEVBQUUsV0FBVztRQUNyQixVQUFVLEVBQUUsSUFBSTtRQUNoQixJQUFJLEVBQUUsb0JBQW9CO0tBQzNCO0lBQ0QsMkJBQTJCLEVBQUU7UUFDM0IsUUFBUSxFQUFFLFdBQVc7UUFDckIsVUFBVSxFQUFFLElBQUk7UUFDaEIsSUFBSSxFQUFFLDJCQUEyQjtLQUNsQztJQUNELHlCQUF5QixFQUFFO1FBQ3pCLFFBQVEsRUFBRSxhQUFhO1FBQ3ZCLFVBQVUsRUFBRSxJQUFJO1FBQ2hCLElBQUksRUFBRSwwQkFBMEI7S0FDakM7SUFDRCxHQUFHLEVBQUU7UUFDSCxRQUFRLEVBQUUsZUFBZTtRQUN6QixVQUFVLEVBQUUsU0FBUztRQUNyQixJQUFJLEVBQUUsTUFBTTtLQUNiO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsUUFBUSxFQUFFLGNBQWM7UUFDeEIsSUFBSSxFQUFFLFVBQVU7S0FDakI7SUFDRCxlQUFlLEVBQUU7UUFDZixRQUFRLEVBQUUsb0JBQW9CO1FBQzlCLFVBQVUsRUFBRSxJQUFJO1FBQ2hCLElBQUksRUFBRSxpQkFBaUI7S0FDeEI7SUFDRCxhQUFhLEVBQUU7UUFDYixRQUFRLEVBQUUsZUFBZTtRQUN6QixJQUFJLEVBQUUsZ0JBQWdCO0tBQ3ZCO0lBQ0QsMEJBQTBCLEVBQUU7UUFDMUIsUUFBUSxFQUFFLHNCQUFzQjtRQUNoQyxJQUFJLEVBQUUsMEJBQTBCO0tBQ2pDO0lBQ0QsSUFBSSxFQUFFO1FBQ0osUUFBUSxFQUFFLGNBQWM7UUFDeEIsSUFBSSxFQUFFLE9BQU87S0FDZDtJQUNELE9BQU8sRUFBRTtRQUNQLElBQUksRUFBRSxVQUFVO0tBQ2pCO0lBQ0QsV0FBVyxFQUFFO1FBQ1gsSUFBSSxFQUFFLGFBQWE7S0FDcEI7SUFDRCxNQUFNLEVBQUU7UUFDTixJQUFJLEVBQUUsU0FBUztLQUNoQjtJQUNELFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRSxPQUFPO1FBQ2pCLFVBQVUsRUFBRSxJQUFJO1FBQ2hCLElBQUksRUFBRSxVQUFVO0tBQ2pCO0lBQ0QsaUJBQWlCLEVBQUU7UUFDakIsSUFBSSxFQUFFLGtCQUFrQjtRQUN4QixRQUFRLEVBQUUsa0JBQWtCO1FBQzVCLFVBQVUsRUFBRSxVQUFVO0tBQ3ZCO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsUUFBUSxFQUFFLE9BQU87UUFDakIsSUFBSSxFQUFFLE1BQU07S0FDYjtJQUNELE9BQU8sRUFBRTtRQUNQLFFBQVEsRUFBRSxtQkFBbUI7UUFDN0IsSUFBSSxFQUFFLFdBQVc7S0FDbEI7SUFDRCx1QkFBdUIsRUFBRTtRQUN2QixJQUFJLEVBQUUsd0JBQXdCO0tBQy9CO0lBQ0QsU0FBUyxFQUFFO1FBQ1QsSUFBSSxFQUFFLFlBQVk7S0FDbkI7SUFDRCxJQUFJLEVBQUU7UUFDSixJQUFJLEVBQUUsT0FBTztLQUNkO0lBQ0QsWUFBWSxFQUFFO1FBQ1osUUFBUSxFQUFFLGdCQUFnQjtRQUMxQixVQUFVLEVBQUUsU0FBUztRQUNyQixJQUFJLEVBQUUsT0FBTztLQUNkO0lBQ0QsRUFBRSxFQUFFO1FBQ0YsSUFBSSxFQUFFLG1CQUFtQjtLQUMxQjtJQUNELEdBQUcsRUFBRTtRQUNILFFBQVEsRUFBRSxzQkFBc0I7UUFDaEMsSUFBSSxFQUFFLDJCQUEyQjtLQUNsQztJQUNELFVBQVUsRUFBRTtRQUNWLElBQUksRUFBRSxZQUFZO1FBQ2xCLFFBQVEsRUFBRSxhQUFhO1FBQ3ZCLFVBQVUsRUFBRSxTQUFTO0tBQ3RCO0lBQ0QsS0FBSyxFQUFFO1FBQ0wsSUFBSSxFQUFFLFFBQVE7UUFDZCxRQUFRLEVBQUUsYUFBYTtRQUN2QixVQUFVLEVBQUUsVUFBVTtLQUN2QjtJQUNELGNBQWMsRUFBRTtRQUNkLFFBQVEsRUFBRSxtQkFBbUI7UUFDN0IsSUFBSSxFQUFFLGlCQUFpQjtLQUN4QjtJQUNELGVBQWUsRUFBRTtRQUNmLElBQUksRUFBRSxpQkFBaUI7S0FDeEI7SUFDRCxXQUFXLEVBQUU7UUFDWCxRQUFRLEVBQUUsTUFBTTtRQUNoQixJQUFJLEVBQUUsYUFBYTtLQUNwQjtJQUNELG1CQUFtQixFQUFFO1FBQ25CLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFVBQVUsRUFBRSxTQUFTO1FBQ3JCLElBQUksRUFBRSxxQkFBcUI7S0FDNUI7SUFDRCxrQkFBa0IsRUFBRTtRQUNsQixRQUFRLEVBQUUsUUFBUTtRQUNsQixJQUFJLEVBQUUsb0JBQW9CO0tBQzNCO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsUUFBUSxFQUFFLGlCQUFpQjtRQUMzQixJQUFJLEVBQUUsTUFBTTtLQUNiO0lBQ0QsY0FBYyxFQUFFO1FBQ2QsSUFBSSxFQUFFLGdCQUFnQjtLQUN2QjtJQUNELHNCQUFzQixFQUFFO1FBQ3RCLFFBQVEsRUFBRSxhQUFhO1FBQ3ZCLElBQUksRUFBRSx3QkFBd0I7S0FDL0I7SUFDRCxhQUFhLEVBQUU7UUFDYixRQUFRLEVBQUUsY0FBYztRQUN4QixVQUFVLEVBQUUsSUFBSTtRQUNoQixJQUFJLEVBQUUsZUFBZTtLQUN0QjtJQUNELFdBQVcsRUFBRTtRQUNYLFFBQVEsRUFBRSxzQkFBc0I7UUFDaEMsSUFBSSxFQUFFLFVBQVU7S0FDakI7SUFDRCxXQUFXLEVBQUU7UUFDWCxRQUFRLEVBQUUsc0JBQXNCO1FBQ2hDLElBQUksRUFBRSxVQUFVO0tBQ2pCO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsUUFBUSxFQUFFLGlCQUFpQjtRQUMzQixVQUFVLEVBQUUsU0FBUztRQUNyQixJQUFJLEVBQUUsVUFBVTtLQUNqQjtJQUNELFVBQVUsRUFBRTtRQUNWLFFBQVEsRUFBRSxvQkFBb0I7UUFDOUIsVUFBVSxFQUFFLFNBQVM7UUFDckIsSUFBSSxFQUFFLFlBQVk7S0FDbkI7SUFDRCxxQkFBcUIsRUFBRTtRQUNyQixRQUFRLEVBQUUseUJBQXlCO1FBQ25DLFVBQVUsRUFBRSxVQUFVO1FBQ3RCLElBQUksRUFBRSx3QkFBd0I7S0FDL0I7SUFDRCxNQUFNLEVBQUU7UUFDTixRQUFRLEVBQUUsY0FBYztRQUN4QixVQUFVLEVBQUUsSUFBSTtRQUNoQixJQUFJLEVBQUUsU0FBUztLQUNoQjtJQUNELFlBQVksRUFBRTtRQUNaLFFBQVEsRUFBRSx5QkFBeUI7UUFDbkMsVUFBVSxFQUFFLFVBQVU7UUFDdEIsSUFBSSxFQUFFLGVBQWU7S0FDdEI7SUFDRCxnQkFBZ0IsRUFBRTtRQUNoQixRQUFRLEVBQUUsK0JBQStCO1FBQ3pDLFVBQVUsRUFBRSxJQUFJO1FBQ2hCLElBQUksRUFBRSxrQkFBa0I7S0FDekI7SUFDRCxZQUFZLEVBQUU7UUFDWixRQUFRLEVBQUUsc0JBQXNCO1FBQ2hDLFVBQVUsRUFBRSxVQUFVO1FBQ3RCLElBQUksRUFBRSxlQUFlO0tBQ3RCO0lBQ0QsY0FBYyxFQUFFO1FBQ2QsSUFBSSxFQUFFLGdCQUFnQjtRQUN0QixRQUFRLEVBQUUsV0FBVztRQUNyQixVQUFVLEVBQUUsVUFBVTtLQUN2QjtJQUNELGFBQWEsRUFBRTtRQUNiLElBQUksRUFBRSxnQkFBZ0I7UUFDdEIsUUFBUSxFQUFFLGlCQUFpQjtLQUM1QjtJQUNELHFCQUFxQixFQUFFO1FBQ3JCLElBQUksRUFBRSx1QkFBdUI7UUFDN0IsUUFBUSxFQUFFLHlCQUF5QjtRQUNuQyxVQUFVLEVBQUUsSUFBSTtLQUNqQjtJQUNELFlBQVksRUFBRTtRQUNaLElBQUksRUFBRSxjQUFjO1FBQ3BCLFFBQVEsRUFBRSxpQkFBaUI7UUFDM0IsVUFBVSxFQUFFLFVBQVU7S0FDdkI7SUFDRCxXQUFXLEVBQUU7UUFDWCxJQUFJLEVBQUUsY0FBYztRQUNwQixVQUFVLEVBQUUsVUFBVTtRQUN0QixRQUFRLEVBQUUsaUJBQWlCO0tBQzVCO0lBQ0QsYUFBYSxFQUFFO1FBQ2IsUUFBUSxFQUFFLGlCQUFpQjtRQUMzQixVQUFVLEVBQUUsVUFBVTtRQUN0QixJQUFJLEVBQUUsZUFBZTtLQUN0QjtJQUNELGFBQWEsRUFBRTtRQUNiLFFBQVEsRUFBRSxpQkFBaUI7UUFDM0IsVUFBVSxFQUFFLFVBQVU7UUFDdEIsSUFBSSxFQUFFLGVBQWU7S0FDdEI7SUFDRCxhQUFhLEVBQUU7UUFDYixJQUFJLEVBQUUsZ0JBQWdCO1FBQ3RCLFFBQVEsRUFBRSxXQUFXO1FBQ3JCLFVBQVUsRUFBRSxVQUFVO0tBQ3ZCO0lBQ0Qsa0JBQWtCLEVBQUU7UUFDbEIsSUFBSSxFQUFFLG9CQUFvQjtRQUMxQixRQUFRLEVBQUUsV0FBVztRQUNyQixVQUFVLEVBQUUsVUFBVTtLQUN2QjtJQUNELGlCQUFpQixFQUFFO1FBQ2pCLFFBQVEsRUFBRSxlQUFlO1FBQ3pCLFVBQVUsRUFBRSxVQUFVO1FBQ3RCLElBQUksRUFBRSxtQkFBbUI7S0FDMUI7SUFDRCxjQUFjLEVBQUU7UUFDZCxJQUFJLEVBQUUsZ0JBQWdCO1FBQ3RCLFVBQVUsRUFBRSxVQUFVO1FBQ3RCLFFBQVEsRUFBRSxpQkFBaUI7S0FDNUI7SUFDRCxvQkFBb0IsRUFBRTtRQUNwQixJQUFJLEVBQUUsY0FBYztRQUNwQixRQUFRLEVBQUUsb0JBQW9CO1FBQzlCLFVBQVUsRUFBRSxVQUFVO0tBQ3ZCO0lBQ0QsU0FBUyxFQUFFO1FBQ1QsSUFBSSxFQUFFLFlBQVk7UUFDbEIsUUFBUSxFQUFFLGdCQUFnQjtLQUMzQjtJQUNELGlCQUFpQixFQUFFO1FBQ2pCLElBQUksRUFBRSxtQkFBbUI7UUFDekIsUUFBUSxFQUFFLGNBQWM7S0FDekI7SUFDRCxpQkFBaUIsRUFBRTtRQUNqQixJQUFJLEVBQUUsbUJBQW1CO1FBQ3pCLFFBQVEsRUFBRSxjQUFjO1FBQ3hCLFVBQVUsRUFBRSxTQUFTO0tBQ3RCO0lBQ0QsWUFBWSxFQUFFO1FBQ1osSUFBSSxFQUFFLGNBQWM7UUFDcEIsUUFBUSxFQUFFLGNBQWM7UUFDeEIsVUFBVSxFQUFFLElBQUk7S0FDakI7SUFDRCxJQUFJLEVBQUU7UUFDSixJQUFJLEVBQUUsT0FBTztRQUNiLFFBQVEsRUFBRSxjQUFjO0tBQ3pCO0lBQ0QsS0FBSyxFQUFFO1FBQ0wsSUFBSSxFQUFFLFFBQVE7UUFDZCxRQUFRLEVBQUUsY0FBYztLQUN6QjtJQUNELGNBQWMsRUFBRTtRQUNkLElBQUksRUFBRSxnQkFBZ0I7UUFDdEIsUUFBUSxFQUFFLGNBQWM7S0FDekI7SUFDRCxhQUFhLEVBQUU7UUFDYixJQUFJLEVBQUUsZUFBZTtRQUNyQixRQUFRLEVBQUUsY0FBYztRQUN4QixVQUFVLEVBQUUsU0FBUztLQUN0QjtJQUNELFlBQVksRUFBRTtRQUNaLFFBQVEsRUFBRSxpQkFBaUI7UUFDM0IsVUFBVSxFQUFFLFVBQVU7UUFDdEIsSUFBSSxFQUFFLGNBQWM7S0FDckI7SUFDRCxLQUFLLEVBQUU7UUFDTCxJQUFJLEVBQUUsUUFBUTtRQUNkLFVBQVUsRUFBRSxJQUFJO0tBQ2pCO0lBQ0QsZUFBZSxFQUFFO1FBQ2YsUUFBUSxFQUFFLG9CQUFvQjtRQUM5QixJQUFJLEVBQUUsaUJBQWlCO1FBQ3ZCLFVBQVUsRUFBRSxJQUFJO0tBQ2pCO0lBQ0QsZUFBZSxFQUFFO1FBQ2YsUUFBUSxFQUFFLGFBQWE7UUFDdkIsVUFBVSxFQUFFLFNBQVM7UUFDckIsSUFBSSxFQUFFLGNBQWM7S0FDckI7SUFDRCxzQkFBc0IsRUFBRTtRQUN0QixRQUFRLEVBQUUsZ0JBQWdCO1FBQzFCLFVBQVUsRUFBRSxVQUFVO1FBQ3RCLElBQUksRUFBRSxpQkFBaUI7S0FDeEI7SUFDRCxrQkFBa0IsRUFBRTtRQUNsQixRQUFRLEVBQUUsZ0JBQWdCO1FBQzFCLFVBQVUsRUFBRSxVQUFVO1FBQ3RCLElBQUksRUFBRSxjQUFjO0tBQ3JCO0lBQ0QsYUFBYSxFQUFFO1FBQ2IsSUFBSSxFQUFFLGVBQWU7UUFDckIsUUFBUSxFQUFFLGFBQWE7UUFDdkIsVUFBVSxFQUFFLFNBQVM7S0FDdEI7SUFDRCxrQkFBa0IsRUFBRTtRQUNsQixJQUFJLEVBQUUsa0JBQWtCO1FBQ3hCLFFBQVEsRUFBRSxhQUFhO1FBQ3ZCLFVBQVUsRUFBRSxTQUFTO0tBQ3RCO0lBQ0QsY0FBYyxFQUFFO1FBQ2QsUUFBUSxFQUFFLGtCQUFrQjtRQUM1QixVQUFVLEVBQUUsVUFBVTtRQUN0QixJQUFJLEVBQUUsaUJBQWlCO0tBQ3hCO0lBQ0QsZ0JBQWdCLEVBQUU7UUFDaEIsSUFBSSxFQUFFLGtCQUFrQjtRQUN4QixRQUFRLEVBQUUsYUFBYTtRQUN2QixVQUFVLEVBQUUsVUFBVTtLQUN2QjtJQUNELFVBQVUsRUFBRTtRQUNWLElBQUksRUFBRSxhQUFhO1FBQ25CLFFBQVEsRUFBRSxhQUFhO1FBQ3ZCLFVBQVUsRUFBRSxVQUFVO0tBQ3ZCO0lBQ0Qsa0JBQWtCLEVBQUU7UUFDbEIsSUFBSSxFQUFFLG1CQUFtQjtRQUN6QixRQUFRLEVBQUUsYUFBYTtRQUN2QixVQUFVLEVBQUUsVUFBVTtLQUN2QjtJQUNELGdCQUFnQixFQUFFO1FBQ2hCLElBQUksRUFBRSxpQkFBaUI7UUFDdkIsUUFBUSxFQUFFLGFBQWE7UUFDdkIsVUFBVSxFQUFFLFVBQVU7S0FDdkI7SUFDRCxPQUFPLEVBQUU7UUFDUCxRQUFRLEVBQUUsYUFBYTtRQUN2QixVQUFVLEVBQUUsVUFBVTtRQUN0QixJQUFJLEVBQUUsVUFBVTtLQUNqQjtJQUNELGFBQWEsRUFBRTtRQUNiLElBQUksRUFBRSxlQUFlO1FBQ3JCLFFBQVEsRUFBRSxhQUFhO1FBQ3ZCLFVBQVUsRUFBRSxVQUFVO0tBQ3ZCO0lBQ0Qsb0JBQW9CLEVBQUU7UUFDcEIsSUFBSSxFQUFFLHFCQUFxQjtRQUMzQixRQUFRLEVBQUUsYUFBYTtRQUN2QixVQUFVLEVBQUUsVUFBVTtLQUN2QjtJQUNELEtBQUssRUFBRTtRQUNMLFFBQVEsRUFBRSxlQUFlO1FBQ3pCLElBQUksRUFBRSxRQUFRO0tBQ2Y7SUFDRCxVQUFVLEVBQUU7UUFDVixRQUFRLEVBQUUsZUFBZTtRQUN6QixVQUFVLEVBQUUsVUFBVTtRQUN0QixJQUFJLEVBQUUsYUFBYTtLQUNwQjtJQUNELGFBQWEsRUFBRTtRQUNiLElBQUksRUFBRSxlQUFlO1FBQ3JCLFFBQVEsRUFBRSxtQkFBbUI7UUFDN0IsVUFBVSxFQUFFLFVBQVU7S0FDdkI7SUFDRCxlQUFlLEVBQUU7UUFDZixJQUFJLEVBQUUsaUJBQWlCO1FBQ3ZCLFFBQVEsRUFBRSxjQUFjO0tBQ3pCO0lBQ0QsS0FBSyxFQUFFO1FBQ0wsSUFBSSxFQUFFLFFBQVE7UUFDZCxVQUFVLEVBQUUsSUFBSTtRQUNoQixRQUFRLEVBQUUsb0JBQW9CO0tBQy9CO0lBQ0QsTUFBTSxFQUFFO1FBQ04sSUFBSSxFQUFFLFNBQVM7UUFDZixRQUFRLEVBQUUsb0JBQW9CO1FBQzlCLFVBQVUsRUFBRSxTQUFTO0tBQ3RCO0lBQ0Qsd0JBQXdCLEVBQUU7UUFDeEIsSUFBSSxFQUFFLHlCQUF5QjtRQUMvQixRQUFRLEVBQUUsa0JBQWtCO0tBQzdCO0lBQ0QsMEJBQTBCLEVBQUU7UUFDMUIsSUFBSSxFQUFFLDJCQUEyQjtRQUNqQyxRQUFRLEVBQUUsc0JBQXNCO1FBQ2hDLFVBQVUsRUFBRSxTQUFTO0tBQ3RCO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsSUFBSSxFQUFFLFNBQVM7S0FDaEI7SUFDRCxNQUFNLEVBQUU7UUFDTixJQUFJLEVBQUUsU0FBUztRQUNmLFFBQVEsRUFBRSxvQkFBb0I7UUFDOUIsVUFBVSxFQUFFLFNBQVM7S0FDdEI7SUFDRCxRQUFRLEVBQUU7UUFDUixRQUFRLEVBQUUsZ0JBQWdCO1FBQzFCLElBQUksRUFBRSxVQUFVO0tBQ2pCO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsSUFBSSxFQUFFLGFBQWE7UUFDbkIsUUFBUSxFQUFFLGlCQUFpQjtRQUMzQixVQUFVLEVBQUUsU0FBUztLQUN0QjtJQUNELEtBQUssRUFBRTtRQUNMLElBQUksRUFBRSxjQUFjO1FBQ3BCLFVBQVUsRUFBRSxVQUFVO1FBQ3RCLFFBQVEsRUFBRSxpQkFBaUI7S0FDNUI7SUFDRCxNQUFNLEVBQUU7UUFDTixJQUFJLEVBQUUsR0FBRztRQUNULFFBQVEsRUFBRSxpQkFBaUI7S0FDNUI7SUFDRCxnQkFBZ0IsRUFBRTtRQUNoQixJQUFJLEVBQUUsa0JBQWtCO1FBQ3hCLFFBQVEsRUFBRSxxQkFBcUI7S0FDaEM7SUFDRCxrQkFBa0IsRUFBRTtRQUNsQixRQUFRLEVBQUUsc0JBQXNCO1FBQ2hDLElBQUksRUFBRSxtQkFBbUI7S0FDMUI7SUFDRCxrQkFBa0IsRUFBRTtRQUNsQixRQUFRLEVBQUUsc0JBQXNCO1FBQ2hDLElBQUksRUFBRSxvQkFBb0I7S0FDM0I7SUFDRCxNQUFNLEVBQUU7UUFDTixJQUFJLEVBQUUsU0FBUztRQUNmLFFBQVEsRUFBRSxpQkFBaUI7UUFDM0IsVUFBVSxFQUFFLElBQUk7S0FDakI7SUFDRCxTQUFTLEVBQUU7UUFDVCxJQUFJLEVBQUUsWUFBWTtRQUNsQixVQUFVLEVBQUUsVUFBVTtRQUN0QixRQUFRLEVBQUUsaUJBQWlCO0tBQzVCO0lBQ0QsYUFBYSxFQUFFO1FBQ2IsUUFBUSxFQUFFLFdBQVc7UUFDckIsVUFBVSxFQUFFLElBQUk7UUFDaEIsSUFBSSxFQUFFLGVBQWU7S0FDdEI7SUFDRCxXQUFXLEVBQUU7UUFDWCxJQUFJLEVBQUUsY0FBYztRQUNwQixRQUFRLEVBQUUsaUJBQWlCO0tBQzVCO0lBQ0QsYUFBYSxFQUFFO1FBQ2IsSUFBSSxFQUFFLGVBQWU7UUFDckIsUUFBUSxFQUFFLGFBQWE7UUFDdkIsVUFBVSxFQUFFLFVBQVU7S0FDdkI7SUFDRCxNQUFNLEVBQUU7UUFDTixRQUFRLEVBQUUsd0JBQXdCO1FBQ2xDLFVBQVUsRUFBRSxVQUFVO1FBQ3RCLElBQUksRUFBRSxTQUFTO0tBQ2hCO0lBQ0Qsa0JBQWtCLEVBQUU7UUFDbEIsSUFBSSxFQUFFLGlCQUFpQjtRQUN2QixRQUFRLEVBQUUsb0JBQW9CO1FBQzlCLFVBQVUsRUFBRSxJQUFJO0tBQ2pCO0lBQ0QsTUFBTSxFQUFFO1FBQ04sUUFBUSxFQUFFLHNCQUFzQjtRQUNoQyxVQUFVLEVBQUUsVUFBVTtRQUN0QixJQUFJLEVBQUUsU0FBUztLQUNoQjtJQUNELFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRSxnQkFBZ0I7UUFDMUIsSUFBSSxFQUFFLFdBQVc7S0FDbEI7SUFDRCx1QkFBdUIsRUFBRTtRQUN2QixRQUFRLEVBQUUsZ0JBQWdCO1FBQzFCLElBQUksRUFBRSx3QkFBd0I7S0FDL0I7SUFDRCw0QkFBNEIsRUFBRTtRQUM1QixRQUFRLEVBQUUsZUFBZTtRQUN6QixJQUFJLEVBQUUsNkJBQTZCO0tBQ3BDO0lBQ0QsTUFBTSxFQUFFO1FBQ04sUUFBUSxFQUFFLGdCQUFnQjtRQUMxQixJQUFJLEVBQUUsU0FBUztLQUNoQjtJQUNELHFCQUFxQixFQUFFO1FBQ3JCLFFBQVEsRUFBRSxnQkFBZ0I7UUFDMUIsSUFBSSxFQUFFLHNCQUFzQjtLQUM3QjtJQUNELGtCQUFrQixFQUFFO1FBQ2xCLFFBQVEsRUFBRSxxQkFBcUI7UUFDL0IsVUFBVSxFQUFFLFVBQVU7UUFDdEIsSUFBSSxFQUFFLG1CQUFtQjtLQUMxQjtJQUNELE9BQU8sRUFBRTtRQUNQLFFBQVEsRUFBRSxnQkFBZ0I7UUFDMUIsVUFBVSxFQUFFLElBQUk7UUFDaEIsSUFBSSxFQUFFLFVBQVU7S0FDakI7SUFDRCxVQUFVLEVBQUU7UUFDVixRQUFRLEVBQUUsc0JBQXNCO1FBQ2hDLElBQUksRUFBRSxZQUFZO0tBQ25CO0lBQ0QsWUFBWSxFQUFFO1FBQ1osUUFBUSxFQUFFLGtCQUFrQjtRQUM1QixVQUFVLEVBQUUsVUFBVTtRQUN0QixJQUFJLEVBQUUsYUFBYTtLQUNwQjtJQUNELHFCQUFxQixFQUFFO1FBQ3JCLFFBQVEsRUFBRSxhQUFhO1FBQ3ZCLFVBQVUsRUFBRSxTQUFTO1FBQ3JCLElBQUksRUFBRSx1QkFBdUI7S0FDOUI7SUFDRCxrQkFBa0IsRUFBRTtRQUNsQixRQUFRLEVBQUUsYUFBYTtRQUN2QixVQUFVLEVBQUUsU0FBUztRQUNyQixJQUFJLEVBQUUsb0JBQW9CO0tBQzNCO0lBQ0QsWUFBWSxFQUFFO1FBQ1osUUFBUSxFQUFFLGFBQWE7UUFDdkIsVUFBVSxFQUFFLFNBQVM7UUFDckIsSUFBSSxFQUFFLGVBQWU7S0FDdEI7SUFDRCxjQUFjLEVBQUU7UUFDZCxJQUFJLEVBQUUsZ0JBQWdCO1FBQ3RCLFVBQVUsRUFBRSxTQUFTO1FBQ3JCLFFBQVEsRUFBRSx1QkFBdUI7S0FDbEM7SUFDRCxXQUFXLEVBQUU7UUFDWCxJQUFJLEVBQUUsVUFBVTtRQUNoQixRQUFRLEVBQUUsa0JBQWtCO1FBQzVCLFVBQVUsRUFBRSxTQUFTO0tBQ3RCO0NBQ0YsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsQ0FBQyxDQUFDLG9CQUFvQixDQUFDO0FBQ2xFLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLENBQUMsY0FBYyxDQUFDO0FBQy9DLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQztBQUlyRCxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQWE7SUFDbkMsVUFBVSxFQUFFLGlCQUFpQixDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUM7SUFDekQsSUFBSSxFQUFFLFNBQVM7Q0FDaEIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBYTtJQUN0QyxVQUFVLEVBQUUsaUJBQWlCLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQztJQUN6RCxJQUFJLEVBQUUsU0FBUztDQUNoQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHO0lBQzdCLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDO0lBQ3JELElBQUksRUFBRSxTQUFTO0NBQ1AsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZVJlc291cmNlRGVmaW5pdGlvbnMgfSBmcm9tICcuLi8uLi9hcGkvaGVscGVycyc7XG5cbmltcG9ydCB7IFR5cGVNZXRhIH0gZnJvbSAnLi9rOHMvcHVibGljLWFwaSc7XG5cbmV4cG9ydCBjb25zdCBDUkRfQVBJX0dST1VQID0gJ2NyZC5hbGF1ZGEuaW8nO1xuZXhwb3J0IGNvbnN0IEFJT1BTX0FQSV9HUk9VUCA9ICdhaW9wcy5hbGF1ZGEuaW8nO1xuZXhwb3J0IGNvbnN0IEFVVEhfQVBJX0dST1VQID0gJ2F1dGguYWxhdWRhLmlvJztcbmV4cG9ydCBjb25zdCBDT1JFT1NfT1BFUkFUT1JfQVBJX0dST1VQID0gJ29wZXJhdG9ycy5jb3Jlb3MuY29tJztcbmV4cG9ydCBjb25zdCBBUFBfQVBJX0dST1VQID0gJ2FwcC5hbGF1ZGEuaW8nO1xuZXhwb3J0IGNvbnN0IFNUT1JBR0VfQVBJX0dST1VQID0gJ3N0b3JhZ2UuazhzLmlvJztcbmV4cG9ydCBjb25zdCBUS0VfUExBVEZPUk1fQVBJX0dST1VQID0gJ3BsYXRmb3JtLnRrZXN0YWNrLmlvJztcbmV4cG9ydCBjb25zdCBDTFVTVEVSX0FQSV9HUk9VUCA9ICdjbHVzdGVyLmFsYXVkYS5pbyc7XG5leHBvcnQgY29uc3QgQUlUX0FQSV9HUk9VUCA9ICdhaXQuYWxhdWRhLmlvJztcbmV4cG9ydCBjb25zdCBNT05JVE9SSU5HX0FQSV9HUk9VUCA9ICdtb25pdG9yaW5nLmNvcmVvcy5jb20nO1xuZXhwb3J0IGNvbnN0IE9BTV9BUElfR1JPVVAgPSAnY29yZS5vYW0uZGV2JztcbmV4cG9ydCBjb25zdCBBUkdPQ0RfQVBJX0dST1VQID0gJ2FyZ29wcm9qLmlvJztcbmV4cG9ydCBjb25zdCBNQUNISU5FX0FQSV9HUk9VUCA9ICdtYWNoaW5lLmFsYXVkYS5pbyc7XG5leHBvcnQgY29uc3QgVk9MVU1FX1NOQVBTSE9UX0FQSV9HUk9VUCA9ICdzbmFwc2hvdC5zdG9yYWdlLms4cy5pbyc7XG5leHBvcnQgY29uc3QgSzhTX0NPUkVfQVBJX0dST1VQID0gJ2NvcmUua3ViZXJuZXRlcy5pbyc7XG5leHBvcnQgY29uc3QgSzhTX0FQUF9BUElfR1JPVVAgPSAnYXBwLms4cy5pbyc7XG5leHBvcnQgY29uc3QgUFJPRFVDVF9BUElfR1JPVVAgPSAncHJvZHVjdC5hbGF1ZGEuaW8nO1xuZXhwb3J0IGNvbnN0IElORlJBU1RSVUNUVVJFX0FQSV9HUk9VUCA9ICdpbmZyYXN0cnVjdHVyZS5hbGF1ZGEuaW8nO1xuZXhwb3J0IGNvbnN0IFZFTEVST19BUElfR1JPVVAgPSAndmVsZXJvLmlvJztcbmV4cG9ydCBjb25zdCBSRVNPVVJDRV9BUElfR1JPVVAgPSAncmVzb3VyY2UuYWxhdWRhLmlvJztcbmV4cG9ydCBjb25zdCBFVENEX0JBQ0tVUF9BUElfR1JPVVAgPSAnZXRjZGJhY2t1cC5hbGF1ZGEuaW8nO1xuZXhwb3J0IGNvbnN0IENMVVNURVJfWF9LOFNfQVBJX0dST1VQID0gJ2luZnJhc3RydWN0dXJlLmNsdXN0ZXIueC1rOHMuaW8nO1xuZXhwb3J0IGNvbnN0IE9QRVJBVE9SX0FQSV9HUk9VUCA9ICdvcGVyYXRvci5hbGF1ZGEuaW8nO1xuXG4vLyByZWZlcmVuY2U6IGh0dHA6Ly9jb25mbHVlbmNlLmFsYXVkYXRlY2guY29tL3BhZ2VzL3ZpZXdwYWdlLmFjdGlvbj9wYWdlSWQ9MzkzMzgyMjVcbi8vIEZJWE1FOiBvYmplY3QgZGVzdHJ1Y3R1cmluZyB3aWxsIHJlc3VsdCBgYW55YCB0eXBlIGhlcmUsIHdoeT8/P1xuY29uc3QgXyA9IGNyZWF0ZVJlc291cmNlRGVmaW5pdGlvbnMoe1xuICBBTEFVREFfTE9BREJBTEFOQ0VSMjoge1xuICAgIGFwaUdyb3VwOiBDUkRfQVBJX0dST1VQLFxuICAgIHR5cGU6ICdhbGF1ZGFsb2FkYmFsYW5jZXIyJyxcbiAgfSxcbiAgQUxCMjoge1xuICAgIGFwaUdyb3VwOiBDUkRfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MmJldGExJyxcbiAgICB0eXBlOiAnYWxhdWRhbG9hZGJhbGFuY2VyMicsXG4gIH0sXG4gIEhFTE1fUkVRVUVTVDoge1xuICAgIHR5cGU6ICdoZWxtcmVxdWVzdHMnLFxuICAgIGFwaUdyb3VwOiBBUFBfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gIH0sXG4gIC8vIFRPRE86IOWPquaPkOS+m+S6kei+ueS9v+eUqO+8jOWQjue7reWuueWZqOW5s+WPsOmcgOimgeWNh+e6p+WIsCB2MVxuICBIRUxNX1JFUVVFU1RfVjE6IHtcbiAgICB0eXBlOiAnaGVsbXJlcXVlc3RzJyxcbiAgICBhcGlHcm91cDogQVBQX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICB9LFxuICBERVBMT1lNRU5UOiB7XG4gICAgYXBpR3JvdXA6ICdhcHBzJyxcbiAgICB0eXBlOiAnZGVwbG95bWVudHMnLFxuICB9LFxuICBEQUVNT05TRVQ6IHtcbiAgICBhcGlHcm91cDogJ2FwcHMnLFxuICAgIHR5cGU6ICdkYWVtb25zZXRzJyxcbiAgfSxcbiAgU1RBVEVGVUxTRVQ6IHtcbiAgICBhcGlHcm91cDogJ2FwcHMnLFxuICAgIHR5cGU6ICdzdGF0ZWZ1bHNldHMnLFxuICB9LFxuICBGUk9OVEVORDoge1xuICAgIGFwaUdyb3VwOiBDUkRfQVBJX0dST1VQLFxuICAgIHR5cGU6ICdmcm9udGVuZHMnLFxuICB9LFxuICBSVUxFOiB7XG4gICAgYXBpR3JvdXA6IENSRF9BUElfR1JPVVAsXG4gICAgdHlwZTogJ3J1bGVzJyxcbiAgfSxcbiAgUE9EOiB7XG4gICAgdHlwZTogJ3BvZHMnLFxuICB9LFxuICBQT0RTX0VYRUM6IHtcbiAgICB0eXBlOiAncG9kcy9leGVjJyxcbiAgfSxcbiAgUE9EU19ST09UX0VYRUM6IHtcbiAgICB0eXBlOiAncG9kcy9yb290LWV4ZWMnLFxuICB9LFxuICBDT05GSUdfTUFQOiB7XG4gICAgdHlwZTogJ2NvbmZpZ21hcHMnLFxuICB9LFxuICBBTEVSVF9URU1QTEFURToge1xuICAgIGFwaUdyb3VwOiBBSU9QU19BUElfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYmV0YTEnLFxuICAgIHR5cGU6ICdhbGVydHRlbXBsYXRlcycsXG4gIH0sXG4gIEFQUExJQ0FUSU9OOiB7XG4gICAgYXBpR3JvdXA6IEs4U19BUFBfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgICB0eXBlOiAnYXBwbGljYXRpb25zJyxcbiAgfSxcbiAgQVBQTElDQVRJT05fSElTVE9SWToge1xuICAgIGFwaUdyb3VwOiBLOFNfQVBQX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFiZXRhMScsXG4gICAgdHlwZTogJ2FwcGxpY2F0aW9uaGlzdG9yaWVzJyxcbiAgfSxcbiAgQ0xVU1RFUjoge1xuICAgIGFwaUdyb3VwOiAnY2x1c3RlcnJlZ2lzdHJ5Lms4cy5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgICB0eXBlOiAnY2x1c3RlcnMnLFxuICB9LFxuICBDTFVTVEVSX1ZJRVc6IHtcbiAgICBhcGlHcm91cDogJ2NsdXN0ZXIuYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICAgIHR5cGU6ICdjbHVzdGVydmlld3MnLFxuICB9LFxuICBEQUVNT05fU0VUOiB7XG4gICAgYXBpR3JvdXA6ICdhcHBzJyxcbiAgICB0eXBlOiAnZGFlbW9uc2V0cycsXG4gIH0sXG4gIFNUQVRFRlVMX1NFVDoge1xuICAgIGFwaUdyb3VwOiAnYXBwcycsXG4gICAgdHlwZTogJ3N0YXRlZnVsc2V0cycsXG4gIH0sXG4gIERPTUFJTjoge1xuICAgIGFwaUdyb3VwOiBDUkRfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MicsXG4gICAgdHlwZTogJ2RvbWFpbnMnLFxuICB9LFxuICBGRUFUVVJFOiB7XG4gICAgYXBpR3JvdXA6ICdpbmZyYXN0cnVjdHVyZS5hbGF1ZGEuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ2ZlYXR1cmVzJyxcbiAgfSxcbiAgQUxBVURBX0ZFQVRVUkVfR0FURToge1xuICAgIGFwaUdyb3VwOiAnYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICAgIHR5cGU6ICdhbGF1ZGFmZWF0dXJlZ2F0ZXMnLFxuICB9LFxuICBDTFVTVEVSX0FMQVVEQV9GRUFUVVJFX0dBVEU6IHtcbiAgICBhcGlHcm91cDogJ2FsYXVkYS5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgICB0eXBlOiAnY2x1c3RlcmFsYXVkYWZlYXR1cmVnYXRlcycsXG4gIH0sXG4gIEhPUklaT05UQUxfUE9EX0FVVE9TQ0FMRVI6IHtcbiAgICBhcGlHcm91cDogJ2F1dG9zY2FsaW5nJyxcbiAgICBhcGlWZXJzaW9uOiAndjInLFxuICAgIHR5cGU6ICdob3Jpem9udGFscG9kYXV0b3NjYWxlcnMnLFxuICB9LFxuICBMT0c6IHtcbiAgICBhcGlHcm91cDogQUlPUFNfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgICB0eXBlOiAnbG9ncycsXG4gIH0sXG4gIFBST0pFQ1Q6IHtcbiAgICBhcGlHcm91cDogQVVUSF9BUElfR1JPVVAsXG4gICAgdHlwZTogJ3Byb2plY3RzJyxcbiAgfSxcbiAgUFJPTUVUSEVVU19SVUxFOiB7XG4gICAgYXBpR3JvdXA6IE1PTklUT1JJTkdfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MScsXG4gICAgdHlwZTogJ3Byb21ldGhldXNydWxlcycsXG4gIH0sXG4gIEFMRVJUX0hJU1RPUlk6IHtcbiAgICBhcGlHcm91cDogQUlPUFNfQVBJX0dST1VQLFxuICAgIHR5cGU6ICdhbGVydGhpc3RvcmllcycsXG4gIH0sXG4gIFNFTEZfU1VCSkVDVF9BQ0NFU1NfUkVWSUVXOiB7XG4gICAgYXBpR3JvdXA6ICdhdXRob3JpemF0aW9uLms4cy5pbycsXG4gICAgdHlwZTogJ3NlbGZzdWJqZWN0YWNjZXNzcmV2aWV3cycsXG4gIH0sXG4gIFZJRVc6IHtcbiAgICBhcGlHcm91cDogQVVUSF9BUElfR1JPVVAsXG4gICAgdHlwZTogJ3ZpZXdzJyxcbiAgfSxcbiAgU0VSVklDRToge1xuICAgIHR5cGU6ICdzZXJ2aWNlcycsXG4gIH0sXG4gIExJTUlUX1JBTkdFOiB7XG4gICAgdHlwZTogJ2xpbWl0cmFuZ2VzJyxcbiAgfSxcbiAgU0VDUkVUOiB7XG4gICAgdHlwZTogJ3NlY3JldHMnLFxuICB9LFxuICBDUk9OX0pPQjoge1xuICAgIGFwaUdyb3VwOiAnYmF0Y2gnLFxuICAgIGFwaVZlcnNpb246ICd2MScsXG4gICAgdHlwZTogJ2Nyb25qb2JzJyxcbiAgfSxcbiAgQURWQU5DRURfQ1JPTl9KT0I6IHtcbiAgICB0eXBlOiAnYWR2YW5jZWRjcm9uam9icycsXG4gICAgYXBpR3JvdXA6IE9QRVJBVE9SX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICB9LFxuICBKT0I6IHtcbiAgICBhcGlHcm91cDogJ2JhdGNoJyxcbiAgICB0eXBlOiAnam9icycsXG4gIH0sXG4gIElOR1JFU1M6IHtcbiAgICBhcGlHcm91cDogJ25ldHdvcmtpbmcuazhzLmlvJyxcbiAgICB0eXBlOiAnaW5ncmVzc2VzJyxcbiAgfSxcbiAgUEVSU0lTVEVOVF9WT0xVTUVfQ0xBSU06IHtcbiAgICB0eXBlOiAncGVyc2lzdGVudHZvbHVtZWNsYWltcycsXG4gIH0sXG4gIE5BTUVTUEFDRToge1xuICAgIHR5cGU6ICduYW1lc3BhY2VzJyxcbiAgfSxcbiAgTk9ERToge1xuICAgIHR5cGU6ICdub2RlcycsXG4gIH0sXG4gIE5PREVfTUVUUklDUzoge1xuICAgIGFwaUdyb3VwOiAnbWV0cmljcy5rOHMuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgICB0eXBlOiAnbm9kZXMnLFxuICB9LFxuICBQVjoge1xuICAgIHR5cGU6ICdwZXJzaXN0ZW50dm9sdW1lcycsXG4gIH0sXG4gIENSRDoge1xuICAgIGFwaUdyb3VwOiAnYXBpZXh0ZW5zaW9ucy5rOHMuaW8nLFxuICAgIHR5cGU6ICdjdXN0b21yZXNvdXJjZWRlZmluaXRpb25zJyxcbiAgfSxcbiAgQ0hBUlRfUkVQTzoge1xuICAgIHR5cGU6ICdjaGFydHJlcG9zJyxcbiAgICBhcGlHcm91cDogQVBQX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFiZXRhMScsXG4gIH0sXG4gIENIQVJUOiB7XG4gICAgdHlwZTogJ2NoYXJ0cycsXG4gICAgYXBpR3JvdXA6IEFQUF9BUElfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgfSxcbiAgTkVUV09SS19QT0xJQ1k6IHtcbiAgICBhcGlHcm91cDogJ25ldHdvcmtpbmcuazhzLmlvJyxcbiAgICB0eXBlOiAnbmV0d29ya3BvbGljaWVzJyxcbiAgfSxcbiAgU0VSVklDRV9BQ0NPVU5UOiB7XG4gICAgdHlwZTogJ3NlcnZpY2VhY2NvdW50cycsXG4gIH0sXG4gIFJFUExJQ0FfU0VUOiB7XG4gICAgYXBpR3JvdXA6ICdhcHBzJyxcbiAgICB0eXBlOiAncmVwbGljYXNldHMnLFxuICB9LFxuICBQT0RfU0VDVVJJVFlfUE9MSUNZOiB7XG4gICAgYXBpR3JvdXA6ICdwb2xpY3knLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgICB0eXBlOiAncG9kc2VjdXJpdHlwb2xpY2llcycsXG4gIH0sXG4gIE5BTUVTUEFDRV9PVkVSVklFVzoge1xuICAgIGFwaUdyb3VwOiAnazhzLmlvJyxcbiAgICB0eXBlOiAnbmFtZXNwYWNlb3ZlcnZpZXdzJyxcbiAgfSxcbiAgQ1NQOiB7XG4gICAgYXBpR3JvdXA6IFBST0RVQ1RfQVBJX0dST1VQLFxuICAgIHR5cGU6ICdjc3BzJyxcbiAgfSxcbiAgUkVTT1VSQ0VfUVVPVEE6IHtcbiAgICB0eXBlOiAncmVzb3VyY2VxdW90YXMnLFxuICB9LFxuICBDTFVTVEVSX05FVFdPUktfUE9MSUNZOiB7XG4gICAgYXBpR3JvdXA6IENSRF9BUElfR1JPVVAsXG4gICAgdHlwZTogJ2NsdXN0ZXJuZXR3b3JrcG9saWNpZXMnLFxuICB9LFxuICBQUk9KRUNUX1FVT1RBOiB7XG4gICAgYXBpR3JvdXA6IEFVVEhfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MScsXG4gICAgdHlwZTogJ3Byb2plY3RxdW90YXMnLFxuICB9LFxuICBUS0VfQ0xVU1RFUjoge1xuICAgIGFwaUdyb3VwOiBUS0VfUExBVEZPUk1fQVBJX0dST1VQLFxuICAgIHR5cGU6ICdjbHVzdGVycycsXG4gIH0sXG4gIFRLRV9NQUNISU5FOiB7XG4gICAgYXBpR3JvdXA6IFRLRV9QTEFURk9STV9BUElfR1JPVVAsXG4gICAgdHlwZTogJ21hY2hpbmVzJyxcbiAgfSxcbiAgTUFDSElORToge1xuICAgIGFwaUdyb3VwOiBNQUNISU5FX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFiZXRhMScsXG4gICAgdHlwZTogJ21hY2hpbmVzJyxcbiAgfSxcbiAgTk9ERV9HUk9VUDoge1xuICAgIGFwaUdyb3VwOiAnc2VjdXJpdHkuYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFiZXRhMScsXG4gICAgdHlwZTogJ25vZGVncm91cHMnLFxuICB9LFxuICBDTFVTVEVSU0VSVklDRVZFUlNJT046IHtcbiAgICBhcGlHcm91cDogQ09SRU9TX09QRVJBVE9SX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIHR5cGU6ICdjbHVzdGVyc2VydmljZXZlcnNpb25zJyxcbiAgfSxcbiAgVEVOQU5UOiB7XG4gICAgYXBpR3JvdXA6ICdtaW5pby5taW4uaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MicsXG4gICAgdHlwZTogJ3RlbmFudHMnLFxuICB9LFxuICBTVUJTQ1JJUFRJT046IHtcbiAgICBhcGlHcm91cDogQ09SRU9TX09QRVJBVE9SX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIHR5cGU6ICdzdWJzY3JpcHRpb25zJyxcbiAgfSxcbiAgUEFDS0FHRV9NQU5JRkVTVDoge1xuICAgIGFwaUdyb3VwOiAncGFja2FnZXMub3BlcmF0b3JzLmNvcmVvcy5jb20nLFxuICAgIGFwaVZlcnNpb246ICd2MScsXG4gICAgdHlwZTogJ3BhY2thZ2VtYW5pZmVzdHMnLFxuICB9LFxuICBCVUNLRVRfQ0xBU1M6IHtcbiAgICBhcGlHcm91cDogJ29iamVjdHN0b3JhZ2UuazhzLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIHR5cGU6ICdidWNrZXRjbGFzc2VzJyxcbiAgfSxcbiAgUFJPRFVDVF9DT05GSUc6IHtcbiAgICB0eXBlOiAncHJvZHVjdGNvbmZpZ3MnLFxuICAgIGFwaUdyb3VwOiAnYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICB9LFxuICBTVE9SQUdFX0NMQVNTOiB7XG4gICAgdHlwZTogJ3N0b3JhZ2VjbGFzc2VzJyxcbiAgICBhcGlHcm91cDogU1RPUkFHRV9BUElfR1JPVVAsXG4gIH0sXG4gIFZPTFVNRV9TTkFQU0hPVF9DTEFTUzoge1xuICAgIHR5cGU6ICd2b2x1bWVzbmFwc2hvdGNsYXNzZXMnLFxuICAgIGFwaUdyb3VwOiBWT0xVTUVfU05BUFNIT1RfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MScsXG4gIH0sXG4gIFBST0RVQ1RfQkFTRToge1xuICAgIHR5cGU6ICdwcm9kdWN0YmFzZXMnLFxuICAgIGFwaUdyb3VwOiBQUk9EVUNUX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICB9LFxuICBNT0RVTEVfSU5GTzoge1xuICAgIHR5cGU6ICdtb2R1bGVpbmZvZXMnLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgYXBpR3JvdXA6IENMVVNURVJfQVBJX0dST1VQLFxuICB9LFxuICBNT0RVTEVfQ09ORklHOiB7XG4gICAgYXBpR3JvdXA6IENMVVNURVJfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ21vZHVsZWNvbmZpZ3MnLFxuICB9LFxuICBNT0RVTEVfUExVR0lOOiB7XG4gICAgYXBpR3JvdXA6IENMVVNURVJfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ21vZHVsZXBsdWdpbnMnLFxuICB9LFxuICBQUk9EVUNUX0VOVFJZOiB7XG4gICAgdHlwZTogJ3Byb2R1Y3RlbnRyaWVzJyxcbiAgICBhcGlHcm91cDogJ2FsYXVkYS5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgfSxcbiAgUFJPRFVDVF9ET0NTX0VOVFJZOiB7XG4gICAgdHlwZTogJ3Byb2R1Y3Rkb2NzZW50cmllcycsXG4gICAgYXBpR3JvdXA6ICdhbGF1ZGEuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gIH0sXG4gIFNFUlZJQ0VNRVNIX0dST1VQOiB7XG4gICAgYXBpR3JvdXA6ICdhc20uYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIHR5cGU6ICdzZXJ2aWNlbWVzaGdyb3VwcycsXG4gIH0sXG4gIENMVVNURVJfTU9EVUxFOiB7XG4gICAgdHlwZTogJ2NsdXN0ZXJtb2R1bGVzJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIGFwaUdyb3VwOiBDTFVTVEVSX0FQSV9HUk9VUCxcbiAgfSxcbiAgVVNFUl9TRUNVUklUWV9QT0xJQ1k6IHtcbiAgICB0eXBlOiAndXNlcnBvbGljaWVzJyxcbiAgICBhcGlHcm91cDogJ3NlY3VyaXR5LmFsYXVkYS5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgfSxcbiAgQ09OTkVDVE9SOiB7XG4gICAgdHlwZTogJ2Nvbm5lY3RvcnMnLFxuICAgIGFwaUdyb3VwOiAnZGV4LmNvcmVvcy5jb20nLFxuICB9LFxuICBBQ0NFU1NfVE9LRU5fSU5GTzoge1xuICAgIHR5cGU6ICdhY2Nlc3N0b2tlbmluZm9lcycsXG4gICAgYXBpR3JvdXA6IEFVVEhfQVBJX0dST1VQLFxuICB9LFxuICBGVU5DVElPTl9SRVNPVVJDRToge1xuICAgIHR5cGU6ICdmdW5jdGlvbnJlc291cmNlcycsXG4gICAgYXBpR3JvdXA6IEFVVEhfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgfSxcbiAgVVNFUl9CSU5ESU5HOiB7XG4gICAgdHlwZTogJ3VzZXJiaW5kaW5ncycsXG4gICAgYXBpR3JvdXA6IEFVVEhfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MScsXG4gIH0sXG4gIFVTRVI6IHtcbiAgICB0eXBlOiAndXNlcnMnLFxuICAgIGFwaUdyb3VwOiBBVVRIX0FQSV9HUk9VUCxcbiAgfSxcbiAgR1JPVVA6IHtcbiAgICB0eXBlOiAnZ3JvdXBzJyxcbiAgICBhcGlHcm91cDogQVVUSF9BUElfR1JPVVAsXG4gIH0sXG4gIFBST0pFQ1RfTUVNQkVSOiB7XG4gICAgdHlwZTogJ3Byb2plY3RtZW1iZXJzJyxcbiAgICBhcGlHcm91cDogQVVUSF9BUElfR1JPVVAsXG4gIH0sXG4gIFJPTEVfVEVNUExBVEU6IHtcbiAgICB0eXBlOiAncm9sZXRlbXBsYXRlcycsXG4gICAgYXBpR3JvdXA6IEFVVEhfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgfSxcbiAgQkFUQ0hfQUNUSU9OOiB7XG4gICAgYXBpR3JvdXA6ICdiYXRjaC5hbGF1ZGEuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ2JhdGNoYWN0aW9ucycsXG4gIH0sXG4gIEVWRU5UOiB7XG4gICAgdHlwZTogJ2V2ZW50cycsXG4gICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgfSxcbiAgU0VSVklDRV9NT05JVE9SOiB7XG4gICAgYXBpR3JvdXA6IE1PTklUT1JJTkdfQVBJX0dST1VQLFxuICAgIHR5cGU6ICdzZXJ2aWNlbW9uaXRvcnMnLFxuICAgIGFwaVZlcnNpb246ICd2MScsXG4gIH0sXG4gIE9BTV9BUFBMSUNBVElPTjoge1xuICAgIGFwaUdyb3VwOiBPQU1fQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgICB0eXBlOiAnYXBwbGljYXRpb25zJyxcbiAgfSxcbiAgQVJHT0NEX0FQUExJQ0FUSU9OX1NFVDoge1xuICAgIGFwaUdyb3VwOiBBUkdPQ0RfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ2FwcGxpY2F0aW9uc2V0cycsXG4gIH0sXG4gIEFSR09DRF9BUFBMSUNBVElPTjoge1xuICAgIGFwaUdyb3VwOiBBUkdPQ0RfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ2FwcGxpY2F0aW9ucycsXG4gIH0sXG4gIE9QRVJBVE9SX1ZJRVc6IHtcbiAgICB0eXBlOiAnb3BlcmF0b3J2aWV3cycsXG4gICAgYXBpR3JvdXA6IEFQUF9BUElfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYmV0YTInLFxuICB9LFxuICBNT0RVTEVfUExVR0lOX1ZJRVc6IHtcbiAgICB0eXBlOiAnbW9kdWxlcGx1Z2ludmlldycsXG4gICAgYXBpR3JvdXA6IEFQUF9BUElfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYmV0YTInLFxuICB9LFxuICBSRVNPVVJDRV9QQVRDSDoge1xuICAgIGFwaUdyb3VwOiBPUEVSQVRPUl9BUElfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgICB0eXBlOiAncmVzb3VyY2VwYXRjaGVzJyxcbiAgfSxcbiAgQ09NUE9ORU5UX1BST0JFUjoge1xuICAgIHR5cGU6ICdjb21wb25lbnRwcm9iZXJzJyxcbiAgICBhcGlHcm91cDogQUlUX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICB9LFxuICBJTlNQRUNUSU9OOiB7XG4gICAgdHlwZTogJ2luc3BlY3Rpb25zJyxcbiAgICBhcGlHcm91cDogQUlUX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICB9LFxuICBJTlNQRUNUSU9OX0RFVEFJTFM6IHtcbiAgICB0eXBlOiAnaW5zcGVjdGlvbmRldGFpbHMnLFxuICAgIGFwaUdyb3VwOiBBSVRfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gIH0sXG4gIElOU1BFQ1RJT05fSVRFTVM6IHtcbiAgICB0eXBlOiAnaW5zcGVjdGlvbml0ZW1zJyxcbiAgICBhcGlHcm91cDogQUlUX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICB9LFxuICBNRVNTQUdFOiB7XG4gICAgYXBpR3JvdXA6IEFJVF9BUElfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgICB0eXBlOiAnbWVzc2FnZXMnLFxuICB9LFxuICBNT0RVTEVfSEVBTFRIOiB7XG4gICAgdHlwZTogJ21vZHVsZWhlYWx0aHMnLFxuICAgIGFwaUdyb3VwOiBBSVRfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gIH0sXG4gIE1PRFVMRV9IRUFMVEhfUkVDT1JEOiB7XG4gICAgdHlwZTogJ21vZHVsZWhlYWx0aHJlY29yZHMnLFxuICAgIGFwaUdyb3VwOiBBSVRfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gIH0sXG4gIEFVRElUOiB7XG4gICAgYXBpR3JvdXA6IEFJT1BTX0FQSV9HUk9VUCxcbiAgICB0eXBlOiAnYXVkaXRzJyxcbiAgfSxcbiAgTE9HX1BPTElDWToge1xuICAgIGFwaUdyb3VwOiBBSU9QU19BUElfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgICB0eXBlOiAnbG9ncG9saWNpZXMnLFxuICB9LFxuICBGVU5DVElPTl9URVNUOiB7XG4gICAgdHlwZTogJ2Z1bmN0aW9udGVzdHMnLFxuICAgIGFwaUdyb3VwOiAndGVzdGluZy5hbGF1ZGEuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gIH0sXG4gIFBST0pFQ1RfQklORElORzoge1xuICAgIHR5cGU6ICdwcm9qZWN0YmluZGluZ3MnLFxuICAgIGFwaUdyb3VwOiBBVVRIX0FQSV9HUk9VUCxcbiAgfSxcbiAgUFJPQkU6IHtcbiAgICB0eXBlOiAncHJvYmVzJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICAgIGFwaUdyb3VwOiBNT05JVE9SSU5HX0FQSV9HUk9VUCxcbiAgfSxcbiAgUkVQT1JUOiB7XG4gICAgdHlwZTogJ3JlcG9ydHMnLFxuICAgIGFwaUdyb3VwOiAnbWV0ZXJpbmcuYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFiZXRhMScsXG4gIH0sXG4gIE5BTUVTUEFDRV9SRVNPVVJDRV9SQVRJTzoge1xuICAgIHR5cGU6ICduYW1lc3BhY2VyZXNvdXJjZXJhdGlvcycsXG4gICAgYXBpR3JvdXA6IFJFU09VUkNFX0FQSV9HUk9VUCxcbiAgfSxcbiAgQ1VTVE9NX1JFU09VUkNFX0RFRklOSVRJT046IHtcbiAgICB0eXBlOiAnY3VzdG9tcmVzb3VyY2VkZWZpbml0aW9ucycsXG4gICAgYXBpR3JvdXA6ICdhcGlleHRlbnNpb25zLms4cy5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxYmV0YTEnLFxuICB9LFxuICBMSUNFTlNFOiB7XG4gICAgdHlwZTogJ3NlY3JldHMnLFxuICB9LFxuICBSRUNPUkQ6IHtcbiAgICB0eXBlOiAncmVjb3JkcycsXG4gICAgYXBpR3JvdXA6ICdtZXRlcmluZy5hbGF1ZGEuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgfSxcbiAgQ1NJX05PREU6IHtcbiAgICBhcGlHcm91cDogJ3N0b3JhZ2UuazhzLmlvJyxcbiAgICB0eXBlOiAnY3Npbm9kZXMnLFxuICB9LFxuICBUU0Y6IHtcbiAgICB0eXBlOiAndHNmcHJvZHVjdHMnLFxuICAgIGFwaUdyb3VwOiBQUk9EVUNUX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFiZXRhMScsXG4gIH0sXG4gIFREU1FMOiB7XG4gICAgdHlwZTogJ3Rkc3FsZGVwbG95cycsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgICBhcGlHcm91cDogUFJPRFVDVF9BUElfR1JPVVAsXG4gIH0sXG4gIFBPUlRBTDoge1xuICAgIHR5cGU6ICcqJyxcbiAgICBhcGlHcm91cDogUFJPRFVDVF9BUElfR1JPVVAsXG4gIH0sXG4gIE5BTUVTUEFDRV9JTVBPUlQ6IHtcbiAgICB0eXBlOiAnbmFtZXNwYWNlLWltcG9ydCcsXG4gICAgYXBpR3JvdXA6ICduYW1lc3BhY2UuYWxhdWRhLmlvJyxcbiAgfSxcbiAgQ0xVU1RFUl9BRERPTl9UWVBFOiB7XG4gICAgYXBpR3JvdXA6IFRLRV9QTEFURk9STV9BUElfR1JPVVAsXG4gICAgdHlwZTogJ2NsdXN0ZXJhZGRvbnR5cGVzJyxcbiAgfSxcbiAgQ0xVU1RFUl9DUkVERU5USUFMOiB7XG4gICAgYXBpR3JvdXA6IFRLRV9QTEFURk9STV9BUElfR1JPVVAsXG4gICAgdHlwZTogJ2NsdXN0ZXJjcmVkZW50aWFscycsXG4gIH0sXG4gIENPRElORzoge1xuICAgIHR5cGU6ICdjb2RpbmdzJyxcbiAgICBhcGlHcm91cDogUFJPRFVDVF9BUElfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgfSxcbiAgVElfTUFUUklYOiB7XG4gICAgdHlwZTogJ3RpbWF0cml4ZXMnLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgYXBpR3JvdXA6IFBST0RVQ1RfQVBJX0dST1VQLFxuICB9LFxuICBTWVNURU1fQ09ORklHOiB7XG4gICAgYXBpR3JvdXA6ICdhbGF1ZGEuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MScsXG4gICAgdHlwZTogJ3N5c3RlbWNvbmZpZ3MnLFxuICB9LFxuICBDRVJUSUZJQ0FURToge1xuICAgIHR5cGU6ICdjZXJ0aWZpY2F0ZXMnLFxuICAgIGFwaUdyb3VwOiAnY2VydC1tYW5hZ2VyLmlvJyxcbiAgfSxcbiAgU0VDVVJJVFlfUlVMRToge1xuICAgIHR5cGU6ICdzZWN1cml0eXJ1bGVzJyxcbiAgICBhcGlHcm91cDogQUlUX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICB9LFxuICBSRUdJT046IHtcbiAgICBhcGlHcm91cDogSU5GUkFTVFJVQ1RVUkVfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ3JlZ2lvbnMnLFxuICB9LFxuICBUT1BPTFZNX0NMVVNURVJfVjI6IHtcbiAgICB0eXBlOiAndG9wb2x2bWNsdXN0ZXJzJyxcbiAgICBhcGlHcm91cDogJ3RvcG9sdm0uY3lib3p1LmNvbScsXG4gICAgYXBpVmVyc2lvbjogJ3YyJyxcbiAgfSxcbiAgQlVDS0VUOiB7XG4gICAgYXBpR3JvdXA6ICdvYmplY3RzdG9yYWdlLms4cy5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgICB0eXBlOiAnYnVja2V0cycsXG4gIH0sXG4gIFNDSEVEVUxFOiB7XG4gICAgYXBpR3JvdXA6IFZFTEVST19BUElfR1JPVVAsXG4gICAgdHlwZTogJ3NjaGVkdWxlcycsXG4gIH0sXG4gIEJBQ0tVUF9TVE9SQUdFX0xPQ0FUSU9OOiB7XG4gICAgYXBpR3JvdXA6IFZFTEVST19BUElfR1JPVVAsXG4gICAgdHlwZTogJ2JhY2t1cHN0b3JhZ2Vsb2NhdGlvbnMnLFxuICB9LFxuICBCQUNLVVBfU1RPUkFHRV9MT0NBVElPTl9SRVBPOiB7XG4gICAgYXBpR3JvdXA6ICdhaXQudmVsZXJvLmlvJyxcbiAgICB0eXBlOiAnYmFja3Vwc3RvcmFnZWxvY2F0aW9ucmVwb2VzJyxcbiAgfSxcbiAgQkFDS1VQOiB7XG4gICAgYXBpR3JvdXA6IFZFTEVST19BUElfR1JPVVAsXG4gICAgdHlwZTogJ2JhY2t1cHMnLFxuICB9LFxuICBERUxFVEVfQkFDS1VQX1JFUVVFU1Q6IHtcbiAgICBhcGlHcm91cDogVkVMRVJPX0FQSV9HUk9VUCxcbiAgICB0eXBlOiAnZGVsZXRlYmFja3VwcmVxdWVzdHMnLFxuICB9LFxuICBFVENEX0JBQ0tVUF9SRUNPUkQ6IHtcbiAgICBhcGlHcm91cDogRVRDRF9CQUNLVVBfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ2V0Y2RiYWNrdXByZWNvcmRzJyxcbiAgfSxcbiAgUkVTVE9SRToge1xuICAgIGFwaUdyb3VwOiBWRUxFUk9fQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MScsXG4gICAgdHlwZTogJ3Jlc3RvcmVzJyxcbiAgfSxcbiAgUkFXX0RFVklDRToge1xuICAgIGFwaUdyb3VwOiAnbmF0aXZlc3Rvci5hbGF1ZGEuaW8nLFxuICAgIHR5cGU6ICdyYXdkZXZpY2VzJyxcbiAgfSxcbiAgQVBQX1JFTEVBU0VTOiB7XG4gICAgYXBpR3JvdXA6IE9QRVJBVE9SX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIHR5cGU6ICdhcHByZWxlYXNlcycsXG4gIH0sXG4gIE5PVElGSUNBVElPTl9URU1QTEFURToge1xuICAgIGFwaUdyb3VwOiBBSVRfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgICB0eXBlOiAnbm90aWZpY2F0aW9udGVtcGxhdGVzJyxcbiAgfSxcbiAgTk9USUZJQ0FUSU9OX0dST1VQOiB7XG4gICAgYXBpR3JvdXA6IEFJVF9BUElfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYmV0YTEnLFxuICAgIHR5cGU6ICdub3RpZmljYXRpb25ncm91cHMnLFxuICB9LFxuICBOT1RJRklDQVRJT046IHtcbiAgICBhcGlHcm91cDogQUlUX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFiZXRhMScsXG4gICAgdHlwZTogJ25vdGlmaWNhdGlvbnMnLFxuICB9LFxuICBUVU5ORUxfQ0xVU1RFUjoge1xuICAgIHR5cGU6ICd0dW5uZWxjbHVzdGVycycsXG4gICAgYXBpVmVyc2lvbjogJ3YxYmV0YTEnLFxuICAgIGFwaUdyb3VwOiBDTFVTVEVSX1hfSzhTX0FQSV9HUk9VUCxcbiAgfSxcbiAgSzhTX0NMVVNURVI6IHtcbiAgICB0eXBlOiAnY2x1c3RlcnMnLFxuICAgIGFwaUdyb3VwOiAnY2x1c3Rlci54LWs4cy5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxYmV0YTEnLFxuICB9LFxufSk7XG5cbmV4cG9ydCBjb25zdCBDT01NT05fUkVTT1VSQ0VfREVGSU5JVElPTlMgPSBfLlJFU09VUkNFX0RFRklOSVRJT05TO1xuZXhwb3J0IGNvbnN0IFJFU09VUkNFX1RZUEVTID0gXy5SRVNPVVJDRV9UWVBFUztcbmV4cG9ydCBjb25zdCBnZXRZYW1sQXBpVmVyc2lvbiA9IF8uZ2V0WWFtbEFwaVZlcnNpb247XG5cbmV4cG9ydCB0eXBlIFJlc291cmNlVHlwZSA9IGtleW9mIHR5cGVvZiBSRVNPVVJDRV9UWVBFUztcblxuZXhwb3J0IGNvbnN0IE1hY2hpbmVNZXRhOiBUeXBlTWV0YSA9IHtcbiAgYXBpVmVyc2lvbjogZ2V0WWFtbEFwaVZlcnNpb24oUkVTT1VSQ0VfVFlQRVMuVEtFX01BQ0hJTkUpLFxuICBraW5kOiAnTWFjaGluZScsXG59O1xuXG5leHBvcnQgY29uc3QgVEtFQ2x1c3Rlck1ldGE6IFR5cGVNZXRhID0ge1xuICBhcGlWZXJzaW9uOiBnZXRZYW1sQXBpVmVyc2lvbihSRVNPVVJDRV9UWVBFUy5US0VfQ0xVU1RFUiksXG4gIGtpbmQ6ICdDbHVzdGVyJyxcbn07XG5cbmV4cG9ydCBjb25zdCBTZXJ2aWNlVHlwZU1ldGEgPSB7XG4gIGFwaVZlcnNpb246IGdldFlhbWxBcGlWZXJzaW9uKFJFU09VUkNFX1RZUEVTLlNFUlZJQ0UpLFxuICBraW5kOiAnU2VydmljZScsXG59IGFzIGNvbnN0O1xuIl19