@senior-gestao-empresarial/erpx-components 0.0.0-develop-3bab051d

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 (382) hide show
  1. package/bundles/senior-gestao-empresarial-erpx-components.umd.js +37665 -0
  2. package/bundles/senior-gestao-empresarial-erpx-components.umd.js.map +1 -0
  3. package/bundles/senior-gestao-empresarial-erpx-components.umd.min.js +17 -0
  4. package/bundles/senior-gestao-empresarial-erpx-components.umd.min.js.map +1 -0
  5. package/components/breadcrumb/breadcrumb.component.d.ts +21 -0
  6. package/components/breadcrumb/breadcrumb.module.d.ts +2 -0
  7. package/components/breadcrumb/index.d.ts +2 -0
  8. package/components/focus/focus.service.d.ts +4 -0
  9. package/components/lote-serie/erp-lote-serie.component.d.ts +183 -0
  10. package/components/lote-serie/erp-lote-serie.module.d.ts +2 -0
  11. package/components/lote-serie/erp-lote-serie.service.d.ts +137 -0
  12. package/components/lote-serie/index.d.ts +2 -0
  13. package/components/rateio-editor/erp-rateio-editor.component.d.ts +202 -0
  14. package/components/rateio-editor/erp-rateio-editor.converter.d.ts +18 -0
  15. package/components/rateio-editor/erp-rateio-editor.module.d.ts +2 -0
  16. package/components/rateio-editor/erp-rateio-editor.service.d.ts +17 -0
  17. package/components/rateio-editor/erp-rateio-editor.types.d.ts +171 -0
  18. package/components/rateio-editor/index.d.ts +4 -0
  19. package/components/resumo/erp-resumo.component.d.ts +17 -0
  20. package/components/resumo/erp-resumo.module.d.ts +2 -0
  21. package/components/resumo/erp-resumo.service.d.ts +2 -0
  22. package/components/resumo/index.d.ts +2 -0
  23. package/components/tributos/calculators/effective-tax-rate-calculator.d.ts +34 -0
  24. package/components/tributos/calculators/gross-amount-calculator.d.ts +20 -0
  25. package/components/tributos/calculators/tax-amount-calculator.d.ts +54 -0
  26. package/components/tributos/erp-tributos.component.d.ts +215 -0
  27. package/components/tributos/erp-tributos.module.d.ts +2 -0
  28. package/components/tributos/erp-tributos.service.d.ts +10 -0
  29. package/components/tributos/erp-tributos.types.d.ts +286 -0
  30. package/components/tributos/index.d.ts +12 -0
  31. package/components/tributos/mappings/enum-tip-imp-cst-mapping.d.ts +2 -0
  32. package/components/tributos/rules/calculation/registries/calculation-rules-registries/calculation-rules.registry.d.ts +15 -0
  33. package/components/tributos/rules/calculation/registries/calculation-rules-registries/incoming-invoice-calculation-rules.registry.d.ts +28 -0
  34. package/components/tributos/rules/calculation/registries/calculation-rules-registries/outgoing-invoice-calculation-rules.registry.d.ts +30 -0
  35. package/components/tributos/rules/calculation/registries/calculation-rules-registries/purchase-order-calculation-rules.registry.d.ts +22 -0
  36. package/components/tributos/rules/calculation/registries/calculation-rules-registries/sale-order-calculation-rules.registry.d.ts +22 -0
  37. package/components/tributos/rules/calculation/rules/apply-net-value-to-document-calculation-rule.d.ts +5 -0
  38. package/components/tributos/rules/calculation/rules/assessment-period-calculation-rule.d.ts +5 -0
  39. package/components/tributos/rules/calculation/rules/effective-tax-rate-calculation-rule.d.ts +8 -0
  40. package/components/tributos/rules/calculation/rules/gross-amount-calculation-rule.d.ts +8 -0
  41. package/components/tributos/rules/calculation/rules/manual-tax-calculation-rule.d.ts +5 -0
  42. package/components/tributos/rules/calculation/rules/tax-amount-calculation-rule.d.ts +8 -0
  43. package/components/tributos/rules/calculation/rules/tax-calculation-type-calculation-rule.d.ts +5 -0
  44. package/components/tributos/rules/calculation/rules/tax-classification-calculation-rule.d.ts +6 -0
  45. package/components/tributos/rules/calculation/rules/tax-rate-calculation-rule.d.ts +5 -0
  46. package/components/tributos/rules/calculation/rules/tax-situation-calculation-rule.d.ts +5 -0
  47. package/components/tributos/rules/calculation/rules/taxable-base-calculation-rule.d.ts +8 -0
  48. package/components/tributos/rules/rules.service.d.ts +19 -0
  49. package/components/tributos/rules/status/registries/incoming-invoice-status-rules.registry.d.ts +16 -0
  50. package/components/tributos/rules/status/registries/outgoing-invoice-status-rules.registry.d.ts +12 -0
  51. package/components/tributos/rules/status/registries/purchase-order-status-rules.registry.d.ts +12 -0
  52. package/components/tributos/rules/status/registries/sale-order-status-rules.registry.d.ts +8 -0
  53. package/components/tributos/rules/status/registries/status-rules.registry.d.ts +15 -0
  54. package/components/tributos/rules/status/rules/apply-net-value-to-document-status-rule.d.ts +5 -0
  55. package/components/tributos/rules/status/rules/tax-classification-status-rule.d.ts +5 -0
  56. package/components/tributos/rules/status/rules/tax-rate-status-rule.d.ts +5 -0
  57. package/components/tributos/rules/status/rules/taxable-base-status-rule.d.ts +5 -0
  58. package/components/tributos/rules/types/available-fields.d.ts +2 -0
  59. package/components/tributos/rules/types/available-taxes.d.ts +1 -0
  60. package/components/tributos/rules/types/field-calculation-rule-mapping.d.ts +6 -0
  61. package/components/tributos/rules/types/field-rule-mapping.d.ts +6 -0
  62. package/components/tributos/rules/types/field-status-rule-mapping.d.ts +6 -0
  63. package/components/tributos/rules/types/rule-payload.d.ts +9 -0
  64. package/components/tributos/rules/types/schemas/incoming-invoice.schema.d.ts +235 -0
  65. package/components/tributos/rules/types/schemas/outgoing-invoice.schema.d.ts +349 -0
  66. package/components/tributos/rules/types/schemas/purchase-order.schema.d.ts +26 -0
  67. package/components/tributos/rules/types/schemas/sale-order.schema.d.ts +131 -0
  68. package/components/tributos/rules/types/strategies-by-document.d.ts +12 -0
  69. package/components/tributos/rules/types/strategies.d.ts +4 -0
  70. package/components/tributos/rules/types/tax-rule.d.ts +4 -0
  71. package/components/tributos/rules/validation/registries/incoming-invoice-validation-rules.registry.d.ts +20 -0
  72. package/components/tributos/rules/validation/registries/outgoing-invoice-validation-rules.registry.d.ts +22 -0
  73. package/components/tributos/rules/validation/registries/purchase-order-validation-rules.registry.d.ts +14 -0
  74. package/components/tributos/rules/validation/registries/sale-order-validation-rules.registry.d.ts +14 -0
  75. package/components/tributos/rules/validation/registries/validation-rules.registry.d.ts +15 -0
  76. package/components/tributos/rules/validation/rules/required/apply-net-value-to-document-required-validation-rule.d.ts +5 -0
  77. package/components/tributos/rules/validation/rules/required/assessment-period-required-validation-rule.d.ts +5 -0
  78. package/components/tributos/rules/validation/rules/required/tax-amount-required-validation-rule.d.ts +5 -0
  79. package/components/tributos/rules/validation/rules/required/tax-classification-required-validation-rule.d.ts +5 -0
  80. package/components/tributos/rules/validation/rules/required/tax-rate-required-validation-rule.d.ts +6 -0
  81. package/components/tributos/rules/validation/rules/required/tax-situation-required-validation-rule.d.ts +6 -0
  82. package/components/tributos/rules/validation/rules/required/taxable-base-required-validation-rule.d.ts +6 -0
  83. package/components/tributos/services/tax-rounding.service.d.ts +5 -0
  84. package/components/tributos/stores/tax.store.d.ts +10 -0
  85. package/components/tributos/tax-reform-utilities.d.ts +36 -0
  86. package/components/tributos/types/context.d.ts +7 -0
  87. package/components/tributos/types/controllership-incoming-invoice-context.d.ts +5 -0
  88. package/components/tributos/types/controllership-incoming-invoice.d.ts +3 -0
  89. package/components/tributos/types/controllership-outgoing-invoice-context.d.ts +5 -0
  90. package/components/tributos/types/controllership-outgoing-invoice.d.ts +3 -0
  91. package/components/tributos/types/credit-invoice-type.d.ts +1 -0
  92. package/components/tributos/types/debit-invoice-type.d.ts +1 -0
  93. package/components/tributos/types/group.d.ts +6 -0
  94. package/components/tributos/types/incoming-invoice-context.d.ts +5 -0
  95. package/components/tributos/types/incoming-invoice-item.d.ts +4 -0
  96. package/components/tributos/types/incoming-invoice-type.d.ts +1 -0
  97. package/components/tributos/types/incoming-invoice.d.ts +11 -0
  98. package/components/tributos/types/item-type.d.ts +1 -0
  99. package/components/tributos/types/outgoing-Invoice.d.ts +11 -0
  100. package/components/tributos/types/outgoing-invoice-context.d.ts +5 -0
  101. package/components/tributos/types/outgoing-invoice-item.d.ts +4 -0
  102. package/components/tributos/types/outgoing-invoice-type.d.ts +1 -0
  103. package/components/tributos/types/purchase-order-context.d.ts +5 -0
  104. package/components/tributos/types/purchase-order-type.d.ts +1 -0
  105. package/components/tributos/types/purchase-order.d.ts +8 -0
  106. package/components/tributos/types/sale-order-context.d.ts +5 -0
  107. package/components/tributos/types/sale-order-type.d.ts +1 -0
  108. package/components/tributos/types/sale-order.d.ts +8 -0
  109. package/components/tributos/types/tax.d.ts +8 -0
  110. package/components/utils/breakpoints.d.ts +10 -0
  111. package/components/utils/export-utils.d.ts +6 -0
  112. package/components/utils/index.d.ts +3 -0
  113. package/components/utils/loading-context.d.ts +7 -0
  114. package/components/utils/utils.d.ts +4 -0
  115. package/core/entities/entity-service.d.ts +32 -0
  116. package/core/entities/quantidade-disponivel-demanda/quantidade-disponivel-demanda-dto.d.ts +36 -0
  117. package/core/entities/quantidade-disponivel-demanda/quantidade-disponivel-demanda.d.ts +40 -0
  118. package/core/entities/quantidade-disponivel-demanda/quantidade-disponivel-demanda.module.d.ts +2 -0
  119. package/core/entities/quantidade-disponivel-demanda/quantidade-disponivel-demanda.service.d.ts +11 -0
  120. package/core/enums/enum-classificacao-tributaria.d.ts +4 -0
  121. package/core/enums/enum-tipo-calculo-imposto.d.ts +5 -0
  122. package/core/enums/enum-tipo-documento-parametros.d.ts +7 -0
  123. package/core/enums/enum-tipo-documento.d.ts +10 -0
  124. package/core/enums/erpx-com-processo-faturamento-backend/enum-indicativo-padrao.d.ts +5 -0
  125. package/core/enums/erpx-cpl-imp-cadastros-backend/enum-indicativo-padrao.d.ts +8 -0
  126. package/esm2015/components/breadcrumb/breadcrumb.component.js +86 -0
  127. package/esm2015/components/breadcrumb/breadcrumb.module.js +17 -0
  128. package/esm2015/components/breadcrumb/index.js +3 -0
  129. package/esm2015/components/focus/focus.service.js +32 -0
  130. package/esm2015/components/lote-serie/erp-lote-serie.component.js +1772 -0
  131. package/esm2015/components/lote-serie/erp-lote-serie.module.js +47 -0
  132. package/esm2015/components/lote-serie/erp-lote-serie.service.js +94 -0
  133. package/esm2015/components/lote-serie/index.js +3 -0
  134. package/esm2015/components/rateio-editor/erp-rateio-editor.component.js +794 -0
  135. package/esm2015/components/rateio-editor/erp-rateio-editor.converter.js +52 -0
  136. package/esm2015/components/rateio-editor/erp-rateio-editor.module.js +40 -0
  137. package/esm2015/components/rateio-editor/erp-rateio-editor.service.js +49 -0
  138. package/esm2015/components/rateio-editor/erp-rateio-editor.types.js +5 -0
  139. package/esm2015/components/rateio-editor/index.js +4 -0
  140. package/esm2015/components/resumo/erp-resumo.component.js +19 -0
  141. package/esm2015/components/resumo/erp-resumo.module.js +25 -0
  142. package/esm2015/components/resumo/erp-resumo.service.js +13 -0
  143. package/esm2015/components/resumo/index.js +2 -0
  144. package/esm2015/components/tributos/calculators/effective-tax-rate-calculator.js +53 -0
  145. package/esm2015/components/tributos/calculators/gross-amount-calculator.js +37 -0
  146. package/esm2015/components/tributos/calculators/tax-amount-calculator.js +87 -0
  147. package/esm2015/components/tributos/erp-tributos.component.js +5176 -0
  148. package/esm2015/components/tributos/erp-tributos.module.js +33 -0
  149. package/esm2015/components/tributos/erp-tributos.service.js +23 -0
  150. package/esm2015/components/tributos/erp-tributos.types.js +268 -0
  151. package/esm2015/components/tributos/index.js +4 -0
  152. package/esm2015/components/tributos/mappings/enum-tip-imp-cst-mapping.js +33 -0
  153. package/esm2015/components/tributos/rules/calculation/registries/calculation-rules-registries/calculation-rules.registry.js +45 -0
  154. package/esm2015/components/tributos/rules/calculation/registries/calculation-rules-registries/incoming-invoice-calculation-rules.registry.js +3102 -0
  155. package/esm2015/components/tributos/rules/calculation/registries/calculation-rules-registries/outgoing-invoice-calculation-rules.registry.js +4516 -0
  156. package/esm2015/components/tributos/rules/calculation/registries/calculation-rules-registries/purchase-order-calculation-rules.registry.js +294 -0
  157. package/esm2015/components/tributos/rules/calculation/registries/calculation-rules-registries/sale-order-calculation-rules.registry.js +1464 -0
  158. package/esm2015/components/tributos/rules/calculation/rules/apply-net-value-to-document-calculation-rule.js +48 -0
  159. package/esm2015/components/tributos/rules/calculation/rules/assessment-period-calculation-rule.js +55 -0
  160. package/esm2015/components/tributos/rules/calculation/rules/effective-tax-rate-calculation-rule.js +83 -0
  161. package/esm2015/components/tributos/rules/calculation/rules/gross-amount-calculation-rule.js +74 -0
  162. package/esm2015/components/tributos/rules/calculation/rules/manual-tax-calculation-rule.js +72 -0
  163. package/esm2015/components/tributos/rules/calculation/rules/tax-amount-calculation-rule.js +244 -0
  164. package/esm2015/components/tributos/rules/calculation/rules/tax-calculation-type-calculation-rule.js +74 -0
  165. package/esm2015/components/tributos/rules/calculation/rules/tax-classification-calculation-rule.js +170 -0
  166. package/esm2015/components/tributos/rules/calculation/rules/tax-rate-calculation-rule.js +100 -0
  167. package/esm2015/components/tributos/rules/calculation/rules/tax-situation-calculation-rule.js +124 -0
  168. package/esm2015/components/tributos/rules/calculation/rules/taxable-base-calculation-rule.js +292 -0
  169. package/esm2015/components/tributos/rules/rules.service.js +61 -0
  170. package/esm2015/components/tributos/rules/status/registries/incoming-invoice-status-rules.registry.js +1076 -0
  171. package/esm2015/components/tributos/rules/status/registries/outgoing-invoice-status-rules.registry.js +1317 -0
  172. package/esm2015/components/tributos/rules/status/registries/purchase-order-status-rules.registry.js +62 -0
  173. package/esm2015/components/tributos/rules/status/registries/sale-order-status-rules.registry.js +18 -0
  174. package/esm2015/components/tributos/rules/status/registries/status-rules.registry.js +45 -0
  175. package/esm2015/components/tributos/rules/status/rules/apply-net-value-to-document-status-rule.js +39 -0
  176. package/esm2015/components/tributos/rules/status/rules/tax-classification-status-rule.js +94 -0
  177. package/esm2015/components/tributos/rules/status/rules/tax-rate-status-rule.js +61 -0
  178. package/esm2015/components/tributos/rules/status/rules/taxable-base-status-rule.js +65 -0
  179. package/esm2015/components/tributos/rules/types/available-fields.js +1 -0
  180. package/esm2015/components/tributos/rules/types/available-taxes.js +1 -0
  181. package/esm2015/components/tributos/rules/types/field-calculation-rule-mapping.js +1 -0
  182. package/esm2015/components/tributos/rules/types/field-rule-mapping.js +1 -0
  183. package/esm2015/components/tributos/rules/types/field-status-rule-mapping.js +1 -0
  184. package/esm2015/components/tributos/rules/types/rule-payload.js +1 -0
  185. package/esm2015/components/tributos/rules/types/schemas/incoming-invoice.schema.js +1816 -0
  186. package/esm2015/components/tributos/rules/types/schemas/outgoing-invoice.schema.js +2750 -0
  187. package/esm2015/components/tributos/rules/types/schemas/purchase-order.schema.js +150 -0
  188. package/esm2015/components/tributos/rules/types/schemas/sale-order.schema.js +879 -0
  189. package/esm2015/components/tributos/rules/types/strategies-by-document.js +1 -0
  190. package/esm2015/components/tributos/rules/types/strategies.js +1 -0
  191. package/esm2015/components/tributos/rules/types/tax-rule.js +1 -0
  192. package/esm2015/components/tributos/rules/validation/registries/incoming-invoice-validation-rules.registry.js +3606 -0
  193. package/esm2015/components/tributos/rules/validation/registries/outgoing-invoice-validation-rules.registry.js +5452 -0
  194. package/esm2015/components/tributos/rules/validation/registries/purchase-order-validation-rules.registry.js +270 -0
  195. package/esm2015/components/tributos/rules/validation/registries/sale-order-validation-rules.registry.js +1392 -0
  196. package/esm2015/components/tributos/rules/validation/registries/validation-rules.registry.js +45 -0
  197. package/esm2015/components/tributos/rules/validation/rules/required/apply-net-value-to-document-required-validation-rule.js +73 -0
  198. package/esm2015/components/tributos/rules/validation/rules/required/assessment-period-required-validation-rule.js +78 -0
  199. package/esm2015/components/tributos/rules/validation/rules/required/tax-amount-required-validation-rule.js +902 -0
  200. package/esm2015/components/tributos/rules/validation/rules/required/tax-classification-required-validation-rule.js +401 -0
  201. package/esm2015/components/tributos/rules/validation/rules/required/tax-rate-required-validation-rule.js +719 -0
  202. package/esm2015/components/tributos/rules/validation/rules/required/tax-situation-required-validation-rule.js +300 -0
  203. package/esm2015/components/tributos/rules/validation/rules/required/taxable-base-required-validation-rule.js +717 -0
  204. package/esm2015/components/tributos/services/tax-rounding.service.js +18 -0
  205. package/esm2015/components/tributos/stores/tax.store.js +19 -0
  206. package/esm2015/components/tributos/tax-reform-utilities.js +243 -0
  207. package/esm2015/components/tributos/types/context.js +1 -0
  208. package/esm2015/components/tributos/types/controllership-incoming-invoice-context.js +1 -0
  209. package/esm2015/components/tributos/types/controllership-incoming-invoice.js +1 -0
  210. package/esm2015/components/tributos/types/controllership-outgoing-invoice-context.js +1 -0
  211. package/esm2015/components/tributos/types/controllership-outgoing-invoice.js +1 -0
  212. package/esm2015/components/tributos/types/credit-invoice-type.js +1 -0
  213. package/esm2015/components/tributos/types/debit-invoice-type.js +1 -0
  214. package/esm2015/components/tributos/types/group.js +1 -0
  215. package/esm2015/components/tributos/types/incoming-invoice-context.js +1 -0
  216. package/esm2015/components/tributos/types/incoming-invoice-item.js +1 -0
  217. package/esm2015/components/tributos/types/incoming-invoice-type.js +1 -0
  218. package/esm2015/components/tributos/types/incoming-invoice.js +1 -0
  219. package/esm2015/components/tributos/types/item-type.js +1 -0
  220. package/esm2015/components/tributos/types/outgoing-Invoice.js +1 -0
  221. package/esm2015/components/tributos/types/outgoing-invoice-context.js +1 -0
  222. package/esm2015/components/tributos/types/outgoing-invoice-item.js +1 -0
  223. package/esm2015/components/tributos/types/outgoing-invoice-type.js +1 -0
  224. package/esm2015/components/tributos/types/purchase-order-context.js +1 -0
  225. package/esm2015/components/tributos/types/purchase-order-type.js +1 -0
  226. package/esm2015/components/tributos/types/purchase-order.js +1 -0
  227. package/esm2015/components/tributos/types/sale-order-context.js +1 -0
  228. package/esm2015/components/tributos/types/sale-order-type.js +1 -0
  229. package/esm2015/components/tributos/types/sale-order.js +1 -0
  230. package/esm2015/components/tributos/types/tax.js +2 -0
  231. package/esm2015/components/utils/breakpoints.js +11 -0
  232. package/esm2015/components/utils/export-utils.js +71 -0
  233. package/esm2015/components/utils/index.js +4 -0
  234. package/esm2015/components/utils/loading-context.js +20 -0
  235. package/esm2015/components/utils/utils.js +18 -0
  236. package/esm2015/core/entities/entity-service.js +91 -0
  237. package/esm2015/core/entities/quantidade-disponivel-demanda/quantidade-disponivel-demanda-dto.js +1 -0
  238. package/esm2015/core/entities/quantidade-disponivel-demanda/quantidade-disponivel-demanda.js +62 -0
  239. package/esm2015/core/entities/quantidade-disponivel-demanda/quantidade-disponivel-demanda.module.js +24 -0
  240. package/esm2015/core/entities/quantidade-disponivel-demanda/quantidade-disponivel-demanda.service.js +24 -0
  241. package/esm2015/core/enums/enum-classificacao-tributaria.js +6 -0
  242. package/esm2015/core/enums/enum-tipo-calculo-imposto.js +7 -0
  243. package/esm2015/core/enums/enum-tipo-documento-parametros.js +9 -0
  244. package/esm2015/core/enums/enum-tipo-documento.js +12 -0
  245. package/esm2015/core/enums/erpx-com-processo-faturamento-backend/enum-indicativo-padrao.js +7 -0
  246. package/esm2015/core/enums/erpx-cpl-imp-cadastros-backend/enum-indicativo-padrao.js +10 -0
  247. package/esm2015/locale/fallback.js +56 -0
  248. package/esm2015/public-api.js +8 -0
  249. package/esm2015/senior-gestao-empresarial-erpx-components.js +58 -0
  250. package/esm5/components/breadcrumb/breadcrumb.component.js +91 -0
  251. package/esm5/components/breadcrumb/breadcrumb.module.js +20 -0
  252. package/esm5/components/breadcrumb/index.js +3 -0
  253. package/esm5/components/focus/focus.service.js +35 -0
  254. package/esm5/components/lote-serie/erp-lote-serie.component.js +1830 -0
  255. package/esm5/components/lote-serie/erp-lote-serie.module.js +50 -0
  256. package/esm5/components/lote-serie/erp-lote-serie.service.js +96 -0
  257. package/esm5/components/lote-serie/index.js +3 -0
  258. package/esm5/components/rateio-editor/erp-rateio-editor.component.js +861 -0
  259. package/esm5/components/rateio-editor/erp-rateio-editor.converter.js +68 -0
  260. package/esm5/components/rateio-editor/erp-rateio-editor.module.js +43 -0
  261. package/esm5/components/rateio-editor/erp-rateio-editor.service.js +51 -0
  262. package/esm5/components/rateio-editor/erp-rateio-editor.types.js +5 -0
  263. package/esm5/components/rateio-editor/index.js +4 -0
  264. package/esm5/components/resumo/erp-resumo.component.js +22 -0
  265. package/esm5/components/resumo/erp-resumo.module.js +28 -0
  266. package/esm5/components/resumo/erp-resumo.service.js +16 -0
  267. package/esm5/components/resumo/index.js +2 -0
  268. package/esm5/components/tributos/calculators/effective-tax-rate-calculator.js +58 -0
  269. package/esm5/components/tributos/calculators/gross-amount-calculator.js +39 -0
  270. package/esm5/components/tributos/calculators/tax-amount-calculator.js +91 -0
  271. package/esm5/components/tributos/erp-tributos.component.js +5296 -0
  272. package/esm5/components/tributos/erp-tributos.module.js +36 -0
  273. package/esm5/components/tributos/erp-tributos.service.js +24 -0
  274. package/esm5/components/tributos/erp-tributos.types.js +268 -0
  275. package/esm5/components/tributos/index.js +4 -0
  276. package/esm5/components/tributos/mappings/enum-tip-imp-cst-mapping.js +33 -0
  277. package/esm5/components/tributos/rules/calculation/registries/calculation-rules-registries/calculation-rules.registry.js +46 -0
  278. package/esm5/components/tributos/rules/calculation/registries/calculation-rules-registries/incoming-invoice-calculation-rules.registry.js +3104 -0
  279. package/esm5/components/tributos/rules/calculation/registries/calculation-rules-registries/outgoing-invoice-calculation-rules.registry.js +4518 -0
  280. package/esm5/components/tributos/rules/calculation/registries/calculation-rules-registries/purchase-order-calculation-rules.registry.js +296 -0
  281. package/esm5/components/tributos/rules/calculation/registries/calculation-rules-registries/sale-order-calculation-rules.registry.js +1466 -0
  282. package/esm5/components/tributos/rules/calculation/rules/apply-net-value-to-document-calculation-rule.js +60 -0
  283. package/esm5/components/tributos/rules/calculation/rules/assessment-period-calculation-rule.js +77 -0
  284. package/esm5/components/tributos/rules/calculation/rules/effective-tax-rate-calculation-rule.js +92 -0
  285. package/esm5/components/tributos/rules/calculation/rules/gross-amount-calculation-rule.js +83 -0
  286. package/esm5/components/tributos/rules/calculation/rules/manual-tax-calculation-rule.js +87 -0
  287. package/esm5/components/tributos/rules/calculation/rules/tax-amount-calculation-rule.js +286 -0
  288. package/esm5/components/tributos/rules/calculation/rules/tax-calculation-type-calculation-rule.js +89 -0
  289. package/esm5/components/tributos/rules/calculation/rules/tax-classification-calculation-rule.js +241 -0
  290. package/esm5/components/tributos/rules/calculation/rules/tax-rate-calculation-rule.js +118 -0
  291. package/esm5/components/tributos/rules/calculation/rules/tax-situation-calculation-rule.js +200 -0
  292. package/esm5/components/tributos/rules/calculation/rules/taxable-base-calculation-rule.js +330 -0
  293. package/esm5/components/tributos/rules/rules.service.js +139 -0
  294. package/esm5/components/tributos/rules/status/registries/incoming-invoice-status-rules.registry.js +1078 -0
  295. package/esm5/components/tributos/rules/status/registries/outgoing-invoice-status-rules.registry.js +1319 -0
  296. package/esm5/components/tributos/rules/status/registries/purchase-order-status-rules.registry.js +64 -0
  297. package/esm5/components/tributos/rules/status/registries/sale-order-status-rules.registry.js +19 -0
  298. package/esm5/components/tributos/rules/status/registries/status-rules.registry.js +46 -0
  299. package/esm5/components/tributos/rules/status/rules/apply-net-value-to-document-status-rule.js +43 -0
  300. package/esm5/components/tributos/rules/status/rules/tax-classification-status-rule.js +106 -0
  301. package/esm5/components/tributos/rules/status/rules/tax-rate-status-rule.js +68 -0
  302. package/esm5/components/tributos/rules/status/rules/taxable-base-status-rule.js +72 -0
  303. package/esm5/components/tributos/rules/types/available-fields.js +1 -0
  304. package/esm5/components/tributos/rules/types/available-taxes.js +1 -0
  305. package/esm5/components/tributos/rules/types/field-calculation-rule-mapping.js +1 -0
  306. package/esm5/components/tributos/rules/types/field-rule-mapping.js +1 -0
  307. package/esm5/components/tributos/rules/types/field-status-rule-mapping.js +1 -0
  308. package/esm5/components/tributos/rules/types/rule-payload.js +1 -0
  309. package/esm5/components/tributos/rules/types/schemas/incoming-invoice.schema.js +1817 -0
  310. package/esm5/components/tributos/rules/types/schemas/outgoing-invoice.schema.js +2751 -0
  311. package/esm5/components/tributos/rules/types/schemas/purchase-order.schema.js +151 -0
  312. package/esm5/components/tributos/rules/types/schemas/sale-order.schema.js +880 -0
  313. package/esm5/components/tributos/rules/types/strategies-by-document.js +1 -0
  314. package/esm5/components/tributos/rules/types/strategies.js +1 -0
  315. package/esm5/components/tributos/rules/types/tax-rule.js +1 -0
  316. package/esm5/components/tributos/rules/validation/registries/incoming-invoice-validation-rules.registry.js +3608 -0
  317. package/esm5/components/tributos/rules/validation/registries/outgoing-invoice-validation-rules.registry.js +5454 -0
  318. package/esm5/components/tributos/rules/validation/registries/purchase-order-validation-rules.registry.js +272 -0
  319. package/esm5/components/tributos/rules/validation/registries/sale-order-validation-rules.registry.js +1394 -0
  320. package/esm5/components/tributos/rules/validation/registries/validation-rules.registry.js +46 -0
  321. package/esm5/components/tributos/rules/validation/rules/required/apply-net-value-to-document-required-validation-rule.js +77 -0
  322. package/esm5/components/tributos/rules/validation/rules/required/assessment-period-required-validation-rule.js +86 -0
  323. package/esm5/components/tributos/rules/validation/rules/required/tax-amount-required-validation-rule.js +968 -0
  324. package/esm5/components/tributos/rules/validation/rules/required/tax-classification-required-validation-rule.js +433 -0
  325. package/esm5/components/tributos/rules/validation/rules/required/tax-rate-required-validation-rule.js +774 -0
  326. package/esm5/components/tributos/rules/validation/rules/required/tax-situation-required-validation-rule.js +323 -0
  327. package/esm5/components/tributos/rules/validation/rules/required/taxable-base-required-validation-rule.js +772 -0
  328. package/esm5/components/tributos/services/tax-rounding.service.js +23 -0
  329. package/esm5/components/tributos/stores/tax.store.js +26 -0
  330. package/esm5/components/tributos/tax-reform-utilities.js +249 -0
  331. package/esm5/components/tributos/types/context.js +1 -0
  332. package/esm5/components/tributos/types/controllership-incoming-invoice-context.js +1 -0
  333. package/esm5/components/tributos/types/controllership-incoming-invoice.js +1 -0
  334. package/esm5/components/tributos/types/controllership-outgoing-invoice-context.js +1 -0
  335. package/esm5/components/tributos/types/controllership-outgoing-invoice.js +1 -0
  336. package/esm5/components/tributos/types/credit-invoice-type.js +1 -0
  337. package/esm5/components/tributos/types/debit-invoice-type.js +1 -0
  338. package/esm5/components/tributos/types/group.js +1 -0
  339. package/esm5/components/tributos/types/incoming-invoice-context.js +1 -0
  340. package/esm5/components/tributos/types/incoming-invoice-item.js +1 -0
  341. package/esm5/components/tributos/types/incoming-invoice-type.js +1 -0
  342. package/esm5/components/tributos/types/incoming-invoice.js +1 -0
  343. package/esm5/components/tributos/types/item-type.js +1 -0
  344. package/esm5/components/tributos/types/outgoing-Invoice.js +1 -0
  345. package/esm5/components/tributos/types/outgoing-invoice-context.js +1 -0
  346. package/esm5/components/tributos/types/outgoing-invoice-item.js +1 -0
  347. package/esm5/components/tributos/types/outgoing-invoice-type.js +1 -0
  348. package/esm5/components/tributos/types/purchase-order-context.js +1 -0
  349. package/esm5/components/tributos/types/purchase-order-type.js +1 -0
  350. package/esm5/components/tributos/types/purchase-order.js +1 -0
  351. package/esm5/components/tributos/types/sale-order-context.js +1 -0
  352. package/esm5/components/tributos/types/sale-order-type.js +1 -0
  353. package/esm5/components/tributos/types/sale-order.js +1 -0
  354. package/esm5/components/tributos/types/tax.js +2 -0
  355. package/esm5/components/utils/breakpoints.js +11 -0
  356. package/esm5/components/utils/export-utils.js +78 -0
  357. package/esm5/components/utils/index.js +4 -0
  358. package/esm5/components/utils/loading-context.js +22 -0
  359. package/esm5/components/utils/utils.js +20 -0
  360. package/esm5/core/entities/entity-service.js +98 -0
  361. package/esm5/core/entities/quantidade-disponivel-demanda/quantidade-disponivel-demanda-dto.js +1 -0
  362. package/esm5/core/entities/quantidade-disponivel-demanda/quantidade-disponivel-demanda.js +67 -0
  363. package/esm5/core/entities/quantidade-disponivel-demanda/quantidade-disponivel-demanda.module.js +27 -0
  364. package/esm5/core/entities/quantidade-disponivel-demanda/quantidade-disponivel-demanda.service.js +27 -0
  365. package/esm5/core/enums/enum-classificacao-tributaria.js +6 -0
  366. package/esm5/core/enums/enum-tipo-calculo-imposto.js +7 -0
  367. package/esm5/core/enums/enum-tipo-documento-parametros.js +9 -0
  368. package/esm5/core/enums/enum-tipo-documento.js +12 -0
  369. package/esm5/core/enums/erpx-com-processo-faturamento-backend/enum-indicativo-padrao.js +7 -0
  370. package/esm5/core/enums/erpx-cpl-imp-cadastros-backend/enum-indicativo-padrao.js +10 -0
  371. package/esm5/locale/fallback.js +56 -0
  372. package/esm5/public-api.js +8 -0
  373. package/esm5/senior-gestao-empresarial-erpx-components.js +58 -0
  374. package/fesm2015/senior-gestao-empresarial-erpx-components.js +36350 -0
  375. package/fesm2015/senior-gestao-empresarial-erpx-components.js.map +1 -0
  376. package/fesm5/senior-gestao-empresarial-erpx-components.js +37396 -0
  377. package/fesm5/senior-gestao-empresarial-erpx-components.js.map +1 -0
  378. package/locale/fallback.d.ts +55 -0
  379. package/package.json +23 -0
  380. package/public-api.d.ts +7 -0
  381. package/senior-gestao-empresarial-erpx-components.d.ts +57 -0
  382. package/senior-gestao-empresarial-erpx-components.metadata.json +1 -0
@@ -0,0 +1,1392 @@
1
+ import { __decorate } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { EnumCampoTributo, EnumTipoTributo } from '../../../erp-tributos.types';
4
+ import { TaxAmountRequiredValidationRule } from '../rules/required/tax-amount-required-validation-rule';
5
+ import { TaxRateRequiredValidationRule } from '../rules/required/tax-rate-required-validation-rule';
6
+ import { TaxableBaseRequiredValidationRule } from '../rules/required/taxable-base-required-validation-rule';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../rules/required/taxable-base-required-validation-rule";
9
+ import * as i2 from "../rules/required/tax-rate-required-validation-rule";
10
+ import * as i3 from "../rules/required/tax-amount-required-validation-rule";
11
+ let SaleOrderValidationRulesRegistry = class SaleOrderValidationRulesRegistry {
12
+ constructor(taxableBaseRequiredValidationRule, taxRateRequiredValidationRule, taxAmountRequiredValidationRule) {
13
+ this.taxableBaseRequiredValidationRule = taxableBaseRequiredValidationRule;
14
+ this.taxRateRequiredValidationRule = taxRateRequiredValidationRule;
15
+ this.taxAmountRequiredValidationRule = taxAmountRequiredValidationRule;
16
+ this.strategies = {
17
+ 'Product Order': {
18
+ [EnumTipoTributo.CBS]: [
19
+ {
20
+ field: EnumCampoTributo.BaseCalculo,
21
+ rules: [this.taxableBaseRequiredValidationRule]
22
+ },
23
+ {
24
+ field: EnumCampoTributo.Aliquota,
25
+ rules: [this.taxRateRequiredValidationRule]
26
+ },
27
+ {
28
+ field: EnumCampoTributo.Valor,
29
+ rules: [this.taxAmountRequiredValidationRule]
30
+ }
31
+ ],
32
+ [EnumTipoTributo.CBS_DIFERIDO]: [
33
+ {
34
+ field: EnumCampoTributo.BaseCalculo,
35
+ rules: [this.taxableBaseRequiredValidationRule]
36
+ },
37
+ {
38
+ field: EnumCampoTributo.Aliquota,
39
+ rules: [this.taxRateRequiredValidationRule]
40
+ },
41
+ {
42
+ field: EnumCampoTributo.Valor,
43
+ rules: [this.taxAmountRequiredValidationRule]
44
+ }
45
+ ],
46
+ [EnumTipoTributo.CBS_CREDITO_PRESUMIDO]: [
47
+ {
48
+ field: EnumCampoTributo.BaseCalculo,
49
+ rules: [this.taxableBaseRequiredValidationRule]
50
+ },
51
+ {
52
+ field: EnumCampoTributo.Aliquota,
53
+ rules: [this.taxRateRequiredValidationRule]
54
+ }
55
+ ],
56
+ [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
57
+ {
58
+ field: EnumCampoTributo.BaseCalculo,
59
+ rules: [this.taxableBaseRequiredValidationRule]
60
+ },
61
+ {
62
+ field: EnumCampoTributo.Aliquota,
63
+ rules: [this.taxRateRequiredValidationRule]
64
+ },
65
+ {
66
+ field: EnumCampoTributo.Valor,
67
+ rules: [this.taxAmountRequiredValidationRule]
68
+ }
69
+ ],
70
+ [EnumTipoTributo.CBS_GOVERNAMENTAL]: [
71
+ {
72
+ field: EnumCampoTributo.BaseCalculo,
73
+ rules: [this.taxableBaseRequiredValidationRule]
74
+ },
75
+ {
76
+ field: EnumCampoTributo.Aliquota,
77
+ rules: [this.taxRateRequiredValidationRule]
78
+ }
79
+ ],
80
+ [EnumTipoTributo.CBS_ALC_ZFM]: [
81
+ {
82
+ field: EnumCampoTributo.BaseCalculo,
83
+ rules: [this.taxableBaseRequiredValidationRule]
84
+ },
85
+ {
86
+ field: EnumCampoTributo.Aliquota,
87
+ rules: [this.taxRateRequiredValidationRule]
88
+ }
89
+ ],
90
+ [EnumTipoTributo.IBS_ESTADUAL]: [
91
+ {
92
+ field: EnumCampoTributo.BaseCalculo,
93
+ rules: [this.taxableBaseRequiredValidationRule]
94
+ },
95
+ {
96
+ field: EnumCampoTributo.Aliquota,
97
+ rules: [this.taxRateRequiredValidationRule]
98
+ },
99
+ {
100
+ field: EnumCampoTributo.Valor,
101
+ rules: [this.taxAmountRequiredValidationRule]
102
+ }
103
+ ],
104
+ [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
105
+ {
106
+ field: EnumCampoTributo.BaseCalculo,
107
+ rules: [this.taxableBaseRequiredValidationRule]
108
+ },
109
+ {
110
+ field: EnumCampoTributo.Aliquota,
111
+ rules: [this.taxRateRequiredValidationRule]
112
+ },
113
+ {
114
+ field: EnumCampoTributo.Valor,
115
+ rules: [this.taxAmountRequiredValidationRule]
116
+ }
117
+ ],
118
+ [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
119
+ {
120
+ field: EnumCampoTributo.BaseCalculo,
121
+ rules: [this.taxableBaseRequiredValidationRule]
122
+ },
123
+ {
124
+ field: EnumCampoTributo.Aliquota,
125
+ rules: [this.taxRateRequiredValidationRule]
126
+ }
127
+ ],
128
+ [EnumTipoTributo.IBS_ESTADUAL_GOVERNAMENTAL]: [
129
+ {
130
+ field: EnumCampoTributo.BaseCalculo,
131
+ rules: [this.taxableBaseRequiredValidationRule]
132
+ },
133
+ {
134
+ field: EnumCampoTributo.Aliquota,
135
+ rules: [this.taxRateRequiredValidationRule]
136
+ }
137
+ ],
138
+ [EnumTipoTributo.IBS_MUNICIPAL]: [
139
+ {
140
+ field: EnumCampoTributo.BaseCalculo,
141
+ rules: [this.taxableBaseRequiredValidationRule]
142
+ },
143
+ {
144
+ field: EnumCampoTributo.Aliquota,
145
+ rules: [this.taxRateRequiredValidationRule]
146
+ },
147
+ {
148
+ field: EnumCampoTributo.Valor,
149
+ rules: [this.taxAmountRequiredValidationRule]
150
+ }
151
+ ],
152
+ [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
153
+ {
154
+ field: EnumCampoTributo.BaseCalculo,
155
+ rules: [this.taxableBaseRequiredValidationRule]
156
+ },
157
+ {
158
+ field: EnumCampoTributo.Aliquota,
159
+ rules: [this.taxRateRequiredValidationRule]
160
+ },
161
+ {
162
+ field: EnumCampoTributo.Valor,
163
+ rules: [this.taxAmountRequiredValidationRule]
164
+ }
165
+ ],
166
+ [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
167
+ {
168
+ field: EnumCampoTributo.BaseCalculo,
169
+ rules: [this.taxableBaseRequiredValidationRule]
170
+ },
171
+ {
172
+ field: EnumCampoTributo.Aliquota,
173
+ rules: [this.taxRateRequiredValidationRule]
174
+ }
175
+ ],
176
+ [EnumTipoTributo.IBS_MUNICIPAL_GOVERNAMENTAL]: [
177
+ {
178
+ field: EnumCampoTributo.BaseCalculo,
179
+ rules: [this.taxableBaseRequiredValidationRule]
180
+ },
181
+ {
182
+ field: EnumCampoTributo.Aliquota,
183
+ rules: [this.taxRateRequiredValidationRule]
184
+ }
185
+ ],
186
+ [EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
187
+ {
188
+ field: EnumCampoTributo.BaseCalculo,
189
+ rules: [this.taxableBaseRequiredValidationRule]
190
+ },
191
+ {
192
+ field: EnumCampoTributo.Aliquota,
193
+ rules: [this.taxRateRequiredValidationRule]
194
+ }
195
+ ],
196
+ [EnumTipoTributo.IS]: [
197
+ {
198
+ field: EnumCampoTributo.BaseCalculo,
199
+ rules: [this.taxableBaseRequiredValidationRule]
200
+ },
201
+ {
202
+ field: EnumCampoTributo.Aliquota,
203
+ rules: [this.taxRateRequiredValidationRule]
204
+ },
205
+ {
206
+ field: EnumCampoTributo.Valor,
207
+ rules: [this.taxAmountRequiredValidationRule]
208
+ }
209
+ ]
210
+ },
211
+ 'Service Order': {
212
+ [EnumTipoTributo.CBS]: [
213
+ {
214
+ field: EnumCampoTributo.BaseCalculo,
215
+ rules: [this.taxableBaseRequiredValidationRule]
216
+ },
217
+ {
218
+ field: EnumCampoTributo.Aliquota,
219
+ rules: [this.taxRateRequiredValidationRule]
220
+ },
221
+ {
222
+ field: EnumCampoTributo.Valor,
223
+ rules: [this.taxAmountRequiredValidationRule]
224
+ }
225
+ ],
226
+ [EnumTipoTributo.CBS_DIFERIDO]: [
227
+ {
228
+ field: EnumCampoTributo.BaseCalculo,
229
+ rules: [this.taxableBaseRequiredValidationRule]
230
+ },
231
+ {
232
+ field: EnumCampoTributo.Aliquota,
233
+ rules: [this.taxRateRequiredValidationRule]
234
+ },
235
+ {
236
+ field: EnumCampoTributo.Valor,
237
+ rules: [this.taxAmountRequiredValidationRule]
238
+ }
239
+ ],
240
+ [EnumTipoTributo.CBS_CREDITO_PRESUMIDO]: [
241
+ {
242
+ field: EnumCampoTributo.BaseCalculo,
243
+ rules: [this.taxableBaseRequiredValidationRule]
244
+ },
245
+ {
246
+ field: EnumCampoTributo.Aliquota,
247
+ rules: [this.taxRateRequiredValidationRule]
248
+ }
249
+ ],
250
+ [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
251
+ {
252
+ field: EnumCampoTributo.BaseCalculo,
253
+ rules: [this.taxableBaseRequiredValidationRule]
254
+ },
255
+ {
256
+ field: EnumCampoTributo.Aliquota,
257
+ rules: [this.taxRateRequiredValidationRule]
258
+ },
259
+ {
260
+ field: EnumCampoTributo.Valor,
261
+ rules: [this.taxAmountRequiredValidationRule]
262
+ }
263
+ ],
264
+ [EnumTipoTributo.CBS_GOVERNAMENTAL]: [
265
+ {
266
+ field: EnumCampoTributo.BaseCalculo,
267
+ rules: [this.taxableBaseRequiredValidationRule]
268
+ },
269
+ {
270
+ field: EnumCampoTributo.Aliquota,
271
+ rules: [this.taxRateRequiredValidationRule]
272
+ }
273
+ ],
274
+ [EnumTipoTributo.CBS_ALC_ZFM]: [
275
+ {
276
+ field: EnumCampoTributo.BaseCalculo,
277
+ rules: [this.taxableBaseRequiredValidationRule]
278
+ },
279
+ {
280
+ field: EnumCampoTributo.Aliquota,
281
+ rules: [this.taxRateRequiredValidationRule]
282
+ }
283
+ ],
284
+ [EnumTipoTributo.IBS_ESTADUAL]: [
285
+ {
286
+ field: EnumCampoTributo.BaseCalculo,
287
+ rules: [this.taxableBaseRequiredValidationRule]
288
+ },
289
+ {
290
+ field: EnumCampoTributo.Aliquota,
291
+ rules: [this.taxRateRequiredValidationRule]
292
+ },
293
+ {
294
+ field: EnumCampoTributo.Valor,
295
+ rules: [this.taxAmountRequiredValidationRule]
296
+ }
297
+ ],
298
+ [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
299
+ {
300
+ field: EnumCampoTributo.BaseCalculo,
301
+ rules: [this.taxableBaseRequiredValidationRule]
302
+ },
303
+ {
304
+ field: EnumCampoTributo.Aliquota,
305
+ rules: [this.taxRateRequiredValidationRule]
306
+ },
307
+ {
308
+ field: EnumCampoTributo.Valor,
309
+ rules: [this.taxAmountRequiredValidationRule]
310
+ }
311
+ ],
312
+ [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
313
+ {
314
+ field: EnumCampoTributo.BaseCalculo,
315
+ rules: [this.taxableBaseRequiredValidationRule]
316
+ },
317
+ {
318
+ field: EnumCampoTributo.Aliquota,
319
+ rules: [this.taxRateRequiredValidationRule]
320
+ }
321
+ ],
322
+ [EnumTipoTributo.IBS_ESTADUAL_GOVERNAMENTAL]: [
323
+ {
324
+ field: EnumCampoTributo.BaseCalculo,
325
+ rules: [this.taxableBaseRequiredValidationRule]
326
+ },
327
+ {
328
+ field: EnumCampoTributo.Aliquota,
329
+ rules: [this.taxRateRequiredValidationRule]
330
+ }
331
+ ],
332
+ [EnumTipoTributo.IBS_MUNICIPAL]: [
333
+ {
334
+ field: EnumCampoTributo.BaseCalculo,
335
+ rules: [this.taxableBaseRequiredValidationRule]
336
+ },
337
+ {
338
+ field: EnumCampoTributo.Aliquota,
339
+ rules: [this.taxRateRequiredValidationRule]
340
+ },
341
+ {
342
+ field: EnumCampoTributo.Valor,
343
+ rules: [this.taxAmountRequiredValidationRule]
344
+ }
345
+ ],
346
+ [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
347
+ {
348
+ field: EnumCampoTributo.BaseCalculo,
349
+ rules: [this.taxableBaseRequiredValidationRule]
350
+ },
351
+ {
352
+ field: EnumCampoTributo.Aliquota,
353
+ rules: [this.taxRateRequiredValidationRule]
354
+ },
355
+ {
356
+ field: EnumCampoTributo.Valor,
357
+ rules: [this.taxAmountRequiredValidationRule]
358
+ }
359
+ ],
360
+ [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
361
+ {
362
+ field: EnumCampoTributo.BaseCalculo,
363
+ rules: [this.taxableBaseRequiredValidationRule]
364
+ },
365
+ {
366
+ field: EnumCampoTributo.Aliquota,
367
+ rules: [this.taxRateRequiredValidationRule]
368
+ }
369
+ ],
370
+ [EnumTipoTributo.IBS_MUNICIPAL_GOVERNAMENTAL]: [
371
+ {
372
+ field: EnumCampoTributo.BaseCalculo,
373
+ rules: [this.taxableBaseRequiredValidationRule]
374
+ },
375
+ {
376
+ field: EnumCampoTributo.Aliquota,
377
+ rules: [this.taxRateRequiredValidationRule]
378
+ }
379
+ ],
380
+ [EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
381
+ {
382
+ field: EnumCampoTributo.BaseCalculo,
383
+ rules: [this.taxableBaseRequiredValidationRule]
384
+ },
385
+ {
386
+ field: EnumCampoTributo.Aliquota,
387
+ rules: [this.taxRateRequiredValidationRule]
388
+ }
389
+ ],
390
+ [EnumTipoTributo.IS]: [
391
+ {
392
+ field: EnumCampoTributo.BaseCalculo,
393
+ rules: [this.taxableBaseRequiredValidationRule]
394
+ },
395
+ {
396
+ field: EnumCampoTributo.Aliquota,
397
+ rules: [this.taxRateRequiredValidationRule]
398
+ },
399
+ {
400
+ field: EnumCampoTributo.Valor,
401
+ rules: [this.taxAmountRequiredValidationRule]
402
+ }
403
+ ]
404
+ },
405
+ 'Future Delivery Order': {
406
+ [EnumTipoTributo.CBS]: [
407
+ {
408
+ field: EnumCampoTributo.BaseCalculo,
409
+ rules: [this.taxableBaseRequiredValidationRule]
410
+ },
411
+ {
412
+ field: EnumCampoTributo.Aliquota,
413
+ rules: [this.taxRateRequiredValidationRule]
414
+ },
415
+ {
416
+ field: EnumCampoTributo.Valor,
417
+ rules: [this.taxAmountRequiredValidationRule]
418
+ }
419
+ ],
420
+ [EnumTipoTributo.CBS_DIFERIDO]: [
421
+ {
422
+ field: EnumCampoTributo.BaseCalculo,
423
+ rules: [this.taxableBaseRequiredValidationRule]
424
+ },
425
+ {
426
+ field: EnumCampoTributo.Aliquota,
427
+ rules: [this.taxRateRequiredValidationRule]
428
+ },
429
+ {
430
+ field: EnumCampoTributo.Valor,
431
+ rules: [this.taxAmountRequiredValidationRule]
432
+ }
433
+ ],
434
+ [EnumTipoTributo.CBS_CREDITO_PRESUMIDO]: [
435
+ {
436
+ field: EnumCampoTributo.BaseCalculo,
437
+ rules: [this.taxableBaseRequiredValidationRule]
438
+ },
439
+ {
440
+ field: EnumCampoTributo.Aliquota,
441
+ rules: [this.taxRateRequiredValidationRule]
442
+ }
443
+ ],
444
+ [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
445
+ {
446
+ field: EnumCampoTributo.BaseCalculo,
447
+ rules: [this.taxableBaseRequiredValidationRule]
448
+ },
449
+ {
450
+ field: EnumCampoTributo.Aliquota,
451
+ rules: [this.taxRateRequiredValidationRule]
452
+ },
453
+ {
454
+ field: EnumCampoTributo.Valor,
455
+ rules: [this.taxAmountRequiredValidationRule]
456
+ }
457
+ ],
458
+ [EnumTipoTributo.CBS_GOVERNAMENTAL]: [
459
+ {
460
+ field: EnumCampoTributo.BaseCalculo,
461
+ rules: [this.taxableBaseRequiredValidationRule]
462
+ },
463
+ {
464
+ field: EnumCampoTributo.Aliquota,
465
+ rules: [this.taxRateRequiredValidationRule]
466
+ }
467
+ ],
468
+ [EnumTipoTributo.CBS_ALC_ZFM]: [
469
+ {
470
+ field: EnumCampoTributo.BaseCalculo,
471
+ rules: [this.taxableBaseRequiredValidationRule]
472
+ },
473
+ {
474
+ field: EnumCampoTributo.Aliquota,
475
+ rules: [this.taxRateRequiredValidationRule]
476
+ }
477
+ ],
478
+ [EnumTipoTributo.IBS_ESTADUAL]: [
479
+ {
480
+ field: EnumCampoTributo.BaseCalculo,
481
+ rules: [this.taxableBaseRequiredValidationRule]
482
+ },
483
+ {
484
+ field: EnumCampoTributo.Aliquota,
485
+ rules: [this.taxRateRequiredValidationRule]
486
+ },
487
+ {
488
+ field: EnumCampoTributo.Valor,
489
+ rules: [this.taxAmountRequiredValidationRule]
490
+ }
491
+ ],
492
+ [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
493
+ {
494
+ field: EnumCampoTributo.BaseCalculo,
495
+ rules: [this.taxableBaseRequiredValidationRule]
496
+ },
497
+ {
498
+ field: EnumCampoTributo.Aliquota,
499
+ rules: [this.taxRateRequiredValidationRule]
500
+ },
501
+ {
502
+ field: EnumCampoTributo.Valor,
503
+ rules: [this.taxAmountRequiredValidationRule]
504
+ }
505
+ ],
506
+ [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
507
+ {
508
+ field: EnumCampoTributo.BaseCalculo,
509
+ rules: [this.taxableBaseRequiredValidationRule]
510
+ },
511
+ {
512
+ field: EnumCampoTributo.Aliquota,
513
+ rules: [this.taxRateRequiredValidationRule]
514
+ }
515
+ ],
516
+ [EnumTipoTributo.IBS_ESTADUAL_GOVERNAMENTAL]: [
517
+ {
518
+ field: EnumCampoTributo.BaseCalculo,
519
+ rules: [this.taxableBaseRequiredValidationRule]
520
+ },
521
+ {
522
+ field: EnumCampoTributo.Aliquota,
523
+ rules: [this.taxRateRequiredValidationRule]
524
+ }
525
+ ],
526
+ [EnumTipoTributo.IBS_MUNICIPAL]: [
527
+ {
528
+ field: EnumCampoTributo.BaseCalculo,
529
+ rules: [this.taxableBaseRequiredValidationRule]
530
+ },
531
+ {
532
+ field: EnumCampoTributo.Aliquota,
533
+ rules: [this.taxRateRequiredValidationRule]
534
+ },
535
+ {
536
+ field: EnumCampoTributo.Valor,
537
+ rules: [this.taxAmountRequiredValidationRule]
538
+ }
539
+ ],
540
+ [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
541
+ {
542
+ field: EnumCampoTributo.BaseCalculo,
543
+ rules: [this.taxableBaseRequiredValidationRule]
544
+ },
545
+ {
546
+ field: EnumCampoTributo.Aliquota,
547
+ rules: [this.taxRateRequiredValidationRule]
548
+ },
549
+ {
550
+ field: EnumCampoTributo.Valor,
551
+ rules: [this.taxAmountRequiredValidationRule]
552
+ }
553
+ ],
554
+ [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
555
+ {
556
+ field: EnumCampoTributo.BaseCalculo,
557
+ rules: [this.taxableBaseRequiredValidationRule]
558
+ },
559
+ {
560
+ field: EnumCampoTributo.Aliquota,
561
+ rules: [this.taxRateRequiredValidationRule]
562
+ }
563
+ ],
564
+ [EnumTipoTributo.IBS_MUNICIPAL_GOVERNAMENTAL]: [
565
+ {
566
+ field: EnumCampoTributo.BaseCalculo,
567
+ rules: [this.taxableBaseRequiredValidationRule]
568
+ },
569
+ {
570
+ field: EnumCampoTributo.Aliquota,
571
+ rules: [this.taxRateRequiredValidationRule]
572
+ }
573
+ ],
574
+ [EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
575
+ {
576
+ field: EnumCampoTributo.BaseCalculo,
577
+ rules: [this.taxableBaseRequiredValidationRule]
578
+ },
579
+ {
580
+ field: EnumCampoTributo.Aliquota,
581
+ rules: [this.taxRateRequiredValidationRule]
582
+ }
583
+ ],
584
+ [EnumTipoTributo.IS]: [
585
+ {
586
+ field: EnumCampoTributo.BaseCalculo,
587
+ rules: [this.taxableBaseRequiredValidationRule]
588
+ },
589
+ {
590
+ field: EnumCampoTributo.Aliquota,
591
+ rules: [this.taxRateRequiredValidationRule]
592
+ },
593
+ {
594
+ field: EnumCampoTributo.Valor,
595
+ rules: [this.taxAmountRequiredValidationRule]
596
+ }
597
+ ]
598
+ },
599
+ 'Product and Service Order': {
600
+ [EnumTipoTributo.CBS]: [
601
+ {
602
+ field: EnumCampoTributo.BaseCalculo,
603
+ rules: [this.taxableBaseRequiredValidationRule]
604
+ },
605
+ {
606
+ field: EnumCampoTributo.Aliquota,
607
+ rules: [this.taxRateRequiredValidationRule]
608
+ },
609
+ {
610
+ field: EnumCampoTributo.Valor,
611
+ rules: [this.taxAmountRequiredValidationRule]
612
+ }
613
+ ],
614
+ [EnumTipoTributo.CBS_DIFERIDO]: [
615
+ {
616
+ field: EnumCampoTributo.BaseCalculo,
617
+ rules: [this.taxableBaseRequiredValidationRule]
618
+ },
619
+ {
620
+ field: EnumCampoTributo.Aliquota,
621
+ rules: [this.taxRateRequiredValidationRule]
622
+ },
623
+ {
624
+ field: EnumCampoTributo.Valor,
625
+ rules: [this.taxAmountRequiredValidationRule]
626
+ }
627
+ ],
628
+ [EnumTipoTributo.CBS_CREDITO_PRESUMIDO]: [
629
+ {
630
+ field: EnumCampoTributo.BaseCalculo,
631
+ rules: [this.taxableBaseRequiredValidationRule]
632
+ },
633
+ {
634
+ field: EnumCampoTributo.Aliquota,
635
+ rules: [this.taxRateRequiredValidationRule]
636
+ }
637
+ ],
638
+ [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
639
+ {
640
+ field: EnumCampoTributo.BaseCalculo,
641
+ rules: [this.taxableBaseRequiredValidationRule]
642
+ },
643
+ {
644
+ field: EnumCampoTributo.Aliquota,
645
+ rules: [this.taxRateRequiredValidationRule]
646
+ },
647
+ {
648
+ field: EnumCampoTributo.Valor,
649
+ rules: [this.taxAmountRequiredValidationRule]
650
+ }
651
+ ],
652
+ [EnumTipoTributo.CBS_GOVERNAMENTAL]: [
653
+ {
654
+ field: EnumCampoTributo.BaseCalculo,
655
+ rules: [this.taxableBaseRequiredValidationRule]
656
+ },
657
+ {
658
+ field: EnumCampoTributo.Aliquota,
659
+ rules: [this.taxRateRequiredValidationRule]
660
+ }
661
+ ],
662
+ [EnumTipoTributo.CBS_ALC_ZFM]: [
663
+ {
664
+ field: EnumCampoTributo.BaseCalculo,
665
+ rules: [this.taxableBaseRequiredValidationRule]
666
+ },
667
+ {
668
+ field: EnumCampoTributo.Aliquota,
669
+ rules: [this.taxRateRequiredValidationRule]
670
+ }
671
+ ],
672
+ [EnumTipoTributo.IBS_ESTADUAL]: [
673
+ {
674
+ field: EnumCampoTributo.BaseCalculo,
675
+ rules: [this.taxableBaseRequiredValidationRule]
676
+ },
677
+ {
678
+ field: EnumCampoTributo.Aliquota,
679
+ rules: [this.taxRateRequiredValidationRule]
680
+ },
681
+ {
682
+ field: EnumCampoTributo.Valor,
683
+ rules: [this.taxAmountRequiredValidationRule]
684
+ }
685
+ ],
686
+ [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
687
+ {
688
+ field: EnumCampoTributo.BaseCalculo,
689
+ rules: [this.taxableBaseRequiredValidationRule]
690
+ },
691
+ {
692
+ field: EnumCampoTributo.Aliquota,
693
+ rules: [this.taxRateRequiredValidationRule]
694
+ },
695
+ {
696
+ field: EnumCampoTributo.Valor,
697
+ rules: [this.taxAmountRequiredValidationRule]
698
+ }
699
+ ],
700
+ [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
701
+ {
702
+ field: EnumCampoTributo.BaseCalculo,
703
+ rules: [this.taxableBaseRequiredValidationRule]
704
+ },
705
+ {
706
+ field: EnumCampoTributo.Aliquota,
707
+ rules: [this.taxRateRequiredValidationRule]
708
+ }
709
+ ],
710
+ [EnumTipoTributo.IBS_ESTADUAL_GOVERNAMENTAL]: [
711
+ {
712
+ field: EnumCampoTributo.BaseCalculo,
713
+ rules: [this.taxableBaseRequiredValidationRule]
714
+ },
715
+ {
716
+ field: EnumCampoTributo.Aliquota,
717
+ rules: [this.taxRateRequiredValidationRule]
718
+ }
719
+ ],
720
+ [EnumTipoTributo.IBS_MUNICIPAL]: [
721
+ {
722
+ field: EnumCampoTributo.BaseCalculo,
723
+ rules: [this.taxableBaseRequiredValidationRule]
724
+ },
725
+ {
726
+ field: EnumCampoTributo.Aliquota,
727
+ rules: [this.taxRateRequiredValidationRule]
728
+ },
729
+ {
730
+ field: EnumCampoTributo.Valor,
731
+ rules: [this.taxAmountRequiredValidationRule]
732
+ }
733
+ ],
734
+ [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
735
+ {
736
+ field: EnumCampoTributo.BaseCalculo,
737
+ rules: [this.taxableBaseRequiredValidationRule]
738
+ },
739
+ {
740
+ field: EnumCampoTributo.Aliquota,
741
+ rules: [this.taxRateRequiredValidationRule]
742
+ },
743
+ {
744
+ field: EnumCampoTributo.Valor,
745
+ rules: [this.taxAmountRequiredValidationRule]
746
+ }
747
+ ],
748
+ [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
749
+ {
750
+ field: EnumCampoTributo.BaseCalculo,
751
+ rules: [this.taxableBaseRequiredValidationRule]
752
+ },
753
+ {
754
+ field: EnumCampoTributo.Aliquota,
755
+ rules: [this.taxRateRequiredValidationRule]
756
+ }
757
+ ],
758
+ [EnumTipoTributo.IBS_MUNICIPAL_GOVERNAMENTAL]: [
759
+ {
760
+ field: EnumCampoTributo.BaseCalculo,
761
+ rules: [this.taxableBaseRequiredValidationRule]
762
+ },
763
+ {
764
+ field: EnumCampoTributo.Aliquota,
765
+ rules: [this.taxRateRequiredValidationRule]
766
+ }
767
+ ],
768
+ [EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
769
+ {
770
+ field: EnumCampoTributo.BaseCalculo,
771
+ rules: [this.taxableBaseRequiredValidationRule]
772
+ },
773
+ {
774
+ field: EnumCampoTributo.Aliquota,
775
+ rules: [this.taxRateRequiredValidationRule]
776
+ }
777
+ ],
778
+ [EnumTipoTributo.IS]: [
779
+ {
780
+ field: EnumCampoTributo.BaseCalculo,
781
+ rules: [this.taxableBaseRequiredValidationRule]
782
+ },
783
+ {
784
+ field: EnumCampoTributo.Aliquota,
785
+ rules: [this.taxRateRequiredValidationRule]
786
+ },
787
+ {
788
+ field: EnumCampoTributo.Valor,
789
+ rules: [this.taxAmountRequiredValidationRule]
790
+ }
791
+ ]
792
+ },
793
+ 'Product and Service Quote': {
794
+ [EnumTipoTributo.CBS]: [
795
+ {
796
+ field: EnumCampoTributo.BaseCalculo,
797
+ rules: [this.taxableBaseRequiredValidationRule]
798
+ },
799
+ {
800
+ field: EnumCampoTributo.Aliquota,
801
+ rules: [this.taxRateRequiredValidationRule]
802
+ },
803
+ {
804
+ field: EnumCampoTributo.Valor,
805
+ rules: [this.taxAmountRequiredValidationRule]
806
+ }
807
+ ],
808
+ [EnumTipoTributo.CBS_DIFERIDO]: [
809
+ {
810
+ field: EnumCampoTributo.BaseCalculo,
811
+ rules: [this.taxableBaseRequiredValidationRule]
812
+ },
813
+ {
814
+ field: EnumCampoTributo.Aliquota,
815
+ rules: [this.taxRateRequiredValidationRule]
816
+ },
817
+ {
818
+ field: EnumCampoTributo.Valor,
819
+ rules: [this.taxAmountRequiredValidationRule]
820
+ }
821
+ ],
822
+ [EnumTipoTributo.CBS_CREDITO_PRESUMIDO]: [
823
+ {
824
+ field: EnumCampoTributo.BaseCalculo,
825
+ rules: [this.taxableBaseRequiredValidationRule]
826
+ },
827
+ {
828
+ field: EnumCampoTributo.Aliquota,
829
+ rules: [this.taxRateRequiredValidationRule]
830
+ }
831
+ ],
832
+ [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
833
+ {
834
+ field: EnumCampoTributo.BaseCalculo,
835
+ rules: [this.taxableBaseRequiredValidationRule]
836
+ },
837
+ {
838
+ field: EnumCampoTributo.Aliquota,
839
+ rules: [this.taxRateRequiredValidationRule]
840
+ },
841
+ {
842
+ field: EnumCampoTributo.Valor,
843
+ rules: [this.taxAmountRequiredValidationRule]
844
+ }
845
+ ],
846
+ [EnumTipoTributo.CBS_GOVERNAMENTAL]: [
847
+ {
848
+ field: EnumCampoTributo.BaseCalculo,
849
+ rules: [this.taxableBaseRequiredValidationRule]
850
+ },
851
+ {
852
+ field: EnumCampoTributo.Aliquota,
853
+ rules: [this.taxRateRequiredValidationRule]
854
+ }
855
+ ],
856
+ [EnumTipoTributo.CBS_ALC_ZFM]: [
857
+ {
858
+ field: EnumCampoTributo.BaseCalculo,
859
+ rules: [this.taxableBaseRequiredValidationRule]
860
+ },
861
+ {
862
+ field: EnumCampoTributo.Aliquota,
863
+ rules: [this.taxRateRequiredValidationRule]
864
+ }
865
+ ],
866
+ [EnumTipoTributo.IBS_ESTADUAL]: [
867
+ {
868
+ field: EnumCampoTributo.BaseCalculo,
869
+ rules: [this.taxableBaseRequiredValidationRule]
870
+ },
871
+ {
872
+ field: EnumCampoTributo.Aliquota,
873
+ rules: [this.taxRateRequiredValidationRule]
874
+ },
875
+ {
876
+ field: EnumCampoTributo.Valor,
877
+ rules: [this.taxAmountRequiredValidationRule]
878
+ }
879
+ ],
880
+ [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
881
+ {
882
+ field: EnumCampoTributo.BaseCalculo,
883
+ rules: [this.taxableBaseRequiredValidationRule]
884
+ },
885
+ {
886
+ field: EnumCampoTributo.Aliquota,
887
+ rules: [this.taxRateRequiredValidationRule]
888
+ },
889
+ {
890
+ field: EnumCampoTributo.Valor,
891
+ rules: [this.taxAmountRequiredValidationRule]
892
+ }
893
+ ],
894
+ [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
895
+ {
896
+ field: EnumCampoTributo.BaseCalculo,
897
+ rules: [this.taxableBaseRequiredValidationRule]
898
+ },
899
+ {
900
+ field: EnumCampoTributo.Aliquota,
901
+ rules: [this.taxRateRequiredValidationRule]
902
+ }
903
+ ],
904
+ [EnumTipoTributo.IBS_ESTADUAL_GOVERNAMENTAL]: [
905
+ {
906
+ field: EnumCampoTributo.BaseCalculo,
907
+ rules: [this.taxableBaseRequiredValidationRule]
908
+ },
909
+ {
910
+ field: EnumCampoTributo.Aliquota,
911
+ rules: [this.taxRateRequiredValidationRule]
912
+ }
913
+ ],
914
+ [EnumTipoTributo.IBS_MUNICIPAL]: [
915
+ {
916
+ field: EnumCampoTributo.BaseCalculo,
917
+ rules: [this.taxableBaseRequiredValidationRule]
918
+ },
919
+ {
920
+ field: EnumCampoTributo.Aliquota,
921
+ rules: [this.taxRateRequiredValidationRule]
922
+ },
923
+ {
924
+ field: EnumCampoTributo.Valor,
925
+ rules: [this.taxAmountRequiredValidationRule]
926
+ }
927
+ ],
928
+ [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
929
+ {
930
+ field: EnumCampoTributo.BaseCalculo,
931
+ rules: [this.taxableBaseRequiredValidationRule]
932
+ },
933
+ {
934
+ field: EnumCampoTributo.Aliquota,
935
+ rules: [this.taxRateRequiredValidationRule]
936
+ },
937
+ {
938
+ field: EnumCampoTributo.Valor,
939
+ rules: [this.taxAmountRequiredValidationRule]
940
+ }
941
+ ],
942
+ [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
943
+ {
944
+ field: EnumCampoTributo.BaseCalculo,
945
+ rules: [this.taxableBaseRequiredValidationRule]
946
+ },
947
+ {
948
+ field: EnumCampoTributo.Aliquota,
949
+ rules: [this.taxRateRequiredValidationRule]
950
+ }
951
+ ],
952
+ [EnumTipoTributo.IBS_MUNICIPAL_GOVERNAMENTAL]: [
953
+ {
954
+ field: EnumCampoTributo.BaseCalculo,
955
+ rules: [this.taxableBaseRequiredValidationRule]
956
+ },
957
+ {
958
+ field: EnumCampoTributo.Aliquota,
959
+ rules: [this.taxRateRequiredValidationRule]
960
+ }
961
+ ],
962
+ [EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
963
+ {
964
+ field: EnumCampoTributo.BaseCalculo,
965
+ rules: [this.taxableBaseRequiredValidationRule]
966
+ },
967
+ {
968
+ field: EnumCampoTributo.Aliquota,
969
+ rules: [this.taxRateRequiredValidationRule]
970
+ }
971
+ ],
972
+ [EnumTipoTributo.IS]: [
973
+ {
974
+ field: EnumCampoTributo.BaseCalculo,
975
+ rules: [this.taxableBaseRequiredValidationRule]
976
+ },
977
+ {
978
+ field: EnumCampoTributo.Aliquota,
979
+ rules: [this.taxRateRequiredValidationRule]
980
+ },
981
+ {
982
+ field: EnumCampoTributo.Valor,
983
+ rules: [this.taxAmountRequiredValidationRule]
984
+ }
985
+ ]
986
+ },
987
+ 'Product Quote': {
988
+ [EnumTipoTributo.CBS]: [
989
+ {
990
+ field: EnumCampoTributo.BaseCalculo,
991
+ rules: [this.taxableBaseRequiredValidationRule]
992
+ },
993
+ {
994
+ field: EnumCampoTributo.Aliquota,
995
+ rules: [this.taxRateRequiredValidationRule]
996
+ },
997
+ {
998
+ field: EnumCampoTributo.Valor,
999
+ rules: [this.taxAmountRequiredValidationRule]
1000
+ }
1001
+ ],
1002
+ [EnumTipoTributo.CBS_DIFERIDO]: [
1003
+ {
1004
+ field: EnumCampoTributo.BaseCalculo,
1005
+ rules: [this.taxableBaseRequiredValidationRule]
1006
+ },
1007
+ {
1008
+ field: EnumCampoTributo.Aliquota,
1009
+ rules: [this.taxRateRequiredValidationRule]
1010
+ },
1011
+ {
1012
+ field: EnumCampoTributo.Valor,
1013
+ rules: [this.taxAmountRequiredValidationRule]
1014
+ }
1015
+ ],
1016
+ [EnumTipoTributo.CBS_CREDITO_PRESUMIDO]: [
1017
+ {
1018
+ field: EnumCampoTributo.BaseCalculo,
1019
+ rules: [this.taxableBaseRequiredValidationRule]
1020
+ },
1021
+ {
1022
+ field: EnumCampoTributo.Aliquota,
1023
+ rules: [this.taxRateRequiredValidationRule]
1024
+ }
1025
+ ],
1026
+ [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
1027
+ {
1028
+ field: EnumCampoTributo.BaseCalculo,
1029
+ rules: [this.taxableBaseRequiredValidationRule]
1030
+ },
1031
+ {
1032
+ field: EnumCampoTributo.Aliquota,
1033
+ rules: [this.taxRateRequiredValidationRule]
1034
+ },
1035
+ {
1036
+ field: EnumCampoTributo.Valor,
1037
+ rules: [this.taxAmountRequiredValidationRule]
1038
+ }
1039
+ ],
1040
+ [EnumTipoTributo.CBS_GOVERNAMENTAL]: [
1041
+ {
1042
+ field: EnumCampoTributo.BaseCalculo,
1043
+ rules: [this.taxableBaseRequiredValidationRule]
1044
+ },
1045
+ {
1046
+ field: EnumCampoTributo.Aliquota,
1047
+ rules: [this.taxRateRequiredValidationRule]
1048
+ }
1049
+ ],
1050
+ [EnumTipoTributo.CBS_ALC_ZFM]: [
1051
+ {
1052
+ field: EnumCampoTributo.BaseCalculo,
1053
+ rules: [this.taxableBaseRequiredValidationRule]
1054
+ },
1055
+ {
1056
+ field: EnumCampoTributo.Aliquota,
1057
+ rules: [this.taxRateRequiredValidationRule]
1058
+ }
1059
+ ],
1060
+ [EnumTipoTributo.IBS_ESTADUAL]: [
1061
+ {
1062
+ field: EnumCampoTributo.BaseCalculo,
1063
+ rules: [this.taxableBaseRequiredValidationRule]
1064
+ },
1065
+ {
1066
+ field: EnumCampoTributo.Aliquota,
1067
+ rules: [this.taxRateRequiredValidationRule]
1068
+ },
1069
+ {
1070
+ field: EnumCampoTributo.Valor,
1071
+ rules: [this.taxAmountRequiredValidationRule]
1072
+ }
1073
+ ],
1074
+ [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
1075
+ {
1076
+ field: EnumCampoTributo.BaseCalculo,
1077
+ rules: [this.taxableBaseRequiredValidationRule]
1078
+ },
1079
+ {
1080
+ field: EnumCampoTributo.Aliquota,
1081
+ rules: [this.taxRateRequiredValidationRule]
1082
+ },
1083
+ {
1084
+ field: EnumCampoTributo.Valor,
1085
+ rules: [this.taxAmountRequiredValidationRule]
1086
+ }
1087
+ ],
1088
+ [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
1089
+ {
1090
+ field: EnumCampoTributo.BaseCalculo,
1091
+ rules: [this.taxableBaseRequiredValidationRule]
1092
+ },
1093
+ {
1094
+ field: EnumCampoTributo.Aliquota,
1095
+ rules: [this.taxRateRequiredValidationRule]
1096
+ }
1097
+ ],
1098
+ [EnumTipoTributo.IBS_ESTADUAL_GOVERNAMENTAL]: [
1099
+ {
1100
+ field: EnumCampoTributo.BaseCalculo,
1101
+ rules: [this.taxableBaseRequiredValidationRule]
1102
+ },
1103
+ {
1104
+ field: EnumCampoTributo.Aliquota,
1105
+ rules: [this.taxRateRequiredValidationRule]
1106
+ }
1107
+ ],
1108
+ [EnumTipoTributo.IBS_MUNICIPAL]: [
1109
+ {
1110
+ field: EnumCampoTributo.BaseCalculo,
1111
+ rules: [this.taxableBaseRequiredValidationRule]
1112
+ },
1113
+ {
1114
+ field: EnumCampoTributo.Aliquota,
1115
+ rules: [this.taxRateRequiredValidationRule]
1116
+ },
1117
+ {
1118
+ field: EnumCampoTributo.Valor,
1119
+ rules: [this.taxAmountRequiredValidationRule]
1120
+ }
1121
+ ],
1122
+ [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
1123
+ {
1124
+ field: EnumCampoTributo.BaseCalculo,
1125
+ rules: [this.taxableBaseRequiredValidationRule]
1126
+ },
1127
+ {
1128
+ field: EnumCampoTributo.Aliquota,
1129
+ rules: [this.taxRateRequiredValidationRule]
1130
+ },
1131
+ {
1132
+ field: EnumCampoTributo.Valor,
1133
+ rules: [this.taxAmountRequiredValidationRule]
1134
+ }
1135
+ ],
1136
+ [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
1137
+ {
1138
+ field: EnumCampoTributo.BaseCalculo,
1139
+ rules: [this.taxableBaseRequiredValidationRule]
1140
+ },
1141
+ {
1142
+ field: EnumCampoTributo.Aliquota,
1143
+ rules: [this.taxRateRequiredValidationRule]
1144
+ }
1145
+ ],
1146
+ [EnumTipoTributo.IBS_MUNICIPAL_GOVERNAMENTAL]: [
1147
+ {
1148
+ field: EnumCampoTributo.BaseCalculo,
1149
+ rules: [this.taxableBaseRequiredValidationRule]
1150
+ },
1151
+ {
1152
+ field: EnumCampoTributo.Aliquota,
1153
+ rules: [this.taxRateRequiredValidationRule]
1154
+ }
1155
+ ],
1156
+ [EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
1157
+ {
1158
+ field: EnumCampoTributo.BaseCalculo,
1159
+ rules: [this.taxableBaseRequiredValidationRule]
1160
+ },
1161
+ {
1162
+ field: EnumCampoTributo.Aliquota,
1163
+ rules: [this.taxRateRequiredValidationRule]
1164
+ }
1165
+ ],
1166
+ [EnumTipoTributo.IS]: [
1167
+ {
1168
+ field: EnumCampoTributo.BaseCalculo,
1169
+ rules: [this.taxableBaseRequiredValidationRule]
1170
+ },
1171
+ {
1172
+ field: EnumCampoTributo.Aliquota,
1173
+ rules: [this.taxRateRequiredValidationRule]
1174
+ },
1175
+ {
1176
+ field: EnumCampoTributo.Valor,
1177
+ rules: [this.taxAmountRequiredValidationRule]
1178
+ }
1179
+ ]
1180
+ },
1181
+ 'Service Quote': {
1182
+ [EnumTipoTributo.CBS]: [
1183
+ {
1184
+ field: EnumCampoTributo.BaseCalculo,
1185
+ rules: [this.taxableBaseRequiredValidationRule]
1186
+ },
1187
+ {
1188
+ field: EnumCampoTributo.Aliquota,
1189
+ rules: [this.taxRateRequiredValidationRule]
1190
+ },
1191
+ {
1192
+ field: EnumCampoTributo.Valor,
1193
+ rules: [this.taxAmountRequiredValidationRule]
1194
+ }
1195
+ ],
1196
+ [EnumTipoTributo.CBS_DIFERIDO]: [
1197
+ {
1198
+ field: EnumCampoTributo.BaseCalculo,
1199
+ rules: [this.taxableBaseRequiredValidationRule]
1200
+ },
1201
+ {
1202
+ field: EnumCampoTributo.Aliquota,
1203
+ rules: [this.taxRateRequiredValidationRule]
1204
+ },
1205
+ {
1206
+ field: EnumCampoTributo.Valor,
1207
+ rules: [this.taxAmountRequiredValidationRule]
1208
+ }
1209
+ ],
1210
+ [EnumTipoTributo.CBS_CREDITO_PRESUMIDO]: [
1211
+ {
1212
+ field: EnumCampoTributo.BaseCalculo,
1213
+ rules: [this.taxableBaseRequiredValidationRule]
1214
+ },
1215
+ {
1216
+ field: EnumCampoTributo.Aliquota,
1217
+ rules: [this.taxRateRequiredValidationRule]
1218
+ }
1219
+ ],
1220
+ [EnumTipoTributo.CBS_TRIBUTACAO_REGULAR]: [
1221
+ {
1222
+ field: EnumCampoTributo.BaseCalculo,
1223
+ rules: [this.taxableBaseRequiredValidationRule]
1224
+ },
1225
+ {
1226
+ field: EnumCampoTributo.Aliquota,
1227
+ rules: [this.taxRateRequiredValidationRule]
1228
+ },
1229
+ {
1230
+ field: EnumCampoTributo.Valor,
1231
+ rules: [this.taxAmountRequiredValidationRule]
1232
+ }
1233
+ ],
1234
+ [EnumTipoTributo.CBS_GOVERNAMENTAL]: [
1235
+ {
1236
+ field: EnumCampoTributo.BaseCalculo,
1237
+ rules: [this.taxableBaseRequiredValidationRule]
1238
+ },
1239
+ {
1240
+ field: EnumCampoTributo.Aliquota,
1241
+ rules: [this.taxRateRequiredValidationRule]
1242
+ }
1243
+ ],
1244
+ [EnumTipoTributo.CBS_ALC_ZFM]: [
1245
+ {
1246
+ field: EnumCampoTributo.BaseCalculo,
1247
+ rules: [this.taxableBaseRequiredValidationRule]
1248
+ },
1249
+ {
1250
+ field: EnumCampoTributo.Aliquota,
1251
+ rules: [this.taxRateRequiredValidationRule]
1252
+ }
1253
+ ],
1254
+ [EnumTipoTributo.IBS_ESTADUAL]: [
1255
+ {
1256
+ field: EnumCampoTributo.BaseCalculo,
1257
+ rules: [this.taxableBaseRequiredValidationRule]
1258
+ },
1259
+ {
1260
+ field: EnumCampoTributo.Aliquota,
1261
+ rules: [this.taxRateRequiredValidationRule]
1262
+ },
1263
+ {
1264
+ field: EnumCampoTributo.Valor,
1265
+ rules: [this.taxAmountRequiredValidationRule]
1266
+ }
1267
+ ],
1268
+ [EnumTipoTributo.IBS_ESTADUAL_DIFERIDO]: [
1269
+ {
1270
+ field: EnumCampoTributo.BaseCalculo,
1271
+ rules: [this.taxableBaseRequiredValidationRule]
1272
+ },
1273
+ {
1274
+ field: EnumCampoTributo.Aliquota,
1275
+ rules: [this.taxRateRequiredValidationRule]
1276
+ },
1277
+ {
1278
+ field: EnumCampoTributo.Valor,
1279
+ rules: [this.taxAmountRequiredValidationRule]
1280
+ }
1281
+ ],
1282
+ [EnumTipoTributo.IBS_ESTADUAL_TRIBUTACAO_REGULAR]: [
1283
+ {
1284
+ field: EnumCampoTributo.BaseCalculo,
1285
+ rules: [this.taxableBaseRequiredValidationRule]
1286
+ },
1287
+ {
1288
+ field: EnumCampoTributo.Aliquota,
1289
+ rules: [this.taxRateRequiredValidationRule]
1290
+ }
1291
+ ],
1292
+ [EnumTipoTributo.IBS_ESTADUAL_GOVERNAMENTAL]: [
1293
+ {
1294
+ field: EnumCampoTributo.BaseCalculo,
1295
+ rules: [this.taxableBaseRequiredValidationRule]
1296
+ },
1297
+ {
1298
+ field: EnumCampoTributo.Aliquota,
1299
+ rules: [this.taxRateRequiredValidationRule]
1300
+ }
1301
+ ],
1302
+ [EnumTipoTributo.IBS_MUNICIPAL]: [
1303
+ {
1304
+ field: EnumCampoTributo.BaseCalculo,
1305
+ rules: [this.taxableBaseRequiredValidationRule]
1306
+ },
1307
+ {
1308
+ field: EnumCampoTributo.Aliquota,
1309
+ rules: [this.taxRateRequiredValidationRule]
1310
+ },
1311
+ {
1312
+ field: EnumCampoTributo.Valor,
1313
+ rules: [this.taxAmountRequiredValidationRule]
1314
+ }
1315
+ ],
1316
+ [EnumTipoTributo.IBS_MUNICIPAL_DIFERIDO]: [
1317
+ {
1318
+ field: EnumCampoTributo.BaseCalculo,
1319
+ rules: [this.taxableBaseRequiredValidationRule]
1320
+ },
1321
+ {
1322
+ field: EnumCampoTributo.Aliquota,
1323
+ rules: [this.taxRateRequiredValidationRule]
1324
+ },
1325
+ {
1326
+ field: EnumCampoTributo.Valor,
1327
+ rules: [this.taxAmountRequiredValidationRule]
1328
+ }
1329
+ ],
1330
+ [EnumTipoTributo.IBS_MUNICIPAL_TRIBUTACAO_REGULAR]: [
1331
+ {
1332
+ field: EnumCampoTributo.BaseCalculo,
1333
+ rules: [this.taxableBaseRequiredValidationRule]
1334
+ },
1335
+ {
1336
+ field: EnumCampoTributo.Aliquota,
1337
+ rules: [this.taxRateRequiredValidationRule]
1338
+ }
1339
+ ],
1340
+ [EnumTipoTributo.IBS_MUNICIPAL_GOVERNAMENTAL]: [
1341
+ {
1342
+ field: EnumCampoTributo.BaseCalculo,
1343
+ rules: [this.taxableBaseRequiredValidationRule]
1344
+ },
1345
+ {
1346
+ field: EnumCampoTributo.Aliquota,
1347
+ rules: [this.taxRateRequiredValidationRule]
1348
+ }
1349
+ ],
1350
+ [EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
1351
+ {
1352
+ field: EnumCampoTributo.BaseCalculo,
1353
+ rules: [this.taxableBaseRequiredValidationRule]
1354
+ },
1355
+ {
1356
+ field: EnumCampoTributo.Aliquota,
1357
+ rules: [this.taxRateRequiredValidationRule]
1358
+ }
1359
+ ],
1360
+ [EnumTipoTributo.IS]: [
1361
+ {
1362
+ field: EnumCampoTributo.BaseCalculo,
1363
+ rules: [this.taxableBaseRequiredValidationRule]
1364
+ },
1365
+ {
1366
+ field: EnumCampoTributo.Aliquota,
1367
+ rules: [this.taxRateRequiredValidationRule]
1368
+ },
1369
+ {
1370
+ field: EnumCampoTributo.Valor,
1371
+ rules: [this.taxAmountRequiredValidationRule]
1372
+ }
1373
+ ]
1374
+ }
1375
+ };
1376
+ }
1377
+ get(type, taxType) {
1378
+ var _a, _b;
1379
+ return (_b = (_a = this.strategies[type]) === null || _a === void 0 ? void 0 : _a[taxType]) !== null && _b !== void 0 ? _b : [];
1380
+ }
1381
+ };
1382
+ SaleOrderValidationRulesRegistry.ctorParameters = () => [
1383
+ { type: TaxableBaseRequiredValidationRule },
1384
+ { type: TaxRateRequiredValidationRule },
1385
+ { type: TaxAmountRequiredValidationRule }
1386
+ ];
1387
+ SaleOrderValidationRulesRegistry.ɵprov = i0.ɵɵdefineInjectable({ factory: function SaleOrderValidationRulesRegistry_Factory() { return new SaleOrderValidationRulesRegistry(i0.ɵɵinject(i1.TaxableBaseRequiredValidationRule), i0.ɵɵinject(i2.TaxRateRequiredValidationRule), i0.ɵɵinject(i3.TaxAmountRequiredValidationRule)); }, token: SaleOrderValidationRulesRegistry, providedIn: "root" });
1388
+ SaleOrderValidationRulesRegistry = __decorate([
1389
+ Injectable({ providedIn: 'root' })
1390
+ ], SaleOrderValidationRulesRegistry);
1391
+ export { SaleOrderValidationRulesRegistry };
1392
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FsZS1vcmRlci12YWxpZGF0aW9uLXJ1bGVzLnJlZ2lzdHJ5LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvci1nZXN0YW8tZW1wcmVzYXJpYWwvZXJweC1jb21wb25lbnRzLyIsInNvdXJjZXMiOlsiY29tcG9uZW50cy90cmlidXRvcy9ydWxlcy92YWxpZGF0aW9uL3JlZ2lzdHJpZXMvc2FsZS1vcmRlci12YWxpZGF0aW9uLXJ1bGVzLnJlZ2lzdHJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUtoRixPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUN4RyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUNwRyxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSx5REFBeUQsQ0FBQzs7Ozs7QUFHNUcsSUFBYSxnQ0FBZ0MsR0FBN0MsTUFBYSxnQ0FBZ0M7SUF5MUN6QyxZQUNxQixpQ0FBb0UsRUFDcEUsNkJBQTRELEVBQzVELCtCQUFnRTtRQUZoRSxzQ0FBaUMsR0FBakMsaUNBQWlDLENBQW1DO1FBQ3BFLGtDQUE2QixHQUE3Qiw2QkFBNkIsQ0FBK0I7UUFDNUQsb0NBQStCLEdBQS9CLCtCQUErQixDQUFpQztRQTMxQ3BFLGVBQVUsR0FBdUI7WUFDOUMsZUFBZSxFQUFFO2dCQUNiLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxFQUFFO29CQUNuQjt3QkFDSSxLQUFLLEVBQUUsZ0JBQWdCLENBQUMsV0FBVzt3QkFDbkMsS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDLGlDQUFpQyxDQUFDO3FCQUNsRDtvQkFDRDt3QkFDSSxLQUFLLEVBQUUsZ0JBQWdCLENBQUMsUUFBUTt3QkFDaEMsS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDLDZC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QUFnQixDQUFDLFFBQVE7d0JBQ2hDLEtBQUssRUFBRSxDQUFDLElBQUksQ0FBQyw2QkFBNkIsQ0FBQztxQkFDOUM7aUJBQ0o7Z0JBQ0QsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDLEVBQUU7b0JBQ2xCO3dCQUNJLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQyxXQUFXO3dCQUNuQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsaUNBQWlDLENBQUM7cUJBQ2xEO29CQUNEO3dCQUNJLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQyxRQUFRO3dCQUNoQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsNkJBQTZCLENBQUM7cUJBQzlDO29CQUNEO3dCQUNJLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQyxLQUFLO3dCQUM3QixLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsK0JBQStCLENBQUM7cUJBQ2hEO2lCQUNKO2FBQ0o7U0FDSixDQUFDO0lBTUMsQ0FBQztJQUVKLEdBQUcsQ0FBQyxJQUFtQixFQUFFLE9BQXdCOztRQUM3QyxtQkFBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQywwQ0FBRyxPQUFPLG9DQUFLLEVBQUUsQ0FBQztJQUNsRCxDQUFDO0NBQ0osQ0FBQTs7WUFSMkQsaUNBQWlDO1lBQ3JDLDZCQUE2QjtZQUMzQiwrQkFBK0I7OztBQTUxQzVFLGdDQUFnQztJQUQ1QyxVQUFVLENBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLENBQUM7R0FDdEIsZ0NBQWdDLENBazJDNUM7U0FsMkNZLGdDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVudW1DYW1wb1RyaWJ1dG8sIEVudW1UaXBvVHJpYnV0byB9IGZyb20gJy4uLy4uLy4uL2VycC10cmlidXRvcy50eXBlcyc7XG5pbXBvcnQgeyBTYWxlT3JkZXJUeXBlIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvc2FsZS1vcmRlci10eXBlJztcbmltcG9ydCB7IEZpZWxkUnVsZU1hcHBpbmcgfSBmcm9tICcuLi8uLi90eXBlcy9maWVsZC1ydWxlLW1hcHBpbmcnO1xuaW1wb3J0IHsgU2NoZW1hIH0gZnJvbSAnLi4vLi4vdHlwZXMvc2NoZW1hcy9zYWxlLW9yZGVyLnNjaGVtYSc7XG5pbXBvcnQgeyBTdHJhdGVnaWVzIH0gZnJvbSAnLi4vLi4vdHlwZXMvc3RyYXRlZ2llcyc7XG5pbXBvcnQgeyBUYXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlIH0gZnJvbSAnLi4vcnVsZXMvcmVxdWlyZWQvdGF4LWFtb3VudC1yZXF1aXJlZC12YWxpZGF0aW9uLXJ1bGUnO1xuaW1wb3J0IHsgVGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGUgfSBmcm9tICcuLi9ydWxlcy9yZXF1aXJlZC90YXgtcmF0ZS1yZXF1aXJlZC12YWxpZGF0aW9uLXJ1bGUnO1xuaW1wb3J0IHsgVGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlIH0gZnJvbSAnLi4vcnVsZXMvcmVxdWlyZWQvdGF4YWJsZS1iYXNlLXJlcXVpcmVkLXZhbGlkYXRpb24tcnVsZSc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgU2FsZU9yZGVyVmFsaWRhdGlvblJ1bGVzUmVnaXN0cnkge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgc3RyYXRlZ2llczogU3RyYXRlZ2llczxTY2hlbWE+ID0ge1xuICAgICAgICAnUHJvZHVjdCBPcmRlcic6IHtcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uQ0JTXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5DQlNfRElGRVJJRE9dOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLkNCU19DUkVESVRPX1BSRVNVTUlET106IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLkNCU19UUklCVVRBQ0FPX1JFR1VMQVJdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLkNCU19HT1ZFUk5BTUVOVEFMXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uQ0JTX0FMQ19aRk1dOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfRVNUQURVQUxdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5WYWxvcixcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheEFtb3VudFJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSUJTX0VTVEFEVUFMX0RJRkVSSURPXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfRVNUQURVQUxfVFJJQlVUQUNBT19SRUdVTEFSXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSUJTX0VTVEFEVUFMX0dPVkVSTkFNRU5UQUxdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfTVVOSUNJUEFMXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfTVVOSUNJUEFMX0RJRkVSSURPXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfTVVOSUNJUEFMX1RSSUJVVEFDQU9fUkVHVUxBUl06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19NVU5JQ0lQQUxfR09WRVJOQU1FTlRBTF06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19DUkVESVRPX1BSRVNVTUlET106IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklTXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgIH0sXG4gICAgICAgICdTZXJ2aWNlIE9yZGVyJzoge1xuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5DQlNdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLkNCU19ESUZFUklET106IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5WYWxvcixcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheEFtb3VudFJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uQ0JTX0NSRURJVE9fUFJFU1VNSURPXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uQ0JTX1RSSUJVVEFDQU9fUkVHVUxBUl06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5WYWxvcixcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheEFtb3VudFJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uQ0JTX0dPVkVSTkFNRU5UQUxdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5DQlNfQUxDX1pGTV06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19FU1RBRFVBTF06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG5cbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfRVNUQURVQUxfRElGRVJJRE9dOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19FU1RBRFVBTF9UUklCVVRBQ0FPX1JFR1VMQVJdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfRVNUQURVQUxfR09WRVJOQU1FTlRBTF06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19NVU5JQ0lQQUxdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19NVU5JQ0lQQUxfRElGRVJJRE9dOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19NVU5JQ0lQQUxfVFJJQlVUQUNBT19SRUdVTEFSXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSUJTX01VTklDSVBBTF9HT1ZFUk5BTUVOVEFMXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSUJTX0NSRURJVE9fUFJFU1VNSURPXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSVNdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF1cbiAgICAgICAgfSxcbiAgICAgICAgJ0Z1dHVyZSBEZWxpdmVyeSBPcmRlcic6IHtcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uQ0JTXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5DQlNfRElGRVJJRE9dOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLkNCU19DUkVESVRPX1BSRVNVTUlET106IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLkNCU19UUklCVVRBQ0FPX1JFR1VMQVJdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLkNCU19HT1ZFUk5BTUVOVEFMXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uQ0JTX0FMQ19aRk1dOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfRVNUQURVQUxdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5WYWxvcixcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheEFtb3VudFJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSUJTX0VTVEFEVUFMX0RJRkVSSURPXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfRVNUQURVQUxfVFJJQlVUQUNBT19SRUdVTEFSXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSUJTX0VTVEFEVUFMX0dPVkVSTkFNRU5UQUxdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfTVVOSUNJUEFMXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfTVVOSUNJUEFMX0RJRkVSSURPXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfTVVOSUNJUEFMX1RSSUJVVEFDQU9fUkVHVUxBUl06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19NVU5JQ0lQQUxfR09WRVJOQU1FTlRBTF06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19DUkVESVRPX1BSRVNVTUlET106IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklTXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgIH0sXG4gICAgICAgICdQcm9kdWN0IGFuZCBTZXJ2aWNlIE9yZGVyJzoge1xuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5DQlNdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLkNCU19ESUZFUklET106IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5WYWxvcixcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheEFtb3VudFJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uQ0JTX0NSRURJVE9fUFJFU1VNSURPXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uQ0JTX1RSSUJVVEFDQU9fUkVHVUxBUl06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5WYWxvcixcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheEFtb3VudFJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uQ0JTX0dPVkVSTkFNRU5UQUxdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5DQlNfQUxDX1pGTV06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19FU1RBRFVBTF06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG5cbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfRVNUQURVQUxfRElGRVJJRE9dOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19FU1RBRFVBTF9UUklCVVRBQ0FPX1JFR1VMQVJdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfRVNUQURVQUxfR09WRVJOQU1FTlRBTF06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19NVU5JQ0lQQUxdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19NVU5JQ0lQQUxfRElGRVJJRE9dOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19NVU5JQ0lQQUxfVFJJQlVUQUNBT19SRUdVTEFSXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSUJTX01VTklDSVBBTF9HT1ZFUk5BTUVOVEFMXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSUJTX0NSRURJVE9fUFJFU1VNSURPXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSVNdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF1cbiAgICAgICAgfSxcbiAgICAgICAgJ1Byb2R1Y3QgYW5kIFNlcnZpY2UgUXVvdGUnOiB7XG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLkNCU106IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5WYWxvcixcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheEFtb3VudFJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uQ0JTX0RJRkVSSURPXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5DQlNfQ1JFRElUT19QUkVTVU1JRE9dOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5DQlNfVFJJQlVUQUNBT19SRUdVTEFSXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5DQlNfR09WRVJOQU1FTlRBTF06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLkNCU19BTENfWkZNXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSUJTX0VTVEFEVUFMXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcblxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19FU1RBRFVBTF9ESUZFUklET106IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5WYWxvcixcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheEFtb3VudFJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSUJTX0VTVEFEVUFMX1RSSUJVVEFDQU9fUkVHVUxBUl06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19FU1RBRFVBTF9HT1ZFUk5BTUVOVEFMXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSUJTX01VTklDSVBBTF06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5WYWxvcixcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheEFtb3VudFJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSUJTX01VTklDSVBBTF9ESUZFUklET106IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5WYWxvcixcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheEFtb3VudFJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSUJTX01VTklDSVBBTF9UUklCVVRBQ0FPX1JFR1VMQVJdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfTVVOSUNJUEFMX0dPVkVSTkFNRU5UQUxdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfQ1JFRElUT19QUkVTVU1JRE9dOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JU106IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5WYWxvcixcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheEFtb3VudFJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICB9LFxuICAgICAgICAnUHJvZHVjdCBRdW90ZSc6IHtcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uQ0JTXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5DQlNfRElGRVJJRE9dOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLkNCU19DUkVESVRPX1BSRVNVTUlET106IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLkNCU19UUklCVVRBQ0FPX1JFR1VMQVJdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLkNCU19HT1ZFUk5BTUVOVEFMXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uQ0JTX0FMQ19aRk1dOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfRVNUQURVQUxdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5WYWxvcixcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheEFtb3VudFJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSUJTX0VTVEFEVUFMX0RJRkVSSURPXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfRVNUQURVQUxfVFJJQlVUQUNBT19SRUdVTEFSXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSUJTX0VTVEFEVUFMX0dPVkVSTkFNRU5UQUxdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfTVVOSUNJUEFMXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfTVVOSUNJUEFMX0RJRkVSSURPXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfTVVOSUNJUEFMX1RSSUJVVEFDQU9fUkVHVUxBUl06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19NVU5JQ0lQQUxfR09WRVJOQU1FTlRBTF06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19DUkVESVRPX1BSRVNVTUlET106IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklTXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgIH0sXG4gICAgICAgICdTZXJ2aWNlIFF1b3RlJzoge1xuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5DQlNdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLkNCU19ESUZFUklET106IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5WYWxvcixcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheEFtb3VudFJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uQ0JTX0NSRURJVE9fUFJFU1VNSURPXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uQ0JTX1RSSUJVVEFDQU9fUkVHVUxBUl06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5WYWxvcixcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheEFtb3VudFJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uQ0JTX0dPVkVSTkFNRU5UQUxdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5DQlNfQUxDX1pGTV06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19FU1RBRFVBTF06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG5cbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLlZhbG9yLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfRVNUQURVQUxfRElGRVJJRE9dOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19FU1RBRFVBTF9UUklCVVRBQ0FPX1JFR1VMQVJdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW0VudW1UaXBvVHJpYnV0by5JQlNfRVNUQURVQUxfR09WRVJOQU1FTlRBTF06IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkJhc2VDYWxjdWxvLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4YWJsZUJhc2VSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5BbGlxdW90YSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheFJhdGVSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19NVU5JQ0lQQUxdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19NVU5JQ0lQQUxfRElGRVJJRE9dOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBbRW51bVRpcG9UcmlidXRvLklCU19NVU5JQ0lQQUxfVFJJQlVUQUNBT19SRUdVTEFSXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSUJTX01VTklDSVBBTF9HT1ZFUk5BTUVOVEFMXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSUJTX0NSRURJVE9fUFJFU1VNSURPXTogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQmFzZUNhbGN1bG8sXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGZpZWxkOiBFbnVtQ2FtcG9UcmlidXRvLkFsaXF1b3RhLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW3RoaXMudGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFtFbnVtVGlwb1RyaWJ1dG8uSVNdOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZDogRW51bUNhbXBvVHJpYnV0by5CYXNlQ2FsY3VsbyxcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM6IFt0aGlzLnRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uQWxpcXVvdGEsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGQ6IEVudW1DYW1wb1RyaWJ1dG8uVmFsb3IsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbdGhpcy50YXhBbW91bnRSZXF1aXJlZFZhbGlkYXRpb25SdWxlXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF1cbiAgICAgICAgfVxuICAgIH07XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0YXhhYmxlQmFzZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGU6IFRheGFibGVCYXNlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0YXhSYXRlUmVxdWlyZWRWYWxpZGF0aW9uUnVsZTogVGF4UmF0ZVJlcXVpcmVkVmFsaWRhdGlvblJ1bGUsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZTogVGF4QW1vdW50UmVxdWlyZWRWYWxpZGF0aW9uUnVsZVxuICAgICkge31cblxuICAgIGdldCh0eXBlOiBTYWxlT3JkZXJUeXBlLCB0YXhUeXBlOiBFbnVtVGlwb1RyaWJ1dG8pOiBGaWVsZFJ1bGVNYXBwaW5nW10ge1xuICAgICAgICByZXR1cm4gdGhpcy5zdHJhdGVnaWVzW3R5cGVdPy5bdGF4VHlwZV0gPz8gW107XG4gICAgfVxufVxuIl19