@vendure/admin-ui 1.5.0 → 2.0.0-next.2

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 (1151) hide show
  1. package/catalog/catalog.module.d.ts +30 -0
  2. package/catalog/components/apply-facet-dialog/apply-facet-dialog.component.d.ts +5 -2
  3. package/catalog/components/asset-detail/asset-detail.component.d.ts +6 -4
  4. package/catalog/components/asset-list/asset-list.component.d.ts +5 -2
  5. package/catalog/components/assets/assets.component.d.ts +3 -0
  6. package/catalog/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.d.ts +9 -7
  7. package/catalog/components/collection-contents/collection-contents.component.d.ts +5 -3
  8. package/catalog/components/collection-detail/collection-detail.component.d.ts +6 -3
  9. package/catalog/components/collection-list/collection-list.component.d.ts +6 -3
  10. package/catalog/components/collection-tree/collection-tree-node.component.d.ts +7 -3
  11. package/catalog/components/collection-tree/collection-tree.component.d.ts +10 -25
  12. package/catalog/components/collection-tree/collection-tree.service.d.ts +33 -0
  13. package/catalog/components/collection-tree/collection-tree.types.d.ts +7 -0
  14. package/catalog/components/confirm-variant-deletion-dialog/confirm-variant-deletion-dialog.component.d.ts +5 -2
  15. package/catalog/components/facet-detail/facet-detail.component.d.ts +7 -4
  16. package/catalog/components/facet-list/facet-list.component.d.ts +6 -3
  17. package/catalog/components/generate-product-variants/generate-product-variants.component.d.ts +3 -0
  18. package/catalog/components/option-value-input/option-value-input.component.d.ts +3 -0
  19. package/catalog/components/product-detail/product-detail.component.d.ts +16 -37
  20. package/catalog/components/product-detail/product-detail.types.d.ts +26 -0
  21. package/catalog/components/product-list/product-list.component.d.ts +6 -3
  22. package/catalog/components/product-options-editor/product-options-editor.component.d.ts +9 -4
  23. package/catalog/components/product-search-input/product-search-input.component.d.ts +9 -4
  24. package/catalog/components/product-variants-editor/product-variants-editor.component.d.ts +5 -2
  25. package/catalog/components/product-variants-list/product-variants-list.component.d.ts +23 -16
  26. package/catalog/components/product-variants-table/product-variants-table.component.d.ts +24 -11
  27. package/catalog/components/update-product-option-dialog/update-product-option-dialog.component.d.ts +5 -2
  28. package/catalog/components/variant-price-detail/variant-price-detail.component.d.ts +3 -0
  29. package/catalog/package.json +5 -6
  30. package/catalog/providers/product-detail/product-detail.service.d.ts +214 -93
  31. package/catalog/providers/routing/asset-resolver.d.ts +5 -3
  32. package/catalog/providers/routing/collection-resolver.d.ts +5 -2
  33. package/catalog/providers/routing/facet-resolver.d.ts +5 -4
  34. package/catalog/providers/routing/product-resolver.d.ts +5 -2
  35. package/catalog/providers/routing/product-variants-resolver.d.ts +5 -2
  36. package/catalog/public_api.d.ts +3 -0
  37. package/catalog/vendure-admin-ui-catalog.d.ts +1 -0
  38. package/core/app.component.d.ts +3 -0
  39. package/core/app.component.module.d.ts +7 -0
  40. package/core/common/base-detail.component.d.ts +2 -2
  41. package/core/common/base-entity-resolver.d.ts +1 -1
  42. package/core/common/base-list.component.d.ts +10 -0
  43. package/core/common/generated-types.d.ts +12072 -4235
  44. package/core/common/utilities/flatten-facet-values.d.ts +2 -2
  45. package/core/common/version.d.ts +1 -1
  46. package/core/components/app-shell/app-shell.component.d.ts +3 -0
  47. package/core/components/breadcrumb/breadcrumb.component.d.ts +3 -0
  48. package/core/components/channel-switcher/channel-switcher.component.d.ts +3 -0
  49. package/core/components/main-nav/main-nav.component.d.ts +3 -0
  50. package/core/components/notification/notification.component.d.ts +3 -0
  51. package/core/components/overlay-host/overlay-host.component.d.ts +3 -0
  52. package/core/components/theme-switcher/theme-switcher.component.d.ts +3 -0
  53. package/core/components/ui-language-switcher-dialog/ui-language-switcher-dialog.component.d.ts +4 -1
  54. package/core/components/user-menu/user-menu.component.d.ts +3 -0
  55. package/core/core.module.d.ts +18 -0
  56. package/core/data/client-state/client-defaults.d.ts +19 -7
  57. package/core/data/data.module.d.ts +6 -0
  58. package/core/data/definitions/administrator-definitions.d.ts +15 -15
  59. package/core/data/definitions/auth-definitions.d.ts +4 -4
  60. package/core/data/definitions/client-definitions.d.ts +16 -16
  61. package/core/data/definitions/collection-definitions.d.ts +9 -9
  62. package/core/data/definitions/customer-definitions.d.ts +22 -22
  63. package/core/data/definitions/facet-definitions.d.ts +10 -10
  64. package/core/data/definitions/order-definitions.d.ts +25 -25
  65. package/core/data/definitions/product-definitions.d.ts +44 -44
  66. package/core/data/definitions/promotion-definitions.d.ts +7 -7
  67. package/core/data/definitions/settings-definitions.d.ts +65 -65
  68. package/core/data/definitions/shared-definitions.d.ts +3 -3
  69. package/core/data/definitions/shipping-definitions.d.ts +9 -9
  70. package/core/data/providers/administrator-data.service.d.ts +15 -15
  71. package/core/data/providers/auth-data.service.d.ts +4 -3
  72. package/core/data/providers/base-data.service.d.ts +3 -0
  73. package/core/data/providers/client-data.service.d.ts +15 -14
  74. package/core/data/providers/collection-data.service.d.ts +11 -11
  75. package/core/data/providers/customer-data.service.d.ts +25 -25
  76. package/core/data/providers/data.service.d.ts +5 -2
  77. package/core/data/providers/facet-data.service.d.ts +12 -12
  78. package/core/data/providers/fetch-adapter.d.ts +3 -0
  79. package/core/data/providers/interceptor.d.ts +3 -0
  80. package/core/data/providers/order-data.service.d.ts +21 -21
  81. package/core/data/providers/product-data.service.d.ts +51 -51
  82. package/core/data/providers/promotion-data.service.d.ts +8 -8
  83. package/core/data/providers/settings-data.service.d.ts +52 -51
  84. package/core/data/providers/shipping-method-data.service.d.ts +12 -12
  85. package/core/data/query-result.d.ts +1 -1
  86. package/core/data/server-config.d.ts +5 -2
  87. package/core/package.json +5 -6
  88. package/core/providers/auth/auth.service.d.ts +5 -2
  89. package/core/providers/component-registry/component-registry.service.d.ts +3 -0
  90. package/core/providers/custom-detail-component/custom-detail-component.service.d.ts +3 -0
  91. package/core/providers/custom-field-component/custom-field-component.service.d.ts +3 -0
  92. package/core/providers/dashboard-widget/dashboard-widget.service.d.ts +3 -0
  93. package/core/providers/guard/auth.guard.d.ts +3 -0
  94. package/core/providers/health-check/health-check.service.d.ts +3 -0
  95. package/core/providers/i18n/custom-message-format-compiler.d.ts +3 -0
  96. package/core/providers/i18n/i18n.service.d.ts +3 -0
  97. package/core/providers/job-queue/job-queue.service.d.ts +3 -0
  98. package/core/providers/local-storage/local-storage.service.d.ts +3 -0
  99. package/core/providers/modal/modal.service.d.ts +4 -67
  100. package/core/providers/modal/modal.types.d.ts +67 -0
  101. package/core/providers/nav-builder/nav-builder.service.d.ts +3 -0
  102. package/core/providers/notification/notification.service.d.ts +3 -0
  103. package/core/providers/overlay-host/overlay-host.service.d.ts +3 -0
  104. package/core/public_api.d.ts +3 -1
  105. package/core/shared/components/action-bar/action-bar.component.d.ts +7 -0
  106. package/core/shared/components/action-bar-items/action-bar-items.component.d.ts +3 -0
  107. package/core/shared/components/address-form/address-form.component.d.ts +5 -2
  108. package/core/shared/components/affixed-input/affixed-input.component.d.ts +3 -0
  109. package/core/shared/components/affixed-input/percentage-suffix-input.component.d.ts +3 -0
  110. package/core/shared/components/asset-file-input/asset-file-input.component.d.ts +3 -0
  111. package/core/shared/components/asset-gallery/asset-gallery.component.d.ts +46 -26
  112. package/core/shared/components/asset-gallery/asset-gallery.types.d.ts +3 -0
  113. package/core/shared/components/asset-picker-dialog/asset-picker-dialog.component.d.ts +7 -3
  114. package/core/shared/components/asset-preview/asset-preview.component.d.ts +5 -3
  115. package/core/shared/components/asset-preview-dialog/asset-preview-dialog.component.d.ts +7 -5
  116. package/core/shared/components/asset-preview-links/asset-preview-links.component.d.ts +4 -1
  117. package/core/shared/components/asset-search-input/asset-search-input.component.d.ts +5 -2
  118. package/core/shared/components/channel-assignment-control/channel-assignment-control.component.d.ts +3 -0
  119. package/core/shared/components/channel-badge/channel-badge.component.d.ts +3 -0
  120. package/core/shared/components/chip/chip.component.d.ts +3 -0
  121. package/core/shared/components/configurable-input/configurable-input.component.d.ts +3 -0
  122. package/core/shared/components/currency-input/currency-input.component.d.ts +3 -0
  123. package/core/shared/components/custom-detail-component-host/custom-detail-component-host.component.d.ts +3 -0
  124. package/core/shared/components/custom-field-control/custom-field-control.component.d.ts +3 -0
  125. package/core/shared/components/customer-label/customer-label.component.d.ts +5 -2
  126. package/core/shared/components/data-table/data-table-column.component.d.ts +3 -0
  127. package/core/shared/components/data-table/data-table.component.d.ts +3 -0
  128. package/core/shared/components/datetime-picker/datetime-picker.component.d.ts +3 -0
  129. package/core/shared/components/datetime-picker/datetime-picker.service.d.ts +3 -0
  130. package/core/shared/components/dropdown/dropdown-item.directive.d.ts +3 -0
  131. package/core/shared/components/dropdown/dropdown-menu.component.d.ts +3 -0
  132. package/core/shared/components/dropdown/dropdown-trigger.directive.d.ts +3 -0
  133. package/core/shared/components/dropdown/dropdown.component.d.ts +3 -0
  134. package/core/shared/components/edit-note-dialog/edit-note-dialog.component.d.ts +4 -1
  135. package/core/shared/components/empty-placeholder/empty-placeholder.component.d.ts +3 -0
  136. package/core/shared/components/entity-info/entity-info.component.d.ts +3 -0
  137. package/core/shared/components/extension-host/extension-host.component.d.ts +3 -0
  138. package/core/shared/components/extension-host/extension-host.service.d.ts +3 -0
  139. package/core/shared/components/facet-value-chip/facet-value-chip.component.d.ts +5 -2
  140. package/core/shared/components/facet-value-selector/facet-value-selector.component.d.ts +8 -5
  141. package/core/shared/components/focal-point-control/focal-point-control.component.d.ts +3 -0
  142. package/core/shared/components/form-field/form-field-control.directive.d.ts +3 -0
  143. package/core/shared/components/form-field/form-field.component.d.ts +3 -0
  144. package/core/shared/components/form-item/form-item.component.d.ts +3 -0
  145. package/core/shared/components/formatted-address/formatted-address.component.d.ts +3 -0
  146. package/core/shared/components/help-tooltip/help-tooltip.component.d.ts +3 -0
  147. package/core/shared/components/history-entry-detail/history-entry-detail.component.d.ts +3 -0
  148. package/core/shared/components/items-per-page-controls/items-per-page-controls.component.d.ts +3 -0
  149. package/core/shared/components/labeled-data/labeled-data.component.d.ts +3 -0
  150. package/core/shared/components/language-selector/language-selector.component.d.ts +3 -0
  151. package/core/shared/components/manage-tags-dialog/manage-tags-dialog.component.d.ts +6 -3
  152. package/core/shared/components/modal-dialog/dialog-buttons.directive.d.ts +3 -0
  153. package/core/shared/components/modal-dialog/dialog-component-outlet.component.d.ts +3 -0
  154. package/core/shared/components/modal-dialog/dialog-title.directive.d.ts +3 -0
  155. package/core/shared/components/modal-dialog/modal-dialog.component.d.ts +4 -1
  156. package/core/shared/components/object-tree/object-tree.component.d.ts +3 -0
  157. package/core/shared/components/order-state-label/order-state-label.component.d.ts +4 -1
  158. package/core/shared/components/pagination-controls/pagination-controls.component.d.ts +3 -0
  159. package/core/shared/components/product-variant-selector/product-variant-selector.component.d.ts +58 -0
  160. package/core/shared/components/rich-text-editor/external-image-dialog/external-image-dialog.component.d.ts +4 -1
  161. package/core/shared/components/rich-text-editor/link-dialog/link-dialog.component.d.ts +4 -1
  162. package/core/shared/components/rich-text-editor/prosemirror/prosemirror.service.d.ts +3 -0
  163. package/core/shared/components/rich-text-editor/rich-text-editor.component.d.ts +3 -0
  164. package/core/shared/components/select-toggle/select-toggle.component.d.ts +3 -0
  165. package/core/shared/components/simple-dialog/simple-dialog.component.d.ts +4 -1
  166. package/core/shared/components/status-badge/status-badge.component.d.ts +3 -0
  167. package/core/shared/components/tabbed-custom-fields/tabbed-custom-fields.component.d.ts +3 -0
  168. package/core/shared/components/table-row-action/table-row-action.component.d.ts +3 -0
  169. package/core/shared/components/tag-selector/tag-selector.component.d.ts +3 -0
  170. package/core/shared/components/timeline-entry/timeline-entry.component.d.ts +3 -0
  171. package/core/shared/components/title-input/title-input.component.d.ts +3 -0
  172. package/core/shared/components/ui-extension-point/ui-extension-point.component.d.ts +3 -0
  173. package/core/shared/directives/disabled.directive.d.ts +3 -0
  174. package/core/shared/directives/if-default-channel-active.directive.d.ts +3 -0
  175. package/core/shared/directives/if-directive-base.d.ts +3 -0
  176. package/core/shared/directives/if-multichannel.directive.d.ts +3 -0
  177. package/core/shared/directives/if-permissions.directive.d.ts +3 -0
  178. package/core/shared/dynamic-form-inputs/boolean-form-input/boolean-form-input.component.d.ts +3 -0
  179. package/core/shared/dynamic-form-inputs/code-editor-form-input/json-editor-form-input.component.d.ts +3 -0
  180. package/core/shared/dynamic-form-inputs/currency-form-input/currency-form-input.component.d.ts +3 -0
  181. package/core/shared/dynamic-form-inputs/customer-group-form-input/customer-group-form-input.component.d.ts +7 -3
  182. package/core/shared/dynamic-form-inputs/date-form-input/date-form-input.component.d.ts +3 -0
  183. package/core/shared/dynamic-form-inputs/dynamic-form-input/dynamic-form-input.component.d.ts +3 -0
  184. package/core/shared/dynamic-form-inputs/facet-value-form-input/facet-value-form-input.component.d.ts +5 -2
  185. package/core/shared/dynamic-form-inputs/number-form-input/number-form-input.component.d.ts +3 -0
  186. package/core/shared/dynamic-form-inputs/password-form-input/password-form-input.component.d.ts +3 -0
  187. package/core/shared/dynamic-form-inputs/product-selector-form-input/product-selector-form-input.component.d.ts +6 -3
  188. package/core/shared/dynamic-form-inputs/register-dynamic-input-components.d.ts +1 -1
  189. package/core/shared/dynamic-form-inputs/relation-form-input/asset/relation-asset-input.component.d.ts +6 -3
  190. package/core/shared/dynamic-form-inputs/relation-form-input/customer/relation-customer-input.component.d.ts +6 -2
  191. package/core/shared/dynamic-form-inputs/relation-form-input/generic/relation-generic-input.component.d.ts +3 -0
  192. package/core/shared/dynamic-form-inputs/relation-form-input/product/relation-product-input.component.d.ts +7 -3
  193. package/core/shared/dynamic-form-inputs/relation-form-input/product-variant/relation-product-variant-input.component.d.ts +7 -3
  194. package/core/shared/dynamic-form-inputs/relation-form-input/relation-card/relation-card.component.d.ts +7 -0
  195. package/core/shared/dynamic-form-inputs/relation-form-input/relation-form-input.component.d.ts +3 -0
  196. package/core/shared/dynamic-form-inputs/relation-form-input/relation-selector-dialog/relation-selector-dialog.component.d.ts +4 -1
  197. package/core/shared/dynamic-form-inputs/rich-text-form-input/rich-text-form-input.component.d.ts +3 -0
  198. package/core/shared/dynamic-form-inputs/select-form-input/select-form-input.component.d.ts +3 -0
  199. package/core/shared/dynamic-form-inputs/text-form-input/text-form-input.component.d.ts +3 -0
  200. package/core/shared/dynamic-form-inputs/textarea-form-input/textarea-form-input.component.d.ts +3 -0
  201. package/core/shared/pipes/asset-preview.pipe.d.ts +3 -0
  202. package/core/shared/pipes/channel-label.pipe.d.ts +3 -0
  203. package/core/shared/pipes/custom-field-label.pipe.d.ts +3 -0
  204. package/core/shared/pipes/duration.pipe.d.ts +3 -0
  205. package/core/shared/pipes/file-size.pipe.d.ts +3 -0
  206. package/core/shared/pipes/has-permission.pipe.d.ts +3 -0
  207. package/core/shared/pipes/locale-base.pipe.d.ts +3 -0
  208. package/core/shared/pipes/locale-currency-name.pipe.d.ts +3 -0
  209. package/core/shared/pipes/locale-currency.pipe.d.ts +3 -0
  210. package/core/shared/pipes/locale-date.pipe.d.ts +3 -0
  211. package/core/shared/pipes/locale-language-name.pipe.d.ts +3 -0
  212. package/core/shared/pipes/locale-region-name.pipe.d.ts +3 -0
  213. package/core/shared/pipes/sentence-case.pipe.d.ts +3 -0
  214. package/core/shared/pipes/sort.pipe.d.ts +3 -0
  215. package/core/shared/pipes/state-i18n-token.pipe.d.ts +3 -0
  216. package/core/shared/pipes/string-to-color.pipe.d.ts +3 -0
  217. package/core/shared/pipes/time-ago.pipe.d.ts +3 -0
  218. package/core/shared/providers/routing/can-deactivate-detail-guard.d.ts +3 -0
  219. package/core/shared/shared.module.d.ts +119 -0
  220. package/core/vendure-admin-ui-core.d.ts +1 -0
  221. package/customer/components/add-customer-to-group-dialog/add-customer-to-group-dialog.component.d.ts +6 -3
  222. package/customer/components/address-card/address-card.component.d.ts +5 -2
  223. package/customer/components/address-detail-dialog/address-detail-dialog.component.d.ts +5 -2
  224. package/customer/components/customer-detail/customer-detail.component.d.ts +8 -5
  225. package/customer/components/customer-group-detail-dialog/customer-group-detail-dialog.component.d.ts +3 -0
  226. package/customer/components/customer-group-list/customer-group-list.component.d.ts +10 -7
  227. package/customer/components/customer-group-member-list/customer-group-member-list.component.d.ts +3 -0
  228. package/customer/components/customer-history/customer-history.component.d.ts +12 -7
  229. package/customer/components/customer-list/customer-list.component.d.ts +6 -3
  230. package/customer/components/customer-status-label/customer-status-label.component.d.ts +5 -2
  231. package/customer/components/select-customer-group-dialog/select-customer-group-dialog.component.d.ts +5 -2
  232. package/customer/customer.module.d.ts +17 -0
  233. package/customer/package.json +5 -6
  234. package/customer/providers/routing/customer-resolver.d.ts +5 -4
  235. package/customer/vendure-admin-ui-customer.d.ts +1 -0
  236. package/dashboard/components/dashboard/dashboard.component.d.ts +3 -0
  237. package/dashboard/components/dashboard-widget/dashboard-widget.component.d.ts +3 -0
  238. package/dashboard/dashboard.module.d.ts +8 -0
  239. package/dashboard/package.json +5 -6
  240. package/dashboard/vendure-admin-ui-dashboard.d.ts +1 -0
  241. package/dashboard/widgets/latest-orders-widget/latest-orders-widget.component.d.ts +9 -2
  242. package/dashboard/widgets/order-summary-widget/order-summary-widget.component.d.ts +7 -0
  243. package/dashboard/widgets/test-widget/test-widget.component.d.ts +6 -0
  244. package/dashboard/widgets/welcome-widget/welcome-widget.component.d.ts +9 -2
  245. package/esm2020/catalog/catalog.module.mjs +116 -0
  246. package/esm2020/catalog/catalog.routes.mjs +174 -0
  247. package/esm2020/catalog/components/apply-facet-dialog/apply-facet-dialog.component.mjs +30 -0
  248. package/esm2020/catalog/components/asset-detail/asset-detail.component.mjs +66 -0
  249. package/esm2020/catalog/components/asset-list/asset-list.component.mjs +120 -0
  250. package/esm2020/catalog/components/assets/assets.component.mjs +100 -0
  251. package/esm2020/catalog/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.mjs +104 -0
  252. package/esm2020/catalog/components/collection-contents/collection-contents.component.mjs +76 -0
  253. package/esm2020/catalog/components/collection-detail/collection-detail.component.mjs +212 -0
  254. package/esm2020/catalog/components/collection-list/collection-list.component.mjs +120 -0
  255. package/esm2020/catalog/components/collection-tree/array-to-tree.mjs +56 -0
  256. package/esm2020/catalog/components/collection-tree/collection-tree-node.component.mjs +99 -0
  257. package/esm2020/catalog/components/collection-tree/collection-tree.component.mjs +44 -0
  258. package/esm2020/catalog/components/collection-tree/collection-tree.service.mjs +68 -0
  259. package/esm2020/catalog/components/collection-tree/collection-tree.types.mjs +2 -0
  260. package/esm2020/catalog/components/confirm-variant-deletion-dialog/confirm-variant-deletion-dialog.component.mjs +23 -0
  261. package/esm2020/catalog/components/facet-detail/facet-detail.component.mjs +321 -0
  262. package/esm2020/catalog/components/facet-list/facet-list.component.mjs +104 -0
  263. package/esm2020/catalog/components/generate-product-variants/generate-product-variants.component.mjs +79 -0
  264. package/esm2020/catalog/components/option-value-input/option-value-input.component.mjs +97 -0
  265. package/esm2020/catalog/components/product-detail/product-detail.component.mjs +520 -0
  266. package/esm2020/catalog/components/product-detail/product-detail.types.mjs +2 -0
  267. package/esm2020/catalog/components/product-list/product-list.component.mjs +150 -0
  268. package/esm2020/catalog/components/product-options-editor/product-options-editor.component.mjs +151 -0
  269. package/esm2020/catalog/components/product-search-input/product-search-input.component.mjs +107 -0
  270. package/esm2020/catalog/components/product-variants-editor/product-variants-editor.component.mjs +313 -0
  271. package/esm2020/catalog/components/product-variants-list/product-variants-list.component.mjs +226 -0
  272. package/esm2020/catalog/components/product-variants-table/product-variants-table.component.mjs +72 -0
  273. package/esm2020/catalog/components/update-product-option-dialog/update-product-option-dialog.component.mjs +64 -0
  274. package/esm2020/catalog/components/variant-price-detail/variant-price-detail.component.mjs +61 -0
  275. package/esm2020/catalog/providers/product-detail/product-detail.service.mjs +224 -0
  276. package/{esm2015/catalog/providers/product-detail/replace-last.js → esm2020/catalog/providers/product-detail/replace-last.mjs} +0 -0
  277. package/esm2020/catalog/providers/routing/asset-resolver.mjs +33 -0
  278. package/esm2020/catalog/providers/routing/collection-resolver.mjs +36 -0
  279. package/esm2020/catalog/providers/routing/facet-resolver.mjs +30 -0
  280. package/esm2020/catalog/providers/routing/product-resolver.mjs +39 -0
  281. package/esm2020/catalog/providers/routing/product-variants-resolver.mjs +27 -0
  282. package/esm2020/catalog/public_api.mjs +39 -0
  283. package/{esm2015/catalog/vendure-admin-ui-catalog.js → esm2020/catalog/vendure-admin-ui-catalog.mjs} +0 -0
  284. package/esm2020/core/app.component.mjs +79 -0
  285. package/esm2020/core/app.component.module.mjs +19 -0
  286. package/{esm2015/core/app.config.js → esm2020/core/app.config.mjs} +0 -0
  287. package/esm2020/core/common/base-detail.component.mjs +108 -0
  288. package/esm2020/core/common/base-entity-resolver.mjs +60 -0
  289. package/esm2020/core/common/base-list.component.mjs +159 -0
  290. package/{esm2015/core/common/component-registry-types.js → esm2020/core/common/component-registry-types.mjs} +0 -0
  291. package/{esm2015/core/common/deactivate-aware.js → esm2020/core/common/deactivate-aware.mjs} +0 -0
  292. package/{esm2015/core/common/detail-breadcrumb.js → esm2020/core/common/detail-breadcrumb.mjs} +0 -0
  293. package/esm2020/core/common/generated-types.mjs +957 -0
  294. package/{esm2015/core/common/introspection-result-wrapper.js → esm2020/core/common/introspection-result-wrapper.mjs} +0 -0
  295. package/esm2020/core/common/introspection-result.mjs +193 -0
  296. package/{esm2015/core/common/single-search-selection-model.js → esm2020/core/common/single-search-selection-model.mjs} +0 -0
  297. package/esm2020/core/common/utilities/configurable-operation-utils.mjs +83 -0
  298. package/esm2020/core/common/utilities/create-updated-translatable.mjs +75 -0
  299. package/esm2020/core/common/utilities/find-translation.mjs +9 -0
  300. package/esm2020/core/common/utilities/flatten-facet-values.mjs +4 -0
  301. package/esm2020/core/common/utilities/get-default-ui-language.mjs +12 -0
  302. package/{esm2015/core/common/utilities/interpolate-description.js → esm2020/core/common/utilities/interpolate-description.mjs} +0 -0
  303. package/{esm2015/core/common/utilities/string-to-color.js → esm2020/core/common/utilities/string-to-color.mjs} +0 -0
  304. package/esm2020/core/common/version.mjs +3 -0
  305. package/esm2020/core/components/app-shell/app-shell.component.mjs +76 -0
  306. package/esm2020/core/components/breadcrumb/breadcrumb.component.mjs +124 -0
  307. package/esm2020/core/components/channel-switcher/channel-switcher.component.mjs +58 -0
  308. package/esm2020/core/components/main-nav/main-nav.component.mjs +270 -0
  309. package/esm2020/core/components/notification/notification.component.mjs +76 -0
  310. package/esm2020/core/components/overlay-host/overlay-host.component.mjs +22 -0
  311. package/esm2020/core/components/theme-switcher/theme-switcher.component.mjs +29 -0
  312. package/esm2020/core/components/ui-language-switcher-dialog/ui-language-switcher-dialog.component.mjs +305 -0
  313. package/esm2020/core/components/user-menu/user-menu.component.mjs +37 -0
  314. package/esm2020/core/core.module.mjs +145 -0
  315. package/{esm2015/core/data/check-jobs-link.js → esm2020/core/data/check-jobs-link.mjs} +0 -0
  316. package/esm2020/core/data/client-state/client-defaults.mjs +31 -0
  317. package/esm2020/core/data/client-state/client-resolvers.mjs +131 -0
  318. package/esm2020/core/data/data.module.mjs +126 -0
  319. package/{esm2015/core/data/definitions/administrator-definitions.js → esm2020/core/data/definitions/administrator-definitions.mjs} +0 -0
  320. package/{esm2015/core/data/definitions/auth-definitions.js → esm2020/core/data/definitions/auth-definitions.mjs} +0 -0
  321. package/{esm2015/core/data/definitions/client-definitions.js → esm2020/core/data/definitions/client-definitions.mjs} +0 -0
  322. package/esm2020/core/data/definitions/collection-definitions.mjs +128 -0
  323. package/{esm2015/core/data/definitions/customer-definitions.js → esm2020/core/data/definitions/customer-definitions.mjs} +0 -0
  324. package/{esm2015/core/data/definitions/facet-definitions.js → esm2020/core/data/definitions/facet-definitions.mjs} +0 -0
  325. package/esm2020/core/data/definitions/order-definitions.mjs +457 -0
  326. package/{esm2015/core/data/definitions/product-definitions.js → esm2020/core/data/definitions/product-definitions.mjs} +0 -0
  327. package/{esm2015/core/data/definitions/promotion-definitions.js → esm2020/core/data/definitions/promotion-definitions.mjs} +0 -0
  328. package/{esm2015/core/data/definitions/settings-definitions.js → esm2020/core/data/definitions/settings-definitions.mjs} +0 -0
  329. package/{esm2015/core/data/definitions/shared-definitions.js → esm2020/core/data/definitions/shared-definitions.mjs} +0 -0
  330. package/{esm2015/core/data/definitions/shipping-definitions.js → esm2020/core/data/definitions/shipping-definitions.mjs} +0 -0
  331. package/{esm2015/core/data/omit-typename-link.js → esm2020/core/data/omit-typename-link.mjs} +0 -0
  332. package/esm2020/core/data/providers/administrator-data.service.mjs +63 -0
  333. package/esm2020/core/data/providers/auth-data.service.mjs +20 -0
  334. package/esm2020/core/data/providers/base-data.service.mjs +69 -0
  335. package/esm2020/core/data/providers/client-data.service.mjs +75 -0
  336. package/esm2020/core/data/providers/collection-data.service.mjs +74 -0
  337. package/esm2020/core/data/providers/customer-data.service.mjs +120 -0
  338. package/esm2020/core/data/providers/data.service.mjs +90 -0
  339. package/esm2020/core/data/providers/facet-data.service.mjs +60 -0
  340. package/esm2020/core/data/providers/fetch-adapter.mjs +36 -0
  341. package/esm2020/core/data/providers/interceptor.mjs +136 -0
  342. package/esm2020/core/data/providers/order-data.service.mjs +100 -0
  343. package/esm2020/core/data/providers/product-data.service.mjs +240 -0
  344. package/esm2020/core/data/providers/promotion-data.service.mjs +37 -0
  345. package/esm2020/core/data/providers/settings-data.service.mjs +235 -0
  346. package/esm2020/core/data/providers/shipping-method-data.service.mjs +66 -0
  347. package/esm2020/core/data/query-result.mjs +77 -0
  348. package/esm2020/core/data/server-config.mjs +74 -0
  349. package/esm2020/core/data/utils/add-custom-fields.mjs +84 -0
  350. package/{esm2015/core/data/utils/get-server-location.js → esm2020/core/data/utils/get-server-location.mjs} +0 -0
  351. package/{esm2015/core/data/utils/remove-readonly-custom-fields.js → esm2020/core/data/utils/remove-readonly-custom-fields.mjs} +0 -0
  352. package/esm2020/core/data/utils/transform-relation-custom-field-inputs.mjs +46 -0
  353. package/esm2020/core/providers/auth/auth.service.mjs +104 -0
  354. package/esm2020/core/providers/component-registry/component-registry.service.mjs +25 -0
  355. package/{esm2015/core/providers/custom-detail-component/custom-detail-component-types.js → esm2020/core/providers/custom-detail-component/custom-detail-component-types.mjs} +0 -0
  356. package/esm2020/core/providers/custom-detail-component/custom-detail-component.service.mjs +44 -0
  357. package/esm2020/core/providers/custom-field-component/custom-field-component.service.mjs +45 -0
  358. package/{esm2015/core/providers/dashboard-widget/dashboard-widget-types.js → esm2020/core/providers/dashboard-widget/dashboard-widget-types.mjs} +0 -0
  359. package/esm2020/core/providers/dashboard-widget/dashboard-widget.service.mjs +98 -0
  360. package/{esm2015/core/providers/dashboard-widget/register-dashboard-widget.js → esm2020/core/providers/dashboard-widget/register-dashboard-widget.mjs} +0 -0
  361. package/esm2020/core/providers/guard/auth.guard.mjs +38 -0
  362. package/esm2020/core/providers/health-check/health-check.service.mjs +36 -0
  363. package/{esm2015/core/providers/i18n/custom-http-loader.js → esm2020/core/providers/i18n/custom-http-loader.mjs} +0 -0
  364. package/esm2020/core/providers/i18n/custom-message-format-compiler.mjs +31 -0
  365. package/esm2020/core/providers/i18n/i18n.service.mjs +54 -0
  366. package/esm2020/core/providers/job-queue/job-queue.service.mjs +91 -0
  367. package/esm2020/core/providers/local-storage/local-storage.service.mjs +77 -0
  368. package/esm2020/core/providers/modal/modal.service.mjs +97 -0
  369. package/esm2020/core/providers/modal/modal.types.mjs +2 -0
  370. package/{esm2015/core/providers/nav-builder/nav-builder-types.js → esm2020/core/providers/nav-builder/nav-builder-types.mjs} +0 -0
  371. package/esm2020/core/providers/nav-builder/nav-builder.service.mjs +268 -0
  372. package/esm2020/core/providers/notification/notification.service.mjs +157 -0
  373. package/esm2020/core/providers/overlay-host/overlay-host.service.mjs +48 -0
  374. package/esm2020/core/public_api.mjs +221 -0
  375. package/esm2020/core/shared/components/action-bar/action-bar.component.mjs +57 -0
  376. package/esm2020/core/shared/components/action-bar-items/action-bar-items.component.mjs +78 -0
  377. package/esm2020/core/shared/components/address-form/address-form.component.mjs +23 -0
  378. package/esm2020/core/shared/components/affixed-input/affixed-input.component.mjs +19 -0
  379. package/esm2020/core/shared/components/affixed-input/percentage-suffix-input.component.mjs +97 -0
  380. package/esm2020/core/shared/components/asset-file-input/asset-file-input.component.mjs +97 -0
  381. package/esm2020/core/shared/components/asset-gallery/asset-gallery.component.mjs +110 -0
  382. package/esm2020/core/shared/components/asset-gallery/asset-gallery.types.mjs +2 -0
  383. package/esm2020/core/shared/components/asset-picker-dialog/asset-picker-dialog.component.mjs +144 -0
  384. package/esm2020/core/shared/components/asset-preview/asset-preview.component.mjs +189 -0
  385. package/esm2020/core/shared/components/asset-preview-dialog/asset-preview-dialog.component.mjs +34 -0
  386. package/esm2020/core/shared/components/asset-preview-links/asset-preview-links.component.mjs +26 -0
  387. package/esm2020/core/shared/components/asset-search-input/asset-search-input.component.mjs +106 -0
  388. package/esm2020/core/shared/components/channel-assignment-control/channel-assignment-control.component.mjs +116 -0
  389. package/esm2020/core/shared/components/channel-badge/channel-badge.component.mjs +19 -0
  390. package/esm2020/core/shared/components/chip/chip.component.mjs +47 -0
  391. package/esm2020/core/shared/components/configurable-input/configurable-input.component.mjs +144 -0
  392. package/esm2020/core/shared/components/currency-input/currency-input.component.mjs +152 -0
  393. package/esm2020/core/shared/components/custom-detail-component-host/custom-detail-component-host.component.mjs +40 -0
  394. package/esm2020/core/shared/components/custom-field-control/custom-field-control.component.mjs +83 -0
  395. package/esm2020/core/shared/components/customer-label/customer-label.component.mjs +17 -0
  396. package/esm2020/core/shared/components/data-table/data-table-column.component.mjs +29 -0
  397. package/esm2020/core/shared/components/data-table/data-table.component.mjs +124 -0
  398. package/{esm2015/core/shared/components/datetime-picker/constants.js → esm2020/core/shared/components/datetime-picker/constants.mjs} +0 -0
  399. package/esm2020/core/shared/components/datetime-picker/datetime-picker.component.mjs +226 -0
  400. package/esm2020/core/shared/components/datetime-picker/datetime-picker.service.mjs +201 -0
  401. package/{esm2015/core/shared/components/datetime-picker/types.js → esm2020/core/shared/components/datetime-picker/types.mjs} +0 -0
  402. package/esm2020/core/shared/components/dropdown/dropdown-item.directive.mjs +25 -0
  403. package/esm2020/core/shared/components/dropdown/dropdown-menu.component.mjs +127 -0
  404. package/esm2020/core/shared/components/dropdown/dropdown-trigger.directive.mjs +25 -0
  405. package/esm2020/core/shared/components/dropdown/dropdown.component.mjs +58 -0
  406. package/esm2020/core/shared/components/edit-note-dialog/edit-note-dialog.component.mjs +32 -0
  407. package/esm2020/core/shared/components/empty-placeholder/empty-placeholder.component.mjs +16 -0
  408. package/esm2020/core/shared/components/entity-info/entity-info.component.mjs +26 -0
  409. package/{esm2015/core/shared/components/extension-host/extension-host-config.js → esm2020/core/shared/components/extension-host/extension-host-config.mjs} +0 -0
  410. package/esm2020/core/shared/components/extension-host/extension-host.component.mjs +80 -0
  411. package/esm2020/core/shared/components/extension-host/extension-host.service.mjs +99 -0
  412. package/{esm2015/core/shared/components/extension-host/host-external-frame.js → esm2020/core/shared/components/extension-host/host-external-frame.mjs} +0 -0
  413. package/esm2020/core/shared/components/facet-value-chip/facet-value-chip.component.mjs +26 -0
  414. package/esm2020/core/shared/components/facet-value-selector/facet-value-selector.component.mjs +121 -0
  415. package/esm2020/core/shared/components/focal-point-control/focal-point-control.component.mjs +71 -0
  416. package/esm2020/core/shared/components/form-field/form-field-control.directive.mjs +37 -0
  417. package/esm2020/core/shared/components/form-field/form-field.component.mjs +70 -0
  418. package/esm2020/core/shared/components/form-item/form-item.component.mjs +18 -0
  419. package/esm2020/core/shared/components/formatted-address/formatted-address.component.mjs +38 -0
  420. package/esm2020/core/shared/components/help-tooltip/help-tooltip.component.mjs +16 -0
  421. package/esm2020/core/shared/components/history-entry-detail/history-entry-detail.component.mjs +16 -0
  422. package/esm2020/core/shared/components/items-per-page-controls/items-per-page-controls.component.mjs +25 -0
  423. package/esm2020/core/shared/components/labeled-data/labeled-data.component.mjs +13 -0
  424. package/esm2020/core/shared/components/language-selector/language-selector.component.mjs +31 -0
  425. package/esm2020/core/shared/components/manage-tags-dialog/manage-tags-dialog.component.mjs +61 -0
  426. package/esm2020/core/shared/components/modal-dialog/dialog-buttons.directive.mjs +23 -0
  427. package/esm2020/core/shared/components/modal-dialog/dialog-component-outlet.component.mjs +31 -0
  428. package/esm2020/core/shared/components/modal-dialog/dialog-title.directive.mjs +23 -0
  429. package/esm2020/core/shared/components/modal-dialog/modal-dialog.component.mjs +60 -0
  430. package/esm2020/core/shared/components/object-tree/object-tree.component.mjs +56 -0
  431. package/esm2020/core/shared/components/order-state-label/order-state-label.component.mjs +46 -0
  432. package/esm2020/core/shared/components/pagination-controls/pagination-controls.component.mjs +26 -0
  433. package/esm2020/core/shared/components/product-variant-selector/product-variant-selector.component.mjs +62 -0
  434. package/esm2020/core/shared/components/rich-text-editor/external-image-dialog/external-image-dialog.component.mjs +37 -0
  435. package/esm2020/core/shared/components/rich-text-editor/link-dialog/link-dialog.component.mjs +34 -0
  436. package/{esm2015/core/shared/components/rich-text-editor/prosemirror/inputrules.js → esm2020/core/shared/components/rich-text-editor/prosemirror/inputrules.mjs} +0 -0
  437. package/{esm2015/core/shared/components/rich-text-editor/prosemirror/keymap.js → esm2020/core/shared/components/rich-text-editor/prosemirror/keymap.mjs} +0 -0
  438. package/{esm2015/core/shared/components/rich-text-editor/prosemirror/menu/images.js → esm2020/core/shared/components/rich-text-editor/prosemirror/menu/images.mjs} +0 -0
  439. package/{esm2015/core/shared/components/rich-text-editor/prosemirror/menu/links.js → esm2020/core/shared/components/rich-text-editor/prosemirror/menu/links.mjs} +0 -0
  440. package/{esm2015/core/shared/components/rich-text-editor/prosemirror/menu/menu-common.js → esm2020/core/shared/components/rich-text-editor/prosemirror/menu/menu-common.mjs} +0 -0
  441. package/{esm2015/core/shared/components/rich-text-editor/prosemirror/menu/menu.js → esm2020/core/shared/components/rich-text-editor/prosemirror/menu/menu.mjs} +0 -0
  442. package/{esm2015/core/shared/components/rich-text-editor/prosemirror/plugins/link-select-plugin.js → esm2020/core/shared/components/rich-text-editor/prosemirror/plugins/link-select-plugin.mjs} +0 -0
  443. package/esm2020/core/shared/components/rich-text-editor/prosemirror/prosemirror.service.mjs +112 -0
  444. package/{esm2015/core/shared/components/rich-text-editor/prosemirror/types.js → esm2020/core/shared/components/rich-text-editor/prosemirror/types.mjs} +0 -0
  445. package/{esm2015/core/shared/components/rich-text-editor/prosemirror/utils.js → esm2020/core/shared/components/rich-text-editor/prosemirror/utils.mjs} +0 -0
  446. package/esm2020/core/shared/components/rich-text-editor/rich-text-editor.component.mjs +93 -0
  447. package/esm2020/core/shared/components/select-toggle/select-toggle.component.mjs +32 -0
  448. package/esm2020/core/shared/components/simple-dialog/simple-dialog.component.mjs +24 -0
  449. package/esm2020/core/shared/components/status-badge/status-badge.component.mjs +16 -0
  450. package/esm2020/core/shared/components/tabbed-custom-fields/tabbed-custom-fields.component.mjs +54 -0
  451. package/esm2020/core/shared/components/table-row-action/table-row-action.component.mjs +28 -0
  452. package/esm2020/core/shared/components/tag-selector/tag-selector.component.mjs +60 -0
  453. package/esm2020/core/shared/components/timeline-entry/timeline-entry.component.mjs +52 -0
  454. package/esm2020/core/shared/components/title-input/title-input.component.mjs +21 -0
  455. package/esm2020/core/shared/components/ui-extension-point/ui-extension-point.component.mjs +34 -0
  456. package/esm2020/core/shared/directives/disabled.directive.mjs +41 -0
  457. package/esm2020/core/shared/directives/if-default-channel-active.directive.mjs +39 -0
  458. package/esm2020/core/shared/directives/if-directive-base.mjs +73 -0
  459. package/esm2020/core/shared/directives/if-multichannel.directive.mjs +45 -0
  460. package/esm2020/core/shared/directives/if-permissions.directive.mjs +76 -0
  461. package/esm2020/core/shared/dynamic-form-inputs/boolean-form-input/boolean-form-input.component.mjs +23 -0
  462. package/esm2020/core/shared/dynamic-form-inputs/code-editor-form-input/json-editor-form-input.component.mjs +120 -0
  463. package/esm2020/core/shared/dynamic-form-inputs/currency-form-input/currency-form-input.component.mjs +31 -0
  464. package/esm2020/core/shared/dynamic-form-inputs/customer-group-form-input/customer-group-form-input.component.mjs +42 -0
  465. package/esm2020/core/shared/dynamic-form-inputs/date-form-input/date-form-input.component.mjs +32 -0
  466. package/esm2020/core/shared/dynamic-form-inputs/dynamic-form-input/dynamic-form-input.component.mjs +265 -0
  467. package/esm2020/core/shared/dynamic-form-inputs/facet-value-form-input/facet-value-form-input.component.mjs +35 -0
  468. package/esm2020/core/shared/dynamic-form-inputs/number-form-input/number-form-input.component.mjs +39 -0
  469. package/esm2020/core/shared/dynamic-form-inputs/password-form-input/password-form-input.component.mjs +21 -0
  470. package/esm2020/core/shared/dynamic-form-inputs/product-selector-form-input/product-selector-form-input.component.mjs +61 -0
  471. package/{esm2015/core/shared/dynamic-form-inputs/register-dynamic-input-components.js → esm2020/core/shared/dynamic-form-inputs/register-dynamic-input-components.mjs} +0 -0
  472. package/esm2020/core/shared/dynamic-form-inputs/relation-form-input/asset/relation-asset-input.component.mjs +69 -0
  473. package/esm2020/core/shared/dynamic-form-inputs/relation-form-input/customer/relation-customer-input.component.mjs +70 -0
  474. package/esm2020/core/shared/dynamic-form-inputs/relation-form-input/generic/relation-generic-input.component.mjs +54 -0
  475. package/esm2020/core/shared/dynamic-form-inputs/relation-form-input/product/relation-product-input.component.mjs +89 -0
  476. package/esm2020/core/shared/dynamic-form-inputs/relation-form-input/product-variant/relation-product-variant-input.component.mjs +89 -0
  477. package/esm2020/core/shared/dynamic-form-inputs/relation-form-input/relation-card/relation-card.component.mjs +60 -0
  478. package/esm2020/core/shared/dynamic-form-inputs/relation-form-input/relation-form-input.component.mjs +29 -0
  479. package/esm2020/core/shared/dynamic-form-inputs/relation-form-input/relation-selector-dialog/relation-selector-dialog.component.mjs +14 -0
  480. package/esm2020/core/shared/dynamic-form-inputs/rich-text-form-input/rich-text-form-input.component.mjs +21 -0
  481. package/esm2020/core/shared/dynamic-form-inputs/select-form-input/select-form-input.component.mjs +31 -0
  482. package/esm2020/core/shared/dynamic-form-inputs/text-form-input/text-form-input.component.mjs +28 -0
  483. package/esm2020/core/shared/dynamic-form-inputs/textarea-form-input/textarea-form-input.component.mjs +24 -0
  484. package/esm2020/core/shared/pipes/asset-preview.pipe.mjs +42 -0
  485. package/esm2020/core/shared/pipes/channel-label.pipe.mjs +23 -0
  486. package/esm2020/core/shared/pipes/custom-field-label.pipe.mjs +47 -0
  487. package/esm2020/core/shared/pipes/duration.pipe.mjs +49 -0
  488. package/esm2020/core/shared/pipes/file-size.pipe.mjs +47 -0
  489. package/esm2020/core/shared/pipes/has-permission.pipe.mjs +65 -0
  490. package/esm2020/core/shared/pipes/locale-base.pipe.mjs +55 -0
  491. package/esm2020/core/shared/pipes/locale-currency-name.pipe.mjs +61 -0
  492. package/esm2020/core/shared/pipes/locale-currency.pipe.mjs +44 -0
  493. package/esm2020/core/shared/pipes/locale-date.pipe.mjs +84 -0
  494. package/esm2020/core/shared/pipes/locale-language-name.pipe.mjs +51 -0
  495. package/esm2020/core/shared/pipes/locale-region-name.pipe.mjs +51 -0
  496. package/esm2020/core/shared/pipes/sentence-case.pipe.mjs +30 -0
  497. package/esm2020/core/shared/pipes/sort.pipe.mjs +34 -0
  498. package/esm2020/core/shared/pipes/state-i18n-token.pipe.mjs +50 -0
  499. package/esm2020/core/shared/pipes/string-to-color.pipe.mjs +18 -0
  500. package/esm2020/core/shared/pipes/time-ago.pipe.mjs +52 -0
  501. package/esm2020/core/shared/providers/routing/can-deactivate-detail-guard.mjs +35 -0
  502. package/esm2020/core/shared/shared.module.mjs +524 -0
  503. package/{esm2015/core/validators/unicode-pattern.validator.js → esm2020/core/validators/unicode-pattern.validator.mjs} +0 -0
  504. package/{esm2015/core/vendure-admin-ui-core.js → esm2020/core/vendure-admin-ui-core.mjs} +0 -0
  505. package/esm2020/customer/components/add-customer-to-group-dialog/add-customer-to-group-dialog.component.mjs +41 -0
  506. package/esm2020/customer/components/address-card/address-card.component.mjs +97 -0
  507. package/esm2020/customer/components/address-detail-dialog/address-detail-dialog.component.mjs +28 -0
  508. package/esm2020/customer/components/customer-detail/customer-detail.component.mjs +414 -0
  509. package/esm2020/customer/components/customer-group-detail-dialog/customer-group-detail-dialog.component.mjs +45 -0
  510. package/esm2020/customer/components/customer-group-list/customer-group-list.component.mjs +181 -0
  511. package/esm2020/customer/components/customer-group-member-list/customer-group-member-list.component.mjs +103 -0
  512. package/esm2020/customer/components/customer-history/customer-history.component.mjs +83 -0
  513. package/esm2020/customer/components/customer-list/customer-list.component.mjs +80 -0
  514. package/esm2020/customer/components/customer-status-label/customer-status-label.component.mjs +17 -0
  515. package/esm2020/customer/components/select-customer-group-dialog/select-customer-group-dialog.component.mjs +31 -0
  516. package/esm2020/customer/customer.module.mjs +53 -0
  517. package/esm2020/customer/customer.routes.mjs +42 -0
  518. package/esm2020/customer/providers/routing/customer-resolver.mjs +31 -0
  519. package/{esm2015/customer/public_api.js → esm2020/customer/public_api.mjs} +0 -0
  520. package/{esm2015/customer/vendure-admin-ui-customer.js → esm2020/customer/vendure-admin-ui-customer.mjs} +0 -0
  521. package/esm2020/dashboard/components/dashboard/dashboard.component.mjs +121 -0
  522. package/esm2020/dashboard/components/dashboard-widget/dashboard-widget.component.mjs +35 -0
  523. package/esm2020/dashboard/dashboard.module.mjs +29 -0
  524. package/{esm2015/dashboard/dashboard.routes.js → esm2020/dashboard/dashboard.routes.mjs} +0 -0
  525. package/esm2020/dashboard/default-widgets.mjs +32 -0
  526. package/{esm2015/dashboard/public_api.js → esm2020/dashboard/public_api.mjs} +0 -0
  527. package/{esm2015/dashboard/vendure-admin-ui-dashboard.js → esm2020/dashboard/vendure-admin-ui-dashboard.mjs} +0 -0
  528. package/esm2020/dashboard/widgets/latest-orders-widget/latest-orders-widget.component.mjs +45 -0
  529. package/esm2020/dashboard/widgets/order-summary-widget/order-summary-widget.component.mjs +59 -0
  530. package/esm2020/dashboard/widgets/test-widget/test-widget.component.mjs +22 -0
  531. package/esm2020/dashboard/widgets/welcome-widget/welcome-widget.component.mjs +39 -0
  532. package/esm2020/login/components/login/login.component.mjs +62 -0
  533. package/esm2020/login/login.module.mjs +21 -0
  534. package/{esm2015/login/login.routes.js → esm2020/login/login.routes.mjs} +0 -0
  535. package/esm2020/login/providers/login.guard.mjs +31 -0
  536. package/{esm2015/login/public_api.js → esm2020/login/public_api.mjs} +0 -0
  537. package/{esm2015/login/vendure-admin-ui-login.js → esm2020/login/vendure-admin-ui-login.mjs} +0 -0
  538. package/esm2020/marketing/components/promotion-detail/promotion-detail.component.mjs +242 -0
  539. package/esm2020/marketing/components/promotion-list/promotion-list.component.mjs +81 -0
  540. package/esm2020/marketing/marketing.module.mjs +21 -0
  541. package/esm2020/marketing/marketing.routes.mjs +33 -0
  542. package/esm2020/marketing/providers/routing/promotion-resolver.mjs +31 -0
  543. package/{esm2015/marketing/public_api.js → esm2020/marketing/public_api.mjs} +0 -0
  544. package/{esm2015/marketing/vendure-admin-ui-marketing.js → esm2020/marketing/vendure-admin-ui-marketing.mjs} +0 -0
  545. package/esm2020/order/components/add-manual-payment-dialog/add-manual-payment-dialog.component.mjs +39 -0
  546. package/esm2020/order/components/cancel-order-dialog/cancel-order-dialog.component.mjs +82 -0
  547. package/esm2020/order/components/fulfill-order-dialog/fulfill-order-dialog.component.mjs +73 -0
  548. package/esm2020/order/components/fulfillment-card/fulfillment-card.component.mjs +48 -0
  549. package/esm2020/order/components/fulfillment-detail/fulfillment-detail.component.mjs +62 -0
  550. package/esm2020/order/components/fulfillment-state-label/fulfillment-state-label.component.mjs +28 -0
  551. package/esm2020/order/components/line-fulfillment/line-fulfillment.component.mjs +68 -0
  552. package/esm2020/order/components/line-refunds/line-refunds.component.mjs +37 -0
  553. package/esm2020/order/components/modification-detail/modification-detail.component.mjs +68 -0
  554. package/esm2020/order/components/order-custom-fields-card/order-custom-fields-card.component.mjs +40 -0
  555. package/esm2020/order/components/order-detail/order-detail.component.mjs +504 -0
  556. package/esm2020/order/components/order-editor/order-editor.component.mjs +381 -0
  557. package/esm2020/order/components/order-edits-preview-dialog/order-edits-preview-dialog.component.mjs +55 -0
  558. package/esm2020/order/components/order-history/order-history.component.mjs +166 -0
  559. package/esm2020/order/components/order-list/order-list.component.mjs +192 -0
  560. package/esm2020/order/components/order-payment-card/order-payment-card.component.mjs +43 -0
  561. package/{esm2015/order/components/order-process-graph/constants.js → esm2020/order/components/order-process-graph/constants.mjs} +0 -0
  562. package/esm2020/order/components/order-process-graph/order-process-edge.component.mjs +45 -0
  563. package/esm2020/order/components/order-process-graph/order-process-graph.component.mjs +96 -0
  564. package/esm2020/order/components/order-process-graph/order-process-node.component.mjs +53 -0
  565. package/{esm2015/order/components/order-process-graph/types.js → esm2020/order/components/order-process-graph/types.mjs} +0 -0
  566. package/esm2020/order/components/order-process-graph-dialog/order-process-graph-dialog.component.mjs +21 -0
  567. package/esm2020/order/components/order-state-select-dialog/order-state-select-dialog.component.mjs +29 -0
  568. package/esm2020/order/components/order-table/order-table.component.mjs +73 -0
  569. package/esm2020/order/components/payment-detail/payment-detail.component.mjs +18 -0
  570. package/esm2020/order/components/payment-state-label/payment-state-label.component.mjs +28 -0
  571. package/esm2020/order/components/refund-order-dialog/refund-order-dialog.component.mjs +142 -0
  572. package/esm2020/order/components/refund-state-label/refund-state-label.component.mjs +27 -0
  573. package/esm2020/order/components/settle-refund-dialog/settle-refund-dialog.component.mjs +24 -0
  574. package/esm2020/order/components/simple-item-list/simple-item-list.component.mjs +15 -0
  575. package/esm2020/order/order.module.mjs +103 -0
  576. package/esm2020/order/order.routes.mjs +52 -0
  577. package/esm2020/order/providers/order-transition.service.mjs +112 -0
  578. package/esm2020/order/providers/routing/order-resolver.mjs +29 -0
  579. package/{esm2015/order/public_api.js → esm2020/order/public_api.mjs} +0 -0
  580. package/{esm2015/order/vendure-admin-ui-order.js → esm2020/order/vendure-admin-ui-order.mjs} +0 -0
  581. package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
  582. package/esm2020/settings/components/add-country-to-zone-dialog/add-country-to-zone-dialog.component.mjs +34 -0
  583. package/esm2020/settings/components/admin-detail/admin-detail.component.mjs +192 -0
  584. package/esm2020/settings/components/administrator-list/administrator-list.component.mjs +49 -0
  585. package/esm2020/settings/components/channel-detail/channel-detail.component.mjs +154 -0
  586. package/esm2020/settings/components/channel-list/channel-list.component.mjs +53 -0
  587. package/esm2020/settings/components/country-detail/country-detail.component.mjs +115 -0
  588. package/esm2020/settings/components/country-list/country-list.component.mjs +84 -0
  589. package/esm2020/settings/components/global-settings/global-settings.component.mjs +85 -0
  590. package/esm2020/settings/components/payment-method-detail/payment-method-detail.component.mjs +199 -0
  591. package/esm2020/settings/components/payment-method-list/payment-method-list.component.mjs +62 -0
  592. package/esm2020/settings/components/permission-grid/permission-grid.component.mjs +83 -0
  593. package/esm2020/settings/components/profile/profile.component.mjs +77 -0
  594. package/esm2020/settings/components/role-detail/role-detail.component.mjs +105 -0
  595. package/esm2020/settings/components/role-list/role-list.component.mjs +66 -0
  596. package/esm2020/settings/components/shipping-eligibility-test-result/shipping-eligibility-test-result.component.mjs +30 -0
  597. package/esm2020/settings/components/shipping-method-detail/shipping-method-detail.component.mjs +240 -0
  598. package/esm2020/settings/components/shipping-method-list/shipping-method-list.component.mjs +92 -0
  599. package/esm2020/settings/components/shipping-method-test-result/shipping-method-test-result.component.mjs +30 -0
  600. package/esm2020/settings/components/tax-category-detail/tax-category-detail.component.mjs +107 -0
  601. package/esm2020/settings/components/tax-category-list/tax-category-list.component.mjs +56 -0
  602. package/esm2020/settings/components/tax-rate-detail/tax-rate-detail.component.mjs +126 -0
  603. package/esm2020/settings/components/tax-rate-list/tax-rate-list.component.mjs +56 -0
  604. package/esm2020/settings/components/test-address-form/test-address-form.component.mjs +49 -0
  605. package/esm2020/settings/components/test-order-builder/test-order-builder.component.mjs +71 -0
  606. package/esm2020/settings/components/zone-detail-dialog/zone-detail-dialog.component.mjs +44 -0
  607. package/esm2020/settings/components/zone-list/zone-list.component.mjs +158 -0
  608. package/esm2020/settings/components/zone-member-list/zone-member-controls.directive.mjs +16 -0
  609. package/esm2020/settings/components/zone-member-list/zone-member-list-header.directive.mjs +16 -0
  610. package/esm2020/settings/components/zone-member-list/zone-member-list.component.mjs +72 -0
  611. package/esm2020/settings/providers/routing/administrator-resolver.mjs +28 -0
  612. package/esm2020/settings/providers/routing/channel-resolver.mjs +34 -0
  613. package/esm2020/settings/providers/routing/country-resolver.mjs +31 -0
  614. package/esm2020/settings/providers/routing/global-settings-resolver.mjs +24 -0
  615. package/esm2020/settings/providers/routing/payment-method-resolver.mjs +33 -0
  616. package/esm2020/settings/providers/routing/profile-resolver.mjs +30 -0
  617. package/esm2020/settings/providers/routing/role-resolver.mjs +28 -0
  618. package/esm2020/settings/providers/routing/shipping-method-resolver.mjs +34 -0
  619. package/esm2020/settings/providers/routing/tax-category-resolver.mjs +29 -0
  620. package/esm2020/settings/providers/routing/tax-rate-resolver.mjs +33 -0
  621. package/{esm2015/settings/public_api.js → esm2020/settings/public_api.mjs} +0 -0
  622. package/esm2020/settings/settings.module.mjs +106 -0
  623. package/esm2020/settings/settings.routes.mjs +253 -0
  624. package/{esm2015/settings/vendure-admin-ui-settings.js → esm2020/settings/vendure-admin-ui-settings.mjs} +0 -0
  625. package/esm2020/system/components/health-check/health-check.component.mjs +18 -0
  626. package/esm2020/system/components/job-list/job-list.component.mjs +76 -0
  627. package/esm2020/system/components/job-state-label/job-state-label.component.mjs +46 -0
  628. package/{esm2015/system/public_api.js → esm2020/system/public_api.mjs} +0 -0
  629. package/esm2020/system/system.module.mjs +22 -0
  630. package/esm2020/system/system.routes.mjs +20 -0
  631. package/{esm2015/system/vendure-admin-ui-system.js → esm2020/system/vendure-admin-ui-system.mjs} +0 -0
  632. package/{esm2015/vendure-admin-ui.js → esm2020/vendure-admin-ui.mjs} +0 -0
  633. package/fesm2015/vendure-admin-ui-catalog.mjs +3735 -0
  634. package/fesm2015/vendure-admin-ui-catalog.mjs.map +1 -0
  635. package/fesm2015/vendure-admin-ui-core.mjs +16057 -0
  636. package/fesm2015/vendure-admin-ui-core.mjs.map +1 -0
  637. package/fesm2015/vendure-admin-ui-customer.mjs +1134 -0
  638. package/fesm2015/vendure-admin-ui-customer.mjs.map +1 -0
  639. package/fesm2015/vendure-admin-ui-dashboard.mjs +365 -0
  640. package/fesm2015/vendure-admin-ui-dashboard.mjs.map +1 -0
  641. package/fesm2015/vendure-admin-ui-login.mjs +122 -0
  642. package/fesm2015/vendure-admin-ui-login.mjs.map +1 -0
  643. package/fesm2015/vendure-admin-ui-marketing.mjs +388 -0
  644. package/fesm2015/vendure-admin-ui-marketing.mjs.map +1 -0
  645. package/fesm2015/vendure-admin-ui-order.mjs +2470 -0
  646. package/fesm2015/vendure-admin-ui-order.mjs.map +1 -0
  647. package/fesm2015/vendure-admin-ui-settings.mjs +2784 -0
  648. package/fesm2015/vendure-admin-ui-settings.mjs.map +1 -0
  649. package/fesm2015/vendure-admin-ui-system.mjs +165 -0
  650. package/fesm2015/vendure-admin-ui-system.mjs.map +1 -0
  651. package/fesm2015/vendure-admin-ui.mjs +11 -0
  652. package/fesm2015/vendure-admin-ui.mjs.map +1 -0
  653. package/fesm2020/vendure-admin-ui-catalog.mjs +3750 -0
  654. package/fesm2020/vendure-admin-ui-catalog.mjs.map +1 -0
  655. package/fesm2020/vendure-admin-ui-core.mjs +16053 -0
  656. package/fesm2020/vendure-admin-ui-core.mjs.map +1 -0
  657. package/fesm2020/vendure-admin-ui-customer.mjs +1135 -0
  658. package/fesm2020/vendure-admin-ui-customer.mjs.map +1 -0
  659. package/fesm2020/vendure-admin-ui-dashboard.mjs +361 -0
  660. package/fesm2020/vendure-admin-ui-dashboard.mjs.map +1 -0
  661. package/fesm2020/vendure-admin-ui-login.mjs +122 -0
  662. package/fesm2020/vendure-admin-ui-login.mjs.map +1 -0
  663. package/fesm2020/vendure-admin-ui-marketing.mjs +388 -0
  664. package/fesm2020/vendure-admin-ui-marketing.mjs.map +1 -0
  665. package/fesm2020/vendure-admin-ui-order.mjs +2483 -0
  666. package/fesm2020/vendure-admin-ui-order.mjs.map +1 -0
  667. package/fesm2020/vendure-admin-ui-settings.mjs +2791 -0
  668. package/fesm2020/vendure-admin-ui-settings.mjs.map +1 -0
  669. package/fesm2020/vendure-admin-ui-system.mjs +168 -0
  670. package/fesm2020/vendure-admin-ui-system.mjs.map +1 -0
  671. package/fesm2020/vendure-admin-ui.mjs +11 -0
  672. package/fesm2020/vendure-admin-ui.mjs.map +1 -0
  673. package/login/components/login/login.component.d.ts +3 -0
  674. package/login/login.module.d.ts +7 -0
  675. package/login/package.json +5 -6
  676. package/login/providers/login.guard.d.ts +3 -0
  677. package/login/vendure-admin-ui-login.d.ts +1 -0
  678. package/marketing/components/promotion-detail/promotion-detail.component.d.ts +7 -4
  679. package/marketing/components/promotion-list/promotion-list.component.d.ts +5 -6
  680. package/marketing/marketing.module.d.ts +8 -0
  681. package/marketing/package.json +5 -6
  682. package/marketing/providers/routing/promotion-resolver.d.ts +5 -2
  683. package/marketing/vendure-admin-ui-marketing.d.ts +1 -0
  684. package/order/components/add-manual-payment-dialog/add-manual-payment-dialog.component.d.ts +5 -2
  685. package/order/components/cancel-order-dialog/cancel-order-dialog.component.d.ts +3 -0
  686. package/order/components/fulfill-order-dialog/fulfill-order-dialog.component.d.ts +6 -3
  687. package/order/components/fulfillment-card/fulfillment-card.component.d.ts +6 -3
  688. package/order/components/fulfillment-detail/fulfillment-detail.component.d.ts +6 -3
  689. package/order/components/fulfillment-state-label/fulfillment-state-label.component.d.ts +3 -0
  690. package/order/components/line-fulfillment/line-fulfillment.component.d.ts +8 -3
  691. package/order/components/line-refunds/line-refunds.component.d.ts +6 -3
  692. package/order/components/modification-detail/modification-detail.component.d.ts +13 -4
  693. package/order/components/order-custom-fields-card/order-custom-fields-card.component.d.ts +3 -0
  694. package/order/components/order-detail/order-detail.component.d.ts +15 -10
  695. package/order/components/order-editor/order-editor.component.d.ts +16 -12
  696. package/order/components/order-edits-preview-dialog/order-edits-preview-dialog.component.d.ts +6 -3
  697. package/order/components/order-history/order-history.component.d.ts +36 -20
  698. package/order/components/order-list/order-list.component.d.ts +5 -2
  699. package/order/components/order-payment-card/order-payment-card.component.d.ts +48 -14
  700. package/order/components/order-process-graph/order-process-edge.component.d.ts +3 -0
  701. package/order/components/order-process-graph/order-process-graph.component.d.ts +3 -0
  702. package/order/components/order-process-graph/order-process-node.component.d.ts +3 -0
  703. package/order/components/order-process-graph-dialog/order-process-graph-dialog.component.d.ts +3 -0
  704. package/order/components/order-state-select-dialog/order-state-select-dialog.component.d.ts +3 -0
  705. package/order/components/order-table/order-table.component.d.ts +14 -8
  706. package/order/components/payment-detail/payment-detail.component.d.ts +5 -2
  707. package/order/components/payment-state-label/payment-state-label.component.d.ts +3 -0
  708. package/order/components/refund-order-dialog/refund-order-dialog.component.d.ts +8 -4
  709. package/order/components/refund-state-label/refund-state-label.component.d.ts +3 -0
  710. package/order/components/settle-refund-dialog/settle-refund-dialog.component.d.ts +5 -3
  711. package/order/components/simple-item-list/simple-item-list.component.d.ts +3 -0
  712. package/order/order.module.d.ts +34 -0
  713. package/order/package.json +5 -6
  714. package/order/providers/order-transition.service.d.ts +3 -0
  715. package/order/providers/routing/order-resolver.d.ts +5 -4
  716. package/order/vendure-admin-ui-order.d.ts +1 -0
  717. package/package.json +120 -36
  718. package/settings/components/add-country-to-zone-dialog/add-country-to-zone-dialog.component.d.ts +6 -3
  719. package/settings/components/admin-detail/admin-detail.component.d.ts +9 -10
  720. package/settings/components/administrator-list/administrator-list.component.d.ts +6 -3
  721. package/settings/components/channel-detail/channel-detail.component.d.ts +7 -8
  722. package/settings/components/channel-list/channel-list.component.d.ts +5 -5
  723. package/settings/components/country-detail/country-detail.component.d.ts +7 -4
  724. package/settings/components/country-list/country-list.component.d.ts +7 -4
  725. package/settings/components/global-settings/global-settings.component.d.ts +3 -0
  726. package/settings/components/payment-method-detail/payment-method-detail.component.d.ts +6 -3
  727. package/settings/components/payment-method-list/payment-method-list.component.d.ts +5 -2
  728. package/settings/components/permission-grid/permission-grid.component.d.ts +3 -0
  729. package/settings/components/profile/profile.component.d.ts +5 -2
  730. package/settings/components/role-detail/role-detail.component.d.ts +3 -0
  731. package/settings/components/role-list/role-list.component.d.ts +8 -5
  732. package/settings/components/shipping-eligibility-test-result/shipping-eligibility-test-result.component.d.ts +3 -0
  733. package/settings/components/shipping-method-detail/shipping-method-detail.component.d.ts +7 -4
  734. package/settings/components/shipping-method-list/shipping-method-list.component.d.ts +6 -3
  735. package/settings/components/shipping-method-test-result/shipping-method-test-result.component.d.ts +3 -0
  736. package/settings/components/tax-category-detail/tax-category-detail.component.d.ts +7 -8
  737. package/settings/components/tax-category-list/tax-category-list.component.d.ts +6 -6
  738. package/settings/components/tax-rate-detail/tax-rate-detail.component.d.ts +8 -5
  739. package/settings/components/tax-rate-list/tax-rate-list.component.d.ts +6 -7
  740. package/settings/components/test-address-form/test-address-form.component.d.ts +5 -2
  741. package/settings/components/test-order-builder/test-order-builder.component.d.ts +7 -2
  742. package/settings/components/zone-detail-dialog/zone-detail-dialog.component.d.ts +3 -0
  743. package/settings/components/zone-list/zone-list.component.d.ts +10 -7
  744. package/settings/components/zone-member-list/zone-member-controls.directive.d.ts +3 -0
  745. package/settings/components/zone-member-list/zone-member-list-header.directive.d.ts +3 -0
  746. package/settings/components/zone-member-list/zone-member-list.component.d.ts +3 -0
  747. package/settings/package.json +5 -6
  748. package/settings/providers/routing/administrator-resolver.d.ts +5 -4
  749. package/settings/providers/routing/channel-resolver.d.ts +5 -4
  750. package/settings/providers/routing/country-resolver.d.ts +5 -4
  751. package/settings/providers/routing/global-settings-resolver.d.ts +5 -4
  752. package/settings/providers/routing/payment-method-resolver.d.ts +5 -4
  753. package/settings/providers/routing/profile-resolver.d.ts +5 -4
  754. package/settings/providers/routing/role-resolver.d.ts +5 -4
  755. package/settings/providers/routing/shipping-method-resolver.d.ts +5 -4
  756. package/settings/providers/routing/tax-category-resolver.d.ts +5 -2
  757. package/settings/providers/routing/tax-rate-resolver.d.ts +5 -2
  758. package/settings/settings.module.d.ts +35 -0
  759. package/settings/vendure-admin-ui-settings.d.ts +1 -0
  760. package/static/i18n-messages/cs.json +4 -1
  761. package/static/i18n-messages/de.json +1 -1
  762. package/static/i18n-messages/en.json +3 -0
  763. package/static/i18n-messages/es.json +4 -1
  764. package/static/i18n-messages/fr.json +4 -1
  765. package/static/i18n-messages/it.json +4 -1
  766. package/static/i18n-messages/pl.json +4 -1
  767. package/static/i18n-messages/pt_BR.json +4 -1
  768. package/static/i18n-messages/pt_PT.json +4 -1
  769. package/static/i18n-messages/ru.json +4 -1
  770. package/static/i18n-messages/uk.json +4 -1
  771. package/static/i18n-messages/zh_Hans.json +4 -1
  772. package/static/i18n-messages/zh_Hant.json +4 -1
  773. package/static/polyfills.ts +0 -10
  774. package/static/styles/styles.scss +1 -1
  775. package/static/theme.min.css +1 -1
  776. package/system/components/health-check/health-check.component.d.ts +3 -0
  777. package/system/components/job-list/job-list.component.d.ts +7 -4
  778. package/system/components/job-state-label/job-state-label.component.d.ts +3 -0
  779. package/system/package.json +5 -6
  780. package/system/system.module.d.ts +9 -0
  781. package/system/vendure-admin-ui-system.d.ts +1 -0
  782. package/vendure-admin-ui.d.ts +1 -0
  783. package/bundles/vendure-admin-ui-catalog.umd.js +0 -4622
  784. package/bundles/vendure-admin-ui-catalog.umd.js.map +0 -1
  785. package/bundles/vendure-admin-ui-core.umd.js +0 -14777
  786. package/bundles/vendure-admin-ui-core.umd.js.map +0 -1
  787. package/bundles/vendure-admin-ui-customer.umd.js +0 -1657
  788. package/bundles/vendure-admin-ui-customer.umd.js.map +0 -1
  789. package/bundles/vendure-admin-ui-dashboard.umd.js +0 -757
  790. package/bundles/vendure-admin-ui-dashboard.umd.js.map +0 -1
  791. package/bundles/vendure-admin-ui-login.umd.js +0 -157
  792. package/bundles/vendure-admin-ui-login.umd.js.map +0 -1
  793. package/bundles/vendure-admin-ui-marketing.umd.js +0 -783
  794. package/bundles/vendure-admin-ui-marketing.umd.js.map +0 -1
  795. package/bundles/vendure-admin-ui-order.umd.js +0 -3377
  796. package/bundles/vendure-admin-ui-order.umd.js.map +0 -1
  797. package/bundles/vendure-admin-ui-settings.umd.js +0 -3697
  798. package/bundles/vendure-admin-ui-settings.umd.js.map +0 -1
  799. package/bundles/vendure-admin-ui-system.umd.js +0 -524
  800. package/bundles/vendure-admin-ui-system.umd.js.map +0 -1
  801. package/bundles/vendure-admin-ui.umd.js +0 -21
  802. package/bundles/vendure-admin-ui.umd.js.map +0 -1
  803. package/catalog/vendure-admin-ui-catalog.metadata.json +0 -1
  804. package/core/shared/components/product-selector/product-selector.component.d.ts +0 -48
  805. package/core/vendure-admin-ui-core.metadata.json +0 -1
  806. package/customer/vendure-admin-ui-customer.metadata.json +0 -1
  807. package/dashboard/vendure-admin-ui-dashboard.metadata.json +0 -1
  808. package/esm2015/catalog/catalog.module.js +0 -64
  809. package/esm2015/catalog/catalog.routes.js +0 -176
  810. package/esm2015/catalog/components/apply-facet-dialog/apply-facet-dialog.component.js +0 -32
  811. package/esm2015/catalog/components/asset-detail/asset-detail.component.js +0 -74
  812. package/esm2015/catalog/components/asset-list/asset-list.component.js +0 -119
  813. package/esm2015/catalog/components/assets/assets.component.js +0 -93
  814. package/esm2015/catalog/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.js +0 -109
  815. package/esm2015/catalog/components/collection-contents/collection-contents.component.js +0 -78
  816. package/esm2015/catalog/components/collection-detail/collection-detail.component.js +0 -206
  817. package/esm2015/catalog/components/collection-list/collection-list.component.js +0 -119
  818. package/esm2015/catalog/components/collection-tree/array-to-tree.js +0 -57
  819. package/esm2015/catalog/components/collection-tree/collection-tree-node.component.js +0 -94
  820. package/esm2015/catalog/components/collection-tree/collection-tree.component.js +0 -74
  821. package/esm2015/catalog/components/confirm-variant-deletion-dialog/confirm-variant-deletion-dialog.component.js +0 -21
  822. package/esm2015/catalog/components/facet-detail/facet-detail.component.js +0 -326
  823. package/esm2015/catalog/components/facet-list/facet-list.component.js +0 -107
  824. package/esm2015/catalog/components/generate-product-variants/generate-product-variants.component.js +0 -78
  825. package/esm2015/catalog/components/option-value-input/option-value-input.component.js +0 -98
  826. package/esm2015/catalog/components/product-detail/product-detail.component.js +0 -515
  827. package/esm2015/catalog/components/product-list/product-list.component.js +0 -153
  828. package/esm2015/catalog/components/product-options-editor/product-options-editor.component.js +0 -157
  829. package/esm2015/catalog/components/product-search-input/product-search-input.component.js +0 -104
  830. package/esm2015/catalog/components/product-variants-editor/product-variants-editor.component.js +0 -316
  831. package/esm2015/catalog/components/product-variants-list/product-variants-list.component.js +0 -207
  832. package/esm2015/catalog/components/product-variants-table/product-variants-table.component.js +0 -66
  833. package/esm2015/catalog/components/update-product-option-dialog/update-product-option-dialog.component.js +0 -61
  834. package/esm2015/catalog/components/variant-price-detail/variant-price-detail.component.js +0 -60
  835. package/esm2015/catalog/providers/product-detail/product-detail.service.js +0 -224
  836. package/esm2015/catalog/providers/routing/asset-resolver.js +0 -37
  837. package/esm2015/catalog/providers/routing/collection-resolver.js +0 -38
  838. package/esm2015/catalog/providers/routing/facet-resolver.js +0 -35
  839. package/esm2015/catalog/providers/routing/product-resolver.js +0 -42
  840. package/esm2015/catalog/providers/routing/product-variants-resolver.js +0 -31
  841. package/esm2015/catalog/public_api.js +0 -36
  842. package/esm2015/core/app.component.js +0 -80
  843. package/esm2015/core/app.component.module.js +0 -14
  844. package/esm2015/core/common/base-detail.component.js +0 -106
  845. package/esm2015/core/common/base-entity-resolver.js +0 -60
  846. package/esm2015/core/common/base-list.component.js +0 -156
  847. package/esm2015/core/common/generated-types.js +0 -957
  848. package/esm2015/core/common/introspection-result.js +0 -193
  849. package/esm2015/core/common/utilities/configurable-operation-utils.js +0 -78
  850. package/esm2015/core/common/utilities/create-updated-translatable.js +0 -72
  851. package/esm2015/core/common/utilities/find-translation.js +0 -9
  852. package/esm2015/core/common/utilities/flatten-facet-values.js +0 -4
  853. package/esm2015/core/common/utilities/get-default-ui-language.js +0 -13
  854. package/esm2015/core/common/version.js +0 -3
  855. package/esm2015/core/components/app-shell/app-shell.component.js +0 -78
  856. package/esm2015/core/components/breadcrumb/breadcrumb.component.js +0 -126
  857. package/esm2015/core/components/channel-switcher/channel-switcher.component.js +0 -52
  858. package/esm2015/core/components/main-nav/main-nav.component.js +0 -272
  859. package/esm2015/core/components/notification/notification.component.js +0 -71
  860. package/esm2015/core/components/overlay-host/overlay-host.component.js +0 -22
  861. package/esm2015/core/components/theme-switcher/theme-switcher.component.js +0 -31
  862. package/esm2015/core/components/ui-language-switcher-dialog/ui-language-switcher-dialog.component.js +0 -294
  863. package/esm2015/core/components/user-menu/user-menu.component.js +0 -24
  864. package/esm2015/core/core.module.js +0 -115
  865. package/esm2015/core/data/client-state/client-defaults.js +0 -31
  866. package/esm2015/core/data/client-state/client-resolvers.js +0 -123
  867. package/esm2015/core/data/data.module.js +0 -106
  868. package/esm2015/core/data/definitions/collection-definitions.js +0 -127
  869. package/esm2015/core/data/definitions/order-definitions.js +0 -457
  870. package/esm2015/core/data/providers/administrator-data.service.js +0 -55
  871. package/esm2015/core/data/providers/auth-data.service.js +0 -20
  872. package/esm2015/core/data/providers/base-data.service.js +0 -72
  873. package/esm2015/core/data/providers/client-data.service.js +0 -75
  874. package/esm2015/core/data/providers/collection-data.service.js +0 -72
  875. package/esm2015/core/data/providers/customer-data.service.js +0 -117
  876. package/esm2015/core/data/providers/data.service.js +0 -90
  877. package/esm2015/core/data/providers/facet-data.service.js +0 -60
  878. package/esm2015/core/data/providers/fetch-adapter.js +0 -38
  879. package/esm2015/core/data/providers/interceptor.js +0 -142
  880. package/esm2015/core/data/providers/order-data.service.js +0 -98
  881. package/esm2015/core/data/providers/product-data.service.js +0 -232
  882. package/esm2015/core/data/providers/promotion-data.service.js +0 -37
  883. package/esm2015/core/data/providers/settings-data.service.js +0 -231
  884. package/esm2015/core/data/providers/shipping-method-data.service.js +0 -66
  885. package/esm2015/core/data/query-result.js +0 -77
  886. package/esm2015/core/data/server-config.js +0 -76
  887. package/esm2015/core/data/utils/add-custom-fields.js +0 -78
  888. package/esm2015/core/data/utils/transform-relation-custom-field-inputs.js +0 -46
  889. package/esm2015/core/providers/auth/auth.service.js +0 -110
  890. package/esm2015/core/providers/component-registry/component-registry.service.js +0 -23
  891. package/esm2015/core/providers/custom-detail-component/custom-detail-component.service.js +0 -44
  892. package/esm2015/core/providers/custom-field-component/custom-field-component.service.js +0 -47
  893. package/esm2015/core/providers/dashboard-widget/dashboard-widget.service.js +0 -97
  894. package/esm2015/core/providers/guard/auth.guard.js +0 -42
  895. package/esm2015/core/providers/health-check/health-check.service.js +0 -38
  896. package/esm2015/core/providers/i18n/custom-message-format-compiler.js +0 -30
  897. package/esm2015/core/providers/i18n/i18n.service.js +0 -56
  898. package/esm2015/core/providers/job-queue/job-queue.service.js +0 -93
  899. package/esm2015/core/providers/local-storage/local-storage.service.js +0 -79
  900. package/esm2015/core/providers/modal/modal.service.js +0 -100
  901. package/esm2015/core/providers/nav-builder/nav-builder.service.js +0 -264
  902. package/esm2015/core/providers/notification/notification.service.js +0 -165
  903. package/esm2015/core/providers/overlay-host/overlay-host.service.js +0 -46
  904. package/esm2015/core/public_api.js +0 -219
  905. package/esm2015/core/shared/components/action-bar/action-bar.component.js +0 -47
  906. package/esm2015/core/shared/components/action-bar-items/action-bar-items.component.js +0 -78
  907. package/esm2015/core/shared/components/address-form/address-form.component.js +0 -17
  908. package/esm2015/core/shared/components/affixed-input/affixed-input.component.js +0 -19
  909. package/esm2015/core/shared/components/affixed-input/percentage-suffix-input.component.js +0 -70
  910. package/esm2015/core/shared/components/asset-file-input/asset-file-input.component.js +0 -92
  911. package/esm2015/core/shared/components/asset-gallery/asset-gallery.component.js +0 -102
  912. package/esm2015/core/shared/components/asset-picker-dialog/asset-picker-dialog.component.js +0 -138
  913. package/esm2015/core/shared/components/asset-preview/asset-preview.component.js +0 -176
  914. package/esm2015/core/shared/components/asset-preview-dialog/asset-preview-dialog.component.js +0 -35
  915. package/esm2015/core/shared/components/asset-preview-links/asset-preview-links.component.js +0 -18
  916. package/esm2015/core/shared/components/asset-search-input/asset-search-input.component.js +0 -102
  917. package/esm2015/core/shared/components/channel-assignment-control/channel-assignment-control.component.js +0 -109
  918. package/esm2015/core/shared/components/channel-badge/channel-badge.component.js +0 -19
  919. package/esm2015/core/shared/components/chip/chip.component.js +0 -42
  920. package/esm2015/core/shared/components/configurable-input/configurable-input.component.js +0 -128
  921. package/esm2015/core/shared/components/currency-input/currency-input.component.js +0 -145
  922. package/esm2015/core/shared/components/custom-detail-component-host/custom-detail-component-host.component.js +0 -44
  923. package/esm2015/core/shared/components/custom-field-control/custom-field-control.component.js +0 -55
  924. package/esm2015/core/shared/components/customer-label/customer-label.component.js +0 -15
  925. package/esm2015/core/shared/components/data-table/data-table-column.component.js +0 -22
  926. package/esm2015/core/shared/components/data-table/data-table.component.js +0 -106
  927. package/esm2015/core/shared/components/datetime-picker/datetime-picker.component.js +0 -205
  928. package/esm2015/core/shared/components/datetime-picker/datetime-picker.service.js +0 -199
  929. package/esm2015/core/shared/components/dropdown/dropdown-item.directive.js +0 -24
  930. package/esm2015/core/shared/components/dropdown/dropdown-menu.component.js +0 -121
  931. package/esm2015/core/shared/components/dropdown/dropdown-trigger.directive.js +0 -25
  932. package/esm2015/core/shared/components/dropdown/dropdown.component.js +0 -60
  933. package/esm2015/core/shared/components/edit-note-dialog/edit-note-dialog.component.js +0 -26
  934. package/esm2015/core/shared/components/empty-placeholder/empty-placeholder.component.js +0 -15
  935. package/esm2015/core/shared/components/entity-info/entity-info.component.js +0 -19
  936. package/esm2015/core/shared/components/extension-host/extension-host.component.js +0 -83
  937. package/esm2015/core/shared/components/extension-host/extension-host.service.js +0 -100
  938. package/esm2015/core/shared/components/facet-value-chip/facet-value-chip.component.js +0 -23
  939. package/esm2015/core/shared/components/facet-value-selector/facet-value-selector.component.js +0 -114
  940. package/esm2015/core/shared/components/focal-point-control/focal-point-control.component.js +0 -56
  941. package/esm2015/core/shared/components/form-field/form-field-control.directive.js +0 -35
  942. package/esm2015/core/shared/components/form-field/form-field.component.js +0 -61
  943. package/esm2015/core/shared/components/form-item/form-item.component.js +0 -19
  944. package/esm2015/core/shared/components/formatted-address/formatted-address.component.js +0 -37
  945. package/esm2015/core/shared/components/help-tooltip/help-tooltip.component.js +0 -16
  946. package/esm2015/core/shared/components/history-entry-detail/history-entry-detail.component.js +0 -12
  947. package/esm2015/core/shared/components/items-per-page-controls/items-per-page-controls.component.js +0 -23
  948. package/esm2015/core/shared/components/labeled-data/labeled-data.component.js +0 -15
  949. package/esm2015/core/shared/components/language-selector/language-selector.component.js +0 -21
  950. package/esm2015/core/shared/components/manage-tags-dialog/manage-tags-dialog.component.js +0 -58
  951. package/esm2015/core/shared/components/modal-dialog/dialog-buttons.directive.js +0 -23
  952. package/esm2015/core/shared/components/modal-dialog/dialog-component-outlet.component.js +0 -31
  953. package/esm2015/core/shared/components/modal-dialog/dialog-title.directive.js +0 -23
  954. package/esm2015/core/shared/components/modal-dialog/modal-dialog.component.js +0 -57
  955. package/esm2015/core/shared/components/object-tree/object-tree.component.js +0 -53
  956. package/esm2015/core/shared/components/order-state-label/order-state-label.component.js +0 -43
  957. package/esm2015/core/shared/components/pagination-controls/pagination-controls.component.js +0 -22
  958. package/esm2015/core/shared/components/product-selector/product-selector.component.js +0 -61
  959. package/esm2015/core/shared/components/rich-text-editor/external-image-dialog/external-image-dialog.component.js +0 -32
  960. package/esm2015/core/shared/components/rich-text-editor/link-dialog/link-dialog.component.js +0 -28
  961. package/esm2015/core/shared/components/rich-text-editor/prosemirror/prosemirror.service.js +0 -112
  962. package/esm2015/core/shared/components/rich-text-editor/rich-text-editor.component.js +0 -86
  963. package/esm2015/core/shared/components/select-toggle/select-toggle.component.js +0 -28
  964. package/esm2015/core/shared/components/simple-dialog/simple-dialog.component.js +0 -21
  965. package/esm2015/core/shared/components/status-badge/status-badge.component.js +0 -18
  966. package/esm2015/core/shared/components/tabbed-custom-fields/tabbed-custom-fields.component.js +0 -49
  967. package/esm2015/core/shared/components/table-row-action/table-row-action.component.js +0 -23
  968. package/esm2015/core/shared/components/tag-selector/tag-selector.component.js +0 -55
  969. package/esm2015/core/shared/components/timeline-entry/timeline-entry.component.js +0 -40
  970. package/esm2015/core/shared/components/title-input/title-input.component.js +0 -18
  971. package/esm2015/core/shared/components/ui-extension-point/ui-extension-point.component.js +0 -31
  972. package/esm2015/core/shared/directives/disabled.directive.js +0 -38
  973. package/esm2015/core/shared/directives/if-default-channel-active.directive.js +0 -42
  974. package/esm2015/core/shared/directives/if-directive-base.js +0 -75
  975. package/esm2015/core/shared/directives/if-multichannel.directive.js +0 -47
  976. package/esm2015/core/shared/directives/if-permissions.directive.js +0 -78
  977. package/esm2015/core/shared/dynamic-form-inputs/boolean-form-input/boolean-form-input.component.js +0 -20
  978. package/esm2015/core/shared/dynamic-form-inputs/code-editor-form-input/json-editor-form-input.component.js +0 -125
  979. package/esm2015/core/shared/dynamic-form-inputs/currency-form-input/currency-form-input.component.js +0 -33
  980. package/esm2015/core/shared/dynamic-form-inputs/customer-group-form-input/customer-group-form-input.component.js +0 -43
  981. package/esm2015/core/shared/dynamic-form-inputs/date-form-input/date-form-input.component.js +0 -35
  982. package/esm2015/core/shared/dynamic-form-inputs/dynamic-form-input/dynamic-form-input.component.js +0 -266
  983. package/esm2015/core/shared/dynamic-form-inputs/facet-value-form-input/facet-value-form-input.component.js +0 -36
  984. package/esm2015/core/shared/dynamic-form-inputs/number-form-input/number-form-input.component.js +0 -43
  985. package/esm2015/core/shared/dynamic-form-inputs/password-form-input/password-form-input.component.js +0 -20
  986. package/esm2015/core/shared/dynamic-form-inputs/product-selector-form-input/product-selector-form-input.component.js +0 -60
  987. package/esm2015/core/shared/dynamic-form-inputs/relation-form-input/asset/relation-asset-input.component.js +0 -69
  988. package/esm2015/core/shared/dynamic-form-inputs/relation-form-input/customer/relation-customer-input.component.js +0 -66
  989. package/esm2015/core/shared/dynamic-form-inputs/relation-form-input/generic/relation-generic-input.component.js +0 -48
  990. package/esm2015/core/shared/dynamic-form-inputs/relation-form-input/product/relation-product-input.component.js +0 -81
  991. package/esm2015/core/shared/dynamic-form-inputs/relation-form-input/product-variant/relation-product-variant-input.component.js +0 -81
  992. package/esm2015/core/shared/dynamic-form-inputs/relation-form-input/relation-card/relation-card.component.js +0 -43
  993. package/esm2015/core/shared/dynamic-form-inputs/relation-form-input/relation-form-input.component.js +0 -25
  994. package/esm2015/core/shared/dynamic-form-inputs/relation-form-input/relation-selector-dialog/relation-selector-dialog.component.js +0 -12
  995. package/esm2015/core/shared/dynamic-form-inputs/rich-text-form-input/rich-text-form-input.component.js +0 -20
  996. package/esm2015/core/shared/dynamic-form-inputs/select-form-input/select-form-input.component.js +0 -28
  997. package/esm2015/core/shared/dynamic-form-inputs/text-form-input/text-form-input.component.js +0 -28
  998. package/esm2015/core/shared/dynamic-form-inputs/textarea-form-input/textarea-form-input.component.js +0 -23
  999. package/esm2015/core/shared/pipes/asset-preview.pipe.js +0 -38
  1000. package/esm2015/core/shared/pipes/channel-label.pipe.js +0 -19
  1001. package/esm2015/core/shared/pipes/custom-field-label.pipe.js +0 -46
  1002. package/esm2015/core/shared/pipes/duration.pipe.js +0 -48
  1003. package/esm2015/core/shared/pipes/file-size.pipe.js +0 -43
  1004. package/esm2015/core/shared/pipes/has-permission.pipe.js +0 -65
  1005. package/esm2015/core/shared/pipes/locale-base.pipe.js +0 -57
  1006. package/esm2015/core/shared/pipes/locale-currency-name.pipe.js +0 -58
  1007. package/esm2015/core/shared/pipes/locale-currency.pipe.js +0 -40
  1008. package/esm2015/core/shared/pipes/locale-date.pipe.js +0 -80
  1009. package/esm2015/core/shared/pipes/locale-language-name.pipe.js +0 -47
  1010. package/esm2015/core/shared/pipes/locale-region-name.pipe.js +0 -47
  1011. package/esm2015/core/shared/pipes/sentence-case.pipe.js +0 -26
  1012. package/esm2015/core/shared/pipes/sort.pipe.js +0 -30
  1013. package/esm2015/core/shared/pipes/state-i18n-token.pipe.js +0 -46
  1014. package/esm2015/core/shared/pipes/string-to-color.pipe.js +0 -14
  1015. package/esm2015/core/shared/pipes/time-ago.pipe.js +0 -51
  1016. package/esm2015/core/shared/providers/routing/can-deactivate-detail-guard.js +0 -36
  1017. package/esm2015/core/shared/shared.module.js +0 -267
  1018. package/esm2015/customer/components/add-customer-to-group-dialog/add-customer-to-group-dialog.component.js +0 -42
  1019. package/esm2015/customer/components/address-card/address-card.component.js +0 -92
  1020. package/esm2015/customer/components/address-detail-dialog/address-detail-dialog.component.js +0 -28
  1021. package/esm2015/customer/components/customer-detail/customer-detail.component.js +0 -415
  1022. package/esm2015/customer/components/customer-group-detail-dialog/customer-group-detail-dialog.component.js +0 -47
  1023. package/esm2015/customer/components/customer-group-list/customer-group-list.component.js +0 -184
  1024. package/esm2015/customer/components/customer-group-member-list/customer-group-member-list.component.js +0 -101
  1025. package/esm2015/customer/components/customer-history/customer-history.component.js +0 -76
  1026. package/esm2015/customer/components/customer-list/customer-list.component.js +0 -81
  1027. package/esm2015/customer/components/customer-status-label/customer-status-label.component.js +0 -15
  1028. package/esm2015/customer/components/select-customer-group-dialog/select-customer-group-dialog.component.js +0 -31
  1029. package/esm2015/customer/customer.module.js +0 -37
  1030. package/esm2015/customer/customer.routes.js +0 -44
  1031. package/esm2015/customer/providers/routing/customer-resolver.js +0 -35
  1032. package/esm2015/dashboard/components/dashboard/dashboard.component.js +0 -124
  1033. package/esm2015/dashboard/components/dashboard-widget/dashboard-widget.component.js +0 -39
  1034. package/esm2015/dashboard/dashboard.module.js +0 -25
  1035. package/esm2015/dashboard/default-widgets.js +0 -34
  1036. package/esm2015/dashboard/widgets/latest-orders-widget/latest-orders-widget.component.js +0 -42
  1037. package/esm2015/dashboard/widgets/order-summary-widget/order-summary-widget.component.js +0 -56
  1038. package/esm2015/dashboard/widgets/test-widget/test-widget.component.js +0 -19
  1039. package/esm2015/dashboard/widgets/welcome-widget/welcome-widget.component.js +0 -36
  1040. package/esm2015/login/components/login/login.component.js +0 -61
  1041. package/esm2015/login/login.module.js +0 -15
  1042. package/esm2015/login/providers/login.guard.js +0 -35
  1043. package/esm2015/marketing/components/promotion-detail/promotion-detail.component.js +0 -247
  1044. package/esm2015/marketing/components/promotion-list/promotion-list.component.js +0 -87
  1045. package/esm2015/marketing/marketing.module.js +0 -15
  1046. package/esm2015/marketing/marketing.routes.js +0 -35
  1047. package/esm2015/marketing/providers/routing/promotion-resolver.js +0 -34
  1048. package/esm2015/order/components/add-manual-payment-dialog/add-manual-payment-dialog.component.js +0 -39
  1049. package/esm2015/order/components/cancel-order-dialog/cancel-order-dialog.component.js +0 -82
  1050. package/esm2015/order/components/fulfill-order-dialog/fulfill-order-dialog.component.js +0 -71
  1051. package/esm2015/order/components/fulfillment-card/fulfillment-card.component.js +0 -43
  1052. package/esm2015/order/components/fulfillment-detail/fulfillment-detail.component.js +0 -64
  1053. package/esm2015/order/components/fulfillment-state-label/fulfillment-state-label.component.js +0 -26
  1054. package/esm2015/order/components/line-fulfillment/line-fulfillment.component.js +0 -65
  1055. package/esm2015/order/components/line-refunds/line-refunds.component.js +0 -35
  1056. package/esm2015/order/components/modification-detail/modification-detail.component.js +0 -66
  1057. package/esm2015/order/components/order-custom-fields-card/order-custom-fields-card.component.js +0 -39
  1058. package/esm2015/order/components/order-detail/order-detail.component.js +0 -509
  1059. package/esm2015/order/components/order-editor/order-editor.component.js +0 -377
  1060. package/esm2015/order/components/order-edits-preview-dialog/order-edits-preview-dialog.component.js +0 -50
  1061. package/esm2015/order/components/order-history/order-history.component.js +0 -154
  1062. package/esm2015/order/components/order-list/order-list.component.js +0 -188
  1063. package/esm2015/order/components/order-payment-card/order-payment-card.component.js +0 -33
  1064. package/esm2015/order/components/order-process-graph/order-process-edge.component.js +0 -37
  1065. package/esm2015/order/components/order-process-graph/order-process-graph.component.js +0 -94
  1066. package/esm2015/order/components/order-process-graph/order-process-node.component.js +0 -53
  1067. package/esm2015/order/components/order-process-graph-dialog/order-process-graph-dialog.component.js +0 -23
  1068. package/esm2015/order/components/order-state-select-dialog/order-state-select-dialog.component.js +0 -25
  1069. package/esm2015/order/components/order-table/order-table.component.js +0 -68
  1070. package/esm2015/order/components/payment-detail/payment-detail.component.js +0 -16
  1071. package/esm2015/order/components/payment-state-label/payment-state-label.component.js +0 -26
  1072. package/esm2015/order/components/refund-order-dialog/refund-order-dialog.component.js +0 -138
  1073. package/esm2015/order/components/refund-state-label/refund-state-label.component.js +0 -25
  1074. package/esm2015/order/components/settle-refund-dialog/settle-refund-dialog.component.js +0 -21
  1075. package/esm2015/order/components/simple-item-list/simple-item-list.component.js +0 -15
  1076. package/esm2015/order/order.module.js +0 -70
  1077. package/esm2015/order/order.routes.js +0 -54
  1078. package/esm2015/order/providers/order-transition.service.js +0 -116
  1079. package/esm2015/order/providers/routing/order-resolver.js +0 -33
  1080. package/esm2015/settings/components/add-country-to-zone-dialog/add-country-to-zone-dialog.component.js +0 -35
  1081. package/esm2015/settings/components/admin-detail/admin-detail.component.js +0 -199
  1082. package/esm2015/settings/components/administrator-list/administrator-list.component.js +0 -52
  1083. package/esm2015/settings/components/channel-detail/channel-detail.component.js +0 -163
  1084. package/esm2015/settings/components/channel-list/channel-list.component.js +0 -57
  1085. package/esm2015/settings/components/country-detail/country-detail.component.js +0 -120
  1086. package/esm2015/settings/components/country-list/country-list.component.js +0 -82
  1087. package/esm2015/settings/components/global-settings/global-settings.component.js +0 -89
  1088. package/esm2015/settings/components/payment-method-detail/payment-method-detail.component.js +0 -204
  1089. package/esm2015/settings/components/payment-method-list/payment-method-list.component.js +0 -66
  1090. package/esm2015/settings/components/permission-grid/permission-grid.component.js +0 -80
  1091. package/esm2015/settings/components/profile/profile.component.js +0 -82
  1092. package/esm2015/settings/components/role-detail/role-detail.component.js +0 -109
  1093. package/esm2015/settings/components/role-list/role-list.component.js +0 -73
  1094. package/esm2015/settings/components/shipping-eligibility-test-result/shipping-eligibility-test-result.component.js +0 -24
  1095. package/esm2015/settings/components/shipping-method-detail/shipping-method-detail.component.js +0 -235
  1096. package/esm2015/settings/components/shipping-method-list/shipping-method-list.component.js +0 -94
  1097. package/esm2015/settings/components/shipping-method-test-result/shipping-method-test-result.component.js +0 -24
  1098. package/esm2015/settings/components/tax-category-detail/tax-category-detail.component.js +0 -115
  1099. package/esm2015/settings/components/tax-category-list/tax-category-list.component.js +0 -60
  1100. package/esm2015/settings/components/tax-rate-detail/tax-rate-detail.component.js +0 -131
  1101. package/esm2015/settings/components/tax-rate-list/tax-rate-list.component.js +0 -64
  1102. package/esm2015/settings/components/test-address-form/test-address-form.component.js +0 -53
  1103. package/esm2015/settings/components/test-order-builder/test-order-builder.component.js +0 -73
  1104. package/esm2015/settings/components/zone-detail-dialog/zone-detail-dialog.component.js +0 -47
  1105. package/esm2015/settings/components/zone-list/zone-list.component.js +0 -160
  1106. package/esm2015/settings/components/zone-member-list/zone-member-controls.directive.js +0 -15
  1107. package/esm2015/settings/components/zone-member-list/zone-member-list-header.directive.js +0 -15
  1108. package/esm2015/settings/components/zone-member-list/zone-member-list.component.js +0 -63
  1109. package/esm2015/settings/providers/routing/administrator-resolver.js +0 -32
  1110. package/esm2015/settings/providers/routing/channel-resolver.js +0 -40
  1111. package/esm2015/settings/providers/routing/country-resolver.js +0 -35
  1112. package/esm2015/settings/providers/routing/global-settings-resolver.js +0 -28
  1113. package/esm2015/settings/providers/routing/payment-method-resolver.js +0 -37
  1114. package/esm2015/settings/providers/routing/profile-resolver.js +0 -34
  1115. package/esm2015/settings/providers/routing/role-resolver.js +0 -32
  1116. package/esm2015/settings/providers/routing/shipping-method-resolver.js +0 -38
  1117. package/esm2015/settings/providers/routing/tax-category-resolver.js +0 -32
  1118. package/esm2015/settings/providers/routing/tax-rate-resolver.js +0 -36
  1119. package/esm2015/settings/settings.module.js +0 -72
  1120. package/esm2015/settings/settings.routes.js +0 -255
  1121. package/esm2015/system/components/health-check/health-check.component.js +0 -19
  1122. package/esm2015/system/components/job-list/job-list.component.js +0 -74
  1123. package/esm2015/system/components/job-state-label/job-state-label.component.js +0 -45
  1124. package/esm2015/system/system.module.js +0 -16
  1125. package/esm2015/system/system.routes.js +0 -22
  1126. package/fesm2015/vendure-admin-ui-catalog.js +0 -3787
  1127. package/fesm2015/vendure-admin-ui-catalog.js.map +0 -1
  1128. package/fesm2015/vendure-admin-ui-core.js +0 -15776
  1129. package/fesm2015/vendure-admin-ui-core.js.map +0 -1
  1130. package/fesm2015/vendure-admin-ui-customer.js +0 -1171
  1131. package/fesm2015/vendure-admin-ui-customer.js.map +0 -1
  1132. package/fesm2015/vendure-admin-ui-dashboard.js +0 -371
  1133. package/fesm2015/vendure-admin-ui-dashboard.js.map +0 -1
  1134. package/fesm2015/vendure-admin-ui-login.js +0 -121
  1135. package/fesm2015/vendure-admin-ui-login.js.map +0 -1
  1136. package/fesm2015/vendure-admin-ui-marketing.js +0 -403
  1137. package/fesm2015/vendure-admin-ui-marketing.js.map +0 -1
  1138. package/fesm2015/vendure-admin-ui-order.js +0 -2542
  1139. package/fesm2015/vendure-admin-ui-order.js.map +0 -1
  1140. package/fesm2015/vendure-admin-ui-settings.js +0 -2975
  1141. package/fesm2015/vendure-admin-ui-settings.js.map +0 -1
  1142. package/fesm2015/vendure-admin-ui-system.js +0 -171
  1143. package/fesm2015/vendure-admin-ui-system.js.map +0 -1
  1144. package/fesm2015/vendure-admin-ui.js +0 -11
  1145. package/fesm2015/vendure-admin-ui.js.map +0 -1
  1146. package/login/vendure-admin-ui-login.metadata.json +0 -1
  1147. package/marketing/vendure-admin-ui-marketing.metadata.json +0 -1
  1148. package/order/vendure-admin-ui-order.metadata.json +0 -1
  1149. package/settings/vendure-admin-ui-settings.metadata.json +0 -1
  1150. package/system/vendure-admin-ui-system.metadata.json +0 -1
  1151. package/vendure-admin-ui.metadata.json +0 -1
@@ -0,0 +1,957 @@
1
+ export var AdjustmentType;
2
+ (function (AdjustmentType) {
3
+ AdjustmentType["DISTRIBUTED_ORDER_PROMOTION"] = "DISTRIBUTED_ORDER_PROMOTION";
4
+ AdjustmentType["OTHER"] = "OTHER";
5
+ AdjustmentType["PROMOTION"] = "PROMOTION";
6
+ })(AdjustmentType || (AdjustmentType = {}));
7
+ export var AssetType;
8
+ (function (AssetType) {
9
+ AssetType["BINARY"] = "BINARY";
10
+ AssetType["IMAGE"] = "IMAGE";
11
+ AssetType["VIDEO"] = "VIDEO";
12
+ })(AssetType || (AssetType = {}));
13
+ /**
14
+ * @description
15
+ * ISO 4217 currency code
16
+ *
17
+ * @docsCategory common
18
+ */
19
+ export var CurrencyCode;
20
+ (function (CurrencyCode) {
21
+ /** United Arab Emirates dirham */
22
+ CurrencyCode["AED"] = "AED";
23
+ /** Afghan afghani */
24
+ CurrencyCode["AFN"] = "AFN";
25
+ /** Albanian lek */
26
+ CurrencyCode["ALL"] = "ALL";
27
+ /** Armenian dram */
28
+ CurrencyCode["AMD"] = "AMD";
29
+ /** Netherlands Antillean guilder */
30
+ CurrencyCode["ANG"] = "ANG";
31
+ /** Angolan kwanza */
32
+ CurrencyCode["AOA"] = "AOA";
33
+ /** Argentine peso */
34
+ CurrencyCode["ARS"] = "ARS";
35
+ /** Australian dollar */
36
+ CurrencyCode["AUD"] = "AUD";
37
+ /** Aruban florin */
38
+ CurrencyCode["AWG"] = "AWG";
39
+ /** Azerbaijani manat */
40
+ CurrencyCode["AZN"] = "AZN";
41
+ /** Bosnia and Herzegovina convertible mark */
42
+ CurrencyCode["BAM"] = "BAM";
43
+ /** Barbados dollar */
44
+ CurrencyCode["BBD"] = "BBD";
45
+ /** Bangladeshi taka */
46
+ CurrencyCode["BDT"] = "BDT";
47
+ /** Bulgarian lev */
48
+ CurrencyCode["BGN"] = "BGN";
49
+ /** Bahraini dinar */
50
+ CurrencyCode["BHD"] = "BHD";
51
+ /** Burundian franc */
52
+ CurrencyCode["BIF"] = "BIF";
53
+ /** Bermudian dollar */
54
+ CurrencyCode["BMD"] = "BMD";
55
+ /** Brunei dollar */
56
+ CurrencyCode["BND"] = "BND";
57
+ /** Boliviano */
58
+ CurrencyCode["BOB"] = "BOB";
59
+ /** Brazilian real */
60
+ CurrencyCode["BRL"] = "BRL";
61
+ /** Bahamian dollar */
62
+ CurrencyCode["BSD"] = "BSD";
63
+ /** Bhutanese ngultrum */
64
+ CurrencyCode["BTN"] = "BTN";
65
+ /** Botswana pula */
66
+ CurrencyCode["BWP"] = "BWP";
67
+ /** Belarusian ruble */
68
+ CurrencyCode["BYN"] = "BYN";
69
+ /** Belize dollar */
70
+ CurrencyCode["BZD"] = "BZD";
71
+ /** Canadian dollar */
72
+ CurrencyCode["CAD"] = "CAD";
73
+ /** Congolese franc */
74
+ CurrencyCode["CDF"] = "CDF";
75
+ /** Swiss franc */
76
+ CurrencyCode["CHF"] = "CHF";
77
+ /** Chilean peso */
78
+ CurrencyCode["CLP"] = "CLP";
79
+ /** Renminbi (Chinese) yuan */
80
+ CurrencyCode["CNY"] = "CNY";
81
+ /** Colombian peso */
82
+ CurrencyCode["COP"] = "COP";
83
+ /** Costa Rican colon */
84
+ CurrencyCode["CRC"] = "CRC";
85
+ /** Cuban convertible peso */
86
+ CurrencyCode["CUC"] = "CUC";
87
+ /** Cuban peso */
88
+ CurrencyCode["CUP"] = "CUP";
89
+ /** Cape Verde escudo */
90
+ CurrencyCode["CVE"] = "CVE";
91
+ /** Czech koruna */
92
+ CurrencyCode["CZK"] = "CZK";
93
+ /** Djiboutian franc */
94
+ CurrencyCode["DJF"] = "DJF";
95
+ /** Danish krone */
96
+ CurrencyCode["DKK"] = "DKK";
97
+ /** Dominican peso */
98
+ CurrencyCode["DOP"] = "DOP";
99
+ /** Algerian dinar */
100
+ CurrencyCode["DZD"] = "DZD";
101
+ /** Egyptian pound */
102
+ CurrencyCode["EGP"] = "EGP";
103
+ /** Eritrean nakfa */
104
+ CurrencyCode["ERN"] = "ERN";
105
+ /** Ethiopian birr */
106
+ CurrencyCode["ETB"] = "ETB";
107
+ /** Euro */
108
+ CurrencyCode["EUR"] = "EUR";
109
+ /** Fiji dollar */
110
+ CurrencyCode["FJD"] = "FJD";
111
+ /** Falkland Islands pound */
112
+ CurrencyCode["FKP"] = "FKP";
113
+ /** Pound sterling */
114
+ CurrencyCode["GBP"] = "GBP";
115
+ /** Georgian lari */
116
+ CurrencyCode["GEL"] = "GEL";
117
+ /** Ghanaian cedi */
118
+ CurrencyCode["GHS"] = "GHS";
119
+ /** Gibraltar pound */
120
+ CurrencyCode["GIP"] = "GIP";
121
+ /** Gambian dalasi */
122
+ CurrencyCode["GMD"] = "GMD";
123
+ /** Guinean franc */
124
+ CurrencyCode["GNF"] = "GNF";
125
+ /** Guatemalan quetzal */
126
+ CurrencyCode["GTQ"] = "GTQ";
127
+ /** Guyanese dollar */
128
+ CurrencyCode["GYD"] = "GYD";
129
+ /** Hong Kong dollar */
130
+ CurrencyCode["HKD"] = "HKD";
131
+ /** Honduran lempira */
132
+ CurrencyCode["HNL"] = "HNL";
133
+ /** Croatian kuna */
134
+ CurrencyCode["HRK"] = "HRK";
135
+ /** Haitian gourde */
136
+ CurrencyCode["HTG"] = "HTG";
137
+ /** Hungarian forint */
138
+ CurrencyCode["HUF"] = "HUF";
139
+ /** Indonesian rupiah */
140
+ CurrencyCode["IDR"] = "IDR";
141
+ /** Israeli new shekel */
142
+ CurrencyCode["ILS"] = "ILS";
143
+ /** Indian rupee */
144
+ CurrencyCode["INR"] = "INR";
145
+ /** Iraqi dinar */
146
+ CurrencyCode["IQD"] = "IQD";
147
+ /** Iranian rial */
148
+ CurrencyCode["IRR"] = "IRR";
149
+ /** Icelandic króna */
150
+ CurrencyCode["ISK"] = "ISK";
151
+ /** Jamaican dollar */
152
+ CurrencyCode["JMD"] = "JMD";
153
+ /** Jordanian dinar */
154
+ CurrencyCode["JOD"] = "JOD";
155
+ /** Japanese yen */
156
+ CurrencyCode["JPY"] = "JPY";
157
+ /** Kenyan shilling */
158
+ CurrencyCode["KES"] = "KES";
159
+ /** Kyrgyzstani som */
160
+ CurrencyCode["KGS"] = "KGS";
161
+ /** Cambodian riel */
162
+ CurrencyCode["KHR"] = "KHR";
163
+ /** Comoro franc */
164
+ CurrencyCode["KMF"] = "KMF";
165
+ /** North Korean won */
166
+ CurrencyCode["KPW"] = "KPW";
167
+ /** South Korean won */
168
+ CurrencyCode["KRW"] = "KRW";
169
+ /** Kuwaiti dinar */
170
+ CurrencyCode["KWD"] = "KWD";
171
+ /** Cayman Islands dollar */
172
+ CurrencyCode["KYD"] = "KYD";
173
+ /** Kazakhstani tenge */
174
+ CurrencyCode["KZT"] = "KZT";
175
+ /** Lao kip */
176
+ CurrencyCode["LAK"] = "LAK";
177
+ /** Lebanese pound */
178
+ CurrencyCode["LBP"] = "LBP";
179
+ /** Sri Lankan rupee */
180
+ CurrencyCode["LKR"] = "LKR";
181
+ /** Liberian dollar */
182
+ CurrencyCode["LRD"] = "LRD";
183
+ /** Lesotho loti */
184
+ CurrencyCode["LSL"] = "LSL";
185
+ /** Libyan dinar */
186
+ CurrencyCode["LYD"] = "LYD";
187
+ /** Moroccan dirham */
188
+ CurrencyCode["MAD"] = "MAD";
189
+ /** Moldovan leu */
190
+ CurrencyCode["MDL"] = "MDL";
191
+ /** Malagasy ariary */
192
+ CurrencyCode["MGA"] = "MGA";
193
+ /** Macedonian denar */
194
+ CurrencyCode["MKD"] = "MKD";
195
+ /** Myanmar kyat */
196
+ CurrencyCode["MMK"] = "MMK";
197
+ /** Mongolian tögrög */
198
+ CurrencyCode["MNT"] = "MNT";
199
+ /** Macanese pataca */
200
+ CurrencyCode["MOP"] = "MOP";
201
+ /** Mauritanian ouguiya */
202
+ CurrencyCode["MRU"] = "MRU";
203
+ /** Mauritian rupee */
204
+ CurrencyCode["MUR"] = "MUR";
205
+ /** Maldivian rufiyaa */
206
+ CurrencyCode["MVR"] = "MVR";
207
+ /** Malawian kwacha */
208
+ CurrencyCode["MWK"] = "MWK";
209
+ /** Mexican peso */
210
+ CurrencyCode["MXN"] = "MXN";
211
+ /** Malaysian ringgit */
212
+ CurrencyCode["MYR"] = "MYR";
213
+ /** Mozambican metical */
214
+ CurrencyCode["MZN"] = "MZN";
215
+ /** Namibian dollar */
216
+ CurrencyCode["NAD"] = "NAD";
217
+ /** Nigerian naira */
218
+ CurrencyCode["NGN"] = "NGN";
219
+ /** Nicaraguan córdoba */
220
+ CurrencyCode["NIO"] = "NIO";
221
+ /** Norwegian krone */
222
+ CurrencyCode["NOK"] = "NOK";
223
+ /** Nepalese rupee */
224
+ CurrencyCode["NPR"] = "NPR";
225
+ /** New Zealand dollar */
226
+ CurrencyCode["NZD"] = "NZD";
227
+ /** Omani rial */
228
+ CurrencyCode["OMR"] = "OMR";
229
+ /** Panamanian balboa */
230
+ CurrencyCode["PAB"] = "PAB";
231
+ /** Peruvian sol */
232
+ CurrencyCode["PEN"] = "PEN";
233
+ /** Papua New Guinean kina */
234
+ CurrencyCode["PGK"] = "PGK";
235
+ /** Philippine peso */
236
+ CurrencyCode["PHP"] = "PHP";
237
+ /** Pakistani rupee */
238
+ CurrencyCode["PKR"] = "PKR";
239
+ /** Polish złoty */
240
+ CurrencyCode["PLN"] = "PLN";
241
+ /** Paraguayan guaraní */
242
+ CurrencyCode["PYG"] = "PYG";
243
+ /** Qatari riyal */
244
+ CurrencyCode["QAR"] = "QAR";
245
+ /** Romanian leu */
246
+ CurrencyCode["RON"] = "RON";
247
+ /** Serbian dinar */
248
+ CurrencyCode["RSD"] = "RSD";
249
+ /** Russian ruble */
250
+ CurrencyCode["RUB"] = "RUB";
251
+ /** Rwandan franc */
252
+ CurrencyCode["RWF"] = "RWF";
253
+ /** Saudi riyal */
254
+ CurrencyCode["SAR"] = "SAR";
255
+ /** Solomon Islands dollar */
256
+ CurrencyCode["SBD"] = "SBD";
257
+ /** Seychelles rupee */
258
+ CurrencyCode["SCR"] = "SCR";
259
+ /** Sudanese pound */
260
+ CurrencyCode["SDG"] = "SDG";
261
+ /** Swedish krona/kronor */
262
+ CurrencyCode["SEK"] = "SEK";
263
+ /** Singapore dollar */
264
+ CurrencyCode["SGD"] = "SGD";
265
+ /** Saint Helena pound */
266
+ CurrencyCode["SHP"] = "SHP";
267
+ /** Sierra Leonean leone */
268
+ CurrencyCode["SLL"] = "SLL";
269
+ /** Somali shilling */
270
+ CurrencyCode["SOS"] = "SOS";
271
+ /** Surinamese dollar */
272
+ CurrencyCode["SRD"] = "SRD";
273
+ /** South Sudanese pound */
274
+ CurrencyCode["SSP"] = "SSP";
275
+ /** São Tomé and Príncipe dobra */
276
+ CurrencyCode["STN"] = "STN";
277
+ /** Salvadoran colón */
278
+ CurrencyCode["SVC"] = "SVC";
279
+ /** Syrian pound */
280
+ CurrencyCode["SYP"] = "SYP";
281
+ /** Swazi lilangeni */
282
+ CurrencyCode["SZL"] = "SZL";
283
+ /** Thai baht */
284
+ CurrencyCode["THB"] = "THB";
285
+ /** Tajikistani somoni */
286
+ CurrencyCode["TJS"] = "TJS";
287
+ /** Turkmenistan manat */
288
+ CurrencyCode["TMT"] = "TMT";
289
+ /** Tunisian dinar */
290
+ CurrencyCode["TND"] = "TND";
291
+ /** Tongan paʻanga */
292
+ CurrencyCode["TOP"] = "TOP";
293
+ /** Turkish lira */
294
+ CurrencyCode["TRY"] = "TRY";
295
+ /** Trinidad and Tobago dollar */
296
+ CurrencyCode["TTD"] = "TTD";
297
+ /** New Taiwan dollar */
298
+ CurrencyCode["TWD"] = "TWD";
299
+ /** Tanzanian shilling */
300
+ CurrencyCode["TZS"] = "TZS";
301
+ /** Ukrainian hryvnia */
302
+ CurrencyCode["UAH"] = "UAH";
303
+ /** Ugandan shilling */
304
+ CurrencyCode["UGX"] = "UGX";
305
+ /** United States dollar */
306
+ CurrencyCode["USD"] = "USD";
307
+ /** Uruguayan peso */
308
+ CurrencyCode["UYU"] = "UYU";
309
+ /** Uzbekistan som */
310
+ CurrencyCode["UZS"] = "UZS";
311
+ /** Venezuelan bolívar soberano */
312
+ CurrencyCode["VES"] = "VES";
313
+ /** Vietnamese đồng */
314
+ CurrencyCode["VND"] = "VND";
315
+ /** Vanuatu vatu */
316
+ CurrencyCode["VUV"] = "VUV";
317
+ /** Samoan tala */
318
+ CurrencyCode["WST"] = "WST";
319
+ /** CFA franc BEAC */
320
+ CurrencyCode["XAF"] = "XAF";
321
+ /** East Caribbean dollar */
322
+ CurrencyCode["XCD"] = "XCD";
323
+ /** CFA franc BCEAO */
324
+ CurrencyCode["XOF"] = "XOF";
325
+ /** CFP franc (franc Pacifique) */
326
+ CurrencyCode["XPF"] = "XPF";
327
+ /** Yemeni rial */
328
+ CurrencyCode["YER"] = "YER";
329
+ /** South African rand */
330
+ CurrencyCode["ZAR"] = "ZAR";
331
+ /** Zambian kwacha */
332
+ CurrencyCode["ZMW"] = "ZMW";
333
+ /** Zimbabwean dollar */
334
+ CurrencyCode["ZWL"] = "ZWL";
335
+ })(CurrencyCode || (CurrencyCode = {}));
336
+ export var DeletionResult;
337
+ (function (DeletionResult) {
338
+ /** The entity was successfully deleted */
339
+ DeletionResult["DELETED"] = "DELETED";
340
+ /** Deletion did not take place, reason given in message */
341
+ DeletionResult["NOT_DELETED"] = "NOT_DELETED";
342
+ })(DeletionResult || (DeletionResult = {}));
343
+ export var ErrorCode;
344
+ (function (ErrorCode) {
345
+ ErrorCode["ALREADY_REFUNDED_ERROR"] = "ALREADY_REFUNDED_ERROR";
346
+ ErrorCode["CANCEL_ACTIVE_ORDER_ERROR"] = "CANCEL_ACTIVE_ORDER_ERROR";
347
+ ErrorCode["CHANNEL_DEFAULT_LANGUAGE_ERROR"] = "CHANNEL_DEFAULT_LANGUAGE_ERROR";
348
+ ErrorCode["COUPON_CODE_EXPIRED_ERROR"] = "COUPON_CODE_EXPIRED_ERROR";
349
+ ErrorCode["COUPON_CODE_INVALID_ERROR"] = "COUPON_CODE_INVALID_ERROR";
350
+ ErrorCode["COUPON_CODE_LIMIT_ERROR"] = "COUPON_CODE_LIMIT_ERROR";
351
+ ErrorCode["CREATE_FULFILLMENT_ERROR"] = "CREATE_FULFILLMENT_ERROR";
352
+ ErrorCode["EMAIL_ADDRESS_CONFLICT_ERROR"] = "EMAIL_ADDRESS_CONFLICT_ERROR";
353
+ ErrorCode["EMPTY_ORDER_LINE_SELECTION_ERROR"] = "EMPTY_ORDER_LINE_SELECTION_ERROR";
354
+ ErrorCode["FULFILLMENT_STATE_TRANSITION_ERROR"] = "FULFILLMENT_STATE_TRANSITION_ERROR";
355
+ ErrorCode["INSUFFICIENT_STOCK_ERROR"] = "INSUFFICIENT_STOCK_ERROR";
356
+ ErrorCode["INSUFFICIENT_STOCK_ON_HAND_ERROR"] = "INSUFFICIENT_STOCK_ON_HAND_ERROR";
357
+ ErrorCode["INVALID_CREDENTIALS_ERROR"] = "INVALID_CREDENTIALS_ERROR";
358
+ ErrorCode["INVALID_FULFILLMENT_HANDLER_ERROR"] = "INVALID_FULFILLMENT_HANDLER_ERROR";
359
+ ErrorCode["ITEMS_ALREADY_FULFILLED_ERROR"] = "ITEMS_ALREADY_FULFILLED_ERROR";
360
+ ErrorCode["LANGUAGE_NOT_AVAILABLE_ERROR"] = "LANGUAGE_NOT_AVAILABLE_ERROR";
361
+ ErrorCode["MANUAL_PAYMENT_STATE_ERROR"] = "MANUAL_PAYMENT_STATE_ERROR";
362
+ ErrorCode["MIME_TYPE_ERROR"] = "MIME_TYPE_ERROR";
363
+ ErrorCode["MISSING_CONDITIONS_ERROR"] = "MISSING_CONDITIONS_ERROR";
364
+ ErrorCode["MULTIPLE_ORDER_ERROR"] = "MULTIPLE_ORDER_ERROR";
365
+ ErrorCode["NATIVE_AUTH_STRATEGY_ERROR"] = "NATIVE_AUTH_STRATEGY_ERROR";
366
+ ErrorCode["NEGATIVE_QUANTITY_ERROR"] = "NEGATIVE_QUANTITY_ERROR";
367
+ ErrorCode["NOTHING_TO_REFUND_ERROR"] = "NOTHING_TO_REFUND_ERROR";
368
+ ErrorCode["NO_CHANGES_SPECIFIED_ERROR"] = "NO_CHANGES_SPECIFIED_ERROR";
369
+ ErrorCode["ORDER_LIMIT_ERROR"] = "ORDER_LIMIT_ERROR";
370
+ ErrorCode["ORDER_MODIFICATION_STATE_ERROR"] = "ORDER_MODIFICATION_STATE_ERROR";
371
+ ErrorCode["ORDER_STATE_TRANSITION_ERROR"] = "ORDER_STATE_TRANSITION_ERROR";
372
+ ErrorCode["PAYMENT_METHOD_MISSING_ERROR"] = "PAYMENT_METHOD_MISSING_ERROR";
373
+ ErrorCode["PAYMENT_ORDER_MISMATCH_ERROR"] = "PAYMENT_ORDER_MISMATCH_ERROR";
374
+ ErrorCode["PAYMENT_STATE_TRANSITION_ERROR"] = "PAYMENT_STATE_TRANSITION_ERROR";
375
+ ErrorCode["PRODUCT_OPTION_IN_USE_ERROR"] = "PRODUCT_OPTION_IN_USE_ERROR";
376
+ ErrorCode["QUANTITY_TOO_GREAT_ERROR"] = "QUANTITY_TOO_GREAT_ERROR";
377
+ ErrorCode["REFUND_ORDER_STATE_ERROR"] = "REFUND_ORDER_STATE_ERROR";
378
+ ErrorCode["REFUND_PAYMENT_ID_MISSING_ERROR"] = "REFUND_PAYMENT_ID_MISSING_ERROR";
379
+ ErrorCode["REFUND_STATE_TRANSITION_ERROR"] = "REFUND_STATE_TRANSITION_ERROR";
380
+ ErrorCode["SETTLE_PAYMENT_ERROR"] = "SETTLE_PAYMENT_ERROR";
381
+ ErrorCode["UNKNOWN_ERROR"] = "UNKNOWN_ERROR";
382
+ })(ErrorCode || (ErrorCode = {}));
383
+ export var GlobalFlag;
384
+ (function (GlobalFlag) {
385
+ GlobalFlag["FALSE"] = "FALSE";
386
+ GlobalFlag["INHERIT"] = "INHERIT";
387
+ GlobalFlag["TRUE"] = "TRUE";
388
+ })(GlobalFlag || (GlobalFlag = {}));
389
+ export var HistoryEntryType;
390
+ (function (HistoryEntryType) {
391
+ HistoryEntryType["CUSTOMER_ADDED_TO_GROUP"] = "CUSTOMER_ADDED_TO_GROUP";
392
+ HistoryEntryType["CUSTOMER_ADDRESS_CREATED"] = "CUSTOMER_ADDRESS_CREATED";
393
+ HistoryEntryType["CUSTOMER_ADDRESS_DELETED"] = "CUSTOMER_ADDRESS_DELETED";
394
+ HistoryEntryType["CUSTOMER_ADDRESS_UPDATED"] = "CUSTOMER_ADDRESS_UPDATED";
395
+ HistoryEntryType["CUSTOMER_DETAIL_UPDATED"] = "CUSTOMER_DETAIL_UPDATED";
396
+ HistoryEntryType["CUSTOMER_EMAIL_UPDATE_REQUESTED"] = "CUSTOMER_EMAIL_UPDATE_REQUESTED";
397
+ HistoryEntryType["CUSTOMER_EMAIL_UPDATE_VERIFIED"] = "CUSTOMER_EMAIL_UPDATE_VERIFIED";
398
+ HistoryEntryType["CUSTOMER_NOTE"] = "CUSTOMER_NOTE";
399
+ HistoryEntryType["CUSTOMER_PASSWORD_RESET_REQUESTED"] = "CUSTOMER_PASSWORD_RESET_REQUESTED";
400
+ HistoryEntryType["CUSTOMER_PASSWORD_RESET_VERIFIED"] = "CUSTOMER_PASSWORD_RESET_VERIFIED";
401
+ HistoryEntryType["CUSTOMER_PASSWORD_UPDATED"] = "CUSTOMER_PASSWORD_UPDATED";
402
+ HistoryEntryType["CUSTOMER_REGISTERED"] = "CUSTOMER_REGISTERED";
403
+ HistoryEntryType["CUSTOMER_REMOVED_FROM_GROUP"] = "CUSTOMER_REMOVED_FROM_GROUP";
404
+ HistoryEntryType["CUSTOMER_VERIFIED"] = "CUSTOMER_VERIFIED";
405
+ HistoryEntryType["ORDER_CANCELLATION"] = "ORDER_CANCELLATION";
406
+ HistoryEntryType["ORDER_COUPON_APPLIED"] = "ORDER_COUPON_APPLIED";
407
+ HistoryEntryType["ORDER_COUPON_REMOVED"] = "ORDER_COUPON_REMOVED";
408
+ HistoryEntryType["ORDER_FULFILLMENT"] = "ORDER_FULFILLMENT";
409
+ HistoryEntryType["ORDER_FULFILLMENT_TRANSITION"] = "ORDER_FULFILLMENT_TRANSITION";
410
+ HistoryEntryType["ORDER_MODIFIED"] = "ORDER_MODIFIED";
411
+ HistoryEntryType["ORDER_NOTE"] = "ORDER_NOTE";
412
+ HistoryEntryType["ORDER_PAYMENT_TRANSITION"] = "ORDER_PAYMENT_TRANSITION";
413
+ HistoryEntryType["ORDER_REFUND_TRANSITION"] = "ORDER_REFUND_TRANSITION";
414
+ HistoryEntryType["ORDER_STATE_TRANSITION"] = "ORDER_STATE_TRANSITION";
415
+ })(HistoryEntryType || (HistoryEntryType = {}));
416
+ /**
417
+ * @description
418
+ * The state of a Job in the JobQueue
419
+ *
420
+ * @docsCategory common
421
+ */
422
+ export var JobState;
423
+ (function (JobState) {
424
+ JobState["CANCELLED"] = "CANCELLED";
425
+ JobState["COMPLETED"] = "COMPLETED";
426
+ JobState["FAILED"] = "FAILED";
427
+ JobState["PENDING"] = "PENDING";
428
+ JobState["RETRYING"] = "RETRYING";
429
+ JobState["RUNNING"] = "RUNNING";
430
+ })(JobState || (JobState = {}));
431
+ /**
432
+ * @description
433
+ * Languages in the form of a ISO 639-1 language code with optional
434
+ * region or script modifier (e.g. de_AT). The selection available is based
435
+ * on the [Unicode CLDR summary list](https://unicode-org.github.io/cldr-staging/charts/37/summary/root.html)
436
+ * and includes the major spoken languages of the world and any widely-used variants.
437
+ *
438
+ * @docsCategory common
439
+ */
440
+ export var LanguageCode;
441
+ (function (LanguageCode) {
442
+ /** Afrikaans */
443
+ LanguageCode["af"] = "af";
444
+ /** Akan */
445
+ LanguageCode["ak"] = "ak";
446
+ /** Amharic */
447
+ LanguageCode["am"] = "am";
448
+ /** Arabic */
449
+ LanguageCode["ar"] = "ar";
450
+ /** Assamese */
451
+ LanguageCode["as"] = "as";
452
+ /** Azerbaijani */
453
+ LanguageCode["az"] = "az";
454
+ /** Belarusian */
455
+ LanguageCode["be"] = "be";
456
+ /** Bulgarian */
457
+ LanguageCode["bg"] = "bg";
458
+ /** Bambara */
459
+ LanguageCode["bm"] = "bm";
460
+ /** Bangla */
461
+ LanguageCode["bn"] = "bn";
462
+ /** Tibetan */
463
+ LanguageCode["bo"] = "bo";
464
+ /** Breton */
465
+ LanguageCode["br"] = "br";
466
+ /** Bosnian */
467
+ LanguageCode["bs"] = "bs";
468
+ /** Catalan */
469
+ LanguageCode["ca"] = "ca";
470
+ /** Chechen */
471
+ LanguageCode["ce"] = "ce";
472
+ /** Corsican */
473
+ LanguageCode["co"] = "co";
474
+ /** Czech */
475
+ LanguageCode["cs"] = "cs";
476
+ /** Church Slavic */
477
+ LanguageCode["cu"] = "cu";
478
+ /** Welsh */
479
+ LanguageCode["cy"] = "cy";
480
+ /** Danish */
481
+ LanguageCode["da"] = "da";
482
+ /** German */
483
+ LanguageCode["de"] = "de";
484
+ /** Austrian German */
485
+ LanguageCode["de_AT"] = "de_AT";
486
+ /** Swiss High German */
487
+ LanguageCode["de_CH"] = "de_CH";
488
+ /** Dzongkha */
489
+ LanguageCode["dz"] = "dz";
490
+ /** Ewe */
491
+ LanguageCode["ee"] = "ee";
492
+ /** Greek */
493
+ LanguageCode["el"] = "el";
494
+ /** English */
495
+ LanguageCode["en"] = "en";
496
+ /** Australian English */
497
+ LanguageCode["en_AU"] = "en_AU";
498
+ /** Canadian English */
499
+ LanguageCode["en_CA"] = "en_CA";
500
+ /** British English */
501
+ LanguageCode["en_GB"] = "en_GB";
502
+ /** American English */
503
+ LanguageCode["en_US"] = "en_US";
504
+ /** Esperanto */
505
+ LanguageCode["eo"] = "eo";
506
+ /** Spanish */
507
+ LanguageCode["es"] = "es";
508
+ /** European Spanish */
509
+ LanguageCode["es_ES"] = "es_ES";
510
+ /** Mexican Spanish */
511
+ LanguageCode["es_MX"] = "es_MX";
512
+ /** Estonian */
513
+ LanguageCode["et"] = "et";
514
+ /** Basque */
515
+ LanguageCode["eu"] = "eu";
516
+ /** Persian */
517
+ LanguageCode["fa"] = "fa";
518
+ /** Dari */
519
+ LanguageCode["fa_AF"] = "fa_AF";
520
+ /** Fulah */
521
+ LanguageCode["ff"] = "ff";
522
+ /** Finnish */
523
+ LanguageCode["fi"] = "fi";
524
+ /** Faroese */
525
+ LanguageCode["fo"] = "fo";
526
+ /** French */
527
+ LanguageCode["fr"] = "fr";
528
+ /** Canadian French */
529
+ LanguageCode["fr_CA"] = "fr_CA";
530
+ /** Swiss French */
531
+ LanguageCode["fr_CH"] = "fr_CH";
532
+ /** Western Frisian */
533
+ LanguageCode["fy"] = "fy";
534
+ /** Irish */
535
+ LanguageCode["ga"] = "ga";
536
+ /** Scottish Gaelic */
537
+ LanguageCode["gd"] = "gd";
538
+ /** Galician */
539
+ LanguageCode["gl"] = "gl";
540
+ /** Gujarati */
541
+ LanguageCode["gu"] = "gu";
542
+ /** Manx */
543
+ LanguageCode["gv"] = "gv";
544
+ /** Hausa */
545
+ LanguageCode["ha"] = "ha";
546
+ /** Hebrew */
547
+ LanguageCode["he"] = "he";
548
+ /** Hindi */
549
+ LanguageCode["hi"] = "hi";
550
+ /** Croatian */
551
+ LanguageCode["hr"] = "hr";
552
+ /** Haitian Creole */
553
+ LanguageCode["ht"] = "ht";
554
+ /** Hungarian */
555
+ LanguageCode["hu"] = "hu";
556
+ /** Armenian */
557
+ LanguageCode["hy"] = "hy";
558
+ /** Interlingua */
559
+ LanguageCode["ia"] = "ia";
560
+ /** Indonesian */
561
+ LanguageCode["id"] = "id";
562
+ /** Igbo */
563
+ LanguageCode["ig"] = "ig";
564
+ /** Sichuan Yi */
565
+ LanguageCode["ii"] = "ii";
566
+ /** Icelandic */
567
+ LanguageCode["is"] = "is";
568
+ /** Italian */
569
+ LanguageCode["it"] = "it";
570
+ /** Japanese */
571
+ LanguageCode["ja"] = "ja";
572
+ /** Javanese */
573
+ LanguageCode["jv"] = "jv";
574
+ /** Georgian */
575
+ LanguageCode["ka"] = "ka";
576
+ /** Kikuyu */
577
+ LanguageCode["ki"] = "ki";
578
+ /** Kazakh */
579
+ LanguageCode["kk"] = "kk";
580
+ /** Kalaallisut */
581
+ LanguageCode["kl"] = "kl";
582
+ /** Khmer */
583
+ LanguageCode["km"] = "km";
584
+ /** Kannada */
585
+ LanguageCode["kn"] = "kn";
586
+ /** Korean */
587
+ LanguageCode["ko"] = "ko";
588
+ /** Kashmiri */
589
+ LanguageCode["ks"] = "ks";
590
+ /** Kurdish */
591
+ LanguageCode["ku"] = "ku";
592
+ /** Cornish */
593
+ LanguageCode["kw"] = "kw";
594
+ /** Kyrgyz */
595
+ LanguageCode["ky"] = "ky";
596
+ /** Latin */
597
+ LanguageCode["la"] = "la";
598
+ /** Luxembourgish */
599
+ LanguageCode["lb"] = "lb";
600
+ /** Ganda */
601
+ LanguageCode["lg"] = "lg";
602
+ /** Lingala */
603
+ LanguageCode["ln"] = "ln";
604
+ /** Lao */
605
+ LanguageCode["lo"] = "lo";
606
+ /** Lithuanian */
607
+ LanguageCode["lt"] = "lt";
608
+ /** Luba-Katanga */
609
+ LanguageCode["lu"] = "lu";
610
+ /** Latvian */
611
+ LanguageCode["lv"] = "lv";
612
+ /** Malagasy */
613
+ LanguageCode["mg"] = "mg";
614
+ /** Maori */
615
+ LanguageCode["mi"] = "mi";
616
+ /** Macedonian */
617
+ LanguageCode["mk"] = "mk";
618
+ /** Malayalam */
619
+ LanguageCode["ml"] = "ml";
620
+ /** Mongolian */
621
+ LanguageCode["mn"] = "mn";
622
+ /** Marathi */
623
+ LanguageCode["mr"] = "mr";
624
+ /** Malay */
625
+ LanguageCode["ms"] = "ms";
626
+ /** Maltese */
627
+ LanguageCode["mt"] = "mt";
628
+ /** Burmese */
629
+ LanguageCode["my"] = "my";
630
+ /** Norwegian Bokmål */
631
+ LanguageCode["nb"] = "nb";
632
+ /** North Ndebele */
633
+ LanguageCode["nd"] = "nd";
634
+ /** Nepali */
635
+ LanguageCode["ne"] = "ne";
636
+ /** Dutch */
637
+ LanguageCode["nl"] = "nl";
638
+ /** Flemish */
639
+ LanguageCode["nl_BE"] = "nl_BE";
640
+ /** Norwegian Nynorsk */
641
+ LanguageCode["nn"] = "nn";
642
+ /** Nyanja */
643
+ LanguageCode["ny"] = "ny";
644
+ /** Oromo */
645
+ LanguageCode["om"] = "om";
646
+ /** Odia */
647
+ LanguageCode["or"] = "or";
648
+ /** Ossetic */
649
+ LanguageCode["os"] = "os";
650
+ /** Punjabi */
651
+ LanguageCode["pa"] = "pa";
652
+ /** Polish */
653
+ LanguageCode["pl"] = "pl";
654
+ /** Pashto */
655
+ LanguageCode["ps"] = "ps";
656
+ /** Portuguese */
657
+ LanguageCode["pt"] = "pt";
658
+ /** Brazilian Portuguese */
659
+ LanguageCode["pt_BR"] = "pt_BR";
660
+ /** European Portuguese */
661
+ LanguageCode["pt_PT"] = "pt_PT";
662
+ /** Quechua */
663
+ LanguageCode["qu"] = "qu";
664
+ /** Romansh */
665
+ LanguageCode["rm"] = "rm";
666
+ /** Rundi */
667
+ LanguageCode["rn"] = "rn";
668
+ /** Romanian */
669
+ LanguageCode["ro"] = "ro";
670
+ /** Moldavian */
671
+ LanguageCode["ro_MD"] = "ro_MD";
672
+ /** Russian */
673
+ LanguageCode["ru"] = "ru";
674
+ /** Kinyarwanda */
675
+ LanguageCode["rw"] = "rw";
676
+ /** Sanskrit */
677
+ LanguageCode["sa"] = "sa";
678
+ /** Sindhi */
679
+ LanguageCode["sd"] = "sd";
680
+ /** Northern Sami */
681
+ LanguageCode["se"] = "se";
682
+ /** Sango */
683
+ LanguageCode["sg"] = "sg";
684
+ /** Sinhala */
685
+ LanguageCode["si"] = "si";
686
+ /** Slovak */
687
+ LanguageCode["sk"] = "sk";
688
+ /** Slovenian */
689
+ LanguageCode["sl"] = "sl";
690
+ /** Samoan */
691
+ LanguageCode["sm"] = "sm";
692
+ /** Shona */
693
+ LanguageCode["sn"] = "sn";
694
+ /** Somali */
695
+ LanguageCode["so"] = "so";
696
+ /** Albanian */
697
+ LanguageCode["sq"] = "sq";
698
+ /** Serbian */
699
+ LanguageCode["sr"] = "sr";
700
+ /** Southern Sotho */
701
+ LanguageCode["st"] = "st";
702
+ /** Sundanese */
703
+ LanguageCode["su"] = "su";
704
+ /** Swedish */
705
+ LanguageCode["sv"] = "sv";
706
+ /** Swahili */
707
+ LanguageCode["sw"] = "sw";
708
+ /** Congo Swahili */
709
+ LanguageCode["sw_CD"] = "sw_CD";
710
+ /** Tamil */
711
+ LanguageCode["ta"] = "ta";
712
+ /** Telugu */
713
+ LanguageCode["te"] = "te";
714
+ /** Tajik */
715
+ LanguageCode["tg"] = "tg";
716
+ /** Thai */
717
+ LanguageCode["th"] = "th";
718
+ /** Tigrinya */
719
+ LanguageCode["ti"] = "ti";
720
+ /** Turkmen */
721
+ LanguageCode["tk"] = "tk";
722
+ /** Tongan */
723
+ LanguageCode["to"] = "to";
724
+ /** Turkish */
725
+ LanguageCode["tr"] = "tr";
726
+ /** Tatar */
727
+ LanguageCode["tt"] = "tt";
728
+ /** Uyghur */
729
+ LanguageCode["ug"] = "ug";
730
+ /** Ukrainian */
731
+ LanguageCode["uk"] = "uk";
732
+ /** Urdu */
733
+ LanguageCode["ur"] = "ur";
734
+ /** Uzbek */
735
+ LanguageCode["uz"] = "uz";
736
+ /** Vietnamese */
737
+ LanguageCode["vi"] = "vi";
738
+ /** Volapük */
739
+ LanguageCode["vo"] = "vo";
740
+ /** Wolof */
741
+ LanguageCode["wo"] = "wo";
742
+ /** Xhosa */
743
+ LanguageCode["xh"] = "xh";
744
+ /** Yiddish */
745
+ LanguageCode["yi"] = "yi";
746
+ /** Yoruba */
747
+ LanguageCode["yo"] = "yo";
748
+ /** Chinese */
749
+ LanguageCode["zh"] = "zh";
750
+ /** Simplified Chinese */
751
+ LanguageCode["zh_Hans"] = "zh_Hans";
752
+ /** Traditional Chinese */
753
+ LanguageCode["zh_Hant"] = "zh_Hant";
754
+ /** Zulu */
755
+ LanguageCode["zu"] = "zu";
756
+ })(LanguageCode || (LanguageCode = {}));
757
+ export var LogicalOperator;
758
+ (function (LogicalOperator) {
759
+ LogicalOperator["AND"] = "AND";
760
+ LogicalOperator["OR"] = "OR";
761
+ })(LogicalOperator || (LogicalOperator = {}));
762
+ /**
763
+ * @description
764
+ * Permissions for administrators and customers. Used to control access to
765
+ * GraphQL resolvers via the {@link Allow} decorator.
766
+ *
767
+ * @docsCategory common
768
+ */
769
+ export var Permission;
770
+ (function (Permission) {
771
+ /** Authenticated means simply that the user is logged in */
772
+ Permission["Authenticated"] = "Authenticated";
773
+ /** Grants permission to create Administrator */
774
+ Permission["CreateAdministrator"] = "CreateAdministrator";
775
+ /** Grants permission to create Asset */
776
+ Permission["CreateAsset"] = "CreateAsset";
777
+ /** Grants permission to create Products, Facets, Assets, Collections */
778
+ Permission["CreateCatalog"] = "CreateCatalog";
779
+ /** Grants permission to create Channel */
780
+ Permission["CreateChannel"] = "CreateChannel";
781
+ /** Grants permission to create Collection */
782
+ Permission["CreateCollection"] = "CreateCollection";
783
+ /** Grants permission to create Country */
784
+ Permission["CreateCountry"] = "CreateCountry";
785
+ /** Grants permission to create Customer */
786
+ Permission["CreateCustomer"] = "CreateCustomer";
787
+ /** Grants permission to create CustomerGroup */
788
+ Permission["CreateCustomerGroup"] = "CreateCustomerGroup";
789
+ /** Grants permission to create Facet */
790
+ Permission["CreateFacet"] = "CreateFacet";
791
+ /** Grants permission to create Order */
792
+ Permission["CreateOrder"] = "CreateOrder";
793
+ /** Grants permission to create PaymentMethod */
794
+ Permission["CreatePaymentMethod"] = "CreatePaymentMethod";
795
+ /** Grants permission to create Product */
796
+ Permission["CreateProduct"] = "CreateProduct";
797
+ /** Grants permission to create Promotion */
798
+ Permission["CreatePromotion"] = "CreatePromotion";
799
+ /** Grants permission to create PaymentMethods, ShippingMethods, TaxCategories, TaxRates, Zones, Countries, System & GlobalSettings */
800
+ Permission["CreateSettings"] = "CreateSettings";
801
+ /** Grants permission to create ShippingMethod */
802
+ Permission["CreateShippingMethod"] = "CreateShippingMethod";
803
+ /** Grants permission to create System */
804
+ Permission["CreateSystem"] = "CreateSystem";
805
+ /** Grants permission to create Tag */
806
+ Permission["CreateTag"] = "CreateTag";
807
+ /** Grants permission to create TaxCategory */
808
+ Permission["CreateTaxCategory"] = "CreateTaxCategory";
809
+ /** Grants permission to create TaxRate */
810
+ Permission["CreateTaxRate"] = "CreateTaxRate";
811
+ /** Grants permission to create Zone */
812
+ Permission["CreateZone"] = "CreateZone";
813
+ /** Grants permission to delete Administrator */
814
+ Permission["DeleteAdministrator"] = "DeleteAdministrator";
815
+ /** Grants permission to delete Asset */
816
+ Permission["DeleteAsset"] = "DeleteAsset";
817
+ /** Grants permission to delete Products, Facets, Assets, Collections */
818
+ Permission["DeleteCatalog"] = "DeleteCatalog";
819
+ /** Grants permission to delete Channel */
820
+ Permission["DeleteChannel"] = "DeleteChannel";
821
+ /** Grants permission to delete Collection */
822
+ Permission["DeleteCollection"] = "DeleteCollection";
823
+ /** Grants permission to delete Country */
824
+ Permission["DeleteCountry"] = "DeleteCountry";
825
+ /** Grants permission to delete Customer */
826
+ Permission["DeleteCustomer"] = "DeleteCustomer";
827
+ /** Grants permission to delete CustomerGroup */
828
+ Permission["DeleteCustomerGroup"] = "DeleteCustomerGroup";
829
+ /** Grants permission to delete Facet */
830
+ Permission["DeleteFacet"] = "DeleteFacet";
831
+ /** Grants permission to delete Order */
832
+ Permission["DeleteOrder"] = "DeleteOrder";
833
+ /** Grants permission to delete PaymentMethod */
834
+ Permission["DeletePaymentMethod"] = "DeletePaymentMethod";
835
+ /** Grants permission to delete Product */
836
+ Permission["DeleteProduct"] = "DeleteProduct";
837
+ /** Grants permission to delete Promotion */
838
+ Permission["DeletePromotion"] = "DeletePromotion";
839
+ /** Grants permission to delete PaymentMethods, ShippingMethods, TaxCategories, TaxRates, Zones, Countries, System & GlobalSettings */
840
+ Permission["DeleteSettings"] = "DeleteSettings";
841
+ /** Grants permission to delete ShippingMethod */
842
+ Permission["DeleteShippingMethod"] = "DeleteShippingMethod";
843
+ /** Grants permission to delete System */
844
+ Permission["DeleteSystem"] = "DeleteSystem";
845
+ /** Grants permission to delete Tag */
846
+ Permission["DeleteTag"] = "DeleteTag";
847
+ /** Grants permission to delete TaxCategory */
848
+ Permission["DeleteTaxCategory"] = "DeleteTaxCategory";
849
+ /** Grants permission to delete TaxRate */
850
+ Permission["DeleteTaxRate"] = "DeleteTaxRate";
851
+ /** Grants permission to delete Zone */
852
+ Permission["DeleteZone"] = "DeleteZone";
853
+ /** Owner means the user owns this entity, e.g. a Customer's own Order */
854
+ Permission["Owner"] = "Owner";
855
+ Permission["Placeholder"] = "Placeholder";
856
+ /** Public means any unauthenticated user may perform the operation */
857
+ Permission["Public"] = "Public";
858
+ /** Grants permission to read Administrator */
859
+ Permission["ReadAdministrator"] = "ReadAdministrator";
860
+ /** Grants permission to read Asset */
861
+ Permission["ReadAsset"] = "ReadAsset";
862
+ /** Grants permission to read Products, Facets, Assets, Collections */
863
+ Permission["ReadCatalog"] = "ReadCatalog";
864
+ /** Grants permission to read Channel */
865
+ Permission["ReadChannel"] = "ReadChannel";
866
+ /** Grants permission to read Collection */
867
+ Permission["ReadCollection"] = "ReadCollection";
868
+ /** Grants permission to read Country */
869
+ Permission["ReadCountry"] = "ReadCountry";
870
+ /** Grants permission to read Customer */
871
+ Permission["ReadCustomer"] = "ReadCustomer";
872
+ /** Grants permission to read CustomerGroup */
873
+ Permission["ReadCustomerGroup"] = "ReadCustomerGroup";
874
+ /** Grants permission to read Facet */
875
+ Permission["ReadFacet"] = "ReadFacet";
876
+ /** Grants permission to read Order */
877
+ Permission["ReadOrder"] = "ReadOrder";
878
+ /** Grants permission to read PaymentMethod */
879
+ Permission["ReadPaymentMethod"] = "ReadPaymentMethod";
880
+ /** Grants permission to read Product */
881
+ Permission["ReadProduct"] = "ReadProduct";
882
+ /** Grants permission to read Promotion */
883
+ Permission["ReadPromotion"] = "ReadPromotion";
884
+ /** Grants permission to read PaymentMethods, ShippingMethods, TaxCategories, TaxRates, Zones, Countries, System & GlobalSettings */
885
+ Permission["ReadSettings"] = "ReadSettings";
886
+ /** Grants permission to read ShippingMethod */
887
+ Permission["ReadShippingMethod"] = "ReadShippingMethod";
888
+ /** Grants permission to read System */
889
+ Permission["ReadSystem"] = "ReadSystem";
890
+ /** Grants permission to read Tag */
891
+ Permission["ReadTag"] = "ReadTag";
892
+ /** Grants permission to read TaxCategory */
893
+ Permission["ReadTaxCategory"] = "ReadTaxCategory";
894
+ /** Grants permission to read TaxRate */
895
+ Permission["ReadTaxRate"] = "ReadTaxRate";
896
+ /** Grants permission to read Zone */
897
+ Permission["ReadZone"] = "ReadZone";
898
+ /** SuperAdmin has unrestricted access to all operations */
899
+ Permission["SuperAdmin"] = "SuperAdmin";
900
+ /** Grants permission to update Administrator */
901
+ Permission["UpdateAdministrator"] = "UpdateAdministrator";
902
+ /** Grants permission to update Asset */
903
+ Permission["UpdateAsset"] = "UpdateAsset";
904
+ /** Grants permission to update Products, Facets, Assets, Collections */
905
+ Permission["UpdateCatalog"] = "UpdateCatalog";
906
+ /** Grants permission to update Channel */
907
+ Permission["UpdateChannel"] = "UpdateChannel";
908
+ /** Grants permission to update Collection */
909
+ Permission["UpdateCollection"] = "UpdateCollection";
910
+ /** Grants permission to update Country */
911
+ Permission["UpdateCountry"] = "UpdateCountry";
912
+ /** Grants permission to update Customer */
913
+ Permission["UpdateCustomer"] = "UpdateCustomer";
914
+ /** Grants permission to update CustomerGroup */
915
+ Permission["UpdateCustomerGroup"] = "UpdateCustomerGroup";
916
+ /** Grants permission to update Facet */
917
+ Permission["UpdateFacet"] = "UpdateFacet";
918
+ /** Grants permission to update GlobalSettings */
919
+ Permission["UpdateGlobalSettings"] = "UpdateGlobalSettings";
920
+ /** Grants permission to update Order */
921
+ Permission["UpdateOrder"] = "UpdateOrder";
922
+ /** Grants permission to update PaymentMethod */
923
+ Permission["UpdatePaymentMethod"] = "UpdatePaymentMethod";
924
+ /** Grants permission to update Product */
925
+ Permission["UpdateProduct"] = "UpdateProduct";
926
+ /** Grants permission to update Promotion */
927
+ Permission["UpdatePromotion"] = "UpdatePromotion";
928
+ /** Grants permission to update PaymentMethods, ShippingMethods, TaxCategories, TaxRates, Zones, Countries, System & GlobalSettings */
929
+ Permission["UpdateSettings"] = "UpdateSettings";
930
+ /** Grants permission to update ShippingMethod */
931
+ Permission["UpdateShippingMethod"] = "UpdateShippingMethod";
932
+ /** Grants permission to update System */
933
+ Permission["UpdateSystem"] = "UpdateSystem";
934
+ /** Grants permission to update Tag */
935
+ Permission["UpdateTag"] = "UpdateTag";
936
+ /** Grants permission to update TaxCategory */
937
+ Permission["UpdateTaxCategory"] = "UpdateTaxCategory";
938
+ /** Grants permission to update TaxRate */
939
+ Permission["UpdateTaxRate"] = "UpdateTaxRate";
940
+ /** Grants permission to update Zone */
941
+ Permission["UpdateZone"] = "UpdateZone";
942
+ })(Permission || (Permission = {}));
943
+ export var SortOrder;
944
+ (function (SortOrder) {
945
+ SortOrder["ASC"] = "ASC";
946
+ SortOrder["DESC"] = "DESC";
947
+ })(SortOrder || (SortOrder = {}));
948
+ export var StockMovementType;
949
+ (function (StockMovementType) {
950
+ StockMovementType["ADJUSTMENT"] = "ADJUSTMENT";
951
+ StockMovementType["ALLOCATION"] = "ALLOCATION";
952
+ StockMovementType["CANCELLATION"] = "CANCELLATION";
953
+ StockMovementType["RELEASE"] = "RELEASE";
954
+ StockMovementType["RETURN"] = "RETURN";
955
+ StockMovementType["SALE"] = "SALE";
956
+ })(StockMovementType || (StockMovementType = {}));
957
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVkLXR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9jb3JlL3NyYy9jb21tb24vZ2VuZXJhdGVkLXR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBFQSxNQUFNLENBQU4sSUFBWSxjQUlYO0FBSkQsV0FBWSxjQUFjO0lBQ3hCLDZFQUEyRCxDQUFBO0lBQzNELGlDQUFlLENBQUE7SUFDZix5Q0FBdUIsQ0FBQTtBQUN6QixDQUFDLEVBSlcsY0FBYyxLQUFkLGNBQWMsUUFJekI7QUFrSkQsTUFBTSxDQUFOLElBQVksU0FJWDtBQUpELFdBQVksU0FBUztJQUNuQiw4QkFBaUIsQ0FBQTtJQUNqQiw0QkFBZSxDQUFBO0lBQ2YsNEJBQWUsQ0FBQTtBQUNqQixDQUFDLEVBSlcsU0FBUyxLQUFULFNBQVMsUUFJcEI7QUFrbEJEOzs7OztHQUtHO0FBQ0gsTUFBTSxDQUFOLElBQVksWUEyVFg7QUEzVEQsV0FBWSxZQUFZO0lBQ3RCLGtDQUFrQztJQUNsQywyQkFBVyxDQUFBO0lBQ1gscUJBQXFCO0lBQ3JCLDJCQUFXLENBQUE7SUFDWCxtQkFBbUI7SUFDbkIsMkJBQVcsQ0FBQTtJQUNYLG9CQUFvQjtJQUNwQiwyQkFBVyxDQUFBO0lBQ1gsb0NBQW9DO0lBQ3BDLDJCQUFXLENBQUE7SUFDWCxxQkFBcUI7SUFDckIsMkJBQVcsQ0FBQTtJQUNYLHFCQUFxQjtJQUNyQiwyQkFBVyxDQUFBO0lBQ1gsd0JBQXdCO0lBQ3hCLDJCQUFXLENBQUE7SUFDWCxvQkFBb0I7SUFDcEIsMkJBQVcsQ0FBQTtJQUNYLHdCQUF3QjtJQUN4QiwyQkFBVyxDQUFBO0lBQ1gsOENBQThDO0lBQzlDLDJCQUFXLENBQUE7SUFDWCxzQkFBc0I7SUFDdEIsMkJBQVcsQ0FBQTtJQUNYLHVCQUF1QjtJQUN2QiwyQkFBVyxDQUFBO0lBQ1gsb0JBQW9CO0lBQ3BCLDJCQUFXLENBQUE7SUFDWCxxQkFBcUI7SUFDckIsMkJBQVcsQ0FBQTtJQUNYLHNCQUFzQjtJQUN0QiwyQkFBVyxDQUFBO0lBQ1gsdUJBQXVCO0lBQ3ZCLDJCQUFXLENBQUE7SUFDWCxvQkFBb0I7SUFDcEIsMkJBQVcsQ0FBQTtJQUNYLGdCQUFnQjtJQUNoQiwyQkFBVyxDQUFBO0lBQ1gscUJBQXFCO0lBQ3JCLDJCQUFXLENBQUE7SUFDWCxzQkFBc0I7SUFDdEIsMkJBQVcsQ0FBQTtJQUNYLHlCQUF5QjtJQUN6QiwyQkFBVyxDQUFBO0lBQ1gsb0JBQW9CO0lBQ3BCLDJCQUFXLENBQUE7SUFDWCx1QkFBdUI7SUFDdkIsMkJBQVcsQ0FBQTtJQUNYLG9CQUFvQjtJQUNwQiwyQkFBVyxDQUFBO0lBQ1gsc0JBQXNCO0lBQ3RCLDJCQUFXLENBQUE7SUFDWCxzQkFBc0I7SUFDdEIsMkJBQVcsQ0FBQTtJQUNYLGtCQUFrQjtJQUNsQiwyQkFBVyxDQUFBO0lBQ1gsbUJBQW1CO0lBQ25CLDJCQUFXLENBQUE7SUFDWCw4QkFBOEI7SUFDOUIsMkJBQVcsQ0FBQTtJQUNYLHFCQUFxQjtJQUNyQiwyQkFBVyxDQUFBO0lBQ1gsd0JBQXdCO0lBQ3hCLDJCQUFXLENBQUE7SUFDWCw2QkFBNkI7SUFDN0IsMkJBQVcsQ0FBQTtJQUNYLGlCQUFpQjtJQUNqQiwyQkFBVyxDQUFBO0lBQ1gsd0JBQXdCO0lBQ3hCLDJCQUFXLENBQUE7SUFDWCxtQkFBbUI7SUFDbkIsMkJBQVcsQ0FBQTtJQUNYLHVCQUF1QjtJQUN2QiwyQkFBVyxDQUFBO0lBQ1gsbUJBQW1CO0lBQ25CLDJCQUFXLENBQUE7SUFDWCxxQkFBcUI7SUFDckIsMkJBQVcsQ0FBQTtJQUNYLHFCQUFxQjtJQUNyQiwyQkFBVyxDQUFBO0lBQ1gscUJBQXFCO0lBQ3JCLDJCQUFXLENBQUE7SUFDWCxxQkFBcUI7SUFDckIsMkJBQVcsQ0FBQTtJQUNYLHFCQUFxQjtJQUNyQiwyQkFBVyxDQUFBO0lBQ1gsV0FBVztJQUNYLDJCQUFXLENBQUE7SUFDWCxrQkFBa0I7SUFDbEIsMkJBQVcsQ0FBQTtJQUNYLDZCQUE2QjtJQUM3QiwyQkFBVyxDQUFBO0lBQ1gscUJBQXFCO0lBQ3JCLDJCQUFXLENBQUE7SUFDWCxvQkFBb0I7SUFDcEIsMkJBQVcsQ0FBQTtJQUNYLG9CQUFvQjtJQUNwQiwyQkFBVyxDQUFBO0lBQ1gsc0JBQXNCO0lBQ3RCLDJCQUFXLENBQUE7SUFDWCxxQkFBcUI7SUFDckIsMkJBQVcsQ0FBQTtJQUNYLG9CQUFvQjtJQUNwQiwyQkFBVyxDQUFBO0lBQ1gseUJBQXlCO0lBQ3pCLDJCQUFXLENBQUE7SUFDWCxzQkFBc0I7SUFDdEIsMkJBQVcsQ0FBQTtJQUNYLHVCQUF1QjtJQUN2QiwyQkFBVyxDQUFBO0lBQ1gsdUJBQXVCO0lBQ3ZCLDJCQUFXLENBQUE7SUFDWCxvQkFBb0I7SUFDcEIsMkJBQVcsQ0FBQTtJQUNYLHFCQUFxQjtJQUNyQiwyQkFBVyxDQUFBO0lBQ1gsdUJBQXVCO0lBQ3ZCLDJCQUFXLENBQUE7SUFDWCx3QkFBd0I7SUFDeEIsMkJBQVcsQ0FBQTtJQUNYLHlCQUF5QjtJQUN6QiwyQkFBVyxDQUFBO0lBQ1gsbUJBQW1CO0lBQ25CLDJCQUFXLENBQUE7SUFDWCxrQkFBa0I7SUFDbEIsMkJBQVcsQ0FBQTtJQUNYLG1CQUFtQjtJQUNuQiwyQkFBVyxDQUFBO0lBQ1gsc0JBQXNCO0lBQ3RCLDJCQUFXLENBQUE7SUFDWCxzQkFBc0I7SUFDdEIsMkJBQVcsQ0FBQTtJQUNYLHNCQUFzQjtJQUN0QiwyQkFBVyxDQUFBO0lBQ1gsbUJBQW1CO0lBQ25CLDJCQUFXLENBQUE7SUFDWCxzQkFBc0I7SUFDdEIsMkJBQVcsQ0FBQTtJQUNYLHNCQUFzQjtJQUN0QiwyQkFBVyxDQUFBO0lBQ1gscUJBQXFCO0lBQ3JCLDJCQUFXLENBQUE7SUFDWCxtQkFBbUI7SUFDbkIsMkJBQVcsQ0FBQTtJQUNYLHVCQUF1QjtJQUN2QiwyQkFBVyxDQUFBO0lBQ1gsdUJBQXVCO0lBQ3ZCLDJCQUFXLENBQUE7SUFDWCxvQkFBb0I7SUFDcEIsMkJBQVcsQ0FBQTtJQUNYLDRCQUE0QjtJQUM1QiwyQkFBVyxDQUFBO0lBQ1gsd0JBQXdCO0lBQ3hCLDJCQUFXLENBQUE7SUFDWCxjQUFjO0lBQ2QsMkJBQVcsQ0FBQTtJQUNYLHFCQUFxQjtJQUNyQiwyQkFBVyxDQUFBO0lBQ1gsdUJBQXVCO0lBQ3ZCLDJCQUFXLENBQUE7SUFDWCxzQkFBc0I7SUFDdEIsMkJBQVcsQ0FBQTtJQUNYLG1CQUFtQjtJQUNuQiwyQkFBVyxDQUFBO0lBQ1gsbUJBQW1CO0lBQ25CLDJCQUFXLENBQUE7SUFDWCxzQkFBc0I7SUFDdEIsMkJBQVcsQ0FBQTtJQUNYLG1CQUFtQjtJQUNuQiwyQkFBVyxDQUFBO0lBQ1gsc0JBQXNCO0lBQ3RCLDJCQUFXLENBQUE7SUFDWCx1QkFBdUI7SUFDdkIsMkJBQVcsQ0FBQTtJQUNYLG1CQUFtQjtJQUNuQiwyQkFBVyxDQUFBO0lBQ1gsdUJBQXVCO0lBQ3ZCLDJCQUFXLENBQUE7SUFDWCxzQkFBc0I7SUFDdEIsMkJBQVcsQ0FBQTtJQUNYLDBCQUEwQjtJQUMxQiwyQkFBVyxDQUFBO0lBQ1gsc0JBQXNCO0lBQ3RCLDJCQUFXLENBQUE7SUFDWCx3QkFBd0I7SUFDeEIsMkJBQVcsQ0FBQTtJQUNYLHNCQUFzQjtJQUN0QiwyQkFBVyxDQUFBO0lBQ1gsbUJBQW1CO0lBQ25CLDJCQUFXLENBQUE7SUFDWCx3QkFBd0I7SUFDeEIsMkJBQVcsQ0FBQTtJQUNYLHlCQUF5QjtJQUN6QiwyQkFBVyxDQUFBO0lBQ1gsc0JBQXNCO0lBQ3RCLDJCQUFXLENBQUE7SUFDWCxxQkFBcUI7SUFDckIsMkJBQVcsQ0FBQTtJQUNYLHlCQUF5QjtJQUN6QiwyQkFBVyxDQUFBO0lBQ1gsc0JBQXNCO0lBQ3RCLDJCQUFXLENBQUE7SUFDWCxxQkFBcUI7SUFDckIsMkJBQVcsQ0FBQTtJQUNYLHlCQUF5QjtJQUN6QiwyQkFBVyxDQUFBO0lBQ1gsaUJBQWlCO0lBQ2pCLDJCQUFXLENBQUE7SUFDWCx3QkFBd0I7SUFDeEIsMkJBQVcsQ0FBQTtJQUNYLG1CQUFtQjtJQUNuQiwyQkFBVyxDQUFBO0lBQ1gsNkJBQTZCO0lBQzdCLDJCQUFXLENBQUE7SUFDWCxzQkFBc0I7SUFDdEIsMkJBQVcsQ0FBQTtJQUNYLHNCQUFzQjtJQUN0QiwyQkFBVyxDQUFBO0lBQ1gsbUJBQW1CO0lBQ25CLDJCQUFXLENBQUE7SUFDWCx5QkFBeUI7SUFDekIsMkJBQVcsQ0FBQTtJQUNYLG1CQUFtQjtJQUNuQiwyQkFBVyxDQUFBO0lBQ1gsbUJBQW1CO0lBQ25CLDJCQUFXLENBQUE7SUFDWCxvQkFBb0I7SUFDcEIsMkJBQVcsQ0FBQTtJQUNYLG9CQUFvQjtJQUNwQiwyQkFBVyxDQUFBO0lBQ1gsb0JBQW9CO0lBQ3BCLDJCQUFXLENBQUE7SUFDWCxrQkFBa0I7SUFDbEIsMkJBQVcsQ0FBQTtJQUNYLDZCQUE2QjtJQUM3QiwyQkFBVyxDQUFBO0lBQ1gsdUJBQXVCO0lBQ3ZCLDJCQUFXLENBQUE7SUFDWCxxQkFBcUI7SUFDckIsMkJBQVcsQ0FBQTtJQUNYLDJCQUEyQjtJQUMzQiwyQkFBVyxDQUFBO0lBQ1gsdUJBQXVCO0lBQ3ZCLDJCQUFXLENBQUE7SUFDWCx5QkFBeUI7SUFDekIsMkJBQVcsQ0FBQTtJQUNYLDJCQUEyQjtJQUMzQiwyQkFBVyxDQUFBO0lBQ1gsc0JBQXNCO0lBQ3RCLDJCQUFXLENBQUE7SUFDWCx3QkFBd0I7SUFDeEIsMkJBQVcsQ0FBQTtJQUNYLDJCQUEyQjtJQUMzQiwyQkFBVyxDQUFBO0lBQ1gsa0NBQWtDO0lBQ2xDLDJCQUFXLENBQUE7SUFDWCx1QkFBdUI7SUFDdkIsMkJBQVcsQ0FBQTtJQUNYLG1CQUFtQjtJQUNuQiwyQkFBVyxDQUFBO0lBQ1gsc0JBQXNCO0lBQ3RCLDJCQUFXLENBQUE7SUFDWCxnQkFBZ0I7SUFDaEIsMkJBQVcsQ0FBQTtJQUNYLHlCQUF5QjtJQUN6QiwyQkFBVyxDQUFBO0lBQ1gseUJBQXlCO0lBQ3pCLDJCQUFXLENBQUE7SUFDWCxxQkFBcUI7SUFDckIsMkJBQVcsQ0FBQTtJQUNYLHFCQUFxQjtJQUNyQiwyQkFBVyxDQUFBO0lBQ1gsbUJBQW1CO0lBQ25CLDJCQUFXLENBQUE7SUFDWCxpQ0FBaUM7SUFDakMsMkJBQVcsQ0FBQTtJQUNYLHdCQUF3QjtJQUN4QiwyQkFBVyxDQUFBO0lBQ1gseUJBQXlCO0lBQ3pCLDJCQUFXLENBQUE7SUFDWCx3QkFBd0I7SUFDeEIsMkJBQVcsQ0FBQTtJQUNYLHVCQUF1QjtJQUN2QiwyQkFBVyxDQUFBO0lBQ1gsMkJBQTJCO0lBQzNCLDJCQUFXLENBQUE7SUFDWCxxQkFBcUI7SUFDckIsMkJBQVcsQ0FBQTtJQUNYLHFCQUFxQjtJQUNyQiwyQkFBVyxDQUFBO0lBQ1gsa0NBQWtDO0lBQ2xDLDJCQUFXLENBQUE7SUFDWCxzQkFBc0I7SUFDdEIsMkJBQVcsQ0FBQTtJQUNYLG1CQUFtQjtJQUNuQiwyQkFBVyxDQUFBO0lBQ1gsa0JBQWtCO0lBQ2xCLDJCQUFXLENBQUE7SUFDWCxxQkFBcUI7SUFDckIsMkJBQVcsQ0FBQTtJQUNYLDRCQUE0QjtJQUM1QiwyQkFBVyxDQUFBO0lBQ1gsc0JBQXNCO0lBQ3RCLDJCQUFXLENBQUE7SUFDWCxrQ0FBa0M7SUFDbEMsMkJBQVcsQ0FBQTtJQUNYLGtCQUFrQjtJQUNsQiwyQkFBVyxDQUFBO0lBQ1gseUJBQXlCO0lBQ3pCLDJCQUFXLENBQUE7SUFDWCxxQkFBcUI7SUFDckIsMkJBQVcsQ0FBQTtJQUNYLHdCQUF3QjtJQUN4QiwyQkFBVyxDQUFBO0FBQ2IsQ0FBQyxFQTNUVyxZQUFZLEtBQVosWUFBWSxRQTJUdkI7QUFpUEQsTUFBTSxDQUFOLElBQVksY0FLWDtBQUxELFdBQVksY0FBYztJQUN4QiwwQ0FBMEM7SUFDMUMscUNBQW1CLENBQUE7SUFDbkIsMkRBQTJEO0lBQzNELDZDQUEyQixDQUFBO0FBQzdCLENBQUMsRUFMVyxjQUFjLEtBQWQsY0FBYyxRQUt6QjtBQXlCRCxNQUFNLENBQU4sSUFBWSxTQXNDWDtBQXRDRCxXQUFZLFNBQVM7SUFDbkIsOERBQWlELENBQUE7SUFDakQsb0VBQXVELENBQUE7SUFDdkQsOEVBQWlFLENBQUE7SUFDakUsb0VBQXVELENBQUE7SUFDdkQsb0VBQXVELENBQUE7SUFDdkQsZ0VBQW1ELENBQUE7SUFDbkQsa0VBQXFELENBQUE7SUFDckQsMEVBQTZELENBQUE7SUFDN0Qsa0ZBQXFFLENBQUE7SUFDckUsc0ZBQXlFLENBQUE7SUFDekUsa0VBQXFELENBQUE7SUFDckQsa0ZBQXFFLENBQUE7SUFDckUsb0VBQXVELENBQUE7SUFDdkQsb0ZBQXVFLENBQUE7SUFDdkUsNEVBQStELENBQUE7SUFDL0QsMEVBQTZELENBQUE7SUFDN0Qsc0VBQXlELENBQUE7SUFDekQsZ0RBQW1DLENBQUE7SUFDbkMsa0VBQXFELENBQUE7SUFDckQsMERBQTZDLENBQUE7SUFDN0Msc0VBQXlELENBQUE7SUFDekQsZ0VBQW1ELENBQUE7SUFDbkQsZ0VBQW1ELENBQUE7SUFDbkQsc0VBQXlELENBQUE7SUFDekQsb0RBQXVDLENBQUE7SUFDdkMsOEVBQWlFLENBQUE7SUFDakUsMEVBQTZELENBQUE7SUFDN0QsMEVBQTZELENBQUE7SUFDN0QsMEVBQTZELENBQUE7SUFDN0QsOEVBQWlFLENBQUE7SUFDakUsd0VBQTJELENBQUE7SUFDM0Qsa0VBQXFELENBQUE7SUFDckQsa0VBQXFELENBQUE7SUFDckQsZ0ZBQW1FLENBQUE7SUFDbkUsNEVBQStELENBQUE7SUFDL0QsMERBQTZDLENBQUE7SUFDN0MsNENBQStCLENBQUE7QUFDakMsQ0FBQyxFQXRDVyxTQUFTLEtBQVQsU0FBUyxRQXNDcEI7QUEwS0QsTUFBTSxDQUFOLElBQVksVUFJWDtBQUpELFdBQVksVUFBVTtJQUNwQiw2QkFBZSxDQUFBO0lBQ2YsaUNBQW1CLENBQUE7SUFDbkIsMkJBQWEsQ0FBQTtBQUNmLENBQUMsRUFKVyxVQUFVLEtBQVYsVUFBVSxRQUlyQjtBQTBERCxNQUFNLENBQU4sSUFBWSxnQkF5Qlg7QUF6QkQsV0FBWSxnQkFBZ0I7SUFDMUIsdUVBQW1ELENBQUE7SUFDbkQseUVBQXFELENBQUE7SUFDckQseUVBQXFELENBQUE7SUFDckQseUVBQXFELENBQUE7SUFDckQsdUVBQW1ELENBQUE7SUFDbkQsdUZBQW1FLENBQUE7SUFDbkUscUZBQWlFLENBQUE7SUFDakUsbURBQStCLENBQUE7SUFDL0IsMkZBQXVFLENBQUE7SUFDdkUseUZBQXFFLENBQUE7SUFDckUsMkVBQXVELENBQUE7SUFDdkQsK0RBQTJDLENBQUE7SUFDM0MsK0VBQTJELENBQUE7SUFDM0QsMkRBQXVDLENBQUE7SUFDdkMsNkRBQXlDLENBQUE7SUFDekMsaUVBQTZDLENBQUE7SUFDN0MsaUVBQTZDLENBQUE7SUFDN0MsMkRBQXVDLENBQUE7SUFDdkMsaUZBQTZELENBQUE7SUFDN0QscURBQWlDLENBQUE7SUFDakMsNkNBQXlCLENBQUE7SUFDekIseUVBQXFELENBQUE7SUFDckQsdUVBQW1ELENBQUE7SUFDbkQscUVBQWlELENBQUE7QUFDbkQsQ0FBQyxFQXpCVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBeUIzQjtBQTZKRDs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBTixJQUFZLFFBT1g7QUFQRCxXQUFZLFFBQVE7SUFDbEIsbUNBQXVCLENBQUE7SUFDdkIsbUNBQXVCLENBQUE7SUFDdkIsNkJBQWlCLENBQUE7SUFDakIsK0JBQW1CLENBQUE7SUFDbkIsaUNBQXFCLENBQUE7SUFDckIsK0JBQW1CLENBQUE7QUFDckIsQ0FBQyxFQVBXLFFBQVEsS0FBUixRQUFRLFFBT25CO0FBRUQ7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLENBQU4sSUFBWSxZQTJUWDtBQTNURCxXQUFZLFlBQVk7SUFDdEIsZ0JBQWdCO0lBQ2hCLHlCQUFTLENBQUE7SUFDVCxXQUFXO0lBQ1gseUJBQVMsQ0FBQTtJQUNULGNBQWM7SUFDZCx5QkFBUyxDQUFBO0lBQ1QsYUFBYTtJQUNiLHlCQUFTLENBQUE7SUFDVCxlQUFlO0lBQ2YseUJBQVMsQ0FBQTtJQUNULGtCQUFrQjtJQUNsQix5QkFBUyxDQUFBO0lBQ1QsaUJBQWlCO0lBQ2pCLHlCQUFTLENBQUE7SUFDVCxnQkFBZ0I7SUFDaEIseUJBQVMsQ0FBQTtJQUNULGNBQWM7SUFDZCx5QkFBUyxDQUFBO0lBQ1QsYUFBYTtJQUNiLHlCQUFTLENBQUE7SUFDVCxjQUFjO0lBQ2QseUJBQVMsQ0FBQTtJQUNULGFBQWE7SUFDYix5QkFBUyxDQUFBO0lBQ1QsY0FBYztJQUNkLHlCQUFTLENBQUE7SUFDVCxjQUFjO0lBQ2QseUJBQVMsQ0FBQTtJQUNULGNBQWM7SUFDZCx5QkFBUyxDQUFBO0lBQ1QsZUFBZTtJQUNmLHlCQUFTLENBQUE7SUFDVCxZQUFZO0lBQ1oseUJBQVMsQ0FBQTtJQUNULG9CQUFvQjtJQUNwQix5QkFBUyxDQUFBO0lBQ1QsWUFBWTtJQUNaLHlCQUFTLENBQUE7SUFDVCxhQUFhO0lBQ2IseUJBQVMsQ0FBQTtJQUNULGFBQWE7SUFDYix5QkFBUyxDQUFBO0lBQ1Qsc0JBQXNCO0lBQ3RCLCtCQUFlLENBQUE7SUFDZix3QkFBd0I7SUFDeEIsK0JBQWUsQ0FBQTtJQUNmLGVBQWU7SUFDZix5QkFBUyxDQUFBO0lBQ1QsVUFBVTtJQUNWLHlCQUFTLENBQUE7SUFDVCxZQUFZO0lBQ1oseUJBQVMsQ0FBQTtJQUNULGNBQWM7SUFDZCx5QkFBUyxDQUFBO0lBQ1QseUJBQXlCO0lBQ3pCLCtCQUFlLENBQUE7SUFDZix1QkFBdUI7SUFDdkIsK0JBQWUsQ0FBQTtJQUNmLHNCQUFzQjtJQUN0QiwrQkFBZSxDQUFBO0lBQ2YsdUJBQXVCO0lBQ3ZCLCtCQUFlLENBQUE7SUFDZixnQkFBZ0I7SUFDaEIseUJBQVMsQ0FBQTtJQUNULGNBQWM7SUFDZCx5QkFBUyxDQUFBO0lBQ1QsdUJBQXVCO0lBQ3ZCLCtCQUFlLENBQUE7SUFDZixzQkFBc0I7SUFDdEIsK0JBQWUsQ0FBQTtJQUNmLGVBQWU7SUFDZix5QkFBUyxDQUFBO0lBQ1QsYUFBYTtJQUNiLHlCQUFTLENBQUE7SUFDVCxjQUFjO0lBQ2QseUJBQVMsQ0FBQTtJQUNULFdBQVc7SUFDWCwrQkFBZSxDQUFBO0lBQ2YsWUFBWTtJQUNaLHlCQUFTLENBQUE7SUFDVCxjQUFjO0lBQ2QseUJBQVMsQ0FBQTtJQUNULGNBQWM7SUFDZCx5QkFBUyxDQUFBO0lBQ1QsYUFBYTtJQUNiLHlCQUFTLENBQUE7SUFDVCxzQkFBc0I7SUFDdEIsK0JBQWUsQ0FBQTtJQUNmLG1CQUFtQjtJQUNuQiwrQkFBZSxDQUFBO0lBQ2Ysc0JBQXNCO0lBQ3RCLHlCQUFTLENBQUE7SUFDVCxZQUFZO0lBQ1oseUJBQVMsQ0FBQTtJQUNULHNCQUFzQjtJQUN0Qix5QkFBUyxDQUFBO0lBQ1QsZUFBZTtJQUNmLHlCQUFTLENBQUE7SUFDVCxlQUFlO0lBQ2YseUJBQVMsQ0FBQTtJQUNULFdBQVc7SUFDWCx5QkFBUyxDQUFBO0lBQ1QsWUFBWTtJQUNaLHlCQUFTLENBQUE7SUFDVCxhQUFhO0lBQ2IseUJBQVMsQ0FBQTtJQUNULFlBQVk7SUFDWix5QkFBUyxDQUFBO0lBQ1QsZUFBZTtJQUNmLHlCQUFTLENBQUE7SUFDVCxxQkFBcUI7SUFDckIseUJBQVMsQ0FBQTtJQUNULGdCQUFnQjtJQUNoQix5QkFBUyxDQUFBO0lBQ1QsZUFBZTtJQUNmLHlCQUFTLENBQUE7SUFDVCxrQkFBa0I7SUFDbEIseUJBQVMsQ0FBQTtJQUNULGlCQUFpQjtJQUNqQix5QkFBUyxDQUFBO0lBQ1QsV0FBVztJQUNYLHlCQUFTLENBQUE7SUFDVCxpQkFBaUI7SUFDakIseUJBQVMsQ0FBQTtJQUNULGdCQUFnQjtJQUNoQix5QkFBUyxDQUFBO0lBQ1QsY0FBYztJQUNkLHlCQUFTLENBQUE7SUFDVCxlQUFlO0lBQ2YseUJBQVMsQ0FBQTtJQUNULGVBQWU7SUFDZix5QkFBUyxDQUFBO0lBQ1QsZUFBZTtJQUNmLHlCQUFTLENBQUE7SUFDVCxhQUFhO0lBQ2IseUJBQVMsQ0FBQTtJQUNULGFBQWE7SUFDYix5QkFBUyxDQUFBO0lBQ1Qsa0JBQWtCO0lBQ2xCLHlCQUFTLENBQUE7SUFDVCxZQUFZO0lBQ1oseUJBQVMsQ0FBQTtJQUNULGNBQWM7SUFDZCx5QkFBUyxDQUFBO0lBQ1QsYUFBYTtJQUNiLHlCQUFTLENBQUE7SUFDVCxlQUFlO0lBQ2YseUJBQVMsQ0FBQTtJQUNULGNBQWM7SUFDZCx5QkFBUyxDQUFBO0lBQ1QsY0FBYztJQUNkLHlCQUFTLENBQUE7SUFDVCxhQUFhO0lBQ2IseUJBQVMsQ0FBQTtJQUNULFlBQVk7SUFDWix5QkFBUyxDQUFBO0lBQ1Qsb0JBQW9CO0lBQ3BCLHlCQUFTLENBQUE7SUFDVCxZQUFZO0lBQ1oseUJBQVMsQ0FBQTtJQUNULGNBQWM7SUFDZCx5QkFBUyxDQUFBO0lBQ1QsVUFBVTtJQUNWLHlCQUFTLENBQUE7SUFDVCxpQkFBaUI7SUFDakIseUJBQVMsQ0FBQTtJQUNULG1CQUFtQjtJQUNuQix5QkFBUyxDQUFBO0lBQ1QsY0FBYztJQUNkLHlCQUFTLENBQUE7SUFDVCxlQUFlO0lBQ2YseUJBQVMsQ0FBQTtJQUNULFlBQVk7SUFDWix5QkFBUyxDQUFBO0lBQ1QsaUJBQWlCO0lBQ2pCLHlCQUFTLENBQUE7SUFDVCxnQkFBZ0I7SUFDaEIseUJBQVMsQ0FBQTtJQUNULGdCQUFnQjtJQUNoQix5QkFBUyxDQUFBO0lBQ1QsY0FBYztJQUNkLHlCQUFTLENBQUE7SUFDVCxZQUFZO0lBQ1oseUJBQVMsQ0FBQTtJQUNULGNBQWM7SUFDZCx5QkFBUyxDQUFBO0lBQ1QsY0FBYztJQUNkLHlCQUFTLENBQUE7SUFDVCx1QkFBdUI7SUFDdkIseUJBQVMsQ0FBQTtJQUNULG9CQUFvQjtJQUNwQix5QkFBUyxDQUFBO0lBQ1QsYUFBYTtJQUNiLHlCQUFTLENBQUE7SUFDVCxZQUFZO0lBQ1oseUJBQVMsQ0FBQTtJQUNULGNBQWM7SUFDZCwrQkFBZSxDQUFBO0lBQ2Ysd0JBQXdCO0lBQ3hCLHlCQUFTLENBQUE7SUFDVCxhQUFhO0lBQ2IseUJBQVMsQ0FBQTtJQUNULFlBQVk7SUFDWix5QkFBUyxDQUFBO0lBQ1QsV0FBVztJQUNYLHlCQUFTLENBQUE7SUFDVCxjQUFjO0lBQ2QseUJBQVMsQ0FBQTtJQUNULGNBQWM7SUFDZCx5QkFBUyxDQUFBO0lBQ1QsYUFBYTtJQUNiLHlCQUFTLENBQUE7SUFDVCxhQUFhO0lBQ2IseUJBQVMsQ0FBQTtJQUNULGlCQUFpQjtJQUNqQix5QkFBUyxDQUFBO0lBQ1QsMkJBQTJCO0lBQzNCLCtCQUFlLENBQUE7SUFDZiwwQkFBMEI7SUFDMUIsK0JBQWUsQ0FBQTtJQUNmLGNBQWM7SUFDZCx5QkFBUyxDQUFBO0lBQ1QsY0FBYztJQUNkLHlCQUFTLENBQUE7SUFDVCxZQUFZO0lBQ1oseUJBQVMsQ0FBQTtJQUNULGVBQWU7SUFDZix5QkFBUyxDQUFBO0lBQ1QsZ0JBQWdCO0lBQ2hCLCtCQUFlLENBQUE7SUFDZixjQUFjO0lBQ2QseUJBQVMsQ0FBQTtJQUNULGtCQUFrQjtJQUNsQix5QkFBUyxDQUFBO0lBQ1QsZUFBZTtJQUNmLHlCQUFTLENBQUE7SUFDVCxhQUFhO0lBQ2IseUJBQVMsQ0FBQTtJQUNULG9CQUFvQjtJQUNwQix5QkFBUyxDQUFBO0lBQ1QsWUFBWTtJQUNaLHlCQUFTLENBQUE7SUFDVCxjQUFjO0lBQ2QseUJBQVMsQ0FBQTtJQUNULGFBQWE7SUFDYix5QkFBUyxDQUFBO0lBQ1QsZ0JBQWdCO0lBQ2hCLHlCQUFTLENBQUE7SUFDVCxhQUFhO0lBQ2IseUJBQVMsQ0FBQTtJQUNULFlBQVk7SUFDWix5QkFBUyxDQUFBO0lBQ1QsYUFBYTtJQUNiLHlCQUFTLENBQUE7SUFDVCxlQUFlO0lBQ2YseUJBQVMsQ0FBQTtJQUNULGNBQWM7SUFDZCx5QkFBUyxDQUFBO0lBQ1QscUJBQXFCO0lBQ3JCLHlCQUFTLENBQUE7SUFDVCxnQkFBZ0I7SUFDaEIseUJBQVMsQ0FBQTtJQUNULGNBQWM7SUFDZCx5QkFBUyxDQUFBO0lBQ1QsY0FBYztJQUNkLHlCQUFTLENBQUE7SUFDVCxvQkFBb0I7SUFDcEIsK0JBQWUsQ0FBQTtJQUNmLFlBQVk7SUFDWix5QkFBUyxDQUFBO0lBQ1QsYUFBYTtJQUNiLHlCQUFTLENBQUE7SUFDVCxZQUFZO0lBQ1oseUJBQVMsQ0FBQTtJQUNULFdBQVc7SUFDWCx5QkFBUyxDQUFBO0lBQ1QsZUFBZTtJQUNmLHlCQUFTLENBQUE7SUFDVCxjQUFjO0lBQ2QseUJBQVMsQ0FBQTtJQUNULGFBQWE7SUFDYix5QkFBUyxDQUFBO0lBQ1QsY0FBYztJQUNkLHlCQUFTLENBQUE7SUFDVCxZQUFZO0lBQ1oseUJBQVMsQ0FBQTtJQUNULGFBQWE7SUFDYix5QkFBUyxDQUFBO0lBQ1QsZ0JBQWdCO0lBQ2hCLHlCQUFTLENBQUE7SUFDVCxXQUFXO0lBQ1gseUJBQVMsQ0FBQTtJQUNULFlBQVk7SUFDWix5QkFBUyxDQUFBO0lBQ1QsaUJBQWlCO0lBQ2pCLHlCQUFTLENBQUE7SUFDVCxjQUFjO0lBQ2QseUJBQVMsQ0FBQTtJQUNULFlBQVk7SUFDWix5QkFBUyxDQUFBO0lBQ1QsWUFBWTtJQUNaLHlCQUFTLENBQUE7SUFDVCxjQUFjO0lBQ2QseUJBQVMsQ0FBQTtJQUNULGFBQWE7SUFDYix5QkFBUyxDQUFBO0lBQ1QsY0FBYztJQUNkLHlCQUFTLENBQUE7SUFDVCx5QkFBeUI7SUFDekIsbUNBQW1CLENBQUE7SUFDbkIsMEJBQTBCO0lBQzFCLG1DQUFtQixDQUFBO0lBQ25CLFdBQVc7SUFDWCx5QkFBUyxDQUFBO0FBQ1gsQ0FBQyxFQTNUVyxZQUFZLEtBQVosWUFBWSxRQTJUdkI7QUErQkQsTUFBTSxDQUFOLElBQVksZUFHWDtBQUhELFdBQVksZUFBZTtJQUN6Qiw4QkFBVyxDQUFBO0lBQ1gsNEJBQVMsQ0FBQTtBQUNYLENBQUMsRUFIVyxlQUFlLEtBQWYsZUFBZSxRQUcxQjtBQTZ6Q0Q7Ozs7OztHQU1HO0FBQ0gsTUFBTSxDQUFOLElBQVksVUE0S1g7QUE1S0QsV0FBWSxVQUFVO0lBQ3BCLDREQUE0RDtJQUM1RCw2Q0FBK0IsQ0FBQTtJQUMvQixnREFBZ0Q7SUFDaEQseURBQTJDLENBQUE7SUFDM0Msd0NBQXdDO0lBQ3hDLHlDQUEyQixDQUFBO0lBQzNCLHdFQUF3RTtJQUN4RSw2Q0FBK0IsQ0FBQTtJQUMvQiwwQ0FBMEM7SUFDMUMsNkNBQStCLENBQUE7SUFDL0IsNkNBQTZDO0lBQzdDLG1EQUFxQyxDQUFBO0lBQ3JDLDBDQUEwQztJQUMxQyw2Q0FBK0IsQ0FBQTtJQUMvQiwyQ0FBMkM7SUFDM0MsK0NBQWlDLENBQUE7SUFDakMsZ0RBQWdEO0lBQ2hELHlEQUEyQyxDQUFBO0lBQzNDLHdDQUF3QztJQUN4Qyx5Q0FBMkIsQ0FBQTtJQUMzQix3Q0FBd0M7SUFDeEMseUNBQTJCLENBQUE7SUFDM0IsZ0RBQWdEO0lBQ2hELHlEQUEyQyxDQUFBO0lBQzNDLDBDQUEwQztJQUMxQyw2Q0FBK0IsQ0FBQTtJQUMvQiw0Q0FBNEM7SUFDNUMsaURBQW1DLENBQUE7SUFDbkMsc0lBQXNJO0lBQ3RJLCtDQUFpQyxDQUFBO0lBQ2pDLGlEQUFpRDtJQUNqRCwyREFBNkMsQ0FBQTtJQUM3Qyx5Q0FBeUM7SUFDekMsMkNBQTZCLENBQUE7SUFDN0Isc0NBQXNDO0lBQ3RDLHFDQUF1QixDQUFBO0lBQ3ZCLDhDQUE4QztJQUM5QyxxREFBdUMsQ0FBQTtJQUN2QywwQ0FBMEM7SUFDMUMsNkNBQStCLENBQUE7SUFDL0IsdUNBQXVDO0lBQ3ZDLHVDQUF5QixDQUFBO0lBQ3pCLGdEQUFnRDtJQUNoRCx5REFBMkMsQ0FBQTtJQUMzQyx3Q0FBd0M7SUFDeEMseUNBQTJCLENBQUE7SUFDM0Isd0VBQXdFO0lBQ3hFLDZDQUErQixDQUFBO0lBQy9CLDBDQUEwQztJQUMxQyw2Q0FBK0IsQ0FBQTtJQUMvQiw2Q0FBNkM7SUFDN0MsbURBQXFDLENBQUE7SUFDckMsMENBQTBDO0lBQzFDLDZDQUErQixDQUFBO0lBQy9CLDJDQUEyQztJQUMzQywrQ0FBaUMsQ0FBQTtJQUNqQyxnREFBZ0Q7SUFDaEQseURBQTJDLENBQUE7SUFDM0Msd0NBQXdDO0lBQ3hDLHlDQUEyQixDQUFBO0lBQzNCLHdDQUF3QztJQUN4Qyx5Q0FBMkIsQ0FBQTtJQUMzQixnREFBZ0Q7SUFDaEQseURBQTJDLENBQUE7SUFDM0MsMENBQTBDO0lBQzFDLDZDQUErQixDQUFBO0lBQy9CLDRDQUE0QztJQUM1QyxpREFBbUMsQ0FBQTtJQUNuQyxzSUFBc0k7SUFDdEksK0NBQWlDLENBQUE7SUFDakMsaURBQWlEO0lBQ2pELDJEQUE2QyxDQUFBO0lBQzdDLHlDQUF5QztJQUN6QywyQ0FBNkIsQ0FBQTtJQUM3QixzQ0FBc0M7SUFDdEMscUNBQXVCLENBQUE7SUFDdkIsOENBQThDO0lBQzlDLHFEQUF1QyxDQUFBO0lBQ3ZDLDBDQUEwQztJQUMxQyw2Q0FBK0IsQ0FBQTtJQUMvQix1Q0FBdUM7SUFDdkMsdUNBQXlCLENBQUE7SUFDekIseUVBQXlFO0lBQ3pFLDZCQUFlLENBQUE7SUFDZix5Q0FBMkIsQ0FBQTtJQUMzQixzRUFBc0U7SUFDdEUsK0JBQWlCLENBQUE7SUFDakIsOENBQThDO0lBQzlDLHFEQUF1QyxDQUFBO0lBQ3ZDLHNDQUFzQztJQUN0QyxxQ0FBdUIsQ0FBQTtJQUN2QixzRUFBc0U7SUFDdEUseUNBQTJCLENBQUE7SUFDM0Isd0NBQXdDO0lBQ3hDLHlDQUEyQixDQUFBO0lBQzNCLDJDQUEyQztJQUMzQywrQ0FBaUMsQ0FBQTtJQUNqQyx3Q0FBd0M7SUFDeEMseUNBQTJCLENBQUE7SUFDM0IseUNBQXlDO0lBQ3pDLDJDQUE2QixDQUFBO0lBQzdCLDhDQUE4QztJQUM5QyxxREFBdUMsQ0FBQTtJQUN2QyxzQ0FBc0M7SUFDdEMscUNBQXVCLENBQUE7SUFDdkIsc0NBQXNDO0lBQ3RDLHFDQUF1QixDQUFBO0lBQ3ZCLDhDQUE4QztJQUM5QyxxREFBdUMsQ0FBQTtJQUN2Qyx3Q0FBd0M7SUFDeEMseUNBQTJCLENBQUE7SUFDM0IsMENBQTBDO0lBQzFDLDZDQUErQixDQUFBO0lBQy9CLG9JQUFvSTtJQUNwSSwyQ0FBNkIsQ0FBQTtJQUM3QiwrQ0FBK0M7SUFDL0MsdURBQXlDLENBQUE7SUFDekMsdUNBQXVDO0lBQ3ZDLHVDQUF5QixDQUFBO0lBQ3pCLG9DQUFvQztJQUNwQyxpQ0FBbUIsQ0FBQTtJQUNuQiw0Q0FBNEM7SUFDNUMsaURBQW1DLENBQUE7SUFDbkMsd0NBQXdDO0lBQ3hDLHlDQUEyQixDQUFBO0lBQzNCLHFDQUFxQztJQUNyQyxtQ0FBcUIsQ0FBQTtJQUNyQiwyREFBMkQ7SUFDM0QsdUNBQXlCLENBQUE7SUFDekIsZ0RBQWdEO0lBQ2hELHlEQUEyQyxDQUFBO0lBQzNDLHdDQUF3QztJQUN4Qyx5Q0FBMkIsQ0FBQTtJQUMzQix3RUFBd0U7SUFDeEUsNkNBQStCLENBQUE7SUFDL0IsMENBQTBDO0lBQzFDLDZDQUErQixDQUFBO0lBQy9CLDZDQUE2QztJQUM3QyxtREFBcUMsQ0FBQTtJQUNyQywwQ0FBMEM7SUFDMUMsNkNBQStCLENBQUE7SUFDL0IsMkNBQTJDO0lBQzNDLCtDQUFpQyxDQUFBO0lBQ2pDLGdEQUFnRDtJQUNoRCx5REFBMkMsQ0FBQTtJQUMzQyx3Q0FBd0M7SUFDeEMseUNBQTJCLENBQUE7SUFDM0IsaURBQWlEO0lBQ2pELDJEQUE2QyxDQUFBO0lBQzdDLHdDQUF3QztJQUN4Qyx5Q0FBMkIsQ0FBQTtJQUMzQixnREFBZ0Q7SUFDaEQseURBQTJDLENBQUE7SUFDM0MsMENBQTBDO0lBQzFDLDZDQUErQixDQUFBO0lBQy9CLDRDQUE0QztJQUM1QyxpREFBbUMsQ0FBQTtJQUNuQyxzSUFBc0k7SUFDdEksK0NBQWlDLENBQUE7SUFDakMsaURBQWlEO0lBQ2pELDJEQUE2QyxDQUFBO0lBQzdDLHlDQUF5QztJQUN6QywyQ0FBNkIsQ0FBQTtJQUM3QixzQ0FBc0M7SUFDdEMscUNBQXVCLENBQUE7SUFDdkIsOENBQThDO0lBQzlDLHFEQUF1QyxDQUFBO0lBQ3ZDLDBDQUEwQztJQUMxQyw2Q0FBK0IsQ0FBQTtJQUMvQix1Q0FBdUM7SUFDdkMsdUNBQXlCLENBQUE7QUFDM0IsQ0FBQyxFQTVLVyxVQUFVLEtBQVYsVUFBVSxRQTRLckI7QUF3K0JELE1BQU0sQ0FBTixJQUFZLFNBR1g7QUFIRCxXQUFZLFNBQVM7SUFDbkIsd0JBQVcsQ0FBQTtJQUNYLDBCQUFhLENBQUE7QUFDZixDQUFDLEVBSFcsU0FBUyxLQUFULFNBQVMsUUFHcEI7QUFtQ0QsTUFBTSxDQUFOLElBQVksaUJBT1g7QUFQRCxXQUFZLGlCQUFpQjtJQUMzQiw4Q0FBeUIsQ0FBQTtJQUN6Qiw4Q0FBeUIsQ0FBQTtJQUN6QixrREFBNkIsQ0FBQTtJQUM3Qix3Q0FBbUIsQ0FBQTtJQUNuQixzQ0FBaUIsQ0FBQTtJQUNqQixrQ0FBYSxDQUFBO0FBQ2YsQ0FBQyxFQVBXLGlCQUFpQixLQUFqQixpQkFBaUIsUUFPNUIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0c2xpbnQ6ZGlzYWJsZVxuZXhwb3J0IHR5cGUgTWF5YmU8VD4gPSBUIHwgbnVsbDtcbmV4cG9ydCB0eXBlIElucHV0TWF5YmU8VD4gPSBNYXliZTxUPjtcbmV4cG9ydCB0eXBlIEV4YWN0PFQgZXh0ZW5kcyB7IFtrZXk6IHN0cmluZ106IHVua25vd24gfT4gPSB7IFtLIGluIGtleW9mIFRdOiBUW0tdIH07XG5leHBvcnQgdHlwZSBNYWtlT3B0aW9uYWw8VCwgSyBleHRlbmRzIGtleW9mIFQ+ID0gT21pdDxULCBLPiAmIHsgW1N1YktleSBpbiBLXT86IE1heWJlPFRbU3ViS2V5XT4gfTtcbmV4cG9ydCB0eXBlIE1ha2VNYXliZTxULCBLIGV4dGVuZHMga2V5b2YgVD4gPSBPbWl0PFQsIEs+ICYgeyBbU3ViS2V5IGluIEtdOiBNYXliZTxUW1N1YktleV0+IH07XG4vKiogQWxsIGJ1aWx0LWluIGFuZCBjdXN0b20gc2NhbGFycywgbWFwcGVkIHRvIHRoZWlyIGFjdHVhbCB2YWx1ZXMgKi9cbmV4cG9ydCB0eXBlIFNjYWxhcnMgPSB7XG4gIElEOiBzdHJpbmc7XG4gIFN0cmluZzogc3RyaW5nO1xuICBCb29sZWFuOiBib29sZWFuO1xuICBJbnQ6IG51bWJlcjtcbiAgRmxvYXQ6IG51bWJlcjtcbiAgLyoqIEEgZGF0ZS10aW1lIHN0cmluZyBhdCBVVEMsIHN1Y2ggYXMgMjAwNy0xMi0wM1QxMDoxNTozMFosIGNvbXBsaWFudCB3aXRoIHRoZSBgZGF0ZS10aW1lYCBmb3JtYXQgb3V0bGluZWQgaW4gc2VjdGlvbiA1LjYgb2YgdGhlIFJGQyAzMzM5IHByb2ZpbGUgb2YgdGhlIElTTyA4NjAxIHN0YW5kYXJkIGZvciByZXByZXNlbnRhdGlvbiBvZiBkYXRlcyBhbmQgdGltZXMgdXNpbmcgdGhlIEdyZWdvcmlhbiBjYWxlbmRhci4gKi9cbiAgRGF0ZVRpbWU6IGFueTtcbiAgLyoqIFRoZSBgSlNPTmAgc2NhbGFyIHR5cGUgcmVwcmVzZW50cyBKU09OIHZhbHVlcyBhcyBzcGVjaWZpZWQgYnkgW0VDTUEtNDA0XShodHRwOi8vd3d3LmVjbWEtaW50ZXJuYXRpb25hbC5vcmcvcHVibGljYXRpb25zL2ZpbGVzL0VDTUEtU1QvRUNNQS00MDQucGRmKS4gKi9cbiAgSlNPTjogYW55O1xuICAvKiogVGhlIGBVcGxvYWRgIHNjYWxhciB0eXBlIHJlcHJlc2VudHMgYSBmaWxlIHVwbG9hZC4gKi9cbiAgVXBsb2FkOiBhbnk7XG59O1xuXG5leHBvcnQgdHlwZSBBZGRGdWxmaWxsbWVudFRvT3JkZXJSZXN1bHQgPSBDcmVhdGVGdWxmaWxsbWVudEVycm9yIHwgRW1wdHlPcmRlckxpbmVTZWxlY3Rpb25FcnJvciB8IEZ1bGZpbGxtZW50IHwgRnVsZmlsbG1lbnRTdGF0ZVRyYW5zaXRpb25FcnJvciB8IEluc3VmZmljaWVudFN0b2NrT25IYW5kRXJyb3IgfCBJbnZhbGlkRnVsZmlsbG1lbnRIYW5kbGVyRXJyb3IgfCBJdGVtc0FscmVhZHlGdWxmaWxsZWRFcnJvcjtcblxuZXhwb3J0IHR5cGUgQWRkSXRlbUlucHV0ID0ge1xuICBwcm9kdWN0VmFyaWFudElkOiBTY2FsYXJzWydJRCddO1xuICBxdWFudGl0eTogU2NhbGFyc1snSW50J107XG59O1xuXG5leHBvcnQgdHlwZSBBZGRNYW51YWxQYXltZW50VG9PcmRlclJlc3VsdCA9IE1hbnVhbFBheW1lbnRTdGF0ZUVycm9yIHwgT3JkZXI7XG5cbmV4cG9ydCB0eXBlIEFkZE5vdGVUb0N1c3RvbWVySW5wdXQgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBpc1B1YmxpYzogU2NhbGFyc1snQm9vbGVhbiddO1xuICBub3RlOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbmV4cG9ydCB0eXBlIEFkZE5vdGVUb09yZGVySW5wdXQgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBpc1B1YmxpYzogU2NhbGFyc1snQm9vbGVhbiddO1xuICBub3RlOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbmV4cG9ydCB0eXBlIEFkZHJlc3MgPSBOb2RlICYge1xuICBfX3R5cGVuYW1lPzogJ0FkZHJlc3MnO1xuICBjaXR5PzogTWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBjb21wYW55PzogTWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBjb3VudHJ5OiBDb3VudHJ5O1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGN1c3RvbUZpZWxkcz86IE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGRlZmF1bHRCaWxsaW5nQWRkcmVzcz86IE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIGRlZmF1bHRTaGlwcGluZ0FkZHJlc3M/OiBNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICBmdWxsTmFtZT86IE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIHBob25lTnVtYmVyPzogTWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBwb3N0YWxDb2RlPzogTWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBwcm92aW5jZT86IE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgc3RyZWV0TGluZTE6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBzdHJlZXRMaW5lMj86IE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgdXBkYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xufTtcblxuZXhwb3J0IHR5cGUgQWRqdXN0T3JkZXJMaW5lSW5wdXQgPSB7XG4gIG9yZGVyTGluZUlkOiBTY2FsYXJzWydJRCddO1xuICBxdWFudGl0eTogU2NhbGFyc1snSW50J107XG59O1xuXG5leHBvcnQgdHlwZSBBZGp1c3RtZW50ID0ge1xuICBfX3R5cGVuYW1lPzogJ0FkanVzdG1lbnQnO1xuICBhZGp1c3RtZW50U291cmNlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgYW1vdW50OiBTY2FsYXJzWydJbnQnXTtcbiAgZGVzY3JpcHRpb246IFNjYWxhcnNbJ1N0cmluZyddO1xuICB0eXBlOiBBZGp1c3RtZW50VHlwZTtcbn07XG5cbmV4cG9ydCBlbnVtIEFkanVzdG1lbnRUeXBlIHtcbiAgRElTVFJJQlVURURfT1JERVJfUFJPTU9USU9OID0gJ0RJU1RSSUJVVEVEX09SREVSX1BST01PVElPTicsXG4gIE9USEVSID0gJ09USEVSJyxcbiAgUFJPTU9USU9OID0gJ1BST01PVElPTidcbn1cblxuZXhwb3J0IHR5cGUgQWRtaW5pc3RyYXRvciA9IE5vZGUgJiB7XG4gIF9fdHlwZW5hbWU/OiAnQWRtaW5pc3RyYXRvcic7XG4gIGNyZWF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgY3VzdG9tRmllbGRzPzogTWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZW1haWxBZGRyZXNzOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgZmlyc3ROYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGxhc3ROYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgdXBkYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICB1c2VyOiBVc2VyO1xufTtcblxuZXhwb3J0IHR5cGUgQWRtaW5pc3RyYXRvckZpbHRlclBhcmFtZXRlciA9IHtcbiAgY3JlYXRlZEF0PzogSW5wdXRNYXliZTxEYXRlT3BlcmF0b3JzPjtcbiAgZW1haWxBZGRyZXNzPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICBmaXJzdE5hbWU/OiBJbnB1dE1heWJlPFN0cmluZ09wZXJhdG9ycz47XG4gIGlkPzogSW5wdXRNYXliZTxJZE9wZXJhdG9ycz47XG4gIGxhc3ROYW1lPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICB1cGRhdGVkQXQ/OiBJbnB1dE1heWJlPERhdGVPcGVyYXRvcnM+O1xufTtcblxuZXhwb3J0IHR5cGUgQWRtaW5pc3RyYXRvckxpc3QgPSBQYWdpbmF0ZWRMaXN0ICYge1xuICBfX3R5cGVuYW1lPzogJ0FkbWluaXN0cmF0b3JMaXN0JztcbiAgaXRlbXM6IEFycmF5PEFkbWluaXN0cmF0b3I+O1xuICB0b3RhbEl0ZW1zOiBTY2FsYXJzWydJbnQnXTtcbn07XG5cbmV4cG9ydCB0eXBlIEFkbWluaXN0cmF0b3JMaXN0T3B0aW9ucyA9IHtcbiAgLyoqIEFsbG93cyB0aGUgcmVzdWx0cyB0byBiZSBmaWx0ZXJlZCAqL1xuICBmaWx0ZXI/OiBJbnB1dE1heWJlPEFkbWluaXN0cmF0b3JGaWx0ZXJQYXJhbWV0ZXI+O1xuICAvKiogU3BlY2lmaWVzIHdoZXRoZXIgbXVsdGlwbGUgXCJmaWx0ZXJcIiBhcmd1bWVudHMgc2hvdWxkIGJlIGNvbWJpbmVzIHdpdGggYSBsb2dpY2FsIEFORCBvciBPUiBvcGVyYXRpb24uIERlZmF1bHRzIHRvIEFORC4gKi9cbiAgZmlsdGVyT3BlcmF0b3I/OiBJbnB1dE1heWJlPExvZ2ljYWxPcGVyYXRvcj47XG4gIC8qKiBTa2lwcyB0aGUgZmlyc3QgbiByZXN1bHRzLCBmb3IgdXNlIGluIHBhZ2luYXRpb24gKi9cbiAgc2tpcD86IElucHV0TWF5YmU8U2NhbGFyc1snSW50J10+O1xuICAvKiogU3BlY2lmaWVzIHdoaWNoIHByb3BlcnRpZXMgdG8gc29ydCB0aGUgcmVzdWx0cyBieSAqL1xuICBzb3J0PzogSW5wdXRNYXliZTxBZG1pbmlzdHJhdG9yU29ydFBhcmFtZXRlcj47XG4gIC8qKiBUYWtlcyBuIHJlc3VsdHMsIGZvciB1c2UgaW4gcGFnaW5hdGlvbiAqL1xuICB0YWtlPzogSW5wdXRNYXliZTxTY2FsYXJzWydJbnQnXT47XG59O1xuXG5leHBvcnQgdHlwZSBBZG1pbmlzdHJhdG9yUGF5bWVudElucHV0ID0ge1xuICBtZXRhZGF0YT86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgcGF5bWVudE1ldGhvZD86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xufTtcblxuZXhwb3J0IHR5cGUgQWRtaW5pc3RyYXRvclJlZnVuZElucHV0ID0ge1xuICBwYXltZW50SWQ6IFNjYWxhcnNbJ0lEJ107XG4gIHJlYXNvbj86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xufTtcblxuZXhwb3J0IHR5cGUgQWRtaW5pc3RyYXRvclNvcnRQYXJhbWV0ZXIgPSB7XG4gIGNyZWF0ZWRBdD86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgZW1haWxBZGRyZXNzPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBmaXJzdE5hbWU/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIGlkPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBsYXN0TmFtZT86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgdXBkYXRlZEF0PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xufTtcblxuZXhwb3J0IHR5cGUgQWxsb2NhdGlvbiA9IE5vZGUgJiBTdG9ja01vdmVtZW50ICYge1xuICBfX3R5cGVuYW1lPzogJ0FsbG9jYXRpb24nO1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBvcmRlckxpbmU6IE9yZGVyTGluZTtcbiAgcHJvZHVjdFZhcmlhbnQ6IFByb2R1Y3RWYXJpYW50O1xuICBxdWFudGl0eTogU2NhbGFyc1snSW50J107XG4gIHR5cGU6IFN0b2NrTW92ZW1lbnRUeXBlO1xuICB1cGRhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG4vKiogUmV0dXJuZWQgaWYgYW4gYXR0ZW1wdGluZyB0byByZWZ1bmQgYW4gT3JkZXJJdGVtIHdoaWNoIGhhcyBhbHJlYWR5IGJlZW4gcmVmdW5kZWQgKi9cbmV4cG9ydCB0eXBlIEFscmVhZHlSZWZ1bmRlZEVycm9yID0gRXJyb3JSZXN1bHQgJiB7XG4gIF9fdHlwZW5hbWU/OiAnQWxyZWFkeVJlZnVuZGVkRXJyb3InO1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHJlZnVuZElkOiBTY2FsYXJzWydJRCddO1xufTtcblxuZXhwb3J0IHR5cGUgQXNzZXQgPSBOb2RlICYge1xuICBfX3R5cGVuYW1lPzogJ0Fzc2V0JztcbiAgY3JlYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICBjdXN0b21GaWVsZHM/OiBNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBmaWxlU2l6ZTogU2NhbGFyc1snSW50J107XG4gIGZvY2FsUG9pbnQ/OiBNYXliZTxDb29yZGluYXRlPjtcbiAgaGVpZ2h0OiBTY2FsYXJzWydJbnQnXTtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIG1pbWVUeXBlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgbmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHByZXZpZXc6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBzb3VyY2U6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB0YWdzOiBBcnJheTxUYWc+O1xuICB0eXBlOiBBc3NldFR5cGU7XG4gIHVwZGF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgd2lkdGg6IFNjYWxhcnNbJ0ludCddO1xufTtcblxuZXhwb3J0IHR5cGUgQXNzZXRGaWx0ZXJQYXJhbWV0ZXIgPSB7XG4gIGNyZWF0ZWRBdD86IElucHV0TWF5YmU8RGF0ZU9wZXJhdG9ycz47XG4gIGZpbGVTaXplPzogSW5wdXRNYXliZTxOdW1iZXJPcGVyYXRvcnM+O1xuICBoZWlnaHQ/OiBJbnB1dE1heWJlPE51bWJlck9wZXJhdG9ycz47XG4gIGlkPzogSW5wdXRNYXliZTxJZE9wZXJhdG9ycz47XG4gIG1pbWVUeXBlPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICBuYW1lPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICBwcmV2aWV3PzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICBzb3VyY2U/OiBJbnB1dE1heWJlPFN0cmluZ09wZXJhdG9ycz47XG4gIHR5cGU/OiBJbnB1dE1heWJlPFN0cmluZ09wZXJhdG9ycz47XG4gIHVwZGF0ZWRBdD86IElucHV0TWF5YmU8RGF0ZU9wZXJhdG9ycz47XG4gIHdpZHRoPzogSW5wdXRNYXliZTxOdW1iZXJPcGVyYXRvcnM+O1xufTtcblxuZXhwb3J0IHR5cGUgQXNzZXRMaXN0ID0gUGFnaW5hdGVkTGlzdCAmIHtcbiAgX190eXBlbmFtZT86ICdBc3NldExpc3QnO1xuICBpdGVtczogQXJyYXk8QXNzZXQ+O1xuICB0b3RhbEl0ZW1zOiBTY2FsYXJzWydJbnQnXTtcbn07XG5cbmV4cG9ydCB0eXBlIEFzc2V0TGlzdE9wdGlvbnMgPSB7XG4gIC8qKiBBbGxvd3MgdGhlIHJlc3VsdHMgdG8gYmUgZmlsdGVyZWQgKi9cbiAgZmlsdGVyPzogSW5wdXRNYXliZTxBc3NldEZpbHRlclBhcmFtZXRlcj47XG4gIC8qKiBTcGVjaWZpZXMgd2hldGhlciBtdWx0aXBsZSBcImZpbHRlclwiIGFyZ3VtZW50cyBzaG91bGQgYmUgY29tYmluZXMgd2l0aCBhIGxvZ2ljYWwgQU5EIG9yIE9SIG9wZXJhdGlvbi4gRGVmYXVsdHMgdG8gQU5ELiAqL1xuICBmaWx0ZXJPcGVyYXRvcj86IElucHV0TWF5YmU8TG9naWNhbE9wZXJhdG9yPjtcbiAgLyoqIFNraXBzIHRoZSBmaXJzdCBuIHJlc3VsdHMsIGZvciB1c2UgaW4gcGFnaW5hdGlvbiAqL1xuICBza2lwPzogSW5wdXRNYXliZTxTY2FsYXJzWydJbnQnXT47XG4gIC8qKiBTcGVjaWZpZXMgd2hpY2ggcHJvcGVydGllcyB0byBzb3J0IHRoZSByZXN1bHRzIGJ5ICovXG4gIHNvcnQ/OiBJbnB1dE1heWJlPEFzc2V0U29ydFBhcmFtZXRlcj47XG4gIHRhZ3M/OiBJbnB1dE1heWJlPEFycmF5PFNjYWxhcnNbJ1N0cmluZyddPj47XG4gIHRhZ3NPcGVyYXRvcj86IElucHV0TWF5YmU8TG9naWNhbE9wZXJhdG9yPjtcbiAgLyoqIFRha2VzIG4gcmVzdWx0cywgZm9yIHVzZSBpbiBwYWdpbmF0aW9uICovXG4gIHRha2U/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0ludCddPjtcbn07XG5cbmV4cG9ydCB0eXBlIEFzc2V0U29ydFBhcmFtZXRlciA9IHtcbiAgY3JlYXRlZEF0PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBmaWxlU2l6ZT86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgaGVpZ2h0PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBpZD86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgbWltZVR5cGU/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIG5hbWU/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIHByZXZpZXc/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIHNvdXJjZT86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgdXBkYXRlZEF0PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICB3aWR0aD86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbn07XG5cbmV4cG9ydCBlbnVtIEFzc2V0VHlwZSB7XG4gIEJJTkFSWSA9ICdCSU5BUlknLFxuICBJTUFHRSA9ICdJTUFHRScsXG4gIFZJREVPID0gJ1ZJREVPJ1xufVxuXG5leHBvcnQgdHlwZSBBc3NpZ25Bc3NldHNUb0NoYW5uZWxJbnB1dCA9IHtcbiAgYXNzZXRJZHM6IEFycmF5PFNjYWxhcnNbJ0lEJ10+O1xuICBjaGFubmVsSWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG5leHBvcnQgdHlwZSBBc3NpZ25Qcm9kdWN0VmFyaWFudHNUb0NoYW5uZWxJbnB1dCA9IHtcbiAgY2hhbm5lbElkOiBTY2FsYXJzWydJRCddO1xuICBwcmljZUZhY3Rvcj86IElucHV0TWF5YmU8U2NhbGFyc1snRmxvYXQnXT47XG4gIHByb2R1Y3RWYXJpYW50SWRzOiBBcnJheTxTY2FsYXJzWydJRCddPjtcbn07XG5cbmV4cG9ydCB0eXBlIEFzc2lnblByb2R1Y3RzVG9DaGFubmVsSW5wdXQgPSB7XG4gIGNoYW5uZWxJZDogU2NhbGFyc1snSUQnXTtcbiAgcHJpY2VGYWN0b3I/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Zsb2F0J10+O1xuICBwcm9kdWN0SWRzOiBBcnJheTxTY2FsYXJzWydJRCddPjtcbn07XG5cbmV4cG9ydCB0eXBlIEFzc2lnblByb21vdGlvbnNUb0NoYW5uZWxJbnB1dCA9IHtcbiAgY2hhbm5lbElkOiBTY2FsYXJzWydJRCddO1xuICBwcm9tb3Rpb25JZHM6IEFycmF5PFNjYWxhcnNbJ0lEJ10+O1xufTtcblxuZXhwb3J0IHR5cGUgQXV0aGVudGljYXRpb25JbnB1dCA9IHtcbiAgbmF0aXZlPzogSW5wdXRNYXliZTxOYXRpdmVBdXRoSW5wdXQ+O1xufTtcblxuZXhwb3J0IHR5cGUgQXV0aGVudGljYXRpb25NZXRob2QgPSBOb2RlICYge1xuICBfX3R5cGVuYW1lPzogJ0F1dGhlbnRpY2F0aW9uTWV0aG9kJztcbiAgY3JlYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgc3RyYXRlZ3k6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB1cGRhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG5leHBvcnQgdHlwZSBBdXRoZW50aWNhdGlvblJlc3VsdCA9IEN1cnJlbnRVc2VyIHwgSW52YWxpZENyZWRlbnRpYWxzRXJyb3I7XG5cbmV4cG9ydCB0eXBlIEJvb2xlYW5DdXN0b21GaWVsZENvbmZpZyA9IEN1c3RvbUZpZWxkICYge1xuICBfX3R5cGVuYW1lPzogJ0Jvb2xlYW5DdXN0b21GaWVsZENvbmZpZyc7XG4gIGRlc2NyaXB0aW9uPzogTWF5YmU8QXJyYXk8TG9jYWxpemVkU3RyaW5nPj47XG4gIGludGVybmFsPzogTWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbiAgbGFiZWw/OiBNYXliZTxBcnJheTxMb2NhbGl6ZWRTdHJpbmc+PjtcbiAgbGlzdDogU2NhbGFyc1snQm9vbGVhbiddO1xuICBuYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgbnVsbGFibGU/OiBNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICByZWFkb25seT86IE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIHR5cGU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB1aT86IE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG59O1xuXG4vKiogT3BlcmF0b3JzIGZvciBmaWx0ZXJpbmcgb24gYSBsaXN0IG9mIEJvb2xlYW4gZmllbGRzICovXG5leHBvcnQgdHlwZSBCb29sZWFuTGlzdE9wZXJhdG9ycyA9IHtcbiAgaW5MaXN0OiBTY2FsYXJzWydCb29sZWFuJ107XG59O1xuXG4vKiogT3BlcmF0b3JzIGZvciBmaWx0ZXJpbmcgb24gYSBCb29sZWFuIGZpZWxkICovXG5leHBvcnQgdHlwZSBCb29sZWFuT3BlcmF0b3JzID0ge1xuICBlcT86IElucHV0TWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbn07XG5cbi8qKiBSZXR1cm5lZCBpZiBhbiBhdHRlbXB0aW5nIHRvIGNhbmNlbCBsaW5lcyBmcm9tIGFuIE9yZGVyIHdoaWNoIGlzIHN0aWxsIGFjdGl2ZSAqL1xuZXhwb3J0IHR5cGUgQ2FuY2VsQWN0aXZlT3JkZXJFcnJvciA9IEVycm9yUmVzdWx0ICYge1xuICBfX3R5cGVuYW1lPzogJ0NhbmNlbEFjdGl2ZU9yZGVyRXJyb3InO1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIG9yZGVyU3RhdGU6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuZXhwb3J0IHR5cGUgQ2FuY2VsT3JkZXJJbnB1dCA9IHtcbiAgLyoqIFNwZWNpZnkgd2hldGhlciB0aGUgc2hpcHBpbmcgY2hhcmdlcyBzaG91bGQgYWxzbyBiZSBjYW5jZWxsZWQuIERlZmF1bHRzIHRvIGZhbHNlICovXG4gIGNhbmNlbFNoaXBwaW5nPzogSW5wdXRNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICAvKiogT3B0aW9uYWxseSBzcGVjaWZ5IHdoaWNoIE9yZGVyTGluZXMgdG8gY2FuY2VsLiBJZiBub3QgcHJvdmlkZWQsIGFsbCBPcmRlckxpbmVzIHdpbGwgYmUgY2FuY2VsbGVkICovXG4gIGxpbmVzPzogSW5wdXRNYXliZTxBcnJheTxPcmRlckxpbmVJbnB1dD4+O1xuICAvKiogVGhlIGlkIG9mIHRoZSBvcmRlciB0byBiZSBjYW5jZWxsZWQgKi9cbiAgb3JkZXJJZDogU2NhbGFyc1snSUQnXTtcbiAgcmVhc29uPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG59O1xuXG5leHBvcnQgdHlwZSBDYW5jZWxPcmRlclJlc3VsdCA9IENhbmNlbEFjdGl2ZU9yZGVyRXJyb3IgfCBFbXB0eU9yZGVyTGluZVNlbGVjdGlvbkVycm9yIHwgTXVsdGlwbGVPcmRlckVycm9yIHwgT3JkZXIgfCBPcmRlclN0YXRlVHJhbnNpdGlvbkVycm9yIHwgUXVhbnRpdHlUb29HcmVhdEVycm9yO1xuXG5leHBvcnQgdHlwZSBDYW5jZWxsYXRpb24gPSBOb2RlICYgU3RvY2tNb3ZlbWVudCAmIHtcbiAgX190eXBlbmFtZT86ICdDYW5jZWxsYXRpb24nO1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBvcmRlckxpbmU6IE9yZGVyTGluZTtcbiAgcHJvZHVjdFZhcmlhbnQ6IFByb2R1Y3RWYXJpYW50O1xuICBxdWFudGl0eTogU2NhbGFyc1snSW50J107XG4gIHR5cGU6IFN0b2NrTW92ZW1lbnRUeXBlO1xuICB1cGRhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG5leHBvcnQgdHlwZSBDaGFubmVsID0gTm9kZSAmIHtcbiAgX190eXBlbmFtZT86ICdDaGFubmVsJztcbiAgY29kZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIGNyZWF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgY3VycmVuY3lDb2RlOiBDdXJyZW5jeUNvZGU7XG4gIGN1c3RvbUZpZWxkcz86IE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGRlZmF1bHRMYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZTtcbiAgZGVmYXVsdFNoaXBwaW5nWm9uZT86IE1heWJlPFpvbmU+O1xuICBkZWZhdWx0VGF4Wm9uZT86IE1heWJlPFpvbmU+O1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgcHJpY2VzSW5jbHVkZVRheDogU2NhbGFyc1snQm9vbGVhbiddO1xuICB0b2tlbjogU2NhbGFyc1snU3RyaW5nJ107XG4gIHVwZGF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbn07XG5cbi8qKlxuICogUmV0dXJuZWQgd2hlbiB0aGUgZGVmYXVsdCBMYW5ndWFnZUNvZGUgb2YgYSBDaGFubmVsIGlzIG5vIGxvbmdlciBmb3VuZCBpbiB0aGUgYGF2YWlsYWJsZUxhbmd1YWdlc2BcbiAqIG9mIHRoZSBHbG9iYWxTZXR0aW5nc1xuICovXG5leHBvcnQgdHlwZSBDaGFubmVsRGVmYXVsdExhbmd1YWdlRXJyb3IgPSBFcnJvclJlc3VsdCAmIHtcbiAgX190eXBlbmFtZT86ICdDaGFubmVsRGVmYXVsdExhbmd1YWdlRXJyb3InO1xuICBjaGFubmVsQ29kZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIGVycm9yQ29kZTogRXJyb3JDb2RlO1xuICBsYW5ndWFnZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIG1lc3NhZ2U6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuZXhwb3J0IHR5cGUgQ29sbGVjdGlvbiA9IE5vZGUgJiB7XG4gIF9fdHlwZW5hbWU/OiAnQ29sbGVjdGlvbic7XG4gIGFzc2V0czogQXJyYXk8QXNzZXQ+O1xuICBicmVhZGNydW1iczogQXJyYXk8Q29sbGVjdGlvbkJyZWFkY3J1bWI+O1xuICBjaGlsZHJlbj86IE1heWJlPEFycmF5PENvbGxlY3Rpb24+PjtcbiAgY3JlYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICBjdXN0b21GaWVsZHM/OiBNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBkZXNjcmlwdGlvbjogU2NhbGFyc1snU3RyaW5nJ107XG4gIGZlYXR1cmVkQXNzZXQ/OiBNYXliZTxBc3NldD47XG4gIGZpbHRlcnM6IEFycmF5PENvbmZpZ3VyYWJsZU9wZXJhdGlvbj47XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBpbmhlcml0RmlsdGVyczogU2NhbGFyc1snQm9vbGVhbiddO1xuICBpc1ByaXZhdGU6IFNjYWxhcnNbJ0Jvb2xlYW4nXTtcbiAgbGFuZ3VhZ2VDb2RlPzogTWF5YmU8TGFuZ3VhZ2VDb2RlPjtcbiAgbmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHBhcmVudD86IE1heWJlPENvbGxlY3Rpb24+O1xuICBwb3NpdGlvbjogU2NhbGFyc1snSW50J107XG4gIHByb2R1Y3RWYXJpYW50czogUHJvZHVjdFZhcmlhbnRMaXN0O1xuICBzbHVnOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgdHJhbnNsYXRpb25zOiBBcnJheTxDb2xsZWN0aW9uVHJhbnNsYXRpb24+O1xuICB1cGRhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIENvbGxlY3Rpb25Qcm9kdWN0VmFyaWFudHNBcmdzID0ge1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxQcm9kdWN0VmFyaWFudExpc3RPcHRpb25zPjtcbn07XG5cbmV4cG9ydCB0eXBlIENvbGxlY3Rpb25CcmVhZGNydW1iID0ge1xuICBfX3R5cGVuYW1lPzogJ0NvbGxlY3Rpb25CcmVhZGNydW1iJztcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIG5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBzbHVnOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbmV4cG9ydCB0eXBlIENvbGxlY3Rpb25GaWx0ZXJQYXJhbWV0ZXIgPSB7XG4gIGNyZWF0ZWRBdD86IElucHV0TWF5YmU8RGF0ZU9wZXJhdG9ycz47XG4gIGRlc2NyaXB0aW9uPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICBpZD86IElucHV0TWF5YmU8SWRPcGVyYXRvcnM+O1xuICBpbmhlcml0RmlsdGVycz86IElucHV0TWF5YmU8Qm9vbGVhbk9wZXJhdG9ycz47XG4gIGlzUHJpdmF0ZT86IElucHV0TWF5YmU8Qm9vbGVhbk9wZXJhdG9ycz47XG4gIGxhbmd1YWdlQ29kZT86IElucHV0TWF5YmU8U3RyaW5nT3BlcmF0b3JzPjtcbiAgbmFtZT86IElucHV0TWF5YmU8U3RyaW5nT3BlcmF0b3JzPjtcbiAgcG9zaXRpb24/OiBJbnB1dE1heWJlPE51bWJlck9wZXJhdG9ycz47XG4gIHNsdWc/OiBJbnB1dE1heWJlPFN0cmluZ09wZXJhdG9ycz47XG4gIHVwZGF0ZWRBdD86IElucHV0TWF5YmU8RGF0ZU9wZXJhdG9ycz47XG59O1xuXG5leHBvcnQgdHlwZSBDb2xsZWN0aW9uTGlzdCA9IFBhZ2luYXRlZExpc3QgJiB7XG4gIF9fdHlwZW5hbWU/OiAnQ29sbGVjdGlvbkxpc3QnO1xuICBpdGVtczogQXJyYXk8Q29sbGVjdGlvbj47XG4gIHRvdGFsSXRlbXM6IFNjYWxhcnNbJ0ludCddO1xufTtcblxuZXhwb3J0IHR5cGUgQ29sbGVjdGlvbkxpc3RPcHRpb25zID0ge1xuICAvKiogQWxsb3dzIHRoZSByZXN1bHRzIHRvIGJlIGZpbHRlcmVkICovXG4gIGZpbHRlcj86IElucHV0TWF5YmU8Q29sbGVjdGlvbkZpbHRlclBhcmFtZXRlcj47XG4gIC8qKiBTcGVjaWZpZXMgd2hldGhlciBtdWx0aXBsZSBcImZpbHRlclwiIGFyZ3VtZW50cyBzaG91bGQgYmUgY29tYmluZXMgd2l0aCBhIGxvZ2ljYWwgQU5EIG9yIE9SIG9wZXJhdGlvbi4gRGVmYXVsdHMgdG8gQU5ELiAqL1xuICBmaWx0ZXJPcGVyYXRvcj86IElucHV0TWF5YmU8TG9naWNhbE9wZXJhdG9yPjtcbiAgLyoqIFNraXBzIHRoZSBmaXJzdCBuIHJlc3VsdHMsIGZvciB1c2UgaW4gcGFnaW5hdGlvbiAqL1xuICBza2lwPzogSW5wdXRNYXliZTxTY2FsYXJzWydJbnQnXT47XG4gIC8qKiBTcGVjaWZpZXMgd2hpY2ggcHJvcGVydGllcyB0byBzb3J0IHRoZSByZXN1bHRzIGJ5ICovXG4gIHNvcnQ/OiBJbnB1dE1heWJlPENvbGxlY3Rpb25Tb3J0UGFyYW1ldGVyPjtcbiAgLyoqIFRha2VzIG4gcmVzdWx0cywgZm9yIHVzZSBpbiBwYWdpbmF0aW9uICovXG4gIHRha2U/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0ludCddPjtcbn07XG5cbi8qKlxuICogV2hpY2ggQ29sbGVjdGlvbnMgYXJlIHByZXNlbnQgaW4gdGhlIHByb2R1Y3RzIHJldHVybmVkXG4gKiBieSB0aGUgc2VhcmNoLCBhbmQgaW4gd2hhdCBxdWFudGl0eS5cbiAqL1xuZXhwb3J0IHR5cGUgQ29sbGVjdGlvblJlc3VsdCA9IHtcbiAgX190eXBlbmFtZT86ICdDb2xsZWN0aW9uUmVzdWx0JztcbiAgY29sbGVjdGlvbjogQ29sbGVjdGlvbjtcbiAgY291bnQ6IFNjYWxhcnNbJ0ludCddO1xufTtcblxuZXhwb3J0IHR5cGUgQ29sbGVjdGlvblNvcnRQYXJhbWV0ZXIgPSB7XG4gIGNyZWF0ZWRBdD86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgZGVzY3JpcHRpb24/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIGlkPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBuYW1lPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBwb3NpdGlvbj86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgc2x1Zz86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgdXBkYXRlZEF0PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xufTtcblxuZXhwb3J0IHR5cGUgQ29sbGVjdGlvblRyYW5zbGF0aW9uID0ge1xuICBfX3R5cGVuYW1lPzogJ0NvbGxlY3Rpb25UcmFuc2xhdGlvbic7XG4gIGNyZWF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgZGVzY3JpcHRpb246IFNjYWxhcnNbJ1N0cmluZyddO1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGU7XG4gIG5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBzbHVnOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgdXBkYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xufTtcblxuZXhwb3J0IHR5cGUgQ29uZmlnQXJnID0ge1xuICBfX3R5cGVuYW1lPzogJ0NvbmZpZ0FyZyc7XG4gIG5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB2YWx1ZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG5leHBvcnQgdHlwZSBDb25maWdBcmdEZWZpbml0aW9uID0ge1xuICBfX3R5cGVuYW1lPzogJ0NvbmZpZ0FyZ0RlZmluaXRpb24nO1xuICBkZWZhdWx0VmFsdWU/OiBNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBkZXNjcmlwdGlvbj86IE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgbGFiZWw/OiBNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIGxpc3Q6IFNjYWxhcnNbJ0Jvb2xlYW4nXTtcbiAgbmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHJlcXVpcmVkOiBTY2FsYXJzWydCb29sZWFuJ107XG4gIHR5cGU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB1aT86IE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG59O1xuXG5leHBvcnQgdHlwZSBDb25maWdBcmdJbnB1dCA9IHtcbiAgbmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIC8qKiBBIEpTT04gc3RyaW5naWZpZWQgcmVwcmVzZW50YXRpb24gb2YgdGhlIGFjdHVhbCB2YWx1ZSAqL1xuICB2YWx1ZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG5leHBvcnQgdHlwZSBDb25maWd1cmFibGVPcGVyYXRpb24gPSB7XG4gIF9fdHlwZW5hbWU/OiAnQ29uZmlndXJhYmxlT3BlcmF0aW9uJztcbiAgYXJnczogQXJyYXk8Q29uZmlnQXJnPjtcbiAgY29kZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG5leHBvcnQgdHlwZSBDb25maWd1cmFibGVPcGVyYXRpb25EZWZpbml0aW9uID0ge1xuICBfX3R5cGVuYW1lPzogJ0NvbmZpZ3VyYWJsZU9wZXJhdGlvbkRlZmluaXRpb24nO1xuICBhcmdzOiBBcnJheTxDb25maWdBcmdEZWZpbml0aW9uPjtcbiAgY29kZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIGRlc2NyaXB0aW9uOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbmV4cG9ydCB0eXBlIENvbmZpZ3VyYWJsZU9wZXJhdGlvbklucHV0ID0ge1xuICBhcmd1bWVudHM6IEFycmF5PENvbmZpZ0FyZ0lucHV0PjtcbiAgY29kZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG5leHBvcnQgdHlwZSBDb29yZGluYXRlID0ge1xuICBfX3R5cGVuYW1lPzogJ0Nvb3JkaW5hdGUnO1xuICB4OiBTY2FsYXJzWydGbG9hdCddO1xuICB5OiBTY2FsYXJzWydGbG9hdCddO1xufTtcblxuZXhwb3J0IHR5cGUgQ29vcmRpbmF0ZUlucHV0ID0ge1xuICB4OiBTY2FsYXJzWydGbG9hdCddO1xuICB5OiBTY2FsYXJzWydGbG9hdCddO1xufTtcblxuZXhwb3J0IHR5cGUgQ291bnRyeSA9IE5vZGUgJiB7XG4gIF9fdHlwZW5hbWU/OiAnQ291bnRyeSc7XG4gIGNvZGU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGN1c3RvbUZpZWxkcz86IE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGVuYWJsZWQ6IFNjYWxhcnNbJ0Jvb2xlYW4nXTtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlO1xuICBuYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgdHJhbnNsYXRpb25zOiBBcnJheTxDb3VudHJ5VHJhbnNsYXRpb24+O1xuICB1cGRhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG5leHBvcnQgdHlwZSBDb3VudHJ5RmlsdGVyUGFyYW1ldGVyID0ge1xuICBjb2RlPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICBjcmVhdGVkQXQ/OiBJbnB1dE1heWJlPERhdGVPcGVyYXRvcnM+O1xuICBlbmFibGVkPzogSW5wdXRNYXliZTxCb29sZWFuT3BlcmF0b3JzPjtcbiAgaWQ/OiBJbnB1dE1heWJlPElkT3BlcmF0b3JzPjtcbiAgbGFuZ3VhZ2VDb2RlPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICBuYW1lPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICB1cGRhdGVkQXQ/OiBJbnB1dE1heWJlPERhdGVPcGVyYXRvcnM+O1xufTtcblxuZXhwb3J0IHR5cGUgQ291bnRyeUxpc3QgPSBQYWdpbmF0ZWRMaXN0ICYge1xuICBfX3R5cGVuYW1lPzogJ0NvdW50cnlMaXN0JztcbiAgaXRlbXM6IEFycmF5PENvdW50cnk+O1xuICB0b3RhbEl0ZW1zOiBTY2FsYXJzWydJbnQnXTtcbn07XG5cbmV4cG9ydCB0eXBlIENvdW50cnlMaXN0T3B0aW9ucyA9IHtcbiAgLyoqIEFsbG93cyB0aGUgcmVzdWx0cyB0byBiZSBmaWx0ZXJlZCAqL1xuICBmaWx0ZXI/OiBJbnB1dE1heWJlPENvdW50cnlGaWx0ZXJQYXJhbWV0ZXI+O1xuICAvKiogU3BlY2lmaWVzIHdoZXRoZXIgbXVsdGlwbGUgXCJmaWx0ZXJcIiBhcmd1bWVudHMgc2hvdWxkIGJlIGNvbWJpbmVzIHdpdGggYSBsb2dpY2FsIEFORCBvciBPUiBvcGVyYXRpb24uIERlZmF1bHRzIHRvIEFORC4gKi9cbiAgZmlsdGVyT3BlcmF0b3I/OiBJbnB1dE1heWJlPExvZ2ljYWxPcGVyYXRvcj47XG4gIC8qKiBTa2lwcyB0aGUgZmlyc3QgbiByZXN1bHRzLCBmb3IgdXNlIGluIHBhZ2luYXRpb24gKi9cbiAgc2tpcD86IElucHV0TWF5YmU8U2NhbGFyc1snSW50J10+O1xuICAvKiogU3BlY2lmaWVzIHdoaWNoIHByb3BlcnRpZXMgdG8gc29ydCB0aGUgcmVzdWx0cyBieSAqL1xuICBzb3J0PzogSW5wdXRNYXliZTxDb3VudHJ5U29ydFBhcmFtZXRlcj47XG4gIC8qKiBUYWtlcyBuIHJlc3VsdHMsIGZvciB1c2UgaW4gcGFnaW5hdGlvbiAqL1xuICB0YWtlPzogSW5wdXRNYXliZTxTY2FsYXJzWydJbnQnXT47XG59O1xuXG5leHBvcnQgdHlwZSBDb3VudHJ5U29ydFBhcmFtZXRlciA9IHtcbiAgY29kZT86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgY3JlYXRlZEF0PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBpZD86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgbmFtZT86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgdXBkYXRlZEF0PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xufTtcblxuZXhwb3J0IHR5cGUgQ291bnRyeVRyYW5zbGF0aW9uID0ge1xuICBfX3R5cGVuYW1lPzogJ0NvdW50cnlUcmFuc2xhdGlvbic7XG4gIGNyZWF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlO1xuICBuYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgdXBkYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xufTtcblxuZXhwb3J0IHR5cGUgQ291bnRyeVRyYW5zbGF0aW9uSW5wdXQgPSB7XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgaWQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0lEJ10+O1xuICBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZTtcbiAgbmFtZT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xufTtcblxuLyoqIFJldHVybmVkIGlmIHRoZSBwcm92aWRlZCBjb3Vwb24gY29kZSBpcyBpbnZhbGlkICovXG5leHBvcnQgdHlwZSBDb3Vwb25Db2RlRXhwaXJlZEVycm9yID0gRXJyb3JSZXN1bHQgJiB7XG4gIF9fdHlwZW5hbWU/OiAnQ291cG9uQ29kZUV4cGlyZWRFcnJvcic7XG4gIGNvdXBvbkNvZGU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG4vKiogUmV0dXJuZWQgaWYgdGhlIHByb3ZpZGVkIGNvdXBvbiBjb2RlIGlzIGludmFsaWQgKi9cbmV4cG9ydCB0eXBlIENvdXBvbkNvZGVJbnZhbGlkRXJyb3IgPSBFcnJvclJlc3VsdCAmIHtcbiAgX190eXBlbmFtZT86ICdDb3Vwb25Db2RlSW52YWxpZEVycm9yJztcbiAgY291cG9uQ29kZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIGVycm9yQ29kZTogRXJyb3JDb2RlO1xuICBtZXNzYWdlOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbi8qKiBSZXR1cm5lZCBpZiB0aGUgcHJvdmlkZWQgY291cG9uIGNvZGUgaXMgaW52YWxpZCAqL1xuZXhwb3J0IHR5cGUgQ291cG9uQ29kZUxpbWl0RXJyb3IgPSBFcnJvclJlc3VsdCAmIHtcbiAgX190eXBlbmFtZT86ICdDb3Vwb25Db2RlTGltaXRFcnJvcic7XG4gIGNvdXBvbkNvZGU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgbGltaXQ6IFNjYWxhcnNbJ0ludCddO1xuICBtZXNzYWdlOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbmV4cG9ydCB0eXBlIENyZWF0ZUFkZHJlc3NJbnB1dCA9IHtcbiAgY2l0eT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBjb21wYW55PzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIGNvdW50cnlDb2RlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgY3VzdG9tRmllbGRzPzogSW5wdXRNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBkZWZhdWx0QmlsbGluZ0FkZHJlc3M/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIGRlZmF1bHRTaGlwcGluZ0FkZHJlc3M/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIGZ1bGxOYW1lPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHBob25lTnVtYmVyPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHBvc3RhbENvZGU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgcHJvdmluY2U/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgc3RyZWV0TGluZTE6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBzdHJlZXRMaW5lMj86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xufTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlQWRtaW5pc3RyYXRvcklucHV0ID0ge1xuICBjdXN0b21GaWVsZHM/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGVtYWlsQWRkcmVzczogU2NhbGFyc1snU3RyaW5nJ107XG4gIGZpcnN0TmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIGxhc3ROYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgcGFzc3dvcmQ6IFNjYWxhcnNbJ1N0cmluZyddO1xuICByb2xlSWRzOiBBcnJheTxTY2FsYXJzWydJRCddPjtcbn07XG5cbmV4cG9ydCB0eXBlIENyZWF0ZUFzc2V0SW5wdXQgPSB7XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZmlsZTogU2NhbGFyc1snVXBsb2FkJ107XG4gIHRhZ3M/OiBJbnB1dE1heWJlPEFycmF5PFNjYWxhcnNbJ1N0cmluZyddPj47XG59O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVBc3NldFJlc3VsdCA9IEFzc2V0IHwgTWltZVR5cGVFcnJvcjtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlQ2hhbm5lbElucHV0ID0ge1xuICBjb2RlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgY3VycmVuY3lDb2RlOiBDdXJyZW5jeUNvZGU7XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZGVmYXVsdExhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlO1xuICBkZWZhdWx0U2hpcHBpbmdab25lSWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGRlZmF1bHRUYXhab25lSWQ6IFNjYWxhcnNbJ0lEJ107XG4gIHByaWNlc0luY2x1ZGVUYXg6IFNjYWxhcnNbJ0Jvb2xlYW4nXTtcbiAgdG9rZW46IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlQ2hhbm5lbFJlc3VsdCA9IENoYW5uZWwgfCBMYW5ndWFnZU5vdEF2YWlsYWJsZUVycm9yO1xuXG5leHBvcnQgdHlwZSBDcmVhdGVDb2xsZWN0aW9uSW5wdXQgPSB7XG4gIGFzc2V0SWRzPzogSW5wdXRNYXliZTxBcnJheTxTY2FsYXJzWydJRCddPj47XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZmVhdHVyZWRBc3NldElkPzogSW5wdXRNYXliZTxTY2FsYXJzWydJRCddPjtcbiAgZmlsdGVyczogQXJyYXk8Q29uZmlndXJhYmxlT3BlcmF0aW9uSW5wdXQ+O1xuICBpbmhlcml0RmlsdGVycz86IElucHV0TWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbiAgaXNQcml2YXRlPzogSW5wdXRNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICBwYXJlbnRJZD86IElucHV0TWF5YmU8U2NhbGFyc1snSUQnXT47XG4gIHRyYW5zbGF0aW9uczogQXJyYXk8Q3JlYXRlQ29sbGVjdGlvblRyYW5zbGF0aW9uSW5wdXQ+O1xufTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlQ29sbGVjdGlvblRyYW5zbGF0aW9uSW5wdXQgPSB7XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZGVzY3JpcHRpb246IFNjYWxhcnNbJ1N0cmluZyddO1xuICBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZTtcbiAgbmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHNsdWc6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlQ291bnRyeUlucHV0ID0ge1xuICBjb2RlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgY3VzdG9tRmllbGRzPzogSW5wdXRNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBlbmFibGVkOiBTY2FsYXJzWydCb29sZWFuJ107XG4gIHRyYW5zbGF0aW9uczogQXJyYXk8Q291bnRyeVRyYW5zbGF0aW9uSW5wdXQ+O1xufTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlQ3VzdG9tZXJHcm91cElucHV0ID0ge1xuICBjdXN0b21GaWVsZHM/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGN1c3RvbWVySWRzPzogSW5wdXRNYXliZTxBcnJheTxTY2FsYXJzWydJRCddPj47XG4gIG5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlQ3VzdG9tZXJJbnB1dCA9IHtcbiAgY3VzdG9tRmllbGRzPzogSW5wdXRNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBlbWFpbEFkZHJlc3M6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBmaXJzdE5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBsYXN0TmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHBob25lTnVtYmVyPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHRpdGxlPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG59O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVDdXN0b21lclJlc3VsdCA9IEN1c3RvbWVyIHwgRW1haWxBZGRyZXNzQ29uZmxpY3RFcnJvcjtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlRmFjZXRJbnB1dCA9IHtcbiAgY29kZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgaXNQcml2YXRlOiBTY2FsYXJzWydCb29sZWFuJ107XG4gIHRyYW5zbGF0aW9uczogQXJyYXk8RmFjZXRUcmFuc2xhdGlvbklucHV0PjtcbiAgdmFsdWVzPzogSW5wdXRNYXliZTxBcnJheTxDcmVhdGVGYWNldFZhbHVlV2l0aEZhY2V0SW5wdXQ+Pjtcbn07XG5cbmV4cG9ydCB0eXBlIENyZWF0ZUZhY2V0VmFsdWVJbnB1dCA9IHtcbiAgY29kZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZmFjZXRJZDogU2NhbGFyc1snSUQnXTtcbiAgdHJhbnNsYXRpb25zOiBBcnJheTxGYWNldFZhbHVlVHJhbnNsYXRpb25JbnB1dD47XG59O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVGYWNldFZhbHVlV2l0aEZhY2V0SW5wdXQgPSB7XG4gIGNvZGU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB0cmFuc2xhdGlvbnM6IEFycmF5PEZhY2V0VmFsdWVUcmFuc2xhdGlvbklucHV0Pjtcbn07XG5cbi8qKiBSZXR1cm5lZCBpZiBhbiBlcnJvciBpcyB0aHJvd24gaW4gYSBGdWxmaWxsbWVudEhhbmRsZXIncyBjcmVhdGVGdWxmaWxsbWVudCBtZXRob2QgKi9cbmV4cG9ydCB0eXBlIENyZWF0ZUZ1bGZpbGxtZW50RXJyb3IgPSBFcnJvclJlc3VsdCAmIHtcbiAgX190eXBlbmFtZT86ICdDcmVhdGVGdWxmaWxsbWVudEVycm9yJztcbiAgZXJyb3JDb2RlOiBFcnJvckNvZGU7XG4gIGZ1bGZpbGxtZW50SGFuZGxlckVycm9yOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVHcm91cE9wdGlvbklucHV0ID0ge1xuICBjb2RlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgdHJhbnNsYXRpb25zOiBBcnJheTxQcm9kdWN0T3B0aW9uR3JvdXBUcmFuc2xhdGlvbklucHV0Pjtcbn07XG5cbmV4cG9ydCB0eXBlIENyZWF0ZVBheW1lbnRNZXRob2RJbnB1dCA9IHtcbiAgY2hlY2tlcj86IElucHV0TWF5YmU8Q29uZmlndXJhYmxlT3BlcmF0aW9uSW5wdXQ+O1xuICBjb2RlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgY3VzdG9tRmllbGRzPzogSW5wdXRNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBkZXNjcmlwdGlvbj86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBlbmFibGVkOiBTY2FsYXJzWydCb29sZWFuJ107XG4gIGhhbmRsZXI6IENvbmZpZ3VyYWJsZU9wZXJhdGlvbklucHV0O1xuICBuYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbmV4cG9ydCB0eXBlIENyZWF0ZVByb2R1Y3RJbnB1dCA9IHtcbiAgYXNzZXRJZHM/OiBJbnB1dE1heWJlPEFycmF5PFNjYWxhcnNbJ0lEJ10+PjtcbiAgY3VzdG9tRmllbGRzPzogSW5wdXRNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBlbmFibGVkPzogSW5wdXRNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICBmYWNldFZhbHVlSWRzPzogSW5wdXRNYXliZTxBcnJheTxTY2FsYXJzWydJRCddPj47XG4gIGZlYXR1cmVkQXNzZXRJZD86IElucHV0TWF5YmU8U2NhbGFyc1snSUQnXT47XG4gIHRyYW5zbGF0aW9uczogQXJyYXk8UHJvZHVjdFRyYW5zbGF0aW9uSW5wdXQ+O1xufTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlUHJvZHVjdE9wdGlvbkdyb3VwSW5wdXQgPSB7XG4gIGNvZGU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBjdXN0b21GaWVsZHM/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIG9wdGlvbnM6IEFycmF5PENyZWF0ZUdyb3VwT3B0aW9uSW5wdXQ+O1xuICB0cmFuc2xhdGlvbnM6IEFycmF5PFByb2R1Y3RPcHRpb25Hcm91cFRyYW5zbGF0aW9uSW5wdXQ+O1xufTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlUHJvZHVjdE9wdGlvbklucHV0ID0ge1xuICBjb2RlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgY3VzdG9tRmllbGRzPzogSW5wdXRNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBwcm9kdWN0T3B0aW9uR3JvdXBJZDogU2NhbGFyc1snSUQnXTtcbiAgdHJhbnNsYXRpb25zOiBBcnJheTxQcm9kdWN0T3B0aW9uR3JvdXBUcmFuc2xhdGlvbklucHV0Pjtcbn07XG5cbmV4cG9ydCB0eXBlIENyZWF0ZVByb2R1Y3RWYXJpYW50SW5wdXQgPSB7XG4gIGFzc2V0SWRzPzogSW5wdXRNYXliZTxBcnJheTxTY2FsYXJzWydJRCddPj47XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZmFjZXRWYWx1ZUlkcz86IElucHV0TWF5YmU8QXJyYXk8U2NhbGFyc1snSUQnXT4+O1xuICBmZWF0dXJlZEFzc2V0SWQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0lEJ10+O1xuICBvcHRpb25JZHM/OiBJbnB1dE1heWJlPEFycmF5PFNjYWxhcnNbJ0lEJ10+PjtcbiAgb3V0T2ZTdG9ja1RocmVzaG9sZD86IElucHV0TWF5YmU8U2NhbGFyc1snSW50J10+O1xuICBwcmljZT86IElucHV0TWF5YmU8U2NhbGFyc1snSW50J10+O1xuICBwcm9kdWN0SWQ6IFNjYWxhcnNbJ0lEJ107XG4gIHNrdTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHN0b2NrT25IYW5kPzogSW5wdXRNYXliZTxTY2FsYXJzWydJbnQnXT47XG4gIHRheENhdGVnb3J5SWQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0lEJ10+O1xuICB0cmFja0ludmVudG9yeT86IElucHV0TWF5YmU8R2xvYmFsRmxhZz47XG4gIHRyYW5zbGF0aW9uczogQXJyYXk8UHJvZHVjdFZhcmlhbnRUcmFuc2xhdGlvbklucHV0PjtcbiAgdXNlR2xvYmFsT3V0T2ZTdG9ja1RocmVzaG9sZD86IElucHV0TWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbn07XG5cbmV4cG9ydCB0eXBlIENyZWF0ZVByb2R1Y3RWYXJpYW50T3B0aW9uSW5wdXQgPSB7XG4gIGNvZGU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBvcHRpb25Hcm91cElkOiBTY2FsYXJzWydJRCddO1xuICB0cmFuc2xhdGlvbnM6IEFycmF5PFByb2R1Y3RPcHRpb25UcmFuc2xhdGlvbklucHV0Pjtcbn07XG5cbmV4cG9ydCB0eXBlIENyZWF0ZVByb21vdGlvbklucHV0ID0ge1xuICBhY3Rpb25zOiBBcnJheTxDb25maWd1cmFibGVPcGVyYXRpb25JbnB1dD47XG4gIGNvbmRpdGlvbnM6IEFycmF5PENvbmZpZ3VyYWJsZU9wZXJhdGlvbklucHV0PjtcbiAgY291cG9uQ29kZT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBjdXN0b21GaWVsZHM/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGVuYWJsZWQ6IFNjYWxhcnNbJ0Jvb2xlYW4nXTtcbiAgZW5kc0F0PzogSW5wdXRNYXliZTxTY2FsYXJzWydEYXRlVGltZSddPjtcbiAgbmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHBlckN1c3RvbWVyVXNhZ2VMaW1pdD86IElucHV0TWF5YmU8U2NhbGFyc1snSW50J10+O1xuICBzdGFydHNBdD86IElucHV0TWF5YmU8U2NhbGFyc1snRGF0ZVRpbWUnXT47XG59O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVQcm9tb3Rpb25SZXN1bHQgPSBNaXNzaW5nQ29uZGl0aW9uc0Vycm9yIHwgUHJvbW90aW9uO1xuXG5leHBvcnQgdHlwZSBDcmVhdGVSb2xlSW5wdXQgPSB7XG4gIGNoYW5uZWxJZHM/OiBJbnB1dE1heWJlPEFycmF5PFNjYWxhcnNbJ0lEJ10+PjtcbiAgY29kZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIGRlc2NyaXB0aW9uOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+O1xufTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlU2hpcHBpbmdNZXRob2RJbnB1dCA9IHtcbiAgY2FsY3VsYXRvcjogQ29uZmlndXJhYmxlT3BlcmF0aW9uSW5wdXQ7XG4gIGNoZWNrZXI6IENvbmZpZ3VyYWJsZU9wZXJhdGlvbklucHV0O1xuICBjb2RlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgY3VzdG9tRmllbGRzPzogSW5wdXRNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBmdWxmaWxsbWVudEhhbmRsZXI6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB0cmFuc2xhdGlvbnM6IEFycmF5PFNoaXBwaW5nTWV0aG9kVHJhbnNsYXRpb25JbnB1dD47XG59O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVUYWdJbnB1dCA9IHtcbiAgdmFsdWU6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlVGF4Q2F0ZWdvcnlJbnB1dCA9IHtcbiAgY3VzdG9tRmllbGRzPzogSW5wdXRNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBpc0RlZmF1bHQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIG5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlVGF4UmF0ZUlucHV0ID0ge1xuICBjYXRlZ29yeUlkOiBTY2FsYXJzWydJRCddO1xuICBjdXN0b21GaWVsZHM/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGN1c3RvbWVyR3JvdXBJZD86IElucHV0TWF5YmU8U2NhbGFyc1snSUQnXT47XG4gIGVuYWJsZWQ6IFNjYWxhcnNbJ0Jvb2xlYW4nXTtcbiAgbmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHZhbHVlOiBTY2FsYXJzWydGbG9hdCddO1xuICB6b25lSWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVab25lSW5wdXQgPSB7XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgbWVtYmVySWRzPzogSW5wdXRNYXliZTxBcnJheTxTY2FsYXJzWydJRCddPj47XG4gIG5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuLyoqXG4gKiBAZGVzY3JpcHRpb25cbiAqIElTTyA0MjE3IGN1cnJlbmN5IGNvZGVcbiAqXG4gKiBAZG9jc0NhdGVnb3J5IGNvbW1vblxuICovXG5leHBvcnQgZW51bSBDdXJyZW5jeUNvZGUge1xuICAvKiogVW5pdGVkIEFyYWIgRW1pcmF0ZXMgZGlyaGFtICovXG4gIEFFRCA9ICdBRUQnLFxuICAvKiogQWZnaGFuIGFmZ2hhbmkgKi9cbiAgQUZOID0gJ0FGTicsXG4gIC8qKiBBbGJhbmlhbiBsZWsgKi9cbiAgQUxMID0gJ0FMTCcsXG4gIC8qKiBBcm1lbmlhbiBkcmFtICovXG4gIEFNRCA9ICdBTUQnLFxuICAvKiogTmV0aGVybGFuZHMgQW50aWxsZWFuIGd1aWxkZXIgKi9cbiAgQU5HID0gJ0FORycsXG4gIC8qKiBBbmdvbGFuIGt3YW56YSAqL1xuICBBT0EgPSAnQU9BJyxcbiAgLyoqIEFyZ2VudGluZSBwZXNvICovXG4gIEFSUyA9ICdBUlMnLFxuICAvKiogQXVzdHJhbGlhbiBkb2xsYXIgKi9cbiAgQVVEID0gJ0FVRCcsXG4gIC8qKiBBcnViYW4gZmxvcmluICovXG4gIEFXRyA9ICdBV0cnLFxuICAvKiogQXplcmJhaWphbmkgbWFuYXQgKi9cbiAgQVpOID0gJ0FaTicsXG4gIC8qKiBCb3NuaWEgYW5kIEhlcnplZ292aW5hIGNvbnZlcnRpYmxlIG1hcmsgKi9cbiAgQkFNID0gJ0JBTScsXG4gIC8qKiBCYXJiYWRvcyBkb2xsYXIgKi9cbiAgQkJEID0gJ0JCRCcsXG4gIC8qKiBCYW5nbGFkZXNoaSB0YWthICovXG4gIEJEVCA9ICdCRFQnLFxuICAvKiogQnVsZ2FyaWFuIGxldiAqL1xuICBCR04gPSAnQkdOJyxcbiAgLyoqIEJhaHJhaW5pIGRpbmFyICovXG4gIEJIRCA9ICdCSEQnLFxuICAvKiogQnVydW5kaWFuIGZyYW5jICovXG4gIEJJRiA9ICdCSUYnLFxuICAvKiogQmVybXVkaWFuIGRvbGxhciAqL1xuICBCTUQgPSAnQk1EJyxcbiAgLyoqIEJydW5laSBkb2xsYXIgKi9cbiAgQk5EID0gJ0JORCcsXG4gIC8qKiBCb2xpdmlhbm8gKi9cbiAgQk9CID0gJ0JPQicsXG4gIC8qKiBCcmF6aWxpYW4gcmVhbCAqL1xuICBCUkwgPSAnQlJMJyxcbiAgLyoqIEJhaGFtaWFuIGRvbGxhciAqL1xuICBCU0QgPSAnQlNEJyxcbiAgLyoqIEJodXRhbmVzZSBuZ3VsdHJ1bSAqL1xuICBCVE4gPSAnQlROJyxcbiAgLyoqIEJvdHN3YW5hIHB1bGEgKi9cbiAgQldQID0gJ0JXUCcsXG4gIC8qKiBCZWxhcnVzaWFuIHJ1YmxlICovXG4gIEJZTiA9ICdCWU4nLFxuICAvKiogQmVsaXplIGRvbGxhciAqL1xuICBCWkQgPSAnQlpEJyxcbiAgLyoqIENhbmFkaWFuIGRvbGxhciAqL1xuICBDQUQgPSAnQ0FEJyxcbiAgLyoqIENvbmdvbGVzZSBmcmFuYyAqL1xuICBDREYgPSAnQ0RGJyxcbiAgLyoqIFN3aXNzIGZyYW5jICovXG4gIENIRiA9ICdDSEYnLFxuICAvKiogQ2hpbGVhbiBwZXNvICovXG4gIENMUCA9ICdDTFAnLFxuICAvKiogUmVubWluYmkgKENoaW5lc2UpIHl1YW4gKi9cbiAgQ05ZID0gJ0NOWScsXG4gIC8qKiBDb2xvbWJpYW4gcGVzbyAqL1xuICBDT1AgPSAnQ09QJyxcbiAgLyoqIENvc3RhIFJpY2FuIGNvbG9uICovXG4gIENSQyA9ICdDUkMnLFxuICAvKiogQ3ViYW4gY29udmVydGlibGUgcGVzbyAqL1xuICBDVUMgPSAnQ1VDJyxcbiAgLyoqIEN1YmFuIHBlc28gKi9cbiAgQ1VQID0gJ0NVUCcsXG4gIC8qKiBDYXBlIFZlcmRlIGVzY3VkbyAqL1xuICBDVkUgPSAnQ1ZFJyxcbiAgLyoqIEN6ZWNoIGtvcnVuYSAqL1xuICBDWksgPSAnQ1pLJyxcbiAgLyoqIERqaWJvdXRpYW4gZnJhbmMgKi9cbiAgREpGID0gJ0RKRicsXG4gIC8qKiBEYW5pc2gga3JvbmUgKi9cbiAgREtLID0gJ0RLSycsXG4gIC8qKiBEb21pbmljYW4gcGVzbyAqL1xuICBET1AgPSAnRE9QJyxcbiAgLyoqIEFsZ2VyaWFuIGRpbmFyICovXG4gIERaRCA9ICdEWkQnLFxuICAvKiogRWd5cHRpYW4gcG91bmQgKi9cbiAgRUdQID0gJ0VHUCcsXG4gIC8qKiBFcml0cmVhbiBuYWtmYSAqL1xuICBFUk4gPSAnRVJOJyxcbiAgLyoqIEV0aGlvcGlhbiBiaXJyICovXG4gIEVUQiA9ICdFVEInLFxuICAvKiogRXVybyAqL1xuICBFVVIgPSAnRVVSJyxcbiAgLyoqIEZpamkgZG9sbGFyICovXG4gIEZKRCA9ICdGSkQnLFxuICAvKiogRmFsa2xhbmQgSXNsYW5kcyBwb3VuZCAqL1xuICBGS1AgPSAnRktQJyxcbiAgLyoqIFBvdW5kIHN0ZXJsaW5nICovXG4gIEdCUCA9ICdHQlAnLFxuICAvKiogR2VvcmdpYW4gbGFyaSAqL1xuICBHRUwgPSAnR0VMJyxcbiAgLyoqIEdoYW5haWFuIGNlZGkgKi9cbiAgR0hTID0gJ0dIUycsXG4gIC8qKiBHaWJyYWx0YXIgcG91bmQgKi9cbiAgR0lQID0gJ0dJUCcsXG4gIC8qKiBHYW1iaWFuIGRhbGFzaSAqL1xuICBHTUQgPSAnR01EJyxcbiAgLyoqIEd1aW5lYW4gZnJhbmMgKi9cbiAgR05GID0gJ0dORicsXG4gIC8qKiBHdWF0ZW1hbGFuIHF1ZXR6YWwgKi9cbiAgR1RRID0gJ0dUUScsXG4gIC8qKiBHdXlhbmVzZSBkb2xsYXIgKi9cbiAgR1lEID0gJ0dZRCcsXG4gIC8qKiBIb25nIEtvbmcgZG9sbGFyICovXG4gIEhLRCA9ICdIS0QnLFxuICAvKiogSG9uZHVyYW4gbGVtcGlyYSAqL1xuICBITkwgPSAnSE5MJyxcbiAgLyoqIENyb2F0aWFuIGt1bmEgKi9cbiAgSFJLID0gJ0hSSycsXG4gIC8qKiBIYWl0aWFuIGdvdXJkZSAqL1xuICBIVEcgPSAnSFRHJyxcbiAgLyoqIEh1bmdhcmlhbiBmb3JpbnQgKi9cbiAgSFVGID0gJ0hVRicsXG4gIC8qKiBJbmRvbmVzaWFuIHJ1cGlhaCAqL1xuICBJRFIgPSAnSURSJyxcbiAgLyoqIElzcmFlbGkgbmV3IHNoZWtlbCAqL1xuICBJTFMgPSAnSUxTJyxcbiAgLyoqIEluZGlhbiBydXBlZSAqL1xuICBJTlIgPSAnSU5SJyxcbiAgLyoqIElyYXFpIGRpbmFyICovXG4gIElRRCA9ICdJUUQnLFxuICAvKiogSXJhbmlhbiByaWFsICovXG4gIElSUiA9ICdJUlInLFxuICAvKiogSWNlbGFuZGljIGtyw7NuYSAqL1xuICBJU0sgPSAnSVNLJyxcbiAgLyoqIEphbWFpY2FuIGRvbGxhciAqL1xuICBKTUQgPSAnSk1EJyxcbiAgLyoqIEpvcmRhbmlhbiBkaW5hciAqL1xuICBKT0QgPSAnSk9EJyxcbiAgLyoqIEphcGFuZXNlIHllbiAqL1xuICBKUFkgPSAnSlBZJyxcbiAgLyoqIEtlbnlhbiBzaGlsbGluZyAqL1xuICBLRVMgPSAnS0VTJyxcbiAgLyoqIEt5cmd5enN0YW5pIHNvbSAqL1xuICBLR1MgPSAnS0dTJyxcbiAgLyoqIENhbWJvZGlhbiByaWVsICovXG4gIEtIUiA9ICdLSFInLFxuICAvKiogQ29tb3JvIGZyYW5jICovXG4gIEtNRiA9ICdLTUYnLFxuICAvKiogTm9ydGggS29yZWFuIHdvbiAqL1xuICBLUFcgPSAnS1BXJyxcbiAgLyoqIFNvdXRoIEtvcmVhbiB3b24gKi9cbiAgS1JXID0gJ0tSVycsXG4gIC8qKiBLdXdhaXRpIGRpbmFyICovXG4gIEtXRCA9ICdLV0QnLFxuICAvKiogQ2F5bWFuIElzbGFuZHMgZG9sbGFyICovXG4gIEtZRCA9ICdLWUQnLFxuICAvKiogS2F6YWtoc3RhbmkgdGVuZ2UgKi9cbiAgS1pUID0gJ0taVCcsXG4gIC8qKiBMYW8ga2lwICovXG4gIExBSyA9ICdMQUsnLFxuICAvKiogTGViYW5lc2UgcG91bmQgKi9cbiAgTEJQID0gJ0xCUCcsXG4gIC8qKiBTcmkgTGFua2FuIHJ1cGVlICovXG4gIExLUiA9ICdMS1InLFxuICAvKiogTGliZXJpYW4gZG9sbGFyICovXG4gIExSRCA9ICdMUkQnLFxuICAvKiogTGVzb3RobyBsb3RpICovXG4gIExTTCA9ICdMU0wnLFxuICAvKiogTGlieWFuIGRpbmFyICovXG4gIExZRCA9ICdMWUQnLFxuICAvKiogTW9yb2NjYW4gZGlyaGFtICovXG4gIE1BRCA9ICdNQUQnLFxuICAvKiogTW9sZG92YW4gbGV1ICovXG4gIE1ETCA9ICdNREwnLFxuICAvKiogTWFsYWdhc3kgYXJpYXJ5ICovXG4gIE1HQSA9ICdNR0EnLFxuICAvKiogTWFjZWRvbmlhbiBkZW5hciAqL1xuICBNS0QgPSAnTUtEJyxcbiAgLyoqIE15YW5tYXIga3lhdCAqL1xuICBNTUsgPSAnTU1LJyxcbiAgLyoqIE1vbmdvbGlhbiB0w7ZncsO2ZyAqL1xuICBNTlQgPSAnTU5UJyxcbiAgLyoqIE1hY2FuZXNlIHBhdGFjYSAqL1xuICBNT1AgPSAnTU9QJyxcbiAgLyoqIE1hdXJpdGFuaWFuIG91Z3VpeWEgKi9cbiAgTVJVID0gJ01SVScsXG4gIC8qKiBNYXVyaXRpYW4gcnVwZWUgKi9cbiAgTVVSID0gJ01VUicsXG4gIC8qKiBNYWxkaXZpYW4gcnVmaXlhYSAqL1xuICBNVlIgPSAnTVZSJyxcbiAgLyoqIE1hbGF3aWFuIGt3YWNoYSAqL1xuICBNV0sgPSAnTVdLJyxcbiAgLyoqIE1leGljYW4gcGVzbyAqL1xuICBNWE4gPSAnTVhOJyxcbiAgLyoqIE1hbGF5c2lhbiByaW5nZ2l0ICovXG4gIE1ZUiA9ICdNWVInLFxuICAvKiogTW96YW1iaWNhbiBtZXRpY2FsICovXG4gIE1aTiA9ICdNWk4nLFxuICAvKiogTmFtaWJpYW4gZG9sbGFyICovXG4gIE5BRCA9ICdOQUQnLFxuICAvKiogTmlnZXJpYW4gbmFpcmEgKi9cbiAgTkdOID0gJ05HTicsXG4gIC8qKiBOaWNhcmFndWFuIGPDs3Jkb2JhICovXG4gIE5JTyA9ICdOSU8nLFxuICAvKiogTm9yd2VnaWFuIGtyb25lICovXG4gIE5PSyA9ICdOT0snLFxuICAvKiogTmVwYWxlc2UgcnVwZWUgKi9cbiAgTlBSID0gJ05QUicsXG4gIC8qKiBOZXcgWmVhbGFuZCBkb2xsYXIgKi9cbiAgTlpEID0gJ05aRCcsXG4gIC8qKiBPbWFuaSByaWFsICovXG4gIE9NUiA9ICdPTVInLFxuICAvKiogUGFuYW1hbmlhbiBiYWxib2EgKi9cbiAgUEFCID0gJ1BBQicsXG4gIC8qKiBQZXJ1dmlhbiBzb2wgKi9cbiAgUEVOID0gJ1BFTicsXG4gIC8qKiBQYXB1YSBOZXcgR3VpbmVhbiBraW5hICovXG4gIFBHSyA9ICdQR0snLFxuICAvKiogUGhpbGlwcGluZSBwZXNvICovXG4gIFBIUCA9ICdQSFAnLFxuICAvKiogUGFraXN0YW5pIHJ1cGVlICovXG4gIFBLUiA9ICdQS1InLFxuICAvKiogUG9saXNoIHrFgm90eSAqL1xuICBQTE4gPSAnUExOJyxcbiAgLyoqIFBhcmFndWF5YW4gZ3VhcmFuw60gKi9cbiAgUFlHID0gJ1BZRycsXG4gIC8qKiBRYXRhcmkgcml5YWwgKi9cbiAgUUFSID0gJ1FBUicsXG4gIC8qKiBSb21hbmlhbiBsZXUgKi9cbiAgUk9OID0gJ1JPTicsXG4gIC8qKiBTZXJiaWFuIGRpbmFyICovXG4gIFJTRCA9ICdSU0QnLFxuICAvKiogUnVzc2lhbiBydWJsZSAqL1xuICBSVUIgPSAnUlVCJyxcbiAgLyoqIFJ3YW5kYW4gZnJhbmMgKi9cbiAgUldGID0gJ1JXRicsXG4gIC8qKiBTYXVkaSByaXlhbCAqL1xuICBTQVIgPSAnU0FSJyxcbiAgLyoqIFNvbG9tb24gSXNsYW5kcyBkb2xsYXIgKi9cbiAgU0JEID0gJ1NCRCcsXG4gIC8qKiBTZXljaGVsbGVzIHJ1cGVlICovXG4gIFNDUiA9ICdTQ1InLFxuICAvKiogU3VkYW5lc2UgcG91bmQgKi9cbiAgU0RHID0gJ1NERycsXG4gIC8qKiBTd2VkaXNoIGtyb25hL2tyb25vciAqL1xuICBTRUsgPSAnU0VLJyxcbiAgLyoqIFNpbmdhcG9yZSBkb2xsYXIgKi9cbiAgU0dEID0gJ1NHRCcsXG4gIC8qKiBTYWludCBIZWxlbmEgcG91bmQgKi9cbiAgU0hQID0gJ1NIUCcsXG4gIC8qKiBTaWVycmEgTGVvbmVhbiBsZW9uZSAqL1xuICBTTEwgPSAnU0xMJyxcbiAgLyoqIFNvbWFsaSBzaGlsbGluZyAqL1xuICBTT1MgPSAnU09TJyxcbiAgLyoqIFN1cmluYW1lc2UgZG9sbGFyICovXG4gIFNSRCA9ICdTUkQnLFxuICAvKiogU291dGggU3VkYW5lc2UgcG91bmQgKi9cbiAgU1NQID0gJ1NTUCcsXG4gIC8qKiBTw6NvIFRvbcOpIGFuZCBQcsOtbmNpcGUgZG9icmEgKi9cbiAgU1ROID0gJ1NUTicsXG4gIC8qKiBTYWx2YWRvcmFuIGNvbMOzbiAqL1xuICBTVkMgPSAnU1ZDJyxcbiAgLyoqIFN5cmlhbiBwb3VuZCAqL1xuICBTWVAgPSAnU1lQJyxcbiAgLyoqIFN3YXppIGxpbGFuZ2VuaSAqL1xuICBTWkwgPSAnU1pMJyxcbiAgLyoqIFRoYWkgYmFodCAqL1xuICBUSEIgPSAnVEhCJyxcbiAgLyoqIFRhamlraXN0YW5pIHNvbW9uaSAqL1xuICBUSlMgPSAnVEpTJyxcbiAgLyoqIFR1cmttZW5pc3RhbiBtYW5hdCAqL1xuICBUTVQgPSAnVE1UJyxcbiAgLyoqIFR1bmlzaWFuIGRpbmFyICovXG4gIFRORCA9ICdUTkQnLFxuICAvKiogVG9uZ2FuIHBhyrthbmdhICovXG4gIFRPUCA9ICdUT1AnLFxuICAvKiogVHVya2lzaCBsaXJhICovXG4gIFRSWSA9ICdUUlknLFxuICAvKiogVHJpbmlkYWQgYW5kIFRvYmFnbyBkb2xsYXIgKi9cbiAgVFREID0gJ1RURCcsXG4gIC8qKiBOZXcgVGFpd2FuIGRvbGxhciAqL1xuICBUV0QgPSAnVFdEJyxcbiAgLyoqIFRhbnphbmlhbiBzaGlsbGluZyAqL1xuICBUWlMgPSAnVFpTJyxcbiAgLyoqIFVrcmFpbmlhbiBocnl2bmlhICovXG4gIFVBSCA9ICdVQUgnLFxuICAvKiogVWdhbmRhbiBzaGlsbGluZyAqL1xuICBVR1ggPSAnVUdYJyxcbiAgLyoqIFVuaXRlZCBTdGF0ZXMgZG9sbGFyICovXG4gIFVTRCA9ICdVU0QnLFxuICAvKiogVXJ1Z3VheWFuIHBlc28gKi9cbiAgVVlVID0gJ1VZVScsXG4gIC8qKiBVemJla2lzdGFuIHNvbSAqL1xuICBVWlMgPSAnVVpTJyxcbiAgLyoqIFZlbmV6dWVsYW4gYm9sw612YXIgc29iZXJhbm8gKi9cbiAgVkVTID0gJ1ZFUycsXG4gIC8qKiBWaWV0bmFtZXNlIMSR4buTbmcgKi9cbiAgVk5EID0gJ1ZORCcsXG4gIC8qKiBWYW51YXR1IHZhdHUgKi9cbiAgVlVWID0gJ1ZVVicsXG4gIC8qKiBTYW1vYW4gdGFsYSAqL1xuICBXU1QgPSAnV1NUJyxcbiAgLyoqIENGQSBmcmFuYyBCRUFDICovXG4gIFhBRiA9ICdYQUYnLFxuICAvKiogRWFzdCBDYXJpYmJlYW4gZG9sbGFyICovXG4gIFhDRCA9ICdYQ0QnLFxuICAvKiogQ0ZBIGZyYW5jIEJDRUFPICovXG4gIFhPRiA9ICdYT0YnLFxuICAvKiogQ0ZQIGZyYW5jIChmcmFuYyBQYWNpZmlxdWUpICovXG4gIFhQRiA9ICdYUEYnLFxuICAvKiogWWVtZW5pIHJpYWwgKi9cbiAgWUVSID0gJ1lFUicsXG4gIC8qKiBTb3V0aCBBZnJpY2FuIHJhbmQgKi9cbiAgWkFSID0gJ1pBUicsXG4gIC8qKiBaYW1iaWFuIGt3YWNoYSAqL1xuICBaTVcgPSAnWk1XJyxcbiAgLyoqIFppbWJhYndlYW4gZG9sbGFyICovXG4gIFpXTCA9ICdaV0wnXG59XG5cbmV4cG9ydCB0eXBlIEN1cnJlbnRVc2VyID0ge1xuICBfX3R5cGVuYW1lPzogJ0N1cnJlbnRVc2VyJztcbiAgY2hhbm5lbHM6IEFycmF5PEN1cnJlbnRVc2VyQ2hhbm5lbD47XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBpZGVudGlmaWVyOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbmV4cG9ydCB0eXBlIEN1cnJlbnRVc2VyQ2hhbm5lbCA9IHtcbiAgX190eXBlbmFtZT86ICdDdXJyZW50VXNlckNoYW5uZWwnO1xuICBjb2RlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIHBlcm1pc3Npb25zOiBBcnJheTxQZXJtaXNzaW9uPjtcbiAgdG9rZW46IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuZXhwb3J0IHR5cGUgQ3VycmVudFVzZXJDaGFubmVsSW5wdXQgPSB7XG4gIGNvZGU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+O1xuICB0b2tlbjogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG5leHBvcnQgdHlwZSBDdXN0b21GaWVsZCA9IHtcbiAgZGVzY3JpcHRpb24/OiBNYXliZTxBcnJheTxMb2NhbGl6ZWRTdHJpbmc+PjtcbiAgaW50ZXJuYWw/OiBNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICBsYWJlbD86IE1heWJlPEFycmF5PExvY2FsaXplZFN0cmluZz4+O1xuICBsaXN0OiBTY2FsYXJzWydCb29sZWFuJ107XG4gIG5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBudWxsYWJsZT86IE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIHJlYWRvbmx5PzogTWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbiAgdHlwZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHVpPzogTWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbn07XG5cbmV4cG9ydCB0eXBlIEN1c3RvbUZpZWxkQ29uZmlnID0gQm9vbGVhbkN1c3RvbUZpZWxkQ29uZmlnIHwgRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZyB8IEZsb2F0Q3VzdG9tRmllbGRDb25maWcgfCBJbnRDdXN0b21GaWVsZENvbmZpZyB8IExvY2FsZVN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnIHwgUmVsYXRpb25DdXN0b21GaWVsZENvbmZpZyB8IFN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnIHwgVGV4dEN1c3RvbUZpZWxkQ29uZmlnO1xuXG5leHBvcnQgdHlwZSBDdXN0b21GaWVsZHMgPSB7XG4gIF9fdHlwZW5hbWU/OiAnQ3VzdG9tRmllbGRzJztcbiAgQWRkcmVzczogQXJyYXk8Q3VzdG9tRmllbGRDb25maWc+O1xuICBBZG1pbmlzdHJhdG9yOiBBcnJheTxDdXN0b21GaWVsZENvbmZpZz47XG4gIEFzc2V0OiBBcnJheTxDdXN0b21GaWVsZENvbmZpZz47XG4gIENoYW5uZWw6IEFycmF5PEN1c3RvbUZpZWxkQ29uZmlnPjtcbiAgQ29sbGVjdGlvbjogQXJyYXk8Q3VzdG9tRmllbGRDb25maWc+O1xuICBDb3VudHJ5OiBBcnJheTxDdXN0b21GaWVsZENvbmZpZz47XG4gIEN1c3RvbWVyOiBBcnJheTxDdXN0b21GaWVsZENvbmZpZz47XG4gIEN1c3RvbWVyR3JvdXA6IEFycmF5PEN1c3RvbUZpZWxkQ29uZmlnPjtcbiAgRmFjZXQ6IEFycmF5PEN1c3RvbUZpZWxkQ29uZmlnPjtcbiAgRmFjZXRWYWx1ZTogQXJyYXk8Q3VzdG9tRmllbGRDb25maWc+O1xuICBGdWxmaWxsbWVudDogQXJyYXk8Q3VzdG9tRmllbGRDb25maWc+O1xuICBHbG9iYWxTZXR0aW5nczogQXJyYXk8Q3VzdG9tRmllbGRDb25maWc+O1xuICBPcmRlcjogQXJyYXk8Q3VzdG9tRmllbGRDb25maWc+O1xuICBPcmRlckxpbmU6IEFycmF5PEN1c3RvbUZpZWxkQ29uZmlnPjtcbiAgUGF5bWVudE1ldGhvZDogQXJyYXk8Q3VzdG9tRmllbGRDb25maWc+O1xuICBQcm9kdWN0OiBBcnJheTxDdXN0b21GaWVsZENvbmZpZz47XG4gIFByb2R1Y3RPcHRpb246IEFycmF5PEN1c3RvbUZpZWxkQ29uZmlnPjtcbiAgUHJvZHVjdE9wdGlvbkdyb3VwOiBBcnJheTxDdXN0b21GaWVsZENvbmZpZz47XG4gIFByb2R1Y3RWYXJpYW50OiBBcnJheTxDdXN0b21GaWVsZENvbmZpZz47XG4gIFByb21vdGlvbjogQXJyYXk8Q3VzdG9tRmllbGRDb25maWc+O1xuICBTaGlwcGluZ01ldGhvZDogQXJyYXk8Q3VzdG9tRmllbGRDb25maWc+O1xuICBUYXhDYXRlZ29yeTogQXJyYXk8Q3VzdG9tRmllbGRDb25maWc+O1xuICBUYXhSYXRlOiBBcnJheTxDdXN0b21GaWVsZENvbmZpZz47XG4gIFVzZXI6IEFycmF5PEN1c3RvbUZpZWxkQ29uZmlnPjtcbiAgWm9uZTogQXJyYXk8Q3VzdG9tRmllbGRDb25maWc+O1xufTtcblxuZXhwb3J0IHR5cGUgQ3VzdG9tZXIgPSBOb2RlICYge1xuICBfX3R5cGVuYW1lPzogJ0N1c3RvbWVyJztcbiAgYWRkcmVzc2VzPzogTWF5YmU8QXJyYXk8QWRkcmVzcz4+O1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGN1c3RvbUZpZWxkcz86IE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGVtYWlsQWRkcmVzczogU2NhbGFyc1snU3RyaW5nJ107XG4gIGZpcnN0TmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIGdyb3VwczogQXJyYXk8Q3VzdG9tZXJHcm91cD47XG4gIGhpc3Rvcnk6IEhpc3RvcnlFbnRyeUxpc3Q7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBsYXN0TmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIG9yZGVyczogT3JkZXJMaXN0O1xuICBwaG9uZU51bWJlcj86IE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgdGl0bGU/OiBNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHVwZGF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgdXNlcj86IE1heWJlPFVzZXI+O1xufTtcblxuXG5leHBvcnQgdHlwZSBDdXN0b21lckhpc3RvcnlBcmdzID0ge1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxIaXN0b3J5RW50cnlMaXN0T3B0aW9ucz47XG59O1xuXG5cbmV4cG9ydCB0eXBlIEN1c3RvbWVyT3JkZXJzQXJncyA9IHtcbiAgb3B0aW9ucz86IElucHV0TWF5YmU8T3JkZXJMaXN0T3B0aW9ucz47XG59O1xuXG5leHBvcnQgdHlwZSBDdXN0b21lckZpbHRlclBhcmFtZXRlciA9IHtcbiAgY3JlYXRlZEF0PzogSW5wdXRNYXliZTxEYXRlT3BlcmF0b3JzPjtcbiAgZW1haWxBZGRyZXNzPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICBmaXJzdE5hbWU/OiBJbnB1dE1heWJlPFN0cmluZ09wZXJhdG9ycz47XG4gIGlkPzogSW5wdXRNYXliZTxJZE9wZXJhdG9ycz47XG4gIGxhc3ROYW1lPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICBwaG9uZU51bWJlcj86IElucHV0TWF5YmU8U3RyaW5nT3BlcmF0b3JzPjtcbiAgcG9zdGFsQ29kZT86IElucHV0TWF5YmU8U3RyaW5nT3BlcmF0b3JzPjtcbiAgdGl0bGU/OiBJbnB1dE1heWJlPFN0cmluZ09wZXJhdG9ycz47XG4gIHVwZGF0ZWRBdD86IElucHV0TWF5YmU8RGF0ZU9wZXJhdG9ycz47XG59O1xuXG5leHBvcnQgdHlwZSBDdXN0b21lckdyb3VwID0gTm9kZSAmIHtcbiAgX190eXBlbmFtZT86ICdDdXN0b21lckdyb3VwJztcbiAgY3JlYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICBjdXN0b21GaWVsZHM/OiBNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBjdXN0b21lcnM6IEN1c3RvbWVyTGlzdDtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIG5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB1cGRhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIEN1c3RvbWVyR3JvdXBDdXN0b21lcnNBcmdzID0ge1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxDdXN0b21lckxpc3RPcHRpb25zPjtcbn07XG5cbmV4cG9ydCB0eXBlIEN1c3RvbWVyR3JvdXBGaWx0ZXJQYXJhbWV0ZXIgPSB7XG4gIGNyZWF0ZWRBdD86IElucHV0TWF5YmU8RGF0ZU9wZXJhdG9ycz47XG4gIGlkPzogSW5wdXRNYXliZTxJZE9wZXJhdG9ycz47XG4gIG5hbWU/OiBJbnB1dE1heWJlPFN0cmluZ09wZXJhdG9ycz47XG4gIHVwZGF0ZWRBdD86IElucHV0TWF5YmU8RGF0ZU9wZXJhdG9ycz47XG59O1xuXG5leHBvcnQgdHlwZSBDdXN0b21lckdyb3VwTGlzdCA9IFBhZ2luYXRlZExpc3QgJiB7XG4gIF9fdHlwZW5hbWU/OiAnQ3VzdG9tZXJHcm91cExpc3QnO1xuICBpdGVtczogQXJyYXk8Q3VzdG9tZXJHcm91cD47XG4gIHRvdGFsSXRlbXM6IFNjYWxhcnNbJ0ludCddO1xufTtcblxuZXhwb3J0IHR5cGUgQ3VzdG9tZXJHcm91cExpc3RPcHRpb25zID0ge1xuICAvKiogQWxsb3dzIHRoZSByZXN1bHRzIHRvIGJlIGZpbHRlcmVkICovXG4gIGZpbHRlcj86IElucHV0TWF5YmU8Q3VzdG9tZXJHcm91cEZpbHRlclBhcmFtZXRlcj47XG4gIC8qKiBTcGVjaWZpZXMgd2hldGhlciBtdWx0aXBsZSBcImZpbHRlclwiIGFyZ3VtZW50cyBzaG91bGQgYmUgY29tYmluZXMgd2l0aCBhIGxvZ2ljYWwgQU5EIG9yIE9SIG9wZXJhdGlvbi4gRGVmYXVsdHMgdG8gQU5ELiAqL1xuICBmaWx0ZXJPcGVyYXRvcj86IElucHV0TWF5YmU8TG9naWNhbE9wZXJhdG9yPjtcbiAgLyoqIFNraXBzIHRoZSBmaXJzdCBuIHJlc3VsdHMsIGZvciB1c2UgaW4gcGFnaW5hdGlvbiAqL1xuICBza2lwPzogSW5wdXRNYXliZTxTY2FsYXJzWydJbnQnXT47XG4gIC8qKiBTcGVjaWZpZXMgd2hpY2ggcHJvcGVydGllcyB0byBzb3J0IHRoZSByZXN1bHRzIGJ5ICovXG4gIHNvcnQ/OiBJbnB1dE1heWJlPEN1c3RvbWVyR3JvdXBTb3J0UGFyYW1ldGVyPjtcbiAgLyoqIFRha2VzIG4gcmVzdWx0cywgZm9yIHVzZSBpbiBwYWdpbmF0aW9uICovXG4gIHRha2U/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0ludCddPjtcbn07XG5cbmV4cG9ydCB0eXBlIEN1c3RvbWVyR3JvdXBTb3J0UGFyYW1ldGVyID0ge1xuICBjcmVhdGVkQXQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIGlkPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBuYW1lPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICB1cGRhdGVkQXQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG59O1xuXG5leHBvcnQgdHlwZSBDdXN0b21lckxpc3QgPSBQYWdpbmF0ZWRMaXN0ICYge1xuICBfX3R5cGVuYW1lPzogJ0N1c3RvbWVyTGlzdCc7XG4gIGl0ZW1zOiBBcnJheTxDdXN0b21lcj47XG4gIHRvdGFsSXRlbXM6IFNjYWxhcnNbJ0ludCddO1xufTtcblxuZXhwb3J0IHR5cGUgQ3VzdG9tZXJMaXN0T3B0aW9ucyA9IHtcbiAgLyoqIEFsbG93cyB0aGUgcmVzdWx0cyB0byBiZSBmaWx0ZXJlZCAqL1xuICBmaWx0ZXI/OiBJbnB1dE1heWJlPEN1c3RvbWVyRmlsdGVyUGFyYW1ldGVyPjtcbiAgLyoqIFNwZWNpZmllcyB3aGV0aGVyIG11bHRpcGxlIFwiZmlsdGVyXCIgYXJndW1lbnRzIHNob3VsZCBiZSBjb21iaW5lcyB3aXRoIGEgbG9naWNhbCBBTkQgb3IgT1Igb3BlcmF0aW9uLiBEZWZhdWx0cyB0byBBTkQuICovXG4gIGZpbHRlck9wZXJhdG9yPzogSW5wdXRNYXliZTxMb2dpY2FsT3BlcmF0b3I+O1xuICAvKiogU2tpcHMgdGhlIGZpcnN0IG4gcmVzdWx0cywgZm9yIHVzZSBpbiBwYWdpbmF0aW9uICovXG4gIHNraXA/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0ludCddPjtcbiAgLyoqIFNwZWNpZmllcyB3aGljaCBwcm9wZXJ0aWVzIHRvIHNvcnQgdGhlIHJlc3VsdHMgYnkgKi9cbiAgc29ydD86IElucHV0TWF5YmU8Q3VzdG9tZXJTb3J0UGFyYW1ldGVyPjtcbiAgLyoqIFRha2VzIG4gcmVzdWx0cywgZm9yIHVzZSBpbiBwYWdpbmF0aW9uICovXG4gIHRha2U/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0ludCddPjtcbn07XG5cbmV4cG9ydCB0eXBlIEN1c3RvbWVyU29ydFBhcmFtZXRlciA9IHtcbiAgY3JlYXRlZEF0PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBlbWFpbEFkZHJlc3M/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIGZpcnN0TmFtZT86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgaWQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIGxhc3ROYW1lPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBwaG9uZU51bWJlcj86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgdGl0bGU/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIHVwZGF0ZWRBdD86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbn07XG5cbi8qKiBPcGVyYXRvcnMgZm9yIGZpbHRlcmluZyBvbiBhIGxpc3Qgb2YgRGF0ZSBmaWVsZHMgKi9cbmV4cG9ydCB0eXBlIERhdGVMaXN0T3BlcmF0b3JzID0ge1xuICBpbkxpc3Q6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG4vKiogT3BlcmF0b3JzIGZvciBmaWx0ZXJpbmcgb24gYSBEYXRlVGltZSBmaWVsZCAqL1xuZXhwb3J0IHR5cGUgRGF0ZU9wZXJhdG9ycyA9IHtcbiAgYWZ0ZXI/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0RhdGVUaW1lJ10+O1xuICBiZWZvcmU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0RhdGVUaW1lJ10+O1xuICBiZXR3ZWVuPzogSW5wdXRNYXliZTxEYXRlUmFuZ2U+O1xuICBlcT86IElucHV0TWF5YmU8U2NhbGFyc1snRGF0ZVRpbWUnXT47XG59O1xuXG5leHBvcnQgdHlwZSBEYXRlUmFuZ2UgPSB7XG4gIGVuZDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgc3RhcnQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG4vKipcbiAqIEV4cGVjdHMgdGhlIHNhbWUgdmFsaWRhdGlvbiBmb3JtYXRzIGFzIHRoZSBgPGlucHV0IHR5cGU9XCJkYXRldGltZS1sb2NhbFwiPmAgSFRNTCBlbGVtZW50LlxuICogU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUTUwvRWxlbWVudC9pbnB1dC9kYXRldGltZS1sb2NhbCNBZGRpdGlvbmFsX2F0dHJpYnV0ZXNcbiAqL1xuZXhwb3J0IHR5cGUgRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZyA9IEN1c3RvbUZpZWxkICYge1xuICBfX3R5cGVuYW1lPzogJ0RhdGVUaW1lQ3VzdG9tRmllbGRDb25maWcnO1xuICBkZXNjcmlwdGlvbj86IE1heWJlPEFycmF5PExvY2FsaXplZFN0cmluZz4+O1xuICBpbnRlcm5hbD86IE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIGxhYmVsPzogTWF5YmU8QXJyYXk8TG9jYWxpemVkU3RyaW5nPj47XG4gIGxpc3Q6IFNjYWxhcnNbJ0Jvb2xlYW4nXTtcbiAgbWF4PzogTWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBtaW4/OiBNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIG5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBudWxsYWJsZT86IE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIHJlYWRvbmx5PzogTWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbiAgc3RlcD86IE1heWJlPFNjYWxhcnNbJ0ludCddPjtcbiAgdHlwZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHVpPzogTWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbn07XG5cbmV4cG9ydCB0eXBlIERlbGV0ZUFzc2V0SW5wdXQgPSB7XG4gIGFzc2V0SWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGRlbGV0ZUZyb21BbGxDaGFubmVscz86IElucHV0TWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbiAgZm9yY2U/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG59O1xuXG5leHBvcnQgdHlwZSBEZWxldGVBc3NldHNJbnB1dCA9IHtcbiAgYXNzZXRJZHM6IEFycmF5PFNjYWxhcnNbJ0lEJ10+O1xuICBkZWxldGVGcm9tQWxsQ2hhbm5lbHM/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIGZvcmNlPzogSW5wdXRNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xufTtcblxuZXhwb3J0IHR5cGUgRGVsZXRpb25SZXNwb25zZSA9IHtcbiAgX190eXBlbmFtZT86ICdEZWxldGlvblJlc3BvbnNlJztcbiAgbWVzc2FnZT86IE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgcmVzdWx0OiBEZWxldGlvblJlc3VsdDtcbn07XG5cbmV4cG9ydCBlbnVtIERlbGV0aW9uUmVzdWx0IHtcbiAgLyoqIFRoZSBlbnRpdHkgd2FzIHN1Y2Nlc3NmdWxseSBkZWxldGVkICovXG4gIERFTEVURUQgPSAnREVMRVRFRCcsXG4gIC8qKiBEZWxldGlvbiBkaWQgbm90IHRha2UgcGxhY2UsIHJlYXNvbiBnaXZlbiBpbiBtZXNzYWdlICovXG4gIE5PVF9ERUxFVEVEID0gJ05PVF9ERUxFVEVEJ1xufVxuXG5leHBvcnQgdHlwZSBEaXNjb3VudCA9IHtcbiAgX190eXBlbmFtZT86ICdEaXNjb3VudCc7XG4gIGFkanVzdG1lbnRTb3VyY2U6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBhbW91bnQ6IFNjYWxhcnNbJ0ludCddO1xuICBhbW91bnRXaXRoVGF4OiBTY2FsYXJzWydJbnQnXTtcbiAgZGVzY3JpcHRpb246IFNjYWxhcnNbJ1N0cmluZyddO1xuICB0eXBlOiBBZGp1c3RtZW50VHlwZTtcbn07XG5cbi8qKiBSZXR1cm5lZCB3aGVuIGF0dGVtcHRpbmcgdG8gY3JlYXRlIGEgQ3VzdG9tZXIgd2l0aCBhbiBlbWFpbCBhZGRyZXNzIGFscmVhZHkgcmVnaXN0ZXJlZCB0byBhbiBleGlzdGluZyBVc2VyLiAqL1xuZXhwb3J0IHR5cGUgRW1haWxBZGRyZXNzQ29uZmxpY3RFcnJvciA9IEVycm9yUmVzdWx0ICYge1xuICBfX3R5cGVuYW1lPzogJ0VtYWlsQWRkcmVzc0NvbmZsaWN0RXJyb3InO1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG4vKiogUmV0dXJuZWQgaWYgbm8gT3JkZXJMaW5lcyBoYXZlIGJlZW4gc3BlY2lmaWVkIGZvciB0aGUgb3BlcmF0aW9uICovXG5leHBvcnQgdHlwZSBFbXB0eU9yZGVyTGluZVNlbGVjdGlvbkVycm9yID0gRXJyb3JSZXN1bHQgJiB7XG4gIF9fdHlwZW5hbWU/OiAnRW1wdHlPcmRlckxpbmVTZWxlY3Rpb25FcnJvcic7XG4gIGVycm9yQ29kZTogRXJyb3JDb2RlO1xuICBtZXNzYWdlOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbmV4cG9ydCBlbnVtIEVycm9yQ29kZSB7XG4gIEFMUkVBRFlfUkVGVU5ERURfRVJST1IgPSAnQUxSRUFEWV9SRUZVTkRFRF9FUlJPUicsXG4gIENBTkNFTF9BQ1RJVkVfT1JERVJfRVJST1IgPSAnQ0FOQ0VMX0FDVElWRV9PUkRFUl9FUlJPUicsXG4gIENIQU5ORUxfREVGQVVMVF9MQU5HVUFHRV9FUlJPUiA9ICdDSEFOTkVMX0RFRkFVTFRfTEFOR1VBR0VfRVJST1InLFxuICBDT1VQT05fQ09ERV9FWFBJUkVEX0VSUk9SID0gJ0NPVVBPTl9DT0RFX0VYUElSRURfRVJST1InLFxuICBDT1VQT05fQ09ERV9JTlZBTElEX0VSUk9SID0gJ0NPVVBPTl9DT0RFX0lOVkFMSURfRVJST1InLFxuICBDT1VQT05fQ09ERV9MSU1JVF9FUlJPUiA9ICdDT1VQT05fQ09ERV9MSU1JVF9FUlJPUicsXG4gIENSRUFURV9GVUxGSUxMTUVOVF9FUlJPUiA9ICdDUkVBVEVfRlVMRklMTE1FTlRfRVJST1InLFxuICBFTUFJTF9BRERSRVNTX0NPTkZMSUNUX0VSUk9SID0gJ0VNQUlMX0FERFJFU1NfQ09ORkxJQ1RfRVJST1InLFxuICBFTVBUWV9PUkRFUl9MSU5FX1NFTEVDVElPTl9FUlJPUiA9ICdFTVBUWV9PUkRFUl9MSU5FX1NFTEVDVElPTl9FUlJPUicsXG4gIEZVTEZJTExNRU5UX1NUQVRFX1RSQU5TSVRJT05fRVJST1IgPSAnRlVMRklMTE1FTlRfU1RBVEVfVFJBTlNJVElPTl9FUlJPUicsXG4gIElOU1VGRklDSUVOVF9TVE9DS19FUlJPUiA9ICdJTlNVRkZJQ0lFTlRfU1RPQ0tfRVJST1InLFxuICBJTlNVRkZJQ0lFTlRfU1RPQ0tfT05fSEFORF9FUlJPUiA9ICdJTlNVRkZJQ0lFTlRfU1RPQ0tfT05fSEFORF9FUlJPUicsXG4gIElOVkFMSURfQ1JFREVOVElBTFNfRVJST1IgPSAnSU5WQUxJRF9DUkVERU5USUFMU19FUlJPUicsXG4gIElOVkFMSURfRlVMRklMTE1FTlRfSEFORExFUl9FUlJPUiA9ICdJTlZBTElEX0ZVTEZJTExNRU5UX0hBTkRMRVJfRVJST1InLFxuICBJVEVNU19BTFJFQURZX0ZVTEZJTExFRF9FUlJPUiA9ICdJVEVNU19BTFJFQURZX0ZVTEZJTExFRF9FUlJPUicsXG4gIExBTkdVQUdFX05PVF9BVkFJTEFCTEVfRVJST1IgPSAnTEFOR1VBR0VfTk9UX0FWQUlMQUJMRV9FUlJPUicsXG4gIE1BTlVBTF9QQVlNRU5UX1NUQVRFX0VSUk9SID0gJ01BTlVBTF9QQVlNRU5UX1NUQVRFX0VSUk9SJyxcbiAgTUlNRV9UWVBFX0VSUk9SID0gJ01JTUVfVFlQRV9FUlJPUicsXG4gIE1JU1NJTkdfQ09ORElUSU9OU19FUlJPUiA9ICdNSVNTSU5HX0NPTkRJVElPTlNfRVJST1InLFxuICBNVUxUSVBMRV9PUkRFUl9FUlJPUiA9ICdNVUxUSVBMRV9PUkRFUl9FUlJPUicsXG4gIE5BVElWRV9BVVRIX1NUUkFURUdZX0VSUk9SID0gJ05BVElWRV9BVVRIX1NUUkFURUdZX0VSUk9SJyxcbiAgTkVHQVRJVkVfUVVBTlRJVFlfRVJST1IgPSAnTkVHQVRJVkVfUVVBTlRJVFlfRVJST1InLFxuICBOT1RISU5HX1RPX1JFRlVORF9FUlJPUiA9ICdOT1RISU5HX1RPX1JFRlVORF9FUlJPUicsXG4gIE5PX0NIQU5HRVNfU1BFQ0lGSUVEX0VSUk9SID0gJ05PX0NIQU5HRVNfU1BFQ0lGSUVEX0VSUk9SJyxcbiAgT1JERVJfTElNSVRfRVJST1IgPSAnT1JERVJfTElNSVRfRVJST1InLFxuICBPUkRFUl9NT0RJRklDQVRJT05fU1RBVEVfRVJST1IgPSAnT1JERVJfTU9ESUZJQ0FUSU9OX1NUQVRFX0VSUk9SJyxcbiAgT1JERVJfU1RBVEVfVFJBTlNJVElPTl9FUlJPUiA9ICdPUkRFUl9TVEFURV9UUkFOU0lUSU9OX0VSUk9SJyxcbiAgUEFZTUVOVF9NRVRIT0RfTUlTU0lOR19FUlJPUiA9ICdQQVlNRU5UX01FVEhPRF9NSVNTSU5HX0VSUk9SJyxcbiAgUEFZTUVOVF9PUkRFUl9NSVNNQVRDSF9FUlJPUiA9ICdQQVlNRU5UX09SREVSX01JU01BVENIX0VSUk9SJyxcbiAgUEFZTUVOVF9TVEFURV9UUkFOU0lUSU9OX0VSUk9SID0gJ1BBWU1FTlRfU1RBVEVfVFJBTlNJVElPTl9FUlJPUicsXG4gIFBST0RVQ1RfT1BUSU9OX0lOX1VTRV9FUlJPUiA9ICdQUk9EVUNUX09QVElPTl9JTl9VU0VfRVJST1InLFxuICBRVUFOVElUWV9UT09fR1JFQVRfRVJST1IgPSAnUVVBTlRJVFlfVE9PX0dSRUFUX0VSUk9SJyxcbiAgUkVGVU5EX09SREVSX1NUQVRFX0VSUk9SID0gJ1JFRlVORF9PUkRFUl9TVEFURV9FUlJPUicsXG4gIFJFRlVORF9QQVlNRU5UX0lEX01JU1NJTkdfRVJST1IgPSAnUkVGVU5EX1BBWU1FTlRfSURfTUlTU0lOR19FUlJPUicsXG4gIFJFRlVORF9TVEFURV9UUkFOU0lUSU9OX0VSUk9SID0gJ1JFRlVORF9TVEFURV9UUkFOU0lUSU9OX0VSUk9SJyxcbiAgU0VUVExFX1BBWU1FTlRfRVJST1IgPSAnU0VUVExFX1BBWU1FTlRfRVJST1InLFxuICBVTktOT1dOX0VSUk9SID0gJ1VOS05PV05fRVJST1InXG59XG5cbmV4cG9ydCB0eXBlIEVycm9yUmVzdWx0ID0ge1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG5leHBvcnQgdHlwZSBGYWNldCA9IE5vZGUgJiB7XG4gIF9fdHlwZW5hbWU/OiAnRmFjZXQnO1xuICBjb2RlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgY3JlYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICBjdXN0b21GaWVsZHM/OiBNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgaXNQcml2YXRlOiBTY2FsYXJzWydCb29sZWFuJ107XG4gIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlO1xuICBuYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgdHJhbnNsYXRpb25zOiBBcnJheTxGYWNldFRyYW5zbGF0aW9uPjtcbiAgdXBkYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICB2YWx1ZXM6IEFycmF5PEZhY2V0VmFsdWU+O1xufTtcblxuZXhwb3J0IHR5cGUgRmFjZXRGaWx0ZXJQYXJhbWV0ZXIgPSB7XG4gIGNvZGU/OiBJbnB1dE1heWJlPFN0cmluZ09wZXJhdG9ycz47XG4gIGNyZWF0ZWRBdD86IElucHV0TWF5YmU8RGF0ZU9wZXJhdG9ycz47XG4gIGlkPzogSW5wdXRNYXliZTxJZE9wZXJhdG9ycz47XG4gIGlzUHJpdmF0ZT86IElucHV0TWF5YmU8Qm9vbGVhbk9wZXJhdG9ycz47XG4gIGxhbmd1YWdlQ29kZT86IElucHV0TWF5YmU8U3RyaW5nT3BlcmF0b3JzPjtcbiAgbmFtZT86IElucHV0TWF5YmU8U3RyaW5nT3BlcmF0b3JzPjtcbiAgdXBkYXRlZEF0PzogSW5wdXRNYXliZTxEYXRlT3BlcmF0b3JzPjtcbn07XG5cbmV4cG9ydCB0eXBlIEZhY2V0TGlzdCA9IFBhZ2luYXRlZExpc3QgJiB7XG4gIF9fdHlwZW5hbWU/OiAnRmFjZXRMaXN0JztcbiAgaXRlbXM6IEFycmF5PEZhY2V0PjtcbiAgdG90YWxJdGVtczogU2NhbGFyc1snSW50J107XG59O1xuXG5leHBvcnQgdHlwZSBGYWNldExpc3RPcHRpb25zID0ge1xuICAvKiogQWxsb3dzIHRoZSByZXN1bHRzIHRvIGJlIGZpbHRlcmVkICovXG4gIGZpbHRlcj86IElucHV0TWF5YmU8RmFjZXRGaWx0ZXJQYXJhbWV0ZXI+O1xuICAvKiogU3BlY2lmaWVzIHdoZXRoZXIgbXVsdGlwbGUgXCJmaWx0ZXJcIiBhcmd1bWVudHMgc2hvdWxkIGJlIGNvbWJpbmVzIHdpdGggYSBsb2dpY2FsIEFORCBvciBPUiBvcGVyYXRpb24uIERlZmF1bHRzIHRvIEFORC4gKi9cbiAgZmlsdGVyT3BlcmF0b3I/OiBJbnB1dE1heWJlPExvZ2ljYWxPcGVyYXRvcj47XG4gIC8qKiBTa2lwcyB0aGUgZmlyc3QgbiByZXN1bHRzLCBmb3IgdXNlIGluIHBhZ2luYXRpb24gKi9cbiAgc2tpcD86IElucHV0TWF5YmU8U2NhbGFyc1snSW50J10+O1xuICAvKiogU3BlY2lmaWVzIHdoaWNoIHByb3BlcnRpZXMgdG8gc29ydCB0aGUgcmVzdWx0cyBieSAqL1xuICBzb3J0PzogSW5wdXRNYXliZTxGYWNldFNvcnRQYXJhbWV0ZXI+O1xuICAvKiogVGFrZXMgbiByZXN1bHRzLCBmb3IgdXNlIGluIHBhZ2luYXRpb24gKi9cbiAgdGFrZT86IElucHV0TWF5YmU8U2NhbGFyc1snSW50J10+O1xufTtcblxuZXhwb3J0IHR5cGUgRmFjZXRTb3J0UGFyYW1ldGVyID0ge1xuICBjb2RlPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBjcmVhdGVkQXQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIGlkPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBuYW1lPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICB1cGRhdGVkQXQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG59O1xuXG5leHBvcnQgdHlwZSBGYWNldFRyYW5zbGF0aW9uID0ge1xuICBfX3R5cGVuYW1lPzogJ0ZhY2V0VHJhbnNsYXRpb24nO1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZTtcbiAgbmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHVwZGF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbn07XG5cbmV4cG9ydCB0eXBlIEZhY2V0VHJhbnNsYXRpb25JbnB1dCA9IHtcbiAgY3VzdG9tRmllbGRzPzogSW5wdXRNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBpZD86IElucHV0TWF5YmU8U2NhbGFyc1snSUQnXT47XG4gIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlO1xuICBuYW1lPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG59O1xuXG5leHBvcnQgdHlwZSBGYWNldFZhbHVlID0gTm9kZSAmIHtcbiAgX190eXBlbmFtZT86ICdGYWNldFZhbHVlJztcbiAgY29kZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIGNyZWF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgY3VzdG9tRmllbGRzPzogTWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZmFjZXQ6IEZhY2V0O1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGU7XG4gIG5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB0cmFuc2xhdGlvbnM6IEFycmF5PEZhY2V0VmFsdWVUcmFuc2xhdGlvbj47XG4gIHVwZGF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbn07XG5cbi8qKlxuICogVXNlZCB0byBjb25zdHJ1Y3QgYm9vbGVhbiBleHByZXNzaW9ucyBmb3IgZmlsdGVyaW5nIHNlYXJjaCByZXN1bHRzXG4gKiBieSBGYWNldFZhbHVlIElELiBFeGFtcGxlczpcbiAqXG4gKiAqIElEPTEgT1IgSUQ9MjogYHsgZmFjZXRWYWx1ZUZpbHRlcnM6IFt7IG9yOiBbMSwyXSB9XSB9YFxuICogKiBJRD0xIEFORCBJRD0yOiBgeyBmYWNldFZhbHVlRmlsdGVyczogW3sgYW5kOiAxIH0sIHsgYW5kOiAyIH1dIH1gXG4gKiAqIElEPTEgQU5EIChJRD0yIE9SIElEPTMpOiBgeyBmYWNldFZhbHVlRmlsdGVyczogW3sgYW5kOiAxIH0sIHsgb3I6IFsyLDNdIH1dIH1gXG4gKi9cbmV4cG9ydCB0eXBlIEZhY2V0VmFsdWVGaWx0ZXJJbnB1dCA9IHtcbiAgYW5kPzogSW5wdXRNYXliZTxTY2FsYXJzWydJRCddPjtcbiAgb3I/OiBJbnB1dE1heWJlPEFycmF5PFNjYWxhcnNbJ0lEJ10+Pjtcbn07XG5cbi8qKlxuICogV2hpY2ggRmFjZXRWYWx1ZXMgYXJlIHByZXNlbnQgaW4gdGhlIHByb2R1Y3RzIHJldHVybmVkXG4gKiBieSB0aGUgc2VhcmNoLCBhbmQgaW4gd2hhdCBxdWFudGl0eS5cbiAqL1xuZXhwb3J0IHR5cGUgRmFjZXRWYWx1ZVJlc3VsdCA9IHtcbiAgX190eXBlbmFtZT86ICdGYWNldFZhbHVlUmVzdWx0JztcbiAgY291bnQ6IFNjYWxhcnNbJ0ludCddO1xuICBmYWNldFZhbHVlOiBGYWNldFZhbHVlO1xufTtcblxuZXhwb3J0IHR5cGUgRmFjZXRWYWx1ZVRyYW5zbGF0aW9uID0ge1xuICBfX3R5cGVuYW1lPzogJ0ZhY2V0VmFsdWVUcmFuc2xhdGlvbic7XG4gIGNyZWF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlO1xuICBuYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgdXBkYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xufTtcblxuZXhwb3J0IHR5cGUgRmFjZXRWYWx1ZVRyYW5zbGF0aW9uSW5wdXQgPSB7XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgaWQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0lEJ10+O1xuICBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZTtcbiAgbmFtZT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xufTtcblxuZXhwb3J0IHR5cGUgRmxvYXRDdXN0b21GaWVsZENvbmZpZyA9IEN1c3RvbUZpZWxkICYge1xuICBfX3R5cGVuYW1lPzogJ0Zsb2F0Q3VzdG9tRmllbGRDb25maWcnO1xuICBkZXNjcmlwdGlvbj86IE1heWJlPEFycmF5PExvY2FsaXplZFN0cmluZz4+O1xuICBpbnRlcm5hbD86IE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIGxhYmVsPzogTWF5YmU8QXJyYXk8TG9jYWxpemVkU3RyaW5nPj47XG4gIGxpc3Q6IFNjYWxhcnNbJ0Jvb2xlYW4nXTtcbiAgbWF4PzogTWF5YmU8U2NhbGFyc1snRmxvYXQnXT47XG4gIG1pbj86IE1heWJlPFNjYWxhcnNbJ0Zsb2F0J10+O1xuICBuYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgbnVsbGFibGU/OiBNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICByZWFkb25seT86IE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIHN0ZXA/OiBNYXliZTxTY2FsYXJzWydGbG9hdCddPjtcbiAgdHlwZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHVpPzogTWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbn07XG5cbmV4cG9ydCB0eXBlIEZ1bGZpbGxPcmRlcklucHV0ID0ge1xuICBoYW5kbGVyOiBDb25maWd1cmFibGVPcGVyYXRpb25JbnB1dDtcbiAgbGluZXM6IEFycmF5PE9yZGVyTGluZUlucHV0Pjtcbn07XG5cbmV4cG9ydCB0eXBlIEZ1bGZpbGxtZW50ID0gTm9kZSAmIHtcbiAgX190eXBlbmFtZT86ICdGdWxmaWxsbWVudCc7XG4gIGNyZWF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgY3VzdG9tRmllbGRzPzogTWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIG1ldGhvZDogU2NhbGFyc1snU3RyaW5nJ107XG4gIG5leHRTdGF0ZXM6IEFycmF5PFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgb3JkZXJJdGVtczogQXJyYXk8T3JkZXJJdGVtPjtcbiAgc3RhdGU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB0cmFja2luZ0NvZGU/OiBNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHVwZGF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbn07XG5cbi8qKiBSZXR1cm5lZCB3aGVuIHRoZXJlIGlzIGFuIGVycm9yIGluIHRyYW5zaXRpb25pbmcgdGhlIEZ1bGZpbGxtZW50IHN0YXRlICovXG5leHBvcnQgdHlwZSBGdWxmaWxsbWVudFN0YXRlVHJhbnNpdGlvbkVycm9yID0gRXJyb3JSZXN1bHQgJiB7XG4gIF9fdHlwZW5hbWU/OiAnRnVsZmlsbG1lbnRTdGF0ZVRyYW5zaXRpb25FcnJvcic7XG4gIGVycm9yQ29kZTogRXJyb3JDb2RlO1xuICBmcm9tU3RhdGU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBtZXNzYWdlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgdG9TdGF0ZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHRyYW5zaXRpb25FcnJvcjogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG5leHBvcnQgZW51bSBHbG9iYWxGbGFnIHtcbiAgRkFMU0UgPSAnRkFMU0UnLFxuICBJTkhFUklUID0gJ0lOSEVSSVQnLFxuICBUUlVFID0gJ1RSVUUnXG59XG5cbmV4cG9ydCB0eXBlIEdsb2JhbFNldHRpbmdzID0ge1xuICBfX3R5cGVuYW1lPzogJ0dsb2JhbFNldHRpbmdzJztcbiAgYXZhaWxhYmxlTGFuZ3VhZ2VzOiBBcnJheTxMYW5ndWFnZUNvZGU+O1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGN1c3RvbUZpZWxkcz86IE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBvdXRPZlN0b2NrVGhyZXNob2xkOiBTY2FsYXJzWydJbnQnXTtcbiAgc2VydmVyQ29uZmlnOiBTZXJ2ZXJDb25maWc7XG4gIHRyYWNrSW52ZW50b3J5OiBTY2FsYXJzWydCb29sZWFuJ107XG4gIHVwZGF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbn07XG5cbmV4cG9ydCB0eXBlIEhpc3RvcnlFbnRyeSA9IE5vZGUgJiB7XG4gIF9fdHlwZW5hbWU/OiAnSGlzdG9yeUVudHJ5JztcbiAgYWRtaW5pc3RyYXRvcj86IE1heWJlPEFkbWluaXN0cmF0b3I+O1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGRhdGE6IFNjYWxhcnNbJ0pTT04nXTtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGlzUHVibGljOiBTY2FsYXJzWydCb29sZWFuJ107XG4gIHR5cGU6IEhpc3RvcnlFbnRyeVR5cGU7XG4gIHVwZGF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbn07XG5cbmV4cG9ydCB0eXBlIEhpc3RvcnlFbnRyeUZpbHRlclBhcmFtZXRlciA9IHtcbiAgY3JlYXRlZEF0PzogSW5wdXRNYXliZTxEYXRlT3BlcmF0b3JzPjtcbiAgaWQ/OiBJbnB1dE1heWJlPElkT3BlcmF0b3JzPjtcbiAgaXNQdWJsaWM/OiBJbnB1dE1heWJlPEJvb2xlYW5PcGVyYXRvcnM+O1xuICB0eXBlPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICB1cGRhdGVkQXQ/OiBJbnB1dE1heWJlPERhdGVPcGVyYXRvcnM+O1xufTtcblxuZXhwb3J0IHR5cGUgSGlzdG9yeUVudHJ5TGlzdCA9IFBhZ2luYXRlZExpc3QgJiB7XG4gIF9fdHlwZW5hbWU/OiAnSGlzdG9yeUVudHJ5TGlzdCc7XG4gIGl0ZW1zOiBBcnJheTxIaXN0b3J5RW50cnk+O1xuICB0b3RhbEl0ZW1zOiBTY2FsYXJzWydJbnQnXTtcbn07XG5cbmV4cG9ydCB0eXBlIEhpc3RvcnlFbnRyeUxpc3RPcHRpb25zID0ge1xuICAvKiogQWxsb3dzIHRoZSByZXN1bHRzIHRvIGJlIGZpbHRlcmVkICovXG4gIGZpbHRlcj86IElucHV0TWF5YmU8SGlzdG9yeUVudHJ5RmlsdGVyUGFyYW1ldGVyPjtcbiAgLyoqIFNwZWNpZmllcyB3aGV0aGVyIG11bHRpcGxlIFwiZmlsdGVyXCIgYXJndW1lbnRzIHNob3VsZCBiZSBjb21iaW5lcyB3aXRoIGEgbG9naWNhbCBBTkQgb3IgT1Igb3BlcmF0aW9uLiBEZWZhdWx0cyB0byBBTkQuICovXG4gIGZpbHRlck9wZXJhdG9yPzogSW5wdXRNYXliZTxMb2dpY2FsT3BlcmF0b3I+O1xuICAvKiogU2tpcHMgdGhlIGZpcnN0IG4gcmVzdWx0cywgZm9yIHVzZSBpbiBwYWdpbmF0aW9uICovXG4gIHNraXA/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0ludCddPjtcbiAgLyoqIFNwZWNpZmllcyB3aGljaCBwcm9wZXJ0aWVzIHRvIHNvcnQgdGhlIHJlc3VsdHMgYnkgKi9cbiAgc29ydD86IElucHV0TWF5YmU8SGlzdG9yeUVudHJ5U29ydFBhcmFtZXRlcj47XG4gIC8qKiBUYWtlcyBuIHJlc3VsdHMsIGZvciB1c2UgaW4gcGFnaW5hdGlvbiAqL1xuICB0YWtlPzogSW5wdXRNYXliZTxTY2FsYXJzWydJbnQnXT47XG59O1xuXG5leHBvcnQgdHlwZSBIaXN0b3J5RW50cnlTb3J0UGFyYW1ldGVyID0ge1xuICBjcmVhdGVkQXQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIGlkPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICB1cGRhdGVkQXQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG59O1xuXG5leHBvcnQgZW51bSBIaXN0b3J5RW50cnlUeXBlIHtcbiAgQ1VTVE9NRVJfQURERURfVE9fR1JPVVAgPSAnQ1VTVE9NRVJfQURERURfVE9fR1JPVVAnLFxuICBDVVNUT01FUl9BRERSRVNTX0NSRUFURUQgPSAnQ1VTVE9NRVJfQUREUkVTU19DUkVBVEVEJyxcbiAgQ1VTVE9NRVJfQUREUkVTU19ERUxFVEVEID0gJ0NVU1RPTUVSX0FERFJFU1NfREVMRVRFRCcsXG4gIENVU1RPTUVSX0FERFJFU1NfVVBEQVRFRCA9ICdDVVNUT01FUl9BRERSRVNTX1VQREFURUQnLFxuICBDVVNUT01FUl9ERVRBSUxfVVBEQVRFRCA9ICdDVVNUT01FUl9ERVRBSUxfVVBEQVRFRCcsXG4gIENVU1RPTUVSX0VNQUlMX1VQREFURV9SRVFVRVNURUQgPSAnQ1VTVE9NRVJfRU1BSUxfVVBEQVRFX1JFUVVFU1RFRCcsXG4gIENVU1RPTUVSX0VNQUlMX1VQREFURV9WRVJJRklFRCA9ICdDVVNUT01FUl9FTUFJTF9VUERBVEVfVkVSSUZJRUQnLFxuICBDVVNUT01FUl9OT1RFID0gJ0NVU1RPTUVSX05PVEUnLFxuICBDVVNUT01FUl9QQVNTV09SRF9SRVNFVF9SRVFVRVNURUQgPSAnQ1VTVE9NRVJfUEFTU1dPUkRfUkVTRVRfUkVRVUVTVEVEJyxcbiAgQ1VTVE9NRVJfUEFTU1dPUkRfUkVTRVRfVkVSSUZJRUQgPSAnQ1VTVE9NRVJfUEFTU1dPUkRfUkVTRVRfVkVSSUZJRUQnLFxuICBDVVNUT01FUl9QQVNTV09SRF9VUERBVEVEID0gJ0NVU1RPTUVSX1BBU1NXT1JEX1VQREFURUQnLFxuICBDVVNUT01FUl9SRUdJU1RFUkVEID0gJ0NVU1RPTUVSX1JFR0lTVEVSRUQnLFxuICBDVVNUT01FUl9SRU1PVkVEX0ZST01fR1JPVVAgPSAnQ1VTVE9NRVJfUkVNT1ZFRF9GUk9NX0dST1VQJyxcbiAgQ1VTVE9NRVJfVkVSSUZJRUQgPSAnQ1VTVE9NRVJfVkVSSUZJRUQnLFxuICBPUkRFUl9DQU5DRUxMQVRJT04gPSAnT1JERVJfQ0FOQ0VMTEFUSU9OJyxcbiAgT1JERVJfQ09VUE9OX0FQUExJRUQgPSAnT1JERVJfQ09VUE9OX0FQUExJRUQnLFxuICBPUkRFUl9DT1VQT05fUkVNT1ZFRCA9ICdPUkRFUl9DT1VQT05fUkVNT1ZFRCcsXG4gIE9SREVSX0ZVTEZJTExNRU5UID0gJ09SREVSX0ZVTEZJTExNRU5UJyxcbiAgT1JERVJfRlVMRklMTE1FTlRfVFJBTlNJVElPTiA9ICdPUkRFUl9GVUxGSUxMTUVOVF9UUkFOU0lUSU9OJyxcbiAgT1JERVJfTU9ESUZJRUQgPSAnT1JERVJfTU9ESUZJRUQnLFxuICBPUkRFUl9OT1RFID0gJ09SREVSX05PVEUnLFxuICBPUkRFUl9QQVlNRU5UX1RSQU5TSVRJT04gPSAnT1JERVJfUEFZTUVOVF9UUkFOU0lUSU9OJyxcbiAgT1JERVJfUkVGVU5EX1RSQU5TSVRJT04gPSAnT1JERVJfUkVGVU5EX1RSQU5TSVRJT04nLFxuICBPUkRFUl9TVEFURV9UUkFOU0lUSU9OID0gJ09SREVSX1NUQVRFX1RSQU5TSVRJT04nXG59XG5cbi8qKiBPcGVyYXRvcnMgZm9yIGZpbHRlcmluZyBvbiBhIGxpc3Qgb2YgSUQgZmllbGRzICovXG5leHBvcnQgdHlwZSBJZExpc3RPcGVyYXRvcnMgPSB7XG4gIGluTGlzdDogU2NhbGFyc1snSUQnXTtcbn07XG5cbi8qKiBPcGVyYXRvcnMgZm9yIGZpbHRlcmluZyBvbiBhbiBJRCBmaWVsZCAqL1xuZXhwb3J0IHR5cGUgSWRPcGVyYXRvcnMgPSB7XG4gIGVxPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIGluPzogSW5wdXRNYXliZTxBcnJheTxTY2FsYXJzWydTdHJpbmcnXT4+O1xuICBub3RFcT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBub3RJbj86IElucHV0TWF5YmU8QXJyYXk8U2NhbGFyc1snU3RyaW5nJ10+Pjtcbn07XG5cbmV4cG9ydCB0eXBlIEltcG9ydEluZm8gPSB7XG4gIF9fdHlwZW5hbWU/OiAnSW1wb3J0SW5mbyc7XG4gIGVycm9ycz86IE1heWJlPEFycmF5PFNjYWxhcnNbJ1N0cmluZyddPj47XG4gIGltcG9ydGVkOiBTY2FsYXJzWydJbnQnXTtcbiAgcHJvY2Vzc2VkOiBTY2FsYXJzWydJbnQnXTtcbn07XG5cbi8qKiBSZXR1cm5lZCB3aGVuIGF0dGVtcHRpbmcgdG8gYWRkIG1vcmUgaXRlbXMgdG8gdGhlIE9yZGVyIHRoYW4gYXJlIGF2YWlsYWJsZSAqL1xuZXhwb3J0IHR5cGUgSW5zdWZmaWNpZW50U3RvY2tFcnJvciA9IEVycm9yUmVzdWx0ICYge1xuICBfX3R5cGVuYW1lPzogJ0luc3VmZmljaWVudFN0b2NrRXJyb3InO1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIG9yZGVyOiBPcmRlcjtcbiAgcXVhbnRpdHlBdmFpbGFibGU6IFNjYWxhcnNbJ0ludCddO1xufTtcblxuLyoqXG4gKiBSZXR1cm5lZCBpZiBhdHRlbXB0aW5nIHRvIGNyZWF0ZSBhIEZ1bGZpbGxtZW50IHdoZW4gdGhlcmUgaXMgaW5zdWZmaWNpZW50XG4gKiBzdG9ja09uSGFuZCBvZiBhIFByb2R1Y3RWYXJpYW50IHRvIHNhdGlzZnkgdGhlIHJlcXVlc3RlZCBxdWFudGl0eS5cbiAqL1xuZXhwb3J0IHR5cGUgSW5zdWZmaWNpZW50U3RvY2tPbkhhbmRFcnJvciA9IEVycm9yUmVzdWx0ICYge1xuICBfX3R5cGVuYW1lPzogJ0luc3VmZmljaWVudFN0b2NrT25IYW5kRXJyb3InO1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHByb2R1Y3RWYXJpYW50SWQ6IFNjYWxhcnNbJ0lEJ107XG4gIHByb2R1Y3RWYXJpYW50TmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHN0b2NrT25IYW5kOiBTY2FsYXJzWydJbnQnXTtcbn07XG5cbmV4cG9ydCB0eXBlIEludEN1c3RvbUZpZWxkQ29uZmlnID0gQ3VzdG9tRmllbGQgJiB7XG4gIF9fdHlwZW5hbWU/OiAnSW50Q3VzdG9tRmllbGRDb25maWcnO1xuICBkZXNjcmlwdGlvbj86IE1heWJlPEFycmF5PExvY2FsaXplZFN0cmluZz4+O1xuICBpbnRlcm5hbD86IE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIGxhYmVsPzogTWF5YmU8QXJyYXk8TG9jYWxpemVkU3RyaW5nPj47XG4gIGxpc3Q6IFNjYWxhcnNbJ0Jvb2xlYW4nXTtcbiAgbWF4PzogTWF5YmU8U2NhbGFyc1snSW50J10+O1xuICBtaW4/OiBNYXliZTxTY2FsYXJzWydJbnQnXT47XG4gIG5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBudWxsYWJsZT86IE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIHJlYWRvbmx5PzogTWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbiAgc3RlcD86IE1heWJlPFNjYWxhcnNbJ0ludCddPjtcbiAgdHlwZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHVpPzogTWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbn07XG5cbi8qKiBSZXR1cm5lZCBpZiB0aGUgdXNlciBhdXRoZW50aWNhdGlvbiBjcmVkZW50aWFscyBhcmUgbm90IHZhbGlkICovXG5leHBvcnQgdHlwZSBJbnZhbGlkQ3JlZGVudGlhbHNFcnJvciA9IEVycm9yUmVzdWx0ICYge1xuICBfX3R5cGVuYW1lPzogJ0ludmFsaWRDcmVkZW50aWFsc0Vycm9yJztcbiAgYXV0aGVudGljYXRpb25FcnJvcjogU2NhbGFyc1snU3RyaW5nJ107XG4gIGVycm9yQ29kZTogRXJyb3JDb2RlO1xuICBtZXNzYWdlOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbi8qKiBSZXR1cm5lZCBpZiB0aGUgc3BlY2lmaWVkIEZ1bGZpbGxtZW50SGFuZGxlciBjb2RlIGlzIG5vdCB2YWxpZCAqL1xuZXhwb3J0IHR5cGUgSW52YWxpZEZ1bGZpbGxtZW50SGFuZGxlckVycm9yID0gRXJyb3JSZXN1bHQgJiB7XG4gIF9fdHlwZW5hbWU/OiAnSW52YWxpZEZ1bGZpbGxtZW50SGFuZGxlckVycm9yJztcbiAgZXJyb3JDb2RlOiBFcnJvckNvZGU7XG4gIG1lc3NhZ2U6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuLyoqIFJldHVybmVkIGlmIHRoZSBzcGVjaWZpZWQgaXRlbXMgYXJlIGFscmVhZHkgcGFydCBvZiBhIEZ1bGZpbGxtZW50ICovXG5leHBvcnQgdHlwZSBJdGVtc0FscmVhZHlGdWxmaWxsZWRFcnJvciA9IEVycm9yUmVzdWx0ICYge1xuICBfX3R5cGVuYW1lPzogJ0l0ZW1zQWxyZWFkeUZ1bGZpbGxlZEVycm9yJztcbiAgZXJyb3JDb2RlOiBFcnJvckNvZGU7XG4gIG1lc3NhZ2U6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuZXhwb3J0IHR5cGUgSm9iID0gTm9kZSAmIHtcbiAgX190eXBlbmFtZT86ICdKb2InO1xuICBhdHRlbXB0czogU2NhbGFyc1snSW50J107XG4gIGNyZWF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgZGF0YT86IE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGR1cmF0aW9uOiBTY2FsYXJzWydJbnQnXTtcbiAgZXJyb3I/OiBNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgaXNTZXR0bGVkOiBTY2FsYXJzWydCb29sZWFuJ107XG4gIHByb2dyZXNzOiBTY2FsYXJzWydGbG9hdCddO1xuICBxdWV1ZU5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICByZXN1bHQ/OiBNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICByZXRyaWVzOiBTY2FsYXJzWydJbnQnXTtcbiAgc2V0dGxlZEF0PzogTWF5YmU8U2NhbGFyc1snRGF0ZVRpbWUnXT47XG4gIHN0YXJ0ZWRBdD86IE1heWJlPFNjYWxhcnNbJ0RhdGVUaW1lJ10+O1xuICBzdGF0ZTogSm9iU3RhdGU7XG59O1xuXG5leHBvcnQgdHlwZSBKb2JCdWZmZXJTaXplID0ge1xuICBfX3R5cGVuYW1lPzogJ0pvYkJ1ZmZlclNpemUnO1xuICBidWZmZXJJZDogU2NhbGFyc1snU3RyaW5nJ107XG4gIHNpemU6IFNjYWxhcnNbJ0ludCddO1xufTtcblxuZXhwb3J0IHR5cGUgSm9iRmlsdGVyUGFyYW1ldGVyID0ge1xuICBhdHRlbXB0cz86IElucHV0TWF5YmU8TnVtYmVyT3BlcmF0b3JzPjtcbiAgY3JlYXRlZEF0PzogSW5wdXRNYXliZTxEYXRlT3BlcmF0b3JzPjtcbiAgZHVyYXRpb24/OiBJbnB1dE1heWJlPE51bWJlck9wZXJhdG9ycz47XG4gIGlkPzogSW5wdXRNYXliZTxJZE9wZXJhdG9ycz47XG4gIGlzU2V0dGxlZD86IElucHV0TWF5YmU8Qm9vbGVhbk9wZXJhdG9ycz47XG4gIHByb2dyZXNzPzogSW5wdXRNYXliZTxOdW1iZXJPcGVyYXRvcnM+O1xuICBxdWV1ZU5hbWU/OiBJbnB1dE1heWJlPFN0cmluZ09wZXJhdG9ycz47XG4gIHJldHJpZXM/OiBJbnB1dE1heWJlPE51bWJlck9wZXJhdG9ycz47XG4gIHNldHRsZWRBdD86IElucHV0TWF5YmU8RGF0ZU9wZXJhdG9ycz47XG4gIHN0YXJ0ZWRBdD86IElucHV0TWF5YmU8RGF0ZU9wZXJhdG9ycz47XG4gIHN0YXRlPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xufTtcblxuZXhwb3J0IHR5cGUgSm9iTGlzdCA9IFBhZ2luYXRlZExpc3QgJiB7XG4gIF9fdHlwZW5hbWU/OiAnSm9iTGlzdCc7XG4gIGl0ZW1zOiBBcnJheTxKb2I+O1xuICB0b3RhbEl0ZW1zOiBTY2FsYXJzWydJbnQnXTtcbn07XG5cbmV4cG9ydCB0eXBlIEpvYkxpc3RPcHRpb25zID0ge1xuICAvKiogQWxsb3dzIHRoZSByZXN1bHRzIHRvIGJlIGZpbHRlcmVkICovXG4gIGZpbHRlcj86IElucHV0TWF5YmU8Sm9iRmlsdGVyUGFyYW1ldGVyPjtcbiAgLyoqIFNwZWNpZmllcyB3aGV0aGVyIG11bHRpcGxlIFwiZmlsdGVyXCIgYXJndW1lbnRzIHNob3VsZCBiZSBjb21iaW5lcyB3aXRoIGEgbG9naWNhbCBBTkQgb3IgT1Igb3BlcmF0aW9uLiBEZWZhdWx0cyB0byBBTkQuICovXG4gIGZpbHRlck9wZXJhdG9yPzogSW5wdXRNYXliZTxMb2dpY2FsT3BlcmF0b3I+O1xuICAvKiogU2tpcHMgdGhlIGZpcnN0IG4gcmVzdWx0cywgZm9yIHVzZSBpbiBwYWdpbmF0aW9uICovXG4gIHNraXA/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0ludCddPjtcbiAgLyoqIFNwZWNpZmllcyB3aGljaCBwcm9wZXJ0aWVzIHRvIHNvcnQgdGhlIHJlc3VsdHMgYnkgKi9cbiAgc29ydD86IElucHV0TWF5YmU8Sm9iU29ydFBhcmFtZXRlcj47XG4gIC8qKiBUYWtlcyBuIHJlc3VsdHMsIGZvciB1c2UgaW4gcGFnaW5hdGlvbiAqL1xuICB0YWtlPzogSW5wdXRNYXliZTxTY2FsYXJzWydJbnQnXT47XG59O1xuXG5leHBvcnQgdHlwZSBKb2JRdWV1ZSA9IHtcbiAgX190eXBlbmFtZT86ICdKb2JRdWV1ZSc7XG4gIG5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBydW5uaW5nOiBTY2FsYXJzWydCb29sZWFuJ107XG59O1xuXG5leHBvcnQgdHlwZSBKb2JTb3J0UGFyYW1ldGVyID0ge1xuICBhdHRlbXB0cz86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgY3JlYXRlZEF0PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBkdXJhdGlvbj86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgaWQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIHByb2dyZXNzPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBxdWV1ZU5hbWU/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIHJldHJpZXM/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIHNldHRsZWRBdD86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgc3RhcnRlZEF0PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xufTtcblxuLyoqXG4gKiBAZGVzY3JpcHRpb25cbiAqIFRoZSBzdGF0ZSBvZiBhIEpvYiBpbiB0aGUgSm9iUXVldWVcbiAqXG4gKiBAZG9jc0NhdGVnb3J5IGNvbW1vblxuICovXG5leHBvcnQgZW51bSBKb2JTdGF0ZSB7XG4gIENBTkNFTExFRCA9ICdDQU5DRUxMRUQnLFxuICBDT01QTEVURUQgPSAnQ09NUExFVEVEJyxcbiAgRkFJTEVEID0gJ0ZBSUxFRCcsXG4gIFBFTkRJTkcgPSAnUEVORElORycsXG4gIFJFVFJZSU5HID0gJ1JFVFJZSU5HJyxcbiAgUlVOTklORyA9ICdSVU5OSU5HJ1xufVxuXG4vKipcbiAqIEBkZXNjcmlwdGlvblxuICogTGFuZ3VhZ2VzIGluIHRoZSBmb3JtIG9mIGEgSVNPIDYzOS0xIGxhbmd1YWdlIGNvZGUgd2l0aCBvcHRpb25hbFxuICogcmVnaW9uIG9yIHNjcmlwdCBtb2RpZmllciAoZS5nLiBkZV9BVCkuIFRoZSBzZWxlY3Rpb24gYXZhaWxhYmxlIGlzIGJhc2VkXG4gKiBvbiB0aGUgW1VuaWNvZGUgQ0xEUiBzdW1tYXJ5IGxpc3RdKGh0dHBzOi8vdW5pY29kZS1vcmcuZ2l0aHViLmlvL2NsZHItc3RhZ2luZy9jaGFydHMvMzcvc3VtbWFyeS9yb290Lmh0bWwpXG4gKiBhbmQgaW5jbHVkZXMgdGhlIG1ham9yIHNwb2tlbiBsYW5ndWFnZXMgb2YgdGhlIHdvcmxkIGFuZCBhbnkgd2lkZWx5LXVzZWQgdmFyaWFudHMuXG4gKlxuICogQGRvY3NDYXRlZ29yeSBjb21tb25cbiAqL1xuZXhwb3J0IGVudW0gTGFuZ3VhZ2VDb2RlIHtcbiAgLyoqIEFmcmlrYWFucyAqL1xuICBhZiA9ICdhZicsXG4gIC8qKiBBa2FuICovXG4gIGFrID0gJ2FrJyxcbiAgLyoqIEFtaGFyaWMgKi9cbiAgYW0gPSAnYW0nLFxuICAvKiogQXJhYmljICovXG4gIGFyID0gJ2FyJyxcbiAgLyoqIEFzc2FtZXNlICovXG4gIGFzID0gJ2FzJyxcbiAgLyoqIEF6ZXJiYWlqYW5pICovXG4gIGF6ID0gJ2F6JyxcbiAgLyoqIEJlbGFydXNpYW4gKi9cbiAgYmUgPSAnYmUnLFxuICAvKiogQnVsZ2FyaWFuICovXG4gIGJnID0gJ2JnJyxcbiAgLyoqIEJhbWJhcmEgKi9cbiAgYm0gPSAnYm0nLFxuICAvKiogQmFuZ2xhICovXG4gIGJuID0gJ2JuJyxcbiAgLyoqIFRpYmV0YW4gKi9cbiAgYm8gPSAnYm8nLFxuICAvKiogQnJldG9uICovXG4gIGJyID0gJ2JyJyxcbiAgLyoqIEJvc25pYW4gKi9cbiAgYnMgPSAnYnMnLFxuICAvKiogQ2F0YWxhbiAqL1xuICBjYSA9ICdjYScsXG4gIC8qKiBDaGVjaGVuICovXG4gIGNlID0gJ2NlJyxcbiAgLyoqIENvcnNpY2FuICovXG4gIGNvID0gJ2NvJyxcbiAgLyoqIEN6ZWNoICovXG4gIGNzID0gJ2NzJyxcbiAgLyoqIENodXJjaCBTbGF2aWMgKi9cbiAgY3UgPSAnY3UnLFxuICAvKiogV2Vsc2ggKi9cbiAgY3kgPSAnY3knLFxuICAvKiogRGFuaXNoICovXG4gIGRhID0gJ2RhJyxcbiAgLyoqIEdlcm1hbiAqL1xuICBkZSA9ICdkZScsXG4gIC8qKiBBdXN0cmlhbiBHZXJtYW4gKi9cbiAgZGVfQVQgPSAnZGVfQVQnLFxuICAvKiogU3dpc3MgSGlnaCBHZXJtYW4gKi9cbiAgZGVfQ0ggPSAnZGVfQ0gnLFxuICAvKiogRHpvbmdraGEgKi9cbiAgZHogPSAnZHonLFxuICAvKiogRXdlICovXG4gIGVlID0gJ2VlJyxcbiAgLyoqIEdyZWVrICovXG4gIGVsID0gJ2VsJyxcbiAgLyoqIEVuZ2xpc2ggKi9cbiAgZW4gPSAnZW4nLFxuICAvKiogQXVzdHJhbGlhbiBFbmdsaXNoICovXG4gIGVuX0FVID0gJ2VuX0FVJyxcbiAgLyoqIENhbmFkaWFuIEVuZ2xpc2ggKi9cbiAgZW5fQ0EgPSAnZW5fQ0EnLFxuICAvKiogQnJpdGlzaCBFbmdsaXNoICovXG4gIGVuX0dCID0gJ2VuX0dCJyxcbiAgLyoqIEFtZXJpY2FuIEVuZ2xpc2ggKi9cbiAgZW5fVVMgPSAnZW5fVVMnLFxuICAvKiogRXNwZXJhbnRvICovXG4gIGVvID0gJ2VvJyxcbiAgLyoqIFNwYW5pc2ggKi9cbiAgZXMgPSAnZXMnLFxuICAvKiogRXVyb3BlYW4gU3BhbmlzaCAqL1xuICBlc19FUyA9ICdlc19FUycsXG4gIC8qKiBNZXhpY2FuIFNwYW5pc2ggKi9cbiAgZXNfTVggPSAnZXNfTVgnLFxuICAvKiogRXN0b25pYW4gKi9cbiAgZXQgPSAnZXQnLFxuICAvKiogQmFzcXVlICovXG4gIGV1ID0gJ2V1JyxcbiAgLyoqIFBlcnNpYW4gKi9cbiAgZmEgPSAnZmEnLFxuICAvKiogRGFyaSAqL1xuICBmYV9BRiA9ICdmYV9BRicsXG4gIC8qKiBGdWxhaCAqL1xuICBmZiA9ICdmZicsXG4gIC8qKiBGaW5uaXNoICovXG4gIGZpID0gJ2ZpJyxcbiAgLyoqIEZhcm9lc2UgKi9cbiAgZm8gPSAnZm8nLFxuICAvKiogRnJlbmNoICovXG4gIGZyID0gJ2ZyJyxcbiAgLyoqIENhbmFkaWFuIEZyZW5jaCAqL1xuICBmcl9DQSA9ICdmcl9DQScsXG4gIC8qKiBTd2lzcyBGcmVuY2ggKi9cbiAgZnJfQ0ggPSAnZnJfQ0gnLFxuICAvKiogV2VzdGVybiBGcmlzaWFuICovXG4gIGZ5ID0gJ2Z5JyxcbiAgLyoqIElyaXNoICovXG4gIGdhID0gJ2dhJyxcbiAgLyoqIFNjb3R0aXNoIEdhZWxpYyAqL1xuICBnZCA9ICdnZCcsXG4gIC8qKiBHYWxpY2lhbiAqL1xuICBnbCA9ICdnbCcsXG4gIC8qKiBHdWphcmF0aSAqL1xuICBndSA9ICdndScsXG4gIC8qKiBNYW54ICovXG4gIGd2ID0gJ2d2JyxcbiAgLyoqIEhhdXNhICovXG4gIGhhID0gJ2hhJyxcbiAgLyoqIEhlYnJldyAqL1xuICBoZSA9ICdoZScsXG4gIC8qKiBIaW5kaSAqL1xuICBoaSA9ICdoaScsXG4gIC8qKiBDcm9hdGlhbiAqL1xuICBociA9ICdocicsXG4gIC8qKiBIYWl0aWFuIENyZW9sZSAqL1xuICBodCA9ICdodCcsXG4gIC8qKiBIdW5nYXJpYW4gKi9cbiAgaHUgPSAnaHUnLFxuICAvKiogQXJtZW5pYW4gKi9cbiAgaHkgPSAnaHknLFxuICAvKiogSW50ZXJsaW5ndWEgKi9cbiAgaWEgPSAnaWEnLFxuICAvKiogSW5kb25lc2lhbiAqL1xuICBpZCA9ICdpZCcsXG4gIC8qKiBJZ2JvICovXG4gIGlnID0gJ2lnJyxcbiAgLyoqIFNpY2h1YW4gWWkgKi9cbiAgaWkgPSAnaWknLFxuICAvKiogSWNlbGFuZGljICovXG4gIGlzID0gJ2lzJyxcbiAgLyoqIEl0YWxpYW4gKi9cbiAgaXQgPSAnaXQnLFxuICAvKiogSmFwYW5lc2UgKi9cbiAgamEgPSAnamEnLFxuICAvKiogSmF2YW5lc2UgKi9cbiAganYgPSAnanYnLFxuICAvKiogR2VvcmdpYW4gKi9cbiAga2EgPSAna2EnLFxuICAvKiogS2lrdXl1ICovXG4gIGtpID0gJ2tpJyxcbiAgLyoqIEthemFraCAqL1xuICBrayA9ICdraycsXG4gIC8qKiBLYWxhYWxsaXN1dCAqL1xuICBrbCA9ICdrbCcsXG4gIC8qKiBLaG1lciAqL1xuICBrbSA9ICdrbScsXG4gIC8qKiBLYW5uYWRhICovXG4gIGtuID0gJ2tuJyxcbiAgLyoqIEtvcmVhbiAqL1xuICBrbyA9ICdrbycsXG4gIC8qKiBLYXNobWlyaSAqL1xuICBrcyA9ICdrcycsXG4gIC8qKiBLdXJkaXNoICovXG4gIGt1ID0gJ2t1JyxcbiAgLyoqIENvcm5pc2ggKi9cbiAga3cgPSAna3cnLFxuICAvKiogS3lyZ3l6ICovXG4gIGt5ID0gJ2t5JyxcbiAgLyoqIExhdGluICovXG4gIGxhID0gJ2xhJyxcbiAgLyoqIEx1eGVtYm91cmdpc2ggKi9cbiAgbGIgPSAnbGInLFxuICAvKiogR2FuZGEgKi9cbiAgbGcgPSAnbGcnLFxuICAvKiogTGluZ2FsYSAqL1xuICBsbiA9ICdsbicsXG4gIC8qKiBMYW8gKi9cbiAgbG8gPSAnbG8nLFxuICAvKiogTGl0aHVhbmlhbiAqL1xuICBsdCA9ICdsdCcsXG4gIC8qKiBMdWJhLUthdGFuZ2EgKi9cbiAgbHUgPSAnbHUnLFxuICAvKiogTGF0dmlhbiAqL1xuICBsdiA9ICdsdicsXG4gIC8qKiBNYWxhZ2FzeSAqL1xuICBtZyA9ICdtZycsXG4gIC8qKiBNYW9yaSAqL1xuICBtaSA9ICdtaScsXG4gIC8qKiBNYWNlZG9uaWFuICovXG4gIG1rID0gJ21rJyxcbiAgLyoqIE1hbGF5YWxhbSAqL1xuICBtbCA9ICdtbCcsXG4gIC8qKiBNb25nb2xpYW4gKi9cbiAgbW4gPSAnbW4nLFxuICAvKiogTWFyYXRoaSAqL1xuICBtciA9ICdtcicsXG4gIC8qKiBNYWxheSAqL1xuICBtcyA9ICdtcycsXG4gIC8qKiBNYWx0ZXNlICovXG4gIG10ID0gJ210JyxcbiAgLyoqIEJ1cm1lc2UgKi9cbiAgbXkgPSAnbXknLFxuICAvKiogTm9yd2VnaWFuIEJva23DpWwgKi9cbiAgbmIgPSAnbmInLFxuICAvKiogTm9ydGggTmRlYmVsZSAqL1xuICBuZCA9ICduZCcsXG4gIC8qKiBOZXBhbGkgKi9cbiAgbmUgPSAnbmUnLFxuICAvKiogRHV0Y2ggKi9cbiAgbmwgPSAnbmwnLFxuICAvKiogRmxlbWlzaCAqL1xuICBubF9CRSA9ICdubF9CRScsXG4gIC8qKiBOb3J3ZWdpYW4gTnlub3JzayAqL1xuICBubiA9ICdubicsXG4gIC8qKiBOeWFuamEgKi9cbiAgbnkgPSAnbnknLFxuICAvKiogT3JvbW8gKi9cbiAgb20gPSAnb20nLFxuICAvKiogT2RpYSAqL1xuICBvciA9ICdvcicsXG4gIC8qKiBPc3NldGljICovXG4gIG9zID0gJ29zJyxcbiAgLyoqIFB1bmphYmkgKi9cbiAgcGEgPSAncGEnLFxuICAvKiogUG9saXNoICovXG4gIHBsID0gJ3BsJyxcbiAgLyoqIFBhc2h0byAqL1xuICBwcyA9ICdwcycsXG4gIC8qKiBQb3J0dWd1ZXNlICovXG4gIHB0ID0gJ3B0JyxcbiAgLyoqIEJyYXppbGlhbiBQb3J0dWd1ZXNlICovXG4gIHB0X0JSID0gJ3B0X0JSJyxcbiAgLyoqIEV1cm9wZWFuIFBvcnR1Z3Vlc2UgKi9cbiAgcHRfUFQgPSAncHRfUFQnLFxuICAvKiogUXVlY2h1YSAqL1xuICBxdSA9ICdxdScsXG4gIC8qKiBSb21hbnNoICovXG4gIHJtID0gJ3JtJyxcbiAgLyoqIFJ1bmRpICovXG4gIHJuID0gJ3JuJyxcbiAgLyoqIFJvbWFuaWFuICovXG4gIHJvID0gJ3JvJyxcbiAgLyoqIE1vbGRhdmlhbiAqL1xuICByb19NRCA9ICdyb19NRCcsXG4gIC8qKiBSdXNzaWFuICovXG4gIHJ1ID0gJ3J1JyxcbiAgLyoqIEtpbnlhcndhbmRhICovXG4gIHJ3ID0gJ3J3JyxcbiAgLyoqIFNhbnNrcml0ICovXG4gIHNhID0gJ3NhJyxcbiAgLyoqIFNpbmRoaSAqL1xuICBzZCA9ICdzZCcsXG4gIC8qKiBOb3J0aGVybiBTYW1pICovXG4gIHNlID0gJ3NlJyxcbiAgLyoqIFNhbmdvICovXG4gIHNnID0gJ3NnJyxcbiAgLyoqIFNpbmhhbGEgKi9cbiAgc2kgPSAnc2knLFxuICAvKiogU2xvdmFrICovXG4gIHNrID0gJ3NrJyxcbiAgLyoqIFNsb3ZlbmlhbiAqL1xuICBzbCA9ICdzbCcsXG4gIC8qKiBTYW1vYW4gKi9cbiAgc20gPSAnc20nLFxuICAvKiogU2hvbmEgKi9cbiAgc24gPSAnc24nLFxuICAvKiogU29tYWxpICovXG4gIHNvID0gJ3NvJyxcbiAgLyoqIEFsYmFuaWFuICovXG4gIHNxID0gJ3NxJyxcbiAgLyoqIFNlcmJpYW4gKi9cbiAgc3IgPSAnc3InLFxuICAvKiogU291dGhlcm4gU290aG8gKi9cbiAgc3QgPSAnc3QnLFxuICAvKiogU3VuZGFuZXNlICovXG4gIHN1ID0gJ3N1JyxcbiAgLyoqIFN3ZWRpc2ggKi9cbiAgc3YgPSAnc3YnLFxuICAvKiogU3dhaGlsaSAqL1xuICBzdyA9ICdzdycsXG4gIC8qKiBDb25nbyBTd2FoaWxpICovXG4gIHN3X0NEID0gJ3N3X0NEJyxcbiAgLyoqIFRhbWlsICovXG4gIHRhID0gJ3RhJyxcbiAgLyoqIFRlbHVndSAqL1xuICB0ZSA9ICd0ZScsXG4gIC8qKiBUYWppayAqL1xuICB0ZyA9ICd0ZycsXG4gIC8qKiBUaGFpICovXG4gIHRoID0gJ3RoJyxcbiAgLyoqIFRpZ3JpbnlhICovXG4gIHRpID0gJ3RpJyxcbiAgLyoqIFR1cmttZW4gKi9cbiAgdGsgPSAndGsnLFxuICAvKiogVG9uZ2FuICovXG4gIHRvID0gJ3RvJyxcbiAgLyoqIFR1cmtpc2ggKi9cbiAgdHIgPSAndHInLFxuICAvKiogVGF0YXIgKi9cbiAgdHQgPSAndHQnLFxuICAvKiogVXlnaHVyICovXG4gIHVnID0gJ3VnJyxcbiAgLyoqIFVrcmFpbmlhbiAqL1xuICB1ayA9ICd1aycsXG4gIC8qKiBVcmR1ICovXG4gIHVyID0gJ3VyJyxcbiAgLyoqIFV6YmVrICovXG4gIHV6ID0gJ3V6JyxcbiAgLyoqIFZpZXRuYW1lc2UgKi9cbiAgdmkgPSAndmknLFxuICAvKiogVm9sYXDDvGsgKi9cbiAgdm8gPSAndm8nLFxuICAvKiogV29sb2YgKi9cbiAgd28gPSAnd28nLFxuICAvKiogWGhvc2EgKi9cbiAgeGggPSAneGgnLFxuICAvKiogWWlkZGlzaCAqL1xuICB5aSA9ICd5aScsXG4gIC8qKiBZb3J1YmEgKi9cbiAgeW8gPSAneW8nLFxuICAvKiogQ2hpbmVzZSAqL1xuICB6aCA9ICd6aCcsXG4gIC8qKiBTaW1wbGlmaWVkIENoaW5lc2UgKi9cbiAgemhfSGFucyA9ICd6aF9IYW5zJyxcbiAgLyoqIFRyYWRpdGlvbmFsIENoaW5lc2UgKi9cbiAgemhfSGFudCA9ICd6aF9IYW50JyxcbiAgLyoqIFp1bHUgKi9cbiAgenUgPSAnenUnXG59XG5cbi8qKiBSZXR1cm5lZCBpZiBhdHRlbXB0aW5nIHRvIHNldCBhIENoYW5uZWwncyBkZWZhdWx0TGFuZ3VhZ2VDb2RlIHRvIGEgbGFuZ3VhZ2Ugd2hpY2ggaXMgbm90IGVuYWJsZWQgaW4gR2xvYmFsU2V0dGluZ3MgKi9cbmV4cG9ydCB0eXBlIExhbmd1YWdlTm90QXZhaWxhYmxlRXJyb3IgPSBFcnJvclJlc3VsdCAmIHtcbiAgX190eXBlbmFtZT86ICdMYW5ndWFnZU5vdEF2YWlsYWJsZUVycm9yJztcbiAgZXJyb3JDb2RlOiBFcnJvckNvZGU7XG4gIGxhbmd1YWdlQ29kZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIG1lc3NhZ2U6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuZXhwb3J0IHR5cGUgTG9jYWxlU3RyaW5nQ3VzdG9tRmllbGRDb25maWcgPSBDdXN0b21GaWVsZCAmIHtcbiAgX190eXBlbmFtZT86ICdMb2NhbGVTdHJpbmdDdXN0b21GaWVsZENvbmZpZyc7XG4gIGRlc2NyaXB0aW9uPzogTWF5YmU8QXJyYXk8TG9jYWxpemVkU3RyaW5nPj47XG4gIGludGVybmFsPzogTWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbiAgbGFiZWw/OiBNYXliZTxBcnJheTxMb2NhbGl6ZWRTdHJpbmc+PjtcbiAgbGVuZ3RoPzogTWF5YmU8U2NhbGFyc1snSW50J10+O1xuICBsaXN0OiBTY2FsYXJzWydCb29sZWFuJ107XG4gIG5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBudWxsYWJsZT86IE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIHBhdHRlcm4/OiBNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHJlYWRvbmx5PzogTWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbiAgdHlwZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHVpPzogTWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbn07XG5cbmV4cG9ydCB0eXBlIExvY2FsaXplZFN0cmluZyA9IHtcbiAgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnO1xuICBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZTtcbiAgdmFsdWU6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuZXhwb3J0IGVudW0gTG9naWNhbE9wZXJhdG9yIHtcbiAgQU5EID0gJ0FORCcsXG4gIE9SID0gJ09SJ1xufVxuXG5leHBvcnQgdHlwZSBNYW51YWxQYXltZW50SW5wdXQgPSB7XG4gIG1ldGFkYXRhPzogSW5wdXRNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBtZXRob2Q6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBvcmRlcklkOiBTY2FsYXJzWydJRCddO1xuICB0cmFuc2FjdGlvbklkPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG59O1xuXG4vKipcbiAqIFJldHVybmVkIHdoZW4gYSBjYWxsIHRvIGFkZE1hbnVhbFBheW1lbnRUb09yZGVyIGlzIG1hZGUgYnV0IHRoZSBPcmRlclxuICogaXMgbm90IGluIHRoZSByZXF1aXJlZCBzdGF0ZS5cbiAqL1xuZXhwb3J0IHR5cGUgTWFudWFsUGF5bWVudFN0YXRlRXJyb3IgPSBFcnJvclJlc3VsdCAmIHtcbiAgX190eXBlbmFtZT86ICdNYW51YWxQYXltZW50U3RhdGVFcnJvcic7XG4gIGVycm9yQ29kZTogRXJyb3JDb2RlO1xuICBtZXNzYWdlOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbmV4cG9ydCB0eXBlIE1pbWVUeXBlRXJyb3IgPSBFcnJvclJlc3VsdCAmIHtcbiAgX190eXBlbmFtZT86ICdNaW1lVHlwZUVycm9yJztcbiAgZXJyb3JDb2RlOiBFcnJvckNvZGU7XG4gIGZpbGVOYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIG1pbWVUeXBlOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbi8qKiBSZXR1cm5lZCBpZiBhIFByb21vdGlvbkNvbmRpdGlvbiBoYXMgbmVpdGhlciBhIGNvdXBvbkNvZGUgbm9yIGFueSBjb25kaXRpb25zIHNldCAqL1xuZXhwb3J0IHR5cGUgTWlzc2luZ0NvbmRpdGlvbnNFcnJvciA9IEVycm9yUmVzdWx0ICYge1xuICBfX3R5cGVuYW1lPzogJ01pc3NpbmdDb25kaXRpb25zRXJyb3InO1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG5leHBvcnQgdHlwZSBNb2RpZnlPcmRlcklucHV0ID0ge1xuICBhZGRJdGVtcz86IElucHV0TWF5YmU8QXJyYXk8QWRkSXRlbUlucHV0Pj47XG4gIGFkanVzdE9yZGVyTGluZXM/OiBJbnB1dE1heWJlPEFycmF5PEFkanVzdE9yZGVyTGluZUlucHV0Pj47XG4gIGNvdXBvbkNvZGVzPzogSW5wdXRNYXliZTxBcnJheTxTY2FsYXJzWydTdHJpbmcnXT4+O1xuICBkcnlSdW46IFNjYWxhcnNbJ0Jvb2xlYW4nXTtcbiAgbm90ZT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxNb2RpZnlPcmRlck9wdGlvbnM+O1xuICBvcmRlcklkOiBTY2FsYXJzWydJRCddO1xuICByZWZ1bmQ/OiBJbnB1dE1heWJlPEFkbWluaXN0cmF0b3JSZWZ1bmRJbnB1dD47XG4gIHN1cmNoYXJnZXM/OiBJbnB1dE1heWJlPEFycmF5PFN1cmNoYXJnZUlucHV0Pj47XG4gIHVwZGF0ZUJpbGxpbmdBZGRyZXNzPzogSW5wdXRNYXliZTxVcGRhdGVPcmRlckFkZHJlc3NJbnB1dD47XG4gIHVwZGF0ZVNoaXBwaW5nQWRkcmVzcz86IElucHV0TWF5YmU8VXBkYXRlT3JkZXJBZGRyZXNzSW5wdXQ+O1xufTtcblxuZXhwb3J0IHR5cGUgTW9kaWZ5T3JkZXJPcHRpb25zID0ge1xuICBmcmVlemVQcm9tb3Rpb25zPzogSW5wdXRNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICByZWNhbGN1bGF0ZVNoaXBwaW5nPzogSW5wdXRNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xufTtcblxuZXhwb3J0IHR5cGUgTW9kaWZ5T3JkZXJSZXN1bHQgPSBDb3Vwb25Db2RlRXhwaXJlZEVycm9yIHwgQ291cG9uQ29kZUludmFsaWRFcnJvciB8IENvdXBvbkNvZGVMaW1pdEVycm9yIHwgSW5zdWZmaWNpZW50U3RvY2tFcnJvciB8IE5lZ2F0aXZlUXVhbnRpdHlFcnJvciB8IE5vQ2hhbmdlc1NwZWNpZmllZEVycm9yIHwgT3JkZXIgfCBPcmRlckxpbWl0RXJyb3IgfCBPcmRlck1vZGlmaWNhdGlvblN0YXRlRXJyb3IgfCBQYXltZW50TWV0aG9kTWlzc2luZ0Vycm9yIHwgUmVmdW5kUGF5bWVudElkTWlzc2luZ0Vycm9yO1xuXG5leHBvcnQgdHlwZSBNb3ZlQ29sbGVjdGlvbklucHV0ID0ge1xuICBjb2xsZWN0aW9uSWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGluZGV4OiBTY2FsYXJzWydJbnQnXTtcbiAgcGFyZW50SWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG4vKiogUmV0dXJuZWQgaWYgYW4gb3BlcmF0aW9uIGhhcyBzcGVjaWZpZWQgT3JkZXJMaW5lcyBmcm9tIG11bHRpcGxlIE9yZGVycyAqL1xuZXhwb3J0IHR5cGUgTXVsdGlwbGVPcmRlckVycm9yID0gRXJyb3JSZXN1bHQgJiB7XG4gIF9fdHlwZW5hbWU/OiAnTXVsdGlwbGVPcmRlckVycm9yJztcbiAgZXJyb3JDb2RlOiBFcnJvckNvZGU7XG4gIG1lc3NhZ2U6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuZXhwb3J0IHR5cGUgTXV0YXRpb24gPSB7XG4gIF9fdHlwZW5hbWU/OiAnTXV0YXRpb24nO1xuICAvKiogQWRkIEN1c3RvbWVycyB0byBhIEN1c3RvbWVyR3JvdXAgKi9cbiAgYWRkQ3VzdG9tZXJzVG9Hcm91cDogQ3VzdG9tZXJHcm91cDtcbiAgYWRkRnVsZmlsbG1lbnRUb09yZGVyOiBBZGRGdWxmaWxsbWVudFRvT3JkZXJSZXN1bHQ7XG4gIC8qKlxuICAgKiBVc2VkIHRvIG1hbnVhbGx5IGNyZWF0ZSBhIG5ldyBQYXltZW50IGFnYWluc3QgYW4gT3JkZXIuXG4gICAqIFRoaXMgY2FuIGJlIHVzZWQgYnkgYW4gQWRtaW5pc3RyYXRvciB3aGVuIGFuIE9yZGVyIGlzIGluIHRoZSBBcnJhbmdpbmdQYXltZW50IHN0YXRlLlxuICAgKlxuICAgKiBJdCBpcyBhbHNvIHVzZWQgd2hlbiBhIGNvbXBsZXRlZCBPcmRlclxuICAgKiBoYXMgYmVlbiBtb2RpZmllZCAodXNpbmcgYG1vZGlmeU9yZGVyYCkgYW5kIHRoZSBwcmljZSBoYXMgaW5jcmVhc2VkLiBUaGUgZXh0cmEgcGF5bWVudFxuICAgKiBjYW4gdGhlbiBiZSBtYW51YWxseSBhcnJhbmdlZCBieSB0aGUgYWRtaW5pc3RyYXRvciwgYW5kIHRoZSBkZXRhaWxzIHVzZWQgdG8gY3JlYXRlIGEgbmV3XG4gICAqIFBheW1lbnQuXG4gICAqL1xuICBhZGRNYW51YWxQYXltZW50VG9PcmRlcjogQWRkTWFudWFsUGF5bWVudFRvT3JkZXJSZXN1bHQ7XG4gIC8qKiBBZGQgbWVtYmVycyB0byBhIFpvbmUgKi9cbiAgYWRkTWVtYmVyc1RvWm9uZTogWm9uZTtcbiAgYWRkTm90ZVRvQ3VzdG9tZXI6IEN1c3RvbWVyO1xuICBhZGROb3RlVG9PcmRlcjogT3JkZXI7XG4gIC8qKiBBZGQgYW4gT3B0aW9uR3JvdXAgdG8gYSBQcm9kdWN0ICovXG4gIGFkZE9wdGlvbkdyb3VwVG9Qcm9kdWN0OiBQcm9kdWN0O1xuICAvKiogQXNzaWduIGFzc2V0cyB0byBjaGFubmVsICovXG4gIGFzc2lnbkFzc2V0c1RvQ2hhbm5lbDogQXJyYXk8QXNzZXQ+O1xuICAvKiogQXNzaWducyBQcm9kdWN0VmFyaWFudHMgdG8gdGhlIHNwZWNpZmllZCBDaGFubmVsICovXG4gIGFzc2lnblByb2R1Y3RWYXJpYW50c1RvQ2hhbm5lbDogQXJyYXk8UHJvZHVjdFZhcmlhbnQ+O1xuICAvKiogQXNzaWducyBhbGwgUHJvZHVjdFZhcmlhbnRzIG9mIFByb2R1Y3QgdG8gdGhlIHNwZWNpZmllZCBDaGFubmVsICovXG4gIGFzc2lnblByb2R1Y3RzVG9DaGFubmVsOiBBcnJheTxQcm9kdWN0PjtcbiAgLyoqIEFzc2lnbnMgUHJvbW90aW9ucyB0byB0aGUgc3BlY2lmaWVkIENoYW5uZWwgKi9cbiAgYXNzaWduUHJvbW90aW9uc1RvQ2hhbm5lbDogQXJyYXk8UHJvbW90aW9uPjtcbiAgLyoqIEFzc2lnbiBhIFJvbGUgdG8gYW4gQWRtaW5pc3RyYXRvciAqL1xuICBhc3NpZ25Sb2xlVG9BZG1pbmlzdHJhdG9yOiBBZG1pbmlzdHJhdG9yO1xuICAvKiogQXV0aGVudGljYXRlcyB0aGUgdXNlciB1c2luZyBhIG5hbWVkIGF1dGhlbnRpY2F0aW9uIHN0cmF0ZWd5ICovXG4gIGF1dGhlbnRpY2F0ZTogQXV0aGVudGljYXRpb25SZXN1bHQ7XG4gIGNhbmNlbEpvYjogSm9iO1xuICBjYW5jZWxPcmRlcjogQ2FuY2VsT3JkZXJSZXN1bHQ7XG4gIC8qKiBDcmVhdGUgYSBuZXcgQWRtaW5pc3RyYXRvciAqL1xuICBjcmVhdGVBZG1pbmlzdHJhdG9yOiBBZG1pbmlzdHJhdG9yO1xuICAvKiogQ3JlYXRlIGEgbmV3IEFzc2V0ICovXG4gIGNyZWF0ZUFzc2V0czogQXJyYXk8Q3JlYXRlQXNzZXRSZXN1bHQ+O1xuICAvKiogQ3JlYXRlIGEgbmV3IENoYW5uZWwgKi9cbiAgY3JlYXRlQ2hhbm5lbDogQ3JlYXRlQ2hhbm5lbFJlc3VsdDtcbiAgLyoqIENyZWF0ZSBhIG5ldyBDb2xsZWN0aW9uICovXG4gIGNyZWF0ZUNvbGxlY3Rpb246IENvbGxlY3Rpb247XG4gIC8qKiBDcmVhdGUgYSBuZXcgQ291bnRyeSAqL1xuICBjcmVhdGVDb3VudHJ5OiBDb3VudHJ5O1xuICAvKiogQ3JlYXRlIGEgbmV3IEN1c3RvbWVyLiBJZiBhIHBhc3N3b3JkIGlzIHByb3ZpZGVkLCBhIG5ldyBVc2VyIHdpbGwgYWxzbyBiZSBjcmVhdGVkIGFuIGxpbmtlZCB0byB0aGUgQ3VzdG9tZXIuICovXG4gIGNyZWF0ZUN1c3RvbWVyOiBDcmVhdGVDdXN0b21lclJlc3VsdDtcbiAgLyoqIENyZWF0ZSBhIG5ldyBBZGRyZXNzIGFuZCBhc3NvY2lhdGUgaXQgd2l0aCB0aGUgQ3VzdG9tZXIgc3BlY2lmaWVkIGJ5IGN1c3RvbWVySWQgKi9cbiAgY3JlYXRlQ3VzdG9tZXJBZGRyZXNzOiBBZGRyZXNzO1xuICAvKiogQ3JlYXRlIGEgbmV3IEN1c3RvbWVyR3JvdXAgKi9cbiAgY3JlYXRlQ3VzdG9tZXJHcm91cDogQ3VzdG9tZXJHcm91cDtcbiAgLyoqIENyZWF0ZSBhIG5ldyBGYWNldCAqL1xuICBjcmVhdGVGYWNldDogRmFjZXQ7XG4gIC8qKiBDcmVhdGUgb25lIG9yIG1vcmUgRmFjZXRWYWx1ZXMgKi9cbiAgY3JlYXRlRmFjZXRWYWx1ZXM6IEFycmF5PEZhY2V0VmFsdWU+O1xuICAvKiogQ3JlYXRlIGV4aXN0aW5nIFBheW1lbnRNZXRob2QgKi9cbiAgY3JlYXRlUGF5bWVudE1ldGhvZDogUGF5bWVudE1ldGhvZDtcbiAgLyoqIENyZWF0ZSBhIG5ldyBQcm9kdWN0ICovXG4gIGNyZWF0ZVByb2R1Y3Q6IFByb2R1Y3Q7XG4gIC8qKiBDcmVhdGUgYSBuZXcgUHJvZHVjdE9wdGlvbiB3aXRoaW4gYSBQcm9kdWN0T3B0aW9uR3JvdXAgKi9cbiAgY3JlYXRlUHJvZHVjdE9wdGlvbjogUHJvZHVjdE9wdGlvbjtcbiAgLyoqIENyZWF0ZSBhIG5ldyBQcm9kdWN0T3B0aW9uR3JvdXAgKi9cbiAgY3JlYXRlUHJvZHVjdE9wdGlvbkdyb3VwOiBQcm9kdWN0T3B0aW9uR3JvdXA7XG4gIC8qKiBDcmVhdGUgYSBzZXQgb2YgUHJvZHVjdFZhcmlhbnRzIGJhc2VkIG9uIHRoZSBPcHRpb25Hcm91cHMgYXNzaWduZWQgdG8gdGhlIGdpdmVuIFByb2R1Y3QgKi9cbiAgY3JlYXRlUHJvZHVjdFZhcmlhbnRzOiBBcnJheTxNYXliZTxQcm9kdWN0VmFyaWFudD4+O1xuICBjcmVhdGVQcm9tb3Rpb246IENyZWF0ZVByb21vdGlvblJlc3VsdDtcbiAgLyoqIENyZWF0ZSBhIG5ldyBSb2xlICovXG4gIGNyZWF0ZVJvbGU6IFJvbGU7XG4gIC8qKiBDcmVhdGUgYSBuZXcgU2hpcHBpbmdNZXRob2QgKi9cbiAgY3JlYXRlU2hpcHBpbmdNZXRob2Q6IFNoaXBwaW5nTWV0aG9kO1xuICAvKiogQ3JlYXRlIGEgbmV3IFRhZyAqL1xuICBjcmVhdGVUYWc6IFRhZztcbiAgLyoqIENyZWF0ZSBhIG5ldyBUYXhDYXRlZ29yeSAqL1xuICBjcmVhdGVUYXhDYXRlZ29yeTogVGF4Q2F0ZWdvcnk7XG4gIC8qKiBDcmVhdGUgYSBuZXcgVGF4UmF0ZSAqL1xuICBjcmVhdGVUYXhSYXRlOiBUYXhSYXRlO1xuICAvKiogQ3JlYXRlIGEgbmV3IFpvbmUgKi9cbiAgY3JlYXRlWm9uZTogWm9uZTtcbiAgLyoqIERlbGV0ZSBhbiBBZG1pbmlzdHJhdG9yICovXG4gIGRlbGV0ZUFkbWluaXN0cmF0b3I6IERlbGV0aW9uUmVzcG9uc2U7XG4gIC8qKiBEZWxldGUgYW4gQXNzZXQgKi9cbiAgZGVsZXRlQXNzZXQ6IERlbGV0aW9uUmVzcG9uc2U7XG4gIC8qKiBEZWxldGUgbXVsdGlwbGUgQXNzZXRzICovXG4gIGRlbGV0ZUFzc2V0czogRGVsZXRpb25SZXNwb25zZTtcbiAgLyoqIERlbGV0ZSBhIENoYW5uZWwgKi9cbiAgZGVsZXRlQ2hhbm5lbDogRGVsZXRpb25SZXNwb25zZTtcbiAgLyoqIERlbGV0ZSBhIENvbGxlY3Rpb24gYW5kIGFsbCBvZiBpdHMgZGVzY2VuZGFudHMgKi9cbiAgZGVsZXRlQ29sbGVjdGlvbjogRGVsZXRpb25SZXNwb25zZTtcbiAgLyoqIERlbGV0ZSBhIENvdW50cnkgKi9cbiAgZGVsZXRlQ291bnRyeTogRGVsZXRpb25SZXNwb25zZTtcbiAgLyoqIERlbGV0ZSBhIEN1c3RvbWVyICovXG4gIGRlbGV0ZUN1c3RvbWVyOiBEZWxldGlvblJlc3BvbnNlO1xuICAvKiogVXBkYXRlIGFuIGV4aXN0aW5nIEFkZHJlc3MgKi9cbiAgZGVsZXRlQ3VzdG9tZXJBZGRyZXNzOiBTdWNjZXNzO1xuICAvKiogRGVsZXRlIGEgQ3VzdG9tZXJHcm91cCAqL1xuICBkZWxldGVDdXN0b21lckdyb3VwOiBEZWxldGlvblJlc3BvbnNlO1xuICBkZWxldGVDdXN0b21lck5vdGU6IERlbGV0aW9uUmVzcG9uc2U7XG4gIC8qKiBEZWxldGUgYW4gZXhpc3RpbmcgRmFjZXQgKi9cbiAgZGVsZXRlRmFjZXQ6IERlbGV0aW9uUmVzcG9uc2U7XG4gIC8qKiBEZWxldGUgb25lIG9yIG1vcmUgRmFjZXRWYWx1ZXMgKi9cbiAgZGVsZXRlRmFjZXRWYWx1ZXM6IEFycmF5PERlbGV0aW9uUmVzcG9uc2U+O1xuICBkZWxldGVPcmRlck5vdGU6IERlbGV0aW9uUmVzcG9uc2U7XG4gIC8qKiBEZWxldGUgYSBQYXltZW50TWV0aG9kICovXG4gIGRlbGV0ZVBheW1lbnRNZXRob2Q6IERlbGV0aW9uUmVzcG9uc2U7XG4gIC8qKiBEZWxldGUgYSBQcm9kdWN0ICovXG4gIGRlbGV0ZVByb2R1Y3Q6IERlbGV0aW9uUmVzcG9uc2U7XG4gIC8qKiBEZWxldGUgYSBQcm9kdWN0VmFyaWFudCAqL1xuICBkZWxldGVQcm9kdWN0VmFyaWFudDogRGVsZXRpb25SZXNwb25zZTtcbiAgZGVsZXRlUHJvbW90aW9uOiBEZWxldGlvblJlc3BvbnNlO1xuICAvKiogRGVsZXRlIGFuIGV4aXN0aW5nIFJvbGUgKi9cbiAgZGVsZXRlUm9sZTogRGVsZXRpb25SZXNwb25zZTtcbiAgLyoqIERlbGV0ZSBhIFNoaXBwaW5nTWV0aG9kICovXG4gIGRlbGV0ZVNoaXBwaW5nTWV0aG9kOiBEZWxldGlvblJlc3BvbnNlO1xuICAvKiogRGVsZXRlIGFuIGV4aXN0aW5nIFRhZyAqL1xuICBkZWxldGVUYWc6IERlbGV0aW9uUmVzcG9uc2U7XG4gIC8qKiBEZWxldGVzIGEgVGF4Q2F0ZWdvcnkgKi9cbiAgZGVsZXRlVGF4Q2F0ZWdvcnk6IERlbGV0aW9uUmVzcG9uc2U7XG4gIC8qKiBEZWxldGUgYSBUYXhSYXRlICovXG4gIGRlbGV0ZVRheFJhdGU6IERlbGV0aW9uUmVzcG9uc2U7XG4gIC8qKiBEZWxldGUgYSBab25lICovXG4gIGRlbGV0ZVpvbmU6IERlbGV0aW9uUmVzcG9uc2U7XG4gIGZsdXNoQnVmZmVyZWRKb2JzOiBTdWNjZXNzO1xuICBpbXBvcnRQcm9kdWN0cz86IE1heWJlPEltcG9ydEluZm8+O1xuICAvKiogQXV0aGVudGljYXRlcyB0aGUgdXNlciB1c2luZyB0aGUgbmF0aXZlIGF1dGhlbnRpY2F0aW9uIHN0cmF0ZWd5LiBUaGlzIG11dGF0aW9uIGlzIGFuIGFsaWFzIGZvciBgYXV0aGVudGljYXRlKHsgbmF0aXZlOiB7IC4uLiB9fSlgICovXG4gIGxvZ2luOiBOYXRpdmVBdXRoZW50aWNhdGlvblJlc3VsdDtcbiAgbG9nb3V0OiBTdWNjZXNzO1xuICAvKipcbiAgICogQWxsb3dzIGFuIE9yZGVyIHRvIGJlIG1vZGlmaWVkIGFmdGVyIGl0IGhhcyBiZWVuIGNvbXBsZXRlZCBieSB0aGUgQ3VzdG9tZXIuIFRoZSBPcmRlciBtdXN0IGZpcnN0XG4gICAqIGJlIGluIHRoZSBgTW9kaWZ5aW5nYCBzdGF0ZS5cbiAgICovXG4gIG1vZGlmeU9yZGVyOiBNb2RpZnlPcmRlclJlc3VsdDtcbiAgLyoqIE1vdmUgYSBDb2xsZWN0aW9uIHRvIGEgZGlmZmVyZW50IHBhcmVudCBvciBpbmRleCAqL1xuICBtb3ZlQ29sbGVjdGlvbjogQ29sbGVjdGlvbjtcbiAgcmVmdW5kT3JkZXI6IFJlZnVuZE9yZGVyUmVzdWx0O1xuICByZWluZGV4OiBKb2I7XG4gIC8qKiBSZW1vdmUgQ3VzdG9tZXJzIGZyb20gYSBDdXN0b21lckdyb3VwICovXG4gIHJlbW92ZUN1c3RvbWVyc0Zyb21Hcm91cDogQ3VzdG9tZXJHcm91cDtcbiAgLyoqIFJlbW92ZSBtZW1iZXJzIGZyb20gYSBab25lICovXG4gIHJlbW92ZU1lbWJlcnNGcm9tWm9uZTogWm9uZTtcbiAgLyoqIFJlbW92ZSBhbiBPcHRpb25Hcm91cCBmcm9tIGEgUHJvZHVjdCAqL1xuICByZW1vdmVPcHRpb25Hcm91cEZyb21Qcm9kdWN0OiBSZW1vdmVPcHRpb25Hcm91cEZyb21Qcm9kdWN0UmVzdWx0O1xuICAvKiogUmVtb3ZlcyBQcm9kdWN0VmFyaWFudHMgZnJvbSB0aGUgc3BlY2lmaWVkIENoYW5uZWwgKi9cbiAgcmVtb3ZlUHJvZHVjdFZhcmlhbnRzRnJvbUNoYW5uZWw6IEFycmF5PFByb2R1Y3RWYXJpYW50PjtcbiAgLyoqIFJlbW92ZXMgYWxsIFByb2R1Y3RWYXJpYW50cyBvZiBQcm9kdWN0IGZyb20gdGhlIHNwZWNpZmllZCBDaGFubmVsICovXG4gIHJlbW92ZVByb2R1Y3RzRnJvbUNoYW5uZWw6IEFycmF5PFByb2R1Y3Q+O1xuICAvKiogUmVtb3ZlcyBQcm9tb3Rpb25zIGZyb20gdGhlIHNwZWNpZmllZCBDaGFubmVsICovXG4gIHJlbW92ZVByb21vdGlvbnNGcm9tQ2hhbm5lbDogQXJyYXk8UHJvbW90aW9uPjtcbiAgLyoqIFJlbW92ZSBhbGwgc2V0dGxlZCBqb2JzIGluIHRoZSBnaXZlbiBxdWV1ZXMgb2xkZXIgdGhhbiB0aGUgZ2l2ZW4gZGF0ZS4gUmV0dXJucyB0aGUgbnVtYmVyIG9mIGpvYnMgZGVsZXRlZC4gKi9cbiAgcmVtb3ZlU2V0dGxlZEpvYnM6IFNjYWxhcnNbJ0ludCddO1xuICByZXF1ZXN0Q29tcGxldGVkOiBTY2FsYXJzWydJbnQnXTtcbiAgcmVxdWVzdFN0YXJ0ZWQ6IFNjYWxhcnNbJ0ludCddO1xuICBydW5QZW5kaW5nU2VhcmNoSW5kZXhVcGRhdGVzOiBTdWNjZXNzO1xuICBzZXRBY3RpdmVDaGFubmVsOiBVc2VyU3RhdHVzO1xuICBzZXRBc0xvZ2dlZEluOiBVc2VyU3RhdHVzO1xuICBzZXRBc0xvZ2dlZE91dDogVXNlclN0YXR1cztcbiAgc2V0Q29udGVudExhbmd1YWdlOiBMYW5ndWFnZUNvZGU7XG4gIHNldERpc3BsYXlVaUV4dGVuc2lvblBvaW50czogU2NhbGFyc1snQm9vbGVhbiddO1xuICBzZXRPcmRlckN1c3RvbUZpZWxkcz86IE1heWJlPE9yZGVyPjtcbiAgc2V0VWlMYW5ndWFnZTogTGFuZ3VhZ2VDb2RlO1xuICBzZXRVaUxvY2FsZT86IE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgc2V0VWlUaGVtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHNldHRsZVBheW1lbnQ6IFNldHRsZVBheW1lbnRSZXN1bHQ7XG4gIHNldHRsZVJlZnVuZDogU2V0dGxlUmVmdW5kUmVzdWx0O1xuICB0cmFuc2l0aW9uRnVsZmlsbG1lbnRUb1N0YXRlOiBUcmFuc2l0aW9uRnVsZmlsbG1lbnRUb1N0YXRlUmVzdWx0O1xuICB0cmFuc2l0aW9uT3JkZXJUb1N0YXRlPzogTWF5YmU8VHJhbnNpdGlvbk9yZGVyVG9TdGF0ZVJlc3VsdD47XG4gIHRyYW5zaXRpb25QYXltZW50VG9TdGF0ZTogVHJhbnNpdGlvblBheW1lbnRUb1N0YXRlUmVzdWx0O1xuICAvKiogVXBkYXRlIHRoZSBhY3RpdmUgKGN1cnJlbnRseSBsb2dnZWQtaW4pIEFkbWluaXN0cmF0b3IgKi9cbiAgdXBkYXRlQWN0aXZlQWRtaW5pc3RyYXRvcjogQWRtaW5pc3RyYXRvcjtcbiAgLyoqIFVwZGF0ZSBhbiBleGlzdGluZyBBZG1pbmlzdHJhdG9yICovXG4gIHVwZGF0ZUFkbWluaXN0cmF0b3I6IEFkbWluaXN0cmF0b3I7XG4gIC8qKiBVcGRhdGUgYW4gZXhpc3RpbmcgQXNzZXQgKi9cbiAgdXBkYXRlQXNzZXQ6IEFzc2V0O1xuICAvKiogVXBkYXRlIGFuIGV4aXN0aW5nIENoYW5uZWwgKi9cbiAgdXBkYXRlQ2hhbm5lbDogVXBkYXRlQ2hhbm5lbFJlc3VsdDtcbiAgLyoqIFVwZGF0ZSBhbiBleGlzdGluZyBDb2xsZWN0aW9uICovXG4gIHVwZGF0ZUNvbGxlY3Rpb246IENvbGxlY3Rpb247XG4gIC8qKiBVcGRhdGUgYW4gZXhpc3RpbmcgQ291bnRyeSAqL1xuICB1cGRhdGVDb3VudHJ5OiBDb3VudHJ5O1xuICAvKiogVXBkYXRlIGFuIGV4aXN0aW5nIEN1c3RvbWVyICovXG4gIHVwZGF0ZUN1c3RvbWVyOiBVcGRhdGVDdXN0b21lclJlc3VsdDtcbiAgLyoqIFVwZGF0ZSBhbiBleGlzdGluZyBBZGRyZXNzICovXG4gIHVwZGF0ZUN1c3RvbWVyQWRkcmVzczogQWRkcmVzcztcbiAgLyoqIFVwZGF0ZSBhbiBleGlzdGluZyBDdXN0b21lckdyb3VwICovXG4gIHVwZGF0ZUN1c3RvbWVyR3JvdXA6IEN1c3RvbWVyR3JvdXA7XG4gIHVwZGF0ZUN1c3RvbWVyTm90ZTogSGlzdG9yeUVudHJ5O1xuICAvKiogVXBkYXRlIGFuIGV4aXN0aW5nIEZhY2V0ICovXG4gIHVwZGF0ZUZhY2V0OiBGYWNldDtcbiAgLyoqIFVwZGF0ZSBvbmUgb3IgbW9yZSBGYWNldFZhbHVlcyAqL1xuICB1cGRhdGVGYWNldFZhbHVlczogQXJyYXk8RmFjZXRWYWx1ZT47XG4gIHVwZGF0ZUdsb2JhbFNldHRpbmdzOiBVcGRhdGVHbG9iYWxTZXR0aW5nc1Jlc3VsdDtcbiAgdXBkYXRlT3JkZXJOb3RlOiBIaXN0b3J5RW50cnk7XG4gIC8qKiBVcGRhdGUgYW4gZXhpc3RpbmcgUGF5bWVudE1ldGhvZCAqL1xuICB1cGRhdGVQYXltZW50TWV0aG9kOiBQYXltZW50TWV0aG9kO1xuICAvKiogVXBkYXRlIGFuIGV4aXN0aW5nIFByb2R1Y3QgKi9cbiAgdXBkYXRlUHJvZHVjdDogUHJvZHVjdDtcbiAgLyoqIENyZWF0ZSBhIG5ldyBQcm9kdWN0T3B0aW9uIHdpdGhpbiBhIFByb2R1Y3RPcHRpb25Hcm91cCAqL1xuICB1cGRhdGVQcm9kdWN0T3B0aW9uOiBQcm9kdWN0T3B0aW9uO1xuICAvKiogVXBkYXRlIGFuIGV4aXN0aW5nIFByb2R1Y3RPcHRpb25Hcm91cCAqL1xuICB1cGRhdGVQcm9kdWN0T3B0aW9uR3JvdXA6IFByb2R1Y3RPcHRpb25Hcm91cDtcbiAgLyoqIFVwZGF0ZSBleGlzdGluZyBQcm9kdWN0VmFyaWFudHMgKi9cbiAgdXBkYXRlUHJvZHVjdFZhcmlhbnRzOiBBcnJheTxNYXliZTxQcm9kdWN0VmFyaWFudD4+O1xuICB1cGRhdGVQcm9tb3Rpb246IFVwZGF0ZVByb21vdGlvblJlc3VsdDtcbiAgLyoqIFVwZGF0ZSBhbiBleGlzdGluZyBSb2xlICovXG4gIHVwZGF0ZVJvbGU6IFJvbGU7XG4gIC8qKiBVcGRhdGUgYW4gZXhpc3RpbmcgU2hpcHBpbmdNZXRob2QgKi9cbiAgdXBkYXRlU2hpcHBpbmdNZXRob2Q6IFNoaXBwaW5nTWV0aG9kO1xuICAvKiogVXBkYXRlIGFuIGV4aXN0aW5nIFRhZyAqL1xuICB1cGRhdGVUYWc6IFRhZztcbiAgLyoqIFVwZGF0ZSBhbiBleGlzdGluZyBUYXhDYXRlZ29yeSAqL1xuICB1cGRhdGVUYXhDYXRlZ29yeTogVGF4Q2F0ZWdvcnk7XG4gIC8qKiBVcGRhdGUgYW4gZXhpc3RpbmcgVGF4UmF0ZSAqL1xuICB1cGRhdGVUYXhSYXRlOiBUYXhSYXRlO1xuICB1cGRhdGVVc2VyQ2hhbm5lbHM6IFVzZXJTdGF0dXM7XG4gIC8qKiBVcGRhdGUgYW4gZXhpc3RpbmcgWm9uZSAqL1xuICB1cGRhdGVab25lOiBab25lO1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkFkZEN1c3RvbWVyc1RvR3JvdXBBcmdzID0ge1xuICBjdXN0b21lckdyb3VwSWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGN1c3RvbWVySWRzOiBBcnJheTxTY2FsYXJzWydJRCddPjtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25BZGRGdWxmaWxsbWVudFRvT3JkZXJBcmdzID0ge1xuICBpbnB1dDogRnVsZmlsbE9yZGVySW5wdXQ7XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uQWRkTWFudWFsUGF5bWVudFRvT3JkZXJBcmdzID0ge1xuICBpbnB1dDogTWFudWFsUGF5bWVudElucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkFkZE1lbWJlcnNUb1pvbmVBcmdzID0ge1xuICBtZW1iZXJJZHM6IEFycmF5PFNjYWxhcnNbJ0lEJ10+O1xuICB6b25lSWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uQWRkTm90ZVRvQ3VzdG9tZXJBcmdzID0ge1xuICBpbnB1dDogQWRkTm90ZVRvQ3VzdG9tZXJJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25BZGROb3RlVG9PcmRlckFyZ3MgPSB7XG4gIGlucHV0OiBBZGROb3RlVG9PcmRlcklucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkFkZE9wdGlvbkdyb3VwVG9Qcm9kdWN0QXJncyA9IHtcbiAgb3B0aW9uR3JvdXBJZDogU2NhbGFyc1snSUQnXTtcbiAgcHJvZHVjdElkOiBTY2FsYXJzWydJRCddO1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkFzc2lnbkFzc2V0c1RvQ2hhbm5lbEFyZ3MgPSB7XG4gIGlucHV0OiBBc3NpZ25Bc3NldHNUb0NoYW5uZWxJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25Bc3NpZ25Qcm9kdWN0VmFyaWFudHNUb0NoYW5uZWxBcmdzID0ge1xuICBpbnB1dDogQXNzaWduUHJvZHVjdFZhcmlhbnRzVG9DaGFubmVsSW5wdXQ7XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uQXNzaWduUHJvZHVjdHNUb0NoYW5uZWxBcmdzID0ge1xuICBpbnB1dDogQXNzaWduUHJvZHVjdHNUb0NoYW5uZWxJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25Bc3NpZ25Qcm9tb3Rpb25zVG9DaGFubmVsQXJncyA9IHtcbiAgaW5wdXQ6IEFzc2lnblByb21vdGlvbnNUb0NoYW5uZWxJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25Bc3NpZ25Sb2xlVG9BZG1pbmlzdHJhdG9yQXJncyA9IHtcbiAgYWRtaW5pc3RyYXRvcklkOiBTY2FsYXJzWydJRCddO1xuICByb2xlSWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uQXV0aGVudGljYXRlQXJncyA9IHtcbiAgaW5wdXQ6IEF1dGhlbnRpY2F0aW9uSW5wdXQ7XG4gIHJlbWVtYmVyTWU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uQ2FuY2VsSm9iQXJncyA9IHtcbiAgam9iSWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uQ2FuY2VsT3JkZXJBcmdzID0ge1xuICBpbnB1dDogQ2FuY2VsT3JkZXJJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25DcmVhdGVBZG1pbmlzdHJhdG9yQXJncyA9IHtcbiAgaW5wdXQ6IENyZWF0ZUFkbWluaXN0cmF0b3JJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25DcmVhdGVBc3NldHNBcmdzID0ge1xuICBpbnB1dDogQXJyYXk8Q3JlYXRlQXNzZXRJbnB1dD47XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uQ3JlYXRlQ2hhbm5lbEFyZ3MgPSB7XG4gIGlucHV0OiBDcmVhdGVDaGFubmVsSW5wdXQ7XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uQ3JlYXRlQ29sbGVjdGlvbkFyZ3MgPSB7XG4gIGlucHV0OiBDcmVhdGVDb2xsZWN0aW9uSW5wdXQ7XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uQ3JlYXRlQ291bnRyeUFyZ3MgPSB7XG4gIGlucHV0OiBDcmVhdGVDb3VudHJ5SW5wdXQ7XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uQ3JlYXRlQ3VzdG9tZXJBcmdzID0ge1xuICBpbnB1dDogQ3JlYXRlQ3VzdG9tZXJJbnB1dDtcbiAgcGFzc3dvcmQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25DcmVhdGVDdXN0b21lckFkZHJlc3NBcmdzID0ge1xuICBjdXN0b21lcklkOiBTY2FsYXJzWydJRCddO1xuICBpbnB1dDogQ3JlYXRlQWRkcmVzc0lucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkNyZWF0ZUN1c3RvbWVyR3JvdXBBcmdzID0ge1xuICBpbnB1dDogQ3JlYXRlQ3VzdG9tZXJHcm91cElucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkNyZWF0ZUZhY2V0QXJncyA9IHtcbiAgaW5wdXQ6IENyZWF0ZUZhY2V0SW5wdXQ7XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uQ3JlYXRlRmFjZXRWYWx1ZXNBcmdzID0ge1xuICBpbnB1dDogQXJyYXk8Q3JlYXRlRmFjZXRWYWx1ZUlucHV0Pjtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25DcmVhdGVQYXltZW50TWV0aG9kQXJncyA9IHtcbiAgaW5wdXQ6IENyZWF0ZVBheW1lbnRNZXRob2RJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25DcmVhdGVQcm9kdWN0QXJncyA9IHtcbiAgaW5wdXQ6IENyZWF0ZVByb2R1Y3RJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25DcmVhdGVQcm9kdWN0T3B0aW9uQXJncyA9IHtcbiAgaW5wdXQ6IENyZWF0ZVByb2R1Y3RPcHRpb25JbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25DcmVhdGVQcm9kdWN0T3B0aW9uR3JvdXBBcmdzID0ge1xuICBpbnB1dDogQ3JlYXRlUHJvZHVjdE9wdGlvbkdyb3VwSW5wdXQ7XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uQ3JlYXRlUHJvZHVjdFZhcmlhbnRzQXJncyA9IHtcbiAgaW5wdXQ6IEFycmF5PENyZWF0ZVByb2R1Y3RWYXJpYW50SW5wdXQ+O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkNyZWF0ZVByb21vdGlvbkFyZ3MgPSB7XG4gIGlucHV0OiBDcmVhdGVQcm9tb3Rpb25JbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25DcmVhdGVSb2xlQXJncyA9IHtcbiAgaW5wdXQ6IENyZWF0ZVJvbGVJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25DcmVhdGVTaGlwcGluZ01ldGhvZEFyZ3MgPSB7XG4gIGlucHV0OiBDcmVhdGVTaGlwcGluZ01ldGhvZElucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkNyZWF0ZVRhZ0FyZ3MgPSB7XG4gIGlucHV0OiBDcmVhdGVUYWdJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25DcmVhdGVUYXhDYXRlZ29yeUFyZ3MgPSB7XG4gIGlucHV0OiBDcmVhdGVUYXhDYXRlZ29yeUlucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkNyZWF0ZVRheFJhdGVBcmdzID0ge1xuICBpbnB1dDogQ3JlYXRlVGF4UmF0ZUlucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkNyZWF0ZVpvbmVBcmdzID0ge1xuICBpbnB1dDogQ3JlYXRlWm9uZUlucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkRlbGV0ZUFkbWluaXN0cmF0b3JBcmdzID0ge1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25EZWxldGVBc3NldEFyZ3MgPSB7XG4gIGlucHV0OiBEZWxldGVBc3NldElucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkRlbGV0ZUFzc2V0c0FyZ3MgPSB7XG4gIGlucHV0OiBEZWxldGVBc3NldHNJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25EZWxldGVDaGFubmVsQXJncyA9IHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uRGVsZXRlQ29sbGVjdGlvbkFyZ3MgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkRlbGV0ZUNvdW50cnlBcmdzID0ge1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25EZWxldGVDdXN0b21lckFyZ3MgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkRlbGV0ZUN1c3RvbWVyQWRkcmVzc0FyZ3MgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkRlbGV0ZUN1c3RvbWVyR3JvdXBBcmdzID0ge1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25EZWxldGVDdXN0b21lck5vdGVBcmdzID0ge1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25EZWxldGVGYWNldEFyZ3MgPSB7XG4gIGZvcmNlPzogSW5wdXRNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25EZWxldGVGYWNldFZhbHVlc0FyZ3MgPSB7XG4gIGZvcmNlPzogSW5wdXRNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICBpZHM6IEFycmF5PFNjYWxhcnNbJ0lEJ10+O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkRlbGV0ZU9yZGVyTm90ZUFyZ3MgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkRlbGV0ZVBheW1lbnRNZXRob2RBcmdzID0ge1xuICBmb3JjZT86IElucHV0TWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uRGVsZXRlUHJvZHVjdEFyZ3MgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkRlbGV0ZVByb2R1Y3RWYXJpYW50QXJncyA9IHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uRGVsZXRlUHJvbW90aW9uQXJncyA9IHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uRGVsZXRlUm9sZUFyZ3MgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkRlbGV0ZVNoaXBwaW5nTWV0aG9kQXJncyA9IHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uRGVsZXRlVGFnQXJncyA9IHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uRGVsZXRlVGF4Q2F0ZWdvcnlBcmdzID0ge1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25EZWxldGVUYXhSYXRlQXJncyA9IHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uRGVsZXRlWm9uZUFyZ3MgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkZsdXNoQnVmZmVyZWRKb2JzQXJncyA9IHtcbiAgYnVmZmVySWRzPzogSW5wdXRNYXliZTxBcnJheTxTY2FsYXJzWydTdHJpbmcnXT4+O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbkltcG9ydFByb2R1Y3RzQXJncyA9IHtcbiAgY3N2RmlsZTogU2NhbGFyc1snVXBsb2FkJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uTG9naW5BcmdzID0ge1xuICBwYXNzd29yZDogU2NhbGFyc1snU3RyaW5nJ107XG4gIHJlbWVtYmVyTWU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIHVzZXJuYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25Nb2RpZnlPcmRlckFyZ3MgPSB7XG4gIGlucHV0OiBNb2RpZnlPcmRlcklucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvbk1vdmVDb2xsZWN0aW9uQXJncyA9IHtcbiAgaW5wdXQ6IE1vdmVDb2xsZWN0aW9uSW5wdXQ7XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uUmVmdW5kT3JkZXJBcmdzID0ge1xuICBpbnB1dDogUmVmdW5kT3JkZXJJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25SZW1vdmVDdXN0b21lcnNGcm9tR3JvdXBBcmdzID0ge1xuICBjdXN0b21lckdyb3VwSWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGN1c3RvbWVySWRzOiBBcnJheTxTY2FsYXJzWydJRCddPjtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25SZW1vdmVNZW1iZXJzRnJvbVpvbmVBcmdzID0ge1xuICBtZW1iZXJJZHM6IEFycmF5PFNjYWxhcnNbJ0lEJ10+O1xuICB6b25lSWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uUmVtb3ZlT3B0aW9uR3JvdXBGcm9tUHJvZHVjdEFyZ3MgPSB7XG4gIG9wdGlvbkdyb3VwSWQ6IFNjYWxhcnNbJ0lEJ107XG4gIHByb2R1Y3RJZDogU2NhbGFyc1snSUQnXTtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25SZW1vdmVQcm9kdWN0VmFyaWFudHNGcm9tQ2hhbm5lbEFyZ3MgPSB7XG4gIGlucHV0OiBSZW1vdmVQcm9kdWN0VmFyaWFudHNGcm9tQ2hhbm5lbElucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvblJlbW92ZVByb2R1Y3RzRnJvbUNoYW5uZWxBcmdzID0ge1xuICBpbnB1dDogUmVtb3ZlUHJvZHVjdHNGcm9tQ2hhbm5lbElucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvblJlbW92ZVByb21vdGlvbnNGcm9tQ2hhbm5lbEFyZ3MgPSB7XG4gIGlucHV0OiBSZW1vdmVQcm9tb3Rpb25zRnJvbUNoYW5uZWxJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25SZW1vdmVTZXR0bGVkSm9ic0FyZ3MgPSB7XG4gIG9sZGVyVGhhbj86IElucHV0TWF5YmU8U2NhbGFyc1snRGF0ZVRpbWUnXT47XG4gIHF1ZXVlTmFtZXM/OiBJbnB1dE1heWJlPEFycmF5PFNjYWxhcnNbJ1N0cmluZyddPj47XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uU2V0QWN0aXZlQ2hhbm5lbEFyZ3MgPSB7XG4gIGNoYW5uZWxJZDogU2NhbGFyc1snSUQnXTtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25TZXRBc0xvZ2dlZEluQXJncyA9IHtcbiAgaW5wdXQ6IFVzZXJTdGF0dXNJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25TZXRDb250ZW50TGFuZ3VhZ2VBcmdzID0ge1xuICBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZTtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25TZXREaXNwbGF5VWlFeHRlbnNpb25Qb2ludHNBcmdzID0ge1xuICBkaXNwbGF5OiBTY2FsYXJzWydCb29sZWFuJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uU2V0T3JkZXJDdXN0b21GaWVsZHNBcmdzID0ge1xuICBpbnB1dDogVXBkYXRlT3JkZXJJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25TZXRVaUxhbmd1YWdlQXJncyA9IHtcbiAgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGU7XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uU2V0VWlMb2NhbGVBcmdzID0ge1xuICBsb2NhbGU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25TZXRVaVRoZW1lQXJncyA9IHtcbiAgdGhlbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvblNldHRsZVBheW1lbnRBcmdzID0ge1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25TZXR0bGVSZWZ1bmRBcmdzID0ge1xuICBpbnB1dDogU2V0dGxlUmVmdW5kSW5wdXQ7XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uVHJhbnNpdGlvbkZ1bGZpbGxtZW50VG9TdGF0ZUFyZ3MgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBzdGF0ZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uVHJhbnNpdGlvbk9yZGVyVG9TdGF0ZUFyZ3MgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBzdGF0ZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uVHJhbnNpdGlvblBheW1lbnRUb1N0YXRlQXJncyA9IHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIHN0YXRlOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25VcGRhdGVBY3RpdmVBZG1pbmlzdHJhdG9yQXJncyA9IHtcbiAgaW5wdXQ6IFVwZGF0ZUFjdGl2ZUFkbWluaXN0cmF0b3JJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25VcGRhdGVBZG1pbmlzdHJhdG9yQXJncyA9IHtcbiAgaW5wdXQ6IFVwZGF0ZUFkbWluaXN0cmF0b3JJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25VcGRhdGVBc3NldEFyZ3MgPSB7XG4gIGlucHV0OiBVcGRhdGVBc3NldElucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvblVwZGF0ZUNoYW5uZWxBcmdzID0ge1xuICBpbnB1dDogVXBkYXRlQ2hhbm5lbElucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvblVwZGF0ZUNvbGxlY3Rpb25BcmdzID0ge1xuICBpbnB1dDogVXBkYXRlQ29sbGVjdGlvbklucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvblVwZGF0ZUNvdW50cnlBcmdzID0ge1xuICBpbnB1dDogVXBkYXRlQ291bnRyeUlucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvblVwZGF0ZUN1c3RvbWVyQXJncyA9IHtcbiAgaW5wdXQ6IFVwZGF0ZUN1c3RvbWVySW5wdXQ7XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uVXBkYXRlQ3VzdG9tZXJBZGRyZXNzQXJncyA9IHtcbiAgaW5wdXQ6IFVwZGF0ZUFkZHJlc3NJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25VcGRhdGVDdXN0b21lckdyb3VwQXJncyA9IHtcbiAgaW5wdXQ6IFVwZGF0ZUN1c3RvbWVyR3JvdXBJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25VcGRhdGVDdXN0b21lck5vdGVBcmdzID0ge1xuICBpbnB1dDogVXBkYXRlQ3VzdG9tZXJOb3RlSW5wdXQ7XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uVXBkYXRlRmFjZXRBcmdzID0ge1xuICBpbnB1dDogVXBkYXRlRmFjZXRJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25VcGRhdGVGYWNldFZhbHVlc0FyZ3MgPSB7XG4gIGlucHV0OiBBcnJheTxVcGRhdGVGYWNldFZhbHVlSW5wdXQ+O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvblVwZGF0ZUdsb2JhbFNldHRpbmdzQXJncyA9IHtcbiAgaW5wdXQ6IFVwZGF0ZUdsb2JhbFNldHRpbmdzSW5wdXQ7XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uVXBkYXRlT3JkZXJOb3RlQXJncyA9IHtcbiAgaW5wdXQ6IFVwZGF0ZU9yZGVyTm90ZUlucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvblVwZGF0ZVBheW1lbnRNZXRob2RBcmdzID0ge1xuICBpbnB1dDogVXBkYXRlUGF5bWVudE1ldGhvZElucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvblVwZGF0ZVByb2R1Y3RBcmdzID0ge1xuICBpbnB1dDogVXBkYXRlUHJvZHVjdElucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvblVwZGF0ZVByb2R1Y3RPcHRpb25BcmdzID0ge1xuICBpbnB1dDogVXBkYXRlUHJvZHVjdE9wdGlvbklucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvblVwZGF0ZVByb2R1Y3RPcHRpb25Hcm91cEFyZ3MgPSB7XG4gIGlucHV0OiBVcGRhdGVQcm9kdWN0T3B0aW9uR3JvdXBJbnB1dDtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25VcGRhdGVQcm9kdWN0VmFyaWFudHNBcmdzID0ge1xuICBpbnB1dDogQXJyYXk8VXBkYXRlUHJvZHVjdFZhcmlhbnRJbnB1dD47XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uVXBkYXRlUHJvbW90aW9uQXJncyA9IHtcbiAgaW5wdXQ6IFVwZGF0ZVByb21vdGlvbklucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvblVwZGF0ZVJvbGVBcmdzID0ge1xuICBpbnB1dDogVXBkYXRlUm9sZUlucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvblVwZGF0ZVNoaXBwaW5nTWV0aG9kQXJncyA9IHtcbiAgaW5wdXQ6IFVwZGF0ZVNoaXBwaW5nTWV0aG9kSW5wdXQ7XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uVXBkYXRlVGFnQXJncyA9IHtcbiAgaW5wdXQ6IFVwZGF0ZVRhZ0lucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBNdXRhdGlvblVwZGF0ZVRheENhdGVnb3J5QXJncyA9IHtcbiAgaW5wdXQ6IFVwZGF0ZVRheENhdGVnb3J5SW5wdXQ7XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uVXBkYXRlVGF4UmF0ZUFyZ3MgPSB7XG4gIGlucHV0OiBVcGRhdGVUYXhSYXRlSW5wdXQ7XG59O1xuXG5cbmV4cG9ydCB0eXBlIE11dGF0aW9uVXBkYXRlVXNlckNoYW5uZWxzQXJncyA9IHtcbiAgY2hhbm5lbHM6IEFycmF5PEN1cnJlbnRVc2VyQ2hhbm5lbElucHV0Pjtcbn07XG5cblxuZXhwb3J0IHR5cGUgTXV0YXRpb25VcGRhdGVab25lQXJncyA9IHtcbiAgaW5wdXQ6IFVwZGF0ZVpvbmVJbnB1dDtcbn07XG5cbmV4cG9ydCB0eXBlIE5hdGl2ZUF1dGhJbnB1dCA9IHtcbiAgcGFzc3dvcmQ6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB1c2VybmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG4vKiogUmV0dXJuZWQgd2hlbiBhdHRlbXB0aW5nIGFuIG9wZXJhdGlvbiB0aGF0IHJlbGllcyBvbiB0aGUgTmF0aXZlQXV0aFN0cmF0ZWd5LCBpZiB0aGF0IHN0cmF0ZWd5IGlzIG5vdCBjb25maWd1cmVkLiAqL1xuZXhwb3J0IHR5cGUgTmF0aXZlQXV0aFN0cmF0ZWd5RXJyb3IgPSBFcnJvclJlc3VsdCAmIHtcbiAgX190eXBlbmFtZT86ICdOYXRpdmVBdXRoU3RyYXRlZ3lFcnJvcic7XG4gIGVycm9yQ29kZTogRXJyb3JDb2RlO1xuICBtZXNzYWdlOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbmV4cG9ydCB0eXBlIE5hdGl2ZUF1dGhlbnRpY2F0aW9uUmVzdWx0ID0gQ3VycmVudFVzZXIgfCBJbnZhbGlkQ3JlZGVudGlhbHNFcnJvciB8IE5hdGl2ZUF1dGhTdHJhdGVneUVycm9yO1xuXG4vKiogUmV0dXJuZWQgd2hlbiBhdHRlbXB0aW5nIHRvIHNldCBhIG5lZ2F0aXZlIE9yZGVyTGluZSBxdWFudGl0eS4gKi9cbmV4cG9ydCB0eXBlIE5lZ2F0aXZlUXVhbnRpdHlFcnJvciA9IEVycm9yUmVzdWx0ICYge1xuICBfX3R5cGVuYW1lPzogJ05lZ2F0aXZlUXVhbnRpdHlFcnJvcic7XG4gIGVycm9yQ29kZTogRXJyb3JDb2RlO1xuICBtZXNzYWdlOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbmV4cG9ydCB0eXBlIE5ldHdvcmtTdGF0dXMgPSB7XG4gIF9fdHlwZW5hbWU/OiAnTmV0d29ya1N0YXR1cyc7XG4gIGluRmxpZ2h0UmVxdWVzdHM6IFNjYWxhcnNbJ0ludCddO1xufTtcblxuLyoqIFJldHVybmVkIHdoZW4gYSBjYWxsIHRvIG1vZGlmeU9yZGVyIGZhaWxzIHRvIHNwZWNpZnkgYW55IGNoYW5nZXMgKi9cbmV4cG9ydCB0eXBlIE5vQ2hhbmdlc1NwZWNpZmllZEVycm9yID0gRXJyb3JSZXN1bHQgJiB7XG4gIF9fdHlwZW5hbWU/OiAnTm9DaGFuZ2VzU3BlY2lmaWVkRXJyb3InO1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG5leHBvcnQgdHlwZSBOb2RlID0ge1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn07XG5cbi8qKiBSZXR1cm5lZCBpZiBhbiBhdHRlbXB0aW5nIHRvIHJlZnVuZCBhbiBPcmRlciBidXQgbmVpdGhlciBpdGVtcyBub3Igc2hpcHBpbmcgcmVmdW5kIHdhcyBzcGVjaWZpZWQgKi9cbmV4cG9ydCB0eXBlIE5vdGhpbmdUb1JlZnVuZEVycm9yID0gRXJyb3JSZXN1bHQgJiB7XG4gIF9fdHlwZW5hbWU/OiAnTm90aGluZ1RvUmVmdW5kRXJyb3InO1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG4vKiogT3BlcmF0b3JzIGZvciBmaWx0ZXJpbmcgb24gYSBsaXN0IG9mIE51bWJlciBmaWVsZHMgKi9cbmV4cG9ydCB0eXBlIE51bWJlckxpc3RPcGVyYXRvcnMgPSB7XG4gIGluTGlzdDogU2NhbGFyc1snRmxvYXQnXTtcbn07XG5cbi8qKiBPcGVyYXRvcnMgZm9yIGZpbHRlcmluZyBvbiBhIEludCBvciBGbG9hdCBmaWVsZCAqL1xuZXhwb3J0IHR5cGUgTnVtYmVyT3BlcmF0b3JzID0ge1xuICBiZXR3ZWVuPzogSW5wdXRNYXliZTxOdW1iZXJSYW5nZT47XG4gIGVxPzogSW5wdXRNYXliZTxTY2FsYXJzWydGbG9hdCddPjtcbiAgZ3Q/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Zsb2F0J10+O1xuICBndGU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Zsb2F0J10+O1xuICBsdD86IElucHV0TWF5YmU8U2NhbGFyc1snRmxvYXQnXT47XG4gIGx0ZT86IElucHV0TWF5YmU8U2NhbGFyc1snRmxvYXQnXT47XG59O1xuXG5leHBvcnQgdHlwZSBOdW1iZXJSYW5nZSA9IHtcbiAgZW5kOiBTY2FsYXJzWydGbG9hdCddO1xuICBzdGFydDogU2NhbGFyc1snRmxvYXQnXTtcbn07XG5cbmV4cG9ydCB0eXBlIE9yZGVyID0gTm9kZSAmIHtcbiAgX190eXBlbmFtZT86ICdPcmRlcic7XG4gIC8qKiBBbiBvcmRlciBpcyBhY3RpdmUgYXMgbG9uZyBhcyB0aGUgcGF5bWVudCBwcm9jZXNzIGhhcyBub3QgYmVlbiBjb21wbGV0ZWQgKi9cbiAgYWN0aXZlOiBTY2FsYXJzWydCb29sZWFuJ107XG4gIGJpbGxpbmdBZGRyZXNzPzogTWF5YmU8T3JkZXJBZGRyZXNzPjtcbiAgLyoqIEEgdW5pcXVlIGNvZGUgZm9yIHRoZSBPcmRlciAqL1xuICBjb2RlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgLyoqIEFuIGFycmF5IG9mIGFsbCBjb3Vwb24gY29kZXMgYXBwbGllZCB0byB0aGUgT3JkZXIgKi9cbiAgY291cG9uQ29kZXM6IEFycmF5PFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgY3JlYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICBjdXJyZW5jeUNvZGU6IEN1cnJlbmN5Q29kZTtcbiAgY3VzdG9tRmllbGRzPzogTWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgY3VzdG9tZXI/OiBNYXliZTxDdXN0b21lcj47XG4gIGRpc2NvdW50czogQXJyYXk8RGlzY291bnQ+O1xuICBmdWxmaWxsbWVudHM/OiBNYXliZTxBcnJheTxGdWxmaWxsbWVudD4+O1xuICBoaXN0b3J5OiBIaXN0b3J5RW50cnlMaXN0O1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgbGluZXM6IEFycmF5PE9yZGVyTGluZT47XG4gIG1vZGlmaWNhdGlvbnM6IEFycmF5PE9yZGVyTW9kaWZpY2F0aW9uPjtcbiAgbmV4dFN0YXRlczogQXJyYXk8U2NhbGFyc1snU3RyaW5nJ10+O1xuICAvKipcbiAgICogVGhlIGRhdGUgJiB0aW1lIHRoYXQgdGhlIE9yZGVyIHdhcyBwbGFjZWQsIGkuZS4gdGhlIEN1c3RvbWVyXG4gICAqIGNvbXBsZXRlZCB0aGUgY2hlY2tvdXQgYW5kIHRoZSBPcmRlciBpcyBubyBsb25nZXIgXCJhY3RpdmVcIlxuICAgKi9cbiAgb3JkZXJQbGFjZWRBdD86IE1heWJlPFNjYWxhcnNbJ0RhdGVUaW1lJ10+O1xuICBwYXltZW50cz86IE1heWJlPEFycmF5PFBheW1lbnQ+PjtcbiAgLyoqIFByb21vdGlvbnMgYXBwbGllZCB0byB0aGUgb3JkZXIuIE9ubHkgZ2V0cyBwb3B1bGF0ZWQgYWZ0ZXIgdGhlIHBheW1lbnQgcHJvY2VzcyBoYXMgY29tcGxldGVkLiAqL1xuICBwcm9tb3Rpb25zOiBBcnJheTxQcm9tb3Rpb24+O1xuICBzaGlwcGluZzogU2NhbGFyc1snSW50J107XG4gIHNoaXBwaW5nQWRkcmVzcz86IE1heWJlPE9yZGVyQWRkcmVzcz47XG4gIHNoaXBwaW5nTGluZXM6IEFycmF5PFNoaXBwaW5nTGluZT47XG4gIHNoaXBwaW5nV2l0aFRheDogU2NhbGFyc1snSW50J107XG4gIHN0YXRlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgLyoqXG4gICAqIFRoZSBzdWJUb3RhbCBpcyB0aGUgdG90YWwgb2YgYWxsIE9yZGVyTGluZXMgaW4gdGhlIE9yZGVyLiBUaGlzIGZpZ3VyZSBhbHNvIGluY2x1ZGVzIGFueSBPcmRlci1sZXZlbFxuICAgKiBkaXNjb3VudHMgd2hpY2ggaGF2ZSBiZWVuIHByb3JhdGVkIChwcm9wb3J0aW9uYWxseSBkaXN0cmlidXRlZCkgYW1vbmdzdCB0aGUgT3JkZXJJdGVtcy5cbiAgICogVG8gZ2V0IGEgdG90YWwgb2YgYWxsIE9yZGVyTGluZXMgd2hpY2ggZG9lcyBub3QgYWNjb3VudCBmb3IgcHJvcmF0ZWQgZGlzY291bnRzLCB1c2UgdGhlXG4gICAqIHN1bSBvZiBgT3JkZXJMaW5lLmRpc2NvdW50ZWRMaW5lUHJpY2VgIHZhbHVlcy5cbiAgICovXG4gIHN1YlRvdGFsOiBTY2FsYXJzWydJbnQnXTtcbiAgLyoqIFNhbWUgYXMgc3ViVG90YWwsIGJ1dCBpbmNsdXNpdmUgb2YgdGF4ICovXG4gIHN1YlRvdGFsV2l0aFRheDogU2NhbGFyc1snSW50J107XG4gIC8qKlxuICAgKiBTdXJjaGFyZ2VzIGFyZSBhcmJpdHJhcnkgbW9kaWZpY2F0aW9ucyB0byB0aGUgT3JkZXIgdG90YWwgd2hpY2ggYXJlIG5laXRoZXJcbiAgICogUHJvZHVjdFZhcmlhbnRzIG5vciBkaXNjb3VudHMgcmVzdWx0aW5nIGZyb20gYXBwbGllZCBQcm9tb3Rpb25zLiBGb3IgZXhhbXBsZSxcbiAgICogb25lLW9mZiBkaXNjb3VudHMgYmFzZWQgb24gY3VzdG9tZXIgaW50ZXJhY3Rpb24sIG9yIHN1cmNoYXJnZXMgYmFzZWQgb24gcGF5bWVudFxuICAgKiBtZXRob2RzLlxuICAgKi9cbiAgc3VyY2hhcmdlczogQXJyYXk8U3VyY2hhcmdlPjtcbiAgLyoqIEEgc3VtbWFyeSBvZiB0aGUgdGF4ZXMgYmVpbmcgYXBwbGllZCB0byB0aGlzIE9yZGVyICovXG4gIHRheFN1bW1hcnk6IEFycmF5PE9yZGVyVGF4U3VtbWFyeT47XG4gIC8qKiBFcXVhbCB0byBzdWJUb3RhbCBwbHVzIHNoaXBwaW5nICovXG4gIHRvdGFsOiBTY2FsYXJzWydJbnQnXTtcbiAgdG90YWxRdWFudGl0eTogU2NhbGFyc1snSW50J107XG4gIC8qKiBUaGUgZmluYWwgcGF5YWJsZSBhbW91bnQuIEVxdWFsIHRvIHN1YlRvdGFsV2l0aFRheCBwbHVzIHNoaXBwaW5nV2l0aFRheCAqL1xuICB0b3RhbFdpdGhUYXg6IFNjYWxhcnNbJ0ludCddO1xuICB1cGRhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIE9yZGVySGlzdG9yeUFyZ3MgPSB7XG4gIG9wdGlvbnM/OiBJbnB1dE1heWJlPEhpc3RvcnlFbnRyeUxpc3RPcHRpb25zPjtcbn07XG5cbmV4cG9ydCB0eXBlIE9yZGVyQWRkcmVzcyA9IHtcbiAgX190eXBlbmFtZT86ICdPcmRlckFkZHJlc3MnO1xuICBjaXR5PzogTWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBjb21wYW55PzogTWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBjb3VudHJ5PzogTWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBjb3VudHJ5Q29kZT86IE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgY3VzdG9tRmllbGRzPzogTWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZnVsbE5hbWU/OiBNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHBob25lTnVtYmVyPzogTWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBwb3N0YWxDb2RlPzogTWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBwcm92aW5jZT86IE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgc3RyZWV0TGluZTE/OiBNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHN0cmVldExpbmUyPzogTWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xufTtcblxuZXhwb3J0IHR5cGUgT3JkZXJGaWx0ZXJQYXJhbWV0ZXIgPSB7XG4gIGFjdGl2ZT86IElucHV0TWF5YmU8Qm9vbGVhbk9wZXJhdG9ycz47XG4gIGNvZGU/OiBJbnB1dE1heWJlPFN0cmluZ09wZXJhdG9ycz47XG4gIGNyZWF0ZWRBdD86IElucHV0TWF5YmU8RGF0ZU9wZXJhdG9ycz47XG4gIGN1cnJlbmN5Q29kZT86IElucHV0TWF5YmU8U3RyaW5nT3BlcmF0b3JzPjtcbiAgY3VzdG9tZXJMYXN0TmFtZT86IElucHV0TWF5YmU8U3RyaW5nT3BlcmF0b3JzPjtcbiAgaWQ/OiBJbnB1dE1heWJlPElkT3BlcmF0b3JzPjtcbiAgb3JkZXJQbGFjZWRBdD86IElucHV0TWF5YmU8RGF0ZU9wZXJhdG9ycz47XG4gIHNoaXBwaW5nPzogSW5wdXRNYXliZTxOdW1iZXJPcGVyYXRvcnM+O1xuICBzaGlwcGluZ1dpdGhUYXg/OiBJbnB1dE1heWJlPE51bWJlck9wZXJhdG9ycz47XG4gIHN0YXRlPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICBzdWJUb3RhbD86IElucHV0TWF5YmU8TnVtYmVyT3BlcmF0b3JzPjtcbiAgc3ViVG90YWxXaXRoVGF4PzogSW5wdXRNYXliZTxOdW1iZXJPcGVyYXRvcnM+O1xuICB0b3RhbD86IElucHV0TWF5YmU8TnVtYmVyT3BlcmF0b3JzPjtcbiAgdG90YWxRdWFudGl0eT86IElucHV0TWF5YmU8TnVtYmVyT3BlcmF0b3JzPjtcbiAgdG90YWxXaXRoVGF4PzogSW5wdXRNYXliZTxOdW1iZXJPcGVyYXRvcnM+O1xuICB1cGRhdGVkQXQ/OiBJbnB1dE1heWJlPERhdGVPcGVyYXRvcnM+O1xufTtcblxuZXhwb3J0IHR5cGUgT3JkZXJJdGVtID0gTm9kZSAmIHtcbiAgX190eXBlbmFtZT86ICdPcmRlckl0ZW0nO1xuICBhZGp1c3RtZW50czogQXJyYXk8QWRqdXN0bWVudD47XG4gIGNhbmNlbGxlZDogU2NhbGFyc1snQm9vbGVhbiddO1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIC8qKlxuICAgKiBUaGUgcHJpY2Ugb2YgYSBzaW5nbGUgdW5pdCBpbmNsdWRpbmcgZGlzY291bnRzLCBleGNsdWRpbmcgdGF4LlxuICAgKlxuICAgKiBJZiBPcmRlci1sZXZlbCBkaXNjb3VudHMgaGF2ZSBiZWVuIGFwcGxpZWQsIHRoaXMgd2lsbCBub3QgYmUgdGhlXG4gICAqIGFjdHVhbCB0YXhhYmxlIHVuaXQgcHJpY2UgKHNlZSBgcHJvcmF0ZWRVbml0UHJpY2VgKSwgYnV0IGlzIGdlbmVyYWxseSB0aGVcbiAgICogY29ycmVjdCBwcmljZSB0byBkaXNwbGF5IHRvIGN1c3RvbWVycyB0byBhdm9pZCBjb25mdXNpb25cbiAgICogYWJvdXQgdGhlIGludGVybmFsIGhhbmRsaW5nIG9mIGRpc3RyaWJ1dGVkIE9yZGVyLWxldmVsIGRpc2NvdW50cy5cbiAgICovXG4gIGRpc2NvdW50ZWRVbml0UHJpY2U6IFNjYWxhcnNbJ0ludCddO1xuICAvKiogVGhlIHByaWNlIG9mIGEgc2luZ2xlIHVuaXQgaW5jbHVkaW5nIGRpc2NvdW50cyBhbmQgdGF4ICovXG4gIGRpc2NvdW50ZWRVbml0UHJpY2VXaXRoVGF4OiBTY2FsYXJzWydJbnQnXTtcbiAgZnVsZmlsbG1lbnQ/OiBNYXliZTxGdWxmaWxsbWVudD47XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICAvKipcbiAgICogVGhlIGFjdHVhbCB1bml0IHByaWNlLCB0YWtpbmcgaW50byBhY2NvdW50IGJvdGggaXRlbSBkaXNjb3VudHMgX2FuZF8gcHJvcmF0ZWQgKHByb3BvcnRpb25hbGx5LWRpc3RyaWJ1dGVkKVxuICAgKiBPcmRlci1sZXZlbCBkaXNjb3VudHMuIFRoaXMgdmFsdWUgaXMgdGhlIHRydWUgZWNvbm9taWMgdmFsdWUgb2YgdGhlIE9yZGVySXRlbSwgYW5kIGlzIHVzZWQgaW4gdGF4XG4gICAqIGFuZCByZWZ1bmQgY2FsY3VsYXRpb25zLlxuICAgKi9cbiAgcHJvcmF0ZWRVbml0UHJpY2U6IFNjYWxhcnNbJ0ludCddO1xuICAvKiogVGhlIHByb3JhdGVkVW5pdFByaWNlIGluY2x1ZGluZyB0YXggKi9cbiAgcHJvcmF0ZWRVbml0UHJpY2VXaXRoVGF4OiBTY2FsYXJzWydJbnQnXTtcbiAgcmVmdW5kSWQ/OiBNYXliZTxTY2FsYXJzWydJRCddPjtcbiAgdGF4TGluZXM6IEFycmF5PFRheExpbmU+O1xuICB0YXhSYXRlOiBTY2FsYXJzWydGbG9hdCddO1xuICAvKiogVGhlIHByaWNlIG9mIGEgc2luZ2xlIHVuaXQsIGV4Y2x1ZGluZyB0YXggYW5kIGRpc2NvdW50cyAqL1xuICB1bml0UHJpY2U6IFNjYWxhcnNbJ0ludCddO1xuICAvKiogVGhlIHByaWNlIG9mIGEgc2luZ2xlIHVuaXQsIGluY2x1ZGluZyB0YXggYnV0IGV4Y2x1ZGluZyBkaXNjb3VudHMgKi9cbiAgdW5pdFByaWNlV2l0aFRheDogU2NhbGFyc1snSW50J107XG4gIHVuaXRUYXg6IFNjYWxhcnNbJ0ludCddO1xuICB1cGRhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG4vKiogUmV0dXJuZWQgd2hlbiB0aGUgbWF4aW11bSBvcmRlciBzaXplIGxpbWl0IGhhcyBiZWVuIHJlYWNoZWQuICovXG5leHBvcnQgdHlwZSBPcmRlckxpbWl0RXJyb3IgPSBFcnJvclJlc3VsdCAmIHtcbiAgX190eXBlbmFtZT86ICdPcmRlckxpbWl0RXJyb3InO1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgbWF4SXRlbXM6IFNjYWxhcnNbJ0ludCddO1xuICBtZXNzYWdlOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbmV4cG9ydCB0eXBlIE9yZGVyTGluZSA9IE5vZGUgJiB7XG4gIF9fdHlwZW5hbWU/OiAnT3JkZXJMaW5lJztcbiAgY3JlYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICBjdXN0b21GaWVsZHM/OiBNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICAvKiogVGhlIHByaWNlIG9mIHRoZSBsaW5lIGluY2x1ZGluZyBkaXNjb3VudHMsIGV4Y2x1ZGluZyB0YXggKi9cbiAgZGlzY291bnRlZExpbmVQcmljZTogU2NhbGFyc1snSW50J107XG4gIC8qKiBUaGUgcHJpY2Ugb2YgdGhlIGxpbmUgaW5jbHVkaW5nIGRpc2NvdW50cyBhbmQgdGF4ICovXG4gIGRpc2NvdW50ZWRMaW5lUHJpY2VXaXRoVGF4OiBTY2FsYXJzWydJbnQnXTtcbiAgLyoqXG4gICAqIFRoZSBwcmljZSBvZiBhIHNpbmdsZSB1bml0IGluY2x1ZGluZyBkaXNjb3VudHMsIGV4Y2x1ZGluZyB0YXguXG4gICAqXG4gICAqIElmIE9yZGVyLWxldmVsIGRpc2NvdW50cyBoYXZlIGJlZW4gYXBwbGllZCwgdGhpcyB3aWxsIG5vdCBiZSB0aGVcbiAgICogYWN0dWFsIHRheGFibGUgdW5pdCBwcmljZSAoc2VlIGBwcm9yYXRlZFVuaXRQcmljZWApLCBidXQgaXMgZ2VuZXJhbGx5IHRoZVxuICAgKiBjb3JyZWN0IHByaWNlIHRvIGRpc3BsYXkgdG8gY3VzdG9tZXJzIHRvIGF2b2lkIGNvbmZ1c2lvblxuICAgKiBhYm91dCB0aGUgaW50ZXJuYWwgaGFuZGxpbmcgb2YgZGlzdHJpYnV0ZWQgT3JkZXItbGV2ZWwgZGlzY291bnRzLlxuICAgKi9cbiAgZGlzY291bnRlZFVuaXRQcmljZTogU2NhbGFyc1snSW50J107XG4gIC8qKiBUaGUgcHJpY2Ugb2YgYSBzaW5nbGUgdW5pdCBpbmNsdWRpbmcgZGlzY291bnRzIGFuZCB0YXggKi9cbiAgZGlzY291bnRlZFVuaXRQcmljZVdpdGhUYXg6IFNjYWxhcnNbJ0ludCddO1xuICBkaXNjb3VudHM6IEFycmF5PERpc2NvdW50PjtcbiAgZmVhdHVyZWRBc3NldD86IE1heWJlPEFzc2V0PjtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGl0ZW1zOiBBcnJheTxPcmRlckl0ZW0+O1xuICAvKiogVGhlIHRvdGFsIHByaWNlIG9mIHRoZSBsaW5lIGV4Y2x1ZGluZyB0YXggYW5kIGRpc2NvdW50cy4gKi9cbiAgbGluZVByaWNlOiBTY2FsYXJzWydJbnQnXTtcbiAgLyoqIFRoZSB0b3RhbCBwcmljZSBvZiB0aGUgbGluZSBpbmNsdWRpbmcgdGF4IGJ1dCBleGNsdWRpbmcgZGlzY291bnRzLiAqL1xuICBsaW5lUHJpY2VXaXRoVGF4OiBTY2FsYXJzWydJbnQnXTtcbiAgLyoqIFRoZSB0b3RhbCB0YXggb24gdGhpcyBsaW5lICovXG4gIGxpbmVUYXg6IFNjYWxhcnNbJ0ludCddO1xuICBvcmRlcjogT3JkZXI7XG4gIHByb2R1Y3RWYXJpYW50OiBQcm9kdWN0VmFyaWFudDtcbiAgLyoqXG4gICAqIFRoZSBhY3R1YWwgbGluZSBwcmljZSwgdGFraW5nIGludG8gYWNjb3VudCBib3RoIGl0ZW0gZGlzY291bnRzIF9hbmRfIHByb3JhdGVkIChwcm9wb3J0aW9uYWxseS1kaXN0cmlidXRlZClcbiAgICogT3JkZXItbGV2ZWwgZGlzY291bnRzLiBUaGlzIHZhbHVlIGlzIHRoZSB0cnVlIGVjb25vbWljIHZhbHVlIG9mIHRoZSBPcmRlckxpbmUsIGFuZCBpcyB1c2VkIGluIHRheFxuICAgKiBhbmQgcmVmdW5kIGNhbGN1bGF0aW9ucy5cbiAgICovXG4gIHByb3JhdGVkTGluZVByaWNlOiBTY2FsYXJzWydJbnQnXTtcbiAgLyoqIFRoZSBwcm9yYXRlZExpbmVQcmljZSBpbmNsdWRpbmcgdGF4ICovXG4gIHByb3JhdGVkTGluZVByaWNlV2l0aFRheDogU2NhbGFyc1snSW50J107XG4gIC8qKlxuICAgKiBUaGUgYWN0dWFsIHVuaXQgcHJpY2UsIHRha2luZyBpbnRvIGFjY291bnQgYm90aCBpdGVtIGRpc2NvdW50cyBfYW5kXyBwcm9yYXRlZCAocHJvcG9ydGlvbmFsbHktZGlzdHJpYnV0ZWQpXG4gICAqIE9yZGVyLWxldmVsIGRpc2NvdW50cy4gVGhpcyB2YWx1ZSBpcyB0aGUgdHJ1ZSBlY29ub21pYyB2YWx1ZSBvZiB0aGUgT3JkZXJJdGVtLCBhbmQgaXMgdXNlZCBpbiB0YXhcbiAgICogYW5kIHJlZnVuZCBjYWxjdWxhdGlvbnMuXG4gICAqL1xuICBwcm9yYXRlZFVuaXRQcmljZTogU2NhbGFyc1snSW50J107XG4gIC8qKiBUaGUgcHJvcmF0ZWRVbml0UHJpY2UgaW5jbHVkaW5nIHRheCAqL1xuICBwcm9yYXRlZFVuaXRQcmljZVdpdGhUYXg6IFNjYWxhcnNbJ0ludCddO1xuICBxdWFudGl0eTogU2NhbGFyc1snSW50J107XG4gIHRheExpbmVzOiBBcnJheTxUYXhMaW5lPjtcbiAgdGF4UmF0ZTogU2NhbGFyc1snRmxvYXQnXTtcbiAgLyoqIFRoZSBwcmljZSBvZiBhIHNpbmdsZSB1bml0LCBleGNsdWRpbmcgdGF4IGFuZCBkaXNjb3VudHMgKi9cbiAgdW5pdFByaWNlOiBTY2FsYXJzWydJbnQnXTtcbiAgLyoqIE5vbi16ZXJvIGlmIHRoZSB1bml0UHJpY2UgaGFzIGNoYW5nZWQgc2luY2UgaXQgd2FzIGluaXRpYWxseSBhZGRlZCB0byBPcmRlciAqL1xuICB1bml0UHJpY2VDaGFuZ2VTaW5jZUFkZGVkOiBTY2FsYXJzWydJbnQnXTtcbiAgLyoqIFRoZSBwcmljZSBvZiBhIHNpbmdsZSB1bml0LCBpbmNsdWRpbmcgdGF4IGJ1dCBleGNsdWRpbmcgZGlzY291bnRzICovXG4gIHVuaXRQcmljZVdpdGhUYXg6IFNjYWxhcnNbJ0ludCddO1xuICAvKiogTm9uLXplcm8gaWYgdGhlIHVuaXRQcmljZVdpdGhUYXggaGFzIGNoYW5nZWQgc2luY2UgaXQgd2FzIGluaXRpYWxseSBhZGRlZCB0byBPcmRlciAqL1xuICB1bml0UHJpY2VXaXRoVGF4Q2hhbmdlU2luY2VBZGRlZDogU2NhbGFyc1snSW50J107XG4gIHVwZGF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbn07XG5cbmV4cG9ydCB0eXBlIE9yZGVyTGluZUlucHV0ID0ge1xuICBvcmRlckxpbmVJZDogU2NhbGFyc1snSUQnXTtcbiAgcXVhbnRpdHk6IFNjYWxhcnNbJ0ludCddO1xufTtcblxuZXhwb3J0IHR5cGUgT3JkZXJMaXN0ID0gUGFnaW5hdGVkTGlzdCAmIHtcbiAgX190eXBlbmFtZT86ICdPcmRlckxpc3QnO1xuICBpdGVtczogQXJyYXk8T3JkZXI+O1xuICB0b3RhbEl0ZW1zOiBTY2FsYXJzWydJbnQnXTtcbn07XG5cbmV4cG9ydCB0eXBlIE9yZGVyTGlzdE9wdGlvbnMgPSB7XG4gIC8qKiBBbGxvd3MgdGhlIHJlc3VsdHMgdG8gYmUgZmlsdGVyZWQgKi9cbiAgZmlsdGVyPzogSW5wdXRNYXliZTxPcmRlckZpbHRlclBhcmFtZXRlcj47XG4gIC8qKiBTcGVjaWZpZXMgd2hldGhlciBtdWx0aXBsZSBcImZpbHRlclwiIGFyZ3VtZW50cyBzaG91bGQgYmUgY29tYmluZXMgd2l0aCBhIGxvZ2ljYWwgQU5EIG9yIE9SIG9wZXJhdGlvbi4gRGVmYXVsdHMgdG8gQU5ELiAqL1xuICBmaWx0ZXJPcGVyYXRvcj86IElucHV0TWF5YmU8TG9naWNhbE9wZXJhdG9yPjtcbiAgLyoqIFNraXBzIHRoZSBmaXJzdCBuIHJlc3VsdHMsIGZvciB1c2UgaW4gcGFnaW5hdGlvbiAqL1xuICBza2lwPzogSW5wdXRNYXliZTxTY2FsYXJzWydJbnQnXT47XG4gIC8qKiBTcGVjaWZpZXMgd2hpY2ggcHJvcGVydGllcyB0byBzb3J0IHRoZSByZXN1bHRzIGJ5ICovXG4gIHNvcnQ/OiBJbnB1dE1heWJlPE9yZGVyU29ydFBhcmFtZXRlcj47XG4gIC8qKiBUYWtlcyBuIHJlc3VsdHMsIGZvciB1c2UgaW4gcGFnaW5hdGlvbiAqL1xuICB0YWtlPzogSW5wdXRNYXliZTxTY2FsYXJzWydJbnQnXT47XG59O1xuXG5leHBvcnQgdHlwZSBPcmRlck1vZGlmaWNhdGlvbiA9IE5vZGUgJiB7XG4gIF9fdHlwZW5hbWU/OiAnT3JkZXJNb2RpZmljYXRpb24nO1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBpc1NldHRsZWQ6IFNjYWxhcnNbJ0Jvb2xlYW4nXTtcbiAgbm90ZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIG9yZGVySXRlbXM/OiBNYXliZTxBcnJheTxPcmRlckl0ZW0+PjtcbiAgcGF5bWVudD86IE1heWJlPFBheW1lbnQ+O1xuICBwcmljZUNoYW5nZTogU2NhbGFyc1snSW50J107XG4gIHJlZnVuZD86IE1heWJlPFJlZnVuZD47XG4gIHN1cmNoYXJnZXM/OiBNYXliZTxBcnJheTxTdXJjaGFyZ2U+PjtcbiAgdXBkYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xufTtcblxuLyoqIFJldHVybmVkIHdoZW4gYXR0ZW1wdGluZyB0byBtb2RpZnkgdGhlIGNvbnRlbnRzIG9mIGFuIE9yZGVyIHRoYXQgaXMgbm90IGluIHRoZSBgTW9kaWZ5aW5nYCBzdGF0ZS4gKi9cbmV4cG9ydCB0eXBlIE9yZGVyTW9kaWZpY2F0aW9uU3RhdGVFcnJvciA9IEVycm9yUmVzdWx0ICYge1xuICBfX3R5cGVuYW1lPzogJ09yZGVyTW9kaWZpY2F0aW9uU3RhdGVFcnJvcic7XG4gIGVycm9yQ29kZTogRXJyb3JDb2RlO1xuICBtZXNzYWdlOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbmV4cG9ydCB0eXBlIE9yZGVyUHJvY2Vzc1N0YXRlID0ge1xuICBfX3R5cGVuYW1lPzogJ09yZGVyUHJvY2Vzc1N0YXRlJztcbiAgbmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHRvOiBBcnJheTxTY2FsYXJzWydTdHJpbmcnXT47XG59O1xuXG5leHBvcnQgdHlwZSBPcmRlclNvcnRQYXJhbWV0ZXIgPSB7XG4gIGNvZGU/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIGNyZWF0ZWRBdD86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgY3VzdG9tZXJMYXN0TmFtZT86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgaWQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIG9yZGVyUGxhY2VkQXQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIHNoaXBwaW5nPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBzaGlwcGluZ1dpdGhUYXg/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIHN0YXRlPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBzdWJUb3RhbD86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgc3ViVG90YWxXaXRoVGF4PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICB0b3RhbD86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgdG90YWxRdWFudGl0eT86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgdG90YWxXaXRoVGF4PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICB1cGRhdGVkQXQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG59O1xuXG4vKiogUmV0dXJuZWQgaWYgdGhlcmUgaXMgYW4gZXJyb3IgaW4gdHJhbnNpdGlvbmluZyB0aGUgT3JkZXIgc3RhdGUgKi9cbmV4cG9ydCB0eXBlIE9yZGVyU3RhdGVUcmFuc2l0aW9uRXJyb3IgPSBFcnJvclJlc3VsdCAmIHtcbiAgX190eXBlbmFtZT86ICdPcmRlclN0YXRlVHJhbnNpdGlvbkVycm9yJztcbiAgZXJyb3JDb2RlOiBFcnJvckNvZGU7XG4gIGZyb21TdGF0ZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIG1lc3NhZ2U6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB0b1N0YXRlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgdHJhbnNpdGlvbkVycm9yOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbi8qKlxuICogQSBzdW1tYXJ5IG9mIHRoZSB0YXhlcyBiZWluZyBhcHBsaWVkIHRvIHRoaXMgb3JkZXIsIGdyb3VwZWRcbiAqIGJ5IHRheFJhdGUuXG4gKi9cbmV4cG9ydCB0eXBlIE9yZGVyVGF4U3VtbWFyeSA9IHtcbiAgX190eXBlbmFtZT86ICdPcmRlclRheFN1bW1hcnknO1xuICAvKiogQSBkZXNjcmlwdGlvbiBvZiB0aGlzIHRheCAqL1xuICBkZXNjcmlwdGlvbjogU2NhbGFyc1snU3RyaW5nJ107XG4gIC8qKiBUaGUgdG90YWwgbmV0IHByaWNlIG9yIE9yZGVySXRlbXMgdG8gd2hpY2ggdGhpcyB0YXhSYXRlIGFwcGxpZXMgKi9cbiAgdGF4QmFzZTogU2NhbGFyc1snSW50J107XG4gIC8qKiBUaGUgdGF4UmF0ZSBhcyBhIHBlcmNlbnRhZ2UgKi9cbiAgdGF4UmF0ZTogU2NhbGFyc1snRmxvYXQnXTtcbiAgLyoqIFRoZSB0b3RhbCB0YXggYmVpbmcgYXBwbGllZCB0byB0aGUgT3JkZXIgYXQgdGhpcyB0YXhSYXRlICovXG4gIHRheFRvdGFsOiBTY2FsYXJzWydJbnQnXTtcbn07XG5cbmV4cG9ydCB0eXBlIFBhZ2luYXRlZExpc3QgPSB7XG4gIGl0ZW1zOiBBcnJheTxOb2RlPjtcbiAgdG90YWxJdGVtczogU2NhbGFyc1snSW50J107XG59O1xuXG5leHBvcnQgdHlwZSBQYXltZW50ID0gTm9kZSAmIHtcbiAgX190eXBlbmFtZT86ICdQYXltZW50JztcbiAgYW1vdW50OiBTY2FsYXJzWydJbnQnXTtcbiAgY3JlYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICBlcnJvck1lc3NhZ2U/OiBNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBtZXRhZGF0YT86IE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIG1ldGhvZDogU2NhbGFyc1snU3RyaW5nJ107XG4gIG5leHRTdGF0ZXM6IEFycmF5PFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgcmVmdW5kczogQXJyYXk8UmVmdW5kPjtcbiAgc3RhdGU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB0cmFuc2FjdGlvbklkPzogTWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICB1cGRhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG5leHBvcnQgdHlwZSBQYXltZW50TWV0aG9kID0gTm9kZSAmIHtcbiAgX190eXBlbmFtZT86ICdQYXltZW50TWV0aG9kJztcbiAgY2hlY2tlcj86IE1heWJlPENvbmZpZ3VyYWJsZU9wZXJhdGlvbj47XG4gIGNvZGU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGN1c3RvbUZpZWxkcz86IE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGRlc2NyaXB0aW9uOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgZW5hYmxlZDogU2NhbGFyc1snQm9vbGVhbiddO1xuICBoYW5kbGVyOiBDb25maWd1cmFibGVPcGVyYXRpb247XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBuYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgdXBkYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xufTtcblxuZXhwb3J0IHR5cGUgUGF5bWVudE1ldGhvZEZpbHRlclBhcmFtZXRlciA9IHtcbiAgY29kZT86IElucHV0TWF5YmU8U3RyaW5nT3BlcmF0b3JzPjtcbiAgY3JlYXRlZEF0PzogSW5wdXRNYXliZTxEYXRlT3BlcmF0b3JzPjtcbiAgZGVzY3JpcHRpb24/OiBJbnB1dE1heWJlPFN0cmluZ09wZXJhdG9ycz47XG4gIGVuYWJsZWQ/OiBJbnB1dE1heWJlPEJvb2xlYW5PcGVyYXRvcnM+O1xuICBpZD86IElucHV0TWF5YmU8SWRPcGVyYXRvcnM+O1xuICBuYW1lPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICB1cGRhdGVkQXQ/OiBJbnB1dE1heWJlPERhdGVPcGVyYXRvcnM+O1xufTtcblxuZXhwb3J0IHR5cGUgUGF5bWVudE1ldGhvZExpc3QgPSBQYWdpbmF0ZWRMaXN0ICYge1xuICBfX3R5cGVuYW1lPzogJ1BheW1lbnRNZXRob2RMaXN0JztcbiAgaXRlbXM6IEFycmF5PFBheW1lbnRNZXRob2Q+O1xuICB0b3RhbEl0ZW1zOiBTY2FsYXJzWydJbnQnXTtcbn07XG5cbmV4cG9ydCB0eXBlIFBheW1lbnRNZXRob2RMaXN0T3B0aW9ucyA9IHtcbiAgLyoqIEFsbG93cyB0aGUgcmVzdWx0cyB0byBiZSBmaWx0ZXJlZCAqL1xuICBmaWx0ZXI/OiBJbnB1dE1heWJlPFBheW1lbnRNZXRob2RGaWx0ZXJQYXJhbWV0ZXI+O1xuICAvKiogU3BlY2lmaWVzIHdoZXRoZXIgbXVsdGlwbGUgXCJmaWx0ZXJcIiBhcmd1bWVudHMgc2hvdWxkIGJlIGNvbWJpbmVzIHdpdGggYSBsb2dpY2FsIEFORCBvciBPUiBvcGVyYXRpb24uIERlZmF1bHRzIHRvIEFORC4gKi9cbiAgZmlsdGVyT3BlcmF0b3I/OiBJbnB1dE1heWJlPExvZ2ljYWxPcGVyYXRvcj47XG4gIC8qKiBTa2lwcyB0aGUgZmlyc3QgbiByZXN1bHRzLCBmb3IgdXNlIGluIHBhZ2luYXRpb24gKi9cbiAgc2tpcD86IElucHV0TWF5YmU8U2NhbGFyc1snSW50J10+O1xuICAvKiogU3BlY2lmaWVzIHdoaWNoIHByb3BlcnRpZXMgdG8gc29ydCB0aGUgcmVzdWx0cyBieSAqL1xuICBzb3J0PzogSW5wdXRNYXliZTxQYXltZW50TWV0aG9kU29ydFBhcmFtZXRlcj47XG4gIC8qKiBUYWtlcyBuIHJlc3VsdHMsIGZvciB1c2UgaW4gcGFnaW5hdGlvbiAqL1xuICB0YWtlPzogSW5wdXRNYXliZTxTY2FsYXJzWydJbnQnXT47XG59O1xuXG4vKipcbiAqIFJldHVybmVkIHdoZW4gYSBjYWxsIHRvIG1vZGlmeU9yZGVyIGZhaWxzIHRvIGluY2x1ZGUgYSBwYXltZW50TWV0aG9kIGV2ZW5cbiAqIHRob3VnaCB0aGUgcHJpY2UgaGFzIGluY3JlYXNlZCBhcyBhIHJlc3VsdCBvZiB0aGUgY2hhbmdlcy5cbiAqL1xuZXhwb3J0IHR5cGUgUGF5bWVudE1ldGhvZE1pc3NpbmdFcnJvciA9IEVycm9yUmVzdWx0ICYge1xuICBfX3R5cGVuYW1lPzogJ1BheW1lbnRNZXRob2RNaXNzaW5nRXJyb3InO1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG5leHBvcnQgdHlwZSBQYXltZW50TWV0aG9kUXVvdGUgPSB7XG4gIF9fdHlwZW5hbWU/OiAnUGF5bWVudE1ldGhvZFF1b3RlJztcbiAgY29kZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIGN1c3RvbUZpZWxkcz86IE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGRlc2NyaXB0aW9uOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgZWxpZ2liaWxpdHlNZXNzYWdlPzogTWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgaXNFbGlnaWJsZTogU2NhbGFyc1snQm9vbGVhbiddO1xuICBuYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbmV4cG9ydCB0eXBlIFBheW1lbnRNZXRob2RTb3J0UGFyYW1ldGVyID0ge1xuICBjb2RlPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBjcmVhdGVkQXQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIGRlc2NyaXB0aW9uPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBpZD86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgbmFtZT86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgdXBkYXRlZEF0PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xufTtcblxuLyoqIFJldHVybmVkIGlmIGFuIGF0dGVtcHRpbmcgdG8gcmVmdW5kIGEgUGF5bWVudCBhZ2FpbnN0IE9yZGVyTGluZXMgZnJvbSBhIGRpZmZlcmVudCBPcmRlciAqL1xuZXhwb3J0IHR5cGUgUGF5bWVudE9yZGVyTWlzbWF0Y2hFcnJvciA9IEVycm9yUmVzdWx0ICYge1xuICBfX3R5cGVuYW1lPzogJ1BheW1lbnRPcmRlck1pc21hdGNoRXJyb3InO1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG4vKiogUmV0dXJuZWQgd2hlbiB0aGVyZSBpcyBhbiBlcnJvciBpbiB0cmFuc2l0aW9uaW5nIHRoZSBQYXltZW50IHN0YXRlICovXG5leHBvcnQgdHlwZSBQYXltZW50U3RhdGVUcmFuc2l0aW9uRXJyb3IgPSBFcnJvclJlc3VsdCAmIHtcbiAgX190eXBlbmFtZT86ICdQYXltZW50U3RhdGVUcmFuc2l0aW9uRXJyb3InO1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgZnJvbVN0YXRlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHRvU3RhdGU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB0cmFuc2l0aW9uRXJyb3I6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuLyoqXG4gKiBAZGVzY3JpcHRpb25cbiAqIFBlcm1pc3Npb25zIGZvciBhZG1pbmlzdHJhdG9ycyBhbmQgY3VzdG9tZXJzLiBVc2VkIHRvIGNvbnRyb2wgYWNjZXNzIHRvXG4gKiBHcmFwaFFMIHJlc29sdmVycyB2aWEgdGhlIHtAbGluayBBbGxvd30gZGVjb3JhdG9yLlxuICpcbiAqIEBkb2NzQ2F0ZWdvcnkgY29tbW9uXG4gKi9cbmV4cG9ydCBlbnVtIFBlcm1pc3Npb24ge1xuICAvKiogQXV0aGVudGljYXRlZCBtZWFucyBzaW1wbHkgdGhhdCB0aGUgdXNlciBpcyBsb2dnZWQgaW4gKi9cbiAgQXV0aGVudGljYXRlZCA9ICdBdXRoZW50aWNhdGVkJyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGNyZWF0ZSBBZG1pbmlzdHJhdG9yICovXG4gIENyZWF0ZUFkbWluaXN0cmF0b3IgPSAnQ3JlYXRlQWRtaW5pc3RyYXRvcicsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byBjcmVhdGUgQXNzZXQgKi9cbiAgQ3JlYXRlQXNzZXQgPSAnQ3JlYXRlQXNzZXQnLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gY3JlYXRlIFByb2R1Y3RzLCBGYWNldHMsIEFzc2V0cywgQ29sbGVjdGlvbnMgKi9cbiAgQ3JlYXRlQ2F0YWxvZyA9ICdDcmVhdGVDYXRhbG9nJyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGNyZWF0ZSBDaGFubmVsICovXG4gIENyZWF0ZUNoYW5uZWwgPSAnQ3JlYXRlQ2hhbm5lbCcsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byBjcmVhdGUgQ29sbGVjdGlvbiAqL1xuICBDcmVhdGVDb2xsZWN0aW9uID0gJ0NyZWF0ZUNvbGxlY3Rpb24nLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gY3JlYXRlIENvdW50cnkgKi9cbiAgQ3JlYXRlQ291bnRyeSA9ICdDcmVhdGVDb3VudHJ5JyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGNyZWF0ZSBDdXN0b21lciAqL1xuICBDcmVhdGVDdXN0b21lciA9ICdDcmVhdGVDdXN0b21lcicsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byBjcmVhdGUgQ3VzdG9tZXJHcm91cCAqL1xuICBDcmVhdGVDdXN0b21lckdyb3VwID0gJ0NyZWF0ZUN1c3RvbWVyR3JvdXAnLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gY3JlYXRlIEZhY2V0ICovXG4gIENyZWF0ZUZhY2V0ID0gJ0NyZWF0ZUZhY2V0JyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGNyZWF0ZSBPcmRlciAqL1xuICBDcmVhdGVPcmRlciA9ICdDcmVhdGVPcmRlcicsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byBjcmVhdGUgUGF5bWVudE1ldGhvZCAqL1xuICBDcmVhdGVQYXltZW50TWV0aG9kID0gJ0NyZWF0ZVBheW1lbnRNZXRob2QnLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gY3JlYXRlIFByb2R1Y3QgKi9cbiAgQ3JlYXRlUHJvZHVjdCA9ICdDcmVhdGVQcm9kdWN0JyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGNyZWF0ZSBQcm9tb3Rpb24gKi9cbiAgQ3JlYXRlUHJvbW90aW9uID0gJ0NyZWF0ZVByb21vdGlvbicsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byBjcmVhdGUgUGF5bWVudE1ldGhvZHMsIFNoaXBwaW5nTWV0aG9kcywgVGF4Q2F0ZWdvcmllcywgVGF4UmF0ZXMsIFpvbmVzLCBDb3VudHJpZXMsIFN5c3RlbSAmIEdsb2JhbFNldHRpbmdzICovXG4gIENyZWF0ZVNldHRpbmdzID0gJ0NyZWF0ZVNldHRpbmdzJyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGNyZWF0ZSBTaGlwcGluZ01ldGhvZCAqL1xuICBDcmVhdGVTaGlwcGluZ01ldGhvZCA9ICdDcmVhdGVTaGlwcGluZ01ldGhvZCcsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byBjcmVhdGUgU3lzdGVtICovXG4gIENyZWF0ZVN5c3RlbSA9ICdDcmVhdGVTeXN0ZW0nLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gY3JlYXRlIFRhZyAqL1xuICBDcmVhdGVUYWcgPSAnQ3JlYXRlVGFnJyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGNyZWF0ZSBUYXhDYXRlZ29yeSAqL1xuICBDcmVhdGVUYXhDYXRlZ29yeSA9ICdDcmVhdGVUYXhDYXRlZ29yeScsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byBjcmVhdGUgVGF4UmF0ZSAqL1xuICBDcmVhdGVUYXhSYXRlID0gJ0NyZWF0ZVRheFJhdGUnLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gY3JlYXRlIFpvbmUgKi9cbiAgQ3JlYXRlWm9uZSA9ICdDcmVhdGVab25lJyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGRlbGV0ZSBBZG1pbmlzdHJhdG9yICovXG4gIERlbGV0ZUFkbWluaXN0cmF0b3IgPSAnRGVsZXRlQWRtaW5pc3RyYXRvcicsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byBkZWxldGUgQXNzZXQgKi9cbiAgRGVsZXRlQXNzZXQgPSAnRGVsZXRlQXNzZXQnLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gZGVsZXRlIFByb2R1Y3RzLCBGYWNldHMsIEFzc2V0cywgQ29sbGVjdGlvbnMgKi9cbiAgRGVsZXRlQ2F0YWxvZyA9ICdEZWxldGVDYXRhbG9nJyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGRlbGV0ZSBDaGFubmVsICovXG4gIERlbGV0ZUNoYW5uZWwgPSAnRGVsZXRlQ2hhbm5lbCcsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byBkZWxldGUgQ29sbGVjdGlvbiAqL1xuICBEZWxldGVDb2xsZWN0aW9uID0gJ0RlbGV0ZUNvbGxlY3Rpb24nLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gZGVsZXRlIENvdW50cnkgKi9cbiAgRGVsZXRlQ291bnRyeSA9ICdEZWxldGVDb3VudHJ5JyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGRlbGV0ZSBDdXN0b21lciAqL1xuICBEZWxldGVDdXN0b21lciA9ICdEZWxldGVDdXN0b21lcicsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byBkZWxldGUgQ3VzdG9tZXJHcm91cCAqL1xuICBEZWxldGVDdXN0b21lckdyb3VwID0gJ0RlbGV0ZUN1c3RvbWVyR3JvdXAnLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gZGVsZXRlIEZhY2V0ICovXG4gIERlbGV0ZUZhY2V0ID0gJ0RlbGV0ZUZhY2V0JyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGRlbGV0ZSBPcmRlciAqL1xuICBEZWxldGVPcmRlciA9ICdEZWxldGVPcmRlcicsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byBkZWxldGUgUGF5bWVudE1ldGhvZCAqL1xuICBEZWxldGVQYXltZW50TWV0aG9kID0gJ0RlbGV0ZVBheW1lbnRNZXRob2QnLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gZGVsZXRlIFByb2R1Y3QgKi9cbiAgRGVsZXRlUHJvZHVjdCA9ICdEZWxldGVQcm9kdWN0JyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGRlbGV0ZSBQcm9tb3Rpb24gKi9cbiAgRGVsZXRlUHJvbW90aW9uID0gJ0RlbGV0ZVByb21vdGlvbicsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byBkZWxldGUgUGF5bWVudE1ldGhvZHMsIFNoaXBwaW5nTWV0aG9kcywgVGF4Q2F0ZWdvcmllcywgVGF4UmF0ZXMsIFpvbmVzLCBDb3VudHJpZXMsIFN5c3RlbSAmIEdsb2JhbFNldHRpbmdzICovXG4gIERlbGV0ZVNldHRpbmdzID0gJ0RlbGV0ZVNldHRpbmdzJyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGRlbGV0ZSBTaGlwcGluZ01ldGhvZCAqL1xuICBEZWxldGVTaGlwcGluZ01ldGhvZCA9ICdEZWxldGVTaGlwcGluZ01ldGhvZCcsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byBkZWxldGUgU3lzdGVtICovXG4gIERlbGV0ZVN5c3RlbSA9ICdEZWxldGVTeXN0ZW0nLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gZGVsZXRlIFRhZyAqL1xuICBEZWxldGVUYWcgPSAnRGVsZXRlVGFnJyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGRlbGV0ZSBUYXhDYXRlZ29yeSAqL1xuICBEZWxldGVUYXhDYXRlZ29yeSA9ICdEZWxldGVUYXhDYXRlZ29yeScsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byBkZWxldGUgVGF4UmF0ZSAqL1xuICBEZWxldGVUYXhSYXRlID0gJ0RlbGV0ZVRheFJhdGUnLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gZGVsZXRlIFpvbmUgKi9cbiAgRGVsZXRlWm9uZSA9ICdEZWxldGVab25lJyxcbiAgLyoqIE93bmVyIG1lYW5zIHRoZSB1c2VyIG93bnMgdGhpcyBlbnRpdHksIGUuZy4gYSBDdXN0b21lcidzIG93biBPcmRlciAqL1xuICBPd25lciA9ICdPd25lcicsXG4gIFBsYWNlaG9sZGVyID0gJ1BsYWNlaG9sZGVyJyxcbiAgLyoqIFB1YmxpYyBtZWFucyBhbnkgdW5hdXRoZW50aWNhdGVkIHVzZXIgbWF5IHBlcmZvcm0gdGhlIG9wZXJhdGlvbiAqL1xuICBQdWJsaWMgPSAnUHVibGljJyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIHJlYWQgQWRtaW5pc3RyYXRvciAqL1xuICBSZWFkQWRtaW5pc3RyYXRvciA9ICdSZWFkQWRtaW5pc3RyYXRvcicsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byByZWFkIEFzc2V0ICovXG4gIFJlYWRBc3NldCA9ICdSZWFkQXNzZXQnLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gcmVhZCBQcm9kdWN0cywgRmFjZXRzLCBBc3NldHMsIENvbGxlY3Rpb25zICovXG4gIFJlYWRDYXRhbG9nID0gJ1JlYWRDYXRhbG9nJyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIHJlYWQgQ2hhbm5lbCAqL1xuICBSZWFkQ2hhbm5lbCA9ICdSZWFkQ2hhbm5lbCcsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byByZWFkIENvbGxlY3Rpb24gKi9cbiAgUmVhZENvbGxlY3Rpb24gPSAnUmVhZENvbGxlY3Rpb24nLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gcmVhZCBDb3VudHJ5ICovXG4gIFJlYWRDb3VudHJ5ID0gJ1JlYWRDb3VudHJ5JyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIHJlYWQgQ3VzdG9tZXIgKi9cbiAgUmVhZEN1c3RvbWVyID0gJ1JlYWRDdXN0b21lcicsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byByZWFkIEN1c3RvbWVyR3JvdXAgKi9cbiAgUmVhZEN1c3RvbWVyR3JvdXAgPSAnUmVhZEN1c3RvbWVyR3JvdXAnLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gcmVhZCBGYWNldCAqL1xuICBSZWFkRmFjZXQgPSAnUmVhZEZhY2V0JyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIHJlYWQgT3JkZXIgKi9cbiAgUmVhZE9yZGVyID0gJ1JlYWRPcmRlcicsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byByZWFkIFBheW1lbnRNZXRob2QgKi9cbiAgUmVhZFBheW1lbnRNZXRob2QgPSAnUmVhZFBheW1lbnRNZXRob2QnLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gcmVhZCBQcm9kdWN0ICovXG4gIFJlYWRQcm9kdWN0ID0gJ1JlYWRQcm9kdWN0JyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIHJlYWQgUHJvbW90aW9uICovXG4gIFJlYWRQcm9tb3Rpb24gPSAnUmVhZFByb21vdGlvbicsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byByZWFkIFBheW1lbnRNZXRob2RzLCBTaGlwcGluZ01ldGhvZHMsIFRheENhdGVnb3JpZXMsIFRheFJhdGVzLCBab25lcywgQ291bnRyaWVzLCBTeXN0ZW0gJiBHbG9iYWxTZXR0aW5ncyAqL1xuICBSZWFkU2V0dGluZ3MgPSAnUmVhZFNldHRpbmdzJyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIHJlYWQgU2hpcHBpbmdNZXRob2QgKi9cbiAgUmVhZFNoaXBwaW5nTWV0aG9kID0gJ1JlYWRTaGlwcGluZ01ldGhvZCcsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byByZWFkIFN5c3RlbSAqL1xuICBSZWFkU3lzdGVtID0gJ1JlYWRTeXN0ZW0nLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gcmVhZCBUYWcgKi9cbiAgUmVhZFRhZyA9ICdSZWFkVGFnJyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIHJlYWQgVGF4Q2F0ZWdvcnkgKi9cbiAgUmVhZFRheENhdGVnb3J5ID0gJ1JlYWRUYXhDYXRlZ29yeScsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byByZWFkIFRheFJhdGUgKi9cbiAgUmVhZFRheFJhdGUgPSAnUmVhZFRheFJhdGUnLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gcmVhZCBab25lICovXG4gIFJlYWRab25lID0gJ1JlYWRab25lJyxcbiAgLyoqIFN1cGVyQWRtaW4gaGFzIHVucmVzdHJpY3RlZCBhY2Nlc3MgdG8gYWxsIG9wZXJhdGlvbnMgKi9cbiAgU3VwZXJBZG1pbiA9ICdTdXBlckFkbWluJyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIHVwZGF0ZSBBZG1pbmlzdHJhdG9yICovXG4gIFVwZGF0ZUFkbWluaXN0cmF0b3IgPSAnVXBkYXRlQWRtaW5pc3RyYXRvcicsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byB1cGRhdGUgQXNzZXQgKi9cbiAgVXBkYXRlQXNzZXQgPSAnVXBkYXRlQXNzZXQnLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gdXBkYXRlIFByb2R1Y3RzLCBGYWNldHMsIEFzc2V0cywgQ29sbGVjdGlvbnMgKi9cbiAgVXBkYXRlQ2F0YWxvZyA9ICdVcGRhdGVDYXRhbG9nJyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIHVwZGF0ZSBDaGFubmVsICovXG4gIFVwZGF0ZUNoYW5uZWwgPSAnVXBkYXRlQ2hhbm5lbCcsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byB1cGRhdGUgQ29sbGVjdGlvbiAqL1xuICBVcGRhdGVDb2xsZWN0aW9uID0gJ1VwZGF0ZUNvbGxlY3Rpb24nLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gdXBkYXRlIENvdW50cnkgKi9cbiAgVXBkYXRlQ291bnRyeSA9ICdVcGRhdGVDb3VudHJ5JyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIHVwZGF0ZSBDdXN0b21lciAqL1xuICBVcGRhdGVDdXN0b21lciA9ICdVcGRhdGVDdXN0b21lcicsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byB1cGRhdGUgQ3VzdG9tZXJHcm91cCAqL1xuICBVcGRhdGVDdXN0b21lckdyb3VwID0gJ1VwZGF0ZUN1c3RvbWVyR3JvdXAnLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gdXBkYXRlIEZhY2V0ICovXG4gIFVwZGF0ZUZhY2V0ID0gJ1VwZGF0ZUZhY2V0JyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIHVwZGF0ZSBHbG9iYWxTZXR0aW5ncyAqL1xuICBVcGRhdGVHbG9iYWxTZXR0aW5ncyA9ICdVcGRhdGVHbG9iYWxTZXR0aW5ncycsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byB1cGRhdGUgT3JkZXIgKi9cbiAgVXBkYXRlT3JkZXIgPSAnVXBkYXRlT3JkZXInLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gdXBkYXRlIFBheW1lbnRNZXRob2QgKi9cbiAgVXBkYXRlUGF5bWVudE1ldGhvZCA9ICdVcGRhdGVQYXltZW50TWV0aG9kJyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIHVwZGF0ZSBQcm9kdWN0ICovXG4gIFVwZGF0ZVByb2R1Y3QgPSAnVXBkYXRlUHJvZHVjdCcsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byB1cGRhdGUgUHJvbW90aW9uICovXG4gIFVwZGF0ZVByb21vdGlvbiA9ICdVcGRhdGVQcm9tb3Rpb24nLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gdXBkYXRlIFBheW1lbnRNZXRob2RzLCBTaGlwcGluZ01ldGhvZHMsIFRheENhdGVnb3JpZXMsIFRheFJhdGVzLCBab25lcywgQ291bnRyaWVzLCBTeXN0ZW0gJiBHbG9iYWxTZXR0aW5ncyAqL1xuICBVcGRhdGVTZXR0aW5ncyA9ICdVcGRhdGVTZXR0aW5ncycsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byB1cGRhdGUgU2hpcHBpbmdNZXRob2QgKi9cbiAgVXBkYXRlU2hpcHBpbmdNZXRob2QgPSAnVXBkYXRlU2hpcHBpbmdNZXRob2QnLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gdXBkYXRlIFN5c3RlbSAqL1xuICBVcGRhdGVTeXN0ZW0gPSAnVXBkYXRlU3lzdGVtJyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIHVwZGF0ZSBUYWcgKi9cbiAgVXBkYXRlVGFnID0gJ1VwZGF0ZVRhZycsXG4gIC8qKiBHcmFudHMgcGVybWlzc2lvbiB0byB1cGRhdGUgVGF4Q2F0ZWdvcnkgKi9cbiAgVXBkYXRlVGF4Q2F0ZWdvcnkgPSAnVXBkYXRlVGF4Q2F0ZWdvcnknLFxuICAvKiogR3JhbnRzIHBlcm1pc3Npb24gdG8gdXBkYXRlIFRheFJhdGUgKi9cbiAgVXBkYXRlVGF4UmF0ZSA9ICdVcGRhdGVUYXhSYXRlJyxcbiAgLyoqIEdyYW50cyBwZXJtaXNzaW9uIHRvIHVwZGF0ZSBab25lICovXG4gIFVwZGF0ZVpvbmUgPSAnVXBkYXRlWm9uZSdcbn1cblxuZXhwb3J0IHR5cGUgUGVybWlzc2lvbkRlZmluaXRpb24gPSB7XG4gIF9fdHlwZW5hbWU/OiAnUGVybWlzc2lvbkRlZmluaXRpb24nO1xuICBhc3NpZ25hYmxlOiBTY2FsYXJzWydCb29sZWFuJ107XG4gIGRlc2NyaXB0aW9uOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgbmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG4vKiogVGhlIHByaWNlIHJhbmdlIHdoZXJlIHRoZSByZXN1bHQgaGFzIG1vcmUgdGhhbiBvbmUgcHJpY2UgKi9cbmV4cG9ydCB0eXBlIFByaWNlUmFuZ2UgPSB7XG4gIF9fdHlwZW5hbWU/OiAnUHJpY2VSYW5nZSc7XG4gIG1heDogU2NhbGFyc1snSW50J107XG4gIG1pbjogU2NhbGFyc1snSW50J107XG59O1xuXG5leHBvcnQgdHlwZSBQcm9kdWN0ID0gTm9kZSAmIHtcbiAgX190eXBlbmFtZT86ICdQcm9kdWN0JztcbiAgYXNzZXRzOiBBcnJheTxBc3NldD47XG4gIGNoYW5uZWxzOiBBcnJheTxDaGFubmVsPjtcbiAgY29sbGVjdGlvbnM6IEFycmF5PENvbGxlY3Rpb24+O1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGN1c3RvbUZpZWxkcz86IE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGRlc2NyaXB0aW9uOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgZW5hYmxlZDogU2NhbGFyc1snQm9vbGVhbiddO1xuICBmYWNldFZhbHVlczogQXJyYXk8RmFjZXRWYWx1ZT47XG4gIGZlYXR1cmVkQXNzZXQ/OiBNYXliZTxBc3NldD47XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZTtcbiAgbmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIG9wdGlvbkdyb3VwczogQXJyYXk8UHJvZHVjdE9wdGlvbkdyb3VwPjtcbiAgc2x1ZzogU2NhbGFyc1snU3RyaW5nJ107XG4gIHRyYW5zbGF0aW9uczogQXJyYXk8UHJvZHVjdFRyYW5zbGF0aW9uPjtcbiAgdXBkYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICAvKiogUmV0dXJucyBhIHBhZ2luYXRlZCwgc29ydGFibGUsIGZpbHRlcmFibGUgbGlzdCBvZiBQcm9kdWN0VmFyaWFudHMgKi9cbiAgdmFyaWFudExpc3Q6IFByb2R1Y3RWYXJpYW50TGlzdDtcbiAgLyoqIFJldHVybnMgYWxsIFByb2R1Y3RWYXJpYW50cyAqL1xuICB2YXJpYW50czogQXJyYXk8UHJvZHVjdFZhcmlhbnQ+O1xufTtcblxuXG5leHBvcnQgdHlwZSBQcm9kdWN0VmFyaWFudExpc3RBcmdzID0ge1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxQcm9kdWN0VmFyaWFudExpc3RPcHRpb25zPjtcbn07XG5cbmV4cG9ydCB0eXBlIFByb2R1Y3RGaWx0ZXJQYXJhbWV0ZXIgPSB7XG4gIGNyZWF0ZWRBdD86IElucHV0TWF5YmU8RGF0ZU9wZXJhdG9ycz47XG4gIGRlc2NyaXB0aW9uPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICBlbmFibGVkPzogSW5wdXRNYXliZTxCb29sZWFuT3BlcmF0b3JzPjtcbiAgaWQ/OiBJbnB1dE1heWJlPElkT3BlcmF0b3JzPjtcbiAgbGFuZ3VhZ2VDb2RlPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICBuYW1lPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICBzbHVnPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICB1cGRhdGVkQXQ/OiBJbnB1dE1heWJlPERhdGVPcGVyYXRvcnM+O1xufTtcblxuZXhwb3J0IHR5cGUgUHJvZHVjdExpc3QgPSBQYWdpbmF0ZWRMaXN0ICYge1xuICBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RMaXN0JztcbiAgaXRlbXM6IEFycmF5PFByb2R1Y3Q+O1xuICB0b3RhbEl0ZW1zOiBTY2FsYXJzWydJbnQnXTtcbn07XG5cbmV4cG9ydCB0eXBlIFByb2R1Y3RMaXN0T3B0aW9ucyA9IHtcbiAgLyoqIEFsbG93cyB0aGUgcmVzdWx0cyB0byBiZSBmaWx0ZXJlZCAqL1xuICBmaWx0ZXI/OiBJbnB1dE1heWJlPFByb2R1Y3RGaWx0ZXJQYXJhbWV0ZXI+O1xuICAvKiogU3BlY2lmaWVzIHdoZXRoZXIgbXVsdGlwbGUgXCJmaWx0ZXJcIiBhcmd1bWVudHMgc2hvdWxkIGJlIGNvbWJpbmVzIHdpdGggYSBsb2dpY2FsIEFORCBvciBPUiBvcGVyYXRpb24uIERlZmF1bHRzIHRvIEFORC4gKi9cbiAgZmlsdGVyT3BlcmF0b3I/OiBJbnB1dE1heWJlPExvZ2ljYWxPcGVyYXRvcj47XG4gIC8qKiBTa2lwcyB0aGUgZmlyc3QgbiByZXN1bHRzLCBmb3IgdXNlIGluIHBhZ2luYXRpb24gKi9cbiAgc2tpcD86IElucHV0TWF5YmU8U2NhbGFyc1snSW50J10+O1xuICAvKiogU3BlY2lmaWVzIHdoaWNoIHByb3BlcnRpZXMgdG8gc29ydCB0aGUgcmVzdWx0cyBieSAqL1xuICBzb3J0PzogSW5wdXRNYXliZTxQcm9kdWN0U29ydFBhcmFtZXRlcj47XG4gIC8qKiBUYWtlcyBuIHJlc3VsdHMsIGZvciB1c2UgaW4gcGFnaW5hdGlvbiAqL1xuICB0YWtlPzogSW5wdXRNYXliZTxTY2FsYXJzWydJbnQnXT47XG59O1xuXG5leHBvcnQgdHlwZSBQcm9kdWN0T3B0aW9uID0gTm9kZSAmIHtcbiAgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uJztcbiAgY29kZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIGNyZWF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgY3VzdG9tRmllbGRzPzogTWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZ3JvdXA6IFByb2R1Y3RPcHRpb25Hcm91cDtcbiAgZ3JvdXBJZDogU2NhbGFyc1snSUQnXTtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlO1xuICBuYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgdHJhbnNsYXRpb25zOiBBcnJheTxQcm9kdWN0T3B0aW9uVHJhbnNsYXRpb24+O1xuICB1cGRhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG5leHBvcnQgdHlwZSBQcm9kdWN0T3B0aW9uR3JvdXAgPSBOb2RlICYge1xuICBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RPcHRpb25Hcm91cCc7XG4gIGNvZGU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGN1c3RvbUZpZWxkcz86IE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZTtcbiAgbmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIG9wdGlvbnM6IEFycmF5PFByb2R1Y3RPcHRpb24+O1xuICB0cmFuc2xhdGlvbnM6IEFycmF5PFByb2R1Y3RPcHRpb25Hcm91cFRyYW5zbGF0aW9uPjtcbiAgdXBkYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xufTtcblxuZXhwb3J0IHR5cGUgUHJvZHVjdE9wdGlvbkdyb3VwVHJhbnNsYXRpb24gPSB7XG4gIF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbkdyb3VwVHJhbnNsYXRpb24nO1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZTtcbiAgbmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHVwZGF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbn07XG5cbmV4cG9ydCB0eXBlIFByb2R1Y3RPcHRpb25Hcm91cFRyYW5zbGF0aW9uSW5wdXQgPSB7XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgaWQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0lEJ10+O1xuICBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZTtcbiAgbmFtZT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xufTtcblxuZXhwb3J0IHR5cGUgUHJvZHVjdE9wdGlvbkluVXNlRXJyb3IgPSBFcnJvclJlc3VsdCAmIHtcbiAgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uSW5Vc2VFcnJvcic7XG4gIGVycm9yQ29kZTogRXJyb3JDb2RlO1xuICBtZXNzYWdlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgb3B0aW9uR3JvdXBDb2RlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgcHJvZHVjdFZhcmlhbnRDb3VudDogU2NhbGFyc1snSW50J107XG59O1xuXG5leHBvcnQgdHlwZSBQcm9kdWN0T3B0aW9uVHJhbnNsYXRpb24gPSB7XG4gIF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvblRyYW5zbGF0aW9uJztcbiAgY3JlYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGU7XG4gIG5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB1cGRhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG5leHBvcnQgdHlwZSBQcm9kdWN0T3B0aW9uVHJhbnNsYXRpb25JbnB1dCA9IHtcbiAgY3VzdG9tRmllbGRzPzogSW5wdXRNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBpZD86IElucHV0TWF5YmU8U2NhbGFyc1snSUQnXT47XG4gIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlO1xuICBuYW1lPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG59O1xuXG5leHBvcnQgdHlwZSBQcm9kdWN0U29ydFBhcmFtZXRlciA9IHtcbiAgY3JlYXRlZEF0PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBkZXNjcmlwdGlvbj86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgaWQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIG5hbWU/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIHNsdWc/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIHVwZGF0ZWRBdD86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbn07XG5cbmV4cG9ydCB0eXBlIFByb2R1Y3RUcmFuc2xhdGlvbiA9IHtcbiAgX190eXBlbmFtZT86ICdQcm9kdWN0VHJhbnNsYXRpb24nO1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGRlc2NyaXB0aW9uOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlO1xuICBuYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgc2x1ZzogU2NhbGFyc1snU3RyaW5nJ107XG4gIHVwZGF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbn07XG5cbmV4cG9ydCB0eXBlIFByb2R1Y3RUcmFuc2xhdGlvbklucHV0ID0ge1xuICBjdXN0b21GaWVsZHM/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGRlc2NyaXB0aW9uPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIGlkPzogSW5wdXRNYXliZTxTY2FsYXJzWydJRCddPjtcbiAgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGU7XG4gIG5hbWU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgc2x1Zz86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xufTtcblxuZXhwb3J0IHR5cGUgUHJvZHVjdFZhcmlhbnQgPSBOb2RlICYge1xuICBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RWYXJpYW50JztcbiAgYXNzZXRzOiBBcnJheTxBc3NldD47XG4gIGNoYW5uZWxzOiBBcnJheTxDaGFubmVsPjtcbiAgY3JlYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICBjdXJyZW5jeUNvZGU6IEN1cnJlbmN5Q29kZTtcbiAgY3VzdG9tRmllbGRzPzogTWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZW5hYmxlZDogU2NhbGFyc1snQm9vbGVhbiddO1xuICBmYWNldFZhbHVlczogQXJyYXk8RmFjZXRWYWx1ZT47XG4gIGZlYXR1cmVkQXNzZXQ/OiBNYXliZTxBc3NldD47XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZTtcbiAgbmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIG9wdGlvbnM6IEFycmF5PFByb2R1Y3RPcHRpb24+O1xuICBvdXRPZlN0b2NrVGhyZXNob2xkOiBTY2FsYXJzWydJbnQnXTtcbiAgcHJpY2U6IFNjYWxhcnNbJ0ludCddO1xuICBwcmljZVdpdGhUYXg6IFNjYWxhcnNbJ0ludCddO1xuICBwcm9kdWN0OiBQcm9kdWN0O1xuICBwcm9kdWN0SWQ6IFNjYWxhcnNbJ0lEJ107XG4gIHNrdTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHN0b2NrQWxsb2NhdGVkOiBTY2FsYXJzWydJbnQnXTtcbiAgc3RvY2tMZXZlbDogU2NhbGFyc1snU3RyaW5nJ107XG4gIHN0b2NrTW92ZW1lbnRzOiBTdG9ja01vdmVtZW50TGlzdDtcbiAgc3RvY2tPbkhhbmQ6IFNjYWxhcnNbJ0ludCddO1xuICB0YXhDYXRlZ29yeTogVGF4Q2F0ZWdvcnk7XG4gIHRheFJhdGVBcHBsaWVkOiBUYXhSYXRlO1xuICB0cmFja0ludmVudG9yeTogR2xvYmFsRmxhZztcbiAgdHJhbnNsYXRpb25zOiBBcnJheTxQcm9kdWN0VmFyaWFudFRyYW5zbGF0aW9uPjtcbiAgdXBkYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICB1c2VHbG9iYWxPdXRPZlN0b2NrVGhyZXNob2xkOiBTY2FsYXJzWydCb29sZWFuJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIFByb2R1Y3RWYXJpYW50U3RvY2tNb3ZlbWVudHNBcmdzID0ge1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxTdG9ja01vdmVtZW50TGlzdE9wdGlvbnM+O1xufTtcblxuZXhwb3J0IHR5cGUgUHJvZHVjdFZhcmlhbnRGaWx0ZXJQYXJhbWV0ZXIgPSB7XG4gIGNyZWF0ZWRBdD86IElucHV0TWF5YmU8RGF0ZU9wZXJhdG9ycz47XG4gIGN1cnJlbmN5Q29kZT86IElucHV0TWF5YmU8U3RyaW5nT3BlcmF0b3JzPjtcbiAgZW5hYmxlZD86IElucHV0TWF5YmU8Qm9vbGVhbk9wZXJhdG9ycz47XG4gIGlkPzogSW5wdXRNYXliZTxJZE9wZXJhdG9ycz47XG4gIGxhbmd1YWdlQ29kZT86IElucHV0TWF5YmU8U3RyaW5nT3BlcmF0b3JzPjtcbiAgbmFtZT86IElucHV0TWF5YmU8U3RyaW5nT3BlcmF0b3JzPjtcbiAgb3V0T2ZTdG9ja1RocmVzaG9sZD86IElucHV0TWF5YmU8TnVtYmVyT3BlcmF0b3JzPjtcbiAgcHJpY2U/OiBJbnB1dE1heWJlPE51bWJlck9wZXJhdG9ycz47XG4gIHByaWNlV2l0aFRheD86IElucHV0TWF5YmU8TnVtYmVyT3BlcmF0b3JzPjtcbiAgcHJvZHVjdElkPzogSW5wdXRNYXliZTxJZE9wZXJhdG9ycz47XG4gIHNrdT86IElucHV0TWF5YmU8U3RyaW5nT3BlcmF0b3JzPjtcbiAgc3RvY2tBbGxvY2F0ZWQ/OiBJbnB1dE1heWJlPE51bWJlck9wZXJhdG9ycz47XG4gIHN0b2NrTGV2ZWw/OiBJbnB1dE1heWJlPFN0cmluZ09wZXJhdG9ycz47XG4gIHN0b2NrT25IYW5kPzogSW5wdXRNYXliZTxOdW1iZXJPcGVyYXRvcnM+O1xuICB0cmFja0ludmVudG9yeT86IElucHV0TWF5YmU8U3RyaW5nT3BlcmF0b3JzPjtcbiAgdXBkYXRlZEF0PzogSW5wdXRNYXliZTxEYXRlT3BlcmF0b3JzPjtcbiAgdXNlR2xvYmFsT3V0T2ZTdG9ja1RocmVzaG9sZD86IElucHV0TWF5YmU8Qm9vbGVhbk9wZXJhdG9ycz47XG59O1xuXG5leHBvcnQgdHlwZSBQcm9kdWN0VmFyaWFudExpc3QgPSBQYWdpbmF0ZWRMaXN0ICYge1xuICBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RWYXJpYW50TGlzdCc7XG4gIGl0ZW1zOiBBcnJheTxQcm9kdWN0VmFyaWFudD47XG4gIHRvdGFsSXRlbXM6IFNjYWxhcnNbJ0ludCddO1xufTtcblxuZXhwb3J0IHR5cGUgUHJvZHVjdFZhcmlhbnRMaXN0T3B0aW9ucyA9IHtcbiAgLyoqIEFsbG93cyB0aGUgcmVzdWx0cyB0byBiZSBmaWx0ZXJlZCAqL1xuICBmaWx0ZXI/OiBJbnB1dE1heWJlPFByb2R1Y3RWYXJpYW50RmlsdGVyUGFyYW1ldGVyPjtcbiAgLyoqIFNwZWNpZmllcyB3aGV0aGVyIG11bHRpcGxlIFwiZmlsdGVyXCIgYXJndW1lbnRzIHNob3VsZCBiZSBjb21iaW5lcyB3aXRoIGEgbG9naWNhbCBBTkQgb3IgT1Igb3BlcmF0aW9uLiBEZWZhdWx0cyB0byBBTkQuICovXG4gIGZpbHRlck9wZXJhdG9yPzogSW5wdXRNYXliZTxMb2dpY2FsT3BlcmF0b3I+O1xuICAvKiogU2tpcHMgdGhlIGZpcnN0IG4gcmVzdWx0cywgZm9yIHVzZSBpbiBwYWdpbmF0aW9uICovXG4gIHNraXA/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0ludCddPjtcbiAgLyoqIFNwZWNpZmllcyB3aGljaCBwcm9wZXJ0aWVzIHRvIHNvcnQgdGhlIHJlc3VsdHMgYnkgKi9cbiAgc29ydD86IElucHV0TWF5YmU8UHJvZHVjdFZhcmlhbnRTb3J0UGFyYW1ldGVyPjtcbiAgLyoqIFRha2VzIG4gcmVzdWx0cywgZm9yIHVzZSBpbiBwYWdpbmF0aW9uICovXG4gIHRha2U/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0ludCddPjtcbn07XG5cbmV4cG9ydCB0eXBlIFByb2R1Y3RWYXJpYW50U29ydFBhcmFtZXRlciA9IHtcbiAgY3JlYXRlZEF0PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBpZD86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgbmFtZT86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgb3V0T2ZTdG9ja1RocmVzaG9sZD86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgcHJpY2U/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIHByaWNlV2l0aFRheD86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgcHJvZHVjdElkPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBza3U/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIHN0b2NrQWxsb2NhdGVkPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBzdG9ja0xldmVsPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBzdG9ja09uSGFuZD86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgdXBkYXRlZEF0PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xufTtcblxuZXhwb3J0IHR5cGUgUHJvZHVjdFZhcmlhbnRUcmFuc2xhdGlvbiA9IHtcbiAgX190eXBlbmFtZT86ICdQcm9kdWN0VmFyaWFudFRyYW5zbGF0aW9uJztcbiAgY3JlYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGU7XG4gIG5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB1cGRhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG5leHBvcnQgdHlwZSBQcm9kdWN0VmFyaWFudFRyYW5zbGF0aW9uSW5wdXQgPSB7XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgaWQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0lEJ10+O1xuICBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZTtcbiAgbmFtZT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xufTtcblxuZXhwb3J0IHR5cGUgUHJvbW90aW9uID0gTm9kZSAmIHtcbiAgX190eXBlbmFtZT86ICdQcm9tb3Rpb24nO1xuICBhY3Rpb25zOiBBcnJheTxDb25maWd1cmFibGVPcGVyYXRpb24+O1xuICBjb25kaXRpb25zOiBBcnJheTxDb25maWd1cmFibGVPcGVyYXRpb24+O1xuICBjb3Vwb25Db2RlPzogTWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGN1c3RvbUZpZWxkcz86IE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGVuYWJsZWQ6IFNjYWxhcnNbJ0Jvb2xlYW4nXTtcbiAgZW5kc0F0PzogTWF5YmU8U2NhbGFyc1snRGF0ZVRpbWUnXT47XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBuYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgcGVyQ3VzdG9tZXJVc2FnZUxpbWl0PzogTWF5YmU8U2NhbGFyc1snSW50J10+O1xuICBzdGFydHNBdD86IE1heWJlPFNjYWxhcnNbJ0RhdGVUaW1lJ10+O1xuICB1cGRhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG5leHBvcnQgdHlwZSBQcm9tb3Rpb25GaWx0ZXJQYXJhbWV0ZXIgPSB7XG4gIGNvdXBvbkNvZGU/OiBJbnB1dE1heWJlPFN0cmluZ09wZXJhdG9ycz47XG4gIGNyZWF0ZWRBdD86IElucHV0TWF5YmU8RGF0ZU9wZXJhdG9ycz47XG4gIGVuYWJsZWQ/OiBJbnB1dE1heWJlPEJvb2xlYW5PcGVyYXRvcnM+O1xuICBlbmRzQXQ/OiBJbnB1dE1heWJlPERhdGVPcGVyYXRvcnM+O1xuICBpZD86IElucHV0TWF5YmU8SWRPcGVyYXRvcnM+O1xuICBuYW1lPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICBwZXJDdXN0b21lclVzYWdlTGltaXQ/OiBJbnB1dE1heWJlPE51bWJlck9wZXJhdG9ycz47XG4gIHN0YXJ0c0F0PzogSW5wdXRNYXliZTxEYXRlT3BlcmF0b3JzPjtcbiAgdXBkYXRlZEF0PzogSW5wdXRNYXliZTxEYXRlT3BlcmF0b3JzPjtcbn07XG5cbmV4cG9ydCB0eXBlIFByb21vdGlvbkxpc3QgPSBQYWdpbmF0ZWRMaXN0ICYge1xuICBfX3R5cGVuYW1lPzogJ1Byb21vdGlvbkxpc3QnO1xuICBpdGVtczogQXJyYXk8UHJvbW90aW9uPjtcbiAgdG90YWxJdGVtczogU2NhbGFyc1snSW50J107XG59O1xuXG5leHBvcnQgdHlwZSBQcm9tb3Rpb25MaXN0T3B0aW9ucyA9IHtcbiAgLyoqIEFsbG93cyB0aGUgcmVzdWx0cyB0byBiZSBmaWx0ZXJlZCAqL1xuICBmaWx0ZXI/OiBJbnB1dE1heWJlPFByb21vdGlvbkZpbHRlclBhcmFtZXRlcj47XG4gIC8qKiBTcGVjaWZpZXMgd2hldGhlciBtdWx0aXBsZSBcImZpbHRlclwiIGFyZ3VtZW50cyBzaG91bGQgYmUgY29tYmluZXMgd2l0aCBhIGxvZ2ljYWwgQU5EIG9yIE9SIG9wZXJhdGlvbi4gRGVmYXVsdHMgdG8gQU5ELiAqL1xuICBmaWx0ZXJPcGVyYXRvcj86IElucHV0TWF5YmU8TG9naWNhbE9wZXJhdG9yPjtcbiAgLyoqIFNraXBzIHRoZSBmaXJzdCBuIHJlc3VsdHMsIGZvciB1c2UgaW4gcGFnaW5hdGlvbiAqL1xuICBza2lwPzogSW5wdXRNYXliZTxTY2FsYXJzWydJbnQnXT47XG4gIC8qKiBTcGVjaWZpZXMgd2hpY2ggcHJvcGVydGllcyB0byBzb3J0IHRoZSByZXN1bHRzIGJ5ICovXG4gIHNvcnQ/OiBJbnB1dE1heWJlPFByb21vdGlvblNvcnRQYXJhbWV0ZXI+O1xuICAvKiogVGFrZXMgbiByZXN1bHRzLCBmb3IgdXNlIGluIHBhZ2luYXRpb24gKi9cbiAgdGFrZT86IElucHV0TWF5YmU8U2NhbGFyc1snSW50J10+O1xufTtcblxuZXhwb3J0IHR5cGUgUHJvbW90aW9uU29ydFBhcmFtZXRlciA9IHtcbiAgY291cG9uQ29kZT86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgY3JlYXRlZEF0PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBlbmRzQXQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIGlkPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBuYW1lPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBwZXJDdXN0b21lclVzYWdlTGltaXQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIHN0YXJ0c0F0PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICB1cGRhdGVkQXQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG59O1xuXG4vKiogUmV0dXJuZWQgaWYgdGhlIHNwZWNpZmllZCBxdWFudGl0eSBvZiBhbiBPcmRlckxpbmUgaXMgZ3JlYXRlciB0aGFuIHRoZSBudW1iZXIgb2YgaXRlbXMgaW4gdGhhdCBsaW5lICovXG5leHBvcnQgdHlwZSBRdWFudGl0eVRvb0dyZWF0RXJyb3IgPSBFcnJvclJlc3VsdCAmIHtcbiAgX190eXBlbmFtZT86ICdRdWFudGl0eVRvb0dyZWF0RXJyb3InO1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG5leHBvcnQgdHlwZSBRdWVyeSA9IHtcbiAgX190eXBlbmFtZT86ICdRdWVyeSc7XG4gIGFjdGl2ZUFkbWluaXN0cmF0b3I/OiBNYXliZTxBZG1pbmlzdHJhdG9yPjtcbiAgYWN0aXZlQ2hhbm5lbDogQ2hhbm5lbDtcbiAgYWRtaW5pc3RyYXRvcj86IE1heWJlPEFkbWluaXN0cmF0b3I+O1xuICBhZG1pbmlzdHJhdG9yczogQWRtaW5pc3RyYXRvckxpc3Q7XG4gIC8qKiBHZXQgYSBzaW5nbGUgQXNzZXQgYnkgaWQgKi9cbiAgYXNzZXQ/OiBNYXliZTxBc3NldD47XG4gIC8qKiBHZXQgYSBsaXN0IG9mIEFzc2V0cyAqL1xuICBhc3NldHM6IEFzc2V0TGlzdDtcbiAgY2hhbm5lbD86IE1heWJlPENoYW5uZWw+O1xuICBjaGFubmVsczogQXJyYXk8Q2hhbm5lbD47XG4gIC8qKiBHZXQgYSBDb2xsZWN0aW9uIGVpdGhlciBieSBpZCBvciBzbHVnLiBJZiBuZWl0aGVyIGlkIG5vciBzbHVnIGlzIHNwZWNpZmllZCwgYW4gZXJyb3Igd2lsbCByZXN1bHQuICovXG4gIGNvbGxlY3Rpb24/OiBNYXliZTxDb2xsZWN0aW9uPjtcbiAgY29sbGVjdGlvbkZpbHRlcnM6IEFycmF5PENvbmZpZ3VyYWJsZU9wZXJhdGlvbkRlZmluaXRpb24+O1xuICBjb2xsZWN0aW9uczogQ29sbGVjdGlvbkxpc3Q7XG4gIGNvdW50cmllczogQ291bnRyeUxpc3Q7XG4gIGNvdW50cnk/OiBNYXliZTxDb3VudHJ5PjtcbiAgY3VzdG9tZXI/OiBNYXliZTxDdXN0b21lcj47XG4gIGN1c3RvbWVyR3JvdXA/OiBNYXliZTxDdXN0b21lckdyb3VwPjtcbiAgY3VzdG9tZXJHcm91cHM6IEN1c3RvbWVyR3JvdXBMaXN0O1xuICBjdXN0b21lcnM6IEN1c3RvbWVyTGlzdDtcbiAgZmFjZXQ/OiBNYXliZTxGYWNldD47XG4gIGZhY2V0czogRmFjZXRMaXN0O1xuICBmdWxmaWxsbWVudEhhbmRsZXJzOiBBcnJheTxDb25maWd1cmFibGVPcGVyYXRpb25EZWZpbml0aW9uPjtcbiAgZ2xvYmFsU2V0dGluZ3M6IEdsb2JhbFNldHRpbmdzO1xuICBqb2I/OiBNYXliZTxKb2I+O1xuICBqb2JCdWZmZXJTaXplOiBBcnJheTxKb2JCdWZmZXJTaXplPjtcbiAgam9iUXVldWVzOiBBcnJheTxKb2JRdWV1ZT47XG4gIGpvYnM6IEpvYkxpc3Q7XG4gIGpvYnNCeUlkOiBBcnJheTxKb2I+O1xuICBtZT86IE1heWJlPEN1cnJlbnRVc2VyPjtcbiAgbmV0d29ya1N0YXR1czogTmV0d29ya1N0YXR1cztcbiAgb3JkZXI/OiBNYXliZTxPcmRlcj47XG4gIG9yZGVyczogT3JkZXJMaXN0O1xuICBwYXltZW50TWV0aG9kPzogTWF5YmU8UGF5bWVudE1ldGhvZD47XG4gIHBheW1lbnRNZXRob2RFbGlnaWJpbGl0eUNoZWNrZXJzOiBBcnJheTxDb25maWd1cmFibGVPcGVyYXRpb25EZWZpbml0aW9uPjtcbiAgcGF5bWVudE1ldGhvZEhhbmRsZXJzOiBBcnJheTxDb25maWd1cmFibGVPcGVyYXRpb25EZWZpbml0aW9uPjtcbiAgcGF5bWVudE1ldGhvZHM6IFBheW1lbnRNZXRob2RMaXN0O1xuICBwZW5kaW5nU2VhcmNoSW5kZXhVcGRhdGVzOiBTY2FsYXJzWydJbnQnXTtcbiAgLyoqIEdldCBhIFByb2R1Y3QgZWl0aGVyIGJ5IGlkIG9yIHNsdWcuIElmIG5laXRoZXIgaWQgbm9yIHNsdWcgaXMgc3BlY2lmaWVkLCBhbiBlcnJvciB3aWxsIHJlc3VsdC4gKi9cbiAgcHJvZHVjdD86IE1heWJlPFByb2R1Y3Q+O1xuICBwcm9kdWN0T3B0aW9uR3JvdXA/OiBNYXliZTxQcm9kdWN0T3B0aW9uR3JvdXA+O1xuICBwcm9kdWN0T3B0aW9uR3JvdXBzOiBBcnJheTxQcm9kdWN0T3B0aW9uR3JvdXA+O1xuICAvKiogR2V0IGEgUHJvZHVjdFZhcmlhbnQgYnkgaWQgKi9cbiAgcHJvZHVjdFZhcmlhbnQ/OiBNYXliZTxQcm9kdWN0VmFyaWFudD47XG4gIC8qKiBMaXN0IFByb2R1Y3RWYXJpYW50cyBlaXRoZXIgYWxsIG9yIGZvciB0aGUgc3BlY2lmaWMgcHJvZHVjdC4gKi9cbiAgcHJvZHVjdFZhcmlhbnRzOiBQcm9kdWN0VmFyaWFudExpc3Q7XG4gIC8qKiBMaXN0IFByb2R1Y3RzICovXG4gIHByb2R1Y3RzOiBQcm9kdWN0TGlzdDtcbiAgcHJvbW90aW9uPzogTWF5YmU8UHJvbW90aW9uPjtcbiAgcHJvbW90aW9uQWN0aW9uczogQXJyYXk8Q29uZmlndXJhYmxlT3BlcmF0aW9uRGVmaW5pdGlvbj47XG4gIHByb21vdGlvbkNvbmRpdGlvbnM6IEFycmF5PENvbmZpZ3VyYWJsZU9wZXJhdGlvbkRlZmluaXRpb24+O1xuICBwcm9tb3Rpb25zOiBQcm9tb3Rpb25MaXN0O1xuICByb2xlPzogTWF5YmU8Um9sZT47XG4gIHJvbGVzOiBSb2xlTGlzdDtcbiAgc2VhcmNoOiBTZWFyY2hSZXNwb25zZTtcbiAgc2hpcHBpbmdDYWxjdWxhdG9yczogQXJyYXk8Q29uZmlndXJhYmxlT3BlcmF0aW9uRGVmaW5pdGlvbj47XG4gIHNoaXBwaW5nRWxpZ2liaWxpdHlDaGVja2VyczogQXJyYXk8Q29uZmlndXJhYmxlT3BlcmF0aW9uRGVmaW5pdGlvbj47XG4gIHNoaXBwaW5nTWV0aG9kPzogTWF5YmU8U2hpcHBpbmdNZXRob2Q+O1xuICBzaGlwcGluZ01ldGhvZHM6IFNoaXBwaW5nTWV0aG9kTGlzdDtcbiAgdGFnOiBUYWc7XG4gIHRhZ3M6IFRhZ0xpc3Q7XG4gIHRheENhdGVnb3JpZXM6IEFycmF5PFRheENhdGVnb3J5PjtcbiAgdGF4Q2F0ZWdvcnk/OiBNYXliZTxUYXhDYXRlZ29yeT47XG4gIHRheFJhdGU/OiBNYXliZTxUYXhSYXRlPjtcbiAgdGF4UmF0ZXM6IFRheFJhdGVMaXN0O1xuICB0ZXN0RWxpZ2libGVTaGlwcGluZ01ldGhvZHM6IEFycmF5PFNoaXBwaW5nTWV0aG9kUXVvdGU+O1xuICB0ZXN0U2hpcHBpbmdNZXRob2Q6IFRlc3RTaGlwcGluZ01ldGhvZFJlc3VsdDtcbiAgdWlTdGF0ZTogVWlTdGF0ZTtcbiAgdXNlclN0YXR1czogVXNlclN0YXR1cztcbiAgem9uZT86IE1heWJlPFpvbmU+O1xuICB6b25lczogQXJyYXk8Wm9uZT47XG59O1xuXG5cbmV4cG9ydCB0eXBlIFF1ZXJ5QWRtaW5pc3RyYXRvckFyZ3MgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufTtcblxuXG5leHBvcnQgdHlwZSBRdWVyeUFkbWluaXN0cmF0b3JzQXJncyA9IHtcbiAgb3B0aW9ucz86IElucHV0TWF5YmU8QWRtaW5pc3RyYXRvckxpc3RPcHRpb25zPjtcbn07XG5cblxuZXhwb3J0IHR5cGUgUXVlcnlBc3NldEFyZ3MgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufTtcblxuXG5leHBvcnQgdHlwZSBRdWVyeUFzc2V0c0FyZ3MgPSB7XG4gIG9wdGlvbnM/OiBJbnB1dE1heWJlPEFzc2V0TGlzdE9wdGlvbnM+O1xufTtcblxuXG5leHBvcnQgdHlwZSBRdWVyeUNoYW5uZWxBcmdzID0ge1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn07XG5cblxuZXhwb3J0IHR5cGUgUXVlcnlDb2xsZWN0aW9uQXJncyA9IHtcbiAgaWQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0lEJ10+O1xuICBzbHVnPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG59O1xuXG5cbmV4cG9ydCB0eXBlIFF1ZXJ5Q29sbGVjdGlvbnNBcmdzID0ge1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxDb2xsZWN0aW9uTGlzdE9wdGlvbnM+O1xufTtcblxuXG5leHBvcnQgdHlwZSBRdWVyeUNvdW50cmllc0FyZ3MgPSB7XG4gIG9wdGlvbnM/OiBJbnB1dE1heWJlPENvdW50cnlMaXN0T3B0aW9ucz47XG59O1xuXG5cbmV4cG9ydCB0eXBlIFF1ZXJ5Q291bnRyeUFyZ3MgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufTtcblxuXG5leHBvcnQgdHlwZSBRdWVyeUN1c3RvbWVyQXJncyA9IHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIFF1ZXJ5Q3VzdG9tZXJHcm91cEFyZ3MgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufTtcblxuXG5leHBvcnQgdHlwZSBRdWVyeUN1c3RvbWVyR3JvdXBzQXJncyA9IHtcbiAgb3B0aW9ucz86IElucHV0TWF5YmU8Q3VzdG9tZXJHcm91cExpc3RPcHRpb25zPjtcbn07XG5cblxuZXhwb3J0IHR5cGUgUXVlcnlDdXN0b21lcnNBcmdzID0ge1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxDdXN0b21lckxpc3RPcHRpb25zPjtcbn07XG5cblxuZXhwb3J0IHR5cGUgUXVlcnlGYWNldEFyZ3MgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufTtcblxuXG5leHBvcnQgdHlwZSBRdWVyeUZhY2V0c0FyZ3MgPSB7XG4gIG9wdGlvbnM/OiBJbnB1dE1heWJlPEZhY2V0TGlzdE9wdGlvbnM+O1xufTtcblxuXG5leHBvcnQgdHlwZSBRdWVyeUpvYkFyZ3MgPSB7XG4gIGpvYklkOiBTY2FsYXJzWydJRCddO1xufTtcblxuXG5leHBvcnQgdHlwZSBRdWVyeUpvYkJ1ZmZlclNpemVBcmdzID0ge1xuICBidWZmZXJJZHM/OiBJbnB1dE1heWJlPEFycmF5PFNjYWxhcnNbJ1N0cmluZyddPj47XG59O1xuXG5cbmV4cG9ydCB0eXBlIFF1ZXJ5Sm9ic0FyZ3MgPSB7XG4gIG9wdGlvbnM/OiBJbnB1dE1heWJlPEpvYkxpc3RPcHRpb25zPjtcbn07XG5cblxuZXhwb3J0IHR5cGUgUXVlcnlKb2JzQnlJZEFyZ3MgPSB7XG4gIGpvYklkczogQXJyYXk8U2NhbGFyc1snSUQnXT47XG59O1xuXG5cbmV4cG9ydCB0eXBlIFF1ZXJ5T3JkZXJBcmdzID0ge1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn07XG5cblxuZXhwb3J0IHR5cGUgUXVlcnlPcmRlcnNBcmdzID0ge1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxPcmRlckxpc3RPcHRpb25zPjtcbn07XG5cblxuZXhwb3J0IHR5cGUgUXVlcnlQYXltZW50TWV0aG9kQXJncyA9IHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIFF1ZXJ5UGF5bWVudE1ldGhvZHNBcmdzID0ge1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxQYXltZW50TWV0aG9kTGlzdE9wdGlvbnM+O1xufTtcblxuXG5leHBvcnQgdHlwZSBRdWVyeVByb2R1Y3RBcmdzID0ge1xuICBpZD86IElucHV0TWF5YmU8U2NhbGFyc1snSUQnXT47XG4gIHNsdWc/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbn07XG5cblxuZXhwb3J0IHR5cGUgUXVlcnlQcm9kdWN0T3B0aW9uR3JvdXBBcmdzID0ge1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn07XG5cblxuZXhwb3J0IHR5cGUgUXVlcnlQcm9kdWN0T3B0aW9uR3JvdXBzQXJncyA9IHtcbiAgZmlsdGVyVGVybT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xufTtcblxuXG5leHBvcnQgdHlwZSBRdWVyeVByb2R1Y3RWYXJpYW50QXJncyA9IHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIFF1ZXJ5UHJvZHVjdFZhcmlhbnRzQXJncyA9IHtcbiAgb3B0aW9ucz86IElucHV0TWF5YmU8UHJvZHVjdFZhcmlhbnRMaXN0T3B0aW9ucz47XG4gIHByb2R1Y3RJZD86IElucHV0TWF5YmU8U2NhbGFyc1snSUQnXT47XG59O1xuXG5cbmV4cG9ydCB0eXBlIFF1ZXJ5UHJvZHVjdHNBcmdzID0ge1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxQcm9kdWN0TGlzdE9wdGlvbnM+O1xufTtcblxuXG5leHBvcnQgdHlwZSBRdWVyeVByb21vdGlvbkFyZ3MgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufTtcblxuXG5leHBvcnQgdHlwZSBRdWVyeVByb21vdGlvbnNBcmdzID0ge1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxQcm9tb3Rpb25MaXN0T3B0aW9ucz47XG59O1xuXG5cbmV4cG9ydCB0eXBlIFF1ZXJ5Um9sZUFyZ3MgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufTtcblxuXG5leHBvcnQgdHlwZSBRdWVyeVJvbGVzQXJncyA9IHtcbiAgb3B0aW9ucz86IElucHV0TWF5YmU8Um9sZUxpc3RPcHRpb25zPjtcbn07XG5cblxuZXhwb3J0IHR5cGUgUXVlcnlTZWFyY2hBcmdzID0ge1xuICBpbnB1dDogU2VhcmNoSW5wdXQ7XG59O1xuXG5cbmV4cG9ydCB0eXBlIFF1ZXJ5U2hpcHBpbmdNZXRob2RBcmdzID0ge1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn07XG5cblxuZXhwb3J0IHR5cGUgUXVlcnlTaGlwcGluZ01ldGhvZHNBcmdzID0ge1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxTaGlwcGluZ01ldGhvZExpc3RPcHRpb25zPjtcbn07XG5cblxuZXhwb3J0IHR5cGUgUXVlcnlUYWdBcmdzID0ge1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn07XG5cblxuZXhwb3J0IHR5cGUgUXVlcnlUYWdzQXJncyA9IHtcbiAgb3B0aW9ucz86IElucHV0TWF5YmU8VGFnTGlzdE9wdGlvbnM+O1xufTtcblxuXG5leHBvcnQgdHlwZSBRdWVyeVRheENhdGVnb3J5QXJncyA9IHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG5cbmV4cG9ydCB0eXBlIFF1ZXJ5VGF4UmF0ZUFyZ3MgPSB7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufTtcblxuXG5leHBvcnQgdHlwZSBRdWVyeVRheFJhdGVzQXJncyA9IHtcbiAgb3B0aW9ucz86IElucHV0TWF5YmU8VGF4UmF0ZUxpc3RPcHRpb25zPjtcbn07XG5cblxuZXhwb3J0IHR5cGUgUXVlcnlUZXN0RWxpZ2libGVTaGlwcGluZ01ldGhvZHNBcmdzID0ge1xuICBpbnB1dDogVGVzdEVsaWdpYmxlU2hpcHBpbmdNZXRob2RzSW5wdXQ7XG59O1xuXG5cbmV4cG9ydCB0eXBlIFF1ZXJ5VGVzdFNoaXBwaW5nTWV0aG9kQXJncyA9IHtcbiAgaW5wdXQ6IFRlc3RTaGlwcGluZ01ldGhvZElucHV0O1xufTtcblxuXG5leHBvcnQgdHlwZSBRdWVyeVpvbmVBcmdzID0ge1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn07XG5cbmV4cG9ydCB0eXBlIFJlZnVuZCA9IE5vZGUgJiB7XG4gIF9fdHlwZW5hbWU/OiAnUmVmdW5kJztcbiAgYWRqdXN0bWVudDogU2NhbGFyc1snSW50J107XG4gIGNyZWF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGl0ZW1zOiBTY2FsYXJzWydJbnQnXTtcbiAgbWV0YWRhdGE/OiBNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBtZXRob2Q/OiBNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIG9yZGVySXRlbXM6IEFycmF5PE9yZGVySXRlbT47XG4gIHBheW1lbnRJZDogU2NhbGFyc1snSUQnXTtcbiAgcmVhc29uPzogTWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBzaGlwcGluZzogU2NhbGFyc1snSW50J107XG4gIHN0YXRlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgdG90YWw6IFNjYWxhcnNbJ0ludCddO1xuICB0cmFuc2FjdGlvbklkPzogTWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICB1cGRhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG5leHBvcnQgdHlwZSBSZWZ1bmRPcmRlcklucHV0ID0ge1xuICBhZGp1c3RtZW50OiBTY2FsYXJzWydJbnQnXTtcbiAgbGluZXM6IEFycmF5PE9yZGVyTGluZUlucHV0PjtcbiAgcGF5bWVudElkOiBTY2FsYXJzWydJRCddO1xuICByZWFzb24/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgc2hpcHBpbmc6IFNjYWxhcnNbJ0ludCddO1xufTtcblxuZXhwb3J0IHR5cGUgUmVmdW5kT3JkZXJSZXN1bHQgPSBBbHJlYWR5UmVmdW5kZWRFcnJvciB8IE11bHRpcGxlT3JkZXJFcnJvciB8IE5vdGhpbmdUb1JlZnVuZEVycm9yIHwgT3JkZXJTdGF0ZVRyYW5zaXRpb25FcnJvciB8IFBheW1lbnRPcmRlck1pc21hdGNoRXJyb3IgfCBRdWFudGl0eVRvb0dyZWF0RXJyb3IgfCBSZWZ1bmQgfCBSZWZ1bmRPcmRlclN0YXRlRXJyb3IgfCBSZWZ1bmRTdGF0ZVRyYW5zaXRpb25FcnJvcjtcblxuLyoqIFJldHVybmVkIGlmIGFuIGF0dGVtcHRpbmcgdG8gcmVmdW5kIGFuIE9yZGVyIHdoaWNoIGlzIG5vdCBpbiB0aGUgZXhwZWN0ZWQgc3RhdGUgKi9cbmV4cG9ydCB0eXBlIFJlZnVuZE9yZGVyU3RhdGVFcnJvciA9IEVycm9yUmVzdWx0ICYge1xuICBfX3R5cGVuYW1lPzogJ1JlZnVuZE9yZGVyU3RhdGVFcnJvcic7XG4gIGVycm9yQ29kZTogRXJyb3JDb2RlO1xuICBtZXNzYWdlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgb3JkZXJTdGF0ZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG4vKipcbiAqIFJldHVybmVkIHdoZW4gYSBjYWxsIHRvIG1vZGlmeU9yZGVyIGZhaWxzIHRvIGluY2x1ZGUgYSByZWZ1bmRQYXltZW50SWQgZXZlblxuICogdGhvdWdoIHRoZSBwcmljZSBoYXMgZGVjcmVhc2VkIGFzIGEgcmVzdWx0IG9mIHRoZSBjaGFuZ2VzLlxuICovXG5leHBvcnQgdHlwZSBSZWZ1bmRQYXltZW50SWRNaXNzaW5nRXJyb3IgPSBFcnJvclJlc3VsdCAmIHtcbiAgX190eXBlbmFtZT86ICdSZWZ1bmRQYXltZW50SWRNaXNzaW5nRXJyb3InO1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG4vKiogUmV0dXJuZWQgd2hlbiB0aGVyZSBpcyBhbiBlcnJvciBpbiB0cmFuc2l0aW9uaW5nIHRoZSBSZWZ1bmQgc3RhdGUgKi9cbmV4cG9ydCB0eXBlIFJlZnVuZFN0YXRlVHJhbnNpdGlvbkVycm9yID0gRXJyb3JSZXN1bHQgJiB7XG4gIF9fdHlwZW5hbWU/OiAnUmVmdW5kU3RhdGVUcmFuc2l0aW9uRXJyb3InO1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgZnJvbVN0YXRlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHRvU3RhdGU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB0cmFuc2l0aW9uRXJyb3I6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuZXhwb3J0IHR5cGUgUmVsYXRpb25DdXN0b21GaWVsZENvbmZpZyA9IEN1c3RvbUZpZWxkICYge1xuICBfX3R5cGVuYW1lPzogJ1JlbGF0aW9uQ3VzdG9tRmllbGRDb25maWcnO1xuICBkZXNjcmlwdGlvbj86IE1heWJlPEFycmF5PExvY2FsaXplZFN0cmluZz4+O1xuICBlbnRpdHk6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBpbnRlcm5hbD86IE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIGxhYmVsPzogTWF5YmU8QXJyYXk8TG9jYWxpemVkU3RyaW5nPj47XG4gIGxpc3Q6IFNjYWxhcnNbJ0Jvb2xlYW4nXTtcbiAgbmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIG51bGxhYmxlPzogTWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbiAgcmVhZG9ubHk/OiBNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICBzY2FsYXJGaWVsZHM6IEFycmF5PFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgdHlwZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHVpPzogTWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbn07XG5cbmV4cG9ydCB0eXBlIFJlbGVhc2UgPSBOb2RlICYgU3RvY2tNb3ZlbWVudCAmIHtcbiAgX190eXBlbmFtZT86ICdSZWxlYXNlJztcbiAgY3JlYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgb3JkZXJJdGVtOiBPcmRlckl0ZW07XG4gIHByb2R1Y3RWYXJpYW50OiBQcm9kdWN0VmFyaWFudDtcbiAgcXVhbnRpdHk6IFNjYWxhcnNbJ0ludCddO1xuICB0eXBlOiBTdG9ja01vdmVtZW50VHlwZTtcbiAgdXBkYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xufTtcblxuZXhwb3J0IHR5cGUgUmVtb3ZlT3B0aW9uR3JvdXBGcm9tUHJvZHVjdFJlc3VsdCA9IFByb2R1Y3QgfCBQcm9kdWN0T3B0aW9uSW5Vc2VFcnJvcjtcblxuZXhwb3J0IHR5cGUgUmVtb3ZlUHJvZHVjdFZhcmlhbnRzRnJvbUNoYW5uZWxJbnB1dCA9IHtcbiAgY2hhbm5lbElkOiBTY2FsYXJzWydJRCddO1xuICBwcm9kdWN0VmFyaWFudElkczogQXJyYXk8U2NhbGFyc1snSUQnXT47XG59O1xuXG5leHBvcnQgdHlwZSBSZW1vdmVQcm9kdWN0c0Zyb21DaGFubmVsSW5wdXQgPSB7XG4gIGNoYW5uZWxJZDogU2NhbGFyc1snSUQnXTtcbiAgcHJvZHVjdElkczogQXJyYXk8U2NhbGFyc1snSUQnXT47XG59O1xuXG5leHBvcnQgdHlwZSBSZW1vdmVQcm9tb3Rpb25zRnJvbUNoYW5uZWxJbnB1dCA9IHtcbiAgY2hhbm5lbElkOiBTY2FsYXJzWydJRCddO1xuICBwcm9tb3Rpb25JZHM6IEFycmF5PFNjYWxhcnNbJ0lEJ10+O1xufTtcblxuZXhwb3J0IHR5cGUgUmV0dXJuID0gTm9kZSAmIFN0b2NrTW92ZW1lbnQgJiB7XG4gIF9fdHlwZW5hbWU/OiAnUmV0dXJuJztcbiAgY3JlYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgb3JkZXJJdGVtOiBPcmRlckl0ZW07XG4gIHByb2R1Y3RWYXJpYW50OiBQcm9kdWN0VmFyaWFudDtcbiAgcXVhbnRpdHk6IFNjYWxhcnNbJ0ludCddO1xuICB0eXBlOiBTdG9ja01vdmVtZW50VHlwZTtcbiAgdXBkYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xufTtcblxuZXhwb3J0IHR5cGUgUm9sZSA9IE5vZGUgJiB7XG4gIF9fdHlwZW5hbWU/OiAnUm9sZSc7XG4gIGNoYW5uZWxzOiBBcnJheTxDaGFubmVsPjtcbiAgY29kZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIGNyZWF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgZGVzY3JpcHRpb246IFNjYWxhcnNbJ1N0cmluZyddO1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+O1xuICB1cGRhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG5leHBvcnQgdHlwZSBSb2xlRmlsdGVyUGFyYW1ldGVyID0ge1xuICBjb2RlPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICBjcmVhdGVkQXQ/OiBJbnB1dE1heWJlPERhdGVPcGVyYXRvcnM+O1xuICBkZXNjcmlwdGlvbj86IElucHV0TWF5YmU8U3RyaW5nT3BlcmF0b3JzPjtcbiAgaWQ/OiBJbnB1dE1heWJlPElkT3BlcmF0b3JzPjtcbiAgdXBkYXRlZEF0PzogSW5wdXRNYXliZTxEYXRlT3BlcmF0b3JzPjtcbn07XG5cbmV4cG9ydCB0eXBlIFJvbGVMaXN0ID0gUGFnaW5hdGVkTGlzdCAmIHtcbiAgX190eXBlbmFtZT86ICdSb2xlTGlzdCc7XG4gIGl0ZW1zOiBBcnJheTxSb2xlPjtcbiAgdG90YWxJdGVtczogU2NhbGFyc1snSW50J107XG59O1xuXG5leHBvcnQgdHlwZSBSb2xlTGlzdE9wdGlvbnMgPSB7XG4gIC8qKiBBbGxvd3MgdGhlIHJlc3VsdHMgdG8gYmUgZmlsdGVyZWQgKi9cbiAgZmlsdGVyPzogSW5wdXRNYXliZTxSb2xlRmlsdGVyUGFyYW1ldGVyPjtcbiAgLyoqIFNwZWNpZmllcyB3aGV0aGVyIG11bHRpcGxlIFwiZmlsdGVyXCIgYXJndW1lbnRzIHNob3VsZCBiZSBjb21iaW5lcyB3aXRoIGEgbG9naWNhbCBBTkQgb3IgT1Igb3BlcmF0aW9uLiBEZWZhdWx0cyB0byBBTkQuICovXG4gIGZpbHRlck9wZXJhdG9yPzogSW5wdXRNYXliZTxMb2dpY2FsT3BlcmF0b3I+O1xuICAvKiogU2tpcHMgdGhlIGZpcnN0IG4gcmVzdWx0cywgZm9yIHVzZSBpbiBwYWdpbmF0aW9uICovXG4gIHNraXA/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0ludCddPjtcbiAgLyoqIFNwZWNpZmllcyB3aGljaCBwcm9wZXJ0aWVzIHRvIHNvcnQgdGhlIHJlc3VsdHMgYnkgKi9cbiAgc29ydD86IElucHV0TWF5YmU8Um9sZVNvcnRQYXJhbWV0ZXI+O1xuICAvKiogVGFrZXMgbiByZXN1bHRzLCBmb3IgdXNlIGluIHBhZ2luYXRpb24gKi9cbiAgdGFrZT86IElucHV0TWF5YmU8U2NhbGFyc1snSW50J10+O1xufTtcblxuZXhwb3J0IHR5cGUgUm9sZVNvcnRQYXJhbWV0ZXIgPSB7XG4gIGNvZGU/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIGNyZWF0ZWRBdD86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgZGVzY3JpcHRpb24/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIGlkPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICB1cGRhdGVkQXQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG59O1xuXG5leHBvcnQgdHlwZSBTYWxlID0gTm9kZSAmIFN0b2NrTW92ZW1lbnQgJiB7XG4gIF9fdHlwZW5hbWU/OiAnU2FsZSc7XG4gIGNyZWF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIG9yZGVySXRlbTogT3JkZXJJdGVtO1xuICBwcm9kdWN0VmFyaWFudDogUHJvZHVjdFZhcmlhbnQ7XG4gIHF1YW50aXR5OiBTY2FsYXJzWydJbnQnXTtcbiAgdHlwZTogU3RvY2tNb3ZlbWVudFR5cGU7XG4gIHVwZGF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbn07XG5cbmV4cG9ydCB0eXBlIFNlYXJjaElucHV0ID0ge1xuICBjb2xsZWN0aW9uSWQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0lEJ10+O1xuICBjb2xsZWN0aW9uU2x1Zz86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBmYWNldFZhbHVlRmlsdGVycz86IElucHV0TWF5YmU8QXJyYXk8RmFjZXRWYWx1ZUZpbHRlcklucHV0Pj47XG4gIGZhY2V0VmFsdWVJZHM/OiBJbnB1dE1heWJlPEFycmF5PFNjYWxhcnNbJ0lEJ10+PjtcbiAgZmFjZXRWYWx1ZU9wZXJhdG9yPzogSW5wdXRNYXliZTxMb2dpY2FsT3BlcmF0b3I+O1xuICBncm91cEJ5UHJvZHVjdD86IElucHV0TWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbiAgc2tpcD86IElucHV0TWF5YmU8U2NhbGFyc1snSW50J10+O1xuICBzb3J0PzogSW5wdXRNYXliZTxTZWFyY2hSZXN1bHRTb3J0UGFyYW1ldGVyPjtcbiAgdGFrZT86IElucHV0TWF5YmU8U2NhbGFyc1snSW50J10+O1xuICB0ZXJtPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG59O1xuXG5leHBvcnQgdHlwZSBTZWFyY2hSZWluZGV4UmVzcG9uc2UgPSB7XG4gIF9fdHlwZW5hbWU/OiAnU2VhcmNoUmVpbmRleFJlc3BvbnNlJztcbiAgc3VjY2VzczogU2NhbGFyc1snQm9vbGVhbiddO1xufTtcblxuZXhwb3J0IHR5cGUgU2VhcmNoUmVzcG9uc2UgPSB7XG4gIF9fdHlwZW5hbWU/OiAnU2VhcmNoUmVzcG9uc2UnO1xuICBjb2xsZWN0aW9uczogQXJyYXk8Q29sbGVjdGlvblJlc3VsdD47XG4gIGZhY2V0VmFsdWVzOiBBcnJheTxGYWNldFZhbHVlUmVzdWx0PjtcbiAgaXRlbXM6IEFycmF5PFNlYXJjaFJlc3VsdD47XG4gIHRvdGFsSXRlbXM6IFNjYWxhcnNbJ0ludCddO1xufTtcblxuZXhwb3J0IHR5cGUgU2VhcmNoUmVzdWx0ID0ge1xuICBfX3R5cGVuYW1lPzogJ1NlYXJjaFJlc3VsdCc7XG4gIC8qKiBBbiBhcnJheSBvZiBpZHMgb2YgdGhlIENoYW5uZWxzIGluIHdoaWNoIHRoaXMgcmVzdWx0IGFwcGVhcnMgKi9cbiAgY2hhbm5lbElkczogQXJyYXk8U2NhbGFyc1snSUQnXT47XG4gIC8qKiBBbiBhcnJheSBvZiBpZHMgb2YgdGhlIENvbGxlY3Rpb25zIGluIHdoaWNoIHRoaXMgcmVzdWx0IGFwcGVhcnMgKi9cbiAgY29sbGVjdGlvbklkczogQXJyYXk8U2NhbGFyc1snSUQnXT47XG4gIGN1cnJlbmN5Q29kZTogQ3VycmVuY3lDb2RlO1xuICBkZXNjcmlwdGlvbjogU2NhbGFyc1snU3RyaW5nJ107XG4gIGVuYWJsZWQ6IFNjYWxhcnNbJ0Jvb2xlYW4nXTtcbiAgZmFjZXRJZHM6IEFycmF5PFNjYWxhcnNbJ0lEJ10+O1xuICBmYWNldFZhbHVlSWRzOiBBcnJheTxTY2FsYXJzWydJRCddPjtcbiAgcHJpY2U6IFNlYXJjaFJlc3VsdFByaWNlO1xuICBwcmljZVdpdGhUYXg6IFNlYXJjaFJlc3VsdFByaWNlO1xuICBwcm9kdWN0QXNzZXQ/OiBNYXliZTxTZWFyY2hSZXN1bHRBc3NldD47XG4gIHByb2R1Y3RJZDogU2NhbGFyc1snSUQnXTtcbiAgcHJvZHVjdE5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBwcm9kdWN0VmFyaWFudEFzc2V0PzogTWF5YmU8U2VhcmNoUmVzdWx0QXNzZXQ+O1xuICBwcm9kdWN0VmFyaWFudElkOiBTY2FsYXJzWydJRCddO1xuICBwcm9kdWN0VmFyaWFudE5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICAvKiogQSByZWxldmFuY2Ugc2NvcmUgZm9yIHRoZSByZXN1bHQuIERpZmZlcnMgYmV0d2VlbiBkYXRhYmFzZSBpbXBsZW1lbnRhdGlvbnMgKi9cbiAgc2NvcmU6IFNjYWxhcnNbJ0Zsb2F0J107XG4gIHNrdTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHNsdWc6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuZXhwb3J0IHR5cGUgU2VhcmNoUmVzdWx0QXNzZXQgPSB7XG4gIF9fdHlwZW5hbWU/OiAnU2VhcmNoUmVzdWx0QXNzZXQnO1xuICBmb2NhbFBvaW50PzogTWF5YmU8Q29vcmRpbmF0ZT47XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBwcmV2aWV3OiBTY2FsYXJzWydTdHJpbmcnXTtcbn07XG5cbi8qKiBUaGUgcHJpY2Ugb2YgYSBzZWFyY2ggcmVzdWx0IHByb2R1Y3QsIGVpdGhlciBhcyBhIHJhbmdlIG9yIGFzIGEgc2luZ2xlIHByaWNlICovXG5leHBvcnQgdHlwZSBTZWFyY2hSZXN1bHRQcmljZSA9IFByaWNlUmFuZ2UgfCBTaW5nbGVQcmljZTtcblxuZXhwb3J0IHR5cGUgU2VhcmNoUmVzdWx0U29ydFBhcmFtZXRlciA9IHtcbiAgbmFtZT86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgcHJpY2U/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG59O1xuXG5leHBvcnQgdHlwZSBTZXJ2ZXJDb25maWcgPSB7XG4gIF9fdHlwZW5hbWU/OiAnU2VydmVyQ29uZmlnJztcbiAgY3VzdG9tRmllbGRDb25maWc6IEN1c3RvbUZpZWxkcztcbiAgb3JkZXJQcm9jZXNzOiBBcnJheTxPcmRlclByb2Nlc3NTdGF0ZT47XG4gIHBlcm1pc3Npb25zOiBBcnJheTxQZXJtaXNzaW9uRGVmaW5pdGlvbj47XG4gIHBlcm1pdHRlZEFzc2V0VHlwZXM6IEFycmF5PFNjYWxhcnNbJ1N0cmluZyddPjtcbn07XG5cbi8qKiBSZXR1cm5lZCBpZiB0aGUgUGF5bWVudCBzZXR0bGVtZW50IGZhaWxzICovXG5leHBvcnQgdHlwZSBTZXR0bGVQYXltZW50RXJyb3IgPSBFcnJvclJlc3VsdCAmIHtcbiAgX190eXBlbmFtZT86ICdTZXR0bGVQYXltZW50RXJyb3InO1xuICBlcnJvckNvZGU6IEVycm9yQ29kZTtcbiAgbWVzc2FnZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHBheW1lbnRFcnJvck1lc3NhZ2U6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuZXhwb3J0IHR5cGUgU2V0dGxlUGF5bWVudFJlc3VsdCA9IE9yZGVyU3RhdGVUcmFuc2l0aW9uRXJyb3IgfCBQYXltZW50IHwgUGF5bWVudFN0YXRlVHJhbnNpdGlvbkVycm9yIHwgU2V0dGxlUGF5bWVudEVycm9yO1xuXG5leHBvcnQgdHlwZSBTZXR0bGVSZWZ1bmRJbnB1dCA9IHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIHRyYW5zYWN0aW9uSWQ6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuZXhwb3J0IHR5cGUgU2V0dGxlUmVmdW5kUmVzdWx0ID0gUmVmdW5kIHwgUmVmdW5kU3RhdGVUcmFuc2l0aW9uRXJyb3I7XG5cbmV4cG9ydCB0eXBlIFNoaXBwaW5nTGluZSA9IHtcbiAgX190eXBlbmFtZT86ICdTaGlwcGluZ0xpbmUnO1xuICBkaXNjb3VudGVkUHJpY2U6IFNjYWxhcnNbJ0ludCddO1xuICBkaXNjb3VudGVkUHJpY2VXaXRoVGF4OiBTY2FsYXJzWydJbnQnXTtcbiAgZGlzY291bnRzOiBBcnJheTxEaXNjb3VudD47XG4gIHByaWNlOiBTY2FsYXJzWydJbnQnXTtcbiAgcHJpY2VXaXRoVGF4OiBTY2FsYXJzWydJbnQnXTtcbiAgc2hpcHBpbmdNZXRob2Q6IFNoaXBwaW5nTWV0aG9kO1xufTtcblxuZXhwb3J0IHR5cGUgU2hpcHBpbmdNZXRob2QgPSBOb2RlICYge1xuICBfX3R5cGVuYW1lPzogJ1NoaXBwaW5nTWV0aG9kJztcbiAgY2FsY3VsYXRvcjogQ29uZmlndXJhYmxlT3BlcmF0aW9uO1xuICBjaGVja2VyOiBDb25maWd1cmFibGVPcGVyYXRpb247XG4gIGNvZGU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGN1c3RvbUZpZWxkcz86IE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGRlc2NyaXB0aW9uOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgZnVsZmlsbG1lbnRIYW5kbGVyQ29kZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBuYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgdHJhbnNsYXRpb25zOiBBcnJheTxTaGlwcGluZ01ldGhvZFRyYW5zbGF0aW9uPjtcbiAgdXBkYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xufTtcblxuZXhwb3J0IHR5cGUgU2hpcHBpbmdNZXRob2RGaWx0ZXJQYXJhbWV0ZXIgPSB7XG4gIGNvZGU/OiBJbnB1dE1heWJlPFN0cmluZ09wZXJhdG9ycz47XG4gIGNyZWF0ZWRBdD86IElucHV0TWF5YmU8RGF0ZU9wZXJhdG9ycz47XG4gIGRlc2NyaXB0aW9uPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICBmdWxmaWxsbWVudEhhbmRsZXJDb2RlPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICBpZD86IElucHV0TWF5YmU8SWRPcGVyYXRvcnM+O1xuICBuYW1lPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xuICB1cGRhdGVkQXQ/OiBJbnB1dE1heWJlPERhdGVPcGVyYXRvcnM+O1xufTtcblxuZXhwb3J0IHR5cGUgU2hpcHBpbmdNZXRob2RMaXN0ID0gUGFnaW5hdGVkTGlzdCAmIHtcbiAgX190eXBlbmFtZT86ICdTaGlwcGluZ01ldGhvZExpc3QnO1xuICBpdGVtczogQXJyYXk8U2hpcHBpbmdNZXRob2Q+O1xuICB0b3RhbEl0ZW1zOiBTY2FsYXJzWydJbnQnXTtcbn07XG5cbmV4cG9ydCB0eXBlIFNoaXBwaW5nTWV0aG9kTGlzdE9wdGlvbnMgPSB7XG4gIC8qKiBBbGxvd3MgdGhlIHJlc3VsdHMgdG8gYmUgZmlsdGVyZWQgKi9cbiAgZmlsdGVyPzogSW5wdXRNYXliZTxTaGlwcGluZ01ldGhvZEZpbHRlclBhcmFtZXRlcj47XG4gIC8qKiBTcGVjaWZpZXMgd2hldGhlciBtdWx0aXBsZSBcImZpbHRlclwiIGFyZ3VtZW50cyBzaG91bGQgYmUgY29tYmluZXMgd2l0aCBhIGxvZ2ljYWwgQU5EIG9yIE9SIG9wZXJhdGlvbi4gRGVmYXVsdHMgdG8gQU5ELiAqL1xuICBmaWx0ZXJPcGVyYXRvcj86IElucHV0TWF5YmU8TG9naWNhbE9wZXJhdG9yPjtcbiAgLyoqIFNraXBzIHRoZSBmaXJzdCBuIHJlc3VsdHMsIGZvciB1c2UgaW4gcGFnaW5hdGlvbiAqL1xuICBza2lwPzogSW5wdXRNYXliZTxTY2FsYXJzWydJbnQnXT47XG4gIC8qKiBTcGVjaWZpZXMgd2hpY2ggcHJvcGVydGllcyB0byBzb3J0IHRoZSByZXN1bHRzIGJ5ICovXG4gIHNvcnQ/OiBJbnB1dE1heWJlPFNoaXBwaW5nTWV0aG9kU29ydFBhcmFtZXRlcj47XG4gIC8qKiBUYWtlcyBuIHJlc3VsdHMsIGZvciB1c2UgaW4gcGFnaW5hdGlvbiAqL1xuICB0YWtlPzogSW5wdXRNYXliZTxTY2FsYXJzWydJbnQnXT47XG59O1xuXG5leHBvcnQgdHlwZSBTaGlwcGluZ01ldGhvZFF1b3RlID0ge1xuICBfX3R5cGVuYW1lPzogJ1NoaXBwaW5nTWV0aG9kUXVvdGUnO1xuICBjb2RlOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgY3VzdG9tRmllbGRzPzogTWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZGVzY3JpcHRpb246IFNjYWxhcnNbJ1N0cmluZyddO1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgLyoqIEFueSBvcHRpb25hbCBtZXRhZGF0YSByZXR1cm5lZCBieSB0aGUgU2hpcHBpbmdDYWxjdWxhdG9yIGluIHRoZSBTaGlwcGluZ0NhbGN1bGF0aW9uUmVzdWx0ICovXG4gIG1ldGFkYXRhPzogTWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgbmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHByaWNlOiBTY2FsYXJzWydJbnQnXTtcbiAgcHJpY2VXaXRoVGF4OiBTY2FsYXJzWydJbnQnXTtcbn07XG5cbmV4cG9ydCB0eXBlIFNoaXBwaW5nTWV0aG9kU29ydFBhcmFtZXRlciA9IHtcbiAgY29kZT86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgY3JlYXRlZEF0PzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBkZXNjcmlwdGlvbj86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgZnVsZmlsbG1lbnRIYW5kbGVyQ29kZT86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbiAgaWQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIG5hbWU/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIHVwZGF0ZWRBdD86IElucHV0TWF5YmU8U29ydE9yZGVyPjtcbn07XG5cbmV4cG9ydCB0eXBlIFNoaXBwaW5nTWV0aG9kVHJhbnNsYXRpb24gPSB7XG4gIF9fdHlwZW5hbWU/OiAnU2hpcHBpbmdNZXRob2RUcmFuc2xhdGlvbic7XG4gIGNyZWF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgZGVzY3JpcHRpb246IFNjYWxhcnNbJ1N0cmluZyddO1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGU7XG4gIG5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB1cGRhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG5leHBvcnQgdHlwZSBTaGlwcGluZ01ldGhvZFRyYW5zbGF0aW9uSW5wdXQgPSB7XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZGVzY3JpcHRpb24/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgaWQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0lEJ10+O1xuICBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZTtcbiAgbmFtZT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xufTtcblxuLyoqIFRoZSBwcmljZSB2YWx1ZSB3aGVyZSB0aGUgcmVzdWx0IGhhcyBhIHNpbmdsZSBwcmljZSAqL1xuZXhwb3J0IHR5cGUgU2luZ2xlUHJpY2UgPSB7XG4gIF9fdHlwZW5hbWU/OiAnU2luZ2xlUHJpY2UnO1xuICB2YWx1ZTogU2NhbGFyc1snSW50J107XG59O1xuXG5leHBvcnQgZW51bSBTb3J0T3JkZXIge1xuICBBU0MgPSAnQVNDJyxcbiAgREVTQyA9ICdERVNDJ1xufVxuXG5leHBvcnQgdHlwZSBTdG9ja0FkanVzdG1lbnQgPSBOb2RlICYgU3RvY2tNb3ZlbWVudCAmIHtcbiAgX190eXBlbmFtZT86ICdTdG9ja0FkanVzdG1lbnQnO1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBwcm9kdWN0VmFyaWFudDogUHJvZHVjdFZhcmlhbnQ7XG4gIHF1YW50aXR5OiBTY2FsYXJzWydJbnQnXTtcbiAgdHlwZTogU3RvY2tNb3ZlbWVudFR5cGU7XG4gIHVwZGF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbn07XG5cbmV4cG9ydCB0eXBlIFN0b2NrTW92ZW1lbnQgPSB7XG4gIGNyZWF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIHByb2R1Y3RWYXJpYW50OiBQcm9kdWN0VmFyaWFudDtcbiAgcXVhbnRpdHk6IFNjYWxhcnNbJ0ludCddO1xuICB0eXBlOiBTdG9ja01vdmVtZW50VHlwZTtcbiAgdXBkYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xufTtcblxuZXhwb3J0IHR5cGUgU3RvY2tNb3ZlbWVudEl0ZW0gPSBBbGxvY2F0aW9uIHwgQ2FuY2VsbGF0aW9uIHwgUmVsZWFzZSB8IFJldHVybiB8IFNhbGUgfCBTdG9ja0FkanVzdG1lbnQ7XG5cbmV4cG9ydCB0eXBlIFN0b2NrTW92ZW1lbnRMaXN0ID0ge1xuICBfX3R5cGVuYW1lPzogJ1N0b2NrTW92ZW1lbnRMaXN0JztcbiAgaXRlbXM6IEFycmF5PFN0b2NrTW92ZW1lbnRJdGVtPjtcbiAgdG90YWxJdGVtczogU2NhbGFyc1snSW50J107XG59O1xuXG5leHBvcnQgdHlwZSBTdG9ja01vdmVtZW50TGlzdE9wdGlvbnMgPSB7XG4gIHNraXA/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0ludCddPjtcbiAgdGFrZT86IElucHV0TWF5YmU8U2NhbGFyc1snSW50J10+O1xuICB0eXBlPzogSW5wdXRNYXliZTxTdG9ja01vdmVtZW50VHlwZT47XG59O1xuXG5leHBvcnQgZW51bSBTdG9ja01vdmVtZW50VHlwZSB7XG4gIEFESlVTVE1FTlQgPSAnQURKVVNUTUVOVCcsXG4gIEFMTE9DQVRJT04gPSAnQUxMT0NBVElPTicsXG4gIENBTkNFTExBVElPTiA9ICdDQU5DRUxMQVRJT04nLFxuICBSRUxFQVNFID0gJ1JFTEVBU0UnLFxuICBSRVRVUk4gPSAnUkVUVVJOJyxcbiAgU0FMRSA9ICdTQUxFJ1xufVxuXG5leHBvcnQgdHlwZSBTdHJpbmdDdXN0b21GaWVsZENvbmZpZyA9IEN1c3RvbUZpZWxkICYge1xuICBfX3R5cGVuYW1lPzogJ1N0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJztcbiAgZGVzY3JpcHRpb24/OiBNYXliZTxBcnJheTxMb2NhbGl6ZWRTdHJpbmc+PjtcbiAgaW50ZXJuYWw/OiBNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICBsYWJlbD86IE1heWJlPEFycmF5PExvY2FsaXplZFN0cmluZz4+O1xuICBsZW5ndGg/OiBNYXliZTxTY2FsYXJzWydJbnQnXT47XG4gIGxpc3Q6IFNjYWxhcnNbJ0Jvb2xlYW4nXTtcbiAgbmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIG51bGxhYmxlPzogTWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbiAgb3B0aW9ucz86IE1heWJlPEFycmF5PFN0cmluZ0ZpZWxkT3B0aW9uPj47XG4gIHBhdHRlcm4/OiBNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHJlYWRvbmx5PzogTWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbiAgdHlwZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHVpPzogTWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbn07XG5cbmV4cG9ydCB0eXBlIFN0cmluZ0ZpZWxkT3B0aW9uID0ge1xuICBfX3R5cGVuYW1lPzogJ1N0cmluZ0ZpZWxkT3B0aW9uJztcbiAgbGFiZWw/OiBNYXliZTxBcnJheTxMb2NhbGl6ZWRTdHJpbmc+PjtcbiAgdmFsdWU6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuLyoqIE9wZXJhdG9ycyBmb3IgZmlsdGVyaW5nIG9uIGEgbGlzdCBvZiBTdHJpbmcgZmllbGRzICovXG5leHBvcnQgdHlwZSBTdHJpbmdMaXN0T3BlcmF0b3JzID0ge1xuICBpbkxpc3Q6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuLyoqIE9wZXJhdG9ycyBmb3IgZmlsdGVyaW5nIG9uIGEgU3RyaW5nIGZpZWxkICovXG5leHBvcnQgdHlwZSBTdHJpbmdPcGVyYXRvcnMgPSB7XG4gIGNvbnRhaW5zPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIGVxPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIGluPzogSW5wdXRNYXliZTxBcnJheTxTY2FsYXJzWydTdHJpbmcnXT4+O1xuICBub3RDb250YWlucz86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBub3RFcT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBub3RJbj86IElucHV0TWF5YmU8QXJyYXk8U2NhbGFyc1snU3RyaW5nJ10+PjtcbiAgcmVnZXg/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbn07XG5cbi8qKiBJbmRpY2F0ZXMgdGhhdCBhbiBvcGVyYXRpb24gc3VjY2VlZGVkLCB3aGVyZSB3ZSBkbyBub3Qgd2FudCB0byByZXR1cm4gYW55IG1vcmUgc3BlY2lmaWMgaW5mb3JtYXRpb24uICovXG5leHBvcnQgdHlwZSBTdWNjZXNzID0ge1xuICBfX3R5cGVuYW1lPzogJ1N1Y2Nlc3MnO1xuICBzdWNjZXNzOiBTY2FsYXJzWydCb29sZWFuJ107XG59O1xuXG5leHBvcnQgdHlwZSBTdXJjaGFyZ2UgPSBOb2RlICYge1xuICBfX3R5cGVuYW1lPzogJ1N1cmNoYXJnZSc7XG4gIGNyZWF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgZGVzY3JpcHRpb246IFNjYWxhcnNbJ1N0cmluZyddO1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgcHJpY2U6IFNjYWxhcnNbJ0ludCddO1xuICBwcmljZVdpdGhUYXg6IFNjYWxhcnNbJ0ludCddO1xuICBza3U/OiBNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHRheExpbmVzOiBBcnJheTxUYXhMaW5lPjtcbiAgdGF4UmF0ZTogU2NhbGFyc1snRmxvYXQnXTtcbiAgdXBkYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xufTtcblxuZXhwb3J0IHR5cGUgU3VyY2hhcmdlSW5wdXQgPSB7XG4gIGRlc2NyaXB0aW9uOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgcHJpY2U6IFNjYWxhcnNbJ0ludCddO1xuICBwcmljZUluY2x1ZGVzVGF4OiBTY2FsYXJzWydCb29sZWFuJ107XG4gIHNrdT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICB0YXhEZXNjcmlwdGlvbj86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICB0YXhSYXRlPzogSW5wdXRNYXliZTxTY2FsYXJzWydGbG9hdCddPjtcbn07XG5cbmV4cG9ydCB0eXBlIFRhZyA9IE5vZGUgJiB7XG4gIF9fdHlwZW5hbWU/OiAnVGFnJztcbiAgY3JlYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgdXBkYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICB2YWx1ZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG5leHBvcnQgdHlwZSBUYWdGaWx0ZXJQYXJhbWV0ZXIgPSB7XG4gIGNyZWF0ZWRBdD86IElucHV0TWF5YmU8RGF0ZU9wZXJhdG9ycz47XG4gIGlkPzogSW5wdXRNYXliZTxJZE9wZXJhdG9ycz47XG4gIHVwZGF0ZWRBdD86IElucHV0TWF5YmU8RGF0ZU9wZXJhdG9ycz47XG4gIHZhbHVlPzogSW5wdXRNYXliZTxTdHJpbmdPcGVyYXRvcnM+O1xufTtcblxuZXhwb3J0IHR5cGUgVGFnTGlzdCA9IFBhZ2luYXRlZExpc3QgJiB7XG4gIF9fdHlwZW5hbWU/OiAnVGFnTGlzdCc7XG4gIGl0ZW1zOiBBcnJheTxUYWc+O1xuICB0b3RhbEl0ZW1zOiBTY2FsYXJzWydJbnQnXTtcbn07XG5cbmV4cG9ydCB0eXBlIFRhZ0xpc3RPcHRpb25zID0ge1xuICAvKiogQWxsb3dzIHRoZSByZXN1bHRzIHRvIGJlIGZpbHRlcmVkICovXG4gIGZpbHRlcj86IElucHV0TWF5YmU8VGFnRmlsdGVyUGFyYW1ldGVyPjtcbiAgLyoqIFNwZWNpZmllcyB3aGV0aGVyIG11bHRpcGxlIFwiZmlsdGVyXCIgYXJndW1lbnRzIHNob3VsZCBiZSBjb21iaW5lcyB3aXRoIGEgbG9naWNhbCBBTkQgb3IgT1Igb3BlcmF0aW9uLiBEZWZhdWx0cyB0byBBTkQuICovXG4gIGZpbHRlck9wZXJhdG9yPzogSW5wdXRNYXliZTxMb2dpY2FsT3BlcmF0b3I+O1xuICAvKiogU2tpcHMgdGhlIGZpcnN0IG4gcmVzdWx0cywgZm9yIHVzZSBpbiBwYWdpbmF0aW9uICovXG4gIHNraXA/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0ludCddPjtcbiAgLyoqIFNwZWNpZmllcyB3aGljaCBwcm9wZXJ0aWVzIHRvIHNvcnQgdGhlIHJlc3VsdHMgYnkgKi9cbiAgc29ydD86IElucHV0TWF5YmU8VGFnU29ydFBhcmFtZXRlcj47XG4gIC8qKiBUYWtlcyBuIHJlc3VsdHMsIGZvciB1c2UgaW4gcGFnaW5hdGlvbiAqL1xuICB0YWtlPzogSW5wdXRNYXliZTxTY2FsYXJzWydJbnQnXT47XG59O1xuXG5leHBvcnQgdHlwZSBUYWdTb3J0UGFyYW1ldGVyID0ge1xuICBjcmVhdGVkQXQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIGlkPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICB1cGRhdGVkQXQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIHZhbHVlPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xufTtcblxuZXhwb3J0IHR5cGUgVGF4Q2F0ZWdvcnkgPSBOb2RlICYge1xuICBfX3R5cGVuYW1lPzogJ1RheENhdGVnb3J5JztcbiAgY3JlYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xuICBjdXN0b21GaWVsZHM/OiBNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgaXNEZWZhdWx0OiBTY2FsYXJzWydCb29sZWFuJ107XG4gIG5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB1cGRhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG59O1xuXG5leHBvcnQgdHlwZSBUYXhMaW5lID0ge1xuICBfX3R5cGVuYW1lPzogJ1RheExpbmUnO1xuICBkZXNjcmlwdGlvbjogU2NhbGFyc1snU3RyaW5nJ107XG4gIHRheFJhdGU6IFNjYWxhcnNbJ0Zsb2F0J107XG59O1xuXG5leHBvcnQgdHlwZSBUYXhSYXRlID0gTm9kZSAmIHtcbiAgX190eXBlbmFtZT86ICdUYXhSYXRlJztcbiAgY2F0ZWdvcnk6IFRheENhdGVnb3J5O1xuICBjcmVhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGN1c3RvbUZpZWxkcz86IE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGN1c3RvbWVyR3JvdXA/OiBNYXliZTxDdXN0b21lckdyb3VwPjtcbiAgZW5hYmxlZDogU2NhbGFyc1snQm9vbGVhbiddO1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgbmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIHVwZGF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgdmFsdWU6IFNjYWxhcnNbJ0Zsb2F0J107XG4gIHpvbmU6IFpvbmU7XG59O1xuXG5leHBvcnQgdHlwZSBUYXhSYXRlRmlsdGVyUGFyYW1ldGVyID0ge1xuICBjcmVhdGVkQXQ/OiBJbnB1dE1heWJlPERhdGVPcGVyYXRvcnM+O1xuICBlbmFibGVkPzogSW5wdXRNYXliZTxCb29sZWFuT3BlcmF0b3JzPjtcbiAgaWQ/OiBJbnB1dE1heWJlPElkT3BlcmF0b3JzPjtcbiAgbmFtZT86IElucHV0TWF5YmU8U3RyaW5nT3BlcmF0b3JzPjtcbiAgdXBkYXRlZEF0PzogSW5wdXRNYXliZTxEYXRlT3BlcmF0b3JzPjtcbiAgdmFsdWU/OiBJbnB1dE1heWJlPE51bWJlck9wZXJhdG9ycz47XG59O1xuXG5leHBvcnQgdHlwZSBUYXhSYXRlTGlzdCA9IFBhZ2luYXRlZExpc3QgJiB7XG4gIF9fdHlwZW5hbWU/OiAnVGF4UmF0ZUxpc3QnO1xuICBpdGVtczogQXJyYXk8VGF4UmF0ZT47XG4gIHRvdGFsSXRlbXM6IFNjYWxhcnNbJ0ludCddO1xufTtcblxuZXhwb3J0IHR5cGUgVGF4UmF0ZUxpc3RPcHRpb25zID0ge1xuICAvKiogQWxsb3dzIHRoZSByZXN1bHRzIHRvIGJlIGZpbHRlcmVkICovXG4gIGZpbHRlcj86IElucHV0TWF5YmU8VGF4UmF0ZUZpbHRlclBhcmFtZXRlcj47XG4gIC8qKiBTcGVjaWZpZXMgd2hldGhlciBtdWx0aXBsZSBcImZpbHRlclwiIGFyZ3VtZW50cyBzaG91bGQgYmUgY29tYmluZXMgd2l0aCBhIGxvZ2ljYWwgQU5EIG9yIE9SIG9wZXJhdGlvbi4gRGVmYXVsdHMgdG8gQU5ELiAqL1xuICBmaWx0ZXJPcGVyYXRvcj86IElucHV0TWF5YmU8TG9naWNhbE9wZXJhdG9yPjtcbiAgLyoqIFNraXBzIHRoZSBmaXJzdCBuIHJlc3VsdHMsIGZvciB1c2UgaW4gcGFnaW5hdGlvbiAqL1xuICBza2lwPzogSW5wdXRNYXliZTxTY2FsYXJzWydJbnQnXT47XG4gIC8qKiBTcGVjaWZpZXMgd2hpY2ggcHJvcGVydGllcyB0byBzb3J0IHRoZSByZXN1bHRzIGJ5ICovXG4gIHNvcnQ/OiBJbnB1dE1heWJlPFRheFJhdGVTb3J0UGFyYW1ldGVyPjtcbiAgLyoqIFRha2VzIG4gcmVzdWx0cywgZm9yIHVzZSBpbiBwYWdpbmF0aW9uICovXG4gIHRha2U/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0ludCddPjtcbn07XG5cbmV4cG9ydCB0eXBlIFRheFJhdGVTb3J0UGFyYW1ldGVyID0ge1xuICBjcmVhdGVkQXQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIGlkPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICBuYW1lPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xuICB1cGRhdGVkQXQ/OiBJbnB1dE1heWJlPFNvcnRPcmRlcj47XG4gIHZhbHVlPzogSW5wdXRNYXliZTxTb3J0T3JkZXI+O1xufTtcblxuZXhwb3J0IHR5cGUgVGVzdEVsaWdpYmxlU2hpcHBpbmdNZXRob2RzSW5wdXQgPSB7XG4gIGxpbmVzOiBBcnJheTxUZXN0U2hpcHBpbmdNZXRob2RPcmRlckxpbmVJbnB1dD47XG4gIHNoaXBwaW5nQWRkcmVzczogQ3JlYXRlQWRkcmVzc0lucHV0O1xufTtcblxuZXhwb3J0IHR5cGUgVGVzdFNoaXBwaW5nTWV0aG9kSW5wdXQgPSB7XG4gIGNhbGN1bGF0b3I6IENvbmZpZ3VyYWJsZU9wZXJhdGlvbklucHV0O1xuICBjaGVja2VyOiBDb25maWd1cmFibGVPcGVyYXRpb25JbnB1dDtcbiAgbGluZXM6IEFycmF5PFRlc3RTaGlwcGluZ01ldGhvZE9yZGVyTGluZUlucHV0PjtcbiAgc2hpcHBpbmdBZGRyZXNzOiBDcmVhdGVBZGRyZXNzSW5wdXQ7XG59O1xuXG5leHBvcnQgdHlwZSBUZXN0U2hpcHBpbmdNZXRob2RPcmRlckxpbmVJbnB1dCA9IHtcbiAgcHJvZHVjdFZhcmlhbnRJZDogU2NhbGFyc1snSUQnXTtcbiAgcXVhbnRpdHk6IFNjYWxhcnNbJ0ludCddO1xufTtcblxuZXhwb3J0IHR5cGUgVGVzdFNoaXBwaW5nTWV0aG9kUXVvdGUgPSB7XG4gIF9fdHlwZW5hbWU/OiAnVGVzdFNoaXBwaW5nTWV0aG9kUXVvdGUnO1xuICBtZXRhZGF0YT86IE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIHByaWNlOiBTY2FsYXJzWydJbnQnXTtcbiAgcHJpY2VXaXRoVGF4OiBTY2FsYXJzWydJbnQnXTtcbn07XG5cbmV4cG9ydCB0eXBlIFRlc3RTaGlwcGluZ01ldGhvZFJlc3VsdCA9IHtcbiAgX190eXBlbmFtZT86ICdUZXN0U2hpcHBpbmdNZXRob2RSZXN1bHQnO1xuICBlbGlnaWJsZTogU2NhbGFyc1snQm9vbGVhbiddO1xuICBxdW90ZT86IE1heWJlPFRlc3RTaGlwcGluZ01ldGhvZFF1b3RlPjtcbn07XG5cbmV4cG9ydCB0eXBlIFRleHRDdXN0b21GaWVsZENvbmZpZyA9IEN1c3RvbUZpZWxkICYge1xuICBfX3R5cGVuYW1lPzogJ1RleHRDdXN0b21GaWVsZENvbmZpZyc7XG4gIGRlc2NyaXB0aW9uPzogTWF5YmU8QXJyYXk8TG9jYWxpemVkU3RyaW5nPj47XG4gIGludGVybmFsPzogTWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbiAgbGFiZWw/OiBNYXliZTxBcnJheTxMb2NhbGl6ZWRTdHJpbmc+PjtcbiAgbGlzdDogU2NhbGFyc1snQm9vbGVhbiddO1xuICBuYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgbnVsbGFibGU/OiBNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICByZWFkb25seT86IE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIHR5cGU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICB1aT86IE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG59O1xuXG5leHBvcnQgdHlwZSBUcmFuc2l0aW9uRnVsZmlsbG1lbnRUb1N0YXRlUmVzdWx0ID0gRnVsZmlsbG1lbnQgfCBGdWxmaWxsbWVudFN0YXRlVHJhbnNpdGlvbkVycm9yO1xuXG5leHBvcnQgdHlwZSBUcmFuc2l0aW9uT3JkZXJUb1N0YXRlUmVzdWx0ID0gT3JkZXIgfCBPcmRlclN0YXRlVHJhbnNpdGlvbkVycm9yO1xuXG5leHBvcnQgdHlwZSBUcmFuc2l0aW9uUGF5bWVudFRvU3RhdGVSZXN1bHQgPSBQYXltZW50IHwgUGF5bWVudFN0YXRlVHJhbnNpdGlvbkVycm9yO1xuXG5leHBvcnQgdHlwZSBVaVN0YXRlID0ge1xuICBfX3R5cGVuYW1lPzogJ1VpU3RhdGUnO1xuICBjb250ZW50TGFuZ3VhZ2U6IExhbmd1YWdlQ29kZTtcbiAgZGlzcGxheVVpRXh0ZW5zaW9uUG9pbnRzOiBTY2FsYXJzWydCb29sZWFuJ107XG4gIGxhbmd1YWdlOiBMYW5ndWFnZUNvZGU7XG4gIGxvY2FsZT86IE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgdGhlbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuZXhwb3J0IHR5cGUgVXBkYXRlQWN0aXZlQWRtaW5pc3RyYXRvcklucHV0ID0ge1xuICBjdXN0b21GaWVsZHM/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGVtYWlsQWRkcmVzcz86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBmaXJzdE5hbWU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgbGFzdE5hbWU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgcGFzc3dvcmQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbn07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUFkZHJlc3NJbnB1dCA9IHtcbiAgY2l0eT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBjb21wYW55PzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIGNvdW50cnlDb2RlPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZGVmYXVsdEJpbGxpbmdBZGRyZXNzPzogSW5wdXRNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICBkZWZhdWx0U2hpcHBpbmdBZGRyZXNzPzogSW5wdXRNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICBmdWxsTmFtZT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgcGhvbmVOdW1iZXI/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgcG9zdGFsQ29kZT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBwcm92aW5jZT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBzdHJlZXRMaW5lMT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBzdHJlZXRMaW5lMj86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xufTtcblxuZXhwb3J0IHR5cGUgVXBkYXRlQWRtaW5pc3RyYXRvcklucHV0ID0ge1xuICBjdXN0b21GaWVsZHM/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGVtYWlsQWRkcmVzcz86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBmaXJzdE5hbWU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGxhc3ROYW1lPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHBhc3N3b3JkPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHJvbGVJZHM/OiBJbnB1dE1heWJlPEFycmF5PFNjYWxhcnNbJ0lEJ10+Pjtcbn07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUFzc2V0SW5wdXQgPSB7XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZm9jYWxQb2ludD86IElucHV0TWF5YmU8Q29vcmRpbmF0ZUlucHV0PjtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIG5hbWU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgdGFncz86IElucHV0TWF5YmU8QXJyYXk8U2NhbGFyc1snU3RyaW5nJ10+Pjtcbn07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUNoYW5uZWxJbnB1dCA9IHtcbiAgY29kZT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBjdXJyZW5jeUNvZGU/OiBJbnB1dE1heWJlPEN1cnJlbmN5Q29kZT47XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZGVmYXVsdExhbmd1YWdlQ29kZT86IElucHV0TWF5YmU8TGFuZ3VhZ2VDb2RlPjtcbiAgZGVmYXVsdFNoaXBwaW5nWm9uZUlkPzogSW5wdXRNYXliZTxTY2FsYXJzWydJRCddPjtcbiAgZGVmYXVsdFRheFpvbmVJZD86IElucHV0TWF5YmU8U2NhbGFyc1snSUQnXT47XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBwcmljZXNJbmNsdWRlVGF4PzogSW5wdXRNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICB0b2tlbj86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xufTtcblxuZXhwb3J0IHR5cGUgVXBkYXRlQ2hhbm5lbFJlc3VsdCA9IENoYW5uZWwgfCBMYW5ndWFnZU5vdEF2YWlsYWJsZUVycm9yO1xuXG5leHBvcnQgdHlwZSBVcGRhdGVDb2xsZWN0aW9uSW5wdXQgPSB7XG4gIGFzc2V0SWRzPzogSW5wdXRNYXliZTxBcnJheTxTY2FsYXJzWydJRCddPj47XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZmVhdHVyZWRBc3NldElkPzogSW5wdXRNYXliZTxTY2FsYXJzWydJRCddPjtcbiAgZmlsdGVycz86IElucHV0TWF5YmU8QXJyYXk8Q29uZmlndXJhYmxlT3BlcmF0aW9uSW5wdXQ+PjtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGluaGVyaXRGaWx0ZXJzPzogSW5wdXRNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICBpc1ByaXZhdGU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIHBhcmVudElkPzogSW5wdXRNYXliZTxTY2FsYXJzWydJRCddPjtcbiAgdHJhbnNsYXRpb25zPzogSW5wdXRNYXliZTxBcnJheTxVcGRhdGVDb2xsZWN0aW9uVHJhbnNsYXRpb25JbnB1dD4+O1xufTtcblxuZXhwb3J0IHR5cGUgVXBkYXRlQ29sbGVjdGlvblRyYW5zbGF0aW9uSW5wdXQgPSB7XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZGVzY3JpcHRpb24/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgaWQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0lEJ10+O1xuICBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZTtcbiAgbmFtZT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBzbHVnPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG59O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVDb3VudHJ5SW5wdXQgPSB7XG4gIGNvZGU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgY3VzdG9tRmllbGRzPzogSW5wdXRNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBlbmFibGVkPzogSW5wdXRNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgdHJhbnNsYXRpb25zPzogSW5wdXRNYXliZTxBcnJheTxDb3VudHJ5VHJhbnNsYXRpb25JbnB1dD4+O1xufTtcblxuZXhwb3J0IHR5cGUgVXBkYXRlQ3VzdG9tZXJHcm91cElucHV0ID0ge1xuICBjdXN0b21GaWVsZHM/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBuYW1lPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG59O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVDdXN0b21lcklucHV0ID0ge1xuICBjdXN0b21GaWVsZHM/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGVtYWlsQWRkcmVzcz86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBmaXJzdE5hbWU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGxhc3ROYW1lPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHBob25lTnVtYmVyPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHRpdGxlPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG59O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVDdXN0b21lck5vdGVJbnB1dCA9IHtcbiAgbm90ZTogU2NhbGFyc1snU3RyaW5nJ107XG4gIG5vdGVJZDogU2NhbGFyc1snSUQnXTtcbn07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUN1c3RvbWVyUmVzdWx0ID0gQ3VzdG9tZXIgfCBFbWFpbEFkZHJlc3NDb25mbGljdEVycm9yO1xuXG5leHBvcnQgdHlwZSBVcGRhdGVGYWNldElucHV0ID0ge1xuICBjb2RlPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGlzUHJpdmF0ZT86IElucHV0TWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbiAgdHJhbnNsYXRpb25zPzogSW5wdXRNYXliZTxBcnJheTxGYWNldFRyYW5zbGF0aW9uSW5wdXQ+Pjtcbn07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUZhY2V0VmFsdWVJbnB1dCA9IHtcbiAgY29kZT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBjdXN0b21GaWVsZHM/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICB0cmFuc2xhdGlvbnM/OiBJbnB1dE1heWJlPEFycmF5PEZhY2V0VmFsdWVUcmFuc2xhdGlvbklucHV0Pj47XG59O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVHbG9iYWxTZXR0aW5nc0lucHV0ID0ge1xuICBhdmFpbGFibGVMYW5ndWFnZXM/OiBJbnB1dE1heWJlPEFycmF5PExhbmd1YWdlQ29kZT4+O1xuICBjdXN0b21GaWVsZHM/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIG91dE9mU3RvY2tUaHJlc2hvbGQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0ludCddPjtcbiAgdHJhY2tJbnZlbnRvcnk/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG59O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVHbG9iYWxTZXR0aW5nc1Jlc3VsdCA9IENoYW5uZWxEZWZhdWx0TGFuZ3VhZ2VFcnJvciB8IEdsb2JhbFNldHRpbmdzO1xuXG5leHBvcnQgdHlwZSBVcGRhdGVPcmRlckFkZHJlc3NJbnB1dCA9IHtcbiAgY2l0eT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBjb21wYW55PzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIGNvdW50cnlDb2RlPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIGZ1bGxOYW1lPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHBob25lTnVtYmVyPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHBvc3RhbENvZGU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgcHJvdmluY2U/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgc3RyZWV0TGluZTE/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgc3RyZWV0TGluZTI/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbn07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZU9yZGVySW5wdXQgPSB7XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVPcmRlck5vdGVJbnB1dCA9IHtcbiAgaXNQdWJsaWM/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIG5vdGU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgbm90ZUlkOiBTY2FsYXJzWydJRCddO1xufTtcblxuZXhwb3J0IHR5cGUgVXBkYXRlUGF5bWVudE1ldGhvZElucHV0ID0ge1xuICBjaGVja2VyPzogSW5wdXRNYXliZTxDb25maWd1cmFibGVPcGVyYXRpb25JbnB1dD47XG4gIGNvZGU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgY3VzdG9tRmllbGRzPzogSW5wdXRNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBkZXNjcmlwdGlvbj86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBlbmFibGVkPzogSW5wdXRNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xuICBoYW5kbGVyPzogSW5wdXRNYXliZTxDb25maWd1cmFibGVPcGVyYXRpb25JbnB1dD47XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBuYW1lPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG59O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVQcm9kdWN0SW5wdXQgPSB7XG4gIGFzc2V0SWRzPzogSW5wdXRNYXliZTxBcnJheTxTY2FsYXJzWydJRCddPj47XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZW5hYmxlZD86IElucHV0TWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbiAgZmFjZXRWYWx1ZUlkcz86IElucHV0TWF5YmU8QXJyYXk8U2NhbGFyc1snSUQnXT4+O1xuICBmZWF0dXJlZEFzc2V0SWQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0lEJ10+O1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgdHJhbnNsYXRpb25zPzogSW5wdXRNYXliZTxBcnJheTxQcm9kdWN0VHJhbnNsYXRpb25JbnB1dD4+O1xufTtcblxuZXhwb3J0IHR5cGUgVXBkYXRlUHJvZHVjdE9wdGlvbkdyb3VwSW5wdXQgPSB7XG4gIGNvZGU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgY3VzdG9tRmllbGRzPzogSW5wdXRNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgdHJhbnNsYXRpb25zPzogSW5wdXRNYXliZTxBcnJheTxQcm9kdWN0T3B0aW9uR3JvdXBUcmFuc2xhdGlvbklucHV0Pj47XG59O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVQcm9kdWN0T3B0aW9uSW5wdXQgPSB7XG4gIGNvZGU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgY3VzdG9tRmllbGRzPzogSW5wdXRNYXliZTxTY2FsYXJzWydKU09OJ10+O1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgdHJhbnNsYXRpb25zPzogSW5wdXRNYXliZTxBcnJheTxQcm9kdWN0T3B0aW9uR3JvdXBUcmFuc2xhdGlvbklucHV0Pj47XG59O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVQcm9kdWN0VmFyaWFudElucHV0ID0ge1xuICBhc3NldElkcz86IElucHV0TWF5YmU8QXJyYXk8U2NhbGFyc1snSUQnXT4+O1xuICBjdXN0b21GaWVsZHM/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGVuYWJsZWQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIGZhY2V0VmFsdWVJZHM/OiBJbnB1dE1heWJlPEFycmF5PFNjYWxhcnNbJ0lEJ10+PjtcbiAgZmVhdHVyZWRBc3NldElkPzogSW5wdXRNYXliZTxTY2FsYXJzWydJRCddPjtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIG91dE9mU3RvY2tUaHJlc2hvbGQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0ludCddPjtcbiAgcHJpY2U/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0ludCddPjtcbiAgc2t1PzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHN0b2NrT25IYW5kPzogSW5wdXRNYXliZTxTY2FsYXJzWydJbnQnXT47XG4gIHRheENhdGVnb3J5SWQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0lEJ10+O1xuICB0cmFja0ludmVudG9yeT86IElucHV0TWF5YmU8R2xvYmFsRmxhZz47XG4gIHRyYW5zbGF0aW9ucz86IElucHV0TWF5YmU8QXJyYXk8UHJvZHVjdFZhcmlhbnRUcmFuc2xhdGlvbklucHV0Pj47XG4gIHVzZUdsb2JhbE91dE9mU3RvY2tUaHJlc2hvbGQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG59O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVQcm9tb3Rpb25JbnB1dCA9IHtcbiAgYWN0aW9ucz86IElucHV0TWF5YmU8QXJyYXk8Q29uZmlndXJhYmxlT3BlcmF0aW9uSW5wdXQ+PjtcbiAgY29uZGl0aW9ucz86IElucHV0TWF5YmU8QXJyYXk8Q29uZmlndXJhYmxlT3BlcmF0aW9uSW5wdXQ+PjtcbiAgY291cG9uQ29kZT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBjdXN0b21GaWVsZHM/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGVuYWJsZWQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIGVuZHNBdD86IElucHV0TWF5YmU8U2NhbGFyc1snRGF0ZVRpbWUnXT47XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBuYW1lPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIHBlckN1c3RvbWVyVXNhZ2VMaW1pdD86IElucHV0TWF5YmU8U2NhbGFyc1snSW50J10+O1xuICBzdGFydHNBdD86IElucHV0TWF5YmU8U2NhbGFyc1snRGF0ZVRpbWUnXT47XG59O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVQcm9tb3Rpb25SZXN1bHQgPSBNaXNzaW5nQ29uZGl0aW9uc0Vycm9yIHwgUHJvbW90aW9uO1xuXG5leHBvcnQgdHlwZSBVcGRhdGVSb2xlSW5wdXQgPSB7XG4gIGNoYW5uZWxJZHM/OiBJbnB1dE1heWJlPEFycmF5PFNjYWxhcnNbJ0lEJ10+PjtcbiAgY29kZT86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBkZXNjcmlwdGlvbj86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgcGVybWlzc2lvbnM/OiBJbnB1dE1heWJlPEFycmF5PFBlcm1pc3Npb24+Pjtcbn07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZVNoaXBwaW5nTWV0aG9kSW5wdXQgPSB7XG4gIGNhbGN1bGF0b3I/OiBJbnB1dE1heWJlPENvbmZpZ3VyYWJsZU9wZXJhdGlvbklucHV0PjtcbiAgY2hlY2tlcj86IElucHV0TWF5YmU8Q29uZmlndXJhYmxlT3BlcmF0aW9uSW5wdXQ+O1xuICBjb2RlPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgZnVsZmlsbG1lbnRIYW5kbGVyPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICB0cmFuc2xhdGlvbnM6IEFycmF5PFNoaXBwaW5nTWV0aG9kVHJhbnNsYXRpb25JbnB1dD47XG59O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVUYWdJbnB1dCA9IHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIHZhbHVlPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG59O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVUYXhDYXRlZ29yeUlucHV0ID0ge1xuICBjdXN0b21GaWVsZHM/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBpc0RlZmF1bHQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG4gIG5hbWU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbn07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZVRheFJhdGVJbnB1dCA9IHtcbiAgY2F0ZWdvcnlJZD86IElucHV0TWF5YmU8U2NhbGFyc1snSUQnXT47XG4gIGN1c3RvbUZpZWxkcz86IElucHV0TWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgY3VzdG9tZXJHcm91cElkPzogSW5wdXRNYXliZTxTY2FsYXJzWydJRCddPjtcbiAgZW5hYmxlZD86IElucHV0TWF5YmU8U2NhbGFyc1snQm9vbGVhbiddPjtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIG5hbWU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbiAgdmFsdWU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Zsb2F0J10+O1xuICB6b25lSWQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0lEJ10+O1xufTtcblxuZXhwb3J0IHR5cGUgVXBkYXRlWm9uZUlucHV0ID0ge1xuICBjdXN0b21GaWVsZHM/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0pTT04nXT47XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBuYW1lPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG59O1xuXG5leHBvcnQgdHlwZSBVc2VyID0gTm9kZSAmIHtcbiAgX190eXBlbmFtZT86ICdVc2VyJztcbiAgYXV0aGVudGljYXRpb25NZXRob2RzOiBBcnJheTxBdXRoZW50aWNhdGlvbk1ldGhvZD47XG4gIGNyZWF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgY3VzdG9tRmllbGRzPzogTWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGlkZW50aWZpZXI6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBsYXN0TG9naW4/OiBNYXliZTxTY2FsYXJzWydEYXRlVGltZSddPjtcbiAgcm9sZXM6IEFycmF5PFJvbGU+O1xuICB1cGRhdGVkQXQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIHZlcmlmaWVkOiBTY2FsYXJzWydCb29sZWFuJ107XG59O1xuXG5leHBvcnQgdHlwZSBVc2VyU3RhdHVzID0ge1xuICBfX3R5cGVuYW1lPzogJ1VzZXJTdGF0dXMnO1xuICBhY3RpdmVDaGFubmVsSWQ/OiBNYXliZTxTY2FsYXJzWydJRCddPjtcbiAgY2hhbm5lbHM6IEFycmF5PEN1cnJlbnRVc2VyQ2hhbm5lbD47XG4gIGlzTG9nZ2VkSW46IFNjYWxhcnNbJ0Jvb2xlYW4nXTtcbiAgbG9naW5UaW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+O1xuICB1c2VybmFtZTogU2NhbGFyc1snU3RyaW5nJ107XG59O1xuXG5leHBvcnQgdHlwZSBVc2VyU3RhdHVzSW5wdXQgPSB7XG4gIGFjdGl2ZUNoYW5uZWxJZDogU2NhbGFyc1snSUQnXTtcbiAgY2hhbm5lbHM6IEFycmF5PEN1cnJlbnRVc2VyQ2hhbm5lbElucHV0PjtcbiAgbG9naW5UaW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgdXNlcm5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xufTtcblxuZXhwb3J0IHR5cGUgWm9uZSA9IE5vZGUgJiB7XG4gIF9fdHlwZW5hbWU/OiAnWm9uZSc7XG4gIGNyZWF0ZWRBdDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbiAgY3VzdG9tRmllbGRzPzogTWF5YmU8U2NhbGFyc1snSlNPTiddPjtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIG1lbWJlcnM6IEFycmF5PENvdW50cnk+O1xuICBuYW1lOiBTY2FsYXJzWydTdHJpbmcnXTtcbiAgdXBkYXRlZEF0OiBTY2FsYXJzWydEYXRlVGltZSddO1xufTtcblxuZXhwb3J0IHR5cGUgUm9sZUZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ1JvbGUnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZywgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+LCBjaGFubmVsczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NoYW5uZWwnLCBpZDogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIHRva2VuOiBzdHJpbmcgfT4gfTtcblxuZXhwb3J0IHR5cGUgQWRtaW5pc3RyYXRvckZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0FkbWluaXN0cmF0b3InLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGZpcnN0TmFtZTogc3RyaW5nLCBsYXN0TmFtZTogc3RyaW5nLCBlbWFpbEFkZHJlc3M6IHN0cmluZywgdXNlcjogeyBfX3R5cGVuYW1lPzogJ1VzZXInLCBpZDogc3RyaW5nLCBpZGVudGlmaWVyOiBzdHJpbmcsIGxhc3RMb2dpbj86IGFueSB8IG51bGwsIHJvbGVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUm9sZScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBwZXJtaXNzaW9uczogQXJyYXk8UGVybWlzc2lvbj4sIGNoYW5uZWxzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgdG9rZW46IHN0cmluZyB9PiB9PiB9IH07XG5cbmV4cG9ydCB0eXBlIEdldEFkbWluaXN0cmF0b3JzUXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7XG4gIG9wdGlvbnM/OiBJbnB1dE1heWJlPEFkbWluaXN0cmF0b3JMaXN0T3B0aW9ucz47XG59PjtcblxuXG5leHBvcnQgdHlwZSBHZXRBZG1pbmlzdHJhdG9yc1F1ZXJ5ID0geyBhZG1pbmlzdHJhdG9yczogeyBfX3R5cGVuYW1lPzogJ0FkbWluaXN0cmF0b3JMaXN0JywgdG90YWxJdGVtczogbnVtYmVyLCBpdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0FkbWluaXN0cmF0b3InLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGZpcnN0TmFtZTogc3RyaW5nLCBsYXN0TmFtZTogc3RyaW5nLCBlbWFpbEFkZHJlc3M6IHN0cmluZywgdXNlcjogeyBfX3R5cGVuYW1lPzogJ1VzZXInLCBpZDogc3RyaW5nLCBpZGVudGlmaWVyOiBzdHJpbmcsIGxhc3RMb2dpbj86IGFueSB8IG51bGwsIHJvbGVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUm9sZScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBwZXJtaXNzaW9uczogQXJyYXk8UGVybWlzc2lvbj4sIGNoYW5uZWxzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgdG9rZW46IHN0cmluZyB9PiB9PiB9IH0+IH0gfTtcblxuZXhwb3J0IHR5cGUgR2V0QWN0aXZlQWRtaW5pc3RyYXRvclF1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8eyBba2V5OiBzdHJpbmddOiBuZXZlcjsgfT47XG5cblxuZXhwb3J0IHR5cGUgR2V0QWN0aXZlQWRtaW5pc3RyYXRvclF1ZXJ5ID0geyBhY3RpdmVBZG1pbmlzdHJhdG9yPzogeyBfX3R5cGVuYW1lPzogJ0FkbWluaXN0cmF0b3InLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGZpcnN0TmFtZTogc3RyaW5nLCBsYXN0TmFtZTogc3RyaW5nLCBlbWFpbEFkZHJlc3M6IHN0cmluZywgdXNlcjogeyBfX3R5cGVuYW1lPzogJ1VzZXInLCBpZDogc3RyaW5nLCBpZGVudGlmaWVyOiBzdHJpbmcsIGxhc3RMb2dpbj86IGFueSB8IG51bGwsIHJvbGVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUm9sZScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBwZXJtaXNzaW9uczogQXJyYXk8UGVybWlzc2lvbj4sIGNoYW5uZWxzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgdG9rZW46IHN0cmluZyB9PiB9PiB9IH0gfCBudWxsIH07XG5cbmV4cG9ydCB0eXBlIEdldEFkbWluaXN0cmF0b3JRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59PjtcblxuXG5leHBvcnQgdHlwZSBHZXRBZG1pbmlzdHJhdG9yUXVlcnkgPSB7IGFkbWluaXN0cmF0b3I/OiB7IF9fdHlwZW5hbWU/OiAnQWRtaW5pc3RyYXRvcicsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgZmlyc3ROYW1lOiBzdHJpbmcsIGxhc3ROYW1lOiBzdHJpbmcsIGVtYWlsQWRkcmVzczogc3RyaW5nLCB1c2VyOiB7IF9fdHlwZW5hbWU/OiAnVXNlcicsIGlkOiBzdHJpbmcsIGlkZW50aWZpZXI6IHN0cmluZywgbGFzdExvZ2luPzogYW55IHwgbnVsbCwgcm9sZXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdSb2xlJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBjb2RlOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIHBlcm1pc3Npb25zOiBBcnJheTxQZXJtaXNzaW9uPiwgY2hhbm5lbHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDaGFubmVsJywgaWQ6IHN0cmluZywgY29kZTogc3RyaW5nLCB0b2tlbjogc3RyaW5nIH0+IH0+IH0gfSB8IG51bGwgfTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlQWRtaW5pc3RyYXRvck11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogQ3JlYXRlQWRtaW5pc3RyYXRvcklucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgQ3JlYXRlQWRtaW5pc3RyYXRvck11dGF0aW9uID0geyBjcmVhdGVBZG1pbmlzdHJhdG9yOiB7IF9fdHlwZW5hbWU/OiAnQWRtaW5pc3RyYXRvcicsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgZmlyc3ROYW1lOiBzdHJpbmcsIGxhc3ROYW1lOiBzdHJpbmcsIGVtYWlsQWRkcmVzczogc3RyaW5nLCB1c2VyOiB7IF9fdHlwZW5hbWU/OiAnVXNlcicsIGlkOiBzdHJpbmcsIGlkZW50aWZpZXI6IHN0cmluZywgbGFzdExvZ2luPzogYW55IHwgbnVsbCwgcm9sZXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdSb2xlJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBjb2RlOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIHBlcm1pc3Npb25zOiBBcnJheTxQZXJtaXNzaW9uPiwgY2hhbm5lbHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDaGFubmVsJywgaWQ6IHN0cmluZywgY29kZTogc3RyaW5nLCB0b2tlbjogc3RyaW5nIH0+IH0+IH0gfSB9O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVBZG1pbmlzdHJhdG9yTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlucHV0OiBVcGRhdGVBZG1pbmlzdHJhdG9ySW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBVcGRhdGVBZG1pbmlzdHJhdG9yTXV0YXRpb24gPSB7IHVwZGF0ZUFkbWluaXN0cmF0b3I6IHsgX190eXBlbmFtZT86ICdBZG1pbmlzdHJhdG9yJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBmaXJzdE5hbWU6IHN0cmluZywgbGFzdE5hbWU6IHN0cmluZywgZW1haWxBZGRyZXNzOiBzdHJpbmcsIHVzZXI6IHsgX190eXBlbmFtZT86ICdVc2VyJywgaWQ6IHN0cmluZywgaWRlbnRpZmllcjogc3RyaW5nLCBsYXN0TG9naW4/OiBhbnkgfCBudWxsLCByb2xlczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1JvbGUnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZywgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+LCBjaGFubmVsczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NoYW5uZWwnLCBpZDogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIHRva2VuOiBzdHJpbmcgfT4gfT4gfSB9IH07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUFjdGl2ZUFkbWluaXN0cmF0b3JNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IFVwZGF0ZUFjdGl2ZUFkbWluaXN0cmF0b3JJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUFjdGl2ZUFkbWluaXN0cmF0b3JNdXRhdGlvbiA9IHsgdXBkYXRlQWN0aXZlQWRtaW5pc3RyYXRvcjogeyBfX3R5cGVuYW1lPzogJ0FkbWluaXN0cmF0b3InLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGZpcnN0TmFtZTogc3RyaW5nLCBsYXN0TmFtZTogc3RyaW5nLCBlbWFpbEFkZHJlc3M6IHN0cmluZywgdXNlcjogeyBfX3R5cGVuYW1lPzogJ1VzZXInLCBpZDogc3RyaW5nLCBpZGVudGlmaWVyOiBzdHJpbmcsIGxhc3RMb2dpbj86IGFueSB8IG51bGwsIHJvbGVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUm9sZScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBwZXJtaXNzaW9uczogQXJyYXk8UGVybWlzc2lvbj4sIGNoYW5uZWxzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgdG9rZW46IHN0cmluZyB9PiB9PiB9IH0gfTtcblxuZXhwb3J0IHR5cGUgRGVsZXRlQWRtaW5pc3RyYXRvck11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIERlbGV0ZUFkbWluaXN0cmF0b3JNdXRhdGlvbiA9IHsgZGVsZXRlQWRtaW5pc3RyYXRvcjogeyBfX3R5cGVuYW1lPzogJ0RlbGV0aW9uUmVzcG9uc2UnLCByZXN1bHQ6IERlbGV0aW9uUmVzdWx0LCBtZXNzYWdlPzogc3RyaW5nIHwgbnVsbCB9IH07XG5cbmV4cG9ydCB0eXBlIEdldFJvbGVzUXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7XG4gIG9wdGlvbnM/OiBJbnB1dE1heWJlPFJvbGVMaXN0T3B0aW9ucz47XG59PjtcblxuXG5leHBvcnQgdHlwZSBHZXRSb2xlc1F1ZXJ5ID0geyByb2xlczogeyBfX3R5cGVuYW1lPzogJ1JvbGVMaXN0JywgdG90YWxJdGVtczogbnVtYmVyLCBpdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1JvbGUnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZywgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+LCBjaGFubmVsczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NoYW5uZWwnLCBpZDogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIHRva2VuOiBzdHJpbmcgfT4gfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBHZXRSb2xlUXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0Um9sZVF1ZXJ5ID0geyByb2xlPzogeyBfX3R5cGVuYW1lPzogJ1JvbGUnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZywgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+LCBjaGFubmVsczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NoYW5uZWwnLCBpZDogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIHRva2VuOiBzdHJpbmcgfT4gfSB8IG51bGwgfTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlUm9sZU11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogQ3JlYXRlUm9sZUlucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgQ3JlYXRlUm9sZU11dGF0aW9uID0geyBjcmVhdGVSb2xlOiB7IF9fdHlwZW5hbWU/OiAnUm9sZScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBwZXJtaXNzaW9uczogQXJyYXk8UGVybWlzc2lvbj4sIGNoYW5uZWxzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgdG9rZW46IHN0cmluZyB9PiB9IH07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZVJvbGVNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IFVwZGF0ZVJvbGVJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFVwZGF0ZVJvbGVNdXRhdGlvbiA9IHsgdXBkYXRlUm9sZTogeyBfX3R5cGVuYW1lPzogJ1JvbGUnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZywgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+LCBjaGFubmVsczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NoYW5uZWwnLCBpZDogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIHRva2VuOiBzdHJpbmcgfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBEZWxldGVSb2xlTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufT47XG5cblxuZXhwb3J0IHR5cGUgRGVsZXRlUm9sZU11dGF0aW9uID0geyBkZWxldGVSb2xlOiB7IF9fdHlwZW5hbWU/OiAnRGVsZXRpb25SZXNwb25zZScsIHJlc3VsdDogRGVsZXRpb25SZXN1bHQsIG1lc3NhZ2U/OiBzdHJpbmcgfCBudWxsIH0gfTtcblxuZXhwb3J0IHR5cGUgQXNzaWduUm9sZVRvQWRtaW5pc3RyYXRvck11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBhZG1pbmlzdHJhdG9ySWQ6IFNjYWxhcnNbJ0lEJ107XG4gIHJvbGVJZDogU2NhbGFyc1snSUQnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIEFzc2lnblJvbGVUb0FkbWluaXN0cmF0b3JNdXRhdGlvbiA9IHsgYXNzaWduUm9sZVRvQWRtaW5pc3RyYXRvcjogeyBfX3R5cGVuYW1lPzogJ0FkbWluaXN0cmF0b3InLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGZpcnN0TmFtZTogc3RyaW5nLCBsYXN0TmFtZTogc3RyaW5nLCBlbWFpbEFkZHJlc3M6IHN0cmluZywgdXNlcjogeyBfX3R5cGVuYW1lPzogJ1VzZXInLCBpZDogc3RyaW5nLCBpZGVudGlmaWVyOiBzdHJpbmcsIGxhc3RMb2dpbj86IGFueSB8IG51bGwsIHJvbGVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUm9sZScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBwZXJtaXNzaW9uczogQXJyYXk8UGVybWlzc2lvbj4sIGNoYW5uZWxzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgdG9rZW46IHN0cmluZyB9PiB9PiB9IH0gfTtcblxuZXhwb3J0IHR5cGUgQ3VycmVudFVzZXJGcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdDdXJyZW50VXNlcicsIGlkOiBzdHJpbmcsIGlkZW50aWZpZXI6IHN0cmluZywgY2hhbm5lbHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDdXJyZW50VXNlckNoYW5uZWwnLCBpZDogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIHRva2VuOiBzdHJpbmcsIHBlcm1pc3Npb25zOiBBcnJheTxQZXJtaXNzaW9uPiB9PiB9O1xuXG5leHBvcnQgdHlwZSBBdHRlbXB0TG9naW5NdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgdXNlcm5hbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xuICBwYXNzd29yZDogU2NhbGFyc1snU3RyaW5nJ107XG4gIHJlbWVtYmVyTWU6IFNjYWxhcnNbJ0Jvb2xlYW4nXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIEF0dGVtcHRMb2dpbk11dGF0aW9uID0geyBsb2dpbjogeyBfX3R5cGVuYW1lPzogJ0N1cnJlbnRVc2VyJywgaWQ6IHN0cmluZywgaWRlbnRpZmllcjogc3RyaW5nLCBjaGFubmVsczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0N1cnJlbnRVc2VyQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgdG9rZW46IHN0cmluZywgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+IH0+IH0gfCB7IF9fdHlwZW5hbWU/OiAnSW52YWxpZENyZWRlbnRpYWxzRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfCB7IF9fdHlwZW5hbWU/OiAnTmF0aXZlQXV0aFN0cmF0ZWd5RXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfTtcblxuZXhwb3J0IHR5cGUgTG9nT3V0TXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7IFtrZXk6IHN0cmluZ106IG5ldmVyOyB9PjtcblxuXG5leHBvcnQgdHlwZSBMb2dPdXRNdXRhdGlvbiA9IHsgbG9nb3V0OiB7IF9fdHlwZW5hbWU/OiAnU3VjY2VzcycsIHN1Y2Nlc3M6IGJvb2xlYW4gfSB9O1xuXG5leHBvcnQgdHlwZSBHZXRDdXJyZW50VXNlclF1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8eyBba2V5OiBzdHJpbmddOiBuZXZlcjsgfT47XG5cblxuZXhwb3J0IHR5cGUgR2V0Q3VycmVudFVzZXJRdWVyeSA9IHsgbWU/OiB7IF9fdHlwZW5hbWU/OiAnQ3VycmVudFVzZXInLCBpZDogc3RyaW5nLCBpZGVudGlmaWVyOiBzdHJpbmcsIGNoYW5uZWxzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ3VycmVudFVzZXJDaGFubmVsJywgaWQ6IHN0cmluZywgY29kZTogc3RyaW5nLCB0b2tlbjogc3RyaW5nLCBwZXJtaXNzaW9uczogQXJyYXk8UGVybWlzc2lvbj4gfT4gfSB8IG51bGwgfTtcblxuZXhwb3J0IHR5cGUgUmVxdWVzdFN0YXJ0ZWRNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHsgW2tleTogc3RyaW5nXTogbmV2ZXI7IH0+O1xuXG5cbmV4cG9ydCB0eXBlIFJlcXVlc3RTdGFydGVkTXV0YXRpb24gPSB7IHJlcXVlc3RTdGFydGVkOiBudW1iZXIgfTtcblxuZXhwb3J0IHR5cGUgUmVxdWVzdENvbXBsZXRlZE11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8eyBba2V5OiBzdHJpbmddOiBuZXZlcjsgfT47XG5cblxuZXhwb3J0IHR5cGUgUmVxdWVzdENvbXBsZXRlZE11dGF0aW9uID0geyByZXF1ZXN0Q29tcGxldGVkOiBudW1iZXIgfTtcblxuZXhwb3J0IHR5cGUgVXNlclN0YXR1c0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ1VzZXJTdGF0dXMnLCB1c2VybmFtZTogc3RyaW5nLCBpc0xvZ2dlZEluOiBib29sZWFuLCBsb2dpblRpbWU6IHN0cmluZywgYWN0aXZlQ2hhbm5lbElkPzogc3RyaW5nIHwgbnVsbCwgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+LCBjaGFubmVsczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0N1cnJlbnRVc2VyQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgdG9rZW46IHN0cmluZywgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+IH0+IH07XG5cbmV4cG9ydCB0eXBlIFNldEFzTG9nZ2VkSW5NdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IFVzZXJTdGF0dXNJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFNldEFzTG9nZ2VkSW5NdXRhdGlvbiA9IHsgc2V0QXNMb2dnZWRJbjogeyBfX3R5cGVuYW1lPzogJ1VzZXJTdGF0dXMnLCB1c2VybmFtZTogc3RyaW5nLCBpc0xvZ2dlZEluOiBib29sZWFuLCBsb2dpblRpbWU6IHN0cmluZywgYWN0aXZlQ2hhbm5lbElkPzogc3RyaW5nIHwgbnVsbCwgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+LCBjaGFubmVsczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0N1cnJlbnRVc2VyQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgdG9rZW46IHN0cmluZywgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+IH0+IH0gfTtcblxuZXhwb3J0IHR5cGUgU2V0QXNMb2dnZWRPdXRNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHsgW2tleTogc3RyaW5nXTogbmV2ZXI7IH0+O1xuXG5cbmV4cG9ydCB0eXBlIFNldEFzTG9nZ2VkT3V0TXV0YXRpb24gPSB7IHNldEFzTG9nZ2VkT3V0OiB7IF9fdHlwZW5hbWU/OiAnVXNlclN0YXR1cycsIHVzZXJuYW1lOiBzdHJpbmcsIGlzTG9nZ2VkSW46IGJvb2xlYW4sIGxvZ2luVGltZTogc3RyaW5nLCBhY3RpdmVDaGFubmVsSWQ/OiBzdHJpbmcgfCBudWxsLCBwZXJtaXNzaW9uczogQXJyYXk8UGVybWlzc2lvbj4sIGNoYW5uZWxzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ3VycmVudFVzZXJDaGFubmVsJywgaWQ6IHN0cmluZywgY29kZTogc3RyaW5nLCB0b2tlbjogc3RyaW5nLCBwZXJtaXNzaW9uczogQXJyYXk8UGVybWlzc2lvbj4gfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBTZXRVaUxhbmd1YWdlTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlO1xuICBsb2NhbGU/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFNldFVpTGFuZ3VhZ2VNdXRhdGlvbiA9IHsgc2V0VWlMYW5ndWFnZTogTGFuZ3VhZ2VDb2RlLCBzZXRVaUxvY2FsZT86IHN0cmluZyB8IG51bGwgfTtcblxuZXhwb3J0IHR5cGUgU2V0VWlMb2NhbGVNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgbG9jYWxlPzogSW5wdXRNYXliZTxTY2FsYXJzWydTdHJpbmcnXT47XG59PjtcblxuXG5leHBvcnQgdHlwZSBTZXRVaUxvY2FsZU11dGF0aW9uID0geyBzZXRVaUxvY2FsZT86IHN0cmluZyB8IG51bGwgfTtcblxuZXhwb3J0IHR5cGUgU2V0RGlzcGxheVVpRXh0ZW5zaW9uUG9pbnRzTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGRpc3BsYXk6IFNjYWxhcnNbJ0Jvb2xlYW4nXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFNldERpc3BsYXlVaUV4dGVuc2lvblBvaW50c011dGF0aW9uID0geyBzZXREaXNwbGF5VWlFeHRlbnNpb25Qb2ludHM6IGJvb2xlYW4gfTtcblxuZXhwb3J0IHR5cGUgU2V0Q29udGVudExhbmd1YWdlTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlO1xufT47XG5cblxuZXhwb3J0IHR5cGUgU2V0Q29udGVudExhbmd1YWdlTXV0YXRpb24gPSB7IHNldENvbnRlbnRMYW5ndWFnZTogTGFuZ3VhZ2VDb2RlIH07XG5cbmV4cG9ydCB0eXBlIFNldFVpVGhlbWVNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgdGhlbWU6IFNjYWxhcnNbJ1N0cmluZyddO1xufT47XG5cblxuZXhwb3J0IHR5cGUgU2V0VWlUaGVtZU11dGF0aW9uID0geyBzZXRVaVRoZW1lOiBzdHJpbmcgfTtcblxuZXhwb3J0IHR5cGUgR2V0TmV0d29ya1N0YXR1c1F1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8eyBba2V5OiBzdHJpbmddOiBuZXZlcjsgfT47XG5cblxuZXhwb3J0IHR5cGUgR2V0TmV0d29ya1N0YXR1c1F1ZXJ5ID0geyBuZXR3b3JrU3RhdHVzOiB7IF9fdHlwZW5hbWU/OiAnTmV0d29ya1N0YXR1cycsIGluRmxpZ2h0UmVxdWVzdHM6IG51bWJlciB9IH07XG5cbmV4cG9ydCB0eXBlIEdldFVzZXJTdGF0dXNRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHsgW2tleTogc3RyaW5nXTogbmV2ZXI7IH0+O1xuXG5cbmV4cG9ydCB0eXBlIEdldFVzZXJTdGF0dXNRdWVyeSA9IHsgdXNlclN0YXR1czogeyBfX3R5cGVuYW1lPzogJ1VzZXJTdGF0dXMnLCB1c2VybmFtZTogc3RyaW5nLCBpc0xvZ2dlZEluOiBib29sZWFuLCBsb2dpblRpbWU6IHN0cmluZywgYWN0aXZlQ2hhbm5lbElkPzogc3RyaW5nIHwgbnVsbCwgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+LCBjaGFubmVsczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0N1cnJlbnRVc2VyQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgdG9rZW46IHN0cmluZywgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+IH0+IH0gfTtcblxuZXhwb3J0IHR5cGUgR2V0VWlTdGF0ZVF1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8eyBba2V5OiBzdHJpbmddOiBuZXZlcjsgfT47XG5cblxuZXhwb3J0IHR5cGUgR2V0VWlTdGF0ZVF1ZXJ5ID0geyB1aVN0YXRlOiB7IF9fdHlwZW5hbWU/OiAnVWlTdGF0ZScsIGxhbmd1YWdlOiBMYW5ndWFnZUNvZGUsIGxvY2FsZT86IHN0cmluZyB8IG51bGwsIGNvbnRlbnRMYW5ndWFnZTogTGFuZ3VhZ2VDb2RlLCB0aGVtZTogc3RyaW5nLCBkaXNwbGF5VWlFeHRlbnNpb25Qb2ludHM6IGJvb2xlYW4gfSB9O1xuXG5leHBvcnQgdHlwZSBHZXRDbGllbnRTdGF0ZVF1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8eyBba2V5OiBzdHJpbmddOiBuZXZlcjsgfT47XG5cblxuZXhwb3J0IHR5cGUgR2V0Q2xpZW50U3RhdGVRdWVyeSA9IHsgbmV0d29ya1N0YXR1czogeyBfX3R5cGVuYW1lPzogJ05ldHdvcmtTdGF0dXMnLCBpbkZsaWdodFJlcXVlc3RzOiBudW1iZXIgfSwgdXNlclN0YXR1czogeyBfX3R5cGVuYW1lPzogJ1VzZXJTdGF0dXMnLCB1c2VybmFtZTogc3RyaW5nLCBpc0xvZ2dlZEluOiBib29sZWFuLCBsb2dpblRpbWU6IHN0cmluZywgYWN0aXZlQ2hhbm5lbElkPzogc3RyaW5nIHwgbnVsbCwgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+LCBjaGFubmVsczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0N1cnJlbnRVc2VyQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgdG9rZW46IHN0cmluZywgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+IH0+IH0sIHVpU3RhdGU6IHsgX190eXBlbmFtZT86ICdVaVN0YXRlJywgbGFuZ3VhZ2U6IExhbmd1YWdlQ29kZSwgbG9jYWxlPzogc3RyaW5nIHwgbnVsbCwgY29udGVudExhbmd1YWdlOiBMYW5ndWFnZUNvZGUsIHRoZW1lOiBzdHJpbmcsIGRpc3BsYXlVaUV4dGVuc2lvblBvaW50czogYm9vbGVhbiB9IH07XG5cbmV4cG9ydCB0eXBlIFNldEFjdGl2ZUNoYW5uZWxNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgY2hhbm5lbElkOiBTY2FsYXJzWydJRCddO1xufT47XG5cblxuZXhwb3J0IHR5cGUgU2V0QWN0aXZlQ2hhbm5lbE11dGF0aW9uID0geyBzZXRBY3RpdmVDaGFubmVsOiB7IF9fdHlwZW5hbWU/OiAnVXNlclN0YXR1cycsIHVzZXJuYW1lOiBzdHJpbmcsIGlzTG9nZ2VkSW46IGJvb2xlYW4sIGxvZ2luVGltZTogc3RyaW5nLCBhY3RpdmVDaGFubmVsSWQ/OiBzdHJpbmcgfCBudWxsLCBwZXJtaXNzaW9uczogQXJyYXk8UGVybWlzc2lvbj4sIGNoYW5uZWxzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ3VycmVudFVzZXJDaGFubmVsJywgaWQ6IHN0cmluZywgY29kZTogc3RyaW5nLCB0b2tlbjogc3RyaW5nLCBwZXJtaXNzaW9uczogQXJyYXk8UGVybWlzc2lvbj4gfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVVc2VyQ2hhbm5lbHNNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgY2hhbm5lbHM6IEFycmF5PEN1cnJlbnRVc2VyQ2hhbm5lbElucHV0PiB8IEN1cnJlbnRVc2VyQ2hhbm5lbElucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgVXBkYXRlVXNlckNoYW5uZWxzTXV0YXRpb24gPSB7IHVwZGF0ZVVzZXJDaGFubmVsczogeyBfX3R5cGVuYW1lPzogJ1VzZXJTdGF0dXMnLCB1c2VybmFtZTogc3RyaW5nLCBpc0xvZ2dlZEluOiBib29sZWFuLCBsb2dpblRpbWU6IHN0cmluZywgYWN0aXZlQ2hhbm5lbElkPzogc3RyaW5nIHwgbnVsbCwgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+LCBjaGFubmVsczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0N1cnJlbnRVc2VyQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgdG9rZW46IHN0cmluZywgcGVybWlzc2lvbnM6IEFycmF5PFBlcm1pc3Npb24+IH0+IH0gfTtcblxuZXhwb3J0IHR5cGUgR2V0Q29sbGVjdGlvbkZpbHRlcnNRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHsgW2tleTogc3RyaW5nXTogbmV2ZXI7IH0+O1xuXG5cbmV4cG9ydCB0eXBlIEdldENvbGxlY3Rpb25GaWx0ZXJzUXVlcnkgPSB7IGNvbGxlY3Rpb25GaWx0ZXJzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlndXJhYmxlT3BlcmF0aW9uRGVmaW5pdGlvbicsIGNvZGU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZywgYXJnczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbmZpZ0FyZ0RlZmluaXRpb24nLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgcmVxdWlyZWQ6IGJvb2xlYW4sIGRlZmF1bHRWYWx1ZT86IGFueSB8IG51bGwsIGxpc3Q6IGJvb2xlYW4sIHVpPzogYW55IHwgbnVsbCwgbGFiZWw/OiBzdHJpbmcgfCBudWxsIH0+IH0+IH07XG5cbmV4cG9ydCB0eXBlIENvbGxlY3Rpb25GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdDb2xsZWN0aW9uJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIHNsdWc6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZywgaXNQcml2YXRlOiBib29sZWFuLCBsYW5ndWFnZUNvZGU/OiBMYW5ndWFnZUNvZGUgfCBudWxsLCBpbmhlcml0RmlsdGVyczogYm9vbGVhbiwgZmVhdHVyZWRBc3NldD86IHsgX190eXBlbmFtZT86ICdBc3NldCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBmaWxlU2l6ZTogbnVtYmVyLCBtaW1lVHlwZTogc3RyaW5nLCB0eXBlOiBBc3NldFR5cGUsIHByZXZpZXc6IHN0cmluZywgc291cmNlOiBzdHJpbmcsIHdpZHRoOiBudW1iZXIsIGhlaWdodDogbnVtYmVyLCBmb2NhbFBvaW50PzogeyBfX3R5cGVuYW1lPzogJ0Nvb3JkaW5hdGUnLCB4OiBudW1iZXIsIHk6IG51bWJlciB9IHwgbnVsbCB9IHwgbnVsbCwgYXNzZXRzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQXNzZXQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgZmlsZVNpemU6IG51bWJlciwgbWltZVR5cGU6IHN0cmluZywgdHlwZTogQXNzZXRUeXBlLCBwcmV2aWV3OiBzdHJpbmcsIHNvdXJjZTogc3RyaW5nLCB3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlciwgZm9jYWxQb2ludD86IHsgX190eXBlbmFtZT86ICdDb29yZGluYXRlJywgeDogbnVtYmVyLCB5OiBudW1iZXIgfSB8IG51bGwgfT4sIGZpbHRlcnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb24nLCBjb2RlOiBzdHJpbmcsIGFyZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWdBcmcnLCBuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfT4gfT4sIHRyYW5zbGF0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbGxlY3Rpb25UcmFuc2xhdGlvbicsIGlkOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcsIHNsdWc6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZyB9PiwgcGFyZW50PzogeyBfX3R5cGVuYW1lPzogJ0NvbGxlY3Rpb24nLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfSB8IG51bGwsIGNoaWxkcmVuPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbGxlY3Rpb24nLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfT4gfCBudWxsIH07XG5cbmV4cG9ydCB0eXBlIEdldENvbGxlY3Rpb25MaXN0UXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7XG4gIG9wdGlvbnM/OiBJbnB1dE1heWJlPENvbGxlY3Rpb25MaXN0T3B0aW9ucz47XG59PjtcblxuXG5leHBvcnQgdHlwZSBHZXRDb2xsZWN0aW9uTGlzdFF1ZXJ5ID0geyBjb2xsZWN0aW9uczogeyBfX3R5cGVuYW1lPzogJ0NvbGxlY3Rpb25MaXN0JywgdG90YWxJdGVtczogbnVtYmVyLCBpdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbGxlY3Rpb24nLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIHNsdWc6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZywgaXNQcml2YXRlOiBib29sZWFuLCBmZWF0dXJlZEFzc2V0PzogeyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGZpbGVTaXplOiBudW1iZXIsIG1pbWVUeXBlOiBzdHJpbmcsIHR5cGU6IEFzc2V0VHlwZSwgcHJldmlldzogc3RyaW5nLCBzb3VyY2U6IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0gfCBudWxsLCBwYXJlbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29sbGVjdGlvbicsIGlkOiBzdHJpbmcgfSB8IG51bGwgfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBHZXRDb2xsZWN0aW9uUXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0Q29sbGVjdGlvblF1ZXJ5ID0geyBjb2xsZWN0aW9uPzogeyBfX3R5cGVuYW1lPzogJ0NvbGxlY3Rpb24nLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgc2x1Zzogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBpc1ByaXZhdGU6IGJvb2xlYW4sIGxhbmd1YWdlQ29kZT86IExhbmd1YWdlQ29kZSB8IG51bGwsIGluaGVyaXRGaWx0ZXJzOiBib29sZWFuLCBmZWF0dXJlZEFzc2V0PzogeyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGZpbGVTaXplOiBudW1iZXIsIG1pbWVUeXBlOiBzdHJpbmcsIHR5cGU6IEFzc2V0VHlwZSwgcHJldmlldzogc3RyaW5nLCBzb3VyY2U6IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0gfCBudWxsLCBhc3NldHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdBc3NldCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBmaWxlU2l6ZTogbnVtYmVyLCBtaW1lVHlwZTogc3RyaW5nLCB0eXBlOiBBc3NldFR5cGUsIHByZXZpZXc6IHN0cmluZywgc291cmNlOiBzdHJpbmcsIHdpZHRoOiBudW1iZXIsIGhlaWdodDogbnVtYmVyLCBmb2NhbFBvaW50PzogeyBfX3R5cGVuYW1lPzogJ0Nvb3JkaW5hdGUnLCB4OiBudW1iZXIsIHk6IG51bWJlciB9IHwgbnVsbCB9PiwgZmlsdGVyczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbmZpZ3VyYWJsZU9wZXJhdGlvbicsIGNvZGU6IHN0cmluZywgYXJnczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbmZpZ0FyZycsIG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyB9PiB9PiwgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29sbGVjdGlvblRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgc2x1Zzogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nIH0+LCBwYXJlbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29sbGVjdGlvbicsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9IHwgbnVsbCwgY2hpbGRyZW4/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29sbGVjdGlvbicsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IG51bGwgfTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlQ29sbGVjdGlvbk11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogQ3JlYXRlQ29sbGVjdGlvbklucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgQ3JlYXRlQ29sbGVjdGlvbk11dGF0aW9uID0geyBjcmVhdGVDb2xsZWN0aW9uOiB7IF9fdHlwZW5hbWU/OiAnQ29sbGVjdGlvbicsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBzbHVnOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIGlzUHJpdmF0ZTogYm9vbGVhbiwgbGFuZ3VhZ2VDb2RlPzogTGFuZ3VhZ2VDb2RlIHwgbnVsbCwgaW5oZXJpdEZpbHRlcnM6IGJvb2xlYW4sIGZlYXR1cmVkQXNzZXQ/OiB7IF9fdHlwZW5hbWU/OiAnQXNzZXQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgZmlsZVNpemU6IG51bWJlciwgbWltZVR5cGU6IHN0cmluZywgdHlwZTogQXNzZXRUeXBlLCBwcmV2aWV3OiBzdHJpbmcsIHNvdXJjZTogc3RyaW5nLCB3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlciwgZm9jYWxQb2ludD86IHsgX190eXBlbmFtZT86ICdDb29yZGluYXRlJywgeDogbnVtYmVyLCB5OiBudW1iZXIgfSB8IG51bGwgfSB8IG51bGwsIGFzc2V0czogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGZpbGVTaXplOiBudW1iZXIsIG1pbWVUeXBlOiBzdHJpbmcsIHR5cGU6IEFzc2V0VHlwZSwgcHJldmlldzogc3RyaW5nLCBzb3VyY2U6IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0+LCBmaWx0ZXJzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlndXJhYmxlT3BlcmF0aW9uJywgY29kZTogc3RyaW5nLCBhcmdzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlnQXJnJywgbmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIH0+IH0+LCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb2xsZWN0aW9uVHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nLCBzbHVnOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcgfT4sIHBhcmVudD86IHsgX190eXBlbmFtZT86ICdDb2xsZWN0aW9uJywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0gfCBudWxsLCBjaGlsZHJlbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdDb2xsZWN0aW9uJywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0+IHwgbnVsbCB9IH07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUNvbGxlY3Rpb25NdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IFVwZGF0ZUNvbGxlY3Rpb25JbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUNvbGxlY3Rpb25NdXRhdGlvbiA9IHsgdXBkYXRlQ29sbGVjdGlvbjogeyBfX3R5cGVuYW1lPzogJ0NvbGxlY3Rpb24nLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgc2x1Zzogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBpc1ByaXZhdGU6IGJvb2xlYW4sIGxhbmd1YWdlQ29kZT86IExhbmd1YWdlQ29kZSB8IG51bGwsIGluaGVyaXRGaWx0ZXJzOiBib29sZWFuLCBmZWF0dXJlZEFzc2V0PzogeyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGZpbGVTaXplOiBudW1iZXIsIG1pbWVUeXBlOiBzdHJpbmcsIHR5cGU6IEFzc2V0VHlwZSwgcHJldmlldzogc3RyaW5nLCBzb3VyY2U6IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0gfCBudWxsLCBhc3NldHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdBc3NldCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBmaWxlU2l6ZTogbnVtYmVyLCBtaW1lVHlwZTogc3RyaW5nLCB0eXBlOiBBc3NldFR5cGUsIHByZXZpZXc6IHN0cmluZywgc291cmNlOiBzdHJpbmcsIHdpZHRoOiBudW1iZXIsIGhlaWdodDogbnVtYmVyLCBmb2NhbFBvaW50PzogeyBfX3R5cGVuYW1lPzogJ0Nvb3JkaW5hdGUnLCB4OiBudW1iZXIsIHk6IG51bWJlciB9IHwgbnVsbCB9PiwgZmlsdGVyczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbmZpZ3VyYWJsZU9wZXJhdGlvbicsIGNvZGU6IHN0cmluZywgYXJnczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbmZpZ0FyZycsIG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyB9PiB9PiwgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29sbGVjdGlvblRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgc2x1Zzogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nIH0+LCBwYXJlbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29sbGVjdGlvbicsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9IHwgbnVsbCwgY2hpbGRyZW4/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29sbGVjdGlvbicsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9PiB8IG51bGwgfSB9O1xuXG5leHBvcnQgdHlwZSBNb3ZlQ29sbGVjdGlvbk11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogTW92ZUNvbGxlY3Rpb25JbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIE1vdmVDb2xsZWN0aW9uTXV0YXRpb24gPSB7IG1vdmVDb2xsZWN0aW9uOiB7IF9fdHlwZW5hbWU/OiAnQ29sbGVjdGlvbicsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBzbHVnOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIGlzUHJpdmF0ZTogYm9vbGVhbiwgbGFuZ3VhZ2VDb2RlPzogTGFuZ3VhZ2VDb2RlIHwgbnVsbCwgaW5oZXJpdEZpbHRlcnM6IGJvb2xlYW4sIGZlYXR1cmVkQXNzZXQ/OiB7IF9fdHlwZW5hbWU/OiAnQXNzZXQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgZmlsZVNpemU6IG51bWJlciwgbWltZVR5cGU6IHN0cmluZywgdHlwZTogQXNzZXRUeXBlLCBwcmV2aWV3OiBzdHJpbmcsIHNvdXJjZTogc3RyaW5nLCB3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlciwgZm9jYWxQb2ludD86IHsgX190eXBlbmFtZT86ICdDb29yZGluYXRlJywgeDogbnVtYmVyLCB5OiBudW1iZXIgfSB8IG51bGwgfSB8IG51bGwsIGFzc2V0czogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGZpbGVTaXplOiBudW1iZXIsIG1pbWVUeXBlOiBzdHJpbmcsIHR5cGU6IEFzc2V0VHlwZSwgcHJldmlldzogc3RyaW5nLCBzb3VyY2U6IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0+LCBmaWx0ZXJzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlndXJhYmxlT3BlcmF0aW9uJywgY29kZTogc3RyaW5nLCBhcmdzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlnQXJnJywgbmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIH0+IH0+LCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb2xsZWN0aW9uVHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nLCBzbHVnOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcgfT4sIHBhcmVudD86IHsgX190eXBlbmFtZT86ICdDb2xsZWN0aW9uJywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0gfCBudWxsLCBjaGlsZHJlbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdDb2xsZWN0aW9uJywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0+IHwgbnVsbCB9IH07XG5cbmV4cG9ydCB0eXBlIERlbGV0ZUNvbGxlY3Rpb25NdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59PjtcblxuXG5leHBvcnQgdHlwZSBEZWxldGVDb2xsZWN0aW9uTXV0YXRpb24gPSB7IGRlbGV0ZUNvbGxlY3Rpb246IHsgX190eXBlbmFtZT86ICdEZWxldGlvblJlc3BvbnNlJywgcmVzdWx0OiBEZWxldGlvblJlc3VsdCwgbWVzc2FnZT86IHN0cmluZyB8IG51bGwgfSB9O1xuXG5leHBvcnQgdHlwZSBHZXRDb2xsZWN0aW9uQ29udGVudHNRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIG9wdGlvbnM/OiBJbnB1dE1heWJlPFByb2R1Y3RWYXJpYW50TGlzdE9wdGlvbnM+O1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0Q29sbGVjdGlvbkNvbnRlbnRzUXVlcnkgPSB7IGNvbGxlY3Rpb24/OiB7IF9fdHlwZW5hbWU/OiAnQ29sbGVjdGlvbicsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgcHJvZHVjdFZhcmlhbnRzOiB7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdFZhcmlhbnRMaXN0JywgdG90YWxJdGVtczogbnVtYmVyLCBpdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RWYXJpYW50JywgaWQ6IHN0cmluZywgcHJvZHVjdElkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9PiB9IH0gfCBudWxsIH07XG5cbmV4cG9ydCB0eXBlIEFkZHJlc3NGcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdBZGRyZXNzJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBmdWxsTmFtZT86IHN0cmluZyB8IG51bGwsIGNvbXBhbnk/OiBzdHJpbmcgfCBudWxsLCBzdHJlZXRMaW5lMTogc3RyaW5nLCBzdHJlZXRMaW5lMj86IHN0cmluZyB8IG51bGwsIGNpdHk/OiBzdHJpbmcgfCBudWxsLCBwcm92aW5jZT86IHN0cmluZyB8IG51bGwsIHBvc3RhbENvZGU/OiBzdHJpbmcgfCBudWxsLCBwaG9uZU51bWJlcj86IHN0cmluZyB8IG51bGwsIGRlZmF1bHRTaGlwcGluZ0FkZHJlc3M/OiBib29sZWFuIHwgbnVsbCwgZGVmYXVsdEJpbGxpbmdBZGRyZXNzPzogYm9vbGVhbiB8IG51bGwsIGNvdW50cnk6IHsgX190eXBlbmFtZT86ICdDb3VudHJ5JywgaWQ6IHN0cmluZywgY29kZTogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfSB9O1xuXG5leHBvcnQgdHlwZSBDdXN0b21lckZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0N1c3RvbWVyJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCB0aXRsZT86IHN0cmluZyB8IG51bGwsIGZpcnN0TmFtZTogc3RyaW5nLCBsYXN0TmFtZTogc3RyaW5nLCBwaG9uZU51bWJlcj86IHN0cmluZyB8IG51bGwsIGVtYWlsQWRkcmVzczogc3RyaW5nLCB1c2VyPzogeyBfX3R5cGVuYW1lPzogJ1VzZXInLCBpZDogc3RyaW5nLCBpZGVudGlmaWVyOiBzdHJpbmcsIHZlcmlmaWVkOiBib29sZWFuLCBsYXN0TG9naW4/OiBhbnkgfCBudWxsIH0gfCBudWxsLCBhZGRyZXNzZXM/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQWRkcmVzcycsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgZnVsbE5hbWU/OiBzdHJpbmcgfCBudWxsLCBjb21wYW55Pzogc3RyaW5nIHwgbnVsbCwgc3RyZWV0TGluZTE6IHN0cmluZywgc3RyZWV0TGluZTI/OiBzdHJpbmcgfCBudWxsLCBjaXR5Pzogc3RyaW5nIHwgbnVsbCwgcHJvdmluY2U/OiBzdHJpbmcgfCBudWxsLCBwb3N0YWxDb2RlPzogc3RyaW5nIHwgbnVsbCwgcGhvbmVOdW1iZXI/OiBzdHJpbmcgfCBudWxsLCBkZWZhdWx0U2hpcHBpbmdBZGRyZXNzPzogYm9vbGVhbiB8IG51bGwsIGRlZmF1bHRCaWxsaW5nQWRkcmVzcz86IGJvb2xlYW4gfCBudWxsLCBjb3VudHJ5OiB7IF9fdHlwZW5hbWU/OiAnQ291bnRyeScsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nIH0gfT4gfCBudWxsIH07XG5cbmV4cG9ydCB0eXBlIEN1c3RvbWVyR3JvdXBGcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdDdXN0b21lckdyb3VwJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcgfTtcblxuZXhwb3J0IHR5cGUgR2V0Q3VzdG9tZXJMaXN0UXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7XG4gIG9wdGlvbnM/OiBJbnB1dE1heWJlPEN1c3RvbWVyTGlzdE9wdGlvbnM+O1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0Q3VzdG9tZXJMaXN0UXVlcnkgPSB7IGN1c3RvbWVyczogeyBfX3R5cGVuYW1lPzogJ0N1c3RvbWVyTGlzdCcsIHRvdGFsSXRlbXM6IG51bWJlciwgaXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDdXN0b21lcicsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgdGl0bGU/OiBzdHJpbmcgfCBudWxsLCBmaXJzdE5hbWU6IHN0cmluZywgbGFzdE5hbWU6IHN0cmluZywgZW1haWxBZGRyZXNzOiBzdHJpbmcsIHVzZXI/OiB7IF9fdHlwZW5hbWU/OiAnVXNlcicsIGlkOiBzdHJpbmcsIHZlcmlmaWVkOiBib29sZWFuIH0gfCBudWxsIH0+IH0gfTtcblxuZXhwb3J0IHR5cGUgR2V0Q3VzdG9tZXJRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIG9yZGVyTGlzdE9wdGlvbnM/OiBJbnB1dE1heWJlPE9yZGVyTGlzdE9wdGlvbnM+O1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0Q3VzdG9tZXJRdWVyeSA9IHsgY3VzdG9tZXI/OiB7IF9fdHlwZW5hbWU/OiAnQ3VzdG9tZXInLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIHRpdGxlPzogc3RyaW5nIHwgbnVsbCwgZmlyc3ROYW1lOiBzdHJpbmcsIGxhc3ROYW1lOiBzdHJpbmcsIHBob25lTnVtYmVyPzogc3RyaW5nIHwgbnVsbCwgZW1haWxBZGRyZXNzOiBzdHJpbmcsIGdyb3VwczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0N1c3RvbWVyR3JvdXAnLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfT4sIG9yZGVyczogeyBfX3R5cGVuYW1lPzogJ09yZGVyTGlzdCcsIHRvdGFsSXRlbXM6IG51bWJlciwgaXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdPcmRlcicsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgc3RhdGU6IHN0cmluZywgdG90YWxXaXRoVGF4OiBudW1iZXIsIGN1cnJlbmN5Q29kZTogQ3VycmVuY3lDb2RlLCB1cGRhdGVkQXQ6IGFueSB9PiB9LCB1c2VyPzogeyBfX3R5cGVuYW1lPzogJ1VzZXInLCBpZDogc3RyaW5nLCBpZGVudGlmaWVyOiBzdHJpbmcsIHZlcmlmaWVkOiBib29sZWFuLCBsYXN0TG9naW4/OiBhbnkgfCBudWxsIH0gfCBudWxsLCBhZGRyZXNzZXM/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQWRkcmVzcycsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgZnVsbE5hbWU/OiBzdHJpbmcgfCBudWxsLCBjb21wYW55Pzogc3RyaW5nIHwgbnVsbCwgc3RyZWV0TGluZTE6IHN0cmluZywgc3RyZWV0TGluZTI/OiBzdHJpbmcgfCBudWxsLCBjaXR5Pzogc3RyaW5nIHwgbnVsbCwgcHJvdmluY2U/OiBzdHJpbmcgfCBudWxsLCBwb3N0YWxDb2RlPzogc3RyaW5nIHwgbnVsbCwgcGhvbmVOdW1iZXI/OiBzdHJpbmcgfCBudWxsLCBkZWZhdWx0U2hpcHBpbmdBZGRyZXNzPzogYm9vbGVhbiB8IG51bGwsIGRlZmF1bHRCaWxsaW5nQWRkcmVzcz86IGJvb2xlYW4gfCBudWxsLCBjb3VudHJ5OiB7IF9fdHlwZW5hbWU/OiAnQ291bnRyeScsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nIH0gfT4gfCBudWxsIH0gfCBudWxsIH07XG5cbmV4cG9ydCB0eXBlIENyZWF0ZUN1c3RvbWVyTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlucHV0OiBDcmVhdGVDdXN0b21lcklucHV0O1xuICBwYXNzd29yZD86IElucHV0TWF5YmU8U2NhbGFyc1snU3RyaW5nJ10+O1xufT47XG5cblxuZXhwb3J0IHR5cGUgQ3JlYXRlQ3VzdG9tZXJNdXRhdGlvbiA9IHsgY3JlYXRlQ3VzdG9tZXI6IHsgX190eXBlbmFtZT86ICdDdXN0b21lcicsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgdGl0bGU/OiBzdHJpbmcgfCBudWxsLCBmaXJzdE5hbWU6IHN0cmluZywgbGFzdE5hbWU6IHN0cmluZywgcGhvbmVOdW1iZXI/OiBzdHJpbmcgfCBudWxsLCBlbWFpbEFkZHJlc3M6IHN0cmluZywgdXNlcj86IHsgX190eXBlbmFtZT86ICdVc2VyJywgaWQ6IHN0cmluZywgaWRlbnRpZmllcjogc3RyaW5nLCB2ZXJpZmllZDogYm9vbGVhbiwgbGFzdExvZ2luPzogYW55IHwgbnVsbCB9IHwgbnVsbCwgYWRkcmVzc2VzPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0FkZHJlc3MnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGZ1bGxOYW1lPzogc3RyaW5nIHwgbnVsbCwgY29tcGFueT86IHN0cmluZyB8IG51bGwsIHN0cmVldExpbmUxOiBzdHJpbmcsIHN0cmVldExpbmUyPzogc3RyaW5nIHwgbnVsbCwgY2l0eT86IHN0cmluZyB8IG51bGwsIHByb3ZpbmNlPzogc3RyaW5nIHwgbnVsbCwgcG9zdGFsQ29kZT86IHN0cmluZyB8IG51bGwsIHBob25lTnVtYmVyPzogc3RyaW5nIHwgbnVsbCwgZGVmYXVsdFNoaXBwaW5nQWRkcmVzcz86IGJvb2xlYW4gfCBudWxsLCBkZWZhdWx0QmlsbGluZ0FkZHJlc3M/OiBib29sZWFuIHwgbnVsbCwgY291bnRyeTogeyBfX3R5cGVuYW1lPzogJ0NvdW50cnknLCBpZDogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9IH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0VtYWlsQWRkcmVzc0NvbmZsaWN0RXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfTtcblxuZXhwb3J0IHR5cGUgVXBkYXRlQ3VzdG9tZXJNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IFVwZGF0ZUN1c3RvbWVySW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBVcGRhdGVDdXN0b21lck11dGF0aW9uID0geyB1cGRhdGVDdXN0b21lcjogeyBfX3R5cGVuYW1lPzogJ0N1c3RvbWVyJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCB0aXRsZT86IHN0cmluZyB8IG51bGwsIGZpcnN0TmFtZTogc3RyaW5nLCBsYXN0TmFtZTogc3RyaW5nLCBwaG9uZU51bWJlcj86IHN0cmluZyB8IG51bGwsIGVtYWlsQWRkcmVzczogc3RyaW5nLCB1c2VyPzogeyBfX3R5cGVuYW1lPzogJ1VzZXInLCBpZDogc3RyaW5nLCBpZGVudGlmaWVyOiBzdHJpbmcsIHZlcmlmaWVkOiBib29sZWFuLCBsYXN0TG9naW4/OiBhbnkgfCBudWxsIH0gfCBudWxsLCBhZGRyZXNzZXM/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQWRkcmVzcycsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgZnVsbE5hbWU/OiBzdHJpbmcgfCBudWxsLCBjb21wYW55Pzogc3RyaW5nIHwgbnVsbCwgc3RyZWV0TGluZTE6IHN0cmluZywgc3RyZWV0TGluZTI/OiBzdHJpbmcgfCBudWxsLCBjaXR5Pzogc3RyaW5nIHwgbnVsbCwgcHJvdmluY2U/OiBzdHJpbmcgfCBudWxsLCBwb3N0YWxDb2RlPzogc3RyaW5nIHwgbnVsbCwgcGhvbmVOdW1iZXI/OiBzdHJpbmcgfCBudWxsLCBkZWZhdWx0U2hpcHBpbmdBZGRyZXNzPzogYm9vbGVhbiB8IG51bGwsIGRlZmF1bHRCaWxsaW5nQWRkcmVzcz86IGJvb2xlYW4gfCBudWxsLCBjb3VudHJ5OiB7IF9fdHlwZW5hbWU/OiAnQ291bnRyeScsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nIH0gfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRW1haWxBZGRyZXNzQ29uZmxpY3RFcnJvcicsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfSB9O1xuXG5leHBvcnQgdHlwZSBEZWxldGVDdXN0b21lck11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIERlbGV0ZUN1c3RvbWVyTXV0YXRpb24gPSB7IGRlbGV0ZUN1c3RvbWVyOiB7IF9fdHlwZW5hbWU/OiAnRGVsZXRpb25SZXNwb25zZScsIHJlc3VsdDogRGVsZXRpb25SZXN1bHQsIG1lc3NhZ2U/OiBzdHJpbmcgfCBudWxsIH0gfTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlQ3VzdG9tZXJBZGRyZXNzTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGN1c3RvbWVySWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGlucHV0OiBDcmVhdGVBZGRyZXNzSW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBDcmVhdGVDdXN0b21lckFkZHJlc3NNdXRhdGlvbiA9IHsgY3JlYXRlQ3VzdG9tZXJBZGRyZXNzOiB7IF9fdHlwZW5hbWU/OiAnQWRkcmVzcycsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgZnVsbE5hbWU/OiBzdHJpbmcgfCBudWxsLCBjb21wYW55Pzogc3RyaW5nIHwgbnVsbCwgc3RyZWV0TGluZTE6IHN0cmluZywgc3RyZWV0TGluZTI/OiBzdHJpbmcgfCBudWxsLCBjaXR5Pzogc3RyaW5nIHwgbnVsbCwgcHJvdmluY2U/OiBzdHJpbmcgfCBudWxsLCBwb3N0YWxDb2RlPzogc3RyaW5nIHwgbnVsbCwgcGhvbmVOdW1iZXI/OiBzdHJpbmcgfCBudWxsLCBkZWZhdWx0U2hpcHBpbmdBZGRyZXNzPzogYm9vbGVhbiB8IG51bGwsIGRlZmF1bHRCaWxsaW5nQWRkcmVzcz86IGJvb2xlYW4gfCBudWxsLCBjb3VudHJ5OiB7IF9fdHlwZW5hbWU/OiAnQ291bnRyeScsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nIH0gfSB9O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVDdXN0b21lckFkZHJlc3NNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IFVwZGF0ZUFkZHJlc3NJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUN1c3RvbWVyQWRkcmVzc011dGF0aW9uID0geyB1cGRhdGVDdXN0b21lckFkZHJlc3M6IHsgX190eXBlbmFtZT86ICdBZGRyZXNzJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBmdWxsTmFtZT86IHN0cmluZyB8IG51bGwsIGNvbXBhbnk/OiBzdHJpbmcgfCBudWxsLCBzdHJlZXRMaW5lMTogc3RyaW5nLCBzdHJlZXRMaW5lMj86IHN0cmluZyB8IG51bGwsIGNpdHk/OiBzdHJpbmcgfCBudWxsLCBwcm92aW5jZT86IHN0cmluZyB8IG51bGwsIHBvc3RhbENvZGU/OiBzdHJpbmcgfCBudWxsLCBwaG9uZU51bWJlcj86IHN0cmluZyB8IG51bGwsIGRlZmF1bHRTaGlwcGluZ0FkZHJlc3M/OiBib29sZWFuIHwgbnVsbCwgZGVmYXVsdEJpbGxpbmdBZGRyZXNzPzogYm9vbGVhbiB8IG51bGwsIGNvdW50cnk6IHsgX190eXBlbmFtZT86ICdDb3VudHJ5JywgaWQ6IHN0cmluZywgY29kZTogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfSB9IH07XG5cbmV4cG9ydCB0eXBlIERlbGV0ZUN1c3RvbWVyQWRkcmVzc011dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIERlbGV0ZUN1c3RvbWVyQWRkcmVzc011dGF0aW9uID0geyBkZWxldGVDdXN0b21lckFkZHJlc3M6IHsgX190eXBlbmFtZT86ICdTdWNjZXNzJywgc3VjY2VzczogYm9vbGVhbiB9IH07XG5cbmV4cG9ydCB0eXBlIENyZWF0ZUN1c3RvbWVyR3JvdXBNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IENyZWF0ZUN1c3RvbWVyR3JvdXBJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIENyZWF0ZUN1c3RvbWVyR3JvdXBNdXRhdGlvbiA9IHsgY3JlYXRlQ3VzdG9tZXJHcm91cDogeyBfX3R5cGVuYW1lPzogJ0N1c3RvbWVyR3JvdXAnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZyB9IH07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUN1c3RvbWVyR3JvdXBNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IFVwZGF0ZUN1c3RvbWVyR3JvdXBJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUN1c3RvbWVyR3JvdXBNdXRhdGlvbiA9IHsgdXBkYXRlQ3VzdG9tZXJHcm91cDogeyBfX3R5cGVuYW1lPzogJ0N1c3RvbWVyR3JvdXAnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZyB9IH07XG5cbmV4cG9ydCB0eXBlIERlbGV0ZUN1c3RvbWVyR3JvdXBNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59PjtcblxuXG5leHBvcnQgdHlwZSBEZWxldGVDdXN0b21lckdyb3VwTXV0YXRpb24gPSB7IGRlbGV0ZUN1c3RvbWVyR3JvdXA6IHsgX190eXBlbmFtZT86ICdEZWxldGlvblJlc3BvbnNlJywgcmVzdWx0OiBEZWxldGlvblJlc3VsdCwgbWVzc2FnZT86IHN0cmluZyB8IG51bGwgfSB9O1xuXG5leHBvcnQgdHlwZSBHZXRDdXN0b21lckdyb3Vwc1F1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8e1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxDdXN0b21lckdyb3VwTGlzdE9wdGlvbnM+O1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0Q3VzdG9tZXJHcm91cHNRdWVyeSA9IHsgY3VzdG9tZXJHcm91cHM6IHsgX190eXBlbmFtZT86ICdDdXN0b21lckdyb3VwTGlzdCcsIHRvdGFsSXRlbXM6IG51bWJlciwgaXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDdXN0b21lckdyb3VwJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcgfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBHZXRDdXN0b21lckdyb3VwV2l0aEN1c3RvbWVyc1F1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8e1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgb3B0aW9ucz86IElucHV0TWF5YmU8Q3VzdG9tZXJMaXN0T3B0aW9ucz47XG59PjtcblxuXG5leHBvcnQgdHlwZSBHZXRDdXN0b21lckdyb3VwV2l0aEN1c3RvbWVyc1F1ZXJ5ID0geyBjdXN0b21lckdyb3VwPzogeyBfX3R5cGVuYW1lPzogJ0N1c3RvbWVyR3JvdXAnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgY3VzdG9tZXJzOiB7IF9fdHlwZW5hbWU/OiAnQ3VzdG9tZXJMaXN0JywgdG90YWxJdGVtczogbnVtYmVyLCBpdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0N1c3RvbWVyJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBlbWFpbEFkZHJlc3M6IHN0cmluZywgZmlyc3ROYW1lOiBzdHJpbmcsIGxhc3ROYW1lOiBzdHJpbmcgfT4gfSB9IHwgbnVsbCB9O1xuXG5leHBvcnQgdHlwZSBBZGRDdXN0b21lcnNUb0dyb3VwTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGdyb3VwSWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGN1c3RvbWVySWRzOiBBcnJheTxTY2FsYXJzWydJRCddPiB8IFNjYWxhcnNbJ0lEJ107XG59PjtcblxuXG5leHBvcnQgdHlwZSBBZGRDdXN0b21lcnNUb0dyb3VwTXV0YXRpb24gPSB7IGFkZEN1c3RvbWVyc1RvR3JvdXA6IHsgX190eXBlbmFtZT86ICdDdXN0b21lckdyb3VwJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcgfSB9O1xuXG5leHBvcnQgdHlwZSBSZW1vdmVDdXN0b21lcnNGcm9tR3JvdXBNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgZ3JvdXBJZDogU2NhbGFyc1snSUQnXTtcbiAgY3VzdG9tZXJJZHM6IEFycmF5PFNjYWxhcnNbJ0lEJ10+IHwgU2NhbGFyc1snSUQnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFJlbW92ZUN1c3RvbWVyc0Zyb21Hcm91cE11dGF0aW9uID0geyByZW1vdmVDdXN0b21lcnNGcm9tR3JvdXA6IHsgX190eXBlbmFtZT86ICdDdXN0b21lckdyb3VwJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcgfSB9O1xuXG5leHBvcnQgdHlwZSBHZXRDdXN0b21lckhpc3RvcnlRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIG9wdGlvbnM/OiBJbnB1dE1heWJlPEhpc3RvcnlFbnRyeUxpc3RPcHRpb25zPjtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIEdldEN1c3RvbWVySGlzdG9yeVF1ZXJ5ID0geyBjdXN0b21lcj86IHsgX190eXBlbmFtZT86ICdDdXN0b21lcicsIGlkOiBzdHJpbmcsIGhpc3Rvcnk6IHsgX190eXBlbmFtZT86ICdIaXN0b3J5RW50cnlMaXN0JywgdG90YWxJdGVtczogbnVtYmVyLCBpdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0hpc3RvcnlFbnRyeScsIGlkOiBzdHJpbmcsIHR5cGU6IEhpc3RvcnlFbnRyeVR5cGUsIGNyZWF0ZWRBdDogYW55LCBpc1B1YmxpYzogYm9vbGVhbiwgZGF0YTogYW55LCBhZG1pbmlzdHJhdG9yPzogeyBfX3R5cGVuYW1lPzogJ0FkbWluaXN0cmF0b3InLCBpZDogc3RyaW5nLCBmaXJzdE5hbWU6IHN0cmluZywgbGFzdE5hbWU6IHN0cmluZyB9IHwgbnVsbCB9PiB9IH0gfCBudWxsIH07XG5cbmV4cG9ydCB0eXBlIEFkZE5vdGVUb0N1c3RvbWVyTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlucHV0OiBBZGROb3RlVG9DdXN0b21lcklucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgQWRkTm90ZVRvQ3VzdG9tZXJNdXRhdGlvbiA9IHsgYWRkTm90ZVRvQ3VzdG9tZXI6IHsgX190eXBlbmFtZT86ICdDdXN0b21lcicsIGlkOiBzdHJpbmcgfSB9O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVDdXN0b21lck5vdGVNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IFVwZGF0ZUN1c3RvbWVyTm90ZUlucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgVXBkYXRlQ3VzdG9tZXJOb3RlTXV0YXRpb24gPSB7IHVwZGF0ZUN1c3RvbWVyTm90ZTogeyBfX3R5cGVuYW1lPzogJ0hpc3RvcnlFbnRyeScsIGlkOiBzdHJpbmcsIGRhdGE6IGFueSwgaXNQdWJsaWM6IGJvb2xlYW4gfSB9O1xuXG5leHBvcnQgdHlwZSBEZWxldGVDdXN0b21lck5vdGVNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59PjtcblxuXG5leHBvcnQgdHlwZSBEZWxldGVDdXN0b21lck5vdGVNdXRhdGlvbiA9IHsgZGVsZXRlQ3VzdG9tZXJOb3RlOiB7IF9fdHlwZW5hbWU/OiAnRGVsZXRpb25SZXNwb25zZScsIHJlc3VsdDogRGVsZXRpb25SZXN1bHQsIG1lc3NhZ2U/OiBzdHJpbmcgfCBudWxsIH0gfTtcblxuZXhwb3J0IHR5cGUgRmFjZXRWYWx1ZUZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0ZhY2V0VmFsdWUnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBjb2RlOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnRmFjZXRWYWx1ZVRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZyB9PiwgZmFjZXQ6IHsgX190eXBlbmFtZT86ICdGYWNldCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nIH0gfTtcblxuZXhwb3J0IHR5cGUgRmFjZXRXaXRoVmFsdWVzRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnRmFjZXQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBpc1ByaXZhdGU6IGJvb2xlYW4sIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdGYWNldFRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZyB9PiwgdmFsdWVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnRmFjZXRWYWx1ZScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdGYWNldFZhbHVlVHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+LCBmYWNldDogeyBfX3R5cGVuYW1lPzogJ0ZhY2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcgfSB9PiB9O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVGYWNldE11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogQ3JlYXRlRmFjZXRJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIENyZWF0ZUZhY2V0TXV0YXRpb24gPSB7IGNyZWF0ZUZhY2V0OiB7IF9fdHlwZW5hbWU/OiAnRmFjZXQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBpc1ByaXZhdGU6IGJvb2xlYW4sIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdGYWNldFRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZyB9PiwgdmFsdWVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnRmFjZXRWYWx1ZScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdGYWNldFZhbHVlVHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+LCBmYWNldDogeyBfX3R5cGVuYW1lPzogJ0ZhY2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcgfSB9PiB9IH07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUZhY2V0TXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlucHV0OiBVcGRhdGVGYWNldElucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgVXBkYXRlRmFjZXRNdXRhdGlvbiA9IHsgdXBkYXRlRmFjZXQ6IHsgX190eXBlbmFtZT86ICdGYWNldCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIGlzUHJpdmF0ZTogYm9vbGVhbiwgY29kZTogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIHRyYW5zbGF0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0ZhY2V0VHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+LCB2YWx1ZXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdGYWNldFZhbHVlJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgY29kZTogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIHRyYW5zbGF0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0ZhY2V0VmFsdWVUcmFuc2xhdGlvbicsIGlkOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcgfT4sIGZhY2V0OiB7IF9fdHlwZW5hbWU/OiAnRmFjZXQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZyB9IH0+IH0gfTtcblxuZXhwb3J0IHR5cGUgRGVsZXRlRmFjZXRNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGZvcmNlPzogSW5wdXRNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xufT47XG5cblxuZXhwb3J0IHR5cGUgRGVsZXRlRmFjZXRNdXRhdGlvbiA9IHsgZGVsZXRlRmFjZXQ6IHsgX190eXBlbmFtZT86ICdEZWxldGlvblJlc3BvbnNlJywgcmVzdWx0OiBEZWxldGlvblJlc3VsdCwgbWVzc2FnZT86IHN0cmluZyB8IG51bGwgfSB9O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVGYWNldFZhbHVlc011dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogQXJyYXk8Q3JlYXRlRmFjZXRWYWx1ZUlucHV0PiB8IENyZWF0ZUZhY2V0VmFsdWVJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIENyZWF0ZUZhY2V0VmFsdWVzTXV0YXRpb24gPSB7IGNyZWF0ZUZhY2V0VmFsdWVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnRmFjZXRWYWx1ZScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdGYWNldFZhbHVlVHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+LCBmYWNldDogeyBfX3R5cGVuYW1lPzogJ0ZhY2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcgfSB9PiB9O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVGYWNldFZhbHVlc011dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogQXJyYXk8VXBkYXRlRmFjZXRWYWx1ZUlucHV0PiB8IFVwZGF0ZUZhY2V0VmFsdWVJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUZhY2V0VmFsdWVzTXV0YXRpb24gPSB7IHVwZGF0ZUZhY2V0VmFsdWVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnRmFjZXRWYWx1ZScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdGYWNldFZhbHVlVHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+LCBmYWNldDogeyBfX3R5cGVuYW1lPzogJ0ZhY2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcgfSB9PiB9O1xuXG5leHBvcnQgdHlwZSBEZWxldGVGYWNldFZhbHVlc011dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpZHM6IEFycmF5PFNjYWxhcnNbJ0lEJ10+IHwgU2NhbGFyc1snSUQnXTtcbiAgZm9yY2U/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0Jvb2xlYW4nXT47XG59PjtcblxuXG5leHBvcnQgdHlwZSBEZWxldGVGYWNldFZhbHVlc011dGF0aW9uID0geyBkZWxldGVGYWNldFZhbHVlczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0RlbGV0aW9uUmVzcG9uc2UnLCByZXN1bHQ6IERlbGV0aW9uUmVzdWx0LCBtZXNzYWdlPzogc3RyaW5nIHwgbnVsbCB9PiB9O1xuXG5leHBvcnQgdHlwZSBHZXRGYWNldExpc3RRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgb3B0aW9ucz86IElucHV0TWF5YmU8RmFjZXRMaXN0T3B0aW9ucz47XG59PjtcblxuXG5leHBvcnQgdHlwZSBHZXRGYWNldExpc3RRdWVyeSA9IHsgZmFjZXRzOiB7IF9fdHlwZW5hbWU/OiAnRmFjZXRMaXN0JywgdG90YWxJdGVtczogbnVtYmVyLCBpdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0ZhY2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgaXNQcml2YXRlOiBib29sZWFuLCBjb2RlOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnRmFjZXRUcmFuc2xhdGlvbicsIGlkOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcgfT4sIHZhbHVlczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0ZhY2V0VmFsdWUnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBjb2RlOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnRmFjZXRWYWx1ZVRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZyB9PiwgZmFjZXQ6IHsgX190eXBlbmFtZT86ICdGYWNldCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nIH0gfT4gfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBHZXRGYWNldFdpdGhWYWx1ZXNRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59PjtcblxuXG5leHBvcnQgdHlwZSBHZXRGYWNldFdpdGhWYWx1ZXNRdWVyeSA9IHsgZmFjZXQ/OiB7IF9fdHlwZW5hbWU/OiAnRmFjZXQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBpc1ByaXZhdGU6IGJvb2xlYW4sIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdGYWNldFRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZyB9PiwgdmFsdWVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnRmFjZXRWYWx1ZScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdGYWNldFZhbHVlVHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+LCBmYWNldDogeyBfX3R5cGVuYW1lPzogJ0ZhY2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcgfSB9PiB9IHwgbnVsbCB9O1xuXG5leHBvcnQgdHlwZSBEaXNjb3VudEZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0Rpc2NvdW50JywgYWRqdXN0bWVudFNvdXJjZTogc3RyaW5nLCBhbW91bnQ6IG51bWJlciwgYW1vdW50V2l0aFRheDogbnVtYmVyLCBkZXNjcmlwdGlvbjogc3RyaW5nLCB0eXBlOiBBZGp1c3RtZW50VHlwZSB9O1xuXG5leHBvcnQgdHlwZSBSZWZ1bmRGcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdSZWZ1bmQnLCBpZDogc3RyaW5nLCBzdGF0ZTogc3RyaW5nLCBpdGVtczogbnVtYmVyLCBzaGlwcGluZzogbnVtYmVyLCBhZGp1c3RtZW50OiBudW1iZXIsIHRyYW5zYWN0aW9uSWQ/OiBzdHJpbmcgfCBudWxsLCBwYXltZW50SWQ6IHN0cmluZyB9O1xuXG5leHBvcnQgdHlwZSBPcmRlckFkZHJlc3NGcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdPcmRlckFkZHJlc3MnLCBmdWxsTmFtZT86IHN0cmluZyB8IG51bGwsIGNvbXBhbnk/OiBzdHJpbmcgfCBudWxsLCBzdHJlZXRMaW5lMT86IHN0cmluZyB8IG51bGwsIHN0cmVldExpbmUyPzogc3RyaW5nIHwgbnVsbCwgY2l0eT86IHN0cmluZyB8IG51bGwsIHByb3ZpbmNlPzogc3RyaW5nIHwgbnVsbCwgcG9zdGFsQ29kZT86IHN0cmluZyB8IG51bGwsIGNvdW50cnk/OiBzdHJpbmcgfCBudWxsLCBjb3VudHJ5Q29kZT86IHN0cmluZyB8IG51bGwsIHBob25lTnVtYmVyPzogc3RyaW5nIHwgbnVsbCB9O1xuXG5leHBvcnQgdHlwZSBPcmRlckZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ09yZGVyJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBvcmRlclBsYWNlZEF0PzogYW55IHwgbnVsbCwgY29kZTogc3RyaW5nLCBzdGF0ZTogc3RyaW5nLCBuZXh0U3RhdGVzOiBBcnJheTxzdHJpbmc+LCB0b3RhbDogbnVtYmVyLCBjdXJyZW5jeUNvZGU6IEN1cnJlbmN5Q29kZSwgY3VzdG9tZXI/OiB7IF9fdHlwZW5hbWU/OiAnQ3VzdG9tZXInLCBpZDogc3RyaW5nLCBmaXJzdE5hbWU6IHN0cmluZywgbGFzdE5hbWU6IHN0cmluZyB9IHwgbnVsbCwgc2hpcHBpbmdMaW5lczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1NoaXBwaW5nTGluZScsIHNoaXBwaW5nTWV0aG9kOiB7IF9fdHlwZW5hbWU/OiAnU2hpcHBpbmdNZXRob2QnLCBuYW1lOiBzdHJpbmcgfSB9PiB9O1xuXG5leHBvcnQgdHlwZSBGdWxmaWxsbWVudEZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0Z1bGZpbGxtZW50JywgaWQ6IHN0cmluZywgc3RhdGU6IHN0cmluZywgbmV4dFN0YXRlczogQXJyYXk8c3RyaW5nPiwgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBtZXRob2Q6IHN0cmluZywgdHJhY2tpbmdDb2RlPzogc3RyaW5nIHwgbnVsbCwgb3JkZXJJdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ09yZGVySXRlbScsIGlkOiBzdHJpbmcgfT4gfTtcblxuZXhwb3J0IHR5cGUgT3JkZXJMaW5lRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnT3JkZXJMaW5lJywgaWQ6IHN0cmluZywgdW5pdFByaWNlOiBudW1iZXIsIHVuaXRQcmljZVdpdGhUYXg6IG51bWJlciwgcHJvcmF0ZWRVbml0UHJpY2U6IG51bWJlciwgcHJvcmF0ZWRVbml0UHJpY2VXaXRoVGF4OiBudW1iZXIsIHF1YW50aXR5OiBudW1iZXIsIGxpbmVQcmljZTogbnVtYmVyLCBsaW5lVGF4OiBudW1iZXIsIGxpbmVQcmljZVdpdGhUYXg6IG51bWJlciwgZGlzY291bnRlZExpbmVQcmljZTogbnVtYmVyLCBkaXNjb3VudGVkTGluZVByaWNlV2l0aFRheDogbnVtYmVyLCBmZWF0dXJlZEFzc2V0PzogeyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgcHJldmlldzogc3RyaW5nIH0gfCBudWxsLCBwcm9kdWN0VmFyaWFudDogeyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RWYXJpYW50JywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nLCBza3U6IHN0cmluZywgdHJhY2tJbnZlbnRvcnk6IEdsb2JhbEZsYWcsIHN0b2NrT25IYW5kOiBudW1iZXIgfSwgZGlzY291bnRzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnRGlzY291bnQnLCBhZGp1c3RtZW50U291cmNlOiBzdHJpbmcsIGFtb3VudDogbnVtYmVyLCBhbW91bnRXaXRoVGF4OiBudW1iZXIsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIHR5cGU6IEFkanVzdG1lbnRUeXBlIH0+LCBpdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ09yZGVySXRlbScsIGlkOiBzdHJpbmcsIHVuaXRQcmljZTogbnVtYmVyLCB1bml0UHJpY2VXaXRoVGF4OiBudW1iZXIsIHRheFJhdGU6IG51bWJlciwgcmVmdW5kSWQ/OiBzdHJpbmcgfCBudWxsLCBjYW5jZWxsZWQ6IGJvb2xlYW4sIGZ1bGZpbGxtZW50PzogeyBfX3R5cGVuYW1lPzogJ0Z1bGZpbGxtZW50JywgaWQ6IHN0cmluZywgc3RhdGU6IHN0cmluZywgbmV4dFN0YXRlczogQXJyYXk8c3RyaW5nPiwgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBtZXRob2Q6IHN0cmluZywgdHJhY2tpbmdDb2RlPzogc3RyaW5nIHwgbnVsbCwgb3JkZXJJdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ09yZGVySXRlbScsIGlkOiBzdHJpbmcgfT4gfSB8IG51bGwgfT4gfTtcblxuZXhwb3J0IHR5cGUgT3JkZXJEZXRhaWxGcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdPcmRlcicsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCBzdGF0ZTogc3RyaW5nLCBuZXh0U3RhdGVzOiBBcnJheTxzdHJpbmc+LCBhY3RpdmU6IGJvb2xlYW4sIGNvdXBvbkNvZGVzOiBBcnJheTxzdHJpbmc+LCBzdWJUb3RhbDogbnVtYmVyLCBzdWJUb3RhbFdpdGhUYXg6IG51bWJlciwgdG90YWw6IG51bWJlciwgdG90YWxXaXRoVGF4OiBudW1iZXIsIGN1cnJlbmN5Q29kZTogQ3VycmVuY3lDb2RlLCBzaGlwcGluZzogbnVtYmVyLCBzaGlwcGluZ1dpdGhUYXg6IG51bWJlciwgY3VzdG9tZXI/OiB7IF9fdHlwZW5hbWU/OiAnQ3VzdG9tZXInLCBpZDogc3RyaW5nLCBmaXJzdE5hbWU6IHN0cmluZywgbGFzdE5hbWU6IHN0cmluZyB9IHwgbnVsbCwgbGluZXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdPcmRlckxpbmUnLCBpZDogc3RyaW5nLCB1bml0UHJpY2U6IG51bWJlciwgdW5pdFByaWNlV2l0aFRheDogbnVtYmVyLCBwcm9yYXRlZFVuaXRQcmljZTogbnVtYmVyLCBwcm9yYXRlZFVuaXRQcmljZVdpdGhUYXg6IG51bWJlciwgcXVhbnRpdHk6IG51bWJlciwgbGluZVByaWNlOiBudW1iZXIsIGxpbmVUYXg6IG51bWJlciwgbGluZVByaWNlV2l0aFRheDogbnVtYmVyLCBkaXNjb3VudGVkTGluZVByaWNlOiBudW1iZXIsIGRpc2NvdW50ZWRMaW5lUHJpY2VXaXRoVGF4OiBudW1iZXIsIGZlYXR1cmVkQXNzZXQ/OiB7IF9fdHlwZW5hbWU/OiAnQXNzZXQnLCBwcmV2aWV3OiBzdHJpbmcgfSB8IG51bGwsIHByb2R1Y3RWYXJpYW50OiB7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdFZhcmlhbnQnLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIHNrdTogc3RyaW5nLCB0cmFja0ludmVudG9yeTogR2xvYmFsRmxhZywgc3RvY2tPbkhhbmQ6IG51bWJlciB9LCBkaXNjb3VudHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdEaXNjb3VudCcsIGFkanVzdG1lbnRTb3VyY2U6IHN0cmluZywgYW1vdW50OiBudW1iZXIsIGFtb3VudFdpdGhUYXg6IG51bWJlciwgZGVzY3JpcHRpb246IHN0cmluZywgdHlwZTogQWRqdXN0bWVudFR5cGUgfT4sIGl0ZW1zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnT3JkZXJJdGVtJywgaWQ6IHN0cmluZywgdW5pdFByaWNlOiBudW1iZXIsIHVuaXRQcmljZVdpdGhUYXg6IG51bWJlciwgdGF4UmF0ZTogbnVtYmVyLCByZWZ1bmRJZD86IHN0cmluZyB8IG51bGwsIGNhbmNlbGxlZDogYm9vbGVhbiwgZnVsZmlsbG1lbnQ/OiB7IF9fdHlwZW5hbWU/OiAnRnVsZmlsbG1lbnQnLCBpZDogc3RyaW5nLCBzdGF0ZTogc3RyaW5nLCBuZXh0U3RhdGVzOiBBcnJheTxzdHJpbmc+LCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG1ldGhvZDogc3RyaW5nLCB0cmFja2luZ0NvZGU/OiBzdHJpbmcgfCBudWxsLCBvcmRlckl0ZW1zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnT3JkZXJJdGVtJywgaWQ6IHN0cmluZyB9PiB9IHwgbnVsbCB9PiB9Piwgc3VyY2hhcmdlczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1N1cmNoYXJnZScsIGlkOiBzdHJpbmcsIHNrdT86IHN0cmluZyB8IG51bGwsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIHByaWNlOiBudW1iZXIsIHByaWNlV2l0aFRheDogbnVtYmVyLCB0YXhSYXRlOiBudW1iZXIgfT4sIGRpc2NvdW50czogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Rpc2NvdW50JywgYWRqdXN0bWVudFNvdXJjZTogc3RyaW5nLCBhbW91bnQ6IG51bWJlciwgYW1vdW50V2l0aFRheDogbnVtYmVyLCBkZXNjcmlwdGlvbjogc3RyaW5nLCB0eXBlOiBBZGp1c3RtZW50VHlwZSB9PiwgcHJvbW90aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb21vdGlvbicsIGlkOiBzdHJpbmcsIGNvdXBvbkNvZGU/OiBzdHJpbmcgfCBudWxsIH0+LCBzaGlwcGluZ0xpbmVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU2hpcHBpbmdMaW5lJywgc2hpcHBpbmdNZXRob2Q6IHsgX190eXBlbmFtZT86ICdTaGlwcGluZ01ldGhvZCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCBmdWxmaWxsbWVudEhhbmRsZXJDb2RlOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcgfSB9PiwgdGF4U3VtbWFyeTogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ09yZGVyVGF4U3VtbWFyeScsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIHRheEJhc2U6IG51bWJlciwgdGF4UmF0ZTogbnVtYmVyLCB0YXhUb3RhbDogbnVtYmVyIH0+LCBzaGlwcGluZ0FkZHJlc3M/OiB7IF9fdHlwZW5hbWU/OiAnT3JkZXJBZGRyZXNzJywgZnVsbE5hbWU/OiBzdHJpbmcgfCBudWxsLCBjb21wYW55Pzogc3RyaW5nIHwgbnVsbCwgc3RyZWV0TGluZTE/OiBzdHJpbmcgfCBudWxsLCBzdHJlZXRMaW5lMj86IHN0cmluZyB8IG51bGwsIGNpdHk/OiBzdHJpbmcgfCBudWxsLCBwcm92aW5jZT86IHN0cmluZyB8IG51bGwsIHBvc3RhbENvZGU/OiBzdHJpbmcgfCBudWxsLCBjb3VudHJ5Pzogc3RyaW5nIHwgbnVsbCwgY291bnRyeUNvZGU/OiBzdHJpbmcgfCBudWxsLCBwaG9uZU51bWJlcj86IHN0cmluZyB8IG51bGwgfSB8IG51bGwsIGJpbGxpbmdBZGRyZXNzPzogeyBfX3R5cGVuYW1lPzogJ09yZGVyQWRkcmVzcycsIGZ1bGxOYW1lPzogc3RyaW5nIHwgbnVsbCwgY29tcGFueT86IHN0cmluZyB8IG51bGwsIHN0cmVldExpbmUxPzogc3RyaW5nIHwgbnVsbCwgc3RyZWV0TGluZTI/OiBzdHJpbmcgfCBudWxsLCBjaXR5Pzogc3RyaW5nIHwgbnVsbCwgcHJvdmluY2U/OiBzdHJpbmcgfCBudWxsLCBwb3N0YWxDb2RlPzogc3RyaW5nIHwgbnVsbCwgY291bnRyeT86IHN0cmluZyB8IG51bGwsIGNvdW50cnlDb2RlPzogc3RyaW5nIHwgbnVsbCwgcGhvbmVOdW1iZXI/OiBzdHJpbmcgfCBudWxsIH0gfCBudWxsLCBwYXltZW50cz86IEFycmF5PHsgX190eXBlbmFtZT86ICdQYXltZW50JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHRyYW5zYWN0aW9uSWQ/OiBzdHJpbmcgfCBudWxsLCBhbW91bnQ6IG51bWJlciwgbWV0aG9kOiBzdHJpbmcsIHN0YXRlOiBzdHJpbmcsIG5leHRTdGF0ZXM6IEFycmF5PHN0cmluZz4sIGVycm9yTWVzc2FnZT86IHN0cmluZyB8IG51bGwsIG1ldGFkYXRhPzogYW55IHwgbnVsbCwgcmVmdW5kczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1JlZnVuZCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCBzdGF0ZTogc3RyaW5nLCBpdGVtczogbnVtYmVyLCBhZGp1c3RtZW50OiBudW1iZXIsIHRvdGFsOiBudW1iZXIsIHBheW1lbnRJZDogc3RyaW5nLCByZWFzb24/OiBzdHJpbmcgfCBudWxsLCB0cmFuc2FjdGlvbklkPzogc3RyaW5nIHwgbnVsbCwgbWV0aG9kPzogc3RyaW5nIHwgbnVsbCwgbWV0YWRhdGE/OiBhbnkgfCBudWxsLCBvcmRlckl0ZW1zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnT3JkZXJJdGVtJywgaWQ6IHN0cmluZyB9PiB9PiB9PiB8IG51bGwsIGZ1bGZpbGxtZW50cz86IEFycmF5PHsgX190eXBlbmFtZT86ICdGdWxmaWxsbWVudCcsIGlkOiBzdHJpbmcsIHN0YXRlOiBzdHJpbmcsIG5leHRTdGF0ZXM6IEFycmF5PHN0cmluZz4sIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbWV0aG9kOiBzdHJpbmcsIHRyYWNraW5nQ29kZT86IHN0cmluZyB8IG51bGwsIG9yZGVySXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdPcmRlckl0ZW0nLCBpZDogc3RyaW5nIH0+IH0+IHwgbnVsbCwgbW9kaWZpY2F0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ09yZGVyTW9kaWZpY2F0aW9uJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIGlzU2V0dGxlZDogYm9vbGVhbiwgcHJpY2VDaGFuZ2U6IG51bWJlciwgbm90ZTogc3RyaW5nLCBwYXltZW50PzogeyBfX3R5cGVuYW1lPzogJ1BheW1lbnQnLCBpZDogc3RyaW5nLCBhbW91bnQ6IG51bWJlciB9IHwgbnVsbCwgb3JkZXJJdGVtcz86IEFycmF5PHsgX190eXBlbmFtZT86ICdPcmRlckl0ZW0nLCBpZDogc3RyaW5nIH0+IHwgbnVsbCwgcmVmdW5kPzogeyBfX3R5cGVuYW1lPzogJ1JlZnVuZCcsIGlkOiBzdHJpbmcsIHBheW1lbnRJZDogc3RyaW5nLCB0b3RhbDogbnVtYmVyIH0gfCBudWxsLCBzdXJjaGFyZ2VzPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1N1cmNoYXJnZScsIGlkOiBzdHJpbmcgfT4gfCBudWxsIH0+IH07XG5cbmV4cG9ydCB0eXBlIEdldE9yZGVyTGlzdFF1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8e1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxPcmRlckxpc3RPcHRpb25zPjtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIEdldE9yZGVyTGlzdFF1ZXJ5ID0geyBvcmRlcnM6IHsgX190eXBlbmFtZT86ICdPcmRlckxpc3QnLCB0b3RhbEl0ZW1zOiBudW1iZXIsIGl0ZW1zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnT3JkZXInLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG9yZGVyUGxhY2VkQXQ/OiBhbnkgfCBudWxsLCBjb2RlOiBzdHJpbmcsIHN0YXRlOiBzdHJpbmcsIG5leHRTdGF0ZXM6IEFycmF5PHN0cmluZz4sIHRvdGFsOiBudW1iZXIsIGN1cnJlbmN5Q29kZTogQ3VycmVuY3lDb2RlLCBjdXN0b21lcj86IHsgX190eXBlbmFtZT86ICdDdXN0b21lcicsIGlkOiBzdHJpbmcsIGZpcnN0TmFtZTogc3RyaW5nLCBsYXN0TmFtZTogc3RyaW5nIH0gfCBudWxsLCBzaGlwcGluZ0xpbmVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU2hpcHBpbmdMaW5lJywgc2hpcHBpbmdNZXRob2Q6IHsgX190eXBlbmFtZT86ICdTaGlwcGluZ01ldGhvZCcsIG5hbWU6IHN0cmluZyB9IH0+IH0+IH0gfTtcblxuZXhwb3J0IHR5cGUgR2V0T3JkZXJRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59PjtcblxuXG5leHBvcnQgdHlwZSBHZXRPcmRlclF1ZXJ5ID0geyBvcmRlcj86IHsgX190eXBlbmFtZT86ICdPcmRlcicsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCBzdGF0ZTogc3RyaW5nLCBuZXh0U3RhdGVzOiBBcnJheTxzdHJpbmc+LCBhY3RpdmU6IGJvb2xlYW4sIGNvdXBvbkNvZGVzOiBBcnJheTxzdHJpbmc+LCBzdWJUb3RhbDogbnVtYmVyLCBzdWJUb3RhbFdpdGhUYXg6IG51bWJlciwgdG90YWw6IG51bWJlciwgdG90YWxXaXRoVGF4OiBudW1iZXIsIGN1cnJlbmN5Q29kZTogQ3VycmVuY3lDb2RlLCBzaGlwcGluZzogbnVtYmVyLCBzaGlwcGluZ1dpdGhUYXg6IG51bWJlciwgY3VzdG9tZXI/OiB7IF9fdHlwZW5hbWU/OiAnQ3VzdG9tZXInLCBpZDogc3RyaW5nLCBmaXJzdE5hbWU6IHN0cmluZywgbGFzdE5hbWU6IHN0cmluZyB9IHwgbnVsbCwgbGluZXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdPcmRlckxpbmUnLCBpZDogc3RyaW5nLCB1bml0UHJpY2U6IG51bWJlciwgdW5pdFByaWNlV2l0aFRheDogbnVtYmVyLCBwcm9yYXRlZFVuaXRQcmljZTogbnVtYmVyLCBwcm9yYXRlZFVuaXRQcmljZVdpdGhUYXg6IG51bWJlciwgcXVhbnRpdHk6IG51bWJlciwgbGluZVByaWNlOiBudW1iZXIsIGxpbmVUYXg6IG51bWJlciwgbGluZVByaWNlV2l0aFRheDogbnVtYmVyLCBkaXNjb3VudGVkTGluZVByaWNlOiBudW1iZXIsIGRpc2NvdW50ZWRMaW5lUHJpY2VXaXRoVGF4OiBudW1iZXIsIGZlYXR1cmVkQXNzZXQ/OiB7IF9fdHlwZW5hbWU/OiAnQXNzZXQnLCBwcmV2aWV3OiBzdHJpbmcgfSB8IG51bGwsIHByb2R1Y3RWYXJpYW50OiB7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdFZhcmlhbnQnLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIHNrdTogc3RyaW5nLCB0cmFja0ludmVudG9yeTogR2xvYmFsRmxhZywgc3RvY2tPbkhhbmQ6IG51bWJlciB9LCBkaXNjb3VudHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdEaXNjb3VudCcsIGFkanVzdG1lbnRTb3VyY2U6IHN0cmluZywgYW1vdW50OiBudW1iZXIsIGFtb3VudFdpdGhUYXg6IG51bWJlciwgZGVzY3JpcHRpb246IHN0cmluZywgdHlwZTogQWRqdXN0bWVudFR5cGUgfT4sIGl0ZW1zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnT3JkZXJJdGVtJywgaWQ6IHN0cmluZywgdW5pdFByaWNlOiBudW1iZXIsIHVuaXRQcmljZVdpdGhUYXg6IG51bWJlciwgdGF4UmF0ZTogbnVtYmVyLCByZWZ1bmRJZD86IHN0cmluZyB8IG51bGwsIGNhbmNlbGxlZDogYm9vbGVhbiwgZnVsZmlsbG1lbnQ/OiB7IF9fdHlwZW5hbWU/OiAnRnVsZmlsbG1lbnQnLCBpZDogc3RyaW5nLCBzdGF0ZTogc3RyaW5nLCBuZXh0U3RhdGVzOiBBcnJheTxzdHJpbmc+LCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG1ldGhvZDogc3RyaW5nLCB0cmFja2luZ0NvZGU/OiBzdHJpbmcgfCBudWxsLCBvcmRlckl0ZW1zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnT3JkZXJJdGVtJywgaWQ6IHN0cmluZyB9PiB9IHwgbnVsbCB9PiB9Piwgc3VyY2hhcmdlczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1N1cmNoYXJnZScsIGlkOiBzdHJpbmcsIHNrdT86IHN0cmluZyB8IG51bGwsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIHByaWNlOiBudW1iZXIsIHByaWNlV2l0aFRheDogbnVtYmVyLCB0YXhSYXRlOiBudW1iZXIgfT4sIGRpc2NvdW50czogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Rpc2NvdW50JywgYWRqdXN0bWVudFNvdXJjZTogc3RyaW5nLCBhbW91bnQ6IG51bWJlciwgYW1vdW50V2l0aFRheDogbnVtYmVyLCBkZXNjcmlwdGlvbjogc3RyaW5nLCB0eXBlOiBBZGp1c3RtZW50VHlwZSB9PiwgcHJvbW90aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb21vdGlvbicsIGlkOiBzdHJpbmcsIGNvdXBvbkNvZGU/OiBzdHJpbmcgfCBudWxsIH0+LCBzaGlwcGluZ0xpbmVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU2hpcHBpbmdMaW5lJywgc2hpcHBpbmdNZXRob2Q6IHsgX190eXBlbmFtZT86ICdTaGlwcGluZ01ldGhvZCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCBmdWxmaWxsbWVudEhhbmRsZXJDb2RlOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcgfSB9PiwgdGF4U3VtbWFyeTogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ09yZGVyVGF4U3VtbWFyeScsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIHRheEJhc2U6IG51bWJlciwgdGF4UmF0ZTogbnVtYmVyLCB0YXhUb3RhbDogbnVtYmVyIH0+LCBzaGlwcGluZ0FkZHJlc3M/OiB7IF9fdHlwZW5hbWU/OiAnT3JkZXJBZGRyZXNzJywgZnVsbE5hbWU/OiBzdHJpbmcgfCBudWxsLCBjb21wYW55Pzogc3RyaW5nIHwgbnVsbCwgc3RyZWV0TGluZTE/OiBzdHJpbmcgfCBudWxsLCBzdHJlZXRMaW5lMj86IHN0cmluZyB8IG51bGwsIGNpdHk/OiBzdHJpbmcgfCBudWxsLCBwcm92aW5jZT86IHN0cmluZyB8IG51bGwsIHBvc3RhbENvZGU/OiBzdHJpbmcgfCBudWxsLCBjb3VudHJ5Pzogc3RyaW5nIHwgbnVsbCwgY291bnRyeUNvZGU/OiBzdHJpbmcgfCBudWxsLCBwaG9uZU51bWJlcj86IHN0cmluZyB8IG51bGwgfSB8IG51bGwsIGJpbGxpbmdBZGRyZXNzPzogeyBfX3R5cGVuYW1lPzogJ09yZGVyQWRkcmVzcycsIGZ1bGxOYW1lPzogc3RyaW5nIHwgbnVsbCwgY29tcGFueT86IHN0cmluZyB8IG51bGwsIHN0cmVldExpbmUxPzogc3RyaW5nIHwgbnVsbCwgc3RyZWV0TGluZTI/OiBzdHJpbmcgfCBudWxsLCBjaXR5Pzogc3RyaW5nIHwgbnVsbCwgcHJvdmluY2U/OiBzdHJpbmcgfCBudWxsLCBwb3N0YWxDb2RlPzogc3RyaW5nIHwgbnVsbCwgY291bnRyeT86IHN0cmluZyB8IG51bGwsIGNvdW50cnlDb2RlPzogc3RyaW5nIHwgbnVsbCwgcGhvbmVOdW1iZXI/OiBzdHJpbmcgfCBudWxsIH0gfCBudWxsLCBwYXltZW50cz86IEFycmF5PHsgX190eXBlbmFtZT86ICdQYXltZW50JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHRyYW5zYWN0aW9uSWQ/OiBzdHJpbmcgfCBudWxsLCBhbW91bnQ6IG51bWJlciwgbWV0aG9kOiBzdHJpbmcsIHN0YXRlOiBzdHJpbmcsIG5leHRTdGF0ZXM6IEFycmF5PHN0cmluZz4sIGVycm9yTWVzc2FnZT86IHN0cmluZyB8IG51bGwsIG1ldGFkYXRhPzogYW55IHwgbnVsbCwgcmVmdW5kczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1JlZnVuZCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCBzdGF0ZTogc3RyaW5nLCBpdGVtczogbnVtYmVyLCBhZGp1c3RtZW50OiBudW1iZXIsIHRvdGFsOiBudW1iZXIsIHBheW1lbnRJZDogc3RyaW5nLCByZWFzb24/OiBzdHJpbmcgfCBudWxsLCB0cmFuc2FjdGlvbklkPzogc3RyaW5nIHwgbnVsbCwgbWV0aG9kPzogc3RyaW5nIHwgbnVsbCwgbWV0YWRhdGE/OiBhbnkgfCBudWxsLCBvcmRlckl0ZW1zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnT3JkZXJJdGVtJywgaWQ6IHN0cmluZyB9PiB9PiB9PiB8IG51bGwsIGZ1bGZpbGxtZW50cz86IEFycmF5PHsgX190eXBlbmFtZT86ICdGdWxmaWxsbWVudCcsIGlkOiBzdHJpbmcsIHN0YXRlOiBzdHJpbmcsIG5leHRTdGF0ZXM6IEFycmF5PHN0cmluZz4sIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbWV0aG9kOiBzdHJpbmcsIHRyYWNraW5nQ29kZT86IHN0cmluZyB8IG51bGwsIG9yZGVySXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdPcmRlckl0ZW0nLCBpZDogc3RyaW5nIH0+IH0+IHwgbnVsbCwgbW9kaWZpY2F0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ09yZGVyTW9kaWZpY2F0aW9uJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIGlzU2V0dGxlZDogYm9vbGVhbiwgcHJpY2VDaGFuZ2U6IG51bWJlciwgbm90ZTogc3RyaW5nLCBwYXltZW50PzogeyBfX3R5cGVuYW1lPzogJ1BheW1lbnQnLCBpZDogc3RyaW5nLCBhbW91bnQ6IG51bWJlciB9IHwgbnVsbCwgb3JkZXJJdGVtcz86IEFycmF5PHsgX190eXBlbmFtZT86ICdPcmRlckl0ZW0nLCBpZDogc3RyaW5nIH0+IHwgbnVsbCwgcmVmdW5kPzogeyBfX3R5cGVuYW1lPzogJ1JlZnVuZCcsIGlkOiBzdHJpbmcsIHBheW1lbnRJZDogc3RyaW5nLCB0b3RhbDogbnVtYmVyIH0gfCBudWxsLCBzdXJjaGFyZ2VzPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1N1cmNoYXJnZScsIGlkOiBzdHJpbmcgfT4gfCBudWxsIH0+IH0gfCBudWxsIH07XG5cbmV4cG9ydCB0eXBlIFNldHRsZVBheW1lbnRNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59PjtcblxuXG5leHBvcnQgdHlwZSBTZXR0bGVQYXltZW50TXV0YXRpb24gPSB7IHNldHRsZVBheW1lbnQ6IHsgX190eXBlbmFtZT86ICdPcmRlclN0YXRlVHJhbnNpdGlvbkVycm9yJywgdHJhbnNpdGlvbkVycm9yOiBzdHJpbmcsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfSB8IHsgX190eXBlbmFtZT86ICdQYXltZW50JywgaWQ6IHN0cmluZywgdHJhbnNhY3Rpb25JZD86IHN0cmluZyB8IG51bGwsIGFtb3VudDogbnVtYmVyLCBtZXRob2Q6IHN0cmluZywgc3RhdGU6IHN0cmluZywgbWV0YWRhdGE/OiBhbnkgfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnUGF5bWVudFN0YXRlVHJhbnNpdGlvbkVycm9yJywgdHJhbnNpdGlvbkVycm9yOiBzdHJpbmcsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfSB8IHsgX190eXBlbmFtZT86ICdTZXR0bGVQYXltZW50RXJyb3InLCBwYXltZW50RXJyb3JNZXNzYWdlOiBzdHJpbmcsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfSB9O1xuXG5leHBvcnQgdHlwZSBUcmFuc2l0aW9uUGF5bWVudFRvU3RhdGVNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIHN0YXRlOiBTY2FsYXJzWydTdHJpbmcnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFRyYW5zaXRpb25QYXltZW50VG9TdGF0ZU11dGF0aW9uID0geyB0cmFuc2l0aW9uUGF5bWVudFRvU3RhdGU6IHsgX190eXBlbmFtZT86ICdQYXltZW50JywgaWQ6IHN0cmluZywgdHJhbnNhY3Rpb25JZD86IHN0cmluZyB8IG51bGwsIGFtb3VudDogbnVtYmVyLCBtZXRob2Q6IHN0cmluZywgc3RhdGU6IHN0cmluZywgbWV0YWRhdGE/OiBhbnkgfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnUGF5bWVudFN0YXRlVHJhbnNpdGlvbkVycm9yJywgdHJhbnNpdGlvbkVycm9yOiBzdHJpbmcsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfSB9O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVGdWxmaWxsbWVudE11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogRnVsZmlsbE9yZGVySW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBDcmVhdGVGdWxmaWxsbWVudE11dGF0aW9uID0geyBhZGRGdWxmaWxsbWVudFRvT3JkZXI6IHsgX190eXBlbmFtZT86ICdDcmVhdGVGdWxmaWxsbWVudEVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZywgZnVsZmlsbG1lbnRIYW5kbGVyRXJyb3I6IHN0cmluZyB9IHwgeyBfX3R5cGVuYW1lPzogJ0VtcHR5T3JkZXJMaW5lU2VsZWN0aW9uRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfCB7IF9fdHlwZW5hbWU/OiAnRnVsZmlsbG1lbnQnLCBpZDogc3RyaW5nLCBzdGF0ZTogc3RyaW5nLCBuZXh0U3RhdGVzOiBBcnJheTxzdHJpbmc+LCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG1ldGhvZDogc3RyaW5nLCB0cmFja2luZ0NvZGU/OiBzdHJpbmcgfCBudWxsLCBvcmRlckl0ZW1zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnT3JkZXJJdGVtJywgaWQ6IHN0cmluZyB9PiB9IHwgeyBfX3R5cGVuYW1lPzogJ0Z1bGZpbGxtZW50U3RhdGVUcmFuc2l0aW9uRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nLCB0cmFuc2l0aW9uRXJyb3I6IHN0cmluZyB9IHwgeyBfX3R5cGVuYW1lPzogJ0luc3VmZmljaWVudFN0b2NrT25IYW5kRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfCB7IF9fdHlwZW5hbWU/OiAnSW52YWxpZEZ1bGZpbGxtZW50SGFuZGxlckVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9IHwgeyBfX3R5cGVuYW1lPzogJ0l0ZW1zQWxyZWFkeUZ1bGZpbGxlZEVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9IH07XG5cbmV4cG9ydCB0eXBlIENhbmNlbE9yZGVyTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlucHV0OiBDYW5jZWxPcmRlcklucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgQ2FuY2VsT3JkZXJNdXRhdGlvbiA9IHsgY2FuY2VsT3JkZXI6IHsgX190eXBlbmFtZT86ICdDYW5jZWxBY3RpdmVPcmRlckVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9IHwgeyBfX3R5cGVuYW1lPzogJ0VtcHR5T3JkZXJMaW5lU2VsZWN0aW9uRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfCB7IF9fdHlwZW5hbWU/OiAnTXVsdGlwbGVPcmRlckVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9IHwgeyBfX3R5cGVuYW1lPzogJ09yZGVyJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBjb2RlOiBzdHJpbmcsIHN0YXRlOiBzdHJpbmcsIG5leHRTdGF0ZXM6IEFycmF5PHN0cmluZz4sIGFjdGl2ZTogYm9vbGVhbiwgY291cG9uQ29kZXM6IEFycmF5PHN0cmluZz4sIHN1YlRvdGFsOiBudW1iZXIsIHN1YlRvdGFsV2l0aFRheDogbnVtYmVyLCB0b3RhbDogbnVtYmVyLCB0b3RhbFdpdGhUYXg6IG51bWJlciwgY3VycmVuY3lDb2RlOiBDdXJyZW5jeUNvZGUsIHNoaXBwaW5nOiBudW1iZXIsIHNoaXBwaW5nV2l0aFRheDogbnVtYmVyLCBjdXN0b21lcj86IHsgX190eXBlbmFtZT86ICdDdXN0b21lcicsIGlkOiBzdHJpbmcsIGZpcnN0TmFtZTogc3RyaW5nLCBsYXN0TmFtZTogc3RyaW5nIH0gfCBudWxsLCBsaW5lczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ09yZGVyTGluZScsIGlkOiBzdHJpbmcsIHVuaXRQcmljZTogbnVtYmVyLCB1bml0UHJpY2VXaXRoVGF4OiBudW1iZXIsIHByb3JhdGVkVW5pdFByaWNlOiBudW1iZXIsIHByb3JhdGVkVW5pdFByaWNlV2l0aFRheDogbnVtYmVyLCBxdWFudGl0eTogbnVtYmVyLCBsaW5lUHJpY2U6IG51bWJlciwgbGluZVRheDogbnVtYmVyLCBsaW5lUHJpY2VXaXRoVGF4OiBudW1iZXIsIGRpc2NvdW50ZWRMaW5lUHJpY2U6IG51bWJlciwgZGlzY291bnRlZExpbmVQcmljZVdpdGhUYXg6IG51bWJlciwgZmVhdHVyZWRBc3NldD86IHsgX190eXBlbmFtZT86ICdBc3NldCcsIHByZXZpZXc6IHN0cmluZyB9IHwgbnVsbCwgcHJvZHVjdFZhcmlhbnQ6IHsgX190eXBlbmFtZT86ICdQcm9kdWN0VmFyaWFudCcsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgc2t1OiBzdHJpbmcsIHRyYWNrSW52ZW50b3J5OiBHbG9iYWxGbGFnLCBzdG9ja09uSGFuZDogbnVtYmVyIH0sIGRpc2NvdW50czogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Rpc2NvdW50JywgYWRqdXN0bWVudFNvdXJjZTogc3RyaW5nLCBhbW91bnQ6IG51bWJlciwgYW1vdW50V2l0aFRheDogbnVtYmVyLCBkZXNjcmlwdGlvbjogc3RyaW5nLCB0eXBlOiBBZGp1c3RtZW50VHlwZSB9PiwgaXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdPcmRlckl0ZW0nLCBpZDogc3RyaW5nLCB1bml0UHJpY2U6IG51bWJlciwgdW5pdFByaWNlV2l0aFRheDogbnVtYmVyLCB0YXhSYXRlOiBudW1iZXIsIHJlZnVuZElkPzogc3RyaW5nIHwgbnVsbCwgY2FuY2VsbGVkOiBib29sZWFuLCBmdWxmaWxsbWVudD86IHsgX190eXBlbmFtZT86ICdGdWxmaWxsbWVudCcsIGlkOiBzdHJpbmcsIHN0YXRlOiBzdHJpbmcsIG5leHRTdGF0ZXM6IEFycmF5PHN0cmluZz4sIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbWV0aG9kOiBzdHJpbmcsIHRyYWNraW5nQ29kZT86IHN0cmluZyB8IG51bGwsIG9yZGVySXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdPcmRlckl0ZW0nLCBpZDogc3RyaW5nIH0+IH0gfCBudWxsIH0+IH0+LCBzdXJjaGFyZ2VzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU3VyY2hhcmdlJywgaWQ6IHN0cmluZywgc2t1Pzogc3RyaW5nIHwgbnVsbCwgZGVzY3JpcHRpb246IHN0cmluZywgcHJpY2U6IG51bWJlciwgcHJpY2VXaXRoVGF4OiBudW1iZXIsIHRheFJhdGU6IG51bWJlciB9PiwgZGlzY291bnRzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnRGlzY291bnQnLCBhZGp1c3RtZW50U291cmNlOiBzdHJpbmcsIGFtb3VudDogbnVtYmVyLCBhbW91bnRXaXRoVGF4OiBudW1iZXIsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIHR5cGU6IEFkanVzdG1lbnRUeXBlIH0+LCBwcm9tb3Rpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvbW90aW9uJywgaWQ6IHN0cmluZywgY291cG9uQ29kZT86IHN0cmluZyB8IG51bGwgfT4sIHNoaXBwaW5nTGluZXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdTaGlwcGluZ0xpbmUnLCBzaGlwcGluZ01ldGhvZDogeyBfX3R5cGVuYW1lPzogJ1NoaXBwaW5nTWV0aG9kJywgaWQ6IHN0cmluZywgY29kZTogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIGZ1bGZpbGxtZW50SGFuZGxlckNvZGU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZyB9IH0+LCB0YXhTdW1tYXJ5OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnT3JkZXJUYXhTdW1tYXJ5JywgZGVzY3JpcHRpb246IHN0cmluZywgdGF4QmFzZTogbnVtYmVyLCB0YXhSYXRlOiBudW1iZXIsIHRheFRvdGFsOiBudW1iZXIgfT4sIHNoaXBwaW5nQWRkcmVzcz86IHsgX190eXBlbmFtZT86ICdPcmRlckFkZHJlc3MnLCBmdWxsTmFtZT86IHN0cmluZyB8IG51bGwsIGNvbXBhbnk/OiBzdHJpbmcgfCBudWxsLCBzdHJlZXRMaW5lMT86IHN0cmluZyB8IG51bGwsIHN0cmVldExpbmUyPzogc3RyaW5nIHwgbnVsbCwgY2l0eT86IHN0cmluZyB8IG51bGwsIHByb3ZpbmNlPzogc3RyaW5nIHwgbnVsbCwgcG9zdGFsQ29kZT86IHN0cmluZyB8IG51bGwsIGNvdW50cnk/OiBzdHJpbmcgfCBudWxsLCBjb3VudHJ5Q29kZT86IHN0cmluZyB8IG51bGwsIHBob25lTnVtYmVyPzogc3RyaW5nIHwgbnVsbCB9IHwgbnVsbCwgYmlsbGluZ0FkZHJlc3M/OiB7IF9fdHlwZW5hbWU/OiAnT3JkZXJBZGRyZXNzJywgZnVsbE5hbWU/OiBzdHJpbmcgfCBudWxsLCBjb21wYW55Pzogc3RyaW5nIHwgbnVsbCwgc3RyZWV0TGluZTE/OiBzdHJpbmcgfCBudWxsLCBzdHJlZXRMaW5lMj86IHN0cmluZyB8IG51bGwsIGNpdHk/OiBzdHJpbmcgfCBudWxsLCBwcm92aW5jZT86IHN0cmluZyB8IG51bGwsIHBvc3RhbENvZGU/OiBzdHJpbmcgfCBudWxsLCBjb3VudHJ5Pzogc3RyaW5nIHwgbnVsbCwgY291bnRyeUNvZGU/OiBzdHJpbmcgfCBudWxsLCBwaG9uZU51bWJlcj86IHN0cmluZyB8IG51bGwgfSB8IG51bGwsIHBheW1lbnRzPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1BheW1lbnQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdHJhbnNhY3Rpb25JZD86IHN0cmluZyB8IG51bGwsIGFtb3VudDogbnVtYmVyLCBtZXRob2Q6IHN0cmluZywgc3RhdGU6IHN0cmluZywgbmV4dFN0YXRlczogQXJyYXk8c3RyaW5nPiwgZXJyb3JNZXNzYWdlPzogc3RyaW5nIHwgbnVsbCwgbWV0YWRhdGE/OiBhbnkgfCBudWxsLCByZWZ1bmRzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUmVmdW5kJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHN0YXRlOiBzdHJpbmcsIGl0ZW1zOiBudW1iZXIsIGFkanVzdG1lbnQ6IG51bWJlciwgdG90YWw6IG51bWJlciwgcGF5bWVudElkOiBzdHJpbmcsIHJlYXNvbj86IHN0cmluZyB8IG51bGwsIHRyYW5zYWN0aW9uSWQ/OiBzdHJpbmcgfCBudWxsLCBtZXRob2Q/OiBzdHJpbmcgfCBudWxsLCBtZXRhZGF0YT86IGFueSB8IG51bGwsIG9yZGVySXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdPcmRlckl0ZW0nLCBpZDogc3RyaW5nIH0+IH0+IH0+IHwgbnVsbCwgZnVsZmlsbG1lbnRzPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Z1bGZpbGxtZW50JywgaWQ6IHN0cmluZywgc3RhdGU6IHN0cmluZywgbmV4dFN0YXRlczogQXJyYXk8c3RyaW5nPiwgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBtZXRob2Q6IHN0cmluZywgdHJhY2tpbmdDb2RlPzogc3RyaW5nIHwgbnVsbCwgb3JkZXJJdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ09yZGVySXRlbScsIGlkOiBzdHJpbmcgfT4gfT4gfCBudWxsLCBtb2RpZmljYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnT3JkZXJNb2RpZmljYXRpb24nLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgaXNTZXR0bGVkOiBib29sZWFuLCBwcmljZUNoYW5nZTogbnVtYmVyLCBub3RlOiBzdHJpbmcsIHBheW1lbnQ/OiB7IF9fdHlwZW5hbWU/OiAnUGF5bWVudCcsIGlkOiBzdHJpbmcsIGFtb3VudDogbnVtYmVyIH0gfCBudWxsLCBvcmRlckl0ZW1zPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ09yZGVySXRlbScsIGlkOiBzdHJpbmcgfT4gfCBudWxsLCByZWZ1bmQ/OiB7IF9fdHlwZW5hbWU/OiAnUmVmdW5kJywgaWQ6IHN0cmluZywgcGF5bWVudElkOiBzdHJpbmcsIHRvdGFsOiBudW1iZXIgfSB8IG51bGwsIHN1cmNoYXJnZXM/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU3VyY2hhcmdlJywgaWQ6IHN0cmluZyB9PiB8IG51bGwgfT4gfSB8IHsgX190eXBlbmFtZT86ICdPcmRlclN0YXRlVHJhbnNpdGlvbkVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9IHwgeyBfX3R5cGVuYW1lPzogJ1F1YW50aXR5VG9vR3JlYXRFcnJvcicsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfSB9O1xuXG5leHBvcnQgdHlwZSBSZWZ1bmRPcmRlck11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogUmVmdW5kT3JkZXJJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFJlZnVuZE9yZGVyTXV0YXRpb24gPSB7IHJlZnVuZE9yZGVyOiB7IF9fdHlwZW5hbWU/OiAnQWxyZWFkeVJlZnVuZGVkRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfCB7IF9fdHlwZW5hbWU/OiAnTXVsdGlwbGVPcmRlckVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9IHwgeyBfX3R5cGVuYW1lPzogJ05vdGhpbmdUb1JlZnVuZEVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9IHwgeyBfX3R5cGVuYW1lPzogJ09yZGVyU3RhdGVUcmFuc2l0aW9uRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfCB7IF9fdHlwZW5hbWU/OiAnUGF5bWVudE9yZGVyTWlzbWF0Y2hFcnJvcicsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfSB8IHsgX190eXBlbmFtZT86ICdRdWFudGl0eVRvb0dyZWF0RXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfCB7IF9fdHlwZW5hbWU/OiAnUmVmdW5kJywgaWQ6IHN0cmluZywgc3RhdGU6IHN0cmluZywgaXRlbXM6IG51bWJlciwgc2hpcHBpbmc6IG51bWJlciwgYWRqdXN0bWVudDogbnVtYmVyLCB0cmFuc2FjdGlvbklkPzogc3RyaW5nIHwgbnVsbCwgcGF5bWVudElkOiBzdHJpbmcgfSB8IHsgX190eXBlbmFtZT86ICdSZWZ1bmRPcmRlclN0YXRlRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfCB7IF9fdHlwZW5hbWU/OiAnUmVmdW5kU3RhdGVUcmFuc2l0aW9uRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfTtcblxuZXhwb3J0IHR5cGUgU2V0dGxlUmVmdW5kTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlucHV0OiBTZXR0bGVSZWZ1bmRJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFNldHRsZVJlZnVuZE11dGF0aW9uID0geyBzZXR0bGVSZWZ1bmQ6IHsgX190eXBlbmFtZT86ICdSZWZ1bmQnLCBpZDogc3RyaW5nLCBzdGF0ZTogc3RyaW5nLCBpdGVtczogbnVtYmVyLCBzaGlwcGluZzogbnVtYmVyLCBhZGp1c3RtZW50OiBudW1iZXIsIHRyYW5zYWN0aW9uSWQ/OiBzdHJpbmcgfCBudWxsLCBwYXltZW50SWQ6IHN0cmluZyB9IHwgeyBfX3R5cGVuYW1lPzogJ1JlZnVuZFN0YXRlVHJhbnNpdGlvbkVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9IH07XG5cbmV4cG9ydCB0eXBlIEdldE9yZGVySGlzdG9yeVF1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8e1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgb3B0aW9ucz86IElucHV0TWF5YmU8SGlzdG9yeUVudHJ5TGlzdE9wdGlvbnM+O1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0T3JkZXJIaXN0b3J5UXVlcnkgPSB7IG9yZGVyPzogeyBfX3R5cGVuYW1lPzogJ09yZGVyJywgaWQ6IHN0cmluZywgaGlzdG9yeTogeyBfX3R5cGVuYW1lPzogJ0hpc3RvcnlFbnRyeUxpc3QnLCB0b3RhbEl0ZW1zOiBudW1iZXIsIGl0ZW1zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnSGlzdG9yeUVudHJ5JywgaWQ6IHN0cmluZywgdHlwZTogSGlzdG9yeUVudHJ5VHlwZSwgY3JlYXRlZEF0OiBhbnksIGlzUHVibGljOiBib29sZWFuLCBkYXRhOiBhbnksIGFkbWluaXN0cmF0b3I/OiB7IF9fdHlwZW5hbWU/OiAnQWRtaW5pc3RyYXRvcicsIGlkOiBzdHJpbmcsIGZpcnN0TmFtZTogc3RyaW5nLCBsYXN0TmFtZTogc3RyaW5nIH0gfCBudWxsIH0+IH0gfSB8IG51bGwgfTtcblxuZXhwb3J0IHR5cGUgQWRkTm90ZVRvT3JkZXJNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IEFkZE5vdGVUb09yZGVySW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBBZGROb3RlVG9PcmRlck11dGF0aW9uID0geyBhZGROb3RlVG9PcmRlcjogeyBfX3R5cGVuYW1lPzogJ09yZGVyJywgaWQ6IHN0cmluZyB9IH07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZU9yZGVyTm90ZU11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogVXBkYXRlT3JkZXJOb3RlSW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBVcGRhdGVPcmRlck5vdGVNdXRhdGlvbiA9IHsgdXBkYXRlT3JkZXJOb3RlOiB7IF9fdHlwZW5hbWU/OiAnSGlzdG9yeUVudHJ5JywgaWQ6IHN0cmluZywgZGF0YTogYW55LCBpc1B1YmxpYzogYm9vbGVhbiB9IH07XG5cbmV4cG9ydCB0eXBlIERlbGV0ZU9yZGVyTm90ZU11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIERlbGV0ZU9yZGVyTm90ZU11dGF0aW9uID0geyBkZWxldGVPcmRlck5vdGU6IHsgX190eXBlbmFtZT86ICdEZWxldGlvblJlc3BvbnNlJywgcmVzdWx0OiBEZWxldGlvblJlc3VsdCwgbWVzc2FnZT86IHN0cmluZyB8IG51bGwgfSB9O1xuXG5leHBvcnQgdHlwZSBUcmFuc2l0aW9uT3JkZXJUb1N0YXRlTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xuICBzdGF0ZTogU2NhbGFyc1snU3RyaW5nJ107XG59PjtcblxuXG5leHBvcnQgdHlwZSBUcmFuc2l0aW9uT3JkZXJUb1N0YXRlTXV0YXRpb24gPSB7IHRyYW5zaXRpb25PcmRlclRvU3RhdGU/OiB7IF9fdHlwZW5hbWU/OiAnT3JkZXInLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG9yZGVyUGxhY2VkQXQ/OiBhbnkgfCBudWxsLCBjb2RlOiBzdHJpbmcsIHN0YXRlOiBzdHJpbmcsIG5leHRTdGF0ZXM6IEFycmF5PHN0cmluZz4sIHRvdGFsOiBudW1iZXIsIGN1cnJlbmN5Q29kZTogQ3VycmVuY3lDb2RlLCBjdXN0b21lcj86IHsgX190eXBlbmFtZT86ICdDdXN0b21lcicsIGlkOiBzdHJpbmcsIGZpcnN0TmFtZTogc3RyaW5nLCBsYXN0TmFtZTogc3RyaW5nIH0gfCBudWxsLCBzaGlwcGluZ0xpbmVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU2hpcHBpbmdMaW5lJywgc2hpcHBpbmdNZXRob2Q6IHsgX190eXBlbmFtZT86ICdTaGlwcGluZ01ldGhvZCcsIG5hbWU6IHN0cmluZyB9IH0+IH0gfCB7IF9fdHlwZW5hbWU/OiAnT3JkZXJTdGF0ZVRyYW5zaXRpb25FcnJvcicsIHRyYW5zaXRpb25FcnJvcjogc3RyaW5nLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfCBudWxsIH07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZU9yZGVyQ3VzdG9tRmllbGRzTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlucHV0OiBVcGRhdGVPcmRlcklucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgVXBkYXRlT3JkZXJDdXN0b21GaWVsZHNNdXRhdGlvbiA9IHsgc2V0T3JkZXJDdXN0b21GaWVsZHM/OiB7IF9fdHlwZW5hbWU/OiAnT3JkZXInLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG9yZGVyUGxhY2VkQXQ/OiBhbnkgfCBudWxsLCBjb2RlOiBzdHJpbmcsIHN0YXRlOiBzdHJpbmcsIG5leHRTdGF0ZXM6IEFycmF5PHN0cmluZz4sIHRvdGFsOiBudW1iZXIsIGN1cnJlbmN5Q29kZTogQ3VycmVuY3lDb2RlLCBjdXN0b21lcj86IHsgX190eXBlbmFtZT86ICdDdXN0b21lcicsIGlkOiBzdHJpbmcsIGZpcnN0TmFtZTogc3RyaW5nLCBsYXN0TmFtZTogc3RyaW5nIH0gfCBudWxsLCBzaGlwcGluZ0xpbmVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU2hpcHBpbmdMaW5lJywgc2hpcHBpbmdNZXRob2Q6IHsgX190eXBlbmFtZT86ICdTaGlwcGluZ01ldGhvZCcsIG5hbWU6IHN0cmluZyB9IH0+IH0gfCBudWxsIH07XG5cbmV4cG9ydCB0eXBlIFRyYW5zaXRpb25GdWxmaWxsbWVudFRvU3RhdGVNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIHN0YXRlOiBTY2FsYXJzWydTdHJpbmcnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFRyYW5zaXRpb25GdWxmaWxsbWVudFRvU3RhdGVNdXRhdGlvbiA9IHsgdHJhbnNpdGlvbkZ1bGZpbGxtZW50VG9TdGF0ZTogeyBfX3R5cGVuYW1lPzogJ0Z1bGZpbGxtZW50JywgaWQ6IHN0cmluZywgc3RhdGU6IHN0cmluZywgbmV4dFN0YXRlczogQXJyYXk8c3RyaW5nPiwgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBtZXRob2Q6IHN0cmluZywgdHJhY2tpbmdDb2RlPzogc3RyaW5nIHwgbnVsbCwgb3JkZXJJdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ09yZGVySXRlbScsIGlkOiBzdHJpbmcgfT4gfSB8IHsgX190eXBlbmFtZT86ICdGdWxmaWxsbWVudFN0YXRlVHJhbnNpdGlvbkVycm9yJywgdHJhbnNpdGlvbkVycm9yOiBzdHJpbmcsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfSB9O1xuXG5leHBvcnQgdHlwZSBHZXRPcmRlclN1bW1hcnlRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgc3RhcnQ6IFNjYWxhcnNbJ0RhdGVUaW1lJ107XG4gIGVuZDogU2NhbGFyc1snRGF0ZVRpbWUnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIEdldE9yZGVyU3VtbWFyeVF1ZXJ5ID0geyBvcmRlcnM6IHsgX190eXBlbmFtZT86ICdPcmRlckxpc3QnLCB0b3RhbEl0ZW1zOiBudW1iZXIsIGl0ZW1zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnT3JkZXInLCBpZDogc3RyaW5nLCB0b3RhbDogbnVtYmVyLCBjdXJyZW5jeUNvZGU6IEN1cnJlbmN5Q29kZSB9PiB9IH07XG5cbmV4cG9ydCB0eXBlIE1vZGlmeU9yZGVyTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlucHV0OiBNb2RpZnlPcmRlcklucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgTW9kaWZ5T3JkZXJNdXRhdGlvbiA9IHsgbW9kaWZ5T3JkZXI6IHsgX190eXBlbmFtZT86ICdDb3Vwb25Db2RlRXhwaXJlZEVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9IHwgeyBfX3R5cGVuYW1lPzogJ0NvdXBvbkNvZGVJbnZhbGlkRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfCB7IF9fdHlwZW5hbWU/OiAnQ291cG9uQ29kZUxpbWl0RXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfCB7IF9fdHlwZW5hbWU/OiAnSW5zdWZmaWNpZW50U3RvY2tFcnJvcicsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfSB8IHsgX190eXBlbmFtZT86ICdOZWdhdGl2ZVF1YW50aXR5RXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfCB7IF9fdHlwZW5hbWU/OiAnTm9DaGFuZ2VzU3BlY2lmaWVkRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfCB7IF9fdHlwZW5hbWU/OiAnT3JkZXInLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgc3RhdGU6IHN0cmluZywgbmV4dFN0YXRlczogQXJyYXk8c3RyaW5nPiwgYWN0aXZlOiBib29sZWFuLCBjb3Vwb25Db2RlczogQXJyYXk8c3RyaW5nPiwgc3ViVG90YWw6IG51bWJlciwgc3ViVG90YWxXaXRoVGF4OiBudW1iZXIsIHRvdGFsOiBudW1iZXIsIHRvdGFsV2l0aFRheDogbnVtYmVyLCBjdXJyZW5jeUNvZGU6IEN1cnJlbmN5Q29kZSwgc2hpcHBpbmc6IG51bWJlciwgc2hpcHBpbmdXaXRoVGF4OiBudW1iZXIsIGN1c3RvbWVyPzogeyBfX3R5cGVuYW1lPzogJ0N1c3RvbWVyJywgaWQ6IHN0cmluZywgZmlyc3ROYW1lOiBzdHJpbmcsIGxhc3ROYW1lOiBzdHJpbmcgfSB8IG51bGwsIGxpbmVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnT3JkZXJMaW5lJywgaWQ6IHN0cmluZywgdW5pdFByaWNlOiBudW1iZXIsIHVuaXRQcmljZVdpdGhUYXg6IG51bWJlciwgcHJvcmF0ZWRVbml0UHJpY2U6IG51bWJlciwgcHJvcmF0ZWRVbml0UHJpY2VXaXRoVGF4OiBudW1iZXIsIHF1YW50aXR5OiBudW1iZXIsIGxpbmVQcmljZTogbnVtYmVyLCBsaW5lVGF4OiBudW1iZXIsIGxpbmVQcmljZVdpdGhUYXg6IG51bWJlciwgZGlzY291bnRlZExpbmVQcmljZTogbnVtYmVyLCBkaXNjb3VudGVkTGluZVByaWNlV2l0aFRheDogbnVtYmVyLCBmZWF0dXJlZEFzc2V0PzogeyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgcHJldmlldzogc3RyaW5nIH0gfCBudWxsLCBwcm9kdWN0VmFyaWFudDogeyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RWYXJpYW50JywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nLCBza3U6IHN0cmluZywgdHJhY2tJbnZlbnRvcnk6IEdsb2JhbEZsYWcsIHN0b2NrT25IYW5kOiBudW1iZXIgfSwgZGlzY291bnRzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnRGlzY291bnQnLCBhZGp1c3RtZW50U291cmNlOiBzdHJpbmcsIGFtb3VudDogbnVtYmVyLCBhbW91bnRXaXRoVGF4OiBudW1iZXIsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIHR5cGU6IEFkanVzdG1lbnRUeXBlIH0+LCBpdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ09yZGVySXRlbScsIGlkOiBzdHJpbmcsIHVuaXRQcmljZTogbnVtYmVyLCB1bml0UHJpY2VXaXRoVGF4OiBudW1iZXIsIHRheFJhdGU6IG51bWJlciwgcmVmdW5kSWQ/OiBzdHJpbmcgfCBudWxsLCBjYW5jZWxsZWQ6IGJvb2xlYW4sIGZ1bGZpbGxtZW50PzogeyBfX3R5cGVuYW1lPzogJ0Z1bGZpbGxtZW50JywgaWQ6IHN0cmluZywgc3RhdGU6IHN0cmluZywgbmV4dFN0YXRlczogQXJyYXk8c3RyaW5nPiwgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBtZXRob2Q6IHN0cmluZywgdHJhY2tpbmdDb2RlPzogc3RyaW5nIHwgbnVsbCwgb3JkZXJJdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ09yZGVySXRlbScsIGlkOiBzdHJpbmcgfT4gfSB8IG51bGwgfT4gfT4sIHN1cmNoYXJnZXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdTdXJjaGFyZ2UnLCBpZDogc3RyaW5nLCBza3U/OiBzdHJpbmcgfCBudWxsLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBwcmljZTogbnVtYmVyLCBwcmljZVdpdGhUYXg6IG51bWJlciwgdGF4UmF0ZTogbnVtYmVyIH0+LCBkaXNjb3VudHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdEaXNjb3VudCcsIGFkanVzdG1lbnRTb3VyY2U6IHN0cmluZywgYW1vdW50OiBudW1iZXIsIGFtb3VudFdpdGhUYXg6IG51bWJlciwgZGVzY3JpcHRpb246IHN0cmluZywgdHlwZTogQWRqdXN0bWVudFR5cGUgfT4sIHByb21vdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9tb3Rpb24nLCBpZDogc3RyaW5nLCBjb3Vwb25Db2RlPzogc3RyaW5nIHwgbnVsbCB9Piwgc2hpcHBpbmdMaW5lczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1NoaXBwaW5nTGluZScsIHNoaXBwaW5nTWV0aG9kOiB7IF9fdHlwZW5hbWU/OiAnU2hpcHBpbmdNZXRob2QnLCBpZDogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgZnVsZmlsbG1lbnRIYW5kbGVyQ29kZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nIH0gfT4sIHRheFN1bW1hcnk6IEFycmF5PHsgX190eXBlbmFtZT86ICdPcmRlclRheFN1bW1hcnknLCBkZXNjcmlwdGlvbjogc3RyaW5nLCB0YXhCYXNlOiBudW1iZXIsIHRheFJhdGU6IG51bWJlciwgdGF4VG90YWw6IG51bWJlciB9Piwgc2hpcHBpbmdBZGRyZXNzPzogeyBfX3R5cGVuYW1lPzogJ09yZGVyQWRkcmVzcycsIGZ1bGxOYW1lPzogc3RyaW5nIHwgbnVsbCwgY29tcGFueT86IHN0cmluZyB8IG51bGwsIHN0cmVldExpbmUxPzogc3RyaW5nIHwgbnVsbCwgc3RyZWV0TGluZTI/OiBzdHJpbmcgfCBudWxsLCBjaXR5Pzogc3RyaW5nIHwgbnVsbCwgcHJvdmluY2U/OiBzdHJpbmcgfCBudWxsLCBwb3N0YWxDb2RlPzogc3RyaW5nIHwgbnVsbCwgY291bnRyeT86IHN0cmluZyB8IG51bGwsIGNvdW50cnlDb2RlPzogc3RyaW5nIHwgbnVsbCwgcGhvbmVOdW1iZXI/OiBzdHJpbmcgfCBudWxsIH0gfCBudWxsLCBiaWxsaW5nQWRkcmVzcz86IHsgX190eXBlbmFtZT86ICdPcmRlckFkZHJlc3MnLCBmdWxsTmFtZT86IHN0cmluZyB8IG51bGwsIGNvbXBhbnk/OiBzdHJpbmcgfCBudWxsLCBzdHJlZXRMaW5lMT86IHN0cmluZyB8IG51bGwsIHN0cmVldExpbmUyPzogc3RyaW5nIHwgbnVsbCwgY2l0eT86IHN0cmluZyB8IG51bGwsIHByb3ZpbmNlPzogc3RyaW5nIHwgbnVsbCwgcG9zdGFsQ29kZT86IHN0cmluZyB8IG51bGwsIGNvdW50cnk/OiBzdHJpbmcgfCBudWxsLCBjb3VudHJ5Q29kZT86IHN0cmluZyB8IG51bGwsIHBob25lTnVtYmVyPzogc3RyaW5nIHwgbnVsbCB9IHwgbnVsbCwgcGF5bWVudHM/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUGF5bWVudCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB0cmFuc2FjdGlvbklkPzogc3RyaW5nIHwgbnVsbCwgYW1vdW50OiBudW1iZXIsIG1ldGhvZDogc3RyaW5nLCBzdGF0ZTogc3RyaW5nLCBuZXh0U3RhdGVzOiBBcnJheTxzdHJpbmc+LCBlcnJvck1lc3NhZ2U/OiBzdHJpbmcgfCBudWxsLCBtZXRhZGF0YT86IGFueSB8IG51bGwsIHJlZnVuZHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdSZWZ1bmQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgc3RhdGU6IHN0cmluZywgaXRlbXM6IG51bWJlciwgYWRqdXN0bWVudDogbnVtYmVyLCB0b3RhbDogbnVtYmVyLCBwYXltZW50SWQ6IHN0cmluZywgcmVhc29uPzogc3RyaW5nIHwgbnVsbCwgdHJhbnNhY3Rpb25JZD86IHN0cmluZyB8IG51bGwsIG1ldGhvZD86IHN0cmluZyB8IG51bGwsIG1ldGFkYXRhPzogYW55IHwgbnVsbCwgb3JkZXJJdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ09yZGVySXRlbScsIGlkOiBzdHJpbmcgfT4gfT4gfT4gfCBudWxsLCBmdWxmaWxsbWVudHM/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnRnVsZmlsbG1lbnQnLCBpZDogc3RyaW5nLCBzdGF0ZTogc3RyaW5nLCBuZXh0U3RhdGVzOiBBcnJheTxzdHJpbmc+LCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG1ldGhvZDogc3RyaW5nLCB0cmFja2luZ0NvZGU/OiBzdHJpbmcgfCBudWxsLCBvcmRlckl0ZW1zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnT3JkZXJJdGVtJywgaWQ6IHN0cmluZyB9PiB9PiB8IG51bGwsIG1vZGlmaWNhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdPcmRlck1vZGlmaWNhdGlvbicsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCBpc1NldHRsZWQ6IGJvb2xlYW4sIHByaWNlQ2hhbmdlOiBudW1iZXIsIG5vdGU6IHN0cmluZywgcGF5bWVudD86IHsgX190eXBlbmFtZT86ICdQYXltZW50JywgaWQ6IHN0cmluZywgYW1vdW50OiBudW1iZXIgfSB8IG51bGwsIG9yZGVySXRlbXM/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnT3JkZXJJdGVtJywgaWQ6IHN0cmluZyB9PiB8IG51bGwsIHJlZnVuZD86IHsgX190eXBlbmFtZT86ICdSZWZ1bmQnLCBpZDogc3RyaW5nLCBwYXltZW50SWQ6IHN0cmluZywgdG90YWw6IG51bWJlciB9IHwgbnVsbCwgc3VyY2hhcmdlcz86IEFycmF5PHsgX190eXBlbmFtZT86ICdTdXJjaGFyZ2UnLCBpZDogc3RyaW5nIH0+IHwgbnVsbCB9PiB9IHwgeyBfX3R5cGVuYW1lPzogJ09yZGVyTGltaXRFcnJvcicsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfSB8IHsgX190eXBlbmFtZT86ICdPcmRlck1vZGlmaWNhdGlvblN0YXRlRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfCB7IF9fdHlwZW5hbWU/OiAnUGF5bWVudE1ldGhvZE1pc3NpbmdFcnJvcicsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfSB8IHsgX190eXBlbmFtZT86ICdSZWZ1bmRQYXltZW50SWRNaXNzaW5nRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfTtcblxuZXhwb3J0IHR5cGUgQWRkTWFudWFsUGF5bWVudE11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogTWFudWFsUGF5bWVudElucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgQWRkTWFudWFsUGF5bWVudE11dGF0aW9uID0geyBhZGRNYW51YWxQYXltZW50VG9PcmRlcjogeyBfX3R5cGVuYW1lPzogJ01hbnVhbFBheW1lbnRTdGF0ZUVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9IHwgeyBfX3R5cGVuYW1lPzogJ09yZGVyJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBjb2RlOiBzdHJpbmcsIHN0YXRlOiBzdHJpbmcsIG5leHRTdGF0ZXM6IEFycmF5PHN0cmluZz4sIGFjdGl2ZTogYm9vbGVhbiwgY291cG9uQ29kZXM6IEFycmF5PHN0cmluZz4sIHN1YlRvdGFsOiBudW1iZXIsIHN1YlRvdGFsV2l0aFRheDogbnVtYmVyLCB0b3RhbDogbnVtYmVyLCB0b3RhbFdpdGhUYXg6IG51bWJlciwgY3VycmVuY3lDb2RlOiBDdXJyZW5jeUNvZGUsIHNoaXBwaW5nOiBudW1iZXIsIHNoaXBwaW5nV2l0aFRheDogbnVtYmVyLCBjdXN0b21lcj86IHsgX190eXBlbmFtZT86ICdDdXN0b21lcicsIGlkOiBzdHJpbmcsIGZpcnN0TmFtZTogc3RyaW5nLCBsYXN0TmFtZTogc3RyaW5nIH0gfCBudWxsLCBsaW5lczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ09yZGVyTGluZScsIGlkOiBzdHJpbmcsIHVuaXRQcmljZTogbnVtYmVyLCB1bml0UHJpY2VXaXRoVGF4OiBudW1iZXIsIHByb3JhdGVkVW5pdFByaWNlOiBudW1iZXIsIHByb3JhdGVkVW5pdFByaWNlV2l0aFRheDogbnVtYmVyLCBxdWFudGl0eTogbnVtYmVyLCBsaW5lUHJpY2U6IG51bWJlciwgbGluZVRheDogbnVtYmVyLCBsaW5lUHJpY2VXaXRoVGF4OiBudW1iZXIsIGRpc2NvdW50ZWRMaW5lUHJpY2U6IG51bWJlciwgZGlzY291bnRlZExpbmVQcmljZVdpdGhUYXg6IG51bWJlciwgZmVhdHVyZWRBc3NldD86IHsgX190eXBlbmFtZT86ICdBc3NldCcsIHByZXZpZXc6IHN0cmluZyB9IHwgbnVsbCwgcHJvZHVjdFZhcmlhbnQ6IHsgX190eXBlbmFtZT86ICdQcm9kdWN0VmFyaWFudCcsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgc2t1OiBzdHJpbmcsIHRyYWNrSW52ZW50b3J5OiBHbG9iYWxGbGFnLCBzdG9ja09uSGFuZDogbnVtYmVyIH0sIGRpc2NvdW50czogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Rpc2NvdW50JywgYWRqdXN0bWVudFNvdXJjZTogc3RyaW5nLCBhbW91bnQ6IG51bWJlciwgYW1vdW50V2l0aFRheDogbnVtYmVyLCBkZXNjcmlwdGlvbjogc3RyaW5nLCB0eXBlOiBBZGp1c3RtZW50VHlwZSB9PiwgaXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdPcmRlckl0ZW0nLCBpZDogc3RyaW5nLCB1bml0UHJpY2U6IG51bWJlciwgdW5pdFByaWNlV2l0aFRheDogbnVtYmVyLCB0YXhSYXRlOiBudW1iZXIsIHJlZnVuZElkPzogc3RyaW5nIHwgbnVsbCwgY2FuY2VsbGVkOiBib29sZWFuLCBmdWxmaWxsbWVudD86IHsgX190eXBlbmFtZT86ICdGdWxmaWxsbWVudCcsIGlkOiBzdHJpbmcsIHN0YXRlOiBzdHJpbmcsIG5leHRTdGF0ZXM6IEFycmF5PHN0cmluZz4sIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbWV0aG9kOiBzdHJpbmcsIHRyYWNraW5nQ29kZT86IHN0cmluZyB8IG51bGwsIG9yZGVySXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdPcmRlckl0ZW0nLCBpZDogc3RyaW5nIH0+IH0gfCBudWxsIH0+IH0+LCBzdXJjaGFyZ2VzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU3VyY2hhcmdlJywgaWQ6IHN0cmluZywgc2t1Pzogc3RyaW5nIHwgbnVsbCwgZGVzY3JpcHRpb246IHN0cmluZywgcHJpY2U6IG51bWJlciwgcHJpY2VXaXRoVGF4OiBudW1iZXIsIHRheFJhdGU6IG51bWJlciB9PiwgZGlzY291bnRzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnRGlzY291bnQnLCBhZGp1c3RtZW50U291cmNlOiBzdHJpbmcsIGFtb3VudDogbnVtYmVyLCBhbW91bnRXaXRoVGF4OiBudW1iZXIsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIHR5cGU6IEFkanVzdG1lbnRUeXBlIH0+LCBwcm9tb3Rpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvbW90aW9uJywgaWQ6IHN0cmluZywgY291cG9uQ29kZT86IHN0cmluZyB8IG51bGwgfT4sIHNoaXBwaW5nTGluZXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdTaGlwcGluZ0xpbmUnLCBzaGlwcGluZ01ldGhvZDogeyBfX3R5cGVuYW1lPzogJ1NoaXBwaW5nTWV0aG9kJywgaWQ6IHN0cmluZywgY29kZTogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIGZ1bGZpbGxtZW50SGFuZGxlckNvZGU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZyB9IH0+LCB0YXhTdW1tYXJ5OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnT3JkZXJUYXhTdW1tYXJ5JywgZGVzY3JpcHRpb246IHN0cmluZywgdGF4QmFzZTogbnVtYmVyLCB0YXhSYXRlOiBudW1iZXIsIHRheFRvdGFsOiBudW1iZXIgfT4sIHNoaXBwaW5nQWRkcmVzcz86IHsgX190eXBlbmFtZT86ICdPcmRlckFkZHJlc3MnLCBmdWxsTmFtZT86IHN0cmluZyB8IG51bGwsIGNvbXBhbnk/OiBzdHJpbmcgfCBudWxsLCBzdHJlZXRMaW5lMT86IHN0cmluZyB8IG51bGwsIHN0cmVldExpbmUyPzogc3RyaW5nIHwgbnVsbCwgY2l0eT86IHN0cmluZyB8IG51bGwsIHByb3ZpbmNlPzogc3RyaW5nIHwgbnVsbCwgcG9zdGFsQ29kZT86IHN0cmluZyB8IG51bGwsIGNvdW50cnk/OiBzdHJpbmcgfCBudWxsLCBjb3VudHJ5Q29kZT86IHN0cmluZyB8IG51bGwsIHBob25lTnVtYmVyPzogc3RyaW5nIHwgbnVsbCB9IHwgbnVsbCwgYmlsbGluZ0FkZHJlc3M/OiB7IF9fdHlwZW5hbWU/OiAnT3JkZXJBZGRyZXNzJywgZnVsbE5hbWU/OiBzdHJpbmcgfCBudWxsLCBjb21wYW55Pzogc3RyaW5nIHwgbnVsbCwgc3RyZWV0TGluZTE/OiBzdHJpbmcgfCBudWxsLCBzdHJlZXRMaW5lMj86IHN0cmluZyB8IG51bGwsIGNpdHk/OiBzdHJpbmcgfCBudWxsLCBwcm92aW5jZT86IHN0cmluZyB8IG51bGwsIHBvc3RhbENvZGU/OiBzdHJpbmcgfCBudWxsLCBjb3VudHJ5Pzogc3RyaW5nIHwgbnVsbCwgY291bnRyeUNvZGU/OiBzdHJpbmcgfCBudWxsLCBwaG9uZU51bWJlcj86IHN0cmluZyB8IG51bGwgfSB8IG51bGwsIHBheW1lbnRzPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1BheW1lbnQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdHJhbnNhY3Rpb25JZD86IHN0cmluZyB8IG51bGwsIGFtb3VudDogbnVtYmVyLCBtZXRob2Q6IHN0cmluZywgc3RhdGU6IHN0cmluZywgbmV4dFN0YXRlczogQXJyYXk8c3RyaW5nPiwgZXJyb3JNZXNzYWdlPzogc3RyaW5nIHwgbnVsbCwgbWV0YWRhdGE/OiBhbnkgfCBudWxsLCByZWZ1bmRzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUmVmdW5kJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHN0YXRlOiBzdHJpbmcsIGl0ZW1zOiBudW1iZXIsIGFkanVzdG1lbnQ6IG51bWJlciwgdG90YWw6IG51bWJlciwgcGF5bWVudElkOiBzdHJpbmcsIHJlYXNvbj86IHN0cmluZyB8IG51bGwsIHRyYW5zYWN0aW9uSWQ/OiBzdHJpbmcgfCBudWxsLCBtZXRob2Q/OiBzdHJpbmcgfCBudWxsLCBtZXRhZGF0YT86IGFueSB8IG51bGwsIG9yZGVySXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdPcmRlckl0ZW0nLCBpZDogc3RyaW5nIH0+IH0+IH0+IHwgbnVsbCwgZnVsZmlsbG1lbnRzPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Z1bGZpbGxtZW50JywgaWQ6IHN0cmluZywgc3RhdGU6IHN0cmluZywgbmV4dFN0YXRlczogQXJyYXk8c3RyaW5nPiwgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBtZXRob2Q6IHN0cmluZywgdHJhY2tpbmdDb2RlPzogc3RyaW5nIHwgbnVsbCwgb3JkZXJJdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ09yZGVySXRlbScsIGlkOiBzdHJpbmcgfT4gfT4gfCBudWxsLCBtb2RpZmljYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnT3JkZXJNb2RpZmljYXRpb24nLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgaXNTZXR0bGVkOiBib29sZWFuLCBwcmljZUNoYW5nZTogbnVtYmVyLCBub3RlOiBzdHJpbmcsIHBheW1lbnQ/OiB7IF9fdHlwZW5hbWU/OiAnUGF5bWVudCcsIGlkOiBzdHJpbmcsIGFtb3VudDogbnVtYmVyIH0gfCBudWxsLCBvcmRlckl0ZW1zPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ09yZGVySXRlbScsIGlkOiBzdHJpbmcgfT4gfCBudWxsLCByZWZ1bmQ/OiB7IF9fdHlwZW5hbWU/OiAnUmVmdW5kJywgaWQ6IHN0cmluZywgcGF5bWVudElkOiBzdHJpbmcsIHRvdGFsOiBudW1iZXIgfSB8IG51bGwsIHN1cmNoYXJnZXM/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU3VyY2hhcmdlJywgaWQ6IHN0cmluZyB9PiB8IG51bGwgfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBBc3NldEZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGZpbGVTaXplOiBudW1iZXIsIG1pbWVUeXBlOiBzdHJpbmcsIHR5cGU6IEFzc2V0VHlwZSwgcHJldmlldzogc3RyaW5nLCBzb3VyY2U6IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH07XG5cbmV4cG9ydCB0eXBlIFRhZ0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ1RhZycsIGlkOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfTtcblxuZXhwb3J0IHR5cGUgUHJvZHVjdE9wdGlvbkdyb3VwRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbkdyb3VwJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBjb2RlOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcsIHRyYW5zbGF0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RPcHRpb25Hcm91cFRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZyB9PiB9O1xuXG5leHBvcnQgdHlwZSBQcm9kdWN0T3B0aW9uRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbicsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nLCBncm91cElkOiBzdHJpbmcsIHRyYW5zbGF0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RPcHRpb25UcmFuc2xhdGlvbicsIGlkOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcgfT4gfTtcblxuZXhwb3J0IHR5cGUgUHJvZHVjdFZhcmlhbnRGcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdQcm9kdWN0VmFyaWFudCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgZW5hYmxlZDogYm9vbGVhbiwgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgcHJpY2U6IG51bWJlciwgY3VycmVuY3lDb2RlOiBDdXJyZW5jeUNvZGUsIHByaWNlV2l0aFRheDogbnVtYmVyLCBzdG9ja09uSGFuZDogbnVtYmVyLCBzdG9ja0FsbG9jYXRlZDogbnVtYmVyLCB0cmFja0ludmVudG9yeTogR2xvYmFsRmxhZywgb3V0T2ZTdG9ja1RocmVzaG9sZDogbnVtYmVyLCB1c2VHbG9iYWxPdXRPZlN0b2NrVGhyZXNob2xkOiBib29sZWFuLCBza3U6IHN0cmluZywgdGF4UmF0ZUFwcGxpZWQ6IHsgX190eXBlbmFtZT86ICdUYXhSYXRlJywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nLCB2YWx1ZTogbnVtYmVyIH0sIHRheENhdGVnb3J5OiB7IF9fdHlwZW5hbWU/OiAnVGF4Q2F0ZWdvcnknLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfSwgb3B0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RPcHRpb24nLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgZ3JvdXBJZDogc3RyaW5nLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uVHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+IH0+LCBmYWNldFZhbHVlczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0ZhY2V0VmFsdWUnLCBpZDogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgZmFjZXQ6IHsgX190eXBlbmFtZT86ICdGYWNldCcsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9IH0+LCBmZWF0dXJlZEFzc2V0PzogeyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGZpbGVTaXplOiBudW1iZXIsIG1pbWVUeXBlOiBzdHJpbmcsIHR5cGU6IEFzc2V0VHlwZSwgcHJldmlldzogc3RyaW5nLCBzb3VyY2U6IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0gfCBudWxsLCBhc3NldHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdBc3NldCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBmaWxlU2l6ZTogbnVtYmVyLCBtaW1lVHlwZTogc3RyaW5nLCB0eXBlOiBBc3NldFR5cGUsIHByZXZpZXc6IHN0cmluZywgc291cmNlOiBzdHJpbmcsIHdpZHRoOiBudW1iZXIsIGhlaWdodDogbnVtYmVyLCBmb2NhbFBvaW50PzogeyBfX3R5cGVuYW1lPzogJ0Nvb3JkaW5hdGUnLCB4OiBudW1iZXIsIHk6IG51bWJlciB9IHwgbnVsbCB9PiwgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdFZhcmlhbnRUcmFuc2xhdGlvbicsIGlkOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcgfT4sIGNoYW5uZWxzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZyB9PiB9O1xuXG5leHBvcnQgdHlwZSBQcm9kdWN0RGV0YWlsRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgZW5hYmxlZDogYm9vbGVhbiwgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgc2x1Zzogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBmZWF0dXJlZEFzc2V0PzogeyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGZpbGVTaXplOiBudW1iZXIsIG1pbWVUeXBlOiBzdHJpbmcsIHR5cGU6IEFzc2V0VHlwZSwgcHJldmlldzogc3RyaW5nLCBzb3VyY2U6IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0gfCBudWxsLCBhc3NldHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdBc3NldCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBmaWxlU2l6ZTogbnVtYmVyLCBtaW1lVHlwZTogc3RyaW5nLCB0eXBlOiBBc3NldFR5cGUsIHByZXZpZXc6IHN0cmluZywgc291cmNlOiBzdHJpbmcsIHdpZHRoOiBudW1iZXIsIGhlaWdodDogbnVtYmVyLCBmb2NhbFBvaW50PzogeyBfX3R5cGVuYW1lPzogJ0Nvb3JkaW5hdGUnLCB4OiBudW1iZXIsIHk6IG51bWJlciB9IHwgbnVsbCB9PiwgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdFRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgc2x1Zzogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nIH0+LCBvcHRpb25Hcm91cHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uR3JvdXAnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbkdyb3VwVHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+IH0+LCBmYWNldFZhbHVlczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0ZhY2V0VmFsdWUnLCBpZDogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgZmFjZXQ6IHsgX190eXBlbmFtZT86ICdGYWNldCcsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9IH0+LCBjaGFubmVsczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NoYW5uZWwnLCBpZDogc3RyaW5nLCBjb2RlOiBzdHJpbmcgfT4gfTtcblxuZXhwb3J0IHR5cGUgUHJvZHVjdE9wdGlvbkdyb3VwV2l0aE9wdGlvbnNGcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uR3JvdXAnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBjb2RlOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbkdyb3VwVHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfT4sIG9wdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgY29kZTogc3RyaW5nLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uVHJhbnNsYXRpb24nLCBuYW1lOiBzdHJpbmcgfT4gfT4gfTtcblxuZXhwb3J0IHR5cGUgVXBkYXRlUHJvZHVjdE11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogVXBkYXRlUHJvZHVjdElucHV0O1xuICB2YXJpYW50TGlzdE9wdGlvbnM/OiBJbnB1dE1heWJlPFByb2R1Y3RWYXJpYW50TGlzdE9wdGlvbnM+O1xufT47XG5cblxuZXhwb3J0IHR5cGUgVXBkYXRlUHJvZHVjdE11dGF0aW9uID0geyB1cGRhdGVQcm9kdWN0OiB7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgZW5hYmxlZDogYm9vbGVhbiwgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgc2x1Zzogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCB2YXJpYW50TGlzdDogeyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RWYXJpYW50TGlzdCcsIHRvdGFsSXRlbXM6IG51bWJlciwgaXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0VmFyaWFudCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgZW5hYmxlZDogYm9vbGVhbiwgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgcHJpY2U6IG51bWJlciwgY3VycmVuY3lDb2RlOiBDdXJyZW5jeUNvZGUsIHByaWNlV2l0aFRheDogbnVtYmVyLCBzdG9ja09uSGFuZDogbnVtYmVyLCBzdG9ja0FsbG9jYXRlZDogbnVtYmVyLCB0cmFja0ludmVudG9yeTogR2xvYmFsRmxhZywgb3V0T2ZTdG9ja1RocmVzaG9sZDogbnVtYmVyLCB1c2VHbG9iYWxPdXRPZlN0b2NrVGhyZXNob2xkOiBib29sZWFuLCBza3U6IHN0cmluZywgdGF4UmF0ZUFwcGxpZWQ6IHsgX190eXBlbmFtZT86ICdUYXhSYXRlJywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nLCB2YWx1ZTogbnVtYmVyIH0sIHRheENhdGVnb3J5OiB7IF9fdHlwZW5hbWU/OiAnVGF4Q2F0ZWdvcnknLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfSwgb3B0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RPcHRpb24nLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgZ3JvdXBJZDogc3RyaW5nLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uVHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+IH0+LCBmYWNldFZhbHVlczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0ZhY2V0VmFsdWUnLCBpZDogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgZmFjZXQ6IHsgX190eXBlbmFtZT86ICdGYWNldCcsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9IH0+LCBmZWF0dXJlZEFzc2V0PzogeyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGZpbGVTaXplOiBudW1iZXIsIG1pbWVUeXBlOiBzdHJpbmcsIHR5cGU6IEFzc2V0VHlwZSwgcHJldmlldzogc3RyaW5nLCBzb3VyY2U6IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0gfCBudWxsLCBhc3NldHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdBc3NldCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBmaWxlU2l6ZTogbnVtYmVyLCBtaW1lVHlwZTogc3RyaW5nLCB0eXBlOiBBc3NldFR5cGUsIHByZXZpZXc6IHN0cmluZywgc291cmNlOiBzdHJpbmcsIHdpZHRoOiBudW1iZXIsIGhlaWdodDogbnVtYmVyLCBmb2NhbFBvaW50PzogeyBfX3R5cGVuYW1lPzogJ0Nvb3JkaW5hdGUnLCB4OiBudW1iZXIsIHk6IG51bWJlciB9IHwgbnVsbCB9PiwgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdFZhcmlhbnRUcmFuc2xhdGlvbicsIGlkOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcgfT4sIGNoYW5uZWxzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZyB9PiB9PiB9LCBmZWF0dXJlZEFzc2V0PzogeyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGZpbGVTaXplOiBudW1iZXIsIG1pbWVUeXBlOiBzdHJpbmcsIHR5cGU6IEFzc2V0VHlwZSwgcHJldmlldzogc3RyaW5nLCBzb3VyY2U6IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0gfCBudWxsLCBhc3NldHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdBc3NldCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBmaWxlU2l6ZTogbnVtYmVyLCBtaW1lVHlwZTogc3RyaW5nLCB0eXBlOiBBc3NldFR5cGUsIHByZXZpZXc6IHN0cmluZywgc291cmNlOiBzdHJpbmcsIHdpZHRoOiBudW1iZXIsIGhlaWdodDogbnVtYmVyLCBmb2NhbFBvaW50PzogeyBfX3R5cGVuYW1lPzogJ0Nvb3JkaW5hdGUnLCB4OiBudW1iZXIsIHk6IG51bWJlciB9IHwgbnVsbCB9PiwgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdFRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgc2x1Zzogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nIH0+LCBvcHRpb25Hcm91cHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uR3JvdXAnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbkdyb3VwVHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+IH0+LCBmYWNldFZhbHVlczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0ZhY2V0VmFsdWUnLCBpZDogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgZmFjZXQ6IHsgX190eXBlbmFtZT86ICdGYWNldCcsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9IH0+LCBjaGFubmVsczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NoYW5uZWwnLCBpZDogc3RyaW5nLCBjb2RlOiBzdHJpbmcgfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVQcm9kdWN0TXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlucHV0OiBDcmVhdGVQcm9kdWN0SW5wdXQ7XG4gIHZhcmlhbnRMaXN0T3B0aW9ucz86IElucHV0TWF5YmU8UHJvZHVjdFZhcmlhbnRMaXN0T3B0aW9ucz47XG59PjtcblxuXG5leHBvcnQgdHlwZSBDcmVhdGVQcm9kdWN0TXV0YXRpb24gPSB7IGNyZWF0ZVByb2R1Y3Q6IHsgX190eXBlbmFtZT86ICdQcm9kdWN0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBlbmFibGVkOiBib29sZWFuLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nLCBzbHVnOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIHZhcmlhbnRMaXN0OiB7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdFZhcmlhbnRMaXN0JywgdG90YWxJdGVtczogbnVtYmVyLCBpdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RWYXJpYW50JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBlbmFibGVkOiBib29sZWFuLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nLCBwcmljZTogbnVtYmVyLCBjdXJyZW5jeUNvZGU6IEN1cnJlbmN5Q29kZSwgcHJpY2VXaXRoVGF4OiBudW1iZXIsIHN0b2NrT25IYW5kOiBudW1iZXIsIHN0b2NrQWxsb2NhdGVkOiBudW1iZXIsIHRyYWNrSW52ZW50b3J5OiBHbG9iYWxGbGFnLCBvdXRPZlN0b2NrVGhyZXNob2xkOiBudW1iZXIsIHVzZUdsb2JhbE91dE9mU3RvY2tUaHJlc2hvbGQ6IGJvb2xlYW4sIHNrdTogc3RyaW5nLCB0YXhSYXRlQXBwbGllZDogeyBfX3R5cGVuYW1lPzogJ1RheFJhdGUnLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIHZhbHVlOiBudW1iZXIgfSwgdGF4Q2F0ZWdvcnk6IHsgX190eXBlbmFtZT86ICdUYXhDYXRlZ29yeScsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9LCBvcHRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbicsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nLCBncm91cElkOiBzdHJpbmcsIHRyYW5zbGF0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RPcHRpb25UcmFuc2xhdGlvbicsIGlkOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcgfT4gfT4sIGZhY2V0VmFsdWVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnRmFjZXRWYWx1ZScsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCBmYWNldDogeyBfX3R5cGVuYW1lPzogJ0ZhY2V0JywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0gfT4sIGZlYXR1cmVkQXNzZXQ/OiB7IF9fdHlwZW5hbWU/OiAnQXNzZXQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgZmlsZVNpemU6IG51bWJlciwgbWltZVR5cGU6IHN0cmluZywgdHlwZTogQXNzZXRUeXBlLCBwcmV2aWV3OiBzdHJpbmcsIHNvdXJjZTogc3RyaW5nLCB3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlciwgZm9jYWxQb2ludD86IHsgX190eXBlbmFtZT86ICdDb29yZGluYXRlJywgeDogbnVtYmVyLCB5OiBudW1iZXIgfSB8IG51bGwgfSB8IG51bGwsIGFzc2V0czogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGZpbGVTaXplOiBudW1iZXIsIG1pbWVUeXBlOiBzdHJpbmcsIHR5cGU6IEFzc2V0VHlwZSwgcHJldmlldzogc3RyaW5nLCBzb3VyY2U6IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0+LCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0VmFyaWFudFRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZyB9PiwgY2hhbm5lbHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDaGFubmVsJywgaWQ6IHN0cmluZywgY29kZTogc3RyaW5nIH0+IH0+IH0sIGZlYXR1cmVkQXNzZXQ/OiB7IF9fdHlwZW5hbWU/OiAnQXNzZXQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgZmlsZVNpemU6IG51bWJlciwgbWltZVR5cGU6IHN0cmluZywgdHlwZTogQXNzZXRUeXBlLCBwcmV2aWV3OiBzdHJpbmcsIHNvdXJjZTogc3RyaW5nLCB3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlciwgZm9jYWxQb2ludD86IHsgX190eXBlbmFtZT86ICdDb29yZGluYXRlJywgeDogbnVtYmVyLCB5OiBudW1iZXIgfSB8IG51bGwgfSB8IG51bGwsIGFzc2V0czogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGZpbGVTaXplOiBudW1iZXIsIG1pbWVUeXBlOiBzdHJpbmcsIHR5cGU6IEFzc2V0VHlwZSwgcHJldmlldzogc3RyaW5nLCBzb3VyY2U6IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0+LCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0VHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nLCBzbHVnOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcgfT4sIG9wdGlvbkdyb3VwczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RPcHRpb25Hcm91cCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uR3JvdXBUcmFuc2xhdGlvbicsIGlkOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcgfT4gfT4sIGZhY2V0VmFsdWVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnRmFjZXRWYWx1ZScsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCBmYWNldDogeyBfX3R5cGVuYW1lPzogJ0ZhY2V0JywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0gfT4sIGNoYW5uZWxzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZyB9PiB9IH07XG5cbmV4cG9ydCB0eXBlIERlbGV0ZVByb2R1Y3RNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59PjtcblxuXG5leHBvcnQgdHlwZSBEZWxldGVQcm9kdWN0TXV0YXRpb24gPSB7IGRlbGV0ZVByb2R1Y3Q6IHsgX190eXBlbmFtZT86ICdEZWxldGlvblJlc3BvbnNlJywgcmVzdWx0OiBEZWxldGlvblJlc3VsdCwgbWVzc2FnZT86IHN0cmluZyB8IG51bGwgfSB9O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVQcm9kdWN0VmFyaWFudHNNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IEFycmF5PENyZWF0ZVByb2R1Y3RWYXJpYW50SW5wdXQ+IHwgQ3JlYXRlUHJvZHVjdFZhcmlhbnRJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIENyZWF0ZVByb2R1Y3RWYXJpYW50c011dGF0aW9uID0geyBjcmVhdGVQcm9kdWN0VmFyaWFudHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0VmFyaWFudCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgZW5hYmxlZDogYm9vbGVhbiwgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgcHJpY2U6IG51bWJlciwgY3VycmVuY3lDb2RlOiBDdXJyZW5jeUNvZGUsIHByaWNlV2l0aFRheDogbnVtYmVyLCBzdG9ja09uSGFuZDogbnVtYmVyLCBzdG9ja0FsbG9jYXRlZDogbnVtYmVyLCB0cmFja0ludmVudG9yeTogR2xvYmFsRmxhZywgb3V0T2ZTdG9ja1RocmVzaG9sZDogbnVtYmVyLCB1c2VHbG9iYWxPdXRPZlN0b2NrVGhyZXNob2xkOiBib29sZWFuLCBza3U6IHN0cmluZywgdGF4UmF0ZUFwcGxpZWQ6IHsgX190eXBlbmFtZT86ICdUYXhSYXRlJywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nLCB2YWx1ZTogbnVtYmVyIH0sIHRheENhdGVnb3J5OiB7IF9fdHlwZW5hbWU/OiAnVGF4Q2F0ZWdvcnknLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfSwgb3B0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RPcHRpb24nLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgZ3JvdXBJZDogc3RyaW5nLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uVHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+IH0+LCBmYWNldFZhbHVlczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0ZhY2V0VmFsdWUnLCBpZDogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgZmFjZXQ6IHsgX190eXBlbmFtZT86ICdGYWNldCcsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9IH0+LCBmZWF0dXJlZEFzc2V0PzogeyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGZpbGVTaXplOiBudW1iZXIsIG1pbWVUeXBlOiBzdHJpbmcsIHR5cGU6IEFzc2V0VHlwZSwgcHJldmlldzogc3RyaW5nLCBzb3VyY2U6IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0gfCBudWxsLCBhc3NldHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdBc3NldCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBmaWxlU2l6ZTogbnVtYmVyLCBtaW1lVHlwZTogc3RyaW5nLCB0eXBlOiBBc3NldFR5cGUsIHByZXZpZXc6IHN0cmluZywgc291cmNlOiBzdHJpbmcsIHdpZHRoOiBudW1iZXIsIGhlaWdodDogbnVtYmVyLCBmb2NhbFBvaW50PzogeyBfX3R5cGVuYW1lPzogJ0Nvb3JkaW5hdGUnLCB4OiBudW1iZXIsIHk6IG51bWJlciB9IHwgbnVsbCB9PiwgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdFZhcmlhbnRUcmFuc2xhdGlvbicsIGlkOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcgfT4sIGNoYW5uZWxzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZyB9PiB9IHwgbnVsbD4gfTtcblxuZXhwb3J0IHR5cGUgVXBkYXRlUHJvZHVjdFZhcmlhbnRzTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlucHV0OiBBcnJheTxVcGRhdGVQcm9kdWN0VmFyaWFudElucHV0PiB8IFVwZGF0ZVByb2R1Y3RWYXJpYW50SW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBVcGRhdGVQcm9kdWN0VmFyaWFudHNNdXRhdGlvbiA9IHsgdXBkYXRlUHJvZHVjdFZhcmlhbnRzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdFZhcmlhbnQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGVuYWJsZWQ6IGJvb2xlYW4sIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcsIHByaWNlOiBudW1iZXIsIGN1cnJlbmN5Q29kZTogQ3VycmVuY3lDb2RlLCBwcmljZVdpdGhUYXg6IG51bWJlciwgc3RvY2tPbkhhbmQ6IG51bWJlciwgc3RvY2tBbGxvY2F0ZWQ6IG51bWJlciwgdHJhY2tJbnZlbnRvcnk6IEdsb2JhbEZsYWcsIG91dE9mU3RvY2tUaHJlc2hvbGQ6IG51bWJlciwgdXNlR2xvYmFsT3V0T2ZTdG9ja1RocmVzaG9sZDogYm9vbGVhbiwgc2t1OiBzdHJpbmcsIHRheFJhdGVBcHBsaWVkOiB7IF9fdHlwZW5hbWU/OiAnVGF4UmF0ZScsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgdmFsdWU6IG51bWJlciB9LCB0YXhDYXRlZ29yeTogeyBfX3R5cGVuYW1lPzogJ1RheENhdGVnb3J5JywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0sIG9wdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBjb2RlOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcsIGdyb3VwSWQ6IHN0cmluZywgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvblRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZyB9PiB9PiwgZmFjZXRWYWx1ZXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdGYWNldFZhbHVlJywgaWQ6IHN0cmluZywgY29kZTogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIGZhY2V0OiB7IF9fdHlwZW5hbWU/OiAnRmFjZXQnLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfSB9PiwgZmVhdHVyZWRBc3NldD86IHsgX190eXBlbmFtZT86ICdBc3NldCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBmaWxlU2l6ZTogbnVtYmVyLCBtaW1lVHlwZTogc3RyaW5nLCB0eXBlOiBBc3NldFR5cGUsIHByZXZpZXc6IHN0cmluZywgc291cmNlOiBzdHJpbmcsIHdpZHRoOiBudW1iZXIsIGhlaWdodDogbnVtYmVyLCBmb2NhbFBvaW50PzogeyBfX3R5cGVuYW1lPzogJ0Nvb3JkaW5hdGUnLCB4OiBudW1iZXIsIHk6IG51bWJlciB9IHwgbnVsbCB9IHwgbnVsbCwgYXNzZXRzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQXNzZXQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgZmlsZVNpemU6IG51bWJlciwgbWltZVR5cGU6IHN0cmluZywgdHlwZTogQXNzZXRUeXBlLCBwcmV2aWV3OiBzdHJpbmcsIHNvdXJjZTogc3RyaW5nLCB3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlciwgZm9jYWxQb2ludD86IHsgX190eXBlbmFtZT86ICdDb29yZGluYXRlJywgeDogbnVtYmVyLCB5OiBudW1iZXIgfSB8IG51bGwgfT4sIHRyYW5zbGF0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RWYXJpYW50VHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+LCBjaGFubmVsczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NoYW5uZWwnLCBpZDogc3RyaW5nLCBjb2RlOiBzdHJpbmcgfT4gfSB8IG51bGw+IH07XG5cbmV4cG9ydCB0eXBlIENyZWF0ZVByb2R1Y3RPcHRpb25Hcm91cE11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogQ3JlYXRlUHJvZHVjdE9wdGlvbkdyb3VwSW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBDcmVhdGVQcm9kdWN0T3B0aW9uR3JvdXBNdXRhdGlvbiA9IHsgY3JlYXRlUHJvZHVjdE9wdGlvbkdyb3VwOiB7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbkdyb3VwJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgY29kZTogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIHRyYW5zbGF0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RPcHRpb25Hcm91cFRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0+LCBvcHRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbicsIGlkOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvblRyYW5zbGF0aW9uJywgbmFtZTogc3RyaW5nIH0+IH0+IH0gfTtcblxuZXhwb3J0IHR5cGUgR2V0UHJvZHVjdE9wdGlvbkdyb3VwUXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0UHJvZHVjdE9wdGlvbkdyb3VwUXVlcnkgPSB7IHByb2R1Y3RPcHRpb25Hcm91cD86IHsgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uR3JvdXAnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBjb2RlOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbkdyb3VwVHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfT4sIG9wdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgY29kZTogc3RyaW5nLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uVHJhbnNsYXRpb24nLCBuYW1lOiBzdHJpbmcgfT4gfT4gfSB8IG51bGwgfTtcblxuZXhwb3J0IHR5cGUgQWRkT3B0aW9uVG9Hcm91cE11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogQ3JlYXRlUHJvZHVjdE9wdGlvbklucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgQWRkT3B0aW9uVG9Hcm91cE11dGF0aW9uID0geyBjcmVhdGVQcm9kdWN0T3B0aW9uOiB7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbicsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIGdyb3VwSWQ6IHN0cmluZyB9IH07XG5cbmV4cG9ydCB0eXBlIEFkZE9wdGlvbkdyb3VwVG9Qcm9kdWN0TXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIHByb2R1Y3RJZDogU2NhbGFyc1snSUQnXTtcbiAgb3B0aW9uR3JvdXBJZDogU2NhbGFyc1snSUQnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIEFkZE9wdGlvbkdyb3VwVG9Qcm9kdWN0TXV0YXRpb24gPSB7IGFkZE9wdGlvbkdyb3VwVG9Qcm9kdWN0OiB7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgb3B0aW9uR3JvdXBzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbkdyb3VwJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBjb2RlOiBzdHJpbmcsIG9wdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBjb2RlOiBzdHJpbmcgfT4gfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBSZW1vdmVPcHRpb25Hcm91cEZyb21Qcm9kdWN0TXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIHByb2R1Y3RJZDogU2NhbGFyc1snSUQnXTtcbiAgb3B0aW9uR3JvdXBJZDogU2NhbGFyc1snSUQnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFJlbW92ZU9wdGlvbkdyb3VwRnJvbVByb2R1Y3RNdXRhdGlvbiA9IHsgcmVtb3ZlT3B0aW9uR3JvdXBGcm9tUHJvZHVjdDogeyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3QnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG9wdGlvbkdyb3VwczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RPcHRpb25Hcm91cCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCBvcHRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbicsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nIH0+IH0+IH0gfCB7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbkluVXNlRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfTtcblxuZXhwb3J0IHR5cGUgR2V0UHJvZHVjdFdpdGhWYXJpYW50c1F1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8e1xuICBpZDogU2NhbGFyc1snSUQnXTtcbiAgdmFyaWFudExpc3RPcHRpb25zPzogSW5wdXRNYXliZTxQcm9kdWN0VmFyaWFudExpc3RPcHRpb25zPjtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIEdldFByb2R1Y3RXaXRoVmFyaWFudHNRdWVyeSA9IHsgcHJvZHVjdD86IHsgX190eXBlbmFtZT86ICdQcm9kdWN0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBlbmFibGVkOiBib29sZWFuLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nLCBzbHVnOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIHZhcmlhbnRMaXN0OiB7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdFZhcmlhbnRMaXN0JywgdG90YWxJdGVtczogbnVtYmVyLCBpdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RWYXJpYW50JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBlbmFibGVkOiBib29sZWFuLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nLCBwcmljZTogbnVtYmVyLCBjdXJyZW5jeUNvZGU6IEN1cnJlbmN5Q29kZSwgcHJpY2VXaXRoVGF4OiBudW1iZXIsIHN0b2NrT25IYW5kOiBudW1iZXIsIHN0b2NrQWxsb2NhdGVkOiBudW1iZXIsIHRyYWNrSW52ZW50b3J5OiBHbG9iYWxGbGFnLCBvdXRPZlN0b2NrVGhyZXNob2xkOiBudW1iZXIsIHVzZUdsb2JhbE91dE9mU3RvY2tUaHJlc2hvbGQ6IGJvb2xlYW4sIHNrdTogc3RyaW5nLCB0YXhSYXRlQXBwbGllZDogeyBfX3R5cGVuYW1lPzogJ1RheFJhdGUnLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIHZhbHVlOiBudW1iZXIgfSwgdGF4Q2F0ZWdvcnk6IHsgX190eXBlbmFtZT86ICdUYXhDYXRlZ29yeScsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9LCBvcHRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbicsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nLCBncm91cElkOiBzdHJpbmcsIHRyYW5zbGF0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RPcHRpb25UcmFuc2xhdGlvbicsIGlkOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcgfT4gfT4sIGZhY2V0VmFsdWVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnRmFjZXRWYWx1ZScsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCBmYWNldDogeyBfX3R5cGVuYW1lPzogJ0ZhY2V0JywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0gfT4sIGZlYXR1cmVkQXNzZXQ/OiB7IF9fdHlwZW5hbWU/OiAnQXNzZXQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgZmlsZVNpemU6IG51bWJlciwgbWltZVR5cGU6IHN0cmluZywgdHlwZTogQXNzZXRUeXBlLCBwcmV2aWV3OiBzdHJpbmcsIHNvdXJjZTogc3RyaW5nLCB3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlciwgZm9jYWxQb2ludD86IHsgX190eXBlbmFtZT86ICdDb29yZGluYXRlJywgeDogbnVtYmVyLCB5OiBudW1iZXIgfSB8IG51bGwgfSB8IG51bGwsIGFzc2V0czogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGZpbGVTaXplOiBudW1iZXIsIG1pbWVUeXBlOiBzdHJpbmcsIHR5cGU6IEFzc2V0VHlwZSwgcHJldmlldzogc3RyaW5nLCBzb3VyY2U6IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0+LCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0VmFyaWFudFRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZyB9PiwgY2hhbm5lbHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDaGFubmVsJywgaWQ6IHN0cmluZywgY29kZTogc3RyaW5nIH0+IH0+IH0sIGZlYXR1cmVkQXNzZXQ/OiB7IF9fdHlwZW5hbWU/OiAnQXNzZXQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgZmlsZVNpemU6IG51bWJlciwgbWltZVR5cGU6IHN0cmluZywgdHlwZTogQXNzZXRUeXBlLCBwcmV2aWV3OiBzdHJpbmcsIHNvdXJjZTogc3RyaW5nLCB3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlciwgZm9jYWxQb2ludD86IHsgX190eXBlbmFtZT86ICdDb29yZGluYXRlJywgeDogbnVtYmVyLCB5OiBudW1iZXIgfSB8IG51bGwgfSB8IG51bGwsIGFzc2V0czogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGZpbGVTaXplOiBudW1iZXIsIG1pbWVUeXBlOiBzdHJpbmcsIHR5cGU6IEFzc2V0VHlwZSwgcHJldmlldzogc3RyaW5nLCBzb3VyY2U6IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0+LCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0VHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nLCBzbHVnOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcgfT4sIG9wdGlvbkdyb3VwczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RPcHRpb25Hcm91cCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uR3JvdXBUcmFuc2xhdGlvbicsIGlkOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcgfT4gfT4sIGZhY2V0VmFsdWVzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnRmFjZXRWYWx1ZScsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCBmYWNldDogeyBfX3R5cGVuYW1lPzogJ0ZhY2V0JywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0gfT4sIGNoYW5uZWxzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZyB9PiB9IHwgbnVsbCB9O1xuXG5leHBvcnQgdHlwZSBHZXRQcm9kdWN0U2ltcGxlUXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0UHJvZHVjdFNpbXBsZVF1ZXJ5ID0geyBwcm9kdWN0PzogeyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3QnLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIGZlYXR1cmVkQXNzZXQ/OiB7IF9fdHlwZW5hbWU/OiAnQXNzZXQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgZmlsZVNpemU6IG51bWJlciwgbWltZVR5cGU6IHN0cmluZywgdHlwZTogQXNzZXRUeXBlLCBwcmV2aWV3OiBzdHJpbmcsIHNvdXJjZTogc3RyaW5nLCB3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlciwgZm9jYWxQb2ludD86IHsgX190eXBlbmFtZT86ICdDb29yZGluYXRlJywgeDogbnVtYmVyLCB5OiBudW1iZXIgfSB8IG51bGwgfSB8IG51bGwgfSB8IG51bGwgfTtcblxuZXhwb3J0IHR5cGUgR2V0UHJvZHVjdExpc3RRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgb3B0aW9ucz86IElucHV0TWF5YmU8UHJvZHVjdExpc3RPcHRpb25zPjtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIEdldFByb2R1Y3RMaXN0UXVlcnkgPSB7IHByb2R1Y3RzOiB7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdExpc3QnLCB0b3RhbEl0ZW1zOiBudW1iZXIsIGl0ZW1zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgZW5hYmxlZDogYm9vbGVhbiwgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgc2x1Zzogc3RyaW5nLCBmZWF0dXJlZEFzc2V0PzogeyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBwcmV2aWV3OiBzdHJpbmcgfSB8IG51bGwgfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBHZXRQcm9kdWN0T3B0aW9uR3JvdXBzUXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGZpbHRlclRlcm0/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ1N0cmluZyddPjtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIEdldFByb2R1Y3RPcHRpb25Hcm91cHNRdWVyeSA9IHsgcHJvZHVjdE9wdGlvbkdyb3VwczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RPcHRpb25Hcm91cCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCBvcHRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbicsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nIH0+IH0+IH07XG5cbmV4cG9ydCB0eXBlIEdldEFzc2V0TGlzdFF1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8e1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxBc3NldExpc3RPcHRpb25zPjtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIEdldEFzc2V0TGlzdFF1ZXJ5ID0geyBhc3NldHM6IHsgX190eXBlbmFtZT86ICdBc3NldExpc3QnLCB0b3RhbEl0ZW1zOiBudW1iZXIsIGl0ZW1zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQXNzZXQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgZmlsZVNpemU6IG51bWJlciwgbWltZVR5cGU6IHN0cmluZywgdHlwZTogQXNzZXRUeXBlLCBwcmV2aWV3OiBzdHJpbmcsIHNvdXJjZTogc3RyaW5nLCB3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlciwgdGFnczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1RhZycsIGlkOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfT4sIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0+IH0gfTtcblxuZXhwb3J0IHR5cGUgR2V0QXNzZXRRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59PjtcblxuXG5leHBvcnQgdHlwZSBHZXRBc3NldFF1ZXJ5ID0geyBhc3NldD86IHsgX190eXBlbmFtZT86ICdBc3NldCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBmaWxlU2l6ZTogbnVtYmVyLCBtaW1lVHlwZTogc3RyaW5nLCB0eXBlOiBBc3NldFR5cGUsIHByZXZpZXc6IHN0cmluZywgc291cmNlOiBzdHJpbmcsIHdpZHRoOiBudW1iZXIsIGhlaWdodDogbnVtYmVyLCB0YWdzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnVGFnJywgaWQ6IHN0cmluZywgdmFsdWU6IHN0cmluZyB9PiwgZm9jYWxQb2ludD86IHsgX190eXBlbmFtZT86ICdDb29yZGluYXRlJywgeDogbnVtYmVyLCB5OiBudW1iZXIgfSB8IG51bGwgfSB8IG51bGwgfTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlQXNzZXRzTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlucHV0OiBBcnJheTxDcmVhdGVBc3NldElucHV0PiB8IENyZWF0ZUFzc2V0SW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBDcmVhdGVBc3NldHNNdXRhdGlvbiA9IHsgY3JlYXRlQXNzZXRzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQXNzZXQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgZmlsZVNpemU6IG51bWJlciwgbWltZVR5cGU6IHN0cmluZywgdHlwZTogQXNzZXRUeXBlLCBwcmV2aWV3OiBzdHJpbmcsIHNvdXJjZTogc3RyaW5nLCB3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlciwgdGFnczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1RhZycsIGlkOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfT4sIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnTWltZVR5cGVFcnJvcicsIG1lc3NhZ2U6IHN0cmluZyB9PiB9O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVBc3NldE11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogVXBkYXRlQXNzZXRJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUFzc2V0TXV0YXRpb24gPSB7IHVwZGF0ZUFzc2V0OiB7IF9fdHlwZW5hbWU/OiAnQXNzZXQnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgZmlsZVNpemU6IG51bWJlciwgbWltZVR5cGU6IHN0cmluZywgdHlwZTogQXNzZXRUeXBlLCBwcmV2aWV3OiBzdHJpbmcsIHNvdXJjZTogc3RyaW5nLCB3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlciwgdGFnczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1RhZycsIGlkOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfT4sIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0gfTtcblxuZXhwb3J0IHR5cGUgRGVsZXRlQXNzZXRzTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlucHV0OiBEZWxldGVBc3NldHNJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIERlbGV0ZUFzc2V0c011dGF0aW9uID0geyBkZWxldGVBc3NldHM6IHsgX190eXBlbmFtZT86ICdEZWxldGlvblJlc3BvbnNlJywgcmVzdWx0OiBEZWxldGlvblJlc3VsdCwgbWVzc2FnZT86IHN0cmluZyB8IG51bGwgfSB9O1xuXG5leHBvcnQgdHlwZSBTZWFyY2hQcm9kdWN0c1F1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogU2VhcmNoSW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBTZWFyY2hQcm9kdWN0c1F1ZXJ5ID0geyBzZWFyY2g6IHsgX190eXBlbmFtZT86ICdTZWFyY2hSZXNwb25zZScsIHRvdGFsSXRlbXM6IG51bWJlciwgaXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdTZWFyY2hSZXN1bHQnLCBlbmFibGVkOiBib29sZWFuLCBwcm9kdWN0SWQ6IHN0cmluZywgcHJvZHVjdE5hbWU6IHN0cmluZywgcHJvZHVjdFZhcmlhbnRJZDogc3RyaW5nLCBwcm9kdWN0VmFyaWFudE5hbWU6IHN0cmluZywgc2t1OiBzdHJpbmcsIGNoYW5uZWxJZHM6IEFycmF5PHN0cmluZz4sIHByb2R1Y3RBc3NldD86IHsgX190eXBlbmFtZT86ICdTZWFyY2hSZXN1bHRBc3NldCcsIGlkOiBzdHJpbmcsIHByZXZpZXc6IHN0cmluZywgZm9jYWxQb2ludD86IHsgX190eXBlbmFtZT86ICdDb29yZGluYXRlJywgeDogbnVtYmVyLCB5OiBudW1iZXIgfSB8IG51bGwgfSB8IG51bGwsIHByb2R1Y3RWYXJpYW50QXNzZXQ/OiB7IF9fdHlwZW5hbWU/OiAnU2VhcmNoUmVzdWx0QXNzZXQnLCBpZDogc3RyaW5nLCBwcmV2aWV3OiBzdHJpbmcsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0gfCBudWxsIH0+LCBmYWNldFZhbHVlczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0ZhY2V0VmFsdWVSZXN1bHQnLCBjb3VudDogbnVtYmVyLCBmYWNldFZhbHVlOiB7IF9fdHlwZW5hbWU/OiAnRmFjZXRWYWx1ZScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBmYWNldDogeyBfX3R5cGVuYW1lPzogJ0ZhY2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcgfSB9IH0+IH0gfTtcblxuZXhwb3J0IHR5cGUgUHJvZHVjdFNlbGVjdG9yU2VhcmNoUXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7XG4gIHRlcm06IFNjYWxhcnNbJ1N0cmluZyddO1xuICB0YWtlOiBTY2FsYXJzWydJbnQnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFByb2R1Y3RTZWxlY3RvclNlYXJjaFF1ZXJ5ID0geyBzZWFyY2g6IHsgX190eXBlbmFtZT86ICdTZWFyY2hSZXNwb25zZScsIGl0ZW1zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU2VhcmNoUmVzdWx0JywgcHJvZHVjdFZhcmlhbnRJZDogc3RyaW5nLCBwcm9kdWN0VmFyaWFudE5hbWU6IHN0cmluZywgc2t1OiBzdHJpbmcsIHByb2R1Y3RBc3NldD86IHsgX190eXBlbmFtZT86ICdTZWFyY2hSZXN1bHRBc3NldCcsIGlkOiBzdHJpbmcsIHByZXZpZXc6IHN0cmluZywgZm9jYWxQb2ludD86IHsgX190eXBlbmFtZT86ICdDb29yZGluYXRlJywgeDogbnVtYmVyLCB5OiBudW1iZXIgfSB8IG51bGwgfSB8IG51bGwsIHByaWNlOiB7IF9fdHlwZW5hbWU/OiAnUHJpY2VSYW5nZScgfSB8IHsgX190eXBlbmFtZT86ICdTaW5nbGVQcmljZScsIHZhbHVlOiBudW1iZXIgfSwgcHJpY2VXaXRoVGF4OiB7IF9fdHlwZW5hbWU/OiAnUHJpY2VSYW5nZScgfSB8IHsgX190eXBlbmFtZT86ICdTaW5nbGVQcmljZScsIHZhbHVlOiBudW1iZXIgfSB9PiB9IH07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZVByb2R1Y3RPcHRpb25Hcm91cE11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogVXBkYXRlUHJvZHVjdE9wdGlvbkdyb3VwSW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBVcGRhdGVQcm9kdWN0T3B0aW9uR3JvdXBNdXRhdGlvbiA9IHsgdXBkYXRlUHJvZHVjdE9wdGlvbkdyb3VwOiB7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbkdyb3VwJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBjb2RlOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcsIHRyYW5zbGF0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RPcHRpb25Hcm91cFRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZyB9PiB9IH07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZVByb2R1Y3RPcHRpb25NdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IFVwZGF0ZVByb2R1Y3RPcHRpb25JbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFVwZGF0ZVByb2R1Y3RPcHRpb25NdXRhdGlvbiA9IHsgdXBkYXRlUHJvZHVjdE9wdGlvbjogeyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RPcHRpb24nLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgZ3JvdXBJZDogc3RyaW5nLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uVHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+IH0gfTtcblxuZXhwb3J0IHR5cGUgRGVsZXRlUHJvZHVjdFZhcmlhbnRNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59PjtcblxuXG5leHBvcnQgdHlwZSBEZWxldGVQcm9kdWN0VmFyaWFudE11dGF0aW9uID0geyBkZWxldGVQcm9kdWN0VmFyaWFudDogeyBfX3R5cGVuYW1lPzogJ0RlbGV0aW9uUmVzcG9uc2UnLCByZXN1bHQ6IERlbGV0aW9uUmVzdWx0LCBtZXNzYWdlPzogc3RyaW5nIHwgbnVsbCB9IH07XG5cbmV4cG9ydCB0eXBlIEdldFByb2R1Y3RWYXJpYW50T3B0aW9uc1F1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8e1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIEdldFByb2R1Y3RWYXJpYW50T3B0aW9uc1F1ZXJ5ID0geyBwcm9kdWN0PzogeyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3QnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgb3B0aW9uR3JvdXBzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbkdyb3VwJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBjb2RlOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcsIG9wdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBjb2RlOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcsIGdyb3VwSWQ6IHN0cmluZywgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvblRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZyB9PiB9PiwgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbkdyb3VwVHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+IH0+LCB2YXJpYW50czogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RWYXJpYW50JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBlbmFibGVkOiBib29sZWFuLCBuYW1lOiBzdHJpbmcsIHNrdTogc3RyaW5nLCBwcmljZTogbnVtYmVyLCBzdG9ja09uSGFuZDogbnVtYmVyLCBvcHRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdE9wdGlvbicsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIGdyb3VwSWQ6IHN0cmluZyB9PiB9PiB9IHwgbnVsbCB9O1xuXG5leHBvcnQgdHlwZSBBc3NpZ25Qcm9kdWN0c1RvQ2hhbm5lbE11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogQXNzaWduUHJvZHVjdHNUb0NoYW5uZWxJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIEFzc2lnblByb2R1Y3RzVG9DaGFubmVsTXV0YXRpb24gPSB7IGFzc2lnblByb2R1Y3RzVG9DaGFubmVsOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdCcsIGlkOiBzdHJpbmcsIGNoYW5uZWxzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZyB9PiB9PiB9O1xuXG5leHBvcnQgdHlwZSBBc3NpZ25WYXJpYW50c1RvQ2hhbm5lbE11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogQXNzaWduUHJvZHVjdFZhcmlhbnRzVG9DaGFubmVsSW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBBc3NpZ25WYXJpYW50c1RvQ2hhbm5lbE11dGF0aW9uID0geyBhc3NpZ25Qcm9kdWN0VmFyaWFudHNUb0NoYW5uZWw6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0VmFyaWFudCcsIGlkOiBzdHJpbmcsIGNoYW5uZWxzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZyB9PiB9PiB9O1xuXG5leHBvcnQgdHlwZSBSZW1vdmVQcm9kdWN0c0Zyb21DaGFubmVsTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlucHV0OiBSZW1vdmVQcm9kdWN0c0Zyb21DaGFubmVsSW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBSZW1vdmVQcm9kdWN0c0Zyb21DaGFubmVsTXV0YXRpb24gPSB7IHJlbW92ZVByb2R1Y3RzRnJvbUNoYW5uZWw6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0JywgaWQ6IHN0cmluZywgY2hhbm5lbHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDaGFubmVsJywgaWQ6IHN0cmluZywgY29kZTogc3RyaW5nIH0+IH0+IH07XG5cbmV4cG9ydCB0eXBlIFJlbW92ZVZhcmlhbnRzRnJvbUNoYW5uZWxNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IFJlbW92ZVByb2R1Y3RWYXJpYW50c0Zyb21DaGFubmVsSW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBSZW1vdmVWYXJpYW50c0Zyb21DaGFubmVsTXV0YXRpb24gPSB7IHJlbW92ZVByb2R1Y3RWYXJpYW50c0Zyb21DaGFubmVsOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdFZhcmlhbnQnLCBpZDogc3RyaW5nLCBjaGFubmVsczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NoYW5uZWwnLCBpZDogc3RyaW5nLCBjb2RlOiBzdHJpbmcgfT4gfT4gfTtcblxuZXhwb3J0IHR5cGUgR2V0UHJvZHVjdFZhcmlhbnRRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59PjtcblxuXG5leHBvcnQgdHlwZSBHZXRQcm9kdWN0VmFyaWFudFF1ZXJ5ID0geyBwcm9kdWN0VmFyaWFudD86IHsgX190eXBlbmFtZT86ICdQcm9kdWN0VmFyaWFudCcsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgc2t1OiBzdHJpbmcsIGZlYXR1cmVkQXNzZXQ/OiB7IF9fdHlwZW5hbWU/OiAnQXNzZXQnLCBpZDogc3RyaW5nLCBwcmV2aWV3OiBzdHJpbmcsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0gfCBudWxsLCBwcm9kdWN0OiB7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdCcsIGlkOiBzdHJpbmcsIGZlYXR1cmVkQXNzZXQ/OiB7IF9fdHlwZW5hbWU/OiAnQXNzZXQnLCBpZDogc3RyaW5nLCBwcmV2aWV3OiBzdHJpbmcsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0gfCBudWxsIH0gfSB8IG51bGwgfTtcblxuZXhwb3J0IHR5cGUgR2V0UHJvZHVjdFZhcmlhbnRMaXN0U2ltcGxlUXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7XG4gIG9wdGlvbnM6IFByb2R1Y3RWYXJpYW50TGlzdE9wdGlvbnM7XG4gIHByb2R1Y3RJZD86IElucHV0TWF5YmU8U2NhbGFyc1snSUQnXT47XG59PjtcblxuXG5leHBvcnQgdHlwZSBHZXRQcm9kdWN0VmFyaWFudExpc3RTaW1wbGVRdWVyeSA9IHsgcHJvZHVjdFZhcmlhbnRzOiB7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdFZhcmlhbnRMaXN0JywgdG90YWxJdGVtczogbnVtYmVyLCBpdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RWYXJpYW50JywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nLCBza3U6IHN0cmluZywgZmVhdHVyZWRBc3NldD86IHsgX190eXBlbmFtZT86ICdBc3NldCcsIGlkOiBzdHJpbmcsIHByZXZpZXc6IHN0cmluZywgZm9jYWxQb2ludD86IHsgX190eXBlbmFtZT86ICdDb29yZGluYXRlJywgeDogbnVtYmVyLCB5OiBudW1iZXIgfSB8IG51bGwgfSB8IG51bGwsIHByb2R1Y3Q6IHsgX190eXBlbmFtZT86ICdQcm9kdWN0JywgaWQ6IHN0cmluZywgZmVhdHVyZWRBc3NldD86IHsgX190eXBlbmFtZT86ICdBc3NldCcsIGlkOiBzdHJpbmcsIHByZXZpZXc6IHN0cmluZywgZm9jYWxQb2ludD86IHsgX190eXBlbmFtZT86ICdDb29yZGluYXRlJywgeDogbnVtYmVyLCB5OiBudW1iZXIgfSB8IG51bGwgfSB8IG51bGwgfSB9PiB9IH07XG5cbmV4cG9ydCB0eXBlIEdldFByb2R1Y3RWYXJpYW50TGlzdFF1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8e1xuICBvcHRpb25zOiBQcm9kdWN0VmFyaWFudExpc3RPcHRpb25zO1xuICBwcm9kdWN0SWQ/OiBJbnB1dE1heWJlPFNjYWxhcnNbJ0lEJ10+O1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0UHJvZHVjdFZhcmlhbnRMaXN0UXVlcnkgPSB7IHByb2R1Y3RWYXJpYW50czogeyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RWYXJpYW50TGlzdCcsIHRvdGFsSXRlbXM6IG51bWJlciwgaXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0VmFyaWFudCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgZW5hYmxlZDogYm9vbGVhbiwgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgcHJpY2U6IG51bWJlciwgY3VycmVuY3lDb2RlOiBDdXJyZW5jeUNvZGUsIHByaWNlV2l0aFRheDogbnVtYmVyLCBzdG9ja09uSGFuZDogbnVtYmVyLCBzdG9ja0FsbG9jYXRlZDogbnVtYmVyLCB0cmFja0ludmVudG9yeTogR2xvYmFsRmxhZywgb3V0T2ZTdG9ja1RocmVzaG9sZDogbnVtYmVyLCB1c2VHbG9iYWxPdXRPZlN0b2NrVGhyZXNob2xkOiBib29sZWFuLCBza3U6IHN0cmluZywgdGF4UmF0ZUFwcGxpZWQ6IHsgX190eXBlbmFtZT86ICdUYXhSYXRlJywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nLCB2YWx1ZTogbnVtYmVyIH0sIHRheENhdGVnb3J5OiB7IF9fdHlwZW5hbWU/OiAnVGF4Q2F0ZWdvcnknLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfSwgb3B0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RPcHRpb24nLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgZ3JvdXBJZDogc3RyaW5nLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQcm9kdWN0T3B0aW9uVHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+IH0+LCBmYWNldFZhbHVlczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0ZhY2V0VmFsdWUnLCBpZDogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgZmFjZXQ6IHsgX190eXBlbmFtZT86ICdGYWNldCcsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9IH0+LCBmZWF0dXJlZEFzc2V0PzogeyBfX3R5cGVuYW1lPzogJ0Fzc2V0JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGZpbGVTaXplOiBudW1iZXIsIG1pbWVUeXBlOiBzdHJpbmcsIHR5cGU6IEFzc2V0VHlwZSwgcHJldmlldzogc3RyaW5nLCBzb3VyY2U6IHN0cmluZywgd2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIGZvY2FsUG9pbnQ/OiB7IF9fdHlwZW5hbWU/OiAnQ29vcmRpbmF0ZScsIHg6IG51bWJlciwgeTogbnVtYmVyIH0gfCBudWxsIH0gfCBudWxsLCBhc3NldHM6IEFycmF5PHsgX190eXBlbmFtZT86ICdBc3NldCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBmaWxlU2l6ZTogbnVtYmVyLCBtaW1lVHlwZTogc3RyaW5nLCB0eXBlOiBBc3NldFR5cGUsIHByZXZpZXc6IHN0cmluZywgc291cmNlOiBzdHJpbmcsIHdpZHRoOiBudW1iZXIsIGhlaWdodDogbnVtYmVyLCBmb2NhbFBvaW50PzogeyBfX3R5cGVuYW1lPzogJ0Nvb3JkaW5hdGUnLCB4OiBudW1iZXIsIHk6IG51bWJlciB9IHwgbnVsbCB9PiwgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUHJvZHVjdFZhcmlhbnRUcmFuc2xhdGlvbicsIGlkOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcgfT4sIGNoYW5uZWxzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZyB9PiB9PiB9IH07XG5cbmV4cG9ydCB0eXBlIEdldFRhZ0xpc3RRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgb3B0aW9ucz86IElucHV0TWF5YmU8VGFnTGlzdE9wdGlvbnM+O1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0VGFnTGlzdFF1ZXJ5ID0geyB0YWdzOiB7IF9fdHlwZW5hbWU/OiAnVGFnTGlzdCcsIHRvdGFsSXRlbXM6IG51bWJlciwgaXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdUYWcnLCBpZDogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIH0+IH0gfTtcblxuZXhwb3J0IHR5cGUgR2V0VGFnUXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0VGFnUXVlcnkgPSB7IHRhZzogeyBfX3R5cGVuYW1lPzogJ1RhZycsIGlkOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfSB9O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVUYWdNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IENyZWF0ZVRhZ0lucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgQ3JlYXRlVGFnTXV0YXRpb24gPSB7IGNyZWF0ZVRhZzogeyBfX3R5cGVuYW1lPzogJ1RhZycsIGlkOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfSB9O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVUYWdNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IFVwZGF0ZVRhZ0lucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgVXBkYXRlVGFnTXV0YXRpb24gPSB7IHVwZGF0ZVRhZzogeyBfX3R5cGVuYW1lPzogJ1RhZycsIGlkOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfSB9O1xuXG5leHBvcnQgdHlwZSBEZWxldGVUYWdNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59PjtcblxuXG5leHBvcnQgdHlwZSBEZWxldGVUYWdNdXRhdGlvbiA9IHsgZGVsZXRlVGFnOiB7IF9fdHlwZW5hbWU/OiAnRGVsZXRpb25SZXNwb25zZScsIG1lc3NhZ2U/OiBzdHJpbmcgfCBudWxsLCByZXN1bHQ6IERlbGV0aW9uUmVzdWx0IH0gfTtcblxuZXhwb3J0IHR5cGUgUHJvbW90aW9uRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnUHJvbW90aW9uJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGVuYWJsZWQ6IGJvb2xlYW4sIGNvdXBvbkNvZGU/OiBzdHJpbmcgfCBudWxsLCBwZXJDdXN0b21lclVzYWdlTGltaXQ/OiBudW1iZXIgfCBudWxsLCBzdGFydHNBdD86IGFueSB8IG51bGwsIGVuZHNBdD86IGFueSB8IG51bGwsIGNvbmRpdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb24nLCBjb2RlOiBzdHJpbmcsIGFyZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWdBcmcnLCBuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfT4gfT4sIGFjdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb24nLCBjb2RlOiBzdHJpbmcsIGFyZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWdBcmcnLCBuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfT4gfT4gfTtcblxuZXhwb3J0IHR5cGUgR2V0UHJvbW90aW9uTGlzdFF1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8e1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxQcm9tb3Rpb25MaXN0T3B0aW9ucz47XG59PjtcblxuXG5leHBvcnQgdHlwZSBHZXRQcm9tb3Rpb25MaXN0UXVlcnkgPSB7IHByb21vdGlvbnM6IHsgX190eXBlbmFtZT86ICdQcm9tb3Rpb25MaXN0JywgdG90YWxJdGVtczogbnVtYmVyLCBpdGVtczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1Byb21vdGlvbicsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBlbmFibGVkOiBib29sZWFuLCBjb3Vwb25Db2RlPzogc3RyaW5nIHwgbnVsbCwgcGVyQ3VzdG9tZXJVc2FnZUxpbWl0PzogbnVtYmVyIHwgbnVsbCwgc3RhcnRzQXQ/OiBhbnkgfCBudWxsLCBlbmRzQXQ/OiBhbnkgfCBudWxsLCBjb25kaXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlndXJhYmxlT3BlcmF0aW9uJywgY29kZTogc3RyaW5nLCBhcmdzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlnQXJnJywgbmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIH0+IH0+LCBhY3Rpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlndXJhYmxlT3BlcmF0aW9uJywgY29kZTogc3RyaW5nLCBhcmdzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlnQXJnJywgbmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIH0+IH0+IH0+IH0gfTtcblxuZXhwb3J0IHR5cGUgR2V0UHJvbW90aW9uUXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0UHJvbW90aW9uUXVlcnkgPSB7IHByb21vdGlvbj86IHsgX190eXBlbmFtZT86ICdQcm9tb3Rpb24nLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgZW5hYmxlZDogYm9vbGVhbiwgY291cG9uQ29kZT86IHN0cmluZyB8IG51bGwsIHBlckN1c3RvbWVyVXNhZ2VMaW1pdD86IG51bWJlciB8IG51bGwsIHN0YXJ0c0F0PzogYW55IHwgbnVsbCwgZW5kc0F0PzogYW55IHwgbnVsbCwgY29uZGl0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbmZpZ3VyYWJsZU9wZXJhdGlvbicsIGNvZGU6IHN0cmluZywgYXJnczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbmZpZ0FyZycsIG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyB9PiB9PiwgYWN0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbmZpZ3VyYWJsZU9wZXJhdGlvbicsIGNvZGU6IHN0cmluZywgYXJnczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbmZpZ0FyZycsIG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyB9PiB9PiB9IHwgbnVsbCB9O1xuXG5leHBvcnQgdHlwZSBHZXRBZGp1c3RtZW50T3BlcmF0aW9uc1F1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8eyBba2V5OiBzdHJpbmddOiBuZXZlcjsgfT47XG5cblxuZXhwb3J0IHR5cGUgR2V0QWRqdXN0bWVudE9wZXJhdGlvbnNRdWVyeSA9IHsgcHJvbW90aW9uQ29uZGl0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbmZpZ3VyYWJsZU9wZXJhdGlvbkRlZmluaXRpb24nLCBjb2RlOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIGFyZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWdBcmdEZWZpbml0aW9uJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIHJlcXVpcmVkOiBib29sZWFuLCBkZWZhdWx0VmFsdWU/OiBhbnkgfCBudWxsLCBsaXN0OiBib29sZWFuLCB1aT86IGFueSB8IG51bGwsIGxhYmVsPzogc3RyaW5nIHwgbnVsbCB9PiB9PiwgcHJvbW90aW9uQWN0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbmZpZ3VyYWJsZU9wZXJhdGlvbkRlZmluaXRpb24nLCBjb2RlOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIGFyZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWdBcmdEZWZpbml0aW9uJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIHJlcXVpcmVkOiBib29sZWFuLCBkZWZhdWx0VmFsdWU/OiBhbnkgfCBudWxsLCBsaXN0OiBib29sZWFuLCB1aT86IGFueSB8IG51bGwsIGxhYmVsPzogc3RyaW5nIHwgbnVsbCB9PiB9PiB9O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVQcm9tb3Rpb25NdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IENyZWF0ZVByb21vdGlvbklucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgQ3JlYXRlUHJvbW90aW9uTXV0YXRpb24gPSB7IGNyZWF0ZVByb21vdGlvbjogeyBfX3R5cGVuYW1lPzogJ01pc3NpbmdDb25kaXRpb25zRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfCB7IF9fdHlwZW5hbWU/OiAnUHJvbW90aW9uJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGVuYWJsZWQ6IGJvb2xlYW4sIGNvdXBvbkNvZGU/OiBzdHJpbmcgfCBudWxsLCBwZXJDdXN0b21lclVzYWdlTGltaXQ/OiBudW1iZXIgfCBudWxsLCBzdGFydHNBdD86IGFueSB8IG51bGwsIGVuZHNBdD86IGFueSB8IG51bGwsIGNvbmRpdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb24nLCBjb2RlOiBzdHJpbmcsIGFyZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWdBcmcnLCBuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfT4gfT4sIGFjdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb24nLCBjb2RlOiBzdHJpbmcsIGFyZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWdBcmcnLCBuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfT4gfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVQcm9tb3Rpb25NdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IFVwZGF0ZVByb21vdGlvbklucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgVXBkYXRlUHJvbW90aW9uTXV0YXRpb24gPSB7IHVwZGF0ZVByb21vdGlvbjogeyBfX3R5cGVuYW1lPzogJ01pc3NpbmdDb25kaXRpb25zRXJyb3InIH0gfCB7IF9fdHlwZW5hbWU/OiAnUHJvbW90aW9uJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGVuYWJsZWQ6IGJvb2xlYW4sIGNvdXBvbkNvZGU/OiBzdHJpbmcgfCBudWxsLCBwZXJDdXN0b21lclVzYWdlTGltaXQ/OiBudW1iZXIgfCBudWxsLCBzdGFydHNBdD86IGFueSB8IG51bGwsIGVuZHNBdD86IGFueSB8IG51bGwsIGNvbmRpdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb24nLCBjb2RlOiBzdHJpbmcsIGFyZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWdBcmcnLCBuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfT4gfT4sIGFjdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb24nLCBjb2RlOiBzdHJpbmcsIGFyZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWdBcmcnLCBuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfT4gfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBEZWxldGVQcm9tb3Rpb25NdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59PjtcblxuXG5leHBvcnQgdHlwZSBEZWxldGVQcm9tb3Rpb25NdXRhdGlvbiA9IHsgZGVsZXRlUHJvbW90aW9uOiB7IF9fdHlwZW5hbWU/OiAnRGVsZXRpb25SZXNwb25zZScsIHJlc3VsdDogRGVsZXRpb25SZXN1bHQsIG1lc3NhZ2U/OiBzdHJpbmcgfCBudWxsIH0gfTtcblxuZXhwb3J0IHR5cGUgQ291bnRyeUZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0NvdW50cnknLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCBlbmFibGVkOiBib29sZWFuLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb3VudHJ5VHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+IH07XG5cbmV4cG9ydCB0eXBlIEdldENvdW50cnlMaXN0UXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7XG4gIG9wdGlvbnM/OiBJbnB1dE1heWJlPENvdW50cnlMaXN0T3B0aW9ucz47XG59PjtcblxuXG5leHBvcnQgdHlwZSBHZXRDb3VudHJ5TGlzdFF1ZXJ5ID0geyBjb3VudHJpZXM6IHsgX190eXBlbmFtZT86ICdDb3VudHJ5TGlzdCcsIHRvdGFsSXRlbXM6IG51bWJlciwgaXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb3VudHJ5JywgaWQ6IHN0cmluZywgY29kZTogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIGVuYWJsZWQ6IGJvb2xlYW4gfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBHZXRBdmFpbGFibGVDb3VudHJpZXNRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHsgW2tleTogc3RyaW5nXTogbmV2ZXI7IH0+O1xuXG5cbmV4cG9ydCB0eXBlIEdldEF2YWlsYWJsZUNvdW50cmllc1F1ZXJ5ID0geyBjb3VudHJpZXM6IHsgX190eXBlbmFtZT86ICdDb3VudHJ5TGlzdCcsIGl0ZW1zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ291bnRyeScsIGlkOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCBlbmFibGVkOiBib29sZWFuIH0+IH0gfTtcblxuZXhwb3J0IHR5cGUgR2V0Q291bnRyeVF1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8e1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIEdldENvdW50cnlRdWVyeSA9IHsgY291bnRyeT86IHsgX190eXBlbmFtZT86ICdDb3VudHJ5JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBjb2RlOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgZW5hYmxlZDogYm9vbGVhbiwgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ291bnRyeVRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZyB9PiB9IHwgbnVsbCB9O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVDb3VudHJ5TXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlucHV0OiBDcmVhdGVDb3VudHJ5SW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBDcmVhdGVDb3VudHJ5TXV0YXRpb24gPSB7IGNyZWF0ZUNvdW50cnk6IHsgX190eXBlbmFtZT86ICdDb3VudHJ5JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBjb2RlOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgZW5hYmxlZDogYm9vbGVhbiwgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ291bnRyeVRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZyB9PiB9IH07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUNvdW50cnlNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IFVwZGF0ZUNvdW50cnlJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUNvdW50cnlNdXRhdGlvbiA9IHsgdXBkYXRlQ291bnRyeTogeyBfX3R5cGVuYW1lPzogJ0NvdW50cnknLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCBlbmFibGVkOiBib29sZWFuLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb3VudHJ5VHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+IH0gfTtcblxuZXhwb3J0IHR5cGUgRGVsZXRlQ291bnRyeU11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIERlbGV0ZUNvdW50cnlNdXRhdGlvbiA9IHsgZGVsZXRlQ291bnRyeTogeyBfX3R5cGVuYW1lPzogJ0RlbGV0aW9uUmVzcG9uc2UnLCByZXN1bHQ6IERlbGV0aW9uUmVzdWx0LCBtZXNzYWdlPzogc3RyaW5nIHwgbnVsbCB9IH07XG5cbmV4cG9ydCB0eXBlIFpvbmVGcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdab25lJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIG1lbWJlcnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb3VudHJ5JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBjb2RlOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgZW5hYmxlZDogYm9vbGVhbiwgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ291bnRyeVRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZyB9PiB9PiB9O1xuXG5leHBvcnQgdHlwZSBHZXRab25lc1F1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8eyBba2V5OiBzdHJpbmddOiBuZXZlcjsgfT47XG5cblxuZXhwb3J0IHR5cGUgR2V0Wm9uZXNRdWVyeSA9IHsgem9uZXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdab25lJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIG1lbWJlcnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb3VudHJ5JywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgZW5hYmxlZDogYm9vbGVhbiwgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ291bnRyeVRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZyB9PiB9PiB9PiB9O1xuXG5leHBvcnQgdHlwZSBHZXRab25lUXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0Wm9uZVF1ZXJ5ID0geyB6b25lPzogeyBfX3R5cGVuYW1lPzogJ1pvbmUnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgbWVtYmVyczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvdW50cnknLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCBlbmFibGVkOiBib29sZWFuLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb3VudHJ5VHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+IH0+IH0gfCBudWxsIH07XG5cbmV4cG9ydCB0eXBlIENyZWF0ZVpvbmVNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IENyZWF0ZVpvbmVJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIENyZWF0ZVpvbmVNdXRhdGlvbiA9IHsgY3JlYXRlWm9uZTogeyBfX3R5cGVuYW1lPzogJ1pvbmUnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgbWVtYmVyczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvdW50cnknLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCBlbmFibGVkOiBib29sZWFuLCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb3VudHJ5VHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nIH0+IH0+IH0gfTtcblxuZXhwb3J0IHR5cGUgVXBkYXRlWm9uZU11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogVXBkYXRlWm9uZUlucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgVXBkYXRlWm9uZU11dGF0aW9uID0geyB1cGRhdGVab25lOiB7IF9fdHlwZW5hbWU/OiAnWm9uZScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBtZW1iZXJzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ291bnRyeScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIGVuYWJsZWQ6IGJvb2xlYW4sIHRyYW5zbGF0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvdW50cnlUcmFuc2xhdGlvbicsIGlkOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcgfT4gfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBEZWxldGVab25lTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufT47XG5cblxuZXhwb3J0IHR5cGUgRGVsZXRlWm9uZU11dGF0aW9uID0geyBkZWxldGVab25lOiB7IF9fdHlwZW5hbWU/OiAnRGVsZXRpb25SZXNwb25zZScsIG1lc3NhZ2U/OiBzdHJpbmcgfCBudWxsLCByZXN1bHQ6IERlbGV0aW9uUmVzdWx0IH0gfTtcblxuZXhwb3J0IHR5cGUgQWRkTWVtYmVyc1RvWm9uZU11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICB6b25lSWQ6IFNjYWxhcnNbJ0lEJ107XG4gIG1lbWJlcklkczogQXJyYXk8U2NhbGFyc1snSUQnXT4gfCBTY2FsYXJzWydJRCddO1xufT47XG5cblxuZXhwb3J0IHR5cGUgQWRkTWVtYmVyc1RvWm9uZU11dGF0aW9uID0geyBhZGRNZW1iZXJzVG9ab25lOiB7IF9fdHlwZW5hbWU/OiAnWm9uZScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBtZW1iZXJzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ291bnRyeScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIGVuYWJsZWQ6IGJvb2xlYW4sIHRyYW5zbGF0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvdW50cnlUcmFuc2xhdGlvbicsIGlkOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcgfT4gfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBSZW1vdmVNZW1iZXJzRnJvbVpvbmVNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgem9uZUlkOiBTY2FsYXJzWydJRCddO1xuICBtZW1iZXJJZHM6IEFycmF5PFNjYWxhcnNbJ0lEJ10+IHwgU2NhbGFyc1snSUQnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFJlbW92ZU1lbWJlcnNGcm9tWm9uZU11dGF0aW9uID0geyByZW1vdmVNZW1iZXJzRnJvbVpvbmU6IHsgX190eXBlbmFtZT86ICdab25lJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIG1lbWJlcnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb3VudHJ5JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBjb2RlOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgZW5hYmxlZDogYm9vbGVhbiwgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ291bnRyeVRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZyB9PiB9PiB9IH07XG5cbmV4cG9ydCB0eXBlIFRheENhdGVnb3J5RnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnVGF4Q2F0ZWdvcnknLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgaXNEZWZhdWx0OiBib29sZWFuIH07XG5cbmV4cG9ydCB0eXBlIEdldFRheENhdGVnb3JpZXNRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHsgW2tleTogc3RyaW5nXTogbmV2ZXI7IH0+O1xuXG5cbmV4cG9ydCB0eXBlIEdldFRheENhdGVnb3JpZXNRdWVyeSA9IHsgdGF4Q2F0ZWdvcmllczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1RheENhdGVnb3J5JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGlzRGVmYXVsdDogYm9vbGVhbiB9PiB9O1xuXG5leHBvcnQgdHlwZSBHZXRUYXhDYXRlZ29yeVF1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8e1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIEdldFRheENhdGVnb3J5UXVlcnkgPSB7IHRheENhdGVnb3J5PzogeyBfX3R5cGVuYW1lPzogJ1RheENhdGVnb3J5JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGlzRGVmYXVsdDogYm9vbGVhbiB9IHwgbnVsbCB9O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVUYXhDYXRlZ29yeU11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogQ3JlYXRlVGF4Q2F0ZWdvcnlJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIENyZWF0ZVRheENhdGVnb3J5TXV0YXRpb24gPSB7IGNyZWF0ZVRheENhdGVnb3J5OiB7IF9fdHlwZW5hbWU/OiAnVGF4Q2F0ZWdvcnknLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgaXNEZWZhdWx0OiBib29sZWFuIH0gfTtcblxuZXhwb3J0IHR5cGUgVXBkYXRlVGF4Q2F0ZWdvcnlNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IFVwZGF0ZVRheENhdGVnb3J5SW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBVcGRhdGVUYXhDYXRlZ29yeU11dGF0aW9uID0geyB1cGRhdGVUYXhDYXRlZ29yeTogeyBfX3R5cGVuYW1lPzogJ1RheENhdGVnb3J5JywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGlzRGVmYXVsdDogYm9vbGVhbiB9IH07XG5cbmV4cG9ydCB0eXBlIERlbGV0ZVRheENhdGVnb3J5TXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufT47XG5cblxuZXhwb3J0IHR5cGUgRGVsZXRlVGF4Q2F0ZWdvcnlNdXRhdGlvbiA9IHsgZGVsZXRlVGF4Q2F0ZWdvcnk6IHsgX190eXBlbmFtZT86ICdEZWxldGlvblJlc3BvbnNlJywgcmVzdWx0OiBEZWxldGlvblJlc3VsdCwgbWVzc2FnZT86IHN0cmluZyB8IG51bGwgfSB9O1xuXG5leHBvcnQgdHlwZSBUYXhSYXRlRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnVGF4UmF0ZScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBlbmFibGVkOiBib29sZWFuLCB2YWx1ZTogbnVtYmVyLCBjYXRlZ29yeTogeyBfX3R5cGVuYW1lPzogJ1RheENhdGVnb3J5JywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0sIHpvbmU6IHsgX190eXBlbmFtZT86ICdab25lJywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0sIGN1c3RvbWVyR3JvdXA/OiB7IF9fdHlwZW5hbWU/OiAnQ3VzdG9tZXJHcm91cCcsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9IHwgbnVsbCB9O1xuXG5leHBvcnQgdHlwZSBHZXRUYXhSYXRlTGlzdFF1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8e1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxUYXhSYXRlTGlzdE9wdGlvbnM+O1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0VGF4UmF0ZUxpc3RRdWVyeSA9IHsgdGF4UmF0ZXM6IHsgX190eXBlbmFtZT86ICdUYXhSYXRlTGlzdCcsIHRvdGFsSXRlbXM6IG51bWJlciwgaXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdUYXhSYXRlJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGVuYWJsZWQ6IGJvb2xlYW4sIHZhbHVlOiBudW1iZXIsIGNhdGVnb3J5OiB7IF9fdHlwZW5hbWU/OiAnVGF4Q2F0ZWdvcnknLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfSwgem9uZTogeyBfX3R5cGVuYW1lPzogJ1pvbmUnLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfSwgY3VzdG9tZXJHcm91cD86IHsgX190eXBlbmFtZT86ICdDdXN0b21lckdyb3VwJywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0gfCBudWxsIH0+IH0gfTtcblxuZXhwb3J0IHR5cGUgR2V0VGF4UmF0ZUxpc3RTaW1wbGVRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgb3B0aW9ucz86IElucHV0TWF5YmU8VGF4UmF0ZUxpc3RPcHRpb25zPjtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIEdldFRheFJhdGVMaXN0U2ltcGxlUXVlcnkgPSB7IHRheFJhdGVzOiB7IF9fdHlwZW5hbWU/OiAnVGF4UmF0ZUxpc3QnLCB0b3RhbEl0ZW1zOiBudW1iZXIsIGl0ZW1zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnVGF4UmF0ZScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBlbmFibGVkOiBib29sZWFuLCB2YWx1ZTogbnVtYmVyLCBjYXRlZ29yeTogeyBfX3R5cGVuYW1lPzogJ1RheENhdGVnb3J5JywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0sIHpvbmU6IHsgX190eXBlbmFtZT86ICdab25lJywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0gfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBHZXRUYXhSYXRlUXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0VGF4UmF0ZVF1ZXJ5ID0geyB0YXhSYXRlPzogeyBfX3R5cGVuYW1lPzogJ1RheFJhdGUnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgZW5hYmxlZDogYm9vbGVhbiwgdmFsdWU6IG51bWJlciwgY2F0ZWdvcnk6IHsgX190eXBlbmFtZT86ICdUYXhDYXRlZ29yeScsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9LCB6b25lOiB7IF9fdHlwZW5hbWU/OiAnWm9uZScsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9LCBjdXN0b21lckdyb3VwPzogeyBfX3R5cGVuYW1lPzogJ0N1c3RvbWVyR3JvdXAnLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfSB8IG51bGwgfSB8IG51bGwgfTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlVGF4UmF0ZU11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogQ3JlYXRlVGF4UmF0ZUlucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgQ3JlYXRlVGF4UmF0ZU11dGF0aW9uID0geyBjcmVhdGVUYXhSYXRlOiB7IF9fdHlwZW5hbWU/OiAnVGF4UmF0ZScsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBlbmFibGVkOiBib29sZWFuLCB2YWx1ZTogbnVtYmVyLCBjYXRlZ29yeTogeyBfX3R5cGVuYW1lPzogJ1RheENhdGVnb3J5JywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0sIHpvbmU6IHsgX190eXBlbmFtZT86ICdab25lJywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0sIGN1c3RvbWVyR3JvdXA/OiB7IF9fdHlwZW5hbWU/OiAnQ3VzdG9tZXJHcm91cCcsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9IHwgbnVsbCB9IH07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZVRheFJhdGVNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IFVwZGF0ZVRheFJhdGVJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFVwZGF0ZVRheFJhdGVNdXRhdGlvbiA9IHsgdXBkYXRlVGF4UmF0ZTogeyBfX3R5cGVuYW1lPzogJ1RheFJhdGUnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIG5hbWU6IHN0cmluZywgZW5hYmxlZDogYm9vbGVhbiwgdmFsdWU6IG51bWJlciwgY2F0ZWdvcnk6IHsgX190eXBlbmFtZT86ICdUYXhDYXRlZ29yeScsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9LCB6b25lOiB7IF9fdHlwZW5hbWU/OiAnWm9uZScsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9LCBjdXN0b21lckdyb3VwPzogeyBfX3R5cGVuYW1lPzogJ0N1c3RvbWVyR3JvdXAnLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfSB8IG51bGwgfSB9O1xuXG5leHBvcnQgdHlwZSBEZWxldGVUYXhSYXRlTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufT47XG5cblxuZXhwb3J0IHR5cGUgRGVsZXRlVGF4UmF0ZU11dGF0aW9uID0geyBkZWxldGVUYXhSYXRlOiB7IF9fdHlwZW5hbWU/OiAnRGVsZXRpb25SZXNwb25zZScsIHJlc3VsdDogRGVsZXRpb25SZXN1bHQsIG1lc3NhZ2U/OiBzdHJpbmcgfCBudWxsIH0gfTtcblxuZXhwb3J0IHR5cGUgQ2hhbm5lbEZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0NoYW5uZWwnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgdG9rZW46IHN0cmluZywgcHJpY2VzSW5jbHVkZVRheDogYm9vbGVhbiwgY3VycmVuY3lDb2RlOiBDdXJyZW5jeUNvZGUsIGRlZmF1bHRMYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgZGVmYXVsdFNoaXBwaW5nWm9uZT86IHsgX190eXBlbmFtZT86ICdab25lJywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0gfCBudWxsLCBkZWZhdWx0VGF4Wm9uZT86IHsgX190eXBlbmFtZT86ICdab25lJywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0gfCBudWxsIH07XG5cbmV4cG9ydCB0eXBlIEdldENoYW5uZWxzUXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7IFtrZXk6IHN0cmluZ106IG5ldmVyOyB9PjtcblxuXG5leHBvcnQgdHlwZSBHZXRDaGFubmVsc1F1ZXJ5ID0geyBjaGFubmVsczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NoYW5uZWwnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgdG9rZW46IHN0cmluZywgcHJpY2VzSW5jbHVkZVRheDogYm9vbGVhbiwgY3VycmVuY3lDb2RlOiBDdXJyZW5jeUNvZGUsIGRlZmF1bHRMYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgZGVmYXVsdFNoaXBwaW5nWm9uZT86IHsgX190eXBlbmFtZT86ICdab25lJywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0gfCBudWxsLCBkZWZhdWx0VGF4Wm9uZT86IHsgX190eXBlbmFtZT86ICdab25lJywgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nIH0gfCBudWxsIH0+IH07XG5cbmV4cG9ydCB0eXBlIEdldENoYW5uZWxRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59PjtcblxuXG5leHBvcnQgdHlwZSBHZXRDaGFubmVsUXVlcnkgPSB7IGNoYW5uZWw/OiB7IF9fdHlwZW5hbWU/OiAnQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCB0b2tlbjogc3RyaW5nLCBwcmljZXNJbmNsdWRlVGF4OiBib29sZWFuLCBjdXJyZW5jeUNvZGU6IEN1cnJlbmN5Q29kZSwgZGVmYXVsdExhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBkZWZhdWx0U2hpcHBpbmdab25lPzogeyBfX3R5cGVuYW1lPzogJ1pvbmUnLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfSB8IG51bGwsIGRlZmF1bHRUYXhab25lPzogeyBfX3R5cGVuYW1lPzogJ1pvbmUnLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfSB8IG51bGwgfSB8IG51bGwgfTtcblxuZXhwb3J0IHR5cGUgR2V0QWN0aXZlQ2hhbm5lbFF1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8eyBba2V5OiBzdHJpbmddOiBuZXZlcjsgfT47XG5cblxuZXhwb3J0IHR5cGUgR2V0QWN0aXZlQ2hhbm5lbFF1ZXJ5ID0geyBhY3RpdmVDaGFubmVsOiB7IF9fdHlwZW5hbWU/OiAnQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCB0b2tlbjogc3RyaW5nLCBwcmljZXNJbmNsdWRlVGF4OiBib29sZWFuLCBjdXJyZW5jeUNvZGU6IEN1cnJlbmN5Q29kZSwgZGVmYXVsdExhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBkZWZhdWx0U2hpcHBpbmdab25lPzogeyBfX3R5cGVuYW1lPzogJ1pvbmUnLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfSB8IG51bGwsIGRlZmF1bHRUYXhab25lPzogeyBfX3R5cGVuYW1lPzogJ1pvbmUnLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfSB8IG51bGwgfSB9O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVDaGFubmVsTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlucHV0OiBDcmVhdGVDaGFubmVsSW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBDcmVhdGVDaGFubmVsTXV0YXRpb24gPSB7IGNyZWF0ZUNoYW5uZWw6IHsgX190eXBlbmFtZT86ICdDaGFubmVsJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBjb2RlOiBzdHJpbmcsIHRva2VuOiBzdHJpbmcsIHByaWNlc0luY2x1ZGVUYXg6IGJvb2xlYW4sIGN1cnJlbmN5Q29kZTogQ3VycmVuY3lDb2RlLCBkZWZhdWx0TGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIGRlZmF1bHRTaGlwcGluZ1pvbmU/OiB7IF9fdHlwZW5hbWU/OiAnWm9uZScsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9IHwgbnVsbCwgZGVmYXVsdFRheFpvbmU/OiB7IF9fdHlwZW5hbWU/OiAnWm9uZScsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyB9IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0xhbmd1YWdlTm90QXZhaWxhYmxlRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfTtcblxuZXhwb3J0IHR5cGUgVXBkYXRlQ2hhbm5lbE11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogVXBkYXRlQ2hhbm5lbElucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgVXBkYXRlQ2hhbm5lbE11dGF0aW9uID0geyB1cGRhdGVDaGFubmVsOiB7IF9fdHlwZW5hbWU/OiAnQ2hhbm5lbCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCB0b2tlbjogc3RyaW5nLCBwcmljZXNJbmNsdWRlVGF4OiBib29sZWFuLCBjdXJyZW5jeUNvZGU6IEN1cnJlbmN5Q29kZSwgZGVmYXVsdExhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBkZWZhdWx0U2hpcHBpbmdab25lPzogeyBfX3R5cGVuYW1lPzogJ1pvbmUnLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfSB8IG51bGwsIGRlZmF1bHRUYXhab25lPzogeyBfX3R5cGVuYW1lPzogJ1pvbmUnLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfSB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdMYW5ndWFnZU5vdEF2YWlsYWJsZUVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9IH07XG5cbmV4cG9ydCB0eXBlIERlbGV0ZUNoYW5uZWxNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59PjtcblxuXG5leHBvcnQgdHlwZSBEZWxldGVDaGFubmVsTXV0YXRpb24gPSB7IGRlbGV0ZUNoYW5uZWw6IHsgX190eXBlbmFtZT86ICdEZWxldGlvblJlc3BvbnNlJywgcmVzdWx0OiBEZWxldGlvblJlc3VsdCwgbWVzc2FnZT86IHN0cmluZyB8IG51bGwgfSB9O1xuXG5leHBvcnQgdHlwZSBQYXltZW50TWV0aG9kRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnUGF5bWVudE1ldGhvZCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIGVuYWJsZWQ6IGJvb2xlYW4sIGNoZWNrZXI/OiB7IF9fdHlwZW5hbWU/OiAnQ29uZmlndXJhYmxlT3BlcmF0aW9uJywgY29kZTogc3RyaW5nLCBhcmdzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlnQXJnJywgbmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIH0+IH0gfCBudWxsLCBoYW5kbGVyOiB7IF9fdHlwZW5hbWU/OiAnQ29uZmlndXJhYmxlT3BlcmF0aW9uJywgY29kZTogc3RyaW5nLCBhcmdzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlnQXJnJywgbmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIH0+IH0gfTtcblxuZXhwb3J0IHR5cGUgR2V0UGF5bWVudE1ldGhvZExpc3RRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgb3B0aW9uczogUGF5bWVudE1ldGhvZExpc3RPcHRpb25zO1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0UGF5bWVudE1ldGhvZExpc3RRdWVyeSA9IHsgcGF5bWVudE1ldGhvZHM6IHsgX190eXBlbmFtZT86ICdQYXltZW50TWV0aG9kTGlzdCcsIHRvdGFsSXRlbXM6IG51bWJlciwgaXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQYXltZW50TWV0aG9kJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZywgZW5hYmxlZDogYm9vbGVhbiwgY2hlY2tlcj86IHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb24nLCBjb2RlOiBzdHJpbmcsIGFyZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWdBcmcnLCBuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfT4gfSB8IG51bGwsIGhhbmRsZXI6IHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb24nLCBjb2RlOiBzdHJpbmcsIGFyZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWdBcmcnLCBuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfT4gfSB9PiB9IH07XG5cbmV4cG9ydCB0eXBlIEdldFBheW1lbnRNZXRob2RPcGVyYXRpb25zUXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7IFtrZXk6IHN0cmluZ106IG5ldmVyOyB9PjtcblxuXG5leHBvcnQgdHlwZSBHZXRQYXltZW50TWV0aG9kT3BlcmF0aW9uc1F1ZXJ5ID0geyBwYXltZW50TWV0aG9kRWxpZ2liaWxpdHlDaGVja2VyczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbmZpZ3VyYWJsZU9wZXJhdGlvbkRlZmluaXRpb24nLCBjb2RlOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIGFyZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWdBcmdEZWZpbml0aW9uJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIHJlcXVpcmVkOiBib29sZWFuLCBkZWZhdWx0VmFsdWU/OiBhbnkgfCBudWxsLCBsaXN0OiBib29sZWFuLCB1aT86IGFueSB8IG51bGwsIGxhYmVsPzogc3RyaW5nIHwgbnVsbCB9PiB9PiwgcGF5bWVudE1ldGhvZEhhbmRsZXJzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlndXJhYmxlT3BlcmF0aW9uRGVmaW5pdGlvbicsIGNvZGU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZywgYXJnczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbmZpZ0FyZ0RlZmluaXRpb24nLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgcmVxdWlyZWQ6IGJvb2xlYW4sIGRlZmF1bHRWYWx1ZT86IGFueSB8IG51bGwsIGxpc3Q6IGJvb2xlYW4sIHVpPzogYW55IHwgbnVsbCwgbGFiZWw/OiBzdHJpbmcgfCBudWxsIH0+IH0+IH07XG5cbmV4cG9ydCB0eXBlIEdldFBheW1lbnRNZXRob2RRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG59PjtcblxuXG5leHBvcnQgdHlwZSBHZXRQYXltZW50TWV0aG9kUXVlcnkgPSB7IHBheW1lbnRNZXRob2Q/OiB7IF9fdHlwZW5hbWU/OiAnUGF5bWVudE1ldGhvZCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIGVuYWJsZWQ6IGJvb2xlYW4sIGNoZWNrZXI/OiB7IF9fdHlwZW5hbWU/OiAnQ29uZmlndXJhYmxlT3BlcmF0aW9uJywgY29kZTogc3RyaW5nLCBhcmdzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlnQXJnJywgbmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIH0+IH0gfCBudWxsLCBoYW5kbGVyOiB7IF9fdHlwZW5hbWU/OiAnQ29uZmlndXJhYmxlT3BlcmF0aW9uJywgY29kZTogc3RyaW5nLCBhcmdzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlnQXJnJywgbmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIH0+IH0gfSB8IG51bGwgfTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlUGF5bWVudE1ldGhvZE11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogQ3JlYXRlUGF5bWVudE1ldGhvZElucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgQ3JlYXRlUGF5bWVudE1ldGhvZE11dGF0aW9uID0geyBjcmVhdGVQYXltZW50TWV0aG9kOiB7IF9fdHlwZW5hbWU/OiAnUGF5bWVudE1ldGhvZCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgbmFtZTogc3RyaW5nLCBjb2RlOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIGVuYWJsZWQ6IGJvb2xlYW4sIGNoZWNrZXI/OiB7IF9fdHlwZW5hbWU/OiAnQ29uZmlndXJhYmxlT3BlcmF0aW9uJywgY29kZTogc3RyaW5nLCBhcmdzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlnQXJnJywgbmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIH0+IH0gfCBudWxsLCBoYW5kbGVyOiB7IF9fdHlwZW5hbWU/OiAnQ29uZmlndXJhYmxlT3BlcmF0aW9uJywgY29kZTogc3RyaW5nLCBhcmdzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlnQXJnJywgbmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIH0+IH0gfSB9O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVQYXltZW50TWV0aG9kTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlucHV0OiBVcGRhdGVQYXltZW50TWV0aG9kSW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBVcGRhdGVQYXltZW50TWV0aG9kTXV0YXRpb24gPSB7IHVwZGF0ZVBheW1lbnRNZXRob2Q6IHsgX190eXBlbmFtZT86ICdQYXltZW50TWV0aG9kJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBuYW1lOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZywgZW5hYmxlZDogYm9vbGVhbiwgY2hlY2tlcj86IHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb24nLCBjb2RlOiBzdHJpbmcsIGFyZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWdBcmcnLCBuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfT4gfSB8IG51bGwsIGhhbmRsZXI6IHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb24nLCBjb2RlOiBzdHJpbmcsIGFyZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWdBcmcnLCBuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfT4gfSB9IH07XG5cbmV4cG9ydCB0eXBlIERlbGV0ZVBheW1lbnRNZXRob2RNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaWQ6IFNjYWxhcnNbJ0lEJ107XG4gIGZvcmNlPzogSW5wdXRNYXliZTxTY2FsYXJzWydCb29sZWFuJ10+O1xufT47XG5cblxuZXhwb3J0IHR5cGUgRGVsZXRlUGF5bWVudE1ldGhvZE11dGF0aW9uID0geyBkZWxldGVQYXltZW50TWV0aG9kOiB7IF9fdHlwZW5hbWU/OiAnRGVsZXRpb25SZXNwb25zZScsIHJlc3VsdDogRGVsZXRpb25SZXN1bHQsIG1lc3NhZ2U/OiBzdHJpbmcgfCBudWxsIH0gfTtcblxuZXhwb3J0IHR5cGUgR2xvYmFsU2V0dGluZ3NGcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdHbG9iYWxTZXR0aW5ncycsIGlkOiBzdHJpbmcsIGF2YWlsYWJsZUxhbmd1YWdlczogQXJyYXk8TGFuZ3VhZ2VDb2RlPiwgdHJhY2tJbnZlbnRvcnk6IGJvb2xlYW4sIG91dE9mU3RvY2tUaHJlc2hvbGQ6IG51bWJlciwgc2VydmVyQ29uZmlnOiB7IF9fdHlwZW5hbWU/OiAnU2VydmVyQ29uZmlnJywgcGVybWlzc2lvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQZXJtaXNzaW9uRGVmaW5pdGlvbicsIG5hbWU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZywgYXNzaWduYWJsZTogYm9vbGVhbiB9Piwgb3JkZXJQcm9jZXNzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnT3JkZXJQcm9jZXNzU3RhdGUnLCBuYW1lOiBzdHJpbmcgfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBHZXRHbG9iYWxTZXR0aW5nc1F1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8eyBba2V5OiBzdHJpbmddOiBuZXZlcjsgfT47XG5cblxuZXhwb3J0IHR5cGUgR2V0R2xvYmFsU2V0dGluZ3NRdWVyeSA9IHsgZ2xvYmFsU2V0dGluZ3M6IHsgX190eXBlbmFtZT86ICdHbG9iYWxTZXR0aW5ncycsIGlkOiBzdHJpbmcsIGF2YWlsYWJsZUxhbmd1YWdlczogQXJyYXk8TGFuZ3VhZ2VDb2RlPiwgdHJhY2tJbnZlbnRvcnk6IGJvb2xlYW4sIG91dE9mU3RvY2tUaHJlc2hvbGQ6IG51bWJlciwgc2VydmVyQ29uZmlnOiB7IF9fdHlwZW5hbWU/OiAnU2VydmVyQ29uZmlnJywgcGVybWlzc2lvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdQZXJtaXNzaW9uRGVmaW5pdGlvbicsIG5hbWU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZywgYXNzaWduYWJsZTogYm9vbGVhbiB9Piwgb3JkZXJQcm9jZXNzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnT3JkZXJQcm9jZXNzU3RhdGUnLCBuYW1lOiBzdHJpbmcgfT4gfSB9IH07XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUdsb2JhbFNldHRpbmdzTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlucHV0OiBVcGRhdGVHbG9iYWxTZXR0aW5nc0lucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgVXBkYXRlR2xvYmFsU2V0dGluZ3NNdXRhdGlvbiA9IHsgdXBkYXRlR2xvYmFsU2V0dGluZ3M6IHsgX190eXBlbmFtZT86ICdDaGFubmVsRGVmYXVsdExhbmd1YWdlRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH0gfCB7IF9fdHlwZW5hbWU/OiAnR2xvYmFsU2V0dGluZ3MnLCBpZDogc3RyaW5nLCBhdmFpbGFibGVMYW5ndWFnZXM6IEFycmF5PExhbmd1YWdlQ29kZT4sIHRyYWNrSW52ZW50b3J5OiBib29sZWFuLCBvdXRPZlN0b2NrVGhyZXNob2xkOiBudW1iZXIsIHNlcnZlckNvbmZpZzogeyBfX3R5cGVuYW1lPzogJ1NlcnZlckNvbmZpZycsIHBlcm1pc3Npb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUGVybWlzc2lvbkRlZmluaXRpb24nLCBuYW1lOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIGFzc2lnbmFibGU6IGJvb2xlYW4gfT4sIG9yZGVyUHJvY2VzczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ09yZGVyUHJvY2Vzc1N0YXRlJywgbmFtZTogc3RyaW5nIH0+IH0gfSB9O1xuXG50eXBlIEN1c3RvbUZpZWxkQ29uZmlnX0Jvb2xlYW5DdXN0b21GaWVsZENvbmZpZ19GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdCb29sZWFuQ3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9O1xuXG50eXBlIEN1c3RvbUZpZWxkQ29uZmlnX0RhdGVUaW1lQ3VzdG9tRmllbGRDb25maWdfRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH07XG5cbnR5cGUgQ3VzdG9tRmllbGRDb25maWdfRmxvYXRDdXN0b21GaWVsZENvbmZpZ19GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdGbG9hdEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfTtcblxudHlwZSBDdXN0b21GaWVsZENvbmZpZ19JbnRDdXN0b21GaWVsZENvbmZpZ19GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdJbnRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH07XG5cbnR5cGUgQ3VzdG9tRmllbGRDb25maWdfTG9jYWxlU3RyaW5nQ3VzdG9tRmllbGRDb25maWdfRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnTG9jYWxlU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9O1xuXG50eXBlIEN1c3RvbUZpZWxkQ29uZmlnX1JlbGF0aW9uQ3VzdG9tRmllbGRDb25maWdfRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnUmVsYXRpb25DdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH07XG5cbnR5cGUgQ3VzdG9tRmllbGRDb25maWdfU3RyaW5nQ3VzdG9tRmllbGRDb25maWdfRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9O1xuXG50eXBlIEN1c3RvbUZpZWxkQ29uZmlnX1RleHRDdXN0b21GaWVsZENvbmZpZ19GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdUZXh0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9O1xuXG5leHBvcnQgdHlwZSBDdXN0b21GaWVsZENvbmZpZ0ZyYWdtZW50ID0gQ3VzdG9tRmllbGRDb25maWdfQm9vbGVhbkN1c3RvbUZpZWxkQ29uZmlnX0ZyYWdtZW50IHwgQ3VzdG9tRmllbGRDb25maWdfRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZ19GcmFnbWVudCB8IEN1c3RvbUZpZWxkQ29uZmlnX0Zsb2F0Q3VzdG9tRmllbGRDb25maWdfRnJhZ21lbnQgfCBDdXN0b21GaWVsZENvbmZpZ19JbnRDdXN0b21GaWVsZENvbmZpZ19GcmFnbWVudCB8IEN1c3RvbUZpZWxkQ29uZmlnX0xvY2FsZVN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnX0ZyYWdtZW50IHwgQ3VzdG9tRmllbGRDb25maWdfUmVsYXRpb25DdXN0b21GaWVsZENvbmZpZ19GcmFnbWVudCB8IEN1c3RvbUZpZWxkQ29uZmlnX1N0cmluZ0N1c3RvbUZpZWxkQ29uZmlnX0ZyYWdtZW50IHwgQ3VzdG9tRmllbGRDb25maWdfVGV4dEN1c3RvbUZpZWxkQ29uZmlnX0ZyYWdtZW50O1xuXG5leHBvcnQgdHlwZSBTdHJpbmdDdXN0b21GaWVsZEZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ1N0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIG9wdGlvbnM/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU3RyaW5nRmllbGRPcHRpb24nLCB2YWx1ZTogc3RyaW5nLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfT4gfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9O1xuXG5leHBvcnQgdHlwZSBMb2NhbGVTdHJpbmdDdXN0b21GaWVsZEZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0xvY2FsZVN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH07XG5cbmV4cG9ydCB0eXBlIFRleHRDdXN0b21GaWVsZEZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ1RleHRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH07XG5cbmV4cG9ydCB0eXBlIEJvb2xlYW5DdXN0b21GaWVsZEZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0Jvb2xlYW5DdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH07XG5cbmV4cG9ydCB0eXBlIEludEN1c3RvbUZpZWxkRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnSW50Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBpbnRNaW4/OiBudW1iZXIgfCBudWxsLCBpbnRNYXg/OiBudW1iZXIgfCBudWxsLCBpbnRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfTtcblxuZXhwb3J0IHR5cGUgRmxvYXRDdXN0b21GaWVsZEZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0Zsb2F0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBmbG9hdE1pbj86IG51bWJlciB8IG51bGwsIGZsb2F0TWF4PzogbnVtYmVyIHwgbnVsbCwgZmxvYXRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfTtcblxuZXhwb3J0IHR5cGUgRGF0ZVRpbWVDdXN0b21GaWVsZEZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0RhdGVUaW1lQ3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkYXRldGltZU1pbj86IHN0cmluZyB8IG51bGwsIGRhdGV0aW1lTWF4Pzogc3RyaW5nIHwgbnVsbCwgZGF0ZXRpbWVTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfTtcblxuZXhwb3J0IHR5cGUgUmVsYXRpb25DdXN0b21GaWVsZEZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ1JlbGF0aW9uQ3VzdG9tRmllbGRDb25maWcnLCBlbnRpdHk6IHN0cmluZywgc2NhbGFyRmllbGRzOiBBcnJheTxzdHJpbmc+LCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9O1xuXG50eXBlIEN1c3RvbUZpZWxkc19Cb29sZWFuQ3VzdG9tRmllbGRDb25maWdfRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnQm9vbGVhbkN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfTtcblxudHlwZSBDdXN0b21GaWVsZHNfRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZ19GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdEYXRlVGltZUN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGF0ZXRpbWVNaW4/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZU1heD86IHN0cmluZyB8IG51bGwsIGRhdGV0aW1lU3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH07XG5cbnR5cGUgQ3VzdG9tRmllbGRzX0Zsb2F0Q3VzdG9tRmllbGRDb25maWdfRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnRmxvYXRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGZsb2F0TWluPzogbnVtYmVyIHwgbnVsbCwgZmxvYXRNYXg/OiBudW1iZXIgfCBudWxsLCBmbG9hdFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9O1xuXG50eXBlIEN1c3RvbUZpZWxkc19JbnRDdXN0b21GaWVsZENvbmZpZ19GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdJbnRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGludE1pbj86IG51bWJlciB8IG51bGwsIGludE1heD86IG51bWJlciB8IG51bGwsIGludFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9O1xuXG50eXBlIEN1c3RvbUZpZWxkc19Mb2NhbGVTdHJpbmdDdXN0b21GaWVsZENvbmZpZ19GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdMb2NhbGVTdHJpbmdDdXN0b21GaWVsZENvbmZpZycsIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9O1xuXG50eXBlIEN1c3RvbUZpZWxkc19SZWxhdGlvbkN1c3RvbUZpZWxkQ29uZmlnX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ1JlbGF0aW9uQ3VzdG9tRmllbGRDb25maWcnLCBlbnRpdHk6IHN0cmluZywgc2NhbGFyRmllbGRzOiBBcnJheTxzdHJpbmc+LCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9O1xuXG50eXBlIEN1c3RvbUZpZWxkc19TdHJpbmdDdXN0b21GaWVsZENvbmZpZ19GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdTdHJpbmdDdXN0b21GaWVsZENvbmZpZycsIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBvcHRpb25zPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1N0cmluZ0ZpZWxkT3B0aW9uJywgdmFsdWU6IHN0cmluZywgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0+IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfTtcblxudHlwZSBDdXN0b21GaWVsZHNfVGV4dEN1c3RvbUZpZWxkQ29uZmlnX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ1RleHRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH07XG5cbmV4cG9ydCB0eXBlIEN1c3RvbUZpZWxkc0ZyYWdtZW50ID0gQ3VzdG9tRmllbGRzX0Jvb2xlYW5DdXN0b21GaWVsZENvbmZpZ19GcmFnbWVudCB8IEN1c3RvbUZpZWxkc19EYXRlVGltZUN1c3RvbUZpZWxkQ29uZmlnX0ZyYWdtZW50IHwgQ3VzdG9tRmllbGRzX0Zsb2F0Q3VzdG9tRmllbGRDb25maWdfRnJhZ21lbnQgfCBDdXN0b21GaWVsZHNfSW50Q3VzdG9tRmllbGRDb25maWdfRnJhZ21lbnQgfCBDdXN0b21GaWVsZHNfTG9jYWxlU3RyaW5nQ3VzdG9tRmllbGRDb25maWdfRnJhZ21lbnQgfCBDdXN0b21GaWVsZHNfUmVsYXRpb25DdXN0b21GaWVsZENvbmZpZ19GcmFnbWVudCB8IEN1c3RvbUZpZWxkc19TdHJpbmdDdXN0b21GaWVsZENvbmZpZ19GcmFnbWVudCB8IEN1c3RvbUZpZWxkc19UZXh0Q3VzdG9tRmllbGRDb25maWdfRnJhZ21lbnQ7XG5cbmV4cG9ydCB0eXBlIEdldFNlcnZlckNvbmZpZ1F1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8eyBba2V5OiBzdHJpbmddOiBuZXZlcjsgfT47XG5cblxuZXhwb3J0IHR5cGUgR2V0U2VydmVyQ29uZmlnUXVlcnkgPSB7IGdsb2JhbFNldHRpbmdzOiB7IF9fdHlwZW5hbWU/OiAnR2xvYmFsU2V0dGluZ3MnLCBpZDogc3RyaW5nLCBzZXJ2ZXJDb25maWc6IHsgX190eXBlbmFtZT86ICdTZXJ2ZXJDb25maWcnLCBwZXJtaXR0ZWRBc3NldFR5cGVzOiBBcnJheTxzdHJpbmc+LCBvcmRlclByb2Nlc3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdPcmRlclByb2Nlc3NTdGF0ZScsIG5hbWU6IHN0cmluZywgdG86IEFycmF5PHN0cmluZz4gfT4sIHBlcm1pc3Npb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnUGVybWlzc2lvbkRlZmluaXRpb24nLCBuYW1lOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIGFzc2lnbmFibGU6IGJvb2xlYW4gfT4sIGN1c3RvbUZpZWxkQ29uZmlnOiB7IF9fdHlwZW5hbWU/OiAnQ3VzdG9tRmllbGRzJywgQWRkcmVzczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Jvb2xlYW5DdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRhdGV0aW1lTWluPzogc3RyaW5nIHwgbnVsbCwgZGF0ZXRpbWVNYXg/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZVN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0Zsb2F0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBmbG9hdE1pbj86IG51bWJlciB8IG51bGwsIGZsb2F0TWF4PzogbnVtYmVyIHwgbnVsbCwgZmxvYXRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdJbnRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGludE1pbj86IG51bWJlciB8IG51bGwsIGludE1heD86IG51bWJlciB8IG51bGwsIGludFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0xvY2FsZVN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnUmVsYXRpb25DdXN0b21GaWVsZENvbmZpZycsIGVudGl0eTogc3RyaW5nLCBzY2FsYXJGaWVsZHM6IEFycmF5PHN0cmluZz4sIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgb3B0aW9ucz86IEFycmF5PHsgX190eXBlbmFtZT86ICdTdHJpbmdGaWVsZE9wdGlvbicsIHZhbHVlOiBzdHJpbmcsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnVGV4dEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfT4sIEFkbWluaXN0cmF0b3I6IEFycmF5PHsgX190eXBlbmFtZT86ICdCb29sZWFuQ3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0RhdGVUaW1lQ3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkYXRldGltZU1pbj86IHN0cmluZyB8IG51bGwsIGRhdGV0aW1lTWF4Pzogc3RyaW5nIHwgbnVsbCwgZGF0ZXRpbWVTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdGbG9hdEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZmxvYXRNaW4/OiBudW1iZXIgfCBudWxsLCBmbG9hdE1heD86IG51bWJlciB8IG51bGwsIGZsb2F0U3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnSW50Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBpbnRNaW4/OiBudW1iZXIgfCBudWxsLCBpbnRNYXg/OiBudW1iZXIgfCBudWxsLCBpbnRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdMb2NhbGVTdHJpbmdDdXN0b21GaWVsZENvbmZpZycsIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ1JlbGF0aW9uQ3VzdG9tRmllbGRDb25maWcnLCBlbnRpdHk6IHN0cmluZywgc2NhbGFyRmllbGRzOiBBcnJheTxzdHJpbmc+LCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ1N0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIG9wdGlvbnM/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU3RyaW5nRmllbGRPcHRpb24nLCB2YWx1ZTogc3RyaW5nLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfT4gfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ1RleHRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0+LCBBc3NldDogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Jvb2xlYW5DdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRhdGV0aW1lTWluPzogc3RyaW5nIHwgbnVsbCwgZGF0ZXRpbWVNYXg/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZVN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0Zsb2F0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBmbG9hdE1pbj86IG51bWJlciB8IG51bGwsIGZsb2F0TWF4PzogbnVtYmVyIHwgbnVsbCwgZmxvYXRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdJbnRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGludE1pbj86IG51bWJlciB8IG51bGwsIGludE1heD86IG51bWJlciB8IG51bGwsIGludFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0xvY2FsZVN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnUmVsYXRpb25DdXN0b21GaWVsZENvbmZpZycsIGVudGl0eTogc3RyaW5nLCBzY2FsYXJGaWVsZHM6IEFycmF5PHN0cmluZz4sIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgb3B0aW9ucz86IEFycmF5PHsgX190eXBlbmFtZT86ICdTdHJpbmdGaWVsZE9wdGlvbicsIHZhbHVlOiBzdHJpbmcsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnVGV4dEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfT4sIENoYW5uZWw6IEFycmF5PHsgX190eXBlbmFtZT86ICdCb29sZWFuQ3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0RhdGVUaW1lQ3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkYXRldGltZU1pbj86IHN0cmluZyB8IG51bGwsIGRhdGV0aW1lTWF4Pzogc3RyaW5nIHwgbnVsbCwgZGF0ZXRpbWVTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdGbG9hdEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZmxvYXRNaW4/OiBudW1iZXIgfCBudWxsLCBmbG9hdE1heD86IG51bWJlciB8IG51bGwsIGZsb2F0U3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnSW50Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBpbnRNaW4/OiBudW1iZXIgfCBudWxsLCBpbnRNYXg/OiBudW1iZXIgfCBudWxsLCBpbnRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdMb2NhbGVTdHJpbmdDdXN0b21GaWVsZENvbmZpZycsIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ1JlbGF0aW9uQ3VzdG9tRmllbGRDb25maWcnLCBlbnRpdHk6IHN0cmluZywgc2NhbGFyRmllbGRzOiBBcnJheTxzdHJpbmc+LCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ1N0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIG9wdGlvbnM/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU3RyaW5nRmllbGRPcHRpb24nLCB2YWx1ZTogc3RyaW5nLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfT4gfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ1RleHRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0+LCBDb2xsZWN0aW9uOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQm9vbGVhbkN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdEYXRlVGltZUN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGF0ZXRpbWVNaW4/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZU1heD86IHN0cmluZyB8IG51bGwsIGRhdGV0aW1lU3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRmxvYXRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGZsb2F0TWluPzogbnVtYmVyIHwgbnVsbCwgZmxvYXRNYXg/OiBudW1iZXIgfCBudWxsLCBmbG9hdFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0ludEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgaW50TWluPzogbnVtYmVyIHwgbnVsbCwgaW50TWF4PzogbnVtYmVyIHwgbnVsbCwgaW50U3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnTG9jYWxlU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdSZWxhdGlvbkN1c3RvbUZpZWxkQ29uZmlnJywgZW50aXR5OiBzdHJpbmcsIHNjYWxhckZpZWxkczogQXJyYXk8c3RyaW5nPiwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdTdHJpbmdDdXN0b21GaWVsZENvbmZpZycsIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBvcHRpb25zPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1N0cmluZ0ZpZWxkT3B0aW9uJywgdmFsdWU6IHN0cmluZywgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0+IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdUZXh0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiwgQ291bnRyeTogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Jvb2xlYW5DdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRhdGV0aW1lTWluPzogc3RyaW5nIHwgbnVsbCwgZGF0ZXRpbWVNYXg/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZVN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0Zsb2F0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBmbG9hdE1pbj86IG51bWJlciB8IG51bGwsIGZsb2F0TWF4PzogbnVtYmVyIHwgbnVsbCwgZmxvYXRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdJbnRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGludE1pbj86IG51bWJlciB8IG51bGwsIGludE1heD86IG51bWJlciB8IG51bGwsIGludFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0xvY2FsZVN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnUmVsYXRpb25DdXN0b21GaWVsZENvbmZpZycsIGVudGl0eTogc3RyaW5nLCBzY2FsYXJGaWVsZHM6IEFycmF5PHN0cmluZz4sIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgb3B0aW9ucz86IEFycmF5PHsgX190eXBlbmFtZT86ICdTdHJpbmdGaWVsZE9wdGlvbicsIHZhbHVlOiBzdHJpbmcsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnVGV4dEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfT4sIEN1c3RvbWVyOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQm9vbGVhbkN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdEYXRlVGltZUN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGF0ZXRpbWVNaW4/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZU1heD86IHN0cmluZyB8IG51bGwsIGRhdGV0aW1lU3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRmxvYXRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGZsb2F0TWluPzogbnVtYmVyIHwgbnVsbCwgZmxvYXRNYXg/OiBudW1iZXIgfCBudWxsLCBmbG9hdFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0ludEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgaW50TWluPzogbnVtYmVyIHwgbnVsbCwgaW50TWF4PzogbnVtYmVyIHwgbnVsbCwgaW50U3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnTG9jYWxlU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdSZWxhdGlvbkN1c3RvbUZpZWxkQ29uZmlnJywgZW50aXR5OiBzdHJpbmcsIHNjYWxhckZpZWxkczogQXJyYXk8c3RyaW5nPiwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdTdHJpbmdDdXN0b21GaWVsZENvbmZpZycsIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBvcHRpb25zPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1N0cmluZ0ZpZWxkT3B0aW9uJywgdmFsdWU6IHN0cmluZywgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0+IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdUZXh0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiwgQ3VzdG9tZXJHcm91cDogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Jvb2xlYW5DdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRhdGV0aW1lTWluPzogc3RyaW5nIHwgbnVsbCwgZGF0ZXRpbWVNYXg/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZVN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0Zsb2F0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBmbG9hdE1pbj86IG51bWJlciB8IG51bGwsIGZsb2F0TWF4PzogbnVtYmVyIHwgbnVsbCwgZmxvYXRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdJbnRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGludE1pbj86IG51bWJlciB8IG51bGwsIGludE1heD86IG51bWJlciB8IG51bGwsIGludFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0xvY2FsZVN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnUmVsYXRpb25DdXN0b21GaWVsZENvbmZpZycsIGVudGl0eTogc3RyaW5nLCBzY2FsYXJGaWVsZHM6IEFycmF5PHN0cmluZz4sIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgb3B0aW9ucz86IEFycmF5PHsgX190eXBlbmFtZT86ICdTdHJpbmdGaWVsZE9wdGlvbicsIHZhbHVlOiBzdHJpbmcsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnVGV4dEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfT4sIEZhY2V0OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQm9vbGVhbkN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdEYXRlVGltZUN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGF0ZXRpbWVNaW4/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZU1heD86IHN0cmluZyB8IG51bGwsIGRhdGV0aW1lU3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRmxvYXRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGZsb2F0TWluPzogbnVtYmVyIHwgbnVsbCwgZmxvYXRNYXg/OiBudW1iZXIgfCBudWxsLCBmbG9hdFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0ludEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgaW50TWluPzogbnVtYmVyIHwgbnVsbCwgaW50TWF4PzogbnVtYmVyIHwgbnVsbCwgaW50U3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnTG9jYWxlU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdSZWxhdGlvbkN1c3RvbUZpZWxkQ29uZmlnJywgZW50aXR5OiBzdHJpbmcsIHNjYWxhckZpZWxkczogQXJyYXk8c3RyaW5nPiwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdTdHJpbmdDdXN0b21GaWVsZENvbmZpZycsIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBvcHRpb25zPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1N0cmluZ0ZpZWxkT3B0aW9uJywgdmFsdWU6IHN0cmluZywgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0+IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdUZXh0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiwgRmFjZXRWYWx1ZTogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Jvb2xlYW5DdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRhdGV0aW1lTWluPzogc3RyaW5nIHwgbnVsbCwgZGF0ZXRpbWVNYXg/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZVN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0Zsb2F0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBmbG9hdE1pbj86IG51bWJlciB8IG51bGwsIGZsb2F0TWF4PzogbnVtYmVyIHwgbnVsbCwgZmxvYXRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdJbnRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGludE1pbj86IG51bWJlciB8IG51bGwsIGludE1heD86IG51bWJlciB8IG51bGwsIGludFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0xvY2FsZVN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnUmVsYXRpb25DdXN0b21GaWVsZENvbmZpZycsIGVudGl0eTogc3RyaW5nLCBzY2FsYXJGaWVsZHM6IEFycmF5PHN0cmluZz4sIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgb3B0aW9ucz86IEFycmF5PHsgX190eXBlbmFtZT86ICdTdHJpbmdGaWVsZE9wdGlvbicsIHZhbHVlOiBzdHJpbmcsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnVGV4dEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfT4sIEZ1bGZpbGxtZW50OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQm9vbGVhbkN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdEYXRlVGltZUN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGF0ZXRpbWVNaW4/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZU1heD86IHN0cmluZyB8IG51bGwsIGRhdGV0aW1lU3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRmxvYXRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGZsb2F0TWluPzogbnVtYmVyIHwgbnVsbCwgZmxvYXRNYXg/OiBudW1iZXIgfCBudWxsLCBmbG9hdFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0ludEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgaW50TWluPzogbnVtYmVyIHwgbnVsbCwgaW50TWF4PzogbnVtYmVyIHwgbnVsbCwgaW50U3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnTG9jYWxlU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdSZWxhdGlvbkN1c3RvbUZpZWxkQ29uZmlnJywgZW50aXR5OiBzdHJpbmcsIHNjYWxhckZpZWxkczogQXJyYXk8c3RyaW5nPiwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdTdHJpbmdDdXN0b21GaWVsZENvbmZpZycsIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBvcHRpb25zPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1N0cmluZ0ZpZWxkT3B0aW9uJywgdmFsdWU6IHN0cmluZywgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0+IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdUZXh0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiwgR2xvYmFsU2V0dGluZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdCb29sZWFuQ3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0RhdGVUaW1lQ3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkYXRldGltZU1pbj86IHN0cmluZyB8IG51bGwsIGRhdGV0aW1lTWF4Pzogc3RyaW5nIHwgbnVsbCwgZGF0ZXRpbWVTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdGbG9hdEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZmxvYXRNaW4/OiBudW1iZXIgfCBudWxsLCBmbG9hdE1heD86IG51bWJlciB8IG51bGwsIGZsb2F0U3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnSW50Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBpbnRNaW4/OiBudW1iZXIgfCBudWxsLCBpbnRNYXg/OiBudW1iZXIgfCBudWxsLCBpbnRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdMb2NhbGVTdHJpbmdDdXN0b21GaWVsZENvbmZpZycsIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ1JlbGF0aW9uQ3VzdG9tRmllbGRDb25maWcnLCBlbnRpdHk6IHN0cmluZywgc2NhbGFyRmllbGRzOiBBcnJheTxzdHJpbmc+LCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ1N0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIG9wdGlvbnM/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU3RyaW5nRmllbGRPcHRpb24nLCB2YWx1ZTogc3RyaW5nLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfT4gfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ1RleHRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0+LCBPcmRlcjogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Jvb2xlYW5DdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRhdGV0aW1lTWluPzogc3RyaW5nIHwgbnVsbCwgZGF0ZXRpbWVNYXg/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZVN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0Zsb2F0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBmbG9hdE1pbj86IG51bWJlciB8IG51bGwsIGZsb2F0TWF4PzogbnVtYmVyIHwgbnVsbCwgZmxvYXRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdJbnRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGludE1pbj86IG51bWJlciB8IG51bGwsIGludE1heD86IG51bWJlciB8IG51bGwsIGludFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0xvY2FsZVN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnUmVsYXRpb25DdXN0b21GaWVsZENvbmZpZycsIGVudGl0eTogc3RyaW5nLCBzY2FsYXJGaWVsZHM6IEFycmF5PHN0cmluZz4sIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgb3B0aW9ucz86IEFycmF5PHsgX190eXBlbmFtZT86ICdTdHJpbmdGaWVsZE9wdGlvbicsIHZhbHVlOiBzdHJpbmcsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnVGV4dEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfT4sIE9yZGVyTGluZTogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Jvb2xlYW5DdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRhdGV0aW1lTWluPzogc3RyaW5nIHwgbnVsbCwgZGF0ZXRpbWVNYXg/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZVN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0Zsb2F0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBmbG9hdE1pbj86IG51bWJlciB8IG51bGwsIGZsb2F0TWF4PzogbnVtYmVyIHwgbnVsbCwgZmxvYXRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdJbnRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGludE1pbj86IG51bWJlciB8IG51bGwsIGludE1heD86IG51bWJlciB8IG51bGwsIGludFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0xvY2FsZVN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnUmVsYXRpb25DdXN0b21GaWVsZENvbmZpZycsIGVudGl0eTogc3RyaW5nLCBzY2FsYXJGaWVsZHM6IEFycmF5PHN0cmluZz4sIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgb3B0aW9ucz86IEFycmF5PHsgX190eXBlbmFtZT86ICdTdHJpbmdGaWVsZE9wdGlvbicsIHZhbHVlOiBzdHJpbmcsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnVGV4dEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfT4sIFBheW1lbnRNZXRob2Q6IEFycmF5PHsgX190eXBlbmFtZT86ICdCb29sZWFuQ3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0RhdGVUaW1lQ3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkYXRldGltZU1pbj86IHN0cmluZyB8IG51bGwsIGRhdGV0aW1lTWF4Pzogc3RyaW5nIHwgbnVsbCwgZGF0ZXRpbWVTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdGbG9hdEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZmxvYXRNaW4/OiBudW1iZXIgfCBudWxsLCBmbG9hdE1heD86IG51bWJlciB8IG51bGwsIGZsb2F0U3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnSW50Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBpbnRNaW4/OiBudW1iZXIgfCBudWxsLCBpbnRNYXg/OiBudW1iZXIgfCBudWxsLCBpbnRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdMb2NhbGVTdHJpbmdDdXN0b21GaWVsZENvbmZpZycsIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ1JlbGF0aW9uQ3VzdG9tRmllbGRDb25maWcnLCBlbnRpdHk6IHN0cmluZywgc2NhbGFyRmllbGRzOiBBcnJheTxzdHJpbmc+LCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ1N0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIG9wdGlvbnM/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU3RyaW5nRmllbGRPcHRpb24nLCB2YWx1ZTogc3RyaW5nLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfT4gfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ1RleHRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0+LCBQcm9kdWN0OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQm9vbGVhbkN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdEYXRlVGltZUN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGF0ZXRpbWVNaW4/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZU1heD86IHN0cmluZyB8IG51bGwsIGRhdGV0aW1lU3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRmxvYXRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGZsb2F0TWluPzogbnVtYmVyIHwgbnVsbCwgZmxvYXRNYXg/OiBudW1iZXIgfCBudWxsLCBmbG9hdFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0ludEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgaW50TWluPzogbnVtYmVyIHwgbnVsbCwgaW50TWF4PzogbnVtYmVyIHwgbnVsbCwgaW50U3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnTG9jYWxlU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdSZWxhdGlvbkN1c3RvbUZpZWxkQ29uZmlnJywgZW50aXR5OiBzdHJpbmcsIHNjYWxhckZpZWxkczogQXJyYXk8c3RyaW5nPiwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdTdHJpbmdDdXN0b21GaWVsZENvbmZpZycsIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBvcHRpb25zPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1N0cmluZ0ZpZWxkT3B0aW9uJywgdmFsdWU6IHN0cmluZywgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0+IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdUZXh0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiwgUHJvZHVjdE9wdGlvbjogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Jvb2xlYW5DdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRhdGV0aW1lTWluPzogc3RyaW5nIHwgbnVsbCwgZGF0ZXRpbWVNYXg/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZVN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0Zsb2F0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBmbG9hdE1pbj86IG51bWJlciB8IG51bGwsIGZsb2F0TWF4PzogbnVtYmVyIHwgbnVsbCwgZmxvYXRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdJbnRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGludE1pbj86IG51bWJlciB8IG51bGwsIGludE1heD86IG51bWJlciB8IG51bGwsIGludFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0xvY2FsZVN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnUmVsYXRpb25DdXN0b21GaWVsZENvbmZpZycsIGVudGl0eTogc3RyaW5nLCBzY2FsYXJGaWVsZHM6IEFycmF5PHN0cmluZz4sIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgb3B0aW9ucz86IEFycmF5PHsgX190eXBlbmFtZT86ICdTdHJpbmdGaWVsZE9wdGlvbicsIHZhbHVlOiBzdHJpbmcsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnVGV4dEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfT4sIFByb2R1Y3RPcHRpb25Hcm91cDogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Jvb2xlYW5DdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRhdGV0aW1lTWluPzogc3RyaW5nIHwgbnVsbCwgZGF0ZXRpbWVNYXg/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZVN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0Zsb2F0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBmbG9hdE1pbj86IG51bWJlciB8IG51bGwsIGZsb2F0TWF4PzogbnVtYmVyIHwgbnVsbCwgZmxvYXRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdJbnRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGludE1pbj86IG51bWJlciB8IG51bGwsIGludE1heD86IG51bWJlciB8IG51bGwsIGludFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0xvY2FsZVN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnUmVsYXRpb25DdXN0b21GaWVsZENvbmZpZycsIGVudGl0eTogc3RyaW5nLCBzY2FsYXJGaWVsZHM6IEFycmF5PHN0cmluZz4sIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgb3B0aW9ucz86IEFycmF5PHsgX190eXBlbmFtZT86ICdTdHJpbmdGaWVsZE9wdGlvbicsIHZhbHVlOiBzdHJpbmcsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnVGV4dEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfT4sIFByb2R1Y3RWYXJpYW50OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQm9vbGVhbkN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdEYXRlVGltZUN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGF0ZXRpbWVNaW4/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZU1heD86IHN0cmluZyB8IG51bGwsIGRhdGV0aW1lU3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRmxvYXRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGZsb2F0TWluPzogbnVtYmVyIHwgbnVsbCwgZmxvYXRNYXg/OiBudW1iZXIgfCBudWxsLCBmbG9hdFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0ludEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgaW50TWluPzogbnVtYmVyIHwgbnVsbCwgaW50TWF4PzogbnVtYmVyIHwgbnVsbCwgaW50U3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnTG9jYWxlU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdSZWxhdGlvbkN1c3RvbUZpZWxkQ29uZmlnJywgZW50aXR5OiBzdHJpbmcsIHNjYWxhckZpZWxkczogQXJyYXk8c3RyaW5nPiwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdTdHJpbmdDdXN0b21GaWVsZENvbmZpZycsIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBvcHRpb25zPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1N0cmluZ0ZpZWxkT3B0aW9uJywgdmFsdWU6IHN0cmluZywgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0+IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdUZXh0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiwgUHJvbW90aW9uOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQm9vbGVhbkN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdEYXRlVGltZUN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGF0ZXRpbWVNaW4/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZU1heD86IHN0cmluZyB8IG51bGwsIGRhdGV0aW1lU3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRmxvYXRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGZsb2F0TWluPzogbnVtYmVyIHwgbnVsbCwgZmxvYXRNYXg/OiBudW1iZXIgfCBudWxsLCBmbG9hdFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0ludEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgaW50TWluPzogbnVtYmVyIHwgbnVsbCwgaW50TWF4PzogbnVtYmVyIHwgbnVsbCwgaW50U3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnTG9jYWxlU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdSZWxhdGlvbkN1c3RvbUZpZWxkQ29uZmlnJywgZW50aXR5OiBzdHJpbmcsIHNjYWxhckZpZWxkczogQXJyYXk8c3RyaW5nPiwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdTdHJpbmdDdXN0b21GaWVsZENvbmZpZycsIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBvcHRpb25zPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1N0cmluZ0ZpZWxkT3B0aW9uJywgdmFsdWU6IHN0cmluZywgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0+IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdUZXh0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiwgU2hpcHBpbmdNZXRob2Q6IEFycmF5PHsgX190eXBlbmFtZT86ICdCb29sZWFuQ3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0RhdGVUaW1lQ3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkYXRldGltZU1pbj86IHN0cmluZyB8IG51bGwsIGRhdGV0aW1lTWF4Pzogc3RyaW5nIHwgbnVsbCwgZGF0ZXRpbWVTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdGbG9hdEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZmxvYXRNaW4/OiBudW1iZXIgfCBudWxsLCBmbG9hdE1heD86IG51bWJlciB8IG51bGwsIGZsb2F0U3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnSW50Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBpbnRNaW4/OiBudW1iZXIgfCBudWxsLCBpbnRNYXg/OiBudW1iZXIgfCBudWxsLCBpbnRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdMb2NhbGVTdHJpbmdDdXN0b21GaWVsZENvbmZpZycsIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ1JlbGF0aW9uQ3VzdG9tRmllbGRDb25maWcnLCBlbnRpdHk6IHN0cmluZywgc2NhbGFyRmllbGRzOiBBcnJheTxzdHJpbmc+LCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ1N0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIG9wdGlvbnM/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU3RyaW5nRmllbGRPcHRpb24nLCB2YWx1ZTogc3RyaW5nLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfT4gfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ1RleHRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0+LCBUYXhDYXRlZ29yeTogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Jvb2xlYW5DdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRhdGV0aW1lTWluPzogc3RyaW5nIHwgbnVsbCwgZGF0ZXRpbWVNYXg/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZVN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0Zsb2F0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBmbG9hdE1pbj86IG51bWJlciB8IG51bGwsIGZsb2F0TWF4PzogbnVtYmVyIHwgbnVsbCwgZmxvYXRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdJbnRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGludE1pbj86IG51bWJlciB8IG51bGwsIGludE1heD86IG51bWJlciB8IG51bGwsIGludFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0xvY2FsZVN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnUmVsYXRpb25DdXN0b21GaWVsZENvbmZpZycsIGVudGl0eTogc3RyaW5nLCBzY2FsYXJGaWVsZHM6IEFycmF5PHN0cmluZz4sIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgb3B0aW9ucz86IEFycmF5PHsgX190eXBlbmFtZT86ICdTdHJpbmdGaWVsZE9wdGlvbicsIHZhbHVlOiBzdHJpbmcsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnVGV4dEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfT4sIFRheFJhdGU6IEFycmF5PHsgX190eXBlbmFtZT86ICdCb29sZWFuQ3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0RhdGVUaW1lQ3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkYXRldGltZU1pbj86IHN0cmluZyB8IG51bGwsIGRhdGV0aW1lTWF4Pzogc3RyaW5nIHwgbnVsbCwgZGF0ZXRpbWVTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdGbG9hdEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZmxvYXRNaW4/OiBudW1iZXIgfCBudWxsLCBmbG9hdE1heD86IG51bWJlciB8IG51bGwsIGZsb2F0U3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnSW50Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBpbnRNaW4/OiBudW1iZXIgfCBudWxsLCBpbnRNYXg/OiBudW1iZXIgfCBudWxsLCBpbnRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdMb2NhbGVTdHJpbmdDdXN0b21GaWVsZENvbmZpZycsIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ1JlbGF0aW9uQ3VzdG9tRmllbGRDb25maWcnLCBlbnRpdHk6IHN0cmluZywgc2NhbGFyRmllbGRzOiBBcnJheTxzdHJpbmc+LCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ1N0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIG9wdGlvbnM/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU3RyaW5nRmllbGRPcHRpb24nLCB2YWx1ZTogc3RyaW5nLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfT4gfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ1RleHRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0+LCBVc2VyOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQm9vbGVhbkN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdEYXRlVGltZUN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGF0ZXRpbWVNaW4/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZU1heD86IHN0cmluZyB8IG51bGwsIGRhdGV0aW1lU3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRmxvYXRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGZsb2F0TWluPzogbnVtYmVyIHwgbnVsbCwgZmxvYXRNYXg/OiBudW1iZXIgfCBudWxsLCBmbG9hdFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0ludEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgaW50TWluPzogbnVtYmVyIHwgbnVsbCwgaW50TWF4PzogbnVtYmVyIHwgbnVsbCwgaW50U3RlcD86IG51bWJlciB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnTG9jYWxlU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdSZWxhdGlvbkN1c3RvbUZpZWxkQ29uZmlnJywgZW50aXR5OiBzdHJpbmcsIHNjYWxhckZpZWxkczogQXJyYXk8c3RyaW5nPiwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdTdHJpbmdDdXN0b21GaWVsZENvbmZpZycsIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBvcHRpb25zPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1N0cmluZ0ZpZWxkT3B0aW9uJywgdmFsdWU6IHN0cmluZywgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0+IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdUZXh0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiwgWm9uZTogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0Jvb2xlYW5DdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRhdGV0aW1lTWluPzogc3RyaW5nIHwgbnVsbCwgZGF0ZXRpbWVNYXg/OiBzdHJpbmcgfCBudWxsLCBkYXRldGltZVN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0Zsb2F0Q3VzdG9tRmllbGRDb25maWcnLCBuYW1lOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgbGlzdDogYm9vbGVhbiwgcmVhZG9ubHk/OiBib29sZWFuIHwgbnVsbCwgbnVsbGFibGU/OiBib29sZWFuIHwgbnVsbCwgdWk/OiBhbnkgfCBudWxsLCBmbG9hdE1pbj86IG51bWJlciB8IG51bGwsIGZsb2F0TWF4PzogbnVtYmVyIHwgbnVsbCwgZmxvYXRTdGVwPzogbnVtYmVyIHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfSB8IHsgX190eXBlbmFtZT86ICdJbnRDdXN0b21GaWVsZENvbmZpZycsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGludE1pbj86IG51bWJlciB8IG51bGwsIGludE1heD86IG51bWJlciB8IG51bGwsIGludFN0ZXA/OiBudW1iZXIgfCBudWxsLCBkZXNjcmlwdGlvbj86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9IHwgeyBfX3R5cGVuYW1lPzogJ0xvY2FsZVN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnJywgcGF0dGVybj86IHN0cmluZyB8IG51bGwsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnUmVsYXRpb25DdXN0b21GaWVsZENvbmZpZycsIGVudGl0eTogc3RyaW5nLCBzY2FsYXJGaWVsZHM6IEFycmF5PHN0cmluZz4sIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCBsaXN0OiBib29sZWFuLCByZWFkb25seT86IGJvb2xlYW4gfCBudWxsLCBudWxsYWJsZT86IGJvb2xlYW4gfCBudWxsLCB1aT86IGFueSB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnU3RyaW5nQ3VzdG9tRmllbGRDb25maWcnLCBwYXR0ZXJuPzogc3RyaW5nIHwgbnVsbCwgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgb3B0aW9ucz86IEFycmF5PHsgX190eXBlbmFtZT86ICdTdHJpbmdGaWVsZE9wdGlvbicsIHZhbHVlOiBzdHJpbmcsIGxhYmVsPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCB9PiB8IG51bGwsIGRlc2NyaXB0aW9uPzogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0xvY2FsaXplZFN0cmluZycsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCB2YWx1ZTogc3RyaW5nIH0+IHwgbnVsbCwgbGFiZWw/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsIH0gfCB7IF9fdHlwZW5hbWU/OiAnVGV4dEN1c3RvbUZpZWxkQ29uZmlnJywgbmFtZTogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGxpc3Q6IGJvb2xlYW4sIHJlYWRvbmx5PzogYm9vbGVhbiB8IG51bGwsIG51bGxhYmxlPzogYm9vbGVhbiB8IG51bGwsIHVpPzogYW55IHwgbnVsbCwgZGVzY3JpcHRpb24/OiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnTG9jYWxpemVkU3RyaW5nJywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIHZhbHVlOiBzdHJpbmcgfT4gfCBudWxsLCBsYWJlbD86IEFycmF5PHsgX190eXBlbmFtZT86ICdMb2NhbGl6ZWRTdHJpbmcnLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgdmFsdWU6IHN0cmluZyB9PiB8IG51bGwgfT4gfSB9IH0gfTtcblxuZXhwb3J0IHR5cGUgSm9iSW5mb0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0pvYicsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCBzdGFydGVkQXQ/OiBhbnkgfCBudWxsLCBzZXR0bGVkQXQ/OiBhbnkgfCBudWxsLCBxdWV1ZU5hbWU6IHN0cmluZywgc3RhdGU6IEpvYlN0YXRlLCBpc1NldHRsZWQ6IGJvb2xlYW4sIHByb2dyZXNzOiBudW1iZXIsIGR1cmF0aW9uOiBudW1iZXIsIGRhdGE/OiBhbnkgfCBudWxsLCByZXN1bHQ/OiBhbnkgfCBudWxsLCBlcnJvcj86IGFueSB8IG51bGwsIHJldHJpZXM6IG51bWJlciwgYXR0ZW1wdHM6IG51bWJlciB9O1xuXG5leHBvcnQgdHlwZSBHZXRKb2JJbmZvUXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0Sm9iSW5mb1F1ZXJ5ID0geyBqb2I/OiB7IF9fdHlwZW5hbWU/OiAnSm9iJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHN0YXJ0ZWRBdD86IGFueSB8IG51bGwsIHNldHRsZWRBdD86IGFueSB8IG51bGwsIHF1ZXVlTmFtZTogc3RyaW5nLCBzdGF0ZTogSm9iU3RhdGUsIGlzU2V0dGxlZDogYm9vbGVhbiwgcHJvZ3Jlc3M6IG51bWJlciwgZHVyYXRpb246IG51bWJlciwgZGF0YT86IGFueSB8IG51bGwsIHJlc3VsdD86IGFueSB8IG51bGwsIGVycm9yPzogYW55IHwgbnVsbCwgcmV0cmllczogbnVtYmVyLCBhdHRlbXB0czogbnVtYmVyIH0gfCBudWxsIH07XG5cbmV4cG9ydCB0eXBlIEdldEFsbEpvYnNRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgb3B0aW9ucz86IElucHV0TWF5YmU8Sm9iTGlzdE9wdGlvbnM+O1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0QWxsSm9ic1F1ZXJ5ID0geyBqb2JzOiB7IF9fdHlwZW5hbWU/OiAnSm9iTGlzdCcsIHRvdGFsSXRlbXM6IG51bWJlciwgaXRlbXM6IEFycmF5PHsgX190eXBlbmFtZT86ICdKb2InLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgc3RhcnRlZEF0PzogYW55IHwgbnVsbCwgc2V0dGxlZEF0PzogYW55IHwgbnVsbCwgcXVldWVOYW1lOiBzdHJpbmcsIHN0YXRlOiBKb2JTdGF0ZSwgaXNTZXR0bGVkOiBib29sZWFuLCBwcm9ncmVzczogbnVtYmVyLCBkdXJhdGlvbjogbnVtYmVyLCBkYXRhPzogYW55IHwgbnVsbCwgcmVzdWx0PzogYW55IHwgbnVsbCwgZXJyb3I/OiBhbnkgfCBudWxsLCByZXRyaWVzOiBudW1iZXIsIGF0dGVtcHRzOiBudW1iZXIgfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBHZXRKb2JzQnlJZFF1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8e1xuICBpZHM6IEFycmF5PFNjYWxhcnNbJ0lEJ10+IHwgU2NhbGFyc1snSUQnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIEdldEpvYnNCeUlkUXVlcnkgPSB7IGpvYnNCeUlkOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnSm9iJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHN0YXJ0ZWRBdD86IGFueSB8IG51bGwsIHNldHRsZWRBdD86IGFueSB8IG51bGwsIHF1ZXVlTmFtZTogc3RyaW5nLCBzdGF0ZTogSm9iU3RhdGUsIGlzU2V0dGxlZDogYm9vbGVhbiwgcHJvZ3Jlc3M6IG51bWJlciwgZHVyYXRpb246IG51bWJlciwgZGF0YT86IGFueSB8IG51bGwsIHJlc3VsdD86IGFueSB8IG51bGwsIGVycm9yPzogYW55IHwgbnVsbCwgcmV0cmllczogbnVtYmVyLCBhdHRlbXB0czogbnVtYmVyIH0+IH07XG5cbmV4cG9ydCB0eXBlIEdldEpvYlF1ZXVlTGlzdFF1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8eyBba2V5OiBzdHJpbmddOiBuZXZlcjsgfT47XG5cblxuZXhwb3J0IHR5cGUgR2V0Sm9iUXVldWVMaXN0UXVlcnkgPSB7IGpvYlF1ZXVlczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0pvYlF1ZXVlJywgbmFtZTogc3RyaW5nLCBydW5uaW5nOiBib29sZWFuIH0+IH07XG5cbmV4cG9ydCB0eXBlIENhbmNlbEpvYk11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpZDogU2NhbGFyc1snSUQnXTtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIENhbmNlbEpvYk11dGF0aW9uID0geyBjYW5jZWxKb2I6IHsgX190eXBlbmFtZT86ICdKb2InLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgc3RhcnRlZEF0PzogYW55IHwgbnVsbCwgc2V0dGxlZEF0PzogYW55IHwgbnVsbCwgcXVldWVOYW1lOiBzdHJpbmcsIHN0YXRlOiBKb2JTdGF0ZSwgaXNTZXR0bGVkOiBib29sZWFuLCBwcm9ncmVzczogbnVtYmVyLCBkdXJhdGlvbjogbnVtYmVyLCBkYXRhPzogYW55IHwgbnVsbCwgcmVzdWx0PzogYW55IHwgbnVsbCwgZXJyb3I/OiBhbnkgfCBudWxsLCByZXRyaWVzOiBudW1iZXIsIGF0dGVtcHRzOiBudW1iZXIgfSB9O1xuXG5leHBvcnQgdHlwZSBSZWluZGV4TXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7IFtrZXk6IHN0cmluZ106IG5ldmVyOyB9PjtcblxuXG5leHBvcnQgdHlwZSBSZWluZGV4TXV0YXRpb24gPSB7IHJlaW5kZXg6IHsgX190eXBlbmFtZT86ICdKb2InLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgc3RhcnRlZEF0PzogYW55IHwgbnVsbCwgc2V0dGxlZEF0PzogYW55IHwgbnVsbCwgcXVldWVOYW1lOiBzdHJpbmcsIHN0YXRlOiBKb2JTdGF0ZSwgaXNTZXR0bGVkOiBib29sZWFuLCBwcm9ncmVzczogbnVtYmVyLCBkdXJhdGlvbjogbnVtYmVyLCBkYXRhPzogYW55IHwgbnVsbCwgcmVzdWx0PzogYW55IHwgbnVsbCwgZXJyb3I/OiBhbnkgfCBudWxsLCByZXRyaWVzOiBudW1iZXIsIGF0dGVtcHRzOiBudW1iZXIgfSB9O1xuXG5leHBvcnQgdHlwZSBHZXRQZW5kaW5nU2VhcmNoSW5kZXhVcGRhdGVzUXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7IFtrZXk6IHN0cmluZ106IG5ldmVyOyB9PjtcblxuXG5leHBvcnQgdHlwZSBHZXRQZW5kaW5nU2VhcmNoSW5kZXhVcGRhdGVzUXVlcnkgPSB7IHBlbmRpbmdTZWFyY2hJbmRleFVwZGF0ZXM6IG51bWJlciB9O1xuXG5leHBvcnQgdHlwZSBSdW5QZW5kaW5nU2VhcmNoSW5kZXhVcGRhdGVzTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7IFtrZXk6IHN0cmluZ106IG5ldmVyOyB9PjtcblxuXG5leHBvcnQgdHlwZSBSdW5QZW5kaW5nU2VhcmNoSW5kZXhVcGRhdGVzTXV0YXRpb24gPSB7IHJ1blBlbmRpbmdTZWFyY2hJbmRleFVwZGF0ZXM6IHsgX190eXBlbmFtZT86ICdTdWNjZXNzJywgc3VjY2VzczogYm9vbGVhbiB9IH07XG5cbmV4cG9ydCB0eXBlIENvbmZpZ3VyYWJsZU9wZXJhdGlvbkZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0NvbmZpZ3VyYWJsZU9wZXJhdGlvbicsIGNvZGU6IHN0cmluZywgYXJnczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbmZpZ0FyZycsIG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyB9PiB9O1xuXG5leHBvcnQgdHlwZSBDb25maWd1cmFibGVPcGVyYXRpb25EZWZGcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb25EZWZpbml0aW9uJywgY29kZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBhcmdzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlnQXJnRGVmaW5pdGlvbicsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCByZXF1aXJlZDogYm9vbGVhbiwgZGVmYXVsdFZhbHVlPzogYW55IHwgbnVsbCwgbGlzdDogYm9vbGVhbiwgdWk/OiBhbnkgfCBudWxsLCBsYWJlbD86IHN0cmluZyB8IG51bGwgfT4gfTtcblxudHlwZSBFcnJvclJlc3VsdF9BbHJlYWR5UmVmdW5kZWRFcnJvcl9GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdBbHJlYWR5UmVmdW5kZWRFcnJvcicsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfTtcblxudHlwZSBFcnJvclJlc3VsdF9DYW5jZWxBY3RpdmVPcmRlckVycm9yX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0NhbmNlbEFjdGl2ZU9yZGVyRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH07XG5cbnR5cGUgRXJyb3JSZXN1bHRfQ2hhbm5lbERlZmF1bHRMYW5ndWFnZUVycm9yX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0NoYW5uZWxEZWZhdWx0TGFuZ3VhZ2VFcnJvcicsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfTtcblxudHlwZSBFcnJvclJlc3VsdF9Db3Vwb25Db2RlRXhwaXJlZEVycm9yX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0NvdXBvbkNvZGVFeHBpcmVkRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH07XG5cbnR5cGUgRXJyb3JSZXN1bHRfQ291cG9uQ29kZUludmFsaWRFcnJvcl9GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdDb3Vwb25Db2RlSW52YWxpZEVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9O1xuXG50eXBlIEVycm9yUmVzdWx0X0NvdXBvbkNvZGVMaW1pdEVycm9yX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0NvdXBvbkNvZGVMaW1pdEVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9O1xuXG50eXBlIEVycm9yUmVzdWx0X0NyZWF0ZUZ1bGZpbGxtZW50RXJyb3JfRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnQ3JlYXRlRnVsZmlsbG1lbnRFcnJvcicsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfTtcblxudHlwZSBFcnJvclJlc3VsdF9FbWFpbEFkZHJlc3NDb25mbGljdEVycm9yX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0VtYWlsQWRkcmVzc0NvbmZsaWN0RXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH07XG5cbnR5cGUgRXJyb3JSZXN1bHRfRW1wdHlPcmRlckxpbmVTZWxlY3Rpb25FcnJvcl9GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdFbXB0eU9yZGVyTGluZVNlbGVjdGlvbkVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9O1xuXG50eXBlIEVycm9yUmVzdWx0X0Z1bGZpbGxtZW50U3RhdGVUcmFuc2l0aW9uRXJyb3JfRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnRnVsZmlsbG1lbnRTdGF0ZVRyYW5zaXRpb25FcnJvcicsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfTtcblxudHlwZSBFcnJvclJlc3VsdF9JbnN1ZmZpY2llbnRTdG9ja0Vycm9yX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0luc3VmZmljaWVudFN0b2NrRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH07XG5cbnR5cGUgRXJyb3JSZXN1bHRfSW5zdWZmaWNpZW50U3RvY2tPbkhhbmRFcnJvcl9GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdJbnN1ZmZpY2llbnRTdG9ja09uSGFuZEVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9O1xuXG50eXBlIEVycm9yUmVzdWx0X0ludmFsaWRDcmVkZW50aWFsc0Vycm9yX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ0ludmFsaWRDcmVkZW50aWFsc0Vycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9O1xuXG50eXBlIEVycm9yUmVzdWx0X0ludmFsaWRGdWxmaWxsbWVudEhhbmRsZXJFcnJvcl9GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdJbnZhbGlkRnVsZmlsbG1lbnRIYW5kbGVyRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH07XG5cbnR5cGUgRXJyb3JSZXN1bHRfSXRlbXNBbHJlYWR5RnVsZmlsbGVkRXJyb3JfRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnSXRlbXNBbHJlYWR5RnVsZmlsbGVkRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH07XG5cbnR5cGUgRXJyb3JSZXN1bHRfTGFuZ3VhZ2VOb3RBdmFpbGFibGVFcnJvcl9GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdMYW5ndWFnZU5vdEF2YWlsYWJsZUVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9O1xuXG50eXBlIEVycm9yUmVzdWx0X01hbnVhbFBheW1lbnRTdGF0ZUVycm9yX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ01hbnVhbFBheW1lbnRTdGF0ZUVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9O1xuXG50eXBlIEVycm9yUmVzdWx0X01pbWVUeXBlRXJyb3JfRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnTWltZVR5cGVFcnJvcicsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfTtcblxudHlwZSBFcnJvclJlc3VsdF9NaXNzaW5nQ29uZGl0aW9uc0Vycm9yX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ01pc3NpbmdDb25kaXRpb25zRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH07XG5cbnR5cGUgRXJyb3JSZXN1bHRfTXVsdGlwbGVPcmRlckVycm9yX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ011bHRpcGxlT3JkZXJFcnJvcicsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfTtcblxudHlwZSBFcnJvclJlc3VsdF9OYXRpdmVBdXRoU3RyYXRlZ3lFcnJvcl9GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdOYXRpdmVBdXRoU3RyYXRlZ3lFcnJvcicsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfTtcblxudHlwZSBFcnJvclJlc3VsdF9OZWdhdGl2ZVF1YW50aXR5RXJyb3JfRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnTmVnYXRpdmVRdWFudGl0eUVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9O1xuXG50eXBlIEVycm9yUmVzdWx0X05vQ2hhbmdlc1NwZWNpZmllZEVycm9yX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ05vQ2hhbmdlc1NwZWNpZmllZEVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9O1xuXG50eXBlIEVycm9yUmVzdWx0X05vdGhpbmdUb1JlZnVuZEVycm9yX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ05vdGhpbmdUb1JlZnVuZEVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9O1xuXG50eXBlIEVycm9yUmVzdWx0X09yZGVyTGltaXRFcnJvcl9GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdPcmRlckxpbWl0RXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH07XG5cbnR5cGUgRXJyb3JSZXN1bHRfT3JkZXJNb2RpZmljYXRpb25TdGF0ZUVycm9yX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ09yZGVyTW9kaWZpY2F0aW9uU3RhdGVFcnJvcicsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfTtcblxudHlwZSBFcnJvclJlc3VsdF9PcmRlclN0YXRlVHJhbnNpdGlvbkVycm9yX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ09yZGVyU3RhdGVUcmFuc2l0aW9uRXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH07XG5cbnR5cGUgRXJyb3JSZXN1bHRfUGF5bWVudE1ldGhvZE1pc3NpbmdFcnJvcl9GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdQYXltZW50TWV0aG9kTWlzc2luZ0Vycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9O1xuXG50eXBlIEVycm9yUmVzdWx0X1BheW1lbnRPcmRlck1pc21hdGNoRXJyb3JfRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnUGF5bWVudE9yZGVyTWlzbWF0Y2hFcnJvcicsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfTtcblxudHlwZSBFcnJvclJlc3VsdF9QYXltZW50U3RhdGVUcmFuc2l0aW9uRXJyb3JfRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnUGF5bWVudFN0YXRlVHJhbnNpdGlvbkVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9O1xuXG50eXBlIEVycm9yUmVzdWx0X1Byb2R1Y3RPcHRpb25JblVzZUVycm9yX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ1Byb2R1Y3RPcHRpb25JblVzZUVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9O1xuXG50eXBlIEVycm9yUmVzdWx0X1F1YW50aXR5VG9vR3JlYXRFcnJvcl9GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdRdWFudGl0eVRvb0dyZWF0RXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH07XG5cbnR5cGUgRXJyb3JSZXN1bHRfUmVmdW5kT3JkZXJTdGF0ZUVycm9yX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ1JlZnVuZE9yZGVyU3RhdGVFcnJvcicsIGVycm9yQ29kZTogRXJyb3JDb2RlLCBtZXNzYWdlOiBzdHJpbmcgfTtcblxudHlwZSBFcnJvclJlc3VsdF9SZWZ1bmRQYXltZW50SWRNaXNzaW5nRXJyb3JfRnJhZ21lbnQgPSB7IF9fdHlwZW5hbWU/OiAnUmVmdW5kUGF5bWVudElkTWlzc2luZ0Vycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9O1xuXG50eXBlIEVycm9yUmVzdWx0X1JlZnVuZFN0YXRlVHJhbnNpdGlvbkVycm9yX0ZyYWdtZW50ID0geyBfX3R5cGVuYW1lPzogJ1JlZnVuZFN0YXRlVHJhbnNpdGlvbkVycm9yJywgZXJyb3JDb2RlOiBFcnJvckNvZGUsIG1lc3NhZ2U6IHN0cmluZyB9O1xuXG50eXBlIEVycm9yUmVzdWx0X1NldHRsZVBheW1lbnRFcnJvcl9GcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdTZXR0bGVQYXltZW50RXJyb3InLCBlcnJvckNvZGU6IEVycm9yQ29kZSwgbWVzc2FnZTogc3RyaW5nIH07XG5cbmV4cG9ydCB0eXBlIEVycm9yUmVzdWx0RnJhZ21lbnQgPSBFcnJvclJlc3VsdF9BbHJlYWR5UmVmdW5kZWRFcnJvcl9GcmFnbWVudCB8IEVycm9yUmVzdWx0X0NhbmNlbEFjdGl2ZU9yZGVyRXJyb3JfRnJhZ21lbnQgfCBFcnJvclJlc3VsdF9DaGFubmVsRGVmYXVsdExhbmd1YWdlRXJyb3JfRnJhZ21lbnQgfCBFcnJvclJlc3VsdF9Db3Vwb25Db2RlRXhwaXJlZEVycm9yX0ZyYWdtZW50IHwgRXJyb3JSZXN1bHRfQ291cG9uQ29kZUludmFsaWRFcnJvcl9GcmFnbWVudCB8IEVycm9yUmVzdWx0X0NvdXBvbkNvZGVMaW1pdEVycm9yX0ZyYWdtZW50IHwgRXJyb3JSZXN1bHRfQ3JlYXRlRnVsZmlsbG1lbnRFcnJvcl9GcmFnbWVudCB8IEVycm9yUmVzdWx0X0VtYWlsQWRkcmVzc0NvbmZsaWN0RXJyb3JfRnJhZ21lbnQgfCBFcnJvclJlc3VsdF9FbXB0eU9yZGVyTGluZVNlbGVjdGlvbkVycm9yX0ZyYWdtZW50IHwgRXJyb3JSZXN1bHRfRnVsZmlsbG1lbnRTdGF0ZVRyYW5zaXRpb25FcnJvcl9GcmFnbWVudCB8IEVycm9yUmVzdWx0X0luc3VmZmljaWVudFN0b2NrRXJyb3JfRnJhZ21lbnQgfCBFcnJvclJlc3VsdF9JbnN1ZmZpY2llbnRTdG9ja09uSGFuZEVycm9yX0ZyYWdtZW50IHwgRXJyb3JSZXN1bHRfSW52YWxpZENyZWRlbnRpYWxzRXJyb3JfRnJhZ21lbnQgfCBFcnJvclJlc3VsdF9JbnZhbGlkRnVsZmlsbG1lbnRIYW5kbGVyRXJyb3JfRnJhZ21lbnQgfCBFcnJvclJlc3VsdF9JdGVtc0FscmVhZHlGdWxmaWxsZWRFcnJvcl9GcmFnbWVudCB8IEVycm9yUmVzdWx0X0xhbmd1YWdlTm90QXZhaWxhYmxlRXJyb3JfRnJhZ21lbnQgfCBFcnJvclJlc3VsdF9NYW51YWxQYXltZW50U3RhdGVFcnJvcl9GcmFnbWVudCB8IEVycm9yUmVzdWx0X01pbWVUeXBlRXJyb3JfRnJhZ21lbnQgfCBFcnJvclJlc3VsdF9NaXNzaW5nQ29uZGl0aW9uc0Vycm9yX0ZyYWdtZW50IHwgRXJyb3JSZXN1bHRfTXVsdGlwbGVPcmRlckVycm9yX0ZyYWdtZW50IHwgRXJyb3JSZXN1bHRfTmF0aXZlQXV0aFN0cmF0ZWd5RXJyb3JfRnJhZ21lbnQgfCBFcnJvclJlc3VsdF9OZWdhdGl2ZVF1YW50aXR5RXJyb3JfRnJhZ21lbnQgfCBFcnJvclJlc3VsdF9Ob0NoYW5nZXNTcGVjaWZpZWRFcnJvcl9GcmFnbWVudCB8IEVycm9yUmVzdWx0X05vdGhpbmdUb1JlZnVuZEVycm9yX0ZyYWdtZW50IHwgRXJyb3JSZXN1bHRfT3JkZXJMaW1pdEVycm9yX0ZyYWdtZW50IHwgRXJyb3JSZXN1bHRfT3JkZXJNb2RpZmljYXRpb25TdGF0ZUVycm9yX0ZyYWdtZW50IHwgRXJyb3JSZXN1bHRfT3JkZXJTdGF0ZVRyYW5zaXRpb25FcnJvcl9GcmFnbWVudCB8IEVycm9yUmVzdWx0X1BheW1lbnRNZXRob2RNaXNzaW5nRXJyb3JfRnJhZ21lbnQgfCBFcnJvclJlc3VsdF9QYXltZW50T3JkZXJNaXNtYXRjaEVycm9yX0ZyYWdtZW50IHwgRXJyb3JSZXN1bHRfUGF5bWVudFN0YXRlVHJhbnNpdGlvbkVycm9yX0ZyYWdtZW50IHwgRXJyb3JSZXN1bHRfUHJvZHVjdE9wdGlvbkluVXNlRXJyb3JfRnJhZ21lbnQgfCBFcnJvclJlc3VsdF9RdWFudGl0eVRvb0dyZWF0RXJyb3JfRnJhZ21lbnQgfCBFcnJvclJlc3VsdF9SZWZ1bmRPcmRlclN0YXRlRXJyb3JfRnJhZ21lbnQgfCBFcnJvclJlc3VsdF9SZWZ1bmRQYXltZW50SWRNaXNzaW5nRXJyb3JfRnJhZ21lbnQgfCBFcnJvclJlc3VsdF9SZWZ1bmRTdGF0ZVRyYW5zaXRpb25FcnJvcl9GcmFnbWVudCB8IEVycm9yUmVzdWx0X1NldHRsZVBheW1lbnRFcnJvcl9GcmFnbWVudDtcblxuZXhwb3J0IHR5cGUgU2hpcHBpbmdNZXRob2RGcmFnbWVudCA9IHsgX190eXBlbmFtZT86ICdTaGlwcGluZ01ldGhvZCcsIGlkOiBzdHJpbmcsIGNyZWF0ZWRBdDogYW55LCB1cGRhdGVkQXQ6IGFueSwgY29kZTogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIGZ1bGZpbGxtZW50SGFuZGxlckNvZGU6IHN0cmluZywgY2hlY2tlcjogeyBfX3R5cGVuYW1lPzogJ0NvbmZpZ3VyYWJsZU9wZXJhdGlvbicsIGNvZGU6IHN0cmluZywgYXJnczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbmZpZ0FyZycsIG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyB9PiB9LCBjYWxjdWxhdG9yOiB7IF9fdHlwZW5hbWU/OiAnQ29uZmlndXJhYmxlT3BlcmF0aW9uJywgY29kZTogc3RyaW5nLCBhcmdzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlnQXJnJywgbmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIH0+IH0sIHRyYW5zbGF0aW9uczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1NoaXBwaW5nTWV0aG9kVHJhbnNsYXRpb24nLCBpZDogc3RyaW5nLCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSwgbmFtZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nIH0+IH07XG5cbmV4cG9ydCB0eXBlIEdldFNoaXBwaW5nTWV0aG9kTGlzdFF1ZXJ5VmFyaWFibGVzID0gRXhhY3Q8e1xuICBvcHRpb25zPzogSW5wdXRNYXliZTxTaGlwcGluZ01ldGhvZExpc3RPcHRpb25zPjtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIEdldFNoaXBwaW5nTWV0aG9kTGlzdFF1ZXJ5ID0geyBzaGlwcGluZ01ldGhvZHM6IHsgX190eXBlbmFtZT86ICdTaGlwcGluZ01ldGhvZExpc3QnLCB0b3RhbEl0ZW1zOiBudW1iZXIsIGl0ZW1zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU2hpcHBpbmdNZXRob2QnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBmdWxmaWxsbWVudEhhbmRsZXJDb2RlOiBzdHJpbmcsIGNoZWNrZXI6IHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb24nLCBjb2RlOiBzdHJpbmcsIGFyZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWdBcmcnLCBuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfT4gfSwgY2FsY3VsYXRvcjogeyBfX3R5cGVuYW1lPzogJ0NvbmZpZ3VyYWJsZU9wZXJhdGlvbicsIGNvZGU6IHN0cmluZywgYXJnczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbmZpZ0FyZycsIG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyB9PiB9LCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdTaGlwcGluZ01ldGhvZFRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZyB9PiB9PiB9IH07XG5cbmV4cG9ydCB0eXBlIEdldFNoaXBwaW5nTWV0aG9kUXVlcnlWYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufT47XG5cblxuZXhwb3J0IHR5cGUgR2V0U2hpcHBpbmdNZXRob2RRdWVyeSA9IHsgc2hpcHBpbmdNZXRob2Q/OiB7IF9fdHlwZW5hbWU/OiAnU2hpcHBpbmdNZXRob2QnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBmdWxmaWxsbWVudEhhbmRsZXJDb2RlOiBzdHJpbmcsIGNoZWNrZXI6IHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb24nLCBjb2RlOiBzdHJpbmcsIGFyZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWdBcmcnLCBuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfT4gfSwgY2FsY3VsYXRvcjogeyBfX3R5cGVuYW1lPzogJ0NvbmZpZ3VyYWJsZU9wZXJhdGlvbicsIGNvZGU6IHN0cmluZywgYXJnczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbmZpZ0FyZycsIG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyB9PiB9LCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdTaGlwcGluZ01ldGhvZFRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZyB9PiB9IHwgbnVsbCB9O1xuXG5leHBvcnQgdHlwZSBHZXRTaGlwcGluZ01ldGhvZE9wZXJhdGlvbnNRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHsgW2tleTogc3RyaW5nXTogbmV2ZXI7IH0+O1xuXG5cbmV4cG9ydCB0eXBlIEdldFNoaXBwaW5nTWV0aG9kT3BlcmF0aW9uc1F1ZXJ5ID0geyBzaGlwcGluZ0VsaWdpYmlsaXR5Q2hlY2tlcnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb25EZWZpbml0aW9uJywgY29kZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBhcmdzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlnQXJnRGVmaW5pdGlvbicsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCByZXF1aXJlZDogYm9vbGVhbiwgZGVmYXVsdFZhbHVlPzogYW55IHwgbnVsbCwgbGlzdDogYm9vbGVhbiwgdWk/OiBhbnkgfCBudWxsLCBsYWJlbD86IHN0cmluZyB8IG51bGwgfT4gfT4sIHNoaXBwaW5nQ2FsY3VsYXRvcnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb25EZWZpbml0aW9uJywgY29kZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBhcmdzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlnQXJnRGVmaW5pdGlvbicsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCByZXF1aXJlZDogYm9vbGVhbiwgZGVmYXVsdFZhbHVlPzogYW55IHwgbnVsbCwgbGlzdDogYm9vbGVhbiwgdWk/OiBhbnkgfCBudWxsLCBsYWJlbD86IHN0cmluZyB8IG51bGwgfT4gfT4sIGZ1bGZpbGxtZW50SGFuZGxlcnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb25EZWZpbml0aW9uJywgY29kZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBhcmdzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlnQXJnRGVmaW5pdGlvbicsIG5hbWU6IHN0cmluZywgdHlwZTogc3RyaW5nLCByZXF1aXJlZDogYm9vbGVhbiwgZGVmYXVsdFZhbHVlPzogYW55IHwgbnVsbCwgbGlzdDogYm9vbGVhbiwgdWk/OiBhbnkgfCBudWxsLCBsYWJlbD86IHN0cmluZyB8IG51bGwgfT4gfT4gfTtcblxuZXhwb3J0IHR5cGUgQ3JlYXRlU2hpcHBpbmdNZXRob2RNdXRhdGlvblZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IENyZWF0ZVNoaXBwaW5nTWV0aG9kSW5wdXQ7XG59PjtcblxuXG5leHBvcnQgdHlwZSBDcmVhdGVTaGlwcGluZ01ldGhvZE11dGF0aW9uID0geyBjcmVhdGVTaGlwcGluZ01ldGhvZDogeyBfX3R5cGVuYW1lPzogJ1NoaXBwaW5nTWV0aG9kJywgaWQ6IHN0cmluZywgY3JlYXRlZEF0OiBhbnksIHVwZGF0ZWRBdDogYW55LCBjb2RlOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZywgZnVsZmlsbG1lbnRIYW5kbGVyQ29kZTogc3RyaW5nLCBjaGVja2VyOiB7IF9fdHlwZW5hbWU/OiAnQ29uZmlndXJhYmxlT3BlcmF0aW9uJywgY29kZTogc3RyaW5nLCBhcmdzOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnQ29uZmlnQXJnJywgbmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIH0+IH0sIGNhbGN1bGF0b3I6IHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb24nLCBjb2RlOiBzdHJpbmcsIGFyZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWdBcmcnLCBuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfT4gfSwgdHJhbnNsYXRpb25zOiBBcnJheTx7IF9fdHlwZW5hbWU/OiAnU2hpcHBpbmdNZXRob2RUcmFuc2xhdGlvbicsIGlkOiBzdHJpbmcsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlLCBuYW1lOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcgfT4gfSB9O1xuXG5leHBvcnQgdHlwZSBVcGRhdGVTaGlwcGluZ01ldGhvZE11dGF0aW9uVmFyaWFibGVzID0gRXhhY3Q8e1xuICBpbnB1dDogVXBkYXRlU2hpcHBpbmdNZXRob2RJbnB1dDtcbn0+O1xuXG5cbmV4cG9ydCB0eXBlIFVwZGF0ZVNoaXBwaW5nTWV0aG9kTXV0YXRpb24gPSB7IHVwZGF0ZVNoaXBwaW5nTWV0aG9kOiB7IF9fdHlwZW5hbWU/OiAnU2hpcHBpbmdNZXRob2QnLCBpZDogc3RyaW5nLCBjcmVhdGVkQXQ6IGFueSwgdXBkYXRlZEF0OiBhbnksIGNvZGU6IHN0cmluZywgbmFtZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nLCBmdWxmaWxsbWVudEhhbmRsZXJDb2RlOiBzdHJpbmcsIGNoZWNrZXI6IHsgX190eXBlbmFtZT86ICdDb25maWd1cmFibGVPcGVyYXRpb24nLCBjb2RlOiBzdHJpbmcsIGFyZ3M6IEFycmF5PHsgX190eXBlbmFtZT86ICdDb25maWdBcmcnLCBuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfT4gfSwgY2FsY3VsYXRvcjogeyBfX3R5cGVuYW1lPzogJ0NvbmZpZ3VyYWJsZU9wZXJhdGlvbicsIGNvZGU6IHN0cmluZywgYXJnczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ0NvbmZpZ0FyZycsIG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyB9PiB9LCB0cmFuc2xhdGlvbnM6IEFycmF5PHsgX190eXBlbmFtZT86ICdTaGlwcGluZ01ldGhvZFRyYW5zbGF0aW9uJywgaWQ6IHN0cmluZywgbGFuZ3VhZ2VDb2RlOiBMYW5ndWFnZUNvZGUsIG5hbWU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZyB9PiB9IH07XG5cbmV4cG9ydCB0eXBlIERlbGV0ZVNoaXBwaW5nTWV0aG9kTXV0YXRpb25WYXJpYWJsZXMgPSBFeGFjdDx7XG4gIGlkOiBTY2FsYXJzWydJRCddO1xufT47XG5cblxuZXhwb3J0IHR5cGUgRGVsZXRlU2hpcHBpbmdNZXRob2RNdXRhdGlvbiA9IHsgZGVsZXRlU2hpcHBpbmdNZXRob2Q6IHsgX190eXBlbmFtZT86ICdEZWxldGlvblJlc3BvbnNlJywgcmVzdWx0OiBEZWxldGlvblJlc3VsdCwgbWVzc2FnZT86IHN0cmluZyB8IG51bGwgfSB9O1xuXG5leHBvcnQgdHlwZSBUZXN0U2hpcHBpbmdNZXRob2RRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IFRlc3RTaGlwcGluZ01ldGhvZElucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgVGVzdFNoaXBwaW5nTWV0aG9kUXVlcnkgPSB7IHRlc3RTaGlwcGluZ01ldGhvZDogeyBfX3R5cGVuYW1lPzogJ1Rlc3RTaGlwcGluZ01ldGhvZFJlc3VsdCcsIGVsaWdpYmxlOiBib29sZWFuLCBxdW90ZT86IHsgX190eXBlbmFtZT86ICdUZXN0U2hpcHBpbmdNZXRob2RRdW90ZScsIHByaWNlOiBudW1iZXIsIHByaWNlV2l0aFRheDogbnVtYmVyLCBtZXRhZGF0YT86IGFueSB8IG51bGwgfSB8IG51bGwgfSB9O1xuXG5leHBvcnQgdHlwZSBUZXN0RWxpZ2libGVTaGlwcGluZ01ldGhvZHNRdWVyeVZhcmlhYmxlcyA9IEV4YWN0PHtcbiAgaW5wdXQ6IFRlc3RFbGlnaWJsZVNoaXBwaW5nTWV0aG9kc0lucHV0O1xufT47XG5cblxuZXhwb3J0IHR5cGUgVGVzdEVsaWdpYmxlU2hpcHBpbmdNZXRob2RzUXVlcnkgPSB7IHRlc3RFbGlnaWJsZVNoaXBwaW5nTWV0aG9kczogQXJyYXk8eyBfX3R5cGVuYW1lPzogJ1NoaXBwaW5nTWV0aG9kUXVvdGUnLCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIGNvZGU6IHN0cmluZywgZGVzY3JpcHRpb246IHN0cmluZywgcHJpY2U6IG51bWJlciwgcHJpY2VXaXRoVGF4OiBudW1iZXIsIG1ldGFkYXRhPzogYW55IHwgbnVsbCB9PiB9O1xuIl19