@hyperlane-xyz/core 4.0.0 → 4.2.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (344) hide show
  1. package/contracts/avs/ECDSAServiceManagerBase.sol +3 -2
  2. package/contracts/hooks/ArbL2ToL1Hook.sol +82 -0
  3. package/contracts/hooks/libs/AbstractMessageIdAuthHook.sol +1 -1
  4. package/contracts/hooks/warp-route/RateLimitedHook.sol +2 -1
  5. package/contracts/interfaces/IInterchainSecurityModule.sol +2 -1
  6. package/contracts/interfaces/hooks/IPostDispatchHook.sol +2 -1
  7. package/contracts/isms/hook/AbstractMessageIdAuthorizedIsm.sol +35 -15
  8. package/contracts/isms/hook/ArbL2ToL1Ism.sol +145 -0
  9. package/contracts/test/ERC20Test.sol +12 -0
  10. package/contracts/test/TestRecipient.sol +2 -0
  11. package/contracts/token/interfaces/IXERC20.sol +21 -0
  12. package/dist/@arbitrum/index.d.ts +3 -0
  13. package/dist/@arbitrum/index.d.ts.map +1 -0
  14. package/dist/@arbitrum/index.js +2 -0
  15. package/dist/@arbitrum/index.js.map +1 -0
  16. package/dist/@arbitrum/nitro-contracts/index.d.ts +3 -0
  17. package/dist/@arbitrum/nitro-contracts/index.d.ts.map +1 -0
  18. package/dist/@arbitrum/nitro-contracts/index.js +2 -0
  19. package/dist/@arbitrum/nitro-contracts/index.js.map +1 -0
  20. package/dist/@arbitrum/nitro-contracts/src/bridge/IBridge.d.ts +586 -0
  21. package/dist/@arbitrum/nitro-contracts/src/bridge/IBridge.d.ts.map +1 -0
  22. package/dist/@arbitrum/nitro-contracts/src/bridge/IBridge.js +2 -0
  23. package/dist/@arbitrum/nitro-contracts/src/bridge/IBridge.js.map +1 -0
  24. package/dist/@arbitrum/nitro-contracts/src/bridge/IOutbox.d.ts +504 -0
  25. package/dist/@arbitrum/nitro-contracts/src/bridge/IOutbox.d.ts.map +1 -0
  26. package/dist/@arbitrum/nitro-contracts/src/bridge/IOutbox.js +2 -0
  27. package/dist/@arbitrum/nitro-contracts/src/bridge/IOutbox.js.map +1 -0
  28. package/dist/@arbitrum/nitro-contracts/src/bridge/IOwnable.d.ts +50 -0
  29. package/dist/@arbitrum/nitro-contracts/src/bridge/IOwnable.d.ts.map +1 -0
  30. package/dist/@arbitrum/nitro-contracts/src/bridge/IOwnable.js +2 -0
  31. package/dist/@arbitrum/nitro-contracts/src/bridge/IOwnable.js.map +1 -0
  32. package/dist/@arbitrum/nitro-contracts/src/bridge/index.d.ts +4 -0
  33. package/dist/@arbitrum/nitro-contracts/src/bridge/index.d.ts.map +1 -0
  34. package/dist/@arbitrum/nitro-contracts/src/bridge/index.js +2 -0
  35. package/dist/@arbitrum/nitro-contracts/src/bridge/index.js.map +1 -0
  36. package/dist/@arbitrum/nitro-contracts/src/index.d.ts +5 -0
  37. package/dist/@arbitrum/nitro-contracts/src/index.d.ts.map +1 -0
  38. package/dist/@arbitrum/nitro-contracts/src/index.js +2 -0
  39. package/dist/@arbitrum/nitro-contracts/src/index.js.map +1 -0
  40. package/dist/@arbitrum/nitro-contracts/src/precompiles/ArbSys.d.ts +371 -0
  41. package/dist/@arbitrum/nitro-contracts/src/precompiles/ArbSys.d.ts.map +1 -0
  42. package/dist/@arbitrum/nitro-contracts/src/precompiles/ArbSys.js +2 -0
  43. package/dist/@arbitrum/nitro-contracts/src/precompiles/ArbSys.js.map +1 -0
  44. package/dist/@arbitrum/nitro-contracts/src/precompiles/index.d.ts +2 -0
  45. package/dist/@arbitrum/nitro-contracts/src/precompiles/index.d.ts.map +1 -0
  46. package/dist/@arbitrum/nitro-contracts/src/precompiles/index.js +2 -0
  47. package/dist/@arbitrum/nitro-contracts/src/precompiles/index.js.map +1 -0
  48. package/dist/@openzeppelin/contracts/vendor/arbitrum/IBridge.d.ts +607 -0
  49. package/dist/@openzeppelin/contracts/vendor/arbitrum/IBridge.d.ts.map +1 -0
  50. package/dist/@openzeppelin/contracts/vendor/arbitrum/IBridge.js +2 -0
  51. package/dist/@openzeppelin/contracts/vendor/arbitrum/IBridge.js.map +1 -0
  52. package/dist/@openzeppelin/contracts/vendor/arbitrum/IOutbox.d.ts +411 -0
  53. package/dist/@openzeppelin/contracts/vendor/arbitrum/IOutbox.d.ts.map +1 -0
  54. package/dist/@openzeppelin/contracts/vendor/arbitrum/IOutbox.js +2 -0
  55. package/dist/@openzeppelin/contracts/vendor/arbitrum/IOutbox.js.map +1 -0
  56. package/dist/@openzeppelin/contracts/vendor/arbitrum/index.d.ts +3 -0
  57. package/dist/@openzeppelin/contracts/vendor/arbitrum/index.d.ts.map +1 -0
  58. package/dist/@openzeppelin/contracts/vendor/arbitrum/index.js +2 -0
  59. package/dist/@openzeppelin/contracts/vendor/arbitrum/index.js.map +1 -0
  60. package/dist/@openzeppelin/contracts/vendor/index.d.ts +2 -0
  61. package/dist/@openzeppelin/contracts/vendor/index.d.ts.map +1 -1
  62. package/dist/buildArtifact.js +1 -1
  63. package/dist/buildArtifact.json +1 -1
  64. package/dist/contracts/hooks/ArbL2ToL1Hook.d.ts +396 -0
  65. package/dist/contracts/hooks/ArbL2ToL1Hook.d.ts.map +1 -0
  66. package/dist/contracts/hooks/ArbL2ToL1Hook.js +2 -0
  67. package/dist/contracts/hooks/ArbL2ToL1Hook.js.map +1 -0
  68. package/dist/contracts/hooks/index.d.ts +1 -0
  69. package/dist/contracts/hooks/index.d.ts.map +1 -1
  70. package/dist/contracts/isms/hook/AbstractMessageIdAuthorizedIsm.d.ts +47 -1
  71. package/dist/contracts/isms/hook/AbstractMessageIdAuthorizedIsm.d.ts.map +1 -1
  72. package/dist/contracts/isms/hook/ArbL2ToL1Ism.d.ts +273 -0
  73. package/dist/contracts/isms/hook/ArbL2ToL1Ism.d.ts.map +1 -0
  74. package/dist/contracts/isms/hook/ArbL2ToL1Ism.js +2 -0
  75. package/dist/contracts/isms/hook/ArbL2ToL1Ism.js.map +1 -0
  76. package/dist/contracts/isms/hook/ERC5164Ism.d.ts +47 -1
  77. package/dist/contracts/isms/hook/ERC5164Ism.d.ts.map +1 -1
  78. package/dist/contracts/isms/hook/OPStackIsm.d.ts +47 -1
  79. package/dist/contracts/isms/hook/OPStackIsm.d.ts.map +1 -1
  80. package/dist/contracts/isms/hook/PolygonPosIsm.d.ts +47 -1
  81. package/dist/contracts/isms/hook/PolygonPosIsm.d.ts.map +1 -1
  82. package/dist/contracts/isms/hook/index.d.ts +1 -0
  83. package/dist/contracts/isms/hook/index.d.ts.map +1 -1
  84. package/dist/contracts/isms/hook/layer-zero/LayerZeroV2Ism.d.ts +47 -1
  85. package/dist/contracts/isms/hook/layer-zero/LayerZeroV2Ism.d.ts.map +1 -1
  86. package/dist/contracts/test/ERC20Test.sol/XERC20Test.d.ts +31 -1
  87. package/dist/contracts/test/ERC20Test.sol/XERC20Test.d.ts.map +1 -1
  88. package/dist/contracts/token/interfaces/IXERC20.d.ts +39 -1
  89. package/dist/contracts/token/interfaces/IXERC20.d.ts.map +1 -1
  90. package/dist/factories/@arbitrum/index.d.ts +2 -0
  91. package/dist/factories/@arbitrum/index.d.ts.map +1 -0
  92. package/dist/factories/@arbitrum/index.js +5 -0
  93. package/dist/factories/@arbitrum/index.js.map +1 -0
  94. package/dist/factories/@arbitrum/nitro-contracts/index.d.ts +2 -0
  95. package/dist/factories/@arbitrum/nitro-contracts/index.d.ts.map +1 -0
  96. package/dist/factories/@arbitrum/nitro-contracts/index.js +5 -0
  97. package/dist/factories/@arbitrum/nitro-contracts/index.js.map +1 -0
  98. package/dist/factories/@arbitrum/nitro-contracts/src/bridge/IBridge__factory.d.ts +403 -0
  99. package/dist/factories/@arbitrum/nitro-contracts/src/bridge/IBridge__factory.d.ts.map +1 -0
  100. package/dist/factories/@arbitrum/nitro-contracts/src/bridge/IBridge__factory.js +527 -0
  101. package/dist/factories/@arbitrum/nitro-contracts/src/bridge/IBridge__factory.js.map +1 -0
  102. package/dist/factories/@arbitrum/nitro-contracts/src/bridge/IOutbox__factory.d.ts +347 -0
  103. package/dist/factories/@arbitrum/nitro-contracts/src/bridge/IOutbox__factory.d.ts.map +1 -0
  104. package/dist/factories/@arbitrum/nitro-contracts/src/bridge/IOutbox__factory.js +451 -0
  105. package/dist/factories/@arbitrum/nitro-contracts/src/bridge/IOutbox__factory.js.map +1 -0
  106. package/dist/factories/@arbitrum/nitro-contracts/src/bridge/IOwnable__factory.d.ts +19 -0
  107. package/dist/factories/@arbitrum/nitro-contracts/src/bridge/IOwnable__factory.d.ts.map +1 -0
  108. package/dist/factories/@arbitrum/nitro-contracts/src/bridge/IOwnable__factory.js +29 -0
  109. package/dist/factories/@arbitrum/nitro-contracts/src/bridge/IOwnable__factory.js.map +1 -0
  110. package/dist/factories/@arbitrum/nitro-contracts/src/bridge/index.d.ts +4 -0
  111. package/dist/factories/@arbitrum/nitro-contracts/src/bridge/index.d.ts.map +1 -0
  112. package/dist/factories/@arbitrum/nitro-contracts/src/bridge/index.js +7 -0
  113. package/dist/factories/@arbitrum/nitro-contracts/src/bridge/index.js.map +1 -0
  114. package/dist/factories/@arbitrum/nitro-contracts/src/index.d.ts +3 -0
  115. package/dist/factories/@arbitrum/nitro-contracts/src/index.d.ts.map +1 -0
  116. package/dist/factories/@arbitrum/nitro-contracts/src/index.js +6 -0
  117. package/dist/factories/@arbitrum/nitro-contracts/src/index.js.map +1 -0
  118. package/dist/factories/@arbitrum/nitro-contracts/src/precompiles/ArbSys__factory.d.ts +298 -0
  119. package/dist/factories/@arbitrum/nitro-contracts/src/precompiles/ArbSys__factory.d.ts.map +1 -0
  120. package/dist/factories/@arbitrum/nitro-contracts/src/precompiles/ArbSys__factory.js +385 -0
  121. package/dist/factories/@arbitrum/nitro-contracts/src/precompiles/ArbSys__factory.js.map +1 -0
  122. package/dist/factories/@arbitrum/nitro-contracts/src/precompiles/index.d.ts +2 -0
  123. package/dist/factories/@arbitrum/nitro-contracts/src/precompiles/index.d.ts.map +1 -0
  124. package/dist/factories/@arbitrum/nitro-contracts/src/precompiles/index.js +5 -0
  125. package/dist/factories/@arbitrum/nitro-contracts/src/precompiles/index.js.map +1 -0
  126. package/dist/factories/@openzeppelin/contracts/vendor/arbitrum/IBridge__factory.d.ts +415 -0
  127. package/dist/factories/@openzeppelin/contracts/vendor/arbitrum/IBridge__factory.d.ts.map +1 -0
  128. package/dist/factories/@openzeppelin/contracts/vendor/arbitrum/IBridge__factory.js +543 -0
  129. package/dist/factories/@openzeppelin/contracts/vendor/arbitrum/IBridge__factory.js.map +1 -0
  130. package/dist/factories/@openzeppelin/contracts/vendor/arbitrum/IOutbox__factory.d.ts +325 -0
  131. package/dist/factories/@openzeppelin/contracts/vendor/arbitrum/IOutbox__factory.d.ts.map +1 -0
  132. package/dist/factories/@openzeppelin/contracts/vendor/arbitrum/IOutbox__factory.js +424 -0
  133. package/dist/factories/@openzeppelin/contracts/vendor/arbitrum/IOutbox__factory.js.map +1 -0
  134. package/dist/factories/@openzeppelin/contracts/vendor/arbitrum/index.d.ts +3 -0
  135. package/dist/factories/@openzeppelin/contracts/vendor/arbitrum/index.d.ts.map +1 -0
  136. package/dist/factories/@openzeppelin/contracts/vendor/arbitrum/index.js +6 -0
  137. package/dist/factories/@openzeppelin/contracts/vendor/arbitrum/index.js.map +1 -0
  138. package/dist/factories/@openzeppelin/contracts/vendor/index.d.ts +1 -0
  139. package/dist/factories/@openzeppelin/contracts/vendor/index.d.ts.map +1 -1
  140. package/dist/factories/@openzeppelin/contracts/vendor/index.js +1 -0
  141. package/dist/factories/@openzeppelin/contracts/vendor/index.js.map +1 -1
  142. package/dist/factories/contracts/Mailbox__factory.d.ts +1 -1
  143. package/dist/factories/contracts/Mailbox__factory.js +1 -1
  144. package/dist/factories/contracts/avs/HyperlaneServiceManager__factory.d.ts +1 -1
  145. package/dist/factories/contracts/avs/HyperlaneServiceManager__factory.d.ts.map +1 -1
  146. package/dist/factories/contracts/avs/HyperlaneServiceManager__factory.js +1 -1
  147. package/dist/factories/contracts/avs/HyperlaneServiceManager__factory.js.map +1 -1
  148. package/dist/factories/contracts/hooks/ArbL2ToL1Hook__factory.d.ts +252 -0
  149. package/dist/factories/contracts/hooks/ArbL2ToL1Hook__factory.d.ts.map +1 -0
  150. package/dist/factories/contracts/hooks/ArbL2ToL1Hook__factory.js +339 -0
  151. package/dist/factories/contracts/hooks/ArbL2ToL1Hook__factory.js.map +1 -0
  152. package/dist/factories/contracts/hooks/MerkleTreeHook__factory.d.ts +1 -1
  153. package/dist/factories/contracts/hooks/MerkleTreeHook__factory.js +1 -1
  154. package/dist/factories/contracts/hooks/OPStackHook__factory.d.ts +1 -1
  155. package/dist/factories/contracts/hooks/OPStackHook__factory.js +1 -1
  156. package/dist/factories/contracts/hooks/PausableHook__factory.d.ts +1 -1
  157. package/dist/factories/contracts/hooks/PausableHook__factory.js +1 -1
  158. package/dist/factories/contracts/hooks/PolygonPosHook__factory.d.ts +1 -1
  159. package/dist/factories/contracts/hooks/PolygonPosHook__factory.js +1 -1
  160. package/dist/factories/contracts/hooks/ProtocolFee__factory.d.ts +1 -1
  161. package/dist/factories/contracts/hooks/ProtocolFee__factory.js +1 -1
  162. package/dist/factories/contracts/hooks/aggregation/ERC5164Hook__factory.d.ts +1 -1
  163. package/dist/factories/contracts/hooks/aggregation/ERC5164Hook__factory.js +1 -1
  164. package/dist/factories/contracts/hooks/aggregation/StaticAggregationHookFactory__factory.d.ts +1 -1
  165. package/dist/factories/contracts/hooks/aggregation/StaticAggregationHookFactory__factory.js +1 -1
  166. package/dist/factories/contracts/hooks/aggregation/StaticAggregationHook__factory.d.ts +1 -1
  167. package/dist/factories/contracts/hooks/aggregation/StaticAggregationHook__factory.js +1 -1
  168. package/dist/factories/contracts/hooks/igp/InterchainGasPaymaster__factory.d.ts +1 -1
  169. package/dist/factories/contracts/hooks/igp/InterchainGasPaymaster__factory.js +1 -1
  170. package/dist/factories/contracts/hooks/index.d.ts +1 -0
  171. package/dist/factories/contracts/hooks/index.d.ts.map +1 -1
  172. package/dist/factories/contracts/hooks/index.js +1 -0
  173. package/dist/factories/contracts/hooks/index.js.map +1 -1
  174. package/dist/factories/contracts/hooks/layer-zero/LayerZeroV1Hook__factory.d.ts +1 -1
  175. package/dist/factories/contracts/hooks/layer-zero/LayerZeroV1Hook__factory.js +1 -1
  176. package/dist/factories/contracts/hooks/layer-zero/LayerZeroV2Hook__factory.d.ts +1 -1
  177. package/dist/factories/contracts/hooks/layer-zero/LayerZeroV2Hook__factory.js +1 -1
  178. package/dist/factories/contracts/hooks/routing/DestinationRecipientRoutingHook__factory.d.ts +1 -1
  179. package/dist/factories/contracts/hooks/routing/DestinationRecipientRoutingHook__factory.js +1 -1
  180. package/dist/factories/contracts/hooks/routing/DomainRoutingHook__factory.d.ts +1 -1
  181. package/dist/factories/contracts/hooks/routing/DomainRoutingHook__factory.js +1 -1
  182. package/dist/factories/contracts/hooks/routing/FallbackDomainRoutingHook__factory.d.ts +1 -1
  183. package/dist/factories/contracts/hooks/routing/FallbackDomainRoutingHook__factory.js +1 -1
  184. package/dist/factories/contracts/hooks/warp-route/RateLimitedHook__factory.d.ts +1 -1
  185. package/dist/factories/contracts/hooks/warp-route/RateLimitedHook__factory.js +1 -1
  186. package/dist/factories/contracts/isms/NoopIsm__factory.d.ts +1 -1
  187. package/dist/factories/contracts/isms/NoopIsm__factory.js +1 -1
  188. package/dist/factories/contracts/isms/PausableIsm__factory.d.ts +1 -1
  189. package/dist/factories/contracts/isms/PausableIsm__factory.js +1 -1
  190. package/dist/factories/contracts/isms/TrustedRelayerIsm__factory.d.ts +1 -1
  191. package/dist/factories/contracts/isms/TrustedRelayerIsm__factory.js +1 -1
  192. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsmFactory__factory.d.ts +1 -1
  193. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsmFactory__factory.js +1 -1
  194. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsm__factory.d.ts +1 -1
  195. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsm__factory.js +1 -1
  196. package/dist/factories/contracts/isms/hook/AbstractMessageIdAuthorizedIsm__factory.d.ts +24 -0
  197. package/dist/factories/contracts/isms/hook/AbstractMessageIdAuthorizedIsm__factory.d.ts.map +1 -1
  198. package/dist/factories/contracts/isms/hook/AbstractMessageIdAuthorizedIsm__factory.js +32 -0
  199. package/dist/factories/contracts/isms/hook/AbstractMessageIdAuthorizedIsm__factory.js.map +1 -1
  200. package/dist/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.d.ts +169 -0
  201. package/dist/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.d.ts.map +1 -0
  202. package/dist/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.js +234 -0
  203. package/dist/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.js.map +1 -0
  204. package/dist/factories/contracts/isms/hook/ERC5164Ism__factory.d.ts +25 -1
  205. package/dist/factories/contracts/isms/hook/ERC5164Ism__factory.d.ts.map +1 -1
  206. package/dist/factories/contracts/isms/hook/ERC5164Ism__factory.js +33 -1
  207. package/dist/factories/contracts/isms/hook/ERC5164Ism__factory.js.map +1 -1
  208. package/dist/factories/contracts/isms/hook/OPStackIsm__factory.d.ts +25 -1
  209. package/dist/factories/contracts/isms/hook/OPStackIsm__factory.d.ts.map +1 -1
  210. package/dist/factories/contracts/isms/hook/OPStackIsm__factory.js +33 -1
  211. package/dist/factories/contracts/isms/hook/OPStackIsm__factory.js.map +1 -1
  212. package/dist/factories/contracts/isms/hook/PolygonPosIsm__factory.d.ts +25 -1
  213. package/dist/factories/contracts/isms/hook/PolygonPosIsm__factory.d.ts.map +1 -1
  214. package/dist/factories/contracts/isms/hook/PolygonPosIsm__factory.js +33 -1
  215. package/dist/factories/contracts/isms/hook/PolygonPosIsm__factory.js.map +1 -1
  216. package/dist/factories/contracts/isms/hook/index.d.ts +1 -0
  217. package/dist/factories/contracts/isms/hook/index.d.ts.map +1 -1
  218. package/dist/factories/contracts/isms/hook/index.js +1 -0
  219. package/dist/factories/contracts/isms/hook/index.js.map +1 -1
  220. package/dist/factories/contracts/isms/hook/layer-zero/LayerZeroV2Ism__factory.d.ts +25 -1
  221. package/dist/factories/contracts/isms/hook/layer-zero/LayerZeroV2Ism__factory.d.ts.map +1 -1
  222. package/dist/factories/contracts/isms/hook/layer-zero/LayerZeroV2Ism__factory.js +33 -1
  223. package/dist/factories/contracts/isms/hook/layer-zero/LayerZeroV2Ism__factory.js.map +1 -1
  224. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsmFactory__factory.d.ts +1 -1
  225. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsmFactory__factory.js +1 -1
  226. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsm__factory.d.ts +1 -1
  227. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsm__factory.js +1 -1
  228. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsmFactory__factory.d.ts +1 -1
  229. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsmFactory__factory.js +1 -1
  230. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsm__factory.d.ts +1 -1
  231. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsm__factory.js +1 -1
  232. package/dist/factories/contracts/isms/multisig/ValidatorAnnounce__factory.d.ts +1 -1
  233. package/dist/factories/contracts/isms/multisig/ValidatorAnnounce__factory.js +1 -1
  234. package/dist/factories/contracts/isms/routing/DefaultFallbackRoutingIsm__factory.d.ts +1 -1
  235. package/dist/factories/contracts/isms/routing/DefaultFallbackRoutingIsm__factory.js +1 -1
  236. package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory.sol/DomainRoutingIsmFactory__factory.d.ts +1 -1
  237. package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory.sol/DomainRoutingIsmFactory__factory.js +1 -1
  238. package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.d.ts +1 -1
  239. package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.js +1 -1
  240. package/dist/factories/contracts/isms/routing/InterchainAccountIsm__factory.d.ts +1 -1
  241. package/dist/factories/contracts/isms/routing/InterchainAccountIsm__factory.js +1 -1
  242. package/dist/factories/contracts/isms/warp-route/RateLimitedIsm__factory.d.ts +1 -1
  243. package/dist/factories/contracts/isms/warp-route/RateLimitedIsm__factory.js +1 -1
  244. package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.d.ts +1 -1
  245. package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.js +1 -1
  246. package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.d.ts +1 -1
  247. package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.js +1 -1
  248. package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.d.ts +1 -1
  249. package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.js +1 -1
  250. package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.d.ts +1 -1
  251. package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.js +1 -1
  252. package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.d.ts +1 -1
  253. package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.js +1 -1
  254. package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.d.ts +1 -1
  255. package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.js +1 -1
  256. package/dist/factories/contracts/mock/MockMailbox__factory.d.ts +1 -1
  257. package/dist/factories/contracts/mock/MockMailbox__factory.js +1 -1
  258. package/dist/factories/contracts/test/ERC20Test.sol/ERC20Test__factory.d.ts +1 -1
  259. package/dist/factories/contracts/test/ERC20Test.sol/ERC20Test__factory.js +1 -1
  260. package/dist/factories/contracts/test/ERC20Test.sol/FiatTokenTest__factory.d.ts +1 -1
  261. package/dist/factories/contracts/test/ERC20Test.sol/FiatTokenTest__factory.js +1 -1
  262. package/dist/factories/contracts/test/ERC20Test.sol/XERC20LockboxTest__factory.d.ts +1 -1
  263. package/dist/factories/contracts/test/ERC20Test.sol/XERC20LockboxTest__factory.d.ts.map +1 -1
  264. package/dist/factories/contracts/test/ERC20Test.sol/XERC20LockboxTest__factory.js +1 -1
  265. package/dist/factories/contracts/test/ERC20Test.sol/XERC20LockboxTest__factory.js.map +1 -1
  266. package/dist/factories/contracts/test/ERC20Test.sol/XERC20Test__factory.d.ts +29 -1
  267. package/dist/factories/contracts/test/ERC20Test.sol/XERC20Test__factory.d.ts.map +1 -1
  268. package/dist/factories/contracts/test/ERC20Test.sol/XERC20Test__factory.js +39 -1
  269. package/dist/factories/contracts/test/ERC20Test.sol/XERC20Test__factory.js.map +1 -1
  270. package/dist/factories/contracts/test/LightTestRecipient__factory.d.ts +4 -1
  271. package/dist/factories/contracts/test/LightTestRecipient__factory.d.ts.map +1 -1
  272. package/dist/factories/contracts/test/LightTestRecipient__factory.js +5 -1
  273. package/dist/factories/contracts/test/LightTestRecipient__factory.js.map +1 -1
  274. package/dist/factories/contracts/test/TestGasRouter__factory.d.ts +1 -1
  275. package/dist/factories/contracts/test/TestGasRouter__factory.js +1 -1
  276. package/dist/factories/contracts/test/TestInterchainGasPaymaster__factory.d.ts +1 -1
  277. package/dist/factories/contracts/test/TestInterchainGasPaymaster__factory.js +1 -1
  278. package/dist/factories/contracts/test/TestIsm__factory.d.ts +1 -1
  279. package/dist/factories/contracts/test/TestIsm__factory.js +1 -1
  280. package/dist/factories/contracts/test/TestMailbox__factory.d.ts +1 -1
  281. package/dist/factories/contracts/test/TestMailbox__factory.js +1 -1
  282. package/dist/factories/contracts/test/TestMerkleTreeHook__factory.d.ts +1 -1
  283. package/dist/factories/contracts/test/TestMerkleTreeHook__factory.js +1 -1
  284. package/dist/factories/contracts/test/TestPostDispatchHook__factory.d.ts +1 -1
  285. package/dist/factories/contracts/test/TestPostDispatchHook__factory.js +1 -1
  286. package/dist/factories/contracts/test/TestQuerySender__factory.d.ts +1 -1
  287. package/dist/factories/contracts/test/TestQuerySender__factory.js +1 -1
  288. package/dist/factories/contracts/test/TestQuery__factory.d.ts +1 -1
  289. package/dist/factories/contracts/test/TestQuery__factory.js +1 -1
  290. package/dist/factories/contracts/test/TestRecipient__factory.d.ts +4 -1
  291. package/dist/factories/contracts/test/TestRecipient__factory.d.ts.map +1 -1
  292. package/dist/factories/contracts/test/TestRecipient__factory.js +5 -1
  293. package/dist/factories/contracts/test/TestRecipient__factory.js.map +1 -1
  294. package/dist/factories/contracts/test/TestRemoteChallenger__factory.d.ts +1 -1
  295. package/dist/factories/contracts/test/TestRemoteChallenger__factory.js +1 -1
  296. package/dist/factories/contracts/test/TestRouter__factory.d.ts +1 -1
  297. package/dist/factories/contracts/test/TestRouter__factory.js +1 -1
  298. package/dist/factories/contracts/test/TestSendReceiver__factory.d.ts +1 -1
  299. package/dist/factories/contracts/test/TestSendReceiver__factory.js +1 -1
  300. package/dist/factories/contracts/test/avs/TestHyperlaneServiceManager__factory.d.ts +1 -1
  301. package/dist/factories/contracts/test/avs/TestHyperlaneServiceManager__factory.d.ts.map +1 -1
  302. package/dist/factories/contracts/test/avs/TestHyperlaneServiceManager__factory.js +1 -1
  303. package/dist/factories/contracts/test/avs/TestHyperlaneServiceManager__factory.js.map +1 -1
  304. package/dist/factories/contracts/token/HypERC20Collateral__factory.d.ts +1 -1
  305. package/dist/factories/contracts/token/HypERC20Collateral__factory.js +1 -1
  306. package/dist/factories/contracts/token/HypERC20__factory.d.ts +1 -1
  307. package/dist/factories/contracts/token/HypERC20__factory.js +1 -1
  308. package/dist/factories/contracts/token/HypERC721Collateral__factory.d.ts +1 -1
  309. package/dist/factories/contracts/token/HypERC721Collateral__factory.js +1 -1
  310. package/dist/factories/contracts/token/HypERC721__factory.d.ts +1 -1
  311. package/dist/factories/contracts/token/HypERC721__factory.js +1 -1
  312. package/dist/factories/contracts/token/HypNative__factory.d.ts +1 -1
  313. package/dist/factories/contracts/token/HypNative__factory.js +1 -1
  314. package/dist/factories/contracts/token/extensions/FastHypERC20Collateral__factory.d.ts +1 -1
  315. package/dist/factories/contracts/token/extensions/FastHypERC20Collateral__factory.js +1 -1
  316. package/dist/factories/contracts/token/extensions/FastHypERC20__factory.d.ts +1 -1
  317. package/dist/factories/contracts/token/extensions/FastHypERC20__factory.js +1 -1
  318. package/dist/factories/contracts/token/extensions/HypERC20CollateralVaultDeposit__factory.d.ts +1 -1
  319. package/dist/factories/contracts/token/extensions/HypERC20CollateralVaultDeposit__factory.js +1 -1
  320. package/dist/factories/contracts/token/extensions/HypERC721URICollateral__factory.d.ts +1 -1
  321. package/dist/factories/contracts/token/extensions/HypERC721URICollateral__factory.js +1 -1
  322. package/dist/factories/contracts/token/extensions/HypERC721URIStorage__factory.d.ts +1 -1
  323. package/dist/factories/contracts/token/extensions/HypERC721URIStorage__factory.js +1 -1
  324. package/dist/factories/contracts/token/extensions/HypFiatToken__factory.d.ts +1 -1
  325. package/dist/factories/contracts/token/extensions/HypFiatToken__factory.js +1 -1
  326. package/dist/factories/contracts/token/extensions/HypNativeScaled__factory.d.ts +1 -1
  327. package/dist/factories/contracts/token/extensions/HypNativeScaled__factory.js +1 -1
  328. package/dist/factories/contracts/token/extensions/HypXERC20Lockbox__factory.d.ts +1 -1
  329. package/dist/factories/contracts/token/extensions/HypXERC20Lockbox__factory.js +1 -1
  330. package/dist/factories/contracts/token/extensions/HypXERC20__factory.d.ts +1 -1
  331. package/dist/factories/contracts/token/extensions/HypXERC20__factory.js +1 -1
  332. package/dist/factories/contracts/token/interfaces/IXERC20__factory.d.ts +28 -0
  333. package/dist/factories/contracts/token/interfaces/IXERC20__factory.d.ts.map +1 -1
  334. package/dist/factories/contracts/token/interfaces/IXERC20__factory.js +38 -0
  335. package/dist/factories/contracts/token/interfaces/IXERC20__factory.js.map +1 -1
  336. package/dist/factories/index.d.ts +1 -0
  337. package/dist/factories/index.d.ts.map +1 -1
  338. package/dist/factories/index.js +1 -0
  339. package/dist/factories/index.js.map +1 -1
  340. package/dist/index.d.ts +14 -0
  341. package/dist/index.d.ts.map +1 -1
  342. package/dist/index.js +6 -0
  343. package/dist/index.js.map +1 -1
  344. package/package.json +3 -2
@@ -772,7 +772,7 @@ const _abi = [
772
772
  type: "function",
773
773
  },
774
774
  ];
775
- const _bytecode = "0x60c0604052606b80546001600160401b03191690553480156200002157600080fd5b50604051620031b1380380620031b1833981016040819052620000449162000248565b4360805263ffffffff811660a05260405160009062000063906200022c565b604051809103906000f08015801562000080573d6000803e3d6000fd5b50606780546001600160a01b0319166001600160a01b038316179055604051909150600090620000b0906200023a565b604051809103906000f080158015620000cd573d6000803e3d6000fd5b50606880546001600160a01b0383166001600160a01b031991821681179092556069805490911690911790559050620001063362000119565b620001106200016b565b50505062000277565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff1615620001d85760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff908116146200022a576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6102258062002c0683390190565b6103868062002e2b83390190565b6000602082840312156200025b57600080fd5b815163ffffffff811681146200027057600080fd5b9392505050565b60805160a05161295b620002ab6000396000818161050501528181610c950152611981015260006104d1015261295b6000f3fe6080604052600436106101fe5760003560e01c80638d3638f41161011d578063d6d08a09116100b0578063f794687a1161007f578063f8c8765e11610064578063f8c8765e14610750578063fa31de0114610770578063ffa1ad741461078357600080fd5b8063f794687a14610710578063f7ccd3211461073057600080fd5b8063d6d08a0914610644578063e495f1d414610671578063e70f48ac146106d0578063f2fde38b146106f057600080fd5b80639c42bd18116100ec5780639c42bd181461059f578063a3b4919f146105bf578063affed0e014610602578063d12164e41461061f57600080fd5b80638d3638f4146104f35780638da5cb5b1461052757806392d28b3d1461055257806399b048091461057f57600080fd5b806359b3f6e0116101955780637c39d130116101645780637c39d1301461045a57806381d2ea951461046d5780638209d3121461048d57806382ea7bfe146104bf57600080fd5b806359b3f6e01461035f5780635d1fe5a9146103d55780636e5f516e14610418578063715018a61461044557600080fd5b80631605c306116101d15780631605c306146102c55780633288990c146102da5780633d1250b7146102fa57806348aee8d41461034c57600080fd5b806307a2fda11461020357806310b83dc01461026c578063134fbb4f1461028d5780631426b7f4146102a3575b600080fd5b34801561020f57600080fd5b5061025061021e366004611fb3565b6000908152606a602052604090205474010000000000000000000000000000000000000000900465ffffffffffff1690565b60405165ffffffffffff90911681526020015b60405180910390f35b61027f61027a366004612049565b6107aa565b604051908152602001610263565b34801561029957600080fd5b5061027f60665481565b3480156102af57600080fd5b506102c36102be3660046120e7565b6108fa565b005b3480156102d157600080fd5b506102c3610a15565b3480156102e657600080fd5b506102c36102f5366004612104565b610b6f565b34801561030657600080fd5b506068546103279073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610263565b61027f61035a366004612146565b610bcb565b34801561036b57600080fd5b506102c361037a3660046121d0565b63ffffffff919091166000908152606c6020526040902080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909216919091179055565b3480156103e157600080fd5b506103276103f0366004611fb3565b6000908152606a602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b34801561042457600080fd5b506067546103279073ffffffffffffffffffffffffffffffffffffffff1681565b34801561045157600080fd5b506102c3610c09565b6102c3610468366004612207565b610c1d565b34801561047957600080fd5b5061027f610488366004612049565b6110bf565b34801561049957600080fd5b50606b546104aa9063ffffffff1681565b60405163ffffffff9091168152602001610263565b3480156104cb57600080fd5b5061027f7f000000000000000000000000000000000000000000000000000000000000000081565b3480156104ff57600080fd5b506104aa7f000000000000000000000000000000000000000000000000000000000000000081565b34801561053357600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff16610327565b34801561055e57600080fd5b5061057261056d366004611fb3565b611252565b60405161026391906122e1565b34801561058b57600080fd5b506102c361059a3660046120e7565b6112ec565b3480156105ab57600080fd5b5061027f6105ba3660046122f4565b611407565b3480156105cb57600080fd5b506103276105da366004612342565b606c6020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b34801561060e57600080fd5b506065546104aa9063ffffffff1681565b34801561062b57600080fd5b50606b546104aa90640100000000900463ffffffff1681565b34801561065057600080fd5b506069546103279073ffffffffffffffffffffffffffffffffffffffff1681565b34801561067d57600080fd5b506106c061068c366004611fb3565b6000908152606a602052604090205474010000000000000000000000000000000000000000900465ffffffffffff16151590565b6040519015158152602001610263565b3480156106dc57600080fd5b506103276106eb3660046120e7565b611443565b3480156106fc57600080fd5b506102c361070b3660046120e7565b61157a565b34801561071c57600080fd5b506102c361072b3660046120e7565b611631565b34801561073c57600080fd5b5061027f61074b366004612146565b61174c565b34801561075c57600080fd5b506102c361076b36600461235d565b61177f565b61027f61077e3660046122f4565b611939565b34801561078f57600080fd5b50610798600381565b60405160ff9091168152602001610263565b6000806107b98989898961196c565b905060006107cc8a8a8a8a8a8a8a6119aa565b63ffffffff8b166000908152606c602052604090205490915073ffffffffffffffffffffffffffffffffffffffff1680610867576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4d697373696e672072656d6f7465206d61696c626f780000000000000000000060448201526064015b60405180910390fd5b6040517f3288990c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821690633288990c906108b99086906004016122e1565b600060405180830381600087803b1580156108d357600080fd5b505af11580156108e7573d6000803e3d6000fd5b50939d9c50505050505050505050505050565b610902611c7e565b73ffffffffffffffffffffffffffffffffffffffff81163b6109a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f4d61696c626f783a20726571756972656420686f6f6b206e6f7420636f6e747260448201527f6163740000000000000000000000000000000000000000000000000000000000606482015260840161085e565b606980547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517f329ec8e2438a73828ecf31a6568d7a91d7b1d79e342b0692914fd053d1a002b190600090a250565b606b54640100000000900463ffffffff166000908152606d602052604081208054610a3f906123b9565b80601f0160208091040260200160405190810160405280929190818152602001828054610a6b906123b9565b8015610ab85780601f10610a8d57610100808354040283529160200191610ab8565b820191906000526020600020905b815481529060010190602001808311610a9b57829003601f168201915b50506040517f7c39d1300000000000000000000000000000000000000000000000000000000081529394503093637c39d1309350610afc925085915060040161240c565b600060405180830381600087803b158015610b1657600080fd5b505af1158015610b2a573d6000803e3d6000fd5b5050606b8054640100000000900463ffffffff16925090506004610b4d8361245c565b91906101000a81548163ffffffff021916908363ffffffff1602179055505050565b606b5463ffffffff166000908152606d60205260409020610b918284836124fd565b50606b805463ffffffff16906000610ba88361245c565b91906101000a81548163ffffffff021916908363ffffffff160217905550505050565b6000610bfe878787878787606860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166107aa565b979650505050505050565b610c11611c7e565b610c1b6000611cff565b565b6003610c298383611d76565b60ff1614610c93576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f4d61696c626f783a206261642076657273696f6e000000000000000000000000604482015260640161085e565b7f000000000000000000000000000000000000000000000000000000000000000063ffffffff16610cc48383611d9a565b63ffffffff1614610d31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4d61696c626f783a20756e65787065637465642064657374696e6174696f6e00604482015260640161085e565b6000610d7283838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dbd92505050565b6000818152606a602052604090205490915074010000000000000000000000000000000000000000900465ffffffffffff1615610e0b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4d61696c626f783a20616c72656164792064656c697665726564000000000000604482015260640161085e565b6000610e178484611dc8565b90506000610e2482611443565b60408051808201825233815265ffffffffffff43811660208084019182526000898152606a9091529390932091518254935190911674010000000000000000000000000000000000000000027fffffffffffff000000000000000000000000000000000000000000000000000090931673ffffffffffffffffffffffffffffffffffffffff918216179290921790559091508216610ec28686611de1565b610ecc8787611dfa565b63ffffffff167f0d381c2a574ae8f04e213db7cfb4df8df712cdbd427d9868ffef380660ca657460405160405180910390a460405183907f1cae38cdd3d3919489272725a5ae62a4f48b2989b0dae843d3c279fee18073a990600090a26040517ff7e83aee00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82169063f7e83aee90610f81908a908a908a908a90600401612660565b6020604051808303816000875af1158015610fa0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fc49190612687565b61102a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4d61696c626f783a2049534d20766572696669636174696f6e206661696c6564604482015260640161085e565b8173ffffffffffffffffffffffffffffffffffffffff166356d5d475346110518888611dfa565b61105b8989611de1565b6110658a8a611e0a565b6040518663ffffffff1660e01b815260040161108494939291906126a9565b6000604051808303818588803b15801561109d57600080fd5b505af11580156110b1573d6000803e3d6000fd5b505050505050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff82166110f85760685473ffffffffffffffffffffffffffffffffffffffff1691505b60006111068989898961196c565b6040517faaccd23000000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff84169063aaccd2309061115f908890889086906004016126d9565b602060405180830381865afa15801561117c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111a091906126ff565b6069546040517faaccd23000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063aaccd230906111fa908990899087906004016126d9565b602060405180830381865afa158015611217573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061123b91906126ff565b6112459190612718565b9998505050505050505050565b606d602052600090815260409020805461126b906123b9565b80601f0160208091040260200160405190810160405280929190818152602001828054611297906123b9565b80156112e45780601f106112b9576101008083540402835291602001916112e4565b820191906000526020600020905b8154815290600101906020018083116112c757829003601f168201915b505050505081565b6112f4611c7e565b73ffffffffffffffffffffffffffffffffffffffff81163b611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f4d61696c626f783a2064656661756c7420686f6f6b206e6f7420636f6e74726160448201527f6374000000000000000000000000000000000000000000000000000000000000606482015260840161085e565b606880547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517f65a63e5066ee2fcdf9d32a7f1bf7ce71c76066f19d0609dddccd334ab87237d790600090a250565b600061143a8585858561141c8680838561272b565b60685473ffffffffffffffffffffffffffffffffffffffff166110bf565b95945050505050565b60408051600481526024810182526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fde523cf30000000000000000000000000000000000000000000000000000000017905290516000918291829173ffffffffffffffffffffffffffffffffffffffff8616916114c49190612755565b600060405180830381855afa9150503d80600081146114ff576040519150601f19603f3d011682016040523d82523d6000602084013e611504565b606091505b50915091508180156115165750805115155b15611559576000818060200190518101906115319190612771565b905073ffffffffffffffffffffffffffffffffffffffff81161561155757949350505050565b505b505060675473ffffffffffffffffffffffffffffffffffffffff1692915050565b611582611c7e565b73ffffffffffffffffffffffffffffffffffffffff8116611625576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161085e565b61162e81611cff565b50565b611639611c7e565b73ffffffffffffffffffffffffffffffffffffffff81163b6116dd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f4d61696c626f783a2064656661756c742049534d206e6f7420636f6e7472616360448201527f7400000000000000000000000000000000000000000000000000000000000000606482015260840161085e565b606780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517fa76ad0adbf45318f8633aa0210f711273d50fbb6fef76ed95bbae97082c75daa90600090a250565b6000610bfe878787878787606860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166110bf565b600054610100900460ff161580801561179f5750600054600160ff909116105b806117b95750303b1580156117b9575060005460ff166001145b611845576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161085e565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156118a357600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6118ab611e26565b6118b484611631565b6118bd836112ec565b6118c6826108fa565b6118cf8561157a565b801561193257600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b600061143a8585858561194e8680838561272b565b60685473ffffffffffffffffffffffffffffffffffffffff166107aa565b60655460609061143a9060039063ffffffff167f00000000000000000000000000000000000000000000000000000000000000003389898989611ec5565b600073ffffffffffffffffffffffffffffffffffffffff82166119e35760685473ffffffffffffffffffffffffffffffffffffffff1691505b60006119f18989898961196c565b80516020820120606681905560658054929350909160019190600090611a1e90849063ffffffff1661278e565b92506101000a81548163ffffffff021916908363ffffffff160217905550888a63ffffffff163373ffffffffffffffffffffffffffffffffffffffff167f769f711d20c679153d382254f59892613b58a97cc876b249134ac25c80f9c81485604051611a8a91906122e1565b60405180910390a460405181907f788dbc1b7152732178210e7f4d9d010ef016f9eafbe66786bd7169f56e0c353a90600090a26069546040517faaccd23000000000000000000000000000000000000000000000000000000000815260009173ffffffffffffffffffffffffffffffffffffffff169063aaccd23090611b18908a908a9088906004016126d9565b602060405180830381865afa158015611b35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b5991906126ff565b905080341015611b665750345b6069546040517f086011b900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063086011b9908390611bc2908b908b9089906004016126d9565b6000604051808303818588803b158015611bdb57600080fd5b505af1158015611bef573d6000803e3d6000fd5b50505050508473ffffffffffffffffffffffffffffffffffffffff1663086011b98234611c1c91906127b2565b8989876040518563ffffffff1660e01b8152600401611c3d939291906126d9565b6000604051808303818588803b158015611c5657600080fd5b505af1158015611c6a573d6000803e3d6000fd5b50949e9d5050505050505050505050505050565b60335473ffffffffffffffffffffffffffffffffffffffff163314610c1b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161085e565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000611d85600182848661272b565b611d8e916127c5565b60f81c90505b92915050565b6000611daa602d6029848661272b565b611db39161280d565b60e01c9392505050565b805160209091012090565b6000611dda611dd78484611f03565b90565b9392505050565b6000611df160296009848661272b565b611dda91612853565b6000611daa60096005848661272b565b366000611e1a83604d818761272b565b915091505b9250929050565b600054610100900460ff16611ebd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161085e565b610c1b611f13565b60608888888888888888604051602001611ee698979695949392919061288f565b604051602081830303815290604052905098975050505050505050565b6000611df1604d602d848661272b565b600054610100900460ff16611faa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161085e565b610c1b33611cff565b600060208284031215611fc557600080fd5b5035919050565b803563ffffffff81168114611fe057600080fd5b919050565b60008083601f840112611ff757600080fd5b50813567ffffffffffffffff81111561200f57600080fd5b602083019150836020828501011115611e1f57600080fd5b73ffffffffffffffffffffffffffffffffffffffff8116811461162e57600080fd5b600080600080600080600060a0888a03121561206457600080fd5b61206d88611fcc565b965060208801359550604088013567ffffffffffffffff8082111561209157600080fd5b61209d8b838c01611fe5565b909750955060608a01359150808211156120b657600080fd5b506120c38a828b01611fe5565b90945092505060808801356120d781612027565b8091505092959891949750929550565b6000602082840312156120f957600080fd5b8135611dda81612027565b6000806020838503121561211757600080fd5b823567ffffffffffffffff81111561212e57600080fd5b61213a85828601611fe5565b90969095509350505050565b6000806000806000806080878903121561215f57600080fd5b61216887611fcc565b955060208701359450604087013567ffffffffffffffff8082111561218c57600080fd5b6121988a838b01611fe5565b909650945060608901359150808211156121b157600080fd5b506121be89828a01611fe5565b979a9699509497509295939492505050565b600080604083850312156121e357600080fd5b6121ec83611fcc565b915060208301356121fc81612027565b809150509250929050565b6000806000806040858703121561221d57600080fd5b843567ffffffffffffffff8082111561223557600080fd5b61224188838901611fe5565b9096509450602087013591508082111561225a57600080fd5b5061226787828801611fe5565b95989497509550505050565b60005b8381101561228e578181015183820152602001612276565b50506000910152565b600081518084526122af816020860160208601612273565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000611dda6020830184612297565b6000806000806060858703121561230a57600080fd5b61231385611fcc565b935060208501359250604085013567ffffffffffffffff81111561233657600080fd5b61226787828801611fe5565b60006020828403121561235457600080fd5b611dda82611fcc565b6000806000806080858703121561237357600080fd5b843561237e81612027565b9350602085013561238e81612027565b9250604085013561239e81612027565b915060608501356123ae81612027565b939692955090935050565b600181811c908216806123cd57607f821691505b602082108103612406577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b6040815260006040820152606060208201526000611dda6060830184612297565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600063ffffffff8083168181036124755761247561242d565b6001019392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b601f8211156124f857600081815260208120601f850160051c810160208610156124d55750805b601f850160051c820191505b818110156124f4578281556001016124e1565b5050505b505050565b67ffffffffffffffff8311156125155761251561247f565b6125298361252383546123b9565b836124ae565b6000601f84116001811461257b57600085156125455750838201355b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600387901b1c1916600186901b178355611932565b6000838152602090207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0861690835b828110156125ca57868501358255602094850194600190920191016125aa565b5086821015612605577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88860031b161c19848701351681555b505060018560011b0183555050505050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b604081526000612674604083018688612617565b8281036020840152610bfe818587612617565b60006020828403121561269957600080fd5b81518015158114611dda57600080fd5b63ffffffff851681528360208201526060604082015260006126cf606083018486612617565b9695505050505050565b6040815260006126ed604083018587612617565b82810360208401526126cf8185612297565b60006020828403121561271157600080fd5b5051919050565b80820180821115611d9457611d9461242d565b6000808585111561273b57600080fd5b8386111561274857600080fd5b5050820193919092039150565b60008251612767818460208701612273565b9190910192915050565b60006020828403121561278357600080fd5b8151611dda81612027565b63ffffffff8181168382160190808211156127ab576127ab61242d565b5092915050565b81810381811115611d9457611d9461242d565b7fff0000000000000000000000000000000000000000000000000000000000000081358181169160018510156128055780818660010360031b1b83161692505b505092915050565b7fffffffff0000000000000000000000000000000000000000000000000000000081358181169160048510156128055760049490940360031b84901b1690921692915050565b80356020831015611d94577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b7fff000000000000000000000000000000000000000000000000000000000000008960f81b16815260007fffffffff00000000000000000000000000000000000000000000000000000000808a60e01b166001840152808960e01b166005840152876009840152808760e01b1660298401525084602d8301528284604d8401375060009101604d0190815297965050505050505056fea2646970667358221220417a4786689f0cb4a1c06c22cb47871198f5d66dc26e1cb35f0dfd55873f9cb664736f6c6343000813003360806040526000805461ffff191661010617905534801561001f57600080fd5b506101f68061002f6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80636465e69f14610046578063951a291f1461006a578063f7e83aee146100b1575b600080fd5b6000546100539060ff1681565b60405160ff90911681526020015b60405180910390f35b6100af6100783660046100e2565b60008054911515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff909216919091179055565b005b6100d26100bf366004610154565b5050600054610100900460ff1692915050565b6040519015158152602001610061565b6000602082840312156100f457600080fd5b8135801515811461010457600080fd5b9392505050565b60008083601f84011261011d57600080fd5b50813567ffffffffffffffff81111561013557600080fd5b60208301915083602082850101111561014d57600080fd5b9250929050565b6000806000806040858703121561016a57600080fd5b843567ffffffffffffffff8082111561018257600080fd5b61018e8883890161010b565b909650945060208701359150808211156101a757600080fd5b506101b48782880161010b565b9598949750955050505056fea26469706673582212200d1c4c1a9398fe6538ce819cb3cd28a0a7dbf7f311c5f775bd7b16473af4a31e64736f6c6343000813003360806040526000805534801561001457600080fd5b50610362806100246000396000f3fe6080604052600436106100705760003560e01c8063ddca3f431161004e578063ddca3f43146100e3578063e445e7dd146100f9578063e5320bb914610115578063f667ee911461014857600080fd5b8063086011b91461007557806369fe0e2d1461008a578063aaccd230146100aa575b600080fd5b610088610083366004610265565b610178565b005b34801561009657600080fd5b506100886100a53660046102d1565b600055565b3480156100b657600080fd5b506100d06100c5366004610265565b505060005492915050565b6040519081526020015b60405180910390f35b3480156100ef57600080fd5b506100d060005481565b34801561010557600080fd5b50604051600081526020016100da565b34801561012157600080fd5b506101386101303660046102ea565b600192915050565b60405190151581526020016100da565b34801561015457600080fd5b506101386101633660046102d1565b60016020526000908152604090205460ff1681565b6101848484848461018a565b50505050565b60018060006101ce85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061021192505050565b8152602081019190915260400160002080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905550505050565b805160209091012090565b60008083601f84011261022e57600080fd5b50813567ffffffffffffffff81111561024657600080fd5b60208301915083602082850101111561025e57600080fd5b9250929050565b6000806000806040858703121561027b57600080fd5b843567ffffffffffffffff8082111561029357600080fd5b61029f8883890161021c565b909650945060208701359150808211156102b857600080fd5b506102c58782880161021c565b95989497509550505050565b6000602082840312156102e357600080fd5b5035919050565b600080602083850312156102fd57600080fd5b823567ffffffffffffffff81111561031457600080fd5b6103208582860161021c565b9096909550935050505056fea2646970667358221220d597660da47b708ebc4124d78182bac56415531b3bb59c7c24ff07fb5a25f33764736f6c63430008130033";
775
+ const _bytecode = "0x60c0604052606b80546001600160401b03191690553480156200002157600080fd5b50604051620031b1380380620031b1833981016040819052620000449162000248565b4360805263ffffffff811660a05260405160009062000063906200022c565b604051809103906000f08015801562000080573d6000803e3d6000fd5b50606780546001600160a01b0319166001600160a01b038316179055604051909150600090620000b0906200023a565b604051809103906000f080158015620000cd573d6000803e3d6000fd5b50606880546001600160a01b0383166001600160a01b031991821681179092556069805490911690911790559050620001063362000119565b620001106200016b565b50505062000277565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff1615620001d85760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff908116146200022a576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6102258062002c0683390190565b6103868062002e2b83390190565b6000602082840312156200025b57600080fd5b815163ffffffff811681146200027057600080fd5b9392505050565b60805160a05161295b620002ab6000396000818161050501528181610c950152611981015260006104d1015261295b6000f3fe6080604052600436106101fe5760003560e01c80638d3638f41161011d578063d6d08a09116100b0578063f794687a1161007f578063f8c8765e11610064578063f8c8765e14610750578063fa31de0114610770578063ffa1ad741461078357600080fd5b8063f794687a14610710578063f7ccd3211461073057600080fd5b8063d6d08a0914610644578063e495f1d414610671578063e70f48ac146106d0578063f2fde38b146106f057600080fd5b80639c42bd18116100ec5780639c42bd181461059f578063a3b4919f146105bf578063affed0e014610602578063d12164e41461061f57600080fd5b80638d3638f4146104f35780638da5cb5b1461052757806392d28b3d1461055257806399b048091461057f57600080fd5b806359b3f6e0116101955780637c39d130116101645780637c39d1301461045a57806381d2ea951461046d5780638209d3121461048d57806382ea7bfe146104bf57600080fd5b806359b3f6e01461035f5780635d1fe5a9146103d55780636e5f516e14610418578063715018a61461044557600080fd5b80631605c306116101d15780631605c306146102c55780633288990c146102da5780633d1250b7146102fa57806348aee8d41461034c57600080fd5b806307a2fda11461020357806310b83dc01461026c578063134fbb4f1461028d5780631426b7f4146102a3575b600080fd5b34801561020f57600080fd5b5061025061021e366004611fb3565b6000908152606a602052604090205474010000000000000000000000000000000000000000900465ffffffffffff1690565b60405165ffffffffffff90911681526020015b60405180910390f35b61027f61027a366004612049565b6107aa565b604051908152602001610263565b34801561029957600080fd5b5061027f60665481565b3480156102af57600080fd5b506102c36102be3660046120e7565b6108fa565b005b3480156102d157600080fd5b506102c3610a15565b3480156102e657600080fd5b506102c36102f5366004612104565b610b6f565b34801561030657600080fd5b506068546103279073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610263565b61027f61035a366004612146565b610bcb565b34801561036b57600080fd5b506102c361037a3660046121d0565b63ffffffff919091166000908152606c6020526040902080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909216919091179055565b3480156103e157600080fd5b506103276103f0366004611fb3565b6000908152606a602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b34801561042457600080fd5b506067546103279073ffffffffffffffffffffffffffffffffffffffff1681565b34801561045157600080fd5b506102c3610c09565b6102c3610468366004612207565b610c1d565b34801561047957600080fd5b5061027f610488366004612049565b6110bf565b34801561049957600080fd5b50606b546104aa9063ffffffff1681565b60405163ffffffff9091168152602001610263565b3480156104cb57600080fd5b5061027f7f000000000000000000000000000000000000000000000000000000000000000081565b3480156104ff57600080fd5b506104aa7f000000000000000000000000000000000000000000000000000000000000000081565b34801561053357600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff16610327565b34801561055e57600080fd5b5061057261056d366004611fb3565b611252565b60405161026391906122e1565b34801561058b57600080fd5b506102c361059a3660046120e7565b6112ec565b3480156105ab57600080fd5b5061027f6105ba3660046122f4565b611407565b3480156105cb57600080fd5b506103276105da366004612342565b606c6020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b34801561060e57600080fd5b506065546104aa9063ffffffff1681565b34801561062b57600080fd5b50606b546104aa90640100000000900463ffffffff1681565b34801561065057600080fd5b506069546103279073ffffffffffffffffffffffffffffffffffffffff1681565b34801561067d57600080fd5b506106c061068c366004611fb3565b6000908152606a602052604090205474010000000000000000000000000000000000000000900465ffffffffffff16151590565b6040519015158152602001610263565b3480156106dc57600080fd5b506103276106eb3660046120e7565b611443565b3480156106fc57600080fd5b506102c361070b3660046120e7565b61157a565b34801561071c57600080fd5b506102c361072b3660046120e7565b611631565b34801561073c57600080fd5b5061027f61074b366004612146565b61174c565b34801561075c57600080fd5b506102c361076b36600461235d565b61177f565b61027f61077e3660046122f4565b611939565b34801561078f57600080fd5b50610798600381565b60405160ff9091168152602001610263565b6000806107b98989898961196c565b905060006107cc8a8a8a8a8a8a8a6119aa565b63ffffffff8b166000908152606c602052604090205490915073ffffffffffffffffffffffffffffffffffffffff1680610867576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4d697373696e672072656d6f7465206d61696c626f780000000000000000000060448201526064015b60405180910390fd5b6040517f3288990c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821690633288990c906108b99086906004016122e1565b600060405180830381600087803b1580156108d357600080fd5b505af11580156108e7573d6000803e3d6000fd5b50939d9c50505050505050505050505050565b610902611c7e565b73ffffffffffffffffffffffffffffffffffffffff81163b6109a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f4d61696c626f783a20726571756972656420686f6f6b206e6f7420636f6e747260448201527f6163740000000000000000000000000000000000000000000000000000000000606482015260840161085e565b606980547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517f329ec8e2438a73828ecf31a6568d7a91d7b1d79e342b0692914fd053d1a002b190600090a250565b606b54640100000000900463ffffffff166000908152606d602052604081208054610a3f906123b9565b80601f0160208091040260200160405190810160405280929190818152602001828054610a6b906123b9565b8015610ab85780601f10610a8d57610100808354040283529160200191610ab8565b820191906000526020600020905b815481529060010190602001808311610a9b57829003601f168201915b50506040517f7c39d1300000000000000000000000000000000000000000000000000000000081529394503093637c39d1309350610afc925085915060040161240c565b600060405180830381600087803b158015610b1657600080fd5b505af1158015610b2a573d6000803e3d6000fd5b5050606b8054640100000000900463ffffffff16925090506004610b4d8361245c565b91906101000a81548163ffffffff021916908363ffffffff1602179055505050565b606b5463ffffffff166000908152606d60205260409020610b918284836124fd565b50606b805463ffffffff16906000610ba88361245c565b91906101000a81548163ffffffff021916908363ffffffff160217905550505050565b6000610bfe878787878787606860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166107aa565b979650505050505050565b610c11611c7e565b610c1b6000611cff565b565b6003610c298383611d76565b60ff1614610c93576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f4d61696c626f783a206261642076657273696f6e000000000000000000000000604482015260640161085e565b7f000000000000000000000000000000000000000000000000000000000000000063ffffffff16610cc48383611d9a565b63ffffffff1614610d31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4d61696c626f783a20756e65787065637465642064657374696e6174696f6e00604482015260640161085e565b6000610d7283838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611dbd92505050565b6000818152606a602052604090205490915074010000000000000000000000000000000000000000900465ffffffffffff1615610e0b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4d61696c626f783a20616c72656164792064656c697665726564000000000000604482015260640161085e565b6000610e178484611dc8565b90506000610e2482611443565b60408051808201825233815265ffffffffffff43811660208084019182526000898152606a9091529390932091518254935190911674010000000000000000000000000000000000000000027fffffffffffff000000000000000000000000000000000000000000000000000090931673ffffffffffffffffffffffffffffffffffffffff918216179290921790559091508216610ec28686611de1565b610ecc8787611dfa565b63ffffffff167f0d381c2a574ae8f04e213db7cfb4df8df712cdbd427d9868ffef380660ca657460405160405180910390a460405183907f1cae38cdd3d3919489272725a5ae62a4f48b2989b0dae843d3c279fee18073a990600090a26040517ff7e83aee00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82169063f7e83aee90610f81908a908a908a908a90600401612660565b6020604051808303816000875af1158015610fa0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fc49190612687565b61102a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4d61696c626f783a2049534d20766572696669636174696f6e206661696c6564604482015260640161085e565b8173ffffffffffffffffffffffffffffffffffffffff166356d5d475346110518888611dfa565b61105b8989611de1565b6110658a8a611e0a565b6040518663ffffffff1660e01b815260040161108494939291906126a9565b6000604051808303818588803b15801561109d57600080fd5b505af11580156110b1573d6000803e3d6000fd5b505050505050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff82166110f85760685473ffffffffffffffffffffffffffffffffffffffff1691505b60006111068989898961196c565b6040517faaccd23000000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff84169063aaccd2309061115f908890889086906004016126d9565b602060405180830381865afa15801561117c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111a091906126ff565b6069546040517faaccd23000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063aaccd230906111fa908990899087906004016126d9565b602060405180830381865afa158015611217573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061123b91906126ff565b6112459190612718565b9998505050505050505050565b606d602052600090815260409020805461126b906123b9565b80601f0160208091040260200160405190810160405280929190818152602001828054611297906123b9565b80156112e45780601f106112b9576101008083540402835291602001916112e4565b820191906000526020600020905b8154815290600101906020018083116112c757829003601f168201915b505050505081565b6112f4611c7e565b73ffffffffffffffffffffffffffffffffffffffff81163b611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f4d61696c626f783a2064656661756c7420686f6f6b206e6f7420636f6e74726160448201527f6374000000000000000000000000000000000000000000000000000000000000606482015260840161085e565b606880547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517f65a63e5066ee2fcdf9d32a7f1bf7ce71c76066f19d0609dddccd334ab87237d790600090a250565b600061143a8585858561141c8680838561272b565b60685473ffffffffffffffffffffffffffffffffffffffff166110bf565b95945050505050565b60408051600481526024810182526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fde523cf30000000000000000000000000000000000000000000000000000000017905290516000918291829173ffffffffffffffffffffffffffffffffffffffff8616916114c49190612755565b600060405180830381855afa9150503d80600081146114ff576040519150601f19603f3d011682016040523d82523d6000602084013e611504565b606091505b50915091508180156115165750805115155b15611559576000818060200190518101906115319190612771565b905073ffffffffffffffffffffffffffffffffffffffff81161561155757949350505050565b505b505060675473ffffffffffffffffffffffffffffffffffffffff1692915050565b611582611c7e565b73ffffffffffffffffffffffffffffffffffffffff8116611625576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161085e565b61162e81611cff565b50565b611639611c7e565b73ffffffffffffffffffffffffffffffffffffffff81163b6116dd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f4d61696c626f783a2064656661756c742049534d206e6f7420636f6e7472616360448201527f7400000000000000000000000000000000000000000000000000000000000000606482015260840161085e565b606780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517fa76ad0adbf45318f8633aa0210f711273d50fbb6fef76ed95bbae97082c75daa90600090a250565b6000610bfe878787878787606860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166110bf565b600054610100900460ff161580801561179f5750600054600160ff909116105b806117b95750303b1580156117b9575060005460ff166001145b611845576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161085e565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156118a357600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6118ab611e26565b6118b484611631565b6118bd836112ec565b6118c6826108fa565b6118cf8561157a565b801561193257600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b600061143a8585858561194e8680838561272b565b60685473ffffffffffffffffffffffffffffffffffffffff166107aa565b60655460609061143a9060039063ffffffff167f00000000000000000000000000000000000000000000000000000000000000003389898989611ec5565b600073ffffffffffffffffffffffffffffffffffffffff82166119e35760685473ffffffffffffffffffffffffffffffffffffffff1691505b60006119f18989898961196c565b80516020820120606681905560658054929350909160019190600090611a1e90849063ffffffff1661278e565b92506101000a81548163ffffffff021916908363ffffffff160217905550888a63ffffffff163373ffffffffffffffffffffffffffffffffffffffff167f769f711d20c679153d382254f59892613b58a97cc876b249134ac25c80f9c81485604051611a8a91906122e1565b60405180910390a460405181907f788dbc1b7152732178210e7f4d9d010ef016f9eafbe66786bd7169f56e0c353a90600090a26069546040517faaccd23000000000000000000000000000000000000000000000000000000000815260009173ffffffffffffffffffffffffffffffffffffffff169063aaccd23090611b18908a908a9088906004016126d9565b602060405180830381865afa158015611b35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b5991906126ff565b905080341015611b665750345b6069546040517f086011b900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063086011b9908390611bc2908b908b9089906004016126d9565b6000604051808303818588803b158015611bdb57600080fd5b505af1158015611bef573d6000803e3d6000fd5b50505050508473ffffffffffffffffffffffffffffffffffffffff1663086011b98234611c1c91906127b2565b8989876040518563ffffffff1660e01b8152600401611c3d939291906126d9565b6000604051808303818588803b158015611c5657600080fd5b505af1158015611c6a573d6000803e3d6000fd5b50949e9d5050505050505050505050505050565b60335473ffffffffffffffffffffffffffffffffffffffff163314610c1b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161085e565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000611d85600182848661272b565b611d8e916127c5565b60f81c90505b92915050565b6000611daa602d6029848661272b565b611db39161280d565b60e01c9392505050565b805160209091012090565b6000611dda611dd78484611f03565b90565b9392505050565b6000611df160296009848661272b565b611dda91612853565b6000611daa60096005848661272b565b366000611e1a83604d818761272b565b915091505b9250929050565b600054610100900460ff16611ebd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161085e565b610c1b611f13565b60608888888888888888604051602001611ee698979695949392919061288f565b604051602081830303815290604052905098975050505050505050565b6000611df1604d602d848661272b565b600054610100900460ff16611faa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161085e565b610c1b33611cff565b600060208284031215611fc557600080fd5b5035919050565b803563ffffffff81168114611fe057600080fd5b919050565b60008083601f840112611ff757600080fd5b50813567ffffffffffffffff81111561200f57600080fd5b602083019150836020828501011115611e1f57600080fd5b73ffffffffffffffffffffffffffffffffffffffff8116811461162e57600080fd5b600080600080600080600060a0888a03121561206457600080fd5b61206d88611fcc565b965060208801359550604088013567ffffffffffffffff8082111561209157600080fd5b61209d8b838c01611fe5565b909750955060608a01359150808211156120b657600080fd5b506120c38a828b01611fe5565b90945092505060808801356120d781612027565b8091505092959891949750929550565b6000602082840312156120f957600080fd5b8135611dda81612027565b6000806020838503121561211757600080fd5b823567ffffffffffffffff81111561212e57600080fd5b61213a85828601611fe5565b90969095509350505050565b6000806000806000806080878903121561215f57600080fd5b61216887611fcc565b955060208701359450604087013567ffffffffffffffff8082111561218c57600080fd5b6121988a838b01611fe5565b909650945060608901359150808211156121b157600080fd5b506121be89828a01611fe5565b979a9699509497509295939492505050565b600080604083850312156121e357600080fd5b6121ec83611fcc565b915060208301356121fc81612027565b809150509250929050565b6000806000806040858703121561221d57600080fd5b843567ffffffffffffffff8082111561223557600080fd5b61224188838901611fe5565b9096509450602087013591508082111561225a57600080fd5b5061226787828801611fe5565b95989497509550505050565b60005b8381101561228e578181015183820152602001612276565b50506000910152565b600081518084526122af816020860160208601612273565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000611dda6020830184612297565b6000806000806060858703121561230a57600080fd5b61231385611fcc565b935060208501359250604085013567ffffffffffffffff81111561233657600080fd5b61226787828801611fe5565b60006020828403121561235457600080fd5b611dda82611fcc565b6000806000806080858703121561237357600080fd5b843561237e81612027565b9350602085013561238e81612027565b9250604085013561239e81612027565b915060608501356123ae81612027565b939692955090935050565b600181811c908216806123cd57607f821691505b602082108103612406577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b6040815260006040820152606060208201526000611dda6060830184612297565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600063ffffffff8083168181036124755761247561242d565b6001019392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b601f8211156124f857600081815260208120601f850160051c810160208610156124d55750805b601f850160051c820191505b818110156124f4578281556001016124e1565b5050505b505050565b67ffffffffffffffff8311156125155761251561247f565b6125298361252383546123b9565b836124ae565b6000601f84116001811461257b57600085156125455750838201355b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600387901b1c1916600186901b178355611932565b6000838152602090207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0861690835b828110156125ca57868501358255602094850194600190920191016125aa565b5086821015612605577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88860031b161c19848701351681555b505060018560011b0183555050505050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b604081526000612674604083018688612617565b8281036020840152610bfe818587612617565b60006020828403121561269957600080fd5b81518015158114611dda57600080fd5b63ffffffff851681528360208201526060604082015260006126cf606083018486612617565b9695505050505050565b6040815260006126ed604083018587612617565b82810360208401526126cf8185612297565b60006020828403121561271157600080fd5b5051919050565b80820180821115611d9457611d9461242d565b6000808585111561273b57600080fd5b8386111561274857600080fd5b5050820193919092039150565b60008251612767818460208701612273565b9190910192915050565b60006020828403121561278357600080fd5b8151611dda81612027565b63ffffffff8181168382160190808211156127ab576127ab61242d565b5092915050565b81810381811115611d9457611d9461242d565b7fff0000000000000000000000000000000000000000000000000000000000000081358181169160018510156128055780818660010360031b1b83161692505b505092915050565b7fffffffff0000000000000000000000000000000000000000000000000000000081358181169160048510156128055760049490940360031b84901b1690921692915050565b80356020831015611d94577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b7fff000000000000000000000000000000000000000000000000000000000000008960f81b16815260007fffffffff00000000000000000000000000000000000000000000000000000000808a60e01b166001840152808960e01b166005840152876009840152808760e01b1660298401525084602d8301528284604d8401375060009101604d0190815297965050505050505056fea2646970667358221220c443eb50bff970ca1fa6f3273505843aaa848e5f0039c48fcdad51699ce90c2764736f6c6343000813003360806040526000805461ffff191661010617905534801561001f57600080fd5b506101f68061002f6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80636465e69f14610046578063951a291f1461006a578063f7e83aee146100b1575b600080fd5b6000546100539060ff1681565b60405160ff90911681526020015b60405180910390f35b6100af6100783660046100e2565b60008054911515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff909216919091179055565b005b6100d26100bf366004610154565b5050600054610100900460ff1692915050565b6040519015158152602001610061565b6000602082840312156100f457600080fd5b8135801515811461010457600080fd5b9392505050565b60008083601f84011261011d57600080fd5b50813567ffffffffffffffff81111561013557600080fd5b60208301915083602082850101111561014d57600080fd5b9250929050565b6000806000806040858703121561016a57600080fd5b843567ffffffffffffffff8082111561018257600080fd5b61018e8883890161010b565b909650945060208701359150808211156101a757600080fd5b506101b48782880161010b565b9598949750955050505056fea26469706673582212204da148e3ce90d103f9beabdf4cf9efc4884b0388e7ede5c027435423af1f91dd64736f6c6343000813003360806040526000805534801561001457600080fd5b50610362806100246000396000f3fe6080604052600436106100705760003560e01c8063ddca3f431161004e578063ddca3f43146100e3578063e445e7dd146100f9578063e5320bb914610115578063f667ee911461014857600080fd5b8063086011b91461007557806369fe0e2d1461008a578063aaccd230146100aa575b600080fd5b610088610083366004610265565b610178565b005b34801561009657600080fd5b506100886100a53660046102d1565b600055565b3480156100b657600080fd5b506100d06100c5366004610265565b505060005492915050565b6040519081526020015b60405180910390f35b3480156100ef57600080fd5b506100d060005481565b34801561010557600080fd5b50604051600081526020016100da565b34801561012157600080fd5b506101386101303660046102ea565b600192915050565b60405190151581526020016100da565b34801561015457600080fd5b506101386101633660046102d1565b60016020526000908152604090205460ff1681565b6101848484848461018a565b50505050565b60018060006101ce85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061021192505050565b8152602081019190915260400160002080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905550505050565b805160209091012090565b60008083601f84011261022e57600080fd5b50813567ffffffffffffffff81111561024657600080fd5b60208301915083602082850101111561025e57600080fd5b9250929050565b6000806000806040858703121561027b57600080fd5b843567ffffffffffffffff8082111561029357600080fd5b61029f8883890161021c565b909650945060208701359150808211156102b857600080fd5b506102c58782880161021c565b95989497509550505050565b6000602082840312156102e357600080fd5b5035919050565b600080602083850312156102fd57600080fd5b823567ffffffffffffffff81111561031457600080fd5b6103208582860161021c565b9096909550935050505056fea26469706673582212209af169dec748b5fceb5877829982a286dd848d5c28d734f4f998bf7cd479a32b64736f6c63430008130033";
776
776
  const isSuperArgs = (xs) => xs.length > 1;
777
777
  export class MockMailbox__factory extends ContractFactory {
778
778
  constructor(...args) {
@@ -12,7 +12,7 @@ export declare class ERC20Test__factory extends ContractFactory {
12
12
  }): TransactionRequest;
13
13
  attach(address: string): ERC20Test;
14
14
  connect(signer: Signer): ERC20Test__factory;
15
- static readonly bytecode = "0x60a06040523480156200001157600080fd5b506040516200110c3803806200110c833981016040819052620000349162000203565b838360036200004483826200031e565b5060046200005382826200031e565b50505060ff811660805262000069338362000073565b5050505062000412565b6001600160a01b038216620000ce5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620000e29190620003ea565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200016657600080fd5b81516001600160401b03808211156200018357620001836200013e565b604051601f8301601f19908116603f01168101908282118183101715620001ae57620001ae6200013e565b81604052838152602092508683858801011115620001cb57600080fd5b600091505b83821015620001ef5785820183015181830184015290820190620001d0565b600093810190920192909252949350505050565b600080600080608085870312156200021a57600080fd5b84516001600160401b03808211156200023257600080fd5b620002408883890162000154565b955060208701519150808211156200025757600080fd5b50620002668782880162000154565b93505060408501519150606085015160ff811681146200028557600080fd5b939692955090935050565b600181811c90821680620002a557607f821691505b602082108103620002c657634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200013957600081815260208120601f850160051c81016020861015620002f55750805b601f850160051c820191505b81811015620003165782815560010162000301565b505050505050565b81516001600160401b038111156200033a576200033a6200013e565b62000352816200034b845462000290565b84620002cc565b602080601f8311600181146200038a5760008415620003715750858301515b600019600386901b1c1916600185901b17855562000316565b600085815260208120601f198616915b82811015620003bb578886015182559484019460019091019084016200039a565b5085821015620003da5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200040c57634e487b7160e01b600052601160045260246000fd5b92915050565b608051610cd76200043560003960008181610157015261018e0152610cd76000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063449a52f81161008c578063a0712d6811610066578063a0712d6814610216578063a457c2d714610229578063a9059cbb1461023c578063dd62ed3e1461024f57600080fd5b8063449a52f8146101c357806370a08231146101d857806395d89b411461020e57600080fd5b806323b872dd116100c857806323b872dd14610142578063313ce5671461015557806332424aa31461018957806339509351146101b057600080fd5b806306fdde03146100ef578063095ea7b31461010d57806318160ddd14610130575b600080fd5b6100f7610295565b6040516101049190610aab565b60405180910390f35b61012061011b366004610b40565b610327565b6040519015158152602001610104565b6002545b604051908152602001610104565b610120610150366004610b6a565b610341565b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff9091168152602001610104565b6101777f000000000000000000000000000000000000000000000000000000000000000081565b6101206101be366004610b40565b610365565b6101d66101d1366004610b40565b6103b1565b005b6101346101e6366004610ba6565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100f76103bf565b6101d6610224366004610bc8565b6103ce565b610120610237366004610b40565b6103db565b61012061024a366004610b40565b6104b1565b61013461025d366004610be1565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b6060600380546102a490610c14565b80601f01602080910402602001604051908101604052809291908181526020018280546102d090610c14565b801561031d5780601f106102f25761010080835404028352916020019161031d565b820191906000526020600020905b81548152906001019060200180831161030057829003601f168201915b5050505050905090565b6000336103358185856104bf565b60019150505b92915050565b60003361034f858285610672565b61035a858585610749565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061033590829086906103ac908790610c67565b6104bf565b6103bb82826109b8565b5050565b6060600480546102a490610c14565b6103d833826109b8565b50565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156104a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61035a82868684036104bf565b600033610335818585610749565b73ffffffffffffffffffffffffffffffffffffffff8316610561576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff8216610604576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f7373000000000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146107435781811015610736576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161049b565b61074384848484036104bf565b50505050565b73ffffffffffffffffffffffffffffffffffffffff83166107ec576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f6472657373000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff821661088f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f6573730000000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205481811015610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e63650000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610743565b73ffffffffffffffffffffffffffffffffffffffff8216610a35576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161049b565b8060026000828254610a479190610c67565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208083528351808285015260005b81811015610ad857858101830151858201604001528201610abc565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b3b57600080fd5b919050565b60008060408385031215610b5357600080fd5b610b5c83610b17565b946020939093013593505050565b600080600060608486031215610b7f57600080fd5b610b8884610b17565b9250610b9660208501610b17565b9150604084013590509250925092565b600060208284031215610bb857600080fd5b610bc182610b17565b9392505050565b600060208284031215610bda57600080fd5b5035919050565b60008060408385031215610bf457600080fd5b610bfd83610b17565b9150610c0b60208401610b17565b90509250929050565b600181811c90821680610c2857607f821691505b602082108103610c61577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b8082018082111561033b577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fdfea2646970667358221220ce9ba86b2cc03dbea5fbe7f97a06ce94c03f1c1b50e7a5ef29ddabd8df5efb0464736f6c63430008130033";
15
+ static readonly bytecode = "0x60a06040523480156200001157600080fd5b506040516200110c3803806200110c833981016040819052620000349162000203565b838360036200004483826200031e565b5060046200005382826200031e565b50505060ff811660805262000069338362000073565b5050505062000412565b6001600160a01b038216620000ce5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620000e29190620003ea565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200016657600080fd5b81516001600160401b03808211156200018357620001836200013e565b604051601f8301601f19908116603f01168101908282118183101715620001ae57620001ae6200013e565b81604052838152602092508683858801011115620001cb57600080fd5b600091505b83821015620001ef5785820183015181830184015290820190620001d0565b600093810190920192909252949350505050565b600080600080608085870312156200021a57600080fd5b84516001600160401b03808211156200023257600080fd5b620002408883890162000154565b955060208701519150808211156200025757600080fd5b50620002668782880162000154565b93505060408501519150606085015160ff811681146200028557600080fd5b939692955090935050565b600181811c90821680620002a557607f821691505b602082108103620002c657634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200013957600081815260208120601f850160051c81016020861015620002f55750805b601f850160051c820191505b81811015620003165782815560010162000301565b505050505050565b81516001600160401b038111156200033a576200033a6200013e565b62000352816200034b845462000290565b84620002cc565b602080601f8311600181146200038a5760008415620003715750858301515b600019600386901b1c1916600185901b17855562000316565b600085815260208120601f198616915b82811015620003bb578886015182559484019460019091019084016200039a565b5085821015620003da5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200040c57634e487b7160e01b600052601160045260246000fd5b92915050565b608051610cd76200043560003960008181610157015261018e0152610cd76000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063449a52f81161008c578063a0712d6811610066578063a0712d6814610216578063a457c2d714610229578063a9059cbb1461023c578063dd62ed3e1461024f57600080fd5b8063449a52f8146101c357806370a08231146101d857806395d89b411461020e57600080fd5b806323b872dd116100c857806323b872dd14610142578063313ce5671461015557806332424aa31461018957806339509351146101b057600080fd5b806306fdde03146100ef578063095ea7b31461010d57806318160ddd14610130575b600080fd5b6100f7610295565b6040516101049190610aab565b60405180910390f35b61012061011b366004610b40565b610327565b6040519015158152602001610104565b6002545b604051908152602001610104565b610120610150366004610b6a565b610341565b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff9091168152602001610104565b6101777f000000000000000000000000000000000000000000000000000000000000000081565b6101206101be366004610b40565b610365565b6101d66101d1366004610b40565b6103b1565b005b6101346101e6366004610ba6565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100f76103bf565b6101d6610224366004610bc8565b6103ce565b610120610237366004610b40565b6103db565b61012061024a366004610b40565b6104b1565b61013461025d366004610be1565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b6060600380546102a490610c14565b80601f01602080910402602001604051908101604052809291908181526020018280546102d090610c14565b801561031d5780601f106102f25761010080835404028352916020019161031d565b820191906000526020600020905b81548152906001019060200180831161030057829003601f168201915b5050505050905090565b6000336103358185856104bf565b60019150505b92915050565b60003361034f858285610672565b61035a858585610749565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061033590829086906103ac908790610c67565b6104bf565b6103bb82826109b8565b5050565b6060600480546102a490610c14565b6103d833826109b8565b50565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156104a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61035a82868684036104bf565b600033610335818585610749565b73ffffffffffffffffffffffffffffffffffffffff8316610561576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff8216610604576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f7373000000000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146107435781811015610736576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161049b565b61074384848484036104bf565b50505050565b73ffffffffffffffffffffffffffffffffffffffff83166107ec576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f6472657373000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff821661088f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f6573730000000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205481811015610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e63650000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610743565b73ffffffffffffffffffffffffffffffffffffffff8216610a35576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161049b565b8060026000828254610a479190610c67565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208083528351808285015260005b81811015610ad857858101830151858201604001528201610abc565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b3b57600080fd5b919050565b60008060408385031215610b5357600080fd5b610b5c83610b17565b946020939093013593505050565b600080600060608486031215610b7f57600080fd5b610b8884610b17565b9250610b9660208501610b17565b9150604084013590509250925092565b600060208284031215610bb857600080fd5b610bc182610b17565b9392505050565b600060208284031215610bda57600080fd5b5035919050565b60008060408385031215610bf457600080fd5b610bfd83610b17565b9150610c0b60208401610b17565b90509250929050565b600181811c90821680610c2857607f821691505b602082108103610c61577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b8082018082111561033b577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fdfea264697066735822122001b0cb5a5ee42ea0275e441c2f869c91edecd2d4d27df674855e0ddc7d02220264736f6c63430008130033";
16
16
  static readonly abi: readonly [{
17
17
  readonly inputs: readonly [{
18
18
  readonly internalType: "string";
@@ -344,7 +344,7 @@ const _abi = [
344
344
  type: "function",
345
345
  },
346
346
  ];
347
- const _bytecode = "0x60a06040523480156200001157600080fd5b506040516200110c3803806200110c833981016040819052620000349162000203565b838360036200004483826200031e565b5060046200005382826200031e565b50505060ff811660805262000069338362000073565b5050505062000412565b6001600160a01b038216620000ce5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620000e29190620003ea565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200016657600080fd5b81516001600160401b03808211156200018357620001836200013e565b604051601f8301601f19908116603f01168101908282118183101715620001ae57620001ae6200013e565b81604052838152602092508683858801011115620001cb57600080fd5b600091505b83821015620001ef5785820183015181830184015290820190620001d0565b600093810190920192909252949350505050565b600080600080608085870312156200021a57600080fd5b84516001600160401b03808211156200023257600080fd5b620002408883890162000154565b955060208701519150808211156200025757600080fd5b50620002668782880162000154565b93505060408501519150606085015160ff811681146200028557600080fd5b939692955090935050565b600181811c90821680620002a557607f821691505b602082108103620002c657634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200013957600081815260208120601f850160051c81016020861015620002f55750805b601f850160051c820191505b81811015620003165782815560010162000301565b505050505050565b81516001600160401b038111156200033a576200033a6200013e565b62000352816200034b845462000290565b84620002cc565b602080601f8311600181146200038a5760008415620003715750858301515b600019600386901b1c1916600185901b17855562000316565b600085815260208120601f198616915b82811015620003bb578886015182559484019460019091019084016200039a565b5085821015620003da5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200040c57634e487b7160e01b600052601160045260246000fd5b92915050565b608051610cd76200043560003960008181610157015261018e0152610cd76000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063449a52f81161008c578063a0712d6811610066578063a0712d6814610216578063a457c2d714610229578063a9059cbb1461023c578063dd62ed3e1461024f57600080fd5b8063449a52f8146101c357806370a08231146101d857806395d89b411461020e57600080fd5b806323b872dd116100c857806323b872dd14610142578063313ce5671461015557806332424aa31461018957806339509351146101b057600080fd5b806306fdde03146100ef578063095ea7b31461010d57806318160ddd14610130575b600080fd5b6100f7610295565b6040516101049190610aab565b60405180910390f35b61012061011b366004610b40565b610327565b6040519015158152602001610104565b6002545b604051908152602001610104565b610120610150366004610b6a565b610341565b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff9091168152602001610104565b6101777f000000000000000000000000000000000000000000000000000000000000000081565b6101206101be366004610b40565b610365565b6101d66101d1366004610b40565b6103b1565b005b6101346101e6366004610ba6565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100f76103bf565b6101d6610224366004610bc8565b6103ce565b610120610237366004610b40565b6103db565b61012061024a366004610b40565b6104b1565b61013461025d366004610be1565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b6060600380546102a490610c14565b80601f01602080910402602001604051908101604052809291908181526020018280546102d090610c14565b801561031d5780601f106102f25761010080835404028352916020019161031d565b820191906000526020600020905b81548152906001019060200180831161030057829003601f168201915b5050505050905090565b6000336103358185856104bf565b60019150505b92915050565b60003361034f858285610672565b61035a858585610749565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061033590829086906103ac908790610c67565b6104bf565b6103bb82826109b8565b5050565b6060600480546102a490610c14565b6103d833826109b8565b50565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156104a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61035a82868684036104bf565b600033610335818585610749565b73ffffffffffffffffffffffffffffffffffffffff8316610561576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff8216610604576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f7373000000000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146107435781811015610736576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161049b565b61074384848484036104bf565b50505050565b73ffffffffffffffffffffffffffffffffffffffff83166107ec576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f6472657373000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff821661088f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f6573730000000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205481811015610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e63650000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610743565b73ffffffffffffffffffffffffffffffffffffffff8216610a35576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161049b565b8060026000828254610a479190610c67565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208083528351808285015260005b81811015610ad857858101830151858201604001528201610abc565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b3b57600080fd5b919050565b60008060408385031215610b5357600080fd5b610b5c83610b17565b946020939093013593505050565b600080600060608486031215610b7f57600080fd5b610b8884610b17565b9250610b9660208501610b17565b9150604084013590509250925092565b600060208284031215610bb857600080fd5b610bc182610b17565b9392505050565b600060208284031215610bda57600080fd5b5035919050565b60008060408385031215610bf457600080fd5b610bfd83610b17565b9150610c0b60208401610b17565b90509250929050565b600181811c90821680610c2857607f821691505b602082108103610c61577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b8082018082111561033b577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fdfea2646970667358221220ce9ba86b2cc03dbea5fbe7f97a06ce94c03f1c1b50e7a5ef29ddabd8df5efb0464736f6c63430008130033";
347
+ const _bytecode = "0x60a06040523480156200001157600080fd5b506040516200110c3803806200110c833981016040819052620000349162000203565b838360036200004483826200031e565b5060046200005382826200031e565b50505060ff811660805262000069338362000073565b5050505062000412565b6001600160a01b038216620000ce5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620000e29190620003ea565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200016657600080fd5b81516001600160401b03808211156200018357620001836200013e565b604051601f8301601f19908116603f01168101908282118183101715620001ae57620001ae6200013e565b81604052838152602092508683858801011115620001cb57600080fd5b600091505b83821015620001ef5785820183015181830184015290820190620001d0565b600093810190920192909252949350505050565b600080600080608085870312156200021a57600080fd5b84516001600160401b03808211156200023257600080fd5b620002408883890162000154565b955060208701519150808211156200025757600080fd5b50620002668782880162000154565b93505060408501519150606085015160ff811681146200028557600080fd5b939692955090935050565b600181811c90821680620002a557607f821691505b602082108103620002c657634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200013957600081815260208120601f850160051c81016020861015620002f55750805b601f850160051c820191505b81811015620003165782815560010162000301565b505050505050565b81516001600160401b038111156200033a576200033a6200013e565b62000352816200034b845462000290565b84620002cc565b602080601f8311600181146200038a5760008415620003715750858301515b600019600386901b1c1916600185901b17855562000316565b600085815260208120601f198616915b82811015620003bb578886015182559484019460019091019084016200039a565b5085821015620003da5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200040c57634e487b7160e01b600052601160045260246000fd5b92915050565b608051610cd76200043560003960008181610157015261018e0152610cd76000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063449a52f81161008c578063a0712d6811610066578063a0712d6814610216578063a457c2d714610229578063a9059cbb1461023c578063dd62ed3e1461024f57600080fd5b8063449a52f8146101c357806370a08231146101d857806395d89b411461020e57600080fd5b806323b872dd116100c857806323b872dd14610142578063313ce5671461015557806332424aa31461018957806339509351146101b057600080fd5b806306fdde03146100ef578063095ea7b31461010d57806318160ddd14610130575b600080fd5b6100f7610295565b6040516101049190610aab565b60405180910390f35b61012061011b366004610b40565b610327565b6040519015158152602001610104565b6002545b604051908152602001610104565b610120610150366004610b6a565b610341565b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff9091168152602001610104565b6101777f000000000000000000000000000000000000000000000000000000000000000081565b6101206101be366004610b40565b610365565b6101d66101d1366004610b40565b6103b1565b005b6101346101e6366004610ba6565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100f76103bf565b6101d6610224366004610bc8565b6103ce565b610120610237366004610b40565b6103db565b61012061024a366004610b40565b6104b1565b61013461025d366004610be1565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b6060600380546102a490610c14565b80601f01602080910402602001604051908101604052809291908181526020018280546102d090610c14565b801561031d5780601f106102f25761010080835404028352916020019161031d565b820191906000526020600020905b81548152906001019060200180831161030057829003601f168201915b5050505050905090565b6000336103358185856104bf565b60019150505b92915050565b60003361034f858285610672565b61035a858585610749565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061033590829086906103ac908790610c67565b6104bf565b6103bb82826109b8565b5050565b6060600480546102a490610c14565b6103d833826109b8565b50565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156104a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61035a82868684036104bf565b600033610335818585610749565b73ffffffffffffffffffffffffffffffffffffffff8316610561576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff8216610604576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f7373000000000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146107435781811015610736576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161049b565b61074384848484036104bf565b50505050565b73ffffffffffffffffffffffffffffffffffffffff83166107ec576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f6472657373000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff821661088f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f6573730000000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205481811015610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e63650000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610743565b73ffffffffffffffffffffffffffffffffffffffff8216610a35576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161049b565b8060026000828254610a479190610c67565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208083528351808285015260005b81811015610ad857858101830151858201604001528201610abc565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b3b57600080fd5b919050565b60008060408385031215610b5357600080fd5b610b5c83610b17565b946020939093013593505050565b600080600060608486031215610b7f57600080fd5b610b8884610b17565b9250610b9660208501610b17565b9150604084013590509250925092565b600060208284031215610bb857600080fd5b610bc182610b17565b9392505050565b600060208284031215610bda57600080fd5b5035919050565b60008060408385031215610bf457600080fd5b610bfd83610b17565b9150610c0b60208401610b17565b90509250929050565b600181811c90821680610c2857607f821691505b602082108103610c61577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b8082018082111561033b577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fdfea264697066735822122001b0cb5a5ee42ea0275e441c2f869c91edecd2d4d27df674855e0ddc7d02220264736f6c63430008130033";
348
348
  const isSuperArgs = (xs) => xs.length > 1;
349
349
  export class ERC20Test__factory extends ContractFactory {
350
350
  constructor(...args) {
@@ -12,7 +12,7 @@ export declare class FiatTokenTest__factory extends ContractFactory {
12
12
  }): TransactionRequest;
13
13
  attach(address: string): FiatTokenTest;
14
14
  connect(signer: Signer): FiatTokenTest__factory;
15
- static readonly bytecode = "0x60a06040523480156200001157600080fd5b506040516200132c3803806200132c83398101604081905262000034916200020b565b838383838383600362000048838262000326565b50600462000057828262000326565b50505060ff81166080526200006d33836200007b565b50505050505050506200041a565b6001600160a01b038216620000d65760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620000ea9190620003f2565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200016e57600080fd5b81516001600160401b03808211156200018b576200018b62000146565b604051601f8301601f19908116603f01168101908282118183101715620001b657620001b662000146565b81604052838152602092508683858801011115620001d357600080fd5b600091505b83821015620001f75785820183015181830184015290820190620001d8565b600093810190920192909252949350505050565b600080600080608085870312156200022257600080fd5b84516001600160401b03808211156200023a57600080fd5b62000248888389016200015c565b955060208701519150808211156200025f57600080fd5b506200026e878288016200015c565b93505060408501519150606085015160ff811681146200028d57600080fd5b939692955090935050565b600181811c90821680620002ad57607f821691505b602082108103620002ce57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200014157600081815260208120601f850160051c81016020861015620002fd5750805b601f850160051c820191505b818110156200031e5782815560010162000309565b505050505050565b81516001600160401b0381111562000342576200034262000146565b6200035a8162000353845462000298565b84620002d4565b602080601f831160018114620003925760008415620003795750858301515b600019600386901b1c1916600185901b1785556200031e565b600085815260208120601f198616915b82811015620003c357888601518255948401946001909101908401620003a2565b5085821015620003e25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200041457634e487b7160e01b600052601160045260246000fd5b92915050565b608051610eef6200043d6000396000818161016d01526101a40152610eef6000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c806342966c6811610097578063a0712d6811610066578063a0712d6814610252578063a457c2d714610265578063a9059cbb14610278578063dd62ed3e1461028b57600080fd5b806342966c68146101ec578063449a52f81461020157806370a082311461021457806395d89b411461024a57600080fd5b8063313ce567116100d3578063313ce5671461016b57806332424aa31461019f57806339509351146101c657806340c10f19146101d957600080fd5b806306fdde0314610105578063095ea7b31461012357806318160ddd1461014657806323b872dd14610158575b600080fd5b61010d6102d1565b60405161011a9190610cc3565b60405180910390f35b610136610131366004610d58565b610363565b604051901515815260200161011a565b6002545b60405190815260200161011a565b610136610166366004610d82565b61037d565b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff909116815260200161011a565b61018d7f000000000000000000000000000000000000000000000000000000000000000081565b6101366101d4366004610d58565b6103a1565b6101366101e7366004610d58565b6103ed565b6101ff6101fa366004610dbe565b610402565b005b6101ff61020f366004610d58565b61040f565b61014a610222366004610dd7565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b61010d61041d565b6101ff610260366004610dbe565b61042c565b610136610273366004610d58565b610436565b610136610286366004610d58565b61050c565b61014a610299366004610df9565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b6060600380546102e090610e2c565b80601f016020809104026020016040519081016040528092919081815260200182805461030c90610e2c565b80156103595780601f1061032e57610100808354040283529160200191610359565b820191906000526020600020905b81548152906001019060200180831161033c57829003601f168201915b5050505050905090565b60003361037181858561051a565b60019150505b92915050565b60003361038b8582856106ce565b6103968585856107a5565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061037190829086906103e8908790610e7f565b61051a565b60006103f98383610a14565b50600192915050565b61040c3382610b07565b50565b6104198282610a14565b5050565b6060600480546102e090610e2c565b61040c3382610a14565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156104ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b610396828686840361051a565b6000336103718185856107a5565b73ffffffffffffffffffffffffffffffffffffffff83166105bc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff821661065f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461079f5781811015610792576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016104f6565b61079f848484840361051a565b50505050565b73ffffffffffffffffffffffffffffffffffffffff8316610848576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff82166108eb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260208190526040902054818110156109a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361079f565b73ffffffffffffffffffffffffffffffffffffffff8216610a91576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016104f6565b8060026000828254610aa39190610e7f565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8216610baa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff821660009081526020819052604090205481811015610c60576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff83166000818152602081815260408083208686039055600280548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91016106c1565b600060208083528351808285015260005b81811015610cf057858101830151858201604001528201610cd4565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610d5357600080fd5b919050565b60008060408385031215610d6b57600080fd5b610d7483610d2f565b946020939093013593505050565b600080600060608486031215610d9757600080fd5b610da084610d2f565b9250610dae60208501610d2f565b9150604084013590509250925092565b600060208284031215610dd057600080fd5b5035919050565b600060208284031215610de957600080fd5b610df282610d2f565b9392505050565b60008060408385031215610e0c57600080fd5b610e1583610d2f565b9150610e2360208401610d2f565b90509250929050565b600181811c90821680610e4057607f821691505b602082108103610e79577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b80820180821115610377577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fdfea2646970667358221220780d0201d1093aa230b2f46341538c87df4db159ab6916c34b61d9d34dddfabd64736f6c63430008130033";
15
+ static readonly bytecode = "0x60a06040523480156200001157600080fd5b506040516200132c3803806200132c83398101604081905262000034916200020b565b838383838383600362000048838262000326565b50600462000057828262000326565b50505060ff81166080526200006d33836200007b565b50505050505050506200041a565b6001600160a01b038216620000d65760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620000ea9190620003f2565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200016e57600080fd5b81516001600160401b03808211156200018b576200018b62000146565b604051601f8301601f19908116603f01168101908282118183101715620001b657620001b662000146565b81604052838152602092508683858801011115620001d357600080fd5b600091505b83821015620001f75785820183015181830184015290820190620001d8565b600093810190920192909252949350505050565b600080600080608085870312156200022257600080fd5b84516001600160401b03808211156200023a57600080fd5b62000248888389016200015c565b955060208701519150808211156200025f57600080fd5b506200026e878288016200015c565b93505060408501519150606085015160ff811681146200028d57600080fd5b939692955090935050565b600181811c90821680620002ad57607f821691505b602082108103620002ce57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200014157600081815260208120601f850160051c81016020861015620002fd5750805b601f850160051c820191505b818110156200031e5782815560010162000309565b505050505050565b81516001600160401b0381111562000342576200034262000146565b6200035a8162000353845462000298565b84620002d4565b602080601f831160018114620003925760008415620003795750858301515b600019600386901b1c1916600185901b1785556200031e565b600085815260208120601f198616915b82811015620003c357888601518255948401946001909101908401620003a2565b5085821015620003e25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200041457634e487b7160e01b600052601160045260246000fd5b92915050565b608051610eef6200043d6000396000818161016d01526101a40152610eef6000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c806342966c6811610097578063a0712d6811610066578063a0712d6814610252578063a457c2d714610265578063a9059cbb14610278578063dd62ed3e1461028b57600080fd5b806342966c68146101ec578063449a52f81461020157806370a082311461021457806395d89b411461024a57600080fd5b8063313ce567116100d3578063313ce5671461016b57806332424aa31461019f57806339509351146101c657806340c10f19146101d957600080fd5b806306fdde0314610105578063095ea7b31461012357806318160ddd1461014657806323b872dd14610158575b600080fd5b61010d6102d1565b60405161011a9190610cc3565b60405180910390f35b610136610131366004610d58565b610363565b604051901515815260200161011a565b6002545b60405190815260200161011a565b610136610166366004610d82565b61037d565b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff909116815260200161011a565b61018d7f000000000000000000000000000000000000000000000000000000000000000081565b6101366101d4366004610d58565b6103a1565b6101366101e7366004610d58565b6103ed565b6101ff6101fa366004610dbe565b610402565b005b6101ff61020f366004610d58565b61040f565b61014a610222366004610dd7565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b61010d61041d565b6101ff610260366004610dbe565b61042c565b610136610273366004610d58565b610436565b610136610286366004610d58565b61050c565b61014a610299366004610df9565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b6060600380546102e090610e2c565b80601f016020809104026020016040519081016040528092919081815260200182805461030c90610e2c565b80156103595780601f1061032e57610100808354040283529160200191610359565b820191906000526020600020905b81548152906001019060200180831161033c57829003601f168201915b5050505050905090565b60003361037181858561051a565b60019150505b92915050565b60003361038b8582856106ce565b6103968585856107a5565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061037190829086906103e8908790610e7f565b61051a565b60006103f98383610a14565b50600192915050565b61040c3382610b07565b50565b6104198282610a14565b5050565b6060600480546102e090610e2c565b61040c3382610a14565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156104ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b610396828686840361051a565b6000336103718185856107a5565b73ffffffffffffffffffffffffffffffffffffffff83166105bc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff821661065f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461079f5781811015610792576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016104f6565b61079f848484840361051a565b50505050565b73ffffffffffffffffffffffffffffffffffffffff8316610848576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff82166108eb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260208190526040902054818110156109a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361079f565b73ffffffffffffffffffffffffffffffffffffffff8216610a91576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016104f6565b8060026000828254610aa39190610e7f565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8216610baa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff821660009081526020819052604090205481811015610c60576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff83166000818152602081815260408083208686039055600280548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91016106c1565b600060208083528351808285015260005b81811015610cf057858101830151858201604001528201610cd4565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610d5357600080fd5b919050565b60008060408385031215610d6b57600080fd5b610d7483610d2f565b946020939093013593505050565b600080600060608486031215610d9757600080fd5b610da084610d2f565b9250610dae60208501610d2f565b9150604084013590509250925092565b600060208284031215610dd057600080fd5b5035919050565b600060208284031215610de957600080fd5b610df282610d2f565b9392505050565b60008060408385031215610e0c57600080fd5b610e1583610d2f565b9150610e2360208401610d2f565b90509250929050565b600181811c90821680610e4057607f821691505b602082108103610e79577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b80820180821115610377577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fdfea264697066735822122095e42543587a537d1c8a53cc69a94678717a4eac1cde55a03d231b7b8d878fac64736f6c63430008130033";
16
16
  static readonly abi: readonly [{
17
17
  readonly inputs: readonly [{
18
18
  readonly internalType: "string";
@@ -381,7 +381,7 @@ const _abi = [
381
381
  type: "function",
382
382
  },
383
383
  ];
384
- const _bytecode = "0x60a06040523480156200001157600080fd5b506040516200132c3803806200132c83398101604081905262000034916200020b565b838383838383600362000048838262000326565b50600462000057828262000326565b50505060ff81166080526200006d33836200007b565b50505050505050506200041a565b6001600160a01b038216620000d65760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620000ea9190620003f2565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200016e57600080fd5b81516001600160401b03808211156200018b576200018b62000146565b604051601f8301601f19908116603f01168101908282118183101715620001b657620001b662000146565b81604052838152602092508683858801011115620001d357600080fd5b600091505b83821015620001f75785820183015181830184015290820190620001d8565b600093810190920192909252949350505050565b600080600080608085870312156200022257600080fd5b84516001600160401b03808211156200023a57600080fd5b62000248888389016200015c565b955060208701519150808211156200025f57600080fd5b506200026e878288016200015c565b93505060408501519150606085015160ff811681146200028d57600080fd5b939692955090935050565b600181811c90821680620002ad57607f821691505b602082108103620002ce57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200014157600081815260208120601f850160051c81016020861015620002fd5750805b601f850160051c820191505b818110156200031e5782815560010162000309565b505050505050565b81516001600160401b0381111562000342576200034262000146565b6200035a8162000353845462000298565b84620002d4565b602080601f831160018114620003925760008415620003795750858301515b600019600386901b1c1916600185901b1785556200031e565b600085815260208120601f198616915b82811015620003c357888601518255948401946001909101908401620003a2565b5085821015620003e25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200041457634e487b7160e01b600052601160045260246000fd5b92915050565b608051610eef6200043d6000396000818161016d01526101a40152610eef6000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c806342966c6811610097578063a0712d6811610066578063a0712d6814610252578063a457c2d714610265578063a9059cbb14610278578063dd62ed3e1461028b57600080fd5b806342966c68146101ec578063449a52f81461020157806370a082311461021457806395d89b411461024a57600080fd5b8063313ce567116100d3578063313ce5671461016b57806332424aa31461019f57806339509351146101c657806340c10f19146101d957600080fd5b806306fdde0314610105578063095ea7b31461012357806318160ddd1461014657806323b872dd14610158575b600080fd5b61010d6102d1565b60405161011a9190610cc3565b60405180910390f35b610136610131366004610d58565b610363565b604051901515815260200161011a565b6002545b60405190815260200161011a565b610136610166366004610d82565b61037d565b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff909116815260200161011a565b61018d7f000000000000000000000000000000000000000000000000000000000000000081565b6101366101d4366004610d58565b6103a1565b6101366101e7366004610d58565b6103ed565b6101ff6101fa366004610dbe565b610402565b005b6101ff61020f366004610d58565b61040f565b61014a610222366004610dd7565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b61010d61041d565b6101ff610260366004610dbe565b61042c565b610136610273366004610d58565b610436565b610136610286366004610d58565b61050c565b61014a610299366004610df9565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b6060600380546102e090610e2c565b80601f016020809104026020016040519081016040528092919081815260200182805461030c90610e2c565b80156103595780601f1061032e57610100808354040283529160200191610359565b820191906000526020600020905b81548152906001019060200180831161033c57829003601f168201915b5050505050905090565b60003361037181858561051a565b60019150505b92915050565b60003361038b8582856106ce565b6103968585856107a5565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061037190829086906103e8908790610e7f565b61051a565b60006103f98383610a14565b50600192915050565b61040c3382610b07565b50565b6104198282610a14565b5050565b6060600480546102e090610e2c565b61040c3382610a14565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156104ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b610396828686840361051a565b6000336103718185856107a5565b73ffffffffffffffffffffffffffffffffffffffff83166105bc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff821661065f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461079f5781811015610792576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016104f6565b61079f848484840361051a565b50505050565b73ffffffffffffffffffffffffffffffffffffffff8316610848576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff82166108eb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260208190526040902054818110156109a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361079f565b73ffffffffffffffffffffffffffffffffffffffff8216610a91576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016104f6565b8060026000828254610aa39190610e7f565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8216610baa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff821660009081526020819052604090205481811015610c60576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff83166000818152602081815260408083208686039055600280548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91016106c1565b600060208083528351808285015260005b81811015610cf057858101830151858201604001528201610cd4565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610d5357600080fd5b919050565b60008060408385031215610d6b57600080fd5b610d7483610d2f565b946020939093013593505050565b600080600060608486031215610d9757600080fd5b610da084610d2f565b9250610dae60208501610d2f565b9150604084013590509250925092565b600060208284031215610dd057600080fd5b5035919050565b600060208284031215610de957600080fd5b610df282610d2f565b9392505050565b60008060408385031215610e0c57600080fd5b610e1583610d2f565b9150610e2360208401610d2f565b90509250929050565b600181811c90821680610e4057607f821691505b602082108103610e79577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b80820180821115610377577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fdfea2646970667358221220780d0201d1093aa230b2f46341538c87df4db159ab6916c34b61d9d34dddfabd64736f6c63430008130033";
384
+ const _bytecode = "0x60a06040523480156200001157600080fd5b506040516200132c3803806200132c83398101604081905262000034916200020b565b838383838383600362000048838262000326565b50600462000057828262000326565b50505060ff81166080526200006d33836200007b565b50505050505050506200041a565b6001600160a01b038216620000d65760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620000ea9190620003f2565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200016e57600080fd5b81516001600160401b03808211156200018b576200018b62000146565b604051601f8301601f19908116603f01168101908282118183101715620001b657620001b662000146565b81604052838152602092508683858801011115620001d357600080fd5b600091505b83821015620001f75785820183015181830184015290820190620001d8565b600093810190920192909252949350505050565b600080600080608085870312156200022257600080fd5b84516001600160401b03808211156200023a57600080fd5b62000248888389016200015c565b955060208701519150808211156200025f57600080fd5b506200026e878288016200015c565b93505060408501519150606085015160ff811681146200028d57600080fd5b939692955090935050565b600181811c90821680620002ad57607f821691505b602082108103620002ce57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200014157600081815260208120601f850160051c81016020861015620002fd5750805b601f850160051c820191505b818110156200031e5782815560010162000309565b505050505050565b81516001600160401b0381111562000342576200034262000146565b6200035a8162000353845462000298565b84620002d4565b602080601f831160018114620003925760008415620003795750858301515b600019600386901b1c1916600185901b1785556200031e565b600085815260208120601f198616915b82811015620003c357888601518255948401946001909101908401620003a2565b5085821015620003e25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200041457634e487b7160e01b600052601160045260246000fd5b92915050565b608051610eef6200043d6000396000818161016d01526101a40152610eef6000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c806342966c6811610097578063a0712d6811610066578063a0712d6814610252578063a457c2d714610265578063a9059cbb14610278578063dd62ed3e1461028b57600080fd5b806342966c68146101ec578063449a52f81461020157806370a082311461021457806395d89b411461024a57600080fd5b8063313ce567116100d3578063313ce5671461016b57806332424aa31461019f57806339509351146101c657806340c10f19146101d957600080fd5b806306fdde0314610105578063095ea7b31461012357806318160ddd1461014657806323b872dd14610158575b600080fd5b61010d6102d1565b60405161011a9190610cc3565b60405180910390f35b610136610131366004610d58565b610363565b604051901515815260200161011a565b6002545b60405190815260200161011a565b610136610166366004610d82565b61037d565b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff909116815260200161011a565b61018d7f000000000000000000000000000000000000000000000000000000000000000081565b6101366101d4366004610d58565b6103a1565b6101366101e7366004610d58565b6103ed565b6101ff6101fa366004610dbe565b610402565b005b6101ff61020f366004610d58565b61040f565b61014a610222366004610dd7565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b61010d61041d565b6101ff610260366004610dbe565b61042c565b610136610273366004610d58565b610436565b610136610286366004610d58565b61050c565b61014a610299366004610df9565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b6060600380546102e090610e2c565b80601f016020809104026020016040519081016040528092919081815260200182805461030c90610e2c565b80156103595780601f1061032e57610100808354040283529160200191610359565b820191906000526020600020905b81548152906001019060200180831161033c57829003601f168201915b5050505050905090565b60003361037181858561051a565b60019150505b92915050565b60003361038b8582856106ce565b6103968585856107a5565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061037190829086906103e8908790610e7f565b61051a565b60006103f98383610a14565b50600192915050565b61040c3382610b07565b50565b6104198282610a14565b5050565b6060600480546102e090610e2c565b61040c3382610a14565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156104ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b610396828686840361051a565b6000336103718185856107a5565b73ffffffffffffffffffffffffffffffffffffffff83166105bc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff821661065f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461079f5781811015610792576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016104f6565b61079f848484840361051a565b50505050565b73ffffffffffffffffffffffffffffffffffffffff8316610848576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff82166108eb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260208190526040902054818110156109a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361079f565b73ffffffffffffffffffffffffffffffffffffffff8216610a91576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016104f6565b8060026000828254610aa39190610e7f565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8216610baa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff821660009081526020819052604090205481811015610c60576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016104f6565b73ffffffffffffffffffffffffffffffffffffffff83166000818152602081815260408083208686039055600280548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91016106c1565b600060208083528351808285015260005b81811015610cf057858101830151858201604001528201610cd4565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610d5357600080fd5b919050565b60008060408385031215610d6b57600080fd5b610d7483610d2f565b946020939093013593505050565b600080600060608486031215610d9757600080fd5b610da084610d2f565b9250610dae60208501610d2f565b9150604084013590509250925092565b600060208284031215610dd057600080fd5b5035919050565b600060208284031215610de957600080fd5b610df282610d2f565b9392505050565b60008060408385031215610e0c57600080fd5b610e1583610d2f565b9150610e2360208401610d2f565b90509250929050565b600181811c90821680610e4057607f821691505b602082108103610e79577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b80820180821115610377577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fdfea264697066735822122095e42543587a537d1c8a53cc69a94678717a4eac1cde55a03d231b7b8d878fac64736f6c63430008130033";
385
385
  const isSuperArgs = (xs) => xs.length > 1;
386
386
  export class FiatTokenTest__factory extends ContractFactory {
387
387
  constructor(...args) {
@@ -12,7 +12,7 @@ export declare class XERC20LockboxTest__factory extends ContractFactory {
12
12
  }): TransactionRequest;
13
13
  attach(address: string): XERC20LockboxTest;
14
14
  connect(signer: Signer): XERC20LockboxTest__factory;
15
- static readonly bytecode = "0x60c060405234801561001057600080fd5b5060405162002e1b38038062002e1b83398101604081905261003191610222565b60008484848460405161004390610145565b61005094939291906102d3565b604051809103906000f08015801561006c573d6000803e3d6000fd5b5060405163a9059cbb60e01b8152336004820152602481018590529091506001600160a01b0382169063a9059cbb906044016020604051808303816000875af11580156100bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100e19190610313565b506001600160a01b03811660a05260405185908590600090859061010490610153565b61011194939291906102d3565b604051809103906000f08015801561012d573d6000803e3d6000fd5b506001600160a01b03166080525061033c9350505050565b61110c80620008d483390190565b61143b80620019e083390190565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561019257818101518382015260200161017a565b50506000910152565b600082601f8301126101ac57600080fd5b81516001600160401b03808211156101c6576101c6610161565b604051601f8301601f19908116603f011681019082821181831017156101ee576101ee610161565b8160405283815286602085880101111561020757600080fd5b610218846020830160208901610177565b9695505050505050565b6000806000806080858703121561023857600080fd5b84516001600160401b038082111561024f57600080fd5b61025b8883890161019b565b9550602087015191508082111561027157600080fd5b5061027e8782880161019b565b93505060408501519150606085015160ff8116811461029c57600080fd5b939692955090935050565b600081518084526102bf816020860160208601610177565b601f01601f19169290920160200192915050565b6080815260006102e660808301876102a7565b82810360208401526102f881876102a7565b91505083604083015260ff8316606083015295945050505050565b60006020828403121561032557600080fd5b8151801515811461033557600080fd5b9392505050565b60805160a0516105576200037d600039600081816101590152818161028b015261034401526000818160dc015281816101d0015261041301526105576000f3fe6080604052600436106100705760003560e01c8063b20a0fb91161004e578063b20a0fb9146100ca578063b6b55f2514610127578063cc4aa20414610147578063ffaad6a51461017b57600080fd5b8063205c2878146100755780632e1a7d4d146100975780638ca41808146100b7575b600080fd5b34801561008157600080fd5b5061009561009036600461046b565b61019b565b005b3480156100a357600080fd5b506100956100b2366004610495565b6102ee565b6100956100c53660046104ae565b6102fb565b3480156100d657600080fd5b506100fe7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b34801561013357600080fd5b50610095610142366004610495565b610303565b34801561015357600080fd5b506100fe7f000000000000000000000000000000000000000000000000000000000000000081565b34801561018757600080fd5b5061009561019636600461046b565b610309565b6040517f9dc29fac000000000000000000000000000000000000000000000000000000008152336004820152602481018290527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690639dc29fac90604401600060405180830381600087803b15801561022957600080fd5b505af115801561023d573d6000803e3d6000fd5b50506040517f449a52f800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152602482018590527f000000000000000000000000000000000000000000000000000000000000000016925063449a52f891506044015b600060405180830381600087803b1580156102d257600080fd5b505af11580156102e6573d6000803e3d6000fd5b505050505050565b6102f8338261019b565b50565b6102f86104d0565b6102f833825b6040517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018290527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16906323b872dd906064016020604051808303816000875af11580156103a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103c691906104ff565b506040517f40c10f1900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152602482018390527f000000000000000000000000000000000000000000000000000000000000000016906340c10f19906044016102b8565b803573ffffffffffffffffffffffffffffffffffffffff8116811461046657600080fd5b919050565b6000806040838503121561047e57600080fd5b61048783610442565b946020939093013593505050565b6000602082840312156104a757600080fd5b5035919050565b6000602082840312156104c057600080fd5b6104c982610442565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b60006020828403121561051157600080fd5b815180151581146104c957600080fdfea2646970667358221220bbfaeeca3848c7ba787fccd140f4ecb0a1a8143a8c18a5475807501769ca364764736f6c6343000813003360a06040523480156200001157600080fd5b506040516200110c3803806200110c833981016040819052620000349162000203565b838360036200004483826200031e565b5060046200005382826200031e565b50505060ff811660805262000069338362000073565b5050505062000412565b6001600160a01b038216620000ce5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620000e29190620003ea565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200016657600080fd5b81516001600160401b03808211156200018357620001836200013e565b604051601f8301601f19908116603f01168101908282118183101715620001ae57620001ae6200013e565b81604052838152602092508683858801011115620001cb57600080fd5b600091505b83821015620001ef5785820183015181830184015290820190620001d0565b600093810190920192909252949350505050565b600080600080608085870312156200021a57600080fd5b84516001600160401b03808211156200023257600080fd5b620002408883890162000154565b955060208701519150808211156200025757600080fd5b50620002668782880162000154565b93505060408501519150606085015160ff811681146200028557600080fd5b939692955090935050565b600181811c90821680620002a557607f821691505b602082108103620002c657634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200013957600081815260208120601f850160051c81016020861015620002f55750805b601f850160051c820191505b81811015620003165782815560010162000301565b505050505050565b81516001600160401b038111156200033a576200033a6200013e565b62000352816200034b845462000290565b84620002cc565b602080601f8311600181146200038a5760008415620003715750858301515b600019600386901b1c1916600185901b17855562000316565b600085815260208120601f198616915b82811015620003bb578886015182559484019460019091019084016200039a565b5085821015620003da5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200040c57634e487b7160e01b600052601160045260246000fd5b92915050565b608051610cd76200043560003960008181610157015261018e0152610cd76000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063449a52f81161008c578063a0712d6811610066578063a0712d6814610216578063a457c2d714610229578063a9059cbb1461023c578063dd62ed3e1461024f57600080fd5b8063449a52f8146101c357806370a08231146101d857806395d89b411461020e57600080fd5b806323b872dd116100c857806323b872dd14610142578063313ce5671461015557806332424aa31461018957806339509351146101b057600080fd5b806306fdde03146100ef578063095ea7b31461010d57806318160ddd14610130575b600080fd5b6100f7610295565b6040516101049190610aab565b60405180910390f35b61012061011b366004610b40565b610327565b6040519015158152602001610104565b6002545b604051908152602001610104565b610120610150366004610b6a565b610341565b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff9091168152602001610104565b6101777f000000000000000000000000000000000000000000000000000000000000000081565b6101206101be366004610b40565b610365565b6101d66101d1366004610b40565b6103b1565b005b6101346101e6366004610ba6565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100f76103bf565b6101d6610224366004610bc8565b6103ce565b610120610237366004610b40565b6103db565b61012061024a366004610b40565b6104b1565b61013461025d366004610be1565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b6060600380546102a490610c14565b80601f01602080910402602001604051908101604052809291908181526020018280546102d090610c14565b801561031d5780601f106102f25761010080835404028352916020019161031d565b820191906000526020600020905b81548152906001019060200180831161030057829003601f168201915b5050505050905090565b6000336103358185856104bf565b60019150505b92915050565b60003361034f858285610672565b61035a858585610749565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061033590829086906103ac908790610c67565b6104bf565b6103bb82826109b8565b5050565b6060600480546102a490610c14565b6103d833826109b8565b50565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156104a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61035a82868684036104bf565b600033610335818585610749565b73ffffffffffffffffffffffffffffffffffffffff8316610561576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff8216610604576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f7373000000000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146107435781811015610736576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161049b565b61074384848484036104bf565b50505050565b73ffffffffffffffffffffffffffffffffffffffff83166107ec576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f6472657373000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff821661088f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f6573730000000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205481811015610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e63650000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610743565b73ffffffffffffffffffffffffffffffffffffffff8216610a35576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161049b565b8060026000828254610a479190610c67565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208083528351808285015260005b81811015610ad857858101830151858201604001528201610abc565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b3b57600080fd5b919050565b60008060408385031215610b5357600080fd5b610b5c83610b17565b946020939093013593505050565b600080600060608486031215610b7f57600080fd5b610b8884610b17565b9250610b9660208501610b17565b9150604084013590509250925092565b600060208284031215610bb857600080fd5b610bc182610b17565b9392505050565b600060208284031215610bda57600080fd5b5035919050565b60008060408385031215610bf457600080fd5b610bfd83610b17565b9150610c0b60208401610b17565b90509250929050565b600181811c90821680610c2857607f821691505b602082108103610c61577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b8082018082111561033b577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fdfea2646970667358221220ce9ba86b2cc03dbea5fbe7f97a06ce94c03f1c1b50e7a5ef29ddabd8df5efb0464736f6c6343000813003360a06040523480156200001157600080fd5b506040516200143b3803806200143b83398101604081905262000034916200020b565b838383838383600362000048838262000326565b50600462000057828262000326565b50505060ff81166080526200006d33836200007b565b50505050505050506200041a565b6001600160a01b038216620000d65760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620000ea9190620003f2565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200016e57600080fd5b81516001600160401b03808211156200018b576200018b62000146565b604051601f8301601f19908116603f01168101908282118183101715620001b657620001b662000146565b81604052838152602092508683858801011115620001d357600080fd5b600091505b83821015620001f75785820183015181830184015290820190620001d8565b600093810190920192909252949350505050565b600080600080608085870312156200022257600080fd5b84516001600160401b03808211156200023a57600080fd5b62000248888389016200015c565b955060208701519150808211156200025f57600080fd5b506200026e878288016200015c565b93505060408501519150606085015160ff811681146200028d57600080fd5b939692955090935050565b600181811c90821680620002ad57607f821691505b602082108103620002ce57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200014157600081815260208120601f850160051c81016020861015620002fd5750805b601f850160051c820191505b818110156200031e5782815560010162000309565b505050505050565b81516001600160401b0381111562000342576200034262000146565b6200035a8162000353845462000298565b84620002d4565b602080601f831160018114620003925760008415620003795750858301515b600019600386901b1c1916600185901b1785556200031e565b600085815260208120601f198616915b82811015620003c357888601518255948401946001909101908401620003a2565b5085821015620003e25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200041457634e487b7160e01b600052601160045260246000fd5b92915050565b608051610ffe6200043d600039600081816101d901526102100152610ffe6000f3fe608060405234801561001057600080fd5b506004361061016c5760003560e01c806370a08231116100cd578063a0712d6811610081578063a457c2d711610066578063a457c2d714610313578063a9059cbb14610326578063dd62ed3e1461033957600080fd5b8063a0712d68146102ed578063a08d56541461030057600080fd5b806395d89b41116100b257806395d89b41146102d2578063998955d31461025a5780639dc29fac146102da57600080fd5b806370a082311461028d5780638da5cb5b146102c357600080fd5b806332424aa31161012457806340c10f191161010957806340c10f1914610245578063449a52f814610245578063651fd2681461025a57600080fd5b806332424aa31461020b578063395093511461023257600080fd5b806318160ddd1161015557806318160ddd146101b257806323b872dd146101c4578063313ce567146101d757600080fd5b806306fdde0314610171578063095ea7b31461018f575b600080fd5b61017961037f565b6040516101869190610d70565b60405180910390f35b6101a261019d366004610e05565b610411565b6040519015158152602001610186565b6002545b604051908152602001610186565b6101a26101d2366004610e2f565b61042b565b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff9091168152602001610186565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6101a2610240366004610e05565b61044f565b610258610253366004610e05565b61049b565b005b6101b6610268366004610e6b565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90565b6101b661029b366004610e6b565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b60405160008152602001610186565b6101796104a9565b6102586102e8366004610e05565b6104b8565b6102586102fb366004610e8d565b6104c2565b61025861030e366004610ea6565b6104cf565b6101a2610321366004610e05565b6104dc565b6101a2610334366004610e05565b6105b2565b6101b6610347366004610ed9565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b60606003805461038e90610f0c565b80601f01602080910402602001604051908101604052809291908181526020018280546103ba90610f0c565b80156104075780601f106103dc57610100808354040283529160200191610407565b820191906000526020600020905b8154815290600101906020018083116103ea57829003601f168201915b5050505050905090565b60003361041f8185856105c0565b60019150505b92915050565b600033610439858285610773565b61044485858561084a565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061041f9082908690610496908790610f5f565b6105c0565b6104a58282610ab9565b5050565b60606004805461038e90610f0c565b6104a58282610bac565b6104cc3382610ab9565b50565b6104d7610f99565b505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156105a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61044482868684036105c0565b60003361041f81858561084a565b73ffffffffffffffffffffffffffffffffffffffff8316610662576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015260840161059c565b73ffffffffffffffffffffffffffffffffffffffff8216610705576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f7373000000000000000000000000000000000000000000000000000000000000606482015260840161059c565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146108445781811015610837576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161059c565b61084484848484036105c0565b50505050565b73ffffffffffffffffffffffffffffffffffffffff83166108ed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f6472657373000000000000000000000000000000000000000000000000000000606482015260840161059c565b73ffffffffffffffffffffffffffffffffffffffff8216610990576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f6573730000000000000000000000000000000000000000000000000000000000606482015260840161059c565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205481811015610a46576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e63650000000000000000000000000000000000000000000000000000606482015260840161059c565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610844565b73ffffffffffffffffffffffffffffffffffffffff8216610b36576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161059c565b8060026000828254610b489190610f5f565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8216610c4f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f7300000000000000000000000000000000000000000000000000000000000000606482015260840161059c565b73ffffffffffffffffffffffffffffffffffffffff821660009081526020819052604090205481811015610d05576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f6365000000000000000000000000000000000000000000000000000000000000606482015260840161059c565b73ffffffffffffffffffffffffffffffffffffffff83166000818152602081815260408083208686039055600280548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b600060208083528351808285015260005b81811015610d9d57858101830151858201604001528201610d81565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e0057600080fd5b919050565b60008060408385031215610e1857600080fd5b610e2183610ddc565b946020939093013593505050565b600080600060608486031215610e4457600080fd5b610e4d84610ddc565b9250610e5b60208501610ddc565b9150604084013590509250925092565b600060208284031215610e7d57600080fd5b610e8682610ddc565b9392505050565b600060208284031215610e9f57600080fd5b5035919050565b600080600060608486031215610ebb57600080fd5b610ec484610ddc565b95602085013595506040909401359392505050565b60008060408385031215610eec57600080fd5b610ef583610ddc565b9150610f0360208401610ddc565b90509250929050565b600181811c90821680610f2057607f821691505b602082108103610f59577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b80820180821115610425577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fdfea2646970667358221220bb873cf54f1602d5fcf7898090700e97ecd89625d563d4dc1e34dbbee345aecb64736f6c63430008130033";
15
+ static readonly bytecode = "0x60c060405234801561001057600080fd5b5060405162002e3538038062002e3583398101604081905261003191610222565b60008484848460405161004390610145565b61005094939291906102d3565b604051809103906000f08015801561006c573d6000803e3d6000fd5b5060405163a9059cbb60e01b8152336004820152602481018590529091506001600160a01b0382169063a9059cbb906044016020604051808303816000875af11580156100bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100e19190610313565b506001600160a01b03811660a05260405185908590600090859061010490610153565b61011194939291906102d3565b604051809103906000f08015801561012d573d6000803e3d6000fd5b506001600160a01b03166080525061033c9350505050565b61110c80620008d483390190565b61145580620019e083390190565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561019257818101518382015260200161017a565b50506000910152565b600082601f8301126101ac57600080fd5b81516001600160401b03808211156101c6576101c6610161565b604051601f8301601f19908116603f011681019082821181831017156101ee576101ee610161565b8160405283815286602085880101111561020757600080fd5b610218846020830160208901610177565b9695505050505050565b6000806000806080858703121561023857600080fd5b84516001600160401b038082111561024f57600080fd5b61025b8883890161019b565b9550602087015191508082111561027157600080fd5b5061027e8782880161019b565b93505060408501519150606085015160ff8116811461029c57600080fd5b939692955090935050565b600081518084526102bf816020860160208601610177565b601f01601f19169290920160200192915050565b6080815260006102e660808301876102a7565b82810360208401526102f881876102a7565b91505083604083015260ff8316606083015295945050505050565b60006020828403121561032557600080fd5b8151801515811461033557600080fd5b9392505050565b60805160a0516105576200037d600039600081816101590152818161028b015261034401526000818160dc015281816101d0015261041301526105576000f3fe6080604052600436106100705760003560e01c8063b20a0fb91161004e578063b20a0fb9146100ca578063b6b55f2514610127578063cc4aa20414610147578063ffaad6a51461017b57600080fd5b8063205c2878146100755780632e1a7d4d146100975780638ca41808146100b7575b600080fd5b34801561008157600080fd5b5061009561009036600461046b565b61019b565b005b3480156100a357600080fd5b506100956100b2366004610495565b6102ee565b6100956100c53660046104ae565b6102fb565b3480156100d657600080fd5b506100fe7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b34801561013357600080fd5b50610095610142366004610495565b610303565b34801561015357600080fd5b506100fe7f000000000000000000000000000000000000000000000000000000000000000081565b34801561018757600080fd5b5061009561019636600461046b565b610309565b6040517f9dc29fac000000000000000000000000000000000000000000000000000000008152336004820152602481018290527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690639dc29fac90604401600060405180830381600087803b15801561022957600080fd5b505af115801561023d573d6000803e3d6000fd5b50506040517f449a52f800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152602482018590527f000000000000000000000000000000000000000000000000000000000000000016925063449a52f891506044015b600060405180830381600087803b1580156102d257600080fd5b505af11580156102e6573d6000803e3d6000fd5b505050505050565b6102f8338261019b565b50565b6102f86104d0565b6102f833825b6040517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018290527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16906323b872dd906064016020604051808303816000875af11580156103a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103c691906104ff565b506040517f40c10f1900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152602482018390527f000000000000000000000000000000000000000000000000000000000000000016906340c10f19906044016102b8565b803573ffffffffffffffffffffffffffffffffffffffff8116811461046657600080fd5b919050565b6000806040838503121561047e57600080fd5b61048783610442565b946020939093013593505050565b6000602082840312156104a757600080fd5b5035919050565b6000602082840312156104c057600080fd5b6104c982610442565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b60006020828403121561051157600080fd5b815180151581146104c957600080fdfea2646970667358221220334a996e46b200bac51f599e71b59f86a2cfbdb9776707ddd7fa3fb4e6dd220a64736f6c6343000813003360a06040523480156200001157600080fd5b506040516200110c3803806200110c833981016040819052620000349162000203565b838360036200004483826200031e565b5060046200005382826200031e565b50505060ff811660805262000069338362000073565b5050505062000412565b6001600160a01b038216620000ce5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620000e29190620003ea565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200016657600080fd5b81516001600160401b03808211156200018357620001836200013e565b604051601f8301601f19908116603f01168101908282118183101715620001ae57620001ae6200013e565b81604052838152602092508683858801011115620001cb57600080fd5b600091505b83821015620001ef5785820183015181830184015290820190620001d0565b600093810190920192909252949350505050565b600080600080608085870312156200021a57600080fd5b84516001600160401b03808211156200023257600080fd5b620002408883890162000154565b955060208701519150808211156200025757600080fd5b50620002668782880162000154565b93505060408501519150606085015160ff811681146200028557600080fd5b939692955090935050565b600181811c90821680620002a557607f821691505b602082108103620002c657634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200013957600081815260208120601f850160051c81016020861015620002f55750805b601f850160051c820191505b81811015620003165782815560010162000301565b505050505050565b81516001600160401b038111156200033a576200033a6200013e565b62000352816200034b845462000290565b84620002cc565b602080601f8311600181146200038a5760008415620003715750858301515b600019600386901b1c1916600185901b17855562000316565b600085815260208120601f198616915b82811015620003bb578886015182559484019460019091019084016200039a565b5085821015620003da5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200040c57634e487b7160e01b600052601160045260246000fd5b92915050565b608051610cd76200043560003960008181610157015261018e0152610cd76000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063449a52f81161008c578063a0712d6811610066578063a0712d6814610216578063a457c2d714610229578063a9059cbb1461023c578063dd62ed3e1461024f57600080fd5b8063449a52f8146101c357806370a08231146101d857806395d89b411461020e57600080fd5b806323b872dd116100c857806323b872dd14610142578063313ce5671461015557806332424aa31461018957806339509351146101b057600080fd5b806306fdde03146100ef578063095ea7b31461010d57806318160ddd14610130575b600080fd5b6100f7610295565b6040516101049190610aab565b60405180910390f35b61012061011b366004610b40565b610327565b6040519015158152602001610104565b6002545b604051908152602001610104565b610120610150366004610b6a565b610341565b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff9091168152602001610104565b6101777f000000000000000000000000000000000000000000000000000000000000000081565b6101206101be366004610b40565b610365565b6101d66101d1366004610b40565b6103b1565b005b6101346101e6366004610ba6565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100f76103bf565b6101d6610224366004610bc8565b6103ce565b610120610237366004610b40565b6103db565b61012061024a366004610b40565b6104b1565b61013461025d366004610be1565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b6060600380546102a490610c14565b80601f01602080910402602001604051908101604052809291908181526020018280546102d090610c14565b801561031d5780601f106102f25761010080835404028352916020019161031d565b820191906000526020600020905b81548152906001019060200180831161030057829003601f168201915b5050505050905090565b6000336103358185856104bf565b60019150505b92915050565b60003361034f858285610672565b61035a858585610749565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061033590829086906103ac908790610c67565b6104bf565b6103bb82826109b8565b5050565b6060600480546102a490610c14565b6103d833826109b8565b50565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156104a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61035a82868684036104bf565b600033610335818585610749565b73ffffffffffffffffffffffffffffffffffffffff8316610561576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff8216610604576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f7373000000000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146107435781811015610736576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161049b565b61074384848484036104bf565b50505050565b73ffffffffffffffffffffffffffffffffffffffff83166107ec576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f6472657373000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff821661088f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f6573730000000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205481811015610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e63650000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610743565b73ffffffffffffffffffffffffffffffffffffffff8216610a35576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161049b565b8060026000828254610a479190610c67565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208083528351808285015260005b81811015610ad857858101830151858201604001528201610abc565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b3b57600080fd5b919050565b60008060408385031215610b5357600080fd5b610b5c83610b17565b946020939093013593505050565b600080600060608486031215610b7f57600080fd5b610b8884610b17565b9250610b9660208501610b17565b9150604084013590509250925092565b600060208284031215610bb857600080fd5b610bc182610b17565b9392505050565b600060208284031215610bda57600080fd5b5035919050565b60008060408385031215610bf457600080fd5b610bfd83610b17565b9150610c0b60208401610b17565b90509250929050565b600181811c90821680610c2857607f821691505b602082108103610c61577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b8082018082111561033b577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fdfea264697066735822122001b0cb5a5ee42ea0275e441c2f869c91edecd2d4d27df674855e0ddc7d02220264736f6c6343000813003360a06040523480156200001157600080fd5b50604051620014553803806200145583398101604081905262000034916200020b565b838383838383600362000048838262000326565b50600462000057828262000326565b50505060ff81166080526200006d33836200007b565b50505050505050506200041a565b6001600160a01b038216620000d65760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620000ea9190620003f2565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200016e57600080fd5b81516001600160401b03808211156200018b576200018b62000146565b604051601f8301601f19908116603f01168101908282118183101715620001b657620001b662000146565b81604052838152602092508683858801011115620001d357600080fd5b600091505b83821015620001f75785820183015181830184015290820190620001d8565b600093810190920192909252949350505050565b600080600080608085870312156200022257600080fd5b84516001600160401b03808211156200023a57600080fd5b62000248888389016200015c565b955060208701519150808211156200025f57600080fd5b506200026e878288016200015c565b93505060408501519150606085015160ff811681146200028d57600080fd5b939692955090935050565b600181811c90821680620002ad57607f821691505b602082108103620002ce57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200014157600081815260208120601f850160051c81016020861015620002fd5750805b601f850160051c820191505b818110156200031e5782815560010162000309565b505050505050565b81516001600160401b0381111562000342576200034262000146565b6200035a8162000353845462000298565b84620002d4565b602080601f831160018114620003925760008415620003795750858301515b600019600386901b1c1916600185901b1785556200031e565b600085815260208120601f198616915b82811015620003c357888601518255948401946001909101908401620003a2565b5085821015620003e25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200041457634e487b7160e01b600052601160045260246000fd5b92915050565b6080516110186200043d60003960008181610226015261025d01526110186000f3fe608060405234801561001057600080fd5b50600436106101825760003560e01c806370a08231116100d8578063a0712d681161008c578063a9059cbb11610066578063a9059cbb14610340578063c1eb7137146101c8578063dd62ed3e1461035357600080fd5b8063a0712d6814610307578063a08d56541461031a578063a457c2d71461032d57600080fd5b806395d89b41116100bd57806395d89b41146102ec578063998955d3146101c85780639dc29fac146102f457600080fd5b806370a08231146102a75780638da5cb5b146102dd57600080fd5b8063313ce5671161013a57806340c10f191161011457806340c10f1914610292578063449a52f814610292578063651fd268146101c857600080fd5b8063313ce5671461022457806332424aa314610258578063395093511461027f57600080fd5b80630c05f82c1161016b5780630c05f82c146101c857806318160ddd1461020957806323b872dd1461021157600080fd5b806306fdde0314610187578063095ea7b3146101a5575b600080fd5b61018f610399565b60405161019c9190610d8a565b60405180910390f35b6101b86101b3366004610e1f565b61042b565b604051901515815260200161019c565b6101fb6101d6366004610e49565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90565b60405190815260200161019c565b6002546101fb565b6101b861021f366004610e6b565b610445565b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff909116815260200161019c565b6102467f000000000000000000000000000000000000000000000000000000000000000081565b6101b861028d366004610e1f565b610469565b6102a56102a0366004610e1f565b6104b5565b005b6101fb6102b5366004610e49565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6040516000815260200161019c565b61018f6104c3565b6102a5610302366004610e1f565b6104d2565b6102a5610315366004610ea7565b6104dc565b6102a5610328366004610ec0565b6104e9565b6101b861033b366004610e1f565b6104f6565b6101b861034e366004610e1f565b6105cc565b6101fb610361366004610ef3565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b6060600380546103a890610f26565b80601f01602080910402602001604051908101604052809291908181526020018280546103d490610f26565b80156104215780601f106103f657610100808354040283529160200191610421565b820191906000526020600020905b81548152906001019060200180831161040457829003601f168201915b5050505050905090565b6000336104398185856105da565b60019150505b92915050565b60003361045385828561078d565b61045e858585610864565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061043990829086906104b0908790610f79565b6105da565b6104bf8282610ad3565b5050565b6060600480546103a890610f26565b6104bf8282610bc6565b6104e63382610ad3565b50565b6104f1610fb3565b505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156105bf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61045e82868684036105da565b600033610439818585610864565b73ffffffffffffffffffffffffffffffffffffffff831661067c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016105b6565b73ffffffffffffffffffffffffffffffffffffffff821661071f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016105b6565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461085e5781811015610851576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016105b6565b61085e84848484036105da565b50505050565b73ffffffffffffffffffffffffffffffffffffffff8316610907576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016105b6565b73ffffffffffffffffffffffffffffffffffffffff82166109aa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016105b6565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205481811015610a60576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016105b6565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361085e565b73ffffffffffffffffffffffffffffffffffffffff8216610b50576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016105b6565b8060026000828254610b629190610f79565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8216610c69576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016105b6565b73ffffffffffffffffffffffffffffffffffffffff821660009081526020819052604090205481811015610d1f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016105b6565b73ffffffffffffffffffffffffffffffffffffffff83166000818152602081815260408083208686039055600280548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b600060208083528351808285015260005b81811015610db757858101830151858201604001528201610d9b565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e1a57600080fd5b919050565b60008060408385031215610e3257600080fd5b610e3b83610df6565b946020939093013593505050565b600060208284031215610e5b57600080fd5b610e6482610df6565b9392505050565b600080600060608486031215610e8057600080fd5b610e8984610df6565b9250610e9760208501610df6565b9150604084013590509250925092565b600060208284031215610eb957600080fd5b5035919050565b600080600060608486031215610ed557600080fd5b610ede84610df6565b95602085013595506040909401359392505050565b60008060408385031215610f0657600080fd5b610f0f83610df6565b9150610f1d60208401610df6565b90509250929050565b600181811c90821680610f3a57607f821691505b602082108103610f73577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b8082018082111561043f577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fdfea2646970667358221220eefeb722e5613999e192997aa8d9f45919ab692fe0f6308ac675978f8225134564736f6c63430008130033";
16
16
  static readonly abi: readonly [{
17
17
  readonly inputs: readonly [{
18
18
  readonly internalType: "string";
@@ -1 +1 @@
1
- {"version":3,"file":"XERC20LockboxTest__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/test/ERC20Test.sol/XERC20LockboxTest__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,MAAM,EAGN,eAAe,EACf,YAAY,EACZ,SAAS,EACV,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,+DAA+D,CAAC;AAuIvE,KAAK,kCAAkC,GACnC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,GAAG,IAAI,EAAE,kCAAkC;IAQ9C,MAAM,CACb,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,YAAY,EACzB,UAAU,EAAE,YAAY,EACxB,SAAS,CAAC,EAAE,SAAS,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GACxC,OAAO,CAAC,iBAAiB,CAAC;IASpB,oBAAoB,CAC3B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,YAAY,EACzB,UAAU,EAAE,YAAY,EACxB,SAAS,CAAC,EAAE,SAAS,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GACxC,kBAAkB;IASZ,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB;IAG1C,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,0BAA0B;IAI5D,MAAM,CAAC,QAAQ,CAAC,QAAQ,8juBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,MAAM,GAAG,QAAQ,GAClC,iBAAiB;CAGrB"}
1
+ {"version":3,"file":"XERC20LockboxTest__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/test/ERC20Test.sol/XERC20LockboxTest__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,MAAM,EAGN,eAAe,EACf,YAAY,EACZ,SAAS,EACV,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,+DAA+D,CAAC;AAuIvE,KAAK,kCAAkC,GACnC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,GAAG,IAAI,EAAE,kCAAkC;IAQ9C,MAAM,CACb,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,YAAY,EACzB,UAAU,EAAE,YAAY,EACxB,SAAS,CAAC,EAAE,SAAS,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GACxC,OAAO,CAAC,iBAAiB,CAAC;IASpB,oBAAoB,CAC3B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,YAAY,EACzB,UAAU,EAAE,YAAY,EACxB,SAAS,CAAC,EAAE,SAAS,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GACxC,kBAAkB;IASZ,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB;IAG1C,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,0BAA0B;IAI5D,MAAM,CAAC,QAAQ,CAAC,QAAQ,knuBAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,0BAA0B;IAGpD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,MAAM,GAAG,QAAQ,GAClC,iBAAiB;CAGrB"}
@@ -131,7 +131,7 @@ const _abi = [
131
131
  type: "function",
132
132
  },
133
133
  ];
134
- const _bytecode = "0x60c060405234801561001057600080fd5b5060405162002e1b38038062002e1b83398101604081905261003191610222565b60008484848460405161004390610145565b61005094939291906102d3565b604051809103906000f08015801561006c573d6000803e3d6000fd5b5060405163a9059cbb60e01b8152336004820152602481018590529091506001600160a01b0382169063a9059cbb906044016020604051808303816000875af11580156100bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100e19190610313565b506001600160a01b03811660a05260405185908590600090859061010490610153565b61011194939291906102d3565b604051809103906000f08015801561012d573d6000803e3d6000fd5b506001600160a01b03166080525061033c9350505050565b61110c80620008d483390190565b61143b80620019e083390190565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561019257818101518382015260200161017a565b50506000910152565b600082601f8301126101ac57600080fd5b81516001600160401b03808211156101c6576101c6610161565b604051601f8301601f19908116603f011681019082821181831017156101ee576101ee610161565b8160405283815286602085880101111561020757600080fd5b610218846020830160208901610177565b9695505050505050565b6000806000806080858703121561023857600080fd5b84516001600160401b038082111561024f57600080fd5b61025b8883890161019b565b9550602087015191508082111561027157600080fd5b5061027e8782880161019b565b93505060408501519150606085015160ff8116811461029c57600080fd5b939692955090935050565b600081518084526102bf816020860160208601610177565b601f01601f19169290920160200192915050565b6080815260006102e660808301876102a7565b82810360208401526102f881876102a7565b91505083604083015260ff8316606083015295945050505050565b60006020828403121561032557600080fd5b8151801515811461033557600080fd5b9392505050565b60805160a0516105576200037d600039600081816101590152818161028b015261034401526000818160dc015281816101d0015261041301526105576000f3fe6080604052600436106100705760003560e01c8063b20a0fb91161004e578063b20a0fb9146100ca578063b6b55f2514610127578063cc4aa20414610147578063ffaad6a51461017b57600080fd5b8063205c2878146100755780632e1a7d4d146100975780638ca41808146100b7575b600080fd5b34801561008157600080fd5b5061009561009036600461046b565b61019b565b005b3480156100a357600080fd5b506100956100b2366004610495565b6102ee565b6100956100c53660046104ae565b6102fb565b3480156100d657600080fd5b506100fe7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b34801561013357600080fd5b50610095610142366004610495565b610303565b34801561015357600080fd5b506100fe7f000000000000000000000000000000000000000000000000000000000000000081565b34801561018757600080fd5b5061009561019636600461046b565b610309565b6040517f9dc29fac000000000000000000000000000000000000000000000000000000008152336004820152602481018290527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690639dc29fac90604401600060405180830381600087803b15801561022957600080fd5b505af115801561023d573d6000803e3d6000fd5b50506040517f449a52f800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152602482018590527f000000000000000000000000000000000000000000000000000000000000000016925063449a52f891506044015b600060405180830381600087803b1580156102d257600080fd5b505af11580156102e6573d6000803e3d6000fd5b505050505050565b6102f8338261019b565b50565b6102f86104d0565b6102f833825b6040517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018290527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16906323b872dd906064016020604051808303816000875af11580156103a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103c691906104ff565b506040517f40c10f1900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152602482018390527f000000000000000000000000000000000000000000000000000000000000000016906340c10f19906044016102b8565b803573ffffffffffffffffffffffffffffffffffffffff8116811461046657600080fd5b919050565b6000806040838503121561047e57600080fd5b61048783610442565b946020939093013593505050565b6000602082840312156104a757600080fd5b5035919050565b6000602082840312156104c057600080fd5b6104c982610442565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b60006020828403121561051157600080fd5b815180151581146104c957600080fdfea2646970667358221220bbfaeeca3848c7ba787fccd140f4ecb0a1a8143a8c18a5475807501769ca364764736f6c6343000813003360a06040523480156200001157600080fd5b506040516200110c3803806200110c833981016040819052620000349162000203565b838360036200004483826200031e565b5060046200005382826200031e565b50505060ff811660805262000069338362000073565b5050505062000412565b6001600160a01b038216620000ce5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620000e29190620003ea565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200016657600080fd5b81516001600160401b03808211156200018357620001836200013e565b604051601f8301601f19908116603f01168101908282118183101715620001ae57620001ae6200013e565b81604052838152602092508683858801011115620001cb57600080fd5b600091505b83821015620001ef5785820183015181830184015290820190620001d0565b600093810190920192909252949350505050565b600080600080608085870312156200021a57600080fd5b84516001600160401b03808211156200023257600080fd5b620002408883890162000154565b955060208701519150808211156200025757600080fd5b50620002668782880162000154565b93505060408501519150606085015160ff811681146200028557600080fd5b939692955090935050565b600181811c90821680620002a557607f821691505b602082108103620002c657634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200013957600081815260208120601f850160051c81016020861015620002f55750805b601f850160051c820191505b81811015620003165782815560010162000301565b505050505050565b81516001600160401b038111156200033a576200033a6200013e565b62000352816200034b845462000290565b84620002cc565b602080601f8311600181146200038a5760008415620003715750858301515b600019600386901b1c1916600185901b17855562000316565b600085815260208120601f198616915b82811015620003bb578886015182559484019460019091019084016200039a565b5085821015620003da5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200040c57634e487b7160e01b600052601160045260246000fd5b92915050565b608051610cd76200043560003960008181610157015261018e0152610cd76000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063449a52f81161008c578063a0712d6811610066578063a0712d6814610216578063a457c2d714610229578063a9059cbb1461023c578063dd62ed3e1461024f57600080fd5b8063449a52f8146101c357806370a08231146101d857806395d89b411461020e57600080fd5b806323b872dd116100c857806323b872dd14610142578063313ce5671461015557806332424aa31461018957806339509351146101b057600080fd5b806306fdde03146100ef578063095ea7b31461010d57806318160ddd14610130575b600080fd5b6100f7610295565b6040516101049190610aab565b60405180910390f35b61012061011b366004610b40565b610327565b6040519015158152602001610104565b6002545b604051908152602001610104565b610120610150366004610b6a565b610341565b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff9091168152602001610104565b6101777f000000000000000000000000000000000000000000000000000000000000000081565b6101206101be366004610b40565b610365565b6101d66101d1366004610b40565b6103b1565b005b6101346101e6366004610ba6565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100f76103bf565b6101d6610224366004610bc8565b6103ce565b610120610237366004610b40565b6103db565b61012061024a366004610b40565b6104b1565b61013461025d366004610be1565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b6060600380546102a490610c14565b80601f01602080910402602001604051908101604052809291908181526020018280546102d090610c14565b801561031d5780601f106102f25761010080835404028352916020019161031d565b820191906000526020600020905b81548152906001019060200180831161030057829003601f168201915b5050505050905090565b6000336103358185856104bf565b60019150505b92915050565b60003361034f858285610672565b61035a858585610749565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061033590829086906103ac908790610c67565b6104bf565b6103bb82826109b8565b5050565b6060600480546102a490610c14565b6103d833826109b8565b50565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156104a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61035a82868684036104bf565b600033610335818585610749565b73ffffffffffffffffffffffffffffffffffffffff8316610561576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff8216610604576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f7373000000000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146107435781811015610736576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161049b565b61074384848484036104bf565b50505050565b73ffffffffffffffffffffffffffffffffffffffff83166107ec576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f6472657373000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff821661088f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f6573730000000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205481811015610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e63650000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610743565b73ffffffffffffffffffffffffffffffffffffffff8216610a35576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161049b565b8060026000828254610a479190610c67565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208083528351808285015260005b81811015610ad857858101830151858201604001528201610abc565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b3b57600080fd5b919050565b60008060408385031215610b5357600080fd5b610b5c83610b17565b946020939093013593505050565b600080600060608486031215610b7f57600080fd5b610b8884610b17565b9250610b9660208501610b17565b9150604084013590509250925092565b600060208284031215610bb857600080fd5b610bc182610b17565b9392505050565b600060208284031215610bda57600080fd5b5035919050565b60008060408385031215610bf457600080fd5b610bfd83610b17565b9150610c0b60208401610b17565b90509250929050565b600181811c90821680610c2857607f821691505b602082108103610c61577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b8082018082111561033b577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fdfea2646970667358221220ce9ba86b2cc03dbea5fbe7f97a06ce94c03f1c1b50e7a5ef29ddabd8df5efb0464736f6c6343000813003360a06040523480156200001157600080fd5b506040516200143b3803806200143b83398101604081905262000034916200020b565b838383838383600362000048838262000326565b50600462000057828262000326565b50505060ff81166080526200006d33836200007b565b50505050505050506200041a565b6001600160a01b038216620000d65760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620000ea9190620003f2565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200016e57600080fd5b81516001600160401b03808211156200018b576200018b62000146565b604051601f8301601f19908116603f01168101908282118183101715620001b657620001b662000146565b81604052838152602092508683858801011115620001d357600080fd5b600091505b83821015620001f75785820183015181830184015290820190620001d8565b600093810190920192909252949350505050565b600080600080608085870312156200022257600080fd5b84516001600160401b03808211156200023a57600080fd5b62000248888389016200015c565b955060208701519150808211156200025f57600080fd5b506200026e878288016200015c565b93505060408501519150606085015160ff811681146200028d57600080fd5b939692955090935050565b600181811c90821680620002ad57607f821691505b602082108103620002ce57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200014157600081815260208120601f850160051c81016020861015620002fd5750805b601f850160051c820191505b818110156200031e5782815560010162000309565b505050505050565b81516001600160401b0381111562000342576200034262000146565b6200035a8162000353845462000298565b84620002d4565b602080601f831160018114620003925760008415620003795750858301515b600019600386901b1c1916600185901b1785556200031e565b600085815260208120601f198616915b82811015620003c357888601518255948401946001909101908401620003a2565b5085821015620003e25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200041457634e487b7160e01b600052601160045260246000fd5b92915050565b608051610ffe6200043d600039600081816101d901526102100152610ffe6000f3fe608060405234801561001057600080fd5b506004361061016c5760003560e01c806370a08231116100cd578063a0712d6811610081578063a457c2d711610066578063a457c2d714610313578063a9059cbb14610326578063dd62ed3e1461033957600080fd5b8063a0712d68146102ed578063a08d56541461030057600080fd5b806395d89b41116100b257806395d89b41146102d2578063998955d31461025a5780639dc29fac146102da57600080fd5b806370a082311461028d5780638da5cb5b146102c357600080fd5b806332424aa31161012457806340c10f191161010957806340c10f1914610245578063449a52f814610245578063651fd2681461025a57600080fd5b806332424aa31461020b578063395093511461023257600080fd5b806318160ddd1161015557806318160ddd146101b257806323b872dd146101c4578063313ce567146101d757600080fd5b806306fdde0314610171578063095ea7b31461018f575b600080fd5b61017961037f565b6040516101869190610d70565b60405180910390f35b6101a261019d366004610e05565b610411565b6040519015158152602001610186565b6002545b604051908152602001610186565b6101a26101d2366004610e2f565b61042b565b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff9091168152602001610186565b6101f97f000000000000000000000000000000000000000000000000000000000000000081565b6101a2610240366004610e05565b61044f565b610258610253366004610e05565b61049b565b005b6101b6610268366004610e6b565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90565b6101b661029b366004610e6b565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b60405160008152602001610186565b6101796104a9565b6102586102e8366004610e05565b6104b8565b6102586102fb366004610e8d565b6104c2565b61025861030e366004610ea6565b6104cf565b6101a2610321366004610e05565b6104dc565b6101a2610334366004610e05565b6105b2565b6101b6610347366004610ed9565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b60606003805461038e90610f0c565b80601f01602080910402602001604051908101604052809291908181526020018280546103ba90610f0c565b80156104075780601f106103dc57610100808354040283529160200191610407565b820191906000526020600020905b8154815290600101906020018083116103ea57829003601f168201915b5050505050905090565b60003361041f8185856105c0565b60019150505b92915050565b600033610439858285610773565b61044485858561084a565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061041f9082908690610496908790610f5f565b6105c0565b6104a58282610ab9565b5050565b60606004805461038e90610f0c565b6104a58282610bac565b6104cc3382610ab9565b50565b6104d7610f99565b505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156105a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61044482868684036105c0565b60003361041f81858561084a565b73ffffffffffffffffffffffffffffffffffffffff8316610662576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015260840161059c565b73ffffffffffffffffffffffffffffffffffffffff8216610705576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f7373000000000000000000000000000000000000000000000000000000000000606482015260840161059c565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146108445781811015610837576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161059c565b61084484848484036105c0565b50505050565b73ffffffffffffffffffffffffffffffffffffffff83166108ed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f6472657373000000000000000000000000000000000000000000000000000000606482015260840161059c565b73ffffffffffffffffffffffffffffffffffffffff8216610990576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f6573730000000000000000000000000000000000000000000000000000000000606482015260840161059c565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205481811015610a46576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e63650000000000000000000000000000000000000000000000000000606482015260840161059c565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610844565b73ffffffffffffffffffffffffffffffffffffffff8216610b36576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161059c565b8060026000828254610b489190610f5f565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8216610c4f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f7300000000000000000000000000000000000000000000000000000000000000606482015260840161059c565b73ffffffffffffffffffffffffffffffffffffffff821660009081526020819052604090205481811015610d05576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f6365000000000000000000000000000000000000000000000000000000000000606482015260840161059c565b73ffffffffffffffffffffffffffffffffffffffff83166000818152602081815260408083208686039055600280548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b600060208083528351808285015260005b81811015610d9d57858101830151858201604001528201610d81565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e0057600080fd5b919050565b60008060408385031215610e1857600080fd5b610e2183610ddc565b946020939093013593505050565b600080600060608486031215610e4457600080fd5b610e4d84610ddc565b9250610e5b60208501610ddc565b9150604084013590509250925092565b600060208284031215610e7d57600080fd5b610e8682610ddc565b9392505050565b600060208284031215610e9f57600080fd5b5035919050565b600080600060608486031215610ebb57600080fd5b610ec484610ddc565b95602085013595506040909401359392505050565b60008060408385031215610eec57600080fd5b610ef583610ddc565b9150610f0360208401610ddc565b90509250929050565b600181811c90821680610f2057607f821691505b602082108103610f59577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b80820180821115610425577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fdfea2646970667358221220bb873cf54f1602d5fcf7898090700e97ecd89625d563d4dc1e34dbbee345aecb64736f6c63430008130033";
134
+ const _bytecode = "0x60c060405234801561001057600080fd5b5060405162002e3538038062002e3583398101604081905261003191610222565b60008484848460405161004390610145565b61005094939291906102d3565b604051809103906000f08015801561006c573d6000803e3d6000fd5b5060405163a9059cbb60e01b8152336004820152602481018590529091506001600160a01b0382169063a9059cbb906044016020604051808303816000875af11580156100bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100e19190610313565b506001600160a01b03811660a05260405185908590600090859061010490610153565b61011194939291906102d3565b604051809103906000f08015801561012d573d6000803e3d6000fd5b506001600160a01b03166080525061033c9350505050565b61110c80620008d483390190565b61145580620019e083390190565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561019257818101518382015260200161017a565b50506000910152565b600082601f8301126101ac57600080fd5b81516001600160401b03808211156101c6576101c6610161565b604051601f8301601f19908116603f011681019082821181831017156101ee576101ee610161565b8160405283815286602085880101111561020757600080fd5b610218846020830160208901610177565b9695505050505050565b6000806000806080858703121561023857600080fd5b84516001600160401b038082111561024f57600080fd5b61025b8883890161019b565b9550602087015191508082111561027157600080fd5b5061027e8782880161019b565b93505060408501519150606085015160ff8116811461029c57600080fd5b939692955090935050565b600081518084526102bf816020860160208601610177565b601f01601f19169290920160200192915050565b6080815260006102e660808301876102a7565b82810360208401526102f881876102a7565b91505083604083015260ff8316606083015295945050505050565b60006020828403121561032557600080fd5b8151801515811461033557600080fd5b9392505050565b60805160a0516105576200037d600039600081816101590152818161028b015261034401526000818160dc015281816101d0015261041301526105576000f3fe6080604052600436106100705760003560e01c8063b20a0fb91161004e578063b20a0fb9146100ca578063b6b55f2514610127578063cc4aa20414610147578063ffaad6a51461017b57600080fd5b8063205c2878146100755780632e1a7d4d146100975780638ca41808146100b7575b600080fd5b34801561008157600080fd5b5061009561009036600461046b565b61019b565b005b3480156100a357600080fd5b506100956100b2366004610495565b6102ee565b6100956100c53660046104ae565b6102fb565b3480156100d657600080fd5b506100fe7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b34801561013357600080fd5b50610095610142366004610495565b610303565b34801561015357600080fd5b506100fe7f000000000000000000000000000000000000000000000000000000000000000081565b34801561018757600080fd5b5061009561019636600461046b565b610309565b6040517f9dc29fac000000000000000000000000000000000000000000000000000000008152336004820152602481018290527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690639dc29fac90604401600060405180830381600087803b15801561022957600080fd5b505af115801561023d573d6000803e3d6000fd5b50506040517f449a52f800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152602482018590527f000000000000000000000000000000000000000000000000000000000000000016925063449a52f891506044015b600060405180830381600087803b1580156102d257600080fd5b505af11580156102e6573d6000803e3d6000fd5b505050505050565b6102f8338261019b565b50565b6102f86104d0565b6102f833825b6040517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018290527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16906323b872dd906064016020604051808303816000875af11580156103a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103c691906104ff565b506040517f40c10f1900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152602482018390527f000000000000000000000000000000000000000000000000000000000000000016906340c10f19906044016102b8565b803573ffffffffffffffffffffffffffffffffffffffff8116811461046657600080fd5b919050565b6000806040838503121561047e57600080fd5b61048783610442565b946020939093013593505050565b6000602082840312156104a757600080fd5b5035919050565b6000602082840312156104c057600080fd5b6104c982610442565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b60006020828403121561051157600080fd5b815180151581146104c957600080fdfea2646970667358221220334a996e46b200bac51f599e71b59f86a2cfbdb9776707ddd7fa3fb4e6dd220a64736f6c6343000813003360a06040523480156200001157600080fd5b506040516200110c3803806200110c833981016040819052620000349162000203565b838360036200004483826200031e565b5060046200005382826200031e565b50505060ff811660805262000069338362000073565b5050505062000412565b6001600160a01b038216620000ce5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620000e29190620003ea565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200016657600080fd5b81516001600160401b03808211156200018357620001836200013e565b604051601f8301601f19908116603f01168101908282118183101715620001ae57620001ae6200013e565b81604052838152602092508683858801011115620001cb57600080fd5b600091505b83821015620001ef5785820183015181830184015290820190620001d0565b600093810190920192909252949350505050565b600080600080608085870312156200021a57600080fd5b84516001600160401b03808211156200023257600080fd5b620002408883890162000154565b955060208701519150808211156200025757600080fd5b50620002668782880162000154565b93505060408501519150606085015160ff811681146200028557600080fd5b939692955090935050565b600181811c90821680620002a557607f821691505b602082108103620002c657634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200013957600081815260208120601f850160051c81016020861015620002f55750805b601f850160051c820191505b81811015620003165782815560010162000301565b505050505050565b81516001600160401b038111156200033a576200033a6200013e565b62000352816200034b845462000290565b84620002cc565b602080601f8311600181146200038a5760008415620003715750858301515b600019600386901b1c1916600185901b17855562000316565b600085815260208120601f198616915b82811015620003bb578886015182559484019460019091019084016200039a565b5085821015620003da5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200040c57634e487b7160e01b600052601160045260246000fd5b92915050565b608051610cd76200043560003960008181610157015261018e0152610cd76000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063449a52f81161008c578063a0712d6811610066578063a0712d6814610216578063a457c2d714610229578063a9059cbb1461023c578063dd62ed3e1461024f57600080fd5b8063449a52f8146101c357806370a08231146101d857806395d89b411461020e57600080fd5b806323b872dd116100c857806323b872dd14610142578063313ce5671461015557806332424aa31461018957806339509351146101b057600080fd5b806306fdde03146100ef578063095ea7b31461010d57806318160ddd14610130575b600080fd5b6100f7610295565b6040516101049190610aab565b60405180910390f35b61012061011b366004610b40565b610327565b6040519015158152602001610104565b6002545b604051908152602001610104565b610120610150366004610b6a565b610341565b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff9091168152602001610104565b6101777f000000000000000000000000000000000000000000000000000000000000000081565b6101206101be366004610b40565b610365565b6101d66101d1366004610b40565b6103b1565b005b6101346101e6366004610ba6565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100f76103bf565b6101d6610224366004610bc8565b6103ce565b610120610237366004610b40565b6103db565b61012061024a366004610b40565b6104b1565b61013461025d366004610be1565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b6060600380546102a490610c14565b80601f01602080910402602001604051908101604052809291908181526020018280546102d090610c14565b801561031d5780601f106102f25761010080835404028352916020019161031d565b820191906000526020600020905b81548152906001019060200180831161030057829003601f168201915b5050505050905090565b6000336103358185856104bf565b60019150505b92915050565b60003361034f858285610672565b61035a858585610749565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061033590829086906103ac908790610c67565b6104bf565b6103bb82826109b8565b5050565b6060600480546102a490610c14565b6103d833826109b8565b50565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156104a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61035a82868684036104bf565b600033610335818585610749565b73ffffffffffffffffffffffffffffffffffffffff8316610561576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff8216610604576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f7373000000000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146107435781811015610736576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161049b565b61074384848484036104bf565b50505050565b73ffffffffffffffffffffffffffffffffffffffff83166107ec576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f6472657373000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff821661088f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f6573730000000000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205481811015610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e63650000000000000000000000000000000000000000000000000000606482015260840161049b565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610743565b73ffffffffffffffffffffffffffffffffffffffff8216610a35576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161049b565b8060026000828254610a479190610c67565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208083528351808285015260005b81811015610ad857858101830151858201604001528201610abc565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b3b57600080fd5b919050565b60008060408385031215610b5357600080fd5b610b5c83610b17565b946020939093013593505050565b600080600060608486031215610b7f57600080fd5b610b8884610b17565b9250610b9660208501610b17565b9150604084013590509250925092565b600060208284031215610bb857600080fd5b610bc182610b17565b9392505050565b600060208284031215610bda57600080fd5b5035919050565b60008060408385031215610bf457600080fd5b610bfd83610b17565b9150610c0b60208401610b17565b90509250929050565b600181811c90821680610c2857607f821691505b602082108103610c61577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b8082018082111561033b577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fdfea264697066735822122001b0cb5a5ee42ea0275e441c2f869c91edecd2d4d27df674855e0ddc7d02220264736f6c6343000813003360a06040523480156200001157600080fd5b50604051620014553803806200145583398101604081905262000034916200020b565b838383838383600362000048838262000326565b50600462000057828262000326565b50505060ff81166080526200006d33836200007b565b50505050505050506200041a565b6001600160a01b038216620000d65760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620000ea9190620003f2565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200016e57600080fd5b81516001600160401b03808211156200018b576200018b62000146565b604051601f8301601f19908116603f01168101908282118183101715620001b657620001b662000146565b81604052838152602092508683858801011115620001d357600080fd5b600091505b83821015620001f75785820183015181830184015290820190620001d8565b600093810190920192909252949350505050565b600080600080608085870312156200022257600080fd5b84516001600160401b03808211156200023a57600080fd5b62000248888389016200015c565b955060208701519150808211156200025f57600080fd5b506200026e878288016200015c565b93505060408501519150606085015160ff811681146200028d57600080fd5b939692955090935050565b600181811c90821680620002ad57607f821691505b602082108103620002ce57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200014157600081815260208120601f850160051c81016020861015620002fd5750805b601f850160051c820191505b818110156200031e5782815560010162000309565b505050505050565b81516001600160401b0381111562000342576200034262000146565b6200035a8162000353845462000298565b84620002d4565b602080601f831160018114620003925760008415620003795750858301515b600019600386901b1c1916600185901b1785556200031e565b600085815260208120601f198616915b82811015620003c357888601518255948401946001909101908401620003a2565b5085821015620003e25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200041457634e487b7160e01b600052601160045260246000fd5b92915050565b6080516110186200043d60003960008181610226015261025d01526110186000f3fe608060405234801561001057600080fd5b50600436106101825760003560e01c806370a08231116100d8578063a0712d681161008c578063a9059cbb11610066578063a9059cbb14610340578063c1eb7137146101c8578063dd62ed3e1461035357600080fd5b8063a0712d6814610307578063a08d56541461031a578063a457c2d71461032d57600080fd5b806395d89b41116100bd57806395d89b41146102ec578063998955d3146101c85780639dc29fac146102f457600080fd5b806370a08231146102a75780638da5cb5b146102dd57600080fd5b8063313ce5671161013a57806340c10f191161011457806340c10f1914610292578063449a52f814610292578063651fd268146101c857600080fd5b8063313ce5671461022457806332424aa314610258578063395093511461027f57600080fd5b80630c05f82c1161016b5780630c05f82c146101c857806318160ddd1461020957806323b872dd1461021157600080fd5b806306fdde0314610187578063095ea7b3146101a5575b600080fd5b61018f610399565b60405161019c9190610d8a565b60405180910390f35b6101b86101b3366004610e1f565b61042b565b604051901515815260200161019c565b6101fb6101d6366004610e49565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90565b60405190815260200161019c565b6002546101fb565b6101b861021f366004610e6b565b610445565b7f00000000000000000000000000000000000000000000000000000000000000005b60405160ff909116815260200161019c565b6102467f000000000000000000000000000000000000000000000000000000000000000081565b6101b861028d366004610e1f565b610469565b6102a56102a0366004610e1f565b6104b5565b005b6101fb6102b5366004610e49565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6040516000815260200161019c565b61018f6104c3565b6102a5610302366004610e1f565b6104d2565b6102a5610315366004610ea7565b6104dc565b6102a5610328366004610ec0565b6104e9565b6101b861033b366004610e1f565b6104f6565b6101b861034e366004610e1f565b6105cc565b6101fb610361366004610ef3565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b6060600380546103a890610f26565b80601f01602080910402602001604051908101604052809291908181526020018280546103d490610f26565b80156104215780601f106103f657610100808354040283529160200191610421565b820191906000526020600020905b81548152906001019060200180831161040457829003601f168201915b5050505050905090565b6000336104398185856105da565b60019150505b92915050565b60003361045385828561078d565b61045e858585610864565b506001949350505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919061043990829086906104b0908790610f79565b6105da565b6104bf8282610ad3565b5050565b6060600480546103a890610f26565b6104bf8282610bc6565b6104e63382610ad3565b50565b6104f1610fb3565b505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909190838110156105bf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61045e82868684036105da565b600033610439818585610864565b73ffffffffffffffffffffffffffffffffffffffff831661067c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016105b6565b73ffffffffffffffffffffffffffffffffffffffff821661071f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016105b6565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152600160209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461085e5781811015610851576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016105b6565b61085e84848484036105da565b50505050565b73ffffffffffffffffffffffffffffffffffffffff8316610907576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016105b6565b73ffffffffffffffffffffffffffffffffffffffff82166109aa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016105b6565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205481811015610a60576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016105b6565b73ffffffffffffffffffffffffffffffffffffffff848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361085e565b73ffffffffffffffffffffffffffffffffffffffff8216610b50576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016105b6565b8060026000828254610b629190610f79565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8216610c69576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016105b6565b73ffffffffffffffffffffffffffffffffffffffff821660009081526020819052604090205481811015610d1f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f636500000000000000000000000000000000000000000000000000000000000060648201526084016105b6565b73ffffffffffffffffffffffffffffffffffffffff83166000818152602081815260408083208686039055600280548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b600060208083528351808285015260005b81811015610db757858101830151858201604001528201610d9b565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e1a57600080fd5b919050565b60008060408385031215610e3257600080fd5b610e3b83610df6565b946020939093013593505050565b600060208284031215610e5b57600080fd5b610e6482610df6565b9392505050565b600080600060608486031215610e8057600080fd5b610e8984610df6565b9250610e9760208501610df6565b9150604084013590509250925092565b600060208284031215610eb957600080fd5b5035919050565b600080600060608486031215610ed557600080fd5b610ede84610df6565b95602085013595506040909401359392505050565b60008060408385031215610f0657600080fd5b610f0f83610df6565b9150610f1d60208401610df6565b90509250929050565b600181811c90821680610f3a57607f821691505b602082108103610f73577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b8082018082111561043f577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fdfea2646970667358221220eefeb722e5613999e192997aa8d9f45919ab692fe0f6308ac675978f8225134564736f6c63430008130033";
135
135
  const isSuperArgs = (xs) => xs.length > 1;
136
136
  export class XERC20LockboxTest__factory extends ContractFactory {
137
137
  constructor(...args) {