@arsedizioni/ars-utils 18.1.74 → 18.1.76

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 (113) hide show
  1. package/clipper.common/common/common.module.d.ts +1 -2
  2. package/clipper.common/common/definitions.d.ts +317 -0
  3. package/clipper.common/common/interceptors/auth.interceptor.d.ts +2 -5
  4. package/clipper.common/common/messages.d.ts +4 -0
  5. package/clipper.common/common/services/clipper.service.d.ts +12 -36
  6. package/clipper.ui/{ui/document/documents.d.ts → documents.d.ts} +2 -6
  7. package/clipper.ui/public_api.d.ts +6 -5
  8. package/clipper.ui/ui/browser-dialog/browser-dialog.component.d.ts +30 -143
  9. package/clipper.ui/ui/clipper.scss +270 -106
  10. package/clipper.ui/ui/document/document.component.d.ts +64 -118
  11. package/clipper.ui/ui/document-index/document-index.component.d.ts +34 -0
  12. package/clipper.ui/ui/document-manager/document-manager.d.ts +126 -0
  13. package/clipper.ui/ui/document-menu/document-menu.component.d.ts +28 -0
  14. package/clipper.ui/ui/references/references.component.d.ts +39 -73
  15. package/clipper.ui/ui/search-calendar/search-calendar.component.d.ts +40 -0
  16. package/clipper.ui/ui/search-dialog/search-dialog.component.d.ts +37 -40
  17. package/clipper.ui/ui/search-facets/search-facets.component.d.ts +22 -70
  18. package/clipper.ui/ui/search-free-text-help/search-free-text-help.component.d.ts +0 -1
  19. package/clipper.ui/ui/search-free-text-query-builder/search-free-text-query-builder.component.d.ts +8 -12
  20. package/clipper.ui/ui/search-result-item/search-result-item.component.d.ts +6 -4
  21. package/clipper.ui/ui/search-result-manager/search-result-manager.d.ts +147 -0
  22. package/esm2022/clipper.common/common/common.module.mjs +2 -3
  23. package/esm2022/clipper.common/common/definitions.mjs +1536 -0
  24. package/esm2022/clipper.common/common/interceptors/auth.interceptor.mjs +15 -15
  25. package/esm2022/clipper.common/common/messages.mjs +6 -1
  26. package/esm2022/clipper.common/common/services/clipper.service.mjs +65 -65
  27. package/esm2022/clipper.ui/documents.mjs +51 -0
  28. package/esm2022/clipper.ui/public_api.mjs +7 -6
  29. package/esm2022/clipper.ui/ui/browser-dialog/browser-dialog.component.mjs +320 -785
  30. package/esm2022/clipper.ui/ui/document/document.component.mjs +213 -320
  31. package/esm2022/clipper.ui/ui/document-index/document-index.component.mjs +121 -0
  32. package/esm2022/clipper.ui/ui/document-manager/document-manager.mjs +431 -0
  33. package/esm2022/clipper.ui/ui/document-menu/document-menu.component.mjs +56 -0
  34. package/esm2022/clipper.ui/ui/references/references.component.mjs +244 -438
  35. package/esm2022/clipper.ui/ui/search-calendar/search-calendar.component.mjs +116 -0
  36. package/esm2022/clipper.ui/ui/search-dialog/search-dialog.component.mjs +216 -205
  37. package/esm2022/clipper.ui/ui/search-facets/search-facets.component.mjs +157 -209
  38. package/esm2022/clipper.ui/ui/search-free-text-help/search-free-text-help.component.mjs +7 -8
  39. package/esm2022/clipper.ui/ui/search-free-text-query-builder/search-free-text-query-builder.component.mjs +22 -23
  40. package/esm2022/clipper.ui/ui/search-result-item/search-result-item.component.mjs +12 -10
  41. package/esm2022/clipper.ui/ui/search-result-manager/search-result-manager.mjs +462 -0
  42. package/esm2022/help/components/help-viewer/help-viewer.component.mjs +25 -28
  43. package/esm2022/support.common/common/definitions.mjs +21 -0
  44. package/esm2022/support.common/common/services/support.service.mjs +9 -7
  45. package/esm2022/support.common/public_api.mjs +2 -2
  46. package/esm2022/support.ui/ui/notifications-browser/notification/notification.component.mjs +3 -3
  47. package/esm2022/support.ui/ui/notifications-browser/notifications-browser.component.mjs +4 -5
  48. package/esm2022/ui/ui/dialogs/busy/busy-dialog.component.mjs +3 -3
  49. package/esm2022/ui/ui/dialogs/confirm/confirm-dialog.component.mjs +3 -3
  50. package/esm2022/ui/ui/dialogs/credentials/credentials-dialog.component.mjs +3 -3
  51. package/esm2022/ui/ui/dialogs/info/info-dialog.component.mjs +3 -3
  52. package/esm2022/ui/ui/dialogs/recover-password/recover-password-dialog.component.mjs +3 -3
  53. package/esm2022/ui/ui/dialogs/reset-password/reset-password-dialog.component.mjs +3 -3
  54. package/esm2022/ui.application/public_api.mjs +4 -1
  55. package/esm2022/ui.application/ui/components/button-selector/button-selector.component.mjs +163 -0
  56. package/esm2022/ui.application/ui/components/button-toggle/button-toggle.component.mjs +47 -0
  57. package/esm2022/ui.application/ui/components/chips-selector/chips-selector.component.mjs +239 -0
  58. package/esm2022/ui.application/ui/components/file-preview/file-preview.component.mjs +23 -24
  59. package/esm2022/ui.application/ui/components/filter-bar/filter-bar.component.mjs +3 -3
  60. package/esm2022/ui.application/ui/dialogs/prompt/prompt-dialog.component.mjs +3 -3
  61. package/esm2022/ui.application/ui/dialogs/prompt-date/prompt-date-dialog.component.mjs +3 -3
  62. package/esm2022/ui.application/ui/dialogs/prompt-time/prompt-time-dialog.component.mjs +3 -3
  63. package/esm2022/ui.application/ui/dialogs/select/select-dialog.component.mjs +3 -3
  64. package/esm2022/ui.application/ui/dialogs/select-file/select-file-dialog.component.mjs +3 -3
  65. package/esm2022/ui.application/ui/dialogs/select-picture/select-picture-dialog.component.mjs +3 -3
  66. package/esm2022/ui.application/ui/dialogs/select-tree/select-tree-dialog.component.mjs +3 -3
  67. package/esm2022/ui.application/ui/dialogs/send-to/send-to-dialog.component.mjs +3 -3
  68. package/esm2022/ui.application/ui/messages.mjs +3 -3
  69. package/fesm2022/arsedizioni-ars-utils-clipper.common.mjs +1608 -1507
  70. package/fesm2022/arsedizioni-ars-utils-clipper.common.mjs.map +1 -1
  71. package/fesm2022/arsedizioni-ars-utils-clipper.ui.mjs +2283 -2407
  72. package/fesm2022/arsedizioni-ars-utils-clipper.ui.mjs.map +1 -1
  73. package/fesm2022/arsedizioni-ars-utils-help.mjs +25 -28
  74. package/fesm2022/arsedizioni-ars-utils-help.mjs.map +1 -1
  75. package/fesm2022/arsedizioni-ars-utils-support.common.mjs +8 -6
  76. package/fesm2022/arsedizioni-ars-utils-support.common.mjs.map +1 -1
  77. package/fesm2022/arsedizioni-ars-utils-support.ui.mjs +5 -6
  78. package/fesm2022/arsedizioni-ars-utils-support.ui.mjs.map +1 -1
  79. package/fesm2022/arsedizioni-ars-utils-ui.application.mjs +450 -47
  80. package/fesm2022/arsedizioni-ars-utils-ui.application.mjs.map +1 -1
  81. package/fesm2022/arsedizioni-ars-utils-ui.mjs +12 -12
  82. package/fesm2022/arsedizioni-ars-utils-ui.mjs.map +1 -1
  83. package/help/components/help-viewer/help-viewer.component.d.ts +6 -10
  84. package/package.json +13 -13
  85. package/styles/ui.scss +140 -0
  86. package/support.common/common/services/support.service.d.ts +2 -2
  87. package/support.common/public_api.d.ts +1 -1
  88. package/ui.application/public_api.d.ts +3 -0
  89. package/ui.application/ui/components/button-selector/button-selector.component.d.ts +49 -0
  90. package/ui.application/ui/components/button-toggle/button-toggle.component.d.ts +26 -0
  91. package/ui.application/ui/components/chips-selector/chips-selector.component.d.ts +70 -0
  92. package/ui.application/ui/components/file-preview/file-preview.component.d.ts +4 -8
  93. package/ui.application/ui/messages.d.ts +2 -2
  94. package/clipper.common/common/clipper.d.ts +0 -119
  95. package/clipper.common/common/search.d.ts +0 -49
  96. package/clipper.ui/ui/document/base/document-base.component.d.ts +0 -38
  97. package/clipper.ui/ui/document/document-index/document-index.component.d.ts +0 -38
  98. package/clipper.ui/ui/document/document-menu/document-menu.component.d.ts +0 -30
  99. package/clipper.ui/ui/last-15-days/last-15-days.component.d.ts +0 -41
  100. package/esm2022/clipper.common/common/clipper.mjs +0 -1371
  101. package/esm2022/clipper.common/common/search.mjs +0 -69
  102. package/esm2022/clipper.ui/ui/document/base/document-base.component.mjs +0 -194
  103. package/esm2022/clipper.ui/ui/document/document-index/document-index.component.mjs +0 -121
  104. package/esm2022/clipper.ui/ui/document/document-menu/document-menu.component.mjs +0 -88
  105. package/esm2022/clipper.ui/ui/document/documents.mjs +0 -49
  106. package/esm2022/clipper.ui/ui/last-15-days/last-15-days.component.mjs +0 -107
  107. package/esm2022/help/components/help-search-query-builder/help-search-query-builder.component.mjs +0 -114
  108. package/esm2022/support.common/common/support.mjs +0 -21
  109. package/esm2022/ui.oauth/ui/components/login/loginOAuth.component.mjs +0 -198
  110. package/help/components/help-search-query-builder/help-search-query-builder.component.d.ts +0 -29
  111. package/help/help.scss +0 -72
  112. package/ui.oauth/ui/components/login/loginOAuth.component.d.ts +0 -38
  113. /package/support.common/common/{support.d.ts → definitions.d.ts} +0 -0
@@ -0,0 +1,1536 @@
1
+ export var ClipperSelectionMode;
2
+ (function (ClipperSelectionMode) {
3
+ ClipperSelectionMode[ClipperSelectionMode["Single"] = 1] = "Single";
4
+ ClipperSelectionMode[ClipperSelectionMode["Multi"] = 2] = "Multi";
5
+ ClipperSelectionMode[ClipperSelectionMode["Any"] = 3] = "Any";
6
+ })(ClipperSelectionMode || (ClipperSelectionMode = {}));
7
+ export var ClipperModuleGroup;
8
+ (function (ClipperModuleGroup) {
9
+ ClipperModuleGroup[ClipperModuleGroup["Home"] = 0] = "Home";
10
+ ClipperModuleGroup[ClipperModuleGroup["NormativaVigente"] = 1] = "NormativaVigente";
11
+ ClipperModuleGroup[ClipperModuleGroup["RimaniAggiornato"] = 2] = "RimaniAggiornato";
12
+ ClipperModuleGroup[ClipperModuleGroup["Contributi"] = 3] = "Contributi";
13
+ ClipperModuleGroup[ClipperModuleGroup["DGInfo"] = 4] = "DGInfo";
14
+ ClipperModuleGroup[ClipperModuleGroup["Calendario"] = 11] = "Calendario";
15
+ ClipperModuleGroup[ClipperModuleGroup["Archivio"] = 12] = "Archivio";
16
+ })(ClipperModuleGroup || (ClipperModuleGroup = {}));
17
+ export var ClipperModule;
18
+ (function (ClipperModule) {
19
+ ClipperModule[ClipperModule["NormativaVigente"] = 101] = "NormativaVigente";
20
+ ClipperModule[ClipperModule["News"] = 201] = "News";
21
+ ClipperModule[ClipperModule["GazzetteBollettiniEFontiDiverse"] = 202] = "GazzetteBollettiniEFontiDiverse";
22
+ ClipperModule[ClipperModule["Giurisprudenza"] = 203] = "Giurisprudenza";
23
+ ClipperModule[ClipperModule["ModificheAbrogazioniERinvii"] = 204] = "ModificheAbrogazioniERinvii";
24
+ ClipperModule[ClipperModule["ScadenzeESegnalazioni"] = 205] = "ScadenzeESegnalazioni";
25
+ ClipperModule[ClipperModule["AllerteAlimentari"] = 206] = "AllerteAlimentari";
26
+ ClipperModule[ClipperModule["Approfondimenti"] = 301] = "Approfondimenti";
27
+ ClipperModule[ClipperModule["QuesitiECasiRisolti"] = 302] = "QuesitiECasiRisolti";
28
+ ClipperModule[ClipperModule["MetodiDiAnalisi"] = 303] = "MetodiDiAnalisi";
29
+ ClipperModule[ClipperModule["Search"] = 999] = "Search";
30
+ })(ClipperModule || (ClipperModule = {}));
31
+ export var ClipperModel;
32
+ (function (ClipperModel) {
33
+ ClipperModel[ClipperModel["Unknown"] = 0] = "Unknown";
34
+ ClipperModel[ClipperModel["AggiornamentoNormativo"] = 2] = "AggiornamentoNormativo";
35
+ ClipperModel[ClipperModel["News"] = 3] = "News";
36
+ ClipperModel[ClipperModel["Articoli"] = 4] = "Articoli";
37
+ ClipperModel[ClipperModel["Juris"] = 5] = "Juris";
38
+ ClipperModel[ClipperModel["Quesiti"] = 6] = "Quesiti";
39
+ ClipperModel[ClipperModel["NormativaVigente"] = 9] = "NormativaVigente";
40
+ ClipperModel[ClipperModel["Scadenza"] = 10] = "Scadenza";
41
+ ClipperModel[ClipperModel["Coordinamento"] = 11] = "Coordinamento";
42
+ ClipperModel[ClipperModel["AllerteAlimentari"] = 13] = "AllerteAlimentari";
43
+ ClipperModel[ClipperModel["MetodiDiAnalisi"] = 14] = "MetodiDiAnalisi";
44
+ ClipperModel[ClipperModel["Segnalazione"] = 20] = "Segnalazione";
45
+ })(ClipperModel || (ClipperModel = {}));
46
+ export const ClipperModels = [
47
+ { value: ClipperModel.AggiornamentoNormativo, name: "Aggiornamento normativo" },
48
+ { value: ClipperModel.News, name: 'News' },
49
+ { value: ClipperModel.Articoli, name: 'Articoli' },
50
+ { value: ClipperModel.Juris, name: 'Juris' },
51
+ { value: ClipperModel.Quesiti, name: 'Quesiti' },
52
+ { value: ClipperModel.NormativaVigente, name: 'Normativa vigente' },
53
+ { value: ClipperModel.Scadenza, name: 'Scadenze' },
54
+ { value: ClipperModel.AllerteAlimentari, name: 'Allerte alimentari' },
55
+ { value: ClipperModel.MetodiDiAnalisi, name: 'Metodi di analisi' }
56
+ ];
57
+ export const ClipperModuleGroups = [
58
+ { name: "", value: ClipperModuleGroup.Home },
59
+ { name: "Normativa vigente", value: ClipperModuleGroup.NormativaVigente },
60
+ { name: "Rimani aggiornato", value: ClipperModuleGroup.RimaniAggiornato },
61
+ { name: "Contributi", value: ClipperModuleGroup.Contributi },
62
+ { name: "DG Info", value: ClipperModuleGroup.DGInfo },
63
+ { name: "Calendario", value: ClipperModuleGroup.Calendario },
64
+ { name: "Archivio", value: ClipperModuleGroup.Archivio }
65
+ ];
66
+ export const ClipperModules = [
67
+ { name: "Normativa vigente", value: ClipperModule.NormativaVigente, parentValue: ClipperModuleGroup.NormativaVigente },
68
+ { name: "News e approfondimenti", value: ClipperModule.News, parentValue: ClipperModuleGroup.RimaniAggiornato },
69
+ { name: "Gazzette, Bollettini e fonti deverse", value: ClipperModule.GazzetteBollettiniEFontiDiverse, parentValue: ClipperModuleGroup.RimaniAggiornato },
70
+ { name: "Giurisprudenza", value: ClipperModule.Giurisprudenza, parentValue: ClipperModuleGroup.RimaniAggiornato },
71
+ { name: "Modifiche, abrogazioni e rinvii", value: ClipperModule.ModificheAbrogazioniERinvii, parentValue: ClipperModuleGroup.RimaniAggiornato },
72
+ { name: "Scadenze e segnalazioni", value: ClipperModule.ScadenzeESegnalazioni, parentValue: ClipperModuleGroup.RimaniAggiornato },
73
+ { name: "Allerte alimentari", value: ClipperModule.AllerteAlimentari, parentValue: ClipperModuleGroup.RimaniAggiornato },
74
+ { name: "Approfondimenti", value: ClipperModule.Approfondimenti, parentValue: ClipperModuleGroup.Contributi },
75
+ { name: "Quesiti e casi risoli", value: ClipperModule.QuesitiECasiRisolti, parentValue: ClipperModuleGroup.Contributi },
76
+ { name: "Medodi di analisi", value: ClipperModule.MetodiDiAnalisi, parentValue: ClipperModuleGroup.Contributi }
77
+ ];
78
+ export const ClipperChannels = [
79
+ { value: "LA", name: "Lavoro e Ambiente" },
80
+ { value: "SA", name: "Sostanze Alimentari" },
81
+ { value: "E", name: "Energia" },
82
+ { value: "OP", name: "Merci Pericolose" }
83
+ ];
84
+ export const ClipperRegions = [
85
+ {
86
+ value: '4RAB',
87
+ name: 'Abruzzo',
88
+ },
89
+ {
90
+ value: '4RBA',
91
+ name: 'Basilicata',
92
+ },
93
+ {
94
+ value: '4RCAL',
95
+ name: 'Calabria',
96
+ },
97
+ {
98
+ value: '4RCAM',
99
+ name: 'Campania',
100
+ },
101
+ {
102
+ value: '4REM',
103
+ name: 'Emilia Romagna',
104
+ },
105
+ {
106
+ value: '4RFVG',
107
+ name: 'Friuli Venezia Giulia',
108
+ },
109
+ {
110
+ value: '4RLA',
111
+ name: 'Lazio',
112
+ },
113
+ {
114
+ value: '4RLI',
115
+ name: 'Liguria',
116
+ },
117
+ {
118
+ value: '4RLO',
119
+ name: 'Lombardia',
120
+ },
121
+ {
122
+ value: '4RMA',
123
+ name: 'Marche',
124
+ },
125
+ {
126
+ value: '4RMO',
127
+ name: 'Molise',
128
+ },
129
+ {
130
+ value: '4RPI',
131
+ name: 'Piemonte',
132
+ },
133
+ {
134
+ value: '4RPU',
135
+ name: 'Puglia',
136
+ },
137
+ {
138
+ value: '4RSA',
139
+ name: 'Sardegna',
140
+ },
141
+ {
142
+ value: '4RSI',
143
+ name: 'Sicilia',
144
+ },
145
+ {
146
+ value: '4RTO',
147
+ name: 'Toscana',
148
+ },
149
+ {
150
+ value: '4RTAA',
151
+ name: 'Trentino Alto Adige',
152
+ },
153
+ {
154
+ value: '4RUM',
155
+ name: 'Umbria',
156
+ },
157
+ {
158
+ value: '4RVA',
159
+ name: "Valle D'Aosta",
160
+ },
161
+ {
162
+ value: '4RVE',
163
+ name: 'Veneto',
164
+ },
165
+ {
166
+ value: '4PAT',
167
+ name: 'Prov. Aut. Trento',
168
+ },
169
+ {
170
+ value: '4PAB',
171
+ name: 'Prov. Aut. Bolzano',
172
+ }
173
+ ];
174
+ export const ClipperSectors = [
175
+ {
176
+ value: 'LC',
177
+ name: 'Legislazione comunitaria',
178
+ shortName: 'Comunitaria',
179
+ group: 'S',
180
+ channels: '|LA|SA|OP|E|',
181
+ },
182
+ {
183
+ value: 'LN',
184
+ name: 'Legislazione nazionale',
185
+ shortName: 'Nazionale',
186
+ group: 'S',
187
+ channels: '|LA|SA|OP|E|',
188
+ },
189
+ {
190
+ value: 'LR',
191
+ name: 'Legislazione regionale',
192
+ shortName: 'Regionale',
193
+ group: 'S',
194
+ channels: '|LA|SA|OP|E|',
195
+ },
196
+ {
197
+ value: '4RAB',
198
+ name: ' Abruzzo',
199
+ group: 'A',
200
+ channels: '|LA|SA|OP|E|',
201
+ },
202
+ {
203
+ value: '4PAB',
204
+ name: ' Prov. Aut. Bolzano',
205
+ group: 'A',
206
+ channels: '|LA|SA|OP|E|',
207
+ },
208
+ {
209
+ value: '4RBA',
210
+ name: ' Basilicata',
211
+ group: 'A',
212
+ channels: '|LA|SA|OP|E|',
213
+ },
214
+ {
215
+ value: '4RCAL',
216
+ name: ' Calabria',
217
+ group: 'A',
218
+ channels: '|LA|SA|OP|E|',
219
+ },
220
+ {
221
+ value: '4RCAM',
222
+ name: ' Campania',
223
+ group: 'A',
224
+ channels: '|LA|SA|OP|E|',
225
+ },
226
+ {
227
+ value: '4REM',
228
+ name: ' Emilia Romagna',
229
+ group: 'A',
230
+ channels: '|LA|SA|OP|E|',
231
+ },
232
+ {
233
+ value: '4RFVG',
234
+ name: ' Friuli Venezia Giulia',
235
+ group: 'A',
236
+ channels: '|LA|SA|OP|E|',
237
+ },
238
+ {
239
+ value: '4RLA',
240
+ name: ' Lazio',
241
+ group: 'A',
242
+ channels: '|LA|SA|OP|E|',
243
+ },
244
+ {
245
+ value: '4RLI',
246
+ name: ' Liguria',
247
+ group: 'A',
248
+ channels: '|LA|SA|OP|E|',
249
+ },
250
+ {
251
+ value: '4RLO',
252
+ name: ' Lombardia',
253
+ group: 'A',
254
+ channels: '|LA|SA|OP|E|',
255
+ },
256
+ {
257
+ value: '4RMA',
258
+ name: ' Marche',
259
+ group: 'A',
260
+ channels: '|LA|SA|OP|E|',
261
+ },
262
+ {
263
+ value: '4RMO',
264
+ name: ' Molise',
265
+ group: 'A',
266
+ channels: '|LA|SA|OP|E|',
267
+ },
268
+ {
269
+ value: '4RPI',
270
+ name: ' Piemonte',
271
+ group: 'A',
272
+ channels: '|LA|SA|OP|E|',
273
+ },
274
+ {
275
+ value: '4RPU',
276
+ name: ' Puglia',
277
+ group: 'A',
278
+ channels: '|LA|SA|OP|E|',
279
+ },
280
+ {
281
+ value: '4RSA',
282
+ name: ' Sardegna',
283
+ group: 'A',
284
+ channels: '|LA|SA|OP|E|',
285
+ },
286
+ {
287
+ value: '4RSI',
288
+ name: ' Sicilia',
289
+ group: 'A',
290
+ channels: '|LA|SA|OP|E|',
291
+ },
292
+ {
293
+ value: '4RTO',
294
+ name: ' Toscana',
295
+ group: 'A',
296
+ channels: '|LA|SA|OP|E|',
297
+ },
298
+ {
299
+ value: '4RTAA',
300
+ name: ' Trentino Alto Adige',
301
+ group: 'A',
302
+ channels: '|LA|SA|OP|E|',
303
+ },
304
+ {
305
+ value: '4PAT',
306
+ name: ' Prov. Aut. Trento',
307
+ group: 'A',
308
+ channels: '|LA|SA|OP|E|',
309
+ },
310
+ {
311
+ value: '4RUM',
312
+ name: ' Umbria',
313
+ group: 'A',
314
+ channels: '|LA|SA|OP|E|',
315
+ },
316
+ {
317
+ value: '4RVA',
318
+ name: " Valle D'Aosta",
319
+ group: 'A',
320
+ channels: '|LA|SA|OP|E|',
321
+ },
322
+ {
323
+ value: '4RVE',
324
+ name: ' Veneto',
325
+ group: 'A',
326
+ channels: '|LA|SA|OP|E|',
327
+ },
328
+ {
329
+ value: 'GC',
330
+ name: 'Giurisprudenza comunitaria',
331
+ shortName: 'Giuris. comunitaria',
332
+ group: 'S',
333
+ channels: '|LA|SA|OP|E|',
334
+ },
335
+ {
336
+ value: 'GN',
337
+ name: 'Giurisprudenza nazionale',
338
+ shortName: 'Giurisprudenza',
339
+ group: 'S',
340
+ channels: '|LA|SA|OP|E|',
341
+ },
342
+ {
343
+ value: 'TN',
344
+ name: 'Normativa tecnica',
345
+ shortName: 'Tecnica',
346
+ group: 'S',
347
+ channels: '|LA|SA|OP|E|',
348
+ },
349
+ {
350
+ value: 'TI',
351
+ name: 'Normativa tecnica internazionale',
352
+ shortName: 'Tecnica internaz.',
353
+ group: 'S',
354
+ channels: '|LA|SA|OP|E|',
355
+ },
356
+ {
357
+ value: 'NI',
358
+ name: 'Normativa internazionale',
359
+ shortName: 'Internazionale',
360
+ group: 'S',
361
+ channels: '|LA|SA|OP|E|',
362
+ },
363
+ {
364
+ value: 'SN',
365
+ name: 'Documentazione scientifica',
366
+ shortName: 'Scientifica',
367
+ group: 'S',
368
+ channels: '|SA|',
369
+ },
370
+ ];
371
+ export const ClipperSectorTypes = [
372
+ {
373
+ parentValue: 'NI',
374
+ value: '14',
375
+ name: 'Convenzione Internazionale',
376
+ },
377
+ {
378
+ parentValue: 'NI',
379
+ value: '6',
380
+ name: 'Accordo Multilaterale',
381
+ },
382
+ {
383
+ parentValue: 'LN',
384
+ value: '4',
385
+ name: 'Accordo (naz.)',
386
+ },
387
+ {
388
+ parentValue: 'LN',
389
+ value: '75',
390
+ name: 'Altri documenti (naz.)',
391
+ },
392
+ {
393
+ parentValue: 'LN',
394
+ value: '17',
395
+ name: 'Circolare Commissariale',
396
+ },
397
+ {
398
+ parentValue: 'LN',
399
+ value: '58',
400
+ name: 'Circolare (Comitati)',
401
+ },
402
+ {
403
+ parentValue: 'LN',
404
+ value: '10',
405
+ name: 'Circolare Ministeriale',
406
+ },
407
+ {
408
+ parentValue: 'LN',
409
+ value: '13',
410
+ name: 'Comunicato (naz.)',
411
+ },
412
+ {
413
+ parentValue: 'LN',
414
+ value: '15',
415
+ name: 'Costituzione della Repubblica',
416
+ },
417
+ {
418
+ parentValue: 'LN',
419
+ value: '18',
420
+ name: 'Decreto Commissariale',
421
+ },
422
+ {
423
+ parentValue: 'LN',
424
+ value: '21',
425
+ name: 'Decreto Capo Provv. Stato',
426
+ },
427
+ {
428
+ parentValue: 'LN',
429
+ value: '22',
430
+ name: 'Decreto Pres. Cons. Ministri',
431
+ },
432
+ {
433
+ parentValue: 'LN',
434
+ value: '25',
435
+ name: 'Decreto Presidente Repubblica',
436
+ },
437
+ {
438
+ parentValue: 'LN',
439
+ value: '27',
440
+ name: 'Decreto Legge',
441
+ },
442
+ {
443
+ parentValue: 'LN',
444
+ value: '28',
445
+ name: 'Decreto Legge Luogotenenziale',
446
+ },
447
+ {
448
+ parentValue: 'LN',
449
+ value: '29',
450
+ name: 'D.Lgs. Capo Provv. Stato',
451
+ },
452
+ {
453
+ parentValue: 'LN',
454
+ value: '30',
455
+ name: 'D.Lgs. Governo',
456
+ },
457
+ {
458
+ parentValue: 'LN',
459
+ value: '32',
460
+ name: 'D.Lgs. Luogotenenziale',
461
+ },
462
+ {
463
+ parentValue: 'LN',
464
+ value: '33',
465
+ name: 'Decreto Luogotenenziale',
466
+ },
467
+ {
468
+ parentValue: 'LN',
469
+ value: '34',
470
+ name: 'Decreto Ministeriale',
471
+ },
472
+ {
473
+ parentValue: 'LN',
474
+ value: '35',
475
+ name: 'Deliberazione (naz.)',
476
+ },
477
+ {
478
+ parentValue: 'LN',
479
+ value: '47',
480
+ name: 'Determinazione (naz.)',
481
+ },
482
+ {
483
+ parentValue: 'LN',
484
+ value: '26',
485
+ name: 'Documento di consultazione',
486
+ },
487
+ {
488
+ parentValue: 'LN',
489
+ value: '48',
490
+ name: 'Legge',
491
+ },
492
+ {
493
+ parentValue: 'LN',
494
+ value: '42',
495
+ name: 'Lettera Circolare (Comitati)',
496
+ },
497
+ {
498
+ parentValue: 'LN',
499
+ value: '43',
500
+ name: 'Lettera Circolare Ministeriale',
501
+ },
502
+ {
503
+ parentValue: 'LN',
504
+ value: '56',
505
+ name: 'Nota Ministeriale',
506
+ },
507
+ {
508
+ parentValue: 'LN',
509
+ value: '91',
510
+ name: 'Ordinanza Commissariale',
511
+ },
512
+ {
513
+ parentValue: 'LN',
514
+ value: '82',
515
+ name: 'Ordinanza Pres. Cons. Ministri',
516
+ },
517
+ {
518
+ parentValue: 'LN',
519
+ value: '57',
520
+ name: 'Ordinanza Ministeriale',
521
+ },
522
+ {
523
+ parentValue: 'LN',
524
+ value: '76',
525
+ name: 'Provvedimento (naz.)',
526
+ },
527
+ {
528
+ parentValue: 'LN',
529
+ value: '66',
530
+ name: 'Regio Decreto',
531
+ },
532
+ {
533
+ parentValue: 'LN',
534
+ value: '67',
535
+ name: 'Regio Decreto Legge',
536
+ },
537
+ {
538
+ parentValue: 'LN',
539
+ value: '68',
540
+ name: 'Regio Decreto Legislativo',
541
+ },
542
+ {
543
+ parentValue: 'LN',
544
+ value: '71',
545
+ name: 'Statuto delle Regioni Ordinarie',
546
+ },
547
+ {
548
+ parentValue: 'LC',
549
+ value: '2',
550
+ name: 'Accordi CEE/CE/UE con Stati terzi o altri soggetti',
551
+ },
552
+ {
553
+ parentValue: 'LC',
554
+ value: '7',
555
+ name: 'Atti diversi CEE/UE',
556
+ },
557
+ {
558
+ parentValue: 'LC',
559
+ value: '92',
560
+ name: 'Comunicazione CE',
561
+ },
562
+ {
563
+ parentValue: 'LC',
564
+ value: '87',
565
+ name: 'Decisione CEE/CEEA/CECA',
566
+ },
567
+ {
568
+ parentValue: 'LC',
569
+ value: '39',
570
+ name: 'Direttiva CEE/CEEA/CE',
571
+ },
572
+ {
573
+ parentValue: 'LC',
574
+ value: '89',
575
+ name: 'Parere CE',
576
+ },
577
+ {
578
+ parentValue: 'LC',
579
+ value: '95',
580
+ name: 'Raccomandazione CE',
581
+ },
582
+ {
583
+ parentValue: 'LC',
584
+ value: '64',
585
+ name: 'Regolamento CEE/UE',
586
+ },
587
+ {
588
+ parentValue: 'LC',
589
+ value: '96',
590
+ name: 'Risoluzione CE',
591
+ },
592
+ {
593
+ parentValue: 'LC',
594
+ value: '78',
595
+ name: 'Trattato CEE',
596
+ },
597
+ {
598
+ parentValue: 'LR',
599
+ value: '69',
600
+ name: 'Altri documenti (reg.)',
601
+ },
602
+ {
603
+ parentValue: 'LR',
604
+ value: '11',
605
+ name: 'Circolare Pres. Giunta Reg.',
606
+ },
607
+ {
608
+ parentValue: 'LR',
609
+ value: '46',
610
+ name: "Circolare dell'Assessore",
611
+ },
612
+ {
613
+ parentValue: 'LR',
614
+ value: '83',
615
+ name: 'Circolare reg.',
616
+ },
617
+ {
618
+ parentValue: 'LR',
619
+ value: '70',
620
+ name: 'Comunicato (reg.)',
621
+ },
622
+ {
623
+ parentValue: 'LR',
624
+ value: '80',
625
+ name: 'Decreto del Dirigente',
626
+ },
627
+ {
628
+ parentValue: 'LR',
629
+ value: '24',
630
+ name: 'Decreto Pres. Giunta Prov.',
631
+ },
632
+ {
633
+ parentValue: 'LR',
634
+ value: '23',
635
+ name: 'Decreto Pres. Giunta Reg.',
636
+ },
637
+ {
638
+ parentValue: 'LR',
639
+ value: '19',
640
+ name: "Decreto dell'Assessore Regionale",
641
+ },
642
+ {
643
+ parentValue: 'LR',
644
+ value: '31',
645
+ name: 'Delib. Consiglio Prov.',
646
+ },
647
+ {
648
+ parentValue: 'LR',
649
+ value: '36',
650
+ name: 'Delib. Consiglio Reg.',
651
+ },
652
+ {
653
+ parentValue: 'LR',
654
+ value: '37',
655
+ name: 'Delib. Giunta Prov.',
656
+ },
657
+ {
658
+ parentValue: 'LR',
659
+ value: '38',
660
+ name: 'Delib. Giunta Reg.',
661
+ },
662
+ {
663
+ parentValue: 'LR',
664
+ value: '81',
665
+ name: 'Determinazione del Dirigente',
666
+ },
667
+ {
668
+ parentValue: 'LR',
669
+ value: '12',
670
+ name: 'Direttiva (reg.)',
671
+ },
672
+ {
673
+ parentValue: 'LR',
674
+ value: '49',
675
+ name: 'Legge Prov. Aut.',
676
+ },
677
+ {
678
+ parentValue: 'LR',
679
+ value: '50',
680
+ name: 'Legge Regionale',
681
+ },
682
+ {
683
+ parentValue: 'LR',
684
+ value: '51',
685
+ name: 'Linee guida (reg.)',
686
+ },
687
+ {
688
+ parentValue: 'LR',
689
+ value: '9',
690
+ name: 'Ordinanza Pres. Prov.',
691
+ },
692
+ {
693
+ parentValue: 'LR',
694
+ value: '55',
695
+ name: 'Ordinanza Pres. Reg.',
696
+ },
697
+ {
698
+ parentValue: 'LR',
699
+ value: '85',
700
+ name: 'Provvedimento (reg.)',
701
+ },
702
+ {
703
+ parentValue: 'LR',
704
+ value: '65',
705
+ name: 'Regolamento Regionale',
706
+ },
707
+ {
708
+ parentValue: 'GN',
709
+ value: '63',
710
+ name: 'Decisione',
711
+ },
712
+ {
713
+ parentValue: 'GN',
714
+ value: '41',
715
+ name: 'Decreto Penale',
716
+ },
717
+ {
718
+ parentValue: 'GN',
719
+ value: '54',
720
+ name: 'Ordinanza',
721
+ },
722
+ {
723
+ parentValue: 'GN',
724
+ value: '62',
725
+ name: 'Ricorso',
726
+ },
727
+ {
728
+ parentValue: 'GN',
729
+ value: '72',
730
+ name: 'Sentenza',
731
+ },
732
+ {
733
+ parentValue: 'GC',
734
+ value: '88',
735
+ name: 'Ordinanza CE',
736
+ },
737
+ {
738
+ parentValue: 'GC',
739
+ value: '90',
740
+ name: 'Sentenza CE',
741
+ },
742
+ {
743
+ parentValue: 'TN',
744
+ value: '73',
745
+ name: 'Altri documenti (Enti ed Istituti)',
746
+ },
747
+ {
748
+ parentValue: 'TN',
749
+ value: '44',
750
+ name: 'Circolare (Enti ed Istituti)',
751
+ },
752
+ {
753
+ parentValue: 'TN',
754
+ value: '20',
755
+ name: 'Comunicato (Enti ed Istituti)',
756
+ },
757
+ {
758
+ parentValue: 'TN',
759
+ value: '60',
760
+ name: 'Decreto (Enti ed Istituti)',
761
+ },
762
+ {
763
+ parentValue: 'TN',
764
+ value: '40',
765
+ name: 'Delibera (Enti ed Istituti)',
766
+ },
767
+ {
768
+ parentValue: 'TN',
769
+ value: '53',
770
+ name: 'Fascicolo (Enti ed Istituti)',
771
+ },
772
+ {
773
+ parentValue: 'TN',
774
+ value: '45',
775
+ name: 'Istruzione Tecnica',
776
+ },
777
+ {
778
+ parentValue: 'TN',
779
+ value: '59',
780
+ name: 'Lettera Circolare (Enti ed Istituti)',
781
+ },
782
+ {
783
+ parentValue: 'TN',
784
+ value: '79',
785
+ name: 'Linee guida (Enti ed Istituti)',
786
+ },
787
+ {
788
+ parentValue: 'TN',
789
+ value: '98',
790
+ name: 'Norma Tecnica',
791
+ },
792
+ {
793
+ parentValue: 'TN',
794
+ value: '97',
795
+ name: 'Opuscolo Tecnico',
796
+ },
797
+ {
798
+ parentValue: 'TN',
799
+ value: '77',
800
+ name: 'Pubblicazione (Enti ed Istituti)',
801
+ },
802
+ {
803
+ parentValue: 'TN',
804
+ value: '86',
805
+ name: 'Quaderno',
806
+ },
807
+ {
808
+ parentValue: 'TN',
809
+ value: '52',
810
+ name: 'Regolamento (Enti ed Istituti)',
811
+ },
812
+ {
813
+ parentValue: 'TN',
814
+ value: '84',
815
+ name: 'Istruzione Operativa (Enti e Istituti)',
816
+ },
817
+ {
818
+ parentValue: 'TN',
819
+ value: '94',
820
+ name: 'Nota (Enti e Istituti)',
821
+ },
822
+ {
823
+ parentValue: 'NI',
824
+ value: '104',
825
+ name: 'Regolamento UNECE',
826
+ },
827
+ {
828
+ parentValue: 'SN',
829
+ value: '105',
830
+ name: 'Documento',
831
+ },
832
+ {
833
+ parentValue: 'TN',
834
+ value: '106',
835
+ name: 'Direttiva (Enti e Istituti)',
836
+ },
837
+ {
838
+ parentValue: 'TN',
839
+ value: '74',
840
+ name: 'Prassi di riferimento',
841
+ },
842
+ {
843
+ parentValue: 'LN',
844
+ value: '16',
845
+ name: 'Linee guida (naz.)',
846
+ },
847
+ {
848
+ parentValue: 'LN',
849
+ value: '3',
850
+ name: 'Direttiva (naz.)',
851
+ },
852
+ {
853
+ parentValue: 'TI',
854
+ value: '107',
855
+ name: 'Normativa Tecnica Internazionale',
856
+ },
857
+ ];
858
+ export const ClipperAuthors = [
859
+ {
860
+ sectorId: 'LR',
861
+ channels: null,
862
+ value: '4RAB',
863
+ name: 'Abruzzo',
864
+ },
865
+ {
866
+ sectorId: 'LR',
867
+ channels: null,
868
+ value: '4RBA',
869
+ name: 'Basilicata',
870
+ },
871
+ {
872
+ sectorId: 'LR',
873
+ channels: null,
874
+ value: '4RCAL',
875
+ name: 'Calabria',
876
+ },
877
+ {
878
+ sectorId: 'LR',
879
+ channels: null,
880
+ value: '4RCAM',
881
+ name: 'Campania',
882
+ },
883
+ {
884
+ sectorId: 'LR',
885
+ channels: null,
886
+ value: '4REM',
887
+ name: 'Emilia Romagna',
888
+ },
889
+ {
890
+ sectorId: 'LR',
891
+ channels: null,
892
+ value: '4RFVG',
893
+ name: 'Friuli Venezia Giulia',
894
+ },
895
+ {
896
+ sectorId: 'LR',
897
+ channels: null,
898
+ value: '4RLA',
899
+ name: 'Lazio',
900
+ },
901
+ {
902
+ sectorId: 'LR',
903
+ channels: null,
904
+ value: '4RLI',
905
+ name: 'Liguria',
906
+ },
907
+ {
908
+ sectorId: 'LR',
909
+ channels: null,
910
+ value: '4RLO',
911
+ name: 'Lombardia',
912
+ },
913
+ {
914
+ sectorId: 'LR',
915
+ channels: null,
916
+ value: '4RMA',
917
+ name: 'Marche',
918
+ },
919
+ {
920
+ sectorId: 'LR',
921
+ channels: null,
922
+ value: '4RMO',
923
+ name: 'Molise',
924
+ },
925
+ {
926
+ sectorId: 'LR',
927
+ channels: null,
928
+ value: '4RPI',
929
+ name: 'Piemonte',
930
+ },
931
+ {
932
+ sectorId: 'LR',
933
+ channels: null,
934
+ value: '4RPU',
935
+ name: 'Puglia',
936
+ },
937
+ {
938
+ sectorId: 'LR',
939
+ channels: null,
940
+ value: '4RSA',
941
+ name: 'Sardegna',
942
+ },
943
+ {
944
+ sectorId: 'LR',
945
+ channels: null,
946
+ value: '4RSI',
947
+ name: 'Sicilia',
948
+ },
949
+ {
950
+ sectorId: 'LR',
951
+ channels: null,
952
+ value: '4RTO',
953
+ name: 'Toscana',
954
+ },
955
+ {
956
+ sectorId: 'LR',
957
+ channels: null,
958
+ value: '4RTAA',
959
+ name: 'Trentino Trentino Alto Adige',
960
+ },
961
+ {
962
+ sectorId: 'LR',
963
+ channels: null,
964
+ value: '4RUM',
965
+ name: 'Umbria',
966
+ },
967
+ {
968
+ sectorId: 'LR',
969
+ channels: null,
970
+ value: '4RVA',
971
+ name: "Valle D'Aosta",
972
+ },
973
+ {
974
+ sectorId: 'LR',
975
+ channels: null,
976
+ value: '4RVE',
977
+ name: 'Veneto',
978
+ },
979
+ {
980
+ sectorId: 'LR',
981
+ channels: null,
982
+ value: '4PAB',
983
+ name: 'Prov. Autonoma di Bolzano',
984
+ },
985
+ {
986
+ sectorId: 'LR',
987
+ channels: null,
988
+ value: '4PAT',
989
+ name: 'Prov. Autonoma di Trento',
990
+ },
991
+ {
992
+ sectorId: 'TN',
993
+ channels: '|LA|',
994
+ value: '6CEI',
995
+ name: 'C.E.I. - Comitato Elettrotecnico Italiano',
996
+ },
997
+ {
998
+ sectorId: 'TN',
999
+ channels: '|LA|SA|',
1000
+ value: '6CNR',
1001
+ name: 'C.N.R. - Consiglio Nazionale delle Ricerche',
1002
+ },
1003
+ {
1004
+ sectorId: 'TN',
1005
+ channels: '|LA|',
1006
+ value: '6ENPI',
1007
+ name: 'E.N.P.I. - Ente Nazionale Prevenzione Infortuni',
1008
+ },
1009
+ {
1010
+ sectorId: 'TN',
1011
+ channels: '|LA|',
1012
+ value: '6INAI',
1013
+ name: 'I.N.A.I.L. - Istituto nazionale Assicurazione Infortuni sul Lavoro',
1014
+ },
1015
+ {
1016
+ sectorId: 'TN',
1017
+ channels: '|LA|',
1018
+ value: '6ISPS',
1019
+ name: 'I.S.P.E.S.L. - Istituto Superiore per la Prevenzione e la Sicurezza del Lavoro',
1020
+ },
1021
+ {
1022
+ sectorId: 'TN',
1023
+ channels: '|LA|',
1024
+ value: '6INPS',
1025
+ name: 'I.N.P.S. - Istituto Nazionale Previdenza Sociale',
1026
+ },
1027
+ {
1028
+ sectorId: 'TN',
1029
+ channels: '|LA|SA|',
1030
+ value: '6ISS',
1031
+ name: 'I.S.S. - Istituto Superiore di Sanità',
1032
+ },
1033
+ {
1034
+ sectorId: 'TN',
1035
+ channels: '|LA|SA|',
1036
+ value: '6UNI',
1037
+ name: 'U.N.I. - Ente Nazionale Italiano di Unificazione',
1038
+ },
1039
+ {
1040
+ sectorId: 'GN',
1041
+ channels: null,
1042
+ value: '5CC',
1043
+ name: 'Corte Costituzionale',
1044
+ },
1045
+ {
1046
+ sectorId: 'GN',
1047
+ channels: null,
1048
+ value: '5CCC',
1049
+ name: 'Corte di Cassazione Civile',
1050
+ },
1051
+ {
1052
+ sectorId: 'GN',
1053
+ channels: null,
1054
+ value: '5CCP',
1055
+ name: 'Corte di Cassazione Penale',
1056
+ },
1057
+ {
1058
+ sectorId: 'GN',
1059
+ channels: null,
1060
+ value: '5CASA',
1061
+ name: "Corte d'Assise d'Appello",
1062
+ },
1063
+ {
1064
+ sectorId: 'GN',
1065
+ channels: null,
1066
+ value: '5CAS',
1067
+ name: "Corte d'Assise",
1068
+ },
1069
+ {
1070
+ sectorId: 'GN',
1071
+ channels: null,
1072
+ value: '5CA',
1073
+ name: "Corte d'Appello",
1074
+ },
1075
+ {
1076
+ sectorId: 'GN',
1077
+ channels: null,
1078
+ value: '5PCA',
1079
+ name: "Procura Generale Corte d'Appello",
1080
+ },
1081
+ {
1082
+ sectorId: 'GN',
1083
+ channels: null,
1084
+ value: '5GDP',
1085
+ name: 'Giudice di Pace',
1086
+ },
1087
+ {
1088
+ sectorId: 'GN',
1089
+ channels: null,
1090
+ value: '5PR',
1091
+ name: 'Procura della Repubblica',
1092
+ },
1093
+ {
1094
+ sectorId: 'GN',
1095
+ channels: null,
1096
+ value: '5T',
1097
+ name: 'Tribunale',
1098
+ },
1099
+ {
1100
+ sectorId: 'GN',
1101
+ channels: null,
1102
+ value: '5P',
1103
+ name: 'Pretura',
1104
+ },
1105
+ {
1106
+ sectorId: 'GN',
1107
+ channels: null,
1108
+ value: '5CDS',
1109
+ name: 'Consiglio di Stato',
1110
+ },
1111
+ {
1112
+ sectorId: 'GN',
1113
+ channels: null,
1114
+ value: '5TAR',
1115
+ name: 'Tribunale Amministrativo Regionale',
1116
+ },
1117
+ {
1118
+ sectorId: 'GN',
1119
+ channels: null,
1120
+ value: '5TSA',
1121
+ name: 'Tribunale Superiore delle Acque',
1122
+ },
1123
+ {
1124
+ sectorId: 'GN',
1125
+ channels: null,
1126
+ value: '5TGA',
1127
+ name: 'Tribunale Regionale acque',
1128
+ },
1129
+ {
1130
+ sectorId: 'GN',
1131
+ channels: null,
1132
+ value: '5CTP',
1133
+ name: 'Commissione Tributaria Provinciale',
1134
+ },
1135
+ {
1136
+ sectorId: 'GN',
1137
+ channels: null,
1138
+ value: '5CTR',
1139
+ name: 'Commissione Tributaria Regionale',
1140
+ },
1141
+ {
1142
+ sectorId: 'GN',
1143
+ channels: null,
1144
+ value: '5CGAS',
1145
+ name: 'Cons. di Giustizia Amm.va della Sicilia',
1146
+ },
1147
+ {
1148
+ sectorId: 'GN',
1149
+ channels: null,
1150
+ value: '5CDC',
1151
+ name: 'Corte dei Conti',
1152
+ },
1153
+ {
1154
+ sectorId: 'GC',
1155
+ channels: null,
1156
+ value: '3CJCE',
1157
+ name: 'Corte di Giustizia CEE/CE',
1158
+ },
1159
+ {
1160
+ sectorId: 'GC',
1161
+ channels: null,
1162
+ value: '3CEDM',
1163
+ name: "Corte Europea per i Diritti dell'Uomo",
1164
+ },
1165
+ {
1166
+ sectorId: 'GC',
1167
+ channels: null,
1168
+ value: '3CWJ',
1169
+ name: 'Corte Internazionale di Giustizia',
1170
+ },
1171
+ {
1172
+ sectorId: 'GC',
1173
+ channels: null,
1174
+ value: '3T1CE',
1175
+ name: 'Tribunale di Primo Grado CEE/CE',
1176
+ },
1177
+ ];
1178
+ export const ClipperSources = [
1179
+ {
1180
+ value: 'ACCML',
1181
+ name: 'Accordi Multilaterali',
1182
+ },
1183
+ {
1184
+ value: 'AEEG',
1185
+ name: "Sito Autorità per l'Energia Elettrica, il Gas e il Sistema Idrico",
1186
+ },
1187
+ {
1188
+ value: 'ARERA',
1189
+ name: 'Sito Autorità di Regolazione per Energia, Reti e Ambiente',
1190
+ },
1191
+ {
1192
+ value: 'BUR',
1193
+ name: 'Bollettino Uff. Regione',
1194
+ },
1195
+ {
1196
+ value: 'BUS',
1197
+ name: 'Suppl. speciale al Bollettino Uff.',
1198
+ },
1199
+ {
1200
+ value: 'BUSO',
1201
+ name: 'Suppl. ordin. al Bollettino Uff.',
1202
+ },
1203
+ {
1204
+ value: 'BUSS',
1205
+ name: 'Suppl. straord. al Bollettino Uff.',
1206
+ },
1207
+ {
1208
+ value: 'GU',
1209
+ name: 'Gazzetta Ufficiale Italiana',
1210
+ },
1211
+ {
1212
+ value: 'GUCC',
1213
+ name: 'Gazz. Uff. Corte Costituzionale',
1214
+ },
1215
+ {
1216
+ value: 'GUCE',
1217
+ name: 'Gazzetta ufficiale delle Comunità europee',
1218
+ },
1219
+ {
1220
+ value: 'GUES',
1221
+ name: 'Gazz. Uff. Ediz. Speciale',
1222
+ },
1223
+ {
1224
+ value: 'GURS',
1225
+ name: 'Gazz. Uff. Regione Sicilia',
1226
+ },
1227
+ {
1228
+ value: 'GUS',
1229
+ name: 'Gazz. Uff. Serie Speciale',
1230
+ },
1231
+ {
1232
+ value: 'GUSO',
1233
+ name: 'Suppl. ordin. alla Gazzetta Ufficiale',
1234
+ },
1235
+ {
1236
+ value: 'GUSS',
1237
+ name: 'Suppl. straord. alla Gazzetta Ufficiale',
1238
+ },
1239
+ {
1240
+ value: 'GUUE',
1241
+ name: 'Gazzetta ufficiale dell’Unione europea',
1242
+ },
1243
+ {
1244
+ value: 'MAC',
1245
+ name: 'Massimario Civile',
1246
+ },
1247
+ {
1248
+ value: 'MAP',
1249
+ name: 'Massimario Penale',
1250
+ },
1251
+ {
1252
+ value: 'NONE',
1253
+ name: 'Fonti diverse',
1254
+ }
1255
+ ];
1256
+ export const ClipperDocumentChangeReason = [
1257
+ { name: 'Abrogazione', value: 1 },
1258
+ { name: 'Annullamento', value: 5 },
1259
+ { name: 'Modifica', value: 2 },
1260
+ { name: 'Sostiuzione', value: 3 },
1261
+ { name: 'Segnalazione', value: 6 },
1262
+ { name: 'Rettifica', value: 7 },
1263
+ ];
1264
+ export class ClipperSearchResult {
1265
+ constructor() {
1266
+ this.days = null;
1267
+ this.interval = null;
1268
+ this.items = null;
1269
+ this.facets = null;
1270
+ this.total = null;
1271
+ this.searchInfo = null;
1272
+ this.searchParams = null;
1273
+ this.snapshotMode = null;
1274
+ }
1275
+ }
1276
+ export class ClipperSearchFacetsSnapshot {
1277
+ constructor() {
1278
+ this.groups = [];
1279
+ this.usedGroups = [];
1280
+ this.hasFacets = false;
1281
+ this.hasTooManyResults = false;
1282
+ this.sector = null;
1283
+ this.author = null;
1284
+ this.anchor = null;
1285
+ this.type = null;
1286
+ this.reason = null;
1287
+ this.fromDate = null;
1288
+ this.toDate = null;
1289
+ this.interval = null;
1290
+ this.changedInterval = false;
1291
+ this.changedSector = false;
1292
+ this.changedAuthor = false;
1293
+ this.changedAnchor = false;
1294
+ this.changedType = false;
1295
+ this.changedReason = false;
1296
+ }
1297
+ }
1298
+ export class ClipperSearchCalendarSnapshotResult {
1299
+ constructor() {
1300
+ this.months = null;
1301
+ }
1302
+ }
1303
+ export const ClipperConfig = {
1304
+ // Client uri
1305
+ uri: null,
1306
+ // Service uri
1307
+ serviceUri: null,
1308
+ // Global state
1309
+ loggedIn: false,
1310
+ loginInfo: null
1311
+ };
1312
+ export var ClipperSort;
1313
+ (function (ClipperSort) {
1314
+ ClipperSort[ClipperSort["Default"] = 0] = "Default";
1315
+ ClipperSort[ClipperSort["Relevance"] = 1] = "Relevance";
1316
+ ClipperSort[ClipperSort["DateAsc"] = 2] = "DateAsc";
1317
+ ClipperSort[ClipperSort["DateDesc"] = 3] = "DateDesc";
1318
+ ClipperSort[ClipperSort["SourceDateAsc"] = 4] = "SourceDateAsc";
1319
+ ClipperSort[ClipperSort["SourceDateDesc"] = 5] = "SourceDateDesc";
1320
+ ClipperSort[ClipperSort["Popularity"] = 6] = "Popularity";
1321
+ })(ClipperSort || (ClipperSort = {}));
1322
+ export var ClipperDocumentSnapshotMode;
1323
+ (function (ClipperDocumentSnapshotMode) {
1324
+ ClipperDocumentSnapshotMode[ClipperDocumentSnapshotMode["ReferencesIn"] = 1] = "ReferencesIn";
1325
+ ClipperDocumentSnapshotMode[ClipperDocumentSnapshotMode["ReferencesOut"] = 2] = "ReferencesOut";
1326
+ ClipperDocumentSnapshotMode[ClipperDocumentSnapshotMode["ChangesIn"] = 3] = "ChangesIn";
1327
+ ClipperDocumentSnapshotMode[ClipperDocumentSnapshotMode["ChangesOut"] = 5] = "ChangesOut";
1328
+ ClipperDocumentSnapshotMode[ClipperDocumentSnapshotMode["Juris"] = 4] = "Juris";
1329
+ })(ClipperDocumentSnapshotMode || (ClipperDocumentSnapshotMode = {}));
1330
+ export var ClipperFacet;
1331
+ (function (ClipperFacet) {
1332
+ ClipperFacet[ClipperFacet["Sector"] = 1] = "Sector";
1333
+ ClipperFacet[ClipperFacet["Year"] = 2] = "Year";
1334
+ ClipperFacet[ClipperFacet["DocumentType"] = 3] = "DocumentType";
1335
+ ClipperFacet[ClipperFacet["Topic"] = 4] = "Topic";
1336
+ ClipperFacet[ClipperFacet["Article"] = 5] = "Article";
1337
+ ClipperFacet[ClipperFacet["Author"] = 6] = "Author";
1338
+ ClipperFacet[ClipperFacet["Reason"] = 95] = "Reason";
1339
+ })(ClipperFacet || (ClipperFacet = {}));
1340
+ export class ClipperUtils {
1341
+ /**
1342
+ * Return the Clipper group name
1343
+ * @param value: the group value
1344
+ * @returns the group name
1345
+ */
1346
+ static getClipperModuleGroupName(value) {
1347
+ return ClipperModuleGroups.filter((n) => n.value === value)?.[0].name;
1348
+ }
1349
+ /**
1350
+ * Return the list of modules of a group
1351
+ * @param value: the module name
1352
+ * @returns the list of modules
1353
+ */
1354
+ static getClipperModuleGroupItems(value) {
1355
+ return ClipperModules.filter((n) => n.parentValue === value);
1356
+ }
1357
+ /**
1358
+ * Return the list of available sort options for a list of modules
1359
+ * @param modules : the modules list
1360
+ * @returns the list of availbale sort options
1361
+ */
1362
+ static getClipperAvailableSortOptions(modules = undefined, params = undefined) {
1363
+ const options = [
1364
+ { name: "Data decrescente", value: 1 },
1365
+ { name: "Data crescente", value: 2 },
1366
+ { name: "Data fonte decrescente", value: 3 },
1367
+ { name: "Data fonte crescente", value: 4 },
1368
+ { name: "Rilevanza", value: 5 },
1369
+ { name: "Popolarità", value: 6 },
1370
+ ];
1371
+ let sortOptions = [];
1372
+ if (params && ClipperSearchUtils.isTextQuery(params)) {
1373
+ sortOptions.push(options[4]);
1374
+ }
1375
+ if (modules && modules.length > 0 && modules.length === 1) {
1376
+ if (modules[0].value === ClipperModule.NormativaVigente) {
1377
+ sortOptions.push(options[0]);
1378
+ sortOptions.push(options[1]);
1379
+ sortOptions.push(options[2]);
1380
+ sortOptions.push(options[3]);
1381
+ sortOptions.push(options[5]);
1382
+ }
1383
+ else if (modules[0].value === ClipperModule.GazzetteBollettiniEFontiDiverse) {
1384
+ sortOptions.push(options[2]);
1385
+ sortOptions.push(options[3]);
1386
+ }
1387
+ else {
1388
+ sortOptions.push(options[0]);
1389
+ sortOptions.push(options[1]);
1390
+ }
1391
+ }
1392
+ else {
1393
+ sortOptions.push(options[0]);
1394
+ sortOptions.push(options[1]);
1395
+ }
1396
+ return sortOptions;
1397
+ }
1398
+ }
1399
+ export class ClipperSearchUtils {
1400
+ /**
1401
+ * Clear the search params object
1402
+ * @param params : the search params to clear
1403
+ */
1404
+ static clear(params) {
1405
+ params.sector = null;
1406
+ params.sectors = null;
1407
+ params.author = null;
1408
+ params.authors = null;
1409
+ params.topic = null;
1410
+ params.taxonomy = null;
1411
+ params.taxonomyPath = null;
1412
+ params.taxonomyNode = null;
1413
+ params.number = null;
1414
+ params.fromDate = null;
1415
+ params.toDate = null;
1416
+ params.year = null;
1417
+ params.sourceNumber = null;
1418
+ params.source = null;
1419
+ params.sourceFromDate = null;
1420
+ params.sourceToDate = null;
1421
+ params.sourceYear = null;
1422
+ params.text = null;
1423
+ params.titleOnly = false;
1424
+ params.type = null;
1425
+ params.showUnreadDocumentsOnly = false;
1426
+ params.showCommentedDocumentsOnly = false;
1427
+ params.channels = [...ClipperChannels];
1428
+ params.changeReason = null;
1429
+ params.changedNumber = null;
1430
+ params.changedYear = null;
1431
+ params.changedTitle = null;
1432
+ params.modifierNumber = null;
1433
+ params.modifierYear = null;
1434
+ params.modifierTitle = null;
1435
+ }
1436
+ /**
1437
+ * Prepare the module specific query
1438
+ * @param params : the search params to use
1439
+ * @param module : the module to prepare the search params for
1440
+ * @returns the new search params
1441
+ */
1442
+ static prepare(params, module) {
1443
+ let moduleParams = {};
1444
+ moduleParams.channels = params.channels;
1445
+ moduleParams.text = params.text;
1446
+ moduleParams.titleOnly = params.titleOnly;
1447
+ moduleParams.first = params.first;
1448
+ moduleParams.count = params.count;
1449
+ moduleParams.sortMode = params.sortMode;
1450
+ switch (module) {
1451
+ case ClipperModule.ScadenzeESegnalazioni:
1452
+ case ClipperModule.QuesitiECasiRisolti:
1453
+ break;
1454
+ case ClipperModule.News:
1455
+ case ClipperModule.AllerteAlimentari:
1456
+ moduleParams.fromDate = params.fromDate;
1457
+ moduleParams.toDate = params.toDate;
1458
+ break;
1459
+ case ClipperModule.GazzetteBollettiniEFontiDiverse:
1460
+ case ClipperModule.NormativaVigente:
1461
+ moduleParams.sector = params.sector;
1462
+ moduleParams.sectors = params.sectors;
1463
+ moduleParams.author = params.author;
1464
+ moduleParams.authors = params.authors;
1465
+ moduleParams.type = params.type;
1466
+ moduleParams.topic = params.topic;
1467
+ moduleParams.number = params.number;
1468
+ moduleParams.year = params.year;
1469
+ moduleParams.fromDate = params.fromDate;
1470
+ moduleParams.toDate = params.toDate;
1471
+ moduleParams.showCommentedDocumentsOnly = params.showCommentedDocumentsOnly;
1472
+ moduleParams.source = params.source;
1473
+ moduleParams.sourceNumber = params.sourceNumber;
1474
+ moduleParams.sourceYear = params.sourceYear;
1475
+ moduleParams.sourceFromDate = params.sourceFromDate;
1476
+ moduleParams.sourceToDate = params.sourceToDate;
1477
+ break;
1478
+ case ClipperModule.Giurisprudenza:
1479
+ moduleParams.sector = params.sector;
1480
+ moduleParams.sectors = params.sectors;
1481
+ moduleParams.number = params.number;
1482
+ moduleParams.year = params.year;
1483
+ moduleParams.fromDate = params.fromDate;
1484
+ moduleParams.toDate = params.toDate;
1485
+ break;
1486
+ }
1487
+ return moduleParams;
1488
+ }
1489
+ /**
1490
+ * Check if current filter is a text based search
1491
+ * @param params : the search params to check
1492
+ * @returns true if is a text based search
1493
+ */
1494
+ static isTextQuery(params) {
1495
+ return params.text != null && params.text?.length > 0;
1496
+ }
1497
+ /**
1498
+ * Try to add a query
1499
+ * @param q : the new query
1500
+ * @param queries : the new query
1501
+ */
1502
+ static concatTextQuery(q, queries) {
1503
+ if (q && q.length > 0) {
1504
+ if (queries.length == 0 && (q[0] === '+' || q[0] === '-'))
1505
+ q = q.substring(1);
1506
+ if (q[q.length - 1] !== '\"' && q.indexOf(' ') !== -1)
1507
+ q = "\"" + q + "\"";
1508
+ if (queries.length > 0)
1509
+ queries += ", ";
1510
+ queries += q;
1511
+ }
1512
+ return queries;
1513
+ }
1514
+ /**
1515
+ * Normalize text query
1516
+ * @param text : the text query to normalize
1517
+ * @returns : the text normalized or null
1518
+ */
1519
+ static normalizeTextQuery(text) {
1520
+ if (!text || text.length === 0)
1521
+ return null;
1522
+ let q = '';
1523
+ let queries = '';
1524
+ for (let i = 0; i < text.length; i++) {
1525
+ if (text[i] === ',') {
1526
+ queries = this.concatTextQuery(q.trim(), queries);
1527
+ q = '';
1528
+ }
1529
+ else
1530
+ q += text[i];
1531
+ }
1532
+ queries = this.concatTextQuery(q.trim(), queries);
1533
+ return queries;
1534
+ }
1535
+ }
1536
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmaW5pdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcnMtdXRpbHMvY2xpcHBlci5jb21tb24vY29tbW9uL2RlZmluaXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sQ0FBTixJQUFZLG9CQUlYO0FBSkQsV0FBWSxvQkFBb0I7SUFDOUIsbUVBQVUsQ0FBQTtJQUNWLGlFQUFTLENBQUE7SUFDVCw2REFBTyxDQUFBO0FBQ1QsQ0FBQyxFQUpXLG9CQUFvQixLQUFwQixvQkFBb0IsUUFJL0I7QUFFRCxNQUFNLENBQU4sSUFBWSxrQkFRWDtBQVJELFdBQVksa0JBQWtCO0lBQzVCLDJEQUFRLENBQUE7SUFDUixtRkFBb0IsQ0FBQTtJQUNwQixtRkFBb0IsQ0FBQTtJQUNwQix1RUFBYyxDQUFBO0lBQ2QsK0RBQVUsQ0FBQTtJQUNWLHdFQUFlLENBQUE7SUFDZixvRUFBYSxDQUFBO0FBQ2YsQ0FBQyxFQVJXLGtCQUFrQixLQUFsQixrQkFBa0IsUUFRN0I7QUFFRCxNQUFNLENBQU4sSUFBWSxhQWFYO0FBYkQsV0FBWSxhQUFhO0lBQ3ZCLDJFQUFzQixDQUFBO0lBQ3RCLG1EQUFVLENBQUE7SUFDVix5R0FBcUMsQ0FBQTtJQUNyQyx1RUFBb0IsQ0FBQTtJQUNwQixpR0FBaUMsQ0FBQTtJQUNqQyxxRkFBMkIsQ0FBQTtJQUMzQiw2RUFBdUIsQ0FBQTtJQUN2Qix5RUFBcUIsQ0FBQTtJQUNyQixpRkFBeUIsQ0FBQTtJQUN6Qix5RUFBcUIsQ0FBQTtJQUNyQix1REFBVyxDQUFBO0FBRWIsQ0FBQyxFQWJXLGFBQWEsS0FBYixhQUFhLFFBYXhCO0FBRUQsTUFBTSxDQUFOLElBQVksWUFhWDtBQWJELFdBQVksWUFBWTtJQUN0QixxREFBVyxDQUFBO0lBQ1gsbUZBQTBCLENBQUE7SUFDMUIsK0NBQVEsQ0FBQTtJQUNSLHVEQUFZLENBQUE7SUFDWixpREFBUyxDQUFBO0lBQ1QscURBQVcs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LFFBQVEsRUFBRSxJQUFJO1FBQ2QsUUFBUSxFQUFFLElBQUk7UUFDZCxLQUFLLEVBQUUsTUFBTTtRQUNiLElBQUksRUFBRSxpQ0FBaUM7S0FDeEM7SUFDRDtRQUNFLFFBQVEsRUFBRSxJQUFJO1FBQ2QsUUFBUSxFQUFFLElBQUk7UUFDZCxLQUFLLEVBQUUsTUFBTTtRQUNiLElBQUksRUFBRSwyQkFBMkI7S0FDbEM7SUFDRDtRQUNFLFFBQVEsRUFBRSxJQUFJO1FBQ2QsUUFBUSxFQUFFLElBQUk7UUFDZCxLQUFLLEVBQUUsTUFBTTtRQUNiLElBQUksRUFBRSxvQ0FBb0M7S0FDM0M7SUFDRDtRQUNFLFFBQVEsRUFBRSxJQUFJO1FBQ2QsUUFBUSxFQUFFLElBQUk7UUFDZCxLQUFLLEVBQUUsTUFBTTtRQUNiLElBQUksRUFBRSxrQ0FBa0M7S0FDekM7SUFDRDtRQUNFLFFBQVEsRUFBRSxJQUFJO1FBQ2QsUUFBUSxFQUFFLElBQUk7UUFDZCxLQUFLLEVBQUUsT0FBTztRQUNkLElBQUksRUFBRSx5Q0FBeUM7S0FDaEQ7SUFDRDtRQUNFLFFBQVEsRUFBRSxJQUFJO1FBQ2QsUUFBUSxFQUFFLElBQUk7UUFDZCxLQUFLLEVBQUUsTUFBTTtRQUNiLElBQUksRUFBRSxpQkFBaUI7S0FDeEI7SUFDRDtRQUNFLFFBQVEsRUFBRSxJQUFJO1FBQ2QsUUFBUSxFQUFFLElBQUk7UUFDZCxLQUFLLEVBQUUsT0FBTztRQUNkLElBQUksRUFBRSwyQkFBMkI7S0FDbEM7SUFDRDtRQUNFLFFBQVEsRUFBRSxJQUFJO1FBQ2QsUUFBUSxFQUFFLElBQUk7UUFDZCxLQUFLLEVBQUUsT0FBTztRQUNkLElBQUksRUFBRSx1Q0FBdUM7S0FDOUM7SUFDRDtRQUNFLFFBQVEsRUFBRSxJQUFJO1FBQ2QsUUFBUSxFQUFFLElBQUk7UUFDZCxLQUFLLEVBQUUsTUFBTTtRQUNiLElBQUksRUFBRSxtQ0FBbUM7S0FDMUM7SUFDRDtRQUNFLFFBQVEsRUFBRSxJQUFJO1FBQ2QsUUFBUSxFQUFFLElBQUk7UUFDZCxLQUFLLEVBQUUsT0FBTztRQUNkLElB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Q1QsQ0FBQzs7Z0JBQ0ksQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNwQixDQUFDO1FBQ0QsT0FBTyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2xELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5hbWVWYWx1ZUl0ZW0gfSBmcm9tICdAYXJzZWRpemlvbmkvYXJzLXV0aWxzL2NvcmUnO1xyXG5cclxuXHJcbmV4cG9ydCBlbnVtIENsaXBwZXJTZWxlY3Rpb25Nb2RlIHtcclxuICBTaW5nbGUgPSAxLFxyXG4gIE11bHRpID0gMixcclxuICBBbnkgPSAzXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIENsaXBwZXJNb2R1bGVHcm91cCB7XHJcbiAgSG9tZSA9IDAsXHJcbiAgTm9ybWF0aXZhVmlnZW50ZSA9IDEsXHJcbiAgUmltYW5pQWdnaW9ybmF0byA9IDIsXHJcbiAgQ29udHJpYnV0aSA9IDMsXHJcbiAgREdJbmZvID0gNCxcclxuICBDYWxlbmRhcmlvID0gMTEsXHJcbiAgQXJjaGl2aW8gPSAxMlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBDbGlwcGVyTW9kdWxlIHtcclxuICBOb3JtYXRpdmFWaWdlbnRlID0gMTAxLFxyXG4gIE5ld3MgPSAyMDEsXHJcbiAgR2F6emV0dGVCb2xsZXR0aW5pRUZvbnRpRGl2ZXJzZSA9IDIwMixcclxuICBHaXVyaXNwcnVkZW56YSA9IDIwMyxcclxuICBNb2RpZmljaGVBYnJvZ2F6aW9uaUVSaW52aWkgPSAyMDQsXHJcbiAgU2NhZGVuemVFU2VnbmFsYXppb25pID0gMjA1LFxyXG4gIEFsbGVydGVBbGltZW50YXJpID0gMjA2LFxyXG4gIEFwcHJvZm9uZGltZW50aSA9IDMwMSxcclxuICBRdWVzaXRpRUNhc2lSaXNvbHRpID0gMzAyLFxyXG4gIE1ldG9kaURpQW5hbGlzaSA9IDMwMyxcclxuICBTZWFyY2g9IDk5OVxyXG5cclxufVxyXG5cclxuZXhwb3J0IGVudW0gQ2xpcHBlck1vZGVsIHtcclxuICBVbmtub3duID0gMCxcclxuICBBZ2dpb3JuYW1lbnRvTm9ybWF0aXZvID0gMixcclxuICBOZXdzID0gMyxcclxuICBBcnRpY29saSA9IDQsXHJcbiAgSnVyaXMgPSA1LFxyXG4gIFF1ZXNpdGkgPSA2LFxyXG4gIE5vcm1hdGl2YVZpZ2VudGUgPSA5LFxyXG4gIFNjYWRlbnphID0gMTAsXHJcbiAgQ29vcmRpbmFtZW50byA9IDExLFxyXG4gIEFsbGVydGVBbGltZW50YXJpID0gMTMsXHJcbiAgTWV0b2RpRGlBbmFsaXNpID0gMTQsXHJcbiAgU2VnbmFsYXppb25lID0gMjBcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IENsaXBwZXJNb2RlbHM6IE5hbWVWYWx1ZUl0ZW08bnVtYmVyPltdID0gW1xyXG4gIHsgdmFsdWU6IENsaXBwZXJNb2RlbC5BZ2dpb3JuYW1lbnRvTm9ybWF0aXZvLCBuYW1lOiBcIkFnZ2lvcm5hbWVudG8gbm9ybWF0aXZvXCIgfSxcclxuICB7IHZhbHVlOiBDbGlwcGVyTW9kZWwuTmV3cywgbmFtZTogJ05ld3MnIH0sXHJcbiAgeyB2YWx1ZTogQ2xpcHBlck1vZGVsLkFydGljb2xpLCBuYW1lOiAnQXJ0aWNvbGknIH0sXHJcbiAgeyB2YWx1ZTogQ2xpcHBlck1vZGVsLkp1cmlzLCBuYW1lOiAnSnVyaXMnIH0sXHJcbiAgeyB2YWx1ZTogQ2xpcHBlck1vZGVsLlF1ZXNpdGksIG5hbWU6ICdRdWVzaXRpJyB9LFxyXG4gIHsgdmFsdWU6IENsaXBwZXJNb2RlbC5Ob3JtYXRpdmFWaWdlbnRlLCBuYW1lOiAnTm9ybWF0aXZhIHZpZ2VudGUnIH0sXHJcbiAgeyB2YWx1ZTogQ2xpcHBlck1vZGVsLlNjYWRlbnphLCBuYW1lOiAnU2NhZGVuemUnIH0sXHJcbiAgeyB2YWx1ZTogQ2xpcHBlck1vZGVsLkFsbGVydGVBbGltZW50YXJpLCBuYW1lOiAnQWxsZXJ0ZSBhbGltZW50YXJpJyB9LFxyXG4gIHsgdmFsdWU6IENsaXBwZXJNb2RlbC5NZXRvZGlEaUFuYWxpc2ksIG5hbWU6ICdNZXRvZGkgZGkgYW5hbGlzaScgfVxyXG5dXHJcblxyXG5leHBvcnQgY29uc3QgQ2xpcHBlck1vZHVsZUdyb3VwczogTmFtZVZhbHVlSXRlbTxudW1iZXI+W10gPSBbXHJcbiAgeyBuYW1lOiBcIlwiLCB2YWx1ZTogQ2xpcHBlck1vZHVsZUdyb3VwLkhvbWUgfSxcclxuICB7IG5hbWU6IFwiTm9ybWF0aXZhIHZpZ2VudGVcIiwgdmFsdWU6IENsaXBwZXJNb2R1bGVHcm91cC5Ob3JtYXRpdmFWaWdlbnRlIH0sXHJcbiAgeyBuYW1lOiBcIlJpbWFuaSBhZ2dpb3JuYXRvXCIsIHZhbHVlOiBDbGlwcGVyTW9kdWxlR3JvdXAuUmltYW5pQWdnaW9ybmF0byB9LFxyXG4gIHsgbmFtZTogXCJDb250cmlidXRpXCIsIHZhbHVlOiBDbGlwcGVyTW9kdWxlR3JvdXAuQ29udHJpYnV0aSB9LFxyXG4gIHsgbmFtZTogXCJERyBJbmZvXCIsIHZhbHVlOiBDbGlwcGVyTW9kdWxlR3JvdXAuREdJbmZvIH0sXHJcbiAgeyBuYW1lOiBcIkNhbGVuZGFyaW9cIiwgdmFsdWU6IENsaXBwZXJNb2R1bGVHcm91cC5DYWxlbmRhcmlvIH0sXHJcbiAgeyBuYW1lOiBcIkFyY2hpdmlvXCIsIHZhbHVlOiBDbGlwcGVyTW9kdWxlR3JvdXAuQXJjaGl2aW8gfVxyXG5dO1xyXG5cclxuZXhwb3J0IGNvbnN0IENsaXBwZXJNb2R1bGVzOiBOYW1lVmFsdWVJdGVtPG51bWJlcj5bXSA9IFtcclxuICB7IG5hbWU6IFwiTm9ybWF0aXZhIHZpZ2VudGVcIiwgdmFsdWU6IENsaXBwZXJNb2R1bGUuTm9ybWF0aXZhVmlnZW50ZSwgcGFyZW50VmFsdWU6IENsaXBwZXJNb2R1bGVHcm91cC5Ob3JtYXRpdmFWaWdlbnRlIH0sXHJcbiAgeyBuYW1lOiBcIk5ld3MgZSBhcHByb2ZvbmRpbWVudGlcIiwgdmFsdWU6IENsaXBwZXJNb2R1bGUuTmV3cywgcGFyZW50VmFsdWU6IENsaXBwZXJNb2R1bGVHcm91cC5SaW1hbmlBZ2dpb3JuYXRvIH0sXHJcbiAgeyBuYW1lOiBcIkdhenpldHRlLCBCb2xsZXR0aW5pIGUgZm9udGkgZGV2ZXJzZVwiLCB2YWx1ZTogQ2xpcHBlck1vZHVsZS5HYXp6ZXR0ZUJvbGxldHRpbmlFRm9udGlEaXZlcnNlLCBwYXJlbnRWYWx1ZTogQ2xpcHBlck1vZHVsZUdyb3VwLlJpbWFuaUFnZ2lvcm5hdG8gfSxcclxuICB7IG5hbWU6IFwiR2l1cmlzcHJ1ZGVuemFcIiwgdmFsdWU6IENsaXBwZXJNb2R1bGUuR2l1cmlzcHJ1ZGVuemEsIHBhcmVudFZhbHVlOiBDbGlwcGVyTW9kdWxlR3JvdXAuUmltYW5pQWdnaW9ybmF0byB9LFxyXG4gIHsgbmFtZTogXCJNb2RpZmljaGUsIGFicm9nYXppb25pIGUgcmludmlpXCIsIHZhbHVlOiBDbGlwcGVyTW9kdWxlLk1vZGlmaWNoZUFicm9nYXppb25pRVJpbnZpaSwgcGFyZW50VmFsdWU6IENsaXBwZXJNb2R1bGVHcm91cC5SaW1hbmlBZ2dpb3JuYXRvIH0sXHJcbiAgeyBuYW1lOiBcIlNjYWRlbnplIGUgc2VnbmFsYXppb25pXCIsIHZhbHVlOiBDbGlwcGVyTW9kdWxlLlNjYWRlbnplRVNlZ25hbGF6aW9uaSwgcGFyZW50VmFsdWU6IENsaXBwZXJNb2R1bGVHcm91cC5SaW1hbmlBZ2dpb3JuYXRvIH0sXHJcbiAgeyBuYW1lOiBcIkFsbGVydGUgYWxpbWVudGFyaVwiLCB2YWx1ZTogQ2xpcHBlck1vZHVsZS5BbGxlcnRlQWxpbWVudGFyaSwgcGFyZW50VmFsdWU6IENsaXBwZXJNb2R1bGVHcm91cC5SaW1hbmlBZ2dpb3JuYXRvIH0sXHJcbiAgeyBuYW1lOiBcIkFwcHJvZm9uZGltZW50aVwiLCB2YWx1ZTogQ2xpcHBlck1vZHVsZS5BcHByb2ZvbmRpbWVudGksIHBhcmVudFZhbHVlOiBDbGlwcGVyTW9kdWxlR3JvdXAuQ29udHJpYnV0aSB9LFxyXG4gIHsgbmFtZTogXCJRdWVzaXRpIGUgY2FzaSByaXNvbGlcIiwgdmFsdWU6IENsaXBwZXJNb2R1bGUuUXVlc2l0aUVDYXNpUmlzb2x0aSwgcGFyZW50VmFsdWU6IENsaXBwZXJNb2R1bGVHcm91cC5Db250cmlidXRpIH0sXHJcbiAgeyBuYW1lOiBcIk1lZG9kaSBkaSBhbmFsaXNpXCIsIHZhbHVlOiBDbGlwcGVyTW9kdWxlLk1ldG9kaURpQW5hbGlzaSwgcGFyZW50VmFsdWU6IENsaXBwZXJNb2R1bGVHcm91cC5Db250cmlidXRpIH1cclxuXVxyXG5cclxuZXhwb3J0IGNvbnN0IENsaXBwZXJDaGFubmVsczogTmFtZVZhbHVlSXRlbTxzdHJpbmc+W10gPSBbXHJcbiAgeyB2YWx1ZTogXCJMQVwiLCBuYW1lOiBcIkxhdm9ybyBlIEFtYmllbnRlXCIgfSxcclxuICB7IHZhbHVlOiBcIlNBXCIsIG5hbWU6IFwiU29zdGFuemUgQWxpbWVudGFyaVwiIH0sXHJcbiAgeyB2YWx1ZTogXCJFXCIsIG5hbWU6IFwiRW5lcmdpYVwiIH0sXHJcbiAgeyB2YWx1ZTogXCJPUFwiLCBuYW1lOiBcIk1lcmNpIFBlcmljb2xvc2VcIiB9XHJcbl1cclxuXHJcbmV4cG9ydCBjb25zdCBDbGlwcGVyUmVnaW9uczogTmFtZVZhbHVlSXRlbTxzdHJpbmc+W10gPSBbXHJcbiAge1xyXG4gICAgdmFsdWU6ICc0UkFCJyxcclxuICAgIG5hbWU6ICdBYnJ1enpvJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFJCQScsXHJcbiAgICBuYW1lOiAnQmFzaWxpY2F0YScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJzRSQ0FMJyxcclxuICAgIG5hbWU6ICdDYWxhYnJpYScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJzRSQ0FNJyxcclxuICAgIG5hbWU6ICdDYW1wYW5pYScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJzRSRU0nLFxyXG4gICAgbmFtZTogJ0VtaWxpYSBSb21hZ25hJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFJGVkcnLFxyXG4gICAgbmFtZTogJ0ZyaXVsaSBWZW5lemlhIEdpdWxpYScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJzRSTEEnLFxyXG4gICAgbmFtZTogJ0xhemlvJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFJMSScsXHJcbiAgICBuYW1lOiAnTGlndXJpYScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJzRSTE8nLFxyXG4gICAgbmFtZTogJ0xvbWJhcmRpYScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJzRSTUEnLFxyXG4gICAgbmFtZTogJ01hcmNoZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJzRSTU8nLFxyXG4gICAgbmFtZTogJ01vbGlzZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJzRSUEknLFxyXG4gICAgbmFtZTogJ1BpZW1vbnRlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFJQVScsXHJcbiAgICBuYW1lOiAnUHVnbGlhJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFJTQScsXHJcbiAgICBuYW1lOiAnU2FyZGVnbmEnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdmFsdWU6ICc0UlNJJyxcclxuICAgIG5hbWU6ICdTaWNpbGlhJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFJUTycsXHJcbiAgICBuYW1lOiAnVG9zY2FuYScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJzRSVEFBJyxcclxuICAgIG5hbWU6ICdUcmVudGlubyBBbHRvIEFkaWdlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFJVTScsXHJcbiAgICBuYW1lOiAnVW1icmlhJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFJWQScsXHJcbiAgICBuYW1lOiBcIlZhbGxlIEQnQW9zdGFcIixcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFJWRScsXHJcbiAgICBuYW1lOiAnVmVuZXRvJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFBBVCcsXHJcbiAgICBuYW1lOiAnUHJvdi4gQXV0LiBUcmVudG8nLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdmFsdWU6ICc0UEFCJyxcclxuICAgIG5hbWU6ICdQcm92LiBBdXQuIEJvbHphbm8nLFxyXG4gIH1cclxuXVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZWN0b3JJbmZvIGV4dGVuZHMgTmFtZVZhbHVlSXRlbTxzdHJpbmc+IHtcclxuXHJcbiAgc2hvcnROYW1lPzogc3RyaW5nIHwgbnVsbDtcclxuICBncm91cD86IHN0cmluZyB8IG51bGw7XHJcbiAgY2hhbm5lbHM/OiBzdHJpbmcgfCBudWxsO1xyXG4gIHNlY3RvcklkPzogc3RyaW5nIHwgbnVsbDtcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IENsaXBwZXJTZWN0b3JzOiBTZWN0b3JJbmZvW10gPSBbXHJcbiAge1xyXG4gICAgdmFsdWU6ICdMQycsXHJcbiAgICBuYW1lOiAnTGVnaXNsYXppb25lIGNvbXVuaXRhcmlhJyxcclxuICAgIHNob3J0TmFtZTogJ0NvbXVuaXRhcmlhJyxcclxuICAgIGdyb3VwOiAnUycsXHJcbiAgICBjaGFubmVsczogJ3xMQXxTQXxPUHxFfCcsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJ0xOJyxcclxuICAgIG5hbWU6ICdMZWdpc2xhemlvbmUgbmF6aW9uYWxlJyxcclxuICAgIHNob3J0TmFtZTogJ05hemlvbmFsZScsXHJcbiAgICBncm91cDogJ1MnLFxyXG4gICAgY2hhbm5lbHM6ICd8TEF8U0F8T1B8RXwnLFxyXG4gIH0sXHJcblxyXG4gIHtcclxuICAgIHZhbHVlOiAnTFInLFxyXG4gICAgbmFtZTogJ0xlZ2lzbGF6aW9uZSByZWdpb25hbGUnLFxyXG4gICAgc2hvcnROYW1lOiAnUmVnaW9uYWxlJyxcclxuICAgIGdyb3VwOiAnUycsXHJcbiAgICBjaGFubmVsczogJ3xMQXxTQXxPUHxFfCcsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJzRSQUInLFxyXG4gICAgbmFtZTogJyAgQWJydXp6bycsXHJcbiAgICBncm91cDogJ0EnLFxyXG4gICAgY2hhbm5lbHM6ICd8TEF8U0F8T1B8RXwnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdmFsdWU6ICc0UEFCJyxcclxuICAgIG5hbWU6ICcgIFByb3YuIEF1dC4gQm9semFubycsXHJcbiAgICBncm91cDogJ0EnLFxyXG4gICAgY2hhbm5lbHM6ICd8TEF8U0F8T1B8RXwnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdmFsdWU6ICc0UkJBJyxcclxuICAgIG5hbWU6ICcgIEJhc2lsaWNhdGEnLFxyXG4gICAgZ3JvdXA6ICdBJyxcclxuICAgIGNoYW5uZWxzOiAnfExBfFNBfE9QfEV8JyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFJDQUwnLFxyXG4gICAgbmFtZTogJyAgQ2FsYWJyaWEnLFxyXG4gICAgZ3JvdXA6ICdBJyxcclxuICAgIGNoYW5uZWxzOiAnfExBfFNBfE9QfEV8JyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFJDQU0nLFxyXG4gICAgbmFtZTogJyAgQ2FtcGFuaWEnLFxyXG4gICAgZ3JvdXA6ICdBJyxcclxuICAgIGNoYW5uZWxzOiAnfExBfFNBfE9QfEV8JyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFJFTScsXHJcbiAgICBuYW1lOiAnICBFbWlsaWEgUm9tYWduYScsXHJcbiAgICBncm91cDogJ0EnLFxyXG4gICAgY2hhbm5lbHM6ICd8TEF8U0F8T1B8RXwnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdmFsdWU6ICc0UkZWRycsXHJcbiAgICBuYW1lOiAnICBGcml1bGkgVmVuZXppYSBHaXVsaWEnLFxyXG4gICAgZ3JvdXA6ICdBJyxcclxuICAgIGNoYW5uZWxzOiAnfExBfFNBfE9QfEV8JyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFJMQScsXHJcbiAgICBuYW1lOiAnICBMYXppbycsXHJcbiAgICBncm91cDogJ0EnLFxyXG4gICAgY2hhbm5lbHM6ICd8TEF8U0F8T1B8RXwnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdmFsdWU6ICc0UkxJJyxcclxuICAgIG5hbWU6ICcgIExpZ3VyaWEnLFxyXG4gICAgZ3JvdXA6ICdBJyxcclxuICAgIGNoYW5uZWxzOiAnfExBfFNBfE9QfEV8JyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFJMTycsXHJcbiAgICBuYW1lOiAnICBMb21iYXJkaWEnLFxyXG4gICAgZ3JvdXA6ICdBJyxcclxuICAgIGNoYW5uZWxzOiAnfExBfFNBfE9QfEV8JyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFJNQScsXHJcbiAgICBuYW1lOiAnICBNYXJjaGUnLFxyXG4gICAgZ3JvdXA6ICdBJyxcclxuICAgIGNoYW5uZWxzOiAnfExBfFNBfE9QfEV8JyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFJNTycsXHJcbiAgICBuYW1lOiAnICBNb2xpc2UnLFxyXG4gICAgZ3JvdXA6ICdBJyxcclxuICAgIGNoYW5uZWxzOiAnfExBfFNBfE9QfEV8JyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFJQSScsXHJcbiAgICBuYW1lOiAnICBQaWVtb250ZScsXHJcbiAgICBncm91cDogJ0EnLFxyXG4gICAgY2hhbm5lbHM6ICd8TEF8U0F8T1B8RXwnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdmFsdWU6ICc0UlBVJyxcclxuICAgIG5hbWU6ICcgIFB1Z2xpYScsXHJcbiAgICBncm91cDogJ0EnLFxyXG4gICAgY2hhbm5lbHM6ICd8TEF8U0F8T1B8RXwnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdmFsdWU6ICc0UlNBJyxcclxuICAgIG5hbWU6ICcgIFNhcmRlZ25hJyxcclxuICAgIGdyb3VwOiAnQScsXHJcbiAgICBjaGFubmVsczogJ3xMQXxTQXxPUHxFfCcsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJzRSU0knLFxyXG4gICAgbmFtZTogJyAgU2ljaWxpYScsXHJcbiAgICBncm91cDogJ0EnLFxyXG4gICAgY2hhbm5lbHM6ICd8TEF8U0F8T1B8RXwnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdmFsdWU6ICc0UlRPJyxcclxuICAgIG5hbWU6ICcgIFRvc2NhbmEnLFxyXG4gICAgZ3JvdXA6ICdBJyxcclxuICAgIGNoYW5uZWxzOiAnfExBfFNBfE9QfEV8JyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnNFJUQUEnLFxyXG4gICAgbmFtZTogJyAgVHJlbnRpbm8gQWx0byBBZGlnZScsXHJcbiAgICBncm91cDogJ0EnLFxyXG4gICAgY2hhbm5lbHM6ICd8TEF8U0F8T1B8RXwnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdmFsdWU6ICc0UEFUJyxcclxuICAgIG5hbWU6ICcgIFByb3YuIEF1dC4gVHJlbnRvJyxcclxuICAgIGdyb3VwOiAnQScsXHJcbiAgICBjaGFubmVsczogJ3xMQXxTQXxPUHxFfCcsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJzRSVU0nLFxyXG4gICAgbmFtZTogJyAgVW1icmlhJyxcclxuICAgIGdyb3VwOiAnQScsXHJcbiAgICBjaGFubmVsczogJ3xMQXxTQXxPUHxFfCcsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJzRSVkEnLFxyXG4gICAgbmFtZTogXCIgIFZhbGxlIEQnQW9zdGFcIixcclxuICAgIGdyb3VwOiAnQScsXHJcbiAgICBjaGFubmVsczogJ3xMQXxTQXxPUHxFfCcsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJzRSVkUnLFxyXG4gICAgbmFtZTogJyAgVmVuZXRvJyxcclxuICAgIGdyb3VwOiAnQScsXHJcbiAgICBjaGFubmVsczogJ3xMQXxTQXxPUHxFfCcsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJ0dDJyxcclxuICAgIG5hbWU6ICdHaXVyaXNwcnVkZW56YSBjb211bml0YXJpYScsXHJcbiAgICBzaG9ydE5hbWU6ICdHaXVyaXMuIGNvbXVuaXRhcmlhJyxcclxuICAgIGdyb3VwOiAnUycsXHJcbiAgICBjaGFubmVsczogJ3xMQXxTQXxPUHxFfCcsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJ0dOJyxcclxuICAgIG5hbWU6ICdHaXVyaXNwcnVkZW56YSBuYXppb25hbGUnLFxyXG4gICAgc2hvcnROYW1lOiAnR2l1cmlzcHJ1ZGVuemEnLFxyXG4gICAgZ3JvdXA6ICdTJyxcclxuICAgIGNoYW5uZWxzOiAnfExBfFNBfE9QfEV8JyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnVE4nLFxyXG4gICAgbmFtZTogJ05vcm1hdGl2YSB0ZWNuaWNhJyxcclxuICAgIHNob3J0TmFtZTogJ1RlY25pY2EnLFxyXG4gICAgZ3JvdXA6ICdTJyxcclxuICAgIGNoYW5uZWxzOiAnfExBfFNBfE9QfEV8JyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnVEknLFxyXG4gICAgbmFtZTogJ05vcm1hdGl2YSB0ZWNuaWNhIGludGVybmF6aW9uYWxlJyxcclxuICAgIHNob3J0TmFtZTogJ1RlY25pY2EgaW50ZXJuYXouJyxcclxuICAgIGdyb3VwOiAnUycsXHJcbiAgICBjaGFubmVsczogJ3xMQXxTQXxPUHxFfCcsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJ05JJyxcclxuICAgIG5hbWU6ICdOb3JtYXRpdmEgaW50ZXJuYXppb25hbGUnLFxyXG4gICAgc2hvcnROYW1lOiAnSW50ZXJuYXppb25hbGUnLFxyXG4gICAgZ3JvdXA6ICdTJyxcclxuICAgIGNoYW5uZWxzOiAnfExBfFNBfE9QfEV8JyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnU04nLFxyXG4gICAgbmFtZTogJ0RvY3VtZW50YXppb25lIHNjaWVudGlmaWNhJyxcclxuICAgIHNob3J0TmFtZTogJ1NjaWVudGlmaWNhJyxcclxuICAgIGdyb3VwOiAnUycsXHJcbiAgICBjaGFubmVsczogJ3xTQXwnLFxyXG4gIH0sXHJcbl1cclxuXHJcbmV4cG9ydCBjb25zdCBDbGlwcGVyU2VjdG9yVHlwZXM6IE5hbWVWYWx1ZUl0ZW08c3RyaW5nPltdID0gW1xyXG5cclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ05JJyxcclxuICAgIHZhbHVlOiAnMTQnLFxyXG4gICAgbmFtZTogJ0NvbnZlbnppb25lIEludGVybmF6aW9uYWxlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnTkknLFxyXG4gICAgdmFsdWU6ICc2JyxcclxuICAgIG5hbWU6ICdBY2NvcmRvIE11bHRpbGF0ZXJhbGUnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMTicsXHJcbiAgICB2YWx1ZTogJzQnLFxyXG4gICAgbmFtZTogJ0FjY29yZG8gKG5hei4pJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnTE4nLFxyXG4gICAgdmFsdWU6ICc3NScsXHJcbiAgICBuYW1lOiAnQWx0cmkgZG9jdW1lbnRpIChuYXouKScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xOJyxcclxuICAgIHZhbHVlOiAnMTcnLFxyXG4gICAgbmFtZTogJ0NpcmNvbGFyZSBDb21taXNzYXJpYWxlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnTE4nLFxyXG4gICAgdmFsdWU6ICc1OCcsXHJcbiAgICBuYW1lOiAnQ2lyY29sYXJlIChDb21pdGF0aSknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMTicsXHJcbiAgICB2YWx1ZTogJzEwJyxcclxuICAgIG5hbWU6ICdDaXJjb2xhcmUgTWluaXN0ZXJpYWxlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnTE4nLFxyXG4gICAgdmFsdWU6ICcxMycsXHJcbiAgICBuYW1lOiAnQ29tdW5pY2F0byAobmF6LiknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMTicsXHJcbiAgICB2YWx1ZTogJzE1JyxcclxuICAgIG5hbWU6ICdDb3N0aXR1emlvbmUgZGVsbGEgUmVwdWJibGljYScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xOJyxcclxuICAgIHZhbHVlOiAnMTgnLFxyXG4gICAgbmFtZTogJ0RlY3JldG8gQ29tbWlzc2FyaWFsZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xOJyxcclxuICAgIHZhbHVlOiAnMjEnLFxyXG4gICAgbmFtZTogJ0RlY3JldG8gQ2FwbyBQcm92di4gU3RhdG8nLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMTicsXHJcbiAgICB2YWx1ZTogJzIyJyxcclxuICAgIG5hbWU6ICdEZWNyZXRvIFByZXMuIENvbnMuIE1pbmlzdHJpJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnTE4nLFxyXG4gICAgdmFsdWU6ICcyNScsXHJcbiAgICBuYW1lOiAnRGVjcmV0byBQcmVzaWRlbnRlIFJlcHViYmxpY2EnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMTicsXHJcbiAgICB2YWx1ZTogJzI3JyxcclxuICAgIG5hbWU6ICdEZWNyZXRvIExlZ2dlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnTE4nLFxyXG4gICAgdmFsdWU6ICcyOCcsXHJcbiAgICBuYW1lOiAnRGVjcmV0byBMZWdnZSBMdW9nb3RlbmVuemlhbGUnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMTicsXHJcbiAgICB2YWx1ZTogJzI5JyxcclxuICAgIG5hbWU6ICdELkxncy4gQ2FwbyBQcm92di4gU3RhdG8nLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMTicsXHJcbiAgICB2YWx1ZTogJzMwJyxcclxuICAgIG5hbWU6ICdELkxncy4gR292ZXJubycsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xOJyxcclxuICAgIHZhbHVlOiAnMzInLFxyXG4gICAgbmFtZTogJ0QuTGdzLiBMdW9nb3RlbmVuemlhbGUnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMTicsXHJcbiAgICB2YWx1ZTogJzMzJyxcclxuICAgIG5hbWU6ICdEZWNyZXRvIEx1b2dvdGVuZW56aWFsZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xOJyxcclxuICAgIHZhbHVlOiAnMzQnLFxyXG4gICAgbmFtZTogJ0RlY3JldG8gTWluaXN0ZXJpYWxlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnTE4nLFxyXG4gICAgdmFsdWU6ICczNScsXHJcbiAgICBuYW1lOiAnRGVsaWJlcmF6aW9uZSAobmF6LiknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMTicsXHJcbiAgICB2YWx1ZTogJzQ3JyxcclxuICAgIG5hbWU6ICdEZXRlcm1pbmF6aW9uZSAobmF6LiknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMTicsXHJcbiAgICB2YWx1ZTogJzI2JyxcclxuICAgIG5hbWU6ICdEb2N1bWVudG8gZGkgY29uc3VsdGF6aW9uZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xOJyxcclxuICAgIHZhbHVlOiAnNDgnLFxyXG4gICAgbmFtZTogJ0xlZ2dlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnTE4nLFxyXG4gICAgdmFsdWU6ICc0MicsXHJcbiAgICBuYW1lOiAnTGV0dGVyYSBDaXJjb2xhcmUgKENvbWl0YXRpKScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xOJyxcclxuICAgIHZhbHVlOiAnNDMnLFxyXG4gICAgbmFtZTogJ0xldHRlcmEgQ2lyY29sYXJlIE1pbmlzdGVyaWFsZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xOJyxcclxuICAgIHZhbHVlOiAnNTYnLFxyXG4gICAgbmFtZTogJ05vdGEgTWluaXN0ZXJpYWxlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnTE4nLFxyXG4gICAgdmFsdWU6ICc5MScsXHJcbiAgICBuYW1lOiAnT3JkaW5hbnphIENvbW1pc3NhcmlhbGUnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMTicsXHJcbiAgICB2YWx1ZTogJzgyJyxcclxuICAgIG5hbWU6ICdPcmRpbmFuemEgUHJlcy4gQ29ucy4gTWluaXN0cmknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMTicsXHJcbiAgICB2YWx1ZTogJzU3JyxcclxuICAgIG5hbWU6ICdPcmRpbmFuemEgTWluaXN0ZXJpYWxlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnTE4nLFxyXG4gICAgdmFsdWU6ICc3NicsXHJcbiAgICBuYW1lOiAnUHJvdnZlZGltZW50byAobmF6LiknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMTicsXHJcbiAgICB2YWx1ZTogJzY2JyxcclxuICAgIG5hbWU6ICdSZWdpbyBEZWNyZXRvJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnTE4nLFxyXG4gICAgdmFsdWU6ICc2NycsXHJcbiAgICBuYW1lOiAnUmVnaW8gRGVjcmV0byBMZWdnZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xOJyxcclxuICAgIHZhbHVlOiAnNjgnLFxyXG4gICAgbmFtZTogJ1JlZ2lvIERlY3JldG8gTGVnaXNsYXRpdm8nLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMTicsXHJcbiAgICB2YWx1ZTogJzcxJyxcclxuICAgIG5hbWU6ICdTdGF0dXRvIGRlbGxlIFJlZ2lvbmkgT3JkaW5hcmllJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnTEMnLFxyXG4gICAgdmFsdWU6ICcyJyxcclxuICAgIG5hbWU6XHJcbiAgICAgICdBY2NvcmRpICBDRUUvQ0UvVUUgY29uIFN0YXRpIHRlcnppIG8gYWx0cmkgc29nZ2V0dGknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMQycsXHJcbiAgICB2YWx1ZTogJzcnLFxyXG4gICAgbmFtZTogJ0F0dGkgZGl2ZXJzaSBDRUUvVUUnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMQycsXHJcbiAgICB2YWx1ZTogJzkyJyxcclxuICAgIG5hbWU6ICdDb211bmljYXppb25lIENFJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnTEMnLFxyXG4gICAgdmFsdWU6ICc4NycsXHJcbiAgICBuYW1lOiAnRGVjaXNpb25lIENFRS9DRUVBL0NFQ0EnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMQycsXHJcbiAgICB2YWx1ZTogJzM5JyxcclxuICAgIG5hbWU6ICdEaXJldHRpdmEgQ0VFL0NFRUEvQ0UnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMQycsXHJcbiAgICB2YWx1ZTogJzg5JyxcclxuICAgIG5hbWU6ICdQYXJlcmUgQ0UnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMQycsXHJcbiAgICB2YWx1ZTogJzk1JyxcclxuICAgIG5hbWU6ICdSYWNjb21hbmRhemlvbmUgQ0UnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMQycsXHJcbiAgICB2YWx1ZTogJzY0JyxcclxuICAgIG5hbWU6ICdSZWdvbGFtZW50byBDRUUvVUUnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMQycsXHJcbiAgICB2YWx1ZTogJzk2JyxcclxuICAgIG5hbWU6ICdSaXNvbHV6aW9uZSBDRScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xDJyxcclxuICAgIHZhbHVlOiAnNzgnLFxyXG4gICAgbmFtZTogJ1RyYXR0YXRvIENFRScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xSJyxcclxuICAgIHZhbHVlOiAnNjknLFxyXG4gICAgbmFtZTogJ0FsdHJpIGRvY3VtZW50aSAocmVnLiknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMUicsXHJcbiAgICB2YWx1ZTogJzExJyxcclxuICAgIG5hbWU6ICdDaXJjb2xhcmUgUHJlcy4gR2l1bnRhIFJlZy4nLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMUicsXHJcbiAgICB2YWx1ZTogJzQ2JyxcclxuICAgIG5hbWU6IFwiQ2lyY29sYXJlIGRlbGwnQXNzZXNzb3JlXCIsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xSJyxcclxuICAgIHZhbHVlOiAnODMnLFxyXG4gICAgbmFtZTogJ0NpcmNvbGFyZSByZWcuJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnTFInLFxyXG4gICAgdmFsdWU6ICc3MCcsXHJcbiAgICBuYW1lOiAnQ29tdW5pY2F0byAocmVnLiknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMUicsXHJcbiAgICB2YWx1ZTogJzgwJyxcclxuICAgIG5hbWU6ICdEZWNyZXRvIGRlbCBEaXJpZ2VudGUnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMUicsXHJcbiAgICB2YWx1ZTogJzI0JyxcclxuICAgIG5hbWU6ICdEZWNyZXRvIFByZXMuIEdpdW50YSBQcm92LicsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xSJyxcclxuICAgIHZhbHVlOiAnMjMnLFxyXG4gICAgbmFtZTogJ0RlY3JldG8gUHJlcy4gR2l1bnRhIFJlZy4nLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMUicsXHJcbiAgICB2YWx1ZTogJzE5JyxcclxuICAgIG5hbWU6IFwiRGVjcmV0byBkZWxsJ0Fzc2Vzc29yZSBSZWdpb25hbGVcIixcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnTFInLFxyXG4gICAgdmFsdWU6ICczMScsXHJcbiAgICBuYW1lOiAnRGVsaWIuIENvbnNpZ2xpbyBQcm92LicsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xSJyxcclxuICAgIHZhbHVlOiAnMzYnLFxyXG4gICAgbmFtZTogJ0RlbGliLiBDb25zaWdsaW8gUmVnLicsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xSJyxcclxuICAgIHZhbHVlOiAnMzcnLFxyXG4gICAgbmFtZTogJ0RlbGliLiBHaXVudGEgUHJvdi4nLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMUicsXHJcbiAgICB2YWx1ZTogJzM4JyxcclxuICAgIG5hbWU6ICdEZWxpYi4gR2l1bnRhIFJlZy4nLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMUicsXHJcbiAgICB2YWx1ZTogJzgxJyxcclxuICAgIG5hbWU6ICdEZXRlcm1pbmF6aW9uZSBkZWwgRGlyaWdlbnRlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnTFInLFxyXG4gICAgdmFsdWU6ICcxMicsXHJcbiAgICBuYW1lOiAnRGlyZXR0aXZhIChyZWcuKScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xSJyxcclxuICAgIHZhbHVlOiAnNDknLFxyXG4gICAgbmFtZTogJ0xlZ2dlIFByb3YuIEF1dC4nLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMUicsXHJcbiAgICB2YWx1ZTogJzUwJyxcclxuICAgIG5hbWU6ICdMZWdnZSBSZWdpb25hbGUnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMUicsXHJcbiAgICB2YWx1ZTogJzUxJyxcclxuICAgIG5hbWU6ICdMaW5lZSBndWlkYSAocmVnLiknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMUicsXHJcbiAgICB2YWx1ZTogJzknLFxyXG4gICAgbmFtZTogJ09yZGluYW56YSBQcmVzLiBQcm92LicsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xSJyxcclxuICAgIHZhbHVlOiAnNTUnLFxyXG4gICAgbmFtZTogJ09yZGluYW56YSBQcmVzLiBSZWcuJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnTFInLFxyXG4gICAgdmFsdWU6ICc4NScsXHJcbiAgICBuYW1lOiAnUHJvdnZlZGltZW50byAocmVnLiknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdMUicsXHJcbiAgICB2YWx1ZTogJzY1JyxcclxuICAgIG5hbWU6ICdSZWdvbGFtZW50byBSZWdpb25hbGUnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdHTicsXHJcbiAgICB2YWx1ZTogJzYzJyxcclxuICAgIG5hbWU6ICdEZWNpc2lvbmUnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdHTicsXHJcbiAgICB2YWx1ZTogJzQxJyxcclxuICAgIG5hbWU6ICdEZWNyZXRvIFBlbmFsZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0dOJyxcclxuICAgIHZhbHVlOiAnNTQnLFxyXG4gICAgbmFtZTogJ09yZGluYW56YScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0dOJyxcclxuICAgIHZhbHVlOiAnNjInLFxyXG4gICAgbmFtZTogJ1JpY29yc28nLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdHTicsXHJcbiAgICB2YWx1ZTogJzcyJyxcclxuICAgIG5hbWU6ICdTZW50ZW56YScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0dDJyxcclxuICAgIHZhbHVlOiAnODgnLFxyXG4gICAgbmFtZTogJ09yZGluYW56YSBDRScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0dDJyxcclxuICAgIHZhbHVlOiAnOTAnLFxyXG4gICAgbmFtZTogJ1NlbnRlbnphIENFJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnVE4nLFxyXG4gICAgdmFsdWU6ICc3MycsXHJcbiAgICBuYW1lOiAnQWx0cmkgZG9jdW1lbnRpIChFbnRpIGVkIElzdGl0dXRpKScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ1ROJyxcclxuICAgIHZhbHVlOiAnNDQnLFxyXG4gICAgbmFtZTogJ0NpcmNvbGFyZSAoRW50aSBlZCBJc3RpdHV0aSknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdUTicsXHJcbiAgICB2YWx1ZTogJzIwJyxcclxuICAgIG5hbWU6ICdDb211bmljYXRvICAoRW50aSBlZCBJc3RpdHV0aSknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdUTicsXHJcbiAgICB2YWx1ZTogJzYwJyxcclxuICAgIG5hbWU6ICdEZWNyZXRvIChFbnRpIGVkIElzdGl0dXRpKScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ1ROJyxcclxuICAgIHZhbHVlOiAnNDAnLFxyXG4gICAgbmFtZTogJ0RlbGliZXJhIChFbnRpIGVkIElzdGl0dXRpKScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ1ROJyxcclxuICAgIHZhbHVlOiAnNTMnLFxyXG4gICAgbmFtZTogJ0Zhc2NpY29sbyAoRW50aSBlZCBJc3RpdHV0aSknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdUTicsXHJcbiAgICB2YWx1ZTogJzQ1JyxcclxuICAgIG5hbWU6ICdJc3RydXppb25lIFRlY25pY2EnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdUTicsXHJcbiAgICB2YWx1ZTogJzU5JyxcclxuICAgIG5hbWU6ICdMZXR0ZXJhIENpcmNvbGFyZSAoRW50aSBlZCBJc3RpdHV0aSknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdUTicsXHJcbiAgICB2YWx1ZTogJzc5JyxcclxuICAgIG5hbWU6ICdMaW5lZSBndWlkYSAoRW50aSBlZCBJc3RpdHV0aSknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdUTicsXHJcbiAgICB2YWx1ZTogJzk4JyxcclxuICAgIG5hbWU6ICdOb3JtYSBUZWNuaWNhJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnVE4nLFxyXG4gICAgdmFsdWU6ICc5NycsXHJcbiAgICBuYW1lOiAnT3B1c2NvbG8gVGVjbmljbycsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ1ROJyxcclxuICAgIHZhbHVlOiAnNzcnLFxyXG4gICAgbmFtZTogJ1B1YmJsaWNhemlvbmUgKEVudGkgZWQgSXN0aXR1dGkpJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnVE4nLFxyXG4gICAgdmFsdWU6ICc4NicsXHJcbiAgICBuYW1lOiAnUXVhZGVybm8nLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdUTicsXHJcbiAgICB2YWx1ZTogJzUyJyxcclxuICAgIG5hbWU6ICdSZWdvbGFtZW50byAoRW50aSBlZCBJc3RpdHV0aSknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdUTicsXHJcbiAgICB2YWx1ZTogJzg0JyxcclxuICAgIG5hbWU6ICdJc3RydXppb25lIE9wZXJhdGl2YSAoRW50aSBlIElzdGl0dXRpKScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ1ROJyxcclxuICAgIHZhbHVlOiAnOTQnLFxyXG4gICAgbmFtZTogJ05vdGEgKEVudGkgZSBJc3RpdHV0aSknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdOSScsXHJcbiAgICB2YWx1ZTogJzEwNCcsXHJcbiAgICBuYW1lOiAnUmVnb2xhbWVudG8gVU5FQ0UnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgcGFyZW50VmFsdWU6ICdTTicsXHJcbiAgICB2YWx1ZTogJzEwNScsXHJcbiAgICBuYW1lOiAnRG9jdW1lbnRvJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHBhcmVudFZhbHVlOiAnVE4nLFxyXG4gICAgdmFsdWU6ICcxMDYnLFxyXG4gICAgbmFtZTogJ0RpcmV0dGl2YSAoRW50aSBlIElzdGl0dXRpKScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ1ROJyxcclxuICAgIHZhbHVlOiAnNzQnLFxyXG4gICAgbmFtZTogJ1ByYXNzaSBkaSByaWZlcmltZW50bycsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xOJyxcclxuICAgIHZhbHVlOiAnMTYnLFxyXG4gICAgbmFtZTogJ0xpbmVlIGd1aWRhIChuYXouKScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ0xOJyxcclxuICAgIHZhbHVlOiAnMycsXHJcbiAgICBuYW1lOiAnRGlyZXR0aXZhIChuYXouKScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBwYXJlbnRWYWx1ZTogJ1RJJyxcclxuICAgIHZhbHVlOiAnMTA3JyxcclxuICAgIG5hbWU6ICdOb3JtYXRpdmEgVGVjbmljYSBJbnRlcm5hemlvbmFsZScsXHJcbiAgfSxcclxuXVxyXG5cclxuZXhwb3J0IGNvbnN0IENsaXBwZXJBdXRob3JzOiBTZWN0b3JJbmZvW10gPSBbXHJcbiAge1xyXG4gICAgc2VjdG9ySWQ6ICdMUicsXHJcbiAgICBjaGFubmVsczogbnVsbCxcclxuICAgIHZhbHVlOiAnNFJBQicsXHJcbiAgICBuYW1lOiAnQWJydXp6bycsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0xSJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICc0UkJBJyxcclxuICAgIG5hbWU6ICdCYXNpbGljYXRhJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHNlY3RvcklkOiAnTFInLFxyXG4gICAgY2hhbm5lbHM6IG51bGwsXHJcbiAgICB2YWx1ZTogJzRSQ0FMJyxcclxuICAgIG5hbWU6ICdDYWxhYnJpYScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0xSJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICc0UkNBTScsXHJcbiAgICBuYW1lOiAnQ2FtcGFuaWEnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgc2VjdG9ySWQ6ICdMUicsXHJcbiAgICBjaGFubmVsczogbnVsbCxcclxuICAgIHZhbHVlOiAnNFJFTScsXHJcbiAgICBuYW1lOiAnRW1pbGlhIFJvbWFnbmEnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgc2VjdG9ySWQ6ICdMUicsXHJcbiAgICBjaGFubmVsczogbnVsbCxcclxuICAgIHZhbHVlOiAnNFJGVkcnLFxyXG4gICAgbmFtZTogJ0ZyaXVsaSBWZW5lemlhIEdpdWxpYScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0xSJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICc0UkxBJyxcclxuICAgIG5hbWU6ICdMYXppbycsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0xSJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICc0UkxJJyxcclxuICAgIG5hbWU6ICdMaWd1cmlhJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHNlY3RvcklkOiAnTFInLFxyXG4gICAgY2hhbm5lbHM6IG51bGwsXHJcbiAgICB2YWx1ZTogJzRSTE8nLFxyXG4gICAgbmFtZTogJ0xvbWJhcmRpYScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0xSJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICc0Uk1BJyxcclxuICAgIG5hbWU6ICdNYXJjaGUnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgc2VjdG9ySWQ6ICdMUicsXHJcbiAgICBjaGFubmVsczogbnVsbCxcclxuICAgIHZhbHVlOiAnNFJNTycsXHJcbiAgICBuYW1lOiAnTW9saXNlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHNlY3RvcklkOiAnTFInLFxyXG4gICAgY2hhbm5lbHM6IG51bGwsXHJcbiAgICB2YWx1ZTogJzRSUEknLFxyXG4gICAgbmFtZTogJ1BpZW1vbnRlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHNlY3RvcklkOiAnTFInLFxyXG4gICAgY2hhbm5lbHM6IG51bGwsXHJcbiAgICB2YWx1ZTogJzRSUFUnLFxyXG4gICAgbmFtZTogJ1B1Z2xpYScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0xSJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICc0UlNBJyxcclxuICAgIG5hbWU6ICdTYXJkZWduYScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0xSJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICc0UlNJJyxcclxuICAgIG5hbWU6ICdTaWNpbGlhJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHNlY3RvcklkOiAnTFInLFxyXG4gICAgY2hhbm5lbHM6IG51bGwsXHJcbiAgICB2YWx1ZTogJzRSVE8nLFxyXG4gICAgbmFtZTogJ1Rvc2NhbmEnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgc2VjdG9ySWQ6ICdMUicsXHJcbiAgICBjaGFubmVsczogbnVsbCxcclxuICAgIHZhbHVlOiAnNFJUQUEnLFxyXG4gICAgbmFtZTogJ1RyZW50aW5vIFRyZW50aW5vIEFsdG8gQWRpZ2UnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgc2VjdG9ySWQ6ICdMUicsXHJcbiAgICBjaGFubmVsczogbnVsbCxcclxuICAgIHZhbHVlOiAnNFJVTScsXHJcbiAgICBuYW1lOiAnVW1icmlhJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHNlY3RvcklkOiAnTFInLFxyXG4gICAgY2hhbm5lbHM6IG51bGwsXHJcbiAgICB2YWx1ZTogJzRSVkEnLFxyXG4gICAgbmFtZTogXCJWYWxsZSBEJ0Fvc3RhXCIsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0xSJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICc0UlZFJyxcclxuICAgIG5hbWU6ICdWZW5ldG8nLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgc2VjdG9ySWQ6ICdMUicsXHJcbiAgICBjaGFubmVsczogbnVsbCxcclxuICAgIHZhbHVlOiAnNFBBQicsXHJcbiAgICBuYW1lOiAnUHJvdi4gQXV0b25vbWEgZGkgQm9semFubycsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0xSJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICc0UEFUJyxcclxuICAgIG5hbWU6ICdQcm92LiBBdXRvbm9tYSBkaSBUcmVudG8nLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgc2VjdG9ySWQ6ICdUTicsXHJcbiAgICBjaGFubmVsczogJ3xMQXwnLFxyXG4gICAgdmFsdWU6ICc2Q0VJJyxcclxuICAgIG5hbWU6ICdDLkUuSS4gLSBDb21pdGF0byBFbGV0dHJvdGVjbmljbyBJdGFsaWFubycsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ1ROJyxcclxuICAgIGNoYW5uZWxzOiAnfExBfFNBfCcsXHJcbiAgICB2YWx1ZTogJzZDTlInLFxyXG4gICAgbmFtZTogJ0MuTi5SLiAtIENvbnNpZ2xpbyBOYXppb25hbGUgZGVsbGUgUmljZXJjaGUnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgc2VjdG9ySWQ6ICdUTicsXHJcbiAgICBjaGFubmVsczogJ3xMQXwnLFxyXG4gICAgdmFsdWU6ICc2RU5QSScsXHJcbiAgICBuYW1lOiAnRS5OLlAuSS4gLSBFbnRlIE5hemlvbmFsZSBQcmV2ZW56aW9uZSBJbmZvcnR1bmknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgc2VjdG9ySWQ6ICdUTicsXHJcbiAgICBjaGFubmVsczogJ3xMQXwnLFxyXG4gICAgdmFsdWU6ICc2SU5BSScsXHJcbiAgICBuYW1lOlxyXG4gICAgICAnSS5OLkEuSS5MLiAtIElzdGl0dXRvIG5hemlvbmFsZSBBc3NpY3VyYXppb25lIEluZm9ydHVuaSBzdWwgTGF2b3JvJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHNlY3RvcklkOiAnVE4nLFxyXG4gICAgY2hhbm5lbHM6ICd8TEF8JyxcclxuICAgIHZhbHVlOiAnNklTUFMnLFxyXG4gICAgbmFtZTpcclxuICAgICAgJ0kuUy5QLkUuUy5MLiAtIElzdGl0dXRvIFN1cGVyaW9yZSBwZXIgbGEgUHJldmVuemlvbmUgZSBsYSBTaWN1cmV6emEgZGVsIExhdm9ybycsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ1ROJyxcclxuICAgIGNoYW5uZWxzOiAnfExBfCcsXHJcbiAgICB2YWx1ZTogJzZJTlBTJyxcclxuICAgIG5hbWU6ICdJLk4uUC5TLiAtIElzdGl0dXRvIE5hemlvbmFsZSBQcmV2aWRlbnphIFNvY2lhbGUnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgc2VjdG9ySWQ6ICdUTicsXHJcbiAgICBjaGFubmVsczogJ3xMQXxTQXwnLFxyXG4gICAgdmFsdWU6ICc2SVNTJyxcclxuICAgIG5hbWU6ICdJLlMuUy4gLSBJc3RpdHV0byBTdXBlcmlvcmUgZGkgU2FuaXTDoCcsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ1ROJyxcclxuICAgIGNoYW5uZWxzOiAnfExBfFNBfCcsXHJcbiAgICB2YWx1ZTogJzZVTkknLFxyXG4gICAgbmFtZTogJ1UuTi5JLiAtIEVudGUgTmF6aW9uYWxlIEl0YWxpYW5vIGRpIFVuaWZpY2F6aW9uZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0dOJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICc1Q0MnLFxyXG4gICAgbmFtZTogJ0NvcnRlIENvc3RpdHV6aW9uYWxlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHNlY3RvcklkOiAnR04nLFxyXG4gICAgY2hhbm5lbHM6IG51bGwsXHJcbiAgICB2YWx1ZTogJzVDQ0MnLFxyXG4gICAgbmFtZTogJ0NvcnRlIGRpIENhc3NhemlvbmUgQ2l2aWxlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHNlY3RvcklkOiAnR04nLFxyXG4gICAgY2hhbm5lbHM6IG51bGwsXHJcbiAgICB2YWx1ZTogJzVDQ1AnLFxyXG4gICAgbmFtZTogJ0NvcnRlIGRpIENhc3NhemlvbmUgUGVuYWxlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHNlY3RvcklkOiAnR04nLFxyXG4gICAgY2hhbm5lbHM6IG51bGwsXHJcbiAgICB2YWx1ZTogJzVDQVNBJyxcclxuICAgIG5hbWU6IFwiQ29ydGUgZCdBc3Npc2UgZCdBcHBlbGxvXCIsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0dOJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICc1Q0FTJyxcclxuICAgIG5hbWU6IFwiQ29ydGUgZCdBc3Npc2VcIixcclxuICB9LFxyXG4gIHtcclxuICAgIHNlY3RvcklkOiAnR04nLFxyXG4gICAgY2hhbm5lbHM6IG51bGwsXHJcbiAgICB2YWx1ZTogJzVDQScsXHJcbiAgICBuYW1lOiBcIkNvcnRlIGQnQXBwZWxsb1wiLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgc2VjdG9ySWQ6ICdHTicsXHJcbiAgICBjaGFubmVsczogbnVsbCxcclxuICAgIHZhbHVlOiAnNVBDQScsXHJcbiAgICBuYW1lOiBcIlByb2N1cmEgR2VuZXJhbGUgQ29ydGUgZCdBcHBlbGxvXCIsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0dOJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICc1R0RQJyxcclxuICAgIG5hbWU6ICdHaXVkaWNlIGRpIFBhY2UnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgc2VjdG9ySWQ6ICdHTicsXHJcbiAgICBjaGFubmVsczogbnVsbCxcclxuICAgIHZhbHVlOiAnNVBSJyxcclxuICAgIG5hbWU6ICdQcm9jdXJhIGRlbGxhIFJlcHViYmxpY2EnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgc2VjdG9ySWQ6ICdHTicsXHJcbiAgICBjaGFubmVsczogbnVsbCxcclxuICAgIHZhbHVlOiAnNVQnLFxyXG4gICAgbmFtZTogJ1RyaWJ1bmFsZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0dOJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICc1UCcsXHJcbiAgICBuYW1lOiAnUHJldHVyYScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0dOJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICc1Q0RTJyxcclxuICAgIG5hbWU6ICdDb25zaWdsaW8gZGkgU3RhdG8nLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgc2VjdG9ySWQ6ICdHTicsXHJcbiAgICBjaGFubmVsczogbnVsbCxcclxuICAgIHZhbHVlOiAnNVRBUicsXHJcbiAgICBuYW1lOiAnVHJpYnVuYWxlIEFtbWluaXN0cmF0aXZvIFJlZ2lvbmFsZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0dOJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICc1VFNBJyxcclxuICAgIG5hbWU6ICdUcmlidW5hbGUgU3VwZXJpb3JlIGRlbGxlIEFjcXVlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHNlY3RvcklkOiAnR04nLFxyXG4gICAgY2hhbm5lbHM6IG51bGwsXHJcbiAgICB2YWx1ZTogJzVUR0EnLFxyXG4gICAgbmFtZTogJ1RyaWJ1bmFsZSBSZWdpb25hbGUgYWNxdWUnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgc2VjdG9ySWQ6ICdHTicsXHJcbiAgICBjaGFubmVsczogbnVsbCxcclxuICAgIHZhbHVlOiAnNUNUUCcsXHJcbiAgICBuYW1lOiAnQ29tbWlzc2lvbmUgVHJpYnV0YXJpYSBQcm92aW5jaWFsZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0dOJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICc1Q1RSJyxcclxuICAgIG5hbWU6ICdDb21taXNzaW9uZSBUcmlidXRhcmlhIFJlZ2lvbmFsZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0dOJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICc1Q0dBUycsXHJcbiAgICBuYW1lOiAnQ29ucy4gZGkgR2l1c3RpemlhIEFtbS52YSBkZWxsYSBTaWNpbGlhJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHNlY3RvcklkOiAnR04nLFxyXG4gICAgY2hhbm5lbHM6IG51bGwsXHJcbiAgICB2YWx1ZTogJzVDREMnLFxyXG4gICAgbmFtZTogJ0NvcnRlIGRlaSBDb250aScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0dDJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICczQ0pDRScsXHJcbiAgICBuYW1lOiAnQ29ydGUgZGkgR2l1c3RpemlhIENFRS9DRScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0dDJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICczQ0VETScsXHJcbiAgICBuYW1lOiBcIkNvcnRlIEV1cm9wZWEgcGVyIGkgRGlyaXR0aSBkZWxsJ1VvbW9cIixcclxuICB9LFxyXG4gIHtcclxuICAgIHNlY3RvcklkOiAnR0MnLFxyXG4gICAgY2hhbm5lbHM6IG51bGwsXHJcbiAgICB2YWx1ZTogJzNDV0onLFxyXG4gICAgbmFtZTogJ0NvcnRlIEludGVybmF6aW9uYWxlIGRpIEdpdXN0aXppYScsXHJcbiAgfSxcclxuICB7XHJcbiAgICBzZWN0b3JJZDogJ0dDJyxcclxuICAgIGNoYW5uZWxzOiBudWxsLFxyXG4gICAgdmFsdWU6ICczVDFDRScsXHJcbiAgICBuYW1lOiAnVHJpYnVuYWxlIGRpIFByaW1vIEdyYWRvIENFRS9DRScsXHJcbiAgfSxcclxuXVxyXG5cclxuZXhwb3J0IGNvbnN0IENsaXBwZXJTb3VyY2VzOiBOYW1lVmFsdWVJdGVtPHN0cmluZz5bXSA9IFtcclxuICB7XHJcbiAgICB2YWx1ZTogJ0FDQ01MJyxcclxuICAgIG5hbWU6ICdBY2NvcmRpIE11bHRpbGF0ZXJhbGknLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdmFsdWU6ICdBRUVHJyxcclxuICAgIG5hbWU6IFwiU2l0byBBdXRvcml0w6AgcGVyIGwnRW5lcmdpYSBFbGV0dHJpY2EsIGlsIEdhcyBlIGlsIFNpc3RlbWEgSWRyaWNvXCIsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJ0FSRVJBJyxcclxuICAgIG5hbWU6ICdTaXRvIEF1dG9yaXTDoCBkaSBSZWdvbGF6aW9uZSBwZXIgRW5lcmdpYSwgUmV0aSBlIEFtYmllbnRlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnQlVSJyxcclxuICAgIG5hbWU6ICdCb2xsZXR0aW5vIFVmZi4gUmVnaW9uZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJ0JVUycsXHJcbiAgICBuYW1lOiAnU3VwcGwuIHNwZWNpYWxlIGFsIEJvbGxldHRpbm8gVWZmLicsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJ0JVU08nLFxyXG4gICAgbmFtZTogJ1N1cHBsLiBvcmRpbi4gYWwgQm9sbGV0dGlubyBVZmYuJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnQlVTUycsXHJcbiAgICBuYW1lOiAnU3VwcGwuIHN0cmFvcmQuIGFsIEJvbGxldHRpbm8gVWZmLicsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJ0dVJyxcclxuICAgIG5hbWU6ICdHYXp6ZXR0YSAgVWZmaWNpYWxlIEl0YWxpYW5hJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnR1VDQycsXHJcbiAgICBuYW1lOiAnR2F6ei4gVWZmLiBDb3J0ZSBDb3N0aXR1emlvbmFsZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJ0dVQ0UnLFxyXG4gICAgbmFtZTogJ0dhenpldHRhIHVmZmljaWFsZSBkZWxsZSBDb211bml0w6AgZXVyb3BlZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJ0dVRVMnLFxyXG4gICAgbmFtZTogJ0dhenouIFVmZi4gRWRpei4gU3BlY2lhbGUnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdmFsdWU6ICdHVVJTJyxcclxuICAgIG5hbWU6ICdHYXp6LiBVZmYuIFJlZ2lvbmUgU2ljaWxpYScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJ0dVUycsXHJcbiAgICBuYW1lOiAnR2F6ei4gVWZmLiBTZXJpZSBTcGVjaWFsZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJ0dVU08nLFxyXG4gICAgbmFtZTogJ1N1cHBsLiBvcmRpbi4gYWxsYSAgR2F6emV0dGEgVWZmaWNpYWxlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnR1VTUycsXHJcbiAgICBuYW1lOiAnU3VwcGwuIHN0cmFvcmQuIGFsbGEgIEdhenpldHRhIFVmZmljaWFsZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJ0dVVUUnLFxyXG4gICAgbmFtZTogJ0dhenpldHRhIHVmZmljaWFsZSBkZWxs4oCZVW5pb25lIGV1cm9wZWEnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdmFsdWU6ICdNQUMnLFxyXG4gICAgbmFtZTogJ01hc3NpbWFyaW8gQ2l2aWxlJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHZhbHVlOiAnTUFQJyxcclxuICAgIG5hbWU6ICdNYXNzaW1hcmlvIFBlbmFsZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2YWx1ZTogJ05PTkUnLFxyXG4gICAgbmFtZTogJ0ZvbnRpIGRpdmVyc2UnLFxyXG4gIH1cclxuXVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDbGlwcGVyU2VhcmNoUGFyYW1zIHtcclxuICBzZWFyY2hJZD86IG51bWJlciB8IG51bGw7XHJcbiAgc2VhcmNoTmFtZT86IHN0cmluZyB8IG51bGw7XHJcbiAgdGV4dD86IHN0cmluZyB8IG51bGw7XHJcbiAgdGl0bGU/OiBzdHJpbmcgfCBudWxsO1xyXG4gIHRpdGxlT25seT86IGJvb2xlYW4gfCBudWxsO1xyXG4gIHNob3dVbnJlYWREb2N1bWVudHNPbmx5PzogYm9vbGVhbiB8IG51bGw7XHJcbiAgc2hvd0NvbW1lbnRlZERvY3VtZW50c09ubHk/OiBib29sZWFuIHwgbnVsbDtcclxuICBudW1iZXI/OiBzdHJpbmcgfCBudWxsO1xyXG4gIGZyb21EYXRlPzogRGF0ZSB8IG51bGw7XHJcbiAgdG9EYXRlPzogRGF0ZSB8IG51bGw7XHJcbiAgeWVhcj86IG51bWJlciB8IG51bGw7XHJcbiAgc291cmNlTnVtYmVyPzogc3RyaW5nIHwgbnVsbDtcclxuICBzb3VyY2U/OiBzdHJpbmcgfCBudWxsO1xyXG4gIHNvdXJjZUZyb21EYXRlPzogRGF0ZSB8IG51bGw7XHJcbiAgc291cmNlVG9EYXRlPzogRGF0ZSB8IG51bGw7XHJcbiAgc291cmNlWWVhcj86IG51bWJlciB8IG51bGw7XHJcbiAgc2VjdG9yPzogc3RyaW5nIHwgbnVsbDtcclxuICBzZWN0b3JzPzogU2VjdG9ySW5mb1tdIHwgbnVsbDtcclxuICB0b3BpYz86IHN0cmluZyB8IG51bGw7XHJcbiAgdGF4b25vbXk/OiBzdHJpbmcgfCBudWxsO1xyXG4gIHRheG9ub215UGF0aD86IHN0cmluZyB8IG51bGw7XHJcbiAgdGF4b25vbXlOb2RlPzogc3RyaW5nIHwgbnVsbDtcclxuICB0eXBlPzogc3RyaW5nIHwgbnVsbDtcclxuICBhdXRob3I/OiBzdHJpbmcgfCBudWxsO1xyXG4gIGF1dGhvcnM/OiBOYW1lVmFsdWVJdGVtPHN0cmluZz5bXSB8IG51bGw7XHJcbiAgY2hhbmdlUmVhc29uPzogbnVtYmVyIHwgbnVsbDtcclxuICBjaGFuZ2VkTnVtYmVyPzogc3RyaW5nIHwgbnVsbDtcclxuICBjaGFuZ2VkWWVhcj86IG51bWJlciB8IG51bGw7XHJcbiAgY2hhbmdlZFRpdGxlPzogc3RyaW5nIHwgbnVsbDtcclxuICBtb2RpZmllck51bWJlcj86IHN0cmluZyB8IG51bGw7XHJcbiAgbW9kaWZpZXJZZWFyPzogbnVtYmVyIHwgbnVsbDtcclxuICBtb2RpZmllclRpdGxlPzogc3RyaW5nIHwgbnVsbDtcclxuICBtb2RlbD86IG51bWJlciB8IG51bGw7XHJcbiAgbW9kdWxlPzogbnVtYmVyIHwgbnVsbDsgIFxyXG4gIGNoYW5uZWxzPzogTmFtZVZhbHVlSXRlbTxzdHJpbmc+W10gfCBudWxsLFxyXG4gIGNvdW50PzogbnVtYmVyIHwgbnVsbDtcclxuICBkb2N1bWVudElkPzogc3RyaW5nfCBudWxsOyAgXHJcbiAgZG9jdW1lbnRTbmFwc2hvdE1vZGU/OiBDbGlwcGVyRG9jdW1lbnRTbmFwc2hvdE1vZGUgfCBudWxsO1xyXG4gIGFuY2hvcj86IHN0cmluZyB8IG51bGw7XHJcbiAgZXhjbHVkZVRleHRSZWZlcmVuY2VzPzogYm9vbGVhbiB8IG51bGwsXHJcbiAgZXhjbHVkZU5vdGVzUmVmZXJlbmNlcz86IGJvb2xlYW4gfCBudWxsLFxyXG4gIHVzZU1vZGlmaWVySW5mbz86IGJvb2xlYW4gIHwgbnVsbDtcclxuICByZXR1cm5Nb2RpZmllckluZm8/OiBib29sZWFuIHwgbnVsbDtcclxuICBmaXJzdD86IG51bWJlciB8IG51bGw7XHJcbiAgc29ydE1vZGU/OiBudW1iZXIgfCBudWxsO1xyXG5cclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IENsaXBwZXJEb2N1bWVudENoYW5nZVJlYXNvbjogTmFtZVZhbHVlSXRlbTxudW1iZXI+W10gPSBbXHJcbiAgeyBuYW1lOiAnQWJyb2dhemlvbmUnLCB2YWx1ZTogMSB9LFxyXG4gIHsgbmFtZTogJ0FubnVsbGFtZW50bycsIHZhbHVlOiA1IH0sXHJcbiAgeyBuYW1lOiAnTW9kaWZpY2EnLCB2YWx1ZTogMiB9LFxyXG4gIHsgbmFtZTogJ1Nvc3RpdXppb25lJywgdmFsdWU6IDMgfSxcclxuICB7IG5hbWU6ICdTZWduYWxhemlvbmUnLCB2YWx1ZTogNiB9LFxyXG4gIHsgbmFtZTogJ1JldHRpZmljYScsIHZhbHVlOiA3IH0sXHJcbl1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ2xpcHBlckRvY3VtZW50QW5jaG9ySW5mbyB7XHJcbiAgZG9jdW1lbnRJZDogc3RyaW5nO1xyXG4gIHR5cGU6IG51bWJlcjtcclxuICB0eXBlRGVzY3JpcHRpb246IHN0cmluZztcclxuICB0ZXh0OiBzdHJpbmc7XHJcbiAgdGl0bGU/OiBzdHJpbmcgfCBudWxsO1xyXG4gIHVyaTogc3RyaW5nO1xyXG4gIG9yZGluYWw6IHN0cmluZztcclxuICBzY29yZTogbnVtYmVyO1xyXG4gIHZlcnlSZWxldmFudD86IGJvb2xlYW4gfCBudWxsO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENsaXBwZXJEb2N1bWVudEluZGV4SW5mbyB7XHJcbiAgdHlwZTogbnVtYmVyO1xyXG4gIHR5cGVEZXNjcmlwdGlvbjogc3RyaW5nO1xyXG4gIHRleHQ6IHN0cmluZztcclxuICB0aXRsZT86IHN0cmluZyB8IG51bGw7XHJcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmcgfCBudWxsO1xyXG4gIHZhbHVlOiBzdHJpbmc7XHJcbiAgbGV2ZWw6IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDbGlwcGVyRG9jdW1lbnRSZWxldmFudHMge1xyXG4gIGl0ZW1zOiBDbGlwcGVyRG9jdW1lbnRBbmNob3JJbmZvW107XHJcbiAgaGl0czogbnVtYmVyO1xyXG4gIGhpdDogbnVtYmVyO1xyXG4gIG1pbmltdW1TY29yZTogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENsaXBwZXJEb2N1bWVudEluZm8ge1xyXG4gIGlkPzogc3RyaW5nIHwgbnVsbDtcclxuICBkb2N1bWVudElkPzogc3RyaW5nIHwgbnVsbDtcclxuICBtb2RlbDogbnVtYmVyO1xyXG4gIG1vZGVsTmFtZT86IHN0cmluZyB8IG51bGw7XHJcbiAgbW9kdWxlPzogbnVtYmVyIHwgbnVsbDtcclxuICBtb2R1bGVOYW1lPzogc3RyaW5nIHwgbnVsbDtcclxuICBncm91cD86IHN0cmluZyB8IG51bGw7XHJcbiAgdGl0bGUyPzogc3RyaW5nIHwgbnVsbDtcclxuICB0aXRsZTE/OiBzdHJpbmcgfCBudWxsO1xyXG4gIG51bWJlcj86IHN0cmluZyB8IG51bGw7XHJcbiAgZGF0ZT86IERhdGUgfCBudWxsO1xyXG4gIHB1Ymxpc2hpbmdEYXRlPzogRGF0ZSB8IG51bGw7XHJcbiAgc291cmNlTnVtYmVyPzogc3RyaW5nIHwgbnVsbDtcclxuICBzb3VyY2VEYXRlPzogRGF0ZSB8IG51bGw7XHJcbiAgc291cmNlPzogc3RyaW5nIHwgbnVsbDtcclxuICBvcmlnaW4/OiBzdHJpbmcgfCBudWxsO1xyXG4gIG9yaWdpbkRlc2NyaXB0aW9uPzogc3RyaW5nIHwgbnVsbDtcclxuICBhdXRob3I/OiBzdHJpbmcgfCBudWxsO1xyXG4gIGFuY2hvcnM/OiBDbGlwcGVyRG9jdW1lbnRBbmNob3JJbmZvW10gfCBudWxsO1xyXG4gIHRheG9ub215Pzogc3RyaW5nIHwgbnVsbDtcclxuICBpbmZvPzogc3RyaW5nIHwgbnVsbDtcclxuICBpc1JlYWQ/OiBib29sZWFuIHwgbnVsbDtcclxuICBpc0V4cG9ydGFibGU/OiBib29sZWFuIHwgbnVsbDtcclxuICBpc0NvbW1lbnRlZD86IGJvb2xlYW4gfCBudWxsO1xyXG4gIGlzSnVyaXM/OiBib29sZWFuIHwgbnVsbDtcclxuICBpc092ZXI/OiBib29sZWFuIHwgbnVsbDtcclxuICBpc1RyaWFsPzogYm9vbGVhbiB8IG51bGw7XHJcbiAgaXNNZW51T3Blbj86IGJvb2xlYW4gfCBudWxsO1xyXG4gIHZhbGlkaXR5U3RhdGU/OiBudW1iZXIgfCBudWxsO1xyXG4gIHZhbGlkVW50aWxEYXRlPzogRGF0ZSB8IG51bGw7XHJcbiAgdmFsaWRpdHlEZXNjcmlwdGlvbj86IHN0cmluZyB8IG51bGw7XHJcbiAgdmFsaWRpdHlJbmZvPzogc3RyaW5nIHwgbnVsbDtcclxuICBleHBpcmluZ0RhdGU/OiBEYXRlIHwgbnVsbDtcclxuICBleHBpcmluZ0Rlc2NyaXB0aW9uPzogc3RyaW5nIHwgbnVsbDtcclxuICBleHBpcmluZ0luZm8/OiBzdHJpbmcgfCBudWxsO1xyXG4gIHBvcHVsYXJpdHk/OiBudW1iZXIgfCBudWxsO1xyXG4gIHBhcnQ/OiBudW1iZXIgfCBudWxsO1xyXG4gIHByaW1hcnlJZD86IHN0cmluZyB8IG51bGw7XHJcbiAgcHJpbWFyeURlc2NyaXB0aW9uPzogc3RyaW5nIHwgbnVsbDtcclxuICBwcmltYXJ5TW9kZWw/OiBudW1iZXIgfCBudWxsO1xyXG4gIGhhc1ByaW1hcnk/OiBib29sZWFuIHwgbnVsbDtcclxuICBzZWNvbmRhcnlJZD86IHN0cmluZyB8IG51bGw7XHJcbiAgYmFnOiBhbnkgfCBudWxsO1xyXG4gIGxhc3RVcGRhdGU/OiBEYXRlIHwgbnVsbDtcclxuXHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBDbGlwcGVyU2VhcmNoUmVzdWx0IHtcclxuICBkYXlzPzogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcbiAgaW50ZXJ2YWw/OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuICBpdGVtcz86IENsaXBwZXJEb2N1bWVudEluZm9bXSB8IG51bGwgPSBudWxsO1xyXG4gIGZhY2V0cz86IENsaXBwZXJTZWFyY2hGYWNldHNTbmFwc2hvdCB8IG51bGwgPSBudWxsO1xyXG4gIHRvdGFsPzogbnVtYmVyIHwgbnVsbCA9IG51bGw7XHJcbiAgc2VhcmNoSW5mbz86IGFueSB8IG51bGwgPSBudWxsO1xyXG4gIHNlYXJjaFBhcmFtcz86IENsaXBwZXJTZWFyY2hQYXJhbXMgfCBudWxsID0gbnVsbDtcclxuICBzbmFwc2hvdE1vZGU/OiBDbGlwcGVyRG9jdW1lbnRTbmFwc2hvdE1vZGUgfCBudWxsID0gbnVsbDtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDbGlwcGVyU2VhcmNoRmFjZXQge1xyXG4gIHR5cGU6IG51bWJlcjtcclxuICB0eXBlTmFtZTogc3RyaW5nO1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcbiAgdmFsdWU6IHN0cmluZztcclxuICBjb3VudDogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENsaXBwZXJTZWFyY2hGYWNldEdyb3VwIHtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgc2VsZWN0ZWRWYWx1ZT86IHN0cmluZyB8IG51bGw7XHJcbiAgc2VsZWN0ZWRWYWx1ZURlc2NyaXB0aW9uPzogc3RyaW5nIHwgbnVsbDtcclxuICB2YWx1ZXM6IENsaXBwZXJTZWFyY2hGYWNldFtdO1xyXG4gIGluZGV4OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ2xpcHBlclNlYXJjaEZhY2V0c1Jlc3VsdCB7XHJcbiAgaW50ZXJ2YWw/OiBzdHJpbmcgfCBudWxsO1xyXG4gIGZhY2V0cz86IENsaXBwZXJTZWFyY2hGYWNldFtdW10gfCBudWxsO1xyXG4gIHRvdGFsPzogbnVtYmVyIHwgbnVsbDtcclxufVxyXG5cclxuXHJcbmV4cG9ydCBjbGFzcyBDbGlwcGVyU2VhcmNoRmFjZXRzU25hcHNob3Qge1xyXG4gIGdyb3VwczogQ2xpcHBlclNlYXJjaEZhY2V0R3JvdXBbXSA9IFtdO1xyXG4gIHVzZWRHcm91cHM6IENsaXBwZXJTZWFyY2hGYWNldEdyb3VwW10gPSBbXTtcclxuICBoYXNGYWNldHM6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBoYXNUb29NYW55UmVzdWx0czogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHNlY3Rvcj86IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG4gIGF1dGhvcj86IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG4gIGFuY2hvcj86IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG4gIHR5cGU/OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuICByZWFzb24/OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuICBmcm9tRGF0ZT86IERhdGUgfCBudWxsID0gbnVsbDtcclxuICB0b0RhdGU/OiBEYXRlIHwgbnVsbCA9IG51bGw7XHJcbiAgaW50ZXJ2YWw/OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuICBjaGFuZ2VkSW50ZXJ2YWw6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBjaGFuZ2VkU2VjdG9yOiBib29sZWFuID0gZmFsc2U7XHJcbiAgY2hhbmdlZEF1dGhvcjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGNoYW5nZWRBbmNob3I6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBjaGFuZ2VkVHlwZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGNoYW5nZWRSZWFzb246IGJvb2xlYW4gPSBmYWxzZTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDbGlwcGVyU2VhcmNoQ2FsZW5kYXJTbmFwc2hvdE1vbnRoIHtcclxuICBkYXlzOiBudW1iZXJbXTtcclxuICBtb250aFNob3J0TmFtZTogc3RyaW5nO1xyXG4gIG1vbnRoTmFtZTogc3RyaW5nO1xyXG4gIG1vbnRoOiBudW1iZXI7XHJcbiAgeWVhcjogbnVtYmVyO1xyXG4gIHRvdGFsOiBudW1iZXI7XHJcbiAgZXhwaXJlZDogbnVtYmVyO1xyXG4gIGV4cGlyaW5nOiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBDbGlwcGVyU2VhcmNoQ2FsZW5kYXJTbmFwc2hvdFJlc3VsdCB7XHJcbiAgbW9udGhzPzogQ2xpcHBlclNlYXJjaENhbGVuZGFyU25hcHNob3RNb250aFtdIHwgbnVsbCA9IG51bGw7XHJcbn1cclxuXHJcblxyXG5leHBvcnQgY29uc3QgQ2xpcHBlckNvbmZpZzogYW55ID0ge1xyXG4gIC8vIENsaWVudCB1cmlcclxuICB1cmk6IG51bGwsXHJcblxyXG4gIC8vIFNlcnZpY2UgdXJpXHJcbiAgc2VydmljZVVyaTogbnVsbCxcclxuXHJcbiAgLy8gR2xvYmFsIHN0YXRlXHJcbiAgbG9nZ2VkSW46IGZhbHNlLFxyXG4gIGxvZ2luSW5mbzogbnVsbFxyXG59O1xyXG5cclxuZXhwb3J0IGVudW0gQ2xpcHBlclNvcnQge1xyXG4gIERlZmF1bHQgPSAwLFxyXG4gIFJlbGV2YW5jZSA9IDEsXHJcbiAgRGF0ZUFzYyA9IDIsXHJcbiAgRGF0ZURlc2MgPSAzLFxyXG4gIFNvdXJjZURhdGVBc2MgPSA0LFxyXG4gIFNvdXJjZURhdGVEZXNjID0gNSxcclxuICBQb3B1bGFyaXR5ID0gNlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBDbGlwcGVyRG9jdW1lbnRTbmFwc2hvdE1vZGUge1xyXG4gIFJlZmVyZW5jZXNJbiA9IDEsXHJcbiAgUmVmZXJlbmNlc091dCA9IDIsXHJcbiAgQ2hhbmdlc0luID0gMyxcclxuICBDaGFuZ2VzT3V0ID0gNSxcclxuICBKdXJpcyA9IDRcclxufVxyXG5cclxuZXhwb3J0IGVudW0gQ2xpcHBlckZhY2V0IHtcclxuICBTZWN0b3IgPSAxLFxyXG4gIFllYXIgPSAyLFxyXG4gIERvY3VtZW50VHlwZSA9IDMsXHJcbiAgVG9waWMgPSA0LFxyXG4gIEFydGljbGUgPSA1LFxyXG4gIEF1dGhvciA9IDYsXHJcbiAgUmVhc29uID0gOTVcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIENsaXBwZXJVdGlscyB7XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybiB0aGUgQ2xpcHBlciBncm91cCBuYW1lXHJcbiAgICogQHBhcmFtIHZhbHVlOiB0aGUgZ3JvdXAgdmFsdWUgXHJcbiAgICogQHJldHVybnMgdGhlIGdyb3VwIG5hbWVcclxuICAgKi9cclxuICBzdGF0aWMgZ2V0Q2xpcHBlck1vZHVsZUdyb3VwTmFtZSh2YWx1ZTogQ2xpcHBlck1vZHVsZUdyb3VwKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBDbGlwcGVyTW9kdWxlR3JvdXBzLmZpbHRlcigobikgPT4gbi52YWx1ZSA9PT0gdmFsdWUpPy5bMF0ubmFtZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybiB0aGUgbGlzdCBvZiBtb2R1bGVzIG9mIGEgZ3JvdXBcclxuICAgKiBAcGFyYW0gdmFsdWU6IHRoZSBtb2R1bGUgbmFtZVxyXG4gICAqIEByZXR1cm5zIHRoZSBsaXN0IG9mIG1vZHVsZXNcclxuICAgKi9cclxuICBzdGF0aWMgZ2V0Q2xpcHBlck1vZHVsZUdyb3VwSXRlbXModmFsdWU6IENsaXBwZXJNb2R1bGVHcm91cCk6IE5hbWVWYWx1ZUl0ZW08bnVtYmVyPltdIHtcclxuICAgIHJldHVybiBDbGlwcGVyTW9kdWxlcy5maWx0ZXIoKG4pID0+IG4ucGFyZW50VmFsdWUgPT09IHZhbHVlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybiB0aGUgbGlzdCBvZiBhdmFpbGFibGUgc29ydCBvcHRpb25zIGZvciBhIGxpc3Qgb2YgbW9kdWxlc1xyXG4gICAqIEBwYXJhbSBtb2R1bGVzIDogdGhlIG1vZHVsZXMgbGlzdFxyXG4gICAqIEByZXR1cm5zIHRoZSBsaXN0IG9mIGF2YWlsYmFsZSBzb3J0IG9wdGlvbnMgXHJcbiAgICovXHJcbiAgc3RhdGljIGdldENsaXBwZXJBdmFpbGFibGVTb3J0T3B0aW9ucyhcclxuICAgIG1vZHVsZXM6IE5hbWVWYWx1ZUl0ZW08bnVtYmVyPltdIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkLFxyXG4gICAgcGFyYW1zOiBDbGlwcGVyU2VhcmNoUGFyYW1zIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkKTogTmFtZVZhbHVlSXRlbTxudW1iZXI+W10ge1xyXG4gICAgY29uc3Qgb3B0aW9uczogTmFtZVZhbHVlSXRlbTxudW1iZXI+W10gPSBbXHJcbiAgICAgIHsgbmFtZTogXCJEYXRhIGRlY3Jlc2NlbnRlXCIsIHZhbHVlOiAxIH0sXHJcbiAgICAgIHsgbmFtZTogXCJEYXRhIGNyZXNjZW50ZVwiLCB2YWx1ZTogMiB9LFxyXG4gICAgICB7IG5hbWU6IFwiRGF0YSBmb250ZSBkZWNyZXNjZW50ZVwiLCB2YWx1ZTogMyB9LFxyXG4gICAgICB7IG5hbWU6IFwiRGF0YSBmb250ZSBjcmVzY2VudGVcIiwgdmFsdWU6IDQgfSxcclxuICAgICAgeyBuYW1lOiBcIlJpbGV2YW56YVwiLCB2YWx1ZTogNSB9LFxyXG4gICAgICB7IG5hbWU6IFwiUG9wb2xhcml0w6BcIiwgdmFsdWU6IDYgfSxcclxuICAgIF07XHJcbiAgICBsZXQgc29ydE9wdGlvbnM6IE5hbWVWYWx1ZUl0ZW08bnVtYmVyPltdID0gW11cclxuICAgIGlmIChwYXJhbXMgJiYgQ2xpcHBlclNlYXJjaFV0aWxzLmlzVGV4dFF1ZXJ5KHBhcmFtcykpIHtcclxuICAgICAgc29ydE9wdGlvbnMucHVzaChvcHRpb25zWzRdKTtcclxuICAgIH1cclxuICAgIGlmIChtb2R1bGVzICYmIG1vZHVsZXMubGVuZ3RoID4gMCAmJiBtb2R1bGVzLmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICBpZiAobW9kdWxlc1swXS52YWx1ZSA9PT0gQ2xpcHBlck1vZHVsZS5Ob3JtYXRpdmFWaWdlbnRlKSB7XHJcbiAgICAgICAgc29ydE9wdGlvbnMucHVzaChvcHRpb25zWzBdKTtcclxuICAgICAgICBzb3J0T3B0aW9ucy5wdXNoKG9wdGlvbnNbMV0pO1xyXG4gICAgICAgIHNvcnRPcHRpb25zLnB1c2gob3B0aW9uc1syXSk7XHJcbiAgICAgICAgc29ydE9wdGlvbnMucHVzaChvcHRpb25zWzNdKTtcclxuICAgICAgICBzb3J0T3B0aW9ucy5wdXNoKG9wdGlvbnNbNV0pO1xyXG4gICAgICB9IGVsc2UgaWYgKG1vZHVsZXNbMF0udmFsdWUgPT09IENsaXBwZXJNb2R1bGUuR2F6emV0dGVCb2xsZXR0aW5pRUZvbnRpRGl2ZXJzZSkge1xyXG4gICAgICAgIHNvcnRPcHRpb25zLnB1c2gob3B0aW9uc1syXSk7XHJcbiAgICAgICAgc29ydE9wdGlvbnMucHVzaChvcHRpb25zWzNdKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBzb3J0T3B0aW9ucy5wdXNoKG9wdGlvbnNbMF0pO1xyXG4gICAgICAgIHNvcnRPcHRpb25zLnB1c2gob3B0aW9uc1sxXSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHNvcnRPcHRpb25zLnB1c2gob3B0aW9uc1swXSk7XHJcbiAgICAgIHNvcnRPcHRpb25zLnB1c2gob3B0aW9uc1sxXSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gc29ydE9wdGlvbnM7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIENsaXBwZXJTZWFyY2hVdGlscyB7XHJcbiAgLyoqXHJcbiAgICogQ2xlYXIgdGhlIHNlYXJjaCBwYXJhbXMgb2JqZWN0XHJcbiAgICogQHBhcmFtIHBhcmFtcyA6IHRoZSBzZWFyY2ggcGFyYW1zIHRvIGNsZWFyXHJcbiAgICovXHJcbiAgc3RhdGljIGNsZWFyKHBhcmFtczogQ2xpcHBlclNlYXJjaFBhcmFtcykge1xyXG4gICAgcGFyYW1zLnNlY3RvciA9IG51bGw7XHJcbiAgICBwYXJhbXMuc2VjdG9ycyA9IG51bGw7XHJcbiAgICBwYXJhbXMuYXV0aG9yID0gbnVsbDtcclxuICAgIHBhcmFtcy5hdXRob3JzID0gbnVsbDtcclxuICAgIHBhcmFtcy50b3BpYyA9IG51bGw7XHJcbiAgICBwYXJhbXMudGF4b25vbXkgPSBudWxsO1xyXG4gICAgcGFyYW1zLnRheG9ub215UGF0aCA9IG51bGw7XHJcbiAgICBwYXJhbXMudGF4b25vbXlOb2RlID0gbnVsbDtcclxuICAgIHBhcmFtcy5udW1iZXIgPSBudWxsO1xyXG4gICAgcGFyYW1zLmZyb21EYXRlID0gbnVsbDtcclxuICAgIHBhcmFtcy50b0RhdGUgPSBudWxsO1xyXG4gICAgcGFyYW1zLnllYXIgPSBudWxsO1xyXG4gICAgcGFyYW1zLnNvdXJjZU51bWJlciA9IG51bGw7XHJcbiAgICBwYXJhbXMuc291cmNlID0gbnVsbDtcclxuICAgIHBhcmFtcy5zb3VyY2VGcm9tRGF0ZSA9IG51bGw7XHJcbiAgICBwYXJhbXMuc291cmNlVG9EYXRlID0gbnVsbDtcclxuICAgIHBhcmFtcy5zb3VyY2VZZWFyID0gbnVsbDtcclxuICAgIHBhcmFtcy50ZXh0ID0gbnVsbDtcclxuICAgIHBhcmFtcy50aXRsZU9ubHkgPSBmYWxzZTtcclxuICAgIHBhcmFtcy50eXBlID0gbnVsbDtcclxuICAgIHBhcmFtcy5zaG93VW5yZWFkRG9jdW1lbnRzT25seSA9IGZhbHNlO1xyXG4gICAgcGFyYW1zLnNob3dDb21tZW50ZWREb2N1bWVudHNPbmx5ID0gZmFsc2U7XHJcbiAgICBwYXJhbXMuY2hhbm5lbHMgPSBbLi4uQ2xpcHBlckNoYW5uZWxzXTtcclxuICAgIHBhcmFtcy5jaGFuZ2VSZWFzb24gPSBudWxsO1xyXG4gICAgcGFyYW1zLmNoYW5nZWROdW1iZXIgPSBudWxsO1xyXG4gICAgcGFyYW1zLmNoYW5nZWRZZWFyID0gbnVsbDtcclxuICAgIHBhcmFtcy5jaGFuZ2VkVGl0bGUgPSBudWxsO1xyXG4gICAgcGFyYW1zLm1vZGlmaWVyTnVtYmVyID0gbnVsbDtcclxuICAgIHBhcmFtcy5tb2RpZmllclllYXIgPSBudWxsO1xyXG4gICAgcGFyYW1zLm1vZGlmaWVyVGl0bGUgPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUHJlcGFyZSB0aGUgbW9kdWxlIHNwZWNpZmljIHF1ZXJ5XHJcbiAgICogQHBhcmFtIHBhcmFtcyA6IHRoZSBzZWFyY2ggcGFyYW1zIHRvIHVzZVxyXG4gICAqIEBwYXJhbSBtb2R1bGUgOiB0aGUgbW9kdWxlIHRvIHByZXBhcmUgdGhlIHNlYXJjaCBwYXJhbXMgZm9yXHJcbiAgICogQHJldHVybnMgdGhlIG5ldyBzZWFyY2ggcGFyYW1zXHJcbiAgICovXHJcbiAgc3RhdGljIHByZXBhcmUocGFyYW1zOiBDbGlwcGVyU2VhcmNoUGFyYW1zLCBtb2R1bGU6IENsaXBwZXJNb2R1bGUpOiBDbGlwcGVyU2VhcmNoUGFyYW1zIHtcclxuICAgIGxldCBtb2R1bGVQYXJhbXM6IENsaXBwZXJTZWFyY2hQYXJhbXMgPSB7fTtcclxuICAgIG1vZHVsZVBhcmFtcy5jaGFubmVscyA9IHBhcmFtcy5jaGFubmVscztcclxuICAgIG1vZHVsZVBhcmFtcy50ZXh0ID0gcGFyYW1zLnRleHQ7XHJcbiAgICBtb2R1bGVQYXJhbXMudGl0bGVPbmx5ID0gcGFyYW1zLnRpdGxlT25seTtcclxuICAgIG1vZHVsZVBhcmFtcy5maXJzdCA9IHBhcmFtcy5maXJzdDtcclxuICAgIG1vZHVsZVBhcmFtcy5jb3VudCA9IHBhcmFtcy5jb3VudDtcclxuICAgIG1vZHVsZVBhcmFtcy5zb3J0TW9kZSA9IHBhcmFtcy5zb3J0TW9kZTtcclxuICAgIHN3aXRjaCAobW9kdWxlKSB7XHJcbiAgICAgIGNhc2UgQ2xpcHBlck1vZHVsZS5TY2FkZW56ZUVTZWduYWxhemlvbmk6XHJcbiAgICAgIGNhc2UgQ2xpcHBlck1vZHVsZS5RdWVzaXRpRUNhc2lSaXNvbHRpOlxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIENsaXBwZXJNb2R1bGUuTmV3czpcclxuICAgICAgY2FzZSBDbGlwcGVyTW9kdWxlLkFsbGVydGVBbGltZW50YXJpOlxyXG4gICAgICAgIG1vZHVsZVBhcmFtcy5mcm9tRGF0ZSA9IHBhcmFtcy5mcm9tRGF0ZTtcclxuICAgICAgICBtb2R1bGVQYXJhbXMudG9EYXRlID0gcGFyYW1zLnRvRGF0ZTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBDbGlwcGVyTW9kdWxlLkdhenpldHRlQm9sbGV0dGluaUVGb250aURpdmVyc2U6XHJcbiAgICAgIGNhc2UgQ2xpcHBlck1vZHVsZS5Ob3JtYXRpdmFWaWdlbnRlOlxyXG4gICAgICAgIG1vZHVsZVBhcmFtcy5zZWN0b3IgPSBwYXJhbXMuc2VjdG9yO1xyXG4gICAgICAgIG1vZHVsZVBhcmFtcy5zZWN0b3JzID0gcGFyYW1zLnNlY3RvcnM7XHJcbiAgICAgICAgbW9kdWxlUGFyYW1zLmF1dGhvciA9IHBhcmFtcy5hdXRob3I7XHJcbiAgICAgICAgbW9kdWxlUGFyYW1zLmF1dGhvcnMgPSBwYXJhbXMuYXV0aG9ycztcclxuICAgICAgICBtb2R1bGVQYXJhbXMudHlwZSA9IHBhcmFtcy50eXBlO1xyXG4gICAgICAgIG1vZHVsZVBhcmFtcy50b3BpYyA9IHBhcmFtcy50b3BpYztcclxuICAgICAgICBtb2R1bGVQYXJhbXMubnVtYmVyID0gcGFyYW1zLm51bWJlcjtcclxuICAgICAgICBtb2R1bGVQYXJhbXMueWVhciA9IHBhcmFtcy55ZWFyO1xyXG4gICAgICAgIG1vZHVsZVBhcmFtcy5mcm9tRGF0ZSA9IHBhcmFtcy5mcm9tRGF0ZTtcclxuICAgICAgICBtb2R1bGVQYXJhbXMudG9EYXRlID0gcGFyYW1zLnRvRGF0ZTtcclxuICAgICAgICBtb2R1bGVQYXJhbXMuc2hvd0NvbW1lbnRlZERvY3VtZW50c09ubHkgPSBwYXJhbXMuc2hvd0NvbW1lbnRlZERvY3VtZW50c09ubHk7XHJcbiAgICAgICAgbW9kdWxlUGFyYW1zLnNvdXJjZSA9IHBhcmFtcy5zb3VyY2U7XHJcbiAgICAgICAgbW9kdWxlUGFyYW1zLnNvdXJjZU51bWJlciA9IHBhcmFtcy5zb3VyY2VOdW1iZXI7XHJcbiAgICAgICAgbW9kdWxlUGFyYW1zLnNvdXJjZVllYXIgPSBwYXJhbXMuc291cmNlWWVhcjtcclxuICAgICAgICBtb2R1bGVQYXJhbXMuc291cmNlRnJvbURhdGUgPSBwYXJhbXMuc291cmNlRnJvbURhdGU7XHJcbiAgICAgICAgbW9kdWxlUGFyYW1zLnNvdXJjZVRvRGF0ZSA9IHBhcmFtcy5zb3VyY2VUb0RhdGU7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgQ2xpcHBlck1vZHVsZS5HaXVyaXNwcnVkZW56YTpcclxuICAgICAgICBtb2R1bGVQYXJhbXMuc2VjdG9yID0gcGFyYW1zLnNlY3RvcjtcclxuICAgICAgICBtb2R1bGVQYXJhbXMuc2VjdG9ycyA9IHBhcmFtcy5zZWN0b3JzO1xyXG4gICAgICAgIG1vZHVsZVBhcmFtcy5udW1iZXIgPSBwYXJhbXMubnVtYmVyO1xyXG4gICAgICAgIG1vZHVsZVBhcmFtcy55ZWFyID0gcGFyYW1zLnllYXI7XHJcbiAgICAgICAgbW9kdWxlUGFyYW1zLmZyb21EYXRlID0gcGFyYW1zLmZyb21EYXRlO1xyXG4gICAgICAgIG1vZHVsZVBhcmFtcy50b0RhdGUgPSBwYXJhbXMudG9EYXRlO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG1vZHVsZVBhcmFtcztcclxuXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDaGVjayBpZiBjdXJyZW50IGZpbHRlciBpcyBhIHRleHQgYmFzZWQgc2VhcmNoIFxyXG4gICAqIEBwYXJhbSBwYXJhbXMgOiB0aGUgc2VhcmNoIHBhcmFtcyB0byBjaGVja1xyXG4gICAqIEByZXR1cm5zIHRydWUgaWYgaXMgYSB0ZXh0IGJhc2VkIHNlYXJjaFxyXG4gICAqL1xyXG4gIHN0YXRpYyBpc1RleHRRdWVyeShwYXJhbXM6IENsaXBwZXJTZWFyY2hQYXJhbXMpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBwYXJhbXMudGV4dCAhPSBudWxsICYmIHBhcmFtcy50ZXh0Py5sZW5ndGggPiAwO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVHJ5IHRvIGFkZCBhIHF1ZXJ5XHJcbiAgICogQHBhcmFtIHEgOiB0aGUgbmV3IHF1ZXJ5XHJcbiAgICogQHBhcmFtIHF1ZXJpZXMgOiB0aGUgbmV3IHF1ZXJ5XHJcbiAgICAgICAgICAqL1xyXG4gIHByaXZhdGUgc3RhdGljIGNvbmNhdFRleHRRdWVyeShxOiBzdHJpbmcsIHF1ZXJpZXM6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBpZiAocSAmJiBxLmxlbmd0aCA+IDApIHtcclxuICAgICAgaWYgKHF1ZXJpZXMubGVuZ3RoID09IDAgJiYgKHFbMF0gPT09ICcrJyB8fCBxWzBdID09PSAnLScpKVxyXG4gICAgICAgIHEgPSBxLnN1YnN0cmluZygxKTtcclxuICAgICAgaWYgKHFbcS5sZW5ndGggLSAxXSAhPT0gJ1xcXCInICYmIHEuaW5kZXhPZignICcpICE9PSAtMSlcclxuICAgICAgICBxID0gXCJcXFwiXCIgKyBxICsgXCJcXFwiXCI7XHJcbiAgICAgIGlmIChxdWVyaWVzLmxlbmd0aCA+IDApIHF1ZXJpZXMgKz0gXCIsIFwiO1xyXG4gICAgICBxdWVyaWVzICs9IHE7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcXVlcmllcztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE5vcm1hbGl6ZSB0ZXh0IHF1ZXJ5XHJcbiAgICogQHBhcmFtIHRleHQgOiB0aGUgdGV4dCBxdWVyeSB0byBub3JtYWxpemVcclxuICAgKiBAcmV0dXJucyA6IHRoZSB0ZXh0IG5vcm1hbGl6ZWQgb3IgbnVsbFxyXG4gICAqL1xyXG4gIHN0YXRpYyBub3JtYWxpemVUZXh0UXVlcnkodGV4dDogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICBpZiAoIXRleHQgfHwgdGV4dC5sZW5ndGggPT09IDApIHJldHVybiBudWxsO1xyXG4gICAgbGV0IHE6IHN0cmluZyA9ICcnO1xyXG4gICAgbGV0IHF1ZXJpZXM6IHN0cmluZyA9ICcnO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0ZXh0Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGlmICh0ZXh0W2ldID09PSAnLCcpIHtcclxuICAgICAgICBxdWVyaWVzID0gdGhpcy5jb25jYXRUZXh0UXVlcnkocS50cmltKCksIHF1ZXJpZXMpO1xyXG4gICAgICAgIHEgPSAnJztcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHEgKz0gdGV4dFtpXTtcclxuICAgIH1cclxuICAgIHF1ZXJpZXMgPSB0aGlzLmNvbmNhdFRleHRRdWVyeShxLnRyaW0oKSwgcXVlcmllcyk7XHJcbiAgICByZXR1cm4gcXVlcmllcztcclxuICB9XHJcbn0iXX0=