@sbb-esta/lyne-elements-experimental-dev 4.7.0-dev.1773333596 → 4.7.0-dev.1773388997

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 (199) hide show
  1. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +65 -76
  2. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +72 -52
  3. package/autocomplete-grid/autocomplete-grid-button.js +3 -6
  4. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +2 -17
  5. package/autocomplete-grid/autocomplete-grid-cell.js +4 -7
  6. package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +20 -21
  7. package/autocomplete-grid/autocomplete-grid-optgroup.js +3 -6
  8. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +2 -33
  9. package/autocomplete-grid/autocomplete-grid-option.js +4 -9
  10. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +2 -22
  11. package/autocomplete-grid/autocomplete-grid-row.js +4 -7
  12. package/autocomplete-grid/autocomplete-grid.js +3 -6
  13. package/autocomplete-grid-cell.component-Dak9wlBr.js +24 -0
  14. package/autocomplete-grid-option.component-DNRFHOwc.js +37 -0
  15. package/autocomplete-grid-row.component-DBHZQ0GQ.js +27 -0
  16. package/autocomplete-grid.js +9 -21
  17. package/autocomplete-grid.pure.js +7 -15
  18. package/core/datetime/date-helper.js +2 -191
  19. package/core/datetime.js +2 -5
  20. package/core/timetable/access-leg-helper.js +76 -71
  21. package/core/timetable/timetable-helper.js +9 -11
  22. package/core/timetable/timetable-properties.js +0 -1
  23. package/core/timetable.js +3 -7
  24. package/date-helper-CGproP5d.js +185 -0
  25. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +114 -122
  26. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +92 -70
  27. package/development/autocomplete-grid/autocomplete-grid-button.js +6 -4
  28. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +2 -29
  29. package/development/autocomplete-grid/autocomplete-grid-cell.js +7 -5
  30. package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +27 -22
  31. package/development/autocomplete-grid/autocomplete-grid-optgroup.js +6 -4
  32. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +2 -109
  33. package/development/autocomplete-grid/autocomplete-grid-option.js +7 -7
  34. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +2 -91
  35. package/development/autocomplete-grid/autocomplete-grid-row.js +7 -5
  36. package/development/autocomplete-grid/autocomplete-grid.js +6 -4
  37. package/development/autocomplete-grid-cell.component-BBvM4o2H.js +42 -0
  38. package/development/autocomplete-grid-option.component-QzfM5eIE.js +123 -0
  39. package/development/autocomplete-grid-row.component-H8sCTCkT.js +104 -0
  40. package/development/autocomplete-grid.js +10 -14
  41. package/development/autocomplete-grid.pure.js +4 -13
  42. package/development/core/datetime/date-helper.js +2 -285
  43. package/development/core/datetime.js +2 -6
  44. package/development/core/timetable/access-leg-helper.js +104 -82
  45. package/development/core/timetable/timetable-helper.js +16 -17
  46. package/development/core/timetable/timetable-properties.js +0 -2
  47. package/development/core/timetable.js +3 -8
  48. package/development/date-helper-8_Y-PuHh.js +520 -0
  49. package/development/differenceInMinutes-DN_1Rk3O.js +110 -0
  50. package/development/format-Bbrn2bgo.js +1848 -0
  51. package/development/isValid-C-HzKv4v.js +178 -0
  52. package/development/journey-summary/journey-summary.component.js +2 -288
  53. package/development/journey-summary.component-uGhZvA4p.js +385 -0
  54. package/development/journey-summary.js +8 -5
  55. package/development/journey-summary.pure.js +2 -5
  56. package/development/pearl-chain/pearl-chain.component.js +2 -634
  57. package/development/pearl-chain-time/pearl-chain-time.component.js +2 -306
  58. package/development/pearl-chain-time.component-B8mayTWD.js +415 -0
  59. package/development/pearl-chain-time.js +8 -5
  60. package/development/pearl-chain-time.pure.js +2 -5
  61. package/development/pearl-chain-vertical/pearl-chain-vertical.component.js +2 -28
  62. package/development/pearl-chain-vertical-item/pearl-chain-vertical-item.component.js +2 -393
  63. package/development/pearl-chain-vertical-item.component-BDzbcIaf.js +435 -0
  64. package/development/pearl-chain-vertical-item.js +8 -5
  65. package/development/pearl-chain-vertical-item.pure.js +2 -5
  66. package/development/pearl-chain-vertical.component-CswE7b3M.js +39 -0
  67. package/development/pearl-chain-vertical.js +8 -5
  68. package/development/pearl-chain-vertical.pure.js +2 -5
  69. package/development/pearl-chain.component-wpsTvoSe.js +704 -0
  70. package/development/pearl-chain.js +8 -5
  71. package/development/pearl-chain.pure.js +2 -5
  72. package/development/seat-reservation/common/mapper/icon-mapper.js +168 -71
  73. package/development/seat-reservation/common/mapper/mapper.js +153 -122
  74. package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-bus.js +570 -559
  75. package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-decks.js +992 -972
  76. package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-giruno.js +20334 -20367
  77. package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-others.js +1731 -1738
  78. package/development/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-train.js +9741 -9782
  79. package/development/seat-reservation/common/mapper.js +1 -8
  80. package/development/seat-reservation/common/svgs.js +2 -46
  81. package/development/seat-reservation/common/translations/i18n.js +1118 -900
  82. package/development/seat-reservation/common/translations.js +1 -4
  83. package/development/seat-reservation/common/types.js +0 -2
  84. package/development/seat-reservation/common.js +7 -11
  85. package/development/seat-reservation/seat-reservation/seat-reservation-base-element.js +1305 -1230
  86. package/development/seat-reservation/seat-reservation/seat-reservation.component.js +2 -859
  87. package/development/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +2 -106
  88. package/development/seat-reservation/seat-reservation-area.js +7 -5
  89. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +35 -34
  90. package/development/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +2 -162
  91. package/development/seat-reservation/seat-reservation-graphic.js +7 -5
  92. package/development/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +2 -713
  93. package/development/seat-reservation/seat-reservation-navigation-coach.js +7 -5
  94. package/development/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +2 -131
  95. package/development/seat-reservation/seat-reservation-navigation-services.js +7 -5
  96. package/development/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +2 -601
  97. package/development/seat-reservation/seat-reservation-place-control.js +7 -5
  98. package/development/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.js +2 -22
  99. package/development/seat-reservation/seat-reservation-scoped.js +7 -5
  100. package/development/seat-reservation/seat-reservation.js +7 -6
  101. package/development/seat-reservation-area.component-BK92ZtFo.js +138 -0
  102. package/development/seat-reservation-graphic.component-cUnsHh5x.js +193 -0
  103. package/development/seat-reservation-navigation-coach.component-D6Bglus8.js +828 -0
  104. package/development/seat-reservation-navigation-services.component-DYJ6Ddkg.js +179 -0
  105. package/development/seat-reservation-place-control.component-Bg9evKBW.js +726 -0
  106. package/development/seat-reservation-scoped.component-DRQ_I702.js +31 -0
  107. package/development/seat-reservation.component-Cq_aJKR0.js +818 -0
  108. package/development/seat-reservation.js +15 -28
  109. package/development/seat-reservation.pure.js +10 -28
  110. package/development/svgs-C3JMWR26.js +28 -0
  111. package/development/timetable-duration/timetable-duration.component.js +2 -108
  112. package/development/timetable-duration.component-DI0lET17.js +125 -0
  113. package/development/timetable-duration.js +8 -5
  114. package/development/timetable-duration.pure.js +2 -5
  115. package/development/timetable-row/timetable-row.component.js +2 -781
  116. package/development/timetable-row.component-CAED6Zwc.js +932 -0
  117. package/development/timetable-row.js +8 -13
  118. package/development/timetable-row.pure.js +2 -12
  119. package/development/toDate-Biiv3kyf.js +150 -0
  120. package/differenceInMinutes-Dr9gRqtu.js +27 -0
  121. package/format-CM5exOsN.js +1103 -0
  122. package/isValid-B9oVW3lA.js +36 -0
  123. package/journey-summary/journey-summary.component.js +2 -194
  124. package/journey-summary.component-Cq_4kaOp.js +264 -0
  125. package/journey-summary.js +5 -4
  126. package/journey-summary.pure.js +2 -4
  127. package/package.json +2 -2
  128. package/pearl-chain/pearl-chain.component.js +2 -165
  129. package/pearl-chain-time/pearl-chain-time.component.js +2 -157
  130. package/pearl-chain-time.component-DGDW5S1c.js +239 -0
  131. package/pearl-chain-time.js +5 -4
  132. package/pearl-chain-time.pure.js +2 -4
  133. package/pearl-chain-vertical/pearl-chain-vertical.component.js +2 -17
  134. package/pearl-chain-vertical-item/pearl-chain-vertical-item.component.js +2 -77
  135. package/pearl-chain-vertical-item.component-G22bWhLU.js +108 -0
  136. package/pearl-chain-vertical-item.js +5 -4
  137. package/pearl-chain-vertical-item.pure.js +2 -4
  138. package/pearl-chain-vertical.component-CXIDT5RD.js +21 -0
  139. package/pearl-chain-vertical.js +5 -4
  140. package/pearl-chain-vertical.pure.js +2 -4
  141. package/pearl-chain.component-DmjkVIva.js +194 -0
  142. package/pearl-chain.js +5 -4
  143. package/pearl-chain.pure.js +2 -4
  144. package/seat-reservation/common/mapper/icon-mapper.js +71 -71
  145. package/seat-reservation/common/mapper/mapper.js +95 -89
  146. package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-bus.js +568 -558
  147. package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-decks.js +989 -970
  148. package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-giruno.js +20332 -20366
  149. package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-others.js +1729 -1737
  150. package/seat-reservation/common/mapper/sample-data/seat-reservation-sample-data-train.js +9739 -9781
  151. package/seat-reservation/common/mapper.js +3 -9
  152. package/seat-reservation/common/svgs.js +2 -243
  153. package/seat-reservation/common/translations/i18n.js +1084 -891
  154. package/seat-reservation/common/translations.js +2 -4
  155. package/seat-reservation/common/types.js +0 -1
  156. package/seat-reservation/common.js +9 -15
  157. package/seat-reservation/seat-reservation/seat-reservation-base-element.js +832 -810
  158. package/seat-reservation/seat-reservation/seat-reservation.component.js +2 -420
  159. package/seat-reservation/seat-reservation-area/seat-reservation-area.component.js +2 -51
  160. package/seat-reservation/seat-reservation-area.js +4 -7
  161. package/seat-reservation/seat-reservation-graphic/seat-reservation-assets.js +68 -71
  162. package/seat-reservation/seat-reservation-graphic/seat-reservation-graphic.component.js +2 -75
  163. package/seat-reservation/seat-reservation-graphic.js +4 -7
  164. package/seat-reservation/seat-reservation-navigation-coach/seat-reservation-navigation-coach.component.js +2 -234
  165. package/seat-reservation/seat-reservation-navigation-coach.js +4 -7
  166. package/seat-reservation/seat-reservation-navigation-services/seat-reservation-navigation-services.component.js +2 -85
  167. package/seat-reservation/seat-reservation-navigation-services.js +4 -7
  168. package/seat-reservation/seat-reservation-place-control/seat-reservation-place-control.component.js +2 -203
  169. package/seat-reservation/seat-reservation-place-control.js +4 -7
  170. package/seat-reservation/seat-reservation-scoped/seat-reservation-scoped.component.js +2 -13
  171. package/seat-reservation/seat-reservation-scoped.js +4 -7
  172. package/seat-reservation/seat-reservation.js +5 -9
  173. package/seat-reservation-area.component-n-9rGn_y.js +75 -0
  174. package/seat-reservation-graphic.component-YTXRmKt0.js +102 -0
  175. package/seat-reservation-navigation-coach.component-YJ0vaYmO.js +333 -0
  176. package/seat-reservation-navigation-services.component-C3xnLJg2.js +127 -0
  177. package/seat-reservation-place-control.component-DmBAfM6K.js +322 -0
  178. package/seat-reservation-scoped.component-DPkz6u17.js +17 -0
  179. package/seat-reservation.component-C_anMkgw.js +364 -0
  180. package/seat-reservation.js +17 -39
  181. package/seat-reservation.pure.js +15 -32
  182. package/svgs-D9arBcqr.js +26 -0
  183. package/timetable-duration/timetable-duration.component.js +2 -57
  184. package/timetable-duration.component-DCu8Phts.js +65 -0
  185. package/timetable-duration.js +5 -4
  186. package/timetable-duration.pure.js +2 -4
  187. package/timetable-row/timetable-row.component.js +2 -427
  188. package/timetable-row.component-BVRCB3xK.js +559 -0
  189. package/timetable-row.js +6 -13
  190. package/timetable-row.pure.js +2 -11
  191. package/toDate-p-Tpkb7t.js +16 -0
  192. package/development/differenceInMinutes-B0dawX-5.js +0 -26
  193. package/development/format-BMkeaqaF.js +0 -1433
  194. package/development/isValid-BYRch7pV.js +0 -53
  195. package/development/toDate-BWb6Z1JD.js +0 -24
  196. package/differenceInMinutes-COvvdYsJ.js +0 -23
  197. package/format-CmKROkbc.js +0 -1186
  198. package/isValid-m3_OsPaB.js +0 -45
  199. package/toDate-Bw2KTWeq.js +0 -15
@@ -1,902 +1,1120 @@
1
- const i18nObjects = {
2
- // BASICS
3
- // COACH DECK LABEL DESCRIPTIONS
4
- SINGLE_DECK: {
5
- de: "Einzeldeck",
6
- en: "Single deck",
7
- fr: "Étage unique",
8
- it: "Piano singolo"
9
- },
10
- LOWER_DECK: {
11
- de: "Unterdeck",
12
- en: "Lower deck",
13
- fr: "Salle basse",
14
- it: "Sala bassa"
15
- },
16
- MIDDLE_DECK: {
17
- de: "Mitteldeck",
18
- en: "Middle deck",
19
- fr: "Niveau du milieu",
20
- it: "Livello centrale"
21
- },
22
- UPPER_DECK: {
23
- de: "Oberdeck",
24
- en: "Upper deck",
25
- fr: "Salle haute",
26
- it: "Sala alta"
27
- },
28
- // CAPTION FOR SCREENREADER INSIDE WAGON
29
- COACH_TABLE_CAPTION: {
30
- de: "Wagen _param0_ selektiert",
31
- en: "Coach _param0_ selected",
32
- fr: "Voiture _param0_ sélectionnée",
33
- it: "Carrozza _param0_ selezionata"
34
- },
35
- COACH_BLOCKED_TABLE_CAPTION: {
36
- de: "Wagen _param0_ ist nicht betretbar. Navigieren Sie bitte zum nächsten verfügbaren Wagen",
37
- en: "No access to coach _param0_. Please navigate to the next available coach",
38
- fr: "La voiture _param0_ n’est pas accessible. Veuillez continuer jusqu’à la prochaine voiture disponible",
39
- it: "La carrozza _param0_ non è accessibile. Naviga verso la prossima carrozza disponibile"
40
- },
41
- SEAT_RESERVATION_BEGIN: {
42
- de: "Beginn der Grafische Sitzplatzreservierung",
43
- en: "Start Graphic Seat Reservation",
44
- fr: "Commencer la réservation graphique de places",
45
- it: "Avvio della prenotazione grafica dei posti"
46
- },
47
- SEAT_RESERVATION_END: {
48
- de: "Verlassen der Grafische Sitzplatzreservierung",
49
- en: "Exit Graphic Seat Reservation",
50
- fr: "Terminer la réservation graphique de places",
51
- it: "Uscita dalla prenotazione grafica dei posti"
52
- },
53
- COACH_LOCOMOTIVE: {
54
- de: "Lokomotive",
55
- en: "Locomotive",
56
- fr: "Locomotive",
57
- it: "Locomotiva"
58
- },
59
- // TRAVEL DIRECTION
60
- SEAT_RESERVATION_TRAVEL_DIRECTION: {
61
- de: "Fahrtrichtung",
62
- en: "Travel direction",
63
- fr: "Direction du voyage",
64
- it: "Direzione di viaggio"
65
- },
66
- // NAVIGATION
67
- NAVIGATE_TO_COACH: {
68
- de: "Navigiere zu Wagen _param0_",
69
- en: "Navigate to coach _param0_",
70
- fr: "Aller à la voiture _param0_",
71
- it: "Naviga verso la carrozza _param0_"
72
- },
73
- NAVIGATE_TO_COACH_SERVICE_CLASS_SUB: {
74
- de: " mit _param0_ Abteil",
75
- en: " with _param0_ compartment",
76
- fr: " avec compartiment _param0_",
77
- it: " con compartimento di _param0_"
78
- },
79
- NAVIGATE_COACH_BLOCKED: {
80
- de: "Zugabteil _param0_ ist nicht betretbar",
81
- en: "No access to train compartment _param0_",
82
- fr: "Le compartiment _param0_ n’est pas accessible",
83
- it: "Il compartimento del treno _param0_ non è accessibile"
84
- },
85
- SEAT_RESERVATION_NAVIGATION: {
86
- de: "Sitzplatzreservierungsnavigation",
87
- en: "Seat reservation navigation",
88
- fr: "Navigation pour la réservation de places",
89
- it: "Navigazione per la prenotazione dei posti"
90
- },
91
- COACH_AVAILABLE_NUMBER_OF_PLACES: {
92
- de: "_param0_ verfügbare Sitzplätze. _param1_ verfügbare Veloplätze.",
93
- en: "_param0_ seats available. _param1_ available bicycle spaces.",
94
- fr: "_param0_ places assises disponibles. _param1_ places pour vélos disponibles.",
95
- it: "_param0_ posti a sedere disponibili. _param1_ posti per biciclette disponibili."
96
- },
97
- SERVICE_CLASS_FIRST: {
98
- de: "erste Klasse",
99
- en: "First class",
100
- fr: "première classe",
101
- it: "prima classe"
102
- },
103
- SERVICE_CLASS_SECOND: {
104
- de: "zweite Klasse",
105
- en: "Second class",
106
- fr: "deuxième classe",
107
- it: "seconda classe"
108
- },
109
- // NAVIGATION SERVICES ICONS AND SERVICE ICONS INSIDE WAGON
110
- BICYCLE: {
111
- de: "Velobereich",
112
- en: "Bike area",
113
- fr: "Espace vélo",
114
- it: "Area bici"
115
- },
116
- BICYCLE_HIGH: {
117
- de: "Velobereich",
118
- en: "Bike area",
119
- fr: "Espace vélo",
120
- it: "Area bici"
121
- },
122
- BICYCLE_HIGH_ICON: {
123
- de: "Velobereich",
124
- en: "Bike area",
125
- fr: "Espace vélo",
126
- it: "Area bici"
127
- },
128
- BICYCLE_ICON: {
129
- de: "Velobereich",
130
- en: "Bike area",
131
- fr: "Espace vélo",
132
- it: "Area bici"
133
- },
134
- BICYCLE_LOW: {
135
- de: "Velobereich",
136
- en: "Bike area",
137
- fr: "Espace vélo",
138
- it: "Area bici"
139
- },
140
- BICYCLE_LOW_ICON: {
141
- de: "Velobereich",
142
- en: "Bike area",
143
- fr: "Espace vélo",
144
- it: "Area bici"
145
- },
146
- BICYCLE_MIDDLE: {
147
- de: "Velobereich",
148
- en: "Bike area",
149
- fr: "Espace vélo",
150
- it: "Area bici"
151
- },
152
- BICYCLE_MIDDLE_ICON: {
153
- de: "Velobereich",
154
- en: "Bike area",
155
- fr: "Espace vélo",
156
- it: "Area bici"
157
- },
158
- BISTRO: {
159
- de: "Bistro",
160
- en: "Bistro",
161
- fr: "Bistro",
162
- it: "Bistro"
163
- },
164
- BISTRO_ICON: {
165
- de: "Bistro",
166
- en: "Bistro",
167
- fr: "Bistro",
168
- it: "Bistro"
169
- },
170
- BUSINESS: {
171
- de: "Businesszone",
172
- en: "Business zone",
173
- fr: "Espace affaires",
174
- it: "Zona business"
175
- },
176
- BUSINESS_COMFORT: {
177
- de: "Businesszone",
178
- en: "Business zone",
179
- fr: "Espace affaires",
180
- it: "Zona business"
181
- },
182
- BUSINESS_ICON: {
183
- de: "Businesszone",
184
- en: "Business zone",
185
- fr: "Espace affaires",
186
- it: "Zona business"
187
- },
188
- COACH_PASSAGE: {
189
- de: "Wagenübergang",
190
- en: "Inter-coach gangway",
191
- fr: "Intercirculation",
192
- it: "Passaggio intercomunicante"
193
- },
194
- EASY_ACCESS: {
195
- de: "Zone für Reisende mit eingeschränkter Mobilität",
196
- en: "Zone for travellers with reduced mobility",
197
- fr: "Zone pour voyageurs à mobilité réduite",
198
- it: "Zona viaggiatori a mobilità ridotta"
199
- },
200
- EASY_ACCESS_AREA: {
201
- de: "Zone für Reisende mit eingeschränkter Mobilität",
202
- en: "Zone for travellers with reduced mobility",
203
- fr: "Zone pour voyageurs à mobilité réduite",
204
- it: "Zona viaggiatori a mobilità ridotta"
205
- },
206
- EASY_ACCESS_ICON: {
207
- de: "Zone für Reisende mit eingeschränkter Mobilität",
208
- en: "Zone for travellers with reduced mobility",
209
- fr: "Zone pour voyageurs à mobilité réduite",
210
- it: "Zona viaggiatori a mobilità ridotta"
211
- },
212
- ENTRY_EXIT: {
213
- de: "Ausgang / Eingang",
214
- en: "Exit / entrance",
215
- fr: "Sortie / Entrée",
216
- it: "Uscita / Ingresso"
217
- },
218
- FAMILY: {
219
- de: "Familienwagen",
220
- en: "Family coach",
221
- fr: "Voiture-familles",
222
- it: "Carrozza famiglia"
223
- },
224
- LUGGAGE_AREA: {
225
- de: "Gepäckzone",
226
- en: "Luggage zone",
227
- fr: "Espace bagages",
228
- it: "Zona bagagli"
229
- },
230
- LUGGAGE_ICON: {
231
- de: "Gepäckzone",
232
- en: "Luggage zone",
233
- fr: "Espace bagages",
234
- it: "Zona bagagli"
235
- },
236
- MULTI_FUNCTION_AREA: {
237
- de: "Multifunktionsbereich",
238
- en: "Multifunction area",
239
- fr: "Zone multifonctionnelle",
240
- it: "Zona multifunzionale"
241
- },
242
- MULTI_FUNCTION_ICON: {
243
- de: "Multifunktionsbereich",
244
- en: "Multifunction area",
245
- fr: "Zone multifonctionnelle",
246
- it: "Zona multifunzionale"
247
- },
248
- PLAYGROUND_AREA: {
249
- de: "Familienwagen",
250
- en: "Family coach",
251
- fr: "Voiture-familles",
252
- it: "Carrozza famiglia"
253
- },
254
- PLAYGROUND_ICON: {
255
- de: "Familienwagen",
256
- en: "Family coach",
257
- fr: "Voiture-familles",
258
- it: "Carrozza famiglia"
259
- },
260
- PRAM: {
261
- de: "Kinderwagenbereich",
262
- en: "Pram/pushchair area",
263
- fr: "Espace poussette",
264
- it: "Area per passeggini"
265
- },
266
- PRAM_AREA: {
267
- de: "Kinderwagenbereich",
268
- en: "Pram/pushchair area",
269
- fr: "Espace poussette",
270
- it: "Area per passeggini"
271
- },
272
- PRAM_ICON: {
273
- de: "Kinderwagenbereich",
274
- en: "Pram/pushchair area",
275
- fr: "Espace poussette",
276
- it: "Area per passeggini"
277
- },
278
- RESTAURANT: {
279
- de: "Restaurant",
280
- en: "Restaurant",
281
- fr: "Restaurant",
282
- it: "Ristorante"
283
- },
284
- RESTAURANT_AREA: {
285
- de: "Restaurant",
286
- en: "Restaurant",
287
- fr: "Restaurant",
288
- it: "Ristorante"
289
- },
290
- RESTAURANT_ICON: {
291
- de: "Restaurant",
292
- en: "Restaurant",
293
- fr: "Restaurant",
294
- it: "Ristorante"
295
- },
296
- SILENCE: {
297
- de: "Ruhezone",
298
- en: "Quiet zone",
299
- fr: "Espace silence",
300
- it: "Zona del silenzio"
301
- },
302
- SILENCE_AREA_ICON: {
303
- de: "Ruhezone",
304
- en: "Quiet zone",
305
- fr: "Espace silence",
306
- it: "Zona del silenzio"
307
- },
308
- SILENCE_ICON: {
309
- de: "Ruhezone",
310
- en: "Quiet zone",
311
- fr: "Espace silence",
312
- it: "Zona del silenzio"
313
- },
314
- SKI_AREA: {
315
- de: "Ski Bereich",
316
- en: "Ski area",
317
- fr: "Espace ski",
318
- it: "Area sci"
319
- },
320
- SKI_ICON: {
321
- de: "Ski Bereich",
322
- en: "Ski area",
323
- fr: "Espace ski",
324
- it: "Area sci"
325
- },
326
- STAFF_AREA: {
327
- de: "Zugpersonal",
328
- en: "Train crew",
329
- fr: "Personnel de train",
330
- it: "Personale di treno"
331
- },
332
- STAIR_AREA: {
333
- de: "Treppenbereich",
334
- en: "Stair area",
335
- fr: "Escalier",
336
- it: "Area scale"
337
- },
338
- TOILET_AREA: {
339
- de: "Toilettenbereich",
340
- en: "Toilet area",
341
- fr: "Toilettes",
342
- it: "Area toilette"
343
- },
344
- TOILET_ICON: {
345
- de: "Toilettenbereich",
346
- en: "Toilet area",
347
- fr: "Toilettes",
348
- it: "Area toilette"
349
- },
350
- TOILET_WHEELCHAIR_AREA: {
351
- de: "Rollstuhl Toilettenbereich",
352
- en: "Wheelchair/toilet area",
353
- fr: "Toilettes pour fauteuils roulants",
354
- it: "Area toilette accessibile in sedia a rotelle"
355
- },
356
- TOILET_WHEELCHAIR_ICON: {
357
- de: "Rollstuhl Toilettenbereich",
358
- en: "Wheelchair/toilet area",
359
- fr: "Toilettes pour fauteuils roulants",
360
- it: "Area toilette accessibile in sedia a rotelle"
361
- },
362
- WARDROBE_AREA: {
363
- de: "Garderobenbereich",
364
- en: "Coat rack",
365
- fr: "Espace vestiaire",
366
- it: "Area guardaroba"
367
- },
368
- WHEELCHAIR: {
369
- de: "Rollstuhlzone",
370
- en: "Wheelchair zone",
371
- fr: "Espace pour fauteuils roulants",
372
- it: "Zona per sedie a rotelle"
373
- },
374
- WHEELCHAIR_AND_SEAT: {
375
- de: "Rollstuhlzone",
376
- en: "Wheelchair zone",
377
- fr: "Espace pour fauteuils roulants",
378
- it: "Zona per sedie a rotelle"
379
- },
380
- WHEELCHAIR_ICON: {
381
- de: "Rollstuhlzone",
382
- en: "Wheelchair zone",
383
- fr: "Espace pour fauteuils roulants",
384
- it: "Zona per sedie a rotelle"
385
- },
386
- WHEELCHAIR_NO_SEAT: {
387
- de: "Rollstuhlzone",
388
- en: "Wheelchair zone",
389
- fr: "Espace pour fauteuils roulants",
390
- it: "Zona per sedie a rotelle"
391
- },
392
- WIFI: {
393
- de: "Gratis-Internet mit der App SBB FreeSurf",
394
- en: "Free internet with the SBB FreeSurf app",
395
- fr: "Internet gratuit avec l’appli FreeSurf CFF",
396
- it: "Internet gratis con l’app FreeSurf FFS"
397
- },
398
- //ADDITIONAL INFO FOR SEATS (PLACE PROPERTIES)
399
- // @see https://osdm.io/spec/catalog-of-code-lists/#PlaceProperty
400
- PLACE_PROPERTIES: {
401
- AISLE_SEAT: {
402
- de: "Gang",
403
- en: "aisle",
404
- fr: "Couloir",
405
- it: "corridoio"
406
- },
407
- "AIR-CONDITIONED": {
408
- de: "Klimatisierter Bereich",
409
- en: "air-conditioned area",
410
- fr: "Zone climatisée",
411
- it: "area climatizzata"
412
- },
413
- ANY_SEAT: {
414
- de: "optionale Auswahl",
415
- en: "optional selection",
416
- fr: "sélection facultative",
417
- it: "selezione opzionale"
418
- },
419
- BISTRO: { de: "Bistro", en: "bistro", fr: "Bistro", it: "bistrò" },
420
- BICYCLE: { de: "Velo", en: "bicycle", fr: "Vélo", it: "biciclette" },
421
- BICYCLE_LOW: {
422
- de: "Velohaken tief",
423
- en: "bicycle hook low",
424
- fr: "Crochets pour vélos abaissés",
425
- it: "gancio per biciclette abbassare"
426
- },
427
- BICYCLE_MIDDLE: {
428
- de: "Velohaken mittel",
429
- en: "bicycle hook medium",
430
- fr: "Crochets pour vélos moyens",
431
- it: "gancio per biciclette medio"
432
- },
433
- BICYCLE_HIGH: {
434
- de: "Velohaken hoch",
435
- en: "bicycle hook high",
436
- fr: "Crochets pour vélos surélevés",
437
- it: "gancio per biciclette alto"
438
- },
439
- BUSINESS: { de: "Business", en: "business", fr: "Business", it: "business" },
440
- BUSINESS_COMFORT: {
441
- de: "Business comfort",
442
- en: "business Comfort",
443
- fr: "Business Confort",
444
- it: "business Comfort"
445
- },
446
- CABIN8: { de: "Gruppen", en: "groups", fr: "Groupes", it: "gruppi" },
447
- CAR_LARGE: {
448
- de: "Fahrzeug mit einer Länge zwischen 4,42m und 5,3m und einer Dachbreite zwischen 1,36m und 1,55m",
449
- en: "Vehicle with a length between 4.42m and 5.3m and a roof width between 1.36m and 1.55m",
450
- fr: "Véhicule d’une longueur comprise entre 4,42m et 5,3m et d’une largeur de toit comprise entre 1,36m et 1,55m",
451
- it: "Veicoli con una lunghezza compresa tra 4,42m e 5,3m e una larghezza del tetto compresa tra 1,36m e 1,55m"
452
- },
453
- CAR_SMALL: {
454
- de: "Fahrzeug mit einer Länge zwischen 4,42m und 5,3m und einerDachbreite bis 1,35m",
455
- en: "Vehicle with a length between 4.42m and 5.3m and a roof width of up to 1.35m",
456
- fr: "Véhicule d’une longueur comprise entre 4,42m et 5,3m et d’une largeur de toit inférieure ou égale à 1,35m",
457
- it: "Veicolo con una lunghezza compresa tra 4,42m e 5,3m e unalarghezza del tetto fino a 1,35m"
458
- },
459
- CARRE: { de: "Carré", en: "Carré", fr: "Carré", it: "Carré" },
460
- CHILDREN_AREA: {
461
- de: "Kinderabteil",
462
- en: "children’s compartment",
463
- fr: "Compartiment enfants",
464
- it: "compartimento per bambini"
465
- },
466
- CLUB: { de: "Club", en: "Club", fr: "Club", it: "Club" },
467
- CLUB_2: { de: "Club Duo", en: "Club Duo", fr: "Club Duo", it: "Club Duo" },
468
- CLUB_4: { de: "Club 4", en: "Club 4", fr: "Club 4", it: "Club 4" },
469
- COMPARTMENT: {
470
- de: "Seitengang",
471
- en: "side aisle",
472
- fr: "Couloir latéral",
473
- it: "corridoio laterale"
474
- },
475
- COMPLETE: {
476
- de: "Privatabteil",
477
- en: "private compartment",
478
- fr: "Compartiment privé",
479
- it: "compartimento privato"
480
- },
481
- CONFERENCE: {
482
- de: "Konferenzraum",
483
- en: "conference room",
484
- fr: "Compartiment conférence",
485
- it: "compartimento Conferenza"
486
- },
487
- CONNECTING_DOOR: {
488
- de: "Abteil mit Verbindungstür",
489
- en: "compartment with connecting door",
490
- fr: "Compartiment avec porte communicante",
491
- it: "compartimento con porta di collegamento"
492
- },
493
- COUCHETTE_2: { de: "2er", en: "2 berths", fr: "2 places", it: "2 posti" },
494
- COUCHETTE_4: { de: "4er", en: "4 berths", fr: "4 places", it: "4 posti" },
495
- COUCHETTE_5: { de: "5er", en: "5 berths", fr: "5 places", it: "5 posti" },
496
- COUCHETTE_6: { de: "6er", en: "6 berths", fr: "6 places", it: "6 posti" },
497
- COUCHETTE_COMFORT_4: {
498
- de: "4er comfort",
499
- en: "4 berths comfort",
500
- fr: "4 places confort",
501
- it: "4 posti comfort"
502
- },
503
- COUCHETTE_COMFORT_5: {
504
- de: "5er comfort",
505
- en: "5 berths comfort",
506
- fr: "5 places confort",
507
- it: "5 posti comfort"
508
- },
509
- COUCHETTE_COMFORT_6: {
510
- de: "6er",
511
- en: "6 berths comfort",
512
- fr: "6 places confort",
513
- it: "6 posti comfort"
514
- },
515
- COUCHETTE_PRM_2: { de: "2er PRM", en: "2 berths PRM", fr: "2 places PMR", it: "2 posti PRM" },
516
- COUCHETTE_PRM_3: { de: "3er PRM", en: "3 berths PRM", fr: "3 places PMR", it: "3 posti PRM" },
517
- COUCHETTE_PRM_4: { de: "4er PRM", en: "4 berths PRM", fr: "4 places PMR", it: "4 posti PRM" },
518
- DOUBLE: { de: "Double", en: "Double", fr: "Double", it: "Double" },
519
- DOUBLE_WC: {
520
- de: "Double mit WC",
521
- en: "Double with WC",
522
- fr: "Double avec WC",
523
- it: "Double con WC"
524
- },
525
- DOUBLE_SWC: {
526
- de: "Double Deluxe",
527
- en: "Double Deluxe",
528
- fr: "Double Deluxe",
529
- it: "Double Deluxe"
530
- },
531
- DOUBLE_S: {
532
- de: "Double mit Dusche",
533
- en: "Double with shower",
534
- fr: "Double avec douche",
535
- it: "Double con Doccia"
536
- },
537
- EASY_ACCESS: { de: "PRM", en: "PRM", fr: "PRM", it: "PRM" },
538
- FACE_2_FACE: {
539
- de: "Duo vis à vis",
540
- en: "Duo vis à vis",
541
- fr: "Duo vis à vis",
542
- it: "Duo vis à vis"
543
- },
544
- EXCELLENCE: { de: "Excellence", en: "excellence", fr: "excellence", it: "excellence" },
545
- FAMILY: {
546
- de: "Familienabteil",
547
- en: "family zone",
548
- fr: "compartement famille",
549
- it: "compartimente familia"
550
- },
551
- FRONT_VIEW: { de: "VIP", en: "VIP", fr: "VIP", it: "VIP" },
552
- HISTORIC_COACH: { de: "Historic", en: "historic", fr: "historique", it: "historic" },
553
- INCLUDING_MEAL: {
554
- de: "Mahlzeit inbegriffen",
555
- en: "meal included",
556
- fr: "repas inclus",
557
- it: "pasto incluso"
558
- },
559
- INCLUDING_DRINK: {
560
- de: "Willkommensgetränk inbegriffen",
561
- en: "welcome drink included",
562
- fr: "boisson de bienvenue incluse",
563
- it: "bevanda di benvenuto incluso"
564
- },
565
- KIOSQUE: { de: "Kiosk", en: "kiosk", fr: "kiosque", it: "chiosco" },
566
- LADIES: {
567
- de: "Damenabteil",
568
- en: "women Compartment",
569
- fr: "compartiment femmes",
570
- it: "compartimento donne"
571
- },
572
- LOWER_BED: { de: "unten", en: "at the bottom", fr: "en bas", it: "in basso" },
573
- LOWER_DECK: { de: "unten", en: "at the bottom", fr: "en bas", it: "in basso" },
574
- MEN: {
575
- de: "Herrenabteil",
576
- en: "gents compartment",
577
- fr: "compartiment hommes",
578
- it: "compartimento Uomini"
579
- },
580
- MIDDLE_BED: { de: "Mitte", en: "middle", fr: "milieu", it: "centro" },
581
- MIDDLE_DECK: { de: "Mitte", en: "middle", fr: "milieu", it: "centro" },
582
- MIDDLE_SEAT: { de: "Mitte", en: "middle", fr: "milieu", it: "centro" },
583
- MINI_SUITE: {
584
- de: "Mini Cabin",
585
- en: "mini Cabin",
586
- fr: "Mini Cabin",
587
- it: "Mini Cabin"
588
- },
589
- MIXED: {
590
- de: "gemischtes Abteil",
591
- en: "mixed compartment",
592
- fr: "compartiment mixte",
593
- it: "compartimento misto"
594
- },
595
- MOTOR_CYCLE: { de: "Motorrad", en: "motorcycle", fr: "moto", it: "motocicletta" },
596
- MOTOR_CYCLE_SC: {
597
- de: "Motorrad mit Seitenwagen",
598
- en: "motorcycle with sidecar",
599
- fr: "moto avec side-car",
600
- it: "motocicletta con sidecar"
601
- },
602
- NEAR_ANIMALS: {
603
- de: "nah am Haustier",
604
- en: "close to pet",
605
- fr: "proche de l’animal de compagnie",
606
- it: "vicino all’animale domestico"
607
- },
608
- NEAR_ASSISTANT_DOG_AREA: {
609
- de: "nah am Assistenzhund",
610
- en: "close to assistance dog",
611
- fr: "près du chien d’assistance",
612
- it: "vicino al cane da assistenza"
613
- },
614
- NEAR_DINING: {
615
- de: "nah am Speisewagen",
616
- en: "close to dining car",
617
- fr: "à proximité de la voiture-restaurant",
618
- it: "nelle vicinanze della carrozza ristorantev"
619
- },
620
- NEAR_PLAY_AREA: {
621
- de: "nah am Spielplatz",
622
- en: "close to playground",
623
- fr: "à proximité de l’aire de jeux",
624
- it: "vicino al parco giochi"
625
- },
626
- NEAR_BICYCLE_AREA: {
627
- de: "nah am Veloplatz",
628
- en: "close to bike space",
629
- fr: "à proximité de la place pour vélo",
630
- it: "vicino al posto bici"
631
- },
632
- NEAR_WHEELCHAIR: {
633
- de: "nah am Rollstuhlplatz",
634
- en: "close to wheelchair space",
635
- fr: "à proximité de l’emplacement pour fauteuils roulants",
636
- it: "vicino al posto per sedie a rotelle"
637
- },
638
- OPEN_SPACE: {
639
- de: "Mittelgang",
640
- en: "middle aisle",
641
- fr: "couloir central",
642
- it: "corridoio centrale"
643
- },
644
- PANORAMA: {
645
- de: "Panoramawagen",
646
- en: "panorama coach",
647
- fr: "voiture panoramique",
648
- it: "carrozza panoramica"
649
- },
650
- PHONE: { de: "Mobile", en: "mobile", fr: "mobile", it: "mobile" },
651
- POWER: {
652
- de: "Mit Steckdose",
653
- en: "with power socket",
654
- fr: "avec prise",
655
- it: "con presa elettrica"
656
- },
657
- PRAM: {
658
- de: "Kinderwagen",
659
- en: "close to space for strollers",
660
- fr: "poussettes",
661
- it: "passeggino"
662
- },
663
- PRAM_WITH_SEAT: {
664
- de: "nah am Platz für Kinderwagen",
665
- en: "Seat with space for a pram",
666
- fr: "près de l’espace pour les poussettes",
667
- it: "vicino al posto per passeggini"
668
- },
669
- PREMIUM: { de: "Premium", en: "premium", fr: "premium", it: "premium" },
670
- RESTAURANT: { de: "Restaurant", en: "restaurant", fr: "restaurant", it: "ristorante" },
671
- RESTRICTED_VIEW: {
672
- de: "Fenster mit eingeschränkter Sicht",
673
- en: "windows with restricted visibility",
674
- fr: "fenêtres avec visibilité réduite",
675
- it: "finestre con visibilità limitata"
676
- },
677
- SALON: { de: "Salon", en: "Salon", fr: "salon", it: "Salon" },
678
- SILENCE: {
679
- de: "Ruheabteil",
680
- en: "quiet compartment",
681
- fr: "compartiment silence",
682
- it: "compartimento del silenzio"
683
- },
684
- SINGLE: { de: "Single", en: "Single", fr: "Single", it: "Single" },
685
- SINGLE_WC: {
686
- de: "Single mit WC",
687
- en: "Single with WC",
688
- fr: "Single avec WC",
689
- it: "Single con WC"
690
- },
691
- SINGLE_SWC: {
692
- de: "Single Deluxe",
693
- en: "Single Deluxe",
694
- fr: "Single Deluxe",
695
- it: "Single Deluxe"
696
- },
697
- SIDE_BY_SIDE: {
698
- de: "Duo côte à côte",
699
- en: "Duo côte à côte",
700
- fr: "Duo côte à côte",
701
- it: "Duo côte à côte"
702
- },
703
- SLEEPERETTE: { de: "Sleeperette", en: "Sleeperette", fr: "Sleeperette", it: "Sleeperette" },
704
- SOLO: {
705
- de: "freier Nebensitz",
706
- en: "free side seat",
707
- fr: "siège voisin libre",
708
- it: "sedile secondario libero"
709
- },
710
- SOLO_COM: {
711
- de: "freier Nebensitz",
712
- en: "free side seat",
713
- fr: "siège voisin libre",
714
- it: "sedile secondario libero"
715
- },
716
- SLEEPER: {
717
- de: "Single (klein)",
718
- en: "Single (small)",
719
- fr: "Single (petit)",
720
- it: "Single (piccolo)"
721
- },
722
- TANDEM: { de: "Tandem", en: "tandem", fr: "tandem", it: "tandem" },
723
- TABLE: { de: "Tisch", en: "table", fr: "table", it: "tavolo" },
724
- TOURIST_SLEEPER_2: { de: "Duo", en: "Duo", fr: "Duo", it: "Duo" },
725
- TOURIST_SLEEPER_3: { de: "3er", en: "Triple", fr: "Triple", it: "Triple" },
726
- TOURIST_SLEEPER_3_WC: {
727
- de: "3er mit WC",
728
- en: "Triple with WC",
729
- fr: "3 places avec WC",
730
- it: "3 posti con WC"
731
- },
732
- TOURIST_SLEEPER_3_SWC: {
733
- de: "3er Deluxe",
734
- en: "Triple Deluxe",
735
- fr: "3 places Deluxe",
736
- it: "3 posti Deluxe"
737
- },
738
- TOURIST_SLEEPER_4: { de: "4er", en: "4-berth", fr: "4 places", it: "4 posti" },
739
- TRAVEL_DIRECTION_TRANSVERSELY: {
740
- de: "quer zur Fahrtrichtung",
741
- en: "transversely to travel direction",
742
- fr: "Transversalement à la direction du voyage",
743
- it: "trasversalmente alla direzione di viaggio"
744
- },
745
- TRAVEL_DIRECTION_IN_DIRECTION: {
746
- de: "in Fahrtrichtung",
747
- en: "in travel direction",
748
- fr: "Dans le sens de la marche",
749
- it: "nella direzione di marcia"
750
- },
751
- TRAVEL_DIRECTION_IN_OPPOSITE_DIRECTION: {
752
- de: "gegen die Fahrtrichtung",
753
- en: "in opposite direction",
754
- fr: "Dans le sens inverse de la marche",
755
- it: "nella direzione opposta alla marcia"
756
- },
757
- UPPER_BED: { de: "oben", en: "at the top", fr: "en haut", it: "in alto" },
758
- UPPER_DECK: { de: "oben", en: "at the top", fr: "en haut", it: "in alto" },
759
- VIDEO: {
760
- de: "mit Unterhaltungssytem",
761
- en: "with entertainment system",
762
- fr: "avec système de divertissement",
763
- it: "con sistema di intrattenimento"
764
- },
765
- WHEELCHAIR: {
766
- de: "Rollstuhl",
767
- en: "wheelchair",
768
- fr: "fauteuil roulant",
769
- it: "sedia a rotelle"
770
- },
771
- WHEELCHAIR_AND_SEAT: {
772
- de: "Rollstuhl mit zusätzlichem Sitzplatz",
773
- en: "wheelchair with additional seat",
774
- fr: "fauteuil roulant avec place assise supplémentaire",
775
- it: "sedia a rotelle con posto a sedere aggiuntivo"
776
- },
777
- WHEELCHAIR_NO_SEAT: {
778
- de: "Rollstuhl ohne zusätzlichen Sitzplatz",
779
- en: "Wheelchair space without additional seat",
780
- fr: "fauteuil roulant avec place assise supplémentaire",
781
- it: "sedia a rotelle con posto a sedere aggiuntivo"
782
- },
783
- WIFI: { de: "Wlan", en: "Wi-Fi", fr: "Wi-Fi", it: "Wlan" },
784
- WINDOW_SEAT: {
785
- de: "Fenster",
786
- en: "window",
787
- fr: "fenêtre",
788
- it: "finestre"
789
- },
790
- WITHOUT_TRAY_TABLE: {
791
- de: "ohne Tisch",
792
- en: "without table",
793
- fr: "sans table",
794
- it: "senza tavolo"
795
- },
796
- WITH_ANIMALS: {
797
- de: "Tiere erlaubt",
798
- en: "animals allowed",
799
- fr: "animaux admis",
800
- it: "animali ammessi"
801
- },
802
- WITH_SMALL_CHILDREN: {
803
- de: "Kleinkindabteil",
804
- en: "infant compartment",
805
- fr: "compartiment petit enfants",
806
- it: "compartimento per bambini piccoli"
807
- },
808
- WITHOUT_ANIMALS: {
809
- de: "Tiere nicht erlaubt",
810
- en: "pets not allowed",
811
- fr: "animaux non autorisés",
812
- it: "animali non ammessi"
813
- }
814
- },
815
- //PLACE CONTROL ARIA LABEL
816
- PLACE_CONTROL_SEAT_FREE: {
817
- de: "Sitzplatz _param0_ ist frei",
818
- en: "Seat _param0_ is available",
819
- fr: "Place _param0_ est libre",
820
- it: "Posto a sedere _param0_ è libero"
821
- },
822
- PLACE_CONTROL_SEAT_SELECTED: {
823
- de: "Sitzplatz _param0_ ist ausgewählt",
824
- en: "Seat _param0_ has been selected",
825
- fr: "Place _param0_ est sélectionnée",
826
- it: "Posto a sedere _param0_ è selezionato"
827
- },
828
- PLACE_CONTROL_BICYCLE_FREE: {
829
- de: "Veloplatz _param0_ ist frei",
830
- en: "Bike space _param0_ is available",
831
- fr: "Place pour vélo _param0_ est libre",
832
- it: "Posto bici _param0_ è libero"
833
- },
834
- PLACE_CONTROL_BICYCLE_SELECTED: {
835
- de: "Veloplatz _param0_ ist ausgewählt",
836
- en: "Bike space _param0_ has been selected",
837
- fr: "Place pour vélo _param0_ est sélectionnée",
838
- it: "Posto bici _param0_ è selezionato"
839
- },
840
- PLACE_CONTROL_SEAT_RESTRICTED: {
841
- de: "Sitzplatz ist nicht buchbar",
842
- en: "Seat cannot be reserved",
843
- fr: "Place ne peut pas être réservée",
844
- it: "Posto a sedere non è prenotabile"
845
- },
846
- PLACE_CONTROL_BICYCLE_RESTRICTED: {
847
- de: "Veloplatz ist nicht buchbar",
848
- en: "Bike space cannot be reserved",
849
- fr: "Place pour vélo indisponible",
850
- it: "Posto bici non è prenotabile"
851
- },
852
- PLACE_CONTROL_SEAT_ALLOCATED: {
853
- de: "Sitzplatz _param0_ ist besetzt",
854
- en: "Seat _param0_ is occupied",
855
- fr: "Place _param0_ est occupée",
856
- it: "Posto a sedere _param0_ è occupato"
857
- },
858
- PLACE_CONTROL_BICYCLE_ALLOCATED: {
859
- de: "Veloplatz _param0_ ist besetzt",
860
- en: "Bike space _param0_ is occupied",
861
- fr: "Place pour vélo _param0_ est occupée",
862
- it: "Posto bici _param0_ è occupato"
863
- },
864
- PLACE_PROPERTY: {
865
- de: "Platzeigenschaften",
866
- en: "Seat features",
867
- fr: "Caractéristiques de la place",
868
- it: "Caratteristiche del posto"
869
- },
870
- COACH_AVAILABLE_SERVICES: {
871
- de: "Verfügbare Services",
872
- en: "Available services",
873
- fr: "Services disponibles",
874
- it: "Servizi disponibili"
875
- },
876
- // LEAVE EXAMPLE AT LAST POSITION
877
- EXAMPLE_WITH_PARAMS_DO_NOT_USE: {
878
- de: "Test mit Parametern: _param0_ und _param1_",
879
- en: "Test with parameters: _param0_ and _param1_",
880
- fr: "Test avec paramètres: _param0_ et _param1_",
881
- it: "Test con parametri: _param0_ e _param1_"
882
- }
1
+ //#region src/elements-experimental/seat-reservation/common/translations/i18n.ts
2
+ /**
3
+ * Returns the translation for a seat reservation string based on a key and language.
4
+ * Supports nested keys (e.g. "PLACE_PROPERTIES.AISLE_SEAT") and placeholder replacement.
5
+ *
6
+ * @param key The translation key (can be nested, e.g. "PLACE_PROPERTIES.AISLE_SEAT").
7
+ * @param language The desired language (e.g. "de", "en", "fr", "it").
8
+ * @param args Optional array of parameters to replace placeholders like _param0_, _param1_ in the translation string.
9
+ * @returns The translated string or an empty string if no translation is found.
10
+ *
11
+ * @example
12
+ * getI18nSeatReservation('COACH_TABLE_CAPTION', 'de', ['12']); // "Wagen 12 selektiert"
13
+ * getI18nSeatReservation('PLACE_PROPERTIES.AISLE_SEAT', 'en'); // "Aisle seat"
14
+ */
15
+ var i18nObjects = {
16
+ SINGLE_DECK: {
17
+ de: "Einzeldeck",
18
+ en: "Single deck",
19
+ fr: "Étage unique",
20
+ it: "Piano singolo"
21
+ },
22
+ LOWER_DECK: {
23
+ de: "Unterdeck",
24
+ en: "Lower deck",
25
+ fr: "Salle basse",
26
+ it: "Sala bassa"
27
+ },
28
+ MIDDLE_DECK: {
29
+ de: "Mitteldeck",
30
+ en: "Middle deck",
31
+ fr: "Niveau du milieu",
32
+ it: "Livello centrale"
33
+ },
34
+ UPPER_DECK: {
35
+ de: "Oberdeck",
36
+ en: "Upper deck",
37
+ fr: "Salle haute",
38
+ it: "Sala alta"
39
+ },
40
+ COACH_TABLE_CAPTION: {
41
+ de: "Wagen _param0_ selektiert",
42
+ en: "Coach _param0_ selected",
43
+ fr: "Voiture _param0_ sélectionnée",
44
+ it: "Carrozza _param0_ selezionata"
45
+ },
46
+ COACH_BLOCKED_TABLE_CAPTION: {
47
+ de: "Wagen _param0_ ist nicht betretbar. Navigieren Sie bitte zum nächsten verfügbaren Wagen",
48
+ en: "No access to coach _param0_. Please navigate to the next available coach",
49
+ fr: "La voiture _param0_ n’est pas accessible. Veuillez continuer jusqu’à la prochaine voiture disponible",
50
+ it: "La carrozza _param0_ non è accessibile. Naviga verso la prossima carrozza disponibile"
51
+ },
52
+ SEAT_RESERVATION_BEGIN: {
53
+ de: "Beginn der Grafische Sitzplatzreservierung",
54
+ en: "Start Graphic Seat Reservation",
55
+ fr: "Commencer la réservation graphique de places",
56
+ it: "Avvio della prenotazione grafica dei posti"
57
+ },
58
+ SEAT_RESERVATION_END: {
59
+ de: "Verlassen der Grafische Sitzplatzreservierung",
60
+ en: "Exit Graphic Seat Reservation",
61
+ fr: "Terminer la réservation graphique de places",
62
+ it: "Uscita dalla prenotazione grafica dei posti"
63
+ },
64
+ COACH_LOCOMOTIVE: {
65
+ de: "Lokomotive",
66
+ en: "Locomotive",
67
+ fr: "Locomotive",
68
+ it: "Locomotiva"
69
+ },
70
+ SEAT_RESERVATION_TRAVEL_DIRECTION: {
71
+ de: "Fahrtrichtung",
72
+ en: "Travel direction",
73
+ fr: "Direction du voyage",
74
+ it: "Direzione di viaggio"
75
+ },
76
+ NAVIGATE_TO_COACH: {
77
+ de: "Navigiere zu Wagen _param0_",
78
+ en: "Navigate to coach _param0_",
79
+ fr: "Aller à la voiture _param0_",
80
+ it: "Naviga verso la carrozza _param0_"
81
+ },
82
+ NAVIGATE_TO_COACH_SERVICE_CLASS_SUB: {
83
+ de: " mit _param0_ Abteil",
84
+ en: " with _param0_ compartment",
85
+ fr: " avec compartiment _param0_",
86
+ it: " con compartimento di _param0_"
87
+ },
88
+ NAVIGATE_COACH_BLOCKED: {
89
+ de: "Zugabteil _param0_ ist nicht betretbar",
90
+ en: "No access to train compartment _param0_",
91
+ fr: "Le compartiment _param0_ n’est pas accessible",
92
+ it: "Il compartimento del treno _param0_ non è accessibile"
93
+ },
94
+ SEAT_RESERVATION_NAVIGATION: {
95
+ de: "Sitzplatzreservierungsnavigation",
96
+ en: "Seat reservation navigation",
97
+ fr: "Navigation pour la réservation de places",
98
+ it: "Navigazione per la prenotazione dei posti"
99
+ },
100
+ COACH_AVAILABLE_NUMBER_OF_PLACES: {
101
+ de: "_param0_ verfügbare Sitzplätze. _param1_ verfügbare Veloplätze.",
102
+ en: "_param0_ seats available. _param1_ available bicycle spaces.",
103
+ fr: "_param0_ places assises disponibles. _param1_ places pour vélos disponibles.",
104
+ it: "_param0_ posti a sedere disponibili. _param1_ posti per biciclette disponibili."
105
+ },
106
+ SERVICE_CLASS_FIRST: {
107
+ de: "erste Klasse",
108
+ en: "First class",
109
+ fr: "première classe",
110
+ it: "prima classe"
111
+ },
112
+ SERVICE_CLASS_SECOND: {
113
+ de: "zweite Klasse",
114
+ en: "Second class",
115
+ fr: "deuxième classe",
116
+ it: "seconda classe"
117
+ },
118
+ BICYCLE: {
119
+ de: "Velobereich",
120
+ en: "Bike area",
121
+ fr: "Espace vélo",
122
+ it: "Area bici"
123
+ },
124
+ BICYCLE_HIGH: {
125
+ de: "Velobereich",
126
+ en: "Bike area",
127
+ fr: "Espace vélo",
128
+ it: "Area bici"
129
+ },
130
+ BICYCLE_HIGH_ICON: {
131
+ de: "Velobereich",
132
+ en: "Bike area",
133
+ fr: "Espace vélo",
134
+ it: "Area bici"
135
+ },
136
+ BICYCLE_ICON: {
137
+ de: "Velobereich",
138
+ en: "Bike area",
139
+ fr: "Espace vélo",
140
+ it: "Area bici"
141
+ },
142
+ BICYCLE_LOW: {
143
+ de: "Velobereich",
144
+ en: "Bike area",
145
+ fr: "Espace vélo",
146
+ it: "Area bici"
147
+ },
148
+ BICYCLE_LOW_ICON: {
149
+ de: "Velobereich",
150
+ en: "Bike area",
151
+ fr: "Espace vélo",
152
+ it: "Area bici"
153
+ },
154
+ BICYCLE_MIDDLE: {
155
+ de: "Velobereich",
156
+ en: "Bike area",
157
+ fr: "Espace vélo",
158
+ it: "Area bici"
159
+ },
160
+ BICYCLE_MIDDLE_ICON: {
161
+ de: "Velobereich",
162
+ en: "Bike area",
163
+ fr: "Espace vélo",
164
+ it: "Area bici"
165
+ },
166
+ BISTRO: {
167
+ de: "Bistro",
168
+ en: "Bistro",
169
+ fr: "Bistro",
170
+ it: "Bistro"
171
+ },
172
+ BISTRO_ICON: {
173
+ de: "Bistro",
174
+ en: "Bistro",
175
+ fr: "Bistro",
176
+ it: "Bistro"
177
+ },
178
+ BUSINESS: {
179
+ de: "Businesszone",
180
+ en: "Business zone",
181
+ fr: "Espace affaires",
182
+ it: "Zona business"
183
+ },
184
+ BUSINESS_COMFORT: {
185
+ de: "Businesszone",
186
+ en: "Business zone",
187
+ fr: "Espace affaires",
188
+ it: "Zona business"
189
+ },
190
+ BUSINESS_ICON: {
191
+ de: "Businesszone",
192
+ en: "Business zone",
193
+ fr: "Espace affaires",
194
+ it: "Zona business"
195
+ },
196
+ COACH_PASSAGE: {
197
+ de: "Wagenübergang",
198
+ en: "Inter-coach gangway",
199
+ fr: "Intercirculation",
200
+ it: "Passaggio intercomunicante"
201
+ },
202
+ EASY_ACCESS: {
203
+ de: "Zone für Reisende mit eingeschränkter Mobilität",
204
+ en: "Zone for travellers with reduced mobility",
205
+ fr: "Zone pour voyageurs à mobilité réduite",
206
+ it: "Zona viaggiatori a mobilità ridotta"
207
+ },
208
+ EASY_ACCESS_AREA: {
209
+ de: "Zone für Reisende mit eingeschränkter Mobilität",
210
+ en: "Zone for travellers with reduced mobility",
211
+ fr: "Zone pour voyageurs à mobilité réduite",
212
+ it: "Zona viaggiatori a mobilità ridotta"
213
+ },
214
+ EASY_ACCESS_ICON: {
215
+ de: "Zone für Reisende mit eingeschränkter Mobilität",
216
+ en: "Zone for travellers with reduced mobility",
217
+ fr: "Zone pour voyageurs à mobilité réduite",
218
+ it: "Zona viaggiatori a mobilità ridotta"
219
+ },
220
+ ENTRY_EXIT: {
221
+ de: "Ausgang / Eingang",
222
+ en: "Exit / entrance",
223
+ fr: "Sortie / Entrée",
224
+ it: "Uscita / Ingresso"
225
+ },
226
+ FAMILY: {
227
+ de: "Familienwagen",
228
+ en: "Family coach",
229
+ fr: "Voiture-familles",
230
+ it: "Carrozza famiglia"
231
+ },
232
+ LUGGAGE_AREA: {
233
+ de: "Gepäckzone",
234
+ en: "Luggage zone",
235
+ fr: "Espace bagages",
236
+ it: "Zona bagagli"
237
+ },
238
+ LUGGAGE_ICON: {
239
+ de: "Gepäckzone",
240
+ en: "Luggage zone",
241
+ fr: "Espace bagages",
242
+ it: "Zona bagagli"
243
+ },
244
+ MULTI_FUNCTION_AREA: {
245
+ de: "Multifunktionsbereich",
246
+ en: "Multifunction area",
247
+ fr: "Zone multifonctionnelle",
248
+ it: "Zona multifunzionale"
249
+ },
250
+ MULTI_FUNCTION_ICON: {
251
+ de: "Multifunktionsbereich",
252
+ en: "Multifunction area",
253
+ fr: "Zone multifonctionnelle",
254
+ it: "Zona multifunzionale"
255
+ },
256
+ PLAYGROUND_AREA: {
257
+ de: "Familienwagen",
258
+ en: "Family coach",
259
+ fr: "Voiture-familles",
260
+ it: "Carrozza famiglia"
261
+ },
262
+ PLAYGROUND_ICON: {
263
+ de: "Familienwagen",
264
+ en: "Family coach",
265
+ fr: "Voiture-familles",
266
+ it: "Carrozza famiglia"
267
+ },
268
+ PRAM: {
269
+ de: "Kinderwagenbereich",
270
+ en: "Pram/pushchair area",
271
+ fr: "Espace poussette",
272
+ it: "Area per passeggini"
273
+ },
274
+ PRAM_AREA: {
275
+ de: "Kinderwagenbereich",
276
+ en: "Pram/pushchair area",
277
+ fr: "Espace poussette",
278
+ it: "Area per passeggini"
279
+ },
280
+ PRAM_ICON: {
281
+ de: "Kinderwagenbereich",
282
+ en: "Pram/pushchair area",
283
+ fr: "Espace poussette",
284
+ it: "Area per passeggini"
285
+ },
286
+ RESTAURANT: {
287
+ de: "Restaurant",
288
+ en: "Restaurant",
289
+ fr: "Restaurant",
290
+ it: "Ristorante"
291
+ },
292
+ RESTAURANT_AREA: {
293
+ de: "Restaurant",
294
+ en: "Restaurant",
295
+ fr: "Restaurant",
296
+ it: "Ristorante"
297
+ },
298
+ RESTAURANT_ICON: {
299
+ de: "Restaurant",
300
+ en: "Restaurant",
301
+ fr: "Restaurant",
302
+ it: "Ristorante"
303
+ },
304
+ SILENCE: {
305
+ de: "Ruhezone",
306
+ en: "Quiet zone",
307
+ fr: "Espace silence",
308
+ it: "Zona del silenzio"
309
+ },
310
+ SILENCE_AREA_ICON: {
311
+ de: "Ruhezone",
312
+ en: "Quiet zone",
313
+ fr: "Espace silence",
314
+ it: "Zona del silenzio"
315
+ },
316
+ SILENCE_ICON: {
317
+ de: "Ruhezone",
318
+ en: "Quiet zone",
319
+ fr: "Espace silence",
320
+ it: "Zona del silenzio"
321
+ },
322
+ SKI_AREA: {
323
+ de: "Ski Bereich",
324
+ en: "Ski area",
325
+ fr: "Espace ski",
326
+ it: "Area sci"
327
+ },
328
+ SKI_ICON: {
329
+ de: "Ski Bereich",
330
+ en: "Ski area",
331
+ fr: "Espace ski",
332
+ it: "Area sci"
333
+ },
334
+ STAFF_AREA: {
335
+ de: "Zugpersonal",
336
+ en: "Train crew",
337
+ fr: "Personnel de train",
338
+ it: "Personale di treno"
339
+ },
340
+ STAIR_AREA: {
341
+ de: "Treppenbereich",
342
+ en: "Stair area",
343
+ fr: "Escalier",
344
+ it: "Area scale"
345
+ },
346
+ TOILET_AREA: {
347
+ de: "Toilettenbereich",
348
+ en: "Toilet area",
349
+ fr: "Toilettes",
350
+ it: "Area toilette"
351
+ },
352
+ TOILET_ICON: {
353
+ de: "Toilettenbereich",
354
+ en: "Toilet area",
355
+ fr: "Toilettes",
356
+ it: "Area toilette"
357
+ },
358
+ TOILET_WHEELCHAIR_AREA: {
359
+ de: "Rollstuhl Toilettenbereich",
360
+ en: "Wheelchair/toilet area",
361
+ fr: "Toilettes pour fauteuils roulants",
362
+ it: "Area toilette accessibile in sedia a rotelle"
363
+ },
364
+ TOILET_WHEELCHAIR_ICON: {
365
+ de: "Rollstuhl Toilettenbereich",
366
+ en: "Wheelchair/toilet area",
367
+ fr: "Toilettes pour fauteuils roulants",
368
+ it: "Area toilette accessibile in sedia a rotelle"
369
+ },
370
+ WARDROBE_AREA: {
371
+ de: "Garderobenbereich",
372
+ en: "Coat rack",
373
+ fr: "Espace vestiaire",
374
+ it: "Area guardaroba"
375
+ },
376
+ WHEELCHAIR: {
377
+ de: "Rollstuhlzone",
378
+ en: "Wheelchair zone",
379
+ fr: "Espace pour fauteuils roulants",
380
+ it: "Zona per sedie a rotelle"
381
+ },
382
+ WHEELCHAIR_AND_SEAT: {
383
+ de: "Rollstuhlzone",
384
+ en: "Wheelchair zone",
385
+ fr: "Espace pour fauteuils roulants",
386
+ it: "Zona per sedie a rotelle"
387
+ },
388
+ WHEELCHAIR_ICON: {
389
+ de: "Rollstuhlzone",
390
+ en: "Wheelchair zone",
391
+ fr: "Espace pour fauteuils roulants",
392
+ it: "Zona per sedie a rotelle"
393
+ },
394
+ WHEELCHAIR_NO_SEAT: {
395
+ de: "Rollstuhlzone",
396
+ en: "Wheelchair zone",
397
+ fr: "Espace pour fauteuils roulants",
398
+ it: "Zona per sedie a rotelle"
399
+ },
400
+ WIFI: {
401
+ de: "Gratis-Internet mit der App SBB FreeSurf",
402
+ en: "Free internet with the SBB FreeSurf app",
403
+ fr: "Internet gratuit avec l’appli FreeSurf CFF",
404
+ it: "Internet gratis con l’app FreeSurf FFS"
405
+ },
406
+ PLACE_PROPERTIES: {
407
+ AISLE_SEAT: {
408
+ de: "Gang",
409
+ en: "aisle",
410
+ fr: "Couloir",
411
+ it: "corridoio"
412
+ },
413
+ "AIR-CONDITIONED": {
414
+ de: "Klimatisierter Bereich",
415
+ en: "air-conditioned area",
416
+ fr: "Zone climatisée",
417
+ it: "area climatizzata"
418
+ },
419
+ ANY_SEAT: {
420
+ de: "optionale Auswahl",
421
+ en: "optional selection",
422
+ fr: "sélection facultative",
423
+ it: "selezione opzionale"
424
+ },
425
+ BISTRO: {
426
+ de: "Bistro",
427
+ en: "bistro",
428
+ fr: "Bistro",
429
+ it: "bistrò"
430
+ },
431
+ BICYCLE: {
432
+ de: "Velo",
433
+ en: "bicycle",
434
+ fr: "Vélo",
435
+ it: "biciclette"
436
+ },
437
+ BICYCLE_LOW: {
438
+ de: "Velohaken tief",
439
+ en: "bicycle hook low",
440
+ fr: "Crochets pour vélos abaissés",
441
+ it: "gancio per biciclette abbassare"
442
+ },
443
+ BICYCLE_MIDDLE: {
444
+ de: "Velohaken mittel",
445
+ en: "bicycle hook medium",
446
+ fr: "Crochets pour vélos moyens",
447
+ it: "gancio per biciclette medio"
448
+ },
449
+ BICYCLE_HIGH: {
450
+ de: "Velohaken hoch",
451
+ en: "bicycle hook high",
452
+ fr: "Crochets pour vélos surélevés",
453
+ it: "gancio per biciclette alto"
454
+ },
455
+ BUSINESS: {
456
+ de: "Business",
457
+ en: "business",
458
+ fr: "Business",
459
+ it: "business"
460
+ },
461
+ BUSINESS_COMFORT: {
462
+ de: "Business comfort",
463
+ en: "business Comfort",
464
+ fr: "Business Confort",
465
+ it: "business Comfort"
466
+ },
467
+ CABIN8: {
468
+ de: "Gruppen",
469
+ en: "groups",
470
+ fr: "Groupes",
471
+ it: "gruppi"
472
+ },
473
+ CAR_LARGE: {
474
+ de: "Fahrzeug mit einer Länge zwischen 4,42m und 5,3m und einer Dachbreite zwischen 1,36m und 1,55m",
475
+ en: "Vehicle with a length between 4.42m and 5.3m and a roof width between 1.36m and 1.55m",
476
+ fr: "Véhicule d’une longueur comprise entre 4,42m et 5,3m et d’une largeur de toit comprise entre 1,36m et 1,55m",
477
+ it: "Veicoli con una lunghezza compresa tra 4,42m e 5,3m e una larghezza del tetto compresa tra 1,36m e 1,55m"
478
+ },
479
+ CAR_SMALL: {
480
+ de: "Fahrzeug mit einer Länge zwischen 4,42m und 5,3m und einerDachbreite bis 1,35m",
481
+ en: "Vehicle with a length between 4.42m and 5.3m and a roof width of up to 1.35m",
482
+ fr: "Véhicule d’une longueur comprise entre 4,42m et 5,3m et d’une largeur de toit inférieure ou égale à 1,35m",
483
+ it: "Veicolo con una lunghezza compresa tra 4,42m e 5,3m e unalarghezza del tetto fino a 1,35m"
484
+ },
485
+ CARRE: {
486
+ de: "Carré",
487
+ en: "Carré",
488
+ fr: "Carré",
489
+ it: "Carré"
490
+ },
491
+ CHILDREN_AREA: {
492
+ de: "Kinderabteil",
493
+ en: "children’s compartment",
494
+ fr: "Compartiment enfants",
495
+ it: "compartimento per bambini"
496
+ },
497
+ CLUB: {
498
+ de: "Club",
499
+ en: "Club",
500
+ fr: "Club",
501
+ it: "Club"
502
+ },
503
+ CLUB_2: {
504
+ de: "Club Duo",
505
+ en: "Club Duo",
506
+ fr: "Club Duo",
507
+ it: "Club Duo"
508
+ },
509
+ CLUB_4: {
510
+ de: "Club 4",
511
+ en: "Club 4",
512
+ fr: "Club 4",
513
+ it: "Club 4"
514
+ },
515
+ COMPARTMENT: {
516
+ de: "Seitengang",
517
+ en: "side aisle",
518
+ fr: "Couloir latéral",
519
+ it: "corridoio laterale"
520
+ },
521
+ COMPLETE: {
522
+ de: "Privatabteil",
523
+ en: "private compartment",
524
+ fr: "Compartiment privé",
525
+ it: "compartimento privato"
526
+ },
527
+ CONFERENCE: {
528
+ de: "Konferenzraum",
529
+ en: "conference room",
530
+ fr: "Compartiment conférence",
531
+ it: "compartimento Conferenza"
532
+ },
533
+ CONNECTING_DOOR: {
534
+ de: "Abteil mit Verbindungstür",
535
+ en: "compartment with connecting door",
536
+ fr: "Compartiment avec porte communicante",
537
+ it: "compartimento con porta di collegamento"
538
+ },
539
+ COUCHETTE_2: {
540
+ de: "2er",
541
+ en: "2 berths",
542
+ fr: "2 places",
543
+ it: "2 posti"
544
+ },
545
+ COUCHETTE_4: {
546
+ de: "4er",
547
+ en: "4 berths",
548
+ fr: "4 places",
549
+ it: "4 posti"
550
+ },
551
+ COUCHETTE_5: {
552
+ de: "5er",
553
+ en: "5 berths",
554
+ fr: "5 places",
555
+ it: "5 posti"
556
+ },
557
+ COUCHETTE_6: {
558
+ de: "6er",
559
+ en: "6 berths",
560
+ fr: "6 places",
561
+ it: "6 posti"
562
+ },
563
+ COUCHETTE_COMFORT_4: {
564
+ de: "4er comfort",
565
+ en: "4 berths comfort",
566
+ fr: "4 places confort",
567
+ it: "4 posti comfort"
568
+ },
569
+ COUCHETTE_COMFORT_5: {
570
+ de: "5er comfort",
571
+ en: "5 berths comfort",
572
+ fr: "5 places confort",
573
+ it: "5 posti comfort"
574
+ },
575
+ COUCHETTE_COMFORT_6: {
576
+ de: "6er",
577
+ en: "6 berths comfort",
578
+ fr: "6 places confort",
579
+ it: "6 posti comfort"
580
+ },
581
+ COUCHETTE_PRM_2: {
582
+ de: "2er PRM",
583
+ en: "2 berths PRM",
584
+ fr: "2 places PMR",
585
+ it: "2 posti PRM"
586
+ },
587
+ COUCHETTE_PRM_3: {
588
+ de: "3er PRM",
589
+ en: "3 berths PRM",
590
+ fr: "3 places PMR",
591
+ it: "3 posti PRM"
592
+ },
593
+ COUCHETTE_PRM_4: {
594
+ de: "4er PRM",
595
+ en: "4 berths PRM",
596
+ fr: "4 places PMR",
597
+ it: "4 posti PRM"
598
+ },
599
+ DOUBLE: {
600
+ de: "Double",
601
+ en: "Double",
602
+ fr: "Double",
603
+ it: "Double"
604
+ },
605
+ DOUBLE_WC: {
606
+ de: "Double mit WC",
607
+ en: "Double with WC",
608
+ fr: "Double avec WC",
609
+ it: "Double con WC"
610
+ },
611
+ DOUBLE_SWC: {
612
+ de: "Double Deluxe",
613
+ en: "Double Deluxe",
614
+ fr: "Double Deluxe",
615
+ it: "Double Deluxe"
616
+ },
617
+ DOUBLE_S: {
618
+ de: "Double mit Dusche",
619
+ en: "Double with shower",
620
+ fr: "Double avec douche",
621
+ it: "Double con Doccia"
622
+ },
623
+ EASY_ACCESS: {
624
+ de: "PRM",
625
+ en: "PRM",
626
+ fr: "PRM",
627
+ it: "PRM"
628
+ },
629
+ FACE_2_FACE: {
630
+ de: "Duo vis à vis",
631
+ en: "Duo vis à vis",
632
+ fr: "Duo vis à vis",
633
+ it: "Duo vis à vis"
634
+ },
635
+ EXCELLENCE: {
636
+ de: "Excellence",
637
+ en: "excellence",
638
+ fr: "excellence",
639
+ it: "excellence"
640
+ },
641
+ FAMILY: {
642
+ de: "Familienabteil",
643
+ en: "family zone",
644
+ fr: "compartement famille",
645
+ it: "compartimente familia"
646
+ },
647
+ FRONT_VIEW: {
648
+ de: "VIP",
649
+ en: "VIP",
650
+ fr: "VIP",
651
+ it: "VIP"
652
+ },
653
+ HISTORIC_COACH: {
654
+ de: "Historic",
655
+ en: "historic",
656
+ fr: "historique",
657
+ it: "historic"
658
+ },
659
+ INCLUDING_MEAL: {
660
+ de: "Mahlzeit inbegriffen",
661
+ en: "meal included",
662
+ fr: "repas inclus",
663
+ it: "pasto incluso"
664
+ },
665
+ INCLUDING_DRINK: {
666
+ de: "Willkommensgetränk inbegriffen",
667
+ en: "welcome drink included",
668
+ fr: "boisson de bienvenue incluse",
669
+ it: "bevanda di benvenuto incluso"
670
+ },
671
+ KIOSQUE: {
672
+ de: "Kiosk",
673
+ en: "kiosk",
674
+ fr: "kiosque",
675
+ it: "chiosco"
676
+ },
677
+ LADIES: {
678
+ de: "Damenabteil",
679
+ en: "women Compartment",
680
+ fr: "compartiment femmes",
681
+ it: "compartimento donne"
682
+ },
683
+ LOWER_BED: {
684
+ de: "unten",
685
+ en: "at the bottom",
686
+ fr: "en bas",
687
+ it: "in basso"
688
+ },
689
+ LOWER_DECK: {
690
+ de: "unten",
691
+ en: "at the bottom",
692
+ fr: "en bas",
693
+ it: "in basso"
694
+ },
695
+ MEN: {
696
+ de: "Herrenabteil",
697
+ en: "gents compartment",
698
+ fr: "compartiment hommes",
699
+ it: "compartimento Uomini"
700
+ },
701
+ MIDDLE_BED: {
702
+ de: "Mitte",
703
+ en: "middle",
704
+ fr: "milieu",
705
+ it: "centro"
706
+ },
707
+ MIDDLE_DECK: {
708
+ de: "Mitte",
709
+ en: "middle",
710
+ fr: "milieu",
711
+ it: "centro"
712
+ },
713
+ MIDDLE_SEAT: {
714
+ de: "Mitte",
715
+ en: "middle",
716
+ fr: "milieu",
717
+ it: "centro"
718
+ },
719
+ MINI_SUITE: {
720
+ de: "Mini Cabin",
721
+ en: "mini Cabin",
722
+ fr: "Mini Cabin",
723
+ it: "Mini Cabin"
724
+ },
725
+ MIXED: {
726
+ de: "gemischtes Abteil",
727
+ en: "mixed compartment",
728
+ fr: "compartiment mixte",
729
+ it: "compartimento misto"
730
+ },
731
+ MOTOR_CYCLE: {
732
+ de: "Motorrad",
733
+ en: "motorcycle",
734
+ fr: "moto",
735
+ it: "motocicletta"
736
+ },
737
+ MOTOR_CYCLE_SC: {
738
+ de: "Motorrad mit Seitenwagen",
739
+ en: "motorcycle with sidecar",
740
+ fr: "moto avec side-car",
741
+ it: "motocicletta con sidecar"
742
+ },
743
+ NEAR_ANIMALS: {
744
+ de: "nah am Haustier",
745
+ en: "close to pet",
746
+ fr: "proche de l’animal de compagnie",
747
+ it: "vicino all’animale domestico"
748
+ },
749
+ NEAR_ASSISTANT_DOG_AREA: {
750
+ de: "nah am Assistenzhund",
751
+ en: "close to assistance dog",
752
+ fr: "près du chien d’assistance",
753
+ it: "vicino al cane da assistenza"
754
+ },
755
+ NEAR_DINING: {
756
+ de: "nah am Speisewagen",
757
+ en: "close to dining car",
758
+ fr: "à proximité de la voiture-restaurant",
759
+ it: "nelle vicinanze della carrozza ristorantev"
760
+ },
761
+ NEAR_PLAY_AREA: {
762
+ de: "nah am Spielplatz",
763
+ en: "close to playground",
764
+ fr: "à proximité de l’aire de jeux",
765
+ it: "vicino al parco giochi"
766
+ },
767
+ NEAR_BICYCLE_AREA: {
768
+ de: "nah am Veloplatz",
769
+ en: "close to bike space",
770
+ fr: "à proximité de la place pour vélo",
771
+ it: "vicino al posto bici"
772
+ },
773
+ NEAR_WHEELCHAIR: {
774
+ de: "nah am Rollstuhlplatz",
775
+ en: "close to wheelchair space",
776
+ fr: "à proximité de l’emplacement pour fauteuils roulants",
777
+ it: "vicino al posto per sedie a rotelle"
778
+ },
779
+ OPEN_SPACE: {
780
+ de: "Mittelgang",
781
+ en: "middle aisle",
782
+ fr: "couloir central",
783
+ it: "corridoio centrale"
784
+ },
785
+ PANORAMA: {
786
+ de: "Panoramawagen",
787
+ en: "panorama coach",
788
+ fr: "voiture panoramique",
789
+ it: "carrozza panoramica"
790
+ },
791
+ PHONE: {
792
+ de: "Mobile",
793
+ en: "mobile",
794
+ fr: "mobile",
795
+ it: "mobile"
796
+ },
797
+ POWER: {
798
+ de: "Mit Steckdose",
799
+ en: "with power socket",
800
+ fr: "avec prise",
801
+ it: "con presa elettrica"
802
+ },
803
+ PRAM: {
804
+ de: "Kinderwagen",
805
+ en: "close to space for strollers",
806
+ fr: "poussettes",
807
+ it: "passeggino"
808
+ },
809
+ PRAM_WITH_SEAT: {
810
+ de: "nah am Platz für Kinderwagen",
811
+ en: "Seat with space for a pram",
812
+ fr: "près de l’espace pour les poussettes",
813
+ it: "vicino al posto per passeggini"
814
+ },
815
+ PREMIUM: {
816
+ de: "Premium",
817
+ en: "premium",
818
+ fr: "premium",
819
+ it: "premium"
820
+ },
821
+ RESTAURANT: {
822
+ de: "Restaurant",
823
+ en: "restaurant",
824
+ fr: "restaurant",
825
+ it: "ristorante"
826
+ },
827
+ RESTRICTED_VIEW: {
828
+ de: "Fenster mit eingeschränkter Sicht",
829
+ en: "windows with restricted visibility",
830
+ fr: "fenêtres avec visibilité réduite",
831
+ it: "finestre con visibilità limitata"
832
+ },
833
+ SALON: {
834
+ de: "Salon",
835
+ en: "Salon",
836
+ fr: "salon",
837
+ it: "Salon"
838
+ },
839
+ SILENCE: {
840
+ de: "Ruheabteil",
841
+ en: "quiet compartment",
842
+ fr: "compartiment silence",
843
+ it: "compartimento del silenzio"
844
+ },
845
+ SINGLE: {
846
+ de: "Single",
847
+ en: "Single",
848
+ fr: "Single",
849
+ it: "Single"
850
+ },
851
+ SINGLE_WC: {
852
+ de: "Single mit WC",
853
+ en: "Single with WC",
854
+ fr: "Single avec WC",
855
+ it: "Single con WC"
856
+ },
857
+ SINGLE_SWC: {
858
+ de: "Single Deluxe",
859
+ en: "Single Deluxe",
860
+ fr: "Single Deluxe",
861
+ it: "Single Deluxe"
862
+ },
863
+ SIDE_BY_SIDE: {
864
+ de: "Duo côte à côte",
865
+ en: "Duo côte à côte",
866
+ fr: "Duo côte à côte",
867
+ it: "Duo côte à côte"
868
+ },
869
+ SLEEPERETTE: {
870
+ de: "Sleeperette",
871
+ en: "Sleeperette",
872
+ fr: "Sleeperette",
873
+ it: "Sleeperette"
874
+ },
875
+ SOLO: {
876
+ de: "freier Nebensitz",
877
+ en: "free side seat",
878
+ fr: "siège voisin libre",
879
+ it: "sedile secondario libero"
880
+ },
881
+ SOLO_COM: {
882
+ de: "freier Nebensitz",
883
+ en: "free side seat",
884
+ fr: "siège voisin libre",
885
+ it: "sedile secondario libero"
886
+ },
887
+ SLEEPER: {
888
+ de: "Single (klein)",
889
+ en: "Single (small)",
890
+ fr: "Single (petit)",
891
+ it: "Single (piccolo)"
892
+ },
893
+ TANDEM: {
894
+ de: "Tandem",
895
+ en: "tandem",
896
+ fr: "tandem",
897
+ it: "tandem"
898
+ },
899
+ TABLE: {
900
+ de: "Tisch",
901
+ en: "table",
902
+ fr: "table",
903
+ it: "tavolo"
904
+ },
905
+ TOURIST_SLEEPER_2: {
906
+ de: "Duo",
907
+ en: "Duo",
908
+ fr: "Duo",
909
+ it: "Duo"
910
+ },
911
+ TOURIST_SLEEPER_3: {
912
+ de: "3er",
913
+ en: "Triple",
914
+ fr: "Triple",
915
+ it: "Triple"
916
+ },
917
+ TOURIST_SLEEPER_3_WC: {
918
+ de: "3er mit WC",
919
+ en: "Triple with WC",
920
+ fr: "3 places avec WC",
921
+ it: "3 posti con WC"
922
+ },
923
+ TOURIST_SLEEPER_3_SWC: {
924
+ de: "3er Deluxe",
925
+ en: "Triple Deluxe",
926
+ fr: "3 places Deluxe",
927
+ it: "3 posti Deluxe"
928
+ },
929
+ TOURIST_SLEEPER_4: {
930
+ de: "4er",
931
+ en: "4-berth",
932
+ fr: "4 places",
933
+ it: "4 posti"
934
+ },
935
+ TRAVEL_DIRECTION_TRANSVERSELY: {
936
+ de: "quer zur Fahrtrichtung",
937
+ en: "transversely to travel direction",
938
+ fr: "Transversalement à la direction du voyage",
939
+ it: "trasversalmente alla direzione di viaggio"
940
+ },
941
+ TRAVEL_DIRECTION_IN_DIRECTION: {
942
+ de: "in Fahrtrichtung",
943
+ en: "in travel direction",
944
+ fr: "Dans le sens de la marche",
945
+ it: "nella direzione di marcia"
946
+ },
947
+ TRAVEL_DIRECTION_IN_OPPOSITE_DIRECTION: {
948
+ de: "gegen die Fahrtrichtung",
949
+ en: "in opposite direction",
950
+ fr: "Dans le sens inverse de la marche",
951
+ it: "nella direzione opposta alla marcia"
952
+ },
953
+ UPPER_BED: {
954
+ de: "oben",
955
+ en: "at the top",
956
+ fr: "en haut",
957
+ it: "in alto"
958
+ },
959
+ UPPER_DECK: {
960
+ de: "oben",
961
+ en: "at the top",
962
+ fr: "en haut",
963
+ it: "in alto"
964
+ },
965
+ VIDEO: {
966
+ de: "mit Unterhaltungssytem",
967
+ en: "with entertainment system",
968
+ fr: "avec système de divertissement",
969
+ it: "con sistema di intrattenimento"
970
+ },
971
+ WHEELCHAIR: {
972
+ de: "Rollstuhl",
973
+ en: "wheelchair",
974
+ fr: "fauteuil roulant",
975
+ it: "sedia a rotelle"
976
+ },
977
+ WHEELCHAIR_AND_SEAT: {
978
+ de: "Rollstuhl mit zusätzlichem Sitzplatz",
979
+ en: "wheelchair with additional seat",
980
+ fr: "fauteuil roulant avec place assise supplémentaire",
981
+ it: "sedia a rotelle con posto a sedere aggiuntivo"
982
+ },
983
+ WHEELCHAIR_NO_SEAT: {
984
+ de: "Rollstuhl ohne zusätzlichen Sitzplatz",
985
+ en: "Wheelchair space without additional seat",
986
+ fr: "fauteuil roulant avec place assise supplémentaire",
987
+ it: "sedia a rotelle con posto a sedere aggiuntivo"
988
+ },
989
+ WIFI: {
990
+ de: "Wlan",
991
+ en: "Wi-Fi",
992
+ fr: "Wi-Fi",
993
+ it: "Wlan"
994
+ },
995
+ WINDOW_SEAT: {
996
+ de: "Fenster",
997
+ en: "window",
998
+ fr: "fenêtre",
999
+ it: "finestre"
1000
+ },
1001
+ WITHOUT_TRAY_TABLE: {
1002
+ de: "ohne Tisch",
1003
+ en: "without table",
1004
+ fr: "sans table",
1005
+ it: "senza tavolo"
1006
+ },
1007
+ WITH_ANIMALS: {
1008
+ de: "Tiere erlaubt",
1009
+ en: "animals allowed",
1010
+ fr: "animaux admis",
1011
+ it: "animali ammessi"
1012
+ },
1013
+ WITH_SMALL_CHILDREN: {
1014
+ de: "Kleinkindabteil",
1015
+ en: "infant compartment",
1016
+ fr: "compartiment petit enfants",
1017
+ it: "compartimento per bambini piccoli"
1018
+ },
1019
+ WITHOUT_ANIMALS: {
1020
+ de: "Tiere nicht erlaubt",
1021
+ en: "pets not allowed",
1022
+ fr: "animaux non autorisés",
1023
+ it: "animali non ammessi"
1024
+ }
1025
+ },
1026
+ PLACE_CONTROL_SEAT_FREE: {
1027
+ de: "Sitzplatz _param0_ ist frei",
1028
+ en: "Seat _param0_ is available",
1029
+ fr: "Place _param0_ est libre",
1030
+ it: "Posto a sedere _param0_ è libero"
1031
+ },
1032
+ PLACE_CONTROL_SEAT_SELECTED: {
1033
+ de: "Sitzplatz _param0_ ist ausgewählt",
1034
+ en: "Seat _param0_ has been selected",
1035
+ fr: "Place _param0_ est sélectionnée",
1036
+ it: "Posto a sedere _param0_ è selezionato"
1037
+ },
1038
+ PLACE_CONTROL_BICYCLE_FREE: {
1039
+ de: "Veloplatz _param0_ ist frei",
1040
+ en: "Bike space _param0_ is available",
1041
+ fr: "Place pour vélo _param0_ est libre",
1042
+ it: "Posto bici _param0_ è libero"
1043
+ },
1044
+ PLACE_CONTROL_BICYCLE_SELECTED: {
1045
+ de: "Veloplatz _param0_ ist ausgewählt",
1046
+ en: "Bike space _param0_ has been selected",
1047
+ fr: "Place pour vélo _param0_ est sélectionnée",
1048
+ it: "Posto bici _param0_ è selezionato"
1049
+ },
1050
+ PLACE_CONTROL_SEAT_RESTRICTED: {
1051
+ de: "Sitzplatz ist nicht buchbar",
1052
+ en: "Seat cannot be reserved",
1053
+ fr: "Place ne peut pas être réservée",
1054
+ it: "Posto a sedere non è prenotabile"
1055
+ },
1056
+ PLACE_CONTROL_BICYCLE_RESTRICTED: {
1057
+ de: "Veloplatz ist nicht buchbar",
1058
+ en: "Bike space cannot be reserved",
1059
+ fr: "Place pour vélo indisponible",
1060
+ it: "Posto bici non è prenotabile"
1061
+ },
1062
+ PLACE_CONTROL_SEAT_ALLOCATED: {
1063
+ de: "Sitzplatz _param0_ ist besetzt",
1064
+ en: "Seat _param0_ is occupied",
1065
+ fr: "Place _param0_ est occupée",
1066
+ it: "Posto a sedere _param0_ è occupato"
1067
+ },
1068
+ PLACE_CONTROL_BICYCLE_ALLOCATED: {
1069
+ de: "Veloplatz _param0_ ist besetzt",
1070
+ en: "Bike space _param0_ is occupied",
1071
+ fr: "Place pour vélo _param0_ est occupée",
1072
+ it: "Posto bici _param0_ è occupato"
1073
+ },
1074
+ PLACE_PROPERTY: {
1075
+ de: "Platzeigenschaften",
1076
+ en: "Seat features",
1077
+ fr: "Caractéristiques de la place",
1078
+ it: "Caratteristiche del posto"
1079
+ },
1080
+ COACH_AVAILABLE_SERVICES: {
1081
+ de: "Verfügbare Services",
1082
+ en: "Available services",
1083
+ fr: "Services disponibles",
1084
+ it: "Servizi disponibili"
1085
+ },
1086
+ EXAMPLE_WITH_PARAMS_DO_NOT_USE: {
1087
+ de: "Test mit Parametern: _param0_ und _param1_",
1088
+ en: "Test with parameters: _param0_ and _param1_",
1089
+ fr: "Test avec paramètres: _param0_ et _param1_",
1090
+ it: "Test con parametri: _param0_ e _param1_"
1091
+ }
883
1092
  };
884
- const getI18nSeatReservation = (key, language, args) => {
885
- let innerValue = i18nObjects;
886
- let translatedStr = "";
887
- for (const part of key.split(".")) {
888
- innerValue = innerValue?.[part];
889
- if (!innerValue)
890
- break;
891
- }
892
- if (typeof innerValue === "object" && innerValue !== null && !Array.isArray(innerValue)) {
893
- translatedStr = innerValue[language] || "";
894
- } else if (typeof innerValue === "string") {
895
- translatedStr = innerValue;
896
- }
897
- return args ? args.reduce((val, param, idx) => val.replace(`_param${idx}_`, param), translatedStr) : translatedStr;
1093
+ /**
1094
+ * Returns the translation for a seat reservation string based on a key and language.
1095
+ * Supports nested keys (e.g. "PLACE_PROPERTIES.AISLE_SEAT") and placeholder replacement.
1096
+ *
1097
+ * @param key The translation key (can be nested, e.g. "PLACE_PROPERTIES.AISLE_SEAT").
1098
+ * @param language The desired language (e.g. "de", "en", "fr", "it").
1099
+ * @param args Optional array of parameters to replace placeholders like _param0_, _param1_ in the translation string.
1100
+ * @returns The translated string or an empty string if no translation is found.
1101
+ *
1102
+ * @example
1103
+ * getI18nSeatReservation('COACH_TABLE_CAPTION', 'de', ['12']); // "Wagen 12 selektiert"
1104
+ * getI18nSeatReservation('PLACE_PROPERTIES.AISLE_SEAT', 'en'); // "Aisle seat"
1105
+ */
1106
+ var getI18nSeatReservation = (key, language, args) => {
1107
+ let innerValue = i18nObjects;
1108
+ let translatedStr = "";
1109
+ for (const part of key.split(".")) {
1110
+ innerValue = innerValue?.[part];
1111
+ if (!innerValue) break;
1112
+ }
1113
+ if (typeof innerValue === "object" && innerValue !== null && !Array.isArray(innerValue)) translatedStr = innerValue[language] || "";
1114
+ else if (typeof innerValue === "string") translatedStr = innerValue;
1115
+ return args ? args.reduce((val, param, idx) => val.replace(`_param${idx}_`, param), translatedStr) : translatedStr;
898
1116
  };
899
- export {
900
- getI18nSeatReservation
901
- };
902
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzLWV4cGVyaW1lbnRhbC9zZWF0LXJlc2VydmF0aW9uL2NvbW1vbi90cmFuc2xhdGlvbnMvaTE4bi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFJldHVybnMgdGhlIHRyYW5zbGF0aW9uIGZvciBhIHNlYXQgcmVzZXJ2YXRpb24gc3RyaW5nIGJhc2VkIG9uIGEga2V5IGFuZCBsYW5ndWFnZS5cbiAqIFN1cHBvcnRzIG5lc3RlZCBrZXlzIChlLmcuIFwiUExBQ0VfUFJPUEVSVElFUy5BSVNMRV9TRUFUXCIpIGFuZCBwbGFjZWhvbGRlciByZXBsYWNlbWVudC5cbiAqXG4gKiBAcGFyYW0ga2V5IFRoZSB0cmFuc2xhdGlvbiBrZXkgKGNhbiBiZSBuZXN0ZWQsIGUuZy4gXCJQTEFDRV9QUk9QRVJUSUVTLkFJU0xFX1NFQVRcIikuXG4gKiBAcGFyYW0gbGFuZ3VhZ2UgVGhlIGRlc2lyZWQgbGFuZ3VhZ2UgKGUuZy4gXCJkZVwiLCBcImVuXCIsIFwiZnJcIiwgXCJpdFwiKS5cbiAqIEBwYXJhbSBhcmdzIE9wdGlvbmFsIGFycmF5IG9mIHBhcmFtZXRlcnMgdG8gcmVwbGFjZSBwbGFjZWhvbGRlcnMgbGlrZSBfcGFyYW0wXywgX3BhcmFtMV8gaW4gdGhlIHRyYW5zbGF0aW9uIHN0cmluZy5cbiAqIEByZXR1cm5zIFRoZSB0cmFuc2xhdGVkIHN0cmluZyBvciBhbiBlbXB0eSBzdHJpbmcgaWYgbm8gdHJhbnNsYXRpb24gaXMgZm91bmQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGdldEkxOG5TZWF0UmVzZXJ2YXRpb24oJ0NPQUNIX1RBQkxFX0NBUFRJT04nLCAnZGUnLCBbJzEyJ10pOyAvLyBcIldhZ2VuIDEyIHNlbGVrdGllcnRcIlxuICogZ2V0STE4blNlYXRSZXNlcnZhdGlvbignUExBQ0VfUFJPUEVSVElFUy5BSVNMRV9TRUFUJywgJ2VuJyk7IC8vIFwiQWlzbGUgc2VhdFwiXG4gKi9cblxuLy8gZW50cnkgZm9yIGFsbCA0IHRyYW5zbGF0aW9uczoga2V5OiB7ZGU6ICcuLi4nLCBlbjogJy4uLicsIGZyOiAnLi4uJywgaXQ6ICcuLi4nfVxuaW50ZXJmYWNlIEkxOG5FbnRyeSB7XG4gIFtsYW5ndWFnZTogc3RyaW5nXTogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgSTE4bk9iamVjdHMge1xuICBba2V5OiBzdHJpbmddOiBJMThuRW50cnkgfCB7IFtzdWJLZXk6IHN0cmluZ106IEkxOG5FbnRyeSB9O1xufVxuXG5jb25zdCBpMThuT2JqZWN0czogSTE4bk9iamVjdHMgPSB7XG4gIC8vIEJBU0lDU1xuICAvLyBDT0FDSCBERUNLIExBQkVMIERFU0NSSVBUSU9OU1xuICBTSU5HTEVfREVDSzoge1xuICAgIGRlOiAnRWluemVsZGVjaycsXG4gICAgZW46ICdTaW5nbGUgZGVjaycsXG4gICAgZnI6ICfDiXRhZ2UgdW5pcXVlJyxcbiAgICBpdDogJ1BpYW5vIHNpbmdvbG8nLFxuICB9LFxuICBMT1dFUl9ERUNLOiB7XG4gICAgZGU6ICdVbnRlcmRlY2snLFxuICAgIGVuOiAnTG93ZXIgZGVjaycsXG4gICAgZnI6ICdTYWxsZSBiYXNzZScsXG4gICAgaXQ6ICdTYWxhIGJhc3NhJyxcbiAgfSxcbiAgTUlERExFX0RFQ0s6IHtcbiAgICBkZTogJ01pdHRlbGRlY2snLFxuICAgIGVuOiAnTWlkZGxlIGRlY2snLFxuICAgIGZyOiAnTml2ZWF1IGR1IG1pbGlldScsXG4gICAgaXQ6ICdMaXZlbGxvIGNlbnRyYWxlJyxcbiAgfSxcbiAgVVBQRVJfREVDSzoge1xuICAgIGRlOiAnT2JlcmRlY2snLFxuICAgIGVuOiAnVXBwZXIgZGVjaycsXG4gICAgZnI6ICdTYWxsZSBoYXV0ZScsXG4gICAgaXQ6ICdTYWxhIGFsdGEnLFxuICB9LFxuICAvLyBDQVBUSU9OIEZPUiBTQ1JFRU5SRUFERVIgSU5TSURFIFdBR09OXG4gIENPQUNIX1RBQkxFX0NBUFRJT046IHtcbiAgICBkZTogJ1dhZ2VuIF9wYXJhbTBfIHNlbGVrdGllcnQnLFxuICAgIGVuOiAnQ29hY2ggX3BhcmFtMF8gc2VsZWN0ZWQnLFxuICAgIGZyOiAnVm9pdHVyZSBfcGFyYW0wXyBzw6lsZWN0aW9ubsOpZScsXG4gICAgaXQ6ICdDYXJyb3p6YSBfcGFyYW0wXyBzZWxlemlvbmF0YScsXG4gIH0sXG4gIENPQUNIX0JMT0NLRURfVEFCTEVfQ0FQVElPTjoge1xuICAgIGRlOiAnV2FnZW4gX3BhcmFtMF8gaXN0IG5pY2h0IGJldHJldGJhci4gTmF2aWdpZXJlbiBTaWUgYml0dGUgenVtIG7DpGNoc3RlbiB2ZXJmw7xnYmFyZW4gV2FnZW4nLFxuICAgIGVuOiAnTm8gYWNjZXNzIHRvIGNvYWNoIF9wYXJhbTBfLiBQbGVhc2UgbmF2aWdhdGUgdG8gdGhlIG5leHQgYXZhaWxhYmxlIGNvYWNoJyxcbiAgICBmcjogJ0xhIHZvaXR1cmUgX3BhcmFtMF8gbuKAmWVzdCBwYXMgYWNjZXNzaWJsZS4gVmV1aWxsZXogY29udGludWVyIGp1c3F14oCZw6AgbGEgcHJvY2hhaW5lIHZvaXR1cmUgZGlzcG9uaWJsZScsXG4gICAgaXQ6ICdMYSBjYXJyb3p6YSBfcGFyYW0wXyBub24gw6ggYWNjZXNzaWJpbGUuIE5hdmlnYSB2ZXJzbyBsYSBwcm9zc2ltYSBjYXJyb3p6YSBkaXNwb25pYmlsZScsXG4gIH0sXG4gIFNFQVRfUkVTRVJWQVRJT05fQkVHSU46IHtcbiAgICBkZTogJ0JlZ2lubiBkZXIgR3JhZmlzY2hlIFNpdHpwbGF0enJlc2VydmllcnVuZycsXG4gICAgZW46ICdTdGFydCBHcmFwaGljIFNlYXQgUmVzZXJ2YXRpb24nLFxuICAgIGZyOiAnQ29tbWVuY2VyIGxhIHLDqXNlcnZhdGlvbiBncmFwaGlxdWUgZGUgcGxhY2VzJyxcbiAgICBpdDogJ0F2dmlvIGRlbGxhIHByZW5vdGF6aW9uZSBncmFmaWNhIGRlaSBwb3N0aScsXG4gIH0sXG4gIFNFQVRfUkVTRVJWQVRJT05fRU5EOiB7XG4gICAgZGU6ICdWZXJsYXNzZW4gZGVyIEdyYWZpc2NoZSBTaXR6cGxhdHpyZXNlcnZpZXJ1bmcnLFxuICAgIGVuOiAnRXhpdCBHcmFwaGljIFNlYXQgUmVzZXJ2YXRpb24nLFxuICAgIGZyOiAnVGVybWluZXIgbGEgcsOpc2VydmF0aW9uIGdyYXBoaXF1ZSBkZSBwbGFjZXMnLFxuICAgIGl0OiAnVXNjaXRhIGRhbGxhIHByZW5vdGF6aW9uZSBncmFmaWNhIGRlaSBwb3N0aScsXG4gIH0sXG4gIENPQUNIX0xPQ09NT1RJVkU6IHtcbiAgICBkZTogJ0xva29tb3RpdmUnLFxuICAgIGVuOiAnTG9jb21vdGl2ZScsXG4gICAgZnI6ICdMb2NvbW90aXZlJyxcbiAgICBpdDogJ0xvY29tb3RpdmEnLFxuICB9LFxuXG4gIC8vIFRSQVZFTCBESVJFQ1RJT05cbiAgU0VBVF9SRVNFUlZBVElPTl9UUkFWRUxfRElSRUNUSU9OOiB7XG4gICAgZGU6ICdGYWhydHJpY2h0dW5nJyxcbiAgICBlbjogJ1RyYXZlbCBkaXJlY3Rpb24nLFxuICAgIGZyOiAnRGlyZWN0aW9uIGR1IHZveWFnZScsXG4gICAgaXQ6ICdEaXJlemlvbmUgZGkgdmlhZ2dpbycsXG4gIH0sXG5cbiAgLy8gTkFWSUdBVElPTlxuICBOQVZJR0FURV9UT19DT0FDSDoge1xuICAgIGRlOiAnTmF2aWdpZXJlIHp1IFdhZ2VuIF9wYXJhbTBfJyxcbiAgICBlbjogJ05hdmlnYXRlIHRvIGNvYWNoIF9wYXJhbTBfJyxcbiAgICBmcjogJ0FsbGVyIMOgIGxhIHZvaXR1cmUgX3BhcmFtMF8nLFxuICAgIGl0OiAnTmF2aWdhIHZlcnNvIGxhIGNhcnJvenphIF9wYXJhbTBfJyxcbiAgfSxcbiAgTkFWSUdBVEVfVE9fQ09BQ0hfU0VSVklDRV9DTEFTU19TVUI6IHtcbiAgICBkZTogJyBtaXQgX3BhcmFtMF8gQWJ0ZWlsJyxcbiAgICBlbjogJyB3aXRoIF9wYXJhbTBfIGNvbXBhcnRtZW50JyxcbiAgICBmcjogJyBhdmVjIGNvbXBhcnRpbWVudCBfcGFyYW0wXycsXG4gICAgaXQ6ICcgY29uIGNvbXBhcnRpbWVudG8gZGkgX3BhcmFtMF8nLFxuICB9LFxuICBOQVZJR0FURV9DT0FDSF9CTE9DS0VEOiB7XG4gICAgZGU6ICdadWdhYnRlaWwgX3BhcmFtMF8gaXN0IG5pY2h0IGJldHJldGJhcicsXG4gICAgZW46ICdObyBhY2Nlc3MgdG8gdHJhaW4gY29tcGFydG1lbnQgX3BhcmFtMF8nLFxuICAgIGZyOiAnTGUgY29tcGFydGltZW50IF9wYXJhbTBfIG7igJllc3QgcGFzIGFjY2Vzc2libGUnLFxuICAgIGl0OiAnSWwgY29tcGFydGltZW50byBkZWwgdHJlbm8gX3BhcmFtMF8gbm9uIMOoIGFjY2Vzc2liaWxlJyxcbiAgfSxcbiAgU0VBVF9SRVNFUlZBVElPTl9OQVZJR0FUSU9OOiB7XG4gICAgZGU6ICdTaXR6cGxhdHpyZXNlcnZpZXJ1bmdzbmF2aWdhdGlvbicsXG4gICAgZW46ICdTZWF0IHJlc2VydmF0aW9uIG5hdmlnYXRpb24nLFxuICAgIGZyOiAnTmF2aWdhdGlvbiBwb3VyIGxhIHLDqXNlcnZhdGlvbiBkZSBwbGFjZXMnLFxuICAgIGl0OiAnTmF2aWdhemlvbmUgcGVyIGxhIHByZW5vdGF6aW9uZSBkZWkgcG9zdGknLFxuICB9LFxuICBDT0FDSF9BVkFJTEFCTEVfTlVNQkVSX09GX1BMQUNFUzoge1xuICAgIGRlOiAnX3BhcmFtMF8gdmVyZsO8Z2JhcmUgU2l0enBsw6R0emUuIF9wYXJhbTFfIHZlcmbDvGdiYXJlIFZlbG9wbMOkdHplLicsXG4gICAgZW46ICdfcGFyYW0wXyBzZWF0cyBhdmFpbGFibGUuIF9wYXJhbTFfIGF2YWlsYWJsZSBiaWN5Y2xlIHNwYWNlcy4nLFxuICAgIGZyOiAnX3BhcmFtMF8gcGxhY2VzIGFzc2lzZXMgZGlzcG9uaWJsZXMuIF9wYXJhbTFfIHBsYWNlcyBwb3VyIHbDqWxvcyBkaXNwb25pYmxlcy4nLFxuICAgIGl0OiAnX3BhcmFtMF8gcG9zdGkgYSBzZWRlcmUgZGlzcG9uaWJpbGkuIF9wYXJhbTFfIHBvc3RpIHBlciBiaWNpY2xldHRlIGRpc3BvbmliaWxpLicsXG4gIH0sXG4gIFNFUlZJQ0VfQ0xBU1NfRklSU1Q6IHtcbiAgICBkZTogJ2Vyc3RlIEtsYXNzZScsXG4gICAgZW46ICdGaXJzdCBjbGFzcycsXG4gICAgZnI6ICdwcmVtacOocmUgY2xhc3NlJyxcbiAgICBpdDogJ3ByaW1hIGNsYXNzZScsXG4gIH0sXG4gIFNFUlZJQ0VfQ0xBU1NfU0VDT05EOiB7XG4gICAgZGU6ICd6d2VpdGUgS2xhc3NlJyxcbiAgICBlbjogJ1NlY29uZCBjbGFzcycsXG4gICAgZnI6ICdkZXV4acOobWUgY2xhc3NlJyxcbiAgICBpdDogJ3NlY29uZGEgY2xhc3NlJyxcbiAgfSxcblxuICAvLyBOQVZJR0FUSU9OIFNFUlZJQ0VTIElDT05TIEFORCBTRVJWSUNFIElDT05TIElOU0lERSBXQUdPTlxuICBCSUNZQ0xFOiB7XG4gICAgZGU6ICdWZWxvYmVyZWljaCcsXG4gICAgZW46ICdCaWtlIGFyZWEnLFxuICAgIGZyOiAnRXNwYWNlIHbDqWxvJyxcbiAgICBpdDogJ0FyZWEgYmljaScsXG4gIH0sXG4gIEJJQ1lDTEVfSElHSDoge1xuICAgIGRlOiAnVmVsb2JlcmVpY2gnLFxuICAgIGVuOiAnQmlrZSBhcmVhJyxcbiAgICBmcjogJ0VzcGFjZSB2w6lsbycsXG4gICAgaXQ6ICdBcmVhIGJpY2knLFxuICB9LFxuICBCSUNZQ0xFX0hJR0hfSUNPTjoge1xuICAgIGRlOiAnVmVsb2JlcmVpY2gnLFxuICAgIGVuOiAnQmlrZSBhcmVhJyxcbiAgICBmcjogJ0VzcGFjZSB2w6lsbycsXG4gICAgaXQ6ICdBcmVhIGJpY2knLFxuICB9LFxuICBCSUNZQ0xFX0lDT046IHtcbiAgICBkZTogJ1ZlbG9iZXJlaWNoJyxcbiAgICBlbjogJ0Jpa2UgYXJlYScsXG4gICAgZnI6ICdFc3BhY2UgdsOpbG8nLFxuICAgIGl0OiAnQXJlYSBiaWNpJyxcbiAgfSxcbiAgQklDWUNMRV9MT1c6IHtcbiAgICBkZTogJ1ZlbG9iZXJlaWNoJyxcbiAgICBlbjogJ0Jpa2UgYXJlYScsXG4gICAgZnI6ICdFc3BhY2UgdsOpbG8nLFxuICAgIGl0OiAnQXJlYSBiaWNpJyxcbiAgfSxcbiAgQklDWUNMRV9MT1dfSUNPTjoge1xuICAgIGRlOiAnVmVsb2JlcmVpY2gnLFxuICAgIGVuOiAnQmlrZSBhcmVhJyxcbiAgICBmcjogJ0VzcGFjZSB2w6lsbycsXG4gICAgaXQ6ICdBcmVhIGJpY2knLFxuICB9LFxuICBCSUNZQ0xFX01JRERMRToge1xuICAgIGRlOiAnVmVsb2JlcmVpY2gnLFxuICAgIGVuOiAnQmlrZSBhcmVhJyxcbiAgICBmcjogJ0VzcGFjZSB2w6lsbycsXG4gICAgaXQ6ICdBcmVhIGJpY2knLFxuICB9LFxuICBCSUNZQ0xFX01JRERMRV9JQ09OOiB7XG4gICAgZGU6ICdWZWxvYmVyZWljaCcsXG4gICAgZW46ICdCaWtlIGFyZWEnLFxuICAgIGZyOiAnRXNwYWNlIHbDqWxvJyxcbiAgICBpdDogJ0FyZWEgYmljaScsXG4gIH0sXG4gIEJJU1RSTzoge1xuICAgIGRlOiAnQmlzdHJvJyxcbiAgICBlbjogJ0Jpc3RybycsXG4gICAgZnI6ICdCaXN0cm8nLFxuICAgIGl0OiAnQmlzdHJvJyxcbiAgfSxcbiAgQklTVFJPX0lDT046IHtcbiAgICBkZTogJ0Jpc3RybycsXG4gICAgZW46ICdCaXN0cm8nLFxuICAgIGZyOiAnQmlzdHJvJyxcbiAgICBpdDogJ0Jpc3RybycsXG4gIH0sXG4gIEJVU0lORVNTOiB7XG4gICAgZGU6ICdCdXNpbmVzc3pvbmUnLFxuICAgIGVuOiAnQnVzaW5lc3Mgem9uZScsXG4gICAgZnI6ICdFc3BhY2UgYWZmYWlyZXMnLFxuICAgIGl0OiAnWm9uYSBidXNpbmVzcycsXG4gIH0sXG4gIEJVU0lORVNTX0NPTUZPUlQ6IHtcbiAgICBkZTogJ0J1c2luZXNzem9uZScsXG4gICAgZW46ICdCdXNpbmVzcyB6b25lJyxcbiAgICBmcjogJ0VzcGFjZSBhZmZhaXJlcycsXG4gICAgaXQ6ICdab25hIGJ1c2luZXNzJyxcbiAgfSxcbiAgQlVTSU5FU1NfSUNPTjoge1xuICAgIGRlOiAnQnVzaW5lc3N6b25lJyxcbiAgICBlbjogJ0J1c2luZXNzIHpvbmUnLFxuICAgIGZyOiAnRXNwYWNlIGFmZmFpcmVzJyxcbiAgICBpdDogJ1pvbmEgYnVzaW5lc3MnLFxuICB9LFxuICBDT0FDSF9QQVNTQUdFOiB7XG4gICAgZGU6ICdXYWdlbsO8YmVyZ2FuZycsXG4gICAgZW46ICdJbnRlci1jb2FjaCBnYW5nd2F5JyxcbiAgICBmcjogJ0ludGVyY2lyY3VsYXRpb24nLFxuICAgIGl0OiAnUGFzc2FnZ2lvIGludGVyY29tdW5pY2FudGUnLFxuICB9LFxuICBFQVNZX0FDQ0VTUzoge1xuICAgIGRlOiAnWm9uZSBmw7xyIFJlaXNlbmRlIG1pdCBlaW5nZXNjaHLDpG5rdGVyIE1vYmlsaXTDpHQnLFxuICAgIGVuOiAnWm9uZSBmb3IgdHJhdmVsbGVycyB3aXRoIHJlZHVjZWQgbW9iaWxpdHknLFxuICAgIGZyOiAnWm9uZSBwb3VyIHZveWFnZXVycyDDoCBtb2JpbGl0w6kgcsOpZHVpdGUnLFxuICAgIGl0OiAnWm9uYSB2aWFnZ2lhdG9yaSBhIG1vYmlsaXTDoCByaWRvdHRhJyxcbiAgfSxcbiAgRUFTWV9BQ0NFU1NfQVJFQToge1xuICAgIGRlOiAnWm9uZSBmw7xyIFJlaXNlbmRlIG1pdCBlaW5nZXNjaHLDpG5rdGVyIE1vYmlsaXTDpHQnLFxuICAgIGVuOiAnWm9uZSBmb3IgdHJhdmVsbGVycyB3aXRoIHJlZHVjZWQgbW9iaWxpdHknLFxuICAgIGZyOiAnWm9uZSBwb3VyIHZveWFnZXVycyDDoCBtb2JpbGl0w6kgcsOpZHVpdGUnLFxuICAgIGl0OiAnWm9uYSB2aWFnZ2lhdG9yaSBhIG1vYmlsaXTDoCByaWRvdHRhJyxcbiAgfSxcbiAgRUFTWV9BQ0NFU1NfSUNPTjoge1xuICAgIGRlOiAnWm9uZSBmw7xyIFJlaXNlbmRlIG1pdCBlaW5nZXNjaHLDpG5rdGVyIE1vYmlsaXTDpHQnLFxuICAgIGVuOiAnWm9uZSBmb3IgdHJhdmVsbGVycyB3aXRoIHJlZHVjZWQgbW9iaWxpdHknLFxuICAgIGZyOiAnWm9uZSBwb3VyIHZveWFnZXVycyDDoCBtb2JpbGl0w6kgcsOpZHVpdGUnLFxuICAgIGl0OiAnWm9uYSB2aWFnZ2lhdG9yaSBhIG1vYmlsaXTDoCByaWRvdHRhJyxcbiAgfSxcbiAgRU5UUllfRVhJVDoge1xuICAgIGRlOiAnQXVzZ2FuZyAvIEVpbmdhbmcnLFxuICAgIGVuOiAnRXhpdCAvIGVudHJhbmNlJyxcbiAgICBmcjogJ1NvcnRpZSAvIEVudHLDqWUnLFxuICAgIGl0OiAnVXNjaXRhIC8gSW5ncmVzc28nLFxuICB9LFxuICBGQU1JTFk6IHtcbiAgICBkZTogJ0ZhbWlsaWVud2FnZW4nLFxuICAgIGVuOiAnRmFtaWx5IGNvYWNoJyxcbiAgICBmcjogJ1ZvaXR1cmUtZmFtaWxsZXMnLFxuICAgIGl0OiAnQ2Fycm96emEgZmFtaWdsaWEnLFxuICB9LFxuICBMVUdHQUdFX0FSRUE6IHtcbiAgICBkZTogJ0dlcMOkY2t6b25lJyxcbiAgICBlbjogJ0x1Z2dhZ2Ugem9uZScsXG4gICAgZnI6ICdFc3BhY2UgYmFnYWdlcycsXG4gICAgaXQ6ICdab25hIGJhZ2FnbGknLFxuICB9LFxuICBMVUdHQUdFX0lDT046IHtcbiAgICBkZTogJ0dlcMOkY2t6b25lJyxcbiAgICBlbjogJ0x1Z2dhZ2Ugem9uZScsXG4gICAgZnI6ICdFc3BhY2UgYmFnYWdlcycsXG4gICAgaXQ6ICdab25hIGJhZ2FnbGknLFxuICB9LFxuICBNVUxUSV9GVU5DVElPTl9BUkVBOiB7XG4gICAgZGU6ICdNdWx0aWZ1bmt0aW9uc2JlcmVpY2gnLFxuICAgIGVuOiAnTXVsdGlmdW5jdGlvbiBhcmVhJyxcbiAgICBmcjogJ1pvbmUgbXVsdGlmb25jdGlvbm5lbGxlJyxcbiAgICBpdDogJ1pvbmEgbXVsdGlmdW56aW9uYWxlJyxcbiAgfSxcbiAgTVVMVElfRlVOQ1RJT05fSUNPTjoge1xuICAgIGRlOiAnTXVsdGlmdW5rdGlvbnNiZXJlaWNoJyxcbiAgICBlbjogJ011bHRpZnVuY3Rpb24gYXJlYScsXG4gICAgZnI6ICdab25lIG11bHRpZm9uY3Rpb25uZWxsZScsXG4gICAgaXQ6ICdab25hIG11bHRpZnVuemlvbmFsZScsXG4gIH0sXG4gIFBMQVlHUk9VTkRfQVJFQToge1xuICAgIGRlOiAnRmFtaWxpZW53YWdlbicsXG4gICAgZW46ICdGYW1pbHkgY29hY2gnLFxuICAgIGZyOiAnVm9pdHVyZS1mYW1pbGxlcycsXG4gICAgaXQ6ICdDYXJyb3p6YSBmYW1pZ2xpYScsXG4gIH0sXG4gIFBMQVlHUk9VTkRfSUNPTjoge1xuICAgIGRlOiAnRmFtaWxpZW53YWdlbicsXG4gICAgZW46ICdGYW1pbHkgY29hY2gnLFxuICAgIGZyOiAnVm9pdHVyZS1mYW1pbGxlcycsXG4gICAgaXQ6ICdDYXJyb3p6YSBmYW1pZ2xpYScsXG4gIH0sXG4gIFBSQU06IHtcbiAgICBkZTogJ0tpbmRlcndhZ2VuYmVyZWljaCcsXG4gICAgZW46ICdQcmFtL3B1c2hjaGFpciBhcmVhJyxcbiAgICBmcjogJ0VzcGFjZSBwb3Vzc2V0dGUnLFxuICAgIGl0OiAnQXJlYSBwZXIgcGFzc2VnZ2luaScsXG4gIH0sXG4gIFBSQU1fQVJFQToge1xuICAgIGRlOiAnS2luZGVyd2FnZW5iZXJlaWNoJyxcbiAgICBlbjogJ1ByYW0vcHVzaGNoYWlyIGFyZWEnLFxuICAgIGZyOiAnRXNwYWNlIHBvdXNzZXR0ZScsXG4gICAgaXQ6ICdBcmVhIHBlciBwYXNzZWdnaW5pJyxcbiAgfSxcbiAgUFJBTV9JQ09OOiB7XG4gICAgZGU6ICdLaW5kZXJ3YWdlbmJlcmVpY2gnLFxuICAgIGVuOiAnUHJhbS9wdXNoY2hhaXIgYXJlYScsXG4gICAgZnI6ICdFc3BhY2UgcG91c3NldHRlJyxcbiAgICBpdDogJ0FyZWEgcGVyIHBhc3NlZ2dpbmknLFxuICB9LFxuICBSRVNUQVVSQU5UOiB7XG4gICAgZGU6ICdSZXN0YXVyYW50JyxcbiAgICBlbjogJ1Jlc3RhdXJhbnQnLFxuICAgIGZyOiAnUmVzdGF1cmFudCcsXG4gICAgaXQ6ICdSaXN0b3JhbnRlJyxcbiAgfSxcbiAgUkVTVEFVUkFOVF9BUkVBOiB7XG4gICAgZGU6ICdSZXN0YXVyYW50JyxcbiAgICBlbjogJ1Jlc3RhdXJhbnQnLFxuICAgIGZyOiAnUmVzdGF1cmFudCcsXG4gICAgaXQ6ICdSaXN0b3JhbnRlJyxcbiAgfSxcbiAgUkVTVEFVUkFOVF9JQ09OOiB7XG4gICAgZGU6ICdSZXN0YXVyYW50JyxcbiAgICBlbjogJ1Jlc3RhdXJhbnQnLFxuICAgIGZyOiAnUmVzdGF1cmFudCcsXG4gICAgaXQ6ICdSaXN0b3JhbnRlJyxcbiAgfSxcbiAgU0lMRU5DRToge1xuICAgIGRlOiAnUnVoZXpvbmUnLFxuICAgIGVuOiAnUXVpZXQgem9uZScsXG4gICAgZnI6ICdFc3BhY2Ugc2lsZW5jZScsXG4gICAgaXQ6ICdab25hIGRlbCBzaWxlbnppbycsXG4gIH0sXG4gIFNJTEVOQ0VfQVJFQV9JQ09OOiB7XG4gICAgZGU6ICdSdWhlem9uZScsXG4gICAgZW46ICdRdWlldCB6b25lJyxcbiAgICBmcjogJ0VzcGFjZSBzaWxlbmNlJyxcbiAgICBpdDogJ1pvbmEgZGVsIHNpbGVuemlvJyxcbiAgfSxcbiAgU0lMRU5DRV9JQ09OOiB7XG4gICAgZGU6ICdSdWhlem9uZScsXG4gICAgZW46ICdRdWlldCB6b25lJyxcbiAgICBmcjogJ0VzcGFjZSBzaWxlbmNlJyxcbiAgICBpdDogJ1pvbmEgZGVsIHNpbGVuemlvJyxcbiAgfSxcbiAgU0tJX0FSRUE6IHtcbiAgICBkZTogJ1NraSBCZXJlaWNoJyxcbiAgICBlbjogJ1NraSBhcmVhJyxcbiAgICBmcjogJ0VzcGFjZSBza2knLFxuICAgIGl0OiAnQXJlYSBzY2knLFxuICB9LFxuICBTS0lfSUNPTjoge1xuICAgIGRlOiAnU2tpIEJlcmVpY2gnLFxuICAgIGVuOiAnU2tpIGFyZWEnLFxuICAgIGZyOiAnRXNwYWNlIHNraScsXG4gICAgaXQ6ICdBcmVhIHNjaScsXG4gIH0sXG4gIFNUQUZGX0FSRUE6IHtcbiAgICBkZTogJ1p1Z3BlcnNvbmFsJyxcbiAgICBlbjogJ1RyYWluIGNyZXcnLFxuICAgIGZyOiAnUGVyc29ubmVsIGRlIHRyYWluJyxcbiAgICBpdDogJ1BlcnNvbmFsZSBkaSB0cmVubycsXG4gIH0sXG4gIFNUQUlSX0FSRUE6IHtcbiAgICBkZTogJ1RyZXBwZW5iZXJlaWNoJyxcbiAgICBlbjogJ1N0YWlyIGFyZWEnLFxuICAgIGZyOiAnRXNjYWxpZXInLFxuICAgIGl0OiAnQXJlYSBzY2FsZScsXG4gIH0sXG4gIFRPSUxFVF9BUkVBOiB7XG4gICAgZGU6ICdUb2lsZXR0ZW5iZXJlaWNoJyxcbiAgICBlbjogJ1RvaWxldCBhcmVhJyxcbiAgICBmcjogJ1RvaWxldHRlcycsXG4gICAgaXQ6ICdBcmVhIHRvaWxldHRlJyxcbiAgfSxcbiAgVE9JTEVUX0lDT046IHtcbiAgICBkZTogJ1RvaWxldHRlbmJlcmVpY2gnLFxuICAgIGVuOiAnVG9pbGV0IGFyZWEnLFxuICAgIGZyOiAnVG9pbGV0dGVzJyxcbiAgICBpdDogJ0FyZWEgdG9pbGV0dGUnLFxuICB9LFxuICBUT0lMRVRfV0hFRUxDSEFJUl9BUkVBOiB7XG4gICAgZGU6ICdSb2xsc3R1aGwgVG9pbGV0dGVuYmVyZWljaCcsXG4gICAgZW46ICdXaGVlbGNoYWlyL3RvaWxldCBhcmVhJyxcbiAgICBmcjogJ1RvaWxldHRlcyBwb3VyIGZhdXRldWlscyByb3VsYW50cycsXG4gICAgaXQ6ICdBcmVhIHRvaWxldHRlIGFjY2Vzc2liaWxlIGluIHNlZGlhIGEgcm90ZWxsZScsXG4gIH0sXG4gIFRPSUxFVF9XSEVFTENIQUlSX0lDT046IHtcbiAgICBkZTogJ1JvbGxzdHVobCBUb2lsZXR0ZW5iZXJlaWNoJyxcbiAgICBlbjogJ1doZWVsY2hhaXIvdG9pbGV0IGFyZWEnLFxuICAgIGZyOiAnVG9pbGV0dGVzIHBvdXIgZmF1dGV1aWxzIHJvdWxhbnRzJyxcbiAgICBpdDogJ0FyZWEgdG9pbGV0dGUgYWNjZXNzaWJpbGUgaW4gc2VkaWEgYSByb3RlbGxlJyxcbiAgfSxcbiAgV0FSRFJPQkVfQVJFQToge1xuICAgIGRlOiAnR2FyZGVyb2JlbmJlcmVpY2gnLFxuICAgIGVuOiAnQ29hdCByYWNrJyxcbiAgICBmcjogJ0VzcGFjZSB2ZXN0aWFpcmUnLFxuICAgIGl0OiAnQXJlYSBndWFyZGFyb2JhJyxcbiAgfSxcbiAgV0hFRUxDSEFJUjoge1xuICAgIGRlOiAnUm9sbHN0dWhsem9uZScsXG4gICAgZW46ICdXaGVlbGNoYWlyIHpvbmUnLFxuICAgIGZyOiAnRXNwYWNlIHBvdXIgZmF1dGV1aWxzIHJvdWxhbnRzJyxcbiAgICBpdDogJ1pvbmEgcGVyIHNlZGllIGEgcm90ZWxsZScsXG4gIH0sXG4gIFdIRUVMQ0hBSVJfQU5EX1NFQVQ6IHtcbiAgICBkZTogJ1JvbGxzdHVobHpvbmUnLFxuICAgIGVuOiAnV2hlZWxjaGFpciB6b25lJyxcbiAgICBmcjogJ0VzcGFjZSBwb3VyIGZhdXRldWlscyByb3VsYW50cycsXG4gICAgaXQ6ICdab25hIHBlciBzZWRpZSBhIHJvdGVsbGUnLFxuICB9LFxuICBXSEVFTENIQUlSX0lDT046IHtcbiAgICBkZTogJ1JvbGxzdHVobHpvbmUnLFxuICAgIGVuOiAnV2hlZWxjaGFpciB6b25lJyxcbiAgICBmcjogJ0VzcGFjZSBwb3VyIGZhdXRldWlscyByb3VsYW50cycsXG4gICAgaXQ6ICdab25hIHBlciBzZWRpZSBhIHJvdGVsbGUnLFxuICB9LFxuICBXSEVFTENIQUlSX05PX1NFQVQ6IHtcbiAgICBkZTogJ1JvbGxzdHVobHpvbmUnLFxuICAgIGVuOiAnV2hlZWxjaGFpciB6b25lJyxcbiAgICBmcjogJ0VzcGFjZSBwb3VyIGZhdXRldWlscyByb3VsYW50cycsXG4gICAgaXQ6ICdab25hIHBlciBzZWRpZSBhIHJvdGVsbGUnLFxuICB9LFxuICBXSUZJOiB7XG4gICAgZGU6ICdHcmF0aXMtSW50ZXJuZXQgbWl0IGRlciBBcHAgU0JCIEZyZWVTdXJmJyxcbiAgICBlbjogJ0ZyZWUgaW50ZXJuZXQgd2l0aCB0aGUgU0JCIEZyZWVTdXJmIGFwcCcsXG4gICAgZnI6ICdJbnRlcm5ldCBncmF0dWl0IGF2ZWMgbOKAmWFwcGxpIEZyZWVTdXJmIENGRicsXG4gICAgaXQ6ICdJbnRlcm5ldCBncmF0aXMgY29uIGzigJlhcHAgRnJlZVN1cmYgRkZTJyxcbiAgfSxcblxuICAvL0FERElUSU9OQUwgSU5GTyBGT1IgU0VBVFMgKFBMQUNFIFBST1BFUlRJRVMpXG4gIC8vIEBzZWUgaHR0cHM6Ly9vc2RtLmlvL3NwZWMvY2F0YWxvZy1vZi1jb2RlLWxpc3RzLyNQbGFjZVByb3BlcnR5XG4gIFBMQUNFX1BST1BFUlRJRVM6IHtcbiAgICBBSVNMRV9TRUFUOiB7XG4gICAgICBkZTogJ0dhbmcnLFxuICAgICAgZW46ICdhaXNsZScsXG4gICAgICBmcjogJ0NvdWxvaXInLFxuICAgICAgaXQ6ICdjb3JyaWRvaW8nLFxuICAgIH0sXG4gICAgJ0FJUi1DT05ESVRJT05FRCc6IHtcbiAgICAgIGRlOiAnS2xpbWF0aXNpZXJ0ZXIgQmVyZWljaCcsXG4gICAgICBlbjogJ2Fpci1jb25kaXRpb25lZCBhcmVhJyxcbiAgICAgIGZyOiAnWm9uZSBjbGltYXRpc8OpZScsXG4gICAgICBpdDogJ2FyZWEgY2xpbWF0aXp6YXRhJyxcbiAgICB9LFxuICAgIEFOWV9TRUFUOiB7XG4gICAgICBkZTogJ29wdGlvbmFsZSBBdXN3YWhsJyxcbiAgICAgIGVuOiAnb3B0aW9uYWwgc2VsZWN0aW9uJyxcbiAgICAgIGZyOiAnc8OpbGVjdGlvbiBmYWN1bHRhdGl2ZScsXG4gICAgICBpdDogJ3NlbGV6aW9uZSBvcHppb25hbGUnLFxuICAgIH0sXG4gICAgQklTVFJPOiB7IGRlOiAnQmlzdHJvJywgZW46ICdiaXN0cm8nLCBmcjogJ0Jpc3RybycsIGl0OiAnYmlzdHLDsicgfSxcbiAgICBCSUNZQ0xFOiB7IGRlOiAnVmVsbycsIGVuOiAnYmljeWNsZScsIGZyOiAnVsOpbG8nLCBpdDogJ2JpY2ljbGV0dGUnIH0sXG4gICAgQklDWUNMRV9MT1c6IHtcbiAgICAgIGRlOiAnVmVsb2hha2VuIHRpZWYnLFxuICAgICAgZW46ICdiaWN5Y2xlIGhvb2sgbG93JyxcbiAgICAgIGZyOiAnQ3JvY2hldHMgcG91ciB2w6lsb3MgYWJhaXNzw6lzJyxcbiAgICAgIGl0OiAnZ2FuY2lvIHBlciBiaWNpY2xldHRlIGFiYmFzc2FyZScsXG4gICAgfSxcbiAgICBCSUNZQ0xFX01JRERMRToge1xuICAgICAgZGU6ICdWZWxvaGFrZW4gbWl0dGVsJyxcbiAgICAgIGVuOiAnYmljeWNsZSBob29rIG1lZGl1bScsXG4gICAgICBmcjogJ0Nyb2NoZXRzIHBvdXIgdsOpbG9zIG1veWVucycsXG4gICAgICBpdDogJ2dhbmNpbyBwZXIgYmljaWNsZXR0ZSBtZWRpbycsXG4gICAgfSxcbiAgICBCSUNZQ0xFX0hJR0g6IHtcbiAgICAgIGRlOiAnVmVsb2hha2VuIGhvY2gnLFxuICAgICAgZW46ICdiaWN5Y2xlIGhvb2sgaGlnaCcsXG4gICAgICBmcjogJ0Nyb2NoZXRzIHBvdXIgdsOpbG9zIHN1csOpbGV2w6lzJyxcbiAgICAgIGl0OiAnZ2FuY2lvIHBlciBiaWNpY2xldHRlIGFsdG8nLFxuICAgIH0sXG4gICAgQlVTSU5FU1M6IHsgZGU6ICdCdXNpbmVzcycsIGVuOiAnYnVzaW5lc3MnLCBmcjogJ0J1c2luZXNzJywgaXQ6ICdidXNpbmVzcycgfSxcbiAgICBCVVNJTkVTU19DT01GT1JUOiB7XG4gICAgICBkZTogJ0J1c2luZXNzIGNvbWZvcnQnLFxuICAgICAgZW46ICdidXNpbmVzcyBDb21mb3J0JyxcbiAgICAgIGZyOiAnQnVzaW5lc3MgQ29uZm9ydCcsXG4gICAgICBpdDogJ2J1c2luZXNzIENvbWZvcnQnLFxuICAgIH0sXG4gICAgQ0FCSU44OiB7IGRlOiAnR3J1cHBlbicsIGVuOiAnZ3JvdXBzJywgZnI6ICdHcm91cGVzJywgaXQ6ICdncnVwcGknIH0sXG4gICAgQ0FSX0xBUkdFOiB7XG4gICAgICBkZTogJ0ZhaHJ6ZXVnIG1pdCBlaW5lciBMw6RuZ2Ugendpc2NoZW4gNCw0Mm0gdW5kIDUsM20gdW5kIGVpbmVyIERhY2hicmVpdGUgendpc2NoZW4gMSwzNm0gdW5kIDEsNTVtJyxcbiAgICAgIGVuOiAnVmVoaWNsZSB3aXRoIGEgbGVuZ3RoIGJldHdlZW4gNC40Mm0gYW5kIDUuM20gYW5kIGEgcm9vZiB3aWR0aCBiZXR3ZWVuIDEuMzZtIGFuZCAxLjU1bScsXG4gICAgICBmcjogJ1bDqWhpY3VsZSBk4oCZdW5lIGxvbmd1ZXVyIGNvbXByaXNlIGVudHJlIDQsNDJtIGV0IDUsM20gZXQgZOKAmXVuZSBsYXJnZXVyIGRlIHRvaXQgY29tcHJpc2UgZW50cmUgMSwzNm0gZXQgMSw1NW0nLFxuICAgICAgaXQ6ICdWZWljb2xpIGNvbiB1bmEgbHVuZ2hlenphIGNvbXByZXNhIHRyYSA0LDQybSBlIDUsM20gZSB1bmEgbGFyZ2hlenphIGRlbCB0ZXR0byBjb21wcmVzYSB0cmEgMSwzNm0gZSAxLDU1bScsXG4gICAgfSxcbiAgICBDQVJfU01BTEw6IHtcbiAgICAgIGRlOiAnRmFocnpldWcgbWl0IGVpbmVyIEzDpG5nZSB6d2lzY2hlbiA0LDQybSB1bmQgNSwzbSB1bmQgZWluZXJEYWNoYnJlaXRlIGJpcyAxLDM1bScsXG4gICAgICBlbjogJ1ZlaGljbGUgd2l0aCBhIGxlbmd0aCBiZXR3ZWVuIDQuNDJtIGFuZCA1LjNtIGFuZCBhIHJvb2Ygd2lkdGggb2YgdXAgdG8gMS4zNW0nLFxuICAgICAgZnI6ICdWw6loaWN1bGUgZOKAmXVuZSBsb25ndWV1ciBjb21wcmlzZSBlbnRyZSA0LDQybSBldCA1LDNtIGV0IGTigJl1bmUgbGFyZ2V1ciBkZSB0b2l0IGluZsOpcmlldXJlIG91IMOpZ2FsZSDDoCAxLDM1bScsXG4gICAgICBpdDogJ1ZlaWNvbG8gY29uIHVuYSBsdW5naGV6emEgY29tcHJlc2EgdHJhIDQsNDJtIGUgNSwzbSBlIHVuYWxhcmdoZXp6YSBkZWwgdGV0dG8gZmlubyBhIDEsMzVtJyxcbiAgICB9LFxuICAgIENBUlJFOiB7IGRlOiAnQ2FycsOpJywgZW46ICdDYXJyw6knLCBmcjogJ0NhcnLDqScsIGl0OiAnQ2FycsOpJyB9LFxuICAgIENISUxEUkVOX0FSRUE6IHtcbiAgICAgIGRlOiAnS2luZGVyYWJ0ZWlsJyxcbiAgICAgIGVuOiAnY2hpbGRyZW7igJlzIGNvbXBhcnRtZW50JyxcbiAgICAgIGZyOiAnQ29tcGFydGltZW50IGVuZmFudHMnLFxuICAgICAgaXQ6ICdjb21wYXJ0aW1lbnRvIHBlciBiYW1iaW5pJyxcbiAgICB9LFxuICAgIENMVUI6IHsgZGU6ICdDbHViJywgZW46ICdDbHViJywgZnI6ICdDbHViJywgaXQ6ICdDbHViJyB9LFxuICAgIENMVUJfMjogeyBkZTogJ0NsdWIgRHVvJywgZW46ICdDbHViIER1bycsIGZyOiAnQ2x1YiBEdW8nLCBpdDogJ0NsdWIgRHVvJyB9LFxuICAgIENMVUJfNDogeyBkZTogJ0NsdWIgNCcsIGVuOiAnQ2x1YiA0JywgZnI6ICdDbHViIDQnLCBpdDogJ0NsdWIgNCcgfSxcbiAgICBDT01QQVJUTUVOVDoge1xuICAgICAgZGU6ICdTZWl0ZW5nYW5nJyxcbiAgICAgIGVuOiAnc2lkZSBhaXNsZScsXG4gICAgICBmcjogJ0NvdWxvaXIgbGF0w6lyYWwnLFxuICAgICAgaXQ6ICdjb3JyaWRvaW8gbGF0ZXJhbGUnLFxuICAgIH0sXG4gICAgQ09NUExFVEU6IHtcbiAgICAgIGRlOiAnUHJpdmF0YWJ0ZWlsJyxcbiAgICAgIGVuOiAncHJpdmF0ZSBjb21wYXJ0bWVudCcsXG4gICAgICBmcjogJ0NvbXBhcnRpbWVudCBwcml2w6knLFxuICAgICAgaXQ6ICdjb21wYXJ0aW1lbnRvIHByaXZhdG8nLFxuICAgIH0sXG4gICAgQ09ORkVSRU5DRToge1xuICAgICAgZGU6ICdLb25mZXJlbnpyYXVtJyxcbiAgICAgIGVuOiAnY29uZmVyZW5jZSByb29tJyxcbiAgICAgIGZyOiAnQ29tcGFydGltZW50IGNvbmbDqXJlbmNlJyxcbiAgICAgIGl0OiAnY29tcGFydGltZW50byBDb25mZXJlbnphJyxcbiAgICB9LFxuICAgIENPTk5FQ1RJTkdfRE9PUjoge1xuICAgICAgZGU6ICdBYnRlaWwgbWl0IFZlcmJpbmR1bmdzdMO8cicsXG4gICAgICBlbjogJ2NvbXBhcnRtZW50IHdpdGggY29ubmVjdGluZyBkb29yJyxcbiAgICAgIGZyOiAnQ29tcGFydGltZW50IGF2ZWMgcG9ydGUgY29tbXVuaWNhbnRlJyxcbiAgICAgIGl0OiAnY29tcGFydGltZW50byBjb24gcG9ydGEgZGkgY29sbGVnYW1lbnRvJyxcbiAgICB9LFxuICAgIENPVUNIRVRURV8yOiB7IGRlOiAnMmVyJywgZW46ICcyIGJlcnRocycsIGZyOiAnMiBwbGFjZXMnLCBpdDogJzIgcG9zdGknIH0sXG4gICAgQ09VQ0hFVFRFXzQ6IHsgZGU6ICc0ZXInLCBlbjogJzQgYmVydGhzJywgZnI6ICc0IHBsYWNlcycsIGl0OiAnNCBwb3N0aScgfSxcbiAgICBDT1VDSEVUVEVfNTogeyBkZTogJzVlcicsIGVuOiAnNSBiZXJ0aHMnLCBmcjogJzUgcGxhY2VzJywgaXQ6ICc1IHBvc3RpJyB9LFxuICAgIENPVUNIRVRURV82OiB7IGRlOiAnNmVyJywgZW46ICc2IGJlcnRocycsIGZyOiAnNiBwbGFjZXMnLCBpdDogJzYgcG9zdGknIH0sXG4gICAgQ09VQ0hFVFRFX0NPTUZPUlRfNDoge1xuICAgICAgZGU6ICc0ZXIgY29tZm9ydCcsXG4gICAgICBlbjogJzQgYmVydGhzIGNvbWZvcnQnLFxuICAgICAgZnI6ICc0IHBsYWNlcyBjb25mb3J0JyxcbiAgICAgIGl0OiAnNCBwb3N0aSBjb21mb3J0JyxcbiAgICB9LFxuICAgIENPVUNIRVRURV9DT01GT1JUXzU6IHtcbiAgICAgIGRlOiAnNWVyIGNvbWZvcnQnLFxuICAgICAgZW46ICc1IGJlcnRocyBjb21mb3J0JyxcbiAgICAgIGZyOiAnNSBwbGFjZXMgY29uZm9ydCcsXG4gICAgICBpdDogJzUgcG9zdGkgY29tZm9ydCcsXG4gICAgfSxcbiAgICBDT1VDSEVUVEVfQ09NRk9SVF82OiB7XG4gICAgICBkZTogJzZlcicsXG4gICAgICBlbjogJzYgYmVydGhzIGNvbWZvcnQnLFxuICAgICAgZnI6ICc2IHBsYWNlcyBjb25mb3J0JyxcbiAgICAgIGl0OiAnNiBwb3N0aSBjb21mb3J0JyxcbiAgICB9LFxuICAgIENPVUNIRVRURV9QUk1fMjogeyBkZTogJzJlciBQUk0nLCBlbjogJzIgYmVydGhzIFBSTScsIGZyOiAnMiBwbGFjZXMgUE1SJywgaXQ6ICcyIHBvc3RpIFBSTScgfSxcbiAgICBDT1VDSEVUVEVfUFJNXzM6IHsgZGU6ICczZXIgUFJNJywgZW46ICczIGJlcnRocyBQUk0nLCBmcjogJzMgcGxhY2VzIFBNUicsIGl0OiAnMyBwb3N0aSBQUk0nIH0sXG4gICAgQ09VQ0hFVFRFX1BSTV80OiB7IGRlOiAnNGVyIFBSTScsIGVuOiAnNCBiZXJ0aHMgUFJNJywgZnI6ICc0IHBsYWNlcyBQTVInLCBpdDogJzQgcG9zdGkgUFJNJyB9LFxuICAgIERPVUJMRTogeyBkZTogJ0RvdWJsZScsIGVuOiAnRG91YmxlJywgZnI6ICdEb3VibGUnLCBpdDogJ0RvdWJsZScgfSxcbiAgICBET1VCTEVfV0M6IHtcbiAgICAgIGRlOiAnRG91YmxlIG1pdCBXQycsXG4gICAgICBlbjogJ0RvdWJsZSB3aXRoIFdDJyxcbiAgICAgIGZyOiAnRG91YmxlIGF2ZWMgV0MnLFxuICAgICAgaXQ6ICdEb3VibGUgY29uIFdDJyxcbiAgICB9LFxuICAgIERPVUJMRV9TV0M6IHtcbiAgICAgIGRlOiAnRG91YmxlIERlbHV4ZScsXG4gICAgICBlbjogJ0RvdWJsZSBEZWx1eGUnLFxuICAgICAgZnI6ICdEb3VibGUgRGVsdXhlJyxcbiAgICAgIGl0OiAnRG91YmxlIERlbHV4ZScsXG4gICAgfSxcbiAgICBET1VCTEVfUzoge1xuICAgICAgZGU6ICdEb3VibGUgbWl0IER1c2NoZScsXG4gICAgICBlbjogJ0RvdWJsZSB3aXRoIHNob3dlcicsXG4gICAgICBmcjogJ0RvdWJsZSBhdmVjIGRvdWNoZScsXG4gICAgICBpdDogJ0RvdWJsZSBjb24gRG9jY2lhJyxcbiAgICB9LFxuICAgIEVBU1lfQUNDRVNTOiB7IGRlOiAnUFJNJywgZW46ICdQUk0nLCBmcjogJ1BSTScsIGl0OiAnUFJNJyB9LFxuICAgIEZBQ0VfMl9GQUNFOiB7XG4gICAgICBkZTogJ0R1byB2aXMgw6AgdmlzJyxcbiAgICAgIGVuOiAnRHVvIHZpcyDDoCB2aXMnLFxuICAgICAgZnI6ICdEdW8gdmlzIMOgIHZpcycsXG4gICAgICBpdDogJ0R1byB2aXMgw6AgdmlzJyxcbiAgICB9LFxuICAgIEVYQ0VMTEVOQ0U6IHsgZGU6ICdFeGNlbGxlbmNlJywgZW46ICdleGNlbGxlbmNlJywgZnI6ICdleGNlbGxlbmNlJywgaXQ6ICdleGNlbGxlbmNlJyB9LFxuICAgIEZBTUlMWToge1xuICAgICAgZGU6ICdGYW1pbGllbmFidGVpbCcsXG4gICAgICBlbjogJ2ZhbWlseSB6b25lJyxcbiAgICAgIGZyOiAnY29tcGFydGVtZW50IGZhbWlsbGUnLFxuICAgICAgaXQ6ICdjb21wYXJ0aW1lbnRlIGZhbWlsaWEnLFxuICAgIH0sXG4gICAgRlJPTlRfVklFVzogeyBkZTogJ1ZJUCcsIGVuOiAnVklQJywgZnI6ICdWSVAnLCBpdDogJ1ZJUCcgfSxcbiAgICBISVNUT1JJQ19DT0FDSDogeyBkZTogJ0hpc3RvcmljJywgZW46ICdoaXN0b3JpYycsIGZyOiAnaGlzdG9yaXF1ZScsIGl0OiAnaGlzdG9yaWMnIH0sXG4gICAgSU5DTFVESU5HX01FQUw6IHtcbiAgICAgIGRlOiAnTWFobHplaXQgaW5iZWdyaWZmZW4nLFxuICAgICAgZW46ICdtZWFsIGluY2x1ZGVkJyxcbiAgICAgIGZyOiAncmVwYXMgaW5jbHVzJyxcbiAgICAgIGl0OiAncGFzdG8gaW5jbHVzbycsXG4gICAgfSxcbiAgICBJTkNMVURJTkdfRFJJTks6IHtcbiAgICAgIGRlOiAnV2lsbGtvbW1lbnNnZXRyw6RuayBpbmJlZ3JpZmZlbicsXG4gICAgICBlbjogJ3dlbGNvbWUgZHJpbmsgaW5jbHVkZWQnLFxuICAgICAgZnI6ICdib2lzc29uIGRlIGJpZW52ZW51ZSBpbmNsdXNlJyxcbiAgICAgIGl0OiAnYmV2YW5kYSBkaSBiZW52ZW51dG8gaW5jbHVzbycsXG4gICAgfSxcbiAgICBLSU9TUVVFOiB7IGRlOiAnS2lvc2snLCBlbjogJ2tpb3NrJywgZnI6ICdraW9zcXVlJywgaXQ6ICdjaGlvc2NvJyB9LFxuICAgIExBRElFUzoge1xuICAgICAgZGU6ICdEYW1lbmFidGVpbCcsXG4gICAgICBlbjogJ3dvbWVuIENvbXBhcnRtZW50JyxcbiAgICAgIGZyOiAnY29tcGFydGltZW50IGZlbW1lcycsXG4gICAgICBpdDogJ2NvbXBhcnRpbWVudG8gZG9ubmUnLFxuICAgIH0sXG4gICAgTE9XRVJfQkVEOiB7IGRlOiAndW50ZW4nLCBlbjogJ2F0IHRoZSBib3R0b20nLCBmcjogJ2VuIGJhcycsIGl0OiAnaW4gYmFzc28nIH0sXG4gICAgTE9XRVJfREVDSzogeyBkZTogJ3VudGVuJywgZW46ICdhdCB0aGUgYm90dG9tJywgZnI6ICdlbiBiYXMnLCBpdDogJ2luIGJhc3NvJyB9LFxuICAgIE1FTjoge1xuICAgICAgZGU6ICdIZXJyZW5hYnRlaWwnLFxuICAgICAgZW46ICdnZW50cyBjb21wYXJ0bWVudCcsXG4gICAgICBmcjogJ2NvbXBhcnRpbWVudCBob21tZXMnLFxuICAgICAgaXQ6ICdjb21wYXJ0aW1lbnRvIFVvbWluaScsXG4gICAgfSxcbiAgICBNSURETEVfQkVEOiB7IGRlOiAnTWl0dGUnLCBlbjogJ21pZGRsZScsIGZyOiAnbWlsaWV1JywgaXQ6ICdjZW50cm8nIH0sXG4gICAgTUlERExFX0RFQ0s6IHsgZGU6ICdNaXR0ZScsIGVuOiAnbWlkZGxlJywgZnI6ICdtaWxpZXUnLCBpdDogJ2NlbnRybycgfSxcbiAgICBNSURETEVfU0VBVDogeyBkZTogJ01pdHRlJywgZW46ICdtaWRkbGUnLCBmcjogJ21pbGlldScsIGl0OiAnY2VudHJvJyB9LFxuICAgIE1JTklfU1VJVEU6IHtcbiAgICAgIGRlOiAnTWluaSBDYWJpbicsXG4gICAgICBlbjogJ21pbmkgQ2FiaW4nLFxuICAgICAgZnI6ICdNaW5pIENhYmluJyxcbiAgICAgIGl0OiAnTWluaSBDYWJpbicsXG4gICAgfSxcbiAgICBNSVhFRDoge1xuICAgICAgZGU6ICdnZW1pc2NodGVzIEFidGVpbCcsXG4gICAgICBlbjogJ21peGVkIGNvbXBhcnRtZW50JyxcbiAgICAgIGZyOiAnY29tcGFydGltZW50IG1peHRlJyxcbiAgICAgIGl0OiAnY29tcGFydGltZW50byBtaXN0bycsXG4gICAgfSxcbiAgICBNT1RPUl9DWUNMRTogeyBkZTogJ01vdG9ycmFkJywgZW46ICdtb3RvcmN5Y2xlJywgZnI6ICdtb3RvJywgaXQ6ICdtb3RvY2ljbGV0dGEnIH0sXG4gICAgTU9UT1JfQ1lDTEVfU0M6IHtcbiAgICAgIGRlOiAnTW90b3JyYWQgbWl0IFNlaXRlbndhZ2VuJyxcbiAgICAgIGVuOiAnbW90b3JjeWNsZSB3aXRoIHNpZGVjYXInLFxuICAgICAgZnI6ICdtb3RvIGF2ZWMgc2lkZS1jYXInLFxuICAgICAgaXQ6ICdtb3RvY2ljbGV0dGEgY29uIHNpZGVjYXInLFxuICAgIH0sXG4gICAgTkVBUl9BTklNQUxTOiB7XG4gICAgICBkZTogJ25haCBhbSBIYXVzdGllcicsXG4gICAgICBlbjogJ2Nsb3NlIHRvIHBldCcsXG4gICAgICBmcjogJ3Byb2NoZSBkZSBs4oCZYW5pbWFsIGRlIGNvbXBhZ25pZScsXG4gICAgICBpdDogJ3ZpY2lubyBhbGzigJlhbmltYWxlIGRvbWVzdGljbycsXG4gICAgfSxcbiAgICBORUFSX0FTU0lTVEFOVF9ET0dfQVJFQToge1xuICAgICAgZGU6ICduYWggYW0gQXNzaXN0ZW56aHVuZCcsXG4gICAgICBlbjogJ2Nsb3NlIHRvIGFzc2lzdGFuY2UgZG9nJyxcbiAgICAgIGZyOiAncHLDqHMgZHUgY2hpZW4gZOKAmWFzc2lzdGFuY2UnLFxuICAgICAgaXQ6ICd2aWNpbm8gYWwgY2FuZSBkYSBhc3Npc3RlbnphJyxcbiAgICB9LFxuICAgIE5FQVJfRElOSU5HOiB7XG4gICAgICBkZTogJ25haCBhbSBTcGVpc2V3YWdlbicsXG4gICAgICBlbjogJ2Nsb3NlIHRvIGRpbmluZyBjYXInLFxuICAgICAgZnI6ICfDoCBwcm94aW1pdMOpIGRlIGxhIHZvaXR1cmUtcmVzdGF1cmFudCcsXG4gICAgICBpdDogJ25lbGxlIHZpY2luYW56ZSBkZWxsYSBjYXJyb3p6YSByaXN0b3JhbnRldicsXG4gICAgfSxcbiAgICBORUFSX1BMQVlfQVJFQToge1xuICAgICAgZGU6ICduYWggYW0gU3BpZWxwbGF0eicsXG4gICAgICBlbjogJ2Nsb3NlIHRvIHBsYXlncm91bmQnLFxuICAgICAgZnI6ICfDoCBwcm94aW1pdMOpIGRlIGzigJlhaXJlIGRlIGpldXgnLFxuICAgICAgaXQ6ICd2aWNpbm8gYWwgcGFyY28gZ2lvY2hpJyxcbiAgICB9LFxuICAgIE5FQVJfQklDWUNMRV9BUkVBOiB7XG4gICAgICBkZTogJ25haCBhbSBWZWxvcGxhdHonLFxuICAgICAgZW46ICdjbG9zZSB0byBiaWtlIHNwYWNlJyxcbiAgICAgIGZyOiAnw6AgcHJveGltaXTDqSBkZSBsYSBwbGFjZSBwb3VyIHbDqWxvJyxcbiAgICAgIGl0OiAndmljaW5vIGFsIHBvc3RvIGJpY2knLFxuICAgIH0sXG4gICAgTkVBUl9XSEVFTENIQUlSOiB7XG4gICAgICBkZTogJ25haCBhbSBSb2xsc3R1aGxwbGF0eicsXG4gICAgICBlbjogJ2Nsb3NlIHRvIHdoZWVsY2hhaXIgc3BhY2UnLFxuICAgICAgZnI6ICfDoCBwcm94aW1pdMOpIGRlIGzigJllbXBsYWNlbWVudCBwb3VyIGZhdXRldWlscyByb3VsYW50cycsXG4gICAgICBpdDogJ3ZpY2lubyBhbCBwb3N0byBwZXIgc2VkaWUgYSByb3RlbGxlJyxcbiAgICB9LFxuICAgIE9QRU5fU1BBQ0U6IHtcbiAgICAgIGRlOiAnTWl0dGVsZ2FuZycsXG4gICAgICBlbjogJ21pZGRsZSBhaXNsZScsXG4gICAgICBmcjogJ2NvdWxvaXIgY2VudHJhbCcsXG4gICAgICBpdDogJ2NvcnJpZG9pbyBjZW50cmFsZScsXG4gICAgfSxcbiAgICBQQU5PUkFNQToge1xuICAgICAgZGU6ICdQYW5vcmFtYXdhZ2VuJyxcbiAgICAgIGVuOiAncGFub3JhbWEgY29hY2gnLFxuICAgICAgZnI6ICd2b2l0dXJlIHBhbm9yYW1pcXVlJyxcbiAgICAgIGl0OiAnY2Fycm96emEgcGFub3JhbWljYScsXG4gICAgfSxcbiAgICBQSE9ORTogeyBkZTogJ01vYmlsZScsIGVuOiAnbW9iaWxlJywgZnI6ICdtb2JpbGUnLCBpdDogJ21vYmlsZScgfSxcbiAgICBQT1dFUjoge1xuICAgICAgZGU6ICdNaXQgU3RlY2tkb3NlJyxcbiAgICAgIGVuOiAnd2l0aCBwb3dlciBzb2NrZXQnLFxuICAgICAgZnI6ICdhdmVjIHByaXNlJyxcbiAgICAgIGl0OiAnY29uIHByZXNhIGVsZXR0cmljYScsXG4gICAgfSxcbiAgICBQUkFNOiB7XG4gICAgICBkZTogJ0tpbmRlcndhZ2VuJyxcbiAgICAgIGVuOiAnY2xvc2UgdG8gc3BhY2UgZm9yIHN0cm9sbGVycycsXG4gICAgICBmcjogJ3BvdXNzZXR0ZXMnLFxuICAgICAgaXQ6ICdwYXNzZWdnaW5vJyxcbiAgICB9LFxuICAgIFBSQU1fV0lUSF9TRUFUOiB7XG4gICAgICBkZTogJ25haCBhbSBQbGF0eiBmw7xyIEtpbmRlcndhZ2VuJyxcbiAgICAgIGVuOiAnU2VhdCB3aXRoIHNwYWNlIGZvciBhIHByYW0nLFxuICAgICAgZnI6ICdwcsOocyBkZSBs4oCZZXNwYWNlIHBvdXIgbGVzIHBvdXNzZXR0ZXMnLFxuICAgICAgaXQ6ICd2aWNpbm8gYWwgcG9zdG8gcGVyIHBhc3NlZ2dpbmknLFxuICAgIH0sXG4gICAgUFJFTUlVTTogeyBkZTogJ1ByZW1pdW0nLCBlbjogJ3ByZW1pdW0nLCBmcjogJ3ByZW1pdW0nLCBpdDogJ3ByZW1pdW0nIH0sXG4gICAgUkVTVEFVUkFOVDogeyBkZTogJ1Jlc3RhdXJhbnQnLCBlbjogJ3Jlc3RhdXJhbnQnLCBmcjogJ3Jlc3RhdXJhbnQnLCBpdDogJ3Jpc3RvcmFudGUnIH0sXG4gICAgUkVTVFJJQ1RFRF9WSUVXOiB7XG4gICAgICBkZTogJ0ZlbnN0ZXIgbWl0IGVpbmdlc2NocsOkbmt0ZXIgU2ljaHQnLFxuICAgICAgZW46ICd3aW5kb3dzIHdpdGggcmVzdHJpY3RlZCB2aXNpYmlsaXR5JyxcbiAgICAgIGZyOiAnZmVuw6p0cmVzIGF2ZWMgdmlzaWJpbGl0w6kgcsOpZHVpdGUnLFxuICAgICAgaXQ6ICdmaW5lc3RyZSBjb24gdmlzaWJpbGl0w6AgbGltaXRhdGEnLFxuICAgIH0sXG4gICAgU0FMT046IHsgZGU6ICdTYWxvbicsIGVuOiAnU2Fsb24nLCBmcjogJ3NhbG9uJywgaXQ6ICdTYWxvbicgfSxcbiAgICBTSUxFTkNFOiB7XG4gICAgICBkZTogJ1J1aGVhYnRlaWwnLFxuICAgICAgZW46ICdxdWlldCBjb21wYXJ0bWVudCcsXG4gICAgICBmcjogJ2NvbXBhcnRpbWVudCBzaWxlbmNlJyxcbiAgICAgIGl0OiAnY29tcGFydGltZW50byBkZWwgc2lsZW56aW8nLFxuICAgIH0sXG4gICAgU0lOR0xFOiB7IGRlOiAnU2luZ2xlJywgZW46ICdTaW5nbGUnLCBmcjogJ1NpbmdsZScsIGl0OiAnU2luZ2xlJyB9LFxuICAgIFNJTkdMRV9XQzoge1xuICAgICAgZGU6ICdTaW5nbGUgbWl0IFdDJyxcbiAgICAgIGVuOiAnU2luZ2xlIHdpdGggV0MnLFxuICAgICAgZnI6ICdTaW5nbGUgYXZlYyBXQycsXG4gICAgICBpdDogJ1NpbmdsZSBjb24gV0MnLFxuICAgIH0sXG4gICAgU0lOR0xFX1NXQzoge1xuICAgICAgZGU6ICdTaW5nbGUgRGVsdXhlJyxcbiAgICAgIGVuOiAnU2luZ2xlIERlbHV4ZScsXG4gICAgICBmcjogJ1NpbmdsZSBEZWx1eGUnLFxuICAgICAgaXQ6ICdTaW5nbGUgRGVsdXhlJyxcbiAgICB9LFxuICAgIFNJREVfQllfU0lERToge1xuICAgICAgZGU6ICdEdW8gY8O0dGUgw6AgY8O0dGUnLFxuICAgICAgZW46ICdEdW8gY8O0dGUgw6AgY8O0dGUnLFxuICAgICAgZnI6ICdEdW8gY8O0dGUgw6AgY8O0dGUnLFxuICAgICAgaXQ6ICdEdW8gY8O0dGUgw6AgY8O0dGUnLFxuICAgIH0sXG4gICAgU0xFRVBFUkVUVEU6IHsgZGU6ICdTbGVlcGVyZXR0ZScsIGVuOiAnU2xlZXBlcmV0dGUnLCBmcjogJ1NsZWVwZXJldHRlJywgaXQ6ICdTbGVlcGVyZXR0ZScgfSxcbiAgICBTT0xPOiB7XG4gICAgICBkZTogJ2ZyZWllciBOZWJlbnNpdHonLFxuICAgICAgZW46ICdmcmVlIHNpZGUgc2VhdCcsXG4gICAgICBmcjogJ3Npw6hnZSB2b2lzaW4gbGlicmUnLFxuICAgICAgaXQ6ICdzZWRpbGUgc2Vjb25kYXJpbyBsaWJlcm8nLFxuICAgIH0sXG4gICAgU09MT19DT006IHtcbiAgICAgIGRlOiAnZnJlaWVyIE5lYmVuc2l0eicsXG4gICAgICBlbjogJ2ZyZWUgc2lkZSBzZWF0JyxcbiAgICAgIGZyOiAnc2nDqGdlIHZvaXNpbiBsaWJyZScsXG4gICAgICBpdDogJ3NlZGlsZSBzZWNvbmRhcmlvIGxpYmVybycsXG4gICAgfSxcbiAgICBTTEVFUEVSOiB7XG4gICAgICBkZTogJ1NpbmdsZSAoa2xlaW4pJyxcbiAgICAgIGVuOiAnU2luZ2xlIChzbWFsbCknLFxuICAgICAgZnI6ICdTaW5nbGUgKHBldGl0KScsXG4gICAgICBpdDogJ1NpbmdsZSAocGljY29sbyknLFxuICAgIH0sXG4gICAgVEFOREVNOiB7IGRlOiAnVGFuZGVtJywgZW46ICd0YW5kZW0nLCBmcjogJ3RhbmRlbScsIGl0OiAndGFuZGVtJyB9LFxuICAgIFRBQkxFOiB7IGRlOiAnVGlzY2gnLCBlbjogJ3RhYmxlJywgZnI6ICd0YWJsZScsIGl0OiAndGF2b2xvJyB9LFxuICAgIFRPVVJJU1RfU0xFRVBFUl8yOiB7IGRlOiAnRHVvJywgZW46ICdEdW8nLCBmcjogJ0R1bycsIGl0OiAnRHVvJyB9LFxuICAgIFRPVVJJU1RfU0xFRVBFUl8zOiB7IGRlOiAnM2VyJywgZW46ICdUcmlwbGUnLCBmcjogJ1RyaXBsZScsIGl0OiAnVHJpcGxlJyB9LFxuICAgIFRPVVJJU1RfU0xFRVBFUl8zX1dDOiB7XG4gICAgICBkZTogJzNlciBtaXQgV0MnLFxuICAgICAgZW46ICdUcmlwbGUgd2l0aCBXQycsXG4gICAgICBmcjogJzMgcGxhY2VzIGF2ZWMgV0MnLFxuICAgICAgaXQ6ICczIHBvc3RpIGNvbiBXQycsXG4gICAgfSxcbiAgICBUT1VSSVNUX1NMRUVQRVJfM19TV0M6IHtcbiAgICAgIGRlOiAnM2VyIERlbHV4ZScsXG4gICAgICBlbjogJ1RyaXBsZSBEZWx1eGUnLFxuICAgICAgZnI6ICczIHBsYWNlcyBEZWx1eGUnLFxuICAgICAgaXQ6ICczIHBvc3RpIERlbHV4ZScsXG4gICAgfSxcbiAgICBUT1VSSVNUX1NMRUVQRVJfNDogeyBkZTogJzRlcicsIGVuOiAnNC1iZXJ0aCcsIGZyOiAnNCBwbGFjZXMnLCBpdDogJzQgcG9zdGknIH0sXG4gICAgVFJBVkVMX0RJUkVDVElPTl9UUkFOU1ZFUlNFTFk6IHtcbiAgICAgIGRlOiAncXVlciB6dXIgRmFocnRyaWNodHVuZycsXG4gICAgICBlbjogJ3RyYW5zdmVyc2VseSB0byB0cmF2ZWwgZGlyZWN0aW9uJyxcbiAgICAgIGZyOiAnVHJhbnN2ZXJzYWxlbWVudCDDoCBsYSBkaXJlY3Rpb24gZHUgdm95YWdlJyxcbiAgICAgIGl0OiAndHJhc3ZlcnNhbG1lbnRlIGFsbGEgZGlyZXppb25lIGRpIHZpYWdnaW8nLFxuICAgIH0sXG4gICAgVFJBVkVMX0RJUkVDVElPTl9JTl9ESVJFQ1RJT046IHtcbiAgICAgIGRlOiAnaW4gRmFocnRyaWNodHVuZycsXG4gICAgICBlbjogJ2luIHRyYXZlbCBkaXJlY3Rpb24nLFxuICAgICAgZnI6ICdEYW5zIGxlIHNlbnMgZGUgbGEgbWFyY2hlJyxcbiAgICAgIGl0OiAnbmVsbGEgZGlyZXppb25lIGRpIG1hcmNpYScsXG4gICAgfSxcbiAgICBUUkFWRUxfRElSRUNUSU9OX0lOX09QUE9TSVRFX0RJUkVDVElPTjoge1xuICAgICAgZGU6ICdnZWdlbiBkaWUgRmFocnRyaWNodHVuZycsXG4gICAgICBlbjogJ2luIG9wcG9zaXRlIGRpcmVjdGlvbicsXG4gICAgICBmcjogJ0RhbnMgbGUgc2VucyBpbnZlcnNlIGRlIGxhIG1hcmNoZScsXG4gICAgICBpdDogJ25lbGxhIGRpcmV6aW9uZSBvcHBvc3RhIGFsbGEgbWFyY2lhJyxcbiAgICB9LFxuICAgIFVQUEVSX0JFRDogeyBkZTogJ29iZW4nLCBlbjogJ2F0IHRoZSB0b3AnLCBmcjogJ2VuIGhhdXQnLCBpdDogJ2luIGFsdG8nIH0sXG4gICAgVVBQRVJfREVDSzogeyBkZTogJ29iZW4nLCBlbjogJ2F0IHRoZSB0b3AnLCBmcjogJ2VuIGhhdXQnLCBpdDogJ2luIGFsdG8nIH0sXG4gICAgVklERU86IHtcbiAgICAgIGRlOiAnbWl0IFVudGVyaGFsdHVuZ3NzeXRlbScsXG4gICAgICBlbjogJ3dpdGggZW50ZXJ0YWlubWVudCBzeXN0ZW0nLFxuICAgICAgZnI6ICdhdmVjIHN5c3TDqG1lIGRlIGRpdmVydGlzc2VtZW50JyxcbiAgICAgIGl0OiAnY29uIHNpc3RlbWEgZGkgaW50cmF0dGVuaW1lbnRvJyxcbiAgICB9LFxuICAgIFdIRUVMQ0hBSVI6IHtcbiAgICAgIGRlOiAnUm9sbHN0dWhsJyxcbiAgICAgIGVuOiAnd2hlZWxjaGFpcicsXG4gICAgICBmcjogJ2ZhdXRldWlsIHJvdWxhbnQnLFxuICAgICAgaXQ6ICdzZWRpYSBhIHJvdGVsbGUnLFxuICAgIH0sXG4gICAgV0hFRUxDSEFJUl9BTkRfU0VBVDoge1xuICAgICAgZGU6ICdSb2xsc3R1aGwgbWl0IHp1c8OkdHpsaWNoZW0gU2l0enBsYXR6JyxcbiAgICAgIGVuOiAnd2hlZWxjaGFpciB3aXRoIGFkZGl0aW9uYWwgc2VhdCcsXG4gICAgICBmcjogJ2ZhdXRldWlsIHJvdWxhbnQgYXZlYyBwbGFjZSBhc3Npc2Ugc3VwcGzDqW1lbnRhaXJlJyxcbiAgICAgIGl0OiAnc2VkaWEgYSByb3RlbGxlIGNvbiBwb3N0byBhIHNlZGVyZSBhZ2dpdW50aXZvJyxcbiAgICB9LFxuICAgIFdIRUVMQ0hBSVJfTk9fU0VBVDoge1xuICAgICAgZGU6ICdSb2xsc3R1aGwgb2huZSB6dXPDpHR6bGljaGVuIFNpdHpwbGF0eicsXG4gICAgICBlbjogJ1doZWVsY2hhaXIgc3BhY2Ugd2l0aG91dCBhZGRpdGlvbmFsIHNlYXQnLFxuICAgICAgZnI6ICdmYXV0ZXVpbCByb3VsYW50IGF2ZWMgcGxhY2UgYXNzaXNlIHN1cHBsw6ltZW50YWlyZScsXG4gICAgICBpdDogJ3NlZGlhIGEgcm90ZWxsZSBjb24gcG9zdG8gYSBzZWRlcmUgYWdnaXVudGl2bycsXG4gICAgfSxcbiAgICBXSUZJOiB7IGRlOiAnV2xhbicsIGVuOiAnV2ktRmknLCBmcjogJ1dpLUZpJywgaXQ6ICdXbGFuJyB9LFxuICAgIFdJTkRPV19TRUFUOiB7XG4gICAgICBkZTogJ0ZlbnN0ZXInLFxuICAgICAgZW46ICd3aW5kb3cnLFxuICAgICAgZnI6ICdmZW7DqnRyZScsXG4gICAgICBpdDogJ2ZpbmVzdHJlJyxcbiAgICB9LFxuICAgIFdJVEhPVVRfVFJBWV9UQUJMRToge1xuICAgICAgZGU6ICdvaG5lIFRpc2NoJyxcbiAgICAgIGVuOiAnd2l0aG91dCB0YWJsZScsXG4gICAgICBmcjogJ3NhbnMgdGFibGUnLFxuICAgICAgaXQ6ICdzZW56YSB0YXZvbG8nLFxuICAgIH0sXG4gICAgV0lUSF9BTklNQUxTOiB7XG4gICAgICBkZTogJ1RpZXJlIGVybGF1YnQnLFxuICAgICAgZW46ICdhbmltYWxzIGFsbG93ZWQnLFxuICAgICAgZnI6ICdhbmltYXV4IGFkbWlzJyxcbiAgICAgIGl0OiAnYW5pbWFsaSBhbW1lc3NpJyxcbiAgICB9LFxuICAgIFdJVEhfU01BTExfQ0hJTERSRU46IHtcbiAgICAgIGRlOiAnS2xlaW5raW5kYWJ0ZWlsJyxcbiAgICAgIGVuOiAnaW5mYW50IGNvbXBhcnRtZW50JyxcbiAgICAgIGZyOiAnY29tcGFydGltZW50IHBldGl0IGVuZmFudHMnLFxuICAgICAgaXQ6ICdjb21wYXJ0aW1lbnRvIHBlciBiYW1iaW5pIHBpY2NvbGknLFxuICAgIH0sXG4gICAgV0lUSE9VVF9BTklNQUxTOiB7XG4gICAgICBkZTogJ1RpZXJlIG5pY2h0IGVybGF1YnQnLFxuICAgICAgZW46ICdwZXRzIG5vdCBhbGxvd2VkJyxcbiAgICAgIGZyOiAnYW5pbWF1eCBub24gYXV0b3Jpc8OpcycsXG4gICAgICBpdDogJ2FuaW1hbGkgbm9uIGFtbWVzc2knLFxuICAgIH0sXG4gIH0sXG4gIC8vUExBQ0UgQ09OVFJPTCBBUklBIExBQkVMXG4gIFBMQUNFX0NPTlRST0xfU0VBVF9GUkVFOiB7XG4gICAgZGU6ICdTaXR6cGxhdHogX3BhcmFtMF8gaXN0IGZyZWknLFxuICAgIGVuOiAnU2VhdCBfcGFyYW0wXyBpcyBhdmFpbGFibGUnLFxuICAgIGZyOiAnUGxhY2UgX3BhcmFtMF8gZXN0IGxpYnJlJyxcbiAgICBpdDogJ1Bvc3RvIGEgc2VkZXJlIF9wYXJhbTBfIMOoIGxpYmVybycsXG4gIH0sXG4gIFBMQUNFX0NPTlRST0xfU0VBVF9TRUxFQ1RFRDoge1xuICAgIGRlOiAnU2l0enBsYXR6IF9wYXJhbTBfIGlzdCBhdXNnZXfDpGhsdCcsXG4gICAgZW46ICdTZWF0IF9wYXJhbTBfIGhhcyBiZWVuIHNlbGVjdGVkJyxcbiAgICBmcjogJ1BsYWNlIF9wYXJhbTBfIGVzdCBzw6lsZWN0aW9ubsOpZScsXG4gICAgaXQ6ICdQb3N0byBhIHNlZGVyZSBfcGFyYW0wXyDDqCBzZWxlemlvbmF0bycsXG4gIH0sXG4gIFBMQUNFX0NPTlRST0xfQklDWUNMRV9GUkVFOiB7XG4gICAgZGU6ICdWZWxvcGxhdHogX3BhcmFtMF8gaXN0IGZyZWknLFxuICAgIGVuOiAnQmlrZSBzcGFjZSBfcGFyYW0wXyBpcyBhdmFpbGFibGUnLFxuICAgIGZyOiAnUGxhY2UgcG91ciB2w6lsbyBfcGFyYW0wXyBlc3QgbGlicmUnLFxuICAgIGl0OiAnUG9zdG8gYmljaSBfcGFyYW0wXyDDqCBsaWJlcm8nLFxuICB9LFxuICBQTEFDRV9DT05UUk9MX0JJQ1lDTEVfU0VMRUNURUQ6IHtcbiAgICBkZTogJ1ZlbG9wbGF0eiBfcGFyYW0wXyBpc3QgYXVzZ2V3w6RobHQnLFxuICAgIGVuOiAnQmlrZSBzcGFjZSBfcGFyYW0wXyBoYXMgYmVlbiBzZWxlY3RlZCcsXG4gICAgZnI6ICdQbGFjZSBwb3VyIHbDqWxvIF9wYXJhbTBfIGVzdCBzw6lsZWN0aW9ubsOpZScsXG4gICAgaXQ6ICdQb3N0byBiaWNpIF9wYXJhbTBfIMOoIHNlbGV6aW9uYXRvJyxcbiAgfSxcbiAgUExBQ0VfQ09OVFJPTF9TRUFUX1JFU1RSSUNURUQ6IHtcbiAgICBkZTogJ1NpdHpwbGF0eiBpc3QgbmljaHQgYnVjaGJhcicsXG4gICAgZW46ICdTZWF0IGNhbm5vdCBiZSByZXNlcnZlZCcsXG4gICAgZnI6ICdQbGFjZSBuZSBwZXV0IHBhcyDDqnRyZSByw6lzZXJ2w6llJyxcbiAgICBpdDogJ1Bvc3RvIGEgc2VkZXJlIG5vbiDDqCBwcmVub3RhYmlsZScsXG4gIH0sXG4gIFBMQUNFX0NPTlRST0xfQklDWUNMRV9SRVNUUklDVEVEOiB7XG4gICAgZGU6ICdWZWxvcGxhdHogaXN0IG5pY2h0IGJ1Y2hiYXInLFxuICAgIGVuOiAnQmlrZSBzcGFjZSBjYW5ub3QgYmUgcmVzZXJ2ZWQnLFxuICAgIGZyOiAnUGxhY2UgcG91ciB2w6lsbyBpbmRpc3BvbmlibGUnLFxuICAgIGl0OiAnUG9zdG8gYmljaSBub24gw6ggcHJlbm90YWJpbGUnLFxuICB9LFxuICBQTEFDRV9DT05UUk9MX1NFQVRfQUxMT0NBVEVEOiB7XG4gICAgZGU6ICdTaXR6cGxhdHogX3BhcmFtMF8gaXN0IGJlc2V0enQnLFxuICAgIGVuOiAnU2VhdCBfcGFyYW0wXyBpcyBvY2N1cGllZCcsXG4gICAgZnI6ICdQbGFjZSBfcGFyYW0wXyBlc3Qgb2NjdXDDqWUnLFxuICAgIGl0OiAnUG9zdG8gYSBzZWRlcmUgX3BhcmFtMF8gw6ggb2NjdXBhdG8nLFxuICB9LFxuICBQTEFDRV9DT05UUk9MX0JJQ1lDTEVfQUxMT0NBVEVEOiB7XG4gICAgZGU6ICdWZWxvcGxhdHogX3BhcmFtMF8gaXN0IGJlc2V0enQnLFxuICAgIGVuOiAnQmlrZSBzcGFjZSBfcGFyYW0wXyBpcyBvY2N1cGllZCcsXG4gICAgZnI6ICdQbGFjZSBwb3VyIHbDqWxvIF9wYXJhbTBfIGVzdCBvY2N1cMOpZScsXG4gICAgaXQ6ICdQb3N0byBiaWNpIF9wYXJhbTBfIMOoIG9jY3VwYXRvJyxcbiAgfSxcbiAgUExBQ0VfUFJPUEVSVFk6IHtcbiAgICBkZTogJ1BsYXR6ZWlnZW5zY2hhZnRlbicsXG4gICAgZW46ICdTZWF0IGZlYXR1cmVzJyxcbiAgICBmcjogJ0NhcmFjdMOpcmlzdGlxdWVzIGRlIGxhIHBsYWNlJyxcbiAgICBpdDogJ0NhcmF0dGVyaXN0aWNoZSBkZWwgcG9zdG8nLFxuICB9LFxuICBDT0FDSF9BVkFJTEFCTEVfU0VSVklDRVM6IHtcbiAgICBkZTogJ1ZlcmbDvGdiYXJlIFNlcnZpY2VzJyxcbiAgICBlbjogJ0F2YWlsYWJsZSBzZXJ2aWNlcycsXG4gICAgZnI6ICdTZXJ2aWNlcyBkaXNwb25pYmxlcycsXG4gICAgaXQ6ICdTZXJ2aXppIGRpc3BvbmliaWxpJyxcbiAgfSxcblxuICAvLyBMRUFWRSBFWEFNUExFIEFUIExBU1QgUE9TSVRJT05cbiAgRVhBTVBMRV9XSVRIX1BBUkFNU19ET19OT1RfVVNFOiB7XG4gICAgZGU6ICdUZXN0IG1pdCBQYXJhbWV0ZXJuOiBfcGFyYW0wXyB1bmQgX3BhcmFtMV8nLFxuICAgIGVuOiAnVGVzdCB3aXRoIHBhcmFtZXRlcnM6IF9wYXJhbTBfIGFuZCBfcGFyYW0xXycsXG4gICAgZnI6ICdUZXN0IGF2ZWMgcGFyYW3DqHRyZXM6IF9wYXJhbTBfIGV0IF9wYXJhbTFfJyxcbiAgICBpdDogJ1Rlc3QgY29uIHBhcmFtZXRyaTogX3BhcmFtMF8gZSBfcGFyYW0xXycsXG4gIH0sXG59O1xuXG4vKipcbiAqIFJldHVybnMgdGhlIHRyYW5zbGF0aW9uIGZvciBhIHNlYXQgcmVzZXJ2YXRpb24gc3RyaW5nIGJhc2VkIG9uIGEga2V5IGFuZCBsYW5ndWFnZS5cbiAqIFN1cHBvcnRzIG5lc3RlZCBrZXlzIChlLmcuIFwiUExBQ0VfUFJPUEVSVElFUy5BSVNMRV9TRUFUXCIpIGFuZCBwbGFjZWhvbGRlciByZXBsYWNlbWVudC5cbiAqXG4gKiBAcGFyYW0ga2V5IFRoZSB0cmFuc2xhdGlvbiBrZXkgKGNhbiBiZSBuZXN0ZWQsIGUuZy4gXCJQTEFDRV9QUk9QRVJUSUVTLkFJU0xFX1NFQVRcIikuXG4gKiBAcGFyYW0gbGFuZ3VhZ2UgVGhlIGRlc2lyZWQgbGFuZ3VhZ2UgKGUuZy4gXCJkZVwiLCBcImVuXCIsIFwiZnJcIiwgXCJpdFwiKS5cbiAqIEBwYXJhbSBhcmdzIE9wdGlvbmFsIGFycmF5IG9mIHBhcmFtZXRlcnMgdG8gcmVwbGFjZSBwbGFjZWhvbGRlcnMgbGlrZSBfcGFyYW0wXywgX3BhcmFtMV8gaW4gdGhlIHRyYW5zbGF0aW9uIHN0cmluZy5cbiAqIEByZXR1cm5zIFRoZSB0cmFuc2xhdGVkIHN0cmluZyBvciBhbiBlbXB0eSBzdHJpbmcgaWYgbm8gdHJhbnNsYXRpb24gaXMgZm91bmQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGdldEkxOG5TZWF0UmVzZXJ2YXRpb24oJ0NPQUNIX1RBQkxFX0NBUFRJT04nLCAnZGUnLCBbJzEyJ10pOyAvLyBcIldhZ2VuIDEyIHNlbGVrdGllcnRcIlxuICogZ2V0STE4blNlYXRSZXNlcnZhdGlvbignUExBQ0VfUFJPUEVSVElFUy5BSVNMRV9TRUFUJywgJ2VuJyk7IC8vIFwiQWlzbGUgc2VhdFwiXG4gKi9cbmV4cG9ydCBjb25zdCBnZXRJMThuU2VhdFJlc2VydmF0aW9uID0gKGtleTogc3RyaW5nLCBsYW5ndWFnZTogc3RyaW5nLCBhcmdzPzogYW55W10pOiBzdHJpbmcgPT4ge1xuICBsZXQgaW5uZXJWYWx1ZTogYW55ID0gaTE4bk9iamVjdHM7XG4gIGxldCB0cmFuc2xhdGVkU3RyID0gJyc7XG5cbiAgLy8gVW50ZXJzdMO8dHp0IHZlcnNjaGFjaHRlbHRlIEtleXMgbWl0IFB1bmt0bm90YXRpb25cbiAgZm9yIChjb25zdCBwYXJ0IG9mIGtleS5zcGxpdCgnLicpKSB7XG4gICAgaW5uZXJWYWx1ZSA9IGlubmVyVmFsdWU/LltwYXJ0XTtcbiAgICBpZiAoIWlubmVyVmFsdWUpIGJyZWFrO1xuICB9XG5cbiAgaWYgKHR5cGVvZiBpbm5lclZhbHVlID09PSAnb2JqZWN0JyAmJiBpbm5lclZhbHVlICE9PSBudWxsICYmICFBcnJheS5pc0FycmF5KGlubmVyVmFsdWUpKSB7XG4gICAgdHJhbnNsYXRlZFN0ciA9IGlubmVyVmFsdWVbbGFuZ3VhZ2VdIHx8ICcnO1xuICB9IGVsc2UgaWYgKHR5cGVvZiBpbm5lclZhbHVlID09PSAnc3RyaW5nJykge1xuICAgIHRyYW5zbGF0ZWRTdHIgPSBpbm5lclZhbHVlO1xuICB9XG5cbiAgcmV0dXJuIGFyZ3NcbiAgICA/IGFyZ3MucmVkdWNlKCh2YWwsIHBhcmFtLCBpZHgpID0+IHZhbC5yZXBsYWNlKGBfcGFyYW0ke2lkeH1fYCwgcGFyYW0pLCB0cmFuc2xhdGVkU3RyKVxuICAgIDogdHJhbnNsYXRlZFN0cjtcbn07XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBdUJBLE1BQU0sY0FBMkI7QUFBQTtBQUFBO0FBQUEsRUFHL0IsYUFBYTtBQUFBLElBQ1gsSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLEVBQUE7QUFBQSxFQUVOLFlBQVk7QUFBQSxJQUNWLElBQUk7QUFBQSxJQUNKLElBQUk7QUFBQSxJQUNKLElBQUk7QUFBQSxJQUNKLElBQUk7QUFBQSxFQUFBO0FBQUEsRUFFTixhQUFhO0FBQUEsSUFDWCxJQUFJO0FBQUEsSUFDSixJQUFJO0FBQUEsSUFDSixJQUFJO0FBQUEsSUFDSixJQUFJO0FBQUEsRUFBQTtBQUFBLEVBRU4sWUFBWTtBQUFBLElBQ1YsSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLEVBQUE7QUFBQTtBQUFBLEVBR04scUJBQXFCO0FBQUEsSUFDbkIsSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLEVBQUE7QUFBQSxFQUVOLDZCQUE2QjtBQUFBLElBQzNCLElBQUk7QUFBQSxJQUNKLElBQUk7QUFBQSxJQUNKLElBQUk7QUFBQSxJQUNKLElBQUk7QUFBQSxFQUFBO0FB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STtBQUFBLElBQ0osSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLEVBQUE7QUFBQSxFQUVOLFVBQVU7QUFBQSxJQUNSLElBQUk7QUFBQSxJQUNKLElBQUk7QUFBQSxJQUNKLElBQUk7QUFBQSxJQUNKLElBQUk7QUFBQSxFQUFBO0FBQUEsRUFFTixrQkFBa0I7QUFBQSxJQUNoQixJQUFJO0FBQUEsSUFDSixJQUFJO0FBQUEsSUFDSixJQUFJO0FBQUEsSUFDSixJQUFJO0FBQUEsRUFBQTtBQUFBLEVBRU4sZUFBZTtBQUFBLElBQ2IsSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLEVBQUE7QUFBQSxFQUVOLGVBQWU7QUFBQSxJQUNiLElBQUk7QUFBQSxJQUNKLElBQUk7QUFBQSxJQUNKLElBQUk7QUFBQSxJQUNKLElBQUk7QUFBQSxFQUFBO0FBQUEsRUFFTixhQUFhO0FBQUEsSUFDWCxJQUFJO0FBQUEsSUFDSixJQUFJO0FBQUEsSUFDSixJQUFJO0FBQUEsSUFDSixJQUFJO0FBQUEsRUFBQTtBQUFBLEVBRU4sa0JBQWtCO0FBQUEsSUFDaEIsSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLEVBQUE7QUFBQSxFQUVOLGtCQUFrQjtBQUFBLElBQ2hCLElBQUk7QUFBQSxJQUNKLElBQUk7QUFBQSxJQUNKLElBQUk7QUFBQSxJQUNKLElBQUk7QUFBQSxFQUFBO0FBQUEsRUFFTixZQUFZO0FBQUEsSUFDVixJQUFJO0FBQUEsSUFDSixJQUFJO0FBQUEsSUFDSixJQUFJO0FBQUEsSUFDSixJQUFJO0FBQUEsRUFBQTtBQUFBLEVBRU4sUUFBUTtBQUFBLElBQ04sSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLElBQ0osSUFBSTtBQUFBLEVBQUE7QUFBQSxFQUVOLGNBQWM7QUFBQSxJQUNaLElBQUk7QUFBQSxJQUNKLElBQUk7QUFBQSxJQUNKLElBQUk7QUFBQSxJQUNKLElBQUk7QUFBQSxFQUFB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
1117
+ //#endregion
1118
+ export { getI18nSeatReservation };
1119
+
1120
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMtZXhwZXJpbWVudGFsL3NlYXQtcmVzZXJ2YXRpb24vY29tbW9uL3RyYW5zbGF0aW9ucy9pMThuLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUmV0dXJucyB0aGUgdHJhbnNsYXRpb24gZm9yIGEgc2VhdCByZXNlcnZhdGlvbiBzdHJpbmcgYmFzZWQgb24gYSBrZXkgYW5kIGxhbmd1YWdlLlxuICogU3VwcG9ydHMgbmVzdGVkIGtleXMgKGUuZy4gXCJQTEFDRV9QUk9QRVJUSUVTLkFJU0xFX1NFQVRcIikgYW5kIHBsYWNlaG9sZGVyIHJlcGxhY2VtZW50LlxuICpcbiAqIEBwYXJhbSBrZXkgVGhlIHRyYW5zbGF0aW9uIGtleSAoY2FuIGJlIG5lc3RlZCwgZS5nLiBcIlBMQUNFX1BST1BFUlRJRVMuQUlTTEVfU0VBVFwiKS5cbiAqIEBwYXJhbSBsYW5ndWFnZSBUaGUgZGVzaXJlZCBsYW5ndWFnZSAoZS5nLiBcImRlXCIsIFwiZW5cIiwgXCJmclwiLCBcIml0XCIpLlxuICogQHBhcmFtIGFyZ3MgT3B0aW9uYWwgYXJyYXkgb2YgcGFyYW1ldGVycyB0byByZXBsYWNlIHBsYWNlaG9sZGVycyBsaWtlIF9wYXJhbTBfLCBfcGFyYW0xXyBpbiB0aGUgdHJhbnNsYXRpb24gc3RyaW5nLlxuICogQHJldHVybnMgVGhlIHRyYW5zbGF0ZWQgc3RyaW5nIG9yIGFuIGVtcHR5IHN0cmluZyBpZiBubyB0cmFuc2xhdGlvbiBpcyBmb3VuZC5cbiAqXG4gKiBAZXhhbXBsZVxuICogZ2V0STE4blNlYXRSZXNlcnZhdGlvbignQ09BQ0hfVEFCTEVfQ0FQVElPTicsICdkZScsIFsnMTInXSk7IC8vIFwiV2FnZW4gMTIgc2VsZWt0aWVydFwiXG4gKiBnZXRJMThuU2VhdFJlc2VydmF0aW9uKCdQTEFDRV9QUk9QRVJUSUVTLkFJU0xFX1NFQVQnLCAnZW4nKTsgLy8gXCJBaXNsZSBzZWF0XCJcbiAqL1xuXG4vLyBlbnRyeSBmb3IgYWxsIDQgdHJhbnNsYXRpb25zOiBrZXk6IHtkZTogJy4uLicsIGVuOiAnLi4uJywgZnI6ICcuLi4nLCBpdDogJy4uLid9XG5pbnRlcmZhY2UgSTE4bkVudHJ5IHtcbiAgW2xhbmd1YWdlOiBzdHJpbmddOiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBJMThuT2JqZWN0cyB7XG4gIFtrZXk6IHN0cmluZ106IEkxOG5FbnRyeSB8IHsgW3N1YktleTogc3RyaW5nXTogSTE4bkVudHJ5IH07XG59XG5cbmNvbnN0IGkxOG5PYmplY3RzOiBJMThuT2JqZWN0cyA9IHtcbiAgLy8gQkFTSUNTXG4gIC8vIENPQUNIIERFQ0sgTEFCRUwgREVTQ1JJUFRJT05TXG4gIFNJTkdMRV9ERUNLOiB7XG4gICAgZGU6ICdFaW56ZWxkZWNrJyxcbiAgICBlbjogJ1NpbmdsZSBkZWNrJyxcbiAgICBmcjogJ8OJdGFnZSB1bmlxdWUnLFxuICAgIGl0OiAnUGlhbm8gc2luZ29sbycsXG4gIH0sXG4gIExPV0VSX0RFQ0s6IHtcbiAgICBkZTogJ1VudGVyZGVjaycsXG4gICAgZW46ICdMb3dlciBkZWNrJyxcbiAgICBmcjogJ1NhbGxlIGJhc3NlJyxcbiAgICBpdDogJ1NhbGEgYmFzc2EnLFxuICB9LFxuICBNSURETEVfREVDSzoge1xuICAgIGRlOiAnTWl0dGVsZGVjaycsXG4gICAgZW46ICdNaWRkbGUgZGVjaycsXG4gICAgZnI6ICdOaXZlYXUgZHUgbWlsaWV1JyxcbiAgICBpdDogJ0xpdmVsbG8gY2VudHJhbGUnLFxuICB9LFxuICBVUFBFUl9ERUNLOiB7XG4gICAgZGU6ICdPYmVyZGVjaycsXG4gICAgZW46ICdVcHBlciBkZWNrJyxcbiAgICBmcjogJ1NhbGxlIGhhdXRlJyxcbiAgICBpdDogJ1NhbGEgYWx0YScsXG4gIH0sXG4gIC8vIENBUFRJT04gRk9SIFNDUkVFTlJFQURFUiBJTlNJREUgV0FHT05cbiAgQ09BQ0hfVEFCTEVfQ0FQVElPTjoge1xuICAgIGRlOiAnV2FnZW4gX3BhcmFtMF8gc2VsZWt0aWVydCcsXG4gICAgZW46ICdDb2FjaCBfcGFyYW0wXyBzZWxlY3RlZCcsXG4gICAgZnI6ICdWb2l0dXJlIF9wYXJhbTBfIHPDqWxlY3Rpb25uw6llJyxcbiAgICBpdDogJ0NhcnJvenphIF9wYXJhbTBfIHNlbGV6aW9uYXRhJyxcbiAgfSxcbiAgQ09BQ0hfQkxPQ0tFRF9UQUJMRV9DQVBUSU9OOiB7XG4gICAgZGU6ICdXYWdlbiBfcGFyYW0wXyBpc3QgbmljaHQgYmV0cmV0YmFyLiBOYXZpZ2llcmVuIFNpZSBiaXR0ZSB6dW0gbsOkY2hzdGVuIHZlcmbDvGdiYXJlbiBXYWdlbicsXG4gICAgZW46ICdObyBhY2Nlc3MgdG8gY29hY2ggX3BhcmFtMF8uIFBsZWFzZSBuYXZpZ2F0ZSB0byB0aGUgbmV4dCBhdmFpbGFibGUgY29hY2gnLFxuICAgIGZyOiAnTGEgdm9pdHVyZSBfcGFyYW0wXyBu4oCZZXN0IHBhcyBhY2Nlc3NpYmxlLiBWZXVpbGxleiBjb250aW51ZXIganVzcXXigJnDoCBsYSBwcm9jaGFpbmUgdm9pdHVyZSBkaXNwb25pYmxlJyxcbiAgICBpdDogJ0xhIGNhcnJvenphIF9wYXJhbTBfIG5vbiDDqCBhY2Nlc3NpYmlsZS4gTmF2aWdhIHZlcnNvIGxhIHByb3NzaW1hIGNhcnJvenphIGRpc3BvbmliaWxlJyxcbiAgfSxcbiAgU0VBVF9SRVNFUlZBVElPTl9CRUdJTjoge1xuICAgIGRlOiAnQmVnaW5uIGRlciBHcmFmaXNjaGUgU2l0enBsYXR6cmVzZXJ2aWVydW5nJyxcbiAgICBlbjogJ1N0YXJ0IEdyYXBoaWMgU2VhdCBSZXNlcnZhdGlvbicsXG4gICAgZnI6ICdDb21tZW5jZXIgbGEgcsOpc2VydmF0aW9uIGdyYXBoaXF1ZSBkZSBwbGFjZXMnLFxuICAgIGl0OiAnQXZ2aW8gZGVsbGEgcHJlbm90YXppb25lIGdyYWZpY2EgZGVpIHBvc3RpJyxcbiAgfSxcbiAgU0VBVF9SRVNFUlZBVElPTl9FTkQ6IHtcbiAgICBkZTogJ1Zlcmxhc3NlbiBkZXIgR3JhZmlzY2hlIFNpdHpwbGF0enJlc2VydmllcnVuZycsXG4gICAgZW46ICdFeGl0IEdyYXBoaWMgU2VhdCBSZXNlcnZhdGlvbicsXG4gICAgZnI6ICdUZXJtaW5lciBsYSByw6lzZXJ2YXRpb24gZ3JhcGhpcXVlIGRlIHBsYWNlcycsXG4gICAgaXQ6ICdVc2NpdGEgZGFsbGEgcHJlbm90YXppb25lIGdyYWZpY2EgZGVpIHBvc3RpJyxcbiAgfSxcbiAgQ09BQ0hfTE9DT01PVElWRToge1xuICAgIGRlOiAnTG9rb21vdGl2ZScsXG4gICAgZW46ICdMb2NvbW90aXZlJyxcbiAgICBmcjogJ0xvY29tb3RpdmUnLFxuICAgIGl0OiAnTG9jb21vdGl2YScsXG4gIH0sXG5cbiAgLy8gVFJBVkVMIERJUkVDVElPTlxuICBTRUFUX1JFU0VSVkFUSU9OX1RSQVZFTF9ESVJFQ1RJT046IHtcbiAgICBkZTogJ0ZhaHJ0cmljaHR1bmcnLFxuICAgIGVuOiAnVHJhdmVsIGRpcmVjdGlvbicsXG4gICAgZnI6ICdEaXJlY3Rpb24gZHUgdm95YWdlJyxcbiAgICBpdDogJ0RpcmV6aW9uZSBkaSB2aWFnZ2lvJyxcbiAgfSxcblxuICAvLyBOQVZJR0FUSU9OXG4gIE5BVklHQVRFX1RPX0NPQUNIOiB7XG4gICAgZGU6ICdOYXZpZ2llcmUgenUgV2FnZW4gX3BhcmFtMF8nLFxuICAgIGVuOiAnTmF2aWdhdGUgdG8gY29hY2ggX3BhcmFtMF8nLFxuICAgIGZyOiAnQWxsZXIgw6AgbGEgdm9pdHVyZSBfcGFyYW0wXycsXG4gICAgaXQ6ICdOYXZpZ2EgdmVyc28gbGEgY2Fycm96emEgX3BhcmFtMF8nLFxuICB9LFxuICBOQVZJR0FURV9UT19DT0FDSF9TRVJWSUNFX0NMQVNTX1NVQjoge1xuICAgIGRlOiAnIG1pdCBfcGFyYW0wXyBBYnRlaWwnLFxuICAgIGVuOiAnIHdpdGggX3BhcmFtMF8gY29tcGFydG1lbnQnLFxuICAgIGZyOiAnIGF2ZWMgY29tcGFydGltZW50IF9wYXJhbTBfJyxcbiAgICBpdDogJyBjb24gY29tcGFydGltZW50byBkaSBfcGFyYW0wXycsXG4gIH0sXG4gIE5BVklHQVRFX0NPQUNIX0JMT0NLRUQ6IHtcbiAgICBkZTogJ1p1Z2FidGVpbCBfcGFyYW0wXyBpc3QgbmljaHQgYmV0cmV0YmFyJyxcbiAgICBlbjogJ05vIGFjY2VzcyB0byB0cmFpbiBjb21wYXJ0bWVudCBfcGFyYW0wXycsXG4gICAgZnI6ICdMZSBjb21wYXJ0aW1lbnQgX3BhcmFtMF8gbuKAmWVzdCBwYXMgYWNjZXNzaWJsZScsXG4gICAgaXQ6ICdJbCBjb21wYXJ0aW1lbnRvIGRlbCB0cmVubyBfcGFyYW0wXyBub24gw6ggYWNjZXNzaWJpbGUnLFxuICB9LFxuICBTRUFUX1JFU0VSVkFUSU9OX05BVklHQVRJT046IHtcbiAgICBkZTogJ1NpdHpwbGF0enJlc2VydmllcnVuZ3NuYXZpZ2F0aW9uJyxcbiAgICBlbjogJ1NlYXQgcmVzZXJ2YXRpb24gbmF2aWdhdGlvbicsXG4gICAgZnI6ICdOYXZpZ2F0aW9uIHBvdXIgbGEgcsOpc2VydmF0aW9uIGRlIHBsYWNlcycsXG4gICAgaXQ6ICdOYXZpZ2F6aW9uZSBwZXIgbGEgcHJlbm90YXppb25lIGRlaSBwb3N0aScsXG4gIH0sXG4gIENPQUNIX0FWQUlMQUJMRV9OVU1CRVJfT0ZfUExBQ0VTOiB7XG4gICAgZGU6ICdfcGFyYW0wXyB2ZXJmw7xnYmFyZSBTaXR6cGzDpHR6ZS4gX3BhcmFtMV8gdmVyZsO8Z2JhcmUgVmVsb3Bsw6R0emUuJyxcbiAgICBlbjogJ19wYXJhbTBfIHNlYXRzIGF2YWlsYWJsZS4gX3BhcmFtMV8gYXZhaWxhYmxlIGJpY3ljbGUgc3BhY2VzLicsXG4gICAgZnI6ICdfcGFyYW0wXyBwbGFjZXMgYXNzaXNlcyBkaXNwb25pYmxlcy4gX3BhcmFtMV8gcGxhY2VzIHBvdXIgdsOpbG9zIGRpc3BvbmlibGVzLicsXG4gICAgaXQ6ICdfcGFyYW0wXyBwb3N0aSBhIHNlZGVyZSBkaXNwb25pYmlsaS4gX3BhcmFtMV8gcG9zdGkgcGVyIGJpY2ljbGV0dGUgZGlzcG9uaWJpbGkuJyxcbiAgfSxcbiAgU0VSVklDRV9DTEFTU19GSVJTVDoge1xuICAgIGRlOiAnZXJzdGUgS2xhc3NlJyxcbiAgICBlbjogJ0ZpcnN0IGNsYXNzJyxcbiAgICBmcjogJ3ByZW1pw6hyZSBjbGFzc2UnLFxuICAgIGl0OiAncHJpbWEgY2xhc3NlJyxcbiAgfSxcbiAgU0VSVklDRV9DTEFTU19TRUNPTkQ6IHtcbiAgICBkZTogJ3p3ZWl0ZSBLbGFzc2UnLFxuICAgIGVuOiAnU2Vjb25kIGNsYXNzJyxcbiAgICBmcjogJ2RldXhpw6htZSBjbGFzc2UnLFxuICAgIGl0OiAnc2Vjb25kYSBjbGFzc2UnLFxuICB9LFxuXG4gIC8vIE5BVklHQVRJT04gU0VSVklDRVMgSUNPTlMgQU5EIFNFUlZJQ0UgSUNPTlMgSU5TSURFIFdBR09OXG4gIEJJQ1lDTEU6IHtcbiAgICBkZTogJ1ZlbG9iZXJlaWNoJyxcbiAgICBlbjogJ0Jpa2UgYXJlYScsXG4gICAgZnI6ICdFc3BhY2UgdsOpbG8nLFxuICAgIGl0OiAnQXJlYSBiaWNpJyxcbiAgfSxcbiAgQklDWUNMRV9ISUdIOiB7XG4gICAgZGU6ICdWZWxvYmVyZWljaCcsXG4gICAgZW46ICdCaWtlIGFyZWEnLFxuICAgIGZyOiAnRXNwYWNlIHbDqWxvJyxcbiAgICBpdDogJ0FyZWEgYmljaScsXG4gIH0sXG4gIEJJQ1lDTEVfSElHSF9JQ09OOiB7XG4gICAgZGU6ICdWZWxvYmVyZWljaCcsXG4gICAgZW46ICdCaWtlIGFyZWEnLFxuICAgIGZyOiAnRXNwYWNlIHbDqWxvJyxcbiAgICBpdDogJ0FyZWEgYmljaScsXG4gIH0sXG4gIEJJQ1lDTEVfSUNPTjoge1xuICAgIGRlOiAnVmVsb2JlcmVpY2gnLFxuICAgIGVuOiAnQmlrZSBhcmVhJyxcbiAgICBmcjogJ0VzcGFjZSB2w6lsbycsXG4gICAgaXQ6ICdBcmVhIGJpY2knLFxuICB9LFxuICBCSUNZQ0xFX0xPVzoge1xuICAgIGRlOiAnVmVsb2JlcmVpY2gnLFxuICAgIGVuOiAnQmlrZSBhcmVhJyxcbiAgICBmcjogJ0VzcGFjZSB2w6lsbycsXG4gICAgaXQ6ICdBcmVhIGJpY2knLFxuICB9LFxuICBCSUNZQ0xFX0xPV19JQ09OOiB7XG4gICAgZGU6ICdWZWxvYmVyZWljaCcsXG4gICAgZW46ICdCaWtlIGFyZWEnLFxuICAgIGZyOiAnRXNwYWNlIHbDqWxvJyxcbiAgICBpdDogJ0FyZWEgYmljaScsXG4gIH0sXG4gIEJJQ1lDTEVfTUlERExFOiB7XG4gICAgZGU6ICdWZWxvYmVyZWljaCcsXG4gICAgZW46ICdCaWtlIGFyZWEnLFxuICAgIGZyOiAnRXNwYWNlIHbDqWxvJyxcbiAgICBpdDogJ0FyZWEgYmljaScsXG4gIH0sXG4gIEJJQ1lDTEVfTUlERExFX0lDT046IHtcbiAgICBkZTogJ1ZlbG9iZXJlaWNoJyxcbiAgICBlbjogJ0Jpa2UgYXJlYScsXG4gICAgZnI6ICdFc3BhY2UgdsOpbG8nLFxuICAgIGl0OiAnQXJlYSBiaWNpJyxcbiAgfSxcbiAgQklTVFJPOiB7XG4gICAgZGU6ICdCaXN0cm8nLFxuICAgIGVuOiAnQmlzdHJvJyxcbiAgICBmcjogJ0Jpc3RybycsXG4gICAgaXQ6ICdCaXN0cm8nLFxuICB9LFxuICBCSVNUUk9fSUNPTjoge1xuICAgIGRlOiAnQmlzdHJvJyxcbiAgICBlbjogJ0Jpc3RybycsXG4gICAgZnI6ICdCaXN0cm8nLFxuICAgIGl0OiAnQmlzdHJvJyxcbiAgfSxcbiAgQlVTSU5FU1M6IHtcbiAgICBkZTogJ0J1c2luZXNzem9uZScsXG4gICAgZW46ICdCdXNpbmVzcyB6b25lJyxcbiAgICBmcjogJ0VzcGFjZSBhZmZhaXJlcycsXG4gICAgaXQ6ICdab25hIGJ1c2luZXNzJyxcbiAgfSxcbiAgQlVTSU5FU1NfQ09NRk9SVDoge1xuICAgIGRlOiAnQnVzaW5lc3N6b25lJyxcbiAgICBlbjogJ0J1c2luZXNzIHpvbmUnLFxuICAgIGZyOiAnRXNwYWNlIGFmZmFpcmVzJyxcbiAgICBpdDogJ1pvbmEgYnVzaW5lc3MnLFxuICB9LFxuICBCVVNJTkVTU19JQ09OOiB7XG4gICAgZGU6ICdCdXNpbmVzc3pvbmUnLFxuICAgIGVuOiAnQnVzaW5lc3Mgem9uZScsXG4gICAgZnI6ICdFc3BhY2UgYWZmYWlyZXMnLFxuICAgIGl0OiAnWm9uYSBidXNpbmVzcycsXG4gIH0sXG4gIENPQUNIX1BBU1NBR0U6IHtcbiAgICBkZTogJ1dhZ2Vuw7xiZXJnYW5nJyxcbiAgICBlbjogJ0ludGVyLWNvYWNoIGdhbmd3YXknLFxuICAgIGZyOiAnSW50ZXJjaXJjdWxhdGlvbicsXG4gICAgaXQ6ICdQYXNzYWdnaW8gaW50ZXJjb211bmljYW50ZScsXG4gIH0sXG4gIEVBU1lfQUNDRVNTOiB7XG4gICAgZGU6ICdab25lIGbDvHIgUmVpc2VuZGUgbWl0IGVpbmdlc2NocsOkbmt0ZXIgTW9iaWxpdMOkdCcsXG4gICAgZW46ICdab25lIGZvciB0cmF2ZWxsZXJzIHdpdGggcmVkdWNlZCBtb2JpbGl0eScsXG4gICAgZnI6ICdab25lIHBvdXIgdm95YWdldXJzIMOgIG1vYmlsaXTDqSByw6lkdWl0ZScsXG4gICAgaXQ6ICdab25hIHZpYWdnaWF0b3JpIGEgbW9iaWxpdMOgIHJpZG90dGEnLFxuICB9LFxuICBFQVNZX0FDQ0VTU19BUkVBOiB7XG4gICAgZGU6ICdab25lIGbDvHIgUmVpc2VuZGUgbWl0IGVpbmdlc2NocsOkbmt0ZXIgTW9iaWxpdMOkdCcsXG4gICAgZW46ICdab25lIGZvciB0cmF2ZWxsZXJzIHdpdGggcmVkdWNlZCBtb2JpbGl0eScsXG4gICAgZnI6ICdab25lIHBvdXIgdm95YWdldXJzIMOgIG1vYmlsaXTDqSByw6lkdWl0ZScsXG4gICAgaXQ6ICdab25hIHZpYWdnaWF0b3JpIGEgbW9iaWxpdMOgIHJpZG90dGEnLFxuICB9LFxuICBFQVNZX0FDQ0VTU19JQ09OOiB7XG4gICAgZGU6ICdab25lIGbDvHIgUmVpc2VuZGUgbWl0IGVpbmdlc2NocsOkbmt0ZXIgTW9iaWxpdMOkdCcsXG4gICAgZW46ICdab25lIGZvciB0cmF2ZWxsZXJzIHdpdGggcmVkdWNlZCBtb2JpbGl0eScsXG4gICAgZnI6ICdab25lIHBvdXIgdm95YWdldXJzIMOgIG1vYmlsaXTDqSByw6lkdWl0ZScsXG4gICAgaXQ6ICdab25hIHZpYWdnaWF0b3JpIGEgbW9iaWxpdMOgIHJpZG90dGEnLFxuICB9LFxuICBFTlRSWV9FWElUOiB7XG4gICAgZGU6ICdBdXNnYW5nIC8gRWluZ2FuZycsXG4gICAgZW46ICdFeGl0IC8gZW50cmFuY2UnLFxuICAgIGZyOiAnU29ydGllIC8gRW50csOpZScsXG4gICAgaXQ6ICdVc2NpdGEgLyBJbmdyZXNzbycsXG4gIH0sXG4gIEZBTUlMWToge1xuICAgIGRlOiAnRmFtaWxpZW53YWdlbicsXG4gICAgZW46ICdGYW1pbHkgY29hY2gnLFxuICAgIGZyOiAnVm9pdHVyZS1mYW1pbGxlcycsXG4gICAgaXQ6ICdDYXJyb3p6YSBmYW1pZ2xpYScsXG4gIH0sXG4gIExVR0dBR0VfQVJFQToge1xuICAgIGRlOiAnR2Vww6Rja3pvbmUnLFxuICAgIGVuOiAnTHVnZ2FnZSB6b25lJyxcbiAgICBmcjogJ0VzcGFjZSBiYWdhZ2VzJyxcbiAgICBpdDogJ1pvbmEgYmFnYWdsaScsXG4gIH0sXG4gIExVR0dBR0VfSUNPTjoge1xuICAgIGRlOiAnR2Vww6Rja3pvbmUnLFxuICAgIGVuOiAnTHVnZ2FnZSB6b25lJyxcbiAgICBmcjogJ0VzcGFjZSBiYWdhZ2VzJyxcbiAgICBpdDogJ1pvbmEgYmFnYWdsaScsXG4gIH0sXG4gIE1VTFRJX0ZVTkNUSU9OX0FSRUE6IHtcbiAgICBkZTogJ011bHRpZnVua3Rpb25zYmVyZWljaCcsXG4gICAgZW46ICdNdWx0aWZ1bmN0aW9uIGFyZWEnLFxuICAgIGZyOiAnWm9uZSBtdWx0aWZvbmN0aW9ubmVsbGUnLFxuICAgIGl0OiAnWm9uYSBtdWx0aWZ1bnppb25hbGUnLFxuICB9LFxuICBNVUxUSV9GVU5DVElPTl9JQ09OOiB7XG4gICAgZGU6ICdNdWx0aWZ1bmt0aW9uc2JlcmVpY2gnLFxuICAgIGVuOiAnTXVsdGlmdW5jdGlvbiBhcmVhJyxcbiAgICBmcjogJ1pvbmUgbXVsdGlmb25jdGlvbm5lbGxlJyxcbiAgICBpdDogJ1pvbmEgbXVsdGlmdW56aW9uYWxlJyxcbiAgfSxcbiAgUExBWUdST1VORF9BUkVBOiB7XG4gICAgZGU6ICdGYW1pbGllbndhZ2VuJyxcbiAgICBlbjogJ0ZhbWlseSBjb2FjaCcsXG4gICAgZnI6ICdWb2l0dXJlLWZhbWlsbGVzJyxcbiAgICBpdDogJ0NhcnJvenphIGZhbWlnbGlhJyxcbiAgfSxcbiAgUExBWUdST1VORF9JQ09OOiB7XG4gICAgZGU6ICdGYW1pbGllbndhZ2VuJyxcbiAgICBlbjogJ0ZhbWlseSBjb2FjaCcsXG4gICAgZnI6ICdWb2l0dXJlLWZhbWlsbGVzJyxcbiAgICBpdDogJ0NhcnJvenphIGZhbWlnbGlhJyxcbiAgfSxcbiAgUFJBTToge1xuICAgIGRlOiAnS2luZGVyd2FnZW5iZXJlaWNoJyxcbiAgICBlbjogJ1ByYW0vcHVzaGNoYWlyIGFyZWEnLFxuICAgIGZyOiAnRXNwYWNlIHBvdXNzZXR0ZScsXG4gICAgaXQ6ICdBcmVhIHBlciBwYXNzZWdnaW5pJyxcbiAgfSxcbiAgUFJBTV9BUkVBOiB7XG4gICAgZGU6ICdLaW5kZXJ3YWdlbmJlcmVpY2gnLFxuICAgIGVuOiAnUHJhbS9wdXNoY2hhaXIgYXJlYScsXG4gICAgZnI6ICdFc3BhY2UgcG91c3NldHRlJyxcbiAgICBpdDogJ0FyZWEgcGVyIHBhc3NlZ2dpbmknLFxuICB9LFxuICBQUkFNX0lDT046IHtcbiAgICBkZTogJ0tpbmRlcndhZ2VuYmVyZWljaCcsXG4gICAgZW46ICdQcmFtL3B1c2hjaGFpciBhcmVhJyxcbiAgICBmcjogJ0VzcGFjZSBwb3Vzc2V0dGUnLFxuICAgIGl0OiAnQXJlYSBwZXIgcGFzc2VnZ2luaScsXG4gIH0sXG4gIFJFU1RBVVJBTlQ6IHtcbiAgICBkZTogJ1Jlc3RhdXJhbnQnLFxuICAgIGVuOiAnUmVzdGF1cmFudCcsXG4gICAgZnI6ICdSZXN0YXVyYW50JyxcbiAgICBpdDogJ1Jpc3RvcmFudGUnLFxuICB9LFxuICBSRVNUQVVSQU5UX0FSRUE6IHtcbiAgICBkZTogJ1Jlc3RhdXJhbnQnLFxuICAgIGVuOiAnUmVzdGF1cmFudCcsXG4gICAgZnI6ICdSZXN0YXVyYW50JyxcbiAgICBpdDogJ1Jpc3RvcmFudGUnLFxuICB9LFxuICBSRVNUQVVSQU5UX0lDT046IHtcbiAgICBkZTogJ1Jlc3RhdXJhbnQnLFxuICAgIGVuOiAnUmVzdGF1cmFudCcsXG4gICAgZnI6ICdSZXN0YXVyYW50JyxcbiAgICBpdDogJ1Jpc3RvcmFudGUnLFxuICB9LFxuICBTSUxFTkNFOiB7XG4gICAgZGU6ICdSdWhlem9uZScsXG4gICAgZW46ICdRdWlldCB6b25lJyxcbiAgICBmcjogJ0VzcGFjZSBzaWxlbmNlJyxcbiAgICBpdDogJ1pvbmEgZGVsIHNpbGVuemlvJyxcbiAgfSxcbiAgU0lMRU5DRV9BUkVBX0lDT046IHtcbiAgICBkZTogJ1J1aGV6b25lJyxcbiAgICBlbjogJ1F1aWV0IHpvbmUnLFxuICAgIGZyOiAnRXNwYWNlIHNpbGVuY2UnLFxuICAgIGl0OiAnWm9uYSBkZWwgc2lsZW56aW8nLFxuICB9LFxuICBTSUxFTkNFX0lDT046IHtcbiAgICBkZTogJ1J1aGV6b25lJyxcbiAgICBlbjogJ1F1aWV0IHpvbmUnLFxuICAgIGZyOiAnRXNwYWNlIHNpbGVuY2UnLFxuICAgIGl0OiAnWm9uYSBkZWwgc2lsZW56aW8nLFxuICB9LFxuICBTS0lfQVJFQToge1xuICAgIGRlOiAnU2tpIEJlcmVpY2gnLFxuICAgIGVuOiAnU2tpIGFyZWEnLFxuICAgIGZyOiAnRXNwYWNlIHNraScsXG4gICAgaXQ6ICdBcmVhIHNjaScsXG4gIH0sXG4gIFNLSV9JQ09OOiB7XG4gICAgZGU6ICdTa2kgQmVyZWljaCcsXG4gICAgZW46ICdTa2kgYXJlYScsXG4gICAgZnI6ICdFc3BhY2Ugc2tpJyxcbiAgICBpdDogJ0FyZWEgc2NpJyxcbiAgfSxcbiAgU1RBRkZfQVJFQToge1xuICAgIGRlOiAnWnVncGVyc29uYWwnLFxuICAgIGVuOiAnVHJhaW4gY3JldycsXG4gICAgZnI6ICdQZXJzb25uZWwgZGUgdHJhaW4nLFxuICAgIGl0OiAnUGVyc29uYWxlIGRpIHRyZW5vJyxcbiAgfSxcbiAgU1RBSVJfQVJFQToge1xuICAgIGRlOiAnVHJlcHBlbmJlcmVpY2gnLFxuICAgIGVuOiAnU3RhaXIgYXJlYScsXG4gICAgZnI6ICdFc2NhbGllcicsXG4gICAgaXQ6ICdBcmVhIHNjYWxlJyxcbiAgfSxcbiAgVE9JTEVUX0FSRUE6IHtcbiAgICBkZTogJ1RvaWxldHRlbmJlcmVpY2gnLFxuICAgIGVuOiAnVG9pbGV0IGFyZWEnLFxuICAgIGZyOiAnVG9pbGV0dGVzJyxcbiAgICBpdDogJ0FyZWEgdG9pbGV0dGUnLFxuICB9LFxuICBUT0lMRVRfSUNPTjoge1xuICAgIGRlOiAnVG9pbGV0dGVuYmVyZWljaCcsXG4gICAgZW46ICdUb2lsZXQgYXJlYScsXG4gICAgZnI6ICdUb2lsZXR0ZXMnLFxuICAgIGl0OiAnQXJlYSB0b2lsZXR0ZScsXG4gIH0sXG4gIFRPSUxFVF9XSEVFTENIQUlSX0FSRUE6IHtcbiAgICBkZTogJ1JvbGxzdHVobCBUb2lsZXR0ZW5iZXJlaWNoJyxcbiAgICBlbjogJ1doZWVsY2hhaXIvdG9pbGV0IGFyZWEnLFxuICAgIGZyOiAnVG9pbGV0dGVzIHBvdXIgZmF1dGV1aWxzIHJvdWxhbnRzJyxcbiAgICBpdDogJ0FyZWEgdG9pbGV0dGUgYWNjZXNzaWJpbGUgaW4gc2VkaWEgYSByb3RlbGxlJyxcbiAgfSxcbiAgVE9JTEVUX1dIRUVMQ0hBSVJfSUNPTjoge1xuICAgIGRlOiAnUm9sbHN0dWhsIFRvaWxldHRlbmJlcmVpY2gnLFxuICAgIGVuOiAnV2hlZWxjaGFpci90b2lsZXQgYXJlYScsXG4gICAgZnI6ICdUb2lsZXR0ZXMgcG91ciBmYXV0ZXVpbHMgcm91bGFudHMnLFxuICAgIGl0OiAnQXJlYSB0b2lsZXR0ZSBhY2Nlc3NpYmlsZSBpbiBzZWRpYSBhIHJvdGVsbGUnLFxuICB9LFxuICBXQVJEUk9CRV9BUkVBOiB7XG4gICAgZGU6ICdHYXJkZXJvYmVuYmVyZWljaCcsXG4gICAgZW46ICdDb2F0IHJhY2snLFxuICAgIGZyOiAnRXNwYWNlIHZlc3RpYWlyZScsXG4gICAgaXQ6ICdBcmVhIGd1YXJkYXJvYmEnLFxuICB9LFxuICBXSEVFTENIQUlSOiB7XG4gICAgZGU6ICdSb2xsc3R1aGx6b25lJyxcbiAgICBlbjogJ1doZWVsY2hhaXIgem9uZScsXG4gICAgZnI6ICdFc3BhY2UgcG91ciBmYXV0ZXVpbHMgcm91bGFudHMnLFxuICAgIGl0OiAnWm9uYSBwZXIgc2VkaWUgYSByb3RlbGxlJyxcbiAgfSxcbiAgV0hFRUxDSEFJUl9BTkRfU0VBVDoge1xuICAgIGRlOiAnUm9sbHN0dWhsem9uZScsXG4gICAgZW46ICdXaGVlbGNoYWlyIHpvbmUnLFxuICAgIGZyOiAnRXNwYWNlIHBvdXIgZmF1dGV1aWxzIHJvdWxhbnRzJyxcbiAgICBpdDogJ1pvbmEgcGVyIHNlZGllIGEgcm90ZWxsZScsXG4gIH0sXG4gIFdIRUVMQ0hBSVJfSUNPTjoge1xuICAgIGRlOiAnUm9sbHN0dWhsem9uZScsXG4gICAgZW46ICdXaGVlbGNoYWlyIHpvbmUnLFxuICAgIGZyOiAnRXNwYWNlIHBvdXIgZmF1dGV1aWxzIHJvdWxhbnRzJyxcbiAgICBpdDogJ1pvbmEgcGVyIHNlZGllIGEgcm90ZWxsZScsXG4gIH0sXG4gIFdIRUVMQ0hBSVJfTk9fU0VBVDoge1xuICAgIGRlOiAnUm9sbHN0dWhsem9uZScsXG4gICAgZW46ICdXaGVlbGNoYWlyIHpvbmUnLFxuICAgIGZyOiAnRXNwYWNlIHBvdXIgZmF1dGV1aWxzIHJvdWxhbnRzJyxcbiAgICBpdDogJ1pvbmEgcGVyIHNlZGllIGEgcm90ZWxsZScsXG4gIH0sXG4gIFdJRkk6IHtcbiAgICBkZTogJ0dyYXRpcy1JbnRlcm5ldCBtaXQgZGVyIEFwcCBTQkIgRnJlZVN1cmYnLFxuICAgIGVuOiAnRnJlZSBpbnRlcm5ldCB3aXRoIHRoZSBTQkIgRnJlZVN1cmYgYXBwJyxcbiAgICBmcjogJ0ludGVybmV0IGdyYXR1aXQgYXZlYyBs4oCZYXBwbGkgRnJlZVN1cmYgQ0ZGJyxcbiAgICBpdDogJ0ludGVybmV0IGdyYXRpcyBjb24gbOKAmWFwcCBGcmVlU3VyZiBGRlMnLFxuICB9LFxuXG4gIC8vQURESVRJT05BTCBJTkZPIEZPUiBTRUFUUyAoUExBQ0UgUFJPUEVSVElFUylcbiAgLy8gQHNlZSBodHRwczovL29zZG0uaW8vc3BlYy9jYXRhbG9nLW9mLWNvZGUtbGlzdHMvI1BsYWNlUHJvcGVydHlcbiAgUExBQ0VfUFJPUEVSVElFUzoge1xuICAgIEFJU0xFX1NFQVQ6IHtcbiAgICAgIGRlOiAnR2FuZycsXG4gICAgICBlbjogJ2Fpc2xlJyxcbiAgICAgIGZyOiAnQ291bG9pcicsXG4gICAgICBpdDogJ2NvcnJpZG9pbycsXG4gICAgfSxcbiAgICAnQUlSLUNPTkRJVElPTkVEJzoge1xuICAgICAgZGU6ICdLbGltYXRpc2llcnRlciBCZXJlaWNoJyxcbiAgICAgIGVuOiAnYWlyLWNvbmRpdGlvbmVkIGFyZWEnLFxuICAgICAgZnI6ICdab25lIGNsaW1hdGlzw6llJyxcbiAgICAgIGl0OiAnYXJlYSBjbGltYXRpenphdGEnLFxuICAgIH0sXG4gICAgQU5ZX1NFQVQ6IHtcbiAgICAgIGRlOiAnb3B0aW9uYWxlIEF1c3dhaGwnLFxuICAgICAgZW46ICdvcHRpb25hbCBzZWxlY3Rpb24nLFxuICAgICAgZnI6ICdzw6lsZWN0aW9uIGZhY3VsdGF0aXZlJyxcbiAgICAgIGl0OiAnc2VsZXppb25lIG9wemlvbmFsZScsXG4gICAgfSxcbiAgICBCSVNUUk86IHsgZGU6ICdCaXN0cm8nLCBlbjogJ2Jpc3RybycsIGZyOiAnQmlzdHJvJywgaXQ6ICdiaXN0csOyJyB9LFxuICAgIEJJQ1lDTEU6IHsgZGU6ICdWZWxvJywgZW46ICdiaWN5Y2xlJywgZnI6ICdWw6lsbycsIGl0OiAnYmljaWNsZXR0ZScgfSxcbiAgICBCSUNZQ0xFX0xPVzoge1xuICAgICAgZGU6ICdWZWxvaGFrZW4gdGllZicsXG4gICAgICBlbjogJ2JpY3ljbGUgaG9vayBsb3cnLFxuICAgICAgZnI6ICdDcm9jaGV0cyBwb3VyIHbDqWxvcyBhYmFpc3PDqXMnLFxuICAgICAgaXQ6ICdnYW5jaW8gcGVyIGJpY2ljbGV0dGUgYWJiYXNzYXJlJyxcbiAgICB9LFxuICAgIEJJQ1lDTEVfTUlERExFOiB7XG4gICAgICBkZTogJ1ZlbG9oYWtlbiBtaXR0ZWwnLFxuICAgICAgZW46ICdiaWN5Y2xlIGhvb2sgbWVkaXVtJyxcbiAgICAgIGZyOiAnQ3JvY2hldHMgcG91ciB2w6lsb3MgbW95ZW5zJyxcbiAgICAgIGl0OiAnZ2FuY2lvIHBlciBiaWNpY2xldHRlIG1lZGlvJyxcbiAgICB9LFxuICAgIEJJQ1lDTEVfSElHSDoge1xuICAgICAgZGU6ICdWZWxvaGFrZW4gaG9jaCcsXG4gICAgICBlbjogJ2JpY3ljbGUgaG9vayBoaWdoJyxcbiAgICAgIGZyOiAnQ3JvY2hldHMgcG91ciB2w6lsb3Mgc3Vyw6lsZXbDqXMnLFxuICAgICAgaXQ6ICdnYW5jaW8gcGVyIGJpY2ljbGV0dGUgYWx0bycsXG4gICAgfSxcbiAgICBCVVNJTkVTUzogeyBkZTogJ0J1c2luZXNzJywgZW46ICdidXNpbmVzcycsIGZyOiAnQnVzaW5lc3MnLCBpdDogJ2J1c2luZXNzJyB9LFxuICAgIEJVU0lORVNTX0NPTUZPUlQ6IHtcbiAgICAgIGRlOiAnQnVzaW5lc3MgY29tZm9ydCcsXG4gICAgICBlbjogJ2J1c2luZXNzIENvbWZvcnQnLFxuICAgICAgZnI6ICdCdXNpbmVzcyBDb25mb3J0JyxcbiAgICAgIGl0OiAnYnVzaW5lc3MgQ29tZm9ydCcsXG4gICAgfSxcbiAgICBDQUJJTjg6IHsgZGU6ICdHcnVwcGVuJywgZW46ICdncm91cHMnLCBmcjogJ0dyb3VwZXMnLCBpdDogJ2dydXBwaScgfSxcbiAgICBDQVJfTEFSR0U6IHtcbiAgICAgIGRlOiAnRmFocnpldWcgbWl0IGVpbmVyIEzDpG5nZSB6d2lzY2hlbiA0LDQybSB1bmQgNSwzbSB1bmQgZWluZXIgRGFjaGJyZWl0ZSB6d2lzY2hlbiAxLDM2bSB1bmQgMSw1NW0nLFxuICAgICAgZW46ICdWZWhpY2xlIHdpdGggYSBsZW5ndGggYmV0d2VlbiA0LjQybSBhbmQgNS4zbSBhbmQgYSByb29mIHdpZHRoIGJldHdlZW4gMS4zNm0gYW5kIDEuNTVtJyxcbiAgICAgIGZyOiAnVsOpaGljdWxlIGTigJl1bmUgbG9uZ3VldXIgY29tcHJpc2UgZW50cmUgNCw0Mm0gZXQgNSwzbSBldCBk4oCZdW5lIGxhcmdldXIgZGUgdG9pdCBjb21wcmlzZSBlbnRyZSAxLDM2bSBldCAxLDU1bScsXG4gICAgICBpdDogJ1ZlaWNvbGkgY29uIHVuYSBsdW5naGV6emEgY29tcHJlc2EgdHJhIDQsNDJtIGUgNSwzbSBlIHVuYSBsYXJnaGV6emEgZGVsIHRldHRvIGNvbXByZXNhIHRyYSAxLDM2bSBlIDEsNTVtJyxcbiAgICB9LFxuICAgIENBUl9TTUFMTDoge1xuICAgICAgZGU6ICdGYWhyemV1ZyBtaXQgZWluZXIgTMOkbmdlIHp3aXNjaGVuIDQsNDJtIHVuZCA1LDNtIHVuZCBlaW5lckRhY2hicmVpdGUgYmlzIDEsMzVtJyxcbiAgICAgIGVuOiAnVmVoaWNsZSB3aXRoIGEgbGVuZ3RoIGJldHdlZW4gNC40Mm0gYW5kIDUuM20gYW5kIGEgcm9vZiB3aWR0aCBvZiB1cCB0byAxLjM1bScsXG4gICAgICBmcjogJ1bDqWhpY3VsZSBk4oCZdW5lIGxvbmd1ZXVyIGNvbXByaXNlIGVudHJlIDQsNDJtIGV0IDUsM20gZXQgZOKAmXVuZSBsYXJnZXVyIGRlIHRvaXQgaW5mw6lyaWV1cmUgb3Ugw6lnYWxlIMOgIDEsMzVtJyxcbiAgICAgIGl0OiAnVmVpY29sbyBjb24gdW5hIGx1bmdoZXp6YSBjb21wcmVzYSB0cmEgNCw0Mm0gZSA1LDNtIGUgdW5hbGFyZ2hlenphIGRlbCB0ZXR0byBmaW5vIGEgMSwzNW0nLFxuICAgIH0sXG4gICAgQ0FSUkU6IHsgZGU6ICdDYXJyw6knLCBlbjogJ0NhcnLDqScsIGZyOiAnQ2FycsOpJywgaXQ6ICdDYXJyw6knIH0sXG4gICAgQ0hJTERSRU5fQVJFQToge1xuICAgICAgZGU6ICdLaW5kZXJhYnRlaWwnLFxuICAgICAgZW46ICdjaGlsZHJlbuKAmXMgY29tcGFydG1lbnQnLFxuICAgICAgZnI6ICdDb21wYXJ0aW1lbnQgZW5mYW50cycsXG4gICAgICBpdDogJ2NvbXBhcnRpbWVudG8gcGVyIGJhbWJpbmknLFxuICAgIH0sXG4gICAgQ0xVQjogeyBkZTogJ0NsdWInLCBlbjogJ0NsdWInLCBmcjogJ0NsdWInLCBpdDogJ0NsdWInIH0sXG4gICAgQ0xVQl8yOiB7IGRlOiAnQ2x1YiBEdW8nLCBlbjogJ0NsdWIgRHVvJywgZnI6ICdDbHViIER1bycsIGl0OiAnQ2x1YiBEdW8nIH0sXG4gICAgQ0xVQl80OiB7IGRlOiAnQ2x1YiA0JywgZW46ICdDbHViIDQnLCBmcjogJ0NsdWIgNCcsIGl0OiAnQ2x1YiA0JyB9LFxuICAgIENPTVBBUlRNRU5UOiB7XG4gICAgICBkZTogJ1NlaXRlbmdhbmcnLFxuICAgICAgZW46ICdzaWRlIGFpc2xlJyxcbiAgICAgIGZyOiAnQ291bG9pciBsYXTDqXJhbCcsXG4gICAgICBpdDogJ2NvcnJpZG9pbyBsYXRlcmFsZScsXG4gICAgfSxcbiAgICBDT01QTEVURToge1xuICAgICAgZGU6ICdQcml2YXRhYnRlaWwnLFxuICAgICAgZW46ICdwcml2YXRlIGNvbXBhcnRtZW50JyxcbiAgICAgIGZyOiAnQ29tcGFydGltZW50IHByaXbDqScsXG4gICAgICBpdDogJ2NvbXBhcnRpbWVudG8gcHJpdmF0bycsXG4gICAgfSxcbiAgICBDT05GRVJFTkNFOiB7XG4gICAgICBkZTogJ0tvbmZlcmVuenJhdW0nLFxuICAgICAgZW46ICdjb25mZXJlbmNlIHJvb20nLFxuICAgICAgZnI6ICdDb21wYXJ0aW1lbnQgY29uZsOpcmVuY2UnLFxuICAgICAgaXQ6ICdjb21wYXJ0aW1lbnRvIENvbmZlcmVuemEnLFxuICAgIH0sXG4gICAgQ09OTkVDVElOR19ET09SOiB7XG4gICAgICBkZTogJ0FidGVpbCBtaXQgVmVyYmluZHVuZ3N0w7xyJyxcbiAgICAgIGVuOiAnY29tcGFydG1lbnQgd2l0aCBjb25uZWN0aW5nIGRvb3InLFxuICAgICAgZnI6ICdDb21wYXJ0aW1lbnQgYXZlYyBwb3J0ZSBjb21tdW5pY2FudGUnLFxuICAgICAgaXQ6ICdjb21wYXJ0aW1lbnRvIGNvbiBwb3J0YSBkaSBjb2xsZWdhbWVudG8nLFxuICAgIH0sXG4gICAgQ09VQ0hFVFRFXzI6IHsgZGU6ICcyZXInLCBlbjogJzIgYmVydGhzJywgZnI6ICcyIHBsYWNlcycsIGl0OiAnMiBwb3N0aScgfSxcbiAgICBDT1VDSEVUVEVfNDogeyBkZTogJzRlcicsIGVuOiAnNCBiZXJ0aHMnLCBmcjogJzQgcGxhY2VzJywgaXQ6ICc0IHBvc3RpJyB9LFxuICAgIENPVUNIRVRURV81OiB7IGRlOiAnNWVyJywgZW46ICc1IGJlcnRocycsIGZyOiAnNSBwbGFjZXMnLCBpdDogJzUgcG9zdGknIH0sXG4gICAgQ09VQ0hFVFRFXzY6IHsgZGU6ICc2ZXInLCBlbjogJzYgYmVydGhzJywgZnI6ICc2IHBsYWNlcycsIGl0OiAnNiBwb3N0aScgfSxcbiAgICBDT1VDSEVUVEVfQ09NRk9SVF80OiB7XG4gICAgICBkZTogJzRlciBjb21mb3J0JyxcbiAgICAgIGVuOiAnNCBiZXJ0aHMgY29tZm9ydCcsXG4gICAgICBmcjogJzQgcGxhY2VzIGNvbmZvcnQnLFxuICAgICAgaXQ6ICc0IHBvc3RpIGNvbWZvcnQnLFxuICAgIH0sXG4gICAgQ09VQ0hFVFRFX0NPTUZPUlRfNToge1xuICAgICAgZGU6ICc1ZXIgY29tZm9ydCcsXG4gICAgICBlbjogJzUgYmVydGhzIGNvbWZvcnQnLFxuICAgICAgZnI6ICc1IHBsYWNlcyBjb25mb3J0JyxcbiAgICAgIGl0OiAnNSBwb3N0aSBjb21mb3J0JyxcbiAgICB9LFxuICAgIENPVUNIRVRURV9DT01GT1JUXzY6IHtcbiAgICAgIGRlOiAnNmVyJyxcbiAgICAgIGVuOiAnNiBiZXJ0aHMgY29tZm9ydCcsXG4gICAgICBmcjogJzYgcGxhY2VzIGNvbmZvcnQnLFxuICAgICAgaXQ6ICc2IHBvc3RpIGNvbWZvcnQnLFxuICAgIH0sXG4gICAgQ09VQ0hFVFRFX1BSTV8yOiB7IGRlOiAnMmVyIFBSTScsIGVuOiAnMiBiZXJ0aHMgUFJNJywgZnI6ICcyIHBsYWNlcyBQTVInLCBpdDogJzIgcG9zdGkgUFJNJyB9LFxuICAgIENPVUNIRVRURV9QUk1fMzogeyBkZTogJzNlciBQUk0nLCBlbjogJzMgYmVydGhzIFBSTScsIGZyOiAnMyBwbGFjZXMgUE1SJywgaXQ6ICczIHBvc3RpIFBSTScgfSxcbiAgICBDT1VDSEVUVEVfUFJNXzQ6IHsgZGU6ICc0ZXIgUFJNJywgZW46ICc0IGJlcnRocyBQUk0nLCBmcjogJzQgcGxhY2VzIFBNUicsIGl0OiAnNCBwb3N0aSBQUk0nIH0sXG4gICAgRE9VQkxFOiB7IGRlOiAnRG91YmxlJywgZW46ICdEb3VibGUnLCBmcjogJ0RvdWJsZScsIGl0OiAnRG91YmxlJyB9LFxuICAgIERPVUJMRV9XQzoge1xuICAgICAgZGU6ICdEb3VibGUgbWl0IFdDJyxcbiAgICAgIGVuOiAnRG91YmxlIHdpdGggV0MnLFxuICAgICAgZnI6ICdEb3VibGUgYXZlYyBXQycsXG4gICAgICBpdDogJ0RvdWJsZSBjb24gV0MnLFxuICAgIH0sXG4gICAgRE9VQkxFX1NXQzoge1xuICAgICAgZGU6ICdEb3VibGUgRGVsdXhlJyxcbiAgICAgIGVuOiAnRG91YmxlIERlbHV4ZScsXG4gICAgICBmcjogJ0RvdWJsZSBEZWx1eGUnLFxuICAgICAgaXQ6ICdEb3VibGUgRGVsdXhlJyxcbiAgICB9LFxuICAgIERPVUJMRV9TOiB7XG4gICAgICBkZTogJ0RvdWJsZSBtaXQgRHVzY2hlJyxcbiAgICAgIGVuOiAnRG91YmxlIHdpdGggc2hvd2VyJyxcbiAgICAgIGZyOiAnRG91YmxlIGF2ZWMgZG91Y2hlJyxcbiAgICAgIGl0OiAnRG91YmxlIGNvbiBEb2NjaWEnLFxuICAgIH0sXG4gICAgRUFTWV9BQ0NFU1M6IHsgZGU6ICdQUk0nLCBlbjogJ1BSTScsIGZyOiAnUFJNJywgaXQ6ICdQUk0nIH0sXG4gICAgRkFDRV8yX0ZBQ0U6IHtcbiAgICAgIGRlOiAnRHVvIHZpcyDDoCB2aXMnLFxuICAgICAgZW46ICdEdW8gdmlzIMOgIHZpcycsXG4gICAgICBmcjogJ0R1byB2aXMgw6AgdmlzJyxcbiAgICAgIGl0OiAnRHVvIHZpcyDDoCB2aXMnLFxuICAgIH0sXG4gICAgRVhDRUxMRU5DRTogeyBkZTogJ0V4Y2VsbGVuY2UnLCBlbjogJ2V4Y2VsbGVuY2UnLCBmcjogJ2V4Y2VsbGVuY2UnLCBpdDogJ2V4Y2VsbGVuY2UnIH0sXG4gICAgRkFNSUxZOiB7XG4gICAgICBkZTogJ0ZhbWlsaWVuYWJ0ZWlsJyxcbiAgICAgIGVuOiAnZmFtaWx5IHpvbmUnLFxuICAgICAgZnI6ICdjb21wYXJ0ZW1lbnQgZmFtaWxsZScsXG4gICAgICBpdDogJ2NvbXBhcnRpbWVudGUgZmFtaWxpYScsXG4gICAgfSxcbiAgICBGUk9OVF9WSUVXOiB7IGRlOiAnVklQJywgZW46ICdWSVAnLCBmcjogJ1ZJUCcsIGl0OiAnVklQJyB9LFxuICAgIEhJU1RPUklDX0NPQUNIOiB7IGRlOiAnSGlzdG9yaWMnLCBlbjogJ2hpc3RvcmljJywgZnI6ICdoaXN0b3JpcXVlJywgaXQ6ICdoaXN0b3JpYycgfSxcbiAgICBJTkNMVURJTkdfTUVBTDoge1xuICAgICAgZGU6ICdNYWhsemVpdCBpbmJlZ3JpZmZlbicsXG4gICAgICBlbjogJ21lYWwgaW5jbHVkZWQnLFxuICAgICAgZnI6ICdyZXBhcyBpbmNsdXMnLFxuICAgICAgaXQ6ICdwYXN0byBpbmNsdXNvJyxcbiAgICB9LFxuICAgIElOQ0xVRElOR19EUklOSzoge1xuICAgICAgZGU6ICdXaWxsa29tbWVuc2dldHLDpG5rIGluYmVncmlmZmVuJyxcbiAgICAgIGVuOiAnd2VsY29tZSBkcmluayBpbmNsdWRlZCcsXG4gICAgICBmcjogJ2JvaXNzb24gZGUgYmllbnZlbnVlIGluY2x1c2UnLFxuICAgICAgaXQ6ICdiZXZhbmRhIGRpIGJlbnZlbnV0byBpbmNsdXNvJyxcbiAgICB9LFxuICAgIEtJT1NRVUU6IHsgZGU6ICdLaW9zaycsIGVuOiAna2lvc2snLCBmcjogJ2tpb3NxdWUnLCBpdDogJ2NoaW9zY28nIH0sXG4gICAgTEFESUVTOiB7XG4gICAgICBkZTogJ0RhbWVuYWJ0ZWlsJyxcbiAgICAgIGVuOiAnd29tZW4gQ29tcGFydG1lbnQnLFxuICAgICAgZnI6ICdjb21wYXJ0aW1lbnQgZmVtbWVzJyxcbiAgICAgIGl0OiAnY29tcGFydGltZW50byBkb25uZScsXG4gICAgfSxcbiAgICBMT1dFUl9CRUQ6IHsgZGU6ICd1bnRlbicsIGVuOiAnYXQgdGhlIGJvdHRvbScsIGZyOiAnZW4gYmFzJywgaXQ6ICdpbiBiYXNzbycgfSxcbiAgICBMT1dFUl9ERUNLOiB7IGRlOiAndW50ZW4nLCBlbjogJ2F0IHRoZSBib3R0b20nLCBmcjogJ2VuIGJhcycsIGl0OiAnaW4gYmFzc28nIH0sXG4gICAgTUVOOiB7XG4gICAgICBkZTogJ0hlcnJlbmFidGVpbCcsXG4gICAgICBlbjogJ2dlbnRzIGNvbXBhcnRtZW50JyxcbiAgICAgIGZyOiAnY29tcGFydGltZW50IGhvbW1lcycsXG4gICAgICBpdDogJ2NvbXBhcnRpbWVudG8gVW9taW5pJyxcbiAgICB9LFxuICAgIE1JRERMRV9CRUQ6IHsgZGU6ICdNaXR0ZScsIGVuOiAnbWlkZGxlJywgZnI6ICdtaWxpZXUnLCBpdDogJ2NlbnRybycgfSxcbiAgICBNSURETEVfREVDSzogeyBkZTogJ01pdHRlJywgZW46ICdtaWRkbGUnLCBmcjogJ21pbGlldScsIGl0OiAnY2VudHJvJyB9LFxuICAgIE1JRERMRV9TRUFUOiB7IGRlOiAnTWl0dGUnLCBlbjogJ21pZGRsZScsIGZyOiAnbWlsaWV1JywgaXQ6ICdjZW50cm8nIH0sXG4gICAgTUlOSV9TVUlURToge1xuICAgICAgZGU6ICdNaW5pIENhYmluJyxcbiAgICAgIGVuOiAnbWluaSBDYWJpbicsXG4gICAgICBmcjogJ01pbmkgQ2FiaW4nLFxuICAgICAgaXQ6ICdNaW5pIENhYmluJyxcbiAgICB9LFxuICAgIE1JWEVEOiB7XG4gICAgICBkZTogJ2dlbWlzY2h0ZXMgQWJ0ZWlsJyxcbiAgICAgIGVuOiAnbWl4ZWQgY29tcGFydG1lbnQnLFxuICAgICAgZnI6ICdjb21wYXJ0aW1lbnQgbWl4dGUnLFxuICAgICAgaXQ6ICdjb21wYXJ0aW1lbnRvIG1pc3RvJyxcbiAgICB9LFxuICAgIE1PVE9SX0NZQ0xFOiB7IGRlOiAnTW90b3JyYWQnLCBlbjogJ21vdG9yY3ljbGUnLCBmcjogJ21vdG8nLCBpdDogJ21vdG9jaWNsZXR0YScgfSxcbiAgICBNT1RPUl9DWUNMRV9TQzoge1xuICAgICAgZGU6ICdNb3RvcnJhZCBtaXQgU2VpdGVud2FnZW4nLFxuICAgICAgZW46ICdtb3RvcmN5Y2xlIHdpdGggc2lkZWNhcicsXG4gICAgICBmcjogJ21vdG8gYXZlYyBzaWRlLWNhcicsXG4gICAgICBpdDogJ21vdG9jaWNsZXR0YSBjb24gc2lkZWNhcicsXG4gICAgfSxcbiAgICBORUFSX0FOSU1BTFM6IHtcbiAgICAgIGRlOiAnbmFoIGFtIEhhdXN0aWVyJyxcbiAgICAgIGVuOiAnY2xvc2UgdG8gcGV0JyxcbiAgICAgIGZyOiAncHJvY2hlIGRlIGzigJlhbmltYWwgZGUgY29tcGFnbmllJyxcbiAgICAgIGl0OiAndmljaW5vIGFsbOKAmWFuaW1hbGUgZG9tZXN0aWNvJyxcbiAgICB9LFxuICAgIE5FQVJfQVNTSVNUQU5UX0RPR19BUkVBOiB7XG4gICAgICBkZTogJ25haCBhbSBBc3Npc3RlbnpodW5kJyxcbiAgICAgIGVuOiAnY2xvc2UgdG8gYXNzaXN0YW5jZSBkb2cnLFxuICAgICAgZnI6ICdwcsOocyBkdSBjaGllbiBk4oCZYXNzaXN0YW5jZScsXG4gICAgICBpdDogJ3ZpY2lubyBhbCBjYW5lIGRhIGFzc2lzdGVuemEnLFxuICAgIH0sXG4gICAgTkVBUl9ESU5JTkc6IHtcbiAgICAgIGRlOiAnbmFoIGFtIFNwZWlzZXdhZ2VuJyxcbiAgICAgIGVuOiAnY2xvc2UgdG8gZGluaW5nIGNhcicsXG4gICAgICBmcjogJ8OgIHByb3hpbWl0w6kgZGUgbGEgdm9pdHVyZS1yZXN0YXVyYW50JyxcbiAgICAgIGl0OiAnbmVsbGUgdmljaW5hbnplIGRlbGxhIGNhcnJvenphIHJpc3RvcmFudGV2JyxcbiAgICB9LFxuICAgIE5FQVJfUExBWV9BUkVBOiB7XG4gICAgICBkZTogJ25haCBhbSBTcGllbHBsYXR6JyxcbiAgICAgIGVuOiAnY2xvc2UgdG8gcGxheWdyb3VuZCcsXG4gICAgICBmcjogJ8OgIHByb3hpbWl0w6kgZGUgbOKAmWFpcmUgZGUgamV1eCcsXG4gICAgICBpdDogJ3ZpY2lubyBhbCBwYXJjbyBnaW9jaGknLFxuICAgIH0sXG4gICAgTkVBUl9CSUNZQ0xFX0FSRUE6IHtcbiAgICAgIGRlOiAnbmFoIGFtIFZlbG9wbGF0eicsXG4gICAgICBlbjogJ2Nsb3NlIHRvIGJpa2Ugc3BhY2UnLFxuICAgICAgZnI6ICfDoCBwcm94aW1pdMOpIGRlIGxhIHBsYWNlIHBvdXIgdsOpbG8nLFxuICAgICAgaXQ6ICd2aWNpbm8gYWwgcG9zdG8gYmljaScsXG4gICAgfSxcbiAgICBORUFSX1dIRUVMQ0hBSVI6IHtcbiAgICAgIGRlOiAnbmFoIGFtIFJvbGxzdHVobHBsYXR6JyxcbiAgICAgIGVuOiAnY2xvc2UgdG8gd2hlZWxjaGFpciBzcGFjZScsXG4gICAgICBmcjogJ8OgIHByb3hpbWl0w6kgZGUgbOKAmWVtcGxhY2VtZW50IHBvdXIgZmF1dGV1aWxzIHJvdWxhbnRzJyxcbiAgICAgIGl0OiAndmljaW5vIGFsIHBvc3RvIHBlciBzZWRpZSBhIHJvdGVsbGUnLFxuICAgIH0sXG4gICAgT1BFTl9TUEFDRToge1xuICAgICAgZGU6ICdNaXR0ZWxnYW5nJyxcbiAgICAgIGVuOiAnbWlkZGxlIGFpc2xlJyxcbiAgICAgIGZyOiAnY291bG9pciBjZW50cmFsJyxcbiAgICAgIGl0OiAnY29ycmlkb2lvIGNlbnRyYWxlJyxcbiAgICB9LFxuICAgIFBBTk9SQU1BOiB7XG4gICAgICBkZTogJ1Bhbm9yYW1hd2FnZW4nLFxuICAgICAgZW46ICdwYW5vcmFtYSBjb2FjaCcsXG4gICAgICBmcjogJ3ZvaXR1cmUgcGFub3JhbWlxdWUnLFxuICAgICAgaXQ6ICdjYXJyb3p6YSBwYW5vcmFtaWNhJyxcbiAgICB9LFxuICAgIFBIT05FOiB7IGRlOiAnTW9iaWxlJywgZW46ICdtb2JpbGUnLCBmcjogJ21vYmlsZScsIGl0OiAnbW9iaWxlJyB9LFxuICAgIFBPV0VSOiB7XG4gICAgICBkZTogJ01pdCBTdGVja2Rvc2UnLFxuICAgICAgZW46ICd3aXRoIHBvd2VyIHNvY2tldCcsXG4gICAgICBmcjogJ2F2ZWMgcHJpc2UnLFxuICAgICAgaXQ6ICdjb24gcHJlc2EgZWxldHRyaWNhJyxcbiAgICB9LFxuICAgIFBSQU06IHtcbiAgICAgIGRlOiAnS2luZGVyd2FnZW4nLFxuICAgICAgZW46ICdjbG9zZSB0byBzcGFjZSBmb3Igc3Ryb2xsZXJzJyxcbiAgICAgIGZyOiAncG91c3NldHRlcycsXG4gICAgICBpdDogJ3Bhc3NlZ2dpbm8nLFxuICAgIH0sXG4gICAgUFJBTV9XSVRIX1NFQVQ6IHtcbiAgICAgIGRlOiAnbmFoIGFtIFBsYXR6IGbDvHIgS2luZGVyd2FnZW4nLFxuICAgICAgZW46ICdTZWF0IHdpdGggc3BhY2UgZm9yIGEgcHJhbScsXG4gICAgICBmcjogJ3Byw6hzIGRlIGzigJllc3BhY2UgcG91ciBsZXMgcG91c3NldHRlcycsXG4gICAgICBpdDogJ3ZpY2lubyBhbCBwb3N0byBwZXIgcGFzc2VnZ2luaScsXG4gICAgfSxcbiAgICBQUkVNSVVNOiB7IGRlOiAnUHJlbWl1bScsIGVuOiAncHJlbWl1bScsIGZyOiAncHJlbWl1bScsIGl0OiAncHJlbWl1bScgfSxcbiAgICBSRVNUQVVSQU5UOiB7IGRlOiAnUmVzdGF1cmFudCcsIGVuOiAncmVzdGF1cmFudCcsIGZyOiAncmVzdGF1cmFudCcsIGl0OiAncmlzdG9yYW50ZScgfSxcbiAgICBSRVNUUklDVEVEX1ZJRVc6IHtcbiAgICAgIGRlOiAnRmVuc3RlciBtaXQgZWluZ2VzY2hyw6Rua3RlciBTaWNodCcsXG4gICAgICBlbjogJ3dpbmRvd3Mgd2l0aCByZXN0cmljdGVkIHZpc2liaWxpdHknLFxuICAgICAgZnI6ICdmZW7DqnRyZXMgYXZlYyB2aXNpYmlsaXTDqSByw6lkdWl0ZScsXG4gICAgICBpdDogJ2ZpbmVzdHJlIGNvbiB2aXNpYmlsaXTDoCBsaW1pdGF0YScsXG4gICAgfSxcbiAgICBTQUxPTjogeyBkZTogJ1NhbG9uJywgZW46ICdTYWxvbicsIGZyOiAnc2Fsb24nLCBpdDogJ1NhbG9uJyB9LFxuICAgIFNJTEVOQ0U6IHtcbiAgICAgIGRlOiAnUnVoZWFidGVpbCcsXG4gICAgICBlbjogJ3F1aWV0IGNvbXBhcnRtZW50JyxcbiAgICAgIGZyOiAnY29tcGFydGltZW50IHNpbGVuY2UnLFxuICAgICAgaXQ6ICdjb21wYXJ0aW1lbnRvIGRlbCBzaWxlbnppbycsXG4gICAgfSxcbiAgICBTSU5HTEU6IHsgZGU6ICdTaW5nbGUnLCBlbjogJ1NpbmdsZScsIGZyOiAnU2luZ2xlJywgaXQ6ICdTaW5nbGUnIH0sXG4gICAgU0lOR0xFX1dDOiB7XG4gICAgICBkZTogJ1NpbmdsZSBtaXQgV0MnLFxuICAgICAgZW46ICdTaW5nbGUgd2l0aCBXQycsXG4gICAgICBmcjogJ1NpbmdsZSBhdmVjIFdDJyxcbiAgICAgIGl0OiAnU2luZ2xlIGNvbiBXQycsXG4gICAgfSxcbiAgICBTSU5HTEVfU1dDOiB7XG4gICAgICBkZTogJ1NpbmdsZSBEZWx1eGUnLFxuICAgICAgZW46ICdTaW5nbGUgRGVsdXhlJyxcbiAgICAgIGZyOiAnU2luZ2xlIERlbHV4ZScsXG4gICAgICBpdDogJ1NpbmdsZSBEZWx1eGUnLFxuICAgIH0sXG4gICAgU0lERV9CWV9TSURFOiB7XG4gICAgICBkZTogJ0R1byBjw7R0ZSDDoCBjw7R0ZScsXG4gICAgICBlbjogJ0R1byBjw7R0ZSDDoCBjw7R0ZScsXG4gICAgICBmcjogJ0R1byBjw7R0ZSDDoCBjw7R0ZScsXG4gICAgICBpdDogJ0R1byBjw7R0ZSDDoCBjw7R0ZScsXG4gICAgfSxcbiAgICBTTEVFUEVSRVRURTogeyBkZTogJ1NsZWVwZXJldHRlJywgZW46ICdTbGVlcGVyZXR0ZScsIGZyOiAnU2xlZXBlcmV0dGUnLCBpdDogJ1NsZWVwZXJldHRlJyB9LFxuICAgIFNPTE86IHtcbiAgICAgIGRlOiAnZnJlaWVyIE5lYmVuc2l0eicsXG4gICAgICBlbjogJ2ZyZWUgc2lkZSBzZWF0JyxcbiAgICAgIGZyOiAnc2nDqGdlIHZvaXNpbiBsaWJyZScsXG4gICAgICBpdDogJ3NlZGlsZSBzZWNvbmRhcmlvIGxpYmVybycsXG4gICAgfSxcbiAgICBTT0xPX0NPTToge1xuICAgICAgZGU6ICdmcmVpZXIgTmViZW5zaXR6JyxcbiAgICAgIGVuOiAnZnJlZSBzaWRlIHNlYXQnLFxuICAgICAgZnI6ICdzacOoZ2Ugdm9pc2luIGxpYnJlJyxcbiAgICAgIGl0OiAnc2VkaWxlIHNlY29uZGFyaW8gbGliZXJvJyxcbiAgICB9LFxuICAgIFNMRUVQRVI6IHtcbiAgICAgIGRlOiAnU2luZ2xlIChrbGVpbiknLFxuICAgICAgZW46ICdTaW5nbGUgKHNtYWxsKScsXG4gICAgICBmcjogJ1NpbmdsZSAocGV0aXQpJyxcbiAgICAgIGl0OiAnU2luZ2xlIChwaWNjb2xvKScsXG4gICAgfSxcbiAgICBUQU5ERU06IHsgZGU6ICdUYW5kZW0nLCBlbjogJ3RhbmRlbScsIGZyOiAndGFuZGVtJywgaXQ6ICd0YW5kZW0nIH0sXG4gICAgVEFCTEU6IHsgZGU6ICdUaXNjaCcsIGVuOiAndGFibGUnLCBmcjogJ3RhYmxlJywgaXQ6ICd0YXZvbG8nIH0sXG4gICAgVE9VUklTVF9TTEVFUEVSXzI6IHsgZGU6ICdEdW8nLCBlbjogJ0R1bycsIGZyOiAnRHVvJywgaXQ6ICdEdW8nIH0sXG4gICAgVE9VUklTVF9TTEVFUEVSXzM6IHsgZGU6ICczZXInLCBlbjogJ1RyaXBsZScsIGZyOiAnVHJpcGxlJywgaXQ6ICdUcmlwbGUnIH0sXG4gICAgVE9VUklTVF9TTEVFUEVSXzNfV0M6IHtcbiAgICAgIGRlOiAnM2VyIG1pdCBXQycsXG4gICAgICBlbjogJ1RyaXBsZSB3aXRoIFdDJyxcbiAgICAgIGZyOiAnMyBwbGFjZXMgYXZlYyBXQycsXG4gICAgICBpdDogJzMgcG9zdGkgY29uIFdDJyxcbiAgICB9LFxuICAgIFRPVVJJU1RfU0xFRVBFUl8zX1NXQzoge1xuICAgICAgZGU6ICczZXIgRGVsdXhlJyxcbiAgICAgIGVuOiAnVHJpcGxlIERlbHV4ZScsXG4gICAgICBmcjogJzMgcGxhY2VzIERlbHV4ZScsXG4gICAgICBpdDogJzMgcG9zdGkgRGVsdXhlJyxcbiAgICB9LFxuICAgIFRPVVJJU1RfU0xFRVBFUl80OiB7IGRlOiAnNGVyJywgZW46ICc0LWJlcnRoJywgZnI6ICc0IHBsYWNlcycsIGl0OiAnNCBwb3N0aScgfSxcbiAgICBUUkFWRUxfRElSRUNUSU9OX1RSQU5TVkVSU0VMWToge1xuICAgICAgZGU6ICdxdWVyIHp1ciBGYWhydHJpY2h0dW5nJyxcbiAgICAgIGVuOiAndHJhbnN2ZXJzZWx5IHRvIHRyYXZlbCBkaXJlY3Rpb24nLFxuICAgICAgZnI6ICdUcmFuc3ZlcnNhbGVtZW50IMOgIGxhIGRpcmVjdGlvbiBkdSB2b3lhZ2UnLFxuICAgICAgaXQ6ICd0cmFzdmVyc2FsbWVudGUgYWxsYSBkaXJlemlvbmUgZGkgdmlhZ2dpbycsXG4gICAgfSxcbiAgICBUUkFWRUxfRElSRUNUSU9OX0lOX0RJUkVDVElPTjoge1xuICAgICAgZGU6ICdpbiBGYWhydHJpY2h0dW5nJyxcbiAgICAgIGVuOiAnaW4gdHJhdmVsIGRpcmVjdGlvbicsXG4gICAgICBmcjogJ0RhbnMgbGUgc2VucyBkZSBsYSBtYXJjaGUnLFxuICAgICAgaXQ6ICduZWxsYSBkaXJlemlvbmUgZGkgbWFyY2lhJyxcbiAgICB9LFxuICAgIFRSQVZFTF9ESVJFQ1RJT05fSU5fT1BQT1NJVEVfRElSRUNUSU9OOiB7XG4gICAgICBkZTogJ2dlZ2VuIGRpZSBGYWhydHJpY2h0dW5nJyxcbiAgICAgIGVuOiAnaW4gb3Bwb3NpdGUgZGlyZWN0aW9uJyxcbiAgICAgIGZyOiAnRGFucyBsZSBzZW5zIGludmVyc2UgZGUgbGEgbWFyY2hlJyxcbiAgICAgIGl0OiAnbmVsbGEgZGlyZXppb25lIG9wcG9zdGEgYWxsYSBtYXJjaWEnLFxuICAgIH0sXG4gICAgVVBQRVJfQkVEOiB7IGRlOiAnb2JlbicsIGVuOiAnYXQgdGhlIHRvcCcsIGZyOiAnZW4gaGF1dCcsIGl0OiAnaW4gYWx0bycgfSxcbiAgICBVUFBFUl9ERUNLOiB7IGRlOiAnb2JlbicsIGVuOiAnYXQgdGhlIHRvcCcsIGZyOiAnZW4gaGF1dCcsIGl0OiAnaW4gYWx0bycgfSxcbiAgICBWSURFTzoge1xuICAgICAgZGU6ICdtaXQgVW50ZXJoYWx0dW5nc3N5dGVtJyxcbiAgICAgIGVuOiAnd2l0aCBlbnRlcnRhaW5tZW50IHN5c3RlbScsXG4gICAgICBmcjogJ2F2ZWMgc3lzdMOobWUgZGUgZGl2ZXJ0aXNzZW1lbnQnLFxuICAgICAgaXQ6ICdjb24gc2lzdGVtYSBkaSBpbnRyYXR0ZW5pbWVudG8nLFxuICAgIH0sXG4gICAgV0hFRUxDSEFJUjoge1xuICAgICAgZGU6ICdSb2xsc3R1aGwnLFxuICAgICAgZW46ICd3aGVlbGNoYWlyJyxcbiAgICAgIGZyOiAnZmF1dGV1aWwgcm91bGFudCcsXG4gICAgICBpdDogJ3NlZGlhIGEgcm90ZWxsZScsXG4gICAgfSxcbiAgICBXSEVFTENIQUlSX0FORF9TRUFUOiB7XG4gICAgICBkZTogJ1JvbGxzdHVobCBtaXQgenVzw6R0emxpY2hlbSBTaXR6cGxhdHonLFxuICAgICAgZW46ICd3aGVlbGNoYWlyIHdpdGggYWRkaXRpb25hbCBzZWF0JyxcbiAgICAgIGZyOiAnZmF1dGV1aWwgcm91bGFudCBhdmVjIHBsYWNlIGFzc2lzZSBzdXBwbMOpbWVudGFpcmUnLFxuICAgICAgaXQ6ICdzZWRpYSBhIHJvdGVsbGUgY29uIHBvc3RvIGEgc2VkZXJlIGFnZ2l1bnRpdm8nLFxuICAgIH0sXG4gICAgV0hFRUxDSEFJUl9OT19TRUFUOiB7XG4gICAgICBkZTogJ1JvbGxzdHVobCBvaG5lIHp1c8OkdHpsaWNoZW4gU2l0enBsYXR6JyxcbiAgICAgIGVuOiAnV2hlZWxjaGFpciBzcGFjZSB3aXRob3V0IGFkZGl0aW9uYWwgc2VhdCcsXG4gICAgICBmcjogJ2ZhdXRldWlsIHJvdWxhbnQgYXZlYyBwbGFjZSBhc3Npc2Ugc3VwcGzDqW1lbnRhaXJlJyxcbiAgICAgIGl0OiAnc2VkaWEgYSByb3RlbGxlIGNvbiBwb3N0byBhIHNlZGVyZSBhZ2dpdW50aXZvJyxcbiAgICB9LFxuICAgIFdJRkk6IHsgZGU6ICdXbGFuJywgZW46ICdXaS1GaScsIGZyOiAnV2ktRmknLCBpdDogJ1dsYW4nIH0sXG4gICAgV0lORE9XX1NFQVQ6IHtcbiAgICAgIGRlOiAnRmVuc3RlcicsXG4gICAgICBlbjogJ3dpbmRvdycsXG4gICAgICBmcjogJ2ZlbsOqdHJlJyxcbiAgICAgIGl0OiAnZmluZXN0cmUnLFxuICAgIH0sXG4gICAgV0lUSE9VVF9UUkFZX1RBQkxFOiB7XG4gICAgICBkZTogJ29obmUgVGlzY2gnLFxuICAgICAgZW46ICd3aXRob3V0IHRhYmxlJyxcbiAgICAgIGZyOiAnc2FucyB0YWJsZScsXG4gICAgICBpdDogJ3NlbnphIHRhdm9sbycsXG4gICAgfSxcbiAgICBXSVRIX0FOSU1BTFM6IHtcbiAgICAgIGRlOiAnVGllcmUgZXJsYXVidCcsXG4gICAgICBlbjogJ2FuaW1hbHMgYWxsb3dlZCcsXG4gICAgICBmcjogJ2FuaW1hdXggYWRtaXMnLFxuICAgICAgaXQ6ICdhbmltYWxpIGFtbWVzc2knLFxuICAgIH0sXG4gICAgV0lUSF9TTUFMTF9DSElMRFJFTjoge1xuICAgICAgZGU6ICdLbGVpbmtpbmRhYnRlaWwnLFxuICAgICAgZW46ICdpbmZhbnQgY29tcGFydG1lbnQnLFxuICAgICAgZnI6ICdjb21wYXJ0aW1lbnQgcGV0aXQgZW5mYW50cycsXG4gICAgICBpdDogJ2NvbXBhcnRpbWVudG8gcGVyIGJhbWJpbmkgcGljY29saScsXG4gICAgfSxcbiAgICBXSVRIT1VUX0FOSU1BTFM6IHtcbiAgICAgIGRlOiAnVGllcmUgbmljaHQgZXJsYXVidCcsXG4gICAgICBlbjogJ3BldHMgbm90IGFsbG93ZWQnLFxuICAgICAgZnI6ICdhbmltYXV4IG5vbiBhdXRvcmlzw6lzJyxcbiAgICAgIGl0OiAnYW5pbWFsaSBub24gYW1tZXNzaScsXG4gICAgfSxcbiAgfSxcbiAgLy9QTEFDRSBDT05UUk9MIEFSSUEgTEFCRUxcbiAgUExBQ0VfQ09OVFJPTF9TRUFUX0ZSRUU6IHtcbiAgICBkZTogJ1NpdHpwbGF0eiBfcGFyYW0wXyBpc3QgZnJlaScsXG4gICAgZW46ICdTZWF0IF9wYXJhbTBfIGlzIGF2YWlsYWJsZScsXG4gICAgZnI6ICdQbGFjZSBfcGFyYW0wXyBlc3QgbGlicmUnLFxuICAgIGl0OiAnUG9zdG8gYSBzZWRlcmUgX3BhcmFtMF8gw6ggbGliZXJvJyxcbiAgfSxcbiAgUExBQ0VfQ09OVFJPTF9TRUFUX1NFTEVDVEVEOiB7XG4gICAgZGU6ICdTaXR6cGxhdHogX3BhcmFtMF8gaXN0IGF1c2dld8OkaGx0JyxcbiAgICBlbjogJ1NlYXQgX3BhcmFtMF8gaGFzIGJlZW4gc2VsZWN0ZWQnLFxuICAgIGZyOiAnUGxhY2UgX3BhcmFtMF8gZXN0IHPDqWxlY3Rpb25uw6llJyxcbiAgICBpdDogJ1Bvc3RvIGEgc2VkZXJlIF9wYXJhbTBfIMOoIHNlbGV6aW9uYXRvJyxcbiAgfSxcbiAgUExBQ0VfQ09OVFJPTF9CSUNZQ0xFX0ZSRUU6IHtcbiAgICBkZTogJ1ZlbG9wbGF0eiBfcGFyYW0wXyBpc3QgZnJlaScsXG4gICAgZW46ICdCaWtlIHNwYWNlIF9wYXJhbTBfIGlzIGF2YWlsYWJsZScsXG4gICAgZnI6ICdQbGFjZSBwb3VyIHbDqWxvIF9wYXJhbTBfIGVzdCBsaWJyZScsXG4gICAgaXQ6ICdQb3N0byBiaWNpIF9wYXJhbTBfIMOoIGxpYmVybycsXG4gIH0sXG4gIFBMQUNFX0NPTlRST0xfQklDWUNMRV9TRUxFQ1RFRDoge1xuICAgIGRlOiAnVmVsb3BsYXR6IF9wYXJhbTBfIGlzdCBhdXNnZXfDpGhsdCcsXG4gICAgZW46ICdCaWtlIHNwYWNlIF9wYXJhbTBfIGhhcyBiZWVuIHNlbGVjdGVkJyxcbiAgICBmcjogJ1BsYWNlIHBvdXIgdsOpbG8gX3BhcmFtMF8gZXN0IHPDqWxlY3Rpb25uw6llJyxcbiAgICBpdDogJ1Bvc3RvIGJpY2kgX3BhcmFtMF8gw6ggc2VsZXppb25hdG8nLFxuICB9LFxuICBQTEFDRV9DT05UUk9MX1NFQVRfUkVTVFJJQ1RFRDoge1xuICAgIGRlOiAnU2l0enBsYXR6IGlzdCBuaWNodCBidWNoYmFyJyxcbiAgICBlbjogJ1NlYXQgY2Fubm90IGJlIHJlc2VydmVkJyxcbiAgICBmcjogJ1BsYWNlIG5lIHBldXQgcGFzIMOqdHJlIHLDqXNlcnbDqWUnLFxuICAgIGl0OiAnUG9zdG8gYSBzZWRlcmUgbm9uIMOoIHByZW5vdGFiaWxlJyxcbiAgfSxcbiAgUExBQ0VfQ09OVFJPTF9CSUNZQ0xFX1JFU1RSSUNURUQ6IHtcbiAgICBkZTogJ1ZlbG9wbGF0eiBpc3QgbmljaHQgYnVjaGJhcicsXG4gICAgZW46ICdCaWtlIHNwYWNlIGNhbm5vdCBiZSByZXNlcnZlZCcsXG4gICAgZnI6ICdQbGFjZSBwb3VyIHbDqWxvIGluZGlzcG9uaWJsZScsXG4gICAgaXQ6ICdQb3N0byBiaWNpIG5vbiDDqCBwcmVub3RhYmlsZScsXG4gIH0sXG4gIFBMQUNFX0NPTlRST0xfU0VBVF9BTExPQ0FURUQ6IHtcbiAgICBkZTogJ1NpdHpwbGF0eiBfcGFyYW0wXyBpc3QgYmVzZXR6dCcsXG4gICAgZW46ICdTZWF0IF9wYXJhbTBfIGlzIG9jY3VwaWVkJyxcbiAgICBmcjogJ1BsYWNlIF9wYXJhbTBfIGVzdCBvY2N1cMOpZScsXG4gICAgaXQ6ICdQb3N0byBhIHNlZGVyZSBfcGFyYW0wXyDDqCBvY2N1cGF0bycsXG4gIH0sXG4gIFBMQUNFX0NPTlRST0xfQklDWUNMRV9BTExPQ0FURUQ6IHtcbiAgICBkZTogJ1ZlbG9wbGF0eiBfcGFyYW0wXyBpc3QgYmVzZXR6dCcsXG4gICAgZW46ICdCaWtlIHNwYWNlIF9wYXJhbTBfIGlzIG9jY3VwaWVkJyxcbiAgICBmcjogJ1BsYWNlIHBvdXIgdsOpbG8gX3BhcmFtMF8gZXN0IG9jY3Vww6llJyxcbiAgICBpdDogJ1Bvc3RvIGJpY2kgX3BhcmFtMF8gw6ggb2NjdXBhdG8nLFxuICB9LFxuICBQTEFDRV9QUk9QRVJUWToge1xuICAgIGRlOiAnUGxhdHplaWdlbnNjaGFmdGVuJyxcbiAgICBlbjogJ1NlYXQgZmVhdHVyZXMnLFxuICAgIGZyOiAnQ2FyYWN0w6lyaXN0aXF1ZXMgZGUgbGEgcGxhY2UnLFxuICAgIGl0OiAnQ2FyYXR0ZXJpc3RpY2hlIGRlbCBwb3N0bycsXG4gIH0sXG4gIENPQUNIX0FWQUlMQUJMRV9TRVJWSUNFUzoge1xuICAgIGRlOiAnVmVyZsO8Z2JhcmUgU2VydmljZXMnLFxuICAgIGVuOiAnQXZhaWxhYmxlIHNlcnZpY2VzJyxcbiAgICBmcjogJ1NlcnZpY2VzIGRpc3BvbmlibGVzJyxcbiAgICBpdDogJ1NlcnZpemkgZGlzcG9uaWJpbGknLFxuICB9LFxuXG4gIC8vIExFQVZFIEVYQU1QTEUgQVQgTEFTVCBQT1NJVElPTlxuICBFWEFNUExFX1dJVEhfUEFSQU1TX0RPX05PVF9VU0U6IHtcbiAgICBkZTogJ1Rlc3QgbWl0IFBhcmFtZXRlcm46IF9wYXJhbTBfIHVuZCBfcGFyYW0xXycsXG4gICAgZW46ICdUZXN0IHdpdGggcGFyYW1ldGVyczogX3BhcmFtMF8gYW5kIF9wYXJhbTFfJyxcbiAgICBmcjogJ1Rlc3QgYXZlYyBwYXJhbcOodHJlczogX3BhcmFtMF8gZXQgX3BhcmFtMV8nLFxuICAgIGl0OiAnVGVzdCBjb24gcGFyYW1ldHJpOiBfcGFyYW0wXyBlIF9wYXJhbTFfJyxcbiAgfSxcbn07XG5cbi8qKlxuICogUmV0dXJucyB0aGUgdHJhbnNsYXRpb24gZm9yIGEgc2VhdCByZXNlcnZhdGlvbiBzdHJpbmcgYmFzZWQgb24gYSBrZXkgYW5kIGxhbmd1YWdlLlxuICogU3VwcG9ydHMgbmVzdGVkIGtleXMgKGUuZy4gXCJQTEFDRV9QUk9QRVJUSUVTLkFJU0xFX1NFQVRcIikgYW5kIHBsYWNlaG9sZGVyIHJlcGxhY2VtZW50LlxuICpcbiAqIEBwYXJhbSBrZXkgVGhlIHRyYW5zbGF0aW9uIGtleSAoY2FuIGJlIG5lc3RlZCwgZS5nLiBcIlBMQUNFX1BST1BFUlRJRVMuQUlTTEVfU0VBVFwiKS5cbiAqIEBwYXJhbSBsYW5ndWFnZSBUaGUgZGVzaXJlZCBsYW5ndWFnZSAoZS5nLiBcImRlXCIsIFwiZW5cIiwgXCJmclwiLCBcIml0XCIpLlxuICogQHBhcmFtIGFyZ3MgT3B0aW9uYWwgYXJyYXkgb2YgcGFyYW1ldGVycyB0byByZXBsYWNlIHBsYWNlaG9sZGVycyBsaWtlIF9wYXJhbTBfLCBfcGFyYW0xXyBpbiB0aGUgdHJhbnNsYXRpb24gc3RyaW5nLlxuICogQHJldHVybnMgVGhlIHRyYW5zbGF0ZWQgc3RyaW5nIG9yIGFuIGVtcHR5IHN0cmluZyBpZiBubyB0cmFuc2xhdGlvbiBpcyBmb3VuZC5cbiAqXG4gKiBAZXhhbXBsZVxuICogZ2V0STE4blNlYXRSZXNlcnZhdGlvbignQ09BQ0hfVEFCTEVfQ0FQVElPTicsICdkZScsIFsnMTInXSk7IC8vIFwiV2FnZW4gMTIgc2VsZWt0aWVydFwiXG4gKiBnZXRJMThuU2VhdFJlc2VydmF0aW9uKCdQTEFDRV9QUk9QRVJUSUVTLkFJU0xFX1NFQVQnLCAnZW4nKTsgLy8gXCJBaXNsZSBzZWF0XCJcbiAqL1xuZXhwb3J0IGNvbnN0IGdldEkxOG5TZWF0UmVzZXJ2YXRpb24gPSAoa2V5OiBzdHJpbmcsIGxhbmd1YWdlOiBzdHJpbmcsIGFyZ3M/OiBhbnlbXSk6IHN0cmluZyA9PiB7XG4gIGxldCBpbm5lclZhbHVlOiBhbnkgPSBpMThuT2JqZWN0cztcbiAgbGV0IHRyYW5zbGF0ZWRTdHIgPSAnJztcblxuICAvLyBVbnRlcnN0w7x0enQgdmVyc2NoYWNodGVsdGUgS2V5cyBtaXQgUHVua3Rub3RhdGlvblxuICBmb3IgKGNvbnN0IHBhcnQgb2Yga2V5LnNwbGl0KCcuJykpIHtcbiAgICBpbm5lclZhbHVlID0gaW5uZXJWYWx1ZT8uW3BhcnRdO1xuICAgIGlmICghaW5uZXJWYWx1ZSkgYnJlYWs7XG4gIH1cblxuICBpZiAodHlwZW9mIGlubmVyVmFsdWUgPT09ICdvYmplY3QnICYmIGlubmVyVmFsdWUgIT09IG51bGwgJiYgIUFycmF5LmlzQXJyYXkoaW5uZXJWYWx1ZSkpIHtcbiAgICB0cmFuc2xhdGVkU3RyID0gaW5uZXJWYWx1ZVtsYW5ndWFnZV0gfHwgJyc7XG4gIH0gZWxzZSBpZiAodHlwZW9mIGlubmVyVmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgdHJhbnNsYXRlZFN0ciA9IGlubmVyVmFsdWU7XG4gIH1cblxuICByZXR1cm4gYXJnc1xuICAgID8gYXJncy5yZWR1Y2UoKHZhbCwgcGFyYW0sIGlkeCkgPT4gdmFsLnJlcGxhY2UoYF9wYXJhbSR7aWR4fV9gLCBwYXJhbSksIHRyYW5zbGF0ZWRTdHIpXG4gICAgOiB0cmFuc2xhdGVkU3RyO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUF1QkEsSUFBTSxjQUEyQjtDQUcvQixhQUFhO0VBQ1gsSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNMO0NBQ0QsWUFBWTtFQUNWLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDTDtDQUNELGFBQWE7RUFDWCxJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJO0VBQ0w7Q0FDRCxZQUFZO0VBQ1YsSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNMO0NBRUQscUJBQXFCO0VBQ25CLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDTDtDQUNELDZCQUE2QjtFQUMzQixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJO0VBQ0w7Q0FDRCx3QkFBd0I7RUFDdEIsSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNMO0NBQ0Qsc0JBQXNCO0VBQ3BCLElBQUk7RUFDSixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDTDtDQUNELGtCQUFrQjtFQUNoQixJQUFJO0VBQ0osSUFBSTtFQUNKLElBQUk7RUFDSixJQUFJO0VBQ0w7Q0FHRCxtQ0FB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