@finbourne/lusid-sdk-angular18 0.11.10028 → 0.11.10068

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 (356) hide show
  1. package/esm2022/lib/.generated/api/aggregation.service.mjs +66 -1
  2. package/esm2022/lib/.generated/api/api.mjs +6 -2
  3. package/esm2022/lib/.generated/api/compliance.service.mjs +69 -1
  4. package/esm2022/lib/.generated/api/entityResolvers.service.mjs +362 -0
  5. package/esm2022/lib/.generated/api/funds.service.mjs +5 -14
  6. package/esm2022/lib/.generated/api/instrumentEventTypes.service.mjs +1 -1
  7. package/esm2022/lib/.generated/api/paymentInstructions.service.mjs +87 -1
  8. package/esm2022/lib/.generated/api/recs.service.mjs +1 -1
  9. package/esm2022/lib/.generated/api/withholdingTax.service.mjs +722 -0
  10. package/esm2022/lib/.generated/model/accumulationEvent.mjs +3 -2
  11. package/esm2022/lib/.generated/model/adjustGlobalCommitmentEvent.mjs +3 -2
  12. package/esm2022/lib/.generated/model/aggregateNumericTolerance.mjs +12 -0
  13. package/esm2022/lib/.generated/model/allocation.mjs +1 -1
  14. package/esm2022/lib/.generated/model/amendCommitmentEvent.mjs +3 -2
  15. package/esm2022/lib/.generated/model/amortisationEvent.mjs +3 -2
  16. package/esm2022/lib/.generated/model/bankruptcyEvent.mjs +3 -2
  17. package/esm2022/lib/.generated/model/bondCouponEvent.mjs +3 -2
  18. package/esm2022/lib/.generated/model/bondDefaultEvent.mjs +3 -2
  19. package/esm2022/lib/.generated/model/bondForwardCashSettlementEvent.mjs +3 -2
  20. package/esm2022/lib/.generated/model/bondForwardTerminationEvent.mjs +3 -2
  21. package/esm2022/lib/.generated/model/bondOptionTerminationEvent.mjs +3 -2
  22. package/esm2022/lib/.generated/model/bondPrincipalEvent.mjs +3 -2
  23. package/esm2022/lib/.generated/model/bonusIssueEvent.mjs +3 -2
  24. package/esm2022/lib/.generated/model/bucketSetNode.mjs +1 -1
  25. package/esm2022/lib/.generated/model/callOnIntermediateSecuritiesEvent.mjs +3 -2
  26. package/esm2022/lib/.generated/model/cancelSwapEvent.mjs +3 -2
  27. package/esm2022/lib/.generated/model/capitalCallEvent.mjs +3 -2
  28. package/esm2022/lib/.generated/model/capitalDistributionEvent.mjs +3 -2
  29. package/esm2022/lib/.generated/model/capitalGainsDistributionEvent.mjs +3 -2
  30. package/esm2022/lib/.generated/model/capletFloorletCashFlowEvent.mjs +3 -2
  31. package/esm2022/lib/.generated/model/cashDividendEvent.mjs +3 -2
  32. package/esm2022/lib/.generated/model/cashFlowEvent.mjs +3 -2
  33. package/esm2022/lib/.generated/model/cdsCreditEvent.mjs +3 -2
  34. package/esm2022/lib/.generated/model/cdxCreditEvent.mjs +3 -2
  35. package/esm2022/lib/.generated/model/changeEvent.mjs +3 -2
  36. package/esm2022/lib/.generated/model/classActionEvent.mjs +3 -2
  37. package/esm2022/lib/.generated/model/closeEvent.mjs +3 -2
  38. package/esm2022/lib/.generated/model/commodityCalendarSwapCashFlowEvent.mjs +3 -2
  39. package/esm2022/lib/.generated/model/commodityForwardCashSettlementEvent.mjs +3 -2
  40. package/esm2022/lib/.generated/model/commodityForwardPhysicalSettlementEvent.mjs +3 -2
  41. package/esm2022/lib/.generated/model/complianceRuleBreakdownWithContributions.mjs +2 -0
  42. package/esm2022/lib/.generated/model/complianceRuleContribution.mjs +2 -0
  43. package/esm2022/lib/.generated/model/complianceRuleResultV2WithContributions.mjs +2 -0
  44. package/esm2022/lib/.generated/model/complianceSummaryRuleResultWithContributions.mjs +2 -0
  45. package/esm2022/lib/.generated/model/consentEvent.mjs +3 -2
  46. package/esm2022/lib/.generated/model/contiguousActivityWindow.mjs +2 -0
  47. package/esm2022/lib/.generated/model/contractInitialisationEvent.mjs +3 -2
  48. package/esm2022/lib/.generated/model/conversionEvent.mjs +3 -2
  49. package/esm2022/lib/.generated/model/coreAttributeOptionalityTolerance.mjs +12 -0
  50. package/esm2022/lib/.generated/model/coreDateTolerance.mjs +12 -0
  51. package/esm2022/lib/.generated/model/coreStringCrossTolerance.mjs +12 -0
  52. package/esm2022/lib/.generated/model/createDerivedTransactionPortfolioRequest.mjs +1 -1
  53. package/esm2022/lib/.generated/model/createEntityResolverRequest.mjs +2 -0
  54. package/esm2022/lib/.generated/model/createSimplePositionPortfolioRequest.mjs +1 -1
  55. package/esm2022/lib/.generated/model/createTransactionPortfolioRequest.mjs +1 -1
  56. package/esm2022/lib/.generated/model/createWithholdingTaxDataset.mjs +2 -0
  57. package/esm2022/lib/.generated/model/createWithholdingTaxDatasetDefinitionsRequest.mjs +2 -0
  58. package/esm2022/lib/.generated/model/creditPremiumCashFlowEvent.mjs +3 -2
  59. package/esm2022/lib/.generated/model/decimalComplianceParameter.mjs +1 -1
  60. package/esm2022/lib/.generated/model/delistingEvent.mjs +3 -2
  61. package/esm2022/lib/.generated/model/depositCloseEvent.mjs +3 -2
  62. package/esm2022/lib/.generated/model/depositInterestPaymentEvent.mjs +3 -2
  63. package/esm2022/lib/.generated/model/depositRollEvent.mjs +3 -2
  64. package/esm2022/lib/.generated/model/depositSweepEvent.mjs +3 -2
  65. package/esm2022/lib/.generated/model/dividendOptionEvent.mjs +3 -2
  66. package/esm2022/lib/.generated/model/dividendReinvestmentEvent.mjs +3 -2
  67. package/esm2022/lib/.generated/model/dividendSuspensionEvent.mjs +3 -2
  68. package/esm2022/lib/.generated/model/drawdownEvent.mjs +3 -2
  69. package/esm2022/lib/.generated/model/drawingEvent.mjs +3 -2
  70. package/esm2022/lib/.generated/model/dutchAuctionEvent.mjs +3 -2
  71. package/esm2022/lib/.generated/model/earlyCloseOutEvent.mjs +3 -2
  72. package/esm2022/lib/.generated/model/earlyRedemptionEvent.mjs +3 -2
  73. package/esm2022/lib/.generated/model/entityResolver.mjs +2 -0
  74. package/esm2022/lib/.generated/model/exchangeOfferEvent.mjs +3 -2
  75. package/esm2022/lib/.generated/model/exerciseEvent.mjs +3 -2
  76. package/esm2022/lib/.generated/model/expiryEvent.mjs +3 -2
  77. package/esm2022/lib/.generated/model/flexibleRepoCashFlowEvent.mjs +3 -2
  78. package/esm2022/lib/.generated/model/flexibleRepoCollateralEvent.mjs +3 -2
  79. package/esm2022/lib/.generated/model/flexibleRepoFullClosureEvent.mjs +3 -2
  80. package/esm2022/lib/.generated/model/flexibleRepoInterestPaymentEvent.mjs +3 -2
  81. package/esm2022/lib/.generated/model/flexibleRepoPartialClosureEvent.mjs +3 -2
  82. package/esm2022/lib/.generated/model/fundDistributionEvent.mjs +3 -2
  83. package/esm2022/lib/.generated/model/futureExpiryEvent.mjs +3 -2
  84. package/esm2022/lib/.generated/model/futureMarkToMarketEvent.mjs +3 -2
  85. package/esm2022/lib/.generated/model/fxForwardSettlementEvent.mjs +3 -2
  86. package/esm2022/lib/.generated/model/identifierForResolution.mjs +12 -0
  87. package/esm2022/lib/.generated/model/informationalErrorEvent.mjs +3 -2
  88. package/esm2022/lib/.generated/model/informationalEvent.mjs +3 -2
  89. package/esm2022/lib/.generated/model/instrumentEvent.mjs +3 -2
  90. package/esm2022/lib/.generated/model/instrumentEventType.mjs +3 -2
  91. package/esm2022/lib/.generated/model/interestPaymentEvent.mjs +3 -2
  92. package/esm2022/lib/.generated/model/intermediateSecuritiesDistributionEvent.mjs +3 -2
  93. package/esm2022/lib/.generated/model/liquidationPaymentEvent.mjs +3 -2
  94. package/esm2022/lib/.generated/model/loanFacilityContractRolloverEvent.mjs +3 -2
  95. package/esm2022/lib/.generated/model/loanFacilityDelayedCompensationPaymentEvent.mjs +3 -2
  96. package/esm2022/lib/.generated/model/loanInterestCapitalisationEvent.mjs +3 -2
  97. package/esm2022/lib/.generated/model/loanInterestRepaymentEvent.mjs +3 -2
  98. package/esm2022/lib/.generated/model/loanPrincipalRepaymentEvent.mjs +3 -2
  99. package/esm2022/lib/.generated/model/maturityEvent.mjs +3 -2
  100. package/esm2022/lib/.generated/model/mbsCouponEvent.mjs +3 -2
  101. package/esm2022/lib/.generated/model/mbsInterestDeferralEvent.mjs +3 -2
  102. package/esm2022/lib/.generated/model/mbsInterestShortfallEvent.mjs +3 -2
  103. package/esm2022/lib/.generated/model/mbsPrincipalEvent.mjs +3 -2
  104. package/esm2022/lib/.generated/model/mbsPrincipalWriteOffEvent.mjs +3 -2
  105. package/esm2022/lib/.generated/model/mergerEvent.mjs +3 -2
  106. package/esm2022/lib/.generated/model/models.mjs +35 -2
  107. package/esm2022/lib/.generated/model/navReportEvent.mjs +3 -2
  108. package/esm2022/lib/.generated/model/openEvent.mjs +3 -2
  109. package/esm2022/lib/.generated/model/optionExerciseCashEvent.mjs +3 -2
  110. package/esm2022/lib/.generated/model/optionExercisePhysicalEvent.mjs +3 -2
  111. package/esm2022/lib/.generated/model/order.mjs +1 -1
  112. package/esm2022/lib/.generated/model/orderGraphBlock.mjs +1 -1
  113. package/esm2022/lib/.generated/model/pagedResourceListOfPaymentInstruction.mjs +2 -0
  114. package/esm2022/lib/.generated/model/pagedResourceListOfWithholdingTaxConfiguration.mjs +2 -0
  115. package/esm2022/lib/.generated/model/pagedResourceListOfWithholdingTaxDataset.mjs +2 -0
  116. package/esm2022/lib/.generated/model/pariPassuEvent.mjs +3 -2
  117. package/esm2022/lib/.generated/model/partialDefeasanceEvent.mjs +3 -2
  118. package/esm2022/lib/.generated/model/paymentInKindEvent.mjs +3 -2
  119. package/esm2022/lib/.generated/model/pikBondCashCouponEvent.mjs +3 -2
  120. package/esm2022/lib/.generated/model/pikBondCouponEvent.mjs +3 -2
  121. package/esm2022/lib/.generated/model/pikBondInterestCapitalisationEvent.mjs +3 -2
  122. package/esm2022/lib/.generated/model/pikBondInterestEvent.mjs +3 -2
  123. package/esm2022/lib/.generated/model/pikBondPrincipalEvent.mjs +3 -2
  124. package/esm2022/lib/.generated/model/placement.mjs +1 -1
  125. package/esm2022/lib/.generated/model/placementUpdateRequest.mjs +1 -1
  126. package/esm2022/lib/.generated/model/portfolio.mjs +1 -1
  127. package/esm2022/lib/.generated/model/portfolioWithoutHref.mjs +1 -1
  128. package/esm2022/lib/.generated/model/priorityIssueEvent.mjs +3 -2
  129. package/esm2022/lib/.generated/model/protectionPayoutCashFlowEvent.mjs +3 -2
  130. package/esm2022/lib/.generated/model/putRedemptionEvent.mjs +3 -2
  131. package/esm2022/lib/.generated/model/queryableKeysForMetricsRequest.mjs +2 -0
  132. package/esm2022/lib/.generated/model/queryableKeysForMetricsResponse.mjs +2 -0
  133. package/esm2022/lib/.generated/model/rawVendorEvent.mjs +3 -2
  134. package/esm2022/lib/.generated/model/recActivitySinceEffectiveAt.mjs +12 -0
  135. package/esm2022/lib/.generated/model/recActivityWindow.mjs +1 -11
  136. package/esm2022/lib/.generated/model/recDefByTaxLots.mjs +12 -0
  137. package/esm2022/lib/.generated/model/recDefRuleset.mjs +1 -1
  138. package/esm2022/lib/.generated/model/recLinkedBy.mjs +1 -1
  139. package/esm2022/lib/.generated/model/recResultHoldingImpact.mjs +12 -0
  140. package/esm2022/lib/.generated/model/recResultHoldingItem.mjs +2 -0
  141. package/esm2022/lib/.generated/model/recResultItem.mjs +1 -11
  142. package/esm2022/lib/.generated/model/recResultLinkKey.mjs +12 -0
  143. package/esm2022/lib/.generated/model/recResultSettlementActivityItem.mjs +2 -0
  144. package/esm2022/lib/.generated/model/recResultTransactionItem.mjs +2 -0
  145. package/esm2022/lib/.generated/model/repoCashFlowEvent.mjs +3 -2
  146. package/esm2022/lib/.generated/model/repoPartialClosureEvent.mjs +3 -2
  147. package/esm2022/lib/.generated/model/repurchaseOfferEvent.mjs +3 -2
  148. package/esm2022/lib/.generated/model/resetEvent.mjs +3 -2
  149. package/esm2022/lib/.generated/model/reverseStockSplitEvent.mjs +3 -2
  150. package/esm2022/lib/.generated/model/scripDividendEvent.mjs +3 -2
  151. package/esm2022/lib/.generated/model/securityWriteOffEvent.mjs +3 -2
  152. package/esm2022/lib/.generated/model/seriesIdentifierField.mjs +2 -0
  153. package/esm2022/lib/.generated/model/spinOffEvent.mjs +3 -2
  154. package/esm2022/lib/.generated/model/stockDividendEvent.mjs +3 -2
  155. package/esm2022/lib/.generated/model/stockSplitEvent.mjs +3 -2
  156. package/esm2022/lib/.generated/model/swapCashFlowEvent.mjs +3 -2
  157. package/esm2022/lib/.generated/model/swapPrincipalEvent.mjs +3 -2
  158. package/esm2022/lib/.generated/model/tenderEvent.mjs +3 -2
  159. package/esm2022/lib/.generated/model/termDepositInterestEvent.mjs +3 -2
  160. package/esm2022/lib/.generated/model/termDepositPrincipalEvent.mjs +3 -2
  161. package/esm2022/lib/.generated/model/terminationEvent.mjs +3 -2
  162. package/esm2022/lib/.generated/model/toleranceBase.mjs +1 -11
  163. package/esm2022/lib/.generated/model/totalReturnSwapCashFlowEvent.mjs +118 -0
  164. package/esm2022/lib/.generated/model/tradingConventions.mjs +1 -1
  165. package/esm2022/lib/.generated/model/transactionTemplateSpecification.mjs +1 -1
  166. package/esm2022/lib/.generated/model/transitionEvent.mjs +3 -2
  167. package/esm2022/lib/.generated/model/triggerEvent.mjs +3 -2
  168. package/esm2022/lib/.generated/model/updateDepositAmountEvent.mjs +3 -2
  169. package/esm2022/lib/.generated/model/upsertEntityResolverRequest.mjs +2 -0
  170. package/esm2022/lib/.generated/model/upsertWithholdingTaxConfigurationRequest.mjs +2 -0
  171. package/esm2022/lib/.generated/model/warrantsExerciseEvent.mjs +3 -2
  172. package/esm2022/lib/.generated/model/withholdingTaxConfiguration.mjs +2 -0
  173. package/esm2022/lib/.generated/model/withholdingTaxDataset.mjs +2 -0
  174. package/esm2022/lib/.generated/model/withholdingTaxDatasetDefinitions.mjs +2 -0
  175. package/esm2022/lib/.generated/model/withholdingTaxValueSource.mjs +12 -0
  176. package/esm2022/lib/.generated/model/worthlessEvent.mjs +3 -2
  177. package/fesm2022/finbourne-lusid-sdk-angular18.mjs +2474 -901
  178. package/fesm2022/finbourne-lusid-sdk-angular18.mjs.map +2 -2
  179. package/lib/.generated/api/aggregation.service.d.ts +28 -0
  180. package/lib/.generated/api/api.d.ts +5 -1
  181. package/lib/.generated/api/compliance.service.d.ts +33 -0
  182. package/lib/.generated/api/entityResolvers.service.d.ts +134 -0
  183. package/lib/.generated/api/funds.service.d.ts +3 -9
  184. package/lib/.generated/api/instrumentEventTypes.service.d.ts +5 -5
  185. package/lib/.generated/api/paymentInstructions.service.d.ts +39 -0
  186. package/lib/.generated/api/recs.service.d.ts +2 -2
  187. package/lib/.generated/api/withholdingTax.service.d.ts +295 -0
  188. package/lib/.generated/model/accumulationEvent.d.ts +3 -2
  189. package/lib/.generated/model/adjustGlobalCommitmentEvent.d.ts +3 -2
  190. package/lib/.generated/model/aggregateNumericTolerance.d.ts +40 -0
  191. package/lib/.generated/model/allocation.d.ts +4 -0
  192. package/lib/.generated/model/amendCommitmentEvent.d.ts +3 -2
  193. package/lib/.generated/model/amortisationEvent.d.ts +3 -2
  194. package/lib/.generated/model/bankruptcyEvent.d.ts +18 -3
  195. package/lib/.generated/model/bondCouponEvent.d.ts +3 -2
  196. package/lib/.generated/model/bondDefaultEvent.d.ts +3 -2
  197. package/lib/.generated/model/bondForwardCashSettlementEvent.d.ts +3 -2
  198. package/lib/.generated/model/bondForwardTerminationEvent.d.ts +3 -2
  199. package/lib/.generated/model/bondOptionTerminationEvent.d.ts +3 -2
  200. package/lib/.generated/model/bondPrincipalEvent.d.ts +3 -2
  201. package/lib/.generated/model/bonusIssueEvent.d.ts +3 -2
  202. package/lib/.generated/model/bucketSetNode.d.ts +12 -0
  203. package/lib/.generated/model/callOnIntermediateSecuritiesEvent.d.ts +3 -2
  204. package/lib/.generated/model/cancelSwapEvent.d.ts +3 -2
  205. package/lib/.generated/model/capitalCallEvent.d.ts +3 -2
  206. package/lib/.generated/model/capitalDistributionEvent.d.ts +3 -2
  207. package/lib/.generated/model/capitalGainsDistributionEvent.d.ts +3 -2
  208. package/lib/.generated/model/capletFloorletCashFlowEvent.d.ts +3 -2
  209. package/lib/.generated/model/cashDividendEvent.d.ts +3 -2
  210. package/lib/.generated/model/cashFlowEvent.d.ts +3 -2
  211. package/lib/.generated/model/cdsCreditEvent.d.ts +3 -2
  212. package/lib/.generated/model/cdxCreditEvent.d.ts +3 -2
  213. package/lib/.generated/model/changeEvent.d.ts +3 -2
  214. package/lib/.generated/model/classActionEvent.d.ts +3 -2
  215. package/lib/.generated/model/closeEvent.d.ts +3 -2
  216. package/lib/.generated/model/commodityCalendarSwapCashFlowEvent.d.ts +3 -2
  217. package/lib/.generated/model/commodityForwardCashSettlementEvent.d.ts +3 -2
  218. package/lib/.generated/model/commodityForwardPhysicalSettlementEvent.d.ts +3 -2
  219. package/lib/.generated/model/complianceRuleBreakdownWithContributions.d.ts +40 -0
  220. package/lib/.generated/model/complianceRuleContribution.d.ts +54 -0
  221. package/lib/.generated/model/complianceRuleResultV2WithContributions.d.ts +22 -0
  222. package/lib/.generated/model/complianceSummaryRuleResultWithContributions.d.ts +29 -0
  223. package/lib/.generated/model/consentEvent.d.ts +3 -2
  224. package/lib/.generated/model/contiguousActivityWindow.d.ts +21 -0
  225. package/lib/.generated/model/contractInitialisationEvent.d.ts +3 -2
  226. package/lib/.generated/model/conversionEvent.d.ts +3 -2
  227. package/lib/.generated/model/coreAttributeOptionalityTolerance.d.ts +24 -0
  228. package/lib/.generated/model/coreDateTolerance.d.ts +32 -0
  229. package/lib/.generated/model/coreStringCrossTolerance.d.ts +32 -0
  230. package/lib/.generated/model/createDerivedTransactionPortfolioRequest.d.ts +1 -1
  231. package/lib/.generated/model/createEntityResolverRequest.d.ts +27 -0
  232. package/lib/.generated/model/createSimplePositionPortfolioRequest.d.ts +1 -1
  233. package/lib/.generated/model/createTransactionPortfolioRequest.d.ts +1 -1
  234. package/lib/.generated/model/createWithholdingTaxDataset.d.ts +25 -0
  235. package/lib/.generated/model/createWithholdingTaxDatasetDefinitionsRequest.d.ts +15 -0
  236. package/lib/.generated/model/creditPremiumCashFlowEvent.d.ts +3 -2
  237. package/lib/.generated/model/decimalComplianceParameter.d.ts +4 -0
  238. package/lib/.generated/model/delistingEvent.d.ts +3 -2
  239. package/lib/.generated/model/depositCloseEvent.d.ts +3 -2
  240. package/lib/.generated/model/depositInterestPaymentEvent.d.ts +3 -2
  241. package/lib/.generated/model/depositRollEvent.d.ts +3 -2
  242. package/lib/.generated/model/depositSweepEvent.d.ts +3 -2
  243. package/lib/.generated/model/dividendOptionEvent.d.ts +3 -2
  244. package/lib/.generated/model/dividendReinvestmentEvent.d.ts +3 -2
  245. package/lib/.generated/model/dividendSuspensionEvent.d.ts +3 -2
  246. package/lib/.generated/model/drawdownEvent.d.ts +3 -2
  247. package/lib/.generated/model/drawingEvent.d.ts +3 -2
  248. package/lib/.generated/model/dutchAuctionEvent.d.ts +3 -2
  249. package/lib/.generated/model/earlyCloseOutEvent.d.ts +3 -2
  250. package/lib/.generated/model/earlyRedemptionEvent.d.ts +3 -2
  251. package/lib/.generated/model/entityResolver.d.ts +35 -0
  252. package/lib/.generated/model/exchangeOfferEvent.d.ts +22 -6
  253. package/lib/.generated/model/exerciseEvent.d.ts +3 -2
  254. package/lib/.generated/model/expiryEvent.d.ts +3 -2
  255. package/lib/.generated/model/flexibleRepoCashFlowEvent.d.ts +3 -2
  256. package/lib/.generated/model/flexibleRepoCollateralEvent.d.ts +3 -2
  257. package/lib/.generated/model/flexibleRepoFullClosureEvent.d.ts +3 -2
  258. package/lib/.generated/model/flexibleRepoInterestPaymentEvent.d.ts +3 -2
  259. package/lib/.generated/model/flexibleRepoPartialClosureEvent.d.ts +3 -2
  260. package/lib/.generated/model/fundDistributionEvent.d.ts +3 -2
  261. package/lib/.generated/model/futureExpiryEvent.d.ts +3 -2
  262. package/lib/.generated/model/futureMarkToMarketEvent.d.ts +3 -2
  263. package/lib/.generated/model/fxForwardSettlementEvent.d.ts +3 -2
  264. package/lib/.generated/model/{recLinkKey.d.ts → identifierForResolution.d.ts} +3 -10
  265. package/lib/.generated/model/informationalErrorEvent.d.ts +3 -2
  266. package/lib/.generated/model/informationalEvent.d.ts +3 -2
  267. package/lib/.generated/model/instrumentEvent.d.ts +3 -2
  268. package/lib/.generated/model/instrumentEventType.d.ts +2 -1
  269. package/lib/.generated/model/interestPaymentEvent.d.ts +3 -2
  270. package/lib/.generated/model/intermediateSecuritiesDistributionEvent.d.ts +3 -2
  271. package/lib/.generated/model/liquidationPaymentEvent.d.ts +3 -2
  272. package/lib/.generated/model/loanFacilityContractRolloverEvent.d.ts +3 -2
  273. package/lib/.generated/model/loanFacilityDelayedCompensationPaymentEvent.d.ts +3 -2
  274. package/lib/.generated/model/loanInterestCapitalisationEvent.d.ts +3 -2
  275. package/lib/.generated/model/loanInterestRepaymentEvent.d.ts +3 -2
  276. package/lib/.generated/model/loanPrincipalRepaymentEvent.d.ts +3 -2
  277. package/lib/.generated/model/maturityEvent.d.ts +3 -2
  278. package/lib/.generated/model/mbsCouponEvent.d.ts +3 -2
  279. package/lib/.generated/model/mbsInterestDeferralEvent.d.ts +3 -2
  280. package/lib/.generated/model/mbsInterestShortfallEvent.d.ts +3 -2
  281. package/lib/.generated/model/mbsPrincipalEvent.d.ts +3 -2
  282. package/lib/.generated/model/mbsPrincipalWriteOffEvent.d.ts +3 -2
  283. package/lib/.generated/model/mergerEvent.d.ts +3 -2
  284. package/lib/.generated/model/models.d.ts +34 -1
  285. package/lib/.generated/model/navReportEvent.d.ts +3 -2
  286. package/lib/.generated/model/openEvent.d.ts +3 -2
  287. package/lib/.generated/model/optionExerciseCashEvent.d.ts +3 -2
  288. package/lib/.generated/model/optionExercisePhysicalEvent.d.ts +3 -2
  289. package/lib/.generated/model/order.d.ts +4 -0
  290. package/lib/.generated/model/orderGraphBlock.d.ts +4 -0
  291. package/lib/.generated/model/pagedResourceListOfPaymentInstruction.d.ts +19 -0
  292. package/lib/.generated/model/pagedResourceListOfWithholdingTaxConfiguration.d.ts +19 -0
  293. package/lib/.generated/model/pagedResourceListOfWithholdingTaxDataset.d.ts +19 -0
  294. package/lib/.generated/model/pariPassuEvent.d.ts +3 -2
  295. package/lib/.generated/model/partialDefeasanceEvent.d.ts +3 -2
  296. package/lib/.generated/model/paymentInKindEvent.d.ts +3 -2
  297. package/lib/.generated/model/pikBondCashCouponEvent.d.ts +3 -2
  298. package/lib/.generated/model/pikBondCouponEvent.d.ts +3 -2
  299. package/lib/.generated/model/pikBondInterestCapitalisationEvent.d.ts +3 -2
  300. package/lib/.generated/model/pikBondInterestEvent.d.ts +3 -2
  301. package/lib/.generated/model/pikBondPrincipalEvent.d.ts +3 -2
  302. package/lib/.generated/model/placement.d.ts +4 -0
  303. package/lib/.generated/model/placementUpdateRequest.d.ts +8 -4
  304. package/lib/.generated/model/portfolio.d.ts +1 -1
  305. package/lib/.generated/model/portfolioWithoutHref.d.ts +1 -1
  306. package/lib/.generated/model/priorityIssueEvent.d.ts +3 -2
  307. package/lib/.generated/model/protectionPayoutCashFlowEvent.d.ts +3 -2
  308. package/lib/.generated/model/putRedemptionEvent.d.ts +3 -2
  309. package/lib/.generated/model/queryableKeysForMetricsRequest.d.ts +29 -0
  310. package/lib/.generated/model/queryableKeysForMetricsResponse.d.ts +28 -0
  311. package/lib/.generated/model/rawVendorEvent.d.ts +3 -2
  312. package/lib/.generated/model/recActivitySinceEffectiveAt.d.ts +23 -0
  313. package/lib/.generated/model/recActivityWindow.d.ts +5 -14
  314. package/lib/.generated/model/recDefByTaxLots.d.ts +23 -0
  315. package/lib/.generated/model/recDefRuleset.d.ts +2 -0
  316. package/lib/.generated/model/recLinkedBy.d.ts +6 -6
  317. package/lib/.generated/model/recResultHoldingImpact.d.ts +23 -0
  318. package/lib/.generated/model/recResultHoldingItem.d.ts +35 -0
  319. package/lib/.generated/model/recResultItem.d.ts +10 -13
  320. package/lib/.generated/model/recResultLinkKey.d.ts +27 -0
  321. package/lib/.generated/model/recResultSettlementActivityItem.d.ts +44 -0
  322. package/lib/.generated/model/recResultTransactionItem.d.ts +36 -0
  323. package/lib/.generated/model/repoCashFlowEvent.d.ts +3 -2
  324. package/lib/.generated/model/repoPartialClosureEvent.d.ts +3 -2
  325. package/lib/.generated/model/repurchaseOfferEvent.d.ts +11 -10
  326. package/lib/.generated/model/resetEvent.d.ts +3 -2
  327. package/lib/.generated/model/reverseStockSplitEvent.d.ts +3 -2
  328. package/lib/.generated/model/scripDividendEvent.d.ts +3 -2
  329. package/lib/.generated/model/securityWriteOffEvent.d.ts +3 -2
  330. package/lib/.generated/model/seriesIdentifierField.d.ts +29 -0
  331. package/lib/.generated/model/spinOffEvent.d.ts +3 -2
  332. package/lib/.generated/model/stockDividendEvent.d.ts +3 -2
  333. package/lib/.generated/model/stockSplitEvent.d.ts +3 -2
  334. package/lib/.generated/model/swapCashFlowEvent.d.ts +3 -2
  335. package/lib/.generated/model/swapPrincipalEvent.d.ts +3 -2
  336. package/lib/.generated/model/tenderEvent.d.ts +3 -2
  337. package/lib/.generated/model/termDepositInterestEvent.d.ts +3 -2
  338. package/lib/.generated/model/termDepositPrincipalEvent.d.ts +3 -2
  339. package/lib/.generated/model/terminationEvent.d.ts +4 -3
  340. package/lib/.generated/model/toleranceBase.d.ts +10 -10
  341. package/lib/.generated/model/totalReturnSwapCashFlowEvent.d.ts +169 -0
  342. package/lib/.generated/model/tradingConventions.d.ts +4 -0
  343. package/lib/.generated/model/transactionTemplateSpecification.d.ts +1 -1
  344. package/lib/.generated/model/transitionEvent.d.ts +3 -2
  345. package/lib/.generated/model/triggerEvent.d.ts +3 -2
  346. package/lib/.generated/model/updateDepositAmountEvent.d.ts +3 -2
  347. package/lib/.generated/model/upsertEntityResolverRequest.d.ts +25 -0
  348. package/lib/.generated/model/upsertWithholdingTaxConfigurationRequest.d.ts +24 -0
  349. package/lib/.generated/model/warrantsExerciseEvent.d.ts +3 -2
  350. package/lib/.generated/model/withholdingTaxConfiguration.d.ts +33 -0
  351. package/lib/.generated/model/withholdingTaxDataset.d.ts +33 -0
  352. package/lib/.generated/model/withholdingTaxDatasetDefinitions.d.ts +15 -0
  353. package/lib/.generated/model/withholdingTaxValueSource.d.ts +20 -0
  354. package/lib/.generated/model/worthlessEvent.d.ts +3 -2
  355. package/package.json +1 -1
  356. package/esm2022/lib/.generated/model/recLinkKey.mjs +0 -12
@@ -111,7 +111,8 @@ export var CapitalDistributionEvent;
111
111
  FundDistributionEvent: 'FundDistributionEvent',
112
112
  NavReportEvent: 'NavReportEvent',
113
113
  DividendSuspensionEvent: 'DividendSuspensionEvent',
114
- LoanInterestCapitalisationEvent: 'LoanInterestCapitalisationEvent'
114
+ LoanInterestCapitalisationEvent: 'LoanInterestCapitalisationEvent',
115
+ TotalReturnSwapCashFlowEvent: 'TotalReturnSwapCashFlowEvent'
115
116
  };
116
117
  })(CapitalDistributionEvent || (CapitalDistributionEvent = {}));
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FwaXRhbERpc3RyaWJ1dGlvbkV2ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmluYm91cm5lL2x1c2lkLXNkay1hbmd1bGFyMTgvc3JjL2xpYi8uZ2VuZXJhdGVkL21vZGVsL2NhcGl0YWxEaXN0cmlidXRpb25FdmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyQ0EsTUFBTSxLQUFXLHdCQUF3QixDQW1IeEM7QUFuSEQsV0FBaUIsd0JBQXdCO0lBRXhCLGdEQUF1QixHQUFHO1FBQ25DLGVBQWUsRUFBRSxpQkFBNEM7UUFDN0Qsa0JBQWtCLEVBQUUsb0JBQStDO1FBQ25FLFNBQVMsRUFBRSxXQUFzQztRQUNqRCxVQUFVLEVBQUUsWUFBdUM7UUFDbkQsZUFBZSxFQUFFLGlCQUE0QztRQUM3RCxnQkFBZ0IsRUFBRSxrQkFBNkM7UUFDL0QsaUJBQWlCLEVBQUUsbUJBQThDO1FBQ2pFLGlCQUFpQixFQUFFLG1CQUE4QztRQUNqRSxhQUFhLEVBQUUsZUFBMEM7UUFDekQsYUFBYSxFQUFFLGVBQTBDO1FBQ3pELFVBQVUsRUFBRSxZQUF1QztRQUNuRCxZQUFZLEVBQUUsY0FBeUM7UUFDdkQsY0FBYyxFQUFFLGdCQUEyQztRQUMzRCx1QkFBdUIsRUFBRSx5QkFBb0Q7UUFDN0UsZUFBZSxFQUFFLGlCQUE0QztRQUM3RCx5QkFBeUIsRUFBRSwyQkFBc0Q7UUFDakYsaUJBQWlCLEVBQUUsbUJBQThDO1FBQ2pFLGtCQUFrQixFQUFFLG9CQUErQztRQUNuRSxtQkFBbUIsRUFBRSxxQkFBZ0Q7UUFDckUsYUFBYSxFQUFFLGVBQTBDO1FBQ3pELHdCQUF3QixFQUFFLDBCQUFxRDtRQUMvRSxXQUFXLEVBQUUsYUFBd0M7UUFDckQsa0JBQWtCLEVBQUUsb0JBQStDO1FBQ25FLGtCQUFrQixFQUFFLG9CQUErQztRQUNuRSxzQkFBc0IsRUFBRSx3QkFBbUQ7UUFDM0Usd0JBQXdCLEVBQUUsMEJBQXFEO1FBQy9FLFlBQVksRUFBRSxjQUF5QztRQUN2RCxXQUFXLEVBQUUsYUFBd0M7UUFDckQsaUJBQWlCLEVBQUUsbUJBQThDO1FBQ2pFLGlCQUFpQixFQUFFLG1CQUE4QztRQUNqRSxrQkFBa0IsRUFBRSxvQkFBK0M7UUFDbkUsMEJBQTBCLEVBQUUsNEJBQXVEO1FBQ25GLGNBQWMsRUFBRSxnQkFBMkM7UUFDM0QsY0FBYyxFQUFFLGdCQUEyQztRQUMzRCxjQUFjLEVBQUUsZ0JBQTJDO1FBQzNELGlCQUFpQixFQUFFLG1CQUE4QztRQUNqRSxlQUFlLEVBQUUsaUJBQTRDO1FBQzdELHlCQUF5QixFQUFFLDJCQUFzRDtRQUNqRix3QkFBd0IsRUFBRSwwQkFBcUQ7UUFDL0UseUJBQXlCLEVBQUUsMkJBQXNEO1FBQ2pGLFdBQVcsRUFBRSxhQUF3QztRQUNyRCxpQ0FBaUMsRUFBRSxtQ0FBOEQ7UUFDakcsdUNBQXVDLEVBQUUseUNBQW9FO1FBQzdHLDJCQUEyQixFQUFFLDZCQUF3RDtRQUNyRix1QkFBdUIsRUFBRSx5QkFBb0Q7UUFDN0UsNkJBQTZCLEVBQUUsK0JBQTBEO1FBQ3pGLHdCQUF3QixFQUFFLDBCQUFxRDtRQUMvRSx5QkFBeUIsRUFBRSwyQkFBc0Q7UUFDakYsb0JBQW9CLEVBQUUsc0JBQWlEO1FBQ3ZFLHVCQUF1QixFQUFFLHlCQUFvRDtRQUM3RSwyQkFBMkIsRUFBRSw2QkFBd0Q7UUFDckYsMkJBQTJCLEVBQUUsNkJBQXdEO1FBQ3JGLGFBQWEsRUFBRSxlQUEwQztRQUN6RCwwQkFBMEIsRUFBRSw0QkFBdUQ7UUFDbkYsd0JBQXdCLEVBQUUsMEJBQXFEO1FBQy9FLDJCQUEyQixFQUFFLDZCQUF3RDtRQUNyRiwyQkFBMkIsRUFBRSw2QkFBd0Q7UUFDckYsaUJBQWlCLEVBQUUsbUJBQThDO1FBQ2pFLGlDQUFpQyxFQUFFLG1DQUE4RDtRQUNqRyxvQkFBb0IsRUFBRSxzQkFBaUQ7UUFDdkUsdUJBQXVCLEVBQUUseUJBQW9EO1FBQzdFLGlCQUFpQixFQUFFLG1CQUE4QztRQUNqRSxnQ0FBZ0MsRUFBRSxrQ0FBNkQ7UUFDL0YseUJBQXlCLEVBQUUsMkJBQXNEO1FBQ2pGLDJCQUEyQixFQUFFLDZCQUF3RDtRQUNyRixlQUFlLEVBQUUsaUJBQTRDO1FBQzdELCtCQUErQixFQUFFLGlDQUE0RDtRQUM3Riw0QkFBNEIsRUFBRSw4QkFBeUQ7UUFDdkYsMkJBQTJCLEVBQUUsNkJBQXdEO1FBQ3JGLGtCQUFrQixFQUFFLG9CQUErQztRQUNuRSxnQkFBZ0IsRUFBRSxrQkFBNkM7UUFDL0QsWUFBWSxFQUFFLGNBQXlDO1FBQ3ZELFlBQVksRUFBRSxjQUF5QztRQUN2RCw2QkFBNkIsRUFBRSwrQkFBMEQ7UUFDekYsa0JBQWtCLEVBQUUsb0JBQStDO1FBQ25FLGlCQUFpQixFQUFFLG1CQUE4QztRQUNqRSxjQUFjLEVBQUUsZ0JBQTJDO1FBQzNELGtCQUFrQixFQUFFLG9CQUErQztRQUNuRSwyQ0FBMkMsRUFBRSw2Q0FBd0U7UUFDckgsb0JBQW9CLEVBQUUsc0JBQWlEO1FBQ3ZFLGtCQUFrQixFQUFFLG9CQUErQztRQUNuRSxnQkFBZ0IsRUFBRSxrQkFBNkM7UUFDL0QsZUFBZSxFQUFFLGlCQUE0QztRQUM3RCx1QkFBdUIsRUFBRSx5QkFBb0Q7UUFDN0Usc0JBQXNCLEVBQUUsd0JBQW1EO1FBQzNFLHFCQUFxQixFQUFFLHVCQUFrRDtRQUN6RSxxQkFBcUIsRUFBRSx1QkFBa0Q7UUFDekUsY0FBYyxFQUFFLGdCQUEyQztRQUMzRCxXQUFXLEVBQUUsYUFBd0M7UUFDckQsa0JBQWtCLEVBQUUsb0JBQStDO1FBQ25FLHNCQUFzQixFQUFFLHdCQUFtRDtRQUMzRSxrQ0FBa0MsRUFBRSxvQ0FBK0Q7UUFDbkcscUJBQXFCLEVBQUUsdUJBQWtEO1FBQ3pFLGNBQWMsRUFBRSxnQkFBMkM7UUFDM0Qsb0JBQW9CLEVBQUUsc0JBQWlEO1FBQ3ZFLG1DQUFtQyxFQUFFLHFDQUFnRTtRQUNyRyxrQkFBa0IsRUFBRSxvQkFBK0M7UUFDbkUsdUNBQXVDLEVBQUUseUNBQW9FO1FBQzdHLGVBQWUsRUFBRSxpQkFBNEM7UUFDN0QsMEJBQTBCLEVBQUUsNEJBQXVEO1FBQ25GLGdCQUFnQixFQUFFLGtCQUE2QztRQUMvRCxrQ0FBa0MsRUFBRSxvQ0FBK0Q7UUFDbkcsaUJBQWlCLEVBQUUsbUJBQThDO1FBQ2pFLDhCQUE4QixFQUFFLGdDQUEyRDtRQUMzRiwyQkFBMkIsRUFBRSw2QkFBd0Q7UUFDckYsb0JBQW9CLEVBQUUsc0JBQWlEO1FBQ3ZFLGdCQUFnQixFQUFFLGtCQUE2QztRQUMvRCxxQkFBcUIsRUFBRSx1QkFBa0Q7UUFDekUsY0FBYyxFQUFFLGdCQUEyQztRQUMzRCx1QkFBdUIsRUFBRSx5QkFBb0Q7UUFDN0UsK0JBQStCLEVBQUUsaUNBQTREO0tBQ2hHLENBQUM7QUFDTixDQUFDLEVBbkhnQix3QkFBd0IsS0FBeEIsd0JBQXdCLFFBbUh4QyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogTFVTSUQgQVBJXG4gKiAjIEludHJvZHVjdGlvbiAgVGhpcyBwYWdlIGRvY3VtZW50cyB0aGUgW0xVU0lEIEFQSXNdKC4uLy4uLy4uL2FwaS9zd2FnZ2VyKSwgd2hpY2ggYWxsb3dzIGF1dGhvcmlzZWQgY2xpZW50cyB0byBxdWVyeSBhbmQgdXBkYXRlIHRoZWlyIGRhdGEgd2l0aGluIHRoZSBMVVNJRCBwbGF0Zm9ybS4gIFNES3MgdG8gaW50ZXJhY3Qgd2l0aCB0aGUgTFVTSUQgQVBJcyBhcmUgYXZhaWxhYmxlIGluIHRoZSBmb2xsb3dpbmcgbGFuZ3VhZ2VzIGFuZCBmcmFtZXdvcmtzOiAgKiBbQyNdKGh0dHBzOi8vZ2l0aHViLmNvbS9maW5ib3VybmUvbHVzaWQtc2RrLWNzaGFycCkgKiBbSmF2YV0oaHR0cHM6Ly9naXRodWIuY29tL2ZpbmJvdXJuZS9sdXNpZC1zZGstamF2YSkgKiBbSmF2YVNjcmlwdF0oaHR0cHM6Ly9naXRodWIuY29tL2ZpbmJvdXJuZS9sdXNpZC1zZGstanMpICogW1B5dGhvbl0oaHR0cHM6Ly9naXRodWIuY29tL2ZpbmJvdXJuZS9sdXNpZC1zZGstcHl0aG9uKSAqIFtBbmd1bGFyXShodHRwczovL2dpdGh1Yi5jb20vZmluYm91cm5lL2x1c2lkLXNkay1hbmd1bGFyKSAgVGhlIExVU0lEIHBsYXRmb3JtIGlzIG1hZGUgdXAgb2YgYSBudW1iZXIgb2Ygc3ViLWFwcGxpY2F0aW9ucy4gWW91IGNhbiBmaW5kIHRoZSBBUEkgLyBzd2FnZ2VyIGRvY3VtZW50YXRpb24gYnkgZm9sbG93aW5nIHRoZSBsaW5rcyBpbiB0aGUgdGFibGUgYmVsb3cuICAgfCBBcHBsaWNhdGlvbiAgIHwgRGVzY3JpcHRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgQVBJIC8gU3dhZ2dlciBEb2N1bWVudGF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICB8IHwtLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tfCB8IExVU0lEICAgICAgICAgfCBPcGVuLCBBUEktZmlyc3QsIGRldmVsb3Blci1mcmllbmRseSBpbnZlc3RtZW50IGRhdGEgcGxhdGZvcm0uICAgICAgICAgICAgICAgICAgICAgfCBbU3dhZ2dlcl0oLi4vLi4vLi4vYXBpL3N3YWdnZXIvaW5kZXguaHRtbCkgICAgICAgICAgIHwgfCBXZWIgYXBwICAgICAgIHwgVXNlci1mYWNpbmcgZnJvbnQgZW5kIGZvciBMVVNJRC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW1N3YWdnZXJdKC4uLy4uLy4uL2FwcC9zd2FnZ2VyL2luZGV4Lmh0bWwpICAgICAgICAgICB8IHwgU2NoZWR1bGVyICAgICB8IEF1dG9tYXRlZCBqb2Igc2NoZWR1bGVyLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFtTd2FnZ2VyXSguLi8uLi8uLi9zY2hlZHVsZXIyL3N3YWdnZXIvaW5kZXguaHRtbCkgICAgfCB8IEluc2lnaHRzICAgICAgfCBNb25pdG9yaW5nIGFuZCB0cm91Ymxlc2hvb3Rpbmcgc2VydmljZS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbU3dhZ2dlcl0oLi4vLi4vLi4vaW5zaWdodHMvc3dhZ2dlci9pbmRleC5odG1sKSAgICAgIHwgfCBJZGVudGl0eSAgICAgIHwgSWRlbnRpdHkgbWFuYWdlbWVudCBmb3IgTFVTSUQgKGluIGNvbmp1bmN0aW9uIHdpdGggQWNjZXNzKSAgICAgICAgICAgICAgICAgICAgICAgIHwgW1N3YWdnZXJdKC4uLy4uLy4uL2lkZW50aXR5L3N3YWdnZXIvaW5kZXguaHRtbCkgICAgICB8IHwgQWNjZXNzICAgICAgICB8IEFjY2VzcyBjb250cm9sIGZvciBMVVNJRCAoaW4gY29uanVuY3Rpb24gd2l0aCBJZGVudGl0eSkgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFtTd2FnZ2VyXSguLi8uLi8uLi9hY2Nlc3Mvc3dhZ2dlci9pbmRleC5odG1sKSAgICAgICAgfCB8IERyaXZlICAgICAgICAgfCBTZWN1cmUgZmlsZSByZXBvc2l0b3J5IGFuZCBtYW5hZ2VyIGZvciBjb2xsYWJvcmF0aW9uLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbU3dhZ2dlcl0oLi4vLi4vLi4vZHJpdmUvc3dhZ2dlci9pbmRleC5odG1sKSAgICAgICAgIHwgfCBMdW1pbmVzY2UgICAgIHwgRGF0YSB2aXJ0dWFsaXNhdGlvbiBzZXJ2aWNlIChxdWVyeSBkYXRhIGZyb20gbXVsdGlwbGUgcHJvdmlkZXJzLCBpbmNsdWRpbmcgTFVTSUQpIHwgW1N3YWdnZXJdKC4uLy4uLy4uL2hvbmV5Y29tYi9zd2FnZ2VyL2luZGV4Lmh0bWwpICAgICB8IHwgTm90aWZpY2F0aW9uICB8IE5vdGlmaWNhdGlvbiBzZXJ2aWNlLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFtTd2FnZ2VyXSguLi8uLi8uLi9ub3RpZmljYXRpb24vc3dhZ2dlci9pbmRleC5odG1sKSAgfCB8IENvbmZpZ3VyYXRpb24gfCBGaWxlIHN0b3JlIGZvciBzZWNyZXRzIGFuZCBvdGhlciBzZW5zaXRpdmUgaW5mb3JtYXRpb24uICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbU3dhZ2dlcl0oLi4vLi4vLi4vY29uZmlndXJhdGlvbi9zd2FnZ2VyL2luZGV4Lmh0bWwpIHwgfCBXb3JrZmxvdyAgICAgIHwgV29ya2Zsb3cgc2VydmljZS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW1N3YWdnZXJdKC4uLy4uLy4uL3dvcmtmbG93L3N3YWdnZXIvaW5kZXguaHRtbCkgICAgICB8ICAgIyBFcnJvciBDb2RlcyAgfCBDb2RlfE5hbWV8RGVzY3JpcHRpb24gfCB8IC0tLXwtLS18LS0tIHwgfCA8YSBuYW1lPVxcXCItMTBcXFwiPi0xMDwvYT58U2VydmVyIENvbmZpZ3VyYXRpb24gRXJyb3J8ICB8IHwgPGEgbmFtZT1cXFwiLTFcXFwiPi0xPC9hPnxVbmtub3duIGVycm9yfEFuIHVuZXhwZWN0ZWQgZXJyb3Igd2FzIGVuY291bnRlcmVkIG9uIG91ciBzaWRlLiB8IHwgPGEgbmFtZT1cXFwiMTAyXFxcIj4xMDI8L2E+fFZlcnNpb24gTm90IEZvdW5kfCAgfCB8IDxhIG5hbWU9XFxcIjEwM1xcXCI+MTAzPC9hPnxBcGkgUmF0ZSBMaW1pdCBWaW9sYXRpb258ICB8IHwgPGEgbmFtZT1cXFwiMTA0XFxcIj4xMDQ8L2E+fEluc3RydW1lbnQgTm90IEZvdW5kfCAgfCB8IDxhIG5hbWU9XFxcIjEwNVxcXCI+MTA1PC9hPnxQcm9wZXJ0eSBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiMTA2XFxcIj4xMDY8L2E+fFBvcnRmb2xpbyBSZWN1cnNpb24gRGVwdGh8ICB8IHwgPGEgbmFtZT1cXFwiMTA4XFxcIj4xMDg8L2E+fEdyb3VwIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCIxMDlcXFwiPjEwOTwvYT58UG9ydGZvbGlvIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCIxMTBcXFwiPjExMDwvYT58UHJvcGVydHkgU2NoZW1hIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCIxMTFcXFwiPjExMTwvYT58UG9ydGZvbGlvIEFuY2VzdHJ5IE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCIxMTJcXFwiPjExMjwvYT58UG9ydGZvbGlvIFdpdGggSWQgQWxyZWFkeSBFeGlzdHN8ICB8IHwgPGEgbmFtZT1cXFwiMTEzXFxcIj4xMTM8L2E+fE9ycGhhbmVkIFBvcnRmb2xpb3wgIHwgfCA8YSBuYW1lPVxcXCIxMTlcXFwiPjExOTwvYT58TWlzc2luZyBCYXNlIENsYWltc3wgIHwgfCA8YSBuYW1lPVxcXCIxMjFcXFwiPjEyMTwvYT58UHJvcGVydHkgTm90IERlZmluZWR8ICB8IHwgPGEgbmFtZT1cXFwiMTIyXFxcIj4xMjI8L2E+fENhbm5vdCBEZWxldGUgU3lzdGVtIFByb3BlcnR5fCAgfCB8IDxhIG5hbWU9XFxcIjEyM1xcXCI+MTIzPC9hPnxDYW5ub3QgTW9kaWZ5IEltbXV0YWJsZSBQcm9wZXJ0eSBGaWVsZHwgIHwgfCA8YSBuYW1lPVxcXCIxMjRcXFwiPjEyNDwvYT58UHJvcGVydHkgQWxyZWFkeSBFeGlzdHN8ICB8IHwgPGEgbmFtZT1cXFwiMTI1XFxcIj4xMjU8L2E+fEludmFsaWQgUHJvcGVydHkgTGlmZSBUaW1lfCAgfCB8IDxhIG5hbWU9XFxcIjEyNlxcXCI+MTI2PC9hPnxQcm9wZXJ0eSBDb25zdHJhaW50IFN0eWxlIEV4Y2x1ZGVzIFByb3BlcnRpZXN8ICB8IHwgPGEgbmFtZT1cXFwiMTI3XFxcIj4xMjc8L2E+fENhbm5vdCBNb2RpZnkgRGVmYXVsdCBEYXRhIFR5cGV8ICB8IHwgPGEgbmFtZT1cXFwiMTI4XFxcIj4xMjg8L2E+fEdyb3VwIEFscmVhZHkgRXhpc3RzfCAgfCB8IDxhIG5hbWU9XFxcIjEyOVxcXCI+MTI5PC9hPnxObyBTdWNoIERhdGEgVHlwZXwgIHwgfCA8YSBuYW1lPVxcXCIxMzBcXFwiPjEzMDwvYT58VW5kZWZpbmVkIFZhbHVlIEZvciBEYXRhIFR5cGV8ICB8IHwgPGEgbmFtZT1cXFwiMTMxXFxcIj4xMzE8L2E+fFVuc3VwcG9ydGVkIFZhbHVlIFR5cGUgRGVmaW5lZCBPbiBEYXRhIFR5cGV8ICB8IHwgPGEgbmFtZT1cXFwiMTMyXFxcIj4xMzI8L2E+fFZhbGlkYXRpb24gRXJyb3J8ICB8IHwgPGEgbmFtZT1cXFwiMTMzXFxcIj4xMzM8L2E+fExvb3AgRGV0ZWN0ZWQgSW4gR3JvdXAgSGllcmFyY2h5fCAgfCB8IDxhIG5hbWU9XFxcIjEzNFxcXCI+MTM0PC9hPnxVbmRlZmluZWQgQWNjZXB0YWJsZSBWYWx1ZXN8ICB8IHwgPGEgbmFtZT1cXFwiMTM1XFxcIj4xMzU8L2E+fFN1YiBHcm91cCBBbHJlYWR5IEV4aXN0c3wgIHwgfCA8YSBuYW1lPVxcXCIxMzhcXFwiPjEzODwvYT58UHJpY2UgU291cmNlIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCIxMzlcXFwiPjEzOTwvYT58QW5hbHl0aWMgU3RvcmUgTm90IEZvdW5kfCAgfCB8IDxhIG5hbWU9XFxcIjE0MVxcXCI+MTQxPC9hPnxBbmFseXRpYyBTdG9yZSBBbHJlYWR5IEV4aXN0c3wgIHwgfCA8YSBuYW1lPVxcXCIxNDNcXFwiPjE0MzwvYT58Q2xpZW50IEluc3RydW1lbnQgQWxyZWFkeSBFeGlzdHN8ICB8IHwgPGEgbmFtZT1cXFwiMTQ0XFxcIj4xNDQ8L2E+fER1cGxpY2F0ZSBJbiBQYXJhbWV0ZXIgU2V0fCAgfCB8IDxhIG5hbWU9XFxcIjE0N1xcXCI+MTQ3PC9hPnxSZXN1bHRzIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCIxNDhcXFwiPjE0ODwvYT58T3JkZXIgRmllbGQgTm90IEluIFJlc3VsdCBTZXR8ICB8IHwgPGEgbmFtZT1cXFwiMTQ5XFxcIj4xNDk8L2E+fE9wZXJhdGlvbiBGYWlsZWR8ICB8IHwgPGEgbmFtZT1cXFwiMTUwXFxcIj4xNTA8L2E+fEVsYXN0aWMgU2VhcmNoIEVycm9yfCAgfCB8IDxhIG5hbWU9XFxcIjE1MVxcXCI+MTUxPC9hPnxJbnZhbGlkIFBhcmFtZXRlciBWYWx1ZXwgIHwgfCA8YSBuYW1lPVxcXCIxNTNcXFwiPjE1MzwvYT58Q29tbWFuZCBQcm9jZXNzaW5nIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMTU0XFxcIj4xNTQ8L2E+fEVudGl0eSBTdGF0ZSBDb25zdHJ1Y3Rpb24gRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIxNTVcXFwiPjE1NTwvYT58RW50aXR5IFRpbWVsaW5lIERvZXMgTm90IEV4aXN0fCAgfCB8IDxhIG5hbWU9XFxcIjE1NlxcXCI+MTU2PC9hPnxDb25jdXJyZW5jeSBDb25mbGljdCBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjE1N1xcXCI+MTU3PC9hPnxJbnZhbGlkIFJlcXVlc3R8ICB8IHwgPGEgbmFtZT1cXFwiMTU4XFxcIj4xNTg8L2E+fEV2ZW50IFB1Ymxpc2ggVW5rbm93bnwgIHwgfCA8YSBuYW1lPVxcXCIxNTlcXFwiPjE1OTwvYT58RXZlbnQgUXVlcnkgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIxNjBcXFwiPjE2MDwvYT58QmxvYiBEaWQgTm90IEV4aXN0fCAgfCB8IDxhIG5hbWU9XFxcIjE2MlxcXCI+MTYyPC9hPnxTdWIgU3lzdGVtIFJlcXVlc3QgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIxNjNcXFwiPjE2MzwvYT58U3ViIFN5c3RlbSBDb25maWd1cmF0aW9uIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMTY1XFxcIj4xNjU8L2E+fEZhaWxlZCBUbyBEZWxldGV8ICB8IHwgPGEgbmFtZT1cXFwiMTY2XFxcIj4xNjY8L2E+fFVwc2VydCBDbGllbnQgSW5zdHJ1bWVudCBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjE2N1xcXCI+MTY3PC9hPnxJbGxlZ2FsIEFzIEF0IEludGVydmFsfCAgfCB8IDxhIG5hbWU9XFxcIjE2OFxcXCI+MTY4PC9hPnxJbGxlZ2FsIEJpdGVtcG9yYWwgUXVlcnl8ICB8IHwgPGEgbmFtZT1cXFwiMTY5XFxcIj4xNjk8L2E+fEludmFsaWQgQWx0ZXJuYXRlIElkfCAgfCB8IDxhIG5hbWU9XFxcIjE3MFxcXCI+MTcwPC9hPnxDYW5ub3QgQWRkIE5vbi1Xcml0YWJsZSBQcm9wZXJ0aWVzIFRvIEVudGl0eXwgIHwgfCA8YSBuYW1lPVxcXCIxNzFcXFwiPjE3MTwvYT58RW50aXR5IEFscmVhZHkgRXhpc3RzIEluIEdyb3VwfCAgfCB8IDxhIG5hbWU9XFxcIjE3MlxcXCI+MTcyPC9hPnxFbnRpdHkgV2l0aCBJZCBEb2VzIE5vdCBFeGlzdHwgIHwgfCA8YSBuYW1lPVxcXCIxNzNcXFwiPjE3MzwvYT58RW50aXR5IFdpdGggSWQgQWxyZWFkeSBFeGlzdHN8ICB8IHwgPGEgbmFtZT1cXFwiMTc0XFxcIj4xNzQ8L2E+fERlcml2ZWQgUG9ydGZvbGlvIERldGFpbHMgRG8gTm90IEV4aXN0fCAgfCB8IDxhIG5hbWU9XFxcIjE3NVxcXCI+MTc1PC9hPnxFbnRpdHkgTm90IEluIEdyb3VwfCAgfCB8IDxhIG5hbWU9XFxcIjE3NlxcXCI+MTc2PC9hPnxQb3J0Zm9saW8gV2l0aCBOYW1lIEFscmVhZHkgRXhpc3RzfCAgfCB8IDxhIG5hbWU9XFxcIjE3N1xcXCI+MTc3PC9hPnxJbnZhbGlkIFRyYW5zYWN0aW9uc3wgIHwgfCA8YSBuYW1lPVxcXCIxNzhcXFwiPjE3ODwvYT58UmVmZXJlbmNlIFBvcnRmb2xpbyBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiMTc5XFxcIj4xNzk8L2E+fER1cGxpY2F0ZSBJZHwgIHwgfCA8YSBuYW1lPVxcXCIxODBcXFwiPjE4MDwvYT58Q29tbWFuZCBSZXRyaWV2YWwgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIxODFcXFwiPjE4MTwvYT58RGF0YSBGaWx0ZXIgQXBwbGljYXRpb24gRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIxODJcXFwiPjE4MjwvYT58U2VhcmNoIEZhaWxlZHwgIHwgfCA8YSBuYW1lPVxcXCIxODNcXFwiPjE4MzwvYT58TW92ZW1lbnRzIEVuZ2luZSBDb25maWd1cmF0aW9uIEtleSBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjE4NFxcXCI+MTg0PC9hPnxGeCBSYXRlIFNvdXJjZSBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiMTg1XFxcIj4xODU8L2E+fEFjY3J1YWwgU291cmNlIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCIxODZcXFwiPjE4NjwvYT58QWNjZXNzIERlbmllZHwgIHwgfCA8YSBuYW1lPVxcXCIxODdcXFwiPjE4NzwvYT58SW52YWxpZCBJZGVudGl0eSBUb2tlbnwgIHwgfCA8YSBuYW1lPVxcXCIxODhcXFwiPjE4ODwvYT58SW52YWxpZCBSZXF1ZXN0IEhlYWRlcnN8ICB8IHwgPGEgbmFtZT1cXFwiMTg5XFxcIj4xODk8L2E+fFByaWNlIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCIxOTBcXFwiPjE5MDwvYT58SW52YWxpZCBTdWIgSG9sZGluZyBLZXlzIFByb3ZpZGVkfCAgfCB8IDxhIG5hbWU9XFxcIjE5MVxcXCI+MTkxPC9hPnxEdXBsaWNhdGUgU3ViIEhvbGRpbmcgS2V5cyBQcm92aWRlZHwgIHwgfCA8YSBuYW1lPVxcXCIxOTJcXFwiPjE5MjwvYT58Q3V0IERlZmluaXRpb24gTm90IEZvdW5kfCAgfCB8IDxhIG5hbWU9XFxcIjE5M1xcXCI+MTkzPC9hPnxDdXQgRGVmaW5pdGlvbiBJbnZhbGlkfCAgfCB8IDxhIG5hbWU9XFxcIjE5NFxcXCI+MTk0PC9hPnxUaW1lIFZhcmlhbnQgUHJvcGVydHkgRGVsZXRpb24gRGF0ZSBVbnNwZWNpZmllZHwgIHwgfCA8YSBuYW1lPVxcXCIxOTVcXFwiPjE5NTwvYT58UGVycGV0dWFsIFByb3BlcnR5IERlbGV0aW9uIERhdGUgU3BlY2lmaWVkfCAgfCB8IDxhIG5hbWU9XFxcIjE5NlxcXCI+MTk2PC9hPnxUaW1lIFZhcmlhbnQgUHJvcGVydHkgVXBzZXJ0IERhdGUgVW5zcGVjaWZpZWR8ICB8IHwgPGEgbmFtZT1cXFwiMTk3XFxcIj4xOTc8L2E+fFBlcnBldHVhbCBQcm9wZXJ0eSBVcHNlcnQgRGF0ZSBTcGVjaWZpZWR8ICB8IHwgPGEgbmFtZT1cXFwiMjAwXFxcIj4yMDA8L2E+fEludmFsaWQgVW5pdCBGb3IgRGF0YSBUeXBlfCAgfCB8IDxhIG5hbWU9XFxcIjIwMVxcXCI+MjAxPC9hPnxJbnZhbGlkIFR5cGUgRm9yIERhdGEgVHlwZXwgIHwgfCA8YSBuYW1lPVxcXCIyMDJcXFwiPjIwMjwvYT58SW52YWxpZCBWYWx1ZSBGb3IgRGF0YSBUeXBlfCAgfCB8IDxhIG5hbWU9XFxcIjIwM1xcXCI+MjAzPC9hPnxVbml0IE5vdCBEZWZpbmVkIEZvciBEYXRhIFR5cGV8ICB8IHwgPGEgbmFtZT1cXFwiMjA0XFxcIj4yMDQ8L2E+fFVuaXRzIE5vdCBTdXBwb3J0ZWQgT24gRGF0YSBUeXBlfCAgfCB8IDxhIG5hbWU9XFxcIjIwNVxcXCI+MjA1PC9hPnxDYW5ub3QgU3BlY2lmeSBVbml0cyBPbiBEYXRhIFR5cGV8ICB8IHwgPGEgbmFtZT1cXFwiMjA2XFxcIj4yMDY8L2E+fFVuaXQgU2NoZW1hIEluY29uc2lzdGVudCBXaXRoIERhdGEgVHlwZXwgIHwgfCA8YSBuYW1lPVxcXCIyMDdcXFwiPjIwNzwvYT58VW5pdCBEZWZpbml0aW9uIE5vdCBTcGVjaWZpZWR8ICB8IHwgPGEgbmFtZT1cXFwiMjA4XFxcIj4yMDg8L2E+fER1cGxpY2F0ZSBVbml0IERlZmluaXRpb25zIFNwZWNpZmllZHwgIHwgfCA8YSBuYW1lPVxcXCIyMDlcXFwiPjIwOTwvYT58SW52YWxpZCBVbml0cyBEZWZpbml0aW9ufCAgfCB8IDxhIG5hbWU9XFxcIjIxMFxcXCI+MjEwPC9hPnxJbnZhbGlkIEluc3RydW1lbnQgSWRlbnRpZmllciBVbml0fCAgfCB8IDxhIG5hbWU9XFxcIjIxMVxcXCI+MjExPC9hPnxIb2xkaW5ncyBBZGp1c3RtZW50IERvZXMgTm90IEV4aXN0fCAgfCB8IDxhIG5hbWU9XFxcIjIxMlxcXCI+MjEyPC9hPnxDb3VsZCBOb3QgQnVpbGQgRXhjZWwgVXJsfCAgfCB8IDxhIG5hbWU9XFxcIjIxM1xcXCI+MjEzPC9hPnxDb3VsZCBOb3QgR2V0IEV4Y2VsIFZlcnNpb258ICB8IHwgPGEgbmFtZT1cXFwiMjE0XFxcIj4yMTQ8L2E+fEluc3RydW1lbnQgQnkgQ29kZSBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiMjE1XFxcIj4yMTU8L2E+fEVudGl0eSBTY2hlbWEgRG9lcyBOb3QgRXhpc3R8ICB8IHwgPGEgbmFtZT1cXFwiMjE2XFxcIj4yMTY8L2E+fEZlYXR1cmUgTm90IFN1cHBvcnRlZCBPbiBQb3J0Zm9saW8gVHlwZXwgIHwgfCA8YSBuYW1lPVxcXCIyMTdcXFwiPjIxNzwvYT58UXVvdGUgTm90IEZvdW5kfCAgfCB8IDxhIG5hbWU9XFxcIjIxOFxcXCI+MjE4PC9hPnxJbnZhbGlkIFF1b3RlIElkZW50aWZpZXJ8ICB8IHwgPGEgbmFtZT1cXFwiMjE5XFxcIj4yMTk8L2E+fEludmFsaWQgTWV0cmljIEZvciBEYXRhIFR5cGV8ICB8IHwgPGEgbmFtZT1cXFwiMjIwXFxcIj4yMjA8L2E+fEludmFsaWQgSW5zdHJ1bWVudCBEZWZpbml0aW9ufCAgfCB8IDxhIG5hbWU9XFxcIjIyMVxcXCI+MjIxPC9hPnxJbnN0cnVtZW50IFVwc2VydCBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjIyMlxcXCI+MjIyPC9hPnxSZWZlcmVuY2UgUG9ydGZvbGlvIFJlcXVlc3QgTm90IFN1cHBvcnRlZHwgIHwgfCA8YSBuYW1lPVxcXCIyMjNcXFwiPjIyMzwvYT58VHJhbnNhY3Rpb24gUG9ydGZvbGlvIFJlcXVlc3QgTm90IFN1cHBvcnRlZHwgIHwgfCA8YSBuYW1lPVxcXCIyMjRcXFwiPjIyNDwvYT58SW52YWxpZCBQcm9wZXJ0eSBWYWx1ZSBBc3NpZ25tZW50fCAgfCB8IDxhIG5hbWU9XFxcIjIzMFxcXCI+MjMwPC9hPnxUcmFuc2FjdGlvbiBUeXBlIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCIyMzFcXFwiPjIzMTwvYT58VHJhbnNhY3Rpb24gVHlwZSBEdXBsaWNhdGlvbnwgIHwgfCA8YSBuYW1lPVxcXCIyMzJcXFwiPjIzMjwvYT58UG9ydGZvbGlvIERvZXMgTm90IEV4aXN0IEF0IEdpdmVuIERhdGV8ICB8IHwgPGEgbmFtZT1cXFwiMjMzXFxcIj4yMzM8L2E+fFF1ZXJ5IFBhcnNlciBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjIzNFxcXCI+MjM0PC9hPnxEdXBsaWNhdGUgQ29uc3RpdHVlbnR8ICB8IHwgPGEgbmFtZT1cXFwiMjM1XFxcIj4yMzU8L2E+fFVucmVzb2x2ZWQgSW5zdHJ1bWVudCBDb25zdGl0dWVudHwgIHwgfCA8YSBuYW1lPVxcXCIyMzZcXFwiPjIzNjwvYT58VW5yZXNvbHZlZCBJbnN0cnVtZW50IEluIFRyYW5zaXRpb258ICB8IHwgPGEgbmFtZT1cXFwiMjM3XFxcIj4yMzc8L2E+fE1pc3NpbmcgU2lkZSBEZWZpbml0aW9uc3wgIHwgfCA8YSBuYW1lPVxcXCIyNDBcXFwiPjI0MDwvYT58RHVwbGljYXRlIENhbGN1bGF0aW9ucyBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjI5OVxcXCI+Mjk5PC9hPnxJbnZhbGlkIFJlY2lwZXwgIHwgfCA8YSBuYW1lPVxcXCIzMDBcXFwiPjMwMDwvYT58TWlzc2luZyBSZWNpcGV8ICB8IHwgPGEgbmFtZT1cXFwiMzAxXFxcIj4zMDE8L2E+fERlcGVuZGVuY2llc3wgIHwgfCA8YSBuYW1lPVxcXCIzMDRcXFwiPjMwNDwvYT58UG9ydGZvbGlvIFByZXByb2Nlc3MgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzMTBcXFwiPjMxMDwvYT58VmFsdWF0aW9uIEVuZ2luZSBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjMxMVxcXCI+MzExPC9hPnxUYXNrIEZhY3RvcnkgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzMTJcXFwiPjMxMjwvYT58VGFzayBFdmFsdWF0aW9uIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzEzXFxcIj4zMTM8L2E+fFRhc2sgR2VuZXJhdGlvbiBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjMxNFxcXCI+MzE0PC9hPnxFbmdpbmUgQ29uZmlndXJhdGlvbiBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjMxNVxcXCI+MzE1PC9hPnxNb2RlbCBTcGVjaWZpY2F0aW9uIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzIwXFxcIj4zMjA8L2E+fE1hcmtldCBEYXRhIEtleSBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjMyMVxcXCI+MzIxPC9hPnxNYXJrZXQgUmVzb2x2ZXIgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzMjJcXFwiPjMyMjwvYT58TWFya2V0IERhdGEgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzMzBcXFwiPjMzMDwvYT58Q3VydmUgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzMzFcXFwiPjMzMTwvYT58Vm9sYXRpbGl0eSBTdXJmYWNlIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzMyXFxcIj4zMzI8L2E+fFZvbGF0aWxpdHkgQ3ViZSBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjM1MFxcXCI+MzUwPC9hPnxJbnN0cnVtZW50IEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzUxXFxcIj4zNTE8L2E+fENhc2ggRmxvd3MgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzNTJcXFwiPjM1MjwvYT58UmVmZXJlbmNlIERhdGEgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzNjBcXFwiPjM2MDwvYT58QWdncmVnYXRpb24gRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzNjFcXFwiPjM2MTwvYT58QWdncmVnYXRpb24gTWVhc3VyZSBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjM3MFxcXCI+MzcwPC9hPnxSZXN1bHQgUmV0cmlldmFsIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzcxXFxcIj4zNzE8L2E+fFJlc3VsdCBQcm9jZXNzaW5nIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzcyXFxcIj4zNzI8L2E+fFZlbmRvciBSZXN1bHQgUHJvY2Vzc2luZyBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjM3M1xcXCI+MzczPC9hPnxWZW5kb3IgUmVzdWx0IE1hcHBpbmcgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzNzRcXFwiPjM3NDwvYT58VmVuZG9yIExpYnJhcnkgVW5hdXRob3Jpc2VkfCAgfCB8IDxhIG5hbWU9XFxcIjM3NVxcXCI+Mzc1PC9hPnxWZW5kb3IgQ29ubmVjdGl2aXR5IEVycm9yfCAgfCB8IDxhIG5hbWU9XFxcIjM3NlxcXCI+Mzc2PC9hPnxWZW5kb3IgSW50ZXJmYWNlIEVycm9yfCAgfCB8IDxhIG5hbWU9XFxcIjM3N1xcXCI+Mzc3PC9hPnxWZW5kb3IgUHJpY2luZyBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjM3OFxcXCI+Mzc4PC9hPnxWZW5kb3IgVHJhbnNsYXRpb24gRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzNzlcXFwiPjM3OTwvYT58VmVuZG9yIEtleSBNYXBwaW5nIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzgwXFxcIj4zODA8L2E+fFZlbmRvciBSZWZsZWN0aW9uIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzgxXFxcIj4zODE8L2E+fFZlbmRvciBQcm9jZXNzIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzgyXFxcIj4zODI8L2E+fFZlbmRvciBTeXN0ZW0gRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzOTBcXFwiPjM5MDwvYT58QXR0ZW1wdCBUbyBVcHNlcnQgRHVwbGljYXRlIFF1b3Rlc3wgIHwgfCA8YSBuYW1lPVxcXCIzOTFcXFwiPjM5MTwvYT58Q29ycG9yYXRlIEFjdGlvbiBTb3VyY2UgRG9lcyBOb3QgRXhpc3R8ICB8IHwgPGEgbmFtZT1cXFwiMzkyXFxcIj4zOTI8L2E+fENvcnBvcmF0ZSBBY3Rpb24gU291cmNlIEFscmVhZHkgRXhpc3RzfCAgfCB8IDxhIG5hbWU9XFxcIjM5M1xcXCI+MzkzPC9hPnxJbnN0cnVtZW50IElkZW50aWZpZXIgQWxyZWFkeSBJbiBVc2V8ICB8IHwgPGEgbmFtZT1cXFwiMzk0XFxcIj4zOTQ8L2E+fFByb3BlcnRpZXMgTm90IEZvdW5kfCAgfCB8IDxhIG5hbWU9XFxcIjM5NVxcXCI+Mzk1PC9hPnxCYXRjaCBPcGVyYXRpb24gQWJvcnRlZHwgIHwgfCA8YSBuYW1lPVxcXCI0MDBcXFwiPjQwMDwvYT58SW52YWxpZCBJc280MjE3IEN1cnJlbmN5IENvZGV8ICB8IHwgPGEgbmFtZT1cXFwiNDAxXFxcIj40MDE8L2E+fENhbm5vdCBBc3NpZ24gSW5zdHJ1bWVudCBJZGVudGlmaWVyIFRvIEN1cnJlbmN5fCAgfCB8IDxhIG5hbWU9XFxcIjQwMlxcXCI+NDAyPC9hPnxDYW5ub3QgQXNzaWduIEN1cnJlbmN5IElkZW50aWZpZXIgVG8gTm9uIEN1cnJlbmN5fCAgfCB8IDxhIG5hbWU9XFxcIjQwM1xcXCI+NDAzPC9hPnxDdXJyZW5jeSBJbnN0cnVtZW50IENhbm5vdCBCZSBEZWxldGVkfCAgfCB8IDxhIG5hbWU9XFxcIjQwNFxcXCI+NDA0PC9hPnxDdXJyZW5jeSBJbnN0cnVtZW50IENhbm5vdCBIYXZlIEVjb25vbWljIERlZmluaXRpb258ICB8IHwgPGEgbmFtZT1cXFwiNDA1XFxcIj40MDU8L2E+fEN1cnJlbmN5IEluc3RydW1lbnQgQ2Fubm90IEhhdmUgTG9va3Rocm91Z2ggUG9ydGZvbGlvfCAgfCB8IDxhIG5hbWU9XFxcIjQwNlxcXCI+NDA2PC9hPnxDYW5ub3QgQ3JlYXRlIEN1cnJlbmN5IEluc3RydW1lbnQgV2l0aCBNdWx0aXBsZSBJZGVudGlmaWVyc3wgIHwgfCA8YSBuYW1lPVxcXCI0MDdcXFwiPjQwNzwvYT58U3BlY2lmaWVkIEN1cnJlbmN5IElzIFVuZGVmaW5lZHwgIHwgfCA8YSBuYW1lPVxcXCI0MTBcXFwiPjQxMDwvYT58SW5kZXggRG9lcyBOb3QgRXhpc3R8ICB8IHwgPGEgbmFtZT1cXFwiNDExXFxcIj40MTE8L2E+fFNvcnQgRmllbGQgRG9lcyBOb3QgRXhpc3R8ICB8IHwgPGEgbmFtZT1cXFwiNDEzXFxcIj40MTM8L2E+fE5lZ2F0aXZlIFBhZ2luYXRpb24gUGFyYW1ldGVyc3wgIHwgfCA8YSBuYW1lPVxcXCI0MTRcXFwiPjQxNDwvYT58SW52YWxpZCBTZWFyY2ggU3ludGF4fCAgfCB8IDxhIG5hbWU9XFxcIjQxNVxcXCI+NDE1PC9hPnxGaWx0ZXIgRXhlY3V0aW9uIFRpbWVvdXR8ICB8IHwgPGEgbmFtZT1cXFwiNDIwXFxcIj40MjA8L2E+fFNpZGUgRGVmaW5pdGlvbiBJbmNvbnNpc3RlbnR8ICB8IHwgPGEgbmFtZT1cXFwiNDUwXFxcIj40NTA8L2E+fEludmFsaWQgUXVvdGUgQWNjZXNzIE1ldGFkYXRhIFJ1bGV8ICB8IHwgPGEgbmFtZT1cXFwiNDUxXFxcIj40NTE8L2E+fEFjY2VzcyBNZXRhZGF0YSBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiNDUyXFxcIj40NTI8L2E+fEludmFsaWQgQWNjZXNzIE1ldGFkYXRhIElkZW50aWZpZXJ8ICB8IHwgPGEgbmFtZT1cXFwiNDYwXFxcIj40NjA8L2E+fFN0YW5kYXJkIFJlc291cmNlIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCI0NjFcXFwiPjQ2MTwvYT58U3RhbmRhcmQgUmVzb3VyY2UgQ29uZmxpY3R8ICB8IHwgPGEgbmFtZT1cXFwiNDYyXFxcIj40NjI8L2E+fENhbGVuZGFyIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCI0NjNcXFwiPjQ2MzwvYT58RGF0ZSBJbiBBIENhbGVuZGFyIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCI0NjRcXFwiPjQ2NDwvYT58SW52YWxpZCBEYXRlIFNvdXJjZSBEYXRhfCAgfCB8IDxhIG5hbWU9XFxcIjQ2NVxcXCI+NDY1PC9hPnxJbnZhbGlkIFRpbWV6b25lfCAgfCB8IDxhIG5hbWU9XFxcIjYwMVxcXCI+NjAxPC9hPnxQZXJzb24gSWRlbnRpZmllciBBbHJlYWR5IEluIFVzZXwgIHwgfCA8YSBuYW1lPVxcXCI2MDJcXFwiPjYwMjwvYT58UGVyc29uIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCI2MDNcXFwiPjYwMzwvYT58Q2Fubm90IFNldCBJZGVudGlmaWVyfCAgfCB8IDxhIG5hbWU9XFxcIjYxN1xcXCI+NjE3PC9hPnxJbnZhbGlkIFJlY2lwZSBTcGVjaWZpY2F0aW9uIEluIFJlcXVlc3R8ICB8IHwgPGEgbmFtZT1cXFwiNjE4XFxcIj42MTg8L2E+fElubGluZSBSZWNpcGUgRGVzZXJpYWxpc2F0aW9uIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiNjE5XFxcIj42MTk8L2E+fElkZW50aWZpZXIgVHlwZXMgTm90IFNldCBGb3IgRW50aXR5fCAgfCB8IDxhIG5hbWU9XFxcIjYyMFxcXCI+NjIwPC9hPnxDYW5ub3QgRGVsZXRlIEFsbCBDbGllbnQgRGVmaW5lZCBJZGVudGlmaWVyc3wgIHwgfCA8YSBuYW1lPVxcXCI2NTBcXFwiPjY1MDwvYT58VGhlIE9yZGVyIHJlcXVlc3RlZCB3YXMgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI2NTRcXFwiPjY1NDwvYT58VGhlIEFsbG9jYXRpb24gcmVxdWVzdGVkIHdhcyBub3QgZm91bmQufCAgfCB8IDxhIG5hbWU9XFxcIjY1NVxcXCI+NjU1PC9hPnxDYW5ub3QgYnVpbGQgdGhlIGZ4IGZvcndhcmQgdGFyZ2V0IHdpdGggdGhlIGdpdmVuIGhvbGRpbmdzLnwgIHwgfCA8YSBuYW1lPVxcXCI2NTZcXFwiPjY1NjwvYT58R3JvdXAgZG9lcyBub3QgY29udGFpbiBleHBlY3RlZCBlbnRpdGllcy58ICB8IHwgPGEgbmFtZT1cXFwiNjY1XFxcIj42NjU8L2E+fERlc3RpbmF0aW9uIGRpcmVjdG9yeSBub3QgZm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiNjY3XFxcIj42Njc8L2E+fFJlbGF0aW9uIGRlZmluaXRpb24gYWxyZWFkeSBleGlzdHN8ICB8IHwgPGEgbmFtZT1cXFwiNjcyXFxcIj42NzI8L2E+fENvdWxkIG5vdCByZXRyaWV2ZSBmaWxlIGNvbnRlbnRzfCAgfCB8IDxhIG5hbWU9XFxcIjY3M1xcXCI+NjczPC9hPnxNaXNzaW5nIGVudGl0bGVtZW50cyBmb3IgZW50aXRpZXMgaW4gR3JvdXB8ICB8IHwgPGEgbmFtZT1cXFwiNjc0XFxcIj42NzQ8L2E+fE5leHQgQmVzdCBBY3Rpb24gbm90IGZvdW5kfCAgfCB8IDxhIG5hbWU9XFxcIjY3NlxcXCI+Njc2PC9hPnxSZWxhdGlvbiBkZWZpbml0aW9uIG5vdCBkZWZpbmVkfCAgfCB8IDxhIG5hbWU9XFxcIjY3N1xcXCI+Njc3PC9hPnxJbnZhbGlkIGVudGl0eSBpZGVudGlmaWVyIGZvciByZWxhdGlvbnwgIHwgfCA8YSBuYW1lPVxcXCI2ODFcXFwiPjY4MTwvYT58U29ydGluZyBieSBzcGVjaWZpZWQgZmllbGQgbm90IHN1cHBvcnRlZHxPbmUgb3IgbW9yZSBvZiB0aGUgcHJvdmlkZWQgZmllbGRzIHRvIG9yZGVyIGJ5IHdlcmUgZWl0aGVyIGludmFsaWQgb3Igbm90IHN1cHBvcnRlZC4gfCB8IDxhIG5hbWU9XFxcIjY4MlxcXCI+NjgyPC9hPnxUb28gbWFueSBmaWVsZHMgdG8gc29ydCBieXxUaGUgbnVtYmVyIG9mIGZpZWxkcyB0byBzb3J0IHRoZSBkYXRhIGJ5IGV4Y2VlZHMgdGhlIG51bWJlciBhbGxvd2VkIGJ5IHRoZSBlbmRwb2ludCB8IHwgPGEgbmFtZT1cXFwiNjg0XFxcIj42ODQ8L2E+fFNlcXVlbmNlIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCI2ODVcXFwiPjY4NTwvYT58U2VxdWVuY2UgQWxyZWFkeSBFeGlzdHN8ICB8IHwgPGEgbmFtZT1cXFwiNjg2XFxcIj42ODY8L2E+fE5vbi1jeWNsaW5nIHNlcXVlbmNlIGhhcyBiZWVuIGV4aGF1c3RlZHwgIHwgfCA8YSBuYW1lPVxcXCI2ODdcXFwiPjY4NzwvYT58TGVnYWwgRW50aXR5IElkZW50aWZpZXIgQWxyZWFkeSBJbiBVc2V8ICB8IHwgPGEgbmFtZT1cXFwiNjg4XFxcIj42ODg8L2E+fExlZ2FsIEVudGl0eSBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiNjg5XFxcIj42ODk8L2E+fFRoZSBzdXBwbGllZCBwYWdpbmF0aW9uIHRva2VuIGlzIGludmFsaWR8ICB8IHwgPGEgbmFtZT1cXFwiNjkwXFxcIj42OTA8L2E+fFByb3BlcnR5IFR5cGUgSXMgTm90IFN1cHBvcnRlZHwgIHwgfCA8YSBuYW1lPVxcXCI2OTFcXFwiPjY5MTwvYT58TXVsdGlwbGUgVGF4LWxvdHMgRm9yIEN1cnJlbmN5IFR5cGUgSXMgTm90IFN1cHBvcnRlZHwgIHwgfCA8YSBuYW1lPVxcXCI2OTJcXFwiPjY5MjwvYT58VGhpcyBlbmRwb2ludCBkb2VzIG5vdCBzdXBwb3J0IGltcGVyc29uYXRpb258ICB8IHwgPGEgbmFtZT1cXFwiNjkzXFxcIj42OTM8L2E+fEVudGl0eSB0eXBlIGlzIG5vdCBzdXBwb3J0ZWQgZm9yIFJlbGF0aW9uc2hpcHwgIHwgfCA8YSBuYW1lPVxcXCI2OTRcXFwiPjY5NDwvYT58UmVsYXRpb25zaGlwIFZhbGlkYXRpb24gRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCI2OTVcXFwiPjY5NTwvYT58UmVsYXRpb25zaGlwIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCI2OTdcXFwiPjY5NzwvYT58RGVyaXZlZCBQcm9wZXJ0eSBGb3JtdWxhIE5vIExvbmdlciBWYWxpZHwgIHwgfCA8YSBuYW1lPVxcXCI2OThcXFwiPjY5ODwvYT58U3RvcnkgaXMgbm90IGF2YWlsYWJsZXwgIHwgfCA8YSBuYW1lPVxcXCI3MDNcXFwiPjcwMzwvYT58Q29ycG9yYXRlIEFjdGlvbiBEb2VzIE5vdCBFeGlzdHwgIHwgfCA8YSBuYW1lPVxcXCI3MjBcXFwiPjcyMDwvYT58VGhlIHByb3ZpZGVkIHNvcnQgYW5kIGZpbHRlciBjb21iaW5hdGlvbiBpcyBub3QgdmFsaWR8ICB8IHwgPGEgbmFtZT1cXFwiNzIxXFxcIj43MjE8L2E+fEEyQiBnZW5lcmF0aW9uIGZhaWxlZHwgIHwgfCA8YSBuYW1lPVxcXCI3MjJcXFwiPjcyMjwvYT58QWdncmVnYXRlZCBSZXR1cm4gQ2FsY3VsYXRpb24gRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCI3MjNcXFwiPjcyMzwvYT58Q3VzdG9tIEVudGl0eSBEZWZpbml0aW9uIElkZW50aWZpZXIgQWxyZWFkeSBJbiBVc2V8ICB8IHwgPGEgbmFtZT1cXFwiNzI0XFxcIj43MjQ8L2E+fEN1c3RvbSBFbnRpdHkgRGVmaW5pdGlvbiBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiNzI1XFxcIj43MjU8L2E+fFRoZSBQbGFjZW1lbnQgcmVxdWVzdGVkIHdhcyBub3QgZm91bmQufCAgfCB8IDxhIG5hbWU9XFxcIjcyNlxcXCI+NzI2PC9hPnxUaGUgRXhlY3V0aW9uIHJlcXVlc3RlZCB3YXMgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI3MjdcXFwiPjcyNzwvYT58VGhlIEJsb2NrIHJlcXVlc3RlZCB3YXMgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI3MjhcXFwiPjcyODwvYT58VGhlIFBhcnRpY2lwYXRpb24gcmVxdWVzdGVkIHdhcyBub3QgZm91bmQufCAgfCB8IDxhIG5hbWU9XFxcIjcyOVxcXCI+NzI5PC9hPnxUaGUgUGFja2FnZSByZXF1ZXN0ZWQgd2FzIG5vdCBmb3VuZC58ICB8IHwgPGEgbmFtZT1cXFwiNzMwXFxcIj43MzA8L2E+fFRoZSBPcmRlckluc3RydWN0aW9uIHJlcXVlc3RlZCB3YXMgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI3MzJcXFwiPjczMjwvYT58Q3VzdG9tIEVudGl0eSBub3QgZm91bmQufCAgfCB8IDxhIG5hbWU9XFxcIjczM1xcXCI+NzMzPC9hPnxDdXN0b20gRW50aXR5IElkZW50aWZpZXIgYWxyZWFkeSBpbiB1c2UufCAgfCB8IDxhIG5hbWU9XFxcIjczNVxcXCI+NzM1PC9hPnxDYWxjdWxhdGlvbiBGYWlsZWQufCAgfCB8IDxhIG5hbWU9XFxcIjczNlxcXCI+NzM2PC9hPnxBbiBleHBlY3RlZCBrZXkgb24gSHR0cFJlc3BvbnNlIGlzIG1pc3NpbmcufCAgfCB8IDxhIG5hbWU9XFxcIjczN1xcXCI+NzM3PC9hPnxBIHJlcXVpcmVkIGZlZSBkZXRhaWwgaXMgbWlzc2luZy58ICB8IHwgPGEgbmFtZT1cXFwiNzM4XFxcIj43Mzg8L2E+fFplcm8gcm93cyB3ZXJlIHJldHVybmVkIGZyb20gTHVtaW5lc2NlfCAgfCB8IDxhIG5hbWU9XFxcIjczOVxcXCI+NzM5PC9hPnxQcm92aWRlZCBXZWVrZW5kIE1hc2sgd2FzIGludmFsaWR8ICB8IHwgPGEgbmFtZT1cXFwiNzQyXFxcIj43NDI8L2E+fEN1c3RvbSBFbnRpdHkgZmllbGRzIGRvIG5vdCBtYXRjaCB0aGUgZGVmaW5pdGlvbnwgIHwgfCA8YSBuYW1lPVxcXCI3NDZcXFwiPjc0NjwvYT58VGhlIHByb3ZpZGVkIHNlcXVlbmNlIGlzIG5vdCB2YWxpZC58ICB8IHwgPGEgbmFtZT1cXFwiNzUxXFxcIj43NTE8L2E+fFRoZSB0eXBlIG9mIHRoZSBDdXN0b20gRW50aXR5IGlzIGRpZmZlcmVudCB0aGFuIHRoZSB0eXBlIHByb3ZpZGVkIGluIHRoZSBkZWZpbml0aW9uLnwgIHwgfCA8YSBuYW1lPVxcXCI3NTJcXFwiPjc1MjwvYT58THVtaW5lc2NlIHByb2Nlc3MgcmV0dXJuZWQgYW4gZXJyb3IufCAgfCB8IDxhIG5hbWU9XFxcIjc1M1xcXCI+NzUzPC9hPnxGaWxlIG5hbWUgb3IgY29udGVudCBpbmNvbXBhdGlibGUgd2l0aCBvcGVyYXRpb24ufCAgfCB8IDxhIG5hbWU9XFxcIjc1NVxcXCI+NzU1PC9hPnxTY2hlbWEgb2YgcmVzcG9uc2UgZnJvbSBEcml2ZSBpcyBub3QgYXMgZXhwZWN0ZWQufCAgfCB8IDxhIG5hbWU9XFxcIjc1N1xcXCI+NzU3PC9hPnxTY2hlbWEgb2YgcmVzcG9uc2UgZnJvbSBMdW1pbmVzY2UgaXMgbm90IGFzIGV4cGVjdGVkLnwgIHwgfCA8YSBuYW1lPVxcXCI3NThcXFwiPjc1ODwvYT58THVtaW5lc2NlIHRpbWVkIG91dC58ICB8IHwgPGEgbmFtZT1cXFwiNzYzXFxcIj43NjM8L2E+fEludmFsaWQgTHVzaWQgRW50aXR5IElkZW50aWZpZXIgVW5pdHwgIHwgfCA8YSBuYW1lPVxcXCI3NjhcXFwiPjc2ODwvYT58RmVlIHJ1bGUgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI3NjlcXFwiPjc2OTwvYT58Q2Fubm90IHVwZGF0ZSB0aGUgYmFzZSBjdXJyZW5jeSBvZiBhIHBvcnRmb2xpbyB3aXRoIHRyYW5zYWN0aW9ucyBsb2FkZWR8ICB8IHwgPGEgbmFtZT1cXFwiNzcxXFxcIj43NzE8L2E+fFRyYW5zYWN0aW9uIGNvbmZpZ3VyYXRpb24gc291cmNlIG5vdCBmb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCI3NzRcXFwiPjc3NDwvYT58Q29tcGxpYW5jZSBydWxlIG5vdCBmb3VuZC58ICB8IHwgPGEgbmFtZT1cXFwiNzc1XFxcIj43NzU8L2E+fEZ1bmQgYWNjb3VudGluZyBkb2N1bWVudCBjYW5ub3QgYmUgcHJvY2Vzc2VkLnwgIHwgfCA8YSBuYW1lPVxcXCI3NzhcXFwiPjc3ODwvYT58VW5hYmxlIHRvIGxvb2sgdXAgRlggcmF0ZSBmcm9tIHRyYWRlIGNjeSB0byBwb3J0Zm9saW8gY2N5IGZvciBzb21lIG9mIHRoZSB0cmFkZXMufCAgfCB8IDxhIG5hbWU9XFxcIjc4MlxcXCI+NzgyPC9hPnxUaGUgUHJvcGVydHkgZGVmaW5pdGlvbiBkYXRhVHlwZSBpcyBub3QgbWF0Y2hpbmcgdGhlIGRlcml2YXRpb24gZm9ybXVsYSBkYXRhVHlwZXwgIHwgfCA8YSBuYW1lPVxcXCI3ODNcXFwiPjc4MzwvYT58VGhlIFByb3BlcnR5IGRlZmluaXRpb24gZG9tYWluIGlzIG5vdCBzdXBwb3J0ZWQgZm9yIGRlcml2ZWQgcHJvcGVydGllc3wgIHwgfCA8YSBuYW1lPVxcXCI3ODhcXFwiPjc4ODwvYT58Q29tcGxpYW5jZSBydW4gbm90IGZvdW5kIGZhaWx1cmUufCAgfCB8IDxhIG5hbWU9XFxcIjc5MFxcXCI+NzkwPC9hPnxDdXN0b20gRW50aXR5IGhhcyBtaXNzaW5nIG9yIGludmFsaWQgaWRlbnRpZmllcnN8ICB8IHwgPGEgbmFtZT1cXFwiNzkxXFxcIj43OTE8L2E+fEN1c3RvbSBFbnRpdHkgZGVmaW5pdGlvbiBhbHJlYWR5IGV4aXN0c3wgIHwgfCA8YSBuYW1lPVxcXCI3OTJcXFwiPjc5MjwvYT58Q29tcGxpYW5jZSBQcm9wZXJ0eUtleSBpcyBtaXNzaW5nLnwgIHwgfCA8YSBuYW1lPVxcXCI3OTNcXFwiPjc5MzwvYT58Q29tcGxpYW5jZSBDcml0ZXJpYSBWYWx1ZSBmb3IgbWF0Y2hpbmcgaXMgbWlzc2luZy58ICB8IHwgPGEgbmFtZT1cXFwiNzk1XFxcIj43OTU8L2E+fENhbm5vdCBkZWxldGUgaWRlbnRpZmllciBkZWZpbml0aW9ufCAgfCB8IDxhIG5hbWU9XFxcIjc5NlxcXCI+Nzk2PC9hPnxUYXggcnVsZSBzZXQgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI3OTdcXFwiPjc5NzwvYT58QSB0YXggcnVsZSBzZXQgd2l0aCB0aGlzIGlkIGFscmVhZHkgZXhpc3RzLnwgIHwgfCA8YSBuYW1lPVxcXCI3OThcXFwiPjc5ODwvYT58TXVsdGlwbGUgcnVsZSBzZXRzIGZvciB0aGUgc2FtZSBwcm9wZXJ0eSBrZXkgYXJlIGFwcGxpY2FibGUufCAgfCB8IDxhIG5hbWU9XFxcIjc5OVxcXCI+Nzk5PC9hPnxUaGUgcmVxdWVzdCBtdXN0IGNvbnRhaW4gYSBkYXRlIG9yIGRpYXJ5IGVudHJ5LnwgIHwgfCA8YSBuYW1lPVxcXCI4MDBcXFwiPjgwMDwvYT58Q2FuIG5vdCB1cHNlcnQgYW4gaW5zdHJ1bWVudCBldmVudCBvZiB0aGlzIHR5cGUufCAgfCB8IDxhIG5hbWU9XFxcIjgwMVxcXCI+ODAxPC9hPnxUaGUgaW5zdHJ1bWVudCBldmVudCBkb2VzIG5vdCBleGlzdC58ICB8IHwgPGEgbmFtZT1cXFwiODAyXFxcIj44MDI8L2E+fFRoZSBJbnN0cnVtZW50IGV2ZW50IGlzIG1pc3Npbmcgc2FsaWVudCBpbmZvcm1hdGlvbi58ICB8IHwgPGEgbmFtZT1cXFwiODAzXFxcIj44MDM8L2E+fFRoZSBJbnN0cnVtZW50IGV2ZW50IGNvdWxkIG5vdCBiZSBwcm9jZXNzZWQufCAgfCB8IDxhIG5hbWU9XFxcIjgwNFxcXCI+ODA0PC9hPnxTb21lIGRhdGEgcmVxdWVzdGVkIGRvZXMgbm90IGZvbGxvdyB0aGUgb3JkZXIgZ3JhcGggYXNzdW1wdGlvbnMufCAgfCB8IDxhIG5hbWU9XFxcIjgwNVxcXCI+ODA1PC9hPnxUaGUgaW5zdHJ1bWVudCBldmVudCB0eXBlIGRvZXMgbm90IGV4aXN0LnwgIHwgfCA8YSBuYW1lPVxcXCI4MDZcXFwiPjgwNjwvYT58VGhlIHRyYW5zYWN0aW9uIHRlbXBsYXRlIHNwZWNpZmljYXRpb24gZG9lcyBub3QgZXhpc3QufCAgfCB8IDxhIG5hbWU9XFxcIjgwN1xcXCI+ODA3PC9hPnxUaGUgZGVmYXVsdCB0cmFuc2FjdGlvbiB0ZW1wbGF0ZSBkb2VzIG5vdCBleGlzdC58ICB8IHwgPGEgbmFtZT1cXFwiODA4XFxcIj44MDg8L2E+fFRoZSB0cmFuc2FjdGlvbiB0ZW1wbGF0ZSBkb2VzIG5vdCBleGlzdC58ICB8IHwgPGEgbmFtZT1cXFwiODExXFxcIj44MTE8L2E+fEEgcHJpY2UgY291bGQgbm90IGJlIGZvdW5kIGZvciBhbiBvcmRlci58ICB8IHwgPGEgbmFtZT1cXFwiODEyXFxcIj44MTI8L2E+fEEgcHJpY2UgY291bGQgbm90IGJlIGZvdW5kIGZvciBhbiBhbGxvY2F0aW9uLnwgIHwgfCA8YSBuYW1lPVxcXCI4MTNcXFwiPjgxMzwvYT58Q2hhcnQgb2YgQWNjb3VudHMgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI4MTRcXFwiPjgxNDwvYT58QWNjb3VudCBub3QgZm91bmQufCAgfCB8IDxhIG5hbWU9XFxcIjgxNVxcXCI+ODE1PC9hPnxBYm9yIG5vdCBmb3VuZC58ICB8IHwgPGEgbmFtZT1cXFwiODE2XFxcIj44MTY8L2E+fEFib3IgQ29uZmlndXJhdGlvbiBub3QgZm91bmQufCAgfCB8IDxhIG5hbWU9XFxcIjgxN1xcXCI+ODE3PC9hPnxSZWNvbmNpbGlhdGlvbiBtYXBwaW5nIG5vdCBmb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCI4MThcXFwiPjgxODwvYT58QXR0cmlidXRlIHR5cGUgY291bGQgbm90IGJlIGRlbGV0ZWQgYmVjYXVzZSBpdCBkb2VzblxcJ3QgZXhpc3QufCAgfCB8IDxhIG5hbWU9XFxcIjgxOVxcXCI+ODE5PC9hPnxSZWNvbmNpbGlhdGlvbiBub3QgZm91bmQufCAgfCB8IDxhIG5hbWU9XFxcIjgyMFxcXCI+ODIwPC9hPnxDdXN0b2RpYW4gQWNjb3VudCBub3QgZm91bmQufCAgfCB8IDxhIG5hbWU9XFxcIjgyMVxcXCI+ODIxPC9hPnxBbGxvY2F0aW9uIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiODIyXFxcIj44MjI8L2E+fFJlY29uY2lsaWF0aW9uIHJ1biBub3QgZm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiODIzXFxcIj44MjM8L2E+fFJlY29uY2lsaWF0aW9uIGJyZWFrIG5vdCBmb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCI4MjRcXFwiPjgyNDwvYT58RW50aXR5IGxpbmsgdHlwZSBjb3VsZCBub3QgYmUgZGVsZXRlZCBiZWNhdXNlIGl0IGRvZXNuXFwndCBleGlzdC58ICB8IHwgPGEgbmFtZT1cXFwiODI4XFxcIj44Mjg8L2E+fEFkZHJlc3Mga2V5IGRlZmluaXRpb24gbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI4MjlcXFwiPjgyOTwvYT58Q29tcGxpYW5jZSB0ZW1wbGF0ZSBub3QgZm91bmQufCAgfCB8IDxhIG5hbWU9XFxcIjgzMFxcXCI+ODMwPC9hPnxBY3Rpb24gbm90IHN1cHBvcnRlZHwgIHwgfCA8YSBuYW1lPVxcXCI4MzFcXFwiPjgzMTwvYT58UmVmZXJlbmNlIGxpc3Qgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI4MzJcXFwiPjgzMjwvYT58UG9zdGluZyBNb2R1bGUgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI4MzNcXFwiPjgzMzwvYT58VGhlIHR5cGUgb2YgcGFyYW1ldGVyIHByb3ZpZGVkIGRpZCBub3QgbWF0Y2ggdGhhdCByZXF1aXJlZCBieSB0aGUgY29tcGxpYW5jZSBydWxlLnwgIHwgfCA8YSBuYW1lPVxcXCI4MzRcXFwiPjgzNDwvYT58VGhlIHBhcmFtZXRlcnMgcHJvdmlkZWQgYnkgYSBydWxlIGRpZCBub3QgbWF0Y2ggdGhvc2UgcmVxdWlyZWQgYnkgaXRzIHRlbXBsYXRlLnwgIHwgfCA8YSBuYW1lPVxcXCI4MzVcXFwiPjgzNTwvYT58VGhlIGVudGl0eSBoYXMgYSBwcm9wZXJ0eSBpbiBhIGRvbWFpbiB0aGF0IGlzIG5vdCBzdXBwcnRlZCBmb3IgdGhhdCBlbnRpdHkgdHlwZS58ICB8IHwgPGEgbmFtZT1cXFwiODM2XFxcIj44MzY8L2E+fFN0cnVjdHVyZWQgcmVzdWx0IGRhdGEgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI4MzdcXFwiPjgzNzwvYT58RGlhcnkgZW50cnkgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI4MzhcXFwiPjgzODwvYT58RGlhcnkgZW50cnkgY291bGQgbm90IGJlIGNyZWF0ZWQufCAgfCB8IDxhIG5hbWU9XFxcIjgzOVxcXCI+ODM5PC9hPnxEaWFyeSBlbnRyeSBhbHJlYWR5IGV4aXN0cy58ICB8IHwgPGEgbmFtZT1cXFwiODYxXFxcIj44NjE8L2E+fENvbXBsaWFuY2UgcnVuIHN1bW1hcnkgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI4NjlcXFwiPjg2OTwvYT58Q29uZmxpY3RpbmcgaW5zdHJ1bWVudCBwcm9wZXJ0aWVzIGluIGJhdGNoLnwgIHwgfCA8YSBuYW1lPVxcXCI4NzBcXFwiPjg3MDwvYT58Q29tcGxpYW5jZSBydW4gc3VtbWFyeSBhbHJlYWR5IGV4aXN0cy58ICB8IHwgPGEgbmFtZT1cXFwiODcxXFxcIj44NzE8L2E+fFRoZSBzcGVjaWZpZWQgaW1wZXJzb25hdGVkIHVzZXIgZG9lcyBub3QgZXhpc3R8ICB8IHwgPGEgbmFtZT1cXFwiODc0XFxcIj44NzQ8L2E+fFByb3ZpZGVkIFByb3BlcnR5IERvbWFpbiBpcyBub3Qgc3VwcG9ydGVkIGZvciBlbnRpdHkgZmlsdGVyLnwgIHwgfCA8YSBuYW1lPVxcXCI4NzVcXFwiPjg3NTwvYT58Q2Fubm90IERlbGV0ZSBTeXN0ZW0gUmVmZXJlbmNlIExpc3QufCAgfCB8IDxhIG5hbWU9XFxcIjg3NlxcXCI+ODc2PC9hPnxDbGVhcmRvd24gTW9kdWxlIG5vdCBmb3VuZC58ICB8IHwgPGEgbmFtZT1cXFwiODc5XFxcIj44Nzk8L2E+fFBvcnRmb2xpb3MgZG8gbm90IGhhdmUgdGhlIHNhbWUgYmFzZSBjdXJyZW5jeXwgIHwgfCA8YSBuYW1lPVxcXCI4ODBcXFwiPjg4MDwvYT58VGhlcmUgd2FzIGEgcHJvYmxlbSB3aXRoIHRoZSBkZWZpbml0aW9uIG9mIHRoZSBjb21wbGlhbmNlIGV4cHJlc3Npb24ufCAgfCB8IDxhIG5hbWU9XFxcIjg4MVxcXCI+ODgxPC9hPnxCbG9jayBvdmVycGxhY2VkLnwgIHwgfCA8YSBuYW1lPVxcXCI4ODJcXFwiPjg4MjwvYT58T3JkZXIgbm90IGFwcHJvdmVkLnwgIHwgfCA8YSBuYW1lPVxcXCI4ODNcXFwiPjg4MzwvYT58Q2Fubm90IHVwZGF0ZSB0aGUgc2hhcmVkIGZpZWxkcyBvZiBhIGJsb2NrIHdpdGggYXNzb2NpYXRlZCBvcmRlcnMufCAgfCB8IDxhIG5hbWU9XFxcIjg4NlxcXCI+ODg2PC9hPnxDYW5ub3QgbG9jayB0aGUgcGVyaW9kLnwgIHwgfCA8YSBuYW1lPVxcXCI4ODdcXFwiPjg4NzwvYT58Q2Fubm90IGFwcGx5IGNsZWFyIGRvd24gbW9kdWxlLnwgIHwgfCA8YSBuYW1lPVxcXCI4ODhcXFwiPjg4ODwvYT58Q2Fubm90IHVwc2VydCBJbnN0cnVtZW50IEV2ZW50IEluc3RydWN0aW9uLnwgIHwgfCA8YSBuYW1lPVxcXCI4ODlcXFwiPjg4OTwvYT58Q2Fubm90IHJlYWQgSW5zdHJ1bWVudCBFdmVudCBJbnN0cnVjdGlvbi58ICB8IHwgPGEgbmFtZT1cXFwiODk1XFxcIj44OTU8L2E+fFRoZSBDYXBpdGFsIFJhdGlvIENhbGN1bGF0aW9uIElzIFdyb25nLnwgIHwgfCA8YSBuYW1lPVxcXCI5MTBcXFwiPjkxMDwvYT58Q2Fubm90IHVwZGF0ZSBhIGJsb2NrIHJlZmVyZW5jZWQgYnkgYSBwbGFjZW1lbnQufCAgfCB8IDxhIG5hbWU9XFxcIjkxMVxcXCI+OTExPC9hPnxBIEZ1bmQgdGhhdCByZWZlcmVuY2VzIHRoaXMgQWJvciBhbHJlYWR5IGV4aXN0cy58ICB8IHwgPGEgbmFtZT1cXFwiOTEyXFxcIj45MTI8L2E+fENhbm5vdCBhZGQgZGVjaXNpb24gdG8gU3RhZ2VkIE1vZGlmaWNhdGlvbi58ICB8IHwgPGEgbmFtZT1cXFwiOTEzXFxcIj45MTM8L2E+fFRoZSBTdGFnZWQgTW9kaWZpY2F0aW9uIGNvdWxkIG5vdCBiZSBhcHBsaWVkLnwgIHwgfCA8YSBuYW1lPVxcXCI5MTRcXFwiPjkxNDwvYT58QWN0aW9uIGNhbm5vdCBiZSBleGVjdXRlZC58ICB8IHwgPGEgbmFtZT1cXFwiOTE1XFxcIj45MTU8L2E+fENhbm5vdCB1cHNlcnQgbXVsdGlwbGUgdmVyc2lvbnMgb2YgdGhlIHNhbWUgcHJvcGVydHkgaW4gb25lIHJlcXVlc3QufCAgfCB8IDxhIG5hbWU9XFxcIjkxNlxcXCI+OTE2PC9hPnxQbGFjZW1lbnQgYW5kIGRpcmVjdCBkZXNjZW5kZW50cyBoYXZlIG1vcmUgZXhlY3V0ZWQgcXVhbnRpdHkgdGhhbiB0b3RhbCBwbGFjZW1lbnQgcXVhbnRpdHkufCAgfCB8IDxhIG5hbWU9XFxcIjkxN1xcXCI+OTE3PC9hPnxDYW5ub3QgdXBkYXRlIGEgcGxhY2VtZW50IHdpdGggdGhpcyBFbnRyeVR5cGUufCAgfCB8IDxhIG5hbWU9XFxcIjkxOFxcXCI+OTE4PC9hPnxDYW5ub3QgdXBkYXRlIGEgcGxhY2VtZW50IGluIHRoaXMgU3RhdGUufCAgfCB8IDxhIG5hbWU9XFxcIjkxOVxcXCI+OTE5PC9hPnxQbGFjZW1lbnQgY291bGQgbm90IGJlIGNhbmNlbGxlZC58ICB8IHwgPGEgbmFtZT1cXFwiOTIwXFxcIj45MjA8L2E+fFNoYXJlIENsYXNzIG5vdCBjb25maWd1cmVkIGluIEZ1bmR8ICB8IHwgPGEgbmFtZT1cXFwiOTIxXFxcIj45MjE8L2E+fFNoYXJlIENsYXNzIFN1YiBIb2xkaW5nIEtleSBub3QgY29uZmlndXJlZCBpbiBQb3J0Zm9saW98ICB8IHwgPGEgbmFtZT1cXFwiOTIyXFxcIj45MjI8L2E+fENvdWxkIG5vdCB1cGRhdGUgYW4gb3JkZXIufCAgfCB8IDxhIG5hbWU9XFxcIjkyM1xcXCI+OTIzPC9hPnxNdWx0aXBsZSBzZXRzIG9mIFNoYXJlIENsYXNzIFN1YiBIb2xkaW5nIEtleXMgY29uZmlndXJlZCBhY3Jvc3MgdGhlIFBvcnRmb2xpb3Mgb2YgYSBGdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI5MjRcXFwiPjkyNDwvYT58T25lIG9yIG1vcmUgbWF0cml4IGNlbGxzIGNvdWxkIG5vdCBiZSBhZGRlZCB0byB0aGUgbWF0cml4LnwgIHwgfCA8YSBuYW1lPVxcXCI5MjVcXFwiPjkyNTwvYT58VGhlcmUgd2FzIGEgcHJvYmxlbSB3aXRoIHRoZSBwcm92aWRlZCBtYXRyaXggZGVmaW5pdGlvbi58ICB8IHwgPGEgbmFtZT1cXFwiOTI2XFxcIj45MjY8L2E+fE1hdHJpeCBkZWZpbml0aW9uIGRvZXMgbm90IGV4aXN0LnwgIHwgfCA8YSBuYW1lPVxcXCI5MjdcXFwiPjkyNzwvYT58TWF0cml4IGRlZmluaXRpb24gY291bGQgbm90IGJlIGRlbGV0ZWQgYmVjYXVzZSBpdCBkb2VzblxcJ3QgZXhpc3QufCAgfCB8IDxhIG5hbWU9XFxcIjkyOFxcXCI+OTI4PC9hPnxEYXRhVHlwZSB3aXRoIElkIGFscmVhZHkgZXhpc3RzLnwgIHwgfCA8YSBuYW1lPVxcXCI5MjlcXFwiPjkyOTwvYT58U3F1YXJlIG1hdHJpeCBpcyBpbmNvbXBsZXRlLnwgIHwgfCA8YSBuYW1lPVxcXCI5MzBcXFwiPjkzMDwvYT58QSBjb25kaXRpb25hbCBsaWNlbnNlIHRlcm0gaGFzIGJlZW4gZXhjZWVkZWQufCAgfCB8IDxhIG5hbWU9XFxcIjkzMVxcXCI+OTMxPC9hPnxUaGUgQ3VzdG9tIERhdGEgTW9kZWwgcmVxdWVzdGVkIGlzIG5vdCBpbnRlbmRlZCBmb3IgdGhlIGVudGl0eSBwcm92aWRlZC58ICB8IHwgPGEgbmFtZT1cXFwiOTMyXFxcIj45MzI8L2E+fFRoZSBlbnRpdHkgcHJvdmlkZWQgZG9lcyBub3QgaGF2ZSBhIG1hbmRhdG9yeSBwcm9wZXJ0eSBzcGVjaWZpZWQgYnkgdGhlIEN1c3RvbSBEYXRhIE1vZGVsLnwgIHwgfCA8YSBuYW1lPVxcXCI5MzNcXFwiPjkzMzwvYT58VGhlIGVudGl0eSBwcm92aWRlZCBoYXMgYSBwcm9wZXJ0eSBub3QgYWxsb3dlZCBieSB0aGUgc3BlY2lmaWVkIEN1c3RvbSBEYXRhIE1vZGVsLnwgIHwgfCA8YSBuYW1lPVxcXCI5MzRcXFwiPjkzNDwvYT58VGhlIGVudGl0eSBwcm92aWRlZCBkb2VzIG5vdCBoYXZlIGEgbWFuZGF0b3J5IGlkZW50aWZpZXIgc3BlY2lmaWVkIGJ5IHRoZSBDdXN0b20gRGF0YSBNb2RlbC58ICB8IHwgPGEgbmFtZT1cXFwiOTM1XFxcIj45MzU8L2E+fFRoZSBlbnRpdHkgcHJvdmlkZWQgaGFzIGFuIGlkZW50aWZpZXIgbm90IGFsbG93ZWQgYnkgdGhlIHNwZWNpZmllZCBDdXN0b20gRGF0YSBNb2RlbC58ICB8IHwgPGEgbmFtZT1cXFwiOTM2XFxcIj45MzY8L2E+fFRoZSBDdXN0b20gRGF0YSBNb2RlbCBpbmNsdWRlZCBhbiBhbGlhcyBvciBzb3J0LWJ5IGF0dHJpYnV0ZSB0aGF0IHdhcyBub3Qgb24gdGhlIGRlZmluaXRpb24ufCAgfCB8IDxhIG5hbWU9XFxcIjkzN1xcXCI+OTM3PC9hPnxUaGUgQ2xvc2VkUGVyaW9kIHdpdGggdGhlIElkIGFscmVhZHkgZXhpc3RzIG9uIHRoZSBUaW1lbGluZXwgIHwgfCA8YSBuYW1lPVxcXCI5MzhcXFwiPjkzODwvYT58VGhlIG5ldyBDbG9zZWQgUGVyaW9kIHdvdWxkIGNhdXNlIHRoZSBUaW1lbGluZSB0byBoYXZlIG5vbi1jb250aWd1b3VzIENsb3NlZCBQZXJpb2RzfCAgfCB8IDxhIG5hbWU9XFxcIjkzOVxcXCI+OTM5PC9hPnxCbG9ja2VkIGJ5IGEgTmV0d29yayBab25lfCAgfCB8IDxhIG5hbWU9XFxcIjk0MFxcXCI+OTQwPC9hPnxUaGUgZW50aXR5IHByb3ZpZGVkIGRvZXMgbm90IG1lZXQgdGhlIGNvbmRpdGlvbnMgb2YgdGhlIEN1c3RvbSBEYXRhIE1vZGVsLnwgIHwgfCA8YSBuYW1lPVxcXCI5NDFcXFwiPjk0MTwvYT58T3JkZXIgbm90IGNvbXBsaWFudC58ICB8IHwgPGEgbmFtZT1cXFwiOTQyXFxcIj45NDI8L2E+fEFjdGlvbiB3b3VsZCBjcmVhdGUgYSBjaXJjdWxhciBkZXBlbmRlbmN5LnwgIHwgfCA8YSBuYW1lPVxcXCI5NDRcXFwiPjk0NDwvYT58RGVyaXZlZCBQcm9wZXJ0eSBjYWxjdWxhdGlvbiBub3QgY29tcGxldGUufCAgfCB8IDxhIG5hbWU9XFxcIjk0NVxcXCI+OTQ1PC9hPnxEZXJpdmVkIFByb3BlcnR5IGlzIG5vdCBmaWx0ZXJhYmxlLnwgIHwgfCA8YSBuYW1lPVxcXCI5NDZcXFwiPjk0NjwvYT58VGhlIGNvbmRpdGlvbnMgcHJvdmlkZWQgaGF2ZSBvbmUgb3IgbW9yZSBlcnJvcnMufCAgfCB8IDxhIG5hbWU9XFxcIjk0N1xcXCI+OTQ3PC9hPnxUaGUgcHJvcGVydHkvaWRlbnRpZmllciBkb21haW4gYW5kIGVudGl0eSBkb21haW4gZG8gbm90IG1hdGNoLnwgIHwgfCA8YSBuYW1lPVxcXCI5NDhcXFwiPjk0ODwvYT58SW52YWxpZCBUaW1lbGluZXwgIHwgfCA8YSBuYW1lPVxcXCI5NDlcXFwiPjk0OTwvYT58RmlsdGVyYWJsZSBEZXJpdmVkIFByb3BlcnR5IGxpbWl0IHJlYWNoZWQufCAgfCB8IDxhIG5hbWU9XFxcIjk1MFxcXCI+OTUwPC9hPnxJbnZlc3RvciBSZWNvcmQgSWRlbnRpZmllciBBbHJlYWR5IEluIFVzZXwgIHwgfCA8YSBuYW1lPVxcXCI5NTFcXFwiPjk1MTwvYT58SW52ZXN0b3IgUmVjb3JkIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCI5NTJcXFwiPjk1MjwvYT58SW52ZXN0bWVudCBBY2NvdW50IElkZW50aWZpZXIgQWxyZWFkeSBJbiBVc2V8ICB8IHwgPGEgbmFtZT1cXFwiOTUzXFxcIj45NTM8L2E+fEludmVzdG1lbnQgQWNjb3VudCBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiOTU0XFxcIj45NTQ8L2E+fENvdWxkIE5vdCBTd2VlcCBCbG9ja3wgIHwgfCA8YSBuYW1lPVxcXCI5NTVcXFwiPjk1NTwvYT58RW50aXR5IFVuaXF1ZSBJZCBoYXMgdGhlIHdyb25nIGZvcm1hdHwgIHwgfCA8YSBuYW1lPVxcXCI5NTZcXFwiPjk1NjwvYT58UG9zdCBDbG9zZSBBY3Rpdml0eSBpcyBpbnZhbGlkfCAgfCB8IDxhIG5hbWU9XFxcIjk1N1xcXCI+OTU3PC9hPnxUaGUgQ2xvc2VkUGVyaW9kIHdpdGggdGhlIElkIGRvZXMgbm90IGV4aXN0IG9uIHRoZSBUaW1lbGluZXwgIHwgfCA8YSBuYW1lPVxcXCI5NThcXFwiPjk1ODwvYT58SW52YWxpZCBTZXR0bGVtZW50IEluc3RydWN0aW9uc3wgIHwgfCA8YSBuYW1lPVxcXCI5NTlcXFwiPjk1OTwvYT58T3JkZXIgcmVxdWlyZXMgcXVhbnRpdHkufCAgfCB8IDxhIG5hbWU9XFxcIjk2MFxcXCI+OTYwPC9hPnxJbnZhbGlkIERhdGFQb2ludCBWYWx1ZSBBc3NpZ25tZW50fCAgfCB8IDxhIG5hbWU9XFxcIjk2MVxcXCI+OTYxPC9hPnxJbnZhbGlkIFJlbGF0aW9uYWwgRGF0YXNldCBGaWVsZCBEZWZpbml0aW9ufCAgfCB8IDxhIG5hbWU9XFxcIjk2MlxcXCI+OTYyPC9hPnxSZWxhdGlvbmFsIERhdGFzZXQgRGVmaW5pdGlvbiBEb2VzIE5vdCBFeGlzdHwgIHwgfCA8YSBuYW1lPVxcXCI5NjNcXFwiPjk2MzwvYT58VGltZWxpbmUgQm9va21hcmsgTm90IEluIE9wZW4gUGVyaW9kfCAgfCB8IDxhIG5hbWU9XFxcIjk2NFxcXCI+OTY0PC9hPnxUaGUgQ3VzdG9tIERhdGEgTW9kZWwgc3BlY2lmaWVkIGlkZW50aWZpZXJzIGJ1dCB0aGUgZW50aXR5IGRvZXMgbm90IHN1cHBvcnQgaWRlbnRpZmllcnN8ICB8IHwgPGEgbmFtZT1cXFwiOTY1XFxcIj45NjU8L2E+fFRoZSBzb3J0IGJ5IHByb3ZpZGVkIGhhcyBvbmUgb3IgbW9yZSBlcnJvcnN8ICB8IHwgPGEgbmFtZT1cXFwiOTY2XFxcIj45NjY8L2E+fEludmFsaWQgQ3VzdG9tIERhdGEgTW9kZWwgRGVmaW5pdGlvbnwgIHwgfCA8YSBuYW1lPVxcXCI5NjdcXFwiPjk2NzwvYT58UnVsZSBzZXQgZG9lcyBub3QgZXhpc3Qgb24gdGhlIENoZWNrIERlZmluaXRpb258ICB8IHwgPGEgbmFtZT1cXFwiOTY4XFxcIj45Njg8L2E+fFRoZSBDbG9zZWQgUGVyaW9kIGlzIGludmFsaWR8ICB8IHwgPGEgbmFtZT1cXFwiOTY5XFxcIj45Njk8L2E+fENhbm5vdCB1cGRhdGUgYSBwbGFjZW1lbnQgd2l0aCB0aGlzIFN0b3AgUHJpY2UufCAgfCB8IDxhIG5hbWU9XFxcIjk3MFxcXCI+OTcwPC9hPnxDYW5ub3QgdXBkYXRlIGEgcGxhY2VtZW50IHdpdGggdGhpcyBMaW1pdCBQcmljZS58ICB8IHwgPGEgbmFtZT1cXFwiOTcxXFxcIj45NzE8L2E+fENhbm5vdCB1cGRhdGUgYSBwbGFjZW1lbnQgd2l0aCB0aGUgY3VycmVudCBUeXBlLnwgIHwgfCA8YSBuYW1lPVxcXCI5NzRcXFwiPjk3NDwvYT58Q2Fubm90IFBsYWNlQmxvY2tzIGFnYWluc3QgYW4gXFwnVW5zb2xpY2l0ZWRcXCcgQmxvY2sgKGJsb2NrIGNvbnRhaW5pbmcgMCBPcmRlcnMpLnwgIHwgfCA8YSBuYW1lPVxcXCI5NzVcXFwiPjk3NTwvYT58Tm8gUG9ydGZvbGlvIEdyb3VwIFNlbGVjdGVkfCAgfCB8IDxhIG5hbWU9XFxcIjk3NlxcXCI+OTc2PC9hPnxBbWJpZ3VvdXMgU2NvcGV8ICB8IFxuICpcbiAqIENvbnRhY3Q6IGluZm9AZmluYm91cm5lLmNvbVxuICpcbiAqIE5PVEU6IFRoaXMgY2xhc3MgaXMgYXV0byBnZW5lcmF0ZWQgYnkgT3BlbkFQSSBHZW5lcmF0b3IgKGh0dHBzOi8vb3BlbmFwaS1nZW5lcmF0b3IudGVjaCkuXG4gKiBodHRwczovL29wZW5hcGktZ2VuZXJhdG9yLnRlY2hcbiAqIERvIG5vdCBlZGl0IHRoZSBjbGFzcyBtYW51YWxseS5cbiAqL1xuaW1wb3J0IHsgQ2FzaEVsZWN0aW9uIH0gZnJvbSAnLi9jYXNoRWxlY3Rpb24nO1xuaW1wb3J0IHsgSW5zdHJ1bWVudEV2ZW50IH0gZnJvbSAnLi9pbnN0cnVtZW50RXZlbnQnO1xuXG5cbi8qKlxuICogQSBjYXBpdGFsIGRpc3RyaWJ1dGlvbiBwYWlkIG91dCB0byBzaGFyZWhvbGRlcnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2FwaXRhbERpc3RyaWJ1dGlvbkV2ZW50IGV4dGVuZHMgSW5zdHJ1bWVudEV2ZW50IHsgXG4gICAgLyoqXG4gICAgICogRGF0ZSBvbiB3aGljaCB0aGUgZGl2aWRlbmQgd2FzIGFubm91bmNlZCAvIGRlY2xhcmVkLlxuICAgICAqL1xuICAgIGFubm91bmNlbWVudERhdGU/OiBzdHJpbmcgfCBudWxsO1xuICAgIC8qKlxuICAgICAqIFBvc3NpYmxlIGVsZWN0aW9ucyBmb3IgdGhpcyBldmVudCwgZWFjaCBrZXllZCB3aXRoIGEgdW5pcXVlIGlkZW50aWZpZXIuXG4gICAgICovXG4gICAgY2FzaEVsZWN0aW9uczogQXJyYXk8Q2FzaEVsZWN0aW9uPjtcbiAgICAvKipcbiAgICAgKiBUaGUgZmlyc3QgYnVzaW5lc3MgZGF5IG9uIHdoaWNoIHRoZSBkaXZpZGVuZCBpcyBub3Qgb3dlZCB0byB0aGUgYnV5aW5nIHBhcnR5LlxuICAgICAqL1xuICAgIGV4RGF0ZT86IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBUaGUgZGF0ZSB0aGUgY29tcGFueSBiZWdpbnMgZGlzdHJpYnV0aW5nIHRoZSBkaXZpZGVuZC5cbiAgICAgKi9cbiAgICBwYXltZW50RGF0ZT86IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBEYXRlIHlvdSBoYXZlIHRvIGJlIHRoZSBob2xkZXIgb2YgcmVjb3JkIGluIG9yZGVyIHRvIHBhcnRpY2lwYXRlIGluIHRoZSB0ZW5kZXIuXG4gICAgICovXG4gICAgcmVjb3JkRGF0ZT86IHN0cmluZyB8IG51bGw7XG4gICAgLyoqXG4gICAgICogVGhlIFR5cGUgb2YgRXZlbnQuIEF2YWlsYWJsZSB2YWx1ZXM6IFRyYW5zaXRpb25FdmVudCwgSW5mb3JtYXRpb25hbEV2ZW50LCBPcGVuRXZlbnQsIENsb3NlRXZlbnQsIFN0b2NrU3BsaXRFdmVudCwgQm9uZERlZmF1bHRFdmVudCwgQ2FzaERpdmlkZW5kRXZlbnQsIEFtb3J0aXNhdGlvbkV2ZW50LCBDYXNoRmxvd0V2ZW50LCBFeGVyY2lzZUV2ZW50LCBSZXNldEV2ZW50LCBUcmlnZ2VyRXZlbnQsIFJhd1ZlbmRvckV2ZW50LCBJbmZvcm1hdGlvbmFsRXJyb3JFdmVudCwgQm9uZENvdXBvbkV2ZW50LCBEaXZpZGVuZFJlaW52ZXN0bWVudEV2ZW50LCBBY2N1bXVsYXRpb25FdmVudCwgQm9uZFByaW5jaXBhbEV2ZW50LCBEaXZpZGVuZE9wdGlvbkV2ZW50LCBNYXR1cml0eUV2ZW50LCBGeEZvcndhcmRTZXR0bGVtZW50RXZlbnQsIEV4cGlyeUV2ZW50LCBTY3JpcERpdmlkZW5kRXZlbnQsIFN0b2NrRGl2aWRlbmRFdmVudCwgUmV2ZXJzZVN0b2NrU3BsaXRFdmVudCwgQ2FwaXRhbERpc3RyaWJ1dGlvbkV2ZW50LCBTcGluT2ZmRXZlbnQsIE1lcmdlckV2ZW50LCBGdXR1cmVFeHBpcnlFdmVudCwgU3dhcENhc2hGbG93RXZlbnQsIFN3YXBQcmluY2lwYWxFdmVudCwgQ3JlZGl0UHJlbWl1bUNhc2hGbG93RXZlbnQsIENkc0NyZWRpdEV2ZW50LCBDZHhDcmVkaXRFdmVudCwgTWJzQ291cG9uRXZlbnQsIE1ic1ByaW5jaXBhbEV2ZW50LCBCb251c0lzc3VlRXZlbnQsIE1ic1ByaW5jaXBhbFdyaXRlT2ZmRXZlbnQsIE1ic0ludGVyZXN0RGVmZXJyYWxFdmVudCwgTWJzSW50ZXJlc3RTaG9ydGZhbGxFdmVudCwgVGVuZGVyRXZlbnQsIENhbGxPbkludGVybWVkaWF0ZVNlY3VyaXRpZXNFdmVudCwgSW50ZXJtZWRpYXRlU2VjdXJpdGllc0Rpc3RyaWJ1dGlvbkV2ZW50LCBPcHRpb25FeGVyY2lzZVBoeXNpY2FsRXZlbnQsIE9wdGlvbkV4ZXJjaXNlQ2FzaEV2ZW50LCBQcm90ZWN0aW9uUGF5b3V0Q2FzaEZsb3dFdmVudCwgVGVybURlcG9zaXRJbnRlcmVzdEV2ZW50LCBUZXJtRGVwb3NpdFByaW5jaXBhbEV2ZW50LCBFYXJseVJlZGVtcHRpb25FdmVudCwgRnV0dXJlTWFya1RvTWFya2V0RXZlbnQsIEFkanVzdEdsb2JhbENvbW1pdG1lbnRFdmVudCwgQ29udHJhY3RJbml0aWFsaXNhdGlvbkV2ZW50LCBEcmF3ZG93bkV2ZW50LCBMb2FuSW50ZXJlc3RSZXBheW1lbnRFdmVudCwgVXBkYXRlRGVwb3NpdEFtb3VudEV2ZW50LCBMb2FuUHJpbmNpcGFsUmVwYXltZW50RXZlbnQsIERlcG9zaXRJbnRlcmVzdFBheW1lbnRFdmVudCwgRGVwb3NpdENsb3NlRXZlbnQsIExvYW5GYWNpbGl0eUNvbnRyYWN0Um9sbG92ZXJFdmVudCwgUmVwdXJjaGFzZU9mZmVyRXZlbnQsIFJlcG9QYXJ0aWFsQ2xvc3VyZUV2ZW50LCBSZXBvQ2FzaEZsb3dFdmVudCwgRmxleGlibGVSZXBvSW50ZXJlc3RQYXltZW50RXZlbnQsIEZsZXhpYmxlUmVwb0Nhc2hGbG93RXZlbnQsIEZsZXhpYmxlUmVwb0NvbGxhdGVyYWxFdmVudCwgQ29udmVyc2lvbkV2ZW50LCBGbGV4aWJsZVJlcG9QYXJ0aWFsQ2xvc3VyZUV2ZW50LCBGbGV4aWJsZVJlcG9GdWxsQ2xvc3VyZUV2ZW50LCBDYXBsZXRGbG9vcmxldENhc2hGbG93RXZlbnQsIEVhcmx5Q2xvc2VPdXRFdmVudCwgRGVwb3NpdFJvbGxFdmVudCwgQ29uc2VudEV2ZW50LCBEcmF3aW5nRXZlbnQsIENhcGl0YWxHYWluc0Rpc3RyaWJ1dGlvbkV2ZW50LCBFeGNoYW5nZU9mZmVyRXZlbnQsIER1dGNoQXVjdGlvbkV2ZW50LCBXb3J0aGxlc3NFdmVudCwgUHV0UmVkZW1wdGlvbkV2ZW50LCBMb2FuRmFjaWxpdHlEZWxheWVkQ29tcGVuc2F0aW9uUGF5bWVudEV2ZW50LCBJbnRlcmVzdFBheW1lbnRFdmVudCwgUHJpb3JpdHlJc3N1ZUV2ZW50LCBDbGFzc0FjdGlvbkV2ZW50LCBCYW5rcnVwdGN5RXZlbnQsIExpcXVpZGF0aW9uUGF5bWVudEV2ZW50LCBQYXJ0aWFsRGVmZWFzYW5jZUV2ZW50LCBTZWN1cml0eVdyaXRlT2ZmRXZlbnQsIFdhcnJhbnRzRXhlcmNpc2VFdmVudCwgUGFyaVBhc3N1RXZlbnQsIENoYW5nZUV2ZW50LCBQaWtCb25kQ291cG9uRXZlbnQsIFBpa0JvbmRDYXNoQ291cG9uRXZlbnQsIFBpa0JvbmRJbnRlcmVzdENhcGl0YWxpc2F0aW9uRXZlbnQsIFBpa0JvbmRQcmluY2lwYWxFdmVudCwgRGVsaXN0aW5nRXZlbnQsIFBpa0JvbmRJbnRlcmVzdEV2ZW50LCBDb21tb2RpdHlGb3J3YXJkQ2FzaFNldHRsZW1lbnRFdmVudCwgUGF5bWVudEluS2luZEV2ZW50LCBDb21tb2RpdHlGb3J3YXJkUGh5c2ljYWxTZXR0bGVtZW50RXZlbnQsIENhbmNlbFN3YXBFdmVudCwgQm9uZE9wdGlvblRlcm1pbmF0aW9uRXZlbnQsIFRlcm1pbmF0aW9uRXZlbnQsIENvbW1vZGl0eUNhbGVuZGFyU3dhcENhc2hGbG93RXZlbnQsIERlcG9zaXRTd2VlcEV2ZW50LCBCb25kRm9yd2FyZENhc2hTZXR0bGVtZW50RXZlbnQsIEJvbmRGb3J3YXJkVGVybWluYXRpb25FdmVudCwgQW1lbmRDb21taXRtZW50RXZlbnQsIENhcGl0YWxDYWxsRXZlbnQsIEZ1bmREaXN0cmlidXRpb25FdmVudCwgTmF2UmVwb3J0RXZlbnQsIERpdmlkZW5kU3VzcGVuc2lvbkV2ZW50LCBMb2FuSW50ZXJlc3RDYXBpdGFsaXNhdGlvbkV2ZW50LlxuICAgICAqL1xuICAgIGluc3RydW1lbnRFdmVudFR5cGU6IENhcGl0YWxEaXN0cmlidXRpb25FdmVudC5JbnN0cnVtZW50RXZlbnRUeXBlRW51bTtcbn1cbmV4cG9ydCBuYW1lc3BhY2UgQ2FwaXRhbERpc3RyaWJ1dGlvbkV2ZW50IHtcbiAgICBleHBvcnQgdHlwZSBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSA9ICdUcmFuc2l0aW9uRXZlbnQnIHwgJ0luZm9ybWF0aW9uYWxFdmVudCcgfCAnT3BlbkV2ZW50JyB8ICdDbG9zZUV2ZW50JyB8ICdTdG9ja1NwbGl0RXZlbnQnIHwgJ0JvbmREZWZhdWx0RXZlbnQnIHwgJ0Nhc2hEaXZpZGVuZEV2ZW50JyB8ICdBbW9ydGlzYXRpb25FdmVudCcgfCAnQ2FzaEZsb3dFdmVudCcgfCAnRXhlcmNpc2VFdmVudCcgfCAnUmVzZXRFdmVudCcgfCAnVHJpZ2dlckV2ZW50JyB8ICdSYXdWZW5kb3JFdmVudCcgfCAnSW5mb3JtYXRpb25hbEVycm9yRXZlbnQnIHwgJ0JvbmRDb3Vwb25FdmVudCcgfCAnRGl2aWRlbmRSZWludmVzdG1lbnRFdmVudCcgfCAnQWNjdW11bGF0aW9uRXZlbnQnIHwgJ0JvbmRQcmluY2lwYWxFdmVudCcgfCAnRGl2aWRlbmRPcHRpb25FdmVudCcgfCAnTWF0dXJpdHlFdmVudCcgfCAnRnhGb3J3YXJkU2V0dGxlbWVudEV2ZW50JyB8ICdFeHBpcnlFdmVudCcgfCAnU2NyaXBEaXZpZGVuZEV2ZW50JyB8ICdTdG9ja0RpdmlkZW5kRXZlbnQnIHwgJ1JldmVyc2VTdG9ja1NwbGl0RXZlbnQnIHwgJ0NhcGl0YWxEaXN0cmlidXRpb25FdmVudCcgfCAnU3Bpbk9mZkV2ZW50JyB8ICdNZXJnZXJFdmVudCcgfCAnRnV0dXJlRXhwaXJ5RXZlbnQnIHwgJ1N3YXBDYXNoRmxvd0V2ZW50JyB8ICdTd2FwUHJpbmNpcGFsRXZlbnQnIHwgJ0NyZWRpdFByZW1pdW1DYXNoRmxvd0V2ZW50JyB8ICdDZHNDcmVkaXRFdmVudCcgfCAnQ2R4Q3JlZGl0RXZlbnQnIHwgJ01ic0NvdXBvbkV2ZW50JyB8ICdNYnNQcmluY2lwYWxFdmVudCcgfCAnQm9udXNJc3N1ZUV2ZW50JyB8ICdNYnNQcmluY2lwYWxXcml0ZU9mZkV2ZW50JyB8ICdNYnNJbnRlcmVzdERlZmVycmFsRXZlbnQnIHwgJ01ic0ludGVyZXN0U2hvcnRmYWxsRXZlbnQnIHwgJ1RlbmRlckV2ZW50JyB8ICdDYWxsT25JbnRlcm1lZGlhdGVTZWN1cml0aWVzRXZlbnQnIHwgJ0ludGVybWVkaWF0ZVNlY3VyaXRpZXNEaXN0cmlidXRpb25FdmVudCcgfCAnT3B0aW9uRXhlcmNpc2VQaHlzaWNhbEV2ZW50JyB8ICdPcHRpb25FeGVyY2lzZUNhc2hFdmVudCcgfCAnUHJvdGVjdGlvblBheW91dENhc2hGbG93RXZlbnQnIHwgJ1Rlcm1EZXBvc2l0SW50ZXJlc3RFdmVudCcgfCAnVGVybURlcG9zaXRQcmluY2lwYWxFdmVudCcgfCAnRWFybHlSZWRlbXB0aW9uRXZlbnQnIHwgJ0Z1dHVyZU1hcmtUb01hcmtldEV2ZW50JyB8ICdBZGp1c3RHbG9iYWxDb21taXRtZW50RXZlbnQnIHwgJ0NvbnRyYWN0SW5pdGlhbGlzYXRpb25FdmVudCcgfCAnRHJhd2Rvd25FdmVudCcgfCAnTG9hbkludGVyZXN0UmVwYXltZW50RXZlbnQnIHwgJ1VwZGF0ZURlcG9zaXRBbW91bnRFdmVudCcgfCAnTG9hblByaW5jaXBhbFJlcGF5bWVudEV2ZW50JyB8ICdEZXBvc2l0SW50ZXJlc3RQYXltZW50RXZlbnQnIHwgJ0RlcG9zaXRDbG9zZUV2ZW50JyB8ICdMb2FuRmFjaWxpdHlDb250cmFjdFJvbGxvdmVyRXZlbnQnIHwgJ1JlcHVyY2hhc2VPZmZlckV2ZW50JyB8ICdSZXBvUGFydGlhbENsb3N1cmVFdmVudCcgfCAnUmVwb0Nhc2hGbG93RXZlbnQnIHwgJ0ZsZXhpYmxlUmVwb0ludGVyZXN0UGF5bWVudEV2ZW50JyB8ICdGbGV4aWJsZVJlcG9DYXNoRmxvd0V2ZW50JyB8ICdGbGV4aWJsZVJlcG9Db2xsYXRlcmFsRXZlbnQnIHwgJ0NvbnZlcnNpb25FdmVudCcgfCAnRmxleGlibGVSZXBvUGFydGlhbENsb3N1cmVFdmVudCcgfCAnRmxleGlibGVSZXBvRnVsbENsb3N1cmVFdmVudCcgfCAnQ2FwbGV0Rmxvb3JsZXRDYXNoRmxvd0V2ZW50JyB8ICdFYXJseUNsb3NlT3V0RXZlbnQnIHwgJ0RlcG9zaXRSb2xsRXZlbnQnIHwgJ0NvbnNlbnRFdmVudCcgfCAnRHJhd2luZ0V2ZW50JyB8ICdDYXBpdGFsR2FpbnNEaXN0cmlidXRpb25FdmVudCcgfCAnRXhjaGFuZ2VPZmZlckV2ZW50JyB8ICdEdXRjaEF1Y3Rpb25FdmVudCcgfCAnV29ydGhsZXNzRXZlbnQnIHwgJ1B1dFJlZGVtcHRpb25FdmVudCcgfCAnTG9hbkZhY2lsaXR5RGVsYXllZENvbXBlbnNhdGlvblBheW1lbnRFdmVudCcgfCAnSW50ZXJlc3RQYXltZW50RXZlbnQnIHwgJ1ByaW9yaXR5SXNzdWVFdmVudCcgfCAnQ2xhc3NBY3Rpb25FdmVudCcgfCAnQmFua3J1cHRjeUV2ZW50JyB8ICdMaXF1aWRhdGlvblBheW1lbnRFdmVudCcgfCAnUGFydGlhbERlZmVhc2FuY2VFdmVudCcgfCAnU2VjdXJpdHlXcml0ZU9mZkV2ZW50JyB8ICdXYXJyYW50c0V4ZXJjaXNlRXZlbnQnIHwgJ1BhcmlQYXNzdUV2ZW50JyB8ICdDaGFuZ2VFdmVudCcgfCAnUGlrQm9uZENvdXBvbkV2ZW50JyB8ICdQaWtCb25kQ2FzaENvdXBvbkV2ZW50JyB8ICdQaWtCb25kSW50ZXJlc3RDYXBpdGFsaXNhdGlvbkV2ZW50JyB8ICdQaWtCb25kUHJpbmNpcGFsRXZlbnQnIHwgJ0RlbGlzdGluZ0V2ZW50JyB8ICdQaWtCb25kSW50ZXJlc3RFdmVudCcgfCAnQ29tbW9kaXR5Rm9yd2FyZENhc2hTZXR0bGVtZW50RXZlbnQnIHwgJ1BheW1lbnRJbktpbmRFdmVudCcgfCAnQ29tbW9kaXR5Rm9yd2FyZFBoeXNpY2FsU2V0dGxlbWVudEV2ZW50JyB8ICdDYW5jZWxTd2FwRXZlbnQnIHwgJ0JvbmRPcHRpb25UZXJtaW5hdGlvbkV2ZW50JyB8ICdUZXJtaW5hdGlvbkV2ZW50JyB8ICdDb21tb2RpdHlDYWxlbmRhclN3YXBDYXNoRmxvd0V2ZW50JyB8ICdEZXBvc2l0U3dlZXBFdmVudCcgfCAnQm9uZEZvcndhcmRDYXNoU2V0dGxlbWVudEV2ZW50JyB8ICdCb25kRm9yd2FyZFRlcm1pbmF0aW9uRXZlbnQnIHwgJ0FtZW5kQ29tbWl0bWVudEV2ZW50JyB8ICdDYXBpdGFsQ2FsbEV2ZW50JyB8ICdGdW5kRGlzdHJpYnV0aW9uRXZlbnQnIHwgJ05hdlJlcG9ydEV2ZW50JyB8ICdEaXZpZGVuZFN1c3BlbnNpb25FdmVudCcgfCAnTG9hbkludGVyZXN0Q2FwaXRhbGlzYXRpb25FdmVudCc7XG4gICAgZXhwb3J0IGNvbnN0IEluc3RydW1lbnRFdmVudFR5cGVFbnVtID0ge1xuICAgICAgICBUcmFuc2l0aW9uRXZlbnQ6ICdUcmFuc2l0aW9uRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBJbmZvcm1hdGlvbmFsRXZlbnQ6ICdJbmZvcm1hdGlvbmFsRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBPcGVuRXZlbnQ6ICdPcGVuRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBDbG9zZUV2ZW50OiAnQ2xvc2VFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFN0b2NrU3BsaXRFdmVudDogJ1N0b2NrU3BsaXRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEJvbmREZWZhdWx0RXZlbnQ6ICdCb25kRGVmYXVsdEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQ2FzaERpdmlkZW5kRXZlbnQ6ICdDYXNoRGl2aWRlbmRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEFtb3J0aXNhdGlvbkV2ZW50OiAnQW1vcnRpc2F0aW9uRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBDYXNoRmxvd0V2ZW50OiAnQ2FzaEZsb3dFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEV4ZXJjaXNlRXZlbnQ6ICdFeGVyY2lzZUV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgUmVzZXRFdmVudDogJ1Jlc2V0RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBUcmlnZ2VyRXZlbnQ6ICdUcmlnZ2VyRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBSYXdWZW5kb3JFdmVudDogJ1Jhd1ZlbmRvckV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgSW5mb3JtYXRpb25hbEVycm9yRXZlbnQ6ICdJbmZvcm1hdGlvbmFsRXJyb3JFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEJvbmRDb3Vwb25FdmVudDogJ0JvbmRDb3Vwb25FdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIERpdmlkZW5kUmVpbnZlc3RtZW50RXZlbnQ6ICdEaXZpZGVuZFJlaW52ZXN0bWVudEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQWNjdW11bGF0aW9uRXZlbnQ6ICdBY2N1bXVsYXRpb25FdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEJvbmRQcmluY2lwYWxFdmVudDogJ0JvbmRQcmluY2lwYWxFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIERpdmlkZW5kT3B0aW9uRXZlbnQ6ICdEaXZpZGVuZE9wdGlvbkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgTWF0dXJpdHlFdmVudDogJ01hdHVyaXR5RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBGeEZvcndhcmRTZXR0bGVtZW50RXZlbnQ6ICdGeEZvcndhcmRTZXR0bGVtZW50RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBFeHBpcnlFdmVudDogJ0V4cGlyeUV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgU2NyaXBEaXZpZGVuZEV2ZW50OiAnU2NyaXBEaXZpZGVuZEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgU3RvY2tEaXZpZGVuZEV2ZW50OiAnU3RvY2tEaXZpZGVuZEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgUmV2ZXJzZVN0b2NrU3BsaXRFdmVudDogJ1JldmVyc2VTdG9ja1NwbGl0RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBDYXBpdGFsRGlzdHJpYnV0aW9uRXZlbnQ6ICdDYXBpdGFsRGlzdHJpYnV0aW9uRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBTcGluT2ZmRXZlbnQ6ICdTcGluT2ZmRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBNZXJnZXJFdmVudDogJ01lcmdlckV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgRnV0dXJlRXhwaXJ5RXZlbnQ6ICdGdXR1cmVFeHBpcnlFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFN3YXBDYXNoRmxvd0V2ZW50OiAnU3dhcENhc2hGbG93RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBTd2FwUHJpbmNpcGFsRXZlbnQ6ICdTd2FwUHJpbmNpcGFsRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBDcmVkaXRQcmVtaXVtQ2FzaEZsb3dFdmVudDogJ0NyZWRpdFByZW1pdW1DYXNoRmxvd0V2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQ2RzQ3JlZGl0RXZlbnQ6ICdDZHNDcmVkaXRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIENkeENyZWRpdEV2ZW50OiAnQ2R4Q3JlZGl0RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBNYnNDb3Vwb25FdmVudDogJ01ic0NvdXBvbkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgTWJzUHJpbmNpcGFsRXZlbnQ6ICdNYnNQcmluY2lwYWxFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEJvbnVzSXNzdWVFdmVudDogJ0JvbnVzSXNzdWVFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIE1ic1ByaW5jaXBhbFdyaXRlT2ZmRXZlbnQ6ICdNYnNQcmluY2lwYWxXcml0ZU9mZkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgTWJzSW50ZXJlc3REZWZlcnJhbEV2ZW50OiAnTWJzSW50ZXJlc3REZWZlcnJhbEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgTWJzSW50ZXJlc3RTaG9ydGZhbGxFdmVudDogJ01ic0ludGVyZXN0U2hvcnRmYWxsRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBUZW5kZXJFdmVudDogJ1RlbmRlckV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQ2FsbE9uSW50ZXJtZWRpYXRlU2VjdXJpdGllc0V2ZW50OiAnQ2FsbE9uSW50ZXJtZWRpYXRlU2VjdXJpdGllc0V2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgSW50ZXJtZWRpYXRlU2VjdXJpdGllc0Rpc3RyaWJ1dGlvbkV2ZW50OiAnSW50ZXJtZWRpYXRlU2VjdXJpdGllc0Rpc3RyaWJ1dGlvbkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgT3B0aW9uRXhlcmNpc2VQaHlzaWNhbEV2ZW50OiAnT3B0aW9uRXhlcmNpc2VQaHlzaWNhbEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgT3B0aW9uRXhlcmNpc2VDYXNoRXZlbnQ6ICdPcHRpb25FeGVyY2lzZUNhc2hFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFByb3RlY3Rpb25QYXlvdXRDYXNoRmxvd0V2ZW50OiAnUHJvdGVjdGlvblBheW91dENhc2hGbG93RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBUZXJtRGVwb3NpdEludGVyZXN0RXZlbnQ6ICdUZXJtRGVwb3NpdEludGVyZXN0RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBUZXJtRGVwb3NpdFByaW5jaXBhbEV2ZW50OiAnVGVybURlcG9zaXRQcmluY2lwYWxFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEVhcmx5UmVkZW1wdGlvbkV2ZW50OiAnRWFybHlSZWRlbXB0aW9uRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBGdXR1cmVNYXJrVG9NYXJrZXRFdmVudDogJ0Z1dHVyZU1hcmtUb01hcmtldEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQWRqdXN0R2xvYmFsQ29tbWl0bWVudEV2ZW50OiAnQWRqdXN0R2xvYmFsQ29tbWl0bWVudEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQ29udHJhY3RJbml0aWFsaXNhdGlvbkV2ZW50OiAnQ29udHJhY3RJbml0aWFsaXNhdGlvbkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgRHJhd2Rvd25FdmVudDogJ0RyYXdkb3duRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBMb2FuSW50ZXJlc3RSZXBheW1lbnRFdmVudDogJ0xvYW5JbnRlcmVzdFJlcGF5bWVudEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgVXBkYXRlRGVwb3NpdEFtb3VudEV2ZW50OiAnVXBkYXRlRGVwb3NpdEFtb3VudEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgTG9hblByaW5jaXBhbFJlcGF5bWVudEV2ZW50OiAnTG9hblByaW5jaXBhbFJlcGF5bWVudEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgRGVwb3NpdEludGVyZXN0UGF5bWVudEV2ZW50OiAnRGVwb3NpdEludGVyZXN0UGF5bWVudEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgRGVwb3NpdENsb3NlRXZlbnQ6ICdEZXBvc2l0Q2xvc2VFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIExvYW5GYWNpbGl0eUNvbnRyYWN0Um9sbG92ZXJFdmVudDogJ0xvYW5GYWNpbGl0eUNvbnRyYWN0Um9sbG92ZXJFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFJlcHVyY2hhc2VPZmZlckV2ZW50OiAnUmVwdXJjaGFzZU9mZmVyRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBSZXBvUGFydGlhbENsb3N1cmVFdmVudDogJ1JlcG9QYXJ0aWFsQ2xvc3VyZUV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgUmVwb0Nhc2hGbG93RXZlbnQ6ICdSZXBvQ2FzaEZsb3dFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEZsZXhpYmxlUmVwb0ludGVyZXN0UGF5bWVudEV2ZW50OiAnRmxleGlibGVSZXBvSW50ZXJlc3RQYXltZW50RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBGbGV4aWJsZVJlcG9DYXNoRmxvd0V2ZW50OiAnRmxleGlibGVSZXBvQ2FzaEZsb3dFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEZsZXhpYmxlUmVwb0NvbGxhdGVyYWxFdmVudDogJ0ZsZXhpYmxlUmVwb0NvbGxhdGVyYWxFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIENvbnZlcnNpb25FdmVudDogJ0NvbnZlcnNpb25FdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEZsZXhpYmxlUmVwb1BhcnRpYWxDbG9zdXJlRXZlbnQ6ICdGbGV4aWJsZVJlcG9QYXJ0aWFsQ2xvc3VyZUV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgRmxleGlibGVSZXBvRnVsbENsb3N1cmVFdmVudDogJ0ZsZXhpYmxlUmVwb0Z1bGxDbG9zdXJlRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBDYXBsZXRGbG9vcmxldENhc2hGbG93RXZlbnQ6ICdDYXBsZXRGbG9vcmxldENhc2hGbG93RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBFYXJseUNsb3NlT3V0RXZlbnQ6ICdFYXJseUNsb3NlT3V0RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBEZXBvc2l0Um9sbEV2ZW50OiAnRGVwb3NpdFJvbGxFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIENvbnNlbnRFdmVudDogJ0NvbnNlbnRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIERyYXdpbmdFdmVudDogJ0RyYXdpbmdFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIENhcGl0YWxHYWluc0Rpc3RyaWJ1dGlvbkV2ZW50OiAnQ2FwaXRhbEdhaW5zRGlzdHJpYnV0aW9uRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBFeGNoYW5nZU9mZmVyRXZlbnQ6ICdFeGNoYW5nZU9mZmVyRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBEdXRjaEF1Y3Rpb25FdmVudDogJ0R1dGNoQXVjdGlvbkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgV29ydGhsZXNzRXZlbnQ6ICdXb3J0aGxlc3NFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFB1dFJlZGVtcHRpb25FdmVudDogJ1B1dFJlZGVtcHRpb25FdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIExvYW5GYWNpbGl0eURlbGF5ZWRDb21wZW5zYXRpb25QYXltZW50RXZlbnQ6ICdMb2FuRmFjaWxpdHlEZWxheWVkQ29tcGVuc2F0aW9uUGF5bWVudEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgSW50ZXJlc3RQYXltZW50RXZlbnQ6ICdJbnRlcmVzdFBheW1lbnRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFByaW9yaXR5SXNzdWVFdmVudDogJ1ByaW9yaXR5SXNzdWVFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIENsYXNzQWN0aW9uRXZlbnQ6ICdDbGFzc0FjdGlvbkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQmFua3J1cHRjeUV2ZW50OiAnQmFua3J1cHRjeUV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgTGlxdWlkYXRpb25QYXltZW50RXZlbnQ6ICdMaXF1aWRhdGlvblBheW1lbnRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFBhcnRpYWxEZWZlYXNhbmNlRXZlbnQ6ICdQYXJ0aWFsRGVmZWFzYW5jZUV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgU2VjdXJpdHlXcml0ZU9mZkV2ZW50OiAnU2VjdXJpdHlXcml0ZU9mZkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgV2FycmFudHNFeGVyY2lzZUV2ZW50OiAnV2FycmFudHNFeGVyY2lzZUV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgUGFyaVBhc3N1RXZlbnQ6ICdQYXJpUGFzc3VFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIENoYW5nZUV2ZW50OiAnQ2hhbmdlRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBQaWtCb25kQ291cG9uRXZlbnQ6ICdQaWtCb25kQ291cG9uRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBQaWtCb25kQ2FzaENvdXBvbkV2ZW50OiAnUGlrQm9uZENhc2hDb3Vwb25FdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFBpa0JvbmRJbnRlcmVzdENhcGl0YWxpc2F0aW9uRXZlbnQ6ICdQaWtCb25kSW50ZXJlc3RDYXBpdGFsaXNhdGlvbkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgUGlrQm9uZFByaW5jaXBhbEV2ZW50OiAnUGlrQm9uZFByaW5jaXBhbEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgRGVsaXN0aW5nRXZlbnQ6ICdEZWxpc3RpbmdFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFBpa0JvbmRJbnRlcmVzdEV2ZW50OiAnUGlrQm9uZEludGVyZXN0RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBDb21tb2RpdHlGb3J3YXJkQ2FzaFNldHRsZW1lbnRFdmVudDogJ0NvbW1vZGl0eUZvcndhcmRDYXNoU2V0dGxlbWVudEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgUGF5bWVudEluS2luZEV2ZW50OiAnUGF5bWVudEluS2luZEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQ29tbW9kaXR5Rm9yd2FyZFBoeXNpY2FsU2V0dGxlbWVudEV2ZW50OiAnQ29tbW9kaXR5Rm9yd2FyZFBoeXNpY2FsU2V0dGxlbWVudEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQ2FuY2VsU3dhcEV2ZW50OiAnQ2FuY2VsU3dhcEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQm9uZE9wdGlvblRlcm1pbmF0aW9uRXZlbnQ6ICdCb25kT3B0aW9uVGVybWluYXRpb25FdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFRlcm1pbmF0aW9uRXZlbnQ6ICdUZXJtaW5hdGlvbkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQ29tbW9kaXR5Q2FsZW5kYXJTd2FwQ2FzaEZsb3dFdmVudDogJ0NvbW1vZGl0eUNhbGVuZGFyU3dhcENhc2hGbG93RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBEZXBvc2l0U3dlZXBFdmVudDogJ0RlcG9zaXRTd2VlcEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQm9uZEZvcndhcmRDYXNoU2V0dGxlbWVudEV2ZW50OiAnQm9uZEZvcndhcmRDYXNoU2V0dGxlbWVudEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQm9uZEZvcndhcmRUZXJtaW5hdGlvbkV2ZW50OiAnQm9uZEZvcndhcmRUZXJtaW5hdGlvbkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQW1lbmRDb21taXRtZW50RXZlbnQ6ICdBbWVuZENvbW1pdG1lbnRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIENhcGl0YWxDYWxsRXZlbnQ6ICdDYXBpdGFsQ2FsbEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgRnVuZERpc3RyaWJ1dGlvbkV2ZW50OiAnRnVuZERpc3RyaWJ1dGlvbkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgTmF2UmVwb3J0RXZlbnQ6ICdOYXZSZXBvcnRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIERpdmlkZW5kU3VzcGVuc2lvbkV2ZW50OiAnRGl2aWRlbmRTdXNwZW5zaW9uRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBMb2FuSW50ZXJlc3RDYXBpdGFsaXNhdGlvbkV2ZW50OiAnTG9hbkludGVyZXN0Q2FwaXRhbGlzYXRpb25FdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW1cbiAgICB9O1xufVxuXG5cbiJdfQ==
118
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FwaXRhbERpc3RyaWJ1dGlvbkV2ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmluYm91cm5lL2x1c2lkLXNkay1hbmd1bGFyMTgvc3JjL2xpYi8uZ2VuZXJhdGVkL21vZGVsL2NhcGl0YWxEaXN0cmlidXRpb25FdmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyQ0EsTUFBTSxLQUFXLHdCQUF3QixDQW9IeEM7QUFwSEQsV0FBaUIsd0JBQXdCO0lBRXhCLGdEQUF1QixHQUFHO1FBQ25DLGVBQWUsRUFBRSxpQkFBNEM7UUFDN0Qsa0JBQWtCLEVBQUUsb0JBQStDO1FBQ25FLFNBQVMsRUFBRSxXQUFzQztRQUNqRCxVQUFVLEVBQUUsWUFBdUM7UUFDbkQsZUFBZSxFQUFFLGlCQUE0QztRQUM3RCxnQkFBZ0IsRUFBRSxrQkFBNkM7UUFDL0QsaUJBQWlCLEVBQUUsbUJBQThDO1FBQ2pFLGlCQUFpQixFQUFFLG1CQUE4QztRQUNqRSxhQUFhLEVBQUUsZUFBMEM7UUFDekQsYUFBYSxFQUFFLGVBQTBDO1FBQ3pELFVBQVUsRUFBRSxZQUF1QztRQUNuRCxZQUFZLEVBQUUsY0FBeUM7UUFDdkQsY0FBYyxFQUFFLGdCQUEyQztRQUMzRCx1QkFBdUIsRUFBRSx5QkFBb0Q7UUFDN0UsZUFBZSxFQUFFLGlCQUE0QztRQUM3RCx5QkFBeUIsRUFBRSwyQkFBc0Q7UUFDakYsaUJBQWlCLEVBQUUsbUJBQThDO1FBQ2pFLGtCQUFrQixFQUFFLG9CQUErQztRQUNuRSxtQkFBbUIsRUFBRSxxQkFBZ0Q7UUFDckUsYUFBYSxFQUFFLGVBQTBDO1FBQ3pELHdCQUF3QixFQUFFLDBCQUFxRDtRQUMvRSxXQUFXLEVBQUUsYUFBd0M7UUFDckQsa0JBQWtCLEVBQUUsb0JBQStDO1FBQ25FLGtCQUFrQixFQUFFLG9CQUErQztRQUNuRSxzQkFBc0IsRUFBRSx3QkFBbUQ7UUFDM0Usd0JBQXdCLEVBQUUsMEJBQXFEO1FBQy9FLFlBQVksRUFBRSxjQUF5QztRQUN2RCxXQUFXLEVBQUUsYUFBd0M7UUFDckQsaUJBQWlCLEVBQUUsbUJBQThDO1FBQ2pFLGlCQUFpQixFQUFFLG1CQUE4QztRQUNqRSxrQkFBa0IsRUFBRSxvQkFBK0M7UUFDbkUsMEJBQTBCLEVBQUUsNEJBQXVEO1FBQ25GLGNBQWMsRUFBRSxnQkFBMkM7UUFDM0QsY0FBYyxFQUFFLGdCQUEyQztRQUMzRCxjQUFjLEVBQUUsZ0JBQTJDO1FBQzNELGlCQUFpQixFQUFFLG1CQUE4QztRQUNqRSxlQUFlLEVBQUUsaUJBQTRDO1FBQzdELHlCQUF5QixFQUFFLDJCQUFzRDtRQUNqRix3QkFBd0IsRUFBRSwwQkFBcUQ7UUFDL0UseUJBQXlCLEVBQUUsMkJBQXNEO1FBQ2pGLFdBQVcsRUFBRSxhQUF3QztRQUNyRCxpQ0FBaUMsRUFBRSxtQ0FBOEQ7UUFDakcsdUNBQXVDLEVBQUUseUNBQW9FO1FBQzdHLDJCQUEyQixFQUFFLDZCQUF3RDtRQUNyRix1QkFBdUIsRUFBRSx5QkFBb0Q7UUFDN0UsNkJBQTZCLEVBQUUsK0JBQTBEO1FBQ3pGLHdCQUF3QixFQUFFLDBCQUFxRDtRQUMvRSx5QkFBeUIsRUFBRSwyQkFBc0Q7UUFDakYsb0JBQW9CLEVBQUUsc0JBQWlEO1FBQ3ZFLHVCQUF1QixFQUFFLHlCQUFvRDtRQUM3RSwyQkFBMkIsRUFBRSw2QkFBd0Q7UUFDckYsMkJBQTJCLEVBQUUsNkJBQXdEO1FBQ3JGLGFBQWEsRUFBRSxlQUEwQztRQUN6RCwwQkFBMEIsRUFBRSw0QkFBdUQ7UUFDbkYsd0JBQXdCLEVBQUUsMEJBQXFEO1FBQy9FLDJCQUEyQixFQUFFLDZCQUF3RDtRQUNyRiwyQkFBMkIsRUFBRSw2QkFBd0Q7UUFDckYsaUJBQWlCLEVBQUUsbUJBQThDO1FBQ2pFLGlDQUFpQyxFQUFFLG1DQUE4RDtRQUNqRyxvQkFBb0IsRUFBRSxzQkFBaUQ7UUFDdkUsdUJBQXVCLEVBQUUseUJBQW9EO1FBQzdFLGlCQUFpQixFQUFFLG1CQUE4QztRQUNqRSxnQ0FBZ0MsRUFBRSxrQ0FBNkQ7UUFDL0YseUJBQXlCLEVBQUUsMkJBQXNEO1FBQ2pGLDJCQUEyQixFQUFFLDZCQUF3RDtRQUNyRixlQUFlLEVBQUUsaUJBQTRDO1FBQzdELCtCQUErQixFQUFFLGlDQUE0RDtRQUM3Riw0QkFBNEIsRUFBRSw4QkFBeUQ7UUFDdkYsMkJBQTJCLEVBQUUsNkJBQXdEO1FBQ3JGLGtCQUFrQixFQUFFLG9CQUErQztRQUNuRSxnQkFBZ0IsRUFBRSxrQkFBNkM7UUFDL0QsWUFBWSxFQUFFLGNBQXlDO1FBQ3ZELFlBQVksRUFBRSxjQUF5QztRQUN2RCw2QkFBNkIsRUFBRSwrQkFBMEQ7UUFDekYsa0JBQWtCLEVBQUUsb0JBQStDO1FBQ25FLGlCQUFpQixFQUFFLG1CQUE4QztRQUNqRSxjQUFjLEVBQUUsZ0JBQTJDO1FBQzNELGtCQUFrQixFQUFFLG9CQUErQztRQUNuRSwyQ0FBMkMsRUFBRSw2Q0FBd0U7UUFDckgsb0JBQW9CLEVBQUUsc0JBQWlEO1FBQ3ZFLGtCQUFrQixFQUFFLG9CQUErQztRQUNuRSxnQkFBZ0IsRUFBRSxrQkFBNkM7UUFDL0QsZUFBZSxFQUFFLGlCQUE0QztRQUM3RCx1QkFBdUIsRUFBRSx5QkFBb0Q7UUFDN0Usc0JBQXNCLEVBQUUsd0JBQW1EO1FBQzNFLHFCQUFxQixFQUFFLHVCQUFrRDtRQUN6RSxxQkFBcUIsRUFBRSx1QkFBa0Q7UUFDekUsY0FBYyxFQUFFLGdCQUEyQztRQUMzRCxXQUFXLEVBQUUsYUFBd0M7UUFDckQsa0JBQWtCLEVBQUUsb0JBQStDO1FBQ25FLHNCQUFzQixFQUFFLHdCQUFtRDtRQUMzRSxrQ0FBa0MsRUFBRSxvQ0FBK0Q7UUFDbkcscUJBQXFCLEVBQUUsdUJBQWtEO1FBQ3pFLGNBQWMsRUFBRSxnQkFBMkM7UUFDM0Qsb0JBQW9CLEVBQUUsc0JBQWlEO1FBQ3ZFLG1DQUFtQyxFQUFFLHFDQUFnRTtRQUNyRyxrQkFBa0IsRUFBRSxvQkFBK0M7UUFDbkUsdUNBQXVDLEVBQUUseUNBQW9FO1FBQzdHLGVBQWUsRUFBRSxpQkFBNEM7UUFDN0QsMEJBQTBCLEVBQUUsNEJBQXVEO1FBQ25GLGdCQUFnQixFQUFFLGtCQUE2QztRQUMvRCxrQ0FBa0MsRUFBRSxvQ0FBK0Q7UUFDbkcsaUJBQWlCLEVBQUUsbUJBQThDO1FBQ2pFLDhCQUE4QixFQUFFLGdDQUEyRDtRQUMzRiwyQkFBMkIsRUFBRSw2QkFBd0Q7UUFDckYsb0JBQW9CLEVBQUUsc0JBQWlEO1FBQ3ZFLGdCQUFnQixFQUFFLGtCQUE2QztRQUMvRCxxQkFBcUIsRUFBRSx1QkFBa0Q7UUFDekUsY0FBYyxFQUFFLGdCQUEyQztRQUMzRCx1QkFBdUIsRUFBRSx5QkFBb0Q7UUFDN0UsK0JBQStCLEVBQUUsaUNBQTREO1FBQzdGLDRCQUE0QixFQUFFLDhCQUF5RDtLQUMxRixDQUFDO0FBQ04sQ0FBQyxFQXBIZ0Isd0JBQXdCLEtBQXhCLHdCQUF3QixRQW9IeEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIExVU0lEIEFQSVxuICogIyBJbnRyb2R1Y3Rpb24gIFRoaXMgcGFnZSBkb2N1bWVudHMgdGhlIFtMVVNJRCBBUElzXSguLi8uLi8uLi9hcGkvc3dhZ2dlciksIHdoaWNoIGFsbG93cyBhdXRob3Jpc2VkIGNsaWVudHMgdG8gcXVlcnkgYW5kIHVwZGF0ZSB0aGVpciBkYXRhIHdpdGhpbiB0aGUgTFVTSUQgcGxhdGZvcm0uICBTREtzIHRvIGludGVyYWN0IHdpdGggdGhlIExVU0lEIEFQSXMgYXJlIGF2YWlsYWJsZSBpbiB0aGUgZm9sbG93aW5nIGxhbmd1YWdlcyBhbmQgZnJhbWV3b3JrczogICogW0MjXShodHRwczovL2dpdGh1Yi5jb20vZmluYm91cm5lL2x1c2lkLXNkay1jc2hhcnApICogW0phdmFdKGh0dHBzOi8vZ2l0aHViLmNvbS9maW5ib3VybmUvbHVzaWQtc2RrLWphdmEpICogW0phdmFTY3JpcHRdKGh0dHBzOi8vZ2l0aHViLmNvbS9maW5ib3VybmUvbHVzaWQtc2RrLWpzKSAqIFtQeXRob25dKGh0dHBzOi8vZ2l0aHViLmNvbS9maW5ib3VybmUvbHVzaWQtc2RrLXB5dGhvbikgKiBbQW5ndWxhcl0oaHR0cHM6Ly9naXRodWIuY29tL2ZpbmJvdXJuZS9sdXNpZC1zZGstYW5ndWxhcikgIFRoZSBMVVNJRCBwbGF0Zm9ybSBpcyBtYWRlIHVwIG9mIGEgbnVtYmVyIG9mIHN1Yi1hcHBsaWNhdGlvbnMuIFlvdSBjYW4gZmluZCB0aGUgQVBJIC8gc3dhZ2dlciBkb2N1bWVudGF0aW9uIGJ5IGZvbGxvd2luZyB0aGUgbGlua3MgaW4gdGhlIHRhYmxlIGJlbG93LiAgIHwgQXBwbGljYXRpb24gICB8IERlc2NyaXB0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IEFQSSAvIFN3YWdnZXIgRG9jdW1lbnRhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgfCB8LS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLXwgfCBMVVNJRCAgICAgICAgIHwgT3BlbiwgQVBJLWZpcnN0LCBkZXZlbG9wZXItZnJpZW5kbHkgaW52ZXN0bWVudCBkYXRhIHBsYXRmb3JtLiAgICAgICAgICAgICAgICAgICAgIHwgW1N3YWdnZXJdKC4uLy4uLy4uL2FwaS9zd2FnZ2VyL2luZGV4Lmh0bWwpICAgICAgICAgICB8IHwgV2ViIGFwcCAgICAgICB8IFVzZXItZmFjaW5nIGZyb250IGVuZCBmb3IgTFVTSUQuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFtTd2FnZ2VyXSguLi8uLi8uLi9hcHAvc3dhZ2dlci9pbmRleC5odG1sKSAgICAgICAgICAgfCB8IFNjaGVkdWxlciAgICAgfCBBdXRvbWF0ZWQgam9iIHNjaGVkdWxlci4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbU3dhZ2dlcl0oLi4vLi4vLi4vc2NoZWR1bGVyMi9zd2FnZ2VyL2luZGV4Lmh0bWwpICAgIHwgfCBJbnNpZ2h0cyAgICAgIHwgTW9uaXRvcmluZyBhbmQgdHJvdWJsZXNob290aW5nIHNlcnZpY2UuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW1N3YWdnZXJdKC4uLy4uLy4uL2luc2lnaHRzL3N3YWdnZXIvaW5kZXguaHRtbCkgICAgICB8IHwgSWRlbnRpdHkgICAgICB8IElkZW50aXR5IG1hbmFnZW1lbnQgZm9yIExVU0lEIChpbiBjb25qdW5jdGlvbiB3aXRoIEFjY2VzcykgICAgICAgICAgICAgICAgICAgICAgICB8IFtTd2FnZ2VyXSguLi8uLi8uLi9pZGVudGl0eS9zd2FnZ2VyL2luZGV4Lmh0bWwpICAgICAgfCB8IEFjY2VzcyAgICAgICAgfCBBY2Nlc3MgY29udHJvbCBmb3IgTFVTSUQgKGluIGNvbmp1bmN0aW9uIHdpdGggSWRlbnRpdHkpICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbU3dhZ2dlcl0oLi4vLi4vLi4vYWNjZXNzL3N3YWdnZXIvaW5kZXguaHRtbCkgICAgICAgIHwgfCBEcml2ZSAgICAgICAgIHwgU2VjdXJlIGZpbGUgcmVwb3NpdG9yeSBhbmQgbWFuYWdlciBmb3IgY29sbGFib3JhdGlvbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW1N3YWdnZXJdKC4uLy4uLy4uL2RyaXZlL3N3YWdnZXIvaW5kZXguaHRtbCkgICAgICAgICB8IHwgTHVtaW5lc2NlICAgICB8IERhdGEgdmlydHVhbGlzYXRpb24gc2VydmljZSAocXVlcnkgZGF0YSBmcm9tIG11bHRpcGxlIHByb3ZpZGVycywgaW5jbHVkaW5nIExVU0lEKSB8IFtTd2FnZ2VyXSguLi8uLi8uLi9ob25leWNvbWIvc3dhZ2dlci9pbmRleC5odG1sKSAgICAgfCB8IE5vdGlmaWNhdGlvbiAgfCBOb3RpZmljYXRpb24gc2VydmljZS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbU3dhZ2dlcl0oLi4vLi4vLi4vbm90aWZpY2F0aW9uL3N3YWdnZXIvaW5kZXguaHRtbCkgIHwgfCBDb25maWd1cmF0aW9uIHwgRmlsZSBzdG9yZSBmb3Igc2VjcmV0cyBhbmQgb3RoZXIgc2Vuc2l0aXZlIGluZm9ybWF0aW9uLiAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW1N3YWdnZXJdKC4uLy4uLy4uL2NvbmZpZ3VyYXRpb24vc3dhZ2dlci9pbmRleC5odG1sKSB8IHwgV29ya2Zsb3cgICAgICB8IFdvcmtmbG93IHNlcnZpY2UuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFtTd2FnZ2VyXSguLi8uLi8uLi93b3JrZmxvdy9zd2FnZ2VyL2luZGV4Lmh0bWwpICAgICAgfCAgICMgRXJyb3IgQ29kZXMgIHwgQ29kZXxOYW1lfERlc2NyaXB0aW9uIHwgfCAtLS18LS0tfC0tLSB8IHwgPGEgbmFtZT1cXFwiLTEwXFxcIj4tMTA8L2E+fFNlcnZlciBDb25maWd1cmF0aW9uIEVycm9yfCAgfCB8IDxhIG5hbWU9XFxcIi0xXFxcIj4tMTwvYT58VW5rbm93biBlcnJvcnxBbiB1bmV4cGVjdGVkIGVycm9yIHdhcyBlbmNvdW50ZXJlZCBvbiBvdXIgc2lkZS4gfCB8IDxhIG5hbWU9XFxcIjEwMlxcXCI+MTAyPC9hPnxWZXJzaW9uIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCIxMDNcXFwiPjEwMzwvYT58QXBpIFJhdGUgTGltaXQgVmlvbGF0aW9ufCAgfCB8IDxhIG5hbWU9XFxcIjEwNFxcXCI+MTA0PC9hPnxJbnN0cnVtZW50IE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCIxMDVcXFwiPjEwNTwvYT58UHJvcGVydHkgTm90IEZvdW5kfCAgfCB8IDxhIG5hbWU9XFxcIjEwNlxcXCI+MTA2PC9hPnxQb3J0Zm9saW8gUmVjdXJzaW9uIERlcHRofCAgfCB8IDxhIG5hbWU9XFxcIjEwOFxcXCI+MTA4PC9hPnxHcm91cCBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiMTA5XFxcIj4xMDk8L2E+fFBvcnRmb2xpbyBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiMTEwXFxcIj4xMTA8L2E+fFByb3BlcnR5IFNjaGVtYSBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiMTExXFxcIj4xMTE8L2E+fFBvcnRmb2xpbyBBbmNlc3RyeSBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiMTEyXFxcIj4xMTI8L2E+fFBvcnRmb2xpbyBXaXRoIElkIEFscmVhZHkgRXhpc3RzfCAgfCB8IDxhIG5hbWU9XFxcIjExM1xcXCI+MTEzPC9hPnxPcnBoYW5lZCBQb3J0Zm9saW98ICB8IHwgPGEgbmFtZT1cXFwiMTE5XFxcIj4xMTk8L2E+fE1pc3NpbmcgQmFzZSBDbGFpbXN8ICB8IHwgPGEgbmFtZT1cXFwiMTIxXFxcIj4xMjE8L2E+fFByb3BlcnR5IE5vdCBEZWZpbmVkfCAgfCB8IDxhIG5hbWU9XFxcIjEyMlxcXCI+MTIyPC9hPnxDYW5ub3QgRGVsZXRlIFN5c3RlbSBQcm9wZXJ0eXwgIHwgfCA8YSBuYW1lPVxcXCIxMjNcXFwiPjEyMzwvYT58Q2Fubm90IE1vZGlmeSBJbW11dGFibGUgUHJvcGVydHkgRmllbGR8ICB8IHwgPGEgbmFtZT1cXFwiMTI0XFxcIj4xMjQ8L2E+fFByb3BlcnR5IEFscmVhZHkgRXhpc3RzfCAgfCB8IDxhIG5hbWU9XFxcIjEyNVxcXCI+MTI1PC9hPnxJbnZhbGlkIFByb3BlcnR5IExpZmUgVGltZXwgIHwgfCA8YSBuYW1lPVxcXCIxMjZcXFwiPjEyNjwvYT58UHJvcGVydHkgQ29uc3RyYWludCBTdHlsZSBFeGNsdWRlcyBQcm9wZXJ0aWVzfCAgfCB8IDxhIG5hbWU9XFxcIjEyN1xcXCI+MTI3PC9hPnxDYW5ub3QgTW9kaWZ5IERlZmF1bHQgRGF0YSBUeXBlfCAgfCB8IDxhIG5hbWU9XFxcIjEyOFxcXCI+MTI4PC9hPnxHcm91cCBBbHJlYWR5IEV4aXN0c3wgIHwgfCA8YSBuYW1lPVxcXCIxMjlcXFwiPjEyOTwvYT58Tm8gU3VjaCBEYXRhIFR5cGV8ICB8IHwgPGEgbmFtZT1cXFwiMTMwXFxcIj4xMzA8L2E+fFVuZGVmaW5lZCBWYWx1ZSBGb3IgRGF0YSBUeXBlfCAgfCB8IDxhIG5hbWU9XFxcIjEzMVxcXCI+MTMxPC9hPnxVbnN1cHBvcnRlZCBWYWx1ZSBUeXBlIERlZmluZWQgT24gRGF0YSBUeXBlfCAgfCB8IDxhIG5hbWU9XFxcIjEzMlxcXCI+MTMyPC9hPnxWYWxpZGF0aW9uIEVycm9yfCAgfCB8IDxhIG5hbWU9XFxcIjEzM1xcXCI+MTMzPC9hPnxMb29wIERldGVjdGVkIEluIEdyb3VwIEhpZXJhcmNoeXwgIHwgfCA8YSBuYW1lPVxcXCIxMzRcXFwiPjEzNDwvYT58VW5kZWZpbmVkIEFjY2VwdGFibGUgVmFsdWVzfCAgfCB8IDxhIG5hbWU9XFxcIjEzNVxcXCI+MTM1PC9hPnxTdWIgR3JvdXAgQWxyZWFkeSBFeGlzdHN8ICB8IHwgPGEgbmFtZT1cXFwiMTM4XFxcIj4xMzg8L2E+fFByaWNlIFNvdXJjZSBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiMTM5XFxcIj4xMzk8L2E+fEFuYWx5dGljIFN0b3JlIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCIxNDFcXFwiPjE0MTwvYT58QW5hbHl0aWMgU3RvcmUgQWxyZWFkeSBFeGlzdHN8ICB8IHwgPGEgbmFtZT1cXFwiMTQzXFxcIj4xNDM8L2E+fENsaWVudCBJbnN0cnVtZW50IEFscmVhZHkgRXhpc3RzfCAgfCB8IDxhIG5hbWU9XFxcIjE0NFxcXCI+MTQ0PC9hPnxEdXBsaWNhdGUgSW4gUGFyYW1ldGVyIFNldHwgIHwgfCA8YSBuYW1lPVxcXCIxNDdcXFwiPjE0NzwvYT58UmVzdWx0cyBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiMTQ4XFxcIj4xNDg8L2E+fE9yZGVyIEZpZWxkIE5vdCBJbiBSZXN1bHQgU2V0fCAgfCB8IDxhIG5hbWU9XFxcIjE0OVxcXCI+MTQ5PC9hPnxPcGVyYXRpb24gRmFpbGVkfCAgfCB8IDxhIG5hbWU9XFxcIjE1MFxcXCI+MTUwPC9hPnxFbGFzdGljIFNlYXJjaCBFcnJvcnwgIHwgfCA8YSBuYW1lPVxcXCIxNTFcXFwiPjE1MTwvYT58SW52YWxpZCBQYXJhbWV0ZXIgVmFsdWV8ICB8IHwgPGEgbmFtZT1cXFwiMTUzXFxcIj4xNTM8L2E+fENvbW1hbmQgUHJvY2Vzc2luZyBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjE1NFxcXCI+MTU0PC9hPnxFbnRpdHkgU3RhdGUgQ29uc3RydWN0aW9uIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMTU1XFxcIj4xNTU8L2E+fEVudGl0eSBUaW1lbGluZSBEb2VzIE5vdCBFeGlzdHwgIHwgfCA8YSBuYW1lPVxcXCIxNTZcXFwiPjE1NjwvYT58Q29uY3VycmVuY3kgQ29uZmxpY3QgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIxNTdcXFwiPjE1NzwvYT58SW52YWxpZCBSZXF1ZXN0fCAgfCB8IDxhIG5hbWU9XFxcIjE1OFxcXCI+MTU4PC9hPnxFdmVudCBQdWJsaXNoIFVua25vd258ICB8IHwgPGEgbmFtZT1cXFwiMTU5XFxcIj4xNTk8L2E+fEV2ZW50IFF1ZXJ5IEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMTYwXFxcIj4xNjA8L2E+fEJsb2IgRGlkIE5vdCBFeGlzdHwgIHwgfCA8YSBuYW1lPVxcXCIxNjJcXFwiPjE2MjwvYT58U3ViIFN5c3RlbSBSZXF1ZXN0IEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMTYzXFxcIj4xNjM8L2E+fFN1YiBTeXN0ZW0gQ29uZmlndXJhdGlvbiBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjE2NVxcXCI+MTY1PC9hPnxGYWlsZWQgVG8gRGVsZXRlfCAgfCB8IDxhIG5hbWU9XFxcIjE2NlxcXCI+MTY2PC9hPnxVcHNlcnQgQ2xpZW50IEluc3RydW1lbnQgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIxNjdcXFwiPjE2NzwvYT58SWxsZWdhbCBBcyBBdCBJbnRlcnZhbHwgIHwgfCA8YSBuYW1lPVxcXCIxNjhcXFwiPjE2ODwvYT58SWxsZWdhbCBCaXRlbXBvcmFsIFF1ZXJ5fCAgfCB8IDxhIG5hbWU9XFxcIjE2OVxcXCI+MTY5PC9hPnxJbnZhbGlkIEFsdGVybmF0ZSBJZHwgIHwgfCA8YSBuYW1lPVxcXCIxNzBcXFwiPjE3MDwvYT58Q2Fubm90IEFkZCBOb24tV3JpdGFibGUgUHJvcGVydGllcyBUbyBFbnRpdHl8ICB8IHwgPGEgbmFtZT1cXFwiMTcxXFxcIj4xNzE8L2E+fEVudGl0eSBBbHJlYWR5IEV4aXN0cyBJbiBHcm91cHwgIHwgfCA8YSBuYW1lPVxcXCIxNzJcXFwiPjE3MjwvYT58RW50aXR5IFdpdGggSWQgRG9lcyBOb3QgRXhpc3R8ICB8IHwgPGEgbmFtZT1cXFwiMTczXFxcIj4xNzM8L2E+fEVudGl0eSBXaXRoIElkIEFscmVhZHkgRXhpc3RzfCAgfCB8IDxhIG5hbWU9XFxcIjE3NFxcXCI+MTc0PC9hPnxEZXJpdmVkIFBvcnRmb2xpbyBEZXRhaWxzIERvIE5vdCBFeGlzdHwgIHwgfCA8YSBuYW1lPVxcXCIxNzVcXFwiPjE3NTwvYT58RW50aXR5IE5vdCBJbiBHcm91cHwgIHwgfCA8YSBuYW1lPVxcXCIxNzZcXFwiPjE3NjwvYT58UG9ydGZvbGlvIFdpdGggTmFtZSBBbHJlYWR5IEV4aXN0c3wgIHwgfCA8YSBuYW1lPVxcXCIxNzdcXFwiPjE3NzwvYT58SW52YWxpZCBUcmFuc2FjdGlvbnN8ICB8IHwgPGEgbmFtZT1cXFwiMTc4XFxcIj4xNzg8L2E+fFJlZmVyZW5jZSBQb3J0Zm9saW8gTm90IEZvdW5kfCAgfCB8IDxhIG5hbWU9XFxcIjE3OVxcXCI+MTc5PC9hPnxEdXBsaWNhdGUgSWR8ICB8IHwgPGEgbmFtZT1cXFwiMTgwXFxcIj4xODA8L2E+fENvbW1hbmQgUmV0cmlldmFsIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMTgxXFxcIj4xODE8L2E+fERhdGEgRmlsdGVyIEFwcGxpY2F0aW9uIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMTgyXFxcIj4xODI8L2E+fFNlYXJjaCBGYWlsZWR8ICB8IHwgPGEgbmFtZT1cXFwiMTgzXFxcIj4xODM8L2E+fE1vdmVtZW50cyBFbmdpbmUgQ29uZmlndXJhdGlvbiBLZXkgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIxODRcXFwiPjE4NDwvYT58RnggUmF0ZSBTb3VyY2UgTm90IEZvdW5kfCAgfCB8IDxhIG5hbWU9XFxcIjE4NVxcXCI+MTg1PC9hPnxBY2NydWFsIFNvdXJjZSBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiMTg2XFxcIj4xODY8L2E+fEFjY2VzcyBEZW5pZWR8ICB8IHwgPGEgbmFtZT1cXFwiMTg3XFxcIj4xODc8L2E+fEludmFsaWQgSWRlbnRpdHkgVG9rZW58ICB8IHwgPGEgbmFtZT1cXFwiMTg4XFxcIj4xODg8L2E+fEludmFsaWQgUmVxdWVzdCBIZWFkZXJzfCAgfCB8IDxhIG5hbWU9XFxcIjE4OVxcXCI+MTg5PC9hPnxQcmljZSBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiMTkwXFxcIj4xOTA8L2E+fEludmFsaWQgU3ViIEhvbGRpbmcgS2V5cyBQcm92aWRlZHwgIHwgfCA8YSBuYW1lPVxcXCIxOTFcXFwiPjE5MTwvYT58RHVwbGljYXRlIFN1YiBIb2xkaW5nIEtleXMgUHJvdmlkZWR8ICB8IHwgPGEgbmFtZT1cXFwiMTkyXFxcIj4xOTI8L2E+fEN1dCBEZWZpbml0aW9uIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCIxOTNcXFwiPjE5MzwvYT58Q3V0IERlZmluaXRpb24gSW52YWxpZHwgIHwgfCA8YSBuYW1lPVxcXCIxOTRcXFwiPjE5NDwvYT58VGltZSBWYXJpYW50IFByb3BlcnR5IERlbGV0aW9uIERhdGUgVW5zcGVjaWZpZWR8ICB8IHwgPGEgbmFtZT1cXFwiMTk1XFxcIj4xOTU8L2E+fFBlcnBldHVhbCBQcm9wZXJ0eSBEZWxldGlvbiBEYXRlIFNwZWNpZmllZHwgIHwgfCA8YSBuYW1lPVxcXCIxOTZcXFwiPjE5NjwvYT58VGltZSBWYXJpYW50IFByb3BlcnR5IFVwc2VydCBEYXRlIFVuc3BlY2lmaWVkfCAgfCB8IDxhIG5hbWU9XFxcIjE5N1xcXCI+MTk3PC9hPnxQZXJwZXR1YWwgUHJvcGVydHkgVXBzZXJ0IERhdGUgU3BlY2lmaWVkfCAgfCB8IDxhIG5hbWU9XFxcIjIwMFxcXCI+MjAwPC9hPnxJbnZhbGlkIFVuaXQgRm9yIERhdGEgVHlwZXwgIHwgfCA8YSBuYW1lPVxcXCIyMDFcXFwiPjIwMTwvYT58SW52YWxpZCBUeXBlIEZvciBEYXRhIFR5cGV8ICB8IHwgPGEgbmFtZT1cXFwiMjAyXFxcIj4yMDI8L2E+fEludmFsaWQgVmFsdWUgRm9yIERhdGEgVHlwZXwgIHwgfCA8YSBuYW1lPVxcXCIyMDNcXFwiPjIwMzwvYT58VW5pdCBOb3QgRGVmaW5lZCBGb3IgRGF0YSBUeXBlfCAgfCB8IDxhIG5hbWU9XFxcIjIwNFxcXCI+MjA0PC9hPnxVbml0cyBOb3QgU3VwcG9ydGVkIE9uIERhdGEgVHlwZXwgIHwgfCA8YSBuYW1lPVxcXCIyMDVcXFwiPjIwNTwvYT58Q2Fubm90IFNwZWNpZnkgVW5pdHMgT24gRGF0YSBUeXBlfCAgfCB8IDxhIG5hbWU9XFxcIjIwNlxcXCI+MjA2PC9hPnxVbml0IFNjaGVtYSBJbmNvbnNpc3RlbnQgV2l0aCBEYXRhIFR5cGV8ICB8IHwgPGEgbmFtZT1cXFwiMjA3XFxcIj4yMDc8L2E+fFVuaXQgRGVmaW5pdGlvbiBOb3QgU3BlY2lmaWVkfCAgfCB8IDxhIG5hbWU9XFxcIjIwOFxcXCI+MjA4PC9hPnxEdXBsaWNhdGUgVW5pdCBEZWZpbml0aW9ucyBTcGVjaWZpZWR8ICB8IHwgPGEgbmFtZT1cXFwiMjA5XFxcIj4yMDk8L2E+fEludmFsaWQgVW5pdHMgRGVmaW5pdGlvbnwgIHwgfCA8YSBuYW1lPVxcXCIyMTBcXFwiPjIxMDwvYT58SW52YWxpZCBJbnN0cnVtZW50IElkZW50aWZpZXIgVW5pdHwgIHwgfCA8YSBuYW1lPVxcXCIyMTFcXFwiPjIxMTwvYT58SG9sZGluZ3MgQWRqdXN0bWVudCBEb2VzIE5vdCBFeGlzdHwgIHwgfCA8YSBuYW1lPVxcXCIyMTJcXFwiPjIxMjwvYT58Q291bGQgTm90IEJ1aWxkIEV4Y2VsIFVybHwgIHwgfCA8YSBuYW1lPVxcXCIyMTNcXFwiPjIxMzwvYT58Q291bGQgTm90IEdldCBFeGNlbCBWZXJzaW9ufCAgfCB8IDxhIG5hbWU9XFxcIjIxNFxcXCI+MjE0PC9hPnxJbnN0cnVtZW50IEJ5IENvZGUgTm90IEZvdW5kfCAgfCB8IDxhIG5hbWU9XFxcIjIxNVxcXCI+MjE1PC9hPnxFbnRpdHkgU2NoZW1hIERvZXMgTm90IEV4aXN0fCAgfCB8IDxhIG5hbWU9XFxcIjIxNlxcXCI+MjE2PC9hPnxGZWF0dXJlIE5vdCBTdXBwb3J0ZWQgT24gUG9ydGZvbGlvIFR5cGV8ICB8IHwgPGEgbmFtZT1cXFwiMjE3XFxcIj4yMTc8L2E+fFF1b3RlIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCIyMThcXFwiPjIxODwvYT58SW52YWxpZCBRdW90ZSBJZGVudGlmaWVyfCAgfCB8IDxhIG5hbWU9XFxcIjIxOVxcXCI+MjE5PC9hPnxJbnZhbGlkIE1ldHJpYyBGb3IgRGF0YSBUeXBlfCAgfCB8IDxhIG5hbWU9XFxcIjIyMFxcXCI+MjIwPC9hPnxJbnZhbGlkIEluc3RydW1lbnQgRGVmaW5pdGlvbnwgIHwgfCA8YSBuYW1lPVxcXCIyMjFcXFwiPjIyMTwvYT58SW5zdHJ1bWVudCBVcHNlcnQgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIyMjJcXFwiPjIyMjwvYT58UmVmZXJlbmNlIFBvcnRmb2xpbyBSZXF1ZXN0IE5vdCBTdXBwb3J0ZWR8ICB8IHwgPGEgbmFtZT1cXFwiMjIzXFxcIj4yMjM8L2E+fFRyYW5zYWN0aW9uIFBvcnRmb2xpbyBSZXF1ZXN0IE5vdCBTdXBwb3J0ZWR8ICB8IHwgPGEgbmFtZT1cXFwiMjI0XFxcIj4yMjQ8L2E+fEludmFsaWQgUHJvcGVydHkgVmFsdWUgQXNzaWdubWVudHwgIHwgfCA8YSBuYW1lPVxcXCIyMzBcXFwiPjIzMDwvYT58VHJhbnNhY3Rpb24gVHlwZSBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiMjMxXFxcIj4yMzE8L2E+fFRyYW5zYWN0aW9uIFR5cGUgRHVwbGljYXRpb258ICB8IHwgPGEgbmFtZT1cXFwiMjMyXFxcIj4yMzI8L2E+fFBvcnRmb2xpbyBEb2VzIE5vdCBFeGlzdCBBdCBHaXZlbiBEYXRlfCAgfCB8IDxhIG5hbWU9XFxcIjIzM1xcXCI+MjMzPC9hPnxRdWVyeSBQYXJzZXIgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIyMzRcXFwiPjIzNDwvYT58RHVwbGljYXRlIENvbnN0aXR1ZW50fCAgfCB8IDxhIG5hbWU9XFxcIjIzNVxcXCI+MjM1PC9hPnxVbnJlc29sdmVkIEluc3RydW1lbnQgQ29uc3RpdHVlbnR8ICB8IHwgPGEgbmFtZT1cXFwiMjM2XFxcIj4yMzY8L2E+fFVucmVzb2x2ZWQgSW5zdHJ1bWVudCBJbiBUcmFuc2l0aW9ufCAgfCB8IDxhIG5hbWU9XFxcIjIzN1xcXCI+MjM3PC9hPnxNaXNzaW5nIFNpZGUgRGVmaW5pdGlvbnN8ICB8IHwgPGEgbmFtZT1cXFwiMjQwXFxcIj4yNDA8L2E+fER1cGxpY2F0ZSBDYWxjdWxhdGlvbnMgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIyOTlcXFwiPjI5OTwvYT58SW52YWxpZCBSZWNpcGV8ICB8IHwgPGEgbmFtZT1cXFwiMzAwXFxcIj4zMDA8L2E+fE1pc3NpbmcgUmVjaXBlfCAgfCB8IDxhIG5hbWU9XFxcIjMwMVxcXCI+MzAxPC9hPnxEZXBlbmRlbmNpZXN8ICB8IHwgPGEgbmFtZT1cXFwiMzA0XFxcIj4zMDQ8L2E+fFBvcnRmb2xpbyBQcmVwcm9jZXNzIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzEwXFxcIj4zMTA8L2E+fFZhbHVhdGlvbiBFbmdpbmUgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzMTFcXFwiPjMxMTwvYT58VGFzayBGYWN0b3J5IEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzEyXFxcIj4zMTI8L2E+fFRhc2sgRXZhbHVhdGlvbiBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjMxM1xcXCI+MzEzPC9hPnxUYXNrIEdlbmVyYXRpb24gRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzMTRcXFwiPjMxNDwvYT58RW5naW5lIENvbmZpZ3VyYXRpb24gRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzMTVcXFwiPjMxNTwvYT58TW9kZWwgU3BlY2lmaWNhdGlvbiBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjMyMFxcXCI+MzIwPC9hPnxNYXJrZXQgRGF0YSBLZXkgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzMjFcXFwiPjMyMTwvYT58TWFya2V0IFJlc29sdmVyIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzIyXFxcIj4zMjI8L2E+fE1hcmtldCBEYXRhIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzMwXFxcIj4zMzA8L2E+fEN1cnZlIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzMxXFxcIj4zMzE8L2E+fFZvbGF0aWxpdHkgU3VyZmFjZSBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjMzMlxcXCI+MzMyPC9hPnxWb2xhdGlsaXR5IEN1YmUgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzNTBcXFwiPjM1MDwvYT58SW5zdHJ1bWVudCBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjM1MVxcXCI+MzUxPC9hPnxDYXNoIEZsb3dzIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzUyXFxcIj4zNTI8L2E+fFJlZmVyZW5jZSBEYXRhIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzYwXFxcIj4zNjA8L2E+fEFnZ3JlZ2F0aW9uIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzYxXFxcIj4zNjE8L2E+fEFnZ3JlZ2F0aW9uIE1lYXN1cmUgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzNzBcXFwiPjM3MDwvYT58UmVzdWx0IFJldHJpZXZhbCBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjM3MVxcXCI+MzcxPC9hPnxSZXN1bHQgUHJvY2Vzc2luZyBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjM3MlxcXCI+MzcyPC9hPnxWZW5kb3IgUmVzdWx0IFByb2Nlc3NpbmcgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzNzNcXFwiPjM3MzwvYT58VmVuZG9yIFJlc3VsdCBNYXBwaW5nIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzc0XFxcIj4zNzQ8L2E+fFZlbmRvciBMaWJyYXJ5IFVuYXV0aG9yaXNlZHwgIHwgfCA8YSBuYW1lPVxcXCIzNzVcXFwiPjM3NTwvYT58VmVuZG9yIENvbm5lY3Rpdml0eSBFcnJvcnwgIHwgfCA8YSBuYW1lPVxcXCIzNzZcXFwiPjM3NjwvYT58VmVuZG9yIEludGVyZmFjZSBFcnJvcnwgIHwgfCA8YSBuYW1lPVxcXCIzNzdcXFwiPjM3NzwvYT58VmVuZG9yIFByaWNpbmcgRmFpbHVyZXwgIHwgfCA8YSBuYW1lPVxcXCIzNzhcXFwiPjM3ODwvYT58VmVuZG9yIFRyYW5zbGF0aW9uIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzc5XFxcIj4zNzk8L2E+fFZlbmRvciBLZXkgTWFwcGluZyBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjM4MFxcXCI+MzgwPC9hPnxWZW5kb3IgUmVmbGVjdGlvbiBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjM4MVxcXCI+MzgxPC9hPnxWZW5kb3IgUHJvY2VzcyBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjM4MlxcXCI+MzgyPC9hPnxWZW5kb3IgU3lzdGVtIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiMzkwXFxcIj4zOTA8L2E+fEF0dGVtcHQgVG8gVXBzZXJ0IER1cGxpY2F0ZSBRdW90ZXN8ICB8IHwgPGEgbmFtZT1cXFwiMzkxXFxcIj4zOTE8L2E+fENvcnBvcmF0ZSBBY3Rpb24gU291cmNlIERvZXMgTm90IEV4aXN0fCAgfCB8IDxhIG5hbWU9XFxcIjM5MlxcXCI+MzkyPC9hPnxDb3Jwb3JhdGUgQWN0aW9uIFNvdXJjZSBBbHJlYWR5IEV4aXN0c3wgIHwgfCA8YSBuYW1lPVxcXCIzOTNcXFwiPjM5MzwvYT58SW5zdHJ1bWVudCBJZGVudGlmaWVyIEFscmVhZHkgSW4gVXNlfCAgfCB8IDxhIG5hbWU9XFxcIjM5NFxcXCI+Mzk0PC9hPnxQcm9wZXJ0aWVzIE5vdCBGb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCIzOTVcXFwiPjM5NTwvYT58QmF0Y2ggT3BlcmF0aW9uIEFib3J0ZWR8ICB8IHwgPGEgbmFtZT1cXFwiNDAwXFxcIj40MDA8L2E+fEludmFsaWQgSXNvNDIxNyBDdXJyZW5jeSBDb2RlfCAgfCB8IDxhIG5hbWU9XFxcIjQwMVxcXCI+NDAxPC9hPnxDYW5ub3QgQXNzaWduIEluc3RydW1lbnQgSWRlbnRpZmllciBUbyBDdXJyZW5jeXwgIHwgfCA8YSBuYW1lPVxcXCI0MDJcXFwiPjQwMjwvYT58Q2Fubm90IEFzc2lnbiBDdXJyZW5jeSBJZGVudGlmaWVyIFRvIE5vbiBDdXJyZW5jeXwgIHwgfCA8YSBuYW1lPVxcXCI0MDNcXFwiPjQwMzwvYT58Q3VycmVuY3kgSW5zdHJ1bWVudCBDYW5ub3QgQmUgRGVsZXRlZHwgIHwgfCA8YSBuYW1lPVxcXCI0MDRcXFwiPjQwNDwvYT58Q3VycmVuY3kgSW5zdHJ1bWVudCBDYW5ub3QgSGF2ZSBFY29ub21pYyBEZWZpbml0aW9ufCAgfCB8IDxhIG5hbWU9XFxcIjQwNVxcXCI+NDA1PC9hPnxDdXJyZW5jeSBJbnN0cnVtZW50IENhbm5vdCBIYXZlIExvb2t0aHJvdWdoIFBvcnRmb2xpb3wgIHwgfCA8YSBuYW1lPVxcXCI0MDZcXFwiPjQwNjwvYT58Q2Fubm90IENyZWF0ZSBDdXJyZW5jeSBJbnN0cnVtZW50IFdpdGggTXVsdGlwbGUgSWRlbnRpZmllcnN8ICB8IHwgPGEgbmFtZT1cXFwiNDA3XFxcIj40MDc8L2E+fFNwZWNpZmllZCBDdXJyZW5jeSBJcyBVbmRlZmluZWR8ICB8IHwgPGEgbmFtZT1cXFwiNDEwXFxcIj40MTA8L2E+fEluZGV4IERvZXMgTm90IEV4aXN0fCAgfCB8IDxhIG5hbWU9XFxcIjQxMVxcXCI+NDExPC9hPnxTb3J0IEZpZWxkIERvZXMgTm90IEV4aXN0fCAgfCB8IDxhIG5hbWU9XFxcIjQxM1xcXCI+NDEzPC9hPnxOZWdhdGl2ZSBQYWdpbmF0aW9uIFBhcmFtZXRlcnN8ICB8IHwgPGEgbmFtZT1cXFwiNDE0XFxcIj40MTQ8L2E+fEludmFsaWQgU2VhcmNoIFN5bnRheHwgIHwgfCA8YSBuYW1lPVxcXCI0MTVcXFwiPjQxNTwvYT58RmlsdGVyIEV4ZWN1dGlvbiBUaW1lb3V0fCAgfCB8IDxhIG5hbWU9XFxcIjQyMFxcXCI+NDIwPC9hPnxTaWRlIERlZmluaXRpb24gSW5jb25zaXN0ZW50fCAgfCB8IDxhIG5hbWU9XFxcIjQ1MFxcXCI+NDUwPC9hPnxJbnZhbGlkIFF1b3RlIEFjY2VzcyBNZXRhZGF0YSBSdWxlfCAgfCB8IDxhIG5hbWU9XFxcIjQ1MVxcXCI+NDUxPC9hPnxBY2Nlc3MgTWV0YWRhdGEgTm90IEZvdW5kfCAgfCB8IDxhIG5hbWU9XFxcIjQ1MlxcXCI+NDUyPC9hPnxJbnZhbGlkIEFjY2VzcyBNZXRhZGF0YSBJZGVudGlmaWVyfCAgfCB8IDxhIG5hbWU9XFxcIjQ2MFxcXCI+NDYwPC9hPnxTdGFuZGFyZCBSZXNvdXJjZSBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiNDYxXFxcIj40NjE8L2E+fFN0YW5kYXJkIFJlc291cmNlIENvbmZsaWN0fCAgfCB8IDxhIG5hbWU9XFxcIjQ2MlxcXCI+NDYyPC9hPnxDYWxlbmRhciBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiNDYzXFxcIj40NjM8L2E+fERhdGUgSW4gQSBDYWxlbmRhciBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiNDY0XFxcIj40NjQ8L2E+fEludmFsaWQgRGF0ZSBTb3VyY2UgRGF0YXwgIHwgfCA8YSBuYW1lPVxcXCI0NjVcXFwiPjQ2NTwvYT58SW52YWxpZCBUaW1lem9uZXwgIHwgfCA8YSBuYW1lPVxcXCI2MDFcXFwiPjYwMTwvYT58UGVyc29uIElkZW50aWZpZXIgQWxyZWFkeSBJbiBVc2V8ICB8IHwgPGEgbmFtZT1cXFwiNjAyXFxcIj42MDI8L2E+fFBlcnNvbiBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiNjAzXFxcIj42MDM8L2E+fENhbm5vdCBTZXQgSWRlbnRpZmllcnwgIHwgfCA8YSBuYW1lPVxcXCI2MTdcXFwiPjYxNzwvYT58SW52YWxpZCBSZWNpcGUgU3BlY2lmaWNhdGlvbiBJbiBSZXF1ZXN0fCAgfCB8IDxhIG5hbWU9XFxcIjYxOFxcXCI+NjE4PC9hPnxJbmxpbmUgUmVjaXBlIERlc2VyaWFsaXNhdGlvbiBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjYxOVxcXCI+NjE5PC9hPnxJZGVudGlmaWVyIFR5cGVzIE5vdCBTZXQgRm9yIEVudGl0eXwgIHwgfCA8YSBuYW1lPVxcXCI2MjBcXFwiPjYyMDwvYT58Q2Fubm90IERlbGV0ZSBBbGwgQ2xpZW50IERlZmluZWQgSWRlbnRpZmllcnN8ICB8IHwgPGEgbmFtZT1cXFwiNjUwXFxcIj42NTA8L2E+fFRoZSBPcmRlciByZXF1ZXN0ZWQgd2FzIG5vdCBmb3VuZC58ICB8IHwgPGEgbmFtZT1cXFwiNjU0XFxcIj42NTQ8L2E+fFRoZSBBbGxvY2F0aW9uIHJlcXVlc3RlZCB3YXMgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI2NTVcXFwiPjY1NTwvYT58Q2Fubm90IGJ1aWxkIHRoZSBmeCBmb3J3YXJkIHRhcmdldCB3aXRoIHRoZSBnaXZlbiBob2xkaW5ncy58ICB8IHwgPGEgbmFtZT1cXFwiNjU2XFxcIj42NTY8L2E+fEdyb3VwIGRvZXMgbm90IGNvbnRhaW4gZXhwZWN0ZWQgZW50aXRpZXMufCAgfCB8IDxhIG5hbWU9XFxcIjY2NVxcXCI+NjY1PC9hPnxEZXN0aW5hdGlvbiBkaXJlY3Rvcnkgbm90IGZvdW5kfCAgfCB8IDxhIG5hbWU9XFxcIjY2N1xcXCI+NjY3PC9hPnxSZWxhdGlvbiBkZWZpbml0aW9uIGFscmVhZHkgZXhpc3RzfCAgfCB8IDxhIG5hbWU9XFxcIjY3MlxcXCI+NjcyPC9hPnxDb3VsZCBub3QgcmV0cmlldmUgZmlsZSBjb250ZW50c3wgIHwgfCA8YSBuYW1lPVxcXCI2NzNcXFwiPjY3MzwvYT58TWlzc2luZyBlbnRpdGxlbWVudHMgZm9yIGVudGl0aWVzIGluIEdyb3VwfCAgfCB8IDxhIG5hbWU9XFxcIjY3NFxcXCI+Njc0PC9hPnxOZXh0IEJlc3QgQWN0aW9uIG5vdCBmb3VuZHwgIHwgfCA8YSBuYW1lPVxcXCI2NzZcXFwiPjY3NjwvYT58UmVsYXRpb24gZGVmaW5pdGlvbiBub3QgZGVmaW5lZHwgIHwgfCA8YSBuYW1lPVxcXCI2NzdcXFwiPjY3NzwvYT58SW52YWxpZCBlbnRpdHkgaWRlbnRpZmllciBmb3IgcmVsYXRpb258ICB8IHwgPGEgbmFtZT1cXFwiNjgxXFxcIj42ODE8L2E+fFNvcnRpbmcgYnkgc3BlY2lmaWVkIGZpZWxkIG5vdCBzdXBwb3J0ZWR8T25lIG9yIG1vcmUgb2YgdGhlIHByb3ZpZGVkIGZpZWxkcyB0byBvcmRlciBieSB3ZXJlIGVpdGhlciBpbnZhbGlkIG9yIG5vdCBzdXBwb3J0ZWQuIHwgfCA8YSBuYW1lPVxcXCI2ODJcXFwiPjY4MjwvYT58VG9vIG1hbnkgZmllbGRzIHRvIHNvcnQgYnl8VGhlIG51bWJlciBvZiBmaWVsZHMgdG8gc29ydCB0aGUgZGF0YSBieSBleGNlZWRzIHRoZSBudW1iZXIgYWxsb3dlZCBieSB0aGUgZW5kcG9pbnQgfCB8IDxhIG5hbWU9XFxcIjY4NFxcXCI+Njg0PC9hPnxTZXF1ZW5jZSBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiNjg1XFxcIj42ODU8L2E+fFNlcXVlbmNlIEFscmVhZHkgRXhpc3RzfCAgfCB8IDxhIG5hbWU9XFxcIjY4NlxcXCI+Njg2PC9hPnxOb24tY3ljbGluZyBzZXF1ZW5jZSBoYXMgYmVlbiBleGhhdXN0ZWR8ICB8IHwgPGEgbmFtZT1cXFwiNjg3XFxcIj42ODc8L2E+fExlZ2FsIEVudGl0eSBJZGVudGlmaWVyIEFscmVhZHkgSW4gVXNlfCAgfCB8IDxhIG5hbWU9XFxcIjY4OFxcXCI+Njg4PC9hPnxMZWdhbCBFbnRpdHkgTm90IEZvdW5kfCAgfCB8IDxhIG5hbWU9XFxcIjY4OVxcXCI+Njg5PC9hPnxUaGUgc3VwcGxpZWQgcGFnaW5hdGlvbiB0b2tlbiBpcyBpbnZhbGlkfCAgfCB8IDxhIG5hbWU9XFxcIjY5MFxcXCI+NjkwPC9hPnxQcm9wZXJ0eSBUeXBlIElzIE5vdCBTdXBwb3J0ZWR8ICB8IHwgPGEgbmFtZT1cXFwiNjkxXFxcIj42OTE8L2E+fE11bHRpcGxlIFRheC1sb3RzIEZvciBDdXJyZW5jeSBUeXBlIElzIE5vdCBTdXBwb3J0ZWR8ICB8IHwgPGEgbmFtZT1cXFwiNjkyXFxcIj42OTI8L2E+fFRoaXMgZW5kcG9pbnQgZG9lcyBub3Qgc3VwcG9ydCBpbXBlcnNvbmF0aW9ufCAgfCB8IDxhIG5hbWU9XFxcIjY5M1xcXCI+NjkzPC9hPnxFbnRpdHkgdHlwZSBpcyBub3Qgc3VwcG9ydGVkIGZvciBSZWxhdGlvbnNoaXB8ICB8IHwgPGEgbmFtZT1cXFwiNjk0XFxcIj42OTQ8L2E+fFJlbGF0aW9uc2hpcCBWYWxpZGF0aW9uIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiNjk1XFxcIj42OTU8L2E+fFJlbGF0aW9uc2hpcCBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiNjk3XFxcIj42OTc8L2E+fERlcml2ZWQgUHJvcGVydHkgRm9ybXVsYSBObyBMb25nZXIgVmFsaWR8ICB8IHwgPGEgbmFtZT1cXFwiNjk4XFxcIj42OTg8L2E+fFN0b3J5IGlzIG5vdCBhdmFpbGFibGV8ICB8IHwgPGEgbmFtZT1cXFwiNzAzXFxcIj43MDM8L2E+fENvcnBvcmF0ZSBBY3Rpb24gRG9lcyBOb3QgRXhpc3R8ICB8IHwgPGEgbmFtZT1cXFwiNzIwXFxcIj43MjA8L2E+fFRoZSBwcm92aWRlZCBzb3J0IGFuZCBmaWx0ZXIgY29tYmluYXRpb24gaXMgbm90IHZhbGlkfCAgfCB8IDxhIG5hbWU9XFxcIjcyMVxcXCI+NzIxPC9hPnxBMkIgZ2VuZXJhdGlvbiBmYWlsZWR8ICB8IHwgPGEgbmFtZT1cXFwiNzIyXFxcIj43MjI8L2E+fEFnZ3JlZ2F0ZWQgUmV0dXJuIENhbGN1bGF0aW9uIEZhaWx1cmV8ICB8IHwgPGEgbmFtZT1cXFwiNzIzXFxcIj43MjM8L2E+fEN1c3RvbSBFbnRpdHkgRGVmaW5pdGlvbiBJZGVudGlmaWVyIEFscmVhZHkgSW4gVXNlfCAgfCB8IDxhIG5hbWU9XFxcIjcyNFxcXCI+NzI0PC9hPnxDdXN0b20gRW50aXR5IERlZmluaXRpb24gTm90IEZvdW5kfCAgfCB8IDxhIG5hbWU9XFxcIjcyNVxcXCI+NzI1PC9hPnxUaGUgUGxhY2VtZW50IHJlcXVlc3RlZCB3YXMgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI3MjZcXFwiPjcyNjwvYT58VGhlIEV4ZWN1dGlvbiByZXF1ZXN0ZWQgd2FzIG5vdCBmb3VuZC58ICB8IHwgPGEgbmFtZT1cXFwiNzI3XFxcIj43Mjc8L2E+fFRoZSBCbG9jayByZXF1ZXN0ZWQgd2FzIG5vdCBmb3VuZC58ICB8IHwgPGEgbmFtZT1cXFwiNzI4XFxcIj43Mjg8L2E+fFRoZSBQYXJ0aWNpcGF0aW9uIHJlcXVlc3RlZCB3YXMgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI3MjlcXFwiPjcyOTwvYT58VGhlIFBhY2thZ2UgcmVxdWVzdGVkIHdhcyBub3QgZm91bmQufCAgfCB8IDxhIG5hbWU9XFxcIjczMFxcXCI+NzMwPC9hPnxUaGUgT3JkZXJJbnN0cnVjdGlvbiByZXF1ZXN0ZWQgd2FzIG5vdCBmb3VuZC58ICB8IHwgPGEgbmFtZT1cXFwiNzMyXFxcIj43MzI8L2E+fEN1c3RvbSBFbnRpdHkgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI3MzNcXFwiPjczMzwvYT58Q3VzdG9tIEVudGl0eSBJZGVudGlmaWVyIGFscmVhZHkgaW4gdXNlLnwgIHwgfCA8YSBuYW1lPVxcXCI3MzVcXFwiPjczNTwvYT58Q2FsY3VsYXRpb24gRmFpbGVkLnwgIHwgfCA8YSBuYW1lPVxcXCI3MzZcXFwiPjczNjwvYT58QW4gZXhwZWN0ZWQga2V5IG9uIEh0dHBSZXNwb25zZSBpcyBtaXNzaW5nLnwgIHwgfCA8YSBuYW1lPVxcXCI3MzdcXFwiPjczNzwvYT58QSByZXF1aXJlZCBmZWUgZGV0YWlsIGlzIG1pc3NpbmcufCAgfCB8IDxhIG5hbWU9XFxcIjczOFxcXCI+NzM4PC9hPnxaZXJvIHJvd3Mgd2VyZSByZXR1cm5lZCBmcm9tIEx1bWluZXNjZXwgIHwgfCA8YSBuYW1lPVxcXCI3MzlcXFwiPjczOTwvYT58UHJvdmlkZWQgV2Vla2VuZCBNYXNrIHdhcyBpbnZhbGlkfCAgfCB8IDxhIG5hbWU9XFxcIjc0MlxcXCI+NzQyPC9hPnxDdXN0b20gRW50aXR5IGZpZWxkcyBkbyBub3QgbWF0Y2ggdGhlIGRlZmluaXRpb258ICB8IHwgPGEgbmFtZT1cXFwiNzQ2XFxcIj43NDY8L2E+fFRoZSBwcm92aWRlZCBzZXF1ZW5jZSBpcyBub3QgdmFsaWQufCAgfCB8IDxhIG5hbWU9XFxcIjc1MVxcXCI+NzUxPC9hPnxUaGUgdHlwZSBvZiB0aGUgQ3VzdG9tIEVudGl0eSBpcyBkaWZmZXJlbnQgdGhhbiB0aGUgdHlwZSBwcm92aWRlZCBpbiB0aGUgZGVmaW5pdGlvbi58ICB8IHwgPGEgbmFtZT1cXFwiNzUyXFxcIj43NTI8L2E+fEx1bWluZXNjZSBwcm9jZXNzIHJldHVybmVkIGFuIGVycm9yLnwgIHwgfCA8YSBuYW1lPVxcXCI3NTNcXFwiPjc1MzwvYT58RmlsZSBuYW1lIG9yIGNvbnRlbnQgaW5jb21wYXRpYmxlIHdpdGggb3BlcmF0aW9uLnwgIHwgfCA8YSBuYW1lPVxcXCI3NTVcXFwiPjc1NTwvYT58U2NoZW1hIG9mIHJlc3BvbnNlIGZyb20gRHJpdmUgaXMgbm90IGFzIGV4cGVjdGVkLnwgIHwgfCA8YSBuYW1lPVxcXCI3NTdcXFwiPjc1NzwvYT58U2NoZW1hIG9mIHJlc3BvbnNlIGZyb20gTHVtaW5lc2NlIGlzIG5vdCBhcyBleHBlY3RlZC58ICB8IHwgPGEgbmFtZT1cXFwiNzU4XFxcIj43NTg8L2E+fEx1bWluZXNjZSB0aW1lZCBvdXQufCAgfCB8IDxhIG5hbWU9XFxcIjc2M1xcXCI+NzYzPC9hPnxJbnZhbGlkIEx1c2lkIEVudGl0eSBJZGVudGlmaWVyIFVuaXR8ICB8IHwgPGEgbmFtZT1cXFwiNzY4XFxcIj43Njg8L2E+fEZlZSBydWxlIG5vdCBmb3VuZC58ICB8IHwgPGEgbmFtZT1cXFwiNzY5XFxcIj43Njk8L2E+fENhbm5vdCB1cGRhdGUgdGhlIGJhc2UgY3VycmVuY3kgb2YgYSBwb3J0Zm9saW8gd2l0aCB0cmFuc2FjdGlvbnMgbG9hZGVkfCAgfCB8IDxhIG5hbWU9XFxcIjc3MVxcXCI+NzcxPC9hPnxUcmFuc2FjdGlvbiBjb25maWd1cmF0aW9uIHNvdXJjZSBub3QgZm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiNzc0XFxcIj43NzQ8L2E+fENvbXBsaWFuY2UgcnVsZSBub3QgZm91bmQufCAgfCB8IDxhIG5hbWU9XFxcIjc3NVxcXCI+Nzc1PC9hPnxGdW5kIGFjY291bnRpbmcgZG9jdW1lbnQgY2Fubm90IGJlIHByb2Nlc3NlZC58ICB8IHwgPGEgbmFtZT1cXFwiNzc4XFxcIj43Nzg8L2E+fFVuYWJsZSB0byBsb29rIHVwIEZYIHJhdGUgZnJvbSB0cmFkZSBjY3kgdG8gcG9ydGZvbGlvIGNjeSBmb3Igc29tZSBvZiB0aGUgdHJhZGVzLnwgIHwgfCA8YSBuYW1lPVxcXCI3ODJcXFwiPjc4MjwvYT58VGhlIFByb3BlcnR5IGRlZmluaXRpb24gZGF0YVR5cGUgaXMgbm90IG1hdGNoaW5nIHRoZSBkZXJpdmF0aW9uIGZvcm11bGEgZGF0YVR5cGV8ICB8IHwgPGEgbmFtZT1cXFwiNzgzXFxcIj43ODM8L2E+fFRoZSBQcm9wZXJ0eSBkZWZpbml0aW9uIGRvbWFpbiBpcyBub3Qgc3VwcG9ydGVkIGZvciBkZXJpdmVkIHByb3BlcnRpZXN8ICB8IHwgPGEgbmFtZT1cXFwiNzg4XFxcIj43ODg8L2E+fENvbXBsaWFuY2UgcnVuIG5vdCBmb3VuZCBmYWlsdXJlLnwgIHwgfCA8YSBuYW1lPVxcXCI3OTBcXFwiPjc5MDwvYT58Q3VzdG9tIEVudGl0eSBoYXMgbWlzc2luZyBvciBpbnZhbGlkIGlkZW50aWZpZXJzfCAgfCB8IDxhIG5hbWU9XFxcIjc5MVxcXCI+NzkxPC9hPnxDdXN0b20gRW50aXR5IGRlZmluaXRpb24gYWxyZWFkeSBleGlzdHN8ICB8IHwgPGEgbmFtZT1cXFwiNzkyXFxcIj43OTI8L2E+fENvbXBsaWFuY2UgUHJvcGVydHlLZXkgaXMgbWlzc2luZy58ICB8IHwgPGEgbmFtZT1cXFwiNzkzXFxcIj43OTM8L2E+fENvbXBsaWFuY2UgQ3JpdGVyaWEgVmFsdWUgZm9yIG1hdGNoaW5nIGlzIG1pc3NpbmcufCAgfCB8IDxhIG5hbWU9XFxcIjc5NVxcXCI+Nzk1PC9hPnxDYW5ub3QgZGVsZXRlIGlkZW50aWZpZXIgZGVmaW5pdGlvbnwgIHwgfCA8YSBuYW1lPVxcXCI3OTZcXFwiPjc5NjwvYT58VGF4IHJ1bGUgc2V0IG5vdCBmb3VuZC58ICB8IHwgPGEgbmFtZT1cXFwiNzk3XFxcIj43OTc8L2E+fEEgdGF4IHJ1bGUgc2V0IHdpdGggdGhpcyBpZCBhbHJlYWR5IGV4aXN0cy58ICB8IHwgPGEgbmFtZT1cXFwiNzk4XFxcIj43OTg8L2E+fE11bHRpcGxlIHJ1bGUgc2V0cyBmb3IgdGhlIHNhbWUgcHJvcGVydHkga2V5IGFyZSBhcHBsaWNhYmxlLnwgIHwgfCA8YSBuYW1lPVxcXCI3OTlcXFwiPjc5OTwvYT58VGhlIHJlcXVlc3QgbXVzdCBjb250YWluIGEgZGF0ZSBvciBkaWFyeSBlbnRyeS58ICB8IHwgPGEgbmFtZT1cXFwiODAwXFxcIj44MDA8L2E+fENhbiBub3QgdXBzZXJ0IGFuIGluc3RydW1lbnQgZXZlbnQgb2YgdGhpcyB0eXBlLnwgIHwgfCA8YSBuYW1lPVxcXCI4MDFcXFwiPjgwMTwvYT58VGhlIGluc3RydW1lbnQgZXZlbnQgZG9lcyBub3QgZXhpc3QufCAgfCB8IDxhIG5hbWU9XFxcIjgwMlxcXCI+ODAyPC9hPnxUaGUgSW5zdHJ1bWVudCBldmVudCBpcyBtaXNzaW5nIHNhbGllbnQgaW5mb3JtYXRpb24ufCAgfCB8IDxhIG5hbWU9XFxcIjgwM1xcXCI+ODAzPC9hPnxUaGUgSW5zdHJ1bWVudCBldmVudCBjb3VsZCBub3QgYmUgcHJvY2Vzc2VkLnwgIHwgfCA8YSBuYW1lPVxcXCI4MDRcXFwiPjgwNDwvYT58U29tZSBkYXRhIHJlcXVlc3RlZCBkb2VzIG5vdCBmb2xsb3cgdGhlIG9yZGVyIGdyYXBoIGFzc3VtcHRpb25zLnwgIHwgfCA8YSBuYW1lPVxcXCI4MDVcXFwiPjgwNTwvYT58VGhlIGluc3RydW1lbnQgZXZlbnQgdHlwZSBkb2VzIG5vdCBleGlzdC58ICB8IHwgPGEgbmFtZT1cXFwiODA2XFxcIj44MDY8L2E+fFRoZSB0cmFuc2FjdGlvbiB0ZW1wbGF0ZSBzcGVjaWZpY2F0aW9uIGRvZXMgbm90IGV4aXN0LnwgIHwgfCA8YSBuYW1lPVxcXCI4MDdcXFwiPjgwNzwvYT58VGhlIGRlZmF1bHQgdHJhbnNhY3Rpb24gdGVtcGxhdGUgZG9lcyBub3QgZXhpc3QufCAgfCB8IDxhIG5hbWU9XFxcIjgwOFxcXCI+ODA4PC9hPnxUaGUgdHJhbnNhY3Rpb24gdGVtcGxhdGUgZG9lcyBub3QgZXhpc3QufCAgfCB8IDxhIG5hbWU9XFxcIjgxMVxcXCI+ODExPC9hPnxBIHByaWNlIGNvdWxkIG5vdCBiZSBmb3VuZCBmb3IgYW4gb3JkZXIufCAgfCB8IDxhIG5hbWU9XFxcIjgxMlxcXCI+ODEyPC9hPnxBIHByaWNlIGNvdWxkIG5vdCBiZSBmb3VuZCBmb3IgYW4gYWxsb2NhdGlvbi58ICB8IHwgPGEgbmFtZT1cXFwiODEzXFxcIj44MTM8L2E+fENoYXJ0IG9mIEFjY291bnRzIG5vdCBmb3VuZC58ICB8IHwgPGEgbmFtZT1cXFwiODE0XFxcIj44MTQ8L2E+fEFjY291bnQgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI4MTVcXFwiPjgxNTwvYT58QWJvciBub3QgZm91bmQufCAgfCB8IDxhIG5hbWU9XFxcIjgxNlxcXCI+ODE2PC9hPnxBYm9yIENvbmZpZ3VyYXRpb24gbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI4MTdcXFwiPjgxNzwvYT58UmVjb25jaWxpYXRpb24gbWFwcGluZyBub3QgZm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiODE4XFxcIj44MTg8L2E+fEF0dHJpYnV0ZSB0eXBlIGNvdWxkIG5vdCBiZSBkZWxldGVkIGJlY2F1c2UgaXQgZG9lc25cXCd0IGV4aXN0LnwgIHwgfCA8YSBuYW1lPVxcXCI4MTlcXFwiPjgxOTwvYT58UmVjb25jaWxpYXRpb24gbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI4MjBcXFwiPjgyMDwvYT58Q3VzdG9kaWFuIEFjY291bnQgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI4MjFcXFwiPjgyMTwvYT58QWxsb2NhdGlvbiBGYWlsdXJlfCAgfCB8IDxhIG5hbWU9XFxcIjgyMlxcXCI+ODIyPC9hPnxSZWNvbmNpbGlhdGlvbiBydW4gbm90IGZvdW5kfCAgfCB8IDxhIG5hbWU9XFxcIjgyM1xcXCI+ODIzPC9hPnxSZWNvbmNpbGlhdGlvbiBicmVhayBub3QgZm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiODI0XFxcIj44MjQ8L2E+fEVudGl0eSBsaW5rIHR5cGUgY291bGQgbm90IGJlIGRlbGV0ZWQgYmVjYXVzZSBpdCBkb2VzblxcJ3QgZXhpc3QufCAgfCB8IDxhIG5hbWU9XFxcIjgyOFxcXCI+ODI4PC9hPnxBZGRyZXNzIGtleSBkZWZpbml0aW9uIG5vdCBmb3VuZC58ICB8IHwgPGEgbmFtZT1cXFwiODI5XFxcIj44Mjk8L2E+fENvbXBsaWFuY2UgdGVtcGxhdGUgbm90IGZvdW5kLnwgIHwgfCA8YSBuYW1lPVxcXCI4MzBcXFwiPjgzMDwvYT58QWN0aW9uIG5vdCBzdXBwb3J0ZWR8ICB8IHwgPGEgbmFtZT1cXFwiODMxXFxcIj44MzE8L2E+fFJlZmVyZW5jZSBsaXN0IG5vdCBmb3VuZC58ICB8IHwgPGEgbmFtZT1cXFwiODMyXFxcIj44MzI8L2E+fFBvc3RpbmcgTW9kdWxlIG5vdCBmb3VuZC58ICB8IHwgPGEgbmFtZT1cXFwiODMzXFxcIj44MzM8L2E+fFRoZSB0eXBlIG9mIHBhcmFtZXRlciBwcm92aWRlZCBkaWQgbm90IG1hdGNoIHRoYXQgcmVxdWlyZWQgYnkgdGhlIGNvbXBsaWFuY2UgcnVsZS58ICB8IHwgPGEgbmFtZT1cXFwiODM0XFxcIj44MzQ8L2E+fFRoZSBwYXJhbWV0ZXJzIHByb3ZpZGVkIGJ5IGEgcnVsZSBkaWQgbm90IG1hdGNoIHRob3NlIHJlcXVpcmVkIGJ5IGl0cyB0ZW1wbGF0ZS58ICB8IHwgPGEgbmFtZT1cXFwiODM1XFxcIj44MzU8L2E+fFRoZSBlbnRpdHkgaGFzIGEgcHJvcGVydHkgaW4gYSBkb21haW4gdGhhdCBpcyBub3Qgc3VwcHJ0ZWQgZm9yIHRoYXQgZW50aXR5IHR5cGUufCAgfCB8IDxhIG5hbWU9XFxcIjgzNlxcXCI+ODM2PC9hPnxTdHJ1Y3R1cmVkIHJlc3VsdCBkYXRhIG5vdCBmb3VuZC58ICB8IHwgPGEgbmFtZT1cXFwiODM3XFxcIj44Mzc8L2E+fERpYXJ5IGVudHJ5IG5vdCBmb3VuZC58ICB8IHwgPGEgbmFtZT1cXFwiODM4XFxcIj44Mzg8L2E+fERpYXJ5IGVudHJ5IGNvdWxkIG5vdCBiZSBjcmVhdGVkLnwgIHwgfCA8YSBuYW1lPVxcXCI4MzlcXFwiPjgzOTwvYT58RGlhcnkgZW50cnkgYWxyZWFkeSBleGlzdHMufCAgfCB8IDxhIG5hbWU9XFxcIjg2MVxcXCI+ODYxPC9hPnxDb21wbGlhbmNlIHJ1biBzdW1tYXJ5IG5vdCBmb3VuZC58ICB8IHwgPGEgbmFtZT1cXFwiODY5XFxcIj44Njk8L2E+fENvbmZsaWN0aW5nIGluc3RydW1lbnQgcHJvcGVydGllcyBpbiBiYXRjaC58ICB8IHwgPGEgbmFtZT1cXFwiODcwXFxcIj44NzA8L2E+fENvbXBsaWFuY2UgcnVuIHN1bW1hcnkgYWxyZWFkeSBleGlzdHMufCAgfCB8IDxhIG5hbWU9XFxcIjg3MVxcXCI+ODcxPC9hPnxUaGUgc3BlY2lmaWVkIGltcGVyc29uYXRlZCB1c2VyIGRvZXMgbm90IGV4aXN0fCAgfCB8IDxhIG5hbWU9XFxcIjg3NFxcXCI+ODc0PC9hPnxQcm92aWRlZCBQcm9wZXJ0eSBEb21haW4gaXMgbm90IHN1cHBvcnRlZCBmb3IgZW50aXR5IGZpbHRlci58ICB8IHwgPGEgbmFtZT1cXFwiODc1XFxcIj44NzU8L2E+fENhbm5vdCBEZWxldGUgU3lzdGVtIFJlZmVyZW5jZSBMaXN0LnwgIHwgfCA8YSBuYW1lPVxcXCI4NzZcXFwiPjg3NjwvYT58Q2xlYXJkb3duIE1vZHVsZSBub3QgZm91bmQufCAgfCB8IDxhIG5hbWU9XFxcIjg3OVxcXCI+ODc5PC9hPnxQb3J0Zm9saW9zIGRvIG5vdCBoYXZlIHRoZSBzYW1lIGJhc2UgY3VycmVuY3l8ICB8IHwgPGEgbmFtZT1cXFwiODgwXFxcIj44ODA8L2E+fFRoZXJlIHdhcyBhIHByb2JsZW0gd2l0aCB0aGUgZGVmaW5pdGlvbiBvZiB0aGUgY29tcGxpYW5jZSBleHByZXNzaW9uLnwgIHwgfCA8YSBuYW1lPVxcXCI4ODFcXFwiPjg4MTwvYT58QmxvY2sgb3ZlcnBsYWNlZC58ICB8IHwgPGEgbmFtZT1cXFwiODgyXFxcIj44ODI8L2E+fE9yZGVyIG5vdCBhcHByb3ZlZC58ICB8IHwgPGEgbmFtZT1cXFwiODgzXFxcIj44ODM8L2E+fENhbm5vdCB1cGRhdGUgdGhlIHNoYXJlZCBmaWVsZHMgb2YgYSBibG9jayB3aXRoIGFzc29jaWF0ZWQgb3JkZXJzLnwgIHwgfCA8YSBuYW1lPVxcXCI4ODZcXFwiPjg4NjwvYT58Q2Fubm90IGxvY2sgdGhlIHBlcmlvZC58ICB8IHwgPGEgbmFtZT1cXFwiODg3XFxcIj44ODc8L2E+fENhbm5vdCBhcHBseSBjbGVhciBkb3duIG1vZHVsZS58ICB8IHwgPGEgbmFtZT1cXFwiODg4XFxcIj44ODg8L2E+fENhbm5vdCB1cHNlcnQgSW5zdHJ1bWVudCBFdmVudCBJbnN0cnVjdGlvbi58ICB8IHwgPGEgbmFtZT1cXFwiODg5XFxcIj44ODk8L2E+fENhbm5vdCByZWFkIEluc3RydW1lbnQgRXZlbnQgSW5zdHJ1Y3Rpb24ufCAgfCB8IDxhIG5hbWU9XFxcIjg5NVxcXCI+ODk1PC9hPnxUaGUgQ2FwaXRhbCBSYXRpbyBDYWxjdWxhdGlvbiBJcyBXcm9uZy58ICB8IHwgPGEgbmFtZT1cXFwiOTEwXFxcIj45MTA8L2E+fENhbm5vdCB1cGRhdGUgYSBibG9jayByZWZlcmVuY2VkIGJ5IGEgcGxhY2VtZW50LnwgIHwgfCA8YSBuYW1lPVxcXCI5MTFcXFwiPjkxMTwvYT58QSBGdW5kIHRoYXQgcmVmZXJlbmNlcyB0aGlzIEFib3IgYWxyZWFkeSBleGlzdHMufCAgfCB8IDxhIG5hbWU9XFxcIjkxMlxcXCI+OTEyPC9hPnxDYW5ub3QgYWRkIGRlY2lzaW9uIHRvIFN0YWdlZCBNb2RpZmljYXRpb24ufCAgfCB8IDxhIG5hbWU9XFxcIjkxM1xcXCI+OTEzPC9hPnxUaGUgU3RhZ2VkIE1vZGlmaWNhdGlvbiBjb3VsZCBub3QgYmUgYXBwbGllZC58ICB8IHwgPGEgbmFtZT1cXFwiOTE0XFxcIj45MTQ8L2E+fEFjdGlvbiBjYW5ub3QgYmUgZXhlY3V0ZWQufCAgfCB8IDxhIG5hbWU9XFxcIjkxNVxcXCI+OTE1PC9hPnxDYW5ub3QgdXBzZXJ0IG11bHRpcGxlIHZlcnNpb25zIG9mIHRoZSBzYW1lIHByb3BlcnR5IGluIG9uZSByZXF1ZXN0LnwgIHwgfCA8YSBuYW1lPVxcXCI5MTZcXFwiPjkxNjwvYT58UGxhY2VtZW50IGFuZCBkaXJlY3QgZGVzY2VuZGVudHMgaGF2ZSBtb3JlIGV4ZWN1dGVkIHF1YW50aXR5IHRoYW4gdG90YWwgcGxhY2VtZW50IHF1YW50aXR5LnwgIHwgfCA8YSBuYW1lPVxcXCI5MTdcXFwiPjkxNzwvYT58Q2Fubm90IHVwZGF0ZSBhIHBsYWNlbWVudCB3aXRoIHRoaXMgRW50cnlUeXBlLnwgIHwgfCA8YSBuYW1lPVxcXCI5MThcXFwiPjkxODwvYT58Q2Fubm90IHVwZGF0ZSBhIHBsYWNlbWVudCBpbiB0aGlzIFN0YXRlLnwgIHwgfCA8YSBuYW1lPVxcXCI5MTlcXFwiPjkxOTwvYT58UGxhY2VtZW50IGNvdWxkIG5vdCBiZSBjYW5jZWxsZWQufCAgfCB8IDxhIG5hbWU9XFxcIjkyMFxcXCI+OTIwPC9hPnxTaGFyZSBDbGFzcyBub3QgY29uZmlndXJlZCBpbiBGdW5kfCAgfCB8IDxhIG5hbWU9XFxcIjkyMVxcXCI+OTIxPC9hPnxTaGFyZSBDbGFzcyBTdWIgSG9sZGluZyBLZXkgbm90IGNvbmZpZ3VyZWQgaW4gUG9ydGZvbGlvfCAgfCB8IDxhIG5hbWU9XFxcIjkyMlxcXCI+OTIyPC9hPnxDb3VsZCBub3QgdXBkYXRlIGFuIG9yZGVyLnwgIHwgfCA8YSBuYW1lPVxcXCI5MjNcXFwiPjkyMzwvYT58TXVsdGlwbGUgc2V0cyBvZiBTaGFyZSBDbGFzcyBTdWIgSG9sZGluZyBLZXlzIGNvbmZpZ3VyZWQgYWNyb3NzIHRoZSBQb3J0Zm9saW9zIG9mIGEgRnVuZC58ICB8IHwgPGEgbmFtZT1cXFwiOTI0XFxcIj45MjQ8L2E+fE9uZSBvciBtb3JlIG1hdHJpeCBjZWxscyBjb3VsZCBub3QgYmUgYWRkZWQgdG8gdGhlIG1hdHJpeC58ICB8IHwgPGEgbmFtZT1cXFwiOTI1XFxcIj45MjU8L2E+fFRoZXJlIHdhcyBhIHByb2JsZW0gd2l0aCB0aGUgcHJvdmlkZWQgbWF0cml4IGRlZmluaXRpb24ufCAgfCB8IDxhIG5hbWU9XFxcIjkyNlxcXCI+OTI2PC9hPnxNYXRyaXggZGVmaW5pdGlvbiBkb2VzIG5vdCBleGlzdC58ICB8IHwgPGEgbmFtZT1cXFwiOTI3XFxcIj45Mjc8L2E+fE1hdHJpeCBkZWZpbml0aW9uIGNvdWxkIG5vdCBiZSBkZWxldGVkIGJlY2F1c2UgaXQgZG9lc25cXCd0IGV4aXN0LnwgIHwgfCA8YSBuYW1lPVxcXCI5MjhcXFwiPjkyODwvYT58RGF0YVR5cGUgd2l0aCBJZCBhbHJlYWR5IGV4aXN0cy58ICB8IHwgPGEgbmFtZT1cXFwiOTI5XFxcIj45Mjk8L2E+fFNxdWFyZSBtYXRyaXggaXMgaW5jb21wbGV0ZS58ICB8IHwgPGEgbmFtZT1cXFwiOTMwXFxcIj45MzA8L2E+fEEgY29uZGl0aW9uYWwgbGljZW5zZSB0ZXJtIGhhcyBiZWVuIGV4Y2VlZGVkLnwgIHwgfCA8YSBuYW1lPVxcXCI5MzFcXFwiPjkzMTwvYT58VGhlIEN1c3RvbSBEYXRhIE1vZGVsIHJlcXVlc3RlZCBpcyBub3QgaW50ZW5kZWQgZm9yIHRoZSBlbnRpdHkgcHJvdmlkZWQufCAgfCB8IDxhIG5hbWU9XFxcIjkzMlxcXCI+OTMyPC9hPnxUaGUgZW50aXR5IHByb3ZpZGVkIGRvZXMgbm90IGhhdmUgYSBtYW5kYXRvcnkgcHJvcGVydHkgc3BlY2lmaWVkIGJ5IHRoZSBDdXN0b20gRGF0YSBNb2RlbC58ICB8IHwgPGEgbmFtZT1cXFwiOTMzXFxcIj45MzM8L2E+fFRoZSBlbnRpdHkgcHJvdmlkZWQgaGFzIGEgcHJvcGVydHkgbm90IGFsbG93ZWQgYnkgdGhlIHNwZWNpZmllZCBDdXN0b20gRGF0YSBNb2RlbC58ICB8IHwgPGEgbmFtZT1cXFwiOTM0XFxcIj45MzQ8L2E+fFRoZSBlbnRpdHkgcHJvdmlkZWQgZG9lcyBub3QgaGF2ZSBhIG1hbmRhdG9yeSBpZGVudGlmaWVyIHNwZWNpZmllZCBieSB0aGUgQ3VzdG9tIERhdGEgTW9kZWwufCAgfCB8IDxhIG5hbWU9XFxcIjkzNVxcXCI+OTM1PC9hPnxUaGUgZW50aXR5IHByb3ZpZGVkIGhhcyBhbiBpZGVudGlmaWVyIG5vdCBhbGxvd2VkIGJ5IHRoZSBzcGVjaWZpZWQgQ3VzdG9tIERhdGEgTW9kZWwufCAgfCB8IDxhIG5hbWU9XFxcIjkzNlxcXCI+OTM2PC9hPnxUaGUgQ3VzdG9tIERhdGEgTW9kZWwgaW5jbHVkZWQgYW4gYWxpYXMgb3Igc29ydC1ieSBhdHRyaWJ1dGUgdGhhdCB3YXMgbm90IG9uIHRoZSBkZWZpbml0aW9uLnwgIHwgfCA8YSBuYW1lPVxcXCI5MzdcXFwiPjkzNzwvYT58VGhlIENsb3NlZFBlcmlvZCB3aXRoIHRoZSBJZCBhbHJlYWR5IGV4aXN0cyBvbiB0aGUgVGltZWxpbmV8ICB8IHwgPGEgbmFtZT1cXFwiOTM4XFxcIj45Mzg8L2E+fFRoZSBuZXcgQ2xvc2VkIFBlcmlvZCB3b3VsZCBjYXVzZSB0aGUgVGltZWxpbmUgdG8gaGF2ZSBub24tY29udGlndW91cyBDbG9zZWQgUGVyaW9kc3wgIHwgfCA8YSBuYW1lPVxcXCI5MzlcXFwiPjkzOTwvYT58QmxvY2tlZCBieSBhIE5ldHdvcmsgWm9uZXwgIHwgfCA8YSBuYW1lPVxcXCI5NDBcXFwiPjk0MDwvYT58VGhlIGVudGl0eSBwcm92aWRlZCBkb2VzIG5vdCBtZWV0IHRoZSBjb25kaXRpb25zIG9mIHRoZSBDdXN0b20gRGF0YSBNb2RlbC58ICB8IHwgPGEgbmFtZT1cXFwiOTQxXFxcIj45NDE8L2E+fE9yZGVyIG5vdCBjb21wbGlhbnQufCAgfCB8IDxhIG5hbWU9XFxcIjk0MlxcXCI+OTQyPC9hPnxBY3Rpb24gd291bGQgY3JlYXRlIGEgY2lyY3VsYXIgZGVwZW5kZW5jeS58ICB8IHwgPGEgbmFtZT1cXFwiOTQ0XFxcIj45NDQ8L2E+fERlcml2ZWQgUHJvcGVydHkgY2FsY3VsYXRpb24gbm90IGNvbXBsZXRlLnwgIHwgfCA8YSBuYW1lPVxcXCI5NDVcXFwiPjk0NTwvYT58RGVyaXZlZCBQcm9wZXJ0eSBpcyBub3QgZmlsdGVyYWJsZS58ICB8IHwgPGEgbmFtZT1cXFwiOTQ2XFxcIj45NDY8L2E+fFRoZSBjb25kaXRpb25zIHByb3ZpZGVkIGhhdmUgb25lIG9yIG1vcmUgZXJyb3JzLnwgIHwgfCA8YSBuYW1lPVxcXCI5NDdcXFwiPjk0NzwvYT58VGhlIHByb3BlcnR5L2lkZW50aWZpZXIgZG9tYWluIGFuZCBlbnRpdHkgZG9tYWluIGRvIG5vdCBtYXRjaC58ICB8IHwgPGEgbmFtZT1cXFwiOTQ4XFxcIj45NDg8L2E+fEludmFsaWQgVGltZWxpbmV8ICB8IHwgPGEgbmFtZT1cXFwiOTQ5XFxcIj45NDk8L2E+fEZpbHRlcmFibGUgRGVyaXZlZCBQcm9wZXJ0eSBsaW1pdCByZWFjaGVkLnwgIHwgfCA8YSBuYW1lPVxcXCI5NTBcXFwiPjk1MDwvYT58SW52ZXN0b3IgUmVjb3JkIElkZW50aWZpZXIgQWxyZWFkeSBJbiBVc2V8ICB8IHwgPGEgbmFtZT1cXFwiOTUxXFxcIj45NTE8L2E+fEludmVzdG9yIFJlY29yZCBOb3QgRm91bmR8ICB8IHwgPGEgbmFtZT1cXFwiOTUyXFxcIj45NTI8L2E+fEludmVzdG1lbnQgQWNjb3VudCBJZGVudGlmaWVyIEFscmVhZHkgSW4gVXNlfCAgfCB8IDxhIG5hbWU9XFxcIjk1M1xcXCI+OTUzPC9hPnxJbnZlc3RtZW50IEFjY291bnQgTm90IEZvdW5kfCAgfCB8IDxhIG5hbWU9XFxcIjk1NFxcXCI+OTU0PC9hPnxDb3VsZCBOb3QgU3dlZXAgQmxvY2t8ICB8IHwgPGEgbmFtZT1cXFwiOTU1XFxcIj45NTU8L2E+fEVudGl0eSBVbmlxdWUgSWQgaGFzIHRoZSB3cm9uZyBmb3JtYXR8ICB8IHwgPGEgbmFtZT1cXFwiOTU2XFxcIj45NTY8L2E+fFBvc3QgQ2xvc2UgQWN0aXZpdHkgaXMgaW52YWxpZHwgIHwgfCA8YSBuYW1lPVxcXCI5NTdcXFwiPjk1NzwvYT58VGhlIENsb3NlZFBlcmlvZCB3aXRoIHRoZSBJZCBkb2VzIG5vdCBleGlzdCBvbiB0aGUgVGltZWxpbmV8ICB8IHwgPGEgbmFtZT1cXFwiOTU4XFxcIj45NTg8L2E+fEludmFsaWQgU2V0dGxlbWVudCBJbnN0cnVjdGlvbnN8ICB8IHwgPGEgbmFtZT1cXFwiOTU5XFxcIj45NTk8L2E+fE9yZGVyIHJlcXVpcmVzIHF1YW50aXR5LnwgIHwgfCA8YSBuYW1lPVxcXCI5NjBcXFwiPjk2MDwvYT58SW52YWxpZCBEYXRhUG9pbnQgVmFsdWUgQXNzaWdubWVudHwgIHwgfCA8YSBuYW1lPVxcXCI5NjFcXFwiPjk2MTwvYT58SW52YWxpZCBSZWxhdGlvbmFsIERhdGFzZXQgRmllbGQgRGVmaW5pdGlvbnwgIHwgfCA8YSBuYW1lPVxcXCI5NjJcXFwiPjk2MjwvYT58UmVsYXRpb25hbCBEYXRhc2V0IERlZmluaXRpb24gRG9lcyBOb3QgRXhpc3R8ICB8IHwgPGEgbmFtZT1cXFwiOTYzXFxcIj45NjM8L2E+fFRpbWVsaW5lIEJvb2ttYXJrIE5vdCBJbiBPcGVuIFBlcmlvZHwgIHwgfCA8YSBuYW1lPVxcXCI5NjRcXFwiPjk2NDwvYT58VGhlIEN1c3RvbSBEYXRhIE1vZGVsIHNwZWNpZmllZCBpZGVudGlmaWVycyBidXQgdGhlIGVudGl0eSBkb2VzIG5vdCBzdXBwb3J0IGlkZW50aWZpZXJzfCAgfCB8IDxhIG5hbWU9XFxcIjk2NVxcXCI+OTY1PC9hPnxUaGUgc29ydCBieSBwcm92aWRlZCBoYXMgb25lIG9yIG1vcmUgZXJyb3JzfCAgfCB8IDxhIG5hbWU9XFxcIjk2NlxcXCI+OTY2PC9hPnxJbnZhbGlkIEN1c3RvbSBEYXRhIE1vZGVsIERlZmluaXRpb258ICB8IHwgPGEgbmFtZT1cXFwiOTY3XFxcIj45Njc8L2E+fFJ1bGUgc2V0IGRvZXMgbm90IGV4aXN0IG9uIHRoZSBDaGVjayBEZWZpbml0aW9ufCAgfCB8IDxhIG5hbWU9XFxcIjk2OFxcXCI+OTY4PC9hPnxUaGUgQ2xvc2VkIFBlcmlvZCBpcyBpbnZhbGlkfCAgfCB8IDxhIG5hbWU9XFxcIjk2OVxcXCI+OTY5PC9hPnxDYW5ub3QgdXBkYXRlIGEgcGxhY2VtZW50IHdpdGggdGhpcyBTdG9wIFByaWNlLnwgIHwgfCA8YSBuYW1lPVxcXCI5NzBcXFwiPjk3MDwvYT58Q2Fubm90IHVwZGF0ZSBhIHBsYWNlbWVudCB3aXRoIHRoaXMgTGltaXQgUHJpY2UufCAgfCB8IDxhIG5hbWU9XFxcIjk3MVxcXCI+OTcxPC9hPnxDYW5ub3QgdXBkYXRlIGEgcGxhY2VtZW50IHdpdGggdGhlIGN1cnJlbnQgVHlwZS58ICB8IHwgPGEgbmFtZT1cXFwiOTc0XFxcIj45NzQ8L2E+fENhbm5vdCBQbGFjZUJsb2NrcyBhZ2FpbnN0IGFuIFxcJ1Vuc29saWNpdGVkXFwnIEJsb2NrIChibG9jayBjb250YWluaW5nIDAgT3JkZXJzKS58ICB8IHwgPGEgbmFtZT1cXFwiOTc1XFxcIj45NzU8L2E+fE5vIFBvcnRmb2xpbyBHcm91cCBTZWxlY3RlZHwgIHwgfCA8YSBuYW1lPVxcXCI5NzZcXFwiPjk3NjwvYT58QW1iaWd1b3VzIFNjb3BlfCAgfCBcbiAqXG4gKiBDb250YWN0OiBpbmZvQGZpbmJvdXJuZS5jb21cbiAqXG4gKiBOT1RFOiBUaGlzIGNsYXNzIGlzIGF1dG8gZ2VuZXJhdGVkIGJ5IE9wZW5BUEkgR2VuZXJhdG9yIChodHRwczovL29wZW5hcGktZ2VuZXJhdG9yLnRlY2gpLlxuICogaHR0cHM6Ly9vcGVuYXBpLWdlbmVyYXRvci50ZWNoXG4gKiBEbyBub3QgZWRpdCB0aGUgY2xhc3MgbWFudWFsbHkuXG4gKi9cbmltcG9ydCB7IENhc2hFbGVjdGlvbiB9IGZyb20gJy4vY2FzaEVsZWN0aW9uJztcbmltcG9ydCB7IEluc3RydW1lbnRFdmVudCB9IGZyb20gJy4vaW5zdHJ1bWVudEV2ZW50JztcblxuXG4vKipcbiAqIEEgY2FwaXRhbCBkaXN0cmlidXRpb24gcGFpZCBvdXQgdG8gc2hhcmVob2xkZXJzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENhcGl0YWxEaXN0cmlidXRpb25FdmVudCBleHRlbmRzIEluc3RydW1lbnRFdmVudCB7IFxuICAgIC8qKlxuICAgICAqIERhdGUgb24gd2hpY2ggdGhlIGRpdmlkZW5kIHdhcyBhbm5vdW5jZWQgLyBkZWNsYXJlZC5cbiAgICAgKi9cbiAgICBhbm5vdW5jZW1lbnREYXRlPzogc3RyaW5nIHwgbnVsbDtcbiAgICAvKipcbiAgICAgKiBQb3NzaWJsZSBlbGVjdGlvbnMgZm9yIHRoaXMgZXZlbnQsIGVhY2gga2V5ZWQgd2l0aCBhIHVuaXF1ZSBpZGVudGlmaWVyLlxuICAgICAqL1xuICAgIGNhc2hFbGVjdGlvbnM6IEFycmF5PENhc2hFbGVjdGlvbj47XG4gICAgLyoqXG4gICAgICogVGhlIGZpcnN0IGJ1c2luZXNzIGRheSBvbiB3aGljaCB0aGUgZGl2aWRlbmQgaXMgbm90IG93ZWQgdG8gdGhlIGJ1eWluZyBwYXJ0eS5cbiAgICAgKi9cbiAgICBleERhdGU/OiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogVGhlIGRhdGUgdGhlIGNvbXBhbnkgYmVnaW5zIGRpc3RyaWJ1dGluZyB0aGUgZGl2aWRlbmQuXG4gICAgICovXG4gICAgcGF5bWVudERhdGU/OiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogRGF0ZSB5b3UgaGF2ZSB0byBiZSB0aGUgaG9sZGVyIG9mIHJlY29yZCBpbiBvcmRlciB0byBwYXJ0aWNpcGF0ZSBpbiB0aGUgdGVuZGVyLlxuICAgICAqL1xuICAgIHJlY29yZERhdGU/OiBzdHJpbmcgfCBudWxsO1xuICAgIC8qKlxuICAgICAqIFRoZSBUeXBlIG9mIEV2ZW50LiBBdmFpbGFibGUgdmFsdWVzOiBUcmFuc2l0aW9uRXZlbnQsIEluZm9ybWF0aW9uYWxFdmVudCwgT3BlbkV2ZW50LCBDbG9zZUV2ZW50LCBTdG9ja1NwbGl0RXZlbnQsIEJvbmREZWZhdWx0RXZlbnQsIENhc2hEaXZpZGVuZEV2ZW50LCBBbW9ydGlzYXRpb25FdmVudCwgQ2FzaEZsb3dFdmVudCwgRXhlcmNpc2VFdmVudCwgUmVzZXRFdmVudCwgVHJpZ2dlckV2ZW50LCBSYXdWZW5kb3JFdmVudCwgSW5mb3JtYXRpb25hbEVycm9yRXZlbnQsIEJvbmRDb3Vwb25FdmVudCwgRGl2aWRlbmRSZWludmVzdG1lbnRFdmVudCwgQWNjdW11bGF0aW9uRXZlbnQsIEJvbmRQcmluY2lwYWxFdmVudCwgRGl2aWRlbmRPcHRpb25FdmVudCwgTWF0dXJpdHlFdmVudCwgRnhGb3J3YXJkU2V0dGxlbWVudEV2ZW50LCBFeHBpcnlFdmVudCwgU2NyaXBEaXZpZGVuZEV2ZW50LCBTdG9ja0RpdmlkZW5kRXZlbnQsIFJldmVyc2VTdG9ja1NwbGl0RXZlbnQsIENhcGl0YWxEaXN0cmlidXRpb25FdmVudCwgU3Bpbk9mZkV2ZW50LCBNZXJnZXJFdmVudCwgRnV0dXJlRXhwaXJ5RXZlbnQsIFN3YXBDYXNoRmxvd0V2ZW50LCBTd2FwUHJpbmNpcGFsRXZlbnQsIENyZWRpdFByZW1pdW1DYXNoRmxvd0V2ZW50LCBDZHNDcmVkaXRFdmVudCwgQ2R4Q3JlZGl0RXZlbnQsIE1ic0NvdXBvbkV2ZW50LCBNYnNQcmluY2lwYWxFdmVudCwgQm9udXNJc3N1ZUV2ZW50LCBNYnNQcmluY2lwYWxXcml0ZU9mZkV2ZW50LCBNYnNJbnRlcmVzdERlZmVycmFsRXZlbnQsIE1ic0ludGVyZXN0U2hvcnRmYWxsRXZlbnQsIFRlbmRlckV2ZW50LCBDYWxsT25JbnRlcm1lZGlhdGVTZWN1cml0aWVzRXZlbnQsIEludGVybWVkaWF0ZVNlY3VyaXRpZXNEaXN0cmlidXRpb25FdmVudCwgT3B0aW9uRXhlcmNpc2VQaHlzaWNhbEV2ZW50LCBPcHRpb25FeGVyY2lzZUNhc2hFdmVudCwgUHJvdGVjdGlvblBheW91dENhc2hGbG93RXZlbnQsIFRlcm1EZXBvc2l0SW50ZXJlc3RFdmVudCwgVGVybURlcG9zaXRQcmluY2lwYWxFdmVudCwgRWFybHlSZWRlbXB0aW9uRXZlbnQsIEZ1dHVyZU1hcmtUb01hcmtldEV2ZW50LCBBZGp1c3RHbG9iYWxDb21taXRtZW50RXZlbnQsIENvbnRyYWN0SW5pdGlhbGlzYXRpb25FdmVudCwgRHJhd2Rvd25FdmVudCwgTG9hbkludGVyZXN0UmVwYXltZW50RXZlbnQsIFVwZGF0ZURlcG9zaXRBbW91bnRFdmVudCwgTG9hblByaW5jaXBhbFJlcGF5bWVudEV2ZW50LCBEZXBvc2l0SW50ZXJlc3RQYXltZW50RXZlbnQsIERlcG9zaXRDbG9zZUV2ZW50LCBMb2FuRmFjaWxpdHlDb250cmFjdFJvbGxvdmVyRXZlbnQsIFJlcHVyY2hhc2VPZmZlckV2ZW50LCBSZXBvUGFydGlhbENsb3N1cmVFdmVudCwgUmVwb0Nhc2hGbG93RXZlbnQsIEZsZXhpYmxlUmVwb0ludGVyZXN0UGF5bWVudEV2ZW50LCBGbGV4aWJsZVJlcG9DYXNoRmxvd0V2ZW50LCBGbGV4aWJsZVJlcG9Db2xsYXRlcmFsRXZlbnQsIENvbnZlcnNpb25FdmVudCwgRmxleGlibGVSZXBvUGFydGlhbENsb3N1cmVFdmVudCwgRmxleGlibGVSZXBvRnVsbENsb3N1cmVFdmVudCwgQ2FwbGV0Rmxvb3JsZXRDYXNoRmxvd0V2ZW50LCBFYXJseUNsb3NlT3V0RXZlbnQsIERlcG9zaXRSb2xsRXZlbnQsIENvbnNlbnRFdmVudCwgRHJhd2luZ0V2ZW50LCBDYXBpdGFsR2FpbnNEaXN0cmlidXRpb25FdmVudCwgRXhjaGFuZ2VPZmZlckV2ZW50LCBEdXRjaEF1Y3Rpb25FdmVudCwgV29ydGhsZXNzRXZlbnQsIFB1dFJlZGVtcHRpb25FdmVudCwgTG9hbkZhY2lsaXR5RGVsYXllZENvbXBlbnNhdGlvblBheW1lbnRFdmVudCwgSW50ZXJlc3RQYXltZW50RXZlbnQsIFByaW9yaXR5SXNzdWVFdmVudCwgQ2xhc3NBY3Rpb25FdmVudCwgQmFua3J1cHRjeUV2ZW50LCBMaXF1aWRhdGlvblBheW1lbnRFdmVudCwgUGFydGlhbERlZmVhc2FuY2VFdmVudCwgU2VjdXJpdHlXcml0ZU9mZkV2ZW50LCBXYXJyYW50c0V4ZXJjaXNlRXZlbnQsIFBhcmlQYXNzdUV2ZW50LCBDaGFuZ2VFdmVudCwgUGlrQm9uZENvdXBvbkV2ZW50LCBQaWtCb25kQ2FzaENvdXBvbkV2ZW50LCBQaWtCb25kSW50ZXJlc3RDYXBpdGFsaXNhdGlvbkV2ZW50LCBQaWtCb25kUHJpbmNpcGFsRXZlbnQsIERlbGlzdGluZ0V2ZW50LCBQaWtCb25kSW50ZXJlc3RFdmVudCwgQ29tbW9kaXR5Rm9yd2FyZENhc2hTZXR0bGVtZW50RXZlbnQsIFBheW1lbnRJbktpbmRFdmVudCwgQ29tbW9kaXR5Rm9yd2FyZFBoeXNpY2FsU2V0dGxlbWVudEV2ZW50LCBDYW5jZWxTd2FwRXZlbnQsIEJvbmRPcHRpb25UZXJtaW5hdGlvbkV2ZW50LCBUZXJtaW5hdGlvbkV2ZW50LCBDb21tb2RpdHlDYWxlbmRhclN3YXBDYXNoRmxvd0V2ZW50LCBEZXBvc2l0U3dlZXBFdmVudCwgQm9uZEZvcndhcmRDYXNoU2V0dGxlbWVudEV2ZW50LCBCb25kRm9yd2FyZFRlcm1pbmF0aW9uRXZlbnQsIEFtZW5kQ29tbWl0bWVudEV2ZW50LCBDYXBpdGFsQ2FsbEV2ZW50LCBGdW5kRGlzdHJpYnV0aW9uRXZlbnQsIE5hdlJlcG9ydEV2ZW50LCBEaXZpZGVuZFN1c3BlbnNpb25FdmVudCwgTG9hbkludGVyZXN0Q2FwaXRhbGlzYXRpb25FdmVudCwgVG90YWxSZXR1cm5Td2FwQ2FzaEZsb3dFdmVudC5cbiAgICAgKi9cbiAgICBpbnN0cnVtZW50RXZlbnRUeXBlOiBDYXBpdGFsRGlzdHJpYnV0aW9uRXZlbnQuSW5zdHJ1bWVudEV2ZW50VHlwZUVudW07XG59XG5leHBvcnQgbmFtZXNwYWNlIENhcGl0YWxEaXN0cmlidXRpb25FdmVudCB7XG4gICAgZXhwb3J0IHR5cGUgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0gPSAnVHJhbnNpdGlvbkV2ZW50JyB8ICdJbmZvcm1hdGlvbmFsRXZlbnQnIHwgJ09wZW5FdmVudCcgfCAnQ2xvc2VFdmVudCcgfCAnU3RvY2tTcGxpdEV2ZW50JyB8ICdCb25kRGVmYXVsdEV2ZW50JyB8ICdDYXNoRGl2aWRlbmRFdmVudCcgfCAnQW1vcnRpc2F0aW9uRXZlbnQnIHwgJ0Nhc2hGbG93RXZlbnQnIHwgJ0V4ZXJjaXNlRXZlbnQnIHwgJ1Jlc2V0RXZlbnQnIHwgJ1RyaWdnZXJFdmVudCcgfCAnUmF3VmVuZG9yRXZlbnQnIHwgJ0luZm9ybWF0aW9uYWxFcnJvckV2ZW50JyB8ICdCb25kQ291cG9uRXZlbnQnIHwgJ0RpdmlkZW5kUmVpbnZlc3RtZW50RXZlbnQnIHwgJ0FjY3VtdWxhdGlvbkV2ZW50JyB8ICdCb25kUHJpbmNpcGFsRXZlbnQnIHwgJ0RpdmlkZW5kT3B0aW9uRXZlbnQnIHwgJ01hdHVyaXR5RXZlbnQnIHwgJ0Z4Rm9yd2FyZFNldHRsZW1lbnRFdmVudCcgfCAnRXhwaXJ5RXZlbnQnIHwgJ1NjcmlwRGl2aWRlbmRFdmVudCcgfCAnU3RvY2tEaXZpZGVuZEV2ZW50JyB8ICdSZXZlcnNlU3RvY2tTcGxpdEV2ZW50JyB8ICdDYXBpdGFsRGlzdHJpYnV0aW9uRXZlbnQnIHwgJ1NwaW5PZmZFdmVudCcgfCAnTWVyZ2VyRXZlbnQnIHwgJ0Z1dHVyZUV4cGlyeUV2ZW50JyB8ICdTd2FwQ2FzaEZsb3dFdmVudCcgfCAnU3dhcFByaW5jaXBhbEV2ZW50JyB8ICdDcmVkaXRQcmVtaXVtQ2FzaEZsb3dFdmVudCcgfCAnQ2RzQ3JlZGl0RXZlbnQnIHwgJ0NkeENyZWRpdEV2ZW50JyB8ICdNYnNDb3Vwb25FdmVudCcgfCAnTWJzUHJpbmNpcGFsRXZlbnQnIHwgJ0JvbnVzSXNzdWVFdmVudCcgfCAnTWJzUHJpbmNpcGFsV3JpdGVPZmZFdmVudCcgfCAnTWJzSW50ZXJlc3REZWZlcnJhbEV2ZW50JyB8ICdNYnNJbnRlcmVzdFNob3J0ZmFsbEV2ZW50JyB8ICdUZW5kZXJFdmVudCcgfCAnQ2FsbE9uSW50ZXJtZWRpYXRlU2VjdXJpdGllc0V2ZW50JyB8ICdJbnRlcm1lZGlhdGVTZWN1cml0aWVzRGlzdHJpYnV0aW9uRXZlbnQnIHwgJ09wdGlvbkV4ZXJjaXNlUGh5c2ljYWxFdmVudCcgfCAnT3B0aW9uRXhlcmNpc2VDYXNoRXZlbnQnIHwgJ1Byb3RlY3Rpb25QYXlvdXRDYXNoRmxvd0V2ZW50JyB8ICdUZXJtRGVwb3NpdEludGVyZXN0RXZlbnQnIHwgJ1Rlcm1EZXBvc2l0UHJpbmNpcGFsRXZlbnQnIHwgJ0Vhcmx5UmVkZW1wdGlvbkV2ZW50JyB8ICdGdXR1cmVNYXJrVG9NYXJrZXRFdmVudCcgfCAnQWRqdXN0R2xvYmFsQ29tbWl0bWVudEV2ZW50JyB8ICdDb250cmFjdEluaXRpYWxpc2F0aW9uRXZlbnQnIHwgJ0RyYXdkb3duRXZlbnQnIHwgJ0xvYW5JbnRlcmVzdFJlcGF5bWVudEV2ZW50JyB8ICdVcGRhdGVEZXBvc2l0QW1vdW50RXZlbnQnIHwgJ0xvYW5QcmluY2lwYWxSZXBheW1lbnRFdmVudCcgfCAnRGVwb3NpdEludGVyZXN0UGF5bWVudEV2ZW50JyB8ICdEZXBvc2l0Q2xvc2VFdmVudCcgfCAnTG9hbkZhY2lsaXR5Q29udHJhY3RSb2xsb3ZlckV2ZW50JyB8ICdSZXB1cmNoYXNlT2ZmZXJFdmVudCcgfCAnUmVwb1BhcnRpYWxDbG9zdXJlRXZlbnQnIHwgJ1JlcG9DYXNoRmxvd0V2ZW50JyB8ICdGbGV4aWJsZVJlcG9JbnRlcmVzdFBheW1lbnRFdmVudCcgfCAnRmxleGlibGVSZXBvQ2FzaEZsb3dFdmVudCcgfCAnRmxleGlibGVSZXBvQ29sbGF0ZXJhbEV2ZW50JyB8ICdDb252ZXJzaW9uRXZlbnQnIHwgJ0ZsZXhpYmxlUmVwb1BhcnRpYWxDbG9zdXJlRXZlbnQnIHwgJ0ZsZXhpYmxlUmVwb0Z1bGxDbG9zdXJlRXZlbnQnIHwgJ0NhcGxldEZsb29ybGV0Q2FzaEZsb3dFdmVudCcgfCAnRWFybHlDbG9zZU91dEV2ZW50JyB8ICdEZXBvc2l0Um9sbEV2ZW50JyB8ICdDb25zZW50RXZlbnQnIHwgJ0RyYXdpbmdFdmVudCcgfCAnQ2FwaXRhbEdhaW5zRGlzdHJpYnV0aW9uRXZlbnQnIHwgJ0V4Y2hhbmdlT2ZmZXJFdmVudCcgfCAnRHV0Y2hBdWN0aW9uRXZlbnQnIHwgJ1dvcnRobGVzc0V2ZW50JyB8ICdQdXRSZWRlbXB0aW9uRXZlbnQnIHwgJ0xvYW5GYWNpbGl0eURlbGF5ZWRDb21wZW5zYXRpb25QYXltZW50RXZlbnQnIHwgJ0ludGVyZXN0UGF5bWVudEV2ZW50JyB8ICdQcmlvcml0eUlzc3VlRXZlbnQnIHwgJ0NsYXNzQWN0aW9uRXZlbnQnIHwgJ0JhbmtydXB0Y3lFdmVudCcgfCAnTGlxdWlkYXRpb25QYXltZW50RXZlbnQnIHwgJ1BhcnRpYWxEZWZlYXNhbmNlRXZlbnQnIHwgJ1NlY3VyaXR5V3JpdGVPZmZFdmVudCcgfCAnV2FycmFudHNFeGVyY2lzZUV2ZW50JyB8ICdQYXJpUGFzc3VFdmVudCcgfCAnQ2hhbmdlRXZlbnQnIHwgJ1Bpa0JvbmRDb3Vwb25FdmVudCcgfCAnUGlrQm9uZENhc2hDb3Vwb25FdmVudCcgfCAnUGlrQm9uZEludGVyZXN0Q2FwaXRhbGlzYXRpb25FdmVudCcgfCAnUGlrQm9uZFByaW5jaXBhbEV2ZW50JyB8ICdEZWxpc3RpbmdFdmVudCcgfCAnUGlrQm9uZEludGVyZXN0RXZlbnQnIHwgJ0NvbW1vZGl0eUZvcndhcmRDYXNoU2V0dGxlbWVudEV2ZW50JyB8ICdQYXltZW50SW5LaW5kRXZlbnQnIHwgJ0NvbW1vZGl0eUZvcndhcmRQaHlzaWNhbFNldHRsZW1lbnRFdmVudCcgfCAnQ2FuY2VsU3dhcEV2ZW50JyB8ICdCb25kT3B0aW9uVGVybWluYXRpb25FdmVudCcgfCAnVGVybWluYXRpb25FdmVudCcgfCAnQ29tbW9kaXR5Q2FsZW5kYXJTd2FwQ2FzaEZsb3dFdmVudCcgfCAnRGVwb3NpdFN3ZWVwRXZlbnQnIHwgJ0JvbmRGb3J3YXJkQ2FzaFNldHRsZW1lbnRFdmVudCcgfCAnQm9uZEZvcndhcmRUZXJtaW5hdGlvbkV2ZW50JyB8ICdBbWVuZENvbW1pdG1lbnRFdmVudCcgfCAnQ2FwaXRhbENhbGxFdmVudCcgfCAnRnVuZERpc3RyaWJ1dGlvbkV2ZW50JyB8ICdOYXZSZXBvcnRFdmVudCcgfCAnRGl2aWRlbmRTdXNwZW5zaW9uRXZlbnQnIHwgJ0xvYW5JbnRlcmVzdENhcGl0YWxpc2F0aW9uRXZlbnQnIHwgJ1RvdGFsUmV0dXJuU3dhcENhc2hGbG93RXZlbnQnO1xuICAgIGV4cG9ydCBjb25zdCBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSA9IHtcbiAgICAgICAgVHJhbnNpdGlvbkV2ZW50OiAnVHJhbnNpdGlvbkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgSW5mb3JtYXRpb25hbEV2ZW50OiAnSW5mb3JtYXRpb25hbEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgT3BlbkV2ZW50OiAnT3BlbkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQ2xvc2VFdmVudDogJ0Nsb3NlRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBTdG9ja1NwbGl0RXZlbnQ6ICdTdG9ja1NwbGl0RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBCb25kRGVmYXVsdEV2ZW50OiAnQm9uZERlZmF1bHRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIENhc2hEaXZpZGVuZEV2ZW50OiAnQ2FzaERpdmlkZW5kRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBBbW9ydGlzYXRpb25FdmVudDogJ0Ftb3J0aXNhdGlvbkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQ2FzaEZsb3dFdmVudDogJ0Nhc2hGbG93RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBFeGVyY2lzZUV2ZW50OiAnRXhlcmNpc2VFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFJlc2V0RXZlbnQ6ICdSZXNldEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgVHJpZ2dlckV2ZW50OiAnVHJpZ2dlckV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgUmF3VmVuZG9yRXZlbnQ6ICdSYXdWZW5kb3JFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEluZm9ybWF0aW9uYWxFcnJvckV2ZW50OiAnSW5mb3JtYXRpb25hbEVycm9yRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBCb25kQ291cG9uRXZlbnQ6ICdCb25kQ291cG9uRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBEaXZpZGVuZFJlaW52ZXN0bWVudEV2ZW50OiAnRGl2aWRlbmRSZWludmVzdG1lbnRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEFjY3VtdWxhdGlvbkV2ZW50OiAnQWNjdW11bGF0aW9uRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBCb25kUHJpbmNpcGFsRXZlbnQ6ICdCb25kUHJpbmNpcGFsRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBEaXZpZGVuZE9wdGlvbkV2ZW50OiAnRGl2aWRlbmRPcHRpb25FdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIE1hdHVyaXR5RXZlbnQ6ICdNYXR1cml0eUV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgRnhGb3J3YXJkU2V0dGxlbWVudEV2ZW50OiAnRnhGb3J3YXJkU2V0dGxlbWVudEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgRXhwaXJ5RXZlbnQ6ICdFeHBpcnlFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFNjcmlwRGl2aWRlbmRFdmVudDogJ1NjcmlwRGl2aWRlbmRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFN0b2NrRGl2aWRlbmRFdmVudDogJ1N0b2NrRGl2aWRlbmRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFJldmVyc2VTdG9ja1NwbGl0RXZlbnQ6ICdSZXZlcnNlU3RvY2tTcGxpdEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQ2FwaXRhbERpc3RyaWJ1dGlvbkV2ZW50OiAnQ2FwaXRhbERpc3RyaWJ1dGlvbkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgU3Bpbk9mZkV2ZW50OiAnU3Bpbk9mZkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgTWVyZ2VyRXZlbnQ6ICdNZXJnZXJFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEZ1dHVyZUV4cGlyeUV2ZW50OiAnRnV0dXJlRXhwaXJ5RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBTd2FwQ2FzaEZsb3dFdmVudDogJ1N3YXBDYXNoRmxvd0V2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgU3dhcFByaW5jaXBhbEV2ZW50OiAnU3dhcFByaW5jaXBhbEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQ3JlZGl0UHJlbWl1bUNhc2hGbG93RXZlbnQ6ICdDcmVkaXRQcmVtaXVtQ2FzaEZsb3dFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIENkc0NyZWRpdEV2ZW50OiAnQ2RzQ3JlZGl0RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBDZHhDcmVkaXRFdmVudDogJ0NkeENyZWRpdEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgTWJzQ291cG9uRXZlbnQ6ICdNYnNDb3Vwb25FdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIE1ic1ByaW5jaXBhbEV2ZW50OiAnTWJzUHJpbmNpcGFsRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBCb251c0lzc3VlRXZlbnQ6ICdCb251c0lzc3VlRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBNYnNQcmluY2lwYWxXcml0ZU9mZkV2ZW50OiAnTWJzUHJpbmNpcGFsV3JpdGVPZmZFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIE1ic0ludGVyZXN0RGVmZXJyYWxFdmVudDogJ01ic0ludGVyZXN0RGVmZXJyYWxFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIE1ic0ludGVyZXN0U2hvcnRmYWxsRXZlbnQ6ICdNYnNJbnRlcmVzdFNob3J0ZmFsbEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgVGVuZGVyRXZlbnQ6ICdUZW5kZXJFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIENhbGxPbkludGVybWVkaWF0ZVNlY3VyaXRpZXNFdmVudDogJ0NhbGxPbkludGVybWVkaWF0ZVNlY3VyaXRpZXNFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEludGVybWVkaWF0ZVNlY3VyaXRpZXNEaXN0cmlidXRpb25FdmVudDogJ0ludGVybWVkaWF0ZVNlY3VyaXRpZXNEaXN0cmlidXRpb25FdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIE9wdGlvbkV4ZXJjaXNlUGh5c2ljYWxFdmVudDogJ09wdGlvbkV4ZXJjaXNlUGh5c2ljYWxFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIE9wdGlvbkV4ZXJjaXNlQ2FzaEV2ZW50OiAnT3B0aW9uRXhlcmNpc2VDYXNoRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBQcm90ZWN0aW9uUGF5b3V0Q2FzaEZsb3dFdmVudDogJ1Byb3RlY3Rpb25QYXlvdXRDYXNoRmxvd0V2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgVGVybURlcG9zaXRJbnRlcmVzdEV2ZW50OiAnVGVybURlcG9zaXRJbnRlcmVzdEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgVGVybURlcG9zaXRQcmluY2lwYWxFdmVudDogJ1Rlcm1EZXBvc2l0UHJpbmNpcGFsRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBFYXJseVJlZGVtcHRpb25FdmVudDogJ0Vhcmx5UmVkZW1wdGlvbkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgRnV0dXJlTWFya1RvTWFya2V0RXZlbnQ6ICdGdXR1cmVNYXJrVG9NYXJrZXRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEFkanVzdEdsb2JhbENvbW1pdG1lbnRFdmVudDogJ0FkanVzdEdsb2JhbENvbW1pdG1lbnRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIENvbnRyYWN0SW5pdGlhbGlzYXRpb25FdmVudDogJ0NvbnRyYWN0SW5pdGlhbGlzYXRpb25FdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIERyYXdkb3duRXZlbnQ6ICdEcmF3ZG93bkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgTG9hbkludGVyZXN0UmVwYXltZW50RXZlbnQ6ICdMb2FuSW50ZXJlc3RSZXBheW1lbnRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFVwZGF0ZURlcG9zaXRBbW91bnRFdmVudDogJ1VwZGF0ZURlcG9zaXRBbW91bnRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIExvYW5QcmluY2lwYWxSZXBheW1lbnRFdmVudDogJ0xvYW5QcmluY2lwYWxSZXBheW1lbnRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIERlcG9zaXRJbnRlcmVzdFBheW1lbnRFdmVudDogJ0RlcG9zaXRJbnRlcmVzdFBheW1lbnRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIERlcG9zaXRDbG9zZUV2ZW50OiAnRGVwb3NpdENsb3NlRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBMb2FuRmFjaWxpdHlDb250cmFjdFJvbGxvdmVyRXZlbnQ6ICdMb2FuRmFjaWxpdHlDb250cmFjdFJvbGxvdmVyRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBSZXB1cmNoYXNlT2ZmZXJFdmVudDogJ1JlcHVyY2hhc2VPZmZlckV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgUmVwb1BhcnRpYWxDbG9zdXJlRXZlbnQ6ICdSZXBvUGFydGlhbENsb3N1cmVFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFJlcG9DYXNoRmxvd0V2ZW50OiAnUmVwb0Nhc2hGbG93RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBGbGV4aWJsZVJlcG9JbnRlcmVzdFBheW1lbnRFdmVudDogJ0ZsZXhpYmxlUmVwb0ludGVyZXN0UGF5bWVudEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgRmxleGlibGVSZXBvQ2FzaEZsb3dFdmVudDogJ0ZsZXhpYmxlUmVwb0Nhc2hGbG93RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBGbGV4aWJsZVJlcG9Db2xsYXRlcmFsRXZlbnQ6ICdGbGV4aWJsZVJlcG9Db2xsYXRlcmFsRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBDb252ZXJzaW9uRXZlbnQ6ICdDb252ZXJzaW9uRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBGbGV4aWJsZVJlcG9QYXJ0aWFsQ2xvc3VyZUV2ZW50OiAnRmxleGlibGVSZXBvUGFydGlhbENsb3N1cmVFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEZsZXhpYmxlUmVwb0Z1bGxDbG9zdXJlRXZlbnQ6ICdGbGV4aWJsZVJlcG9GdWxsQ2xvc3VyZUV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQ2FwbGV0Rmxvb3JsZXRDYXNoRmxvd0V2ZW50OiAnQ2FwbGV0Rmxvb3JsZXRDYXNoRmxvd0V2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgRWFybHlDbG9zZU91dEV2ZW50OiAnRWFybHlDbG9zZU91dEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgRGVwb3NpdFJvbGxFdmVudDogJ0RlcG9zaXRSb2xsRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBDb25zZW50RXZlbnQ6ICdDb25zZW50RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBEcmF3aW5nRXZlbnQ6ICdEcmF3aW5nRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBDYXBpdGFsR2FpbnNEaXN0cmlidXRpb25FdmVudDogJ0NhcGl0YWxHYWluc0Rpc3RyaWJ1dGlvbkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgRXhjaGFuZ2VPZmZlckV2ZW50OiAnRXhjaGFuZ2VPZmZlckV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgRHV0Y2hBdWN0aW9uRXZlbnQ6ICdEdXRjaEF1Y3Rpb25FdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFdvcnRobGVzc0V2ZW50OiAnV29ydGhsZXNzRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBQdXRSZWRlbXB0aW9uRXZlbnQ6ICdQdXRSZWRlbXB0aW9uRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBMb2FuRmFjaWxpdHlEZWxheWVkQ29tcGVuc2F0aW9uUGF5bWVudEV2ZW50OiAnTG9hbkZhY2lsaXR5RGVsYXllZENvbXBlbnNhdGlvblBheW1lbnRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEludGVyZXN0UGF5bWVudEV2ZW50OiAnSW50ZXJlc3RQYXltZW50RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBQcmlvcml0eUlzc3VlRXZlbnQ6ICdQcmlvcml0eUlzc3VlRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBDbGFzc0FjdGlvbkV2ZW50OiAnQ2xhc3NBY3Rpb25FdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEJhbmtydXB0Y3lFdmVudDogJ0JhbmtydXB0Y3lFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIExpcXVpZGF0aW9uUGF5bWVudEV2ZW50OiAnTGlxdWlkYXRpb25QYXltZW50RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBQYXJ0aWFsRGVmZWFzYW5jZUV2ZW50OiAnUGFydGlhbERlZmVhc2FuY2VFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFNlY3VyaXR5V3JpdGVPZmZFdmVudDogJ1NlY3VyaXR5V3JpdGVPZmZFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFdhcnJhbnRzRXhlcmNpc2VFdmVudDogJ1dhcnJhbnRzRXhlcmNpc2VFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFBhcmlQYXNzdUV2ZW50OiAnUGFyaVBhc3N1RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBDaGFuZ2VFdmVudDogJ0NoYW5nZUV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgUGlrQm9uZENvdXBvbkV2ZW50OiAnUGlrQm9uZENvdXBvbkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgUGlrQm9uZENhc2hDb3Vwb25FdmVudDogJ1Bpa0JvbmRDYXNoQ291cG9uRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBQaWtCb25kSW50ZXJlc3RDYXBpdGFsaXNhdGlvbkV2ZW50OiAnUGlrQm9uZEludGVyZXN0Q2FwaXRhbGlzYXRpb25FdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFBpa0JvbmRQcmluY2lwYWxFdmVudDogJ1Bpa0JvbmRQcmluY2lwYWxFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIERlbGlzdGluZ0V2ZW50OiAnRGVsaXN0aW5nRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBQaWtCb25kSW50ZXJlc3RFdmVudDogJ1Bpa0JvbmRJbnRlcmVzdEV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgQ29tbW9kaXR5Rm9yd2FyZENhc2hTZXR0bGVtZW50RXZlbnQ6ICdDb21tb2RpdHlGb3J3YXJkQ2FzaFNldHRsZW1lbnRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIFBheW1lbnRJbktpbmRFdmVudDogJ1BheW1lbnRJbktpbmRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIENvbW1vZGl0eUZvcndhcmRQaHlzaWNhbFNldHRsZW1lbnRFdmVudDogJ0NvbW1vZGl0eUZvcndhcmRQaHlzaWNhbFNldHRsZW1lbnRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIENhbmNlbFN3YXBFdmVudDogJ0NhbmNlbFN3YXBFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEJvbmRPcHRpb25UZXJtaW5hdGlvbkV2ZW50OiAnQm9uZE9wdGlvblRlcm1pbmF0aW9uRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBUZXJtaW5hdGlvbkV2ZW50OiAnVGVybWluYXRpb25FdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIENvbW1vZGl0eUNhbGVuZGFyU3dhcENhc2hGbG93RXZlbnQ6ICdDb21tb2RpdHlDYWxlbmRhclN3YXBDYXNoRmxvd0V2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgRGVwb3NpdFN3ZWVwRXZlbnQ6ICdEZXBvc2l0U3dlZXBFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEJvbmRGb3J3YXJkQ2FzaFNldHRsZW1lbnRFdmVudDogJ0JvbmRGb3J3YXJkQ2FzaFNldHRsZW1lbnRFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEJvbmRGb3J3YXJkVGVybWluYXRpb25FdmVudDogJ0JvbmRGb3J3YXJkVGVybWluYXRpb25FdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEFtZW5kQ29tbWl0bWVudEV2ZW50OiAnQW1lbmRDb21taXRtZW50RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBDYXBpdGFsQ2FsbEV2ZW50OiAnQ2FwaXRhbENhbGxFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIEZ1bmREaXN0cmlidXRpb25FdmVudDogJ0Z1bmREaXN0cmlidXRpb25FdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW0sXG4gICAgICAgIE5hdlJlcG9ydEV2ZW50OiAnTmF2UmVwb3J0RXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBEaXZpZGVuZFN1c3BlbnNpb25FdmVudDogJ0RpdmlkZW5kU3VzcGVuc2lvbkV2ZW50JyBhcyBJbnN0cnVtZW50RXZlbnRUeXBlRW51bSxcbiAgICAgICAgTG9hbkludGVyZXN0Q2FwaXRhbGlzYXRpb25FdmVudDogJ0xvYW5JbnRlcmVzdENhcGl0YWxpc2F0aW9uRXZlbnQnIGFzIEluc3RydW1lbnRFdmVudFR5cGVFbnVtLFxuICAgICAgICBUb3RhbFJldHVyblN3YXBDYXNoRmxvd0V2ZW50OiAnVG90YWxSZXR1cm5Td2FwQ2FzaEZsb3dFdmVudCcgYXMgSW5zdHJ1bWVudEV2ZW50VHlwZUVudW1cbiAgICB9O1xufVxuXG5cbiJdfQ==