@bitgo-beta/sdk-coin-sol 7.6.4-beta.31 → 7.6.4-beta.310

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 (395) hide show
  1. package/dist/cjs/src/bigint-buffer-guard.d.ts.map +1 -0
  2. package/dist/cjs/src/bigint-buffer-guard.js +29 -0
  3. package/dist/cjs/src/config/token2022StaticConfig.d.ts.map +1 -0
  4. package/dist/cjs/src/config/token2022StaticConfig.js +50 -0
  5. package/dist/cjs/src/index.d.ts.map +1 -0
  6. package/dist/{src → cjs/src}/index.js +1 -1
  7. package/dist/cjs/src/lib/ataInitializationBuilder.d.ts.map +1 -0
  8. package/dist/cjs/src/lib/ataInitializationBuilder.js +196 -0
  9. package/dist/cjs/src/lib/closeAtaBuilder.d.ts.map +1 -0
  10. package/dist/cjs/src/lib/closeAtaBuilder.js +69 -0
  11. package/dist/{src → cjs/src}/lib/constants.d.ts +24 -0
  12. package/dist/cjs/src/lib/constants.d.ts.map +1 -0
  13. package/dist/cjs/src/lib/constants.js +196 -0
  14. package/dist/cjs/src/lib/customInstructionBuilder.d.ts.map +1 -0
  15. package/dist/cjs/src/lib/customInstructionBuilder.js +289 -0
  16. package/dist/cjs/src/lib/explainTransactionWasm.d.ts +21 -0
  17. package/dist/cjs/src/lib/explainTransactionWasm.d.ts.map +1 -0
  18. package/dist/cjs/src/lib/explainTransactionWasm.js +264 -0
  19. package/dist/{src → cjs/src}/lib/iface.d.ts +20 -2
  20. package/dist/cjs/src/lib/iface.d.ts.map +1 -0
  21. package/dist/cjs/src/lib/iface.js +7 -0
  22. package/dist/{src → cjs/src}/lib/index.d.ts +1 -0
  23. package/dist/cjs/src/lib/index.d.ts.map +1 -0
  24. package/dist/{src → cjs/src}/lib/index.js +4 -2
  25. package/dist/{src → cjs/src}/lib/instructionParamsFactory.d.ts +1 -0
  26. package/dist/cjs/src/lib/instructionParamsFactory.d.ts.map +1 -0
  27. package/dist/cjs/src/lib/instructionParamsFactory.js +1059 -0
  28. package/dist/cjs/src/lib/jitoStakePoolOperations.d.ts.map +1 -0
  29. package/dist/cjs/src/lib/jitoStakePoolOperations.js +200 -0
  30. package/dist/cjs/src/lib/keyPair.d.ts.map +1 -0
  31. package/dist/cjs/src/lib/keyPair.js +63 -0
  32. package/dist/cjs/src/lib/messages/index.d.ts.map +1 -0
  33. package/dist/{src → cjs/src}/lib/messages/index.js +1 -1
  34. package/dist/cjs/src/lib/messages/messageBuilderFactory.d.ts.map +1 -0
  35. package/dist/cjs/src/lib/messages/messageBuilderFactory.js +19 -0
  36. package/dist/cjs/src/lib/recoverNestedAtaBuilder.d.ts +25 -0
  37. package/dist/cjs/src/lib/recoverNestedAtaBuilder.d.ts.map +1 -0
  38. package/dist/cjs/src/lib/recoverNestedAtaBuilder.js +90 -0
  39. package/dist/cjs/src/lib/solInstructionFactory.d.ts.map +1 -0
  40. package/dist/cjs/src/lib/solInstructionFactory.js +595 -0
  41. package/dist/cjs/src/lib/stakingActivateBuilder.d.ts.map +1 -0
  42. package/dist/cjs/src/lib/stakingActivateBuilder.js +120 -0
  43. package/dist/cjs/src/lib/stakingAuthorizeBuilder.d.ts.map +1 -0
  44. package/dist/cjs/src/lib/stakingAuthorizeBuilder.js +89 -0
  45. package/dist/cjs/src/lib/stakingDeactivateBuilder.d.ts.map +1 -0
  46. package/dist/cjs/src/lib/stakingDeactivateBuilder.js +208 -0
  47. package/dist/cjs/src/lib/stakingDelegateBuilder.d.ts.map +1 -0
  48. package/dist/cjs/src/lib/stakingDelegateBuilder.js +120 -0
  49. package/dist/cjs/src/lib/stakingRawMsgAuthorizeBuilder.d.ts.map +1 -0
  50. package/dist/cjs/src/lib/stakingRawMsgAuthorizeBuilder.js +110 -0
  51. package/dist/cjs/src/lib/stakingWithdrawBuilder.d.ts.map +1 -0
  52. package/dist/cjs/src/lib/stakingWithdrawBuilder.js +78 -0
  53. package/dist/cjs/src/lib/token2022Config.d.ts.map +1 -0
  54. package/dist/cjs/src/lib/token2022Config.js +27 -0
  55. package/dist/cjs/src/lib/tokenTransferBuilder.d.ts.map +1 -0
  56. package/dist/cjs/src/lib/tokenTransferBuilder.js +188 -0
  57. package/dist/cjs/src/lib/transaction.d.ts.map +1 -0
  58. package/dist/cjs/src/lib/transaction.js +612 -0
  59. package/dist/cjs/src/lib/transactionBuilder.d.ts.map +1 -0
  60. package/dist/cjs/src/lib/transactionBuilder.js +380 -0
  61. package/dist/{src → cjs/src}/lib/transactionBuilderFactory.d.ts +5 -0
  62. package/dist/cjs/src/lib/transactionBuilderFactory.d.ts.map +1 -0
  63. package/dist/cjs/src/lib/transactionBuilderFactory.js +209 -0
  64. package/dist/cjs/src/lib/transferBuilder.d.ts.map +1 -0
  65. package/dist/cjs/src/lib/transferBuilder.js +70 -0
  66. package/dist/cjs/src/lib/transferBuilderV2.d.ts.map +1 -0
  67. package/dist/cjs/src/lib/transferBuilderV2.js +210 -0
  68. package/dist/cjs/src/lib/utils.d.ts.map +1 -0
  69. package/dist/cjs/src/lib/utils.js +595 -0
  70. package/dist/cjs/src/lib/walletInitializationBuilder.d.ts.map +1 -0
  71. package/dist/cjs/src/lib/walletInitializationBuilder.js +71 -0
  72. package/dist/cjs/src/register.d.ts.map +1 -0
  73. package/dist/cjs/src/register.js +15 -0
  74. package/dist/{src → cjs/src}/sol.d.ts +40 -0
  75. package/dist/cjs/src/sol.d.ts.map +1 -0
  76. package/dist/cjs/src/sol.js +1402 -0
  77. package/dist/cjs/src/solToken.d.ts.map +1 -0
  78. package/dist/cjs/src/solToken.js +69 -0
  79. package/dist/cjs/src/tsol.d.ts.map +1 -0
  80. package/dist/cjs/src/tsol.js +24 -0
  81. package/dist/{test → cjs/test}/fixtures/sol.d.ts.map +1 -1
  82. package/dist/cjs/test/fixtures/sol.js +1433 -0
  83. package/dist/{test → cjs/test}/resources/sol.d.ts +27 -27
  84. package/dist/cjs/test/resources/sol.d.ts.map +1 -0
  85. package/dist/cjs/test/resources/sol.js +320 -0
  86. package/dist/cjs/test/unit/explainTransactionWasm.d.ts +5 -0
  87. package/dist/cjs/test/unit/explainTransactionWasm.d.ts.map +1 -0
  88. package/dist/cjs/test/unit/explainTransactionWasm.js +26 -0
  89. package/dist/cjs/test/unit/fixtures/solBackupKey.d.ts.map +1 -0
  90. package/dist/cjs/test/unit/fixtures/solBackupKey.js +8 -0
  91. package/dist/cjs/test/unit/getBuilderFactory.d.ts.map +1 -0
  92. package/dist/cjs/test/unit/getBuilderFactory.js +10 -0
  93. package/dist/cjs/test/unit/instructionParamsFactory.d.ts.map +1 -0
  94. package/dist/cjs/test/unit/instructionParamsFactory.js +412 -0
  95. package/dist/cjs/test/unit/instructionParamsFactory.staking.d.ts.map +1 -0
  96. package/dist/cjs/test/unit/instructionParamsFactory.staking.js +1059 -0
  97. package/dist/cjs/test/unit/jitoWasmVerification.d.ts +2 -0
  98. package/dist/cjs/test/unit/jitoWasmVerification.d.ts.map +1 -0
  99. package/dist/cjs/test/unit/jitoWasmVerification.js +78 -0
  100. package/dist/{test → cjs/test}/unit/keyPair.d.ts.map +1 -1
  101. package/dist/cjs/test/unit/keyPair.js +177 -0
  102. package/dist/cjs/test/unit/messages/messageBuilderFactory.d.ts.map +1 -0
  103. package/dist/cjs/test/unit/messages/messageBuilderFactory.js +118 -0
  104. package/dist/cjs/test/unit/messages/simpleMessageBuilder.d.ts.map +1 -0
  105. package/dist/cjs/test/unit/messages/simpleMessageBuilder.js +194 -0
  106. package/dist/{test → cjs/test}/unit/sol.d.ts.map +1 -1
  107. package/dist/cjs/test/unit/sol.js +3326 -0
  108. package/dist/cjs/test/unit/solInstructionFactory.d.ts.map +1 -0
  109. package/dist/cjs/test/unit/solInstructionFactory.js +454 -0
  110. package/dist/cjs/test/unit/solToken.d.ts.map +1 -0
  111. package/dist/cjs/test/unit/solToken.js +31 -0
  112. package/dist/cjs/test/unit/transaction.d.ts.map +1 -0
  113. package/dist/cjs/test/unit/transaction.js +1108 -0
  114. package/dist/cjs/test/unit/transactionBuilder/StakingWithdrawBuilder.d.ts.map +1 -0
  115. package/dist/cjs/test/unit/transactionBuilder/StakingWithdrawBuilder.js +202 -0
  116. package/dist/cjs/test/unit/transactionBuilder/ataInitBuilder.d.ts.map +1 -0
  117. package/dist/cjs/test/unit/transactionBuilder/ataInitBuilder.js +471 -0
  118. package/dist/cjs/test/unit/transactionBuilder/customInstructionBuilder.d.ts.map +1 -0
  119. package/dist/cjs/test/unit/transactionBuilder/customInstructionBuilder.js +413 -0
  120. package/dist/cjs/test/unit/transactionBuilder/stakingActivateBuilder.d.ts.map +1 -0
  121. package/dist/cjs/test/unit/transactionBuilder/stakingActivateBuilder.js +430 -0
  122. package/dist/cjs/test/unit/transactionBuilder/stakingAuthorizeBuilder.d.ts.map +1 -0
  123. package/dist/cjs/test/unit/transactionBuilder/stakingAuthorizeBuilder.js +157 -0
  124. package/dist/cjs/test/unit/transactionBuilder/stakingDeactivateBuilder.d.ts.map +1 -0
  125. package/dist/cjs/test/unit/transactionBuilder/stakingDeactivateBuilder.js +384 -0
  126. package/dist/cjs/test/unit/transactionBuilder/stakingDelegateBuilder.d.ts.map +1 -0
  127. package/dist/cjs/test/unit/transactionBuilder/stakingDelegateBuilder.js +224 -0
  128. package/dist/cjs/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.d.ts.map +1 -0
  129. package/dist/cjs/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.js +259 -0
  130. package/dist/cjs/test/unit/transactionBuilder/tokenTransferBuilder.d.ts.map +1 -0
  131. package/dist/cjs/test/unit/transactionBuilder/tokenTransferBuilder.js +787 -0
  132. package/dist/cjs/test/unit/transactionBuilder/transactionBuilder.d.ts.map +1 -0
  133. package/dist/cjs/test/unit/transactionBuilder/transactionBuilder.js +495 -0
  134. package/dist/cjs/test/unit/transactionBuilder/transferBuilder.d.ts.map +1 -0
  135. package/dist/cjs/test/unit/transactionBuilder/transferBuilder.js +286 -0
  136. package/dist/cjs/test/unit/transactionBuilder/transferBuilderV2.d.ts.map +1 -0
  137. package/dist/cjs/test/unit/transactionBuilder/transferBuilderV2.js +862 -0
  138. package/dist/cjs/test/unit/transactionBuilder/walletInitBuilder.d.ts.map +1 -0
  139. package/dist/cjs/test/unit/transactionBuilder/walletInitBuilder.js +259 -0
  140. package/dist/{test → cjs/test}/unit/utils.d.ts.map +1 -1
  141. package/dist/cjs/test/unit/utils.js +517 -0
  142. package/dist/cjs/test/unit/versionedTransaction.d.ts.map +1 -0
  143. package/dist/cjs/test/unit/versionedTransaction.js +207 -0
  144. package/dist/cjs/tsconfig.tsbuildinfo +1 -0
  145. package/dist/esm/bigint-buffer-guard.d.ts +1 -0
  146. package/dist/esm/config/token2022StaticConfig.d.ts +3 -0
  147. package/dist/esm/config/token2022StaticConfig.js +47 -0
  148. package/dist/esm/index.d.ts +7 -0
  149. package/dist/esm/index.js +7 -0
  150. package/dist/esm/lib/ataInitializationBuilder.d.ts +47 -0
  151. package/dist/esm/lib/ataInitializationBuilder.js +156 -0
  152. package/dist/esm/lib/closeAtaBuilder.d.ts +19 -0
  153. package/dist/esm/lib/closeAtaBuilder.js +62 -0
  154. package/dist/esm/lib/constants.d.ts +164 -0
  155. package/dist/esm/lib/constants.d.ts.map +1 -0
  156. package/dist/esm/lib/constants.js +193 -0
  157. package/dist/esm/lib/customInstructionBuilder.d.ts +72 -0
  158. package/dist/esm/lib/customInstructionBuilder.js +282 -0
  159. package/dist/esm/lib/explainTransactionWasm.d.ts +21 -0
  160. package/dist/esm/lib/explainTransactionWasm.d.ts.map +1 -0
  161. package/dist/esm/lib/explainTransactionWasm.js +261 -0
  162. package/dist/esm/lib/iface.d.ts +262 -0
  163. package/dist/esm/lib/iface.d.ts.map +1 -0
  164. package/dist/esm/lib/iface.js +3 -0
  165. package/dist/esm/lib/index.d.ts +23 -0
  166. package/dist/{src → esm}/lib/index.d.ts.map +1 -1
  167. package/dist/esm/lib/index.js +23 -0
  168. package/dist/esm/lib/instructionParamsFactory.d.ts +13 -0
  169. package/dist/{src → esm}/lib/instructionParamsFactory.d.ts.map +1 -1
  170. package/dist/esm/lib/instructionParamsFactory.js +1052 -0
  171. package/dist/esm/lib/jitoStakePoolOperations.d.ts +113 -0
  172. package/dist/esm/lib/jitoStakePoolOperations.js +189 -0
  173. package/dist/esm/lib/keyPair.d.ts +26 -0
  174. package/dist/esm/lib/keyPair.js +59 -0
  175. package/dist/esm/lib/messages/index.d.ts +2 -0
  176. package/dist/esm/lib/messages/index.js +2 -0
  177. package/dist/esm/lib/messages/messageBuilderFactory.d.ts +7 -0
  178. package/dist/{src → esm}/lib/messages/messageBuilderFactory.js +5 -9
  179. package/dist/esm/lib/recoverNestedAtaBuilder.d.ts +25 -0
  180. package/dist/esm/lib/recoverNestedAtaBuilder.d.ts.map +1 -0
  181. package/dist/esm/lib/recoverNestedAtaBuilder.js +83 -0
  182. package/dist/esm/lib/solInstructionFactory.d.ts +10 -0
  183. package/dist/esm/lib/solInstructionFactory.d.ts.map +1 -0
  184. package/dist/esm/lib/solInstructionFactory.js +589 -0
  185. package/dist/esm/lib/stakingActivateBuilder.d.ts +59 -0
  186. package/dist/esm/lib/stakingActivateBuilder.js +113 -0
  187. package/dist/esm/lib/stakingAuthorizeBuilder.d.ts +43 -0
  188. package/dist/esm/lib/stakingAuthorizeBuilder.js +82 -0
  189. package/dist/esm/lib/stakingDeactivateBuilder.d.ts +81 -0
  190. package/dist/{src → esm}/lib/stakingDeactivateBuilder.js +31 -38
  191. package/dist/esm/lib/stakingDelegateBuilder.d.ts +42 -0
  192. package/dist/esm/lib/stakingDelegateBuilder.js +113 -0
  193. package/dist/esm/lib/stakingRawMsgAuthorizeBuilder.d.ts +33 -0
  194. package/dist/esm/lib/stakingRawMsgAuthorizeBuilder.js +103 -0
  195. package/dist/esm/lib/stakingWithdrawBuilder.d.ts +31 -0
  196. package/dist/esm/lib/stakingWithdrawBuilder.js +71 -0
  197. package/dist/esm/lib/token2022Config.d.ts +44 -0
  198. package/dist/esm/lib/token2022Config.js +23 -0
  199. package/dist/esm/lib/tokenTransferBuilder.d.ts +41 -0
  200. package/dist/esm/lib/tokenTransferBuilder.js +181 -0
  201. package/dist/esm/lib/transaction.d.ts +103 -0
  202. package/dist/esm/lib/transaction.d.ts.map +1 -0
  203. package/dist/esm/lib/transaction.js +605 -0
  204. package/dist/esm/lib/transactionBuilder.d.ts +128 -0
  205. package/dist/esm/lib/transactionBuilder.js +373 -0
  206. package/dist/esm/lib/transactionBuilderFactory.d.ts +120 -0
  207. package/dist/esm/lib/transactionBuilderFactory.d.ts.map +1 -0
  208. package/dist/esm/lib/transactionBuilderFactory.js +205 -0
  209. package/dist/esm/lib/transferBuilder.d.ts +26 -0
  210. package/dist/esm/lib/transferBuilder.js +63 -0
  211. package/dist/esm/lib/transferBuilderV2.d.ts +43 -0
  212. package/dist/esm/lib/transferBuilderV2.js +203 -0
  213. package/dist/esm/lib/utils.d.ts +200 -0
  214. package/dist/{src → esm}/lib/utils.d.ts.map +1 -1
  215. package/dist/esm/lib/utils.js +558 -0
  216. package/dist/esm/lib/walletInitializationBuilder.d.ts +26 -0
  217. package/dist/esm/lib/walletInitializationBuilder.js +64 -0
  218. package/dist/esm/register.d.ts +3 -0
  219. package/dist/esm/register.js +11 -0
  220. package/dist/esm/sol.d.ts +267 -0
  221. package/dist/esm/sol.d.ts.map +1 -0
  222. package/dist/esm/sol.js +1361 -0
  223. package/dist/esm/solToken.d.ts +37 -0
  224. package/dist/esm/solToken.js +65 -0
  225. package/dist/esm/tsol.d.ts +11 -0
  226. package/dist/esm/tsol.js +20 -0
  227. package/package.json +34 -15
  228. package/dist/src/config/token2022StaticConfig.js +0 -50
  229. package/dist/src/lib/ataInitializationBuilder.js +0 -196
  230. package/dist/src/lib/closeAtaBuilder.js +0 -69
  231. package/dist/src/lib/constants.d.ts.map +0 -1
  232. package/dist/src/lib/constants.js +0 -171
  233. package/dist/src/lib/customInstructionBuilder.js +0 -289
  234. package/dist/src/lib/iface.d.ts.map +0 -1
  235. package/dist/src/lib/iface.js +0 -7
  236. package/dist/src/lib/instructionParamsFactory.js +0 -1036
  237. package/dist/src/lib/jitoStakePoolOperations.js +0 -200
  238. package/dist/src/lib/keyPair.js +0 -63
  239. package/dist/src/lib/solInstructionFactory.d.ts.map +0 -1
  240. package/dist/src/lib/solInstructionFactory.js +0 -572
  241. package/dist/src/lib/stakingActivateBuilder.js +0 -120
  242. package/dist/src/lib/stakingAuthorizeBuilder.js +0 -89
  243. package/dist/src/lib/stakingDelegateBuilder.js +0 -120
  244. package/dist/src/lib/stakingRawMsgAuthorizeBuilder.js +0 -110
  245. package/dist/src/lib/stakingWithdrawBuilder.js +0 -78
  246. package/dist/src/lib/token2022Config.js +0 -27
  247. package/dist/src/lib/tokenTransferBuilder.js +0 -188
  248. package/dist/src/lib/transaction.d.ts.map +0 -1
  249. package/dist/src/lib/transaction.js +0 -595
  250. package/dist/src/lib/transactionBuilder.js +0 -380
  251. package/dist/src/lib/transactionBuilderFactory.d.ts.map +0 -1
  252. package/dist/src/lib/transactionBuilderFactory.js +0 -202
  253. package/dist/src/lib/transferBuilder.js +0 -70
  254. package/dist/src/lib/transferBuilderV2.js +0 -210
  255. package/dist/src/lib/utils.js +0 -589
  256. package/dist/src/lib/walletInitializationBuilder.js +0 -71
  257. package/dist/src/register.js +0 -15
  258. package/dist/src/sol.d.ts.map +0 -1
  259. package/dist/src/sol.js +0 -1285
  260. package/dist/src/solToken.js +0 -69
  261. package/dist/src/tsol.js +0 -24
  262. package/dist/test/fixtures/sol.js +0 -1433
  263. package/dist/test/resources/sol.d.ts.map +0 -1
  264. package/dist/test/resources/sol.js +0 -320
  265. package/dist/test/unit/fixtures/solBackupKey.d.ts.map +0 -1
  266. package/dist/test/unit/fixtures/solBackupKey.js +0 -8
  267. package/dist/test/unit/getBuilderFactory.d.ts.map +0 -1
  268. package/dist/test/unit/getBuilderFactory.js +0 -10
  269. package/dist/test/unit/instructionParamsFactory.d.ts.map +0 -1
  270. package/dist/test/unit/instructionParamsFactory.js +0 -412
  271. package/dist/test/unit/instructionParamsFactory.staking.d.ts.map +0 -1
  272. package/dist/test/unit/instructionParamsFactory.staking.js +0 -1059
  273. package/dist/test/unit/keyPair.js +0 -177
  274. package/dist/test/unit/messages/messageBuilderFactory.d.ts.map +0 -1
  275. package/dist/test/unit/messages/messageBuilderFactory.js +0 -118
  276. package/dist/test/unit/messages/simpleMessageBuilder.d.ts.map +0 -1
  277. package/dist/test/unit/messages/simpleMessageBuilder.js +0 -194
  278. package/dist/test/unit/sol.js +0 -3108
  279. package/dist/test/unit/solInstructionFactory.d.ts.map +0 -1
  280. package/dist/test/unit/solInstructionFactory.js +0 -454
  281. package/dist/test/unit/solToken.d.ts.map +0 -1
  282. package/dist/test/unit/solToken.js +0 -31
  283. package/dist/test/unit/transaction.d.ts.map +0 -1
  284. package/dist/test/unit/transaction.js +0 -983
  285. package/dist/test/unit/transactionBuilder/StakingWithdrawBuilder.d.ts.map +0 -1
  286. package/dist/test/unit/transactionBuilder/StakingWithdrawBuilder.js +0 -202
  287. package/dist/test/unit/transactionBuilder/ataInitBuilder.d.ts.map +0 -1
  288. package/dist/test/unit/transactionBuilder/ataInitBuilder.js +0 -471
  289. package/dist/test/unit/transactionBuilder/customInstructionBuilder.d.ts.map +0 -1
  290. package/dist/test/unit/transactionBuilder/customInstructionBuilder.js +0 -413
  291. package/dist/test/unit/transactionBuilder/stakingActivateBuilder.d.ts.map +0 -1
  292. package/dist/test/unit/transactionBuilder/stakingActivateBuilder.js +0 -430
  293. package/dist/test/unit/transactionBuilder/stakingAuthorizeBuilder.d.ts.map +0 -1
  294. package/dist/test/unit/transactionBuilder/stakingAuthorizeBuilder.js +0 -157
  295. package/dist/test/unit/transactionBuilder/stakingDeactivateBuilder.d.ts.map +0 -1
  296. package/dist/test/unit/transactionBuilder/stakingDeactivateBuilder.js +0 -384
  297. package/dist/test/unit/transactionBuilder/stakingDelegateBuilder.d.ts.map +0 -1
  298. package/dist/test/unit/transactionBuilder/stakingDelegateBuilder.js +0 -224
  299. package/dist/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.d.ts.map +0 -1
  300. package/dist/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.js +0 -259
  301. package/dist/test/unit/transactionBuilder/tokenTransferBuilder.d.ts.map +0 -1
  302. package/dist/test/unit/transactionBuilder/tokenTransferBuilder.js +0 -787
  303. package/dist/test/unit/transactionBuilder/transactionBuilder.d.ts.map +0 -1
  304. package/dist/test/unit/transactionBuilder/transactionBuilder.js +0 -495
  305. package/dist/test/unit/transactionBuilder/transferBuilder.d.ts.map +0 -1
  306. package/dist/test/unit/transactionBuilder/transferBuilder.js +0 -286
  307. package/dist/test/unit/transactionBuilder/transferBuilderV2.d.ts.map +0 -1
  308. package/dist/test/unit/transactionBuilder/transferBuilderV2.js +0 -862
  309. package/dist/test/unit/transactionBuilder/walletInitBuilder.d.ts.map +0 -1
  310. package/dist/test/unit/transactionBuilder/walletInitBuilder.js +0 -259
  311. package/dist/test/unit/utils.js +0 -517
  312. package/dist/test/unit/versionedTransaction.d.ts.map +0 -1
  313. package/dist/test/unit/versionedTransaction.js +0 -207
  314. package/dist/tsconfig.tsbuildinfo +0 -1
  315. /package/dist/{src → cjs/src}/bigint-buffer-guard.d.ts +0 -0
  316. /package/dist/{src → cjs/src}/config/token2022StaticConfig.d.ts +0 -0
  317. /package/dist/{src → cjs/src}/index.d.ts +0 -0
  318. /package/dist/{src → cjs/src}/lib/ataInitializationBuilder.d.ts +0 -0
  319. /package/dist/{src → cjs/src}/lib/closeAtaBuilder.d.ts +0 -0
  320. /package/dist/{src → cjs/src}/lib/customInstructionBuilder.d.ts +0 -0
  321. /package/dist/{src → cjs/src}/lib/jitoStakePoolOperations.d.ts +0 -0
  322. /package/dist/{src → cjs/src}/lib/keyPair.d.ts +0 -0
  323. /package/dist/{src → cjs/src}/lib/messages/index.d.ts +0 -0
  324. /package/dist/{src → cjs/src}/lib/messages/messageBuilderFactory.d.ts +0 -0
  325. /package/dist/{src → cjs/src}/lib/solInstructionFactory.d.ts +0 -0
  326. /package/dist/{src → cjs/src}/lib/stakingActivateBuilder.d.ts +0 -0
  327. /package/dist/{src → cjs/src}/lib/stakingAuthorizeBuilder.d.ts +0 -0
  328. /package/dist/{src → cjs/src}/lib/stakingDeactivateBuilder.d.ts +0 -0
  329. /package/dist/{src → cjs/src}/lib/stakingDelegateBuilder.d.ts +0 -0
  330. /package/dist/{src → cjs/src}/lib/stakingRawMsgAuthorizeBuilder.d.ts +0 -0
  331. /package/dist/{src → cjs/src}/lib/stakingWithdrawBuilder.d.ts +0 -0
  332. /package/dist/{src → cjs/src}/lib/token2022Config.d.ts +0 -0
  333. /package/dist/{src → cjs/src}/lib/tokenTransferBuilder.d.ts +0 -0
  334. /package/dist/{src → cjs/src}/lib/transaction.d.ts +0 -0
  335. /package/dist/{src → cjs/src}/lib/transactionBuilder.d.ts +0 -0
  336. /package/dist/{src → cjs/src}/lib/transferBuilder.d.ts +0 -0
  337. /package/dist/{src → cjs/src}/lib/transferBuilderV2.d.ts +0 -0
  338. /package/dist/{src → cjs/src}/lib/utils.d.ts +0 -0
  339. /package/dist/{src → cjs/src}/lib/walletInitializationBuilder.d.ts +0 -0
  340. /package/dist/{src → cjs/src}/register.d.ts +0 -0
  341. /package/dist/{src → cjs/src}/solToken.d.ts +0 -0
  342. /package/dist/{src → cjs/src}/tsol.d.ts +0 -0
  343. /package/dist/{test → cjs/test}/fixtures/sol.d.ts +0 -0
  344. /package/dist/{test → cjs/test}/unit/fixtures/solBackupKey.d.ts +0 -0
  345. /package/dist/{test → cjs/test}/unit/getBuilderFactory.d.ts +0 -0
  346. /package/dist/{test → cjs/test}/unit/instructionParamsFactory.d.ts +0 -0
  347. /package/dist/{test → cjs/test}/unit/instructionParamsFactory.staking.d.ts +0 -0
  348. /package/dist/{test → cjs/test}/unit/keyPair.d.ts +0 -0
  349. /package/dist/{test → cjs/test}/unit/messages/messageBuilderFactory.d.ts +0 -0
  350. /package/dist/{test → cjs/test}/unit/messages/simpleMessageBuilder.d.ts +0 -0
  351. /package/dist/{test → cjs/test}/unit/sol.d.ts +0 -0
  352. /package/dist/{test → cjs/test}/unit/solInstructionFactory.d.ts +0 -0
  353. /package/dist/{test → cjs/test}/unit/solToken.d.ts +0 -0
  354. /package/dist/{test → cjs/test}/unit/transaction.d.ts +0 -0
  355. /package/dist/{test → cjs/test}/unit/transactionBuilder/StakingWithdrawBuilder.d.ts +0 -0
  356. /package/dist/{test → cjs/test}/unit/transactionBuilder/ataInitBuilder.d.ts +0 -0
  357. /package/dist/{test → cjs/test}/unit/transactionBuilder/customInstructionBuilder.d.ts +0 -0
  358. /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingActivateBuilder.d.ts +0 -0
  359. /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingAuthorizeBuilder.d.ts +0 -0
  360. /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingDeactivateBuilder.d.ts +0 -0
  361. /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingDelegateBuilder.d.ts +0 -0
  362. /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.d.ts +0 -0
  363. /package/dist/{test → cjs/test}/unit/transactionBuilder/tokenTransferBuilder.d.ts +0 -0
  364. /package/dist/{test → cjs/test}/unit/transactionBuilder/transactionBuilder.d.ts +0 -0
  365. /package/dist/{test → cjs/test}/unit/transactionBuilder/transferBuilder.d.ts +0 -0
  366. /package/dist/{test → cjs/test}/unit/transactionBuilder/transferBuilderV2.d.ts +0 -0
  367. /package/dist/{test → cjs/test}/unit/transactionBuilder/walletInitBuilder.d.ts +0 -0
  368. /package/dist/{test → cjs/test}/unit/utils.d.ts +0 -0
  369. /package/dist/{test → cjs/test}/unit/versionedTransaction.d.ts +0 -0
  370. /package/dist/{src → esm}/bigint-buffer-guard.d.ts.map +0 -0
  371. /package/dist/{src → esm}/bigint-buffer-guard.js +0 -0
  372. /package/dist/{src → esm}/config/token2022StaticConfig.d.ts.map +0 -0
  373. /package/dist/{src → esm}/index.d.ts.map +0 -0
  374. /package/dist/{src → esm}/lib/ataInitializationBuilder.d.ts.map +0 -0
  375. /package/dist/{src → esm}/lib/closeAtaBuilder.d.ts.map +0 -0
  376. /package/dist/{src → esm}/lib/customInstructionBuilder.d.ts.map +0 -0
  377. /package/dist/{src → esm}/lib/jitoStakePoolOperations.d.ts.map +0 -0
  378. /package/dist/{src → esm}/lib/keyPair.d.ts.map +0 -0
  379. /package/dist/{src → esm}/lib/messages/index.d.ts.map +0 -0
  380. /package/dist/{src → esm}/lib/messages/messageBuilderFactory.d.ts.map +0 -0
  381. /package/dist/{src → esm}/lib/stakingActivateBuilder.d.ts.map +0 -0
  382. /package/dist/{src → esm}/lib/stakingAuthorizeBuilder.d.ts.map +0 -0
  383. /package/dist/{src → esm}/lib/stakingDeactivateBuilder.d.ts.map +0 -0
  384. /package/dist/{src → esm}/lib/stakingDelegateBuilder.d.ts.map +0 -0
  385. /package/dist/{src → esm}/lib/stakingRawMsgAuthorizeBuilder.d.ts.map +0 -0
  386. /package/dist/{src → esm}/lib/stakingWithdrawBuilder.d.ts.map +0 -0
  387. /package/dist/{src → esm}/lib/token2022Config.d.ts.map +0 -0
  388. /package/dist/{src → esm}/lib/tokenTransferBuilder.d.ts.map +0 -0
  389. /package/dist/{src → esm}/lib/transactionBuilder.d.ts.map +0 -0
  390. /package/dist/{src → esm}/lib/transferBuilder.d.ts.map +0 -0
  391. /package/dist/{src → esm}/lib/transferBuilderV2.d.ts.map +0 -0
  392. /package/dist/{src → esm}/lib/walletInitializationBuilder.d.ts.map +0 -0
  393. /package/dist/{src → esm}/register.d.ts.map +0 -0
  394. /package/dist/{src → esm}/solToken.d.ts.map +0 -0
  395. /package/dist/{src → esm}/tsol.d.ts.map +0 -0
@@ -1,1433 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.enableTokenFixtures = exports.wrwUser = exports.ovcResponse2 = exports.ovcResponse1 = exports.ovcResponse = exports.closeATAkeys = exports.keys = exports.tokenAddress = exports.accountInfo = exports.SolResponses = exports.SolInputData = exports.rawTransactions = void 0;
4
- const sol_1 = require("../resources/sol");
5
- exports.rawTransactions = {
6
- transfer: {
7
- unsigned: sol_1.TRANSFER_UNSIGNED_TX_WITH_MEMO_AND_DURABLE_NONCE,
8
- signed: sol_1.TRANSFER_SIGNED_TX_WITH_MEMO_AND_DURABLE_NONCE,
9
- },
10
- walletInit: {
11
- unsigned: sol_1.WALLET_INIT_UNSIGNED_TX,
12
- signed: sol_1.WALLET_INIT_SIGNED_TX,
13
- },
14
- transferToken: {
15
- unsigned: sol_1.TOKEN_TRANSFER_UNSIGNED_TX_WITH_MEMO_AND_DURABLE_NONCE,
16
- signed: sol_1.TOKEN_TRANSFER_SIGNED_TX_WITH_MEMO_AND_DURABLE_NONCE,
17
- },
18
- tokenTransferWithAtaCreation: {
19
- unsigned: sol_1.SINGLE_TOKEN_TRANSFER_WITH_ATA_CREATION,
20
- },
21
- };
22
- const blockhash = 'EkSnNWid2cvwEVnVx9aBqawnmiCNiDgp3gUdkDPTKN1N';
23
- const durableNonceBlockhash = 'MeM29wJ8Kai1SyV5Xz8fHQhTygPs4Eka7UTgZH3LsEm';
24
- const durableNonceSignatures = 2;
25
- const latestBlockhashSignatures = 1;
26
- const unsignedSweepSignatures = 1;
27
- exports.SolInputData = {
28
- blockhash,
29
- durableNonceBlockhash,
30
- durableNonceSignatures,
31
- latestBlockhashSignatures,
32
- unsignedSweepSignatures,
33
- };
34
- const getBlockhashResponse = {
35
- status: 200,
36
- body: {
37
- jsonrpc: '2.0',
38
- result: {
39
- context: {
40
- slot: 2792,
41
- },
42
- value: {
43
- blockhash: blockhash,
44
- lastValidBlockHeight: 3090,
45
- },
46
- },
47
- id: 1,
48
- },
49
- };
50
- const broadcastTransactionResponse = {
51
- status: 200,
52
- body: {
53
- jsonrpc: '2.0',
54
- result: '2id3YC2jK9G5Wo2phDx4gJVAew8DcY5NAojnVuao8rkxwPYPe8cSwE5GzhEgJA2y8fVjDEo6iR6ykBvDxrTQrtpb',
55
- id: 1,
56
- },
57
- };
58
- const broadcastTransactionResponse1 = {
59
- status: 200,
60
- body: {
61
- jsonrpc: '2.0',
62
- result: '5oUBgXX4enGmFEspG64goy3PRysjfrekZGg3rZNkBHUCQFd482vrVWbfDcRYMBEJt65JXymfEPm8M6d89X4xV79n',
63
- id: 1,
64
- },
65
- };
66
- const broadcastTransactionResponseError = {
67
- status: 200,
68
- body: {
69
- jsonrpc: '2.0',
70
- error: {
71
- code: -32002,
72
- message: 'Transaction simulation failed: Blockhash not found',
73
- },
74
- id: 1,
75
- },
76
- };
77
- const getFeesResponse = {
78
- status: 200,
79
- body: {
80
- jsonrpc: '2.0',
81
- result: {
82
- context: {
83
- slot: 1,
84
- },
85
- value: {
86
- blockhash: 'CSymwgTNX1j3E4qhKfJAUE41nBWEwXufoYryPbkde5RR',
87
- feeCalculator: {
88
- lamportsPerSignature: 5000,
89
- },
90
- lastValidSlot: 297,
91
- lastValidBlockHeight: 296,
92
- },
93
- },
94
- id: 1,
95
- },
96
- };
97
- const getFeesForMessageResponse = {
98
- status: 200,
99
- body: {
100
- jsonrpc: '2.0',
101
- result: {
102
- context: {
103
- apiVersion: '2.0.13',
104
- slot: 332103639,
105
- },
106
- value: 5000,
107
- },
108
- id: 1,
109
- },
110
- };
111
- const getMinimumBalanceForRentExemptionResponse = {
112
- status: 200,
113
- body: {
114
- jsonrpc: '2.0',
115
- result: 2039280,
116
- id: 1,
117
- },
118
- };
119
- const getTokenInfoResponse = {
120
- status: 200,
121
- body: {
122
- jsonrpc: '2.0',
123
- result: {
124
- context: { apiVersion: '1.10.39', slot: 163846900 },
125
- value: {
126
- data: {
127
- parsed: {
128
- info: {
129
- isNative: false,
130
- mint: 'F4uLeXJoFz3hw13MposuwaQbMcZbCjqvEGPPeRRB1Byf',
131
- owner: 'Em74QaaUvHNSURych2r5mRRK7o5ih5DURhfQiMArhfFp',
132
- state: 'initialized',
133
- tokenAmount: {
134
- amount: '52000000000',
135
- decimals: 9,
136
- uiAmount: 52.0,
137
- uiAmountString: '52',
138
- },
139
- },
140
- },
141
- type: 'account',
142
- },
143
- program: 'spl-token',
144
- space: 165,
145
- },
146
- executable: false,
147
- lamports: 1447680,
148
- owner: 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA',
149
- rentEpoch: 18446744073709551615,
150
- space: 165,
151
- },
152
- },
153
- id: 1,
154
- };
155
- const getAccountInfoResponse = {
156
- status: 200,
157
- body: {
158
- jsonrpc: '2.0',
159
- result: {
160
- context: { apiVersion: '1.10.39', slot: 163846900 },
161
- value: {
162
- data: {
163
- parsed: {
164
- info: {
165
- authority: 'LvDUy1MovMeusYaL8ErQAqL4PeD8H9W1RALJU3twUGj',
166
- blockhash: 'MeM29wJ8Kai1SyV5Xz8fHQhTygPs4Eka7UTgZH3LsEm',
167
- feeCalculator: { lamportsPerSignature: '5000' },
168
- },
169
- type: 'initialized',
170
- },
171
- program: 'nonce',
172
- space: 80,
173
- },
174
- executable: false,
175
- lamports: 1447680,
176
- owner: '11111111111111111111111111111111',
177
- rentEpoch: 0,
178
- },
179
- },
180
- id: 1,
181
- },
182
- };
183
- const getAccountInfoResponse2 = {
184
- status: 200,
185
- body: {
186
- jsonrpc: '2.0',
187
- result: {
188
- context: { apiVersion: '1.16.11', slot: 242229086 },
189
- value: {
190
- data: {
191
- parsed: {
192
- info: {
193
- authority: 'LvDUy1MovMeusYaL8ErQAqL4PeD8H9W1RALJU3twUGj',
194
- blockhash: 'CuuXb4dLUAgw12KmV9Lb1LHm67ojTZxwMfnwUGpyqMvP',
195
- feeCalculator: { lamportsPerSignature: '5000' },
196
- },
197
- type: 'initialized',
198
- },
199
- program: 'nonce',
200
- space: 80,
201
- },
202
- executable: false,
203
- lamports: 1447680,
204
- owner: '11111111111111111111111111111111',
205
- rentEpoch: 0,
206
- },
207
- },
208
- id: 1,
209
- },
210
- };
211
- const getAccountBalanceResponse = {
212
- status: 200,
213
- body: {
214
- jsonrpc: '2.0',
215
- result: { context: { slot: 1 }, value: 1000000000 },
216
- id: 1,
217
- },
218
- };
219
- const getAccountBalanceResponseNoFunds = {
220
- status: 200,
221
- body: {
222
- jsonrpc: '2.0',
223
- result: { context: { slot: 1 }, value: 0 },
224
- id: 1,
225
- },
226
- };
227
- const getAccountBalanceResponseM1Derivation = {
228
- status: 200,
229
- body: {
230
- jsonrpc: '2.0',
231
- result: { context: { slot: 1 }, value: 0 },
232
- id: 1,
233
- },
234
- };
235
- const getAccountBalanceResponseM2Derivation = {
236
- status: 200,
237
- body: {
238
- jsonrpc: '2.0',
239
- result: { context: { slot: 1 }, value: 5000000000 },
240
- id: 1,
241
- },
242
- };
243
- const getTokenAccountsByOwnerResponse = {
244
- status: 200,
245
- body: {
246
- jsonrpc: '2.0',
247
- result: {
248
- context: {
249
- apiVersion: '1.17.5',
250
- slot: 259019329,
251
- },
252
- value: [
253
- {
254
- account: {
255
- data: {
256
- parsed: {
257
- info: {
258
- isNative: false,
259
- mint: '9cgpBeNZ2HnLda7NWaaU1i3NyTstk2c4zCMUcoAGsi9C',
260
- owner: 'HMEgbR4S2hLKfst2VZUVpHVUu4FioFPyW5iUuJvZdMvs',
261
- state: 'initialized',
262
- tokenAmount: {
263
- amount: '2000000000',
264
- decimals: 9,
265
- uiAmount: 2,
266
- uiAmountString: '2',
267
- },
268
- },
269
- type: 'account',
270
- },
271
- program: 'spl-token',
272
- space: 165,
273
- },
274
- executable: false,
275
- lamports: 2039280,
276
- owner: 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA',
277
- rentEpoch: 18446744073709552000,
278
- space: 165,
279
- },
280
- pubkey: '4FaMdTh9uwmroyfBxgtT7FfZV6e6ngmEFBJtXBUjjoNt',
281
- },
282
- {
283
- account: {
284
- data: {
285
- parsed: {
286
- info: {
287
- isNative: false,
288
- mint: 'F4uLeXJoFz3hw13MposuwaQbMcZbCjqvEGPPeRRB1Byf',
289
- owner: 'HMEgbR4S2hLKfst2VZUVpHVUu4FioFPyW5iUuJvZdMvs',
290
- state: 'initialized',
291
- tokenAmount: {
292
- amount: '3000000000',
293
- decimals: 9,
294
- uiAmount: 3,
295
- uiAmountString: '3',
296
- },
297
- },
298
- type: 'account',
299
- },
300
- program: 'spl-token',
301
- space: 165,
302
- },
303
- executable: false,
304
- lamports: 2039280,
305
- owner: 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA',
306
- rentEpoch: 18446744073709552000,
307
- space: 165,
308
- },
309
- pubkey: 'F3xVrafJVoKGHfzXB6wXE4S1iBAwH6ZigpNhQcybHghM',
310
- },
311
- ],
312
- },
313
- id: '1',
314
- },
315
- };
316
- const getTokenAccountsByOwnerResponse2 = {
317
- status: 200,
318
- body: {
319
- jsonrpc: '2.0',
320
- result: {
321
- context: {
322
- apiVersion: '1.17.5',
323
- slot: 259019329,
324
- },
325
- value: [
326
- {
327
- account: {
328
- data: {
329
- parsed: {
330
- info: {
331
- isNative: false,
332
- mint: '9cgpBeNZ2HnLda7NWaaU1i3NyTstk2c4zCMUcoAGsi9C',
333
- owner: 'cyggsFnDvbfsPeiFXziebWsWAp6bW5Nc5SePTx8mebL',
334
- state: 'initialized',
335
- tokenAmount: {
336
- amount: '2000000000',
337
- decimals: 9,
338
- uiAmount: 2,
339
- uiAmountString: '2',
340
- },
341
- },
342
- type: 'account',
343
- },
344
- program: 'spl-token',
345
- space: 165,
346
- },
347
- executable: false,
348
- lamports: 2039280,
349
- owner: 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA',
350
- rentEpoch: 18446744073709552000,
351
- space: 165,
352
- },
353
- pubkey: '4FaMdTh9uwmroyfBxgtT7FfZV6e6ngmEFBJtXBUjjoNt',
354
- },
355
- {
356
- account: {
357
- data: {
358
- parsed: {
359
- info: {
360
- isNative: false,
361
- mint: 'F4uLeXJoFz3hw13MposuwaQbMcZbCjqvEGPPeRRB1Byf',
362
- owner: 'cyggsFnDvbfsPeiFXziebWsWAp6bW5Nc5SePTx8mebL',
363
- state: 'initialized',
364
- tokenAmount: {
365
- amount: '3000000000',
366
- decimals: 9,
367
- uiAmount: 3,
368
- uiAmountString: '3',
369
- },
370
- },
371
- type: 'account',
372
- },
373
- program: 'spl-token',
374
- space: 165,
375
- },
376
- executable: false,
377
- lamports: 2039280,
378
- owner: 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA',
379
- rentEpoch: 18446744073709552000,
380
- space: 165,
381
- },
382
- pubkey: 'F3xVrafJVoKGHfzXB6wXE4S1iBAwH6ZigpNhQcybHghM',
383
- },
384
- ],
385
- },
386
- id: '1',
387
- },
388
- };
389
- const getTokenAccountsByOwnerForSol2022Response = {
390
- status: 200,
391
- body: {
392
- jsonrpc: '2.0',
393
- result: {
394
- context: {
395
- apiVersion: '1.17.5',
396
- slot: 259019329,
397
- },
398
- value: [
399
- {
400
- account: {
401
- data: {
402
- parsed: {
403
- info: {
404
- isNative: false,
405
- mint: '5NR1bQwLWqjbkhbQ1hx72HKJybbuvwkDnUZNoAZ2VhW6',
406
- owner: 'cyggsFnDvbfsPeiFXziebWsWAp6bW5Nc5SePTx8mebL',
407
- state: 'initialized',
408
- tokenAmount: {
409
- amount: '2000000000',
410
- decimals: 9,
411
- uiAmount: 2,
412
- uiAmountString: '2',
413
- },
414
- },
415
- type: 'account',
416
- },
417
- program: 'spl-token',
418
- space: 165,
419
- },
420
- executable: false,
421
- lamports: 2039280,
422
- owner: 'TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb',
423
- rentEpoch: 18446744073709552000,
424
- space: 165,
425
- },
426
- pubkey: '5seRT43oRMkVgwxEssfci6Zgs9PJkt4igjqRiEjL5g3v',
427
- },
428
- ],
429
- },
430
- id: '1',
431
- },
432
- };
433
- const getTokenAccountsByOwnerForSol2022Response2 = {
434
- status: 200,
435
- body: {
436
- jsonrpc: '2.0',
437
- result: {
438
- context: {
439
- apiVersion: '1.17.5',
440
- slot: 259019329,
441
- },
442
- value: [
443
- {
444
- account: {
445
- data: {
446
- parsed: {
447
- info: {
448
- isNative: false,
449
- mint: '5NR1bQwLWqjbkhbQ1hx72HKJybbuvwkDnUZNoAZ2VhW6',
450
- owner: 'HMEgbR4S2hLKfst2VZUVpHVUu4FioFPyW5iUuJvZdMvs',
451
- state: 'initialized',
452
- tokenAmount: {
453
- amount: '2000000000',
454
- decimals: 9,
455
- uiAmount: 2,
456
- uiAmountString: '2',
457
- },
458
- },
459
- type: 'account',
460
- },
461
- program: 'spl-token',
462
- space: 165,
463
- },
464
- executable: false,
465
- lamports: 2039280,
466
- owner: 'TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb',
467
- rentEpoch: 18446744073709552000,
468
- space: 165,
469
- },
470
- pubkey: 'E2ZC9Kgc1aq3q7ect4iyF3zVgJWCfomRGsg98hkJxm6k',
471
- },
472
- ],
473
- },
474
- id: '1',
475
- },
476
- };
477
- const getTokenAccountsByOwnerResponseNoAccounts = {
478
- status: 200,
479
- body: {
480
- jsonrpc: '2.0',
481
- result: {
482
- context: {
483
- apiVersion: '1.17.5',
484
- slot: 259020450,
485
- },
486
- value: [],
487
- },
488
- id: '1',
489
- },
490
- };
491
- function generateValues() {
492
- const tokens = [
493
- { pub: '7nLPX6gmwAKrgYtR84qgCLz1f57Y561BceLeqMyy5VmS', mint: 'Ex6rHLLmvZoP9mpunMFvew424seSjPp5PQb5hDy8KJu6' },
494
- { pub: 'tTgPkxhJZC7djSb8YxLHzkXoAXenFZf3aHVKGysLiW7', mint: '9kLJoGbMgSteptkhKKuh7ken4JEvHrT83157ezEGrZ7R' },
495
- { pub: 'i34VuFZY1Lz8Tg9ajAqq5MNjE3ES32uVR8oPFFtLd9F', mint: '9cgpBeNZ2HnLda7NWaaU1i3NyTstk2c4zCMUcoAGsi9C' },
496
- { pub: 'Fxbh3i7s6hjVK2gZ6n6JdFwHxK78hECdhpkYcKZmiVCp', mint: 'D8YXLiwWQMibWRaxCTs9k6HwaYE6vtsbzK9KrQVMXU1K' },
497
- { pub: 'DS34T8TurqopxjupwTShZNoZ2LvGbcwoA7rMv1JBZBAF', mint: 'Aub3Nun71bD5B98JQAivGtEdwCuFJVvZVXKkcVJkuzgh' },
498
- { pub: 'AF5H6vBkFnJuVqChRPgPQ4JRcQ5Gk25HBFhQQkyojmvg', mint: 'F4uLeXJoFz3hw13MposuwaQbMcZbCjqvEGPPeRRB1Byf' },
499
- { pub: 'Eg4XVUKdMRwxoEwTgRS1VCWECbaeYM3RFcuycocQUAZw', mint: '64bco36MjrZ8K26FXZGoSrnDFDSCZhvJGfQ5ywLRFUpF' },
500
- { pub: '5sErqm6TdUvxEWQ6cLjd3fUnHbnkUHiYA8uqoDzhFsf3', mint: '4yQY4kNGCCM5rCWiQMWHFe5q3b5o7AqGWbx3XyeTti5h' },
501
- ];
502
- const result = tokens.map((token, index) => {
503
- return {
504
- account: {
505
- data: {
506
- parsed: {
507
- info: {
508
- isNative: false,
509
- mint: token.mint,
510
- owner: 'E7Z6pFfUhjx2dFjdB9Ws2KnKepXoq62TeF5uaCVSvqQV',
511
- state: 'initialized',
512
- tokenAmount: {
513
- amount: (index + 1).toString() + '000000000',
514
- decimals: 9,
515
- uiAmount: index + 1,
516
- uiAmountString: (index + 1).toString(),
517
- },
518
- },
519
- type: 'account',
520
- },
521
- program: 'spl-token',
522
- space: 165,
523
- },
524
- executable: false,
525
- lamports: 2039280,
526
- owner: 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA',
527
- rentEpoch: 18446744073709552000,
528
- space: 165,
529
- },
530
- pubkey: token.pub,
531
- };
532
- });
533
- return result;
534
- }
535
- const getTokenAccountsByOwnerResponse3 = {
536
- status: 200,
537
- body: {
538
- jsonrpc: '2.0',
539
- result: {
540
- context: {
541
- apiVersion: '1.17.5',
542
- slot: 259019329,
543
- },
544
- value: generateValues(),
545
- },
546
- id: '1',
547
- },
548
- };
549
- exports.SolResponses = {
550
- getBlockhashResponse,
551
- getFeesResponse,
552
- getFeesForMessageResponse,
553
- getAccountBalanceResponse,
554
- getTokenInfoResponse,
555
- getAccountInfoResponse,
556
- getAccountInfoResponse2,
557
- getAccountBalanceResponseNoFunds,
558
- getAccountBalanceResponseM2Derivation,
559
- getAccountBalanceResponseM1Derivation,
560
- getTokenAccountsByOwnerResponse,
561
- getTokenAccountsByOwnerResponse2,
562
- getTokenAccountsByOwnerResponse3,
563
- getTokenAccountsByOwnerResponseNoAccounts,
564
- getTokenAccountsByOwnerForSol2022Response,
565
- getTokenAccountsByOwnerForSol2022Response2,
566
- getMinimumBalanceForRentExemptionResponse,
567
- broadcastTransactionResponse,
568
- broadcastTransactionResponse1,
569
- broadcastTransactionResponseError,
570
- };
571
- exports.accountInfo = {
572
- bs58EncodedPublicKey: 'BL352P8HKNq9BgkQjWjCq1RipHZb1iM6JwGpZYFK1JuB',
573
- bs58EncodedPublicKeyNoFunds: '3EJt66Hwfi22FRU2HWPet7faPRstiSdGxrEe486CxhTL',
574
- bs58EncodedPublicKeyM1Derivation: 'EoBmy4FQfhKEqiAysNXbCmhr682dkV92Yk4Y6cpUfopf',
575
- bs58EncodedPublicKeyM2Derivation: '89QdCRKLvajFUY3f2gZFykUZGgM5dsx3XS5VL4axrHA4',
576
- bs58EncodedPublicKeyWithManyTokens: 'E7Z6pFfUhjx2dFjdB9Ws2KnKepXoq62TeF5uaCVSvqQV',
577
- };
578
- exports.tokenAddress = {
579
- TestUSDC: 'F4uLeXJoFz3hw13MposuwaQbMcZbCjqvEGPPeRRB1Byf',
580
- };
581
- exports.keys = {
582
- userKey: '{"iv":"abI51qL+t0WJD/kvdO6tQA==","v":1,"iter":10000,"ks":256,"ts":64,"mode"\n' +
583
- ':"ccm","adata":"","cipher":"aes","salt":"IlrhJ5t0FRo=","ct":"G/NoEkgwCPQdOW\n' +
584
- 'opq+2s43uJVzvxRBhgGRYhcaPmFJWgkN9vaU0IODvvC5WBh0fNKKvPaYXniDcfwf/onk+fr7xPT\n' +
585
- 'R2dcn3xYWB9QyTgrzbRnP3ALmFcUuFLhruMq4cdxG6JBibEQmKpFsnBkU2+r7gCamvJq6tBiwST\n' +
586
- 'eu8bhGaY6jJGLAyo4dwdzyE6mdOc4lisVdx9ctMuiSyEzRwFUWJL5nLULD4MiXaN6lvJaSMmhmw\n' +
587
- 'QUxE0KZ2QOqaA5mPU6wTJvNA+67E/F/zc3clyC5FSRIU/I8mCx1n9H+QOncdqhdOUvH8f2tJRYv\n' +
588
- 'kyEjkcziQd8pBtkwUCEtd2ULlYcszHUKI3UOvo3wDP4aoOqu+1VQB2c+aM1LzpOLr6T4hnFsWIC\n' +
589
- 'zE8uODWGFa0yILvrHp5thQPLQvQ/IS2SDl5IIR9dWGJife1l5dDUWCLBykhiq7ipASvakYR82As\n' +
590
- '68AdtlpSVsSdfmrTeogG+AtchfbMGBeyt0qYvczbP1eiFV+zRKFhRavvAUX+LfhHGD0iSeWyof/\n' +
591
- 'RQDmgC5Nj+/yHwQ985S61RdthPwyJ1HWzB1fSb41nX3tPxMPL0OXn0dg3Qv78RsOpD+bb/EU7Yu\n' +
592
- 'DGu6r2R0mP50YXY583w/+Ku95z1CydUzzd+etJ6rZCtogRj/Xuk7VbFbd66QFEKkmoyjU7Kw9XQ\n' +
593
- 'pYK1xlShCe1uZrPvQq942trVP83AM14IwLDxnFR7GmTJjEvf2Ojxb+9EZyYvGhQnIId6IpLtOfV\n' +
594
- 'AtDI7rHM0K0AgabGtUjhUA3GAtP+U/pO7u58JIXjqcQovMLUcjzqR9kWSWVyviKjJ/8g7rI3N26\n' +
595
- 'tA+KFV4olxuAU2nwd1Hs4U/V7IbRyLf2UN9xZxd+XdT5aRdMt72EDjY44CEoj919+yt6v/ekEJT\n' +
596
- '8OBQiLAbHnxx9awIBqR68aKTr+ysv4b5iwX3S+BMasv2rMgeGdE6clkNHCVkieiUalkkZLM5aqF\n' +
597
- 'v6JHFev/tdZNzMbPl9F2JPRkas="}',
598
- backupKey: '{"iv":"1cOLqQflLZUqiDVpoKI2SQ==","v":1,"iter":10000,"ks":256,"ts":64,"mode"\n' +
599
- ':"ccm","adata":"","cipher":"aes","salt":"i50ZX4iKnpg=","ct":"ckO+rOwDQJGP1h\n' +
600
- 'hLXRpje98DZ+pYo3LFRm9W8T349FZQ2JfPe4dHcddxmQPLTiyaMRJZCPQmSXmK0kYM7HyQmIGb6\n' +
601
- 'FtAB4W5WTjukxjes8fftPlfiwSrMbDm5VIf/qPv4/k/Cd7enUnSHUUUjTy5iqli0ea47mh3l52b\n' +
602
- 'PYdnw4RwX0gMT/Jl82HHUYZazMe9AK+hIJuLJsv3PnUSz1SKhSYz0Wi9InSzVF7/HyG6IMmFbWM\n' +
603
- 'gyBPNIjaILaDpa/4rKoHBJjCDhO70rq5hjU3t0rKwbdUVcGf9HhvQwAINbWmY+Kx4YHfD622oRp\n' +
604
- 'D4hgcTWn5NtRu/t2/eBM72Nr+wsRanCk2CoO3L9saoQlE5M8jPPZ1oZkpnSsjq9DFCDTHM0tT4c\n' +
605
- 'NUcSn7z48E0a6fnQJamWE0taEFZpZfwrF63iDiK6Txc1vUL7S/mZgWzJSOogSBEbbcQYvxHizYe\n' +
606
- 'wwezSUkQ+MrRLYmnzgnWQYLnRuR6iOevPfH/5VnW5tE1mKx1nstx1MyGcWCIyYZ4Vsjy2N2X6L6\n' +
607
- 'ZAYsIzucrmyBTK3r8zFIu5RIVB3165SakvyLy0Tgkw/WxO1Ii5ydw0EKKQLbjWKcxvsH0Os5xYt\n' +
608
- 'Qk5VfeCoXO140LhBEeD01F3fGeF1Cgi0pm3IEcgWaw14cfHCDjKFAwiSQINJAFWRT1fz8vn3yFu\n' +
609
- 'aEK/HIufxynCYzLzIplabgJ7tCbCmVHQyg12ijz6G0UOvgyDFsQxRtTgr5kJNjbpbH1qhv0AnfZ\n' +
610
- '4VTHKqJpsA826ZlmFc5uTZijcXtwTRmiMrAxyR0MmYL8EhdFtak+MbMyyqOxOsq7gpgCpxp1JbP\n' +
611
- 'OlrvWZ+vdfz6eiNR12A0ToLVrjhfnRsiljMpcxMNDUNZHzUQUIzb0LnMn8/WJ4/hXGso8bqboms\n' +
612
- 'oBM5Jvu9XtPLcmfiA5FZSXfWpHbgAIBhITIDyGy5MzHau7bnNoImIWOpch7IKGAK0m8s3BLWevx\n' +
613
- 'ahjFvzJ48z99NVMkDLzXeiv"}',
614
- bitgoKey: 'd3530bb015dadd34c8083d544794ac6e4e0fa4ad21c1167ad590baf9b0482b9bcd6c3b9e55c\n' +
615
- '5cd9bf18bf96e27edd8b7f58f9f51ce0a256c5a793aeaff8db811',
616
- bitgoKeyNoFunds: '4368cecc6b8290fdab5e449c70673c5cb8d7f76481db807d41d16629143a2e1d6d97c5672a0\n' +
617
- '3060a1777530681a784cb15165f41e49f072d5eb8026d7a287b35',
618
- destinationPubKey: '3EJt66Hwfi22FRU2HWPet7faPRstiSdGxrEe486CxhTL',
619
- destinationPubKey2: 'HMEgbR4S2hLKfst2VZUVpHVUu4FioFPyW5iUuJvZdMvs',
620
- walletPassword: 't3stSicretly!',
621
- durableNoncePubKey: '6LqY5ncj7s4b1c3YJV1hsn2hVPNhEfvDCNYMaCc1jJhX',
622
- durableNoncePubKey2: '4Y3kQtmVUfF7nimtABPpCwjihmLgJUgm8eZTAo44c4u9',
623
- durableNoncePubKey3: '6UW2N7eynvw1zjULpGDxPorJHj6wpvVgiFUcjzwoY6fg',
624
- durableNoncePrivKey: '447272d65cc8b39f88ea23b5f16859bd84b3ecfd6176ef99535efab37541c83b051a34bc8acd438763976f96876115050f73828553566d111d7ac8bffebf587c',
625
- };
626
- exports.closeATAkeys = {
627
- userKey: '{"iv":"tjNp5U3pZs3bJPRYF2zKKA==","v":1,"iter":10000,"ks":256,"ts":64,"mode"\n' +
628
- ':"ccm","adata":"","cipher":"aes","salt":"6osfpp5K4mo=","ct":"mnjouojR2U3xME\n' +
629
- 'NBJYiMM/CC0hvnZqyBlXi6eI4rm6Y7thuWfM6NwcUCAvS8+gsXdtSioQKR2lV2fWEnVPiTAhdeL\n' +
630
- 'pYzy4cRd4khpuh9aGmN8aBHmyntYYZDIgUjfUt6aozh8pBk+H41Ki6+AQlod7SQeVnaqIAmQAly\n' +
631
- 'LStORYLnBYcaiMVi579bLyKbD7XHRr+dyyLq0GPMlPda4EjTXw2KF5wGseQloQVREksRoiqTrQf\n' +
632
- '5UNT8MZO7HgdEkunUqzqcSaf5aYET3dxXUxtZ/56lYB0heXTFk4MALhTU2ohbaKqcqX+wqdbPAP\n' +
633
- 'jzwrt3uKsyGRy3TohpJZtepmSpRf2BuGae4ugMzGxnyj0mkt6OIxBTqHH371/Fq0D0cKlnNU/XI\n' +
634
- 'OapMs4JxAsMrV19BGXnYm6ratThjeHO0YpIf+G2KTx3Hq7XpEPU1q3JtLhD0WKxGCitWUPpJO/c\n' +
635
- 'JqYaF8tULDh/PE9mNb6w8VNEGT8Ur8WNif6uAuqXrruNtcZ3JpEeIRJ0/dWo62ycqtHCDX6ho7l\n' +
636
- 'jlut0fo6Pg1SSM+0aFBc+yYx08dL5X6Ce0nj6RlayvsXRP9o/ga3yg7pjnrpp5sOmIss7Y0zZGc\n' +
637
- 'eulkwPP2/9eJoTfoVASH9/ePcMCjGYtGBV0VVWSjT3EhjViJND6wcRJ3F7CJpgvUX9n6NTC/CLX\n' +
638
- 'oLJMDJSs0CVT7o4uY5p5xPZhk6KNCOqJxncjGtfHTeJjh9IJxVtfpmSo1UKqxXJmSBnms1Nijp5\n' +
639
- 'o5BCVjeRnY3LHboGStVXRxbgo12kzYVA2qlsbnqmaZNoHXzvInml1PLtvGBQZ3Wy0oQxQbyG/M7\n' +
640
- '/X65iPmHxWQZbDERLokQ2WmSPgjxXc3w1mxUykFH0y3ny6+iE9fXhfTfRpY6sEcb6lAfImcNr/Q\n' +
641
- 'GXtgL1VvtGlAzrBfRr8ruj8DD9Pq8tiobOQ3zwgqWsR8dM3iFZSAUjyA9I684Xnl0XYR7VjWZHO\n' +
642
- 'EH88iBMAW+YgiC8+fOqAclCSPxis82qbrVpRLM1mu5+I1NjDQExlD5Uq/jjHRtOXtPhqL99o0oS\n' +
643
- 'BEiui2nN8fNABx0pnDJ3PxZYV9cE54uUiEu0nbEUW4IYEheMtfKdatGcqYVlCUVItKkzi6AqION\n' +
644
- 'qrJlEs+T3pNZqenCDmJG1zvmCd9cZqqEErAIQ5922EXOpt3W2rJ2mT0cmFm6nJEp8"}',
645
- backupKey: '{"iv":"ON67DMuAPLDa8q8YrXdlRw==","v":1,"iter":10000,"ks":256,"ts":64,"mode"\n' +
646
- ':"ccm","adata":"","cipher":"aes","salt":"o4F4G9rfuF4=","ct":"y/ZrNbAXgJC4Yb\n' +
647
- 'vKzF4PI0Y2CmDiA3Y/SeXdSsYMm/b1nG3gWmsQaMbdDavrApG8XNG2n1r+LpfPEkpfq0rZ+xiph\n' +
648
- 'F0MEEyuT1jxBN4DN4qz6K3w+3iYafPn7CVylIWuKfzsWX9mwMrKj6TDMHYF/9aMXh1RYVUUTRe4\n' +
649
- 'RVn8MkIi68+/A32EGNwIqDbeLoU1LfadVHiZiNGwHIb2qT7nNRi1AKdRsxC/szZ9v6pAS5fcbZ6\n' +
650
- '6hKnuM0cKFIMRjjwSIVDW+SP/1jgoBiJKPyOEA/j1Qhbs0HVWo15QkgsRki62ZoiXhx9q3zMDWU\n' +
651
- 'WLPGEPUo7oVhVNJffKy3vanFe2KXv7wvRvxH8w6YAxHbjIahR9f9r4dYWm8N4b0AF+YRn/Dae6U\n' +
652
- 'y1TT+5DaVVdew7w4sYH5HnWS/2WyPK07CImIVC65W4VQXk1gdPAN5Q+h5eRZy9kSZup2YDktR3t\n' +
653
- 'fp1V1SOlLpAxkn1qqgZ/eJgyeU9iQAnMu9EaY46AStBESahVRQNvD5q9ZJhNOdN0HowjD4WQ4NR\n' +
654
- 'chkE1IFNYqGt/PrMsMY6L6dnUVNlWAMj2VqDb1vVjzx87LOo/trcn+qCyYepuqIkDXP57TE4nB2\n' +
655
- 'bC6JzE/ZVrp9U61cihJWycXwVexlKm9F4S6NAQgQDFIAj3lBJG+OUdJBGpzsX5UYS1gOk0RksmF\n' +
656
- 'zhY+TWOsEeXRlr36EDxbduzY1MkhY7lDnOD+SjdBTimXzRDpdMRBXsqxZlguHfKENGpiFPeJVnl\n' +
657
- 'qjGzzdAtFtLWlTxb/WBc9MLW+oYFgkan8DdfvI4ohFoyfw0e5oz5eSJCGfwlx0iWAsqwyngEnXt\n' +
658
- '/qBTECxm52oZbSfdkXFP1ksqt0Jsu/D5PxlqvB2n8UXdvjMY0tXEEZl0z4/jX/xOjv5JVUNFye1\n' +
659
- 'PNX09Bflf8PoyxyH5Uc82z8fSnnCb+kdLeVh9SVED9/A0kg7TlFRyF+Q2cR/r7hqDMQ0MCW4pJS\n' +
660
- 'KNN+V/rzW/o1p5bORcI5slBR5h8MManmNkXkS+TnNsMFwBgjFsfGh81xoKUauJURPeJPXIbabHM\n' +
661
- 'glI5ZQvRs8qBuEZE/MaeK+U89yvB8Brao0LBZrwuxEYQkVB0+6ErG2ux1mL1T/cOdiT50wyflLn\n' +
662
- 'KRMGOKT8cZiPvmytCRhBD1GvWkkKgxTK1uWx/emaBgB3BTmtnHo/V7ibhulkckw=="}',
663
- bitgoKey: '3e7d84d26f567a46da5cbd283e948e66a48a010c28edc6b012bd61211077d596a152d43cb65\n' +
664
- '3fb382b62c93bdb8537c28b6a4fcfc93ae1ad0f4ad8dae84b7929',
665
- closeAtaAddress: 'CKWfQ2m8MKapmBcsAvxVUPn5u9pc7AqqFj8i1Razqsos',
666
- recoveryDestinationAtaAddress: '72rBaNrUdAchUZSutb6Ze1gksd3iCyLq53P48d2tvL1a',
667
- bs58EncodedPublicKey: 'Em74QaaUvHNSURych2r5mRRK7o5ih5DURhfQiMArhfFp',
668
- destinationPubKey: 'EZpyxDHbVdX7GxdY6fv6du98yAw1WtNBEnnWhJpUsM8N',
669
- walletPassword: 'bitgo_test@123',
670
- };
671
- exports.ovcResponse = {
672
- signatureShares: [
673
- {
674
- txRequest: {
675
- transactions: [
676
- {
677
- unsignedTx: {
678
- serializedTx: 'AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7yd8LOXvsLtO2REqMM/OCZ8wItfsqfTfia2xIfibRW3wHgw63jiaojbXeSqaYajJ/Ca7YwBUz5blydI3fYLgPAgECBsLVtfT7mpvNii8wPk0G942N7TAHE/RW2iq/8LPqAYWqBRo0vIrNQ4djl2+Wh2EVBQ9zgoVTVm0RHXrIv/6/WHxPX1mHv+JqpmAT79ltNjYPK0M2yR+ZMln7VgUTBWFNQvLqE/j/nXlY2/JpxuNr/fXLXEPeS04dPvt9qz1dAoYEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGp9UXGSxWjuCKhF9z0peIzwNcMUWyGrNE2AYuqUAAADpiH20cxLj7KnOaoI5ANNoPxYjs472FdjDeMPft3kXdAgQDAgUBBAQAAAAEAgADDAIAAADwopo7AAAAAA==',
679
- scanIndex: 0,
680
- coin: 'tsol',
681
- signableHex: '02010206c2d5b5f4fb9a9bcd8a2f303e4d06f78d8ded300713f456da2abff0b3ea0185aa051a34bc8acd438763976f96876115050f73828553566d111d7ac8bffebf587c4f5f5987bfe26aa66013efd96d36360f2b4336c91f993259fb56051305614d42f2ea13f8ff9d7958dbf269c6e36bfdf5cb5c43de4b4e1d3efb7dab3d5d028604000000000000000000000000000000000000000000000000000000000000000006a7d517192c568ee08a845f73d29788cf035c3145b21ab344d8062ea94000003a621f6d1cc4b8fb2a739aa08e4034da0fc588ece3bd857630de30f7edde45dd0204030205010404000000040200030c02000000f0a29a3b00000000',
682
- derivationPath: 'm/0',
683
- parsedTx: {
684
- inputs: [
685
- {
686
- address: 'E7Z6pFfUhjx2dFjdB9Ws2KnKepXoq62TeF5uaCVSvqQV',
687
- valueString: '999990000',
688
- value: 999990000,
689
- },
690
- ],
691
- outputs: [
692
- {
693
- address: 'HMEgbR4S2hLKfst2VZUVpHVUu4FioFPyW5iUuJvZdMvs',
694
- valueString: '999990000',
695
- coinName: 'tsol',
696
- },
697
- ],
698
- spendAmount: '999990000',
699
- type: '',
700
- },
701
- feeInfo: { fee: 10000, feeString: '10000' },
702
- coinSpecific: {
703
- commonKeychain: 'f342b7b3bfe5086d189bc0886139d3fbb1669381d725d9f6b6b522c62c8c14e8d772493a05c9bb82fb1adfb42dfae30f8746c3dc17bc0183806094f66d5e2fe0',
704
- },
705
- },
706
- signatureShares: [],
707
- signatureShare: {
708
- from: 'backup',
709
- to: 'user',
710
- share: 'f47e2fdd3d93346ae8db9a51ef45e89b7decc3a216cee3a56f0cb8eaf0cf811b04266d87b78fe27f9f4236c79ec62078562dadb220390c7e1264e28b6a2c5c0d',
711
- publicShare: 'c2d5b5f4fb9a9bcd8a2f303e4d06f78d8ded300713f456da2abff0b3ea0185aa',
712
- },
713
- },
714
- ],
715
- walletCoin: 'tsol',
716
- },
717
- tssVersion: '0.0.1',
718
- ovc: [
719
- {
720
- eddsaSignature: {
721
- y: 'c2d5b5f4fb9a9bcd8a2f303e4d06f78d8ded300713f456da2abff0b3ea0185aa',
722
- R: 'f47e2fdd3d93346ae8db9a51ef45e89b7decc3a216cee3a56f0cb8eaf0cf811b',
723
- sigma: '285e34777d5d722fdb80b4eae20a64fc7877b39700f05b5b2e40d0af5e4fa801',
724
- },
725
- },
726
- ],
727
- },
728
- ],
729
- };
730
- exports.ovcResponse1 = {
731
- signatureShares: [
732
- {
733
- txRequest: {
734
- transactions: [
735
- {
736
- unsignedTx: {
737
- serializedTx: 'AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAYJm8vvmG/mNJu4C5kO4WhlMcbT4KVGaOBPzuCDbkObKmYjMY2LbuKyUpEbZOKoMKAoE/jdCpwmd+Gl0v8v3lDPxq4QVKhRREb/BUK0Cp1zNLDNdkc/teKqH+hcxvAU3BKWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABA6xfYoS5WNYtTPd5NM41tJdwdrwowp27RyoJ+tJ4154yXJY9OJInxuz0QKRSODYMLWhOZ2v8QhASOe9jb6fhZ9mZ6kmvJbJbqUQBH8oUhTvQ3Lm5baZUT3MTIwW1kg9UGp9UXGSxcUSGMyUw9SvF/WNruCJuh/UTj29mKAAAAAAbd9uHudY/eGEJdvORszdq2GvxNg7kNJ/69+SjYoYv8swsvfMxX8TuuomUFaNib8ODP4cc0RY8ZowseB+vBZ8cCBQcAAgYEAwgHAAgEAQQCAAoMAMqaOwAAAAAJ',
738
- scanIndex: 0,
739
- coin: 'tsol',
740
- signableHex: '010006099bcbef986fe6349bb80b990ee1686531c6d3e0a54668e04fcee0836e439b2a6623318d8b6ee2b252911b64e2a830a02813f8dd0a9c2677e1a5d2ff2fde50cfc6ae1054a8514446ff0542b40a9d7334b0cd76473fb5e2aa1fe85cc6f014dc1296000000000000000000000000000000000000000000000000000000000000000040eb17d8a12e56358b533dde4d338d6d25dc1daf0a30a76ed1ca827eb49e35e78c97258f4e2489f1bb3d1029148e0d830b5a1399daff1084048e7bd8dbe9f859f6667a926bc96c96ea510047f285214ef4372e6e5b699513dcc4c8c16d6483d506a7d517192c5c51218cc94c3d4af17f58daee089ba1fd44e3dbd98a0000000006ddf6e1ee758fde18425dbce46ccddab61afc4d83b90d27febdf928d8a18bfcb30b2f7ccc57f13baea2650568d89bf0e0cfe1c734458f19a30b1e07ebc167c702050700020604030807000804010402000a0c00ca9a3b0000000009',
741
- derivationPath: 'm/0',
742
- parsedTx: {
743
- inputs: [
744
- {
745
- address: 'BVAZCQTEeAsZXb4qGZcHLaU7UUeLNx9kYiE3QbvP5Txh',
746
- valueString: '1000000000',
747
- value: 1000000000,
748
- },
749
- ],
750
- outputs: [
751
- {
752
- address: 'CiUPBFiVKkXcuVhJi9pz9yYd8DKsebRgKqeeorUP7GzZ',
753
- valueString: '1000000000',
754
- coinName: 'tsol:t22mint',
755
- },
756
- ],
757
- spendAmount: '1000000000',
758
- type: '',
759
- },
760
- feeInfo: {
761
- fee: 2044280,
762
- feeString: '5000',
763
- },
764
- coinSpecific: {
765
- commonKeychain: 'e4b39344a97b895691482f0fa9005cc56542a18939aceb0a714ecf80ef6344e77cb8682d6755fb9f91269fb3ee02f8fccd0af824a904c30f781e3f7c51f652db',
766
- },
767
- },
768
- signatureShares: [],
769
- signatureShare: {
770
- from: 'backup',
771
- to: 'user',
772
- share: '8d67d1b5b1c95ee9e7b8337ebce36399270e17193be98fa7dca85246be838d7ecf21922c583a77a68ab892b6338f433cbd6e643abced4820b48168dde864ea05',
773
- publicShare: '9bcbef986fe6349bb80b990ee1686531c6d3e0a54668e04fcee0836e439b2a66',
774
- },
775
- },
776
- ],
777
- walletCoin: 'tsol',
778
- },
779
- tssVersion: '0.0.1',
780
- ovc: [
781
- {
782
- eddsaSignature: {
783
- y: '9bcbef986fe6349bb80b990ee1686531c6d3e0a54668e04fcee0836e439b2a66',
784
- R: '8d67d1b5b1c95ee9e7b8337ebce36399270e17193be98fa7dca85246be838d7e',
785
- sigma: 'f933cd116148b2e69d54bd14330c21496b0f562c3a1fe0c589ec83f03e5d4202',
786
- },
787
- },
788
- ],
789
- },
790
- ],
791
- };
792
- exports.ovcResponse2 = {
793
- signatureShares: [
794
- {
795
- txRequest: {
796
- transactions: [
797
- {
798
- unsignedTx: {
799
- serializedTx: 'AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABNJM2UWbBUH5wT0JJHILlhCs33HX8DeE/8Tdsw6tGfZoMhCnSKv6TPWtBxy7Sb6sW8ksCUPnAWuHGGKmgjEMBAgECBmLrqxJrY2kbN/tcrQw3P8P15OljFGabFJAKBrUO1grNBRo0vIrNQ4djl2+Wh2EVBQ9zgoVTVm0RHXrIv/6/WHxPX1mHv+JqpmAT79ltNjYPK0M2yR+ZMln7VgUTBWFNQsLVtfT7mpvNii8wPk0G942N7TAHE/RW2iq/8LPqAYWqAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGp9UXGSxWjuCKhF9z0peIzwNcMUWyGrNE2AYuqUAAAIZQniiS73D6mwfpnfhVMC4lyYJtRSrmoZpF7yIlUdIDAgQDAgUBBAQAAAAEAgADDAIAAADwPc0dAAAAAA==',
800
- scanIndex: 1,
801
- coin: 'tsol',
802
- signableHex: '0201020662ebab126b63691b37fb5cad0c373fc3f5e4e96314669b14900a06b50ed60acd051a34bc8acd438763976f96876115050f73828553566d111d7ac8bffebf587c4f5f5987bfe26aa66013efd96d36360f2b4336c91f993259fb56051305614d42c2d5b5f4fb9a9bcd8a2f303e4d06f78d8ded300713f456da2abff0b3ea0185aa000000000000000000000000000000000000000000000000000000000000000006a7d517192c568ee08a845f73d29788cf035c3145b21ab344d8062ea940000086509e2892ef70fa9b07e99df855302e25c9826d452ae6a19a45ef222551d2030204030205010404000000040200030c02000000f03dcd1d00000000',
803
- derivationPath: 'm/1',
804
- parsedTx: {
805
- inputs: [
806
- {
807
- address: '7f9P5FqH9hDsWzM13F9yiKpgyDLCiE3unnxx7KgKkhik',
808
- valueString: '499990000',
809
- value: 499990000,
810
- },
811
- ],
812
- outputs: [
813
- {
814
- address: 'E7Z6pFfUhjx2dFjdB9Ws2KnKepXoq62TeF5uaCVSvqQV',
815
- valueString: '499990000',
816
- coinName: 'tsol',
817
- },
818
- ],
819
- spendAmount: '499990000',
820
- type: '',
821
- },
822
- feeInfo: { fee: 10000, feeString: '10000' },
823
- coinSpecific: {
824
- commonKeychain: 'f342b7b3bfe5086d189bc0886139d3fbb1669381d725d9f6b6b522c62c8c14e8d772493a05c9bb82fb1adfb42dfae30f8746c3dc17bc0183806094f66d5e2fe0',
825
- },
826
- },
827
- signatureShares: [],
828
- signatureShare: {
829
- from: 'backup',
830
- to: 'user',
831
- share: 'd40f2f33a62ee2b01d8e8de57a092192bf4fb5b5d2e6169bf311b5edc61547651f27370be7c76ff5205f40ace949bd88f01b18e0dcdf78aeed33afac9f720209',
832
- publicShare: '62ebab126b63691b37fb5cad0c373fc3f5e4e96314669b14900a06b50ed60acd',
833
- },
834
- },
835
- ],
836
- walletCoin: 'tsol',
837
- },
838
- tssVersion: '0.0.1',
839
- ovc: [
840
- {
841
- eddsaSignature: {
842
- y: '62ebab126b63691b37fb5cad0c373fc3f5e4e96314669b14900a06b50ed60acd',
843
- R: 'd40f2f33a62ee2b01d8e8de57a092192bf4fb5b5d2e6169bf311b5edc6154765',
844
- sigma: 'fb0de01cb8d26bd1fae9649f14db9b43120f724c490f296d90fee4b0b0dff508',
845
- },
846
- },
847
- ],
848
- },
849
- {
850
- txRequest: {
851
- transactions: [
852
- {
853
- unsignedTx: {
854
- serializedTx: 'AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADcp9xJp3TFHdivEbhwJKldR4Ny+pasoFx+Bgk8q6g1iNiq7XSi1Ov3bs7euMkTj7nDRFqP8lv7xLTcvrBm9OQJAgECBp14ImBCdmVROlw0UveYS1MvG/ljCRI3MJTFmsxuXEoWBRo0vIrNQ4djl2+Wh2EVBQ9zgoVTVm0RHXrIv/6/WHw0hyxvpVwtIx9/zeX2O16eTrY+aKIh1mdKg4MMg0eyxMLVtfT7mpvNii8wPk0G942N7TAHE/RW2iq/8LPqAYWqAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGp9UXGSxWjuCKhF9z0peIzwNcMUWyGrNE2AYuqUAAAC7ws1XFslinwgtpISUViVWIVTHyD2Q0qj24YjKmrAmXAgQDAgUBBAQAAAAEAgADDAIAAADwPc0dAAAAAA==',
855
- scanIndex: 2,
856
- coin: 'tsol',
857
- signableHex: '020102069d782260427665513a5c3452f7984b532f1bf9630912373094c59acc6e5c4a16051a34bc8acd438763976f96876115050f73828553566d111d7ac8bffebf587c34872c6fa55c2d231f7fcde5f63b5e9e4eb63e68a221d6674a83830c8347b2c4c2d5b5f4fb9a9bcd8a2f303e4d06f78d8ded300713f456da2abff0b3ea0185aa000000000000000000000000000000000000000000000000000000000000000006a7d517192c568ee08a845f73d29788cf035c3145b21ab344d8062ea94000002ef0b355c5b258a7c20b692125158955885531f20f6434aa3db86232a6ac09970204030205010404000000040200030c02000000f03dcd1d00000000',
858
- derivationPath: 'm/2',
859
- parsedTx: {
860
- inputs: [
861
- {
862
- address: 'BbhFquGMfMz2KcMrXrqZZhKD1GLcvBgtJnaA5sE7viv9',
863
- valueString: '499990000',
864
- value: 499990000,
865
- },
866
- ],
867
- outputs: [
868
- {
869
- address: 'E7Z6pFfUhjx2dFjdB9Ws2KnKepXoq62TeF5uaCVSvqQV',
870
- valueString: '499990000',
871
- coinName: 'tsol',
872
- },
873
- ],
874
- spendAmount: '499990000',
875
- type: '',
876
- },
877
- feeInfo: { fee: 10000, feeString: '10000' },
878
- coinSpecific: {
879
- commonKeychain: 'f342b7b3bfe5086d189bc0886139d3fbb1669381d725d9f6b6b522c62c8c14e8d772493a05c9bb82fb1adfb42dfae30f8746c3dc17bc0183806094f66d5e2fe0',
880
- lastScanIndex: 20,
881
- },
882
- },
883
- signatureShares: [],
884
- signatureShare: {
885
- from: 'backup',
886
- to: 'user',
887
- share: 'e2e1380e7398e05947ce65a3e9ca753a2957024032b329e8d5bef149c636c481d04cc96a656c063f0ad62fb55d46edeb39880b5cb7146db613e26968fd1e0a0b',
888
- publicShare: '9d782260427665513a5c3452f7984b532f1bf9630912373094c59acc6e5c4a16',
889
- },
890
- },
891
- ],
892
- walletCoin: 'tsol',
893
- },
894
- tssVersion: '0.0.1',
895
- ovc: [
896
- {
897
- eddsaSignature: {
898
- y: '9d782260427665513a5c3452f7984b532f1bf9630912373094c59acc6e5c4a16',
899
- R: 'e2e1380e7398e05947ce65a3e9ca753a2957024032b329e8d5bef149c636c481',
900
- sigma: '4a9064a9f59942a4a0f6cfbb6939577b39b9bf1a25f8f97ab7b3e954d4ce1f02',
901
- },
902
- },
903
- ],
904
- },
905
- ],
906
- };
907
- exports.wrwUser = {
908
- userKey: '{"iv":"1ngPVLcgxlv5FSh1ygiR2Q==","v":1,"iter":10000,"ks":256,"ts":64,"mode"' +
909
- ':"ccm","adata":"","cipher":"aes","salt":"p7A2qFEeWh8=","ct":"a2xFegpYHeqBSw' +
910
- 'cRvMq4ja+QPAxuJUwVIYmUz/oT6DzNDXc/G45rM++sj59vewHdmcDW+ayaqPaYZNzzQlOBDErww' +
911
- '7ZDENSZfA/Ph/2/4xDBm1CKeNKnjtSz/yj4muMcaiW2/hwmdusVokWlN8rkEQQZv671z6A8h0u7' +
912
- 'fq9W22JfPJSB7KM5BYylIWhl4e6p4JorQ2sMDAeswFKjIrwzmljA112C8XJOYZDRED9LCN3/Z08' +
913
- '7/3xeT8coFQKRXFFc2JWDjMGxi/eg/tl53VUvO1B4c0061kIRktO1aLM/nj75i+B8SITemgkv4g' +
914
- 'iZekPo9GaQtnkM5HEWMyLBW6LZ12DApnDfx1NE5aEAJNpNVgwu/Yvfs3/lAabm6ctdb/9aNXQlE' +
915
- '4cQRHGuz5TqEPKJGPtzXzfLAmydYmatvh7MPcJtHjtxdt/4+FhsDlxa8RjqEnNksEY1mMM6li67' +
916
- 'kCqks2mqFtSv9OpAOjhlc7tscJO7NgdV2sqLJFvoczg4SOz+S2EtXWowdvhzgudjtP8s9aAXduV' +
917
- '/rmNDtpK0kf5ODoaJgbGe7m6YFmBgCSJXBUWSbtB70mgoKmyfwC7qP5XAbwYOLZQzq2d/hbp85J' +
918
- '8vU4E8fEQvAQSIee2fwobNZHLaO6+UQu3ucSGVLCKJ9WevL1veEzL6f9SeNJQYhKa7tV0jHYBSd' +
919
- 'SU2J9myHqXNa1X+2QmtzOiHthv9V6VghDrtXKPNbajMUA+u35C3613w76lX8tEv2nqYjp1fY1NJ' +
920
- 'h8FP8rLNd7R3Bn7iWHwHw4sllqLBog4XRdPaVaeCclNeNLhQj3czOMS/JI/rW2h3A3azrQw3Hac' +
921
- 'Jgma13hYzc4e6sWb+XjEke44p45TWc72y9hxAQ4+TZTIDM6EGXT1xRu62mwjOyaq+vFkw6T5ewQ' +
922
- 'rpAAsIwKtjhF0ILN4+OD55jKjjVzjJgFUGtTzyrkBWRzqv949Fr6aqV6x0eoLKJ1l028Mq4/PjT' +
923
- 'rb1pTyVcGOaa0xRBW6BMnhOSkbi+xE5Kv9kSLghXNl02R5CwO0Px2jD3vG0Pm1V/H+ZHlJsuLUo' +
924
- 'rAnOlAXArTqeQGLv90wlUr9JsQc80gjtiYVBIBPKzeGxnx7yMbj9x9fKvAglKSAGbiNwl9/REBX' +
925
- 'E7EXY3veDG0pJdYag3N0m4eXz6ITMctyFsVKQZALPDSsSmaZR0UcjbOOIC4YuISB9"}',
926
- backupKey: '{"iv":"wBepCUHdDonP5AVkRCTkkQ==","v":1,"iter":10000,"ks":256,"ts":64,"mode"' +
927
- ':"ccm","adata":"","cipher":"aes","salt":"ETz6faBtlh8=","ct":"CldHw22d0wWFPd' +
928
- 'dbQQcQHXfd6p5BvcE2Khp6FK57SdqUH9VZnTFjH6mqDYj0LfYVjtDkl/USckeYX5vI59iSrGxsV' +
929
- 'rOQWmRpyRObpPp6dcm06sBO+6gWvPWB62508XpIUN4g1aCbpOY1MUNEzGHIIjM44JPBj9BJRqr5' +
930
- 'DBw+fZrpp61UGx/4tYKB4+g65drybj45TW14BwJcu1vTZvsCs+JMmxxfnobqkCIjehIWn4dULl/' +
931
- 'Nl6f2/v0AJryI1XnomvTesTLAEUKI0dXAJhTBqGwgTbBdN+XdoqTbvMaBdY6Qe2fQjoxnvbQZyg' +
932
- '18sHbaLpKVrKEBbhQ9CbamFHXRu88Vshrp9uymeoAaNjMeMGJLEiigeg2dNOraj6LTfFpmL+RF/' +
933
- 'z2tgewGrLAuDm8t5t3aJF3Aj4bAZcBgSQqzLiNcKUWXQER/Tfx7cPCYXtJh3Krij34pQG7ZkA91' +
934
- 'YPYFNjWgs0OfnHrOSZWYm9fS1IMGp0/qZaPilOSiHfcVI2Yc5+i2lsK+jyJh3qUQU00s8Edlzu3' +
935
- 'XpKbxlNZW48R63w9YsuUZ9PJkhT3YMIDwissUl1h7zeE0kwuaaERPxJiT1G5b9NS82sdZVEH+1B' +
936
- 'i/u3p65R/Zm/d81lneTHIaRRFRw4tLvwQhb0YVF4jph/ZruvqVQ9sXf81iS0wM1vbyvdHuSYk1p' +
937
- 'PcovRNnjQerurSSODO+xWup2gNkSLy3K6Vyjg1179+Aqsc2wwko4wHihubpWn2TJ+QqVNBPBDbN' +
938
- 'jhIS9o6+c5ZsRRWWfVZyRjPwYd7954ulG/uF8HaK2bkABkGpP10Q6ckb+t/HoN1MpGT/XXCxpLa' +
939
- 'ElxM5vj7+eekIKxN9yvKDwShseH7KqWwwZmnavqb1L5QnfG91XdokrE0Lqz/H1xiNxyW36WE2xj' +
940
- 'Fi7WV5RoySvTLNviXvH9apoZ8RR86mOnl0bAG4VbFmBf3a3jqIMm6yVyHT94Fnlz3V6yIibU2GB' +
941
- 'TFHeDu935KOFDhNmw7qti+TZxdLDvZsDKKR7AsFrZwmreFwHjg9Tao4JSmUJd3tHfaW71+T0kZQ' +
942
- 'SFwXrgMb5Lzr78WkhmEA7oZWrJP36X87CI8hMFhKwSb7FzfSHZCtRERLz2Q8C5Smd8b3EWvb1Ha' +
943
- 'y8qhGB8Czq+z1mJSKbymnMMBwco42Y30ofQ/xEBwO2TypJwKS9Ey+yddfA6ASuQ=="}',
944
- bitgoKey: '125746de1919236bd30a4809d718b1c161ab8f7674fe506bed438fa860adcfcc256f3721062' +
945
- 'dfeaea177c38c467a24228b9acf1a9f92fc2f5d0177bbbf218eb8',
946
- bitgoKeyWithManyTokens: 'f342b7b3bfe5086d189bc0886139d3fbb1669381d725d9f6b6b522c62c8c14e8d772493a05c9bb82fb1adfb42dfae30f8746c3dc17bc0183806094f66d5e2fe0',
947
- walletPassphrase: 'Ghghjkg!455544llll',
948
- walletAddress0: 'cyggsFnDvbfsPeiFXziebWsWAp6bW5Nc5SePTx8mebL',
949
- walletAddress1: '9jCvKZbmzothfWS6P7AJxLKY8JLdapkurZbHsZ8p9TP8',
950
- walletAddress2: '22USpDwmubAoY5uws4hp4YhJZwt4eoumeLrGGx5z7DWV',
951
- walletAddress3: 'FNe4or6gc5vmmCCMASJyYu9BRoiL14fDhjC5vxoGFiW2',
952
- walletAddress4: 'E7Z6pFfUhjx2dFjdB9Ws2KnKepXoq62TeF5uaCVSvqQV',
953
- walletAddress5: '8V34g2KeJXChECTWHfcJ5NeyWwyb7HvKpu66DD3YPNcf',
954
- };
955
- exports.enableTokenFixtures = {
956
- sendTokenEnablementPayload: {
957
- enableTokens: [{ name: 'tsol:ray', address: 'Gg8Y2TYjUiW4MdUJU3qR3CTDKG8izuKYpXobDj3uzi1y' }],
958
- walletPassphrase: 'test-password',
959
- apiVersion: 'full',
960
- prebuildTx: {
961
- walletId: '68bafee43eb5cd22aca2afd6b13ec7ad',
962
- wallet: {
963
- id: '68bafee43eb5cd22aca2afd6b13ec7ad',
964
- users: [{ user: '65f9c6797236825d1b4e1f82a1035b46', permissions: ['admin', 'spend', 'view'] }],
965
- coin: 'tsol',
966
- label: 'SOL BLIND SIGNING',
967
- m: 2,
968
- n: 3,
969
- keys: [
970
- '68bafed588671cf94ed8a5dbba882ad3',
971
- '68bafed52d6d95694cf596c2a153868b',
972
- '68bafed42d6d95694cf5956ed640853a',
973
- ],
974
- keySignatures: {},
975
- enterprise: '66632c6b42b03d265a939048beaaee55',
976
- organization: '66632c6d42b03d265a939107d2f586e5',
977
- bitgoOrg: 'BitGo Trust',
978
- tags: ['68bafee43eb5cd22aca2afd6b13ec7ad', '66632c6b42b03d265a939048beaaee55'],
979
- disableTransactionNotifications: false,
980
- freeze: {},
981
- deleted: false,
982
- approvalsRequired: 1,
983
- isCold: false,
984
- coinSpecific: {
985
- rootAddress: 'Gg8Y2TYjUiW4MdUJU3qR3CTDKG8izuKYpXobDj3uzi1y',
986
- pendingChainInitialization: false,
987
- minimumFunding: 2447136,
988
- lastChainIndex: { 0: 1, 1: -1 },
989
- nonceExpiresAt: '2025-09-05T12:54:16.219Z',
990
- trustedTokens: [
991
- { token: 'tsol:gari', state: 'active' },
992
- { token: 'tsol:gmt', state: 'active' },
993
- { token: 'tsol:orca', state: 'active' },
994
- ],
995
- },
996
- admin: {
997
- policy: {
998
- date: '2025-09-05T15:16:52.376Z',
999
- id: '68bafee43eb5cd22aca2afd9e699a3ac',
1000
- label: 'default',
1001
- rules: [],
1002
- version: 0,
1003
- latest: true,
1004
- },
1005
- },
1006
- clientFlags: [],
1007
- walletFlags: [],
1008
- allowBackupKeySigning: false,
1009
- recoverable: true,
1010
- startDate: '2025-09-05T15:16:52.000Z',
1011
- type: 'hot',
1012
- buildDefaults: {},
1013
- customChangeKeySignatures: {},
1014
- hasLargeNumberOfAddresses: false,
1015
- multisigType: 'tss',
1016
- hasReceiveTransferPolicy: false,
1017
- creator: '65f9c6797236825d1b4e1f82a1035b46',
1018
- walletFullyCreated: true,
1019
- config: {},
1020
- balanceString: '997865920',
1021
- confirmedBalanceString: '997865920',
1022
- spendableBalanceString: '985212384',
1023
- reservedBalanceString: '2447136',
1024
- receiveAddress: {
1025
- id: '68bafee43eb5cd22aca2afe431d4272b',
1026
- address: 'Gg8Y2TYjUiW4MdUJU3qR3CTDKG8izuKYpXobDj3uzi1y',
1027
- chain: 0,
1028
- index: 0,
1029
- coin: 'tsol',
1030
- wallet: '68bafee43eb5cd22aca2afd6b13ec7ad',
1031
- lastConsolidatedTime: '2025-09-08T20:27:43.026Z',
1032
- needsConsolidation: true,
1033
- coinSpecific: {
1034
- rootAddress: 'Gg8Y2TYjUiW4MdUJU3qR3CTDKG8izuKYpXobDj3uzi1y',
1035
- minimumFunding: 2447136,
1036
- type: 'native',
1037
- pendingChainInitialization: false,
1038
- trustedTokens: [
1039
- { token: 'tsol:gari', state: 'active' },
1040
- { token: 'tsol:gmt', state: 'active' },
1041
- { token: 'tsol:orca', state: 'active' },
1042
- ],
1043
- },
1044
- },
1045
- pendingApprovals: [],
1046
- },
1047
- txRequestId: 'ba2387ac-3634-47c9-9e68-b303ba3b68ca',
1048
- txHex: '0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000449d051689c3b00fbc5469c657df5b6cb933ac474d0413d01b9649927d5efdca0609bbe6ec994303447d0a637bbd66f2bb547cc2821c6a28cad6debd2daf070b0201060ae8e579a7198c71ee38b3ba2ee56af88cb16995a8f0bf46ab2a3702603cb732e41c96172044f1217c3784e8f02f49e2c8fc3591e81294ab54394f9d22fd7b7a8fa0fb8945a3d63fcacb1a209b094f9a829623548631f0afe5a8ed85d94b634512dc83aad01404ee1a3d70813d21e8923ad1d10354802dc3fbfade3d1c4f9547ce000000000000000000000000000000000000000000000000000000000000000081f74cefd3fb844f62ca7ed6f1418b3f86faf0886647d980259bf0aafbe77b6c8c97258f4e2489f1bb3d1029148e0d830b5a1399daff1084048e7bd8dbe9f85906a7d517192c568ee08a845f73d29788cf035c3145b21ab344d8062ea940000006a7d517192c5c51218cc94c3d4af17f58daee089ba1fd44e3dbd98a0000000006ddf6e1d765a193d9cbe146ceeb79ac1cb485ed5f5b37913a8cf5857eff00a93507d1bc739b13daf71ce8000f751dc08956ab0dd441d7fbf7c7666f9e0560ad020403020701040400000006070003000504090800',
1049
- buildParams: {
1050
- apiVersion: 'full',
1051
- enableTokens: [{ name: 'tsol:ray', address: 'Gg8Y2TYjUiW4MdUJU3qR3CTDKG8izuKYpXobDj3uzi1y' }],
1052
- type: 'enabletoken',
1053
- },
1054
- feeInfo: { fee: 2049280, feeString: '2049280' },
1055
- },
1056
- },
1057
- txParams: {
1058
- apiVersion: 'full',
1059
- enableTokens: [
1060
- {
1061
- name: 'tsol:ray',
1062
- address: 'A8DzSnggNN84nwPgVvLtdo1yZ3VscLGDi4FdEQXzUyYy',
1063
- },
1064
- ],
1065
- type: 'enabletoken',
1066
- walletPassphrase: 'test-password',
1067
- prebuildTx: {
1068
- walletId: '68bafee43eb5cd22aca2afd6b13ec7ad',
1069
- wallet: {
1070
- id: '68bafee43eb5cd22aca2afd6b13ec7ad',
1071
- users: [
1072
- {
1073
- user: '65f9c6797236825d1b4e1f82a1035b46',
1074
- permissions: ['admin', 'spend', 'view'],
1075
- },
1076
- ],
1077
- coin: 'tsol',
1078
- label: 'SOL BLIND SIGNING',
1079
- m: 2,
1080
- n: 3,
1081
- keys: [
1082
- '68bafed588671cf94ed8a5dbba882ad3',
1083
- '68bafed52d6d95694cf596c2a153868b',
1084
- '68bafed42d6d95694cf5956ed640853a',
1085
- ],
1086
- keySignatures: {},
1087
- enterprise: '66632c6b42b03d265a939048beaaee55',
1088
- organization: '66632c6d42b03d265a939107d2f586e5',
1089
- bitgoOrg: 'BitGo Trust',
1090
- tags: ['68bafee43eb5cd22aca2afd6b13ec7ad', '66632c6b42b03d265a939048beaaee55'],
1091
- disableTransactionNotifications: false,
1092
- freeze: {},
1093
- deleted: false,
1094
- approvalsRequired: 1,
1095
- isCold: false,
1096
- coinSpecific: {
1097
- rootAddress: 'Gg8Y2TYjUiW4MdUJU3qR3CTDKG8izuKYpXobDj3uzi1y',
1098
- pendingChainInitialization: false,
1099
- minimumFunding: 2447136,
1100
- lastChainIndex: {
1101
- 0: 1,
1102
- 1: -1,
1103
- },
1104
- nonceExpiresAt: '2025-09-05T12:54:16.219Z',
1105
- trustedTokens: [
1106
- {
1107
- token: 'tsol:gari',
1108
- state: 'active',
1109
- },
1110
- {
1111
- token: 'tsol:gmt',
1112
- state: 'active',
1113
- },
1114
- {
1115
- token: 'tsol:orca',
1116
- state: 'active',
1117
- },
1118
- ],
1119
- },
1120
- admin: {
1121
- policy: {
1122
- date: '2025-09-05T15:16:52.376Z',
1123
- id: '68bafee43eb5cd22aca2afd9e699a3ac',
1124
- label: 'default',
1125
- rules: [],
1126
- version: 0,
1127
- latest: true,
1128
- },
1129
- },
1130
- clientFlags: [],
1131
- walletFlags: [],
1132
- allowBackupKeySigning: false,
1133
- recoverable: true,
1134
- startDate: '2025-09-05T15:16:52.000Z',
1135
- type: 'hot',
1136
- buildDefaults: {},
1137
- customChangeKeySignatures: {},
1138
- hasLargeNumberOfAddresses: false,
1139
- multisigType: 'tss',
1140
- hasReceiveTransferPolicy: false,
1141
- creator: '65f9c6797236825d1b4e1f82a1035b46',
1142
- walletFullyCreated: true,
1143
- config: {},
1144
- balanceString: '997865920',
1145
- confirmedBalanceString: '997865920',
1146
- spendableBalanceString: '985212384',
1147
- reservedBalanceString: '2447136',
1148
- receiveAddress: {
1149
- id: '68bafee43eb5cd22aca2afe431d4272b',
1150
- address: 'Gg8Y2TYjUiW4MdUJU3qR3CTDKG8izuKYpXobDj3uzi1y',
1151
- chain: 0,
1152
- index: 0,
1153
- coin: 'tsol',
1154
- wallet: '68bafee43eb5cd22aca2afd6b13ec7ad',
1155
- coinSpecific: {
1156
- rootAddress: 'Gg8Y2TYjUiW4MdUJU3qR3CTDKG8izuKYpXobDj3uzi1y',
1157
- minimumFunding: 2447136,
1158
- type: 'native',
1159
- pendingChainInitialization: false,
1160
- trustedTokens: [
1161
- {
1162
- token: 'tsol:gari',
1163
- state: 'active',
1164
- },
1165
- {
1166
- token: 'tsol:gmt',
1167
- state: 'active',
1168
- },
1169
- {
1170
- token: 'tsol:orca',
1171
- state: 'active',
1172
- },
1173
- ],
1174
- },
1175
- },
1176
- pendingApprovals: [],
1177
- },
1178
- txRequestId: '17b5d895-c380-4973-9ab2-191a04d545f8',
1179
- txHex: '0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c70c9bb38230c6577dd46ae67975420585747a3be7fe2e8f744508f8bbd9122eda991f45c8031d1bd218998602870078164671e82d8020bd9caa36387163cc010201070be8e579a7198c71ee38b3ba2ee56af88cb16995a8f0bf46ab2a3702603cb732e41c96172044f1217c3784e8f02f49e2c8fc3591e81294ab54394f9d22fd7b7a8f3566d43c990eb025f022d68c80888882e9cbd00ed6267cff400cc065be79b9d2c41f3ee4163b631730fea44aaf49b2b5eb7ff29a52a8292fae6f45f7529c93c1000000000000000000000000000000000000000000000000000000000000000081f74cefd3fb844f62ca7ed6f1418b3f86faf0886647d980259bf0aafbe77b6c8792efb2b156bf73ac31e3022e9b98cdc80afa50d34c7f005fe4b84b540336e68c97258f4e2489f1bb3d1029148e0d830b5a1399daff1084048e7bd8dbe9f85906a7d517192c568ee08a845f73d29788cf035c3145b21ab344d8062ea940000006a7d517192c5c51218cc94c3d4af17f58daee089ba1fd44e3dbd98a0000000006ddf6e1d765a193d9cbe146ceeb79ac1cb485ed5f5b37913a8cf5857eff00a9b10993465fa6fd2e70caebcc7220931c696e877c5c4f1ee3d7bf3f1874b4ddb70204030308010404000000070700020605040a0900',
1180
- buildParams: {
1181
- apiVersion: 'full',
1182
- enableTokens: [
1183
- {
1184
- name: 'tsol:ray',
1185
- address: 'A8DzSnggNN84nwPgVvLtdo1yZ3VscLGDi4FdEQXzUyYy',
1186
- },
1187
- ],
1188
- type: 'enabletoken',
1189
- },
1190
- feeInfo: {
1191
- fee: 2049280,
1192
- feeString: '2049280',
1193
- },
1194
- },
1195
- },
1196
- txPrebuildRaw: {
1197
- walletId: '68bafee43eb5cd22aca2afd6b13ec7ad',
1198
- wallet: {
1199
- id: '68bafee43eb5cd22aca2afd6b13ec7ad',
1200
- users: [
1201
- {
1202
- user: '65f9c6797236825d1b4e1f82a1035b46',
1203
- permissions: ['admin', 'spend', 'view'],
1204
- },
1205
- ],
1206
- coin: 'tsol',
1207
- label: 'SOL BLIND SIGNING',
1208
- m: 2,
1209
- n: 3,
1210
- keys: [
1211
- '68bafed588671cf94ed8a5dbba882ad3',
1212
- '68bafed52d6d95694cf596c2a153868b',
1213
- '68bafed42d6d95694cf5956ed640853a',
1214
- ],
1215
- keySignatures: {},
1216
- enterprise: '66632c6b42b03d265a939048beaaee55',
1217
- organization: '66632c6d42b03d265a939107d2f586e5',
1218
- bitgoOrg: 'BitGo Trust',
1219
- tags: ['68bafee43eb5cd22aca2afd6b13ec7ad', '66632c6b42b03d265a939048beaaee55'],
1220
- disableTransactionNotifications: false,
1221
- freeze: {},
1222
- deleted: false,
1223
- approvalsRequired: 1,
1224
- isCold: false,
1225
- coinSpecific: {
1226
- rootAddress: 'Gg8Y2TYjUiW4MdUJU3qR3CTDKG8izuKYpXobDj3uzi1y',
1227
- pendingChainInitialization: false,
1228
- minimumFunding: 2447136,
1229
- lastChainIndex: {
1230
- 0: 1,
1231
- 1: -1,
1232
- },
1233
- nonceExpiresAt: '2025-09-05T12:54:16.219Z',
1234
- trustedTokens: [
1235
- {
1236
- token: 'tsol:gari',
1237
- state: 'active',
1238
- },
1239
- {
1240
- token: 'tsol:gmt',
1241
- state: 'active',
1242
- },
1243
- {
1244
- token: 'tsol:orca',
1245
- state: 'active',
1246
- },
1247
- ],
1248
- },
1249
- admin: {
1250
- policy: {
1251
- date: '2025-09-05T15:16:52.376Z',
1252
- id: '68bafee43eb5cd22aca2afd9e699a3ac',
1253
- label: 'default',
1254
- rules: [],
1255
- version: 0,
1256
- latest: true,
1257
- },
1258
- },
1259
- clientFlags: [],
1260
- walletFlags: [],
1261
- allowBackupKeySigning: false,
1262
- recoverable: true,
1263
- startDate: '2025-09-05T15:16:52.000Z',
1264
- type: 'hot',
1265
- buildDefaults: {},
1266
- customChangeKeySignatures: {},
1267
- hasLargeNumberOfAddresses: false,
1268
- multisigType: 'tss',
1269
- hasReceiveTransferPolicy: false,
1270
- creator: '65f9c6797236825d1b4e1f82a1035b46',
1271
- walletFullyCreated: true,
1272
- config: {},
1273
- balanceString: '997865920',
1274
- confirmedBalanceString: '997865920',
1275
- spendableBalanceString: '985212384',
1276
- reservedBalanceString: '2447136',
1277
- receiveAddress: {
1278
- id: '68bafee43eb5cd22aca2afe431d4272b',
1279
- address: 'Gg8Y2TYjUiW4MdUJU3qR3CTDKG8izuKYpXobDj3uzi1y',
1280
- chain: 0,
1281
- index: 0,
1282
- coin: 'tsol',
1283
- wallet: '68bafee43eb5cd22aca2afd6b13ec7ad',
1284
- coinSpecific: {
1285
- rootAddress: 'Gg8Y2TYjUiW4MdUJU3qR3CTDKG8izuKYpXobDj3uzi1y',
1286
- minimumFunding: 2447136,
1287
- type: 'native',
1288
- pendingChainInitialization: false,
1289
- trustedTokens: [
1290
- {
1291
- token: 'tsol:gari',
1292
- state: 'active',
1293
- },
1294
- {
1295
- token: 'tsol:gmt',
1296
- state: 'active',
1297
- },
1298
- {
1299
- token: 'tsol:orca',
1300
- state: 'active',
1301
- },
1302
- ],
1303
- },
1304
- },
1305
- pendingApprovals: [],
1306
- },
1307
- txRequestId: '17b5d895-c380-4973-9ab2-191a04d545f8',
1308
- txHex: '0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c70c9bb38230c6577dd46ae67975420585747a3be7fe2e8f744508f8bbd9122eda991f45c8031d1bd218998602870078164671e82d8020bd9caa36387163cc010201070be8e579a7198c71ee38b3ba2ee56af88cb16995a8f0bf46ab2a3702603cb732e41c96172044f1217c3784e8f02f49e2c8fc3591e81294ab54394f9d22fd7b7a8f3566d43c990eb025f022d68c80888882e9cbd00ed6267cff400cc065be79b9d2c41f3ee4163b631730fea44aaf49b2b5eb7ff29a52a8292fae6f45f7529c93c1000000000000000000000000000000000000000000000000000000000000000081f74cefd3fb844f62ca7ed6f1418b3f86faf0886647d980259bf0aafbe77b6c8792efb2b156bf73ac31e3022e9b98cdc80afa50d34c7f005fe4b84b540336e68c97258f4e2489f1bb3d1029148e0d830b5a1399daff1084048e7bd8dbe9f85906a7d517192c568ee08a845f73d29788cf035c3145b21ab344d8062ea940000006a7d517192c5c51218cc94c3d4af17f58daee089ba1fd44e3dbd98a0000000006ddf6e1d765a193d9cbe146ceeb79ac1cb485ed5f5b37913a8cf5857eff00a9b10993465fa6fd2e70caebcc7220931c696e877c5c4f1ee3d7bf3f1874b4ddb70204030308010404000000070700020605040a0900',
1309
- buildParams: {
1310
- apiVersion: 'full',
1311
- enableTokens: [
1312
- {
1313
- name: 'tsol:ray',
1314
- address: 'A8DzSnggNN84nwPgVvLtdo1yZ3VscLGDi4FdEQXzUyYy',
1315
- },
1316
- ],
1317
- type: 'enabletoken',
1318
- },
1319
- feeInfo: {
1320
- fee: 2049280,
1321
- feeString: '2049280',
1322
- },
1323
- },
1324
- walletData: {
1325
- id: '68bafee43eb5cd22aca2afd6b13ec7ad',
1326
- users: [
1327
- {
1328
- user: '65f9c6797236825d1b4e1f82a1035b46',
1329
- permissions: ['admin', 'spend', 'view'],
1330
- },
1331
- ],
1332
- coin: 'tsol',
1333
- label: 'SOL BLIND SIGNING',
1334
- m: 2,
1335
- n: 3,
1336
- keys: ['68bafed588671cf94ed8a5dbba882ad3', '68bafed52d6d95694cf596c2a153868b', '68bafed42d6d95694cf5956ed640853a'],
1337
- keySignatures: {},
1338
- enterprise: '66632c6b42b03d265a939048beaaee55',
1339
- organization: '66632c6d42b03d265a939107d2f586e5',
1340
- bitgoOrg: 'BitGo Trust',
1341
- tags: ['68bafee43eb5cd22aca2afd6b13ec7ad', '66632c6b42b03d265a939048beaaee55'],
1342
- disableTransactionNotifications: false,
1343
- freeze: {},
1344
- deleted: false,
1345
- approvalsRequired: 1,
1346
- isCold: false,
1347
- coinSpecific: {
1348
- rootAddress: 'Gg8Y2TYjUiW4MdUJU3qR3CTDKG8izuKYpXobDj3uzi1y',
1349
- pendingChainInitialization: false,
1350
- minimumFunding: 2447136,
1351
- lastChainIndex: {
1352
- 0: 1,
1353
- 1: -1,
1354
- },
1355
- nonceExpiresAt: '2025-09-05T12:54:16.219Z',
1356
- trustedTokens: [
1357
- {
1358
- token: 'tsol:gari',
1359
- state: 'active',
1360
- },
1361
- {
1362
- token: 'tsol:gmt',
1363
- state: 'active',
1364
- },
1365
- {
1366
- token: 'tsol:orca',
1367
- state: 'active',
1368
- },
1369
- ],
1370
- },
1371
- admin: {
1372
- policy: {
1373
- date: '2025-09-05T15:16:52.376Z',
1374
- id: '68bafee43eb5cd22aca2afd9e699a3ac',
1375
- label: 'default',
1376
- rules: [],
1377
- version: 0,
1378
- latest: true,
1379
- },
1380
- },
1381
- clientFlags: [],
1382
- walletFlags: [],
1383
- allowBackupKeySigning: false,
1384
- recoverable: true,
1385
- startDate: '2025-09-05T15:16:52.000Z',
1386
- type: 'hot',
1387
- buildDefaults: {},
1388
- customChangeKeySignatures: {},
1389
- hasLargeNumberOfAddresses: false,
1390
- multisigType: 'tss',
1391
- hasReceiveTransferPolicy: false,
1392
- creator: '65f9c6797236825d1b4e1f82a1035b46',
1393
- walletFullyCreated: true,
1394
- config: {},
1395
- balanceString: '997865920',
1396
- confirmedBalanceString: '997865920',
1397
- spendableBalanceString: '985212384',
1398
- reservedBalanceString: '2447136',
1399
- receiveAddress: {
1400
- id: '68bafee43eb5cd22aca2afe431d4272b',
1401
- address: 'Gg8Y2TYjUiW4MdUJU3qR3CTDKG8izuKYpXobDj3uzi1y',
1402
- chain: 0,
1403
- index: 0,
1404
- coin: 'tsol',
1405
- wallet: '68bafee43eb5cd22aca2afd6b13ec7ad',
1406
- coinSpecific: {
1407
- rootAddress: 'Gg8Y2TYjUiW4MdUJU3qR3CTDKG8izuKYpXobDj3uzi1y',
1408
- minimumFunding: 2447136,
1409
- type: 'native',
1410
- pendingChainInitialization: false,
1411
- trustedTokens: [
1412
- {
1413
- token: 'tsol:gari',
1414
- state: 'active',
1415
- },
1416
- {
1417
- token: 'tsol:gmt',
1418
- state: 'active',
1419
- },
1420
- {
1421
- token: 'tsol:orca',
1422
- state: 'active',
1423
- },
1424
- ],
1425
- },
1426
- },
1427
- pendingApprovals: [],
1428
- },
1429
- sendTxHex: '020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091d9945020da975c1908af823d1f3fb024362fc9c2b42126542e53945b2e58107286ccf6de77449a5dee338aebb2f47a11690d918e1d70d4bf948a7ed708430802010206e8e579a7198c71ee38b3ba2ee56af88cb16995a8f0bf46ab2a3702603cb732e41c96172044f1217c3784e8f02f49e2c8fc3591e81294ab54394f9d22fd7b7a8f8401c3f67cfa52518b34a09b08f4ea77e1c4fb9d89bfaccdc33cf8b8a9cf8d7bc5c538dc718dd6601193893098aa50838d76868be6561eeb39bca11197dc2f82000000000000000000000000000000000000000000000000000000000000000006a7d517192c568ee08a845f73d29788cf035c3145b21ab344d8062ea940000039b6464b8771903ac1721b28ab9e19ae5f034543572c7034d282c493769f9bd40204030305010404000000040200020c020000000a00000000000000',
1430
- wrongTokenNameTxHex: '020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000056a73c1a2afc311d457f5899b49a043800556f325775af401cc1003c4161065f9e6ee35cf9e2a019c7e32f425c4f97a4740327c2eb6ddc1f2dfd29fe91aca2090201060ae8e579a7198c71ee38b3ba2ee56af88cb16995a8f0bf46ab2a3702603cb732e41c96172044f1217c3784e8f02f49e2c8fc3591e81294ab54394f9d22fd7b7a8f3896fc21959137c93b14f821d1f24953900264a1f3085c308d4f7b5b9fed67189b9bb33f5d48c55a2e5f736c8b9f232091699c069923ce97a89e42d3a4f836c3000000000000000000000000000000000000000000000000000000000000000040eb17d8a12e56358b533dde4d338d6d25dc1daf0a30a76ed1ca827eb49e35e78c97258f4e2489f1bb3d1029148e0d830b5a1399daff1084048e7bd8dbe9f85906a7d517192c568ee08a845f73d29788cf035c3145b21ab344d8062ea940000006a7d517192c5c51218cc94c3d4af17f58daee089ba1fd44e3dbd98a0000000006ddf6e1ee758fde18425dbce46ccddab61afc4d83b90d27febdf928d8a18bfc486378cec7bef6cd76c627185b3e39adec4e173c610889b45f23fbe741e6284c020403020701040400000006070003000504090800',
1431
- wrongAddrTxHex: '02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007994e5cf423b5dfc2ca2f7de39edb2686a7e13db94943d9e5ee1437cf69152757080e7dbce942052ade6f7db9410d070c01b3a4914e73e53967050d8ce645a0c0201060a0a366f59bf131ce5d454af84bf3ca3d5c257804a66b2f917c325e2cb4f61b21e1c96172044f1217c3784e8f02f49e2c8fc3591e81294ab54394f9d22fd7b7a8f865224b8d48baa4ba878f53dcc7613219864bec9840b6cf013228edf4649fef8def50dc9c8fe8e5e4a23a534e8f75ee737eac6755904ad3c385fe5fbf7216632000000000000000000000000000000000000000000000000000000000000000081f74cefd3fb844f62ca7ed6f1418b3f86faf0886647d980259bf0aafbe77b6c8c97258f4e2489f1bb3d1029148e0d830b5a1399daff1084048e7bd8dbe9f85906a7d517192c568ee08a845f73d29788cf035c3145b21ab344d8062ea940000006a7d517192c5c51218cc94c3d4af17f58daee089ba1fd44e3dbd98a0000000006ddf6e1d765a193d9cbe146ceeb79ac1cb485ed5f5b37913a8cf5857eff00a9ebf212e4d5c93a21e2cff09e1b5a7fe0fdf2d5f573294d8411b302fc9d7c89d0020403020701040400000006070003000504090800',
1432
- };
1433
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdGVzdC9maXh0dXJlcy9zb2wudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMENBUTBCO0FBRWIsUUFBQSxlQUFlLEdBQUc7SUFDN0IsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLHNEQUFnRDtRQUMxRCxNQUFNLEVBQUUsb0RBQThDO0tBQ3ZEO0lBQ0QsVUFBVSxFQUFFO1FBQ1YsUUFBUSxFQUFFLDZCQUF1QjtRQUNqQyxNQUFNLEVBQUUsMkJBQXFCO0tBQzlCO0lBQ0QsYUFBYSxFQUFFO1FBQ2IsUUFBUSxFQUFFLDREQUFzRDtRQUNoRSxNQUFNLEVBQUUsMERBQW9EO0tBQzdEO0lBQ0QsNEJBQTRCLEVBQUU7UUFDNUIsUUFBUSxFQUFFLDZDQUF1QztLQUNsRDtDQUNGLENBQUM7QUFFRixNQUFNLFNBQVMsR0FBRyw4Q0FBOEMsQ0FBQztBQUNqRSxNQUFNLHFCQUFxQixHQUFHLDZDQUE2QyxDQUFDO0FBQzVFLE1BQU0sc0JBQXNCLEdBQUcsQ0FBQyxDQUFDO0FBQ2pDLE1BQU0seUJBQXlCLEdBQUcsQ0FBQyxDQUFDO0FBQ3BDLE1BQU0sdUJBQXVCLEdBQUcsQ0FBQyxDQUFDO0FBRXJCLFFBQUEsWUFBWSxHQUFHO0lBQzFCLFNBQVM7SUFDVCxxQkFBcUI7SUFDckIsc0JBQXNCO0lBQ3RCLHlCQUF5QjtJQUN6Qix1QkFBdUI7Q0FDZixDQUFDO0FBRVgsTUFBTSxvQkFBb0IsR0FBRztJQUMzQixNQUFNLEVBQUUsR0FBRztJQUNYLElBQUksRUFBRTtRQUNKLE9BQU8sRUFBRSxLQUFLO1FBQ2QsTUFBTSxFQUFFO1lBQ04sT0FBTyxFQUFFO2dCQUNQLElBQUksRUFBRSxJQUFJO2FBQ1g7WUFDRCxLQUFLLEVBQUU7Z0JBQ0wsU0FBUyxFQUFFLFNBQVM7Z0JBQ3BCLG9CQUFvQixFQUFFLElBQUk7YUFDM0I7U0FDRjtRQUNELEVBQUUsRUFBRSxDQUFDO0tBQ047Q0FDRixDQUFD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LGNBQWMsRUFBRSxPQUFPO2dCQUN2QixJQUFJLEVBQUUsUUFBUTtnQkFDZCwwQkFBMEIsRUFBRSxLQUFLO2dCQUNqQyxhQUFhLEVBQUU7b0JBQ2I7d0JBQ0UsS0FBSyxFQUFFLFdBQVc7d0JBQ2xCLEtBQUssRUFBRSxRQUFRO3FCQUNoQjtvQkFDRDt3QkFDRSxLQUFLLEVBQUUsVUFBVTt3QkFDakIsS0FBSyxFQUFFLFFBQVE7cUJBQ2hCO29CQUNEO3dCQUNFLEtBQUssRUFBRSxXQUFXO3dCQUNsQixLQUFLLEVBQUUsUUFBUTtxQkFDaEI7aUJBQ0Y7YUFDRjtTQUNGO1FBQ0QsZ0JBQWdCLEVBQUUsRUFBRTtLQUNyQjtJQUNELFNBQVMsRUFDUCxvd0JBQW93QjtJQUN0d0IsbUJBQW1CLEVBQ2pCLHMvQkFBcy9CO0lBQ3gvQixjQUFjLEVBQ1oscy9CQUFzL0I7Q0FDei9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBTSU5HTEVfVE9LRU5fVFJBTlNGRVJfV0lUSF9BVEFfQ1JFQVRJT04sXG4gIFRPS0VOX1RSQU5TRkVSX1NJR05FRF9UWF9XSVRIX01FTU9fQU5EX0RVUkFCTEVfTk9OQ0UsXG4gIFRPS0VOX1RSQU5TRkVSX1VOU0lHTkVEX1RYX1dJVEhfTUVNT19BTkRfRFVSQUJMRV9OT05DRSxcbiAgVFJBTlNGRVJfU0lHTkVEX1RYX1dJVEhfTUVNT19BTkRfRFVSQUJMRV9OT05DRSxcbiAgVFJBTlNGRVJfVU5TSUdORURfVFhfV0lUSF9NRU1PX0FORF9EVVJBQkxFX05PTkNFLFxuICBXQUxMRVRfSU5JVF9TSUdORURfVFgsXG4gIFdBTExFVF9JTklUX1VOU0lHTkVEX1RYLFxufSBmcm9tICcuLi9yZXNvdXJjZXMvc29sJztcblxuZXhwb3J0IGNvbnN0IHJhd1RyYW5zYWN0aW9ucyA9IHtcbiAgdHJhbnNmZXI6IHtcbiAgICB1bnNpZ25lZDogVFJBTlNGRVJfVU5TSUdORURfVFhfV0lUSF9NRU1PX0FORF9EVVJBQkxFX05PTkNFLFxuICAgIHNpZ25lZDogVFJBTlNGRVJfU0lHTkVEX1RYX1dJVEhfTUVNT19BTkRfRFVSQUJMRV9OT05DRSxcbiAgfSxcbiAgd2FsbGV0SW5pdDoge1xuICAgIHVuc2lnbmVkOiBXQUxMRVRfSU5JVF9VTlNJR05FRF9UWCxcbiAgICBzaWduZWQ6IFdBTExFVF9JTklUX1NJR05FRF9UWCxcbiAgfSxcbiAgdHJhbnNmZXJUb2tlbjoge1xuICAgIHVuc2lnbmVkOiBUT0tFTl9UUkFOU0ZFUl9VTlNJR05FRF9UWF9XSVRIX01FTU9fQU5EX0RVUkFCTEVfTk9OQ0UsXG4gICAgc2lnbmVkOiBUT0tFTl9UUkFOU0ZFUl9TSUdORURfVFhfV0lUSF9NRU1PX0FORF9EVVJBQkxFX05PTkNFLFxuICB9LFxuICB0b2tlblRyYW5zZmVyV2l0aEF0YUNyZWF0aW9uOiB7XG4gICAgdW5zaWduZWQ6IFNJTkdMRV9UT0tFTl9UUkFOU0ZFUl9XSVRIX0FUQV9DUkVBVElPTixcbiAgfSxcbn07XG5cbmNvbnN0IGJsb2NraGFzaCA9ICdFa1NuTldpZDJjdndFVm5WeDlhQnFhd25taUNOaURncDNnVWRrRFBUS04xTic7XG5jb25zdCBkdXJhYmxlTm9uY2VCbG9ja2hhc2ggPSAnTWVNMjl3SjhLYWkxU3lWNVh6OGZIUWhUeWdQczRFa2E3VVRnWkgzTHNFbSc7XG5jb25zdCBkdXJhYmxlTm9uY2VTaWduYXR1cmVzID0gMjtcbmNvbnN0IGxhdGVzdEJsb2NraGFzaFNpZ25hdHVyZXMgPSAxO1xuY29uc3QgdW5zaWduZWRTd2VlcFNpZ25hdHVyZXMgPSAxO1xuXG5leHBvcnQgY29uc3QgU29sSW5wdXREYXRhID0ge1xuICBibG9ja2hhc2gsXG4gIGR1cmFibGVOb25jZUJsb2NraGFzaCxcbiAgZHVyYWJsZU5vbmNlU2lnbmF0dXJlcyxcbiAgbGF0ZXN0QmxvY2toYXNoU2lnbmF0dXJlcyxcbiAgdW5zaWduZWRTd2VlcFNpZ25hdHVyZXMsXG59IGFzIGNvbnN0O1xuXG5jb25zdCBnZXRCbG9ja2hhc2hSZXNwb25zZSA9IHtcbiAgc3RhdHVzOiAyMDAsXG4gIGJvZHk6IHtcbiAgICBqc29ucnBjOiAnMi4wJyxcbiAgICByZXN1bHQ6IHtcbiAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgc2xvdDogMjc5MixcbiAgICAgIH0sXG4gICAgICB2YWx1ZToge1xuICAgICAgICBibG9ja2hhc2g6IGJsb2NraGFzaCxcbiAgICAgICAgbGFzdFZhbGlkQmxvY2tIZWlnaHQ6IDMwOTAsXG4gICAgICB9LFxuICAgIH0sXG4gICAgaWQ6IDEsXG4gIH0sXG59O1xuXG5jb25zdCBicm9hZGNhc3RUcmFuc2FjdGlvblJlc3BvbnNlID0ge1xuICBzdGF0dXM6IDIwMCxcbiAgYm9keToge1xuICAgIGpzb25ycGM6ICcyLjAnLFxuICAgIHJlc3VsdDogJzJpZDNZQzJqSzlHNVdvMnBoRHg0Z0pWQWV3OERjWTVOQW9qblZ1YW84cmt4d1BZUGU4Y1N3RTVHemhFZ0pBMnk4ZlZqREVvNmlSNnlrQnZEeHJUUXJ0cGInLFxuICAgIGlkOiAxLFxuICB9LFxufTtcblxuY29uc3QgYnJvYWRjYXN0VHJhbnNhY3Rpb25SZXNwb25zZTEgPSB7XG4gIHN0YXR1czogMjAwLFxuICBib2R5OiB7XG4gICAganNvbnJwYzogJzIuMCcsXG4gICAgcmVzdWx0OiAnNW9VQmdYWDRlbkdtRkVzcEc2NGdveTNQUnlzamZyZWtaR2czclpOa0JIVUNRRmQ0ODJ2clZXYmZEY1JZTUJFSnQ2NUpYeW1mRVBtOE02ZDg5WDR4Vjc5bicsXG4gICAgaWQ6IDEsXG4gIH0sXG59O1xuXG5jb25zdCBicm9hZGNhc3RUcmFuc2FjdGlvblJlc3BvbnNlRXJyb3IgPSB7XG4gIHN0YXR1czogMjAwLFxuICBib2R5OiB7XG4gICAganNvbnJwYzogJzIuMCcsXG4gICAgZXJyb3I6IHtcbiAgICAgIGNvZGU6IC0zMjAwMixcbiAgICAgIG1lc3NhZ2U6ICdUcmFuc2FjdGlvbiBzaW11bGF0aW9uIGZhaWxlZDogQmxvY2toYXNoIG5vdCBmb3VuZCcsXG4gICAgfSxcbiAgICBpZDogMSxcbiAgfSxcbn07XG5cbmNvbnN0IGdldEZlZXNSZXNwb25zZSA9IHtcbiAgc3RhdHVzOiAyMDAsXG4gIGJvZHk6IHtcbiAgICBqc29ucnBjOiAnMi4wJyxcbiAgICByZXN1bHQ6IHtcbiAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgc2xvdDogMSxcbiAgICAgIH0sXG4gICAgICB2YWx1ZToge1xuICAgICAgICBibG9ja2hhc2g6ICdDU3ltd2dUTlgxajNFNHFoS2ZKQVVFNDFuQldFd1h1Zm9ZcnlQYmtkZTVSUicsXG4gICAgICAgIGZlZUNhbGN1bGF0b3I6IHtcbiAgICAgICAgICBsYW1wb3J0c1BlclNpZ25hdHVyZTogNTAwMCxcbiAgICAgICAgfSxcbiAgICAgICAgbGFzdFZhbGlkU2xvdDogMjk3LFxuICAgICAgICBsYXN0VmFsaWRCbG9ja0hlaWdodDogMjk2LFxuICAgICAgfSxcbiAgICB9LFxuICAgIGlkOiAxLFxuICB9LFxufTtcblxuY29uc3QgZ2V0RmVlc0Zvck1lc3NhZ2VSZXNwb25zZSA9IHtcbiAgc3RhdHVzOiAyMDAsXG4gIGJvZHk6IHtcbiAgICBqc29ucnBjOiAnMi4wJyxcbiAgICByZXN1bHQ6IHtcbiAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgYXBpVmVyc2lvbjogJzIuMC4xMycsXG4gICAgICAgIHNsb3Q6IDMzMjEwMzYzOSxcbiAgICAgIH0sXG4gICAgICB2YWx1ZTogNTAwMCxcbiAgICB9LFxuICAgIGlkOiAxLFxuICB9LFxufTtcblxuY29uc3QgZ2V0TWluaW11bUJhbGFuY2VGb3JSZW50RXhlbXB0aW9uUmVzcG9uc2UgPSB7XG4gIHN0YXR1czogMjAwLFxuICBib2R5OiB7XG4gICAganNvbnJwYzogJzIuMCcsXG4gICAgcmVzdWx0OiAyMDM5MjgwLFxuICAgIGlkOiAxLFxuICB9LFxufTtcblxuY29uc3QgZ2V0VG9rZW5JbmZvUmVzcG9uc2UgPSB7XG4gIHN0YXR1czogMjAwLFxuICBib2R5OiB7XG4gICAganNvbnJwYzogJzIuMCcsXG4gICAgcmVzdWx0OiB7XG4gICAgICBjb250ZXh0OiB7IGFwaVZlcnNpb246ICcxLjEwLjM5Jywgc2xvdDogMTYzODQ2OTAwIH0sXG4gICAgICB2YWx1ZToge1xuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgcGFyc2VkOiB7XG4gICAgICAgICAgICBpbmZvOiB7XG4gICAgICAgICAgICAgIGlzTmF0aXZlOiBmYWxzZSxcbiAgICAgICAgICAgICAgbWludDogJ0Y0dUxlWEpvRnozaHcxM01wb3N1d2FRYk1jWmJDanF2RUdQUGVSUkIxQnlmJyxcbiAgICAgICAgICAgICAgb3duZXI6ICdFbTc0UWFhVXZITlNVUnljaDJyNW1SUks3bzVpaDVEVVJoZlFpTUFyaGZGcCcsXG4gICAgICAgICAgICAgIHN0YXRlOiAnaW5pdGlhbGl6ZWQnLFxuICAgICAgICAgICAgICB0b2tlbkFtb3VudDoge1xuICAgICAgICAgICAgICAgIGFtb3VudDogJzUyMDAwMDAwMDAwJyxcbiAgICAgICAgICAgICAgICBkZWNpbWFsczogOSxcbiAgICAgICAgICAgICAgICB1aUFtb3VudDogNTIuMCxcbiAgICAgICAgICAgICAgICB1aUFtb3VudFN0cmluZzogJzUyJyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB0eXBlOiAnYWNjb3VudCcsXG4gICAgICAgIH0sXG4gICAgICAgIHByb2dyYW06ICdzcGwtdG9rZW4nLFxuICAgICAgICBzcGFjZTogMTY1LFxuICAgICAgfSxcbiAgICAgIGV4ZWN1dGFibGU6IGZhbHNlLFxuICAgICAgbGFtcG9ydHM6IDE0NDc2ODAsXG4gICAgICBvd25lcjogJ1Rva2Vua2VnUWZlWnlpTndBSmJOYkdLUEZYQ1d1QnZmOVNzNjIzVlE1REEnLFxuICAgICAgcmVudEVwb2NoOiAxODQ0Njc0NDA3MzcwOTU1MTYxNSxcbiAgICAgIHNwYWNlOiAxNjUsXG4gICAgfSxcbiAgfSxcbiAgaWQ6IDEsXG59O1xuXG5jb25zdCBnZXRBY2NvdW50SW5mb1Jlc3BvbnNlID0ge1xuICBzdGF0dXM6IDIwMCxcbiAgYm9keToge1xuICAgIGpzb25ycGM6ICcyLjAnLFxuICAgIHJlc3VsdDoge1xuICAgICAgY29udGV4dDogeyBhcGlWZXJzaW9uOiAnMS4xMC4zOScsIHNsb3Q6IDE2Mzg0NjkwMCB9LFxuICAgICAgdmFsdWU6IHtcbiAgICAgICAgZGF0YToge1xuICAgICAgICAgIHBhcnNlZDoge1xuICAgICAgICAgICAgaW5mbzoge1xuICAgICAgICAgICAgICBhdXRob3JpdHk6ICdMdkRVeTFNb3ZNZXVzWWFMOEVyUUFxTDRQZUQ4SDlXMVJBTEpVM3R3VUdqJyxcbiAgICAgICAgICAgICAgYmxvY2toYXNoOiAnTWVNMjl3SjhLYWkxU3lWNVh6OGZIUWhUeWdQczRFa2E3VVRnWkgzTHNFbScsXG4gICAgICAgICAgICAgIGZlZUNhbGN1bGF0b3I6IHsgbGFtcG9ydHNQZXJTaWduYXR1cmU6ICc1MDAwJyB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHR5cGU6ICdpbml0aWFsaXplZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBwcm9ncmFtOiAnbm9uY2UnLFxuICAgICAgICAgIHNwYWNlOiA4MCxcbiAgICAgICAgfSxcbiAgICAgICAgZXhlY3V0YWJsZTogZmFsc2UsXG4gICAgICAgIGxhbXBvcnRzOiAxNDQ3NjgwLFxuICAgICAgICBvd25lcjogJzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExJyxcbiAgICAgICAgcmVudEVwb2NoOiAwLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGlkOiAxLFxuICB9LFxufTtcblxuY29uc3QgZ2V0QWNjb3VudEluZm9SZXNwb25zZTIgPSB7XG4gIHN0YXR1czogMjAwLFxuICBib2R5OiB7XG4gICAganNvbnJwYzogJzIuMCcsXG4gICAgcmVzdWx0OiB7XG4gICAgICBjb250ZXh0OiB7IGFwaVZlcnNpb246ICcxLjE2LjExJywgc2xvdDogMjQyMjI5MDg2IH0sXG4gICAgICB2YWx1ZToge1xuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgcGFyc2VkOiB7XG4gICAgICAgICAgICBpbmZvOiB7XG4gICAgICAgICAgICAgIGF1dGhvcml0eTogJ0x2RFV5MU1vdk1ldXNZYUw4RXJRQXFMNFBlRDhIOVcxUkFMSlUzdHdVR2onLFxuICAgICAgICAgICAgICBibG9ja2hhc2g6ICdDdXVYYjRkTFVBZ3cxMkttVjlMYjFMSG02N29qVFp4d01mbndVR3B5cU12UCcsXG4gICAgICAgICAgICAgIGZlZUNhbGN1bGF0b3I6IHsgbGFtcG9ydHNQZXJTaWduYXR1cmU6ICc1MDAwJyB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHR5cGU6ICdpbml0aWFsaXplZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBwcm9ncmFtOiAnbm9uY2UnLFxuICAgICAgICAgIHNwYWNlOiA4MCxcbiAgICAgICAgfSxcbiAgICAgICAgZXhlY3V0YWJsZTogZmFsc2UsXG4gICAgICAgIGxhbXBvcnRzOiAxNDQ3NjgwLFxuICAgICAgICBvd25lcjogJzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExJyxcbiAgICAgICAgcmVudEVwb2NoOiAwLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGlkOiAxLFxuICB9LFxufTtcblxuY29uc3QgZ2V0QWNjb3VudEJhbGFuY2VSZXNwb25zZSA9IHtcbiAgc3RhdHVzOiAyMDAsXG4gIGJvZHk6IHtcbiAgICBqc29ucnBjOiAnMi4wJyxcbiAgICByZXN1bHQ6IHsgY29udGV4dDogeyBzbG90OiAxIH0sIHZhbHVlOiAxMDAwMDAwMDAwIH0sXG4gICAgaWQ6IDEsXG4gIH0sXG59O1xuXG5jb25zdCBnZXRBY2NvdW50QmFsYW5jZVJlc3BvbnNlTm9GdW5kcyA9IHtcbiAgc3RhdHVzOiAyMDAsXG4gIGJvZHk6IHtcbiAgICBqc29ucnBjOiAnMi4wJyxcbiAgICByZXN1bHQ6IHsgY29udGV4dDogeyBzbG90OiAxIH0sIHZhbHVlOiAwIH0sXG4gICAgaWQ6IDEsXG4gIH0sXG59O1xuXG5jb25zdCBnZXRBY2NvdW50QmFsYW5jZVJlc3BvbnNlTTFEZXJpdmF0aW9uID0ge1xuICBzdGF0dXM6IDIwMCxcbiAgYm9keToge1xuICAgIGpzb25ycGM6ICcyLjAnLFxuICAgIHJlc3VsdDogeyBjb250ZXh0OiB7IHNsb3Q6IDEgfSwgdmFsdWU6IDAgfSxcbiAgICBpZDogMSxcbiAgfSxcbn07XG5cbmNvbnN0IGdldEFjY291bnRCYWxhbmNlUmVzcG9uc2VNMkRlcml2YXRpb24gPSB7XG4gIHN0YXR1czogMjAwLFxuICBib2R5OiB7XG4gICAganNvbnJwYzogJzIuMCcsXG4gICAgcmVzdWx0OiB7IGNvbnRleHQ6IHsgc2xvdDogMSB9LCB2YWx1ZTogNTAwMDAwMDAwMCB9LFxuICAgIGlkOiAxLFxuICB9LFxufTtcblxuY29uc3QgZ2V0VG9rZW5BY2NvdW50c0J5T3duZXJSZXNwb25zZSA9IHtcbiAgc3RhdHVzOiAyMDAsXG4gIGJvZHk6IHtcbiAgICBqc29ucnBjOiAnMi4wJyxcbiAgICByZXN1bHQ6IHtcbiAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgYXBpVmVyc2lvbjogJzEuMTcuNScsXG4gICAgICAgIHNsb3Q6IDI1OTAxOTMyOSxcbiAgICAgIH0sXG4gICAgICB2YWx1ZTogW1xuICAgICAgICB7XG4gICAgICAgICAgYWNjb3VudDoge1xuICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICBwYXJzZWQ6IHtcbiAgICAgICAgICAgICAgICBpbmZvOiB7XG4gICAgICAgICAgICAgICAgICBpc05hdGl2ZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgICBtaW50OiAnOWNncEJlTloySG5MZGE3TldhYVUxaTNOeVRzdGsyYzR6Q01VY29BR3NpOUMnLFxuICAgICAgICAgICAgICAgICAgb3duZXI6ICdITUVnYlI0UzJoTEtmc3QyVlpVVnBIVlV1NEZpb0ZQeVc1aVV1SnZaZE12cycsXG4gICAgICAgICAgICAgICAgICBzdGF0ZTogJ2luaXRpYWxpemVkJyxcbiAgICAgICAgICAgICAgICAgIHRva2VuQW1vdW50OiB7XG4gICAgICAgICAgICAgICAgICAgIGFtb3VudDogJzIwMDAwMDAwMDAnLFxuICAgICAgICAgICAgICAgICAgICBkZWNpbWFsczogOSxcbiAgICAgICAgICAgICAgICAgICAgdWlBbW91bnQ6IDIsXG4gICAgICAgICAgICAgICAgICAgIHVpQW1vdW50U3RyaW5nOiAnMicsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FjY291bnQnLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBwcm9ncmFtOiAnc3BsLXRva2VuJyxcbiAgICAgICAgICAgICAgc3BhY2U6IDE2NSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBleGVjdXRhYmxlOiBmYWxzZSxcbiAgICAgICAgICAgIGxhbXBvcnRzOiAyMDM5MjgwLFxuICAgICAgICAgICAgb3duZXI6ICdUb2tlbmtlZ1FmZVp5aU53QUpiTmJHS1BGWENXdUJ2ZjlTczYyM1ZRNURBJyxcbiAgICAgICAgICAgIHJlbnRFcG9jaDogMTg0NDY3NDQwNzM3MDk1NTIwMDAsXG4gICAgICAgICAgICBzcGFjZTogMTY1LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcHVia2V5OiAnNEZhTWRUaDl1d21yb3lmQnhndFQ3RmZaVjZlNm5nbUVGQkp0WEJVampvTnQnLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgYWNjb3VudDoge1xuICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICBwYXJzZWQ6IHtcbiAgICAgICAgICAgICAgICBpbmZvOiB7XG4gICAgICAgICAgICAgICAgICBpc05hdGl2ZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgICBtaW50OiAnRjR1TGVYSm9GejNodzEzTXBvc3V3YVFiTWNaYkNqcXZFR1BQZVJSQjFCeWYnLFxuICAgICAgICAgICAgICAgICAgb3duZXI6ICdITUVnYlI0UzJoTEtmc3QyVlpVVnBIVlV1NEZpb0ZQeVc1aVV1SnZaZE12cycsXG4gICAgICAgICAgICAgICAgICBzdGF0ZTogJ2luaXRpYWxpemVkJyxcbiAgICAgICAgICAgICAgICAgIHRva2VuQW1vdW50OiB7XG4gICAgICAgICAgICAgICAgICAgIGFtb3VudDogJzMwMDAwMDAwMDAnLFxuICAgICAgICAgICAgICAgICAgICBkZWNpbWFsczogOSxcbiAgICAgICAgICAgICAgICAgICAgdWlBbW91bnQ6IDMsXG4gICAgICAgICAgICAgICAgICAgIHVpQW1vdW50U3RyaW5nOiAnMycsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FjY291bnQnLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBwcm9ncmFtOiAnc3BsLXRva2VuJyxcbiAgICAgICAgICAgICAgc3BhY2U6IDE2NSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBleGVjdXRhYmxlOiBmYWxzZSxcbiAgICAgICAgICAgIGxhbXBvcnRzOiAyMDM5MjgwLFxuICAgICAgICAgICAgb3duZXI6ICdUb2tlbmtlZ1FmZVp5aU53QUpiTmJHS1BGWENXdUJ2ZjlTczYyM1ZRNURBJyxcbiAgICAgICAgICAgIHJlbnRFcG9jaDogMTg0NDY3NDQwNzM3MDk1NTIwMDAsXG4gICAgICAgICAgICBzcGFjZTogMTY1LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcHVia2V5OiAnRjN4VnJhZkpWb0tHSGZ6WEI2d1hFNFMxaUJBd0g2WmlncE5oUWN5YkhnaE0nLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICAgIGlkOiAnMScsXG4gIH0sXG59O1xuXG5jb25zdCBnZXRUb2tlbkFjY291bnRzQnlPd25lclJlc3BvbnNlMiA9IHtcbiAgc3RhdHVzOiAyMDAsXG4gIGJvZHk6IHtcbiAgICBqc29ucnBjOiAnMi4wJyxcbiAgICByZXN1bHQ6IHtcbiAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgYXBpVmVyc2lvbjogJzEuMTcuNScsXG4gICAgICAgIHNsb3Q6IDI1OTAxOTMyOSxcbiAgICAgIH0sXG4gICAgICB2YWx1ZTogW1xuICAgICAgICB7XG4gICAgICAgICAgYWNjb3VudDoge1xuICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICBwYXJzZWQ6IHtcbiAgICAgICAgICAgICAgICBpbmZvOiB7XG4gICAgICAgICAgICAgICAgICBpc05hdGl2ZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgICBtaW50OiAnOWNncEJlTloySG5MZGE3TldhYVUxaTNOeVRzdGsyYzR6Q01VY29BR3NpOUMnLFxuICAgICAgICAgICAgICAgICAgb3duZXI6ICdjeWdnc0ZuRHZiZnNQZWlGWHppZWJXc1dBcDZiVzVOYzVTZVBUeDhtZWJMJyxcbiAgICAgICAgICAgICAgICAgIHN0YXRlOiAnaW5pdGlhbGl6ZWQnLFxuICAgICAgICAgICAgICAgICAgdG9rZW5BbW91bnQ6IHtcbiAgICAgICAgICAgICAgICAgICAgYW1vdW50OiAnMjAwMDAwMDAwMCcsXG4gICAgICAgICAgICAgICAgICAgIGRlY2ltYWxzOiA5LFxuICAgICAgICAgICAgICAgICAgICB1aUFtb3VudDogMixcbiAgICAgICAgICAgICAgICAgICAgdWlBbW91bnRTdHJpbmc6ICcyJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYWNjb3VudCcsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHByb2dyYW06ICdzcGwtdG9rZW4nLFxuICAgICAgICAgICAgICBzcGFjZTogMTY1LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGV4ZWN1dGFibGU6IGZhbHNlLFxuICAgICAgICAgICAgbGFtcG9ydHM6IDIwMzkyODAsXG4gICAgICAgICAgICBvd25lcjogJ1Rva2Vua2VnUWZlWnlpTndBSmJOYkdLUEZYQ1d1QnZmOVNzNjIzVlE1REEnLFxuICAgICAgICAgICAgcmVudEVwb2NoOiAxODQ0Njc0NDA3MzcwOTU1MjAwMCxcbiAgICAgICAgICAgIHNwYWNlOiAxNjUsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBwdWJrZXk6ICc0RmFNZFRoOXV3bXJveWZCeGd0VDdGZlpWNmU2bmdtRUZCSnRYQlVqam9OdCcsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBhY2NvdW50OiB7XG4gICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgIHBhcnNlZDoge1xuICAgICAgICAgICAgICAgIGluZm86IHtcbiAgICAgICAgICAgICAgICAgIGlzTmF0aXZlOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgIG1pbnQ6ICdGNHVMZVhKb0Z6M2h3MTNNcG9zdXdhUWJNY1piQ2pxdkVHUFBlUlJCMUJ5ZicsXG4gICAgICAgICAgICAgICAgICBvd25lcjogJ2N5Z2dzRm5EdmJmc1BlaUZYemllYldzV0FwNmJXNU5jNVNlUFR4OG1lYkwnLFxuICAgICAgICAgICAgICAgICAgc3RhdGU6ICdpbml0aWFsaXplZCcsXG4gICAgICAgICAgICAgICAgICB0b2tlbkFtb3VudDoge1xuICAgICAgICAgICAgICAgICAgICBhbW91bnQ6ICczMDAwMDAwMDAwJyxcbiAgICAgICAgICAgICAgICAgICAgZGVjaW1hbHM6IDksXG4gICAgICAgICAgICAgICAgICAgIHVpQW1vdW50OiAzLFxuICAgICAgICAgICAgICAgICAgICB1aUFtb3VudFN0cmluZzogJzMnLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhY2NvdW50JyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgcHJvZ3JhbTogJ3NwbC10b2tlbicsXG4gICAgICAgICAgICAgIHNwYWNlOiAxNjUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZXhlY3V0YWJsZTogZmFsc2UsXG4gICAgICAgICAgICBsYW1wb3J0czogMjAzOTI4MCxcbiAgICAgICAgICAgIG93bmVyOiAnVG9rZW5rZWdRZmVaeWlOd0FKYk5iR0tQRlhDV3VCdmY5U3M2MjNWUTVEQScsXG4gICAgICAgICAgICByZW50RXBvY2g6IDE4NDQ2NzQ0MDczNzA5NTUyMDAwLFxuICAgICAgICAgICAgc3BhY2U6IDE2NSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHB1YmtleTogJ0YzeFZyYWZKVm9LR0hmelhCNndYRTRTMWlCQXdINlppZ3BOaFFjeWJIZ2hNJyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICBpZDogJzEnLFxuICB9LFxufTtcblxuY29uc3QgZ2V0VG9rZW5BY2NvdW50c0J5T3duZXJGb3JTb2wyMDIyUmVzcG9uc2UgPSB7XG4gIHN0YXR1czogMjAwLFxuICBib2R5OiB7XG4gICAganNvbnJwYzogJzIuMCcsXG4gICAgcmVzdWx0OiB7XG4gICAgICBjb250ZXh0OiB7XG4gICAgICAgIGFwaVZlcnNpb246ICcxLjE3LjUnLFxuICAgICAgICBzbG90OiAyNTkwMTkzMjksXG4gICAgICB9LFxuICAgICAgdmFsdWU6IFtcbiAgICAgICAge1xuICAgICAgICAgIGFjY291bnQ6IHtcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgcGFyc2VkOiB7XG4gICAgICAgICAgICAgICAgaW5mbzoge1xuICAgICAgICAgICAgICAgICAgaXNOYXRpdmU6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgbWludDogJzVOUjFiUXdMV3FqYmtoYlExaHg3MkhLSnliYnV2d2tEblVaTm9BWjJWaFc2JyxcbiAgICAgICAgICAgICAgICAgIG93bmVyOiAnY3lnZ3NGbkR2YmZzUGVpRlh6aWViV3NXQXA2Ylc1TmM1U2VQVHg4bWViTCcsXG4gICAgICAgICAgICAgICAgICBzdGF0ZTogJ2luaXRpYWxpemVkJyxcbiAgICAgICAgICAgICAgICAgIHRva2VuQW1vdW50OiB7XG4gICAgICAgICAgICAgICAgICAgIGFtb3VudDogJzIwMDAwMDAwMDAnLFxuICAgICAgICAgICAgICAgICAgICBkZWNpbWFsczogOSxcbiAgICAgICAgICAgICAgICAgICAgdWlBbW91bnQ6IDIsXG4gICAgICAgICAgICAgICAgICAgIHVpQW1vdW50U3RyaW5nOiAnMicsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgdHlwZTogJ2FjY291bnQnLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBwcm9ncmFtOiAnc3BsLXRva2VuJyxcbiAgICAgICAgICAgICAgc3BhY2U6IDE2NSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBleGVjdXRhYmxlOiBmYWxzZSxcbiAgICAgICAgICAgIGxhbXBvcnRzOiAyMDM5MjgwLFxuICAgICAgICAgICAgb3duZXI6ICdUb2tlbnpRZEJOYkxxUDVWRWhka0FTNkVQRkxDMVBIbkJxQ1hFcFB4dUViJyxcbiAgICAgICAgICAgIHJlbnRFcG9jaDogMTg0NDY3NDQwNzM3MDk1NTIwMDAsXG4gICAgICAgICAgICBzcGFjZTogMTY1LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcHVia2V5OiAnNXNlUlQ0M29STWtWZ3d4RXNzZmNpNlpnczlQSmt0NGlnanFSaUVqTDVnM3YnLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICAgIGlkOiAnMScsXG4gIH0sXG59O1xuXG5jb25zdCBnZXRUb2tlbkFjY291bnRzQnlPd25lckZvclNvbDIwMjJSZXNwb25zZTIgPSB7XG4gIHN0YXR1czogMjAwLFxuICBib2R5OiB7XG4gICAganNvbnJwYzogJzIuMCcsXG4gICAgcmVzdWx0OiB7XG4gICAgICBjb250ZXh0OiB7XG4gICAgICAgIGFwaVZlcnNpb246ICcxLjE3LjUnLFxuICAgICAgICBzbG90OiAyNTkwMTkzMjksXG4gICAgICB9LFxuICAgICAgdmFsdWU6IFtcbiAgICAgICAge1xuICAgICAgICAgIGFjY291bnQ6IHtcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgcGFyc2VkOiB7XG4gICAgICAgICAgICAgICAgaW5mbzoge1xuICAgICAgICAgICAgICAgICAgaXNOYXRpdmU6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgbWludDogJzVOUjFiUXdMV3FqYmtoYlExaHg3MkhLSnliYnV2d2tEblVaTm9BWjJWaFc2JyxcbiAgICAgICAgICAgICAgICAgIG93bmVyOiAnSE1FZ2JSNFMyaExLZnN0MlZaVVZwSFZVdTRGaW9GUHlXNWlVdUp2WmRNdnMnLFxuICAgICAgICAgICAgICAgICAgc3RhdGU6ICdpbml0aWFsaXplZCcsXG4gICAgICAgICAgICAgICAgICB0b2tlbkFtb3VudDoge1xuICAgICAgICAgICAgICAgICAgICBhbW91bnQ6ICcyMDAwMDAwMDAwJyxcbiAgICAgICAgICAgICAgICAgICAgZGVjaW1hbHM6IDksXG4gICAgICAgICAgICAgICAgICAgIHVpQW1vdW50OiAyLFxuICAgICAgICAgICAgICAgICAgICB1aUFtb3VudFN0cmluZzogJzInLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHR5cGU6ICdhY2NvdW50JyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgcHJvZ3JhbTogJ3NwbC10b2tlbicsXG4gICAgICAgICAgICAgIHNwYWNlOiAxNjUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZXhlY3V0YWJsZTogZmFsc2UsXG4gICAgICAgICAgICBsYW1wb3J0czogMjAzOTI4MCxcbiAgICAgICAgICAgIG93bmVyOiAnVG9rZW56UWRCTmJMcVA1VkVoZGtBUzZFUEZMQzFQSG5CcUNYRXBQeHVFYicsXG4gICAgICAgICAgICByZW50RXBvY2g6IDE4NDQ2NzQ0MDczNzA5NTUyMDAwLFxuICAgICAgICAgICAgc3BhY2U6IDE2NSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHB1YmtleTogJ0UyWkM5S2djMWFxM3E3ZWN0NGl5RjN6VmdKV0Nmb21SR3NnOThoa0p4bTZrJyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICBpZDogJzEnLFxuICB9LFxufTtcblxuY29uc3QgZ2V0VG9rZW5BY2NvdW50c0J5T3duZXJSZXNwb25zZU5vQWNjb3VudHMgPSB7XG4gIHN0YXR1czogMjAwLFxuICBib2R5OiB7XG4gICAganNvbnJwYzogJzIuMCcsXG4gICAgcmVzdWx0OiB7XG4gICAgICBjb250ZXh0OiB7XG4gICAgICAgIGFwaVZlcnNpb246ICcxLjE3LjUnLFxuICAgICAgICBzbG90OiAyNTkwMjA0NTAsXG4gICAgICB9LFxuICAgICAgdmFsdWU6IFtdLFxuICAgIH0sXG4gICAgaWQ6ICcxJyxcbiAgfSxcbn07XG5cbmZ1bmN0aW9uIGdlbmVyYXRlVmFsdWVzKCkge1xuICBjb25zdCB0b2tlbnMgPSBbXG4gICAgeyBwdWI6ICc3bkxQWDZnbXdBS3JnWXRSODRxZ0NMejFmNTdZNTYxQmNlTGVxTXl5NVZtUycsIG1pbnQ6ICdFeDZySExMbXZab1A5bXB1bk1GdmV3NDI0c2VTalBwNVBRYjVoRHk4S0p1NicgfSxcbiAgICB7IHB1YjogJ3RUZ1BreGhKWkM3ZGpTYjhZeExIemtYb0FYZW5GWmYzYUhWS0d5c0xpVzcnLCBtaW50OiAnOWtMSm9HYk1nU3RlcHRraEtLdWg3a2VuNEpFdkhyVDgzMTU3ZXpFR3JaN1InIH0sXG4gICAgeyBwdWI6ICdpMzRWdUZaWTFMejhUZzlhakFxcTVNTmpFM0VTMzJ1VlI4b1BGRnRMZDlGJywgbWludDogJzljZ3BCZU5aMkhuTGRhN05XYWFVMWkzTnlUc3RrMmM0ekNNVWNvQUdzaTlDJyB9LFxuICAgIHsgcHViOiAnRnhiaDNpN3M2aGpWSzJnWjZuNkpkRndIeEs3OGhFQ2RocGtZY0tabWlWQ3AnLCBtaW50OiAnRDhZWExpd1dRTWliV1JheENUczlrNkh3YVlFNnZ0c2J6SzlLclFWTVhVMUsnIH0sXG4gICAgeyBwdWI6ICdEUzM0VDhUdXJxb3B4anVwd1RTaFpOb1oyTHZHYmN3b0E3ck12MUpCWkJBRicsIG1pbnQ6ICdBdWIzTnVuNzFiRDVCOThKUUFpdkd0RWR3Q3VGSlZ2WlZYS2tjVkprdXpnaCcgfSxcbiAgICB7IHB1YjogJ0FGNUg2dkJrRm5KdVZxQ2hSUGdQUTRKUmNRNUdrMjVIQkZoUVFreW9qbXZnJywgbWludDogJ0Y0dUxlWEpvRnozaHcxM01wb3N1d2FRYk1jWmJDanF2RUdQUGVSUkIxQnlmJyB9LFxuICAgIHsgcHViOiAnRWc0WFZVS2RNUnd4b0V3VGdSUzFWQ1dFQ2JhZVlNM1JGY3V5Y29jUVVBWncnLCBtaW50OiAnNjRiY28zNk1qclo4SzI2RlhaR29Tcm5ERkRTQ1podkpHZlE1eXdMUkZVcEYnIH0sXG4gICAgeyBwdWI6ICc1c0VycW02VGRVdnhFV1E2Y0xqZDNmVW5IYm5rVUhpWUE4dXFvRHpoRnNmMycsIG1pbnQ6ICc0eVFZNGtOR0NDTTVyQ1dpUU1XSEZlNXEzYjVvN0FxR1dieDNYeWVUdGk1aCcgfSxcbiAgXTtcblxuICBjb25zdCByZXN1bHQgPSB0b2tlbnMubWFwKCh0b2tlbiwgaW5kZXgpID0+IHtcbiAgICByZXR1cm4ge1xuICAgICAgYWNjb3VudDoge1xuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgcGFyc2VkOiB7XG4gICAgICAgICAgICBpbmZvOiB7XG4gICAgICAgICAgICAgIGlzTmF0aXZlOiBmYWxzZSxcbiAgICAgICAgICAgICAgbWludDogdG9rZW4ubWludCxcbiAgICAgICAgICAgICAgb3duZXI6ICdFN1o2cEZmVWhqeDJkRmpkQjlXczJLbktlcFhvcTYyVGVGNXVhQ1ZTdnFRVicsXG4gICAgICAgICAgICAgIHN0YXRlOiAnaW5pdGlhbGl6ZWQnLFxuICAgICAgICAgICAgICB0b2tlbkFtb3VudDoge1xuICAgICAgICAgICAgICAgIGFtb3VudDogKGluZGV4ICsgMSkudG9TdHJpbmcoKSArICcwMDAwMDAwMDAnLFxuICAgICAgICAgICAgICAgIGRlY2ltYWxzOiA5LFxuICAgICAgICAgICAgICAgIHVpQW1vdW50OiBpbmRleCArIDEsXG4gICAgICAgICAgICAgICAgdWlBbW91bnRTdHJpbmc6IChpbmRleCArIDEpLnRvU3RyaW5nKCksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdHlwZTogJ2FjY291bnQnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcHJvZ3JhbTogJ3NwbC10b2tlbicsXG4gICAgICAgICAgc3BhY2U6IDE2NSxcbiAgICAgICAgfSxcbiAgICAgICAgZXhlY3V0YWJsZTogZmFsc2UsXG4gICAgICAgIGxhbXBvcnRzOiAyMDM5MjgwLFxuICAgICAgICBvd25lcjogJ1Rva2Vua2VnUWZlWnlpTndBSmJOYkdLUEZYQ1d1QnZmOVNzNjIzVlE1REEnLFxuICAgICAgICByZW50RXBvY2g6IDE4NDQ2NzQ0MDczNzA5NTUyMDAwLFxuICAgICAgICBzcGFjZTogMTY1LFxuICAgICAgfSxcbiAgICAgIHB1YmtleTogdG9rZW4ucHViLFxuICAgIH07XG4gIH0pO1xuICByZXR1cm4gcmVzdWx0O1xufVxuXG5jb25zdCBnZXRUb2tlbkFjY291bnRzQnlPd25lclJlc3BvbnNlMyA9IHtcbiAgc3RhdHVzOiAyMDAsXG4gIGJvZHk6IHtcbiAgICBqc29ucnBjOiAnMi4wJyxcbiAgICByZXN1bHQ6IHtcbiAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgYXBpVmVyc2lvbjogJzEuMTcuNScsXG4gICAgICAgIHNsb3Q6IDI1OTAxOTMyOSxcbiAgICAgIH0sXG4gICAgICB2YWx1ZTogZ2VuZXJhdGVWYWx1ZXMoKSxcbiAgICB9LFxuICAgIGlkOiAnMScsXG4gIH0sXG59O1xuXG5leHBvcnQgY29uc3QgU29sUmVzcG9uc2VzID0ge1xuICBnZXRCbG9ja2hhc2hSZXNwb25zZSxcbiAgZ2V0RmVlc1Jlc3BvbnNlLFxuICBnZXRGZWVzRm9yTWVzc2FnZVJlc3BvbnNlLFxuICBnZXRBY2NvdW50QmFsYW5jZVJlc3BvbnNlLFxuICBnZXRUb2tlbkluZm9SZXNwb25zZSxcbiAgZ2V0QWNjb3VudEluZm9SZXNwb25zZSxcbiAgZ2V0QWNjb3VudEluZm9SZXNwb25zZTIsXG4gIGdldEFjY291bnRCYWxhbmNlUmVzcG9uc2VOb0Z1bmRzLFxuICBnZXRBY2NvdW50QmFsYW5jZVJlc3BvbnNlTTJEZXJpdmF0aW9uLFxuICBnZXRBY2NvdW50QmFsYW5jZVJlc3BvbnNlTTFEZXJpdmF0aW9uLFxuICBnZXRUb2tlbkFjY291bnRzQnlPd25lclJlc3BvbnNlLFxuICBnZXRUb2tlbkFjY291bnRzQnlPd25lclJlc3BvbnNlMixcbiAgZ2V0VG9rZW5BY2NvdW50c0J5T3duZXJSZXNwb25zZTMsXG4gIGdldFRva2VuQWNjb3VudHNCeU93bmVyUmVzcG9uc2VOb0FjY291bnRzLFxuICBnZXRUb2tlbkFjY291bnRzQnlPd25lckZvclNvbDIwMjJSZXNwb25zZSxcbiAgZ2V0VG9rZW5BY2NvdW50c0J5T3duZXJGb3JTb2wyMDIyUmVzcG9uc2UyLFxuICBnZXRNaW5pbXVtQmFsYW5jZUZvclJlbnRFeGVtcHRpb25SZXNwb25zZSxcbiAgYnJvYWRjYXN0VHJhbnNhY3Rpb25SZXNwb25zZSxcbiAgYnJvYWRjYXN0VHJhbnNhY3Rpb25SZXNwb25zZTEsXG4gIGJyb2FkY2FzdFRyYW5zYWN0aW9uUmVzcG9uc2VFcnJvcixcbn0gYXMgY29uc3Q7XG5cbmV4cG9ydCBjb25zdCBhY2NvdW50SW5mbyA9IHtcbiAgYnM1OEVuY29kZWRQdWJsaWNLZXk6ICdCTDM1MlA4SEtOcTlCZ2tRaldqQ3ExUmlwSFpiMWlNNkp3R3BaWUZLMUp1QicsXG4gIGJzNThFbmNvZGVkUHVibGljS2V5Tm9GdW5kczogJzNFSnQ2Nkh3ZmkyMkZSVTJIV1BldDdmYVBSc3RpU2RHeHJFZTQ4NkN4aFRMJyxcbiAgYnM1OEVuY29kZWRQdWJsaWNLZXlNMURlcml2YXRpb246ICdFb0JteTRGUWZoS0VxaUF5c05YYkNtaHI2ODJka1Y5MllrNFk2Y3BVZm9wZicsXG4gIGJzNThFbmNvZGVkUHVibGljS2V5TTJEZXJpdmF0aW9uOiAnODlRZENSS0x2YWpGVVkzZjJnWkZ5a1VaR2dNNWRzeDNYUzVWTDRheHJIQTQnLFxuICBiczU4RW5jb2RlZFB1YmxpY0tleVdpdGhNYW55VG9rZW5zOiAnRTdaNnBGZlVoangyZEZqZEI5V3MyS25LZXBYb3E2MlRlRjV1YUNWU3ZxUVYnLFxufTtcbmV4cG9ydCBjb25zdCB0b2tlbkFkZHJlc3MgPSB7XG4gIFRlc3RVU0RDOiAnRjR1TGVYSm9GejNodzEzTXBvc3V3YVFiTWNaYkNqcXZFR1BQZVJSQjFCeWYnLFxufTtcbmV4cG9ydCBjb25zdCBrZXlzID0ge1xuICB1c2VyS2V5OlxuICAgICd7XCJpdlwiOlwiYWJJNTFxTCt0MFdKRC9rdmRPNnRRQT09XCIsXCJ2XCI6MSxcIml0ZXJcIjoxMDAwMCxcImtzXCI6MjU2LFwidHNcIjo2NCxcIm1vZGVcIlxcbicgK1xuICAgICc6XCJjY21cIixcImFkYXRhXCI6XCJcIixcImNpcGhlclwiOlwiYWVzXCIsXCJzYWx0XCI6XCJJbHJoSjV0MEZSbz1cIixcImN0XCI6XCJHL05vRWtnd0NQUWRPV1xcbicgK1xuICAgICdvcHErMnM0M3VKVnp2eFJCaGdHUlloY2FQbUZKV2drTjl2YVUwSU9EdnZDNVdCaDBmTktLdlBhWVhuaURjZndmL29uaytmcjd4UFRcXG4nICtcbiAgICAnUjJkY24zeFlXQjlReVRncnpiUm5QM0FMbUZjVXVGTGhydU1xNGNkeEc2SkJpYkVRbUtwRnNuQmtVMityN2dDYW12SnE2dEJpd1NUXFxuJyArXG4gICAgJ2V1OGJoR2FZNmpKR0xBeW80ZHdkenlFNm1kT2M0bGlzVmR4OWN0TXVpU3lFelJ3RlVXSkw1bkxVTEQ0TWlYYU42bHZKYVNNbWhtd1xcbicgK1xuICAgICdRVXhFMEtaMlFPcWFBNW1QVTZ3VEp2TkErNjdFL0YvemMzY2x5QzVGU1JJVS9JOG1DeDFuOUgrUU9uY2RxaGRPVXZIOGYydEpSWXZcXG4nICtcbiAgICAna3lFamtjemlRZDhwQnRrd1VDRXRkMlVMbFljc3pIVUtJM1VPdm8zd0RQNGFvT3F1KzFWUUIyYythTTFMenBPTHI2VDRobkZzV0lDXFxuJyArXG4gICAgJ3pFOHVPRFdHRmEweUlMdnJIcDV0aFFQTFF2US9JUzJTRGw1SUlSOWRXR0ppZmUxbDVkRFVXQ0xCeWtoaXE3aXBBU3Zha1lSODJBc1xcbicgK1xuICAgICc2OEFkdGxwU1ZzU2RmbXJUZW9nRytBdGNoZmJNR0JleXQwcVl2Y3piUDFlaUZWK3pSS0ZoUmF2dkFVWCtMZmhIR0QwaVNlV3lvZi9cXG4nICtcbiAgICAnUlFEbWdDNU5qKy95SHdROTg1UzYxUmR0aFB3eUoxSFd6QjFmU2I0MW5YM3RQeE1QTDBPWG4wZGczUXY3OFJzT3BEK2JiL0VVN1l1XFxuJyArXG4gICAgJ0RHdTZyMlIwbVA1MFlYWTU4M3cvK0t1OTV6MUN5ZFV6emQrZXRKNnJaQ3RvZ1JqL1h1azdWYkZiZDY2UUZFS2ttb3lqVTdLdzlYUVxcbicgK1xuICAgICdwWUsxeGxTaENlMXVaclB2UXE5NDJ0clZQODNBTTE0SXdMRHhuRlI3R21USmpFdmYyT2p4Yis5RVp5WXZHaFFuSUlkNklwTHRPZlZcXG4nICtcbiAgICAnQXRESTdySE0wSzBBZ2FiR3RVamhVQTNHQXRQK1UvcE83dTU4SklYanFjUW92TUxVY2p6cVI5a1dTV1Z5dmlLakovOGc3ckkzTjI2XFxuJyArXG4gICAgJ3RBK0tGVjRvbHh1QVUybndkMUhzNFUvVjdJYlJ5TGYyVU45eFp4ZCtYZFQ1YVJkTXQ3MkVEalk0NENFb2o5MTkreXQ2di9la0VKVFxcbicgK1xuICAgICc4T0JRaUxBYkhueHg5YXdJQnFSNjhhS1RyK3lzdjRiNWl3WDNTK0JNYXN2MnJNZ2VHZEU2Y2xrTkhDVmtpZWlVYWxra1pMTTVhcUZcXG4nICtcbiAgICAndjZKSEZldi90ZFpOek1iUGw5RjJKUFJrYXM9XCJ9JyxcbiAgYmFja3VwS2V5OlxuICAgICd7XCJpdlwiOlwiMWNPTHFRZmxMWlVxaURWcG9LSTJTUT09XCIsXCJ2XCI6MSxcIml0ZXJcIjoxMDAwMCxcImtzXCI6MjU2LFwidHNcIjo2NCxcIm1vZGVcIlxcbicgK1xuICAgICc6XCJjY21cIixcImFkYXRhXCI6XCJcIixcImNpcGhlclwiOlwiYWVzXCIsXCJzYWx0XCI6XCJpNTBaWDRpS25wZz1cIixcImN0XCI6XCJja08rck93RFFKR1AxaFxcbicgK1xuICAgICdoTFhScGplOThEWitwWW8zTEZSbTlXOFQzNDlGWlEySmZQZTRkSGNkZHhtUVBMVGl5YU1SSlpDUFFtU1htSzBrWU03SHlRbUlHYjZcXG4nICtcbiAgICAnRnRBQjRXNVdUanVreGplczhmZnRQbGZpd1NyTWJEbTVWSWYvcVB2NC9rL0NkN2VuVW5TSFVVVWpUeTVpcWxpMGVhNDdtaDNsNTJiXFxuJyArXG4gICAgJ1BZZG53NFJ3WDBnTVQvSmw4MkhIVVlaYXpNZTlBSytoSUp1TEpzdjNQblVTejFTS2hTWXowV2k5SW5TelZGNy9IeUc2SU1tRmJXTVxcbicgK1xuICAgICdneUJQTklqYUlMYURwYS80cktvSEJKakNEaE83MHJxNWhqVTN0MHJLd2JkVVZjR2Y5SGh2UXdBSU5iV21ZK0t4NFlIZkQ2MjJvUnBcXG4nICtcbiAgICAnRDRoZ2NUV241TnRSdS90Mi9lQk03Mk5yK3dzUmFuQ2syQ29PM0w5c2FvUWxFNU04alBQWjFvWmtwblNzanE5REZDRFRITTB0VDRjXFxuJyArXG4gICAgJ05VY1NuN3o0OEUwYTZmblFKYW1XRTB0YUVGWnBaZndyRjYzaURpSzZUeGMxdlVMN1MvbVpnV3pKU09vZ1NCRWJiY1FZdnhIaXpZZVxcbicgK1xuICAgICd3d2V6U1VrUStNclJMWW1uemduV1FZTG5SdVI2aU9ldlBmSC81Vm5XNXRFMW1LeDFuc3R4MU15R2NXQ0l5WVo0VnNqeTJOMlg2TDZcXG4nICtcbiAgICAnWkFZc0l6dWNybXlCVEszcjh6Rkl1NVJJVkIzMTY1U2FrdnlMeTBUZ2t3L1d4TzFJaTV5ZHcwRUtLUUxialdLY3h2c0gwT3M1eFl0XFxuJyArXG4gICAgJ1FrNVZmZUNvWE8xNDBMaEJFZUQwMUYzZkdlRjFDZ2kwcG0zSUVjZ1dhdzE0Y2ZIQ0RqS0ZBd2lTUUlOSkFGV1JUMWZ6OHZuM3lGdVxcbicgK1xuICAgICdhRUsvSEl1Znh5bkNZekx6SXBsYWJnSjd0Q2JDbVZIUXlnMTJpano2RzBVT3ZneURGc1F4UnRUZ3I1a0pOamJwYkgxcWh2MEFuZlpcXG4nICtcbiAgICAnNFZUSEtxSnBzQTgyNlpsbUZjNXVUWmlqY1h0d1RSbWlNckF4eVIwTW1ZTDhFaGRGdGFrK01iTXl5cU94T3NxN2dwZ0NweHAxSmJQXFxuJyArXG4gICAgJ09scnZXWit2ZGZ6NmVpTlIxMkEwVG9MVnJqaGZuUnNpbGpNcGN4TU5EVU5aSHpVUVVJemIwTG5NbjgvV0o0L2hYR3NvOGJxYm9tc1xcbicgK1xuICAgICdvQk01SnZ1OVh0UExjbWZpQTVGWlNYZldwSGJnQUlCaElUSUR5R3k1TXpIYXU3Ym5Ob0ltSVdPcGNoN0lLR0FLMG04czNCTFdldnhcXG4nICtcbiAgICAnYWhqRnZ6SjQ4ejk5TlZNa0RMelhlaXZcIn0nLFxuICBiaXRnb0tleTpcbiAgICAnZDM1MzBiYjAxNWRhZGQzNGM4MDgzZDU0NDc5NGFjNmU0ZTBmYTRhZDIxYzExNjdhZDU5MGJhZjliMDQ4MmI5YmNkNmMzYjllNTVjXFxuJyArXG4gICAgJzVjZDliZjE4YmY5NmUyN2VkZDhiN2Y1OGY5ZjUxY2UwYTI1NmM1YTc5M2FlYWZmOGRiODExJyxcbiAgYml0Z29LZXlOb0Z1bmRzOlxuICAgICc0MzY4Y2VjYzZiODI5MGZkYWI1ZTQ0OWM3MDY3M2M1Y2I4ZDdmNzY0ODFkYjgwN2Q0MWQxNjYyOTE0M2EyZTFkNmQ5N2M1NjcyYTBcXG4nICtcbiAgICAnMzA2MGExNzc3NTMwNjgxYTc4NGNiMTUxNjVmNDFlNDlmMDcyZDVlYjgwMjZkN2EyODdiMzUnLFxuICBkZXN0aW5hdGlvblB1YktleTogJzNFSnQ2Nkh3ZmkyMkZSVTJIV1BldDdmYVBSc3RpU2RHeHJFZTQ4NkN4aFRMJyxcbiAgZGVzdGluYXRpb25QdWJLZXkyOiAnSE1FZ2JSNFMyaExLZnN0MlZaVVZwSFZVdTRGaW9GUHlXNWlVdUp2WmRNdnMnLFxuICB3YWxsZXRQYXNzd29yZDogJ3Qzc3RTaWNyZXRseSEnLFxuICBkdXJhYmxlTm9uY2VQdWJLZXk6ICc2THFZNW5jajdzNGIxYzNZSlYxaHNuMmhWUE5oRWZ2RENOWU1hQ2MxakpoWCcsXG4gIGR1cmFibGVOb25jZVB1YktleTI6ICc0WTNrUXRtVlVmRjduaW10QUJQcEN3amlobUxnSlVnbThlWlRBbzQ0YzR1OScsXG4gIGR1cmFibGVOb25jZVB1YktleTM6ICc2VVcyTjdleW52dzF6alVMcEdEeFBvckpIajZ3cHZWZ2lGVWNqendvWTZmZycsXG4gIGR1cmFibGVOb25jZVByaXZLZXk6XG4gICAgJzQ0NzI3MmQ2NWNjOGIzOWY4OGVhMjNiNWYxNjg1OWJkODRiM2VjZmQ2MTc2ZWY5OTUzNWVmYWIzNzU0MWM4M2IwNTFhMzRiYzhhY2Q0Mzg3NjM5NzZmOTY4NzYxMTUwNTBmNzM4Mjg1NTM1NjZkMTExZDdhYzhiZmZlYmY1ODdjJyxcbn07XG5cbmV4cG9ydCBjb25zdCBjbG9zZUFUQWtleXMgPSB7XG4gIHVzZXJLZXk6XG4gICAgJ3tcIml2XCI6XCJ0ak5wNVUzcFpzM2JKUFJZRjJ6S0tBPT1cIixcInZcIjoxLFwiaXRlclwiOjEwMDAwLFwia3NcIjoyNTYsXCJ0c1wiOjY0LFwibW9kZVwiXFxuJyArXG4gICAgJzpcImNjbVwiLFwiYWRhdGFcIjpcIlwiLFwiY2lwaGVyXCI6XCJhZXNcIixcInNhbHRcIjpcIjZvc2ZwcDVLNG1vPVwiLFwiY3RcIjpcIm1uam91b2pSMlUzeE1FXFxuJyArXG4gICAgJ05CSllpTU0vQ0MwaHZuWnF5QmxYaTZlSTRybTZZN3RodVdmTTZOd2NVQ0F2UzgrZ3NYZHRTaW9RS1IybFYyZldFblZQaVRBaGRlTFxcbicgK1xuICAgICdwWXp5NGNSZDRraHB1aDlhR21OOGFCSG15bnRZWVpESWdVamZVdDZhb3poOHBCaytINDFLaTYrQVFsb2Q3U1FlVm5hcUlBbVFBbHlcXG4nICtcbiAgICAnTFN0T1JZTG5CWWNhaU1WaTU3OWJMeUtiRDdYSFJyK2R5eUxxMEdQTWxQZGE0RWpUWHcyS0Y1d0dzZVFsb1FWUkVrc1JvaXFUclFmXFxuJyArXG4gICAgJzVVTlQ4TVpPN0hnZEVrdW5VcXpxY1NhZjVhWUVUM2R4WFV4dFovNTZsWUIwaGVYVEZrNE1BTGhUVTJvaGJhS3FjcVgrd3FkYlBBUFxcbicgK1xuICAgICdqendydDN1S3N5R1J5M1RvaHBKWnRlcG1TcFJmMkJ1R2FlNHVnTXpHeG55ajBta3Q2T0l4QlRxSEgzNzEvRnEwRDBjS2xuTlUvWElcXG4nICtcbiAgICAnT2FwTXM0SnhBc01yVjE5QkdYblltNnJhdFRoamVITzBZcElmK0cyS1R4M0hxN1hwRVBVMXEzSnRMaEQwV0t4R0NpdFdVUHBKTy9jXFxuJyArXG4gICAgJ0pxWWFGOHRVTERoL1BFOW1OYjZ3OFZORUdUOFVyOFdOaWY2dUF1cVhycnVOdGNaM0pwRWVJUkowL2RXbzYyeWNxdEhDRFg2aG83bFxcbicgK1xuICAgICdqbHV0MGZvNlBnMVNTTSswYUZCYyt5WXgwOGRMNVg2Q2Uwbmo2UmxheXZzWFJQOW8vZ2EzeWc3cGpucnBwNXNPbUlzczdZMHpaR2NcXG4nICtcbiAgICAnZXVsa3dQUDIvOWVKb1Rmb1ZBU0g5L2VQY01DakdZdEdCVjBWVldTalQzRWhqVmlKTkQ2d2NSSjNGN0NKcGd2VVg5bjZOVEMvQ0xYXFxuJyArXG4gICAgJ29MSk1ESlNzMENWVDdvNHVZNXA1eFBaaGs2S05DT3FKeG5jakd0ZkhUZUpqaDlJSnhWdGZwbVNvMVVLcXhYSm1TQm5tczFOaWpwNVxcbicgK1xuICAgICdvNUJDVmplUm5ZM0xIYm9HU3RWWFJ4YmdvMTJrellWQTJxbHNibnFtYVpOb0hYenZJbm1sMVBMdHZHQlFaM1d5MG9ReFFieUcvTTdcXG4nICtcbiAgICAnL1g2NWlQbUh4V1FaYkRFUkxva1EyV21TUGdqeFhjM3cxbXhVeWtGSDB5M255NitpRTlmWGhmVGZScFk2c0VjYjZsQWZJbWNOci9RXFxuJyArXG4gICAgJ0dYdGdMMVZ2dEdsQXpyQmZScjhydWo4REQ5UHE4dGlvYk9RM3p3Z3FXc1I4ZE0zaUZaU0FVanlBOUk2ODRYbmwwWFlSN1ZqV1pIT1xcbicgK1xuICAgICdFSDg4aUJNQVcrWWdpQzgrZk9xQWNsQ1NQeGlzODJxYnJWcFJMTTFtdTUrSTFOakRRRXhsRDVVcS9qakhSdE9YdFBocUw5OW8wb1NcXG4nICtcbiAgICAnQkVpdWkybk44Zk5BQngwcG5ESjNQeFpZVjljRTU0dVVpRXUwbmJFVVc0SVlFaGVNdGZLZGF0R2NxWVZsQ1VWSXRLa3ppNkFxSU9OXFxuJyArXG4gICAgJ3FySmxFcytUM3BOWnFlbkNEbUpHMXp2bUNkOWNacXFFRXJBSVE1OTIyRVhPcHQzVzJySjJtVDBjbUZtNm5KRXA4XCJ9JyxcbiAgYmFja3VwS2V5OlxuICAgICd7XCJpdlwiOlwiT042N0RNdUFQTERhOHE4WXJYZGxSdz09XCIsXCJ2XCI6MSxcIml0ZXJcIjoxMDAwMCxcImtzXCI6MjU2LFwidHNcIjo2NCxcIm1vZGVcIlxcbicgK1xuICAgICc6XCJjY21cIixcImFkYXRhXCI6XCJcIixcImNpcGhlclwiOlwiYWVzXCIsXCJzYWx0XCI6XCJvNEY0RzlyZnVGND1cIixcImN0XCI6XCJ5L1pyTmJBWGdKQzRZYlxcbicgK1xuICAgICd2S3pGNFBJMFkyQ21EaUEzWS9TZVhkU3NZTW0vYjFuRzNnV21zUWFNYmREYXZyQXBHOFhORzJuMXIrTHBmUEVrcGZxMHJaK3hpcGhcXG4nICtcbiAgICAnRjBNRUV5dVQxanhCTjRETjRxejZLM3crM2lZYWZQbjdDVnlsSVd1S2Z6c1dYOW13TXJLajZURE1IWUYvOWFNWGgxUllWVVVUUmU0XFxuJyArXG4gICAgJ1JWbjhNa0lpNjgrL0EzMkVHTndJcURiZUxvVTFMZmFkVkhpWmlOR3dISWIycVQ3bk5SaTFBS2RSc3hDL3N6Wjl2NnBBUzVmY2JaNlxcbicgK1xuICAgICc2aEtudU0wY0tGSU1Samp3U0lWRFcrU1AvMWpnb0JpSktQeU9FQS9qMVFoYnMwSFZXbzE1UWtnc1JraTYyWm9pWGh4OXEzek1EV1VcXG4nICtcbiAgICAnV0xQR0VQVW83b1ZoVk5KZmZLeTN2YW5GZTJLWHY3d3ZSdnhIOHc2WUF4SGJqSWFoUjlmOXI0ZFlXbThONGIwQUYrWVJuL0RhZTZVXFxuJyArXG4gICAgJ3kxVFQrNURhVlZkZXc3dzRzWUg1SG5XUy8yV3lQSzA3Q0ltSVZDNjVXNFZRWGsxZ2RQQU41UStoNWVSWnk5a1NadXAyWURrdFIzdFxcbicgK1xuICAgICdmcDFWMVNPbExwQXhrbjFxcWdaL2VKZ3llVTlpUUFuTXU5RWFZNDZBU3RCRVNhaFZSUU52RDVxOVpKaE5PZE4wSG93akQ0V1E0TlJcXG4nICtcbiAgICAnY2hrRTFJRk5ZcUd0L1ByTXNNWTZMNmRuVVZObFdBTWoyVnFEYjF2Vmp6eDg3TE9vL3RyY24rcUN5WWVwdXFJa0RYUDU3VEU0bkIyXFxuJyArXG4gICAgJ2JDNkp6RS9aVnJwOVU2MWNpaEpXeWNYd1ZleGxLbTlGNFM2TkFRZ1FERklBajNsQkpHK09VZEpCR3B6c1g1VVlTMWdPazBSa3NtRlxcbicgK1xuICAgICd6aFkrVFdPc0VlWFJscjM2RUR4YmR1elkxTWtoWTdsRG5PRCtTamRCVGltWHpSRHBkTVJCWHNxeFpsZ3VIZktFTkdwaUZQZUpWbmxcXG4nICtcbiAgICAncWpHenpkQXRGdExXbFR4Yi9XQmM5TUxXK29ZRmdrYW44RGRmdkk0b2hGb3lmdzBlNW96NWVTSkNHZndseDBpV0FzcXd5bmdFblh0XFxuJyArXG4gICAgJy9xQlRFQ3htNTJvWmJTZmRrWEZQMWtzcXQwSnN1L0Q1UHhscXZCMm44VVhkdmpNWTB0WEVFWmwwejQvalgveE9qdjVKVlVORnllMVxcbicgK1xuICAgICdQTlgwOUJmbGY4UG95eHlINVVjODJ6OGZTbm5DYitrZExlVmg5U1ZFRDkvQTBrZzdUbEZSeUYrUTJjUi9yN2hxRE1RME1DVzRwSlNcXG4nICtcbiAgICAnS05OK1YvcnpXL28xcDViT1JjSTVzbEJSNWg4TU1hbm1Oa1hrUytUbk5zTUZ3QmdqRnNmR2g4MXhvS1VhdUpVUlBlSlBYSWJhYkhNXFxuJyArXG4gICAgJ2dsSTVaUXZSczhxQnVFWkUvTWFlSytVODl5dkI4QnJhbzBMQlpyd3V4RVlRa1ZCMCs2RXJHMnV4MW1MMVQvY09kaVQ1MHd5ZmxMblxcbicgK1xuICAgICdLUk1HT0tUOGNaaVB2bXl0Q1JoQkQxR3ZXa2tLZ3hUSzF1V3gvZW1hQmdCM0JUbXRuSG8vVjdpYmh1bGtja3c9PVwifScsXG4gIGJpdGdvS2V5OlxuICAgICczZTdkODRkMjZmNTY3YTQ2ZGE1Y2JkMjgzZTk0OGU2NmE0OGEwMTBjMjhlZGM2YjAxMmJkNjEyMTEwNzdkNTk2YTE1MmQ0M2NiNjVcXG4nICtcbiAgICAnM2ZiMzgyYjYyYzkzYmRiODUzN2MyOGI2YTRmY2ZjOTNhZTFhZDBmNGFkOGRhZTg0Yjc5MjknLFxuICBjbG9zZUF0YUFkZHJlc3M6ICdDS1dmUTJtOE1LYXBtQmNzQXZ4VlVQbjV1OXBjN0FxcUZqOGkxUmF6cXNvcycsXG4gIHJlY292ZXJ5RGVzdGluYXRpb25BdGFBZGRyZXNzOiAnNzJyQmFOclVkQWNoVVpTdXRiNlplMWdrc2QzaUN5THE1M1A0OGQydHZMMWEnLFxuICBiczU4RW5jb2RlZFB1YmxpY0tleTogJ0VtNzRRYWFVdkhOU1VSeWNoMnI1bVJSSzdvNWloNURVUmhmUWlNQXJoZkZwJyxcbiAgZGVzdGluYXRpb25QdWJLZXk6ICdFWnB5eERIYlZkWDdHeGRZNmZ2NmR1OTh5QXcxV3ROQkVubldoSnBVc004TicsXG4gIHdhbGxldFBhc3N3b3JkOiAnYml0Z29fdGVzdEAxMjMnLFxufTtcblxuZXhwb3J0IGNvbnN0IG92Y1Jlc3BvbnNlID0ge1xuICBzaWduYXR1cmVTaGFyZXM6IFtcbiAgICB7XG4gICAgICB0eFJlcXVlc3Q6IHtcbiAgICAgICAgdHJhbnNhY3Rpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgdW5zaWduZWRUeDoge1xuICAgICAgICAgICAgICBzZXJpYWxpemVkVHg6XG4gICAgICAgICAgICAgICAgJ0FnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQTd5ZDhMT1h2c0x0TzJSRXFNTS9PQ1o4d0l0ZnNxZlRmaWEyeElmaWJSVzN3SGd3NjNqaWFvamJYZVNxYVlhakovQ2E3WXdCVXo1Ymx5ZEkzZllMZ1BBZ0VDQnNMVnRmVDdtcHZOaWk4d1BrMEc5NDJON1RBSEUvUlcyaXEvOExQcUFZV3FCUm8wdklyTlE0ZGpsMitXaDJFVkJROXpnb1ZUVm0wUkhYckl2LzYvV0h4UFgxbUh2K0pxcG1BVDc5bHROallQSzBNMnlSK1pNbG43VmdVVEJXRk5RdkxxRS9qL25YbFkyL0pweHVOci9mWExYRVBlUzA0ZFB2dDlxejFkQW9ZRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFHcDlVWEdTeFdqdUNLaEY5ejBwZUl6d05jTVVXeUdyTkUyQVl1cVVBQUFEcGlIMjBjeExqN0tuT2FvSTVBTk5vUHhZanM0NzJGZGpEZU1QZnQza1hkQWdRREFnVUJCQVFBQUFBRUFnQUREQUlBQUFEd29wbzdBQUFBQUE9PScsXG4gICAgICAgICAgICAgIHNjYW5JbmRleDogMCxcbiAgICAgICAgICAgICAgY29pbjogJ3Rzb2wnLFxuICAgICAgICAgICAgICBzaWduYWJsZUhleDpcbiAgICAgICAgICAgICAgICAnMDIwMTAyMDZjMmQ1YjVmNGZiOWE5YmNkOGEyZjMwM2U0ZDA2Zjc4ZDhkZWQzMDA3MTNmNDU2ZGEyYWJmZjBiM2VhMDE4NWFhMDUxYTM0YmM4YWNkNDM4NzYzOTc2Zjk2ODc2MTE1MDUwZjczODI4NTUzNTY2ZDExMWQ3YWM4YmZmZWJmNTg3YzRmNWY1OTg3YmZlMjZhYTY2MDEzZWZkOTZkMzYzNjBmMmI0MzM2YzkxZjk5MzI1OWZiNTYwNTEzMDU2MTRkNDJmMmVhMTNmOGZmOWQ3OTU4ZGJmMjY5YzZlMzZiZmRmNWNiNWM0M2RlNGI0ZTFkM2VmYjdkYWIzZDVkMDI4NjA0MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA2YTdkNTE3MTkyYzU2OGVlMDhhODQ1ZjczZDI5Nzg4Y2YwMzVjMzE0NWIyMWFiMzQ0ZDgwNjJlYTk0MDAwMDAzYTYyMWY2ZDFjYzRiOGZiMmE3MzlhYTA4ZTQwMzRkYTBmYzU4OGVjZTNiZDg1NzYzMGRlMzBmN2VkZGU0NWRkMDIwNDAzMDIwNTAxMDQwNDAwMDAwMDA0MDIwMDAzMGMwMjAwMDAwMGYwYTI5YTNiMDAwMDAwMDAnLFxuICAgICAgICAgICAgICBkZXJpdmF0aW9uUGF0aDogJ20vMCcsXG4gICAgICAgICAgICAgIHBhcnNlZFR4OiB7XG4gICAgICAgICAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGFkZHJlc3M6ICdFN1o2cEZmVWhqeDJkRmpkQjlXczJLbktlcFhvcTYyVGVGNXVhQ1ZTdnFRVicsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlU3RyaW5nOiAnOTk5OTkwMDAwJyxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IDk5OTk5MDAwMCxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGFkZHJlc3M6ICdITUVnYlI0UzJoTEtmc3QyVlpVVnBIVlV1NEZpb0ZQeVc1aVV1SnZaZE12cycsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlU3RyaW5nOiAnOTk5OTkwMDAwJyxcbiAgICAgICAgICAgICAgICAgICAgY29pbk5hbWU6ICd0c29sJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBzcGVuZEFtb3VudDogJzk5OTk5MDAwMCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJycsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIGZlZUluZm86IHsgZmVlOiAxMDAwMCwgZmVlU3RyaW5nOiAnMTAwMDAnIH0sXG4gICAgICAgICAgICAgIGNvaW5TcGVjaWZpYzoge1xuICAgICAgICAgICAgICAgIGNvbW1vbktleWNoYWluOlxuICAgICAgICAgICAgICAgICAgJ2YzNDJiN2IzYmZlNTA4NmQxODliYzA4ODYxMzlkM2ZiYjE2NjkzODFkNzI1ZDlmNmI2YjUyMmM2MmM4YzE0ZThkNzcyNDkzYTA1YzliYjgyZmIxYWRmYjQyZGZhZTMwZjg3NDZjM2RjMTdiYzAxODM4MDYwOTRmNjZkNWUyZmUwJyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBzaWduYXR1cmVTaGFyZXM6IFtdLFxuICAgICAgICAgICAgc2lnbmF0dXJlU2hhcmU6IHtcbiAgICAgICAgICAgICAgZnJvbTogJ2JhY2t1cCcsXG4gICAgICAgICAgICAgIHRvOiAndXNlcicsXG4gICAgICAgICAgICAgIHNoYXJlOlxuICAgICAgICAgICAgICAgICdmNDdlMmZkZDNkOTMzNDZhZThkYjlhNTFlZjQ1ZTg5YjdkZWNjM2EyMTZjZWUzYTU2ZjBjYjhlYWYwY2Y4MTFiMDQyNjZkODdiNzhmZTI3ZjlmNDIzNmM3OWVjNjIwNzg1NjJkYWRiMjIwMzkwYzdlMTI2NGUyOGI2YTJjNWMwZCcsXG4gICAgICAgICAgICAgIHB1YmxpY1NoYXJlOiAnYzJkNWI1ZjRmYjlhOWJjZDhhMmYzMDNlNGQwNmY3OGQ4ZGVkMzAwNzEzZjQ1NmRhMmFiZmYwYjNlYTAxODVhYScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIHdhbGxldENvaW46ICd0c29sJyxcbiAgICAgIH0sXG4gICAgICB0c3NWZXJzaW9uOiAnMC4wLjEnLFxuICAgICAgb3ZjOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBlZGRzYVNpZ25hdHVyZToge1xuICAgICAgICAgICAgeTogJ2MyZDViNWY0ZmI5YTliY2Q4YTJmMzAzZTRkMDZmNzhkOGRlZDMwMDcxM2Y0NTZkYTJhYmZmMGIzZWEwMTg1YWEnLFxuICAgICAgICAgICAgUjogJ2Y0N2UyZmRkM2Q5MzM0NmFlOGRiOWE1MWVmNDVlODliN2RlY2MzYTIxNmNlZTNhNTZmMGNiOGVhZjBjZjgxMWInLFxuICAgICAgICAgICAgc2lnbWE6ICcyODVlMzQ3NzdkNWQ3MjJmZGI4MGI0ZWFlMjBhNjRmYzc4NzdiMzk3MDBmMDViNWIyZTQwZDBhZjVlNGZhODAxJyxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICBdLFxufTtcblxuZXhwb3J0IGNvbnN0IG92Y1Jlc3BvbnNlMSA9IHtcbiAgc2lnbmF0dXJlU2hhcmVzOiBbXG4gICAge1xuICAgICAgdHhSZXF1ZXN0OiB7XG4gICAgICAgIHRyYW5zYWN0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHVuc2lnbmVkVHg6IHtcbiAgICAgICAgICAgICAgc2VyaWFsaXplZFR4OlxuICAgICAgICAgICAgICAgICdBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFZSm04dnZtRy9tTkp1NEM1a080V2hsTWNiVDRLVkdhT0JQenVDRGJrT2JLbVlqTVkyTGJ1S3lVcEViWk9Lb01LQW9FL2pkQ3B3bWQrR2wwdjh2M2xEUHhxNFFWS2hSUkViL0JVSzBDcDF6TkxETmRrYy90ZUtxSCtoY3h2QVUzQktXQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkE2eGZZb1M1V05ZdFRQZDVOTTQxdEpkd2Ryd293cDI3UnlvSit0SjQxNTR5WEpZOU9KSW54dXowUUtSU09EWU1MV2hPWjJ2OFFoQVNPZTlqYjZmaFo5bVo2a212SmJKYnFVUUJIOG9VaFR2UTNMbTViYVpVVDNNVEl3VzFrZzlVR3A5VVhHU3hjVVNHTXlVdzlTdkYvV05ydUNKdWgvVVRqMjltS0FBQUFBQWJkOXVIdWRZL2VHRUpkdk9Sc3pkcTJHdnhOZzdrTkovNjkrU2pZb1l2OHN3c3ZmTXhYOFR1dW9tVUZhTmliOE9EUDRjYzBSWThab3dzZUIrdkJaOGNDQlFjQUFnWUVBd2dIQUFnRUFRUUNBQW9NQU1xYU93QUFBQUFKJyxcbiAgICAgICAgICAgICAgc2NhbkluZGV4OiAwLFxuICAgICAgICAgICAgICBjb2luOiAndHNvbCcsXG4gICAgICAgICAgICAgIHNpZ25hYmxlSGV4OlxuICAgICAgICAgICAgICAgICcwMTAwMDYwOTliY2JlZjk4NmZlNjM0OWJiODBiOTkwZWUxNjg2NTMxYzZkM2UwYTU0NjY4ZTA0ZmNlZTA4MzZlNDM5YjJhNjYyMzMxOGQ4YjZlZTJiMjUyOTExYjY0ZTJhODMwYTAyODEzZjhkZDBhOWMyNjc3ZTFhNWQyZmYyZmRlNTBjZmM2YWUxMDU0YTg1MTQ0NDZmZjA1NDJiNDBhOWQ3MzM0YjBjZDc2NDczZmI1ZTJhYTFmZTg1Y2M2ZjAxNGRjMTI5NjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0MGViMTdkOGExMmU1NjM1OGI1MzNkZGU0ZDMzOGQ2ZDI1ZGMxZGFmMGEzMGE3NmVkMWNhODI3ZWI0OWUzNWU3OGM5NzI1OGY0ZTI0ODlmMWJiM2QxMDI5MTQ4ZTBkODMwYjVhMTM5OWRhZmYxMDg0MDQ4ZTdiZDhkYmU5Zjg1OWY2NjY3YTkyNmJjOTZjOTZlYTUxMDA0N2YyODUyMTRlZjQzNzJlNmU1YjY5OTUxM2RjYzRjOGMxNmQ2NDgzZDUwNmE3ZDUxNzE5MmM1YzUxMjE4Y2M5NGMzZDRhZjE3ZjU4ZGFlZTA4OWJhMWZkNDRlM2RiZDk4YTAwMDAwMDAwMDZkZGY2ZTFlZTc1OGZkZTE4NDI1ZGJjZTQ2Y2NkZGFiNjFhZmM0ZDgzYjkwZDI3ZmViZGY5MjhkOGExOGJmY2IzMGIyZjdjY2M1N2YxM2JhZWEyNjUwNTY4ZDg5YmYwZTBjZmUxYzczNDQ1OGYxOWEzMGIxZTA3ZWJjMTY3YzcwMjA1MDcwMDAyMDYwNDAzMDgwNzAwMDgwNDAxMDQwMjAwMGEwYzAwY2E5YTNiMDAwMDAwMDAwOScsXG4gICAgICAgICAgICAgIGRlcml2YXRpb25QYXRoOiAnbS8wJyxcbiAgICAgICAgICAgICAgcGFyc2VkVHg6IHtcbiAgICAgICAgICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgYWRkcmVzczogJ0JWQVpDUVRFZUFzWlhiNHFHWmNITGFVN1VVZUxOeDlrWWlFM1FidlA1VHhoJyxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWVTdHJpbmc6ICcxMDAwMDAwMDAwJyxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IDEwMDAwMDAwMDAsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgb3V0cHV0czogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBhZGRyZXNzOiAnQ2lVUEJGaVZLa1hjdVZoSmk5cHo5eVlkOERLc2ViUmdLcWVlb3JVUDdHelonLFxuICAgICAgICAgICAgICAgICAgICB2YWx1ZVN0cmluZzogJzEwMDAwMDAwMDAnLFxuICAgICAgICAgICAgICAgICAgICBjb2luTmFtZTogJ3Rzb2w6dDIybWludCcsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgc3BlbmRBbW91bnQ6ICcxMDAwMDAwMDAwJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnJyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgZmVlSW5mbzoge1xuICAgICAgICAgICAgICAgIGZlZTogMjA0NDI4MCxcbiAgICAgICAgICAgICAgICBmZWVTdHJpbmc6ICc1MDAwJyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgY29pblNwZWNpZmljOiB7XG4gICAgICAgICAgICAgICAgY29tbW9uS2V5Y2hhaW46XG4gICAgICAgICAgICAgICAgICAnZTRiMzkzNDRhOTdiODk1NjkxNDgyZjBmYTkwMDVjYzU2NTQyYTE4OTM5YWNlYjBhNzE0ZWNmODBlZjYzNDRlNzdjYjg2ODJkNjc1NWZiOWY5MTI2OWZiM2VlMDJmOGZjY2QwYWY4MjRhOTA0YzMwZjc4MWUzZjdjNTFmNjUyZGInLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHNpZ25hdHVyZVNoYXJlczogW10sXG4gICAgICAgICAgICBzaWduYXR1cmVTaGFyZToge1xuICAgICAgICAgICAgICBmcm9tOiAnYmFja3VwJyxcbiAgICAgICAgICAgICAgdG86ICd1c2VyJyxcbiAgICAgICAgICAgICAgc2hhcmU6XG4gICAgICAgICAgICAgICAgJzhkNjdkMWI1YjFjOTVlZTllN2I4MzM3ZWJjZTM2Mzk5MjcwZTE3MTkzYmU5OGZhN2RjYTg1MjQ2YmU4MzhkN2VjZjIxOTIyYzU4M2E3N2E2OGFiODkyYjYzMzhmNDMzY2JkNmU2NDNhYmNlZDQ4MjBiNDgxNjhkZGU4NjRlYTA1JyxcbiAgICAgICAgICAgICAgcHVibGljU2hhcmU6ICc5YmNiZWY5ODZmZTYzNDliYjgwYjk5MGVlMTY4NjUzMWM2ZDNlMGE1NDY2OGUwNGZjZWUwODM2ZTQzOWIyYTY2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgd2FsbGV0Q29pbjogJ3Rzb2wnLFxuICAgICAgfSxcbiAgICAgIHRzc1ZlcnNpb246ICcwLjAuMScsXG4gICAgICBvdmM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGVkZHNhU2lnbmF0dXJlOiB7XG4gICAgICAgICAgICB5OiAnOWJjYmVmOTg2ZmU2MzQ5YmI4MGI5OTBlZTE2ODY1MzFjNmQzZTBhNTQ2NjhlMDRmY2VlMDgzNmU0MzliMmE2NicsXG4gICAgICAgICAgICBSOiAnOGQ2N2QxYjViMWM5NWVlOWU3YjgzMzdlYmNlMzYzOTkyNzBlMTcxOTNiZTk4ZmE3ZGNhODUyNDZiZTgzOGQ3ZScsXG4gICAgICAgICAgICBzaWdtYTogJ2Y5MzNjZDExNjE0OGIyZTY5ZDU0YmQxNDMzMGMyMTQ5NmIwZjU2MmMzYTFmZTBjNTg5ZWM4M2YwM2U1ZDQyMDInLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gIF0sXG59O1xuXG5leHBvcnQgY29uc3Qgb3ZjUmVzcG9uc2UyID0ge1xuICBzaWduYXR1cmVTaGFyZXM6IFtcbiAgICB7XG4gICAgICB0eFJlcXVlc3Q6IHtcbiAgICAgICAgdHJhbnNhY3Rpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgdW5zaWduZWRUeDoge1xuICAgICAgICAgICAgICBzZXJpYWxpemVkVHg6XG4gICAgICAgICAgICAgICAgJ0FnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJOSk0yVVdiQlVINXdUMEpKSElMbGhDczMzSFg4RGVFLzhUZHN3NnRHZlpvTWhDblNLdjZUUFd0Qnh5N1NiNnNXOGtzQ1VQbkFXdUhHR0ttZ2pFTUJBZ0VDQm1McnF4SnJZMmtiTi90Y3JRdzNQOFAxNU9sakZHYWJGSkFLQnJVTzFnck5CUm8wdklyTlE0ZGpsMitXaDJFVkJROXpnb1ZUVm0wUkhYckl2LzYvV0h4UFgxbUh2K0pxcG1BVDc5bHROallQSzBNMnlSK1pNbG43VmdVVEJXRk5Rc0xWdGZUN21wdk5paTh3UGswRzk0Mk43VEFIRS9SVzJpcS84TFBxQVlXcUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFHcDlVWEdTeFdqdUNLaEY5ejBwZUl6d05jTVVXeUdyTkUyQVl1cVVBQUFJWlFuaWlTNzNENm13ZnBuZmhWTUM0bHlZSnRSU3Jtb1pwRjd5SWxVZElEQWdRREFnVUJCQVFBQUFBRUFnQUREQUlBQUFEd1BjMGRBQUFBQUE9PScsXG4gICAgICAgICAgICAgIHNjYW5JbmRleDogMSxcbiAgICAgICAgICAgICAgY29pbjogJ3Rzb2wnLFxuICAgICAgICAgICAgICBzaWduYWJsZUhleDpcbiAgICAgICAgICAgICAgICAnMDIwMTAyMDY2MmViYWIxMjZiNjM2OTFiMzdmYjVjYWQwYzM3M2ZjM2Y1ZTRlOTYzMTQ2NjliMTQ5MDBhMDZiNTBlZDYwYWNkMDUxYTM0YmM4YWNkNDM4NzYzOTc2Zjk2ODc2MTE1MDUwZjczODI4NTUzNTY2ZDExMWQ3YWM4YmZmZWJmNTg3YzRmNWY1OTg3YmZlMjZhYTY2MDEzZWZkOTZkMzYzNjBmMmI0MzM2YzkxZjk5MzI1OWZiNTYwNTEzMDU2MTRkNDJjMmQ1YjVmNGZiOWE5YmNkOGEyZjMwM2U0ZDA2Zjc4ZDhkZWQzMDA3MTNmNDU2ZGEyYWJmZjBiM2VhMDE4NWFhMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA2YTdkNTE3MTkyYzU2OGVlMDhhODQ1ZjczZDI5Nzg4Y2YwMzVjMzE0NWIyMWFiMzQ0ZDgwNjJlYTk0MDAwMDA4NjUwOWUyODkyZWY3MGZhOWIwN2U5OWRmODU1MzAyZTI1Yzk4MjZkNDUyYWU2YTE5YTQ1ZWYyMjI1NTFkMjAzMDIwNDAzMDIwNTAxMDQwNDAwMDAwMDA0MDIwMDAzMGMwMjAwMDAwMGYwM2RjZDFkMDAwMDAwMDAnLFxuICAgICAgICAgICAgICBkZXJpdmF0aW9uUGF0aDogJ20vMScsXG4gICAgICAgICAgICAgIHBhcnNlZFR4OiB7XG4gICAgICAgICAgICAgICAgaW5wdXRzOiBbXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGFkZHJlc3M6ICc3ZjlQNUZxSDloRHNXek0xM0Y5eWlLcGd5RExDaUUzdW5ueHg3S2dLa2hpaycsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlU3RyaW5nOiAnNDk5OTkwMDAwJyxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IDQ5OTk5MDAwMCxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBvdXRwdXRzOiBbXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGFkZHJlc3M6ICdFN1o2cEZmVWhqeDJkRmpkQjlXczJLbktlcFhvcTYyVGVGNXVhQ1ZTdnFRVicsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlU3RyaW5nOiAnNDk5OTkwMDAwJyxcbiAgICAgICAgICAgICAgICAgICAgY29pbk5hbWU6ICd0c29sJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBzcGVuZEFtb3VudDogJzQ5OTk5MDAwMCcsXG4gICAgICAgICAgICAgICAgdHlwZTogJycsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIGZlZUluZm86IHsgZmVlOiAxMDAwMCwgZmVlU3RyaW5nOiAnMTAwMDAnIH0sXG4gICAgICAgICAgICAgIGNvaW5TcGVjaWZpYzoge1xuICAgICAgICAgICAgICAgIGNvbW1vbktleWNoYWluOlxuICAgICAgICAgICAgICAgICAgJ2YzNDJiN2IzYmZlNTA4NmQxODliYzA4ODYxMzlkM2ZiYjE2NjkzODFkNzI1ZDlmNmI2YjUyMmM2MmM4YzE0ZThkNzcyNDkzYTA1YzliYjgyZmIxYWRmYjQyZGZhZTMwZjg3NDZjM2RjMTdiYzAxODM4MDYwOTRmNjZkNWUyZmUwJyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBzaWduYXR1cmVTaGFyZXM6IFtdLFxuICAgICAgICAgICAgc2lnbmF0dXJlU2hhcmU6IHtcbiAgICAgICAgICAgICAgZnJvbTogJ2JhY2t1cCcsXG4gICAgICAgICAgICAgIHRvOiAndXNlcicsXG4gICAgICAgICAgICAgIHNoYXJlOlxuICAgICAgICAgICAgICAgICdkNDBmMmYzM2E2MmVlMmIwMWQ4ZThkZTU3YTA5MjE5MmJmNGZiNWI1ZDJlNjE2OWJmMzExYjVlZGM2MTU0NzY1MWYyNzM3MGJlN2M3NmZmNTIwNWY0MGFjZTk0OWJkODhmMDFiMThlMGRjZGY3OGFlZWQzM2FmYWM5ZjcyMDIwOScsXG4gICAgICAgICAgICAgIHB1YmxpY1NoYXJlOiAnNjJlYmFiMTI2YjYzNjkxYjM3ZmI1Y2FkMGMzNzNmYzNmNWU0ZTk2MzE0NjY5YjE0OTAwYTA2YjUwZWQ2MGFjZCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIHdhbGxldENvaW46ICd0c29sJyxcbiAgICAgIH0sXG4gICAgICB0c3NWZXJzaW9uOiAnMC4wLjEnLFxuICAgICAgb3ZjOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBlZGRzYVNpZ25hdHVyZToge1xuICAgICAgICAgICAgeTogJzYyZWJhYjEyNmI2MzY5MWIzN2ZiNWNhZDBjMzczZmMzZjVlNGU5NjMxNDY2OWIxNDkwMGEwNmI1MGVkNjBhY2QnLFxuICAgICAgICAgICAgUjogJ2Q0MGYyZjMzYTYyZWUyYjAxZDhlOGRlNTdhMDkyMTkyYmY0ZmI1YjVkMmU2MTY5YmYzMTFiNWVkYzYxNTQ3NjUnLFxuICAgICAgICAgICAgc2lnbWE6ICdmYjBkZTAxY2I4ZDI2YmQxZmFlOTY0OWYxNGRiOWI0MzEyMGY3MjRjNDkwZjI5NmQ5MGZlZTRiMGIwZGZmNTA4JyxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHR4UmVxdWVzdDoge1xuICAgICAgICB0cmFuc2FjdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICB1bnNpZ25lZFR4OiB7XG4gICAgICAgICAgICAgIHNlcmlhbGl6ZWRUeDpcbiAgICAgICAgICAgICAgICAnQWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEY3A5eEpwM1RGSGRpdkViaHdKS2xkUjROeStwYXNvRngrQmdrOHE2ZzFpTmlxN1hTaTFPdjNiczdldU1rVGo3bkRSRnFQOGx2N3hMVGN2ckJtOU9RSkFnRUNCcDE0SW1CQ2RtVlJPbHcwVXZlWVMxTXZHL2xqQ1JJM01KVEZtc3h1WEVvV0JSbzB2SXJOUTRkamwyK1doMkVWQlE5emdvVlRWbTBSSFhySXYvNi9XSHcwaHl4dnBWd3RJeDkvemVYMk8xNmVUclkrYUtJaDFtZEtnNE1NZzBleXhNTFZ0ZlQ3bXB2TmlpOHdQazBHOTQyTjdUQUhFL1JXMmlxLzhMUHFBWVdxQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUdwOVVYR1N4V2p1Q0toRjl6MHBlSXp3TmNNVVd5R3JORTJBWXVxVUFBQUM3d3MxWEZzbGlud2d0cElTVVZpVldJVlRIeUQyUTBxajI0WWpLbXJBbVhBZ1FEQWdVQkJBUUFBQUFFQWdBRERBSUFBQUR3UGMwZEFBQUFBQT09JyxcbiAgICAgICAgICAgICAgc2NhbkluZGV4OiAyLFxuICAgICAgICAgICAgICBjb2luOiAndHNvbCcsXG4gICAgICAgICAgICAgIHNpZ25hYmxlSGV4OlxuICAgICAgICAgICAgICAgICcwMjAxMDIwNjlkNzgyMjYwNDI3NjY1NTEzYTVjMzQ1MmY3OTg0YjUzMmYxYmY5NjMwOTEyMzczMDk0YzU5YWNjNmU1YzRhMTYwNTFhMzRiYzhhY2Q0Mzg3NjM5NzZmOTY4NzYxMTUwNTBmNzM4Mjg1NTM1NjZkMTExZDdhYzhiZmZlYmY1ODdjMzQ4NzJjNmZhNTVjMmQyMzFmN2ZjZGU1ZjYzYjVlOWU0ZWI2M2U2OGEyMjFkNjY3NGE4MzgzMGM4MzQ3YjJjNGMyZDViNWY0ZmI5YTliY2Q4YTJmMzAzZTRkMDZmNzhkOGRlZDMwMDcxM2Y0NTZkYTJhYmZmMGIzZWEwMTg1YWEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDZhN2Q1MTcxOTJjNTY4ZWUwOGE4NDVmNzNkMjk3ODhjZjAzNWMzMTQ1YjIxYWIzNDRkODA2MmVhOTQwMDAwMDJlZjBiMzU1YzViMjU4YTdjMjBiNjkyMTI1MTU4OTU1ODg1NTMxZjIwZjY0MzRhYTNkYjg2MjMyYTZhYzA5OTcwMjA0MDMwMjA1MDEwNDA0MDAwMDAwMDQwMjAwMDMwYzAyMDAwMDAwZjAzZGNkMWQwMDAwMDAwMCcsXG4gICAgICAgICAgICAgIGRlcml2YXRpb25QYXRoOiAnbS8yJyxcbiAgICAgICAgICAgICAgcGFyc2VkVHg6IHtcbiAgICAgICAgICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgYWRkcmVzczogJ0JiaEZxdUdNZk16MktjTXJYcnFaWmhLRDFHTGN2Qmd0Sm5hQTVzRTd2aXY5JyxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWVTdHJpbmc6ICc0OTk5OTAwMDAnLFxuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogNDk5OTkwMDAwLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIG91dHB1dHM6IFtcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgYWRkcmVzczogJ0U3WjZwRmZVaGp4MmRGamRCOVdzMktuS2VwWG9xNjJUZUY1dWFDVlN2cVFWJyxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWVTdHJpbmc6ICc0OTk5OTAwMDAnLFxuICAgICAgICAgICAgICAgICAgICBjb2luTmFtZTogJ3Rzb2wnLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHNwZW5kQW1vdW50OiAnNDk5OTkwMDAwJyxcbiAgICAgICAgICAgICAgICB0eXBlOiAnJyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgZmVlSW5mbzogeyBmZWU6IDEwMDAwLCBmZWVTdHJpbmc6ICcxMDAwMCcgfSxcbiAgICAgICAgICAgICAgY29pblNwZWNpZmljOiB7XG4gICAgICAgICAgICAgICAgY29tbW9uS2V5Y2hhaW46XG4gICAgICAgICAgICAgICAgICAnZjM0MmI3YjNiZmU1MDg2ZDE4OWJjMDg4NjEzOWQzZmJiMTY2OTM4MWQ3MjVkOWY2YjZiNTIyYzYyYzhjMTRlOGQ3NzI0OTNhMDVjOWJiODJmYjFhZGZiNDJkZmFlMzBmODc0NmMzZGMxN2JjMDE4MzgwNjA5NGY2NmQ1ZTJmZTAnLFxuICAgICAgICAgICAgICAgIGxhc3RTY2FuSW5kZXg6IDIwLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHNpZ25hdHVyZVNoYXJlczogW10sXG4gICAgICAgICAgICBzaWduYXR1cmVTaGFyZToge1xuICAgICAgICAgICAgICBmcm9tOiAnYmFja3VwJyxcbiAgICAgICAgICAgICAgdG86ICd1c2VyJyxcbiAgICAgICAgICAgICAgc2hhcmU6XG4gICAgICAgICAgICAgICAgJ2UyZTEzODBlNzM5OGUwNTk0N2NlNjVhM2U5Y2E3NTNhMjk1NzAyNDAzMmIzMjllOGQ1YmVmMTQ5YzYzNmM0ODFkMDRjYzk2YTY1NmMwNjNmMGFkNjJmYjU1ZDQ2ZWRlYjM5ODgwYjVjYjcxNDZkYjYxM2UyNjk2OGZkMWUwYTBiJyxcbiAgICAgICAgICAgICAgcHVibGljU2hhcmU6ICc5ZDc4MjI2MDQyNzY2NTUxM2E1YzM0NTJmNzk4NGI1MzJmMWJmOTYzMDkxMjM3MzA5NGM1OWFjYzZlNWM0YTE2JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgd2FsbGV0Q29pbjogJ3Rzb2wnLFxuICAgICAgfSxcbiAgICAgIHRzc1ZlcnNpb246ICcwLjAuMScsXG4gICAgICBvdmM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGVkZHNhU2lnbmF0dXJlOiB7XG4gICAgICAgICAgICB5OiAnOWQ3ODIyNjA0Mjc2NjU1MTNhNWMzNDUyZjc5ODRiNTMyZjFiZjk2MzA5MTIzNzMwOTRjNTlhY2M2ZTVjNGExNicsXG4gICAgICAgICAgICBSOiAnZTJlMTM4MGU3Mzk4ZTA1OTQ3Y2U2NWEzZTljYTc1M2EyOTU3MDI0MDMyYjMyOWU4ZDViZWYxNDljNjM2YzQ4MScsXG4gICAgICAgICAgICBzaWdtYTogJzRhOTA2NGE5ZjU5OTQyYTRhMGY2Y2ZiYjY5Mzk1NzdiMzliOWJmMWEyNWY4Zjk3YWI3YjNlOTU0ZDRjZTFmMDInLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gIF0sXG59O1xuXG5leHBvcnQgY29uc3Qgd3J3VXNlciA9IHtcbiAgdXNlcktleTpcbiAgICAne1wiaXZcIjpcIjFuZ1BWTGNneGx2NUZTaDF5Z2lSMlE9PVwiLFwidlwiOjEsXCJpdGVyXCI6MTAwMDAsXCJrc1wiOjI1NixcInRzXCI6NjQsXCJtb2RlXCInICtcbiAgICAnOlwiY2NtXCIsXCJhZGF0YVwiOlwiXCIsXCJjaXBoZXJcIjpcImFlc1wiLFwic2FsdFwiOlwicDdBMnFGRWVXaDg9XCIsXCJjdFwiOlwiYTJ4RmVncFlIZXFCU3cnICtcbiAgICAnY1J2TXE0amErUVBBeHVKVXdWSVltVXovb1Q2RHpORFhjL0c0NXJNKytzajU5dmV3SGRtY0RXK2F5YXFQYVlaTnp6UWxPQkRFcnd3JyArXG4gICAgJzdaREVOU1pmQS9QaC8yLzR4REJtMUNLZU5Lbmp0U3oveWo0bXVNY2FpVzIvaHdtZHVzVm9rV2xOOHJrRVFRWnY2NzF6NkE4aDB1NycgK1xuICAgICdmcTlXMjJKZlBKU0I3S001Qll5bElXaGw0ZTZwNEpvclEyc01EQWVzd0ZLaklyd3ptbGpBMTEyQzhYSk9ZWkRSRUQ5TENOMy9aMDgnICtcbiAgICAnNy8zeGVUOGNvRlFLUlhGRmMySldEak1HeGkvZWcvdGw1M1ZVdk8xQjRjMDA2MWtJUmt0TzFhTE0vbmo3NWkrQjhTSVRlbWdrdjRnJyArXG4gICAgJ2laZWtQbzlHYVF0bmtNNUhFV015TEJXNkxaMTJEQXBuRGZ4MU5FNWFFQUpOcE5WZ3d1L1l2ZnMzL2xBYWJtNmN0ZGIvOWFOWFFsRScgK1xuICAgICc0Y1FSSEd1ejVUcUVQS0pHUHR6WHpmTEFteWRZbWF0dmg3TVBjSnRIanR4ZHQvNCtGaHNEbHhhOFJqcUVuTmtzRVkxbU1NNmxpNjcnICtcbiAgICAna0Nxa3MybXFGdFN2OU9wQU9qaGxjN3RzY0pPN05nZFYyc3FMSkZ2b2N6ZzRTT3orUzJFdFhXb3dkdmh6Z3VkanRQOHM5YUFYZHVWJyArXG4gICAgJy9ybU5EdHBLMGtmNU9Eb2FKZ2JHZTdtNllGbUJnQ1NKWEJVV1NidEI3MG1nb0tteWZ3QzdxUDVYQWJ3WU9MWlF6cTJkL2hicDg1SicgK1xuICAgICc4dlU0RThmRVF2QVFTSWVlMmZ3b2JOWkhMYU82K1VRdTN1Y1NHVkxDS0o5V2V2TDF2ZUV6TDZmOVNlTkpRWWhLYTd0VjBqSFlCU2QnICtcbiAgICAnU1UySjlteUhxWE5hMVgrMlFtdHpPaUh0aHY5VjZWZ2hEcnRYS1BOYmFqTVVBK3UzNUMzNjEzdzc2bFg4dEV2Mm5xWWpwMWZZMU5KJyArXG4gICAgJ2g4RlA4ckxOZDdSM0JuN2lXSHdIdzRzbGxxTEJvZzRYUmRQYVZhZUNjbE5lTkxoUWozY3pPTVMvSkkvclcyaDNBM2F6clF3M0hhYycgK1xuICAgICdKZ21hMTNoWXpjNGU2c1diK1hqRWtlNDRwNDVUV2M3Mnk5aHhBUTQrVFpUSURNNkVHWFQxeFJ1NjJtd2pPeWFxK3ZGa3c2VDVld1EnICtcbiAgICAncnBBQXNJd0t0amhGMElMTjQrT0Q1NWpLampWempKZ0ZVR3RUenlya0JXUnpxdjk0OUZyNmFxVjZ4MGVvTEtKMWwwMjhNcTQvUGpUJyArXG4gICAgJ3JiMXBUeVZjR09hYTB4UkJXNkJNbmhPU2tiaSt4RTVLdjlrU0xnaFhObDAyUjVDd08wUHgyakQzdkcwUG0xVi9IK1pIbEpzdUxVbycgK1xuICAgICdyQW5PbEFYQXJUcWVRR0x2OTB3bFVyOUpzUWM4MGdqdGlZVkJJQlBLemVHeG54N3lNYmo5eDlmS3ZBZ2xLU0FHYmlOd2w5L1JFQlgnICtcbiAgICAnRTdFWFkzdmVERzBwSmRZYWczTjBtNGVYejZJVE1jdHlGc1ZLUVpBTFBEU3NTbWFaUjBVY2piT09JQzRZdUlTQjlcIn0nLFxuICBiYWNrdXBLZXk6XG4gICAgJ3tcIml2XCI6XCJ3QmVwQ1VIZERvblA1QVZrUkNUa2tRPT1cIixcInZcIjoxLFwiaXRlclwiOjEwMDAwLFwia3NcIjoyNTYsXCJ0c1wiOjY0LFwibW9kZVwiJyArXG4gICAgJzpcImNjbVwiLFwiYWRhdGFcIjpcIlwiLFwiY2lwaGVyXCI6XCJhZXNcIixcInNhbHRcIjpcIkVUejZmYUJ0bGg4PVwiLFwiY3RcIjpcIkNsZEh3MjJkMHdXRlBkJyArXG4gICAgJ2RiUVFjUUhYZmQ2cDVCdmNFMktocDZGSzU3U2RxVUg5VlpuVEZqSDZtcURZajBMZllWanREa2wvVVNja2VZWDV2STU5aVNyR3hzVicgK1xuICAgICdyT1FXbVJweVJPYnBQcDZkY20wNnNCTys2Z1d2UFdCNjI1MDhYcElVTjRnMWFDYnBPWTFNVU5FekdISUlqTTQ0SlBCajlCSlJxcjUnICtcbiAgICAnREJ3K2ZacnBwNjFVR3gvNHRZS0I0K2c2NWRyeWJqNDVUVzE0QndKY3UxdlRadnNDcytKTW14eGZub2Jxa0NJamVoSVduNGRVTGwvJyArXG4gICAgJ05sNmYyL3YwQUpyeUkxWG5vbXZUZXNUTEFFVUtJMGRYQUpoVEJxR3dnVGJCZE4rWGRvcVRidk1hQmRZNlFlMmZRam94bnZiUVp5ZycgK1xuICAgICcxOHNIYmFMcEtWcktFQmJoUTlDYmFtRkhYUnU4OFZzaHJwOXV5bWVvQWFOak1lTUdKTEVpaWdlZzJkTk9yYWo2TFRmRnBtTCtSRi8nICtcbiAgICAnejJ0Z2V3R3JMQXVEbTh0NXQzYUpGM0FqNGJBWmNCZ1NRcXpMaU5jS1VXWFFFUi9UZng3Y1BDWVh0SmgzS3JpajM0cFFHN1prQTkxJyArXG4gICAgJ1lQWUZOaldnczBPZm5Ick9TWldZbTlmUzFJTUdwMC9xWmFQaWxPU2lIZmNWSTJZYzUraTJsc0sranlKaDNxVVFVMDBzOEVkbHp1MycgK1xuICAgICdYcEtieGxOWlc0OFI2M3c5WXN1VVo5UEpraFQzWU1JRHdpc3NVbDFoN3plRTBrd3VhYUVSUHhKaVQxRzViOU5TODJzZFpWRUgrMUInICtcbiAgICAnaS91M3A2NVIvWm0vZDgxbG5lVEhJYVJSRlJ3NHRMdndRaGIwWVZGNGpwaC9acnV2cVZROXNYZjgxaVMwd00xdmJ5dmRIdVNZazFwJyArXG4gICAgJ1Bjb3ZSTm5qUWVydXJTU09ETyt4V3VwMmdOa1NMeTNLNlZ5amcxMTc5K0Fxc2Myd3drbzR3SGlodWJwV24yVEorUXFWTkJQQkRiTicgK1xuICAgICdqaElTOW82K2M1WnNSUldXZlZaeVJqUHdZZDc5NTR1bEcvdUY4SGFLMmJrQUJrR3BQMTBRNmNrYit0L0hvTjFNcEdUL1hYQ3hwTGEnICtcbiAgICAnRWx4TTV2ajcrZWVrSUt4Tjl5dktEd1Noc2VIN0txV3d3Wm1uYXZxYjFMNVFuZkc5MVhkb2tyRTBMcXovSDF4aU54eVczNldFMnhqJyArXG4gICAgJ0ZpN1dWNVJveVN2VExOdmlYdkg5YXBvWjhSUjg2bU9ubDBiQUc0VmJGbUJmM2EzanFJTW02eVZ5SFQ5NEZubHozVjZ5SWliVTJHQicgK1xuICAgICdURkhlRHU5MzVLT0ZEaE5tdzdxdGkrVFp4ZExEdlpzREtLUjdBc0ZyWndtcmVGd0hqZzlUYW80SlNtVUpkM3RIZmFXNzErVDBrWlEnICtcbiAgICAnU0Z3WHJnTWI1THpyNzhXa2htRUE3b1pXckpQMzZYODdDSThoTUZoS3dTYjdGemZTSFpDdFJFUkx6MlE4QzVTbWQ4YjNFV3ZiMUhhJyArXG4gICAgJ3k4cWhHQjhDenErejFtSlNLYnltbk1NQndjbzQyWTMwb2ZRL3hFQndPMlR5cEp3S1M5RXkreWRkZkE2QVN1UT09XCJ9JyxcbiAgYml0Z29LZXk6XG4gICAgJzEyNTc0NmRlMTkxOTIzNmJkMzBhNDgwOWQ3MThiMWMxNjFhYjhmNzY3NGZlNTA2YmVkNDM4ZmE4NjBhZGNmY2MyNTZmMzcyMTA2MicgK1xuICAgICdkZmVhZWExNzdjMzhjNDY3YTI0MjI4YjlhY2YxYTlmOTJmYzJmNWQwMTc3YmJiZjIxOGViOCcsXG4gIGJpdGdvS2V5V2l0aE1hbnlUb2tlbnM6XG4gICAgJ2YzNDJiN2IzYmZlNTA4NmQxODliYzA4ODYxMzlkM2ZiYjE2NjkzODFkNzI1ZDlmNmI2YjUyMmM2MmM4YzE0ZThkNzcyNDkzYTA1YzliYjgyZmIxYWRmYjQyZGZhZTMwZjg3NDZjM2RjMTdiYzAxODM4MDYwOTRmNjZkNWUyZmUwJyxcbiAgd2FsbGV0UGFzc3BocmFzZTogJ0doZ2hqa2chNDU1NTQ0bGxsbCcsXG4gIHdhbGxldEFkZHJlc3MwOiAnY3lnZ3NGbkR2YmZzUGVpRlh6aWViV3NXQXA2Ylc1TmM1U2VQVHg4bWViTCcsXG4gIHdhbGxldEFkZHJlc3MxOiAnOWpDdktaYm16b3RoZldTNlA3QUp4TEtZOEpMZGFwa3VyWmJIc1o4cDlUUDgnLFxuICB3YWxsZXRBZGRyZXNzMjogJzIyVVNwRHdtdWJBb1k1dXdzNGhwNFloSlp3dDRlb3VtZUxyR0d4NXo3RFdWJyxcbiAgd2FsbGV0QWRkcmVzczM6ICdGTmU0b3I2Z2M1dm1tQ0NNQVNKeVl1OUJSb2lMMTRmRGhqQzV2eG9HRmlXMicsXG4gIHdhbGxldEFkZHJlc3M0OiAnRTdaNnBGZlVoangyZEZqZEI5V3MyS25LZXBYb3E2MlRlRjV1YUNWU3ZxUVYnLFxuICB3YWxsZXRBZGRyZXNzNTogJzhWMzRnMktlSlhDaEVDVFdIZmNKNU5leVd3eWI3SHZLcHU2NkREM1lQTmNmJyxcbn07XG5cbmV4cG9ydCBjb25zdCBlbmFibGVUb2tlbkZpeHR1cmVzID0ge1xuICBzZW5kVG9rZW5FbmFibGVtZW50UGF5bG9hZDoge1xuICAgIGVuYWJsZVRva2VuczogW3sgbmFtZTogJ3Rzb2w6cmF5JywgYWRkcmVzczogJ0dnOFkyVFlqVWlXNE1kVUpVM3FSM0NUREtHOGl6dUtZcFhvYkRqM3V6aTF5JyB9XSxcbiAgICB3YWxsZXRQYXNzcGhyYXNlOiAndGVzdC1wYXNzd29yZCcsXG4gICAgYXBpVmVyc2lvbjogJ2Z1bGwnLFxuICAgIHByZWJ1aWxkVHg6IHtcbiAgICAgIHdhbGxldElkOiAnNjhiYWZlZTQzZWI1Y2QyMmFjYTJhZmQ2YjEzZWM3YWQnLFxuICAgICAgd2FsbGV0OiB7XG4gICAgICAgIGlkOiAnNjhiYWZlZTQzZWI1Y2QyMmFjYTJhZmQ2YjEzZWM3YWQnLFxuICAgICAgICB1c2VyczogW3sgdXNlcjogJzY1ZjljNjc5NzIzNjgyNWQxYjRlMWY4MmExMDM1YjQ2JywgcGVybWlzc2lvbnM6IFsnYWRtaW4nLCAnc3BlbmQnLCAndmlldyddIH1dLFxuICAgICAgICBjb2luOiAndHNvbCcsXG4gICAgICAgIGxhYmVsOiAnU09MIEJMSU5EIFNJR05JTkcnLFxuICAgICAgICBtOiAyLFxuICAgICAgICBuOiAzLFxuICAgICAgICBrZXlzOiBbXG4gICAgICAgICAgJzY4YmFmZWQ1ODg2NzFjZjk0ZWQ4YTVkYmJhODgyYWQzJyxcbiAgICAgICAgICAnNjhiYWZlZDUyZDZkOTU2OTRjZjU5NmMyYTE1Mzg2OGInLFxuICAgICAgICAgICc2OGJhZmVkNDJkNmQ5NTY5NGNmNTk1NmVkNjQwODUzYScsXG4gICAgICAgIF0sXG4gICAgICAgIGtleVNpZ25hdHVyZXM6IHt9LFxuICAgICAgICBlbnRlcnByaXNlOiAnNjY2MzJjNmI0MmIwM2QyNjVhOTM5MDQ4YmVhYWVlNTUnLFxuICAgICAgICBvcmdhbml6YXRpb246ICc2NjYzMmM2ZDQyYjAzZDI2NWE5MzkxMDdkMmY1ODZlNScsXG4gICAgICAgIGJpdGdvT3JnOiAnQml0R28gVHJ1c3QnLFxuICAgICAgICB0YWdzOiBbJzY4YmFmZWU0M2ViNWNkMjJhY2EyYWZkNmIxM2VjN2FkJywgJzY2NjMyYzZiNDJiMDNkMjY1YTkzOTA0OGJlYWFlZTU1J10sXG4gICAgICAgIGRpc2FibGVUcmFuc2FjdGlvbk5vdGlmaWNhdGlvbnM6IGZhbHNlLFxuICAgICAgICBmcmVlemU6IHt9LFxuICAgICAgICBkZWxldGVkOiBmYWxzZSxcbiAgICAgICAgYXBwcm92YWxzUmVxdWlyZWQ6IDEsXG4gICAgICAgIGlzQ29sZDogZmFsc2UsXG4gICAgICAgIGNvaW5TcGVjaWZpYzoge1xuICAgICAgICAgIHJvb3RBZGRyZXNzOiAnR2c4WTJUWWpVaVc0TWRVSlUzcVIzQ1RES0c4aXp1S1lwWG9iRGozdXppMXknLFxuICAgICAgICAgIHBlbmRpbmdDaGFpbkluaXRpYWxpemF0aW9uOiBmYWxzZSxcbiAgICAgICAgICBtaW5pbXVtRnVuZGluZzogMjQ0NzEzNixcbiAgICAgICAgICBsYXN0Q2hhaW5JbmRleDogeyAwOiAxLCAxOiAtMSB9LFxuICAgICAgICAgIG5vbmNlRXhwaXJlc0F0OiAnMjAyNS0wOS0wNVQxMjo1NDoxNi4yMTlaJyxcbiAgICAgICAgICB0cnVzdGVkVG9rZW5zOiBbXG4gICAgICAgICAgICB7IHRva2VuOiAndHNvbDpnYXJpJywgc3RhdGU6ICdhY3RpdmUnIH0sXG4gICAgICAgICAgICB7IHRva2VuOiAndHNvbDpnbXQnLCBzdGF0ZTogJ2FjdGl2ZScgfSxcbiAgICAgICAgICAgIHsgdG9rZW46ICd0c29sOm9yY2EnLCBzdGF0ZTogJ2FjdGl2ZScgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICBhZG1pbjoge1xuICAgICAgICAgIHBvbGljeToge1xuICAgICAgICAgICAgZGF0ZTogJzIwMjUtMDktMDVUMTU6MTY6NTIuMzc2WicsXG4gICAgICAgICAgICBpZDogJzY4YmFmZWU0M2ViNWNkMjJhY2EyYWZkOWU2OTlhM2FjJyxcbiAgICAgICAgICAgIGxhYmVsOiAnZGVmYXVsdCcsXG4gICAgICAgICAgICBydWxlczogW10sXG4gICAgICAgICAgICB2ZXJzaW9uOiAwLFxuICAgICAgICAgICAgbGF0ZXN0OiB0cnVlLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGNsaWVudEZsYWdzOiBbXSxcbiAgICAgICAgd2FsbGV0RmxhZ3M6IFtdLFxuICAgICAgICBhbGxvd0JhY2t1cEtleVNpZ25pbmc6IGZhbHNlLFxuICAgICAgICByZWNvdmVyYWJsZTogdHJ1ZSxcbiAgICAgICAgc3RhcnREYXRlOiAnMjAyNS0wOS0wNVQxNToxNjo1Mi4wMDBaJyxcbiAgICAgICAgdHlwZTogJ2hvdCcsXG4gICAgICAgIGJ1aWxkRGVmYXVsdHM6IHt9LFxuICAgICAgICBjdXN0b21DaGFuZ2VLZXlTaWduYXR1cmVzOiB7fSxcbiAgICAgICAgaGFzTGFyZ2VOdW1iZXJPZkFkZHJlc3NlczogZmFsc2UsXG4gICAgICAgIG11bHRpc2lnVHlwZTogJ3RzcycsXG4gICAgICAgIGhhc1JlY2VpdmVUcmFuc2ZlclBvbGljeTogZmFsc2UsXG4gICAgICAgIGNyZWF0b3I6ICc2NWY5YzY3OTcyMzY4MjVkMWI0ZTFmODJhMTAzNWI0NicsXG4gICAgICAgIHdhbGxldEZ1bGx5Q3JlYXRlZDogdHJ1ZSxcbiAgICAgICAgY29uZmlnOiB7fSxcbiAgICAgICAgYmFsYW5jZVN0cmluZzogJzk5Nzg2NTkyMCcsXG4gICAgICAgIGNvbmZpcm1lZEJhbGFuY2VTdHJpbmc6ICc5OTc4NjU5MjAnLFxuICAgICAgICBzcGVuZGFibGVCYWxhbmNlU3RyaW5nOiAnOTg1MjEyMzg0JyxcbiAgICAgICAgcmVzZXJ2ZWRCYWxhbmNlU3RyaW5nOiAnMjQ0NzEzNicsXG4gICAgICAgIHJlY2VpdmVBZGRyZXNzOiB7XG4gICAgICAgICAgaWQ6ICc2OGJhZmVlNDNlYjVjZDIyYWNhMmFmZTQzMWQ0MjcyYicsXG4gICAgICAgICAgYWRkcmVzczogJ0dnOFkyVFlqVWlXNE1kVUpVM3FSM0NUREtHOGl6dUtZcFhvYkRqM3V6aTF5JyxcbiAgICAgICAgICBjaGFpbjogMCxcbiAgICAgICAgICBpbmRleDogMCxcbiAgICAgICAgICBjb2luOiAndHNvbCcsXG4gICAgICAgICAgd2FsbGV0OiAnNjhiYWZlZTQzZWI1Y2QyMmFjYTJhZmQ2YjEzZWM3YWQnLFxuICAgICAgICAgIGxhc3RDb25zb2xpZGF0ZWRUaW1lOiAnMjAyNS0wOS0wOFQyMDoyNzo0My4wMjZaJyxcbiAgICAgICAgICBuZWVkc0NvbnNvbGlkYXRpb246IHRydWUsXG4gICAgICAgICAgY29pblNwZWNpZmljOiB7XG4gICAgICAgICAgICByb290QWRkcmVzczogJ0dnOFkyVFlqVWlXNE1kVUpVM3FSM0NUREtHOGl6dUtZcFhvYkRqM3V6aTF5JyxcbiAgICAgICAgICAgIG1pbmltdW1GdW5kaW5nOiAyNDQ3MTM2LFxuICAgICAgICAgICAgdHlwZTogJ25hdGl2ZScsXG4gICAgICAgICAgICBwZW5kaW5nQ2hhaW5Jbml0aWFsaXphdGlvbjogZmFsc2UsXG4gICAgICAgICAgICB0cnVzdGVkVG9rZW5zOiBbXG4gICAgICAgICAgICAgIHsgdG9rZW46ICd0c29sOmdhcmknLCBzdGF0ZTogJ2FjdGl2ZScgfSxcbiAgICAgICAgICAgICAgeyB0b2tlbjogJ3Rzb2w6Z210Jywgc3RhdGU6ICdhY3RpdmUnIH0sXG4gICAgICAgICAgICAgIHsgdG9rZW46ICd0c29sOm9yY2EnLCBzdGF0ZTogJ2FjdGl2ZScgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgcGVuZGluZ0FwcHJvdmFsczogW10sXG4gICAgICB9LFxuICAgICAgdHhSZXF1ZXN0SWQ6ICdiYTIzODdhYy0zNjM0LTQ3YzktOWU2OC1iMzAzYmEzYjY4Y2EnLFxuICAgICAgdHhIZXg6XG4gICAgICAgICcwMjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNDQ5ZDA1MTY4OWMzYjAwZmJjNTQ2OWM2NTdkZjViNmNiOTMzYWM0NzRkMDQxM2QwMWI5NjQ5OTI3ZDVlZmRjYTA2MDliYmU2ZWM5OTQzMDM0NDdkMGE2MzdiYmQ2NmYyYmI1NDdjYzI4MjFjNmEyOGNhZDZkZWJkMmRhZjA3MGIwMjAxMDYwYWU4ZTU3OWE3MTk4YzcxZWUzOGIzYmEyZWU1NmFmODhjYjE2OTk1YThmMGJmNDZhYjJhMzcwMjYwM2NiNzMyZTQxYzk2MTcyMDQ0ZjEyMTdjMzc4NGU4ZjAyZjQ5ZTJjOGZjMzU5MWU4MTI5NGFiNTQzOTRmOWQyMmZkN2I3YThmYTBmYjg5NDVhM2Q2M2ZjYWNiMWEyMDliMDk0ZjlhODI5NjIzNTQ4NjMxZjBhZmU1YThlZDg1ZDk0YjYzNDUxMmRjODNhYWQwMTQwNGVlMWEzZDcwODEzZDIxZTg5MjNhZDFkMTAzNTQ4MDJkYzNmYmZhZGUzZDFjNGY5NTQ3Y2UwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwODFmNzRjZWZkM2ZiODQ0ZjYyY2E3ZWQ2ZjE0MThiM2Y4NmZhZjA4ODY2NDdkOTgwMjU5YmYwYWFmYmU3N2I2YzhjOTcyNThmNGUyNDg5ZjFiYjNkMTAyOTE0OGUwZDgzMGI1YTEzOTlkYWZmMTA4NDA0OGU3YmQ4ZGJlOWY4NTkwNmE3ZDUxNzE5MmM1NjhlZTA4YTg0NWY3M2QyOTc4OGNmMDM1YzMxNDViMjFhYjM0NGQ4MDYyZWE5NDAwMDAwMDZhN2Q1MTcxOTJjNWM1MTIxOGNjOTRjM2Q0YWYxN2Y1OGRhZWUwODliYTFmZDQ0ZTNkYmQ5OGEwMDAwMDAwMDA2ZGRmNmUxZDc2NWExOTNkOWNiZTE0NmNlZWI3OWFjMWNiNDg1ZWQ1ZjViMzc5MTNhOGNmNTg1N2VmZjAwYTkzNTA3ZDFiYzczOWIxM2RhZjcxY2U4MDAwZjc1MWRjMDg5NTZhYjBkZDQ0MWQ3ZmJmN2M3NjY2ZjllMDU2MGFkMDIwNDAzMDIwNzAxMDQwNDAwMDAwMDA2MDcwMDAzMDAwNTA0MDkwODAwJyxcbiAgICAgIGJ1aWxkUGFyYW1zOiB7XG4gICAgICAgIGFwaVZlcnNpb246ICdmdWxsJyxcbiAgICAgICAgZW5hYmxlVG9rZW5zOiBbeyBuYW1lOiAndHNvbDpyYXknLCBhZGRyZXNzOiAnR2c4WTJUWWpVaVc0TWRVSlUzcVIzQ1RES0c4aXp1S1lwWG9iRGozdXppMXknIH1dLFxuICAgICAgICB0eXBlOiAnZW5hYmxldG9rZW4nLFxuICAgICAgfSxcbiAgICAgIGZlZUluZm86IHsgZmVlOiAyMDQ5MjgwLCBmZWVTdHJpbmc6ICcyMDQ5MjgwJyB9LFxuICAgIH0sXG4gIH0sXG4gIHR4UGFyYW1zOiB7XG4gICAgYXBpVmVyc2lvbjogJ2Z1bGwnLFxuICAgIGVuYWJsZVRva2VuczogW1xuICAgICAge1xuICAgICAgICBuYW1lOiAndHNvbDpyYXknLFxuICAgICAgICBhZGRyZXNzOiAnQThEelNuZ2dOTjg0bndQZ1Z2THRkbzF5WjNWc2NMR0RpNEZkRVFYelV5WXknLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHR5cGU6ICdlbmFibGV0b2tlbicsXG4gICAgd2FsbGV0UGFzc3BocmFzZTogJ3Rlc3QtcGFzc3dvcmQnLFxuICAgIHByZWJ1aWxkVHg6IHtcbiAgICAgIHdhbGxldElkOiAnNjhiYWZlZTQzZWI1Y2QyMmFjYTJhZmQ2YjEzZWM3YWQnLFxuICAgICAgd2FsbGV0OiB7XG4gICAgICAgIGlkOiAnNjhiYWZlZTQzZWI1Y2QyMmFjYTJhZmQ2YjEzZWM3YWQnLFxuICAgICAgICB1c2VyczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHVzZXI6ICc2NWY5YzY3OTcyMzY4MjVkMWI0ZTFmODJhMTAzNWI0NicsXG4gICAgICAgICAgICBwZXJtaXNzaW9uczogWydhZG1pbicsICdzcGVuZCcsICd2aWV3J10sXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgY29pbjogJ3Rzb2wnLFxuICAgICAgICBsYWJlbDogJ1NPTCBCTElORCBTSUdOSU5HJyxcbiAgICAgICAgbTogMixcbiAgICAgICAgbjogMyxcbiAgICAgICAga2V5czogW1xuICAgICAgICAgICc2OGJhZmVkNTg4NjcxY2Y5NGVkOGE1ZGJiYTg4MmFkMycsXG4gICAgICAgICAgJzY4YmFmZWQ1MmQ2ZDk1Njk0Y2Y1OTZjMmExNTM4NjhiJyxcbiAgICAgICAgICAnNjhiYWZlZDQyZDZkOTU2OTRjZjU5NTZlZDY0MDg1M2EnLFxuICAgICAgICBdLFxuICAgICAgICBrZXlTaWduYXR1cmVzOiB7fSxcbiAgICAgICAgZW50ZXJwcmlzZTogJzY2NjMyYzZiNDJiMDNkMjY1YTkzOTA0OGJlYWFlZTU1JyxcbiAgICAgICAgb3JnYW5pemF0aW9uOiAnNjY2MzJjNmQ0MmIwM2QyNjVhOTM5MTA3ZDJmNTg2ZTUnLFxuICAgICAgICBiaXRnb09yZzogJ0JpdEdvIFRydXN0JyxcbiAgICAgICAgdGFnczogWyc2OGJhZmVlNDNlYjVjZDIyYWNhMmFmZDZiMTNlYzdhZCcsICc2NjYzMmM2YjQyYjAzZDI2NWE5MzkwNDhiZWFhZWU1NSddLFxuICAgICAgICBkaXNhYmxlVHJhbnNhY3Rpb25Ob3RpZmljYXRpb25zOiBmYWxzZSxcbiAgICAgICAgZnJlZXplOiB7fSxcbiAgICAgICAgZGVsZXRlZDogZmFsc2UsXG4gICAgICAgIGFwcHJvdmFsc1JlcXVpcmVkOiAxLFxuICAgICAgICBpc0NvbGQ6IGZhbHNlLFxuICAgICAgICBjb2luU3BlY2lmaWM6IHtcbiAgICAgICAgICByb290QWRkcmVzczogJ0dnOFkyVFlqVWlXNE1kVUpVM3FSM0NUREtHOGl6dUtZcFhvYkRqM3V6aTF5JyxcbiAgICAgICAgICBwZW5kaW5nQ2hhaW5Jbml0aWFsaXphdGlvbjogZmFsc2UsXG4gICAgICAgICAgbWluaW11bUZ1bmRpbmc6IDI0NDcxMzYsXG4gICAgICAgICAgbGFzdENoYWluSW5kZXg6IHtcbiAgICAgICAgICAgIDA6IDEsXG4gICAgICAgICAgICAxOiAtMSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIG5vbmNlRXhwaXJlc0F0OiAnMjAyNS0wOS0wNVQxMjo1NDoxNi4yMTlaJyxcbiAgICAgICAgICB0cnVzdGVkVG9rZW5zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRva2VuOiAndHNvbDpnYXJpJyxcbiAgICAgICAgICAgICAgc3RhdGU6ICdhY3RpdmUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdG9rZW46ICd0c29sOmdtdCcsXG4gICAgICAgICAgICAgIHN0YXRlOiAnYWN0aXZlJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHRva2VuOiAndHNvbDpvcmNhJyxcbiAgICAgICAgICAgICAgc3RhdGU6ICdhY3RpdmUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICBhZG1pbjoge1xuICAgICAgICAgIHBvbGljeToge1xuICAgICAgICAgICAgZGF0ZTogJzIwMjUtMDktMDVUMTU6MTY6NTIuMzc2WicsXG4gICAgICAgICAgICBpZDogJzY4YmFmZWU0M2ViNWNkMjJhY2EyYWZkOWU2OTlhM2FjJyxcbiAgICAgICAgICAgIGxhYmVsOiAnZGVmYXVsdCcsXG4gICAgICAgICAgICBydWxlczogW10sXG4gICAgICAgICAgICB2ZXJzaW9uOiAwLFxuICAgICAgICAgICAgbGF0ZXN0OiB0cnVlLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGNsaWVudEZsYWdzOiBbXSxcbiAgICAgICAgd2FsbGV0RmxhZ3M6IFtdLFxuICAgICAgICBhbGxvd0JhY2t1cEtleVNpZ25pbmc6IGZhbHNlLFxuICAgICAgICByZWNvdmVyYWJsZTogdHJ1ZSxcbiAgICAgICAgc3RhcnREYXRlOiAnMjAyNS0wOS0wNVQxNToxNjo1Mi4wMDBaJyxcbiAgICAgICAgdHlwZTogJ2hvdCcsXG4gICAgICAgIGJ1aWxkRGVmYXVsdHM6IHt9LFxuICAgICAgICBjdXN0b21DaGFuZ2VLZXlTaWduYXR1cmVzOiB7fSxcbiAgICAgICAgaGFzTGFyZ2VOdW1iZXJPZkFkZHJlc3NlczogZmFsc2UsXG4gICAgICAgIG11bHRpc2lnVHlwZTogJ3RzcycsXG4gICAgICAgIGhhc1JlY2VpdmVUcmFuc2ZlclBvbGljeTogZmFsc2UsXG4gICAgICAgIGNyZWF0b3I6ICc2NWY5YzY3OTcyMzY4MjVkMWI0ZTFmODJhMTAzNWI0NicsXG4gICAgICAgIHdhbGxldEZ1bGx5Q3JlYXRlZDogdHJ1ZSxcbiAgICAgICAgY29uZmlnOiB7fSxcbiAgICAgICAgYmFsYW5jZVN0cmluZzogJzk5Nzg2NTkyMCcsXG4gICAgICAgIGNvbmZpcm1lZEJhbGFuY2VTdHJpbmc6ICc5OTc4NjU5MjAnLFxuICAgICAgICBzcGVuZGFibGVCYWxhbmNlU3RyaW5nOiAnOTg1MjEyMzg0JyxcbiAgICAgICAgcmVzZXJ2ZWRCYWxhbmNlU3RyaW5nOiAnMjQ0NzEzNicsXG4gICAgICAgIHJlY2VpdmVBZGRyZXNzOiB7XG4gICAgICAgICAgaWQ6ICc2OGJhZmVlNDNlYjVjZDIyYWNhMmFmZTQzMWQ0MjcyYicsXG4gICAgICAgICAgYWRkcmVzczogJ0dnOFkyVFlqVWlXNE1kVUpVM3FSM0NUREtHOGl6dUtZcFhvYkRqM3V6aTF5JyxcbiAgICAgICAgICBjaGFpbjogMCxcbiAgICAgICAgICBpbmRleDogMCxcbiAgICAgICAgICBjb2luOiAndHNvbCcsXG4gICAgICAgICAgd2FsbGV0OiAnNjhiYWZlZTQzZWI1Y2QyMmFjYTJhZmQ2YjEzZWM3YWQnLFxuICAgICAgICAgIGNvaW5TcGVjaWZpYzoge1xuICAgICAgICAgICAgcm9vdEFkZHJlc3M6ICdHZzhZMlRZalVpVzRNZFVKVTNxUjNDVERLRzhpenVLWXBYb2JEajN1emkxeScsXG4gICAgICAgICAgICBtaW5pbXVtRnVuZGluZzogMjQ0NzEzNixcbiAgICAgICAgICAgIHR5cGU6ICduYXRpdmUnLFxuICAgICAgICAgICAgcGVuZGluZ0NoYWluSW5pdGlhbGl6YXRpb246IGZhbHNlLFxuICAgICAgICAgICAgdHJ1c3RlZFRva2VuczogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdG9rZW46ICd0c29sOmdhcmknLFxuICAgICAgICAgICAgICAgIHN0YXRlOiAnYWN0aXZlJyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHRva2VuOiAndHNvbDpnbXQnLFxuICAgICAgICAgICAgICAgIHN0YXRlOiAnYWN0aXZlJyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHRva2VuOiAndHNvbDpvcmNhJyxcbiAgICAgICAgICAgICAgICBzdGF0ZTogJ2FjdGl2ZScsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHBlbmRpbmdBcHByb3ZhbHM6IFtdLFxuICAgICAgfSxcbiAgICAgIHR4UmVxdWVzdElkOiAnMTdiNWQ4OTUtYzM4MC00OTczLTlhYjItMTkxYTA0ZDU0NWY4JyxcbiAgICAgIHR4SGV4OlxuICAgICAgICAnMDIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGM3MGM5YmIzODIzMGM2NTc3ZGQ0NmFlNjc5NzU0MjA1ODU3NDdhM2JlN2ZlMmU4Zjc0NDUwOGY4YmJkOTEyMmVkYTk5MWY0NWM4MDMxZDFiZDIxODk5ODYwMjg3MDA3ODE2NDY3MWU4MmQ4MDIwYmQ5Y2FhMzYzODcxNjNjYzAxMDIwMTA3MGJlOGU1NzlhNzE5OGM3MWVlMzhiM2JhMmVlNTZhZjg4Y2IxNjk5NWE4ZjBiZjQ2YWIyYTM3MDI2MDNjYjczMmU0MWM5NjE3MjA0NGYxMjE3YzM3ODRlOGYwMmY0OWUyYzhmYzM1OTFlODEyOTRhYjU0Mzk0ZjlkMjJmZDdiN2E4ZjM1NjZkNDNjOTkwZWIwMjVmMDIyZDY4YzgwODg4ODgyZTljYmQwMGVkNjI2N2NmZjQwMGNjMDY1YmU3OWI5ZDJjNDFmM2VlNDE2M2I2MzE3MzBmZWE0NGFhZjQ5YjJiNWViN2ZmMjlhNTJhODI5MmZhZTZmNDVmNzUyOWM5M2MxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDgxZjc0Y2VmZDNmYjg0NGY2MmNhN2VkNmYxNDE4YjNmODZmYWYwODg2NjQ3ZDk4MDI1OWJmMGFhZmJlNzdiNmM4NzkyZWZiMmIxNTZiZjczYWMzMWUzMDIyZTliOThjZGM4MGFmYTUwZDM0YzdmMDA1ZmU0Yjg0YjU0MDMzNmU2OGM5NzI1OGY0ZTI0ODlmMWJiM2QxMDI5MTQ4ZTBkODMwYjVhMTM5OWRhZmYxMDg0MDQ4ZTdiZDhkYmU5Zjg1OTA2YTdkNTE3MTkyYzU2OGVlMDhhODQ1ZjczZDI5Nzg4Y2YwMzVjMzE0NWIyMWFiMzQ0ZDgwNjJlYTk0MDAwMDAwNmE3ZDUxNzE5MmM1YzUxMjE4Y2M5NGMzZDRhZjE3ZjU4ZGFlZTA4OWJhMWZkNDRlM2RiZDk4YTAwMDAwMDAwMDZkZGY2ZTFkNzY1YTE5M2Q5Y2JlMTQ2Y2VlYjc5YWMxY2I0ODVlZDVmNWIzNzkxM2E4Y2Y1ODU3ZWZmMDBhOWIxMDk5MzQ2NWZhNmZkMmU3MGNhZWJjYzcyMjA5MzFjNjk2ZTg3N2M1YzRmMWVlM2Q3YmYzZjE4NzRiNGRkYjcwMjA0MDMwMzA4MDEwNDA0MDAwMDAwMDcwNzAwMDIwNjA1MDQwYTA5MDAnLFxuICAgICAgYnVpbGRQYXJhbXM6IHtcbiAgICAgICAgYXBpVmVyc2lvbjogJ2Z1bGwnLFxuICAgICAgICBlbmFibGVUb2tlbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAndHNvbDpyYXknLFxuICAgICAgICAgICAgYWRkcmVzczogJ0E4RHpTbmdnTk44NG53UGdWdkx0ZG8xeVozVnNjTEdEaTRGZEVRWHpVeVl5JyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICB0eXBlOiAnZW5hYmxldG9rZW4nLFxuICAgICAgfSxcbiAgICAgIGZlZUluZm86IHtcbiAgICAgICAgZmVlOiAyMDQ5MjgwLFxuICAgICAgICBmZWVTdHJpbmc6ICcyMDQ5MjgwJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSxcblxuICB0eFByZWJ1aWxkUmF3OiB7XG4gICAgd2FsbGV0SWQ6ICc2OGJhZmVlNDNlYjVjZDIyYWNhMmFmZDZiMTNlYzdhZCcsXG4gICAgd2FsbGV0OiB7XG4gICAgICBpZDogJzY4YmFmZWU0M2ViNWNkMjJhY2EyYWZkNmIxM2VjN2FkJyxcbiAgICAgIHVzZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICB1c2VyOiAnNjVmOWM2Nzk3MjM2ODI1ZDFiNGUxZjgyYTEwMzViNDYnLFxuICAgICAgICAgIHBlcm1pc3Npb25zOiBbJ2FkbWluJywgJ3NwZW5kJywgJ3ZpZXcnXSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBjb2luOiAndHNvbCcsXG4gICAgICBsYWJlbDogJ1NPTCBCTElORCBTSUdOSU5HJyxcbiAgICAgIG06IDIsXG4gICAgICBuOiAzLFxuICAgICAga2V5czogW1xuICAgICAgICAnNjhiYWZlZDU4ODY3MWNmOTRlZDhhNWRiYmE4ODJhZDMnLFxuICAgICAgICAnNjhiYWZlZDUyZDZkOTU2OTRjZjU5NmMyYTE1Mzg2OGInLFxuICAgICAgICAnNjhiYWZlZDQyZDZkOTU2OTRjZjU5NTZlZDY0MDg1M2EnLFxuICAgICAgXSxcbiAgICAgIGtleVNpZ25hdHVyZXM6IHt9LFxuICAgICAgZW50ZXJwcmlzZTogJzY2NjMyYzZiNDJiMDNkMjY1YTkzOTA0OGJlYWFlZTU1JyxcbiAgICAgIG9yZ2FuaXphdGlvbjogJzY2NjMyYzZkNDJiMDNkMjY1YTkzOTEwN2QyZjU4NmU1JyxcbiAgICAgIGJpdGdvT3JnOiAnQml0R28gVHJ1c3QnLFxuICAgICAgdGFnczogWyc2OGJhZmVlNDNlYjVjZDIyYWNhMmFmZDZiMTNlYzdhZCcsICc2NjYzMmM2YjQyYjAzZDI2NWE5MzkwNDhiZWFhZWU1NSddLFxuICAgICAgZGlzYWJsZVRyYW5zYWN0aW9uTm90aWZpY2F0aW9uczogZmFsc2UsXG4gICAgICBmcmVlemU6IHt9LFxuICAgICAgZGVsZXRlZDogZmFsc2UsXG4gICAgICBhcHByb3ZhbHNSZXF1aXJlZDogMSxcbiAgICAgIGlzQ29sZDogZmFsc2UsXG4gICAgICBjb2luU3BlY2lmaWM6IHtcbiAgICAgICAgcm9vdEFkZHJlc3M6ICdHZzhZMlRZalVpVzRNZFVKVTNxUjNDVERLRzhpenVLWXBYb2JEajN1emkxeScsXG4gICAgICAgIHBlbmRpbmdDaGFpbkluaXRpYWxpemF0aW9uOiBmYWxzZSxcbiAgICAgICAgbWluaW11bUZ1bmRpbmc6IDI0NDcxMzYsXG4gICAgICAgIGxhc3RDaGFpbkluZGV4OiB7XG4gICAgICAgICAgMDogMSxcbiAgICAgICAgICAxOiAtMSxcbiAgICAgICAgfSxcbiAgICAgICAgbm9uY2VFeHBpcmVzQXQ6ICcyMDI1LTA5LTA1VDEyOjU0OjE2LjIxOVonLFxuICAgICAgICB0cnVzdGVkVG9rZW5zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgdG9rZW46ICd0c29sOmdhcmknLFxuICAgICAgICAgICAgc3RhdGU6ICdhY3RpdmUnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgdG9rZW46ICd0c29sOmdtdCcsXG4gICAgICAgICAgICBzdGF0ZTogJ2FjdGl2ZScsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0b2tlbjogJ3Rzb2w6b3JjYScsXG4gICAgICAgICAgICBzdGF0ZTogJ2FjdGl2ZScsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICBhZG1pbjoge1xuICAgICAgICBwb2xpY3k6IHtcbiAgICAgICAgICBkYXRlOiAnMjAyNS0wOS0wNVQxNToxNjo1Mi4zNzZaJyxcbiAgICAgICAgICBpZDogJzY4YmFmZWU0M2ViNWNkMjJhY2EyYWZkOWU2OTlhM2FjJyxcbiAgICAgICAgICBsYWJlbDogJ2RlZmF1bHQnLFxuICAgICAgICAgIHJ1bGVzOiBbXSxcbiAgICAgICAgICB2ZXJzaW9uOiAwLFxuICAgICAgICAgIGxhdGVzdDogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBjbGllbnRGbGFnczogW10sXG4gICAgICB3YWxsZXRGbGFnczogW10sXG4gICAgICBhbGxvd0JhY2t1cEtleVNpZ25pbmc6IGZhbHNlLFxuICAgICAgcmVjb3ZlcmFibGU6IHRydWUsXG4gICAgICBzdGFydERhdGU6ICcyMDI1LTA5LTA1VDE1OjE2OjUyLjAwMFonLFxuICAgICAgdHlwZTogJ2hvdCcsXG4gICAgICBidWlsZERlZmF1bHRzOiB7fSxcbiAgICAgIGN1c3RvbUNoYW5nZUtleVNpZ25hdHVyZXM6IHt9LFxuICAgICAgaGFzTGFyZ2VOdW1iZXJPZkFkZHJlc3NlczogZmFsc2UsXG4gICAgICBtdWx0aXNpZ1R5cGU6ICd0c3MnLFxuICAgICAgaGFzUmVjZWl2ZVRyYW5zZmVyUG9saWN5OiBmYWxzZSxcbiAgICAgIGNyZWF0b3I6ICc2NWY5YzY3OTcyMzY4MjVkMWI0ZTFmODJhMTAzNWI0NicsXG4gICAgICB3YWxsZXRGdWxseUNyZWF0ZWQ6IHRydWUsXG4gICAgICBjb25maWc6IHt9LFxuICAgICAgYmFsYW5jZVN0cmluZzogJzk5Nzg2NTkyMCcsXG4gICAgICBjb25maXJtZWRCYWxhbmNlU3RyaW5nOiAnOTk3ODY1OTIwJyxcbiAgICAgIHNwZW5kYWJsZUJhbGFuY2VTdHJpbmc6ICc5ODUyMTIzODQnLFxuICAgICAgcmVzZXJ2ZWRCYWxhbmNlU3RyaW5nOiAnMjQ0NzEzNicsXG4gICAgICByZWNlaXZlQWRkcmVzczoge1xuICAgICAgICBpZDogJzY4YmFmZWU0M2ViNWNkMjJhY2EyYWZlNDMxZDQyNzJiJyxcbiAgICAgICAgYWRkcmVzczogJ0dnOFkyVFlqVWlXNE1kVUpVM3FSM0NUREtHOGl6dUtZcFhvYkRqM3V6aTF5JyxcbiAgICAgICAgY2hhaW46IDAsXG4gICAgICAgIGluZGV4OiAwLFxuICAgICAgICBjb2luOiAndHNvbCcsXG4gICAgICAgIHdhbGxldDogJzY4YmFmZWU0M2ViNWNkMjJhY2EyYWZkNmIxM2VjN2FkJyxcbiAgICAgICAgY29pblNwZWNpZmljOiB7XG4gICAgICAgICAgcm9vdEFkZHJlc3M6ICdHZzhZMlRZalVpVzRNZFVKVTNxUjNDVERLRzhpenVLWXBYb2JEajN1emkxeScsXG4gICAgICAgICAgbWluaW11bUZ1bmRpbmc6IDI0NDcxMzYsXG4gICAgICAgICAgdHlwZTogJ25hdGl2ZScsXG4gICAgICAgICAgcGVuZGluZ0NoYWluSW5pdGlhbGl6YXRpb246IGZhbHNlLFxuICAgICAgICAgIHRydXN0ZWRUb2tlbnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdG9rZW46ICd0c29sOmdhcmknLFxuICAgICAgICAgICAgICBzdGF0ZTogJ2FjdGl2ZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0b2tlbjogJ3Rzb2w6Z210JyxcbiAgICAgICAgICAgICAgc3RhdGU6ICdhY3RpdmUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgdG9rZW46ICd0c29sOm9yY2EnLFxuICAgICAgICAgICAgICBzdGF0ZTogJ2FjdGl2ZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgcGVuZGluZ0FwcHJvdmFsczogW10sXG4gICAgfSxcbiAgICB0eFJlcXVlc3RJZDogJzE3YjVkODk1LWMzODAtNDk3My05YWIyLTE5MWEwNGQ1NDVmOCcsXG4gICAgdHhIZXg6XG4gICAgICAnMDIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGM3MGM5YmIzODIzMGM2NTc3ZGQ0NmFlNjc5NzU0MjA1ODU3NDdhM2JlN2ZlMmU4Zjc0NDUwOGY4YmJkOTEyMmVkYTk5MWY0NWM4MDMxZDFiZDIxODk5ODYwMjg3MDA3ODE2NDY3MWU4MmQ4MDIwYmQ5Y2FhMzYzODcxNjNjYzAxMDIwMTA3MGJlOGU1NzlhNzE5OGM3MWVlMzhiM2JhMmVlNTZhZjg4Y2IxNjk5NWE4ZjBiZjQ2YWIyYTM3MDI2MDNjYjczMmU0MWM5NjE3MjA0NGYxMjE3YzM3ODRlOGYwMmY0OWUyYzhmYzM1OTFlODEyOTRhYjU0Mzk0ZjlkMjJmZDdiN2E4ZjM1NjZkNDNjOTkwZWIwMjVmMDIyZDY4YzgwODg4ODgyZTljYmQwMGVkNjI2N2NmZjQwMGNjMDY1YmU3OWI5ZDJjNDFmM2VlNDE2M2I2MzE3MzBmZWE0NGFhZjQ5YjJiNWViN2ZmMjlhNTJhODI5MmZhZTZmNDVmNzUyOWM5M2MxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDgxZjc0Y2VmZDNmYjg0NGY2MmNhN2VkNmYxNDE4YjNmODZmYWYwODg2NjQ3ZDk4MDI1OWJmMGFhZmJlNzdiNmM4NzkyZWZiMmIxNTZiZjczYWMzMWUzMDIyZTliOThjZGM4MGFmYTUwZDM0YzdmMDA1ZmU0Yjg0YjU0MDMzNmU2OGM5NzI1OGY0ZTI0ODlmMWJiM2QxMDI5MTQ4ZTBkODMwYjVhMTM5OWRhZmYxMDg0MDQ4ZTdiZDhkYmU5Zjg1OTA2YTdkNTE3MTkyYzU2OGVlMDhhODQ1ZjczZDI5Nzg4Y2YwMzVjMzE0NWIyMWFiMzQ0ZDgwNjJlYTk0MDAwMDAwNmE3ZDUxNzE5MmM1YzUxMjE4Y2M5NGMzZDRhZjE3ZjU4ZGFlZTA4OWJhMWZkNDRlM2RiZDk4YTAwMDAwMDAwMDZkZGY2ZTFkNzY1YTE5M2Q5Y2JlMTQ2Y2VlYjc5YWMxY2I0ODVlZDVmNWIzNzkxM2E4Y2Y1ODU3ZWZmMDBhOWIxMDk5MzQ2NWZhNmZkMmU3MGNhZWJjYzcyMjA5MzFjNjk2ZTg3N2M1YzRmMWVlM2Q3YmYzZjE4NzRiNGRkYjcwMjA0MDMwMzA4MDEwNDA0MDAwMDAwMDcwNzAwMDIwNjA1MDQwYTA5MDAnLFxuICAgIGJ1aWxkUGFyYW1zOiB7XG4gICAgICBhcGlWZXJzaW9uOiAnZnVsbCcsXG4gICAgICBlbmFibGVUb2tlbnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICd0c29sOnJheScsXG4gICAgICAgICAgYWRkcmVzczogJ0E4RHpTbmdnTk44NG53UGdWdkx0ZG8xeVozVnNjTEdEaTRGZEVRWHpVeVl5JyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICB0eXBlOiAnZW5hYmxldG9rZW4nLFxuICAgIH0sXG4gICAgZmVlSW5mbzoge1xuICAgICAgZmVlOiAyMDQ5MjgwLFxuICAgICAgZmVlU3RyaW5nOiAnMjA0OTI4MCcsXG4gICAgfSxcbiAgfSxcbiAgd2FsbGV0RGF0YToge1xuICAgIGlkOiAnNjhiYWZlZTQzZWI1Y2QyMmFjYTJhZmQ2YjEzZWM3YWQnLFxuICAgIHVzZXJzOiBbXG4gICAgICB7XG4gICAgICAgIHVzZXI6ICc2NWY5YzY3OTcyMzY4MjVkMWI0ZTFmODJhMTAzNWI0NicsXG4gICAgICAgIHBlcm1pc3Npb25zOiBbJ2FkbWluJywgJ3NwZW5kJywgJ3ZpZXcnXSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBjb2luOiAndHNvbCcsXG4gICAgbGFiZWw6ICdTT0wgQkxJTkQgU0lHTklORycsXG4gICAgbTogMixcbiAgICBuOiAzLFxuICAgIGtleXM6IFsnNjhiYWZlZDU4ODY3MWNmOTRlZDhhNWRiYmE4ODJhZDMnLCAnNjhiYWZlZDUyZDZkOTU2OTRjZjU5NmMyYTE1Mzg2OGInLCAnNjhiYWZlZDQyZDZkOTU2OTRjZjU5NTZlZDY0MDg1M2EnXSxcbiAgICBrZXlTaWduYXR1cmVzOiB7fSxcbiAgICBlbnRlcnByaXNlOiAnNjY2MzJjNmI0MmIwM2QyNjVhOTM5MDQ4YmVhYWVlNTUnLFxuICAgIG9yZ2FuaXphdGlvbjogJzY2NjMyYzZkNDJiMDNkMjY1YTkzOTEwN2QyZjU4NmU1JyxcbiAgICBiaXRnb09yZzogJ0JpdEdvIFRydXN0JyxcbiAgICB0YWdzOiBbJzY4YmFmZWU0M2ViNWNkMjJhY2EyYWZkNmIxM2VjN2FkJywgJzY2NjMyYzZiNDJiMDNkMjY1YTkzOTA0OGJlYWFlZTU1J10sXG4gICAgZGlzYWJsZVRyYW5zYWN0aW9uTm90aWZpY2F0aW9uczogZmFsc2UsXG4gICAgZnJlZXplOiB7fSxcbiAgICBkZWxldGVkOiBmYWxzZSxcbiAgICBhcHByb3ZhbHNSZXF1aXJlZDogMSxcbiAgICBpc0NvbGQ6IGZhbHNlLFxuICAgIGNvaW5TcGVjaWZpYzoge1xuICAgICAgcm9vdEFkZHJlc3M6ICdHZzhZMlRZalVpVzRNZFVKVTNxUjNDVERLRzhpenVLWXBYb2JEajN1emkxeScsXG4gICAgICBwZW5kaW5nQ2hhaW5Jbml0aWFsaXphdGlvbjogZmFsc2UsXG4gICAgICBtaW5pbXVtRnVuZGluZzogMjQ0NzEzNixcbiAgICAgIGxhc3RDaGFpbkluZGV4OiB7XG4gICAgICAgIDA6IDEsXG4gICAgICAgIDE6IC0xLFxuICAgICAgfSxcbiAgICAgIG5vbmNlRXhwaXJlc0F0OiAnMjAyNS0wOS0wNVQxMjo1NDoxNi4yMTlaJyxcbiAgICAgIHRydXN0ZWRUb2tlbnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHRva2VuOiAndHNvbDpnYXJpJyxcbiAgICAgICAgICBzdGF0ZTogJ2FjdGl2ZScsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICB0b2tlbjogJ3Rzb2w6Z210JyxcbiAgICAgICAgICBzdGF0ZTogJ2FjdGl2ZScsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICB0b2tlbjogJ3Rzb2w6b3JjYScsXG4gICAgICAgICAgc3RhdGU6ICdhY3RpdmUnLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICAgIGFkbWluOiB7XG4gICAgICBwb2xpY3k6IHtcbiAgICAgICAgZGF0ZTogJzIwMjUtMDktMDVUMTU6MTY6NTIuMzc2WicsXG4gICAgICAgIGlkOiAnNjhiYWZlZTQzZWI1Y2QyMmFjYTJhZmQ5ZTY5OWEzYWMnLFxuICAgICAgICBsYWJlbDogJ2RlZmF1bHQnLFxuICAgICAgICBydWxlczogW10sXG4gICAgICAgIHZlcnNpb246IDAsXG4gICAgICAgIGxhdGVzdDogdHJ1ZSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBjbGllbnRGbGFnczogW10sXG4gICAgd2FsbGV0RmxhZ3M6IFtdLFxuICAgIGFsbG93QmFja3VwS2V5U2lnbmluZzogZmFsc2UsXG4gICAgcmVjb3ZlcmFibGU6IHRydWUsXG4gICAgc3RhcnREYXRlOiAnMjAyNS0wOS0wNVQxNToxNjo1Mi4wMDBaJyxcbiAgICB0eXBlOiAnaG90JyxcbiAgICBidWlsZERlZmF1bHRzOiB7fSxcbiAgICBjdXN0b21DaGFuZ2VLZXlTaWduYXR1cmVzOiB7fSxcbiAgICBoYXNMYXJnZU51bWJlck9mQWRkcmVzc2VzOiBmYWxzZSxcbiAgICBtdWx0aXNpZ1R5cGU6ICd0c3MnLFxuICAgIGhhc1JlY2VpdmVUcmFuc2ZlclBvbGljeTogZmFsc2UsXG4gICAgY3JlYXRvcjogJzY1ZjljNjc5NzIzNjgyNWQxYjRlMWY4MmExMDM1YjQ2JyxcbiAgICB3YWxsZXRGdWxseUNyZWF0ZWQ6IHRydWUsXG4gICAgY29uZmlnOiB7fSxcbiAgICBiYWxhbmNlU3RyaW5nOiAnOTk3ODY1OTIwJyxcbiAgICBjb25maXJtZWRCYWxhbmNlU3RyaW5nOiAnOTk3ODY1OTIwJyxcbiAgICBzcGVuZGFibGVCYWxhbmNlU3RyaW5nOiAnOTg1MjEyMzg0JyxcbiAgICByZXNlcnZlZEJhbGFuY2VTdHJpbmc6ICcyNDQ3MTM2JyxcbiAgICByZWNlaXZlQWRkcmVzczoge1xuICAgICAgaWQ6ICc2OGJhZmVlNDNlYjVjZDIyYWNhMmFmZTQzMWQ0MjcyYicsXG4gICAgICBhZGRyZXNzOiAnR2c4WTJUWWpVaVc0TWRVSlUzcVIzQ1RES0c4aXp1S1lwWG9iRGozdXppMXknLFxuICAgICAgY2hhaW46IDAsXG4gICAgICBpbmRleDogMCxcbiAgICAgIGNvaW46ICd0c29sJyxcbiAgICAgIHdhbGxldDogJzY4YmFmZWU0M2ViNWNkMjJhY2EyYWZkNmIxM2VjN2FkJyxcbiAgICAgIGNvaW5TcGVjaWZpYzoge1xuICAgICAgICByb290QWRkcmVzczogJ0dnOFkyVFlqVWlXNE1kVUpVM3FSM0NUREtHOGl6dUtZcFhvYkRqM3V6aTF5JyxcbiAgICAgICAgbWluaW11bUZ1bmRpbmc6IDI0NDcxMzYsXG4gICAgICAgIHR5cGU6ICduYXRpdmUnLFxuICAgICAgICBwZW5kaW5nQ2hhaW5Jbml0aWFsaXphdGlvbjogZmFsc2UsXG4gICAgICAgIHRydXN0ZWRUb2tlbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0b2tlbjogJ3Rzb2w6Z2FyaScsXG4gICAgICAgICAgICBzdGF0ZTogJ2FjdGl2ZScsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0b2tlbjogJ3Rzb2w6Z210JyxcbiAgICAgICAgICAgIHN0YXRlOiAnYWN0aXZlJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHRva2VuOiAndHNvbDpvcmNhJyxcbiAgICAgICAgICAgIHN0YXRlOiAnYWN0aXZlJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHBlbmRpbmdBcHByb3ZhbHM6IFtdLFxuICB9LFxuICBzZW5kVHhIZXg6XG4gICAgJzAyMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA5MWQ5OTQ1MDIwZGE5NzVjMTkwOGFmODIzZDFmM2ZiMDI0MzYyZmM5YzJiNDIxMjY1NDJlNTM5NDViMmU1ODEwNzI4NmNjZjZkZTc3NDQ5YTVkZWUzMzhhZWJiMmY0N2ExMTY5MGQ5MThlMWQ3MGQ0YmY5NDhhN2VkNzA4NDMwODAyMDEwMjA2ZThlNTc5YTcxOThjNzFlZTM4YjNiYTJlZTU2YWY4OGNiMTY5OTVhOGYwYmY0NmFiMmEzNzAyNjAzY2I3MzJlNDFjOTYxNzIwNDRmMTIxN2MzNzg0ZThmMDJmNDllMmM4ZmMzNTkxZTgxMjk0YWI1NDM5NGY5ZDIyZmQ3YjdhOGY4NDAxYzNmNjdjZmE1MjUxOGIzNGEwOWIwOGY0ZWE3N2UxYzRmYjlkODliZmFjY2RjMzNjZjhiOGE5Y2Y4ZDdiYzVjNTM4ZGM3MThkZDY2MDExOTM4OTMwOThhYTUwODM4ZDc2ODY4YmU2NTYxZWViMzliY2ExMTE5N2RjMmY4MjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNmE3ZDUxNzE5MmM1NjhlZTA4YTg0NWY3M2QyOTc4OGNmMDM1YzMxNDViMjFhYjM0NGQ4MDYyZWE5NDAwMDAwMzliNjQ2NGI4NzcxOTAzYWMxNzIxYjI4YWI5ZTE5YWU1ZjAzNDU0MzU3MmM3MDM0ZDI4MmM0OTM3NjlmOWJkNDAyMDQwMzAzMDUwMTA0MDQwMDAwMDAwNDAyMDAwMjBjMDIwMDAwMDAwYTAwMDAwMDAwMDAwMDAwJyxcbiAgd3JvbmdUb2tlbk5hbWVUeEhleDpcbiAgICAnMDIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDU2YTczYzFhMmFmYzMxMWQ0NTdmNTg5OWI0OWEwNDM4MDA1NTZmMzI1Nzc1YWY0MDFjYzEwMDNjNDE2MTA2NWY5ZTZlZTM1Y2Y5ZTJhMDE5YzdlMzJmNDI1YzRmOTdhNDc0MDMyN2MyZWI2ZGRjMWYyZGZkMjlmZTkxYWNhMjA5MDIwMTA2MGFlOGU1NzlhNzE5OGM3MWVlMzhiM2JhMmVlNTZhZjg4Y2IxNjk5NWE4ZjBiZjQ2YWIyYTM3MDI2MDNjYjczMmU0MWM5NjE3MjA0NGYxMjE3YzM3ODRlOGYwMmY0OWUyYzhmYzM1OTFlODEyOTRhYjU0Mzk0ZjlkMjJmZDdiN2E4ZjM4OTZmYzIxOTU5MTM3YzkzYjE0ZjgyMWQxZjI0OTUzOTAwMjY0YTFmMzA4NWMzMDhkNGY3YjViOWZlZDY3MTg5YjliYjMzZjVkNDhjNTVhMmU1ZjczNmM4YjlmMjMyMDkxNjk5YzA2OTkyM2NlOTdhODllNDJkM2E0ZjgzNmMzMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDQwZWIxN2Q4YTEyZTU2MzU4YjUzM2RkZTRkMzM4ZDZkMjVkYzFkYWYwYTMwYTc2ZWQxY2E4MjdlYjQ5ZTM1ZTc4Yzk3MjU4ZjRlMjQ4OWYxYmIzZDEwMjkxNDhlMGQ4MzBiNWExMzk5ZGFmZjEwODQwNDhlN2JkOGRiZTlmODU5MDZhN2Q1MTcxOTJjNTY4ZWUwOGE4NDVmNzNkMjk3ODhjZjAzNWMzMTQ1YjIxYWIzNDRkODA2MmVhOTQwMDAwMDA2YTdkNTE3MTkyYzVjNTEyMThjYzk0YzNkNGFmMTdmNThkYWVlMDg5YmExZmQ0NGUzZGJkOThhMDAwMDAwMDAwNmRkZjZlMWVlNzU4ZmRlMTg0MjVkYmNlNDZjY2RkYWI2MWFmYzRkODNiOTBkMjdmZWJkZjkyOGQ4YTE4YmZjNDg2Mzc4Y2VjN2JlZjZjZDc2YzYyNzE4NWIzZTM5YWRlYzRlMTczYzYxMDg4OWI0NWYyM2ZiZTc0MWU2Mjg0YzAyMDQwMzAyMDcwMTA0MDQwMDAwMDAwNjA3MDAwMzAwMDUwNDA5MDgwMCcsXG4gIHdyb25nQWRkclR4SGV4OlxuICAgICcwMjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNzk5NGU1Y2Y0MjNiNWRmYzJjYTJmN2RlMzllZGIyNjg2YTdlMTNkYjk0OTQzZDllNWVlMTQzN2NmNjkxNTI3NTcwODBlN2RiY2U5NDIwNTJhZGU2ZjdkYjk0MTBkMDcwYzAxYjNhNDkxNGU3M2U1Mzk2NzA1MGQ4Y2U2NDVhMGMwMjAxMDYwYTBhMzY2ZjU5YmYxMzFjZTVkNDU0YWY4NGJmM2NhM2Q1YzI1NzgwNGE2NmIyZjkxN2MzMjVlMmNiNGY2MWIyMWUxYzk2MTcyMDQ0ZjEyMTdjMzc4NGU4ZjAyZjQ5ZTJjOGZjMzU5MWU4MTI5NGFiNTQzOTRmOWQyMmZkN2I3YThmODY1MjI0YjhkNDhiYWE0YmE4NzhmNTNkY2M3NjEzMjE5ODY0YmVjOTg0MGI2Y2YwMTMyMjhlZGY0NjQ5ZmVmOGRlZjUwZGM5YzhmZThlNWU0YTIzYTUzNGU4Zjc1ZWU3MzdlYWM2NzU1OTA0YWQzYzM4NWZlNWZiZjcyMTY2MzIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwODFmNzRjZWZkM2ZiODQ0ZjYyY2E3ZWQ2ZjE0MThiM2Y4NmZhZjA4ODY2NDdkOTgwMjU5YmYwYWFmYmU3N2I2YzhjOTcyNThmNGUyNDg5ZjFiYjNkMTAyOTE0OGUwZDgzMGI1YTEzOTlkYWZmMTA4NDA0OGU3YmQ4ZGJlOWY4NTkwNmE3ZDUxNzE5MmM1NjhlZTA4YTg0NWY3M2QyOTc4OGNmMDM1YzMxNDViMjFhYjM0NGQ4MDYyZWE5NDAwMDAwMDZhN2Q1MTcxOTJjNWM1MTIxOGNjOTRjM2Q0YWYxN2Y1OGRhZWUwODliYTFmZDQ0ZTNkYmQ5OGEwMDAwMDAwMDA2ZGRmNmUxZDc2NWExOTNkOWNiZTE0NmNlZWI3OWFjMWNiNDg1ZWQ1ZjViMzc5MTNhOGNmNTg1N2VmZjAwYTllYmYyMTJlNGQ1YzkzYTIxZTJjZmYwOWUxYjVhN2ZlMGZkZjJkNWY1NzMyOTRkODQxMWIzMDJmYzlkN2M4OWQwMDIwNDAzMDIwNzAxMDQwNDAwMDAwMDA2MDcwMDAzMDAwNTA0MDkwODAwJyxcbn07XG4iXX0=