@requestnetwork/smart-contracts 0.28.1-next.1701 → 0.28.1-next.1705

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 (256) hide show
  1. package/README.md +4 -6
  2. package/dist/hardhat.config.d.ts.map +1 -1
  3. package/dist/hardhat.config.js +3 -8
  4. package/dist/hardhat.config.js.map +1 -1
  5. package/dist/scripts/deploy-payments.d.ts.map +1 -1
  6. package/dist/scripts/deploy-payments.js +4 -34
  7. package/dist/scripts/deploy-payments.js.map +1 -1
  8. package/dist/scripts/erc20-swap-to-conversion.d.ts +2 -7
  9. package/dist/scripts/erc20-swap-to-conversion.d.ts.map +1 -1
  10. package/dist/scripts/erc20-swap-to-conversion.js +3 -57
  11. package/dist/scripts/erc20-swap-to-conversion.js.map +1 -1
  12. package/dist/scripts/{6_deploy-all.d.ts → test-deploy-all.d.ts} +1 -1
  13. package/dist/scripts/test-deploy-all.d.ts.map +1 -0
  14. package/dist/scripts/test-deploy-all.js +22 -0
  15. package/dist/scripts/test-deploy-all.js.map +1 -0
  16. package/dist/scripts/{5_deploy-batch-erc-eth-deployment.d.ts → test-deploy-batch-erc-eth-deployment.d.ts} +1 -1
  17. package/dist/scripts/test-deploy-batch-erc-eth-deployment.d.ts.map +1 -0
  18. package/dist/scripts/{5_deploy-batch-erc-eth-deployment.js → test-deploy-batch-erc-eth-deployment.js} +7 -3
  19. package/dist/scripts/test-deploy-batch-erc-eth-deployment.js.map +1 -0
  20. package/dist/scripts/{4_deploy-escrow-deployment.d.ts → test-deploy-escrow-deployment.d.ts} +1 -1
  21. package/dist/scripts/test-deploy-escrow-deployment.d.ts.map +1 -0
  22. package/dist/scripts/{4_deploy-escrow-deployment.js → test-deploy-escrow-deployment.js} +3 -4
  23. package/dist/scripts/test-deploy-escrow-deployment.js.map +1 -0
  24. package/dist/scripts/{2_deploy-main-payments.d.ts → test-deploy-main-payments.d.ts} +1 -1
  25. package/dist/scripts/test-deploy-main-payments.d.ts.map +1 -0
  26. package/dist/scripts/{2_deploy-main-payments.js → test-deploy-main-payments.js} +1 -1
  27. package/dist/scripts/test-deploy-main-payments.js.map +1 -0
  28. package/dist/scripts/{1_deploy-request-storage.d.ts → test-deploy-request-storage.d.ts} +1 -1
  29. package/dist/scripts/test-deploy-request-storage.d.ts.map +1 -0
  30. package/dist/scripts/{1_deploy-request-storage.js → test-deploy-request-storage.js} +1 -1
  31. package/dist/scripts/test-deploy-request-storage.js.map +1 -0
  32. package/dist/scripts/test-deploy-superfluid.d.ts +4 -0
  33. package/dist/scripts/test-deploy-superfluid.d.ts.map +1 -0
  34. package/dist/scripts/test-deploy-superfluid.js +42 -0
  35. package/dist/scripts/test-deploy-superfluid.js.map +1 -0
  36. package/dist/scripts/{3_deploy_chainlink_contract.d.ts → test-deploy_chainlink_contract.d.ts} +1 -1
  37. package/dist/scripts/test-deploy_chainlink_contract.d.ts.map +1 -0
  38. package/dist/scripts/{3_deploy_chainlink_contract.js → test-deploy_chainlink_contract.js} +17 -8
  39. package/dist/scripts/test-deploy_chainlink_contract.js.map +1 -0
  40. package/dist/scripts-create2/check-deployer.d.ts.map +1 -1
  41. package/dist/scripts-create2/check-deployer.js +1 -6
  42. package/dist/scripts-create2/check-deployer.js.map +1 -1
  43. package/dist/scripts-create2/compute-one-address.d.ts.map +1 -1
  44. package/dist/scripts-create2/compute-one-address.js +2 -1
  45. package/dist/scripts-create2/compute-one-address.js.map +1 -1
  46. package/dist/scripts-create2/constructor-args.d.ts.map +1 -1
  47. package/dist/scripts-create2/constructor-args.js +6 -0
  48. package/dist/scripts-create2/constructor-args.js.map +1 -1
  49. package/dist/scripts-create2/contract-setup/adminTasks.d.ts +6 -0
  50. package/dist/scripts-create2/contract-setup/adminTasks.d.ts.map +1 -0
  51. package/dist/scripts-create2/contract-setup/adminTasks.js +37 -0
  52. package/dist/scripts-create2/contract-setup/adminTasks.js.map +1 -0
  53. package/dist/scripts-create2/contract-setup/index.d.ts +2 -0
  54. package/dist/scripts-create2/contract-setup/index.d.ts.map +1 -0
  55. package/dist/scripts-create2/contract-setup/index.js +6 -0
  56. package/dist/scripts-create2/contract-setup/index.js.map +1 -0
  57. package/dist/scripts-create2/contract-setup/setupERC20SwapToConversion.d.ts +8 -0
  58. package/dist/scripts-create2/contract-setup/setupERC20SwapToConversion.d.ts.map +1 -0
  59. package/dist/scripts-create2/contract-setup/setupERC20SwapToConversion.js +38 -0
  60. package/dist/scripts-create2/contract-setup/setupERC20SwapToConversion.js.map +1 -0
  61. package/dist/scripts-create2/deploy-one.d.ts.map +1 -1
  62. package/dist/scripts-create2/deploy-one.js +7 -0
  63. package/dist/scripts-create2/deploy-one.js.map +1 -1
  64. package/dist/scripts-create2/utils.d.ts.map +1 -1
  65. package/dist/scripts-create2/utils.js +1 -0
  66. package/dist/scripts-create2/utils.js.map +1 -1
  67. package/dist/scripts-create2/verify-one.d.ts.map +1 -1
  68. package/dist/scripts-create2/verify-one.js +1 -0
  69. package/dist/scripts-create2/verify-one.js.map +1 -1
  70. package/dist/scripts-create2/xdeployer.d.ts.map +1 -1
  71. package/dist/scripts-create2/xdeployer.js +3 -7
  72. package/dist/scripts-create2/xdeployer.js.map +1 -1
  73. package/dist/src/lib/artifacts/BatchPayments/index.js +3 -3
  74. package/dist/src/lib/artifacts/ERC20EscrowToPay/index.js +1 -1
  75. package/dist/src/lib/artifacts/Erc20SwapConversion/0.2.0.json +239 -0
  76. package/dist/src/lib/artifacts/Erc20SwapConversion/index.d.ts.map +1 -1
  77. package/dist/src/lib/artifacts/Erc20SwapConversion/index.js +27 -1
  78. package/dist/src/lib/artifacts/Erc20SwapConversion/index.js.map +1 -1
  79. package/dist/src/lib/artifacts/EthConversionProxy/index.js +2 -2
  80. package/dist/src/types/BatchPayments.d.ts +60 -49
  81. package/dist/src/types/ERC20SwapToConversion.d.ts +101 -56
  82. package/dist/src/types/IERC20ConversionProxy.d.ts +207 -0
  83. package/dist/src/types/ISwapRouter.d.ts +137 -0
  84. package/dist/src/types/factories/AggregatorMock__factory.d.ts +1 -1
  85. package/dist/src/types/factories/AggregatorMock__factory.js +1 -1
  86. package/dist/src/types/factories/BadERC20__factory.d.ts +1 -1
  87. package/dist/src/types/factories/BadERC20__factory.js +1 -1
  88. package/dist/src/types/factories/BatchPayments__factory.d.ts +3 -3
  89. package/dist/src/types/factories/BatchPayments__factory.d.ts.map +1 -1
  90. package/dist/src/types/factories/BatchPayments__factory.js +15 -45
  91. package/dist/src/types/factories/BatchPayments__factory.js.map +1 -1
  92. package/dist/src/types/factories/BytesUtilsMock__factory.d.ts +1 -1
  93. package/dist/src/types/factories/BytesUtilsMock__factory.js +1 -1
  94. package/dist/src/types/factories/ChainlinkConversionPath__factory.d.ts +1 -1
  95. package/dist/src/types/factories/ChainlinkConversionPath__factory.js +1 -1
  96. package/dist/src/types/factories/ERC20Alpha__factory.d.ts +1 -1
  97. package/dist/src/types/factories/ERC20Alpha__factory.js +1 -1
  98. package/dist/src/types/factories/ERC20EscrowToPay__factory.d.ts +1 -1
  99. package/dist/src/types/factories/ERC20EscrowToPay__factory.js +1 -1
  100. package/dist/src/types/factories/ERC20False__factory.d.ts +1 -1
  101. package/dist/src/types/factories/ERC20False__factory.js +1 -1
  102. package/dist/src/types/factories/ERC20FeeProxy__factory.d.ts +1 -1
  103. package/dist/src/types/factories/ERC20FeeProxy__factory.js +1 -1
  104. package/dist/src/types/factories/ERC20NoReturn__factory.d.ts +1 -1
  105. package/dist/src/types/factories/ERC20NoReturn__factory.js +1 -1
  106. package/dist/src/types/factories/ERC20Proxy__factory.d.ts +1 -1
  107. package/dist/src/types/factories/ERC20Proxy__factory.js +1 -1
  108. package/dist/src/types/factories/ERC20Revert__factory.d.ts +1 -1
  109. package/dist/src/types/factories/ERC20Revert__factory.js +1 -1
  110. package/dist/src/types/factories/ERC20SwapToConversion__factory.d.ts +3 -3
  111. package/dist/src/types/factories/ERC20SwapToConversion__factory.d.ts.map +1 -1
  112. package/dist/src/types/factories/ERC20SwapToConversion__factory.js +52 -39
  113. package/dist/src/types/factories/ERC20SwapToConversion__factory.js.map +1 -1
  114. package/dist/src/types/factories/ERC20SwapToPay__factory.d.ts +1 -1
  115. package/dist/src/types/factories/ERC20SwapToPay__factory.js +1 -1
  116. package/dist/src/types/factories/ERC20True__factory.d.ts +1 -1
  117. package/dist/src/types/factories/ERC20True__factory.js +1 -1
  118. package/dist/src/types/factories/Erc20ConversionProxy__factory.d.ts +1 -1
  119. package/dist/src/types/factories/Erc20ConversionProxy__factory.js +1 -1
  120. package/dist/src/types/factories/EthConversionProxy__factory.d.ts +1 -1
  121. package/dist/src/types/factories/EthConversionProxy__factory.js +1 -1
  122. package/dist/src/types/factories/EtherPaymentFallback__factory.d.ts +1 -1
  123. package/dist/src/types/factories/EtherPaymentFallback__factory.js +1 -1
  124. package/dist/src/types/factories/EthereumFeeProxy__factory.d.ts +1 -1
  125. package/dist/src/types/factories/EthereumFeeProxy__factory.js +1 -1
  126. package/dist/src/types/factories/EthereumProxy__factory.d.ts +1 -1
  127. package/dist/src/types/factories/EthereumProxy__factory.js +1 -1
  128. package/dist/src/types/factories/FakeSwapRouter__factory.d.ts +1 -1
  129. package/dist/src/types/factories/FakeSwapRouter__factory.js +1 -1
  130. package/dist/src/types/factories/GnosisSafeProxy__factory.d.ts +1 -1
  131. package/dist/src/types/factories/GnosisSafeProxy__factory.js +1 -1
  132. package/dist/src/types/factories/IERC20ConversionProxy__factory.d.ts +32 -0
  133. package/dist/src/types/factories/IERC20ConversionProxy__factory.d.ts.map +1 -0
  134. package/dist/src/types/factories/IERC20ConversionProxy__factory.js +148 -0
  135. package/dist/src/types/factories/IERC20ConversionProxy__factory.js.map +1 -0
  136. package/dist/src/types/factories/ISwapRouter__factory.d.ts +23 -0
  137. package/dist/src/types/factories/ISwapRouter__factory.d.ts.map +1 -0
  138. package/dist/src/types/factories/ISwapRouter__factory.js +59 -0
  139. package/dist/src/types/factories/ISwapRouter__factory.js.map +1 -0
  140. package/dist/src/types/factories/Migrations__factory.d.ts +1 -1
  141. package/dist/src/types/factories/Migrations__factory.js +1 -1
  142. package/dist/src/types/factories/RequestDeployer__factory.d.ts +1 -1
  143. package/dist/src/types/factories/RequestDeployer__factory.js +1 -1
  144. package/dist/src/types/factories/RequestHashStorage__factory.d.ts +1 -1
  145. package/dist/src/types/factories/RequestHashStorage__factory.js +1 -1
  146. package/dist/src/types/factories/RequestOpenHashSubmitter__factory.d.ts +1 -1
  147. package/dist/src/types/factories/RequestOpenHashSubmitter__factory.js +1 -1
  148. package/dist/src/types/factories/StorageFeeCollector__factory.d.ts +1 -1
  149. package/dist/src/types/factories/StorageFeeCollector__factory.js +1 -1
  150. package/dist/src/types/factories/TestERC20__factory.d.ts +1 -1
  151. package/dist/src/types/factories/TestERC20__factory.js +1 -1
  152. package/dist/src/types/factories/UsdtFake__factory.d.ts +1 -1
  153. package/dist/src/types/factories/UsdtFake__factory.js +1 -1
  154. package/dist/src/types/hardhat.d.ts +6 -2
  155. package/dist/src/types/index.d.ts +6 -2
  156. package/dist/src/types/index.d.ts.map +1 -1
  157. package/dist/src/types/index.js +7 -3
  158. package/dist/src/types/index.js.map +1 -1
  159. package/dist/tsconfig.build.tsbuildinfo +1 -1
  160. package/package.json +9 -6
  161. package/types/BatchPayments.d.ts +60 -49
  162. package/types/ERC20SwapToConversion.d.ts +101 -56
  163. package/types/IERC20ConversionProxy.d.ts +207 -0
  164. package/types/ISwapRouter.d.ts +137 -0
  165. package/types/factories/AggregatorMock__factory.d.ts +1 -1
  166. package/types/factories/AggregatorMock__factory.js +1 -1
  167. package/types/factories/BadERC20__factory.d.ts +1 -1
  168. package/types/factories/BadERC20__factory.js +1 -1
  169. package/types/factories/BatchPayments__factory.d.ts +3 -3
  170. package/types/factories/BatchPayments__factory.d.ts.map +1 -1
  171. package/types/factories/BatchPayments__factory.js +15 -45
  172. package/types/factories/BatchPayments__factory.js.map +1 -1
  173. package/types/factories/BytesUtilsMock__factory.d.ts +1 -1
  174. package/types/factories/BytesUtilsMock__factory.js +1 -1
  175. package/types/factories/ChainlinkConversionPath__factory.d.ts +1 -1
  176. package/types/factories/ChainlinkConversionPath__factory.js +1 -1
  177. package/types/factories/ERC20Alpha__factory.d.ts +1 -1
  178. package/types/factories/ERC20Alpha__factory.js +1 -1
  179. package/types/factories/ERC20EscrowToPay__factory.d.ts +1 -1
  180. package/types/factories/ERC20EscrowToPay__factory.js +1 -1
  181. package/types/factories/ERC20False__factory.d.ts +1 -1
  182. package/types/factories/ERC20False__factory.js +1 -1
  183. package/types/factories/ERC20FeeProxy__factory.d.ts +1 -1
  184. package/types/factories/ERC20FeeProxy__factory.js +1 -1
  185. package/types/factories/ERC20NoReturn__factory.d.ts +1 -1
  186. package/types/factories/ERC20NoReturn__factory.js +1 -1
  187. package/types/factories/ERC20Proxy__factory.d.ts +1 -1
  188. package/types/factories/ERC20Proxy__factory.js +1 -1
  189. package/types/factories/ERC20Revert__factory.d.ts +1 -1
  190. package/types/factories/ERC20Revert__factory.js +1 -1
  191. package/types/factories/ERC20SwapToConversion__factory.d.ts +3 -3
  192. package/types/factories/ERC20SwapToConversion__factory.d.ts.map +1 -1
  193. package/types/factories/ERC20SwapToConversion__factory.js +52 -39
  194. package/types/factories/ERC20SwapToConversion__factory.js.map +1 -1
  195. package/types/factories/ERC20SwapToPay__factory.d.ts +1 -1
  196. package/types/factories/ERC20SwapToPay__factory.js +1 -1
  197. package/types/factories/ERC20True__factory.d.ts +1 -1
  198. package/types/factories/ERC20True__factory.js +1 -1
  199. package/types/factories/Erc20ConversionProxy__factory.d.ts +1 -1
  200. package/types/factories/Erc20ConversionProxy__factory.js +1 -1
  201. package/types/factories/EthConversionProxy__factory.d.ts +1 -1
  202. package/types/factories/EthConversionProxy__factory.js +1 -1
  203. package/types/factories/EtherPaymentFallback__factory.d.ts +1 -1
  204. package/types/factories/EtherPaymentFallback__factory.js +1 -1
  205. package/types/factories/EthereumFeeProxy__factory.d.ts +1 -1
  206. package/types/factories/EthereumFeeProxy__factory.js +1 -1
  207. package/types/factories/EthereumProxy__factory.d.ts +1 -1
  208. package/types/factories/EthereumProxy__factory.js +1 -1
  209. package/types/factories/FakeSwapRouter__factory.d.ts +1 -1
  210. package/types/factories/FakeSwapRouter__factory.js +1 -1
  211. package/types/factories/GnosisSafeProxy__factory.d.ts +1 -1
  212. package/types/factories/GnosisSafeProxy__factory.js +1 -1
  213. package/types/factories/IERC20ConversionProxy__factory.d.ts +32 -0
  214. package/types/factories/IERC20ConversionProxy__factory.d.ts.map +1 -0
  215. package/types/factories/IERC20ConversionProxy__factory.js +148 -0
  216. package/types/factories/IERC20ConversionProxy__factory.js.map +1 -0
  217. package/types/factories/ISwapRouter__factory.d.ts +23 -0
  218. package/types/factories/ISwapRouter__factory.d.ts.map +1 -0
  219. package/types/factories/ISwapRouter__factory.js +59 -0
  220. package/types/factories/ISwapRouter__factory.js.map +1 -0
  221. package/types/factories/Migrations__factory.d.ts +1 -1
  222. package/types/factories/Migrations__factory.js +1 -1
  223. package/types/factories/RequestDeployer__factory.d.ts +1 -1
  224. package/types/factories/RequestDeployer__factory.js +1 -1
  225. package/types/factories/RequestHashStorage__factory.d.ts +1 -1
  226. package/types/factories/RequestHashStorage__factory.js +1 -1
  227. package/types/factories/RequestOpenHashSubmitter__factory.d.ts +1 -1
  228. package/types/factories/RequestOpenHashSubmitter__factory.js +1 -1
  229. package/types/factories/StorageFeeCollector__factory.d.ts +1 -1
  230. package/types/factories/StorageFeeCollector__factory.js +1 -1
  231. package/types/factories/TestERC20__factory.d.ts +1 -1
  232. package/types/factories/TestERC20__factory.js +1 -1
  233. package/types/factories/UsdtFake__factory.d.ts +1 -1
  234. package/types/factories/UsdtFake__factory.js +1 -1
  235. package/types/hardhat.d.ts +6 -2
  236. package/types/index.d.ts +6 -2
  237. package/types/index.d.ts.map +1 -1
  238. package/types/index.js +7 -3
  239. package/types/index.js.map +1 -1
  240. package/dist/scripts/1_deploy-request-storage.d.ts.map +0 -1
  241. package/dist/scripts/1_deploy-request-storage.js.map +0 -1
  242. package/dist/scripts/2_deploy-main-payments.d.ts.map +0 -1
  243. package/dist/scripts/2_deploy-main-payments.js.map +0 -1
  244. package/dist/scripts/3_deploy_chainlink_contract.d.ts.map +0 -1
  245. package/dist/scripts/3_deploy_chainlink_contract.js.map +0 -1
  246. package/dist/scripts/4_deploy-escrow-deployment.d.ts.map +0 -1
  247. package/dist/scripts/4_deploy-escrow-deployment.js.map +0 -1
  248. package/dist/scripts/5_deploy-batch-erc-eth-deployment.d.ts.map +0 -1
  249. package/dist/scripts/5_deploy-batch-erc-eth-deployment.js.map +0 -1
  250. package/dist/scripts/6_deploy-all.d.ts.map +0 -1
  251. package/dist/scripts/6_deploy-all.js +0 -20
  252. package/dist/scripts/6_deploy-all.js.map +0 -1
  253. package/dist/scripts/prepare-payments.d.ts +0 -4
  254. package/dist/scripts/prepare-payments.d.ts.map +0 -1
  255. package/dist/scripts/prepare-payments.js +0 -31
  256. package/dist/scripts/prepare-payments.js.map +0 -1
@@ -15,7 +15,7 @@ const _abi = [
15
15
  },
16
16
  {
17
17
  internalType: "address",
18
- name: "_paymentEthereumFeeProxy",
18
+ name: "_paymentEthFeeProxy",
19
19
  type: "address",
20
20
  },
21
21
  {
@@ -47,47 +47,17 @@ const _abi = [
47
47
  type: "event",
48
48
  },
49
49
  {
50
- anonymous: false,
51
50
  inputs: [
52
51
  {
53
- indexed: false,
54
52
  internalType: "address",
55
- name: "tokenAddress",
56
- type: "address",
57
- },
58
- {
59
- indexed: false,
60
- internalType: "address",
61
- name: "to",
62
- type: "address",
63
- },
64
- {
65
- indexed: false,
66
- internalType: "uint256",
67
- name: "amount",
68
- type: "uint256",
69
- },
70
- {
71
- indexed: true,
72
- internalType: "bytes",
73
- name: "paymentReference",
74
- type: "bytes",
75
- },
76
- {
77
- indexed: false,
78
- internalType: "uint256",
79
- name: "feeAmount",
80
- type: "uint256",
81
- },
82
- {
83
- indexed: false,
84
- internalType: "address",
85
- name: "feeAddress",
53
+ name: "_erc20Address",
86
54
  type: "address",
87
55
  },
88
56
  ],
89
- name: "TransferWithReferenceAndFee",
90
- type: "event",
57
+ name: "approvePaymentProxyToSpend",
58
+ outputs: [],
59
+ stateMutability: "nonpayable",
60
+ type: "function",
91
61
  },
92
62
  {
93
63
  inputs: [
@@ -239,7 +209,7 @@ const _abi = [
239
209
  },
240
210
  {
241
211
  inputs: [],
242
- name: "paymentEthereumFeeProxy",
212
+ name: "paymentEthFeeProxy",
243
213
  outputs: [
244
214
  {
245
215
  internalType: "contract IEthereumFeeProxy",
@@ -274,7 +244,7 @@ const _abi = [
274
244
  inputs: [
275
245
  {
276
246
  internalType: "address",
277
- name: "_paymentProxyAddress",
247
+ name: "_paymentErc20FeeProxy",
278
248
  type: "address",
279
249
  },
280
250
  ],
@@ -287,11 +257,11 @@ const _abi = [
287
257
  inputs: [
288
258
  {
289
259
  internalType: "address",
290
- name: "_paymentEthereumFeeProxyAddress",
260
+ name: "_paymentEthFeeProxy",
291
261
  type: "address",
292
262
  },
293
263
  ],
294
- name: "setPaymentEthereumFeeProxy",
264
+ name: "setPaymentEthFeeProxy",
295
265
  outputs: [],
296
266
  stateMutability: "nonpayable",
297
267
  type: "function",
@@ -314,16 +284,16 @@ const _abi = [
314
284
  type: "receive",
315
285
  },
316
286
  ];
317
- const _bytecode = "0x60806040523480156200001157600080fd5b5060405162002b3f38038062002b3f833981810160405281019062000037919062000377565b620000576200004b6200010260201b60201c565b6200010a60201b60201c565b6001808190555082600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600281905550620000f981620001ce60201b60201c565b505050620004ee565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b620001de6200010260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1662000204620002e460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16146200025d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002549062000434565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415620002d0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002c790620004cc565b60405180910390fd5b620002e1816200010a60201b60201c565b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200033f8262000312565b9050919050565b620003518162000332565b81146200035d57600080fd5b50565b600081519050620003718162000346565b92915050565b6000806000606084860312156200039357620003926200030d565b5b6000620003a38682870162000360565b9350506020620003b68682870162000360565b9250506040620003c98682870162000360565b9150509250925092565b600082825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006200041c602083620003d3565b91506200042982620003e4565b602082019050919050565b600060208201905081810360008301526200044f816200040d565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000620004b4602683620003d3565b9150620004c18262000456565b604082019050919050565b60006020820190508181036000830152620004e781620004a5565b9050919050565b61264180620004fe6000396000f3fe6080604052600436106100ab5760003560e01c8063c6e6d98b11610064578063c6e6d98b14610194578063d5073f6f146101bd578063db2a395e146101e6578063f2fde38b1461020f578063f8b823e414610238578063fa73314214610263576100b2565b806310ed2566146100b757806322411509146100e05780632cd3814b1461010b578063715018a61461013657806373535e551461014d5780638da5cb5b14610169576100b2565b366100b257005b600080fd5b3480156100c357600080fd5b506100de60048036038101906100d991906116e2565b61028c565b005b3480156100ec57600080fd5b506100f561034c565b604051610102919061176e565b60405180910390f35b34801561011757600080fd5b50610120610372565b60405161012d91906117aa565b60405180910390f35b34801561014257600080fd5b5061014b610398565b005b61016760048036038101906101629190611914565b610420565b005b34801561017557600080fd5b5061017e6108ad565b60405161018b9190611a1f565b60405180910390f35b3480156101a057600080fd5b506101bb60048036038101906101b69190611a3a565b6108d6565b005b3480156101c957600080fd5b506101e460048036038101906101df9190611b80565b610bde565b005b3480156101f257600080fd5b5061020d600480360381019061020891906116e2565b610c64565b005b34801561021b57600080fd5b50610236600480360381019061023191906116e2565b610d24565b005b34801561024457600080fd5b5061024d610e1c565b60405161025a9190611bbc565b60405180910390f35b34801561026f57600080fd5b5061028a60048036038101906102859190611bd7565b610e22565b005b61029461142f565b73ffffffffffffffffffffffffffffffffffffffff166102b26108ad565b73ffffffffffffffffffffffffffffffffffffffff1614610308576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102ff90611d65565b60405180910390fd5b80600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6103a061142f565b73ffffffffffffffffffffffffffffffffffffffff166103be6108ad565b73ffffffffffffffffffffffffffffffffffffffff1614610414576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161040b90611d65565b60405180910390fd5b61041e6000611437565b565b60026001541415610466576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161045d90611dd1565b60405180910390fd5b6002600181905550868690508989905014801561048857508484905089899050145b801561049957508282905089899050145b6104d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104cf90611e63565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015801561051e573d6000803e3d6000fd5b5060003490506000805b8b8b90508110156107a45760006103e86002548c8c8581811061054e5761054d611e83565b5b9050602002013561055f9190611ee1565b6105699190611f6a565b90508087878481811061057f5761057e611e83565b5b905060200201358c8c8581811061059957610598611e83565b5b905060200201356105aa9190611f9b565b6105b49190611f9b565b8410156105f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105ed9061203d565b60405180910390fd5b80836106029190611f9b565b92508087878481811061061857610617611e83565b5b905060200201358c8c8581811061063257610631611e83565b5b905060200201356106439190611f9b565b61064d9190611f9b565b84610658919061205d565b9350600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b868980b8888858181106106ab576106aa611e83565b5b905060200201358d8d868181106106c5576106c4611e83565b5b905060200201356106d69190611f9b565b8f8f868181106106e9576106e8611e83565b5b90506020020160208101906106fe91906116e2565b8c8c8781811061071157610710611e83565b5b905060200281019061072391906120a0565b8c8c8981811061073657610735611e83565b5b905060200201358b6040518763ffffffff1660e01b815260040161075e959493929190612170565b6000604051808303818588803b15801561077757600080fd5b505af115801561078b573d6000803e3d6000fd5b505050505050808061079c906121be565b915050610528565b508273ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156107eb573d6000803e3d6000fd5b5060003373ffffffffffffffffffffffffffffffffffffffff168360405161081290612238565b60006040518083038185875af1925050503d806000811461084f576040519150601f19603f3d011682016040523d82523d6000602084013e610854565b606091505b5050905080610898576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161088f906122bf565b60405180910390fd5b50505060018081905550505050505050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b86869050898990501480156108f057508484905089899050145b801561090157508282905089899050145b610940576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161093790611e63565b60405180910390fd5b6000805b8a8a9050811015610b6c5788888281811061096257610961611e83565b5b90506020020135826109749190611f9b565b91506000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168d8d8d858181106109c5576109c4611e83565b5b90506020020160208101906109da91906116e2565b8c8c868181106109ed576109ec611e83565b5b905060200201358b8b87818110610a0757610a06611e83565b5b9050602002810190610a1991906120a0565b8b8b89818110610a2c57610a2b611e83565b5b905060200201358a604051602401610a4a97969594939291906122df565b6040516020818303038152906040527fc219a14d000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051610ad491906123b8565b600060405180830381855af49150503d8060008114610b0f576040519150601f19603f3d011682016040523d82523d6000602084013e610b14565b606091505b5050905080610b58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4f9061241b565b60405180910390fd5b508080610b64906121be565b915050610944565b50610b928b836103e860025485610b839190611ee1565b610b8d9190611f6a565b6114fb565b610bd1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bc890612487565b60405180910390fd5b5050505050505050505050565b610be661142f565b73ffffffffffffffffffffffffffffffffffffffff16610c046108ad565b73ffffffffffffffffffffffffffffffffffffffff1614610c5a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5190611d65565b60405180910390fd5b8060028190555050565b610c6c61142f565b73ffffffffffffffffffffffffffffffffffffffff16610c8a6108ad565b73ffffffffffffffffffffffffffffffffffffffff1614610ce0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd790611d65565b60405180910390fd5b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610d2c61142f565b73ffffffffffffffffffffffffffffffffffffffff16610d4a6108ad565b73ffffffffffffffffffffffffffffffffffffffff1614610da0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d9790611d65565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610e10576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e0790612519565b60405180910390fd5b610e1981611437565b50565b60025481565b888890508b8b9050148015610e3c5750868690508b8b9050145b8015610e4d5750848490508b8b9050145b8015610e5e5750828290508b8b9050145b610e9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e9490611e63565b60405180910390fd5b60008b8b905067ffffffffffffffff811115610ebc57610ebb612539565b5b604051908082528060200260200182016040528015610eea5781602001602082028036833780820191505090505b50905060008c8c905067ffffffffffffffff811115610f0c57610f0b612539565b5b604051908082528060200260200182016040528015610f3a5781602001602082028036833780820191505090505b50905060005b8b8b90508110156113205760005b8351811015611102578e8e83818110610f6a57610f69611e83565b5b9050602002016020810190610f7f91906116e2565b73ffffffffffffffffffffffffffffffffffffffff16848281518110610fa857610fa7611e83565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff161415611019578a8a83818110610fdf57610fde611e83565b5b90506020020135838281518110610ff957610ff8611e83565b5b6020026020010181815161100d9190611f9b565b91508181525050611102565b600083828151811061102e5761102d611e83565b5b602002602001015114156110ef578e8e8381811061104f5761104e611e83565b5b905060200201602081019061106491906116e2565b84828151811061107757611076611e83565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508a8a838181106110c4576110c3611e83565b5b905060200201358382815181106110de576110dd611e83565b5b602002602001018181525050611102565b80806110fa906121be565b915050610f4e565b506000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168f8f8481811061115157611150611e83565b5b905060200201602081019061116691906116e2565b8e8e8581811061117957611178611e83565b5b905060200201602081019061118e91906116e2565b8d8d868181106111a1576111a0611e83565b5b905060200201358c8c878181106111bb576111ba611e83565b5b90506020028101906111cd91906120a0565b8c8c898181106111e0576111df611e83565b5b905060200201358b6040516024016111fe97969594939291906122df565b6040516020818303038152906040527fc219a14d000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505060405161128891906123b8565b600060405180830381855af49150503d80600081146112c3576040519150601f19603f3d011682016040523d82523d6000602084013e6112c8565b606091505b505090508061130c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113039061241b565b60405180910390fd5b508080611318906121be565b915050610f40565b5060005b82518110801561134e5750600082828151811061134457611343611e83565b5b6020026020010151115b1561141f576113ac83828151811061136957611368611e83565b5b6020026020010151856103e860025486868151811061138b5761138a611e83565b5b602002602001015161139d9190611ee1565b6113a79190611f6a565b6114fb565b6113eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113e290612487565b60405180910390fd5b6000828281518110611400576113ff611e83565b5b6020026020010181815250508080611417906121be565b915050611324565b5050505050505050505050505050565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000833b61150857600080fd5b60008473ffffffffffffffffffffffffffffffffffffffff1633858560405160240161153693929190612568565b6040516020818303038152906040527f23b872dd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516115c091906123b8565b6000604051808303816000865af19150503d80600081146115fd576040519150601f19603f3d011682016040523d82523d6000602084013e611602565b606091505b505090503d6000811461161c576020811461162557600080fd5b60019250611631565b60206000803e60005192505b5080611672576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611669906125eb565b60405180910390fd5b509392505050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006116af82611684565b9050919050565b6116bf816116a4565b81146116ca57600080fd5b50565b6000813590506116dc816116b6565b92915050565b6000602082840312156116f8576116f761167a565b5b6000611706848285016116cd565b91505092915050565b6000819050919050565b600061173461172f61172a84611684565b61170f565b611684565b9050919050565b600061174682611719565b9050919050565b60006117588261173b565b9050919050565b6117688161174d565b82525050565b6000602082019050611783600083018461175f565b92915050565b60006117948261173b565b9050919050565b6117a481611789565b82525050565b60006020820190506117bf600083018461179b565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126117ea576117e96117c5565b5b8235905067ffffffffffffffff811115611807576118066117ca565b5b602083019150836020820283011115611823576118226117cf565b5b9250929050565b60008083601f8401126118405761183f6117c5565b5b8235905067ffffffffffffffff81111561185d5761185c6117ca565b5b602083019150836020820283011115611879576118786117cf565b5b9250929050565b60008083601f840112611896576118956117c5565b5b8235905067ffffffffffffffff8111156118b3576118b26117ca565b5b6020830191508360208202830111156118cf576118ce6117cf565b5b9250929050565b60006118e182611684565b9050919050565b6118f1816118d6565b81146118fc57600080fd5b50565b60008135905061190e816118e8565b92915050565b600080600080600080600080600060a08a8c0312156119365761193561167a565b5b60008a013567ffffffffffffffff8111156119545761195361167f565b5b6119608c828d016117d4565b995099505060208a013567ffffffffffffffff8111156119835761198261167f565b5b61198f8c828d0161182a565b975097505060408a013567ffffffffffffffff8111156119b2576119b161167f565b5b6119be8c828d01611880565b955095505060608a013567ffffffffffffffff8111156119e1576119e061167f565b5b6119ed8c828d0161182a565b93509350506080611a008c828d016118ff565b9150509295985092959850929598565b611a19816116a4565b82525050565b6000602082019050611a346000830184611a10565b92915050565b60008060008060008060008060008060c08b8d031215611a5d57611a5c61167a565b5b6000611a6b8d828e016116cd565b9a505060208b013567ffffffffffffffff811115611a8c57611a8b61167f565b5b611a988d828e016117d4565b995099505060408b013567ffffffffffffffff811115611abb57611aba61167f565b5b611ac78d828e0161182a565b975097505060608b013567ffffffffffffffff811115611aea57611ae961167f565b5b611af68d828e01611880565b955095505060808b013567ffffffffffffffff811115611b1957611b1861167f565b5b611b258d828e0161182a565b935093505060a0611b388d828e016116cd565b9150509295989b9194979a5092959850565b6000819050919050565b611b5d81611b4a565b8114611b6857600080fd5b50565b600081359050611b7a81611b54565b92915050565b600060208284031215611b9657611b9561167a565b5b6000611ba484828501611b6b565b91505092915050565b611bb681611b4a565b82525050565b6000602082019050611bd16000830184611bad565b92915050565b600080600080600080600080600080600060c08c8e031215611bfc57611bfb61167a565b5b60008c013567ffffffffffffffff811115611c1a57611c1961167f565b5b611c268e828f016117d4565b9b509b505060208c013567ffffffffffffffff811115611c4957611c4861167f565b5b611c558e828f016117d4565b995099505060408c013567ffffffffffffffff811115611c7857611c7761167f565b5b611c848e828f0161182a565b975097505060608c013567ffffffffffffffff811115611ca757611ca661167f565b5b611cb38e828f01611880565b955095505060808c013567ffffffffffffffff811115611cd657611cd561167f565b5b611ce28e828f0161182a565b935093505060a0611cf58e828f016116cd565b9150509295989b509295989b9093969950565b600082825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000611d4f602083611d08565b9150611d5a82611d19565b602082019050919050565b60006020820190508181036000830152611d7e81611d42565b9050919050565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00600082015250565b6000611dbb601f83611d08565b9150611dc682611d85565b602082019050919050565b60006020820190508181036000830152611dea81611dae565b9050919050565b7f74686520696e70757420617272617973206d757374206861766520746865207360008201527f616d65206c656e67746800000000000000000000000000000000000000000000602082015250565b6000611e4d602a83611d08565b9150611e5882611df1565b604082019050919050565b60006020820190508181036000830152611e7c81611e40565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611eec82611b4a565b9150611ef783611b4a565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611f3057611f2f611eb2565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611f7582611b4a565b9150611f8083611b4a565b925082611f9057611f8f611f3b565b5b828204905092915050565b6000611fa682611b4a565b9150611fb183611b4a565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611fe657611fe5611eb2565b5b828201905092915050565b7f6e6f7420656e6f7567682066756e647300000000000000000000000000000000600082015250565b6000612027601083611d08565b915061203282611ff1565b602082019050919050565b600060208201905081810360008301526120568161201a565b9050919050565b600061206882611b4a565b915061207383611b4a565b92508282101561208657612085611eb2565b5b828203905092915050565b600080fd5b600080fd5b600080fd5b600080833560016020038436030381126120bd576120bc612091565b5b80840192508235915067ffffffffffffffff8211156120df576120de612096565b5b6020830192506001820236038313156120fb576120fa61209b565b5b509250929050565b61210c816118d6565b82525050565b600082825260208201905092915050565b82818337600083830152505050565b6000601f19601f8301169050919050565b600061214f8385612112565b935061215c838584612123565b61216583612132565b840190509392505050565b60006080820190506121856000830188612103565b8181036020830152612198818688612143565b90506121a76040830185611bad565b6121b46060830184612103565b9695505050505050565b60006121c982611b4a565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156121fc576121fb611eb2565b5b600182019050919050565b600081905092915050565b50565b6000612222600083612207565b915061222d82612212565b600082019050919050565b600061224382612215565b9150819050919050565b7f436f756c64206e6f742073656e642072656d61696e696e672066756e6473207460008201527f6f20746865207061796572000000000000000000000000000000000000000000602082015250565b60006122a9602b83611d08565b91506122b48261224d565b604082019050919050565b600060208201905081810360008301526122d88161229c565b9050919050565b600060c0820190506122f4600083018a611a10565b6123016020830189611a10565b61230e6040830188611bad565b8181036060830152612321818688612143565b90506123306080830185611bad565b61233d60a0830184611a10565b98975050505050505050565b600081519050919050565b60005b83811015612372578082015181840152602081019050612357565b83811115612381576000848401525b50505050565b600061239282612349565b61239c8185612207565b93506123ac818560208601612354565b80840191505092915050565b60006123c48284612387565b915081905092915050565b7f7472616e7366657246726f6d576974685265666572656e6365206661696c6564600082015250565b6000612405602083611d08565b9150612410826123cf565b602082019050919050565b60006020820190508181036000830152612434816123f8565b9050919050565b7f626174636820666565207472616e7366657246726f6d2829206661696c656400600082015250565b6000612471601f83611d08565b915061247c8261243b565b602082019050919050565b600060208201905081810360008301526124a081612464565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000612503602683611d08565b915061250e826124a7565b604082019050919050565b60006020820190508181036000830152612532816124f6565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600060608201905061257d6000830186611a10565b61258a6020830185611a10565b6125976040830184611bad565b949350505050565b7f7472616e7366657246726f6d282920686173206265656e207265766572746564600082015250565b60006125d5602083611d08565b91506125e08261259f565b602082019050919050565b60006020820190508181036000830152612604816125c8565b905091905056fea2646970667358221220d3ffa970f3e7d4953654a29d6a64c8982224e6c953939d3cfbe4d0c101877f1964736f6c63430008090033";
287
+ const _bytecode = "0x60806040523480156200001157600080fd5b506040516200376938038062003769833981810160405281019062000037919062000377565b620000576200004b6200010260201b60201c565b6200010a60201b60201c565b6001808190555082600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620000f181620001ce60201b60201c565b6000600481905550505050620004ee565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b620001de6200010260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1662000204620002e460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16146200025d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002549062000434565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415620002d0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002c790620004cc565b60405180910390fd5b620002e1816200010a60201b60201c565b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200033f8262000312565b9050919050565b620003518162000332565b81146200035d57600080fd5b50565b600081519050620003718162000346565b92915050565b6000806000606084860312156200039357620003926200030d565b5b6000620003a38682870162000360565b9350506020620003b68682870162000360565b9250506040620003c98682870162000360565b9150509250925092565b600082825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006200041c602083620003d3565b91506200042982620003e4565b602082019050919050565b600060208201905081810360008301526200044f816200040d565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000620004b4602683620003d3565b9150620004c18262000456565b604082019050919050565b60006020820190508181036000830152620004e781620004a5565b9050919050565b61326b80620004fe6000396000f3fe6080604052600436106100c65760003560e01c8063a09b241d1161007f578063d5073f6f11610059578063d5073f6f1461026d578063f2fde38b14610296578063f8b823e4146102bf578063fa733142146102ea57610110565b8063a09b241d146101f0578063a524679214610219578063c6e6d98b1461024457610110565b806310ed256614610115578063224115091461013e57806356959cf014610169578063715018a61461019257806373535e55146101a95780638da5cb5b146101c557610110565b36610110576000341461010e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101059061200c565b60405180910390fd5b005b600080fd5b34801561012157600080fd5b5061013c60048036038101906101379190612094565b610313565b005b34801561014a57600080fd5b506101536103d3565b6040516101609190612120565b60405180910390f35b34801561017557600080fd5b50610190600480360381019061018b9190612094565b6103f9565b005b34801561019e57600080fd5b506101a76104b9565b005b6101c360048036038101906101be919061228a565b610541565b005b3480156101d157600080fd5b506101da61096a565b6040516101e79190612395565b60405180910390f35b3480156101fc57600080fd5b5061021760048036038101906102129190612094565b610993565b005b34801561022557600080fd5b5061022e610a10565b60405161023b91906123d1565b60405180910390f35b34801561025057600080fd5b5061026b600480360381019061026691906123ec565b610a36565b005b34801561027957600080fd5b50610294600480360381019061028f9190612532565b611051565b005b3480156102a257600080fd5b506102bd60048036038101906102b89190612094565b6110d7565b005b3480156102cb57600080fd5b506102d46111cf565b6040516102e1919061256e565b60405180910390f35b3480156102f657600080fd5b50610311600480360381019061030c9190612589565b6111d5565b005b61031b611bf9565b73ffffffffffffffffffffffffffffffffffffffff1661033961096a565b73ffffffffffffffffffffffffffffffffffffffff161461038f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161038690612706565b60405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610401611bf9565b73ffffffffffffffffffffffffffffffffffffffff1661041f61096a565b73ffffffffffffffffffffffffffffffffffffffff1614610475576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161046c90612706565b60405180910390fd5b80600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6104c1611bf9565b73ffffffffffffffffffffffffffffffffffffffff166104df61096a565b73ffffffffffffffffffffffffffffffffffffffff1614610535576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052c90612706565b60405180910390fd5b61053f6000611c01565b565b60026001541415610587576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161057e90612772565b60405180910390fd5b600260018190555086869050898990501480156105a957508484905089899050145b80156105ba57508282905089899050145b6105f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105f090612804565b60405180910390fd5b6000805b8a8a90508110156107f85784848281811061061b5761061a612824565b5b9050602002013589898381811061063557610634612824565b5b905060200201356106469190612882565b471015610688576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067f90612924565b60405180910390fd5b88888281811061069b5761069a612824565b5b90506020020135826106ad9190612882565b9150600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b868980b868684818110610700576106ff612824565b5b905060200201358b8b8581811061071a57610719612824565b5b9050602002013561072b9190612882565b8d8d8581811061073e5761073d612824565b5b90506020020160208101906107539190612094565b8a8a8681811061076657610765612824565b5b90506020028101906107789190612953565b8a8a8881811061078b5761078a612824565b5b90506020020135896040518763ffffffff1660e01b81526004016107b3959493929190612a23565b6000604051808303818588803b1580156107cc57600080fd5b505af11580156107e0573d6000803e3d6000fd5b505050505080806107f090612a71565b9150506105fd565b506103e86004548261080a9190612aba565b6108149190612b43565b905080471015610859576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161085090612bc0565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015801561089f573d6000803e3d6000fd5b5060004711156109575760003373ffffffffffffffffffffffffffffffffffffffff16476040516108cf90612c11565b60006040518083038185875af1925050503d806000811461090c576040519150601f19603f3d011682016040523d82523d6000602084013e610911565b606091505b5050905080610955576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161094c90612c98565b60405180910390fd5b505b5060018081905550505050505050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600081905060007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9050610a0a600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16828473ffffffffffffffffffffffffffffffffffffffff16611cc59092919063ffffffff16565b50505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b8686905089899050148015610a5057508484905089899050145b8015610a6157508282905089899050145b610aa0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a9790612804565b60405180910390fd5b6000805b8a8a9050811015610b0d57848482818110610ac257610ac1612824565b5b90506020020135898983818110610adc57610adb612824565b5b90506020020135610aed9190612882565b82610af89190612882565b91508080610b0590612a71565b915050610aa4565b5060008b9050818173ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e33306040518363ffffffff1660e01b8152600401610b4f929190612cb8565b60206040518083038186803b158015610b6757600080fd5b505afa158015610b7b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b9f9190612cf6565b1015610be0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bd790612d95565b60405180910390fd5b818173ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff1660e01b8152600401610c1a9190612395565b60206040518083038186803b158015610c3257600080fd5b505afa158015610c46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c6a9190612cf6565b1015610cab576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ca290612924565b60405180910390fd5b610cb68c3084611df9565b610cf5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cec90612e01565b60405180910390fd5b818173ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e30600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518363ffffffff1660e01b8152600401610d53929190612cb8565b60206040518083038186803b158015610d6b57600080fd5b505afa158015610d7f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610da39190612cf6565b1015610db357610db281610993565b5b60005b8b8b9050811015610f1057858582818110610dd457610dd3612824565b5b9050602002013583610de69190612e21565b9250600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c219a14d8e8e8e85818110610e3a57610e39612824565b5b9050602002016020810190610e4f9190612094565b8d8d86818110610e6257610e61612824565b5b905060200201358c8c87818110610e7c57610e7b612824565b5b9050602002810190610e8e9190612953565b8c8c89818110610ea157610ea0612824565b5b905060200201358b6040518863ffffffff1660e01b8152600401610ecb9796959493929190612e55565b600060405180830381600087803b158015610ee557600080fd5b505af1158015610ef9573d6000803e3d6000fd5b505050508080610f0890612a71565b915050610db6565b506103e860045483610f229190612aba565b610f2c9190612b43565b9150818173ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff1660e01b8152600401610f689190612395565b60206040518083038186803b158015610f8057600080fd5b505afa158015610f94573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fb89190612cf6565b1015610ff9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff090612f31565b60405180910390fd5b6110048c8484611df9565b611043576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161103a90612f9d565b60405180910390fd5b505050505050505050505050565b611059611bf9565b73ffffffffffffffffffffffffffffffffffffffff1661107761096a565b73ffffffffffffffffffffffffffffffffffffffff16146110cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c490612706565b60405180910390fd5b8060048190555050565b6110df611bf9565b73ffffffffffffffffffffffffffffffffffffffff166110fd61096a565b73ffffffffffffffffffffffffffffffffffffffff1614611153576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114a90612706565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156111c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ba9061302f565b60405180910390fd5b6111cc81611c01565b50565b60045481565b888890508b8b90501480156111ef5750868690508b8b9050145b80156112005750848490508b8b9050145b80156112115750828290508b8b9050145b611250576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124790612804565b60405180910390fd5b60008b8b905067ffffffffffffffff81111561126f5761126e61304f565b5b6040519080825280602002602001820160405280156112a857816020015b611295611f78565b81526020019060019003908161128d5790505b50905060005b8c8c90508110156115b45760005b8d8d90508110156115a0578d8d838181106112da576112d9612824565b5b90506020020160208101906112ef9190612094565b73ffffffffffffffffffffffffffffffffffffffff1683828151811061131857611317612824565b5b60200260200101516000015173ffffffffffffffffffffffffffffffffffffffff1614156114015785858381811061135357611352612824565b5b905060200201358a8a8481811061136d5761136c612824565b5b9050602002013561137e9190612882565b83828151811061139157611390612824565b5b60200260200101516020018181516113a99190612882565b915081815250508989838181106113c3576113c2612824565b5b905060200201358382815181106113dd576113dc612824565b5b60200260200101516040018181516113f59190612882565b915081815250506115a0565b600083828151811061141657611415612824565b5b60200260200101516020015114801561146c5750600086868481811061143f5761143e612824565b5b905060200201358b8b8581811061145957611458612824565b5b9050602002013561146a9190612882565b115b1561158d578d8d8381811061148457611483612824565b5b90506020020160208101906114999190612094565b8382815181106114ac576114ab612824565b5b60200260200101516000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508585838181106114fd576114fc612824565b5b905060200201358a8a8481811061151757611516612824565b5b905060200201356115289190612882565b83828151811061153b5761153a612824565b5b6020026020010151602001818152505089898381811061155e5761155d612824565b5b9050602002013583828151811061157857611577612824565b5b602002602001015160400181815250506115a0565b808061159890612a71565b9150506112bc565b5080806115ac90612a71565b9150506112ae565b5060005b8151811080156115e6575060008282815181106115d8576115d7612824565b5b602002602001015160200151115b15611a8c576103e860045483838151811061160457611603612824565b5b60200260200101516040015161161a9190612aba565b6116249190612b43565b82828151811061163757611636612824565b5b60200260200101516040018181525050600082828151811061165c5761165b612824565b5b602002602001015160000151905082828151811061167d5761167c612824565b5b60200260200101516040015183838151811061169c5761169b612824565b5b6020026020010151602001516116b29190612882565b8173ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e33306040518363ffffffff1660e01b81526004016116ed929190612cb8565b60206040518083038186803b15801561170557600080fd5b505afa158015611719573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061173d9190612cf6565b101561177e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177590612d95565b60405180910390fd5b82828151811061179157611790612824565b5b6020026020010151604001518383815181106117b0576117af612824565b5b6020026020010151602001516117c69190612882565b8173ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff1660e01b81526004016117ff9190612395565b60206040518083038186803b15801561181757600080fd5b505afa15801561182b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061184f9190612cf6565b1015611890576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188790612924565b60405180910390fd5b6118d78383815181106118a6576118a5612824565b5b602002602001015160000151308585815181106118c6576118c5612824565b5b602002602001015160200151611df9565b611916576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190d90612e01565b60405180910390fd5b82828151811061192957611928612824565b5b6020026020010151602001518173ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e30600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518363ffffffff1660e01b8152600401611992929190612cb8565b60206040518083038186803b1580156119aa57600080fd5b505afa1580156119be573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119e29190612cf6565b10156119f2576119f181610993565b5b611a39838381518110611a0857611a07612824565b5b60200260200101516000015185858581518110611a2857611a27612824565b5b602002602001015160400151611df9565b611a78576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a6f90612f9d565b60405180910390fd5b508080611a8490612a71565b9150506115b8565b5060005b8a8a9050811015611bea57600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c219a14d8e8e84818110611aec57611aeb612824565b5b9050602002016020810190611b019190612094565b8d8d85818110611b1457611b13612824565b5b9050602002016020810190611b299190612094565b8c8c86818110611b3c57611b3b612824565b5b905060200201358b8b87818110611b5657611b55612824565b5b9050602002810190611b689190612953565b8b8b89818110611b7b57611b7a612824565b5b905060200201358a6040518863ffffffff1660e01b8152600401611ba59796959493929190612e55565b600060405180830381600087803b158015611bbf57600080fd5b505af1158015611bd3573d6000803e3d6000fd5b505050508080611be290612a71565b915050611a90565b50505050505050505050505050565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008060008573ffffffffffffffffffffffffffffffffffffffff168585604051602401611cf492919061307e565b6040516020818303038152906040527f095ea7b3000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051611d7e9190613116565b6000604051808303816000865af19150503d8060008114611dbb576040519150601f19603f3d011682016040523d82523d6000602084013e611dc0565b606091505b5091509150818015611dee5750600081511480611ded575080806020019051810190611dec9190613165565b5b5b925050509392505050565b6000833b611e0657600080fd5b60008473ffffffffffffffffffffffffffffffffffffffff16338585604051602401611e3493929190613192565b6040516020818303038152906040527f23b872dd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051611ebe9190613116565b6000604051808303816000865af19150503d8060008114611efb576040519150601f19603f3d011682016040523d82523d6000602084013e611f00565b606091505b505090503d60008114611f1a5760208114611f2357600080fd5b60019250611f2f565b60206000803e60005192505b5080611f70576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f6790613215565b60405180910390fd5b509392505050565b6040518060600160405280600073ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001600081525090565b600082825260208201905092915050565b7f4e6f6e2d70617961626c65000000000000000000000000000000000000000000600082015250565b6000611ff6600b83611faf565b915061200182611fc0565b602082019050919050565b6000602082019050818103600083015261202581611fe9565b9050919050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061206182612036565b9050919050565b61207181612056565b811461207c57600080fd5b50565b60008135905061208e81612068565b92915050565b6000602082840312156120aa576120a961202c565b5b60006120b88482850161207f565b91505092915050565b6000819050919050565b60006120e66120e16120dc84612036565b6120c1565b612036565b9050919050565b60006120f8826120cb565b9050919050565b600061210a826120ed565b9050919050565b61211a816120ff565b82525050565b60006020820190506121356000830184612111565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126121605761215f61213b565b5b8235905067ffffffffffffffff81111561217d5761217c612140565b5b60208301915083602082028301111561219957612198612145565b5b9250929050565b60008083601f8401126121b6576121b561213b565b5b8235905067ffffffffffffffff8111156121d3576121d2612140565b5b6020830191508360208202830111156121ef576121ee612145565b5b9250929050565b60008083601f84011261220c5761220b61213b565b5b8235905067ffffffffffffffff81111561222957612228612140565b5b60208301915083602082028301111561224557612244612145565b5b9250929050565b600061225782612036565b9050919050565b6122678161224c565b811461227257600080fd5b50565b6000813590506122848161225e565b92915050565b600080600080600080600080600060a08a8c0312156122ac576122ab61202c565b5b60008a013567ffffffffffffffff8111156122ca576122c9612031565b5b6122d68c828d0161214a565b995099505060208a013567ffffffffffffffff8111156122f9576122f8612031565b5b6123058c828d016121a0565b975097505060408a013567ffffffffffffffff81111561232857612327612031565b5b6123348c828d016121f6565b955095505060608a013567ffffffffffffffff81111561235757612356612031565b5b6123638c828d016121a0565b935093505060806123768c828d01612275565b9150509295985092959850929598565b61238f81612056565b82525050565b60006020820190506123aa6000830184612386565b92915050565b60006123bb826120ed565b9050919050565b6123cb816123b0565b82525050565b60006020820190506123e660008301846123c2565b92915050565b60008060008060008060008060008060c08b8d03121561240f5761240e61202c565b5b600061241d8d828e0161207f565b9a505060208b013567ffffffffffffffff81111561243e5761243d612031565b5b61244a8d828e0161214a565b995099505060408b013567ffffffffffffffff81111561246d5761246c612031565b5b6124798d828e016121a0565b975097505060608b013567ffffffffffffffff81111561249c5761249b612031565b5b6124a88d828e016121f6565b955095505060808b013567ffffffffffffffff8111156124cb576124ca612031565b5b6124d78d828e016121a0565b935093505060a06124ea8d828e0161207f565b9150509295989b9194979a5092959850565b6000819050919050565b61250f816124fc565b811461251a57600080fd5b50565b60008135905061252c81612506565b92915050565b6000602082840312156125485761254761202c565b5b60006125568482850161251d565b91505092915050565b612568816124fc565b82525050565b6000602082019050612583600083018461255f565b92915050565b600080600080600080600080600080600060c08c8e0312156125ae576125ad61202c565b5b60008c013567ffffffffffffffff8111156125cc576125cb612031565b5b6125d88e828f0161214a565b9b509b505060208c013567ffffffffffffffff8111156125fb576125fa612031565b5b6126078e828f0161214a565b995099505060408c013567ffffffffffffffff81111561262a57612629612031565b5b6126368e828f016121a0565b975097505060608c013567ffffffffffffffff81111561265957612658612031565b5b6126658e828f016121f6565b955095505060808c013567ffffffffffffffff81111561268857612687612031565b5b6126948e828f016121a0565b935093505060a06126a78e828f0161207f565b9150509295989b509295989b9093969950565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006126f0602083611faf565b91506126fb826126ba565b602082019050919050565b6000602082019050818103600083015261271f816126e3565b9050919050565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00600082015250565b600061275c601f83611faf565b915061276782612726565b602082019050919050565b6000602082019050818103600083015261278b8161274f565b9050919050565b7f74686520696e70757420617272617973206d757374206861766520746865207360008201527f616d65206c656e67746800000000000000000000000000000000000000000000602082015250565b60006127ee602a83611faf565b91506127f982612792565b604082019050919050565b6000602082019050818103600083015261281d816127e1565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061288d826124fc565b9150612898836124fc565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156128cd576128cc612853565b5b828201905092915050565b7f6e6f7420656e6f7567682066756e647300000000000000000000000000000000600082015250565b600061290e601083611faf565b9150612919826128d8565b602082019050919050565b6000602082019050818103600083015261293d81612901565b9050919050565b600080fd5b600080fd5b600080fd5b600080833560016020038436030381126129705761296f612944565b5b80840192508235915067ffffffffffffffff82111561299257612991612949565b5b6020830192506001820236038313156129ae576129ad61294e565b5b509250929050565b6129bf8161224c565b82525050565b600082825260208201905092915050565b82818337600083830152505050565b6000601f19601f8301169050919050565b6000612a0283856129c5565b9350612a0f8385846129d6565b612a18836129e5565b840190509392505050565b6000608082019050612a3860008301886129b6565b8181036020830152612a4b8186886129f6565b9050612a5a604083018561255f565b612a6760608301846129b6565b9695505050505050565b6000612a7c826124fc565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612aaf57612aae612853565b5b600182019050919050565b6000612ac5826124fc565b9150612ad0836124fc565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612b0957612b08612853565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612b4e826124fc565b9150612b59836124fc565b925082612b6957612b68612b14565b5b828204905092915050565b7f6e6f7420656e6f7567682066756e647320666f72206261746368206665650000600082015250565b6000612baa601e83611faf565b9150612bb582612b74565b602082019050919050565b60006020820190508181036000830152612bd981612b9d565b9050919050565b600081905092915050565b50565b6000612bfb600083612be0565b9150612c0682612beb565b600082019050919050565b6000612c1c82612bee565b9150819050919050565b7f436f756c64206e6f742073656e642072656d61696e696e672066756e6473207460008201527f6f20746865207061796572000000000000000000000000000000000000000000602082015250565b6000612c82602b83611faf565b9150612c8d82612c26565b604082019050919050565b60006020820190508181036000830152612cb181612c75565b9050919050565b6000604082019050612ccd6000830185612386565b612cda6020830184612386565b9392505050565b600081519050612cf081612506565b92915050565b600060208284031215612d0c57612d0b61202c565b5b6000612d1a84828501612ce1565b91505092915050565b7f4e6f742073756666696369656e7420616c6c6f77616e636520666f722062617460008201527f636820746f207061790000000000000000000000000000000000000000000000602082015250565b6000612d7f602983611faf565b9150612d8a82612d23565b604082019050919050565b60006020820190508181036000830152612dae81612d72565b9050919050565b7f7061796d656e74207472616e7366657246726f6d2829206661696c6564000000600082015250565b6000612deb601d83611faf565b9150612df682612db5565b602082019050919050565b60006020820190508181036000830152612e1a81612dde565b9050919050565b6000612e2c826124fc565b9150612e37836124fc565b925082821015612e4a57612e49612853565b5b828203905092915050565b600060c082019050612e6a600083018a612386565b612e776020830189612386565b612e84604083018861255f565b8181036060830152612e978186886129f6565b9050612ea6608083018561255f565b612eb360a0830184612386565b98975050505050505050565b7f6e6f7420656e6f7567682066756e647320666f7220746865206261746368206660008201527f6565000000000000000000000000000000000000000000000000000000000000602082015250565b6000612f1b602283611faf565b9150612f2682612ebf565b604082019050919050565b60006020820190508181036000830152612f4a81612f0e565b9050919050565b7f626174636820666565207472616e7366657246726f6d2829206661696c656400600082015250565b6000612f87601f83611faf565b9150612f9282612f51565b602082019050919050565b60006020820190508181036000830152612fb681612f7a565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000613019602683611faf565b915061302482612fbd565b604082019050919050565b600060208201905081810360008301526130488161300c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60006040820190506130936000830185612386565b6130a0602083018461255f565b9392505050565b600081519050919050565b60005b838110156130d05780820151818401526020810190506130b5565b838111156130df576000848401525b50505050565b60006130f0826130a7565b6130fa8185612be0565b935061310a8185602086016130b2565b80840191505092915050565b600061312282846130e5565b915081905092915050565b60008115159050919050565b6131428161312d565b811461314d57600080fd5b50565b60008151905061315f81613139565b92915050565b60006020828403121561317b5761317a61202c565b5b600061318984828501613150565b91505092915050565b60006060820190506131a76000830186612386565b6131b46020830185612386565b6131c1604083018461255f565b949350505050565b7f7472616e7366657246726f6d282920686173206265656e207265766572746564600082015250565b60006131ff602083611faf565b915061320a826131c9565b602082019050919050565b6000602082019050818103600083015261322e816131f2565b905091905056fea2646970667358221220193d754d631edcfef735dcf3d8fb61e707951cfab1646f74719a2884857025ac64736f6c63430008090033";
318
288
  class BatchPayments__factory extends ethers_1.ContractFactory {
319
289
  constructor(signer) {
320
290
  super(_abi, _bytecode, signer);
321
291
  }
322
- deploy(_paymentErc20FeeProxy, _paymentEthereumFeeProxy, _owner, overrides) {
323
- return super.deploy(_paymentErc20FeeProxy, _paymentEthereumFeeProxy, _owner, overrides || {});
292
+ deploy(_paymentErc20FeeProxy, _paymentEthFeeProxy, _owner, overrides) {
293
+ return super.deploy(_paymentErc20FeeProxy, _paymentEthFeeProxy, _owner, overrides || {});
324
294
  }
325
- getDeployTransaction(_paymentErc20FeeProxy, _paymentEthereumFeeProxy, _owner, overrides) {
326
- return super.getDeployTransaction(_paymentErc20FeeProxy, _paymentEthereumFeeProxy, _owner, overrides || {});
295
+ getDeployTransaction(_paymentErc20FeeProxy, _paymentEthFeeProxy, _owner, overrides) {
296
+ return super.getDeployTransaction(_paymentErc20FeeProxy, _paymentEthFeeProxy, _owner, overrides || {});
327
297
  }
328
298
  attach(address) {
329
299
  return super.attach(address);
@@ -1 +1 @@
1
- {"version":3,"file":"BatchPayments__factory.js","sourceRoot":"","sources":["../../../../src/types/factories/BatchPayments__factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BatchPayments__factory.js","sourceRoot":"","sources":["../../../../src/types/factories/BatchPayments__factory.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ export declare class BytesUtilsMock__factory extends ContractFactory {
11
11
  }): TransactionRequest;
12
12
  attach(address: string): BytesUtilsMock;
13
13
  connect(signer: Signer): BytesUtilsMock__factory;
14
- static readonly bytecode = "0x608060405234801561001057600080fd5b5061047a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063349f06931461003b578063b1e05e8a14610059575b600080fd5b610043610075565b6040516100509190610115565b60405180910390f35b610073600480360381019061006e91906102c0565b61007b565b005b60005481565b610085828261008f565b6000819055505050565b60008082101580156100ae575082516020836100ab919061034b565b11155b6100ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100e490610424565b60405180910390fd5b81602001830151905092915050565b6000819050919050565b61010f816100fc565b82525050565b600060208201905061012a6000830184610106565b92915050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6101978261014e565b810181811067ffffffffffffffff821117156101b6576101b561015f565b5b80604052505050565b60006101c9610130565b90506101d5828261018e565b919050565b600067ffffffffffffffff8211156101f5576101f461015f565b5b6101fe8261014e565b9050602081019050919050565b82818337600083830152505050565b600061022d610228846101da565b6101bf565b90508281526020810184848401111561024957610248610149565b5b61025484828561020b565b509392505050565b600082601f83011261027157610270610144565b5b813561028184826020860161021a565b91505092915050565b6000819050919050565b61029d8161028a565b81146102a857600080fd5b50565b6000813590506102ba81610294565b92915050565b600080604083850312156102d7576102d661013a565b5b600083013567ffffffffffffffff8111156102f5576102f461013f565b5b6103018582860161025c565b9250506020610312858286016102ab565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006103568261028a565b91506103618361028a565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156103965761039561031c565b5b828201905092915050565b600082825260208201905092915050565b7f6f66667365742076616c75652073686f756c6420626520696e2074686520636f60008201527f72726563742072616e6765000000000000000000000000000000000000000000602082015250565b600061040e602b836103a1565b9150610419826103b2565b604082019050919050565b6000602082019050818103600083015261043d81610401565b905091905056fea26469706673582212203df95ec20f0e090b08f6216c687cd993ee44e85487439704586a83621365801c64736f6c63430008090033";
14
+ static readonly bytecode = "0x608060405234801561001057600080fd5b5061047a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063349f06931461003b578063b1e05e8a14610059575b600080fd5b610043610075565b6040516100509190610115565b60405180910390f35b610073600480360381019061006e91906102c0565b61007b565b005b60005481565b610085828261008f565b6000819055505050565b60008082101580156100ae575082516020836100ab919061034b565b11155b6100ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100e490610424565b60405180910390fd5b81602001830151905092915050565b6000819050919050565b61010f816100fc565b82525050565b600060208201905061012a6000830184610106565b92915050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6101978261014e565b810181811067ffffffffffffffff821117156101b6576101b561015f565b5b80604052505050565b60006101c9610130565b90506101d5828261018e565b919050565b600067ffffffffffffffff8211156101f5576101f461015f565b5b6101fe8261014e565b9050602081019050919050565b82818337600083830152505050565b600061022d610228846101da565b6101bf565b90508281526020810184848401111561024957610248610149565b5b61025484828561020b565b509392505050565b600082601f83011261027157610270610144565b5b813561028184826020860161021a565b91505092915050565b6000819050919050565b61029d8161028a565b81146102a857600080fd5b50565b6000813590506102ba81610294565b92915050565b600080604083850312156102d7576102d661013a565b5b600083013567ffffffffffffffff8111156102f5576102f461013f565b5b6103018582860161025c565b9250506020610312858286016102ab565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006103568261028a565b91506103618361028a565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156103965761039561031c565b5b828201905092915050565b600082825260208201905092915050565b7f6f66667365742076616c75652073686f756c6420626520696e2074686520636f60008201527f72726563742072616e6765000000000000000000000000000000000000000000602082015250565b600061040e602b836103a1565b9150610419826103b2565b604082019050919050565b6000602082019050818103600083015261043d81610401565b905091905056fea2646970667358221220fe433b9b4b35a04a31fb281992f9c5594051749d582a3f13ad2ebdeb386e43e564736f6c63430008090033";
15
15
  static readonly abi: ({
16
16
  inputs: {
17
17
  internalType: string;
@@ -38,7 +38,7 @@ const _abi = [
38
38
  type: "function",
39
39
  },
40
40
  ];
41
- const _bytecode = "0x608060405234801561001057600080fd5b5061047a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063349f06931461003b578063b1e05e8a14610059575b600080fd5b610043610075565b6040516100509190610115565b60405180910390f35b610073600480360381019061006e91906102c0565b61007b565b005b60005481565b610085828261008f565b6000819055505050565b60008082101580156100ae575082516020836100ab919061034b565b11155b6100ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100e490610424565b60405180910390fd5b81602001830151905092915050565b6000819050919050565b61010f816100fc565b82525050565b600060208201905061012a6000830184610106565b92915050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6101978261014e565b810181811067ffffffffffffffff821117156101b6576101b561015f565b5b80604052505050565b60006101c9610130565b90506101d5828261018e565b919050565b600067ffffffffffffffff8211156101f5576101f461015f565b5b6101fe8261014e565b9050602081019050919050565b82818337600083830152505050565b600061022d610228846101da565b6101bf565b90508281526020810184848401111561024957610248610149565b5b61025484828561020b565b509392505050565b600082601f83011261027157610270610144565b5b813561028184826020860161021a565b91505092915050565b6000819050919050565b61029d8161028a565b81146102a857600080fd5b50565b6000813590506102ba81610294565b92915050565b600080604083850312156102d7576102d661013a565b5b600083013567ffffffffffffffff8111156102f5576102f461013f565b5b6103018582860161025c565b9250506020610312858286016102ab565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006103568261028a565b91506103618361028a565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156103965761039561031c565b5b828201905092915050565b600082825260208201905092915050565b7f6f66667365742076616c75652073686f756c6420626520696e2074686520636f60008201527f72726563742072616e6765000000000000000000000000000000000000000000602082015250565b600061040e602b836103a1565b9150610419826103b2565b604082019050919050565b6000602082019050818103600083015261043d81610401565b905091905056fea26469706673582212203df95ec20f0e090b08f6216c687cd993ee44e85487439704586a83621365801c64736f6c63430008090033";
41
+ const _bytecode = "0x608060405234801561001057600080fd5b5061047a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063349f06931461003b578063b1e05e8a14610059575b600080fd5b610043610075565b6040516100509190610115565b60405180910390f35b610073600480360381019061006e91906102c0565b61007b565b005b60005481565b610085828261008f565b6000819055505050565b60008082101580156100ae575082516020836100ab919061034b565b11155b6100ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100e490610424565b60405180910390fd5b81602001830151905092915050565b6000819050919050565b61010f816100fc565b82525050565b600060208201905061012a6000830184610106565b92915050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6101978261014e565b810181811067ffffffffffffffff821117156101b6576101b561015f565b5b80604052505050565b60006101c9610130565b90506101d5828261018e565b919050565b600067ffffffffffffffff8211156101f5576101f461015f565b5b6101fe8261014e565b9050602081019050919050565b82818337600083830152505050565b600061022d610228846101da565b6101bf565b90508281526020810184848401111561024957610248610149565b5b61025484828561020b565b509392505050565b600082601f83011261027157610270610144565b5b813561028184826020860161021a565b91505092915050565b6000819050919050565b61029d8161028a565b81146102a857600080fd5b50565b6000813590506102ba81610294565b92915050565b600080604083850312156102d7576102d661013a565b5b600083013567ffffffffffffffff8111156102f5576102f461013f565b5b6103018582860161025c565b9250506020610312858286016102ab565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006103568261028a565b91506103618361028a565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156103965761039561031c565b5b828201905092915050565b600082825260208201905092915050565b7f6f66667365742076616c75652073686f756c6420626520696e2074686520636f60008201527f72726563742072616e6765000000000000000000000000000000000000000000602082015250565b600061040e602b836103a1565b9150610419826103b2565b604082019050919050565b6000602082019050818103600083015261043d81610401565b905091905056fea2646970667358221220fe433b9b4b35a04a31fb281992f9c5594051749d582a3f13ad2ebdeb386e43e564736f6c63430008090033";
42
42
  class BytesUtilsMock__factory extends ethers_1.ContractFactory {
43
43
  constructor(signer) {
44
44
  super(_abi, _bytecode, signer);
@@ -11,7 +11,7 @@ export declare class ChainlinkConversionPath__factory extends ContractFactory {
11
11
  }): TransactionRequest;
12
12
  attach(address: string): ChainlinkConversionPath;
13
13
  connect(signer: Signer): ChainlinkConversionPath__factory;
14
- static readonly bytecode = "0x60806040523480156200001157600080fd5b5060405162002249380380620022498339818101604052810190620000379190620002f0565b620000576200004b6200009f60201b60201c565b620000a760201b60201c565b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506200043d565b600033905090565b620000c28160006200010860201b62000ace1790919060201c565b8073ffffffffffffffffffffffffffffffffffffffff167f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129960405160405180910390a250565b6200011a8282620001bb60201b60201c565b156200015d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620001549062000383565b60405180910390fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156200022f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000226906200041b565b60405180910390fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620002b8826200028b565b9050919050565b620002ca81620002ab565b8114620002d657600080fd5b50565b600081519050620002ea81620002bf565b92915050565b60006020828403121562000309576200030862000286565b5b60006200031984828501620002d9565b91505092915050565b600082825260208201905092915050565b7f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500600082015250565b60006200036b601f8362000322565b9150620003788262000333565b602082019050919050565b600060208201905081810360008301526200039e816200035c565b9050919050565b7f526f6c65733a206163636f756e7420697320746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006200040360228362000322565b91506200041082620003a5565b604082019050919050565b600060208201905081810360008301526200043681620003f4565b9050919050565b611dfc806200044d6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c806397edd4fa1161006657806397edd4fa1461010a578063a3d7afa31461013c578063bb5f747b14610158578063d515bb0314610188578063fbd4122a146101a657610093565b806308d5bc58146100985780634b6c8879146100c85780634c5a628c146100e45780637362d9c8146100ee575b600080fd5b6100b260048036038101906100ad919061113a565b6101d7565b6040516100bf9190611189565b60405180910390f35b6100e260048036038101906100dd91906111a4565b610219565b005b6100ec610363565b005b610108600480360381019061010391906111f7565b610375565b005b610124600480360381019061011f919061137d565b6103d0565b604051610133939291906113df565b60405180910390f35b61015660048036038101906101519190611471565b610723565b005b610172600480360381019061016d91906111f7565b610a0c565b60405161017f9190611540565b60405180910390f35b610190610a29565b60405161019d9190611189565b60405180910390f35b6101c060048036038101906101bb9190611587565b610a4f565b6040516101ce9291906115e7565b60405180910390f35b60026020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610229610224610b76565b610a0c565b610268576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161025f90611693565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f589e912830d38d62f14a6cf3cea8f8a002fc9288b37f0d914b5e7dc107d278bf838383604051610356939291906116b3565b60405180910390a1505050565b61037361036e610b76565b610b7e565b565b610385610380610b76565b610a0c565b6103c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103bb90611693565b60405180910390fd5b6103cd81610bd8565b50565b6000806000670de0b6b3a76400009250670de0b6b3a7640000905042915060005b600185516103ff9190611719565b81101561071b576000806000806104568986815181106104225761042161174d565b5b60200260200101518a600188610438919061177c565b815181106104495761044861174d565b5b6020026020010151610c32565b935093509350935060008473ffffffffffffffffffffffffffffffffffffffff16638205bf6a6040518163ffffffff1660e01b815260040160206040518083038186803b1580156104a657600080fd5b505afa1580156104ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104de91906117e7565b9050878110156104ec578097505b60008573ffffffffffffffffffffffffffffffffffffffff166350d25bcd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561053457600080fd5b505afa158015610548573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056c919061184a565b905060008673ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b1580156105b657600080fd5b505afa1580156105ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ee91906118b0565b60ff169050848111156106215784816106079190611719565b600a6106139190611a10565b8b61061e9190611a5b565b9a505b8381101561064f5780846106359190611719565b600a6106419190611a10565b8b61064c9190611a5b565b9a505b851561067f578181600a6106639190611a10565b8c61066e9190611a5b565b6106789190611ae4565b9a506106a5565b80600a61068c9190611a10565b828c6106989190611a5b565b6106a29190611ae4565b9a505b848110156106d35780856106b99190611719565b600a6106c59190611a10565b8b6106d09190611ae4565b9a505b838111156107015783816106e79190611719565b600a6106f39190611a10565b8b6106fe9190611ae4565b9a505b50505050505050808061071390611b15565b9150506103f1565b509193909250565b61073361072e610b76565b610a0c565b610772576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161076990611693565b60405180910390fd5b8383905086869050146107ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b190611baa565b60405180910390fd5b818190508686905014610802576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107f990611baa565b60405180910390fd5b60005b86869050811015610a03578282828181106108235761082261174d565b5b905060200201602081019061083891906111f7565b6002600089898581811061084f5761084e61174d565b5b905060200201602081019061086491906111f7565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008787858181106108b3576108b261174d565b5b90506020020160208101906108c891906111f7565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f589e912830d38d62f14a6cf3cea8f8a002fc9288b37f0d914b5e7dc107d278bf8787838181106109745761097361174d565b5b905060200201602081019061098991906111f7565b86868481811061099c5761099b61174d565b5b90506020020160208101906109b191906111f7565b8585858181106109c4576109c361174d565b5b90506020020160208101906109d991906111f7565b6040516109e8939291906116b3565b60405180910390a180806109fb90611b15565b915050610805565b50505050505050565b6000610a22826000610e4390919063ffffffff16565b9050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000806000610aa1878780806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050506103d0565b925092509250808389610ab49190611a5b565b610abe9190611ae4565b9450819350505050935093915050565b610ad88282610e43565b15610b18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0f90611c16565b60405180910390fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600033905090565b610b92816000610f0b90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16560405160405180910390a250565b610bec816000610ace90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129960405160405180910390a250565b600080600080600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16935060009250600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610db457600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169350600192505b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610e24576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e1b90611c82565b60405180910390fd5b610e2d86610fb2565b9150610e3885610fb2565b905092959194509250565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610eb4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eab90611d14565b60405180910390fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b610f158282610e43565b610f54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f4b90611da6565b60405180910390fd5b60008260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600060089050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561101757601290506110aa565b611020826110af565b156110a9578173ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561106b57600080fd5b505afa15801561107f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a391906118b0565b60ff1690505b5b919050565b600080823b905060008163ffffffff1611915050919050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611107826110dc565b9050919050565b611117816110fc565b811461112257600080fd5b50565b6000813590506111348161110e565b92915050565b60008060408385031215611151576111506110d2565b5b600061115f85828601611125565b925050602061117085828601611125565b9150509250929050565b611183816110fc565b82525050565b600060208201905061119e600083018461117a565b92915050565b6000806000606084860312156111bd576111bc6110d2565b5b60006111cb86828701611125565b93505060206111dc86828701611125565b92505060406111ed86828701611125565b9150509250925092565b60006020828403121561120d5761120c6110d2565b5b600061121b84828501611125565b91505092915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61127282611229565b810181811067ffffffffffffffff821117156112915761129061123a565b5b80604052505050565b60006112a46110c8565b90506112b08282611269565b919050565b600067ffffffffffffffff8211156112d0576112cf61123a565b5b602082029050602081019050919050565b600080fd5b60006112f96112f4846112b5565b61129a565b9050808382526020820190506020840283018581111561131c5761131b6112e1565b5b835b8181101561134557806113318882611125565b84526020840193505060208101905061131e565b5050509392505050565b600082601f83011261136457611363611224565b5b81356113748482602086016112e6565b91505092915050565b600060208284031215611393576113926110d2565b5b600082013567ffffffffffffffff8111156113b1576113b06110d7565b5b6113bd8482850161134f565b91505092915050565b6000819050919050565b6113d9816113c6565b82525050565b60006060820190506113f460008301866113d0565b61140160208301856113d0565b61140e60408301846113d0565b949350505050565b600080fd5b60008083601f84011261143157611430611224565b5b8235905067ffffffffffffffff81111561144e5761144d611416565b5b60208301915083602082028301111561146a576114696112e1565b5b9250929050565b6000806000806000806060878903121561148e5761148d6110d2565b5b600087013567ffffffffffffffff8111156114ac576114ab6110d7565b5b6114b889828a0161141b565b9650965050602087013567ffffffffffffffff8111156114db576114da6110d7565b5b6114e789828a0161141b565b9450945050604087013567ffffffffffffffff81111561150a576115096110d7565b5b61151689828a0161141b565b92509250509295509295509295565b60008115159050919050565b61153a81611525565b82525050565b60006020820190506115556000830184611531565b92915050565b611564816113c6565b811461156f57600080fd5b50565b6000813590506115818161155b565b92915050565b6000806000604084860312156115a05761159f6110d2565b5b60006115ae86828701611572565b935050602084013567ffffffffffffffff8111156115cf576115ce6110d7565b5b6115db8682870161141b565b92509250509250925092565b60006040820190506115fc60008301856113d0565b61160960208301846113d0565b9392505050565b600082825260208201905092915050565b7f57686974656c69737441646d696e526f6c653a2063616c6c657220646f65732060008201527f6e6f742068617665207468652057686974656c69737441646d696e20726f6c65602082015250565b600061167d604083611610565b915061168882611621565b604082019050919050565b600060208201905081810360008301526116ac81611670565b9050919050565b60006060820190506116c8600083018661117a565b6116d5602083018561117a565b6116e2604083018461117a565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611724826113c6565b915061172f836113c6565b925082821015611742576117416116ea565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000611787826113c6565b9150611792836113c6565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156117c7576117c66116ea565b5b828201905092915050565b6000815190506117e18161155b565b92915050565b6000602082840312156117fd576117fc6110d2565b5b600061180b848285016117d2565b91505092915050565b6000819050919050565b61182781611814565b811461183257600080fd5b50565b6000815190506118448161181e565b92915050565b6000602082840312156118605761185f6110d2565b5b600061186e84828501611835565b91505092915050565b600060ff82169050919050565b61188d81611877565b811461189857600080fd5b50565b6000815190506118aa81611884565b92915050565b6000602082840312156118c6576118c56110d2565b5b60006118d48482850161189b565b91505092915050565b60008160011c9050919050565b6000808291508390505b6001851115611934578086048111156119105761190f6116ea565b5b600185161561191f5780820291505b808102905061192d856118dd565b94506118f4565b94509492505050565b60008261194d5760019050611a09565b8161195b5760009050611a09565b8160018114611971576002811461197b576119aa565b6001915050611a09565b60ff84111561198d5761198c6116ea565b5b8360020a9150848211156119a4576119a36116ea565b5b50611a09565b5060208310610133831016604e8410600b84101617156119df5782820a9050838111156119da576119d96116ea565b5b611a09565b6119ec84848460016118ea565b92509050818404811115611a0357611a026116ea565b5b81810290505b9392505050565b6000611a1b826113c6565b9150611a26836113c6565b9250611a537fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461193d565b905092915050565b6000611a66826113c6565b9150611a71836113c6565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611aaa57611aa96116ea565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611aef826113c6565b9150611afa836113c6565b925082611b0a57611b09611ab5565b5b828204905092915050565b6000611b20826113c6565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415611b5357611b526116ea565b5b600182019050919050565b7f617272617973206d7573742068617665207468652073616d65206c656e677468600082015250565b6000611b94602083611610565b9150611b9f82611b5e565b602082019050919050565b60006020820190508181036000830152611bc381611b87565b9050919050565b7f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500600082015250565b6000611c00601f83611610565b9150611c0b82611bca565b602082019050919050565b60006020820190508181036000830152611c2f81611bf3565b9050919050565b7f4e6f2061676772656761746f7220666f756e6400000000000000000000000000600082015250565b6000611c6c601383611610565b9150611c7782611c36565b602082019050919050565b60006020820190508181036000830152611c9b81611c5f565b9050919050565b7f526f6c65733a206163636f756e7420697320746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611cfe602283611610565b9150611d0982611ca2565b604082019050919050565b60006020820190508181036000830152611d2d81611cf1565b9050919050565b7f526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c60008201527f6500000000000000000000000000000000000000000000000000000000000000602082015250565b6000611d90602183611610565b9150611d9b82611d34565b604082019050919050565b60006020820190508181036000830152611dbf81611d83565b905091905056fea2646970667358221220a8ba5a5da9875306267caf4df617f778fbf16f0bed6cc93465e82df75e212f6a64736f6c63430008090033";
14
+ static readonly bytecode = "0x60806040523480156200001157600080fd5b5060405162002249380380620022498339818101604052810190620000379190620002f0565b620000576200004b6200009f60201b60201c565b620000a760201b60201c565b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506200043d565b600033905090565b620000c28160006200010860201b62000ace1790919060201c565b8073ffffffffffffffffffffffffffffffffffffffff167f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129960405160405180910390a250565b6200011a8282620001bb60201b60201c565b156200015d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620001549062000383565b60405180910390fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156200022f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000226906200041b565b60405180910390fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620002b8826200028b565b9050919050565b620002ca81620002ab565b8114620002d657600080fd5b50565b600081519050620002ea81620002bf565b92915050565b60006020828403121562000309576200030862000286565b5b60006200031984828501620002d9565b91505092915050565b600082825260208201905092915050565b7f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500600082015250565b60006200036b601f8362000322565b9150620003788262000333565b602082019050919050565b600060208201905081810360008301526200039e816200035c565b9050919050565b7f526f6c65733a206163636f756e7420697320746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006200040360228362000322565b91506200041082620003a5565b604082019050919050565b600060208201905081810360008301526200043681620003f4565b9050919050565b611dfc806200044d6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c806397edd4fa1161006657806397edd4fa1461010a578063a3d7afa31461013c578063bb5f747b14610158578063d515bb0314610188578063fbd4122a146101a657610093565b806308d5bc58146100985780634b6c8879146100c85780634c5a628c146100e45780637362d9c8146100ee575b600080fd5b6100b260048036038101906100ad919061113a565b6101d7565b6040516100bf9190611189565b60405180910390f35b6100e260048036038101906100dd91906111a4565b610219565b005b6100ec610363565b005b610108600480360381019061010391906111f7565b610375565b005b610124600480360381019061011f919061137d565b6103d0565b604051610133939291906113df565b60405180910390f35b61015660048036038101906101519190611471565b610723565b005b610172600480360381019061016d91906111f7565b610a0c565b60405161017f9190611540565b60405180910390f35b610190610a29565b60405161019d9190611189565b60405180910390f35b6101c060048036038101906101bb9190611587565b610a4f565b6040516101ce9291906115e7565b60405180910390f35b60026020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610229610224610b76565b610a0c565b610268576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161025f90611693565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f589e912830d38d62f14a6cf3cea8f8a002fc9288b37f0d914b5e7dc107d278bf838383604051610356939291906116b3565b60405180910390a1505050565b61037361036e610b76565b610b7e565b565b610385610380610b76565b610a0c565b6103c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103bb90611693565b60405180910390fd5b6103cd81610bd8565b50565b6000806000670de0b6b3a76400009250670de0b6b3a7640000905042915060005b600185516103ff9190611719565b81101561071b576000806000806104568986815181106104225761042161174d565b5b60200260200101518a600188610438919061177c565b815181106104495761044861174d565b5b6020026020010151610c32565b935093509350935060008473ffffffffffffffffffffffffffffffffffffffff16638205bf6a6040518163ffffffff1660e01b815260040160206040518083038186803b1580156104a657600080fd5b505afa1580156104ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104de91906117e7565b9050878110156104ec578097505b60008573ffffffffffffffffffffffffffffffffffffffff166350d25bcd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561053457600080fd5b505afa158015610548573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056c919061184a565b905060008673ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b1580156105b657600080fd5b505afa1580156105ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ee91906118b0565b60ff169050848111156106215784816106079190611719565b600a6106139190611a10565b8b61061e9190611a5b565b9a505b8381101561064f5780846106359190611719565b600a6106419190611a10565b8b61064c9190611a5b565b9a505b851561067f578181600a6106639190611a10565b8c61066e9190611a5b565b6106789190611ae4565b9a506106a5565b80600a61068c9190611a10565b828c6106989190611a5b565b6106a29190611ae4565b9a505b848110156106d35780856106b99190611719565b600a6106c59190611a10565b8b6106d09190611ae4565b9a505b838111156107015783816106e79190611719565b600a6106f39190611a10565b8b6106fe9190611ae4565b9a505b50505050505050808061071390611b15565b9150506103f1565b509193909250565b61073361072e610b76565b610a0c565b610772576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161076990611693565b60405180910390fd5b8383905086869050146107ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b190611baa565b60405180910390fd5b818190508686905014610802576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107f990611baa565b60405180910390fd5b60005b86869050811015610a03578282828181106108235761082261174d565b5b905060200201602081019061083891906111f7565b6002600089898581811061084f5761084e61174d565b5b905060200201602081019061086491906111f7565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008787858181106108b3576108b261174d565b5b90506020020160208101906108c891906111f7565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f589e912830d38d62f14a6cf3cea8f8a002fc9288b37f0d914b5e7dc107d278bf8787838181106109745761097361174d565b5b905060200201602081019061098991906111f7565b86868481811061099c5761099b61174d565b5b90506020020160208101906109b191906111f7565b8585858181106109c4576109c361174d565b5b90506020020160208101906109d991906111f7565b6040516109e8939291906116b3565b60405180910390a180806109fb90611b15565b915050610805565b50505050505050565b6000610a22826000610e4390919063ffffffff16565b9050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000806000610aa1878780806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050506103d0565b925092509250808389610ab49190611a5b565b610abe9190611ae4565b9450819350505050935093915050565b610ad88282610e43565b15610b18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0f90611c16565b60405180910390fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600033905090565b610b92816000610f0b90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16560405160405180910390a250565b610bec816000610ace90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129960405160405180910390a250565b600080600080600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16935060009250600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610db457600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169350600192505b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610e24576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e1b90611c82565b60405180910390fd5b610e2d86610fb2565b9150610e3885610fb2565b905092959194509250565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610eb4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eab90611d14565b60405180910390fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b610f158282610e43565b610f54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f4b90611da6565b60405180910390fd5b60008260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600060089050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561101757601290506110aa565b611020826110af565b156110a9578173ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561106b57600080fd5b505afa15801561107f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a391906118b0565b60ff1690505b5b919050565b600080823b905060008163ffffffff1611915050919050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611107826110dc565b9050919050565b611117816110fc565b811461112257600080fd5b50565b6000813590506111348161110e565b92915050565b60008060408385031215611151576111506110d2565b5b600061115f85828601611125565b925050602061117085828601611125565b9150509250929050565b611183816110fc565b82525050565b600060208201905061119e600083018461117a565b92915050565b6000806000606084860312156111bd576111bc6110d2565b5b60006111cb86828701611125565b93505060206111dc86828701611125565b92505060406111ed86828701611125565b9150509250925092565b60006020828403121561120d5761120c6110d2565b5b600061121b84828501611125565b91505092915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61127282611229565b810181811067ffffffffffffffff821117156112915761129061123a565b5b80604052505050565b60006112a46110c8565b90506112b08282611269565b919050565b600067ffffffffffffffff8211156112d0576112cf61123a565b5b602082029050602081019050919050565b600080fd5b60006112f96112f4846112b5565b61129a565b9050808382526020820190506020840283018581111561131c5761131b6112e1565b5b835b8181101561134557806113318882611125565b84526020840193505060208101905061131e565b5050509392505050565b600082601f83011261136457611363611224565b5b81356113748482602086016112e6565b91505092915050565b600060208284031215611393576113926110d2565b5b600082013567ffffffffffffffff8111156113b1576113b06110d7565b5b6113bd8482850161134f565b91505092915050565b6000819050919050565b6113d9816113c6565b82525050565b60006060820190506113f460008301866113d0565b61140160208301856113d0565b61140e60408301846113d0565b949350505050565b600080fd5b60008083601f84011261143157611430611224565b5b8235905067ffffffffffffffff81111561144e5761144d611416565b5b60208301915083602082028301111561146a576114696112e1565b5b9250929050565b6000806000806000806060878903121561148e5761148d6110d2565b5b600087013567ffffffffffffffff8111156114ac576114ab6110d7565b5b6114b889828a0161141b565b9650965050602087013567ffffffffffffffff8111156114db576114da6110d7565b5b6114e789828a0161141b565b9450945050604087013567ffffffffffffffff81111561150a576115096110d7565b5b61151689828a0161141b565b92509250509295509295509295565b60008115159050919050565b61153a81611525565b82525050565b60006020820190506115556000830184611531565b92915050565b611564816113c6565b811461156f57600080fd5b50565b6000813590506115818161155b565b92915050565b6000806000604084860312156115a05761159f6110d2565b5b60006115ae86828701611572565b935050602084013567ffffffffffffffff8111156115cf576115ce6110d7565b5b6115db8682870161141b565b92509250509250925092565b60006040820190506115fc60008301856113d0565b61160960208301846113d0565b9392505050565b600082825260208201905092915050565b7f57686974656c69737441646d696e526f6c653a2063616c6c657220646f65732060008201527f6e6f742068617665207468652057686974656c69737441646d696e20726f6c65602082015250565b600061167d604083611610565b915061168882611621565b604082019050919050565b600060208201905081810360008301526116ac81611670565b9050919050565b60006060820190506116c8600083018661117a565b6116d5602083018561117a565b6116e2604083018461117a565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611724826113c6565b915061172f836113c6565b925082821015611742576117416116ea565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000611787826113c6565b9150611792836113c6565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156117c7576117c66116ea565b5b828201905092915050565b6000815190506117e18161155b565b92915050565b6000602082840312156117fd576117fc6110d2565b5b600061180b848285016117d2565b91505092915050565b6000819050919050565b61182781611814565b811461183257600080fd5b50565b6000815190506118448161181e565b92915050565b6000602082840312156118605761185f6110d2565b5b600061186e84828501611835565b91505092915050565b600060ff82169050919050565b61188d81611877565b811461189857600080fd5b50565b6000815190506118aa81611884565b92915050565b6000602082840312156118c6576118c56110d2565b5b60006118d48482850161189b565b91505092915050565b60008160011c9050919050565b6000808291508390505b6001851115611934578086048111156119105761190f6116ea565b5b600185161561191f5780820291505b808102905061192d856118dd565b94506118f4565b94509492505050565b60008261194d5760019050611a09565b8161195b5760009050611a09565b8160018114611971576002811461197b576119aa565b6001915050611a09565b60ff84111561198d5761198c6116ea565b5b8360020a9150848211156119a4576119a36116ea565b5b50611a09565b5060208310610133831016604e8410600b84101617156119df5782820a9050838111156119da576119d96116ea565b5b611a09565b6119ec84848460016118ea565b92509050818404811115611a0357611a026116ea565b5b81810290505b9392505050565b6000611a1b826113c6565b9150611a26836113c6565b9250611a537fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461193d565b905092915050565b6000611a66826113c6565b9150611a71836113c6565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611aaa57611aa96116ea565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611aef826113c6565b9150611afa836113c6565b925082611b0a57611b09611ab5565b5b828204905092915050565b6000611b20826113c6565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415611b5357611b526116ea565b5b600182019050919050565b7f617272617973206d7573742068617665207468652073616d65206c656e677468600082015250565b6000611b94602083611610565b9150611b9f82611b5e565b602082019050919050565b60006020820190508181036000830152611bc381611b87565b9050919050565b7f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500600082015250565b6000611c00601f83611610565b9150611c0b82611bca565b602082019050919050565b60006020820190508181036000830152611c2f81611bf3565b9050919050565b7f4e6f2061676772656761746f7220666f756e6400000000000000000000000000600082015250565b6000611c6c601383611610565b9150611c7782611c36565b602082019050919050565b60006020820190508181036000830152611c9b81611c5f565b9050919050565b7f526f6c65733a206163636f756e7420697320746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611cfe602283611610565b9150611d0982611ca2565b604082019050919050565b60006020820190508181036000830152611d2d81611cf1565b9050919050565b7f526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c60008201527f6500000000000000000000000000000000000000000000000000000000000000602082015250565b6000611d90602183611610565b9150611d9b82611d34565b604082019050919050565b60006020820190508181036000830152611dbf81611d83565b905091905056fea26469706673582212200101fcd30f1a7439cac7c137f33ea9e5628909fed79c292b14572dc35e9e146564736f6c63430008090033";
15
15
  static readonly abi: ({
16
16
  inputs: {
17
17
  internalType: string;
@@ -249,7 +249,7 @@ const _abi = [
249
249
  type: "function",
250
250
  },
251
251
  ];
252
- const _bytecode = "0x60806040523480156200001157600080fd5b5060405162002249380380620022498339818101604052810190620000379190620002f0565b620000576200004b6200009f60201b60201c565b620000a760201b60201c565b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506200043d565b600033905090565b620000c28160006200010860201b62000ace1790919060201c565b8073ffffffffffffffffffffffffffffffffffffffff167f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129960405160405180910390a250565b6200011a8282620001bb60201b60201c565b156200015d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620001549062000383565b60405180910390fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156200022f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000226906200041b565b60405180910390fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620002b8826200028b565b9050919050565b620002ca81620002ab565b8114620002d657600080fd5b50565b600081519050620002ea81620002bf565b92915050565b60006020828403121562000309576200030862000286565b5b60006200031984828501620002d9565b91505092915050565b600082825260208201905092915050565b7f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500600082015250565b60006200036b601f8362000322565b9150620003788262000333565b602082019050919050565b600060208201905081810360008301526200039e816200035c565b9050919050565b7f526f6c65733a206163636f756e7420697320746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006200040360228362000322565b91506200041082620003a5565b604082019050919050565b600060208201905081810360008301526200043681620003f4565b9050919050565b611dfc806200044d6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c806397edd4fa1161006657806397edd4fa1461010a578063a3d7afa31461013c578063bb5f747b14610158578063d515bb0314610188578063fbd4122a146101a657610093565b806308d5bc58146100985780634b6c8879146100c85780634c5a628c146100e45780637362d9c8146100ee575b600080fd5b6100b260048036038101906100ad919061113a565b6101d7565b6040516100bf9190611189565b60405180910390f35b6100e260048036038101906100dd91906111a4565b610219565b005b6100ec610363565b005b610108600480360381019061010391906111f7565b610375565b005b610124600480360381019061011f919061137d565b6103d0565b604051610133939291906113df565b60405180910390f35b61015660048036038101906101519190611471565b610723565b005b610172600480360381019061016d91906111f7565b610a0c565b60405161017f9190611540565b60405180910390f35b610190610a29565b60405161019d9190611189565b60405180910390f35b6101c060048036038101906101bb9190611587565b610a4f565b6040516101ce9291906115e7565b60405180910390f35b60026020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610229610224610b76565b610a0c565b610268576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161025f90611693565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f589e912830d38d62f14a6cf3cea8f8a002fc9288b37f0d914b5e7dc107d278bf838383604051610356939291906116b3565b60405180910390a1505050565b61037361036e610b76565b610b7e565b565b610385610380610b76565b610a0c565b6103c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103bb90611693565b60405180910390fd5b6103cd81610bd8565b50565b6000806000670de0b6b3a76400009250670de0b6b3a7640000905042915060005b600185516103ff9190611719565b81101561071b576000806000806104568986815181106104225761042161174d565b5b60200260200101518a600188610438919061177c565b815181106104495761044861174d565b5b6020026020010151610c32565b935093509350935060008473ffffffffffffffffffffffffffffffffffffffff16638205bf6a6040518163ffffffff1660e01b815260040160206040518083038186803b1580156104a657600080fd5b505afa1580156104ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104de91906117e7565b9050878110156104ec578097505b60008573ffffffffffffffffffffffffffffffffffffffff166350d25bcd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561053457600080fd5b505afa158015610548573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056c919061184a565b905060008673ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b1580156105b657600080fd5b505afa1580156105ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ee91906118b0565b60ff169050848111156106215784816106079190611719565b600a6106139190611a10565b8b61061e9190611a5b565b9a505b8381101561064f5780846106359190611719565b600a6106419190611a10565b8b61064c9190611a5b565b9a505b851561067f578181600a6106639190611a10565b8c61066e9190611a5b565b6106789190611ae4565b9a506106a5565b80600a61068c9190611a10565b828c6106989190611a5b565b6106a29190611ae4565b9a505b848110156106d35780856106b99190611719565b600a6106c59190611a10565b8b6106d09190611ae4565b9a505b838111156107015783816106e79190611719565b600a6106f39190611a10565b8b6106fe9190611ae4565b9a505b50505050505050808061071390611b15565b9150506103f1565b509193909250565b61073361072e610b76565b610a0c565b610772576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161076990611693565b60405180910390fd5b8383905086869050146107ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b190611baa565b60405180910390fd5b818190508686905014610802576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107f990611baa565b60405180910390fd5b60005b86869050811015610a03578282828181106108235761082261174d565b5b905060200201602081019061083891906111f7565b6002600089898581811061084f5761084e61174d565b5b905060200201602081019061086491906111f7565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008787858181106108b3576108b261174d565b5b90506020020160208101906108c891906111f7565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f589e912830d38d62f14a6cf3cea8f8a002fc9288b37f0d914b5e7dc107d278bf8787838181106109745761097361174d565b5b905060200201602081019061098991906111f7565b86868481811061099c5761099b61174d565b5b90506020020160208101906109b191906111f7565b8585858181106109c4576109c361174d565b5b90506020020160208101906109d991906111f7565b6040516109e8939291906116b3565b60405180910390a180806109fb90611b15565b915050610805565b50505050505050565b6000610a22826000610e4390919063ffffffff16565b9050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000806000610aa1878780806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050506103d0565b925092509250808389610ab49190611a5b565b610abe9190611ae4565b9450819350505050935093915050565b610ad88282610e43565b15610b18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0f90611c16565b60405180910390fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600033905090565b610b92816000610f0b90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16560405160405180910390a250565b610bec816000610ace90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129960405160405180910390a250565b600080600080600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16935060009250600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610db457600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169350600192505b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610e24576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e1b90611c82565b60405180910390fd5b610e2d86610fb2565b9150610e3885610fb2565b905092959194509250565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610eb4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eab90611d14565b60405180910390fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b610f158282610e43565b610f54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f4b90611da6565b60405180910390fd5b60008260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600060089050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561101757601290506110aa565b611020826110af565b156110a9578173ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561106b57600080fd5b505afa15801561107f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a391906118b0565b60ff1690505b5b919050565b600080823b905060008163ffffffff1611915050919050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611107826110dc565b9050919050565b611117816110fc565b811461112257600080fd5b50565b6000813590506111348161110e565b92915050565b60008060408385031215611151576111506110d2565b5b600061115f85828601611125565b925050602061117085828601611125565b9150509250929050565b611183816110fc565b82525050565b600060208201905061119e600083018461117a565b92915050565b6000806000606084860312156111bd576111bc6110d2565b5b60006111cb86828701611125565b93505060206111dc86828701611125565b92505060406111ed86828701611125565b9150509250925092565b60006020828403121561120d5761120c6110d2565b5b600061121b84828501611125565b91505092915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61127282611229565b810181811067ffffffffffffffff821117156112915761129061123a565b5b80604052505050565b60006112a46110c8565b90506112b08282611269565b919050565b600067ffffffffffffffff8211156112d0576112cf61123a565b5b602082029050602081019050919050565b600080fd5b60006112f96112f4846112b5565b61129a565b9050808382526020820190506020840283018581111561131c5761131b6112e1565b5b835b8181101561134557806113318882611125565b84526020840193505060208101905061131e565b5050509392505050565b600082601f83011261136457611363611224565b5b81356113748482602086016112e6565b91505092915050565b600060208284031215611393576113926110d2565b5b600082013567ffffffffffffffff8111156113b1576113b06110d7565b5b6113bd8482850161134f565b91505092915050565b6000819050919050565b6113d9816113c6565b82525050565b60006060820190506113f460008301866113d0565b61140160208301856113d0565b61140e60408301846113d0565b949350505050565b600080fd5b60008083601f84011261143157611430611224565b5b8235905067ffffffffffffffff81111561144e5761144d611416565b5b60208301915083602082028301111561146a576114696112e1565b5b9250929050565b6000806000806000806060878903121561148e5761148d6110d2565b5b600087013567ffffffffffffffff8111156114ac576114ab6110d7565b5b6114b889828a0161141b565b9650965050602087013567ffffffffffffffff8111156114db576114da6110d7565b5b6114e789828a0161141b565b9450945050604087013567ffffffffffffffff81111561150a576115096110d7565b5b61151689828a0161141b565b92509250509295509295509295565b60008115159050919050565b61153a81611525565b82525050565b60006020820190506115556000830184611531565b92915050565b611564816113c6565b811461156f57600080fd5b50565b6000813590506115818161155b565b92915050565b6000806000604084860312156115a05761159f6110d2565b5b60006115ae86828701611572565b935050602084013567ffffffffffffffff8111156115cf576115ce6110d7565b5b6115db8682870161141b565b92509250509250925092565b60006040820190506115fc60008301856113d0565b61160960208301846113d0565b9392505050565b600082825260208201905092915050565b7f57686974656c69737441646d696e526f6c653a2063616c6c657220646f65732060008201527f6e6f742068617665207468652057686974656c69737441646d696e20726f6c65602082015250565b600061167d604083611610565b915061168882611621565b604082019050919050565b600060208201905081810360008301526116ac81611670565b9050919050565b60006060820190506116c8600083018661117a565b6116d5602083018561117a565b6116e2604083018461117a565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611724826113c6565b915061172f836113c6565b925082821015611742576117416116ea565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000611787826113c6565b9150611792836113c6565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156117c7576117c66116ea565b5b828201905092915050565b6000815190506117e18161155b565b92915050565b6000602082840312156117fd576117fc6110d2565b5b600061180b848285016117d2565b91505092915050565b6000819050919050565b61182781611814565b811461183257600080fd5b50565b6000815190506118448161181e565b92915050565b6000602082840312156118605761185f6110d2565b5b600061186e84828501611835565b91505092915050565b600060ff82169050919050565b61188d81611877565b811461189857600080fd5b50565b6000815190506118aa81611884565b92915050565b6000602082840312156118c6576118c56110d2565b5b60006118d48482850161189b565b91505092915050565b60008160011c9050919050565b6000808291508390505b6001851115611934578086048111156119105761190f6116ea565b5b600185161561191f5780820291505b808102905061192d856118dd565b94506118f4565b94509492505050565b60008261194d5760019050611a09565b8161195b5760009050611a09565b8160018114611971576002811461197b576119aa565b6001915050611a09565b60ff84111561198d5761198c6116ea565b5b8360020a9150848211156119a4576119a36116ea565b5b50611a09565b5060208310610133831016604e8410600b84101617156119df5782820a9050838111156119da576119d96116ea565b5b611a09565b6119ec84848460016118ea565b92509050818404811115611a0357611a026116ea565b5b81810290505b9392505050565b6000611a1b826113c6565b9150611a26836113c6565b9250611a537fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461193d565b905092915050565b6000611a66826113c6565b9150611a71836113c6565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611aaa57611aa96116ea565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611aef826113c6565b9150611afa836113c6565b925082611b0a57611b09611ab5565b5b828204905092915050565b6000611b20826113c6565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415611b5357611b526116ea565b5b600182019050919050565b7f617272617973206d7573742068617665207468652073616d65206c656e677468600082015250565b6000611b94602083611610565b9150611b9f82611b5e565b602082019050919050565b60006020820190508181036000830152611bc381611b87565b9050919050565b7f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500600082015250565b6000611c00601f83611610565b9150611c0b82611bca565b602082019050919050565b60006020820190508181036000830152611c2f81611bf3565b9050919050565b7f4e6f2061676772656761746f7220666f756e6400000000000000000000000000600082015250565b6000611c6c601383611610565b9150611c7782611c36565b602082019050919050565b60006020820190508181036000830152611c9b81611c5f565b9050919050565b7f526f6c65733a206163636f756e7420697320746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611cfe602283611610565b9150611d0982611ca2565b604082019050919050565b60006020820190508181036000830152611d2d81611cf1565b9050919050565b7f526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c60008201527f6500000000000000000000000000000000000000000000000000000000000000602082015250565b6000611d90602183611610565b9150611d9b82611d34565b604082019050919050565b60006020820190508181036000830152611dbf81611d83565b905091905056fea2646970667358221220a8ba5a5da9875306267caf4df617f778fbf16f0bed6cc93465e82df75e212f6a64736f6c63430008090033";
252
+ const _bytecode = "0x60806040523480156200001157600080fd5b5060405162002249380380620022498339818101604052810190620000379190620002f0565b620000576200004b6200009f60201b60201c565b620000a760201b60201c565b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506200043d565b600033905090565b620000c28160006200010860201b62000ace1790919060201c565b8073ffffffffffffffffffffffffffffffffffffffff167f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129960405160405180910390a250565b6200011a8282620001bb60201b60201c565b156200015d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620001549062000383565b60405180910390fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156200022f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000226906200041b565b60405180910390fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620002b8826200028b565b9050919050565b620002ca81620002ab565b8114620002d657600080fd5b50565b600081519050620002ea81620002bf565b92915050565b60006020828403121562000309576200030862000286565b5b60006200031984828501620002d9565b91505092915050565b600082825260208201905092915050565b7f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500600082015250565b60006200036b601f8362000322565b9150620003788262000333565b602082019050919050565b600060208201905081810360008301526200039e816200035c565b9050919050565b7f526f6c65733a206163636f756e7420697320746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006200040360228362000322565b91506200041082620003a5565b604082019050919050565b600060208201905081810360008301526200043681620003f4565b9050919050565b611dfc806200044d6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c806397edd4fa1161006657806397edd4fa1461010a578063a3d7afa31461013c578063bb5f747b14610158578063d515bb0314610188578063fbd4122a146101a657610093565b806308d5bc58146100985780634b6c8879146100c85780634c5a628c146100e45780637362d9c8146100ee575b600080fd5b6100b260048036038101906100ad919061113a565b6101d7565b6040516100bf9190611189565b60405180910390f35b6100e260048036038101906100dd91906111a4565b610219565b005b6100ec610363565b005b610108600480360381019061010391906111f7565b610375565b005b610124600480360381019061011f919061137d565b6103d0565b604051610133939291906113df565b60405180910390f35b61015660048036038101906101519190611471565b610723565b005b610172600480360381019061016d91906111f7565b610a0c565b60405161017f9190611540565b60405180910390f35b610190610a29565b60405161019d9190611189565b60405180910390f35b6101c060048036038101906101bb9190611587565b610a4f565b6040516101ce9291906115e7565b60405180910390f35b60026020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610229610224610b76565b610a0c565b610268576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161025f90611693565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f589e912830d38d62f14a6cf3cea8f8a002fc9288b37f0d914b5e7dc107d278bf838383604051610356939291906116b3565b60405180910390a1505050565b61037361036e610b76565b610b7e565b565b610385610380610b76565b610a0c565b6103c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103bb90611693565b60405180910390fd5b6103cd81610bd8565b50565b6000806000670de0b6b3a76400009250670de0b6b3a7640000905042915060005b600185516103ff9190611719565b81101561071b576000806000806104568986815181106104225761042161174d565b5b60200260200101518a600188610438919061177c565b815181106104495761044861174d565b5b6020026020010151610c32565b935093509350935060008473ffffffffffffffffffffffffffffffffffffffff16638205bf6a6040518163ffffffff1660e01b815260040160206040518083038186803b1580156104a657600080fd5b505afa1580156104ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104de91906117e7565b9050878110156104ec578097505b60008573ffffffffffffffffffffffffffffffffffffffff166350d25bcd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561053457600080fd5b505afa158015610548573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056c919061184a565b905060008673ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b1580156105b657600080fd5b505afa1580156105ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ee91906118b0565b60ff169050848111156106215784816106079190611719565b600a6106139190611a10565b8b61061e9190611a5b565b9a505b8381101561064f5780846106359190611719565b600a6106419190611a10565b8b61064c9190611a5b565b9a505b851561067f578181600a6106639190611a10565b8c61066e9190611a5b565b6106789190611ae4565b9a506106a5565b80600a61068c9190611a10565b828c6106989190611a5b565b6106a29190611ae4565b9a505b848110156106d35780856106b99190611719565b600a6106c59190611a10565b8b6106d09190611ae4565b9a505b838111156107015783816106e79190611719565b600a6106f39190611a10565b8b6106fe9190611ae4565b9a505b50505050505050808061071390611b15565b9150506103f1565b509193909250565b61073361072e610b76565b610a0c565b610772576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161076990611693565b60405180910390fd5b8383905086869050146107ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b190611baa565b60405180910390fd5b818190508686905014610802576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107f990611baa565b60405180910390fd5b60005b86869050811015610a03578282828181106108235761082261174d565b5b905060200201602081019061083891906111f7565b6002600089898581811061084f5761084e61174d565b5b905060200201602081019061086491906111f7565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008787858181106108b3576108b261174d565b5b90506020020160208101906108c891906111f7565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f589e912830d38d62f14a6cf3cea8f8a002fc9288b37f0d914b5e7dc107d278bf8787838181106109745761097361174d565b5b905060200201602081019061098991906111f7565b86868481811061099c5761099b61174d565b5b90506020020160208101906109b191906111f7565b8585858181106109c4576109c361174d565b5b90506020020160208101906109d991906111f7565b6040516109e8939291906116b3565b60405180910390a180806109fb90611b15565b915050610805565b50505050505050565b6000610a22826000610e4390919063ffffffff16565b9050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000806000610aa1878780806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050506103d0565b925092509250808389610ab49190611a5b565b610abe9190611ae4565b9450819350505050935093915050565b610ad88282610e43565b15610b18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0f90611c16565b60405180910390fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600033905090565b610b92816000610f0b90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16560405160405180910390a250565b610bec816000610ace90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129960405160405180910390a250565b600080600080600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16935060009250600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610db457600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169350600192505b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610e24576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e1b90611c82565b60405180910390fd5b610e2d86610fb2565b9150610e3885610fb2565b905092959194509250565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610eb4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eab90611d14565b60405180910390fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b610f158282610e43565b610f54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f4b90611da6565b60405180910390fd5b60008260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600060089050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561101757601290506110aa565b611020826110af565b156110a9578173ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561106b57600080fd5b505afa15801561107f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a391906118b0565b60ff1690505b5b919050565b600080823b905060008163ffffffff1611915050919050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611107826110dc565b9050919050565b611117816110fc565b811461112257600080fd5b50565b6000813590506111348161110e565b92915050565b60008060408385031215611151576111506110d2565b5b600061115f85828601611125565b925050602061117085828601611125565b9150509250929050565b611183816110fc565b82525050565b600060208201905061119e600083018461117a565b92915050565b6000806000606084860312156111bd576111bc6110d2565b5b60006111cb86828701611125565b93505060206111dc86828701611125565b92505060406111ed86828701611125565b9150509250925092565b60006020828403121561120d5761120c6110d2565b5b600061121b84828501611125565b91505092915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61127282611229565b810181811067ffffffffffffffff821117156112915761129061123a565b5b80604052505050565b60006112a46110c8565b90506112b08282611269565b919050565b600067ffffffffffffffff8211156112d0576112cf61123a565b5b602082029050602081019050919050565b600080fd5b60006112f96112f4846112b5565b61129a565b9050808382526020820190506020840283018581111561131c5761131b6112e1565b5b835b8181101561134557806113318882611125565b84526020840193505060208101905061131e565b5050509392505050565b600082601f83011261136457611363611224565b5b81356113748482602086016112e6565b91505092915050565b600060208284031215611393576113926110d2565b5b600082013567ffffffffffffffff8111156113b1576113b06110d7565b5b6113bd8482850161134f565b91505092915050565b6000819050919050565b6113d9816113c6565b82525050565b60006060820190506113f460008301866113d0565b61140160208301856113d0565b61140e60408301846113d0565b949350505050565b600080fd5b60008083601f84011261143157611430611224565b5b8235905067ffffffffffffffff81111561144e5761144d611416565b5b60208301915083602082028301111561146a576114696112e1565b5b9250929050565b6000806000806000806060878903121561148e5761148d6110d2565b5b600087013567ffffffffffffffff8111156114ac576114ab6110d7565b5b6114b889828a0161141b565b9650965050602087013567ffffffffffffffff8111156114db576114da6110d7565b5b6114e789828a0161141b565b9450945050604087013567ffffffffffffffff81111561150a576115096110d7565b5b61151689828a0161141b565b92509250509295509295509295565b60008115159050919050565b61153a81611525565b82525050565b60006020820190506115556000830184611531565b92915050565b611564816113c6565b811461156f57600080fd5b50565b6000813590506115818161155b565b92915050565b6000806000604084860312156115a05761159f6110d2565b5b60006115ae86828701611572565b935050602084013567ffffffffffffffff8111156115cf576115ce6110d7565b5b6115db8682870161141b565b92509250509250925092565b60006040820190506115fc60008301856113d0565b61160960208301846113d0565b9392505050565b600082825260208201905092915050565b7f57686974656c69737441646d696e526f6c653a2063616c6c657220646f65732060008201527f6e6f742068617665207468652057686974656c69737441646d696e20726f6c65602082015250565b600061167d604083611610565b915061168882611621565b604082019050919050565b600060208201905081810360008301526116ac81611670565b9050919050565b60006060820190506116c8600083018661117a565b6116d5602083018561117a565b6116e2604083018461117a565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611724826113c6565b915061172f836113c6565b925082821015611742576117416116ea565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000611787826113c6565b9150611792836113c6565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156117c7576117c66116ea565b5b828201905092915050565b6000815190506117e18161155b565b92915050565b6000602082840312156117fd576117fc6110d2565b5b600061180b848285016117d2565b91505092915050565b6000819050919050565b61182781611814565b811461183257600080fd5b50565b6000815190506118448161181e565b92915050565b6000602082840312156118605761185f6110d2565b5b600061186e84828501611835565b91505092915050565b600060ff82169050919050565b61188d81611877565b811461189857600080fd5b50565b6000815190506118aa81611884565b92915050565b6000602082840312156118c6576118c56110d2565b5b60006118d48482850161189b565b91505092915050565b60008160011c9050919050565b6000808291508390505b6001851115611934578086048111156119105761190f6116ea565b5b600185161561191f5780820291505b808102905061192d856118dd565b94506118f4565b94509492505050565b60008261194d5760019050611a09565b8161195b5760009050611a09565b8160018114611971576002811461197b576119aa565b6001915050611a09565b60ff84111561198d5761198c6116ea565b5b8360020a9150848211156119a4576119a36116ea565b5b50611a09565b5060208310610133831016604e8410600b84101617156119df5782820a9050838111156119da576119d96116ea565b5b611a09565b6119ec84848460016118ea565b92509050818404811115611a0357611a026116ea565b5b81810290505b9392505050565b6000611a1b826113c6565b9150611a26836113c6565b9250611a537fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461193d565b905092915050565b6000611a66826113c6565b9150611a71836113c6565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611aaa57611aa96116ea565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611aef826113c6565b9150611afa836113c6565b925082611b0a57611b09611ab5565b5b828204905092915050565b6000611b20826113c6565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415611b5357611b526116ea565b5b600182019050919050565b7f617272617973206d7573742068617665207468652073616d65206c656e677468600082015250565b6000611b94602083611610565b9150611b9f82611b5e565b602082019050919050565b60006020820190508181036000830152611bc381611b87565b9050919050565b7f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500600082015250565b6000611c00601f83611610565b9150611c0b82611bca565b602082019050919050565b60006020820190508181036000830152611c2f81611bf3565b9050919050565b7f4e6f2061676772656761746f7220666f756e6400000000000000000000000000600082015250565b6000611c6c601383611610565b9150611c7782611c36565b602082019050919050565b60006020820190508181036000830152611c9b81611c5f565b9050919050565b7f526f6c65733a206163636f756e7420697320746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611cfe602283611610565b9150611d0982611ca2565b604082019050919050565b60006020820190508181036000830152611d2d81611cf1565b9050919050565b7f526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c60008201527f6500000000000000000000000000000000000000000000000000000000000000602082015250565b6000611d90602183611610565b9150611d9b82611d34565b604082019050919050565b60006020820190508181036000830152611dbf81611d83565b905091905056fea26469706673582212200101fcd30f1a7439cac7c137f33ea9e5628909fed79c292b14572dc35e9e146564736f6c63430008090033";
253
253
  class ChainlinkConversionPath__factory extends ethers_1.ContractFactory {
254
254
  constructor(signer) {
255
255
  super(_abi, _bytecode, signer);
@@ -11,7 +11,7 @@ export declare class ERC20Alpha__factory extends ContractFactory {
11
11
  }): TransactionRequest;
12
12
  attach(address: string): ERC20Alpha;
13
13
  connect(signer: Signer): ERC20Alpha__factory;
14
- static readonly bytecode = "0x60806040523480156200001157600080fd5b50604051620018f1380380620018f1833981810160405281019062000037919062000363565b6040518060400160405280600c81526020017f416c7068612045524320323000000000000000000000000000000000000000008152506040518060400160405280600581526020017f414c5048410000000000000000000000000000000000000000000000000000008152508160039080519060200190620000bb92919062000273565b508060049080519060200190620000d492919062000273565b505050620000e93382620000f060201b60201c565b5062000537565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000163576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200015a90620003f6565b60405180910390fd5b62000177600083836200026960201b60201c565b80600260008282546200018b919062000447565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254620001e2919062000447565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620002499190620004b5565b60405180910390a362000265600083836200026e60201b60201c565b5050565b505050565b505050565b828054620002819062000501565b90600052602060002090601f016020900481019282620002a55760008555620002f1565b82601f10620002c057805160ff1916838001178555620002f1565b82800160010185558215620002f1579182015b82811115620002f0578251825591602001919060010190620002d3565b5b50905062000300919062000304565b5090565b5b808211156200031f57600081600090555060010162000305565b5090565b600080fd5b6000819050919050565b6200033d8162000328565b81146200034957600080fd5b50565b6000815190506200035d8162000332565b92915050565b6000602082840312156200037c576200037b62000323565b5b60006200038c848285016200034c565b91505092915050565b600082825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6000620003de601f8362000395565b9150620003eb82620003a6565b602082019050919050565b600060208201905081810360008301526200041181620003cf565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000620004548262000328565b9150620004618362000328565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562000499576200049862000418565b5b828201905092915050565b620004af8162000328565b82525050565b6000602082019050620004cc6000830184620004a4565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200051a57607f821691505b60208210811415620005315762000530620004d2565b5b50919050565b6113aa80620005476000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461016857806370a082311461019857806395d89b41146101c8578063a457c2d7146101e6578063a9059cbb14610216578063dd62ed3e14610246576100a9565b806306fdde03146100ae578063095ea7b3146100cc57806318160ddd146100fc57806323b872dd1461011a578063313ce5671461014a575b600080fd5b6100b6610276565b6040516100c39190610c3e565b60405180910390f35b6100e660048036038101906100e19190610cf9565b610308565b6040516100f39190610d54565b60405180910390f35b610104610326565b6040516101119190610d7e565b60405180910390f35b610134600480360381019061012f9190610d99565b610330565b6040516101419190610d54565b60405180910390f35b610152610428565b60405161015f9190610e08565b60405180910390f35b610182600480360381019061017d9190610cf9565b610431565b60405161018f9190610d54565b60405180910390f35b6101b260048036038101906101ad9190610e23565b6104dd565b6040516101bf9190610d7e565b60405180910390f35b6101d0610525565b6040516101dd9190610c3e565b60405180910390f35b61020060048036038101906101fb9190610cf9565b6105b7565b60405161020d9190610d54565b60405180910390f35b610230600480360381019061022b9190610cf9565b6106a2565b60405161023d9190610d54565b60405180910390f35b610260600480360381019061025b9190610e50565b6106c0565b60405161026d9190610d7e565b60405180910390f35b60606003805461028590610ebf565b80601f01602080910402602001604051908101604052809291908181526020018280546102b190610ebf565b80156102fe5780601f106102d3576101008083540402835291602001916102fe565b820191906000526020600020905b8154815290600101906020018083116102e157829003601f168201915b5050505050905090565b600061031c610315610747565b848461074f565b6001905092915050565b6000600254905090565b600061033d84848461091a565b6000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610388610747565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610408576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103ff90610f63565b60405180910390fd5b61041c85610414610747565b85840361074f565b60019150509392505050565b60006012905090565b60006104d361043e610747565b84846001600061044c610747565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546104ce9190610fb2565b61074f565b6001905092915050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60606004805461053490610ebf565b80601f016020809104026020016040519081016040528092919081815260200182805461056090610ebf565b80156105ad5780601f10610582576101008083540402835291602001916105ad565b820191906000526020600020905b81548152906001019060200180831161059057829003601f168201915b5050505050905090565b600080600160006105c6610747565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610683576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067a9061107a565b60405180910390fd5b61069761068e610747565b8585840361074f565b600191505092915050565b60006106b66106af610747565b848461091a565b6001905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156107bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b69061110c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561082f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108269061119e565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161090d9190610d7e565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561098a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161098190611230565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156109fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109f1906112c2565b60405180910390fd5b610a05838383610b9b565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610a8b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a8290611354565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610b1e9190610fb2565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610b829190610d7e565b60405180910390a3610b95848484610ba0565b50505050565b505050565b505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610bdf578082015181840152602081019050610bc4565b83811115610bee576000848401525b50505050565b6000601f19601f8301169050919050565b6000610c1082610ba5565b610c1a8185610bb0565b9350610c2a818560208601610bc1565b610c3381610bf4565b840191505092915050565b60006020820190508181036000830152610c588184610c05565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610c9082610c65565b9050919050565b610ca081610c85565b8114610cab57600080fd5b50565b600081359050610cbd81610c97565b92915050565b6000819050919050565b610cd681610cc3565b8114610ce157600080fd5b50565b600081359050610cf381610ccd565b92915050565b60008060408385031215610d1057610d0f610c60565b5b6000610d1e85828601610cae565b9250506020610d2f85828601610ce4565b9150509250929050565b60008115159050919050565b610d4e81610d39565b82525050565b6000602082019050610d696000830184610d45565b92915050565b610d7881610cc3565b82525050565b6000602082019050610d936000830184610d6f565b92915050565b600080600060608486031215610db257610db1610c60565b5b6000610dc086828701610cae565b9350506020610dd186828701610cae565b9250506040610de286828701610ce4565b9150509250925092565b600060ff82169050919050565b610e0281610dec565b82525050565b6000602082019050610e1d6000830184610df9565b92915050565b600060208284031215610e3957610e38610c60565b5b6000610e4784828501610cae565b91505092915050565b60008060408385031215610e6757610e66610c60565b5b6000610e7585828601610cae565b9250506020610e8685828601610cae565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680610ed757607f821691505b60208210811415610eeb57610eea610e90565b5b50919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b6000610f4d602883610bb0565b9150610f5882610ef1565b604082019050919050565b60006020820190508181036000830152610f7c81610f40565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000610fbd82610cc3565b9150610fc883610cc3565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115610ffd57610ffc610f83565b5b828201905092915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000611064602583610bb0565b915061106f82611008565b604082019050919050565b6000602082019050818103600083015261109381611057565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006110f6602483610bb0565b91506111018261109a565b604082019050919050565b60006020820190508181036000830152611125816110e9565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611188602283610bb0565b91506111938261112c565b604082019050919050565b600060208201905081810360008301526111b78161117b565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061121a602583610bb0565b9150611225826111be565b604082019050919050565b600060208201905081810360008301526112498161120d565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006112ac602383610bb0565b91506112b782611250565b604082019050919050565b600060208201905081810360008301526112db8161129f565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b600061133e602683610bb0565b9150611349826112e2565b604082019050919050565b6000602082019050818103600083015261136d81611331565b905091905056fea2646970667358221220abdaea0d8f5c74d4ece379366fa657227cdb6f460f54c5071281376e46a8207a64736f6c63430008090033";
14
+ static readonly bytecode = "0x60806040523480156200001157600080fd5b50604051620018f1380380620018f1833981810160405281019062000037919062000363565b6040518060400160405280600c81526020017f416c7068612045524320323000000000000000000000000000000000000000008152506040518060400160405280600581526020017f414c5048410000000000000000000000000000000000000000000000000000008152508160039080519060200190620000bb92919062000273565b508060049080519060200190620000d492919062000273565b505050620000e93382620000f060201b60201c565b5062000537565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000163576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200015a90620003f6565b60405180910390fd5b62000177600083836200026960201b60201c565b80600260008282546200018b919062000447565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254620001e2919062000447565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620002499190620004b5565b60405180910390a362000265600083836200026e60201b60201c565b5050565b505050565b505050565b828054620002819062000501565b90600052602060002090601f016020900481019282620002a55760008555620002f1565b82601f10620002c057805160ff1916838001178555620002f1565b82800160010185558215620002f1579182015b82811115620002f0578251825591602001919060010190620002d3565b5b50905062000300919062000304565b5090565b5b808211156200031f57600081600090555060010162000305565b5090565b600080fd5b6000819050919050565b6200033d8162000328565b81146200034957600080fd5b50565b6000815190506200035d8162000332565b92915050565b6000602082840312156200037c576200037b62000323565b5b60006200038c848285016200034c565b91505092915050565b600082825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6000620003de601f8362000395565b9150620003eb82620003a6565b602082019050919050565b600060208201905081810360008301526200041181620003cf565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000620004548262000328565b9150620004618362000328565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562000499576200049862000418565b5b828201905092915050565b620004af8162000328565b82525050565b6000602082019050620004cc6000830184620004a4565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200051a57607f821691505b60208210811415620005315762000530620004d2565b5b50919050565b6113aa80620005476000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461016857806370a082311461019857806395d89b41146101c8578063a457c2d7146101e6578063a9059cbb14610216578063dd62ed3e14610246576100a9565b806306fdde03146100ae578063095ea7b3146100cc57806318160ddd146100fc57806323b872dd1461011a578063313ce5671461014a575b600080fd5b6100b6610276565b6040516100c39190610c3e565b60405180910390f35b6100e660048036038101906100e19190610cf9565b610308565b6040516100f39190610d54565b60405180910390f35b610104610326565b6040516101119190610d7e565b60405180910390f35b610134600480360381019061012f9190610d99565b610330565b6040516101419190610d54565b60405180910390f35b610152610428565b60405161015f9190610e08565b60405180910390f35b610182600480360381019061017d9190610cf9565b610431565b60405161018f9190610d54565b60405180910390f35b6101b260048036038101906101ad9190610e23565b6104dd565b6040516101bf9190610d7e565b60405180910390f35b6101d0610525565b6040516101dd9190610c3e565b60405180910390f35b61020060048036038101906101fb9190610cf9565b6105b7565b60405161020d9190610d54565b60405180910390f35b610230600480360381019061022b9190610cf9565b6106a2565b60405161023d9190610d54565b60405180910390f35b610260600480360381019061025b9190610e50565b6106c0565b60405161026d9190610d7e565b60405180910390f35b60606003805461028590610ebf565b80601f01602080910402602001604051908101604052809291908181526020018280546102b190610ebf565b80156102fe5780601f106102d3576101008083540402835291602001916102fe565b820191906000526020600020905b8154815290600101906020018083116102e157829003601f168201915b5050505050905090565b600061031c610315610747565b848461074f565b6001905092915050565b6000600254905090565b600061033d84848461091a565b6000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610388610747565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610408576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103ff90610f63565b60405180910390fd5b61041c85610414610747565b85840361074f565b60019150509392505050565b60006012905090565b60006104d361043e610747565b84846001600061044c610747565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546104ce9190610fb2565b61074f565b6001905092915050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60606004805461053490610ebf565b80601f016020809104026020016040519081016040528092919081815260200182805461056090610ebf565b80156105ad5780601f10610582576101008083540402835291602001916105ad565b820191906000526020600020905b81548152906001019060200180831161059057829003601f168201915b5050505050905090565b600080600160006105c6610747565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610683576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067a9061107a565b60405180910390fd5b61069761068e610747565b8585840361074f565b600191505092915050565b60006106b66106af610747565b848461091a565b6001905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156107bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b69061110c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561082f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108269061119e565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161090d9190610d7e565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561098a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161098190611230565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156109fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109f1906112c2565b60405180910390fd5b610a05838383610b9b565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610a8b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a8290611354565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610b1e9190610fb2565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610b829190610d7e565b60405180910390a3610b95848484610ba0565b50505050565b505050565b505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610bdf578082015181840152602081019050610bc4565b83811115610bee576000848401525b50505050565b6000601f19601f8301169050919050565b6000610c1082610ba5565b610c1a8185610bb0565b9350610c2a818560208601610bc1565b610c3381610bf4565b840191505092915050565b60006020820190508181036000830152610c588184610c05565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610c9082610c65565b9050919050565b610ca081610c85565b8114610cab57600080fd5b50565b600081359050610cbd81610c97565b92915050565b6000819050919050565b610cd681610cc3565b8114610ce157600080fd5b50565b600081359050610cf381610ccd565b92915050565b60008060408385031215610d1057610d0f610c60565b5b6000610d1e85828601610cae565b9250506020610d2f85828601610ce4565b9150509250929050565b60008115159050919050565b610d4e81610d39565b82525050565b6000602082019050610d696000830184610d45565b92915050565b610d7881610cc3565b82525050565b6000602082019050610d936000830184610d6f565b92915050565b600080600060608486031215610db257610db1610c60565b5b6000610dc086828701610cae565b9350506020610dd186828701610cae565b9250506040610de286828701610ce4565b9150509250925092565b600060ff82169050919050565b610e0281610dec565b82525050565b6000602082019050610e1d6000830184610df9565b92915050565b600060208284031215610e3957610e38610c60565b5b6000610e4784828501610cae565b91505092915050565b60008060408385031215610e6757610e66610c60565b5b6000610e7585828601610cae565b9250506020610e8685828601610cae565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680610ed757607f821691505b60208210811415610eeb57610eea610e90565b5b50919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b6000610f4d602883610bb0565b9150610f5882610ef1565b604082019050919050565b60006020820190508181036000830152610f7c81610f40565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000610fbd82610cc3565b9150610fc883610cc3565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115610ffd57610ffc610f83565b5b828201905092915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000611064602583610bb0565b915061106f82611008565b604082019050919050565b6000602082019050818103600083015261109381611057565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006110f6602483610bb0565b91506111018261109a565b604082019050919050565b60006020820190508181036000830152611125816110e9565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611188602283610bb0565b91506111938261112c565b604082019050919050565b600060208201905081810360008301526111b78161117b565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061121a602583610bb0565b9150611225826111be565b604082019050919050565b600060208201905081810360008301526112498161120d565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006112ac602383610bb0565b91506112b782611250565b604082019050919050565b600060208201905081810360008301526112db8161129f565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b600061133e602683610bb0565b9150611349826112e2565b604082019050919050565b6000602082019050818103600083015261136d81611331565b905091905056fea2646970667358221220ac8b864c59c65f80e103feb058644c736c9c88ec578e4093f57a78606a8e50d664736f6c63430008090033";
15
15
  static readonly abi: ({
16
16
  inputs: {
17
17
  internalType: string;