@hyperlane-xyz/core 7.0.0 → 7.1.0

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 (804) hide show
  1. package/contracts/PackageVersioned.sol +1 -1
  2. package/dist/buildArtifact.js +1 -1
  3. package/dist/buildArtifact.json +1 -1
  4. package/dist/typechain/factories/contracts/AttributeCheckpointFraud__factory.d.ts +1 -1
  5. package/dist/typechain/factories/contracts/AttributeCheckpointFraud__factory.js +1 -1
  6. package/dist/typechain/factories/contracts/CheckpointFraudProofs__factory.d.ts +1 -1
  7. package/dist/typechain/factories/contracts/CheckpointFraudProofs__factory.js +1 -1
  8. package/dist/typechain/factories/contracts/Mailbox__factory.d.ts +1 -1
  9. package/dist/typechain/factories/contracts/Mailbox__factory.js +1 -1
  10. package/dist/typechain/factories/contracts/avs/ECDSAStakeRegistry__factory.d.ts +1 -1
  11. package/dist/typechain/factories/contracts/avs/ECDSAStakeRegistry__factory.js +1 -1
  12. package/dist/typechain/factories/contracts/avs/HyperlaneServiceManager__factory.d.ts +1 -1
  13. package/dist/typechain/factories/contracts/avs/HyperlaneServiceManager__factory.js +1 -1
  14. package/dist/typechain/factories/contracts/hooks/ArbL2ToL1Hook__factory.d.ts +1 -1
  15. package/dist/typechain/factories/contracts/hooks/ArbL2ToL1Hook__factory.js +1 -1
  16. package/dist/typechain/factories/contracts/hooks/CCIPHook__factory.d.ts +1 -1
  17. package/dist/typechain/factories/contracts/hooks/CCIPHook__factory.js +1 -1
  18. package/dist/typechain/factories/contracts/hooks/DefaultHook__factory.d.ts +1 -1
  19. package/dist/typechain/factories/contracts/hooks/DefaultHook__factory.js +1 -1
  20. package/dist/typechain/factories/contracts/hooks/MerkleTreeHook__factory.d.ts +1 -1
  21. package/dist/typechain/factories/contracts/hooks/MerkleTreeHook__factory.js +1 -1
  22. package/dist/typechain/factories/contracts/hooks/OPL2ToL1Hook__factory.d.ts +1 -1
  23. package/dist/typechain/factories/contracts/hooks/OPL2ToL1Hook__factory.js +1 -1
  24. package/dist/typechain/factories/contracts/hooks/OPStackHook__factory.d.ts +1 -1
  25. package/dist/typechain/factories/contracts/hooks/OPStackHook__factory.js +1 -1
  26. package/dist/typechain/factories/contracts/hooks/PausableHook__factory.d.ts +1 -1
  27. package/dist/typechain/factories/contracts/hooks/PausableHook__factory.js +1 -1
  28. package/dist/typechain/factories/contracts/hooks/PolygonPosHook__factory.d.ts +1 -1
  29. package/dist/typechain/factories/contracts/hooks/PolygonPosHook__factory.js +1 -1
  30. package/dist/typechain/factories/contracts/hooks/ProtocolFee__factory.d.ts +1 -1
  31. package/dist/typechain/factories/contracts/hooks/ProtocolFee__factory.js +1 -1
  32. package/dist/typechain/factories/contracts/hooks/aggregation/ERC5164Hook__factory.d.ts +1 -1
  33. package/dist/typechain/factories/contracts/hooks/aggregation/ERC5164Hook__factory.js +1 -1
  34. package/dist/typechain/factories/contracts/hooks/aggregation/StaticAggregationHookFactory__factory.d.ts +1 -1
  35. package/dist/typechain/factories/contracts/hooks/aggregation/StaticAggregationHookFactory__factory.js +1 -1
  36. package/dist/typechain/factories/contracts/hooks/aggregation/StaticAggregationHook__factory.d.ts +1 -1
  37. package/dist/typechain/factories/contracts/hooks/aggregation/StaticAggregationHook__factory.js +1 -1
  38. package/dist/typechain/factories/contracts/hooks/igp/InterchainGasPaymaster__factory.d.ts +1 -1
  39. package/dist/typechain/factories/contracts/hooks/igp/InterchainGasPaymaster__factory.js +1 -1
  40. package/dist/typechain/factories/contracts/hooks/igp/StorageGasOracle__factory.d.ts +1 -1
  41. package/dist/typechain/factories/contracts/hooks/igp/StorageGasOracle__factory.js +1 -1
  42. package/dist/typechain/factories/contracts/hooks/layer-zero/LayerZeroV1Hook__factory.d.ts +1 -1
  43. package/dist/typechain/factories/contracts/hooks/layer-zero/LayerZeroV1Hook__factory.js +1 -1
  44. package/dist/typechain/factories/contracts/hooks/layer-zero/LayerZeroV2Hook__factory.d.ts +1 -1
  45. package/dist/typechain/factories/contracts/hooks/layer-zero/LayerZeroV2Hook__factory.js +1 -1
  46. package/dist/typechain/factories/contracts/hooks/routing/AmountRoutingHook__factory.d.ts +1 -1
  47. package/dist/typechain/factories/contracts/hooks/routing/AmountRoutingHook__factory.js +1 -1
  48. package/dist/typechain/factories/contracts/hooks/routing/DestinationRecipientRoutingHook__factory.d.ts +1 -1
  49. package/dist/typechain/factories/contracts/hooks/routing/DestinationRecipientRoutingHook__factory.js +1 -1
  50. package/dist/typechain/factories/contracts/hooks/routing/DomainRoutingHook__factory.d.ts +1 -1
  51. package/dist/typechain/factories/contracts/hooks/routing/DomainRoutingHook__factory.js +1 -1
  52. package/dist/typechain/factories/contracts/hooks/routing/FallbackDomainRoutingHook__factory.d.ts +1 -1
  53. package/dist/typechain/factories/contracts/hooks/routing/FallbackDomainRoutingHook__factory.js +1 -1
  54. package/dist/typechain/factories/contracts/hooks/warp-route/RateLimitedHook__factory.d.ts +1 -1
  55. package/dist/typechain/factories/contracts/hooks/warp-route/RateLimitedHook__factory.js +1 -1
  56. package/dist/typechain/factories/contracts/isms/NoopIsm__factory.d.ts +1 -1
  57. package/dist/typechain/factories/contracts/isms/NoopIsm__factory.js +1 -1
  58. package/dist/typechain/factories/contracts/isms/PausableIsm__factory.d.ts +1 -1
  59. package/dist/typechain/factories/contracts/isms/PausableIsm__factory.js +1 -1
  60. package/dist/typechain/factories/contracts/isms/TrustedRelayerIsm__factory.d.ts +1 -1
  61. package/dist/typechain/factories/contracts/isms/TrustedRelayerIsm__factory.js +1 -1
  62. package/dist/typechain/factories/contracts/isms/aggregation/StaticAggregationIsmFactory__factory.d.ts +1 -1
  63. package/dist/typechain/factories/contracts/isms/aggregation/StaticAggregationIsmFactory__factory.js +1 -1
  64. package/dist/typechain/factories/contracts/isms/aggregation/StaticAggregationIsm__factory.d.ts +1 -1
  65. package/dist/typechain/factories/contracts/isms/aggregation/StaticAggregationIsm__factory.js +1 -1
  66. package/dist/typechain/factories/contracts/isms/aggregation/StorageAggregationIsm.sol/StorageAggregationIsmFactory__factory.d.ts +1 -1
  67. package/dist/typechain/factories/contracts/isms/aggregation/StorageAggregationIsm.sol/StorageAggregationIsmFactory__factory.js +1 -1
  68. package/dist/typechain/factories/contracts/isms/aggregation/StorageAggregationIsm.sol/StorageAggregationIsm__factory.d.ts +1 -1
  69. package/dist/typechain/factories/contracts/isms/aggregation/StorageAggregationIsm.sol/StorageAggregationIsm__factory.js +1 -1
  70. package/dist/typechain/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.d.ts +1 -1
  71. package/dist/typechain/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.js +1 -1
  72. package/dist/typechain/factories/contracts/isms/hook/CCIPIsm__factory.d.ts +1 -1
  73. package/dist/typechain/factories/contracts/isms/hook/CCIPIsm__factory.js +1 -1
  74. package/dist/typechain/factories/contracts/isms/hook/ERC5164Ism__factory.d.ts +1 -1
  75. package/dist/typechain/factories/contracts/isms/hook/ERC5164Ism__factory.js +1 -1
  76. package/dist/typechain/factories/contracts/isms/hook/OPL2ToL1Ism__factory.d.ts +1 -1
  77. package/dist/typechain/factories/contracts/isms/hook/OPL2ToL1Ism__factory.js +1 -1
  78. package/dist/typechain/factories/contracts/isms/hook/OPStackIsm__factory.d.ts +1 -1
  79. package/dist/typechain/factories/contracts/isms/hook/OPStackIsm__factory.js +1 -1
  80. package/dist/typechain/factories/contracts/isms/hook/PolygonPosIsm__factory.d.ts +1 -1
  81. package/dist/typechain/factories/contracts/isms/hook/PolygonPosIsm__factory.js +1 -1
  82. package/dist/typechain/factories/contracts/isms/hook/layer-zero/LayerZeroV2Ism__factory.d.ts +1 -1
  83. package/dist/typechain/factories/contracts/isms/hook/layer-zero/LayerZeroV2Ism__factory.js +1 -1
  84. package/dist/typechain/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsmFactory__factory.d.ts +1 -1
  85. package/dist/typechain/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsmFactory__factory.js +1 -1
  86. package/dist/typechain/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsm__factory.d.ts +1 -1
  87. package/dist/typechain/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsm__factory.js +1 -1
  88. package/dist/typechain/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsmFactory__factory.d.ts +1 -1
  89. package/dist/typechain/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsmFactory__factory.js +1 -1
  90. package/dist/typechain/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsm__factory.d.ts +1 -1
  91. package/dist/typechain/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsm__factory.js +1 -1
  92. package/dist/typechain/factories/contracts/isms/multisig/StorageMultisigIsm.sol/StorageMerkleRootMultisigIsmFactory__factory.d.ts +1 -1
  93. package/dist/typechain/factories/contracts/isms/multisig/StorageMultisigIsm.sol/StorageMerkleRootMultisigIsmFactory__factory.js +1 -1
  94. package/dist/typechain/factories/contracts/isms/multisig/StorageMultisigIsm.sol/StorageMerkleRootMultisigIsm__factory.d.ts +1 -1
  95. package/dist/typechain/factories/contracts/isms/multisig/StorageMultisigIsm.sol/StorageMerkleRootMultisigIsm__factory.js +1 -1
  96. package/dist/typechain/factories/contracts/isms/multisig/StorageMultisigIsm.sol/StorageMessageIdMultisigIsmFactory__factory.d.ts +1 -1
  97. package/dist/typechain/factories/contracts/isms/multisig/StorageMultisigIsm.sol/StorageMessageIdMultisigIsmFactory__factory.js +1 -1
  98. package/dist/typechain/factories/contracts/isms/multisig/StorageMultisigIsm.sol/StorageMessageIdMultisigIsm__factory.d.ts +1 -1
  99. package/dist/typechain/factories/contracts/isms/multisig/StorageMultisigIsm.sol/StorageMessageIdMultisigIsm__factory.js +1 -1
  100. package/dist/typechain/factories/contracts/isms/multisig/ValidatorAnnounce__factory.d.ts +1 -1
  101. package/dist/typechain/factories/contracts/isms/multisig/ValidatorAnnounce__factory.js +1 -1
  102. package/dist/typechain/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsmFactory__factory.d.ts +1 -1
  103. package/dist/typechain/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsmFactory__factory.js +1 -1
  104. package/dist/typechain/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsm__factory.d.ts +1 -1
  105. package/dist/typechain/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsm__factory.js +1 -1
  106. package/dist/typechain/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsmFactory__factory.d.ts +1 -1
  107. package/dist/typechain/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsmFactory__factory.js +1 -1
  108. package/dist/typechain/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsm__factory.d.ts +1 -1
  109. package/dist/typechain/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsm__factory.js +1 -1
  110. package/dist/typechain/factories/contracts/isms/routing/DefaultFallbackRoutingIsm__factory.d.ts +1 -1
  111. package/dist/typechain/factories/contracts/isms/routing/DefaultFallbackRoutingIsm__factory.js +1 -1
  112. package/dist/typechain/factories/contracts/isms/routing/DomainRoutingIsmFactory.sol/DomainRoutingIsmFactory__factory.d.ts +1 -1
  113. package/dist/typechain/factories/contracts/isms/routing/DomainRoutingIsmFactory.sol/DomainRoutingIsmFactory__factory.js +1 -1
  114. package/dist/typechain/factories/contracts/isms/routing/DomainRoutingIsm__factory.d.ts +1 -1
  115. package/dist/typechain/factories/contracts/isms/routing/DomainRoutingIsm__factory.js +1 -1
  116. package/dist/typechain/factories/contracts/isms/routing/InterchainAccountIsm__factory.d.ts +1 -1
  117. package/dist/typechain/factories/contracts/isms/routing/InterchainAccountIsm__factory.js +1 -1
  118. package/dist/typechain/factories/contracts/isms/warp-route/AmountRoutingIsm__factory.d.ts +1 -1
  119. package/dist/typechain/factories/contracts/isms/warp-route/AmountRoutingIsm__factory.js +1 -1
  120. package/dist/typechain/factories/contracts/isms/warp-route/RateLimitedIsm__factory.d.ts +1 -1
  121. package/dist/typechain/factories/contracts/isms/warp-route/RateLimitedIsm__factory.js +1 -1
  122. package/dist/typechain/factories/contracts/middleware/InterchainAccountRouter__factory.d.ts +1 -1
  123. package/dist/typechain/factories/contracts/middleware/InterchainAccountRouter__factory.js +1 -1
  124. package/dist/typechain/factories/contracts/middleware/InterchainQueryRouter__factory.d.ts +1 -1
  125. package/dist/typechain/factories/contracts/middleware/InterchainQueryRouter__factory.js +1 -1
  126. package/dist/typechain/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.d.ts +1 -1
  127. package/dist/typechain/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.js +1 -1
  128. package/dist/typechain/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.d.ts +1 -1
  129. package/dist/typechain/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.js +1 -1
  130. package/dist/typechain/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.d.ts +1 -1
  131. package/dist/typechain/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.js +1 -1
  132. package/dist/typechain/factories/contracts/mock/MockHyperlaneEnvironment__factory.d.ts +1 -1
  133. package/dist/typechain/factories/contracts/mock/MockHyperlaneEnvironment__factory.js +1 -1
  134. package/dist/typechain/factories/contracts/mock/MockMailbox__factory.d.ts +1 -1
  135. package/dist/typechain/factories/contracts/mock/MockMailbox__factory.js +1 -1
  136. package/dist/typechain/factories/contracts/test/TestGasRouter__factory.d.ts +1 -1
  137. package/dist/typechain/factories/contracts/test/TestGasRouter__factory.js +1 -1
  138. package/dist/typechain/factories/contracts/test/TestInterchainGasPaymaster__factory.d.ts +1 -1
  139. package/dist/typechain/factories/contracts/test/TestInterchainGasPaymaster__factory.js +1 -1
  140. package/dist/typechain/factories/contracts/test/TestMailbox__factory.d.ts +1 -1
  141. package/dist/typechain/factories/contracts/test/TestMailbox__factory.js +1 -1
  142. package/dist/typechain/factories/contracts/test/TestMerkleTreeHook__factory.d.ts +1 -1
  143. package/dist/typechain/factories/contracts/test/TestMerkleTreeHook__factory.js +1 -1
  144. package/dist/typechain/factories/contracts/test/TestPostDispatchHook__factory.d.ts +1 -1
  145. package/dist/typechain/factories/contracts/test/TestPostDispatchHook__factory.js +1 -1
  146. package/dist/typechain/factories/contracts/test/TestQuerySender__factory.d.ts +1 -1
  147. package/dist/typechain/factories/contracts/test/TestQuerySender__factory.js +1 -1
  148. package/dist/typechain/factories/contracts/test/TestQuery__factory.d.ts +1 -1
  149. package/dist/typechain/factories/contracts/test/TestQuery__factory.js +1 -1
  150. package/dist/typechain/factories/contracts/test/TestRemoteChallenger__factory.d.ts +1 -1
  151. package/dist/typechain/factories/contracts/test/TestRemoteChallenger__factory.js +1 -1
  152. package/dist/typechain/factories/contracts/test/TestRouter__factory.d.ts +1 -1
  153. package/dist/typechain/factories/contracts/test/TestRouter__factory.js +1 -1
  154. package/dist/typechain/factories/contracts/test/TestSendReceiver__factory.d.ts +1 -1
  155. package/dist/typechain/factories/contracts/test/TestSendReceiver__factory.js +1 -1
  156. package/dist/typechain/factories/contracts/test/avs/TestHyperlaneServiceManager__factory.d.ts +1 -1
  157. package/dist/typechain/factories/contracts/test/avs/TestHyperlaneServiceManager__factory.js +1 -1
  158. package/dist/typechain/factories/contracts/token/HypERC20Collateral__factory.d.ts +1 -1
  159. package/dist/typechain/factories/contracts/token/HypERC20Collateral__factory.js +1 -1
  160. package/dist/typechain/factories/contracts/token/HypERC20__factory.d.ts +1 -1
  161. package/dist/typechain/factories/contracts/token/HypERC20__factory.js +1 -1
  162. package/dist/typechain/factories/contracts/token/HypERC721Collateral__factory.d.ts +1 -1
  163. package/dist/typechain/factories/contracts/token/HypERC721Collateral__factory.js +1 -1
  164. package/dist/typechain/factories/contracts/token/HypERC721__factory.d.ts +1 -1
  165. package/dist/typechain/factories/contracts/token/HypERC721__factory.js +1 -1
  166. package/dist/typechain/factories/contracts/token/HypNative__factory.d.ts +1 -1
  167. package/dist/typechain/factories/contracts/token/HypNative__factory.js +1 -1
  168. package/dist/typechain/factories/contracts/token/extensions/HypERC4626Collateral__factory.d.ts +1 -1
  169. package/dist/typechain/factories/contracts/token/extensions/HypERC4626Collateral__factory.js +1 -1
  170. package/dist/typechain/factories/contracts/token/extensions/HypERC4626OwnerCollateral__factory.d.ts +1 -1
  171. package/dist/typechain/factories/contracts/token/extensions/HypERC4626OwnerCollateral__factory.js +1 -1
  172. package/dist/typechain/factories/contracts/token/extensions/HypERC4626__factory.d.ts +1 -1
  173. package/dist/typechain/factories/contracts/token/extensions/HypERC4626__factory.js +1 -1
  174. package/dist/typechain/factories/contracts/token/extensions/HypERC721URICollateral__factory.d.ts +1 -1
  175. package/dist/typechain/factories/contracts/token/extensions/HypERC721URICollateral__factory.js +1 -1
  176. package/dist/typechain/factories/contracts/token/extensions/HypERC721URIStorage__factory.d.ts +1 -1
  177. package/dist/typechain/factories/contracts/token/extensions/HypERC721URIStorage__factory.js +1 -1
  178. package/dist/typechain/factories/contracts/token/extensions/HypFiatToken__factory.d.ts +1 -1
  179. package/dist/typechain/factories/contracts/token/extensions/HypFiatToken__factory.js +1 -1
  180. package/dist/typechain/factories/contracts/token/extensions/HypXERC20Lockbox__factory.d.ts +1 -1
  181. package/dist/typechain/factories/contracts/token/extensions/HypXERC20Lockbox__factory.js +1 -1
  182. package/dist/typechain/factories/contracts/token/extensions/HypXERC20__factory.d.ts +1 -1
  183. package/dist/typechain/factories/contracts/token/extensions/HypXERC20__factory.js +1 -1
  184. package/dist/typechain/factories/contracts/token/extensions/WHypERC4626__factory.d.ts +1 -1
  185. package/dist/typechain/factories/contracts/token/extensions/WHypERC4626__factory.js +1 -1
  186. package/dist/zksync/artifacts/AbstractAggregationIsm.d.ts +1 -2
  187. package/dist/zksync/artifacts/AbstractAggregationIsm.js +1 -85
  188. package/dist/zksync/artifacts/AbstractCcipReadIsm.d.ts +1 -2
  189. package/dist/zksync/artifacts/AbstractCcipReadIsm.js +1 -92
  190. package/dist/zksync/artifacts/AbstractDomainRoutingIsmFactory.d.ts +1 -2
  191. package/dist/zksync/artifacts/AbstractDomainRoutingIsmFactory.js +1 -79
  192. package/dist/zksync/artifacts/AbstractMerkleRootMultisigIsm.d.ts +1 -2
  193. package/dist/zksync/artifacts/AbstractMerkleRootMultisigIsm.js +1 -43
  194. package/dist/zksync/artifacts/AbstractMessageIdAuthHook.d.ts +1 -2
  195. package/dist/zksync/artifacts/AbstractMessageIdAuthHook.js +1 -293
  196. package/dist/zksync/artifacts/AbstractMessageIdAuthorizedIsm.d.ts +1 -2
  197. package/dist/zksync/artifacts/AbstractMessageIdAuthorizedIsm.js +1 -188
  198. package/dist/zksync/artifacts/AbstractMessageIdMultisigIsm.d.ts +1 -2
  199. package/dist/zksync/artifacts/AbstractMessageIdMultisigIsm.js +1 -43
  200. package/dist/zksync/artifacts/AbstractMetaProxyMultisigIsm.d.ts +1 -2
  201. package/dist/zksync/artifacts/AbstractMetaProxyMultisigIsm.js +1 -104
  202. package/dist/zksync/artifacts/AbstractMetaProxyWeightedMultisigIsm.d.ts +1 -2
  203. package/dist/zksync/artifacts/AbstractMetaProxyWeightedMultisigIsm.js +1 -129
  204. package/dist/zksync/artifacts/AbstractMultisig.d.ts +1 -2
  205. package/dist/zksync/artifacts/AbstractMultisig.js +1 -43
  206. package/dist/zksync/artifacts/AbstractMultisigIsm.d.ts +1 -2
  207. package/dist/zksync/artifacts/AbstractMultisigIsm.js +1 -104
  208. package/dist/zksync/artifacts/AbstractPostDispatchHook.d.ts +1 -2
  209. package/dist/zksync/artifacts/AbstractPostDispatchHook.js +1 -98
  210. package/dist/zksync/artifacts/AbstractRoutingIsm.d.ts +1 -2
  211. package/dist/zksync/artifacts/AbstractRoutingIsm.js +1 -67
  212. package/dist/zksync/artifacts/AbstractStaticWeightedMultisigIsm.d.ts +1 -2
  213. package/dist/zksync/artifacts/AbstractStaticWeightedMultisigIsm.js +1 -129
  214. package/dist/zksync/artifacts/AbstractStorageMultisigIsm.d.ts +1 -2
  215. package/dist/zksync/artifacts/AbstractStorageMultisigIsm.js +1 -300
  216. package/dist/zksync/artifacts/AccessControl.d.ts +1 -2
  217. package/dist/zksync/artifacts/AccessControl.js +1 -215
  218. package/dist/zksync/artifacts/Address.d.ts +1 -2
  219. package/dist/zksync/artifacts/Address.js +1 -10
  220. package/dist/zksync/artifacts/AddressUpgradeable.d.ts +1 -2
  221. package/dist/zksync/artifacts/AddressUpgradeable.js +1 -10
  222. package/dist/zksync/artifacts/AggregationIsmMetadata.d.ts +1 -2
  223. package/dist/zksync/artifacts/AggregationIsmMetadata.js +1 -10
  224. package/dist/zksync/artifacts/AmountPartition.d.ts +1 -2
  225. package/dist/zksync/artifacts/AmountPartition.js +1 -63
  226. package/dist/zksync/artifacts/AmountRoutingHook.d.ts +1 -2
  227. package/dist/zksync/artifacts/AmountRoutingHook.js +1 -158
  228. package/dist/zksync/artifacts/AmountRoutingIsm.d.ts +1 -2
  229. package/dist/zksync/artifacts/AmountRoutingIsm.js +1 -140
  230. package/dist/zksync/artifacts/ArbL2ToL1Hook.d.ts +1 -2
  231. package/dist/zksync/artifacts/ArbL2ToL1Hook.js +1 -350
  232. package/dist/zksync/artifacts/ArbL2ToL1Ism.d.ts +1 -2
  233. package/dist/zksync/artifacts/ArbL2ToL1Ism.js +1 -217
  234. package/dist/zksync/artifacts/ArbSys.d.ts +1 -2
  235. package/dist/zksync/artifacts/ArbSys.js +1 -380
  236. package/dist/zksync/artifacts/AttributeCheckpointFraud.d.ts +1 -2
  237. package/dist/zksync/artifacts/AttributeCheckpointFraud.js +1 -379
  238. package/dist/zksync/artifacts/CCIPHook.d.ts +1 -2
  239. package/dist/zksync/artifacts/CCIPHook.js +1 -337
  240. package/dist/zksync/artifacts/CCIPIsm.d.ts +1 -2
  241. package/dist/zksync/artifacts/CCIPIsm.js +1 -312
  242. package/dist/zksync/artifacts/CCIPReceiver.d.ts +1 -2
  243. package/dist/zksync/artifacts/CCIPReceiver.js +1 -106
  244. package/dist/zksync/artifacts/CallLib.d.ts +1 -2
  245. package/dist/zksync/artifacts/CallLib.js +1 -10
  246. package/dist/zksync/artifacts/CheckpointFraudProofs.d.ts +1 -2
  247. package/dist/zksync/artifacts/CheckpointFraudProofs.js +1 -310
  248. package/dist/zksync/artifacts/CheckpointLib.d.ts +1 -2
  249. package/dist/zksync/artifacts/CheckpointLib.js +1 -10
  250. package/dist/zksync/artifacts/CheckpointsUpgradeable.d.ts +1 -2
  251. package/dist/zksync/artifacts/CheckpointsUpgradeable.js +1 -10
  252. package/dist/zksync/artifacts/CircleBridgeAdapter.d.ts +1 -2
  253. package/dist/zksync/artifacts/CircleBridgeAdapter.js +1 -642
  254. package/dist/zksync/artifacts/Client.d.ts +1 -2
  255. package/dist/zksync/artifacts/Client.js +1 -37
  256. package/dist/zksync/artifacts/Context.d.ts +1 -2
  257. package/dist/zksync/artifacts/Context.js +1 -10
  258. package/dist/zksync/artifacts/ContextUpgradeable.d.ts +1 -2
  259. package/dist/zksync/artifacts/ContextUpgradeable.js +1 -24
  260. package/dist/zksync/artifacts/Create2.d.ts +1 -2
  261. package/dist/zksync/artifacts/Create2.js +1 -10
  262. package/dist/zksync/artifacts/CrossChainEnabled.d.ts +1 -2
  263. package/dist/zksync/artifacts/CrossChainEnabled.js +1 -10
  264. package/dist/zksync/artifacts/CrossChainEnabledArbitrumL1.d.ts +1 -2
  265. package/dist/zksync/artifacts/CrossChainEnabledArbitrumL1.js +1 -10
  266. package/dist/zksync/artifacts/CrossChainEnabledOptimism.d.ts +1 -2
  267. package/dist/zksync/artifacts/CrossChainEnabledOptimism.js +1 -10
  268. package/dist/zksync/artifacts/CrossChainEnabledPolygonChild.d.ts +1 -2
  269. package/dist/zksync/artifacts/CrossChainEnabledPolygonChild.js +1 -39
  270. package/dist/zksync/artifacts/DefaultFallbackRoutingIsm.d.ts +1 -2
  271. package/dist/zksync/artifacts/DefaultFallbackRoutingIsm.js +1 -359
  272. package/dist/zksync/artifacts/DefaultHook.d.ts +1 -2
  273. package/dist/zksync/artifacts/DefaultHook.js +1 -291
  274. package/dist/zksync/artifacts/DestinationRecipientRoutingHook.d.ts +1 -2
  275. package/dist/zksync/artifacts/DestinationRecipientRoutingHook.js +1 -392
  276. package/dist/zksync/artifacts/DomainRoutingHook.d.ts +1 -2
  277. package/dist/zksync/artifacts/DomainRoutingHook.js +1 -345
  278. package/dist/zksync/artifacts/DomainRoutingIsm.d.ts +1 -2
  279. package/dist/zksync/artifacts/DomainRoutingIsm.js +1 -244
  280. package/dist/zksync/artifacts/DomainRoutingIsmFactory.d.ts +1 -2
  281. package/dist/zksync/artifacts/DomainRoutingIsmFactory.js +1 -84
  282. package/dist/zksync/artifacts/ECDSA.d.ts +1 -2
  283. package/dist/zksync/artifacts/ECDSA.js +1 -10
  284. package/dist/zksync/artifacts/ECDSAServiceManagerBase.d.ts +1 -2
  285. package/dist/zksync/artifacts/ECDSAServiceManagerBase.js +1 -286
  286. package/dist/zksync/artifacts/ECDSAStakeRegistry.d.ts +1 -2
  287. package/dist/zksync/artifacts/ECDSAStakeRegistry.js +1 -839
  288. package/dist/zksync/artifacts/ECDSAStakeRegistryStorage.d.ts +1 -2
  289. package/dist/zksync/artifacts/ECDSAStakeRegistryStorage.js +1 -297
  290. package/dist/zksync/artifacts/ECDSAUpgradeable.d.ts +1 -2
  291. package/dist/zksync/artifacts/ECDSAUpgradeable.js +1 -10
  292. package/dist/zksync/artifacts/ERC165.d.ts +1 -2
  293. package/dist/zksync/artifacts/ERC165.js +1 -30
  294. package/dist/zksync/artifacts/ERC165Upgradeable.d.ts +1 -2
  295. package/dist/zksync/artifacts/ERC165Upgradeable.js +1 -43
  296. package/dist/zksync/artifacts/ERC1967Proxy.d.ts +1 -2
  297. package/dist/zksync/artifacts/ERC1967Proxy.js +1 -80
  298. package/dist/zksync/artifacts/ERC1967Upgrade.d.ts +1 -2
  299. package/dist/zksync/artifacts/ERC1967Upgrade.js +1 -56
  300. package/dist/zksync/artifacts/ERC20.d.ts +1 -2
  301. package/dist/zksync/artifacts/ERC20.js +1 -297
  302. package/dist/zksync/artifacts/ERC20Test.d.ts +1 -2
  303. package/dist/zksync/artifacts/ERC20Test.js +1 -369
  304. package/dist/zksync/artifacts/ERC20Upgradeable.d.ts +1 -2
  305. package/dist/zksync/artifacts/ERC20Upgradeable.js +1 -294
  306. package/dist/zksync/artifacts/ERC4626.d.ts +1 -2
  307. package/dist/zksync/artifacts/ERC4626.js +1 -671
  308. package/dist/zksync/artifacts/ERC4626Test.d.ts +1 -2
  309. package/dist/zksync/artifacts/ERC4626Test.js +1 -692
  310. package/dist/zksync/artifacts/ERC5164Hook.d.ts +1 -2
  311. package/dist/zksync/artifacts/ERC5164Hook.js +1 -332
  312. package/dist/zksync/artifacts/ERC5164Ism.d.ts +1 -2
  313. package/dist/zksync/artifacts/ERC5164Ism.js +1 -212
  314. package/dist/zksync/artifacts/ERC721.d.ts +1 -2
  315. package/dist/zksync/artifacts/ERC721.js +1 -357
  316. package/dist/zksync/artifacts/ERC721Enumerable.d.ts +1 -2
  317. package/dist/zksync/artifacts/ERC721Enumerable.js +1 -397
  318. package/dist/zksync/artifacts/ERC721EnumerableUpgradeable.d.ts +1 -2
  319. package/dist/zksync/artifacts/ERC721EnumerableUpgradeable.js +1 -410
  320. package/dist/zksync/artifacts/ERC721Test.d.ts +1 -2
  321. package/dist/zksync/artifacts/ERC721Test.js +1 -418
  322. package/dist/zksync/artifacts/ERC721URIStorageUpgradeable.d.ts +1 -2
  323. package/dist/zksync/artifacts/ERC721URIStorageUpgradeable.js +1 -386
  324. package/dist/zksync/artifacts/ERC721Upgradeable.d.ts +1 -2
  325. package/dist/zksync/artifacts/ERC721Upgradeable.js +1 -354
  326. package/dist/zksync/artifacts/EnumerableMap.d.ts +1 -2
  327. package/dist/zksync/artifacts/EnumerableMap.js +1 -10
  328. package/dist/zksync/artifacts/EnumerableMapEnrollment.d.ts +1 -2
  329. package/dist/zksync/artifacts/EnumerableMapEnrollment.js +1 -73
  330. package/dist/zksync/artifacts/EnumerableMapExtended.d.ts +1 -2
  331. package/dist/zksync/artifacts/EnumerableMapExtended.js +1 -10
  332. package/dist/zksync/artifacts/EnumerableSet.d.ts +1 -2
  333. package/dist/zksync/artifacts/EnumerableSet.js +1 -10
  334. package/dist/zksync/artifacts/ExitPayloadReader.d.ts +1 -2
  335. package/dist/zksync/artifacts/ExitPayloadReader.js +1 -10
  336. package/dist/zksync/artifacts/FallbackDomainRoutingHook.d.ts +1 -2
  337. package/dist/zksync/artifacts/FallbackDomainRoutingHook.js +1 -363
  338. package/dist/zksync/artifacts/FiatTokenTest.d.ts +1 -2
  339. package/dist/zksync/artifacts/FiatTokenTest.js +1 -406
  340. package/dist/zksync/artifacts/FungibleTokenRouter.d.ts +1 -2
  341. package/dist/zksync/artifacts/FungibleTokenRouter.js +1 -560
  342. package/dist/zksync/artifacts/FxBaseRootTunnel.d.ts +1 -2
  343. package/dist/zksync/artifacts/FxBaseRootTunnel.js +1 -108
  344. package/dist/zksync/artifacts/GasRouter.d.ts +1 -2
  345. package/dist/zksync/artifacts/GasRouter.js +1 -410
  346. package/dist/zksync/artifacts/HypERC20.d.ts +1 -2
  347. package/dist/zksync/artifacts/HypERC20.js +1 -870
  348. package/dist/zksync/artifacts/HypERC20Collateral.d.ts +1 -2
  349. package/dist/zksync/artifacts/HypERC20Collateral.js +1 -617
  350. package/dist/zksync/artifacts/HypERC4626.d.ts +1 -2
  351. package/dist/zksync/artifacts/HypERC4626.js +1 -1016
  352. package/dist/zksync/artifacts/HypERC4626Collateral.d.ts +1 -2
  353. package/dist/zksync/artifacts/HypERC4626Collateral.js +1 -692
  354. package/dist/zksync/artifacts/HypERC4626OwnerCollateral.d.ts +1 -2
  355. package/dist/zksync/artifacts/HypERC4626OwnerCollateral.js +1 -695
  356. package/dist/zksync/artifacts/HypERC721.d.ts +1 -2
  357. package/dist/zksync/artifacts/HypERC721.js +1 -963
  358. package/dist/zksync/artifacts/HypERC721Collateral.d.ts +1 -2
  359. package/dist/zksync/artifacts/HypERC721Collateral.js +1 -618
  360. package/dist/zksync/artifacts/HypERC721URICollateral.d.ts +1 -2
  361. package/dist/zksync/artifacts/HypERC721URICollateral.js +1 -618
  362. package/dist/zksync/artifacts/HypERC721URIStorage.d.ts +1 -2
  363. package/dist/zksync/artifacts/HypERC721URIStorage.js +1 -995
  364. package/dist/zksync/artifacts/HypFiatToken.d.ts +1 -2
  365. package/dist/zksync/artifacts/HypFiatToken.js +1 -617
  366. package/dist/zksync/artifacts/HypNative.d.ts +1 -2
  367. package/dist/zksync/artifacts/HypNative.js +1 -622
  368. package/dist/zksync/artifacts/HypXERC20.d.ts +1 -2
  369. package/dist/zksync/artifacts/HypXERC20.js +1 -617
  370. package/dist/zksync/artifacts/HypXERC20Lockbox.d.ts +1 -2
  371. package/dist/zksync/artifacts/HypXERC20Lockbox.js +1 -650
  372. package/dist/zksync/artifacts/HyperlaneServiceManager.d.ts +1 -2
  373. package/dist/zksync/artifacts/HyperlaneServiceManager.js +1 -572
  374. package/dist/zksync/artifacts/IAVSDirectory.d.ts +1 -2
  375. package/dist/zksync/artifacts/IAVSDirectory.js +1 -91
  376. package/dist/zksync/artifacts/IAccessControl.d.ts +1 -2
  377. package/dist/zksync/artifacts/IAccessControl.js +1 -183
  378. package/dist/zksync/artifacts/IAggregationIsm.d.ts +1 -2
  379. package/dist/zksync/artifacts/IAggregationIsm.js +1 -72
  380. package/dist/zksync/artifacts/IAny2EVMMessageReceiver.d.ts +1 -2
  381. package/dist/zksync/artifacts/IAny2EVMMessageReceiver.js +1 -63
  382. package/dist/zksync/artifacts/IBeacon.d.ts +1 -2
  383. package/dist/zksync/artifacts/IBeacon.js +1 -24
  384. package/dist/zksync/artifacts/IBridge.d.ts +1 -2
  385. package/dist/zksync/artifacts/IBridge.js +1 -522
  386. package/dist/zksync/artifacts/ICcipReadIsm.d.ts +1 -2
  387. package/dist/zksync/artifacts/ICcipReadIsm.js +1 -92
  388. package/dist/zksync/artifacts/ICheckpointManager.d.ts +1 -2
  389. package/dist/zksync/artifacts/ICheckpointManager.js +1 -50
  390. package/dist/zksync/artifacts/ICircleMessageTransmitter.d.ts +1 -2
  391. package/dist/zksync/artifacts/ICircleMessageTransmitter.js +1 -54
  392. package/dist/zksync/artifacts/ICrossDomainMessenger.d.ts +1 -2
  393. package/dist/zksync/artifacts/ICrossDomainMessenger.js +1 -110
  394. package/dist/zksync/artifacts/IDelegationManager.d.ts +1 -2
  395. package/dist/zksync/artifacts/IDelegationManager.js +1 -89
  396. package/dist/zksync/artifacts/IECDSAStakeRegistryEventsAndErrors.d.ts +1 -2
  397. package/dist/zksync/artifacts/IECDSAStakeRegistryEventsAndErrors.js +1 -297
  398. package/dist/zksync/artifacts/IERC1155Receiver.d.ts +1 -2
  399. package/dist/zksync/artifacts/IERC1155Receiver.js +1 -108
  400. package/dist/zksync/artifacts/IERC1271Upgradeable.d.ts +1 -2
  401. package/dist/zksync/artifacts/IERC1271Upgradeable.js +1 -35
  402. package/dist/zksync/artifacts/IERC165.d.ts +1 -2
  403. package/dist/zksync/artifacts/IERC165.js +1 -30
  404. package/dist/zksync/artifacts/IERC165Upgradeable.d.ts +1 -2
  405. package/dist/zksync/artifacts/IERC165Upgradeable.js +1 -30
  406. package/dist/zksync/artifacts/IERC1822Proxiable.d.ts +1 -2
  407. package/dist/zksync/artifacts/IERC1822Proxiable.js +1 -24
  408. package/dist/zksync/artifacts/IERC1967.d.ts +1 -2
  409. package/dist/zksync/artifacts/IERC1967.js +1 -56
  410. package/dist/zksync/artifacts/IERC20.d.ts +1 -2
  411. package/dist/zksync/artifacts/IERC20.js +1 -194
  412. package/dist/zksync/artifacts/IERC20Metadata.d.ts +1 -2
  413. package/dist/zksync/artifacts/IERC20Metadata.js +1 -233
  414. package/dist/zksync/artifacts/IERC20MetadataUpgradeable.d.ts +1 -2
  415. package/dist/zksync/artifacts/IERC20MetadataUpgradeable.js +1 -233
  416. package/dist/zksync/artifacts/IERC20Permit.d.ts +1 -2
  417. package/dist/zksync/artifacts/IERC20Permit.js +1 -86
  418. package/dist/zksync/artifacts/IERC20Upgradeable.d.ts +1 -2
  419. package/dist/zksync/artifacts/IERC20Upgradeable.js +1 -194
  420. package/dist/zksync/artifacts/IERC4626.d.ts +1 -2
  421. package/dist/zksync/artifacts/IERC4626.js +1 -623
  422. package/dist/zksync/artifacts/IERC4906Upgradeable.d.ts +1 -2
  423. package/dist/zksync/artifacts/IERC4906Upgradeable.js +1 -328
  424. package/dist/zksync/artifacts/IERC721.d.ts +1 -2
  425. package/dist/zksync/artifacts/IERC721.js +1 -296
  426. package/dist/zksync/artifacts/IERC721Enumerable.d.ts +1 -2
  427. package/dist/zksync/artifacts/IERC721Enumerable.js +1 -352
  428. package/dist/zksync/artifacts/IERC721EnumerableUpgradeable.d.ts +1 -2
  429. package/dist/zksync/artifacts/IERC721EnumerableUpgradeable.js +1 -352
  430. package/dist/zksync/artifacts/IERC721Metadata.d.ts +1 -2
  431. package/dist/zksync/artifacts/IERC721Metadata.js +1 -341
  432. package/dist/zksync/artifacts/IERC721MetadataUpgradeable.d.ts +1 -2
  433. package/dist/zksync/artifacts/IERC721MetadataUpgradeable.js +1 -341
  434. package/dist/zksync/artifacts/IERC721Receiver.d.ts +1 -2
  435. package/dist/zksync/artifacts/IERC721Receiver.js +1 -45
  436. package/dist/zksync/artifacts/IERC721ReceiverUpgradeable.d.ts +1 -2
  437. package/dist/zksync/artifacts/IERC721ReceiverUpgradeable.js +1 -45
  438. package/dist/zksync/artifacts/IERC721Upgradeable.d.ts +1 -2
  439. package/dist/zksync/artifacts/IERC721Upgradeable.js +1 -296
  440. package/dist/zksync/artifacts/IFiatToken.d.ts +1 -2
  441. package/dist/zksync/artifacts/IFiatToken.js +1 -231
  442. package/dist/zksync/artifacts/IFxMessageProcessor.d.ts +1 -2
  443. package/dist/zksync/artifacts/IFxMessageProcessor.js +1 -34
  444. package/dist/zksync/artifacts/IFxStateSender.d.ts +1 -2
  445. package/dist/zksync/artifacts/IFxStateSender.js +1 -29
  446. package/dist/zksync/artifacts/IGasOracle.d.ts +1 -2
  447. package/dist/zksync/artifacts/IGasOracle.js +1 -35
  448. package/dist/zksync/artifacts/IInterchainGasPaymaster.d.ts +1 -2
  449. package/dist/zksync/artifacts/IInterchainGasPaymaster.js +1 -94
  450. package/dist/zksync/artifacts/IInterchainSecurityModule.d.ts +1 -2
  451. package/dist/zksync/artifacts/IInterchainSecurityModule.js +1 -48
  452. package/dist/zksync/artifacts/IL1CrossDomainMessenger.d.ts +1 -2
  453. package/dist/zksync/artifacts/IL1CrossDomainMessenger.js +1 -111
  454. package/dist/zksync/artifacts/IL2CrossDomainMessenger.d.ts +1 -2
  455. package/dist/zksync/artifacts/IL2CrossDomainMessenger.js +1 -124
  456. package/dist/zksync/artifacts/ILayerZeroEndpoint.d.ts +1 -2
  457. package/dist/zksync/artifacts/ILayerZeroEndpoint.js +1 -447
  458. package/dist/zksync/artifacts/ILayerZeroEndpointV2.d.ts +1 -2
  459. package/dist/zksync/artifacts/ILayerZeroEndpointV2.js +1 -1844
  460. package/dist/zksync/artifacts/ILayerZeroUserApplicationConfig.d.ts +1 -2
  461. package/dist/zksync/artifacts/ILayerZeroUserApplicationConfig.js +1 -83
  462. package/dist/zksync/artifacts/ILiquidityLayerAdapter.d.ts +1 -2
  463. package/dist/zksync/artifacts/ILiquidityLayerAdapter.js +1 -84
  464. package/dist/zksync/artifacts/ILiquidityLayerMessageRecipient.d.ts +1 -2
  465. package/dist/zksync/artifacts/ILiquidityLayerMessageRecipient.js +1 -44
  466. package/dist/zksync/artifacts/ILiquidityLayerRouter.d.ts +1 -2
  467. package/dist/zksync/artifacts/ILiquidityLayerRouter.js +1 -55
  468. package/dist/zksync/artifacts/IMailbox.d.ts +1 -2
  469. package/dist/zksync/artifacts/IMailbox.js +1 -418
  470. package/dist/zksync/artifacts/IMessageDispatcher.d.ts +1 -2
  471. package/dist/zksync/artifacts/IMessageDispatcher.js +1 -77
  472. package/dist/zksync/artifacts/IMessageLibManager.d.ts +1 -2
  473. package/dist/zksync/artifacts/IMessageLibManager.js +1 -629
  474. package/dist/zksync/artifacts/IMessageRecipient.d.ts +1 -2
  475. package/dist/zksync/artifacts/IMessageRecipient.js +1 -34
  476. package/dist/zksync/artifacts/IMessagingChannel.d.ts +1 -2
  477. package/dist/zksync/artifacts/IMessagingChannel.js +1 -344
  478. package/dist/zksync/artifacts/IMessagingComposer.d.ts +1 -2
  479. package/dist/zksync/artifacts/IMessagingComposer.js +1 -246
  480. package/dist/zksync/artifacts/IMessagingContext.d.ts +1 -2
  481. package/dist/zksync/artifacts/IMessagingContext.js +1 -42
  482. package/dist/zksync/artifacts/IMultisigIsm.d.ts +1 -2
  483. package/dist/zksync/artifacts/IMultisigIsm.js +1 -72
  484. package/dist/zksync/artifacts/IOptimismPortal.d.ts +1 -2
  485. package/dist/zksync/artifacts/IOptimismPortal.js +1 -56
  486. package/dist/zksync/artifacts/IOutbox.d.ts +1 -2
  487. package/dist/zksync/artifacts/IOutbox.js +1 -446
  488. package/dist/zksync/artifacts/IOwnable.d.ts +1 -2
  489. package/dist/zksync/artifacts/IOwnable.js +1 -24
  490. package/dist/zksync/artifacts/IPaymentCoordinator.d.ts +1 -2
  491. package/dist/zksync/artifacts/IPaymentCoordinator.js +1 -63
  492. package/dist/zksync/artifacts/IPortalTokenBridge.d.ts +1 -2
  493. package/dist/zksync/artifacts/IPortalTokenBridge.js +1 -197
  494. package/dist/zksync/artifacts/IPostDispatchHook.d.ts +1 -2
  495. package/dist/zksync/artifacts/IPostDispatchHook.js +1 -85
  496. package/dist/zksync/artifacts/IRemoteChallenger.d.ts +1 -2
  497. package/dist/zksync/artifacts/IRemoteChallenger.js +1 -37
  498. package/dist/zksync/artifacts/IRouter.d.ts +1 -2
  499. package/dist/zksync/artifacts/IRouter.js +1 -79
  500. package/dist/zksync/artifacts/IRouterClient.d.ts +1 -2
  501. package/dist/zksync/artifacts/IRouterClient.js +1 -177
  502. package/dist/zksync/artifacts/IRoutingIsm.d.ts +1 -2
  503. package/dist/zksync/artifacts/IRoutingIsm.js +1 -67
  504. package/dist/zksync/artifacts/IServiceManager.d.ts +1 -2
  505. package/dist/zksync/artifacts/IServiceManager.js +1 -169
  506. package/dist/zksync/artifacts/IServiceManagerUI.d.ts +1 -2
  507. package/dist/zksync/artifacts/IServiceManagerUI.js +1 -117
  508. package/dist/zksync/artifacts/ISignatureUtils.d.ts +1 -2
  509. package/dist/zksync/artifacts/ISignatureUtils.js +1 -10
  510. package/dist/zksync/artifacts/ISlasher.d.ts +1 -2
  511. package/dist/zksync/artifacts/ISlasher.js +1 -24
  512. package/dist/zksync/artifacts/ISpecifiesInterchainSecurityModule.d.ts +1 -2
  513. package/dist/zksync/artifacts/ISpecifiesInterchainSecurityModule.js +1 -24
  514. package/dist/zksync/artifacts/IStaticWeightedMultisigIsm.d.ts +1 -2
  515. package/dist/zksync/artifacts/IStaticWeightedMultisigIsm.js +1 -84
  516. package/dist/zksync/artifacts/IStrategy.d.ts +1 -2
  517. package/dist/zksync/artifacts/IStrategy.js +1 -230
  518. package/dist/zksync/artifacts/IThresholdAddressFactory.d.ts +1 -2
  519. package/dist/zksync/artifacts/IThresholdAddressFactory.js +1 -35
  520. package/dist/zksync/artifacts/ITokenMessenger.d.ts +1 -2
  521. package/dist/zksync/artifacts/ITokenMessenger.js +1 -97
  522. package/dist/zksync/artifacts/ITransparentUpgradeableProxy.d.ts +1 -2
  523. package/dist/zksync/artifacts/ITransparentUpgradeableProxy.js +1 -126
  524. package/dist/zksync/artifacts/IValidatorAnnounce.d.ts +1 -2
  525. package/dist/zksync/artifacts/IValidatorAnnounce.js +1 -72
  526. package/dist/zksync/artifacts/IXERC20.d.ts +1 -2
  527. package/dist/zksync/artifacts/IXERC20.js +1 -342
  528. package/dist/zksync/artifacts/IXERC20Lockbox.d.ts +1 -2
  529. package/dist/zksync/artifacts/IXERC20Lockbox.js +1 -112
  530. package/dist/zksync/artifacts/IXERC20VS.d.ts +1 -2
  531. package/dist/zksync/artifacts/IXERC20VS.js +1 -463
  532. package/dist/zksync/artifacts/Indexed.d.ts +1 -2
  533. package/dist/zksync/artifacts/Indexed.js +1 -29
  534. package/dist/zksync/artifacts/Initializable.d.ts +1 -2
  535. package/dist/zksync/artifacts/Initializable.js +1 -24
  536. package/dist/zksync/artifacts/InterchainAccountIsm.d.ts +1 -2
  537. package/dist/zksync/artifacts/InterchainAccountIsm.js +1 -91
  538. package/dist/zksync/artifacts/InterchainAccountMessage.d.ts +1 -2
  539. package/dist/zksync/artifacts/InterchainAccountMessage.js +1 -10
  540. package/dist/zksync/artifacts/InterchainAccountRouter.d.ts +1 -2
  541. package/dist/zksync/artifacts/InterchainAccountRouter.js +1 -1018
  542. package/dist/zksync/artifacts/InterchainGasPaymaster.d.ts +1 -2
  543. package/dist/zksync/artifacts/InterchainGasPaymaster.js +1 -457
  544. package/dist/zksync/artifacts/InterchainQueryMessage.d.ts +1 -2
  545. package/dist/zksync/artifacts/InterchainQueryMessage.js +1 -10
  546. package/dist/zksync/artifacts/InterchainQueryRouter.d.ts +1 -2
  547. package/dist/zksync/artifacts/InterchainQueryRouter.js +1 -483
  548. package/dist/zksync/artifacts/LayerZeroTreasuryMock.d.ts +1 -2
  549. package/dist/zksync/artifacts/LayerZeroTreasuryMock.js +1 -77
  550. package/dist/zksync/artifacts/LayerZeroV1Hook.d.ts +1 -2
  551. package/dist/zksync/artifacts/LayerZeroV1Hook.js +1 -398
  552. package/dist/zksync/artifacts/LayerZeroV2Hook.d.ts +1 -2
  553. package/dist/zksync/artifacts/LayerZeroV2Hook.js +1 -397
  554. package/dist/zksync/artifacts/LayerZeroV2Ism.d.ts +1 -2
  555. package/dist/zksync/artifacts/LayerZeroV2Ism.js +1 -262
  556. package/dist/zksync/artifacts/LibArbitrumL1.d.ts +1 -2
  557. package/dist/zksync/artifacts/LibArbitrumL1.js +1 -10
  558. package/dist/zksync/artifacts/LibBit.d.ts +1 -2
  559. package/dist/zksync/artifacts/LibBit.js +1 -10
  560. package/dist/zksync/artifacts/LibOptimism.d.ts +1 -2
  561. package/dist/zksync/artifacts/LibOptimism.js +1 -10
  562. package/dist/zksync/artifacts/LightTestRecipient.d.ts +1 -2
  563. package/dist/zksync/artifacts/LightTestRecipient.js +1 -242
  564. package/dist/zksync/artifacts/LiquidityLayerRouter.d.ts +1 -2
  565. package/dist/zksync/artifacts/LiquidityLayerRouter.js +1 -444
  566. package/dist/zksync/artifacts/Mailbox.d.ts +1 -2
  567. package/dist/zksync/artifacts/Mailbox.js +1 -690
  568. package/dist/zksync/artifacts/MailboxClient.d.ts +1 -2
  569. package/dist/zksync/artifacts/MailboxClient.js +1 -193
  570. package/dist/zksync/artifacts/Math.d.ts +1 -2
  571. package/dist/zksync/artifacts/Math.js +1 -10
  572. package/dist/zksync/artifacts/MathUpgradeable.d.ts +1 -2
  573. package/dist/zksync/artifacts/MathUpgradeable.js +1 -10
  574. package/dist/zksync/artifacts/Merkle.d.ts +1 -2
  575. package/dist/zksync/artifacts/Merkle.js +1 -10
  576. package/dist/zksync/artifacts/MerkleLib.d.ts +1 -2
  577. package/dist/zksync/artifacts/MerkleLib.js +1 -10
  578. package/dist/zksync/artifacts/MerklePatriciaProof.d.ts +1 -2
  579. package/dist/zksync/artifacts/MerklePatriciaProof.js +1 -10
  580. package/dist/zksync/artifacts/MerkleRootMultisigIsmMetadata.d.ts +1 -2
  581. package/dist/zksync/artifacts/MerkleRootMultisigIsmMetadata.js +1 -10
  582. package/dist/zksync/artifacts/MerkleTreeHook.d.ts +1 -2
  583. package/dist/zksync/artifacts/MerkleTreeHook.js +1 -379
  584. package/dist/zksync/artifacts/Message.d.ts +1 -2
  585. package/dist/zksync/artifacts/Message.js +1 -10
  586. package/dist/zksync/artifacts/MessageIdMultisigIsmMetadata.d.ts +1 -2
  587. package/dist/zksync/artifacts/MessageIdMultisigIsmMetadata.js +1 -10
  588. package/dist/zksync/artifacts/MetaProxy.d.ts +1 -2
  589. package/dist/zksync/artifacts/MetaProxy.js +1 -10
  590. package/dist/zksync/artifacts/MinimalProxy.d.ts +1 -2
  591. package/dist/zksync/artifacts/MinimalProxy.js +1 -10
  592. package/dist/zksync/artifacts/MockArbBridge.d.ts +1 -2
  593. package/dist/zksync/artifacts/MockArbBridge.js +1 -126
  594. package/dist/zksync/artifacts/MockArbSys.d.ts +1 -2
  595. package/dist/zksync/artifacts/MockArbSys.js +1 -96
  596. package/dist/zksync/artifacts/MockCircleMessageTransmitter.d.ts +1 -2
  597. package/dist/zksync/artifacts/MockCircleMessageTransmitter.js +1 -112
  598. package/dist/zksync/artifacts/MockCircleTokenMessenger.d.ts +1 -2
  599. package/dist/zksync/artifacts/MockCircleTokenMessenger.js +1 -121
  600. package/dist/zksync/artifacts/MockERC4626YieldSharing.d.ts +1 -2
  601. package/dist/zksync/artifacts/MockERC4626YieldSharing.js +1 -827
  602. package/dist/zksync/artifacts/MockHyperlaneEnvironment.d.ts +1 -2
  603. package/dist/zksync/artifacts/MockHyperlaneEnvironment.js +1 -124
  604. package/dist/zksync/artifacts/MockMailbox.d.ts +1 -2
  605. package/dist/zksync/artifacts/MockMailbox.js +1 -805
  606. package/dist/zksync/artifacts/MockMessageDispatcher.d.ts +1 -2
  607. package/dist/zksync/artifacts/MockMessageDispatcher.js +1 -77
  608. package/dist/zksync/artifacts/MockMessageExecutor.d.ts +1 -2
  609. package/dist/zksync/artifacts/MockMessageExecutor.js +1 -30
  610. package/dist/zksync/artifacts/MockOptimismMessenger.d.ts +1 -2
  611. package/dist/zksync/artifacts/MockOptimismMessenger.js +1 -137
  612. package/dist/zksync/artifacts/MockOptimismPortal.d.ts +1 -2
  613. package/dist/zksync/artifacts/MockOptimismPortal.js +1 -61
  614. package/dist/zksync/artifacts/MockPortalBridge.d.ts +1 -2
  615. package/dist/zksync/artifacts/MockPortalBridge.js +1 -266
  616. package/dist/zksync/artifacts/MockToken.d.ts +1 -2
  617. package/dist/zksync/artifacts/MockToken.js +1 -325
  618. package/dist/zksync/artifacts/NoopIsm.d.ts +1 -2
  619. package/dist/zksync/artifacts/NoopIsm.js +1 -61
  620. package/dist/zksync/artifacts/OPL2ToL1Hook.d.ts +1 -2
  621. package/dist/zksync/artifacts/OPL2ToL1Hook.js +1 -363
  622. package/dist/zksync/artifacts/OPL2ToL1Ism.d.ts +1 -2
  623. package/dist/zksync/artifacts/OPL2ToL1Ism.js +1 -217
  624. package/dist/zksync/artifacts/OPL2ToL1Metadata.d.ts +1 -2
  625. package/dist/zksync/artifacts/OPL2ToL1Metadata.js +1 -10
  626. package/dist/zksync/artifacts/OPStackHook.d.ts +1 -2
  627. package/dist/zksync/artifacts/OPStackHook.js +1 -332
  628. package/dist/zksync/artifacts/OPStackIsm.d.ts +1 -2
  629. package/dist/zksync/artifacts/OPStackIsm.js +1 -204
  630. package/dist/zksync/artifacts/Ownable.d.ts +1 -2
  631. package/dist/zksync/artifacts/Ownable.js +1 -63
  632. package/dist/zksync/artifacts/Ownable2StepUpgradeable.d.ts +1 -2
  633. package/dist/zksync/artifacts/Ownable2StepUpgradeable.js +1 -115
  634. package/dist/zksync/artifacts/OwnableMulticall.d.ts +1 -2
  635. package/dist/zksync/artifacts/OwnableMulticall.js +1 -69
  636. package/dist/zksync/artifacts/OwnableUpgradeable.d.ts +1 -2
  637. package/dist/zksync/artifacts/OwnableUpgradeable.js +1 -76
  638. package/dist/zksync/artifacts/PackageVersioned.d.ts +1 -2
  639. package/dist/zksync/artifacts/PackageVersioned.js +1 -24
  640. package/dist/zksync/artifacts/Pausable.d.ts +1 -2
  641. package/dist/zksync/artifacts/Pausable.js +1 -50
  642. package/dist/zksync/artifacts/PausableHook.d.ts +1 -2
  643. package/dist/zksync/artifacts/PausableHook.js +1 -203
  644. package/dist/zksync/artifacts/PausableIsm.d.ts +1 -2
  645. package/dist/zksync/artifacts/PausableIsm.js +1 -177
  646. package/dist/zksync/artifacts/PolygonPosHook.d.ts +1 -2
  647. package/dist/zksync/artifacts/PolygonPosHook.js +1 -434
  648. package/dist/zksync/artifacts/PolygonPosIsm.d.ts +1 -2
  649. package/dist/zksync/artifacts/PolygonPosIsm.js +1 -227
  650. package/dist/zksync/artifacts/PortalAdapter.d.ts +1 -2
  651. package/dist/zksync/artifacts/PortalAdapter.js +1 -593
  652. package/dist/zksync/artifacts/ProtocolFee.d.ts +1 -2
  653. package/dist/zksync/artifacts/ProtocolFee.js +1 -274
  654. package/dist/zksync/artifacts/Proxy.d.ts +1 -2
  655. package/dist/zksync/artifacts/Proxy.js +1 -19
  656. package/dist/zksync/artifacts/ProxyAdmin.d.ts +1 -2
  657. package/dist/zksync/artifacts/ProxyAdmin.js +1 -160
  658. package/dist/zksync/artifacts/RLPReader.d.ts +1 -2
  659. package/dist/zksync/artifacts/RLPReader.js +1 -10
  660. package/dist/zksync/artifacts/RateLimited.d.ts +1 -2
  661. package/dist/zksync/artifacts/RateLimited.js +1 -257
  662. package/dist/zksync/artifacts/RateLimitedHook.d.ts +1 -2
  663. package/dist/zksync/artifacts/RateLimitedHook.js +1 -490
  664. package/dist/zksync/artifacts/RateLimitedIsm.d.ts +1 -2
  665. package/dist/zksync/artifacts/RateLimitedIsm.js +1 -453
  666. package/dist/zksync/artifacts/ReentrancyGuard.d.ts +1 -2
  667. package/dist/zksync/artifacts/ReentrancyGuard.js +1 -10
  668. package/dist/zksync/artifacts/Router.d.ts +1 -2
  669. package/dist/zksync/artifacts/Router.js +1 -310
  670. package/dist/zksync/artifacts/SafeCastUpgradeable.d.ts +1 -2
  671. package/dist/zksync/artifacts/SafeCastUpgradeable.js +1 -10
  672. package/dist/zksync/artifacts/SafeERC20.d.ts +1 -2
  673. package/dist/zksync/artifacts/SafeERC20.js +1 -10
  674. package/dist/zksync/artifacts/SignatureCheckerUpgradeable.d.ts +1 -2
  675. package/dist/zksync/artifacts/SignatureCheckerUpgradeable.js +1 -10
  676. package/dist/zksync/artifacts/SignedMath.d.ts +1 -2
  677. package/dist/zksync/artifacts/SignedMath.js +1 -10
  678. package/dist/zksync/artifacts/SignedMathUpgradeable.d.ts +1 -2
  679. package/dist/zksync/artifacts/SignedMathUpgradeable.js +1 -10
  680. package/dist/zksync/artifacts/StandardHookMetadata.d.ts +1 -2
  681. package/dist/zksync/artifacts/StandardHookMetadata.js +1 -24
  682. package/dist/zksync/artifacts/StaticAddressSetFactory.d.ts +1 -2
  683. package/dist/zksync/artifacts/StaticAddressSetFactory.js +1 -123
  684. package/dist/zksync/artifacts/StaticAggregationHook.d.ts +1 -2
  685. package/dist/zksync/artifacts/StaticAggregationHook.js +1 -117
  686. package/dist/zksync/artifacts/StaticAggregationHookFactory.d.ts +1 -2
  687. package/dist/zksync/artifacts/StaticAggregationHookFactory.js +1 -123
  688. package/dist/zksync/artifacts/StaticAggregationIsm.d.ts +1 -2
  689. package/dist/zksync/artifacts/StaticAggregationIsm.js +1 -85
  690. package/dist/zksync/artifacts/StaticAggregationIsmFactory.d.ts +1 -2
  691. package/dist/zksync/artifacts/StaticAggregationIsmFactory.js +1 -85
  692. package/dist/zksync/artifacts/StaticMerkleRootMultisigIsm.d.ts +1 -2
  693. package/dist/zksync/artifacts/StaticMerkleRootMultisigIsm.js +1 -104
  694. package/dist/zksync/artifacts/StaticMerkleRootMultisigIsmFactory.d.ts +1 -2
  695. package/dist/zksync/artifacts/StaticMerkleRootMultisigIsmFactory.js +1 -85
  696. package/dist/zksync/artifacts/StaticMerkleRootWeightedMultisigIsm.d.ts +1 -2
  697. package/dist/zksync/artifacts/StaticMerkleRootWeightedMultisigIsm.js +1 -129
  698. package/dist/zksync/artifacts/StaticMerkleRootWeightedMultisigIsmFactory.d.ts +1 -2
  699. package/dist/zksync/artifacts/StaticMerkleRootWeightedMultisigIsmFactory.js +1 -109
  700. package/dist/zksync/artifacts/StaticMessageIdMultisigIsm.d.ts +1 -2
  701. package/dist/zksync/artifacts/StaticMessageIdMultisigIsm.js +1 -104
  702. package/dist/zksync/artifacts/StaticMessageIdMultisigIsmFactory.d.ts +1 -2
  703. package/dist/zksync/artifacts/StaticMessageIdMultisigIsmFactory.js +1 -85
  704. package/dist/zksync/artifacts/StaticMessageIdWeightedMultisigIsm.d.ts +1 -2
  705. package/dist/zksync/artifacts/StaticMessageIdWeightedMultisigIsm.js +1 -129
  706. package/dist/zksync/artifacts/StaticMessageIdWeightedMultisigIsmFactory.d.ts +1 -2
  707. package/dist/zksync/artifacts/StaticMessageIdWeightedMultisigIsmFactory.js +1 -109
  708. package/dist/zksync/artifacts/StaticThresholdAddressSetFactory.d.ts +1 -2
  709. package/dist/zksync/artifacts/StaticThresholdAddressSetFactory.js +1 -85
  710. package/dist/zksync/artifacts/StaticWeightedValidatorSetFactory.d.ts +1 -2
  711. package/dist/zksync/artifacts/StaticWeightedValidatorSetFactory.js +1 -109
  712. package/dist/zksync/artifacts/StorageAggregationIsm.d.ts +1 -2
  713. package/dist/zksync/artifacts/StorageAggregationIsm.js +1 -297
  714. package/dist/zksync/artifacts/StorageAggregationIsmFactory.d.ts +1 -2
  715. package/dist/zksync/artifacts/StorageAggregationIsmFactory.js +1 -79
  716. package/dist/zksync/artifacts/StorageGasOracle.d.ts +1 -2
  717. package/dist/zksync/artifacts/StorageGasOracle.js +1 -209
  718. package/dist/zksync/artifacts/StorageMerkleRootMultisigIsm.d.ts +1 -2
  719. package/dist/zksync/artifacts/StorageMerkleRootMultisigIsm.js +1 -316
  720. package/dist/zksync/artifacts/StorageMerkleRootMultisigIsmFactory.d.ts +1 -2
  721. package/dist/zksync/artifacts/StorageMerkleRootMultisigIsmFactory.js +1 -79
  722. package/dist/zksync/artifacts/StorageMessageIdMultisigIsm.d.ts +1 -2
  723. package/dist/zksync/artifacts/StorageMessageIdMultisigIsm.js +1 -316
  724. package/dist/zksync/artifacts/StorageMessageIdMultisigIsmFactory.d.ts +1 -2
  725. package/dist/zksync/artifacts/StorageMessageIdMultisigIsmFactory.js +1 -79
  726. package/dist/zksync/artifacts/StorageMultisigIsmFactory.d.ts +1 -2
  727. package/dist/zksync/artifacts/StorageMultisigIsmFactory.js +1 -74
  728. package/dist/zksync/artifacts/StorageSlot.d.ts +1 -2
  729. package/dist/zksync/artifacts/StorageSlot.js +1 -10
  730. package/dist/zksync/artifacts/Strings.d.ts +1 -2
  731. package/dist/zksync/artifacts/Strings.js +1 -10
  732. package/dist/zksync/artifacts/StringsUpgradeable.d.ts +1 -2
  733. package/dist/zksync/artifacts/StringsUpgradeable.js +1 -10
  734. package/dist/zksync/artifacts/TestAVSDirectory.d.ts +1 -2
  735. package/dist/zksync/artifacts/TestAVSDirectory.js +1 -188
  736. package/dist/zksync/artifacts/TestDelegationManager.d.ts +1 -2
  737. package/dist/zksync/artifacts/TestDelegationManager.js +1 -150
  738. package/dist/zksync/artifacts/TestGasRouter.d.ts +1 -2
  739. package/dist/zksync/artifacts/TestGasRouter.js +1 -439
  740. package/dist/zksync/artifacts/TestHyperlaneServiceManager.d.ts +1 -2
  741. package/dist/zksync/artifacts/TestHyperlaneServiceManager.js +1 -590
  742. package/dist/zksync/artifacts/TestInterchainGasPaymaster.d.ts +1 -2
  743. package/dist/zksync/artifacts/TestInterchainGasPaymaster.js +1 -488
  744. package/dist/zksync/artifacts/TestIsm.d.ts +1 -2
  745. package/dist/zksync/artifacts/TestIsm.js +1 -61
  746. package/dist/zksync/artifacts/TestLiquidityLayerMessageRecipient.d.ts +1 -2
  747. package/dist/zksync/artifacts/TestLiquidityLayerMessageRecipient.js +1 -81
  748. package/dist/zksync/artifacts/TestMailbox.d.ts +1 -2
  749. package/dist/zksync/artifacts/TestMailbox.js +1 -794
  750. package/dist/zksync/artifacts/TestMerkle.d.ts +1 -2
  751. package/dist/zksync/artifacts/TestMerkle.js +1 -97
  752. package/dist/zksync/artifacts/TestMerkleTreeHook.d.ts +1 -2
  753. package/dist/zksync/artifacts/TestMerkleTreeHook.js +1 -405
  754. package/dist/zksync/artifacts/TestMessage.d.ts +1 -2
  755. package/dist/zksync/artifacts/TestMessage.js +1 -182
  756. package/dist/zksync/artifacts/TestPaymentCoordinator.d.ts +1 -2
  757. package/dist/zksync/artifacts/TestPaymentCoordinator.js +1 -63
  758. package/dist/zksync/artifacts/TestPostDispatchHook.d.ts +1 -2
  759. package/dist/zksync/artifacts/TestPostDispatchHook.js +1 -143
  760. package/dist/zksync/artifacts/TestQuery.d.ts +1 -2
  761. package/dist/zksync/artifacts/TestQuery.js +1 -90
  762. package/dist/zksync/artifacts/TestQuerySender.d.ts +1 -2
  763. package/dist/zksync/artifacts/TestQuerySender.js +1 -225
  764. package/dist/zksync/artifacts/TestRecipient.d.ts +1 -2
  765. package/dist/zksync/artifacts/TestRecipient.js +1 -242
  766. package/dist/zksync/artifacts/TestRemoteChallenger.d.ts +1 -2
  767. package/dist/zksync/artifacts/TestRemoteChallenger.js +1 -48
  768. package/dist/zksync/artifacts/TestRouter.d.ts +1 -2
  769. package/dist/zksync/artifacts/TestRouter.js +1 -406
  770. package/dist/zksync/artifacts/TestSendReceiver.d.ts +1 -2
  771. package/dist/zksync/artifacts/TestSendReceiver.js +1 -111
  772. package/dist/zksync/artifacts/TestSlasher.d.ts +1 -2
  773. package/dist/zksync/artifacts/TestSlasher.js +1 -24
  774. package/dist/zksync/artifacts/TestTokenRecipient.d.ts +1 -2
  775. package/dist/zksync/artifacts/TestTokenRecipient.js +1 -202
  776. package/dist/zksync/artifacts/TimelockController.d.ts +1 -2
  777. package/dist/zksync/artifacts/TimelockController.js +1 -900
  778. package/dist/zksync/artifacts/TokenMessage.d.ts +1 -2
  779. package/dist/zksync/artifacts/TokenMessage.js +1 -10
  780. package/dist/zksync/artifacts/TokenRouter.d.ts +1 -2
  781. package/dist/zksync/artifacts/TokenRouter.js +1 -547
  782. package/dist/zksync/artifacts/TransparentUpgradeableProxy.d.ts +1 -2
  783. package/dist/zksync/artifacts/TransparentUpgradeableProxy.js +1 -85
  784. package/dist/zksync/artifacts/TrustedRelayerIsm.d.ts +1 -2
  785. package/dist/zksync/artifacts/TrustedRelayerIsm.js +1 -103
  786. package/dist/zksync/artifacts/TypeCasts.d.ts +1 -2
  787. package/dist/zksync/artifacts/TypeCasts.js +1 -10
  788. package/dist/zksync/artifacts/ValidatorAnnounce.d.ts +1 -2
  789. package/dist/zksync/artifacts/ValidatorAnnounce.js +1 -303
  790. package/dist/zksync/artifacts/Versioned.d.ts +1 -2
  791. package/dist/zksync/artifacts/Versioned.js +1 -24
  792. package/dist/zksync/artifacts/WHypERC4626.d.ts +1 -2
  793. package/dist/zksync/artifacts/WHypERC4626.js +1 -430
  794. package/dist/zksync/artifacts/XERC20LockboxTest.d.ts +1 -2
  795. package/dist/zksync/artifacts/XERC20LockboxTest.js +1 -138
  796. package/dist/zksync/artifacts/XERC20Test.d.ts +1 -2
  797. package/dist/zksync/artifacts/XERC20Test.js +1 -563
  798. package/dist/zksync/artifacts/XERC20VSTest.d.ts +1 -2
  799. package/dist/zksync/artifacts/XERC20VSTest.js +1 -760
  800. package/dist/zksync/artifacts.d.ts +1 -2
  801. package/dist/zksync/artifacts.js +1 -2
  802. package/dist/zksync/buildArtifact.js +1 -1
  803. package/dist/zksync/buildArtifact.json +1 -1
  804. package/package.json +2 -2
@@ -12,7 +12,7 @@ export declare class HypERC20__factory extends ContractFactory {
12
12
  }): TransactionRequest;
13
13
  attach(address: string): HypERC20;
14
14
  connect(signer: Signer): HypERC20__factory;
15
- static readonly bytecode = "0x6101006040523480156200001257600080fd5b50604051620038343803806200383483398101604081905262000035916200018c565b818180808080806001600160a01b0381163b620000985760405162461bcd60e51b815260206004820152601e60248201527f4d61696c626f78436c69656e743a20696e76616c6964206d61696c626f780000604482015260640160405180910390fd5b6001600160a01b03821660808190526040805163234d8e3d60e21b81529051638d3638f4916004808201926020929091908290030181865afa158015620000e3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001099190620001e4565b63ffffffff1660a0526200011d336200013a565b50505060c09390935250505060ff90921660e05250620002139050565b606580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600080600060608486031215620001a257600080fd5b835160ff81168114620001b457600080fd5b6020850151604086015191945092506001600160a01b0381168114620001d957600080fd5b809150509250925092565b600060208284031215620001f757600080fd5b815163ffffffff811681146200020c57600080fd5b9392505050565b60805160a05160c05160e0516135c46200027060003960006103440152600081816107b50152818161201801526122160152600061050f01526000818161066101528181610c320152818161204d015261241901526135c46000f3fe60806040526004361061024f5760003560e01c806381b4e8b411610138578063d5438eae116100b0578063e9198bf91161007f578063f2ed8c5311610064578063f2ed8c5314610763578063f2fde38b14610783578063f51e181a146107a357600080fd5b8063e9198bf914610723578063efae508a1461074357600080fd5b8063d5438eae1461064f578063dd62ed3e14610683578063de523cf3146106d6578063e80a7c791461070357600080fd5b806395d89b4111610107578063a9059cbb116100ec578063a9059cbb146105ef578063b1bd64361461060f578063b49c53a71461062f57600080fd5b806395d89b41146105ba578063a457c2d7146105cf57600080fd5b806381b4e8b4146104ea5780638d3638f4146104fd5780638da5cb5b1461054657806393c448471461057157600080fd5b8063440df4f4116101cb57806370a082311161019a57806371a15b381161017f57806371a15b381461044b578063775313a11461046b5780637f5a7c7b1461049857600080fd5b806370a0823114610416578063715018a61461043657600080fd5b8063440df4f4146103ae57806349d462ef146103d057806351debffc146103f057806356d5d4751461040357600080fd5b806323b872dd11610222578063313ce56711610207578063313ce56714610330578063395093511461036e5780633dfd38731461038e57600080fd5b806323b872dd146102f05780632ead72f61461031057600080fd5b806306fdde0314610254578063095ea7b31461027f5780630e72cc06146102af57806318160ddd146102d1575b600080fd5b34801561026057600080fd5b506102696107d7565b6040516102769190612b6b565b60405180910390f35b34801561028b57600080fd5b5061029f61029a366004612ba7565b610869565b6040519015158152602001610276565b3480156102bb57600080fd5b506102cf6102ca366004612bd1565b610883565b005b3480156102dd57600080fd5b506035545b604051908152602001610276565b3480156102fc57600080fd5b5061029f61030b366004612bec565b6109d1565b34801561031c57600080fd5b506102e261032b366004612c3c565b6109f5565b34801561033c57600080fd5b5060405160ff7f0000000000000000000000000000000000000000000000000000000000000000168152602001610276565b34801561037a57600080fd5b5061029f610389366004612ba7565b610a14565b34801561039a57600080fd5b506102cf6103a9366004612bd1565b610a60565b3480156103ba57600080fd5b506103c3610ba1565b6040516102769190612c57565b3480156103dc57600080fd5b506102cf6103eb366004612ca1565b610bb2565b6102e26103fe366004612cff565b610bc8565b6102cf610411366004612d76565b610c1a565b34801561042257600080fd5b506102e2610431366004612bd1565b610d8e565b34801561044257600080fd5b506102cf610db9565b34801561045757600080fd5b506102cf610466366004612e15565b610dcd565b34801561047757600080fd5b506102e2610486366004612c3c565b60fc6020526000908152604090205481565b3480156104a457600080fd5b506097546104c59073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610276565b6102e26104f8366004612e57565b610e28565b34801561050957600080fd5b506105317f000000000000000000000000000000000000000000000000000000000000000081565b60405163ffffffff9091168152602001610276565b34801561055257600080fd5b5060655473ffffffffffffffffffffffffffffffffffffffff166104c5565b34801561057d57600080fd5b506102696040518060400160405280600581526020017f372e302e3000000000000000000000000000000000000000000000000000000081525081565b3480156105c657600080fd5b50610269610e36565b3480156105db57600080fd5b5061029f6105ea366004612ba7565b610e45565b3480156105fb57600080fd5b5061029f61060a366004612ba7565b610f16565b34801561061b57600080fd5b506102cf61062a366004612e8a565b610f24565b34801561063b57600080fd5b506102cf61064a366004612ca1565b610f9a565b34801561065b57600080fd5b506104c57f000000000000000000000000000000000000000000000000000000000000000081565b34801561068f57600080fd5b506102e261069e366004612eff565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260346020908152604080832093909416825291909152205490565b3480156106e257600080fd5b506098546104c59073ffffffffffffffffffffffffffffffffffffffff1681565b34801561070f57600080fd5b506102cf61071e36600461300c565b610fac565b34801561072f57600080fd5b506102cf61073e36600461309e565b61115b565b34801561074f57600080fd5b506102cf61075e366004612c3c565b61123a565b34801561076f57600080fd5b506102e261077e366004612c3c565b61124e565b34801561078f57600080fd5b506102cf61079e366004612bd1565b6112af565b3480156107af57600080fd5b506102e27f000000000000000000000000000000000000000000000000000000000000000081565b6060603680546107e6906130fe565b80601f0160208091040260200160405190810160405280929190818152602001828054610812906130fe565b801561085f5780601f106108345761010080835404028352916020019161085f565b820191906000526020600020905b81548152906001019060200180831161084257829003601f168201915b5050505050905090565b600033610877818585611363565b60019150505b92915050565b8073ffffffffffffffffffffffffffffffffffffffff81163b1515806108bd575073ffffffffffffffffffffffffffffffffffffffff8116155b61094e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d61696c626f78436c69656e743a20696e76616c696420636f6e74726163742060448201527f73657474696e670000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b610956611516565b609880547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527fc47cbcc588c67679e52261c45cc315e56562f8d0ccaba16facb9093ff9498799906020015b60405180910390a15050565b6000336109df858285611597565b6109ea858585611668565b506001949350505050565b600080610a0c60c963ffffffff808616906118de16565b949350505050565b33600081815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff871684529091528120549091906108779082908690610a5b908790613180565b611363565b8073ffffffffffffffffffffffffffffffffffffffff81163b151580610a9a575073ffffffffffffffffffffffffffffffffffffffff8116155b610b26576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d61696c626f78436c69656e743a20696e76616c696420636f6e74726163742060448201527f73657474696e67000000000000000000000000000000000000000000000000006064820152608401610945565b610b2e611516565b609780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527f4eab7b127c764308788622363ad3e9532de3dfba7845bd4f84c125a22544255a906020016109c5565b6060610bad60c96118f7565b905090565b610bba611516565b610bc482826119a8565b5050565b6000610c0f8787873488888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a92506119f6915050565b979650505050505050565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610cdf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f4d61696c626f78436c69656e743a2073656e646572206e6f74206d61696c626f60448201527f78000000000000000000000000000000000000000000000000000000000000006064820152608401610945565b6000610cea85611a7d565b9050838114610d7b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f456e726f6c6c656420726f7574657220646f6573206e6f74206d61746368207360448201527f656e6465720000000000000000000000000000000000000000000000000000006064820152608401610945565b610d8785858585611ae2565b5050505050565b73ffffffffffffffffffffffffffffffffffffffff811660009081526033602052604081205461087d565b610dc1611516565b610dcb6000611b76565b565b610dd5611516565b8060005b81811015610e2257610e10848483818110610df657610df6613193565b9050602002016020810190610e0b9190612c3c565b611bed565b610e1b600182613180565b9050610dd9565b50505050565b6000610a0c84848434611c42565b6060603780546107e6906130fe565b33600081815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919083811015610f09576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f0000000000000000000000000000000000000000000000000000006064820152608401610945565b6109ea8286868403611363565b600033610877818585611668565b610f2c611516565b60005b81811015610f9557610f83838383818110610f4c57610f4c613193565b610f629260206040909202019081019150612c3c565b848484818110610f7457610f74613193565b905060400201602001356119a8565b610f8e600182613180565b9050610f2f565b505050565b610fa2611516565b610bc48282611c7b565b600054610100900460ff1615808015610fcc5750600054600160ff909116105b80610fe65750303b158015610fe6575060005460ff166001145b611072576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610945565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156110d057600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6110da8686611c91565b6110e43388611d32565b6110ef848484611e27565b801561115257600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b611163611516565b8281146111cc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e677468000000000000000000000000000000000000000000000000006044820152606401610945565b8260005b81811015611232576112208686838181106111ed576111ed613193565b90506020020160208101906112029190612c3c565b85858481811061121457611214613193565b90506020020135611c7b565b61122b600182613180565b90506111d0565b505050505050565b611242611516565b61124b81611bed565b50565b600061087d826112916000801b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60405180602001604052806000815250611ee1565b60975473ffffffffffffffffffffffffffffffffffffffff16611f10565b6112b7611516565b73ffffffffffffffffffffffffffffffffffffffff811661135a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610945565b61124b81611b76565b73ffffffffffffffffffffffffffffffffffffffff8316611405576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff82166114a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60655473ffffffffffffffffffffffffffffffffffffffff163314610dcb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610945565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152603460209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610e22578181101561165b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610945565b610e228484848403611363565b73ffffffffffffffffffffffffffffffffffffffff831661170b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff82166117ae576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff831660009081526033602052604090205481811015611864576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e636500000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff80851660008181526033602052604080822086860390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906118d19086815260200190565b60405180910390a3610e22565b6000806118eb8484611f26565b915091505b9250929050565b6060600061190483611f60565b9050805167ffffffffffffffff81111561192057611920612f32565b604051908082528060200260200182016040528015611949578160200160208202803683370190505b50915060005b81518110156119a15781818151811061196a5761196a613193565b602002602001015183828151811061198457611984613193565b63ffffffff9092166020928302919091019091015260010161194f565b5050919050565b63ffffffff8216600081815260fc6020908152604091829020849055815192835282018390527fc3de732a98b24a2b5c6f67e8a7fb057ffc14046b83968a2c73e4148d2fba978b91016109c5565b600080611a0286611ff1565b90506000611a0f87612011565b90506000611a1e898385611ee1565b9050611a2d8a8883898961203d565b9350888a63ffffffff167fd229aacb94204188fe8042965fa6b269c62dc5818b21238779ab64bdd17efeec84604051611a6891815260200190565b60405180910390a35050509695505050505050565b60008080611a9560c963ffffffff808716906118de16565b915091508115611aa6579392505050565b611aaf846120f0565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109459190612b6b565b6000611aee8383612127565b90506000611afc8484612146565b9050366000611b0b8686612156565b91509150611b2b611b1b85612166565b611b248561220f565b848461223b565b838863ffffffff167fba20947a325f450d232530e5f5fce293e7963499d5309a07cee84a269f2f15a685604051611b6491815260200190565b60405180910390a35050505050505050565b6065805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b611c0160c963ffffffff8084169061224516565b611c0a826120f0565b90610bc4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109459190612b6b565b6000611c7285858585611c548a612251565b60975473ffffffffffffffffffffffffffffffffffffffff166119f6565b95945050505050565b610bc460c963ffffffff80851690849061227316565b600054610100900460ff16611d28576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b610bc4828261227e565b73ffffffffffffffffffffffffffffffffffffffff8216611daf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610945565b8060356000828254611dc19190613180565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000818152603360209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600054610100900460ff16611ebe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b611ec661232e565b611ecf83610a60565b611ed882610883565b610f9581611b76565b6060838383604051602001611ef8939291906131c2565b60405160208183030381529060405290509392505050565b6000610a0c8484611f2087612251565b856123cd565b6000818152600283016020526040812054819080611f5557611f4885856124a1565b9250600091506118f09050565b6001925090506118f0565b60606000611f6d836124ad565b90508067ffffffffffffffff811115611f8857611f88612f32565b604051908082528060200260200182016040528015611fb1578160200160208202803683370190505b50915060005b818110156119a157611fc984826124b8565b60001c838281518110611fde57611fde613193565b6020908102919091010152600101611fb7565b6060611ffd33836124c4565b505060408051602081019091526000815290565b600061087d7f0000000000000000000000000000000000000000000000000000000000000000836131ef565b60008061204987611a7d565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166310b83dc08789848989896040518763ffffffff1660e01b81526004016120ad959493929190613206565b60206040518083038185885af11580156120cb573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610c0f9190613266565b60606121018263ffffffff1661268a565b604051602001612111919061327f565b6040516020818303038152906040529050919050565b600061213660208284866132c4565b61213f916132ee565b9392505050565b60006121366040602084866132c4565b3660006118eb83604081876132c4565b600073ffffffffffffffffffffffffffffffffffffffff82111561220b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f5479706543617374733a2062797465733332546f41646472657373206f76657260448201527f666c6f77000000000000000000000000000000000000000000000000000000006064820152608401610945565b5090565b600061087d7f00000000000000000000000000000000000000000000000000000000000000008361332a565b610e228484611d32565b600061213f8383612748565b63ffffffff8116600090815260fc602052604090205460609061087d90612765565b610e22838383612783565b600054610100900460ff16612315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b603661232183826133ad565b506037610f9582826133ad565b600054610100900460ff166123c5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b610dcb6127a0565b6000806123d986611a7d565b6040517f81d2ea9500000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016906381d2ea959061245690899085908a908a908a90600401613206565b602060405180830381865afa158015612473573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124979190613266565b9695505050505050565b600061213f8383612840565b600061087d82612858565b600061213f8383612862565b73ffffffffffffffffffffffffffffffffffffffff8216612567576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f73000000000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff82166000908152603360205260409020548181101561261d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f63650000000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff831660008181526033602090815260408083208686039055603580548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b606060006126978361288c565b600101905060008167ffffffffffffffff8111156126b7576126b7612f32565b6040519080825280601f01601f1916602001820160405280156126e1576020820181803683370190505b5090508181016020015b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff017f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85049450846126eb57509392505050565b6000818152600283016020526040812081905561213f838361296e565b606061087d600083336040518060200160405280600081525061297a565b60008281526002840160205260408120829055610a0c84846129af565b600054610100900460ff16612837576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b610dcb33611b76565b6000818152600183016020526040812054151561213f565b600061087d825490565b600082600001828154811061287957612879613193565b9060005260206000200154905092915050565b6000807a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083106128d5577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000830492506040015b6d04ee2d6d415b85acef81000000008310612901576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061291f57662386f26fc10000830492506010015b6305f5e1008310612937576305f5e100830492506008015b612710831061294b57612710830492506004015b6064831061295d576064830492506002015b600a831061087d5760010192915050565b600061213f83836129bb565b60606001858585856040516020016129969594939291906134c7565b6040516020818303038152906040529050949350505050565b600061213f8383612aae565b60008181526001830160205260408120548015612aa45760006129df60018361354c565b85549091506000906129f39060019061354c565b9050818114612a58576000866000018281548110612a1357612a13613193565b9060005260206000200154905080876000018481548110612a3657612a36613193565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080612a6957612a6961355f565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061087d565b600091505061087d565b6000818152600183016020526040812054612af55750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561087d565b50600061087d565b60005b83811015612b18578181015183820152602001612b00565b50506000910152565b60008151808452612b39816020860160208601612afd565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061213f6020830184612b21565b803573ffffffffffffffffffffffffffffffffffffffff81168114612ba257600080fd5b919050565b60008060408385031215612bba57600080fd5b612bc383612b7e565b946020939093013593505050565b600060208284031215612be357600080fd5b61213f82612b7e565b600080600060608486031215612c0157600080fd5b612c0a84612b7e565b9250612c1860208501612b7e565b9150604084013590509250925092565b803563ffffffff81168114612ba257600080fd5b600060208284031215612c4e57600080fd5b61213f82612c28565b6020808252825182820181905260009190848201906040850190845b81811015612c9557835163ffffffff1683529284019291840191600101612c73565b50909695505050505050565b60008060408385031215612cb457600080fd5b612bc383612c28565b60008083601f840112612ccf57600080fd5b50813567ffffffffffffffff811115612ce757600080fd5b6020830191508360208285010111156118f057600080fd5b60008060008060008060a08789031215612d1857600080fd5b612d2187612c28565b95506020870135945060408701359350606087013567ffffffffffffffff811115612d4b57600080fd5b612d5789828a01612cbd565b9094509250612d6a905060808801612b7e565b90509295509295509295565b60008060008060608587031215612d8c57600080fd5b612d9585612c28565b935060208501359250604085013567ffffffffffffffff811115612db857600080fd5b612dc487828801612cbd565b95989497509550505050565b60008083601f840112612de257600080fd5b50813567ffffffffffffffff811115612dfa57600080fd5b6020830191508360208260051b85010111156118f057600080fd5b60008060208385031215612e2857600080fd5b823567ffffffffffffffff811115612e3f57600080fd5b612e4b85828601612dd0565b90969095509350505050565b600080600060608486031215612e6c57600080fd5b612e7584612c28565b95602085013595506040909401359392505050565b60008060208385031215612e9d57600080fd5b823567ffffffffffffffff80821115612eb557600080fd5b818501915085601f830112612ec957600080fd5b813581811115612ed857600080fd5b8660208260061b8501011115612eed57600080fd5b60209290920196919550909350505050565b60008060408385031215612f1257600080fd5b612f1b83612b7e565b9150612f2960208401612b7e565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f830112612f7257600080fd5b813567ffffffffffffffff80821115612f8d57612f8d612f32565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715612fd357612fd3612f32565b81604052838152866020858801011115612fec57600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060008060c0878903121561302557600080fd5b86359550602087013567ffffffffffffffff8082111561304457600080fd5b6130508a838b01612f61565b9650604089013591508082111561306657600080fd5b5061307389828a01612f61565b94505061308260608801612b7e565b925061309060808801612b7e565b9150612d6a60a08801612b7e565b600080600080604085870312156130b457600080fd5b843567ffffffffffffffff808211156130cc57600080fd5b6130d888838901612dd0565b909650945060208701359150808211156130f157600080fd5b50612dc487828801612dd0565b600181811c9082168061311257607f821691505b60208210810361314b577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082018082111561087d5761087d613151565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b838152826020820152600082516131e0816040850160208701612afd565b91909101604001949350505050565b808202811582820484141761087d5761087d613151565b63ffffffff8616815284602082015260a06040820152600061322b60a0830186612b21565b828103606084015261323d8186612b21565b91505073ffffffffffffffffffffffffffffffffffffffff831660808301529695505050505050565b60006020828403121561327857600080fd5b5051919050565b7f4e6f20726f7574657220656e726f6c6c656420666f7220646f6d61696e3a20008152600082516132b781601f850160208701612afd565b91909101601f0192915050565b600080858511156132d457600080fd5b838611156132e157600080fd5b5050820193919092039150565b8035602083101561087d577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b600082613360577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b601f821115610f95576000816000526020600020601f850160051c8101602086101561338e5750805b601f850160051c820191505b818110156112325782815560010161339a565b815167ffffffffffffffff8111156133c7576133c7612f32565b6133db816133d584546130fe565b84613365565b602080601f83116001811461342e57600084156133f85750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555611232565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561347b5788860151825594840194600190910190840161345c565b50858210156134b757878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b7fffff0000000000000000000000000000000000000000000000000000000000008660f01b1681528460028201528360228201527fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008360601b1660428201526000825161353b816056850160208701612afd565b919091016056019695505050505050565b8181038181111561087d5761087d613151565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea2646970667358221220001f4b8caf6d1516308a1743e303549fa6e54b1b369c5793e309a33fb1a88f9164736f6c63430008160033";
15
+ static readonly bytecode = "0x6101006040523480156200001257600080fd5b50604051620038343803806200383483398101604081905262000035916200018c565b818180808080806001600160a01b0381163b620000985760405162461bcd60e51b815260206004820152601e60248201527f4d61696c626f78436c69656e743a20696e76616c6964206d61696c626f780000604482015260640160405180910390fd5b6001600160a01b03821660808190526040805163234d8e3d60e21b81529051638d3638f4916004808201926020929091908290030181865afa158015620000e3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001099190620001e4565b63ffffffff1660a0526200011d336200013a565b50505060c09390935250505060ff90921660e05250620002139050565b606580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600080600060608486031215620001a257600080fd5b835160ff81168114620001b457600080fd5b6020850151604086015191945092506001600160a01b0381168114620001d957600080fd5b809150509250925092565b600060208284031215620001f757600080fd5b815163ffffffff811681146200020c57600080fd5b9392505050565b60805160a05160c05160e0516135c46200027060003960006103440152600081816107b50152818161201801526122160152600061050f01526000818161066101528181610c320152818161204d015261241901526135c46000f3fe60806040526004361061024f5760003560e01c806381b4e8b411610138578063d5438eae116100b0578063e9198bf91161007f578063f2ed8c5311610064578063f2ed8c5314610763578063f2fde38b14610783578063f51e181a146107a357600080fd5b8063e9198bf914610723578063efae508a1461074357600080fd5b8063d5438eae1461064f578063dd62ed3e14610683578063de523cf3146106d6578063e80a7c791461070357600080fd5b806395d89b4111610107578063a9059cbb116100ec578063a9059cbb146105ef578063b1bd64361461060f578063b49c53a71461062f57600080fd5b806395d89b41146105ba578063a457c2d7146105cf57600080fd5b806381b4e8b4146104ea5780638d3638f4146104fd5780638da5cb5b1461054657806393c448471461057157600080fd5b8063440df4f4116101cb57806370a082311161019a57806371a15b381161017f57806371a15b381461044b578063775313a11461046b5780637f5a7c7b1461049857600080fd5b806370a0823114610416578063715018a61461043657600080fd5b8063440df4f4146103ae57806349d462ef146103d057806351debffc146103f057806356d5d4751461040357600080fd5b806323b872dd11610222578063313ce56711610207578063313ce56714610330578063395093511461036e5780633dfd38731461038e57600080fd5b806323b872dd146102f05780632ead72f61461031057600080fd5b806306fdde0314610254578063095ea7b31461027f5780630e72cc06146102af57806318160ddd146102d1575b600080fd5b34801561026057600080fd5b506102696107d7565b6040516102769190612b6b565b60405180910390f35b34801561028b57600080fd5b5061029f61029a366004612ba7565b610869565b6040519015158152602001610276565b3480156102bb57600080fd5b506102cf6102ca366004612bd1565b610883565b005b3480156102dd57600080fd5b506035545b604051908152602001610276565b3480156102fc57600080fd5b5061029f61030b366004612bec565b6109d1565b34801561031c57600080fd5b506102e261032b366004612c3c565b6109f5565b34801561033c57600080fd5b5060405160ff7f0000000000000000000000000000000000000000000000000000000000000000168152602001610276565b34801561037a57600080fd5b5061029f610389366004612ba7565b610a14565b34801561039a57600080fd5b506102cf6103a9366004612bd1565b610a60565b3480156103ba57600080fd5b506103c3610ba1565b6040516102769190612c57565b3480156103dc57600080fd5b506102cf6103eb366004612ca1565b610bb2565b6102e26103fe366004612cff565b610bc8565b6102cf610411366004612d76565b610c1a565b34801561042257600080fd5b506102e2610431366004612bd1565b610d8e565b34801561044257600080fd5b506102cf610db9565b34801561045757600080fd5b506102cf610466366004612e15565b610dcd565b34801561047757600080fd5b506102e2610486366004612c3c565b60fc6020526000908152604090205481565b3480156104a457600080fd5b506097546104c59073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610276565b6102e26104f8366004612e57565b610e28565b34801561050957600080fd5b506105317f000000000000000000000000000000000000000000000000000000000000000081565b60405163ffffffff9091168152602001610276565b34801561055257600080fd5b5060655473ffffffffffffffffffffffffffffffffffffffff166104c5565b34801561057d57600080fd5b506102696040518060400160405280600581526020017f372e312e3000000000000000000000000000000000000000000000000000000081525081565b3480156105c657600080fd5b50610269610e36565b3480156105db57600080fd5b5061029f6105ea366004612ba7565b610e45565b3480156105fb57600080fd5b5061029f61060a366004612ba7565b610f16565b34801561061b57600080fd5b506102cf61062a366004612e8a565b610f24565b34801561063b57600080fd5b506102cf61064a366004612ca1565b610f9a565b34801561065b57600080fd5b506104c57f000000000000000000000000000000000000000000000000000000000000000081565b34801561068f57600080fd5b506102e261069e366004612eff565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260346020908152604080832093909416825291909152205490565b3480156106e257600080fd5b506098546104c59073ffffffffffffffffffffffffffffffffffffffff1681565b34801561070f57600080fd5b506102cf61071e36600461300c565b610fac565b34801561072f57600080fd5b506102cf61073e36600461309e565b61115b565b34801561074f57600080fd5b506102cf61075e366004612c3c565b61123a565b34801561076f57600080fd5b506102e261077e366004612c3c565b61124e565b34801561078f57600080fd5b506102cf61079e366004612bd1565b6112af565b3480156107af57600080fd5b506102e27f000000000000000000000000000000000000000000000000000000000000000081565b6060603680546107e6906130fe565b80601f0160208091040260200160405190810160405280929190818152602001828054610812906130fe565b801561085f5780601f106108345761010080835404028352916020019161085f565b820191906000526020600020905b81548152906001019060200180831161084257829003601f168201915b5050505050905090565b600033610877818585611363565b60019150505b92915050565b8073ffffffffffffffffffffffffffffffffffffffff81163b1515806108bd575073ffffffffffffffffffffffffffffffffffffffff8116155b61094e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d61696c626f78436c69656e743a20696e76616c696420636f6e74726163742060448201527f73657474696e670000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b610956611516565b609880547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527fc47cbcc588c67679e52261c45cc315e56562f8d0ccaba16facb9093ff9498799906020015b60405180910390a15050565b6000336109df858285611597565b6109ea858585611668565b506001949350505050565b600080610a0c60c963ffffffff808616906118de16565b949350505050565b33600081815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff871684529091528120549091906108779082908690610a5b908790613180565b611363565b8073ffffffffffffffffffffffffffffffffffffffff81163b151580610a9a575073ffffffffffffffffffffffffffffffffffffffff8116155b610b26576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d61696c626f78436c69656e743a20696e76616c696420636f6e74726163742060448201527f73657474696e67000000000000000000000000000000000000000000000000006064820152608401610945565b610b2e611516565b609780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527f4eab7b127c764308788622363ad3e9532de3dfba7845bd4f84c125a22544255a906020016109c5565b6060610bad60c96118f7565b905090565b610bba611516565b610bc482826119a8565b5050565b6000610c0f8787873488888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a92506119f6915050565b979650505050505050565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610cdf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f4d61696c626f78436c69656e743a2073656e646572206e6f74206d61696c626f60448201527f78000000000000000000000000000000000000000000000000000000000000006064820152608401610945565b6000610cea85611a7d565b9050838114610d7b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f456e726f6c6c656420726f7574657220646f6573206e6f74206d61746368207360448201527f656e6465720000000000000000000000000000000000000000000000000000006064820152608401610945565b610d8785858585611ae2565b5050505050565b73ffffffffffffffffffffffffffffffffffffffff811660009081526033602052604081205461087d565b610dc1611516565b610dcb6000611b76565b565b610dd5611516565b8060005b81811015610e2257610e10848483818110610df657610df6613193565b9050602002016020810190610e0b9190612c3c565b611bed565b610e1b600182613180565b9050610dd9565b50505050565b6000610a0c84848434611c42565b6060603780546107e6906130fe565b33600081815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919083811015610f09576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f0000000000000000000000000000000000000000000000000000006064820152608401610945565b6109ea8286868403611363565b600033610877818585611668565b610f2c611516565b60005b81811015610f9557610f83838383818110610f4c57610f4c613193565b610f629260206040909202019081019150612c3c565b848484818110610f7457610f74613193565b905060400201602001356119a8565b610f8e600182613180565b9050610f2f565b505050565b610fa2611516565b610bc48282611c7b565b600054610100900460ff1615808015610fcc5750600054600160ff909116105b80610fe65750303b158015610fe6575060005460ff166001145b611072576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610945565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156110d057600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6110da8686611c91565b6110e43388611d32565b6110ef848484611e27565b801561115257600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b611163611516565b8281146111cc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e677468000000000000000000000000000000000000000000000000006044820152606401610945565b8260005b81811015611232576112208686838181106111ed576111ed613193565b90506020020160208101906112029190612c3c565b85858481811061121457611214613193565b90506020020135611c7b565b61122b600182613180565b90506111d0565b505050505050565b611242611516565b61124b81611bed565b50565b600061087d826112916000801b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60405180602001604052806000815250611ee1565b60975473ffffffffffffffffffffffffffffffffffffffff16611f10565b6112b7611516565b73ffffffffffffffffffffffffffffffffffffffff811661135a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610945565b61124b81611b76565b73ffffffffffffffffffffffffffffffffffffffff8316611405576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff82166114a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60655473ffffffffffffffffffffffffffffffffffffffff163314610dcb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610945565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152603460209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610e22578181101561165b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610945565b610e228484848403611363565b73ffffffffffffffffffffffffffffffffffffffff831661170b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff82166117ae576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff831660009081526033602052604090205481811015611864576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e636500000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff80851660008181526033602052604080822086860390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906118d19086815260200190565b60405180910390a3610e22565b6000806118eb8484611f26565b915091505b9250929050565b6060600061190483611f60565b9050805167ffffffffffffffff81111561192057611920612f32565b604051908082528060200260200182016040528015611949578160200160208202803683370190505b50915060005b81518110156119a15781818151811061196a5761196a613193565b602002602001015183828151811061198457611984613193565b63ffffffff9092166020928302919091019091015260010161194f565b5050919050565b63ffffffff8216600081815260fc6020908152604091829020849055815192835282018390527fc3de732a98b24a2b5c6f67e8a7fb057ffc14046b83968a2c73e4148d2fba978b91016109c5565b600080611a0286611ff1565b90506000611a0f87612011565b90506000611a1e898385611ee1565b9050611a2d8a8883898961203d565b9350888a63ffffffff167fd229aacb94204188fe8042965fa6b269c62dc5818b21238779ab64bdd17efeec84604051611a6891815260200190565b60405180910390a35050509695505050505050565b60008080611a9560c963ffffffff808716906118de16565b915091508115611aa6579392505050565b611aaf846120f0565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109459190612b6b565b6000611aee8383612127565b90506000611afc8484612146565b9050366000611b0b8686612156565b91509150611b2b611b1b85612166565b611b248561220f565b848461223b565b838863ffffffff167fba20947a325f450d232530e5f5fce293e7963499d5309a07cee84a269f2f15a685604051611b6491815260200190565b60405180910390a35050505050505050565b6065805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b611c0160c963ffffffff8084169061224516565b611c0a826120f0565b90610bc4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109459190612b6b565b6000611c7285858585611c548a612251565b60975473ffffffffffffffffffffffffffffffffffffffff166119f6565b95945050505050565b610bc460c963ffffffff80851690849061227316565b600054610100900460ff16611d28576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b610bc4828261227e565b73ffffffffffffffffffffffffffffffffffffffff8216611daf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610945565b8060356000828254611dc19190613180565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000818152603360209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600054610100900460ff16611ebe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b611ec661232e565b611ecf83610a60565b611ed882610883565b610f9581611b76565b6060838383604051602001611ef8939291906131c2565b60405160208183030381529060405290509392505050565b6000610a0c8484611f2087612251565b856123cd565b6000818152600283016020526040812054819080611f5557611f4885856124a1565b9250600091506118f09050565b6001925090506118f0565b60606000611f6d836124ad565b90508067ffffffffffffffff811115611f8857611f88612f32565b604051908082528060200260200182016040528015611fb1578160200160208202803683370190505b50915060005b818110156119a157611fc984826124b8565b60001c838281518110611fde57611fde613193565b6020908102919091010152600101611fb7565b6060611ffd33836124c4565b505060408051602081019091526000815290565b600061087d7f0000000000000000000000000000000000000000000000000000000000000000836131ef565b60008061204987611a7d565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166310b83dc08789848989896040518763ffffffff1660e01b81526004016120ad959493929190613206565b60206040518083038185885af11580156120cb573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610c0f9190613266565b60606121018263ffffffff1661268a565b604051602001612111919061327f565b6040516020818303038152906040529050919050565b600061213660208284866132c4565b61213f916132ee565b9392505050565b60006121366040602084866132c4565b3660006118eb83604081876132c4565b600073ffffffffffffffffffffffffffffffffffffffff82111561220b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f5479706543617374733a2062797465733332546f41646472657373206f76657260448201527f666c6f77000000000000000000000000000000000000000000000000000000006064820152608401610945565b5090565b600061087d7f00000000000000000000000000000000000000000000000000000000000000008361332a565b610e228484611d32565b600061213f8383612748565b63ffffffff8116600090815260fc602052604090205460609061087d90612765565b610e22838383612783565b600054610100900460ff16612315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b603661232183826133ad565b506037610f9582826133ad565b600054610100900460ff166123c5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b610dcb6127a0565b6000806123d986611a7d565b6040517f81d2ea9500000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016906381d2ea959061245690899085908a908a908a90600401613206565b602060405180830381865afa158015612473573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124979190613266565b9695505050505050565b600061213f8383612840565b600061087d82612858565b600061213f8383612862565b73ffffffffffffffffffffffffffffffffffffffff8216612567576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f73000000000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff82166000908152603360205260409020548181101561261d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f63650000000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff831660008181526033602090815260408083208686039055603580548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b606060006126978361288c565b600101905060008167ffffffffffffffff8111156126b7576126b7612f32565b6040519080825280601f01601f1916602001820160405280156126e1576020820181803683370190505b5090508181016020015b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff017f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85049450846126eb57509392505050565b6000818152600283016020526040812081905561213f838361296e565b606061087d600083336040518060200160405280600081525061297a565b60008281526002840160205260408120829055610a0c84846129af565b600054610100900460ff16612837576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b610dcb33611b76565b6000818152600183016020526040812054151561213f565b600061087d825490565b600082600001828154811061287957612879613193565b9060005260206000200154905092915050565b6000807a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083106128d5577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000830492506040015b6d04ee2d6d415b85acef81000000008310612901576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061291f57662386f26fc10000830492506010015b6305f5e1008310612937576305f5e100830492506008015b612710831061294b57612710830492506004015b6064831061295d576064830492506002015b600a831061087d5760010192915050565b600061213f83836129bb565b60606001858585856040516020016129969594939291906134c7565b6040516020818303038152906040529050949350505050565b600061213f8383612aae565b60008181526001830160205260408120548015612aa45760006129df60018361354c565b85549091506000906129f39060019061354c565b9050818114612a58576000866000018281548110612a1357612a13613193565b9060005260206000200154905080876000018481548110612a3657612a36613193565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080612a6957612a6961355f565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061087d565b600091505061087d565b6000818152600183016020526040812054612af55750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561087d565b50600061087d565b60005b83811015612b18578181015183820152602001612b00565b50506000910152565b60008151808452612b39816020860160208601612afd565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061213f6020830184612b21565b803573ffffffffffffffffffffffffffffffffffffffff81168114612ba257600080fd5b919050565b60008060408385031215612bba57600080fd5b612bc383612b7e565b946020939093013593505050565b600060208284031215612be357600080fd5b61213f82612b7e565b600080600060608486031215612c0157600080fd5b612c0a84612b7e565b9250612c1860208501612b7e565b9150604084013590509250925092565b803563ffffffff81168114612ba257600080fd5b600060208284031215612c4e57600080fd5b61213f82612c28565b6020808252825182820181905260009190848201906040850190845b81811015612c9557835163ffffffff1683529284019291840191600101612c73565b50909695505050505050565b60008060408385031215612cb457600080fd5b612bc383612c28565b60008083601f840112612ccf57600080fd5b50813567ffffffffffffffff811115612ce757600080fd5b6020830191508360208285010111156118f057600080fd5b60008060008060008060a08789031215612d1857600080fd5b612d2187612c28565b95506020870135945060408701359350606087013567ffffffffffffffff811115612d4b57600080fd5b612d5789828a01612cbd565b9094509250612d6a905060808801612b7e565b90509295509295509295565b60008060008060608587031215612d8c57600080fd5b612d9585612c28565b935060208501359250604085013567ffffffffffffffff811115612db857600080fd5b612dc487828801612cbd565b95989497509550505050565b60008083601f840112612de257600080fd5b50813567ffffffffffffffff811115612dfa57600080fd5b6020830191508360208260051b85010111156118f057600080fd5b60008060208385031215612e2857600080fd5b823567ffffffffffffffff811115612e3f57600080fd5b612e4b85828601612dd0565b90969095509350505050565b600080600060608486031215612e6c57600080fd5b612e7584612c28565b95602085013595506040909401359392505050565b60008060208385031215612e9d57600080fd5b823567ffffffffffffffff80821115612eb557600080fd5b818501915085601f830112612ec957600080fd5b813581811115612ed857600080fd5b8660208260061b8501011115612eed57600080fd5b60209290920196919550909350505050565b60008060408385031215612f1257600080fd5b612f1b83612b7e565b9150612f2960208401612b7e565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f830112612f7257600080fd5b813567ffffffffffffffff80821115612f8d57612f8d612f32565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715612fd357612fd3612f32565b81604052838152866020858801011115612fec57600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060008060c0878903121561302557600080fd5b86359550602087013567ffffffffffffffff8082111561304457600080fd5b6130508a838b01612f61565b9650604089013591508082111561306657600080fd5b5061307389828a01612f61565b94505061308260608801612b7e565b925061309060808801612b7e565b9150612d6a60a08801612b7e565b600080600080604085870312156130b457600080fd5b843567ffffffffffffffff808211156130cc57600080fd5b6130d888838901612dd0565b909650945060208701359150808211156130f157600080fd5b50612dc487828801612dd0565b600181811c9082168061311257607f821691505b60208210810361314b577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082018082111561087d5761087d613151565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b838152826020820152600082516131e0816040850160208701612afd565b91909101604001949350505050565b808202811582820484141761087d5761087d613151565b63ffffffff8616815284602082015260a06040820152600061322b60a0830186612b21565b828103606084015261323d8186612b21565b91505073ffffffffffffffffffffffffffffffffffffffff831660808301529695505050505050565b60006020828403121561327857600080fd5b5051919050565b7f4e6f20726f7574657220656e726f6c6c656420666f7220646f6d61696e3a20008152600082516132b781601f850160208701612afd565b91909101601f0192915050565b600080858511156132d457600080fd5b838611156132e157600080fd5b5050820193919092039150565b8035602083101561087d577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b600082613360577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b601f821115610f95576000816000526020600020601f850160051c8101602086101561338e5750805b601f850160051c820191505b818110156112325782815560010161339a565b815167ffffffffffffffff8111156133c7576133c7612f32565b6133db816133d584546130fe565b84613365565b602080601f83116001811461342e57600084156133f85750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555611232565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561347b5788860151825594840194600190910190840161345c565b50858210156134b757878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b7fffff0000000000000000000000000000000000000000000000000000000000008660f01b1681528460028201528360228201527fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008360601b1660428201526000825161353b816056850160208701612afd565b919091016056019695505050505050565b8181038181111561087d5761087d613151565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea264697066735822122071d047ada242cec3566abad3c882959e827d2216376257ae0fdd9a581cc2946064736f6c63430008160033";
16
16
  static readonly abi: readonly [{
17
17
  readonly inputs: readonly [{
18
18
  readonly internalType: "uint8";
@@ -863,7 +863,7 @@ const _abi = [
863
863
  type: "function",
864
864
  },
865
865
  ];
866
- const _bytecode = "0x6101006040523480156200001257600080fd5b50604051620038343803806200383483398101604081905262000035916200018c565b818180808080806001600160a01b0381163b620000985760405162461bcd60e51b815260206004820152601e60248201527f4d61696c626f78436c69656e743a20696e76616c6964206d61696c626f780000604482015260640160405180910390fd5b6001600160a01b03821660808190526040805163234d8e3d60e21b81529051638d3638f4916004808201926020929091908290030181865afa158015620000e3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001099190620001e4565b63ffffffff1660a0526200011d336200013a565b50505060c09390935250505060ff90921660e05250620002139050565b606580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600080600060608486031215620001a257600080fd5b835160ff81168114620001b457600080fd5b6020850151604086015191945092506001600160a01b0381168114620001d957600080fd5b809150509250925092565b600060208284031215620001f757600080fd5b815163ffffffff811681146200020c57600080fd5b9392505050565b60805160a05160c05160e0516135c46200027060003960006103440152600081816107b50152818161201801526122160152600061050f01526000818161066101528181610c320152818161204d015261241901526135c46000f3fe60806040526004361061024f5760003560e01c806381b4e8b411610138578063d5438eae116100b0578063e9198bf91161007f578063f2ed8c5311610064578063f2ed8c5314610763578063f2fde38b14610783578063f51e181a146107a357600080fd5b8063e9198bf914610723578063efae508a1461074357600080fd5b8063d5438eae1461064f578063dd62ed3e14610683578063de523cf3146106d6578063e80a7c791461070357600080fd5b806395d89b4111610107578063a9059cbb116100ec578063a9059cbb146105ef578063b1bd64361461060f578063b49c53a71461062f57600080fd5b806395d89b41146105ba578063a457c2d7146105cf57600080fd5b806381b4e8b4146104ea5780638d3638f4146104fd5780638da5cb5b1461054657806393c448471461057157600080fd5b8063440df4f4116101cb57806370a082311161019a57806371a15b381161017f57806371a15b381461044b578063775313a11461046b5780637f5a7c7b1461049857600080fd5b806370a0823114610416578063715018a61461043657600080fd5b8063440df4f4146103ae57806349d462ef146103d057806351debffc146103f057806356d5d4751461040357600080fd5b806323b872dd11610222578063313ce56711610207578063313ce56714610330578063395093511461036e5780633dfd38731461038e57600080fd5b806323b872dd146102f05780632ead72f61461031057600080fd5b806306fdde0314610254578063095ea7b31461027f5780630e72cc06146102af57806318160ddd146102d1575b600080fd5b34801561026057600080fd5b506102696107d7565b6040516102769190612b6b565b60405180910390f35b34801561028b57600080fd5b5061029f61029a366004612ba7565b610869565b6040519015158152602001610276565b3480156102bb57600080fd5b506102cf6102ca366004612bd1565b610883565b005b3480156102dd57600080fd5b506035545b604051908152602001610276565b3480156102fc57600080fd5b5061029f61030b366004612bec565b6109d1565b34801561031c57600080fd5b506102e261032b366004612c3c565b6109f5565b34801561033c57600080fd5b5060405160ff7f0000000000000000000000000000000000000000000000000000000000000000168152602001610276565b34801561037a57600080fd5b5061029f610389366004612ba7565b610a14565b34801561039a57600080fd5b506102cf6103a9366004612bd1565b610a60565b3480156103ba57600080fd5b506103c3610ba1565b6040516102769190612c57565b3480156103dc57600080fd5b506102cf6103eb366004612ca1565b610bb2565b6102e26103fe366004612cff565b610bc8565b6102cf610411366004612d76565b610c1a565b34801561042257600080fd5b506102e2610431366004612bd1565b610d8e565b34801561044257600080fd5b506102cf610db9565b34801561045757600080fd5b506102cf610466366004612e15565b610dcd565b34801561047757600080fd5b506102e2610486366004612c3c565b60fc6020526000908152604090205481565b3480156104a457600080fd5b506097546104c59073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610276565b6102e26104f8366004612e57565b610e28565b34801561050957600080fd5b506105317f000000000000000000000000000000000000000000000000000000000000000081565b60405163ffffffff9091168152602001610276565b34801561055257600080fd5b5060655473ffffffffffffffffffffffffffffffffffffffff166104c5565b34801561057d57600080fd5b506102696040518060400160405280600581526020017f372e302e3000000000000000000000000000000000000000000000000000000081525081565b3480156105c657600080fd5b50610269610e36565b3480156105db57600080fd5b5061029f6105ea366004612ba7565b610e45565b3480156105fb57600080fd5b5061029f61060a366004612ba7565b610f16565b34801561061b57600080fd5b506102cf61062a366004612e8a565b610f24565b34801561063b57600080fd5b506102cf61064a366004612ca1565b610f9a565b34801561065b57600080fd5b506104c57f000000000000000000000000000000000000000000000000000000000000000081565b34801561068f57600080fd5b506102e261069e366004612eff565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260346020908152604080832093909416825291909152205490565b3480156106e257600080fd5b506098546104c59073ffffffffffffffffffffffffffffffffffffffff1681565b34801561070f57600080fd5b506102cf61071e36600461300c565b610fac565b34801561072f57600080fd5b506102cf61073e36600461309e565b61115b565b34801561074f57600080fd5b506102cf61075e366004612c3c565b61123a565b34801561076f57600080fd5b506102e261077e366004612c3c565b61124e565b34801561078f57600080fd5b506102cf61079e366004612bd1565b6112af565b3480156107af57600080fd5b506102e27f000000000000000000000000000000000000000000000000000000000000000081565b6060603680546107e6906130fe565b80601f0160208091040260200160405190810160405280929190818152602001828054610812906130fe565b801561085f5780601f106108345761010080835404028352916020019161085f565b820191906000526020600020905b81548152906001019060200180831161084257829003601f168201915b5050505050905090565b600033610877818585611363565b60019150505b92915050565b8073ffffffffffffffffffffffffffffffffffffffff81163b1515806108bd575073ffffffffffffffffffffffffffffffffffffffff8116155b61094e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d61696c626f78436c69656e743a20696e76616c696420636f6e74726163742060448201527f73657474696e670000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b610956611516565b609880547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527fc47cbcc588c67679e52261c45cc315e56562f8d0ccaba16facb9093ff9498799906020015b60405180910390a15050565b6000336109df858285611597565b6109ea858585611668565b506001949350505050565b600080610a0c60c963ffffffff808616906118de16565b949350505050565b33600081815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff871684529091528120549091906108779082908690610a5b908790613180565b611363565b8073ffffffffffffffffffffffffffffffffffffffff81163b151580610a9a575073ffffffffffffffffffffffffffffffffffffffff8116155b610b26576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d61696c626f78436c69656e743a20696e76616c696420636f6e74726163742060448201527f73657474696e67000000000000000000000000000000000000000000000000006064820152608401610945565b610b2e611516565b609780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527f4eab7b127c764308788622363ad3e9532de3dfba7845bd4f84c125a22544255a906020016109c5565b6060610bad60c96118f7565b905090565b610bba611516565b610bc482826119a8565b5050565b6000610c0f8787873488888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a92506119f6915050565b979650505050505050565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610cdf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f4d61696c626f78436c69656e743a2073656e646572206e6f74206d61696c626f60448201527f78000000000000000000000000000000000000000000000000000000000000006064820152608401610945565b6000610cea85611a7d565b9050838114610d7b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f456e726f6c6c656420726f7574657220646f6573206e6f74206d61746368207360448201527f656e6465720000000000000000000000000000000000000000000000000000006064820152608401610945565b610d8785858585611ae2565b5050505050565b73ffffffffffffffffffffffffffffffffffffffff811660009081526033602052604081205461087d565b610dc1611516565b610dcb6000611b76565b565b610dd5611516565b8060005b81811015610e2257610e10848483818110610df657610df6613193565b9050602002016020810190610e0b9190612c3c565b611bed565b610e1b600182613180565b9050610dd9565b50505050565b6000610a0c84848434611c42565b6060603780546107e6906130fe565b33600081815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919083811015610f09576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f0000000000000000000000000000000000000000000000000000006064820152608401610945565b6109ea8286868403611363565b600033610877818585611668565b610f2c611516565b60005b81811015610f9557610f83838383818110610f4c57610f4c613193565b610f629260206040909202019081019150612c3c565b848484818110610f7457610f74613193565b905060400201602001356119a8565b610f8e600182613180565b9050610f2f565b505050565b610fa2611516565b610bc48282611c7b565b600054610100900460ff1615808015610fcc5750600054600160ff909116105b80610fe65750303b158015610fe6575060005460ff166001145b611072576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610945565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156110d057600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6110da8686611c91565b6110e43388611d32565b6110ef848484611e27565b801561115257600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b611163611516565b8281146111cc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e677468000000000000000000000000000000000000000000000000006044820152606401610945565b8260005b81811015611232576112208686838181106111ed576111ed613193565b90506020020160208101906112029190612c3c565b85858481811061121457611214613193565b90506020020135611c7b565b61122b600182613180565b90506111d0565b505050505050565b611242611516565b61124b81611bed565b50565b600061087d826112916000801b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60405180602001604052806000815250611ee1565b60975473ffffffffffffffffffffffffffffffffffffffff16611f10565b6112b7611516565b73ffffffffffffffffffffffffffffffffffffffff811661135a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610945565b61124b81611b76565b73ffffffffffffffffffffffffffffffffffffffff8316611405576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff82166114a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60655473ffffffffffffffffffffffffffffffffffffffff163314610dcb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610945565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152603460209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610e22578181101561165b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610945565b610e228484848403611363565b73ffffffffffffffffffffffffffffffffffffffff831661170b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff82166117ae576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff831660009081526033602052604090205481811015611864576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e636500000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff80851660008181526033602052604080822086860390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906118d19086815260200190565b60405180910390a3610e22565b6000806118eb8484611f26565b915091505b9250929050565b6060600061190483611f60565b9050805167ffffffffffffffff81111561192057611920612f32565b604051908082528060200260200182016040528015611949578160200160208202803683370190505b50915060005b81518110156119a15781818151811061196a5761196a613193565b602002602001015183828151811061198457611984613193565b63ffffffff9092166020928302919091019091015260010161194f565b5050919050565b63ffffffff8216600081815260fc6020908152604091829020849055815192835282018390527fc3de732a98b24a2b5c6f67e8a7fb057ffc14046b83968a2c73e4148d2fba978b91016109c5565b600080611a0286611ff1565b90506000611a0f87612011565b90506000611a1e898385611ee1565b9050611a2d8a8883898961203d565b9350888a63ffffffff167fd229aacb94204188fe8042965fa6b269c62dc5818b21238779ab64bdd17efeec84604051611a6891815260200190565b60405180910390a35050509695505050505050565b60008080611a9560c963ffffffff808716906118de16565b915091508115611aa6579392505050565b611aaf846120f0565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109459190612b6b565b6000611aee8383612127565b90506000611afc8484612146565b9050366000611b0b8686612156565b91509150611b2b611b1b85612166565b611b248561220f565b848461223b565b838863ffffffff167fba20947a325f450d232530e5f5fce293e7963499d5309a07cee84a269f2f15a685604051611b6491815260200190565b60405180910390a35050505050505050565b6065805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b611c0160c963ffffffff8084169061224516565b611c0a826120f0565b90610bc4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109459190612b6b565b6000611c7285858585611c548a612251565b60975473ffffffffffffffffffffffffffffffffffffffff166119f6565b95945050505050565b610bc460c963ffffffff80851690849061227316565b600054610100900460ff16611d28576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b610bc4828261227e565b73ffffffffffffffffffffffffffffffffffffffff8216611daf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610945565b8060356000828254611dc19190613180565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000818152603360209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600054610100900460ff16611ebe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b611ec661232e565b611ecf83610a60565b611ed882610883565b610f9581611b76565b6060838383604051602001611ef8939291906131c2565b60405160208183030381529060405290509392505050565b6000610a0c8484611f2087612251565b856123cd565b6000818152600283016020526040812054819080611f5557611f4885856124a1565b9250600091506118f09050565b6001925090506118f0565b60606000611f6d836124ad565b90508067ffffffffffffffff811115611f8857611f88612f32565b604051908082528060200260200182016040528015611fb1578160200160208202803683370190505b50915060005b818110156119a157611fc984826124b8565b60001c838281518110611fde57611fde613193565b6020908102919091010152600101611fb7565b6060611ffd33836124c4565b505060408051602081019091526000815290565b600061087d7f0000000000000000000000000000000000000000000000000000000000000000836131ef565b60008061204987611a7d565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166310b83dc08789848989896040518763ffffffff1660e01b81526004016120ad959493929190613206565b60206040518083038185885af11580156120cb573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610c0f9190613266565b60606121018263ffffffff1661268a565b604051602001612111919061327f565b6040516020818303038152906040529050919050565b600061213660208284866132c4565b61213f916132ee565b9392505050565b60006121366040602084866132c4565b3660006118eb83604081876132c4565b600073ffffffffffffffffffffffffffffffffffffffff82111561220b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f5479706543617374733a2062797465733332546f41646472657373206f76657260448201527f666c6f77000000000000000000000000000000000000000000000000000000006064820152608401610945565b5090565b600061087d7f00000000000000000000000000000000000000000000000000000000000000008361332a565b610e228484611d32565b600061213f8383612748565b63ffffffff8116600090815260fc602052604090205460609061087d90612765565b610e22838383612783565b600054610100900460ff16612315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b603661232183826133ad565b506037610f9582826133ad565b600054610100900460ff166123c5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b610dcb6127a0565b6000806123d986611a7d565b6040517f81d2ea9500000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016906381d2ea959061245690899085908a908a908a90600401613206565b602060405180830381865afa158015612473573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124979190613266565b9695505050505050565b600061213f8383612840565b600061087d82612858565b600061213f8383612862565b73ffffffffffffffffffffffffffffffffffffffff8216612567576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f73000000000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff82166000908152603360205260409020548181101561261d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f63650000000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff831660008181526033602090815260408083208686039055603580548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b606060006126978361288c565b600101905060008167ffffffffffffffff8111156126b7576126b7612f32565b6040519080825280601f01601f1916602001820160405280156126e1576020820181803683370190505b5090508181016020015b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff017f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85049450846126eb57509392505050565b6000818152600283016020526040812081905561213f838361296e565b606061087d600083336040518060200160405280600081525061297a565b60008281526002840160205260408120829055610a0c84846129af565b600054610100900460ff16612837576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b610dcb33611b76565b6000818152600183016020526040812054151561213f565b600061087d825490565b600082600001828154811061287957612879613193565b9060005260206000200154905092915050565b6000807a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083106128d5577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000830492506040015b6d04ee2d6d415b85acef81000000008310612901576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061291f57662386f26fc10000830492506010015b6305f5e1008310612937576305f5e100830492506008015b612710831061294b57612710830492506004015b6064831061295d576064830492506002015b600a831061087d5760010192915050565b600061213f83836129bb565b60606001858585856040516020016129969594939291906134c7565b6040516020818303038152906040529050949350505050565b600061213f8383612aae565b60008181526001830160205260408120548015612aa45760006129df60018361354c565b85549091506000906129f39060019061354c565b9050818114612a58576000866000018281548110612a1357612a13613193565b9060005260206000200154905080876000018481548110612a3657612a36613193565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080612a6957612a6961355f565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061087d565b600091505061087d565b6000818152600183016020526040812054612af55750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561087d565b50600061087d565b60005b83811015612b18578181015183820152602001612b00565b50506000910152565b60008151808452612b39816020860160208601612afd565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061213f6020830184612b21565b803573ffffffffffffffffffffffffffffffffffffffff81168114612ba257600080fd5b919050565b60008060408385031215612bba57600080fd5b612bc383612b7e565b946020939093013593505050565b600060208284031215612be357600080fd5b61213f82612b7e565b600080600060608486031215612c0157600080fd5b612c0a84612b7e565b9250612c1860208501612b7e565b9150604084013590509250925092565b803563ffffffff81168114612ba257600080fd5b600060208284031215612c4e57600080fd5b61213f82612c28565b6020808252825182820181905260009190848201906040850190845b81811015612c9557835163ffffffff1683529284019291840191600101612c73565b50909695505050505050565b60008060408385031215612cb457600080fd5b612bc383612c28565b60008083601f840112612ccf57600080fd5b50813567ffffffffffffffff811115612ce757600080fd5b6020830191508360208285010111156118f057600080fd5b60008060008060008060a08789031215612d1857600080fd5b612d2187612c28565b95506020870135945060408701359350606087013567ffffffffffffffff811115612d4b57600080fd5b612d5789828a01612cbd565b9094509250612d6a905060808801612b7e565b90509295509295509295565b60008060008060608587031215612d8c57600080fd5b612d9585612c28565b935060208501359250604085013567ffffffffffffffff811115612db857600080fd5b612dc487828801612cbd565b95989497509550505050565b60008083601f840112612de257600080fd5b50813567ffffffffffffffff811115612dfa57600080fd5b6020830191508360208260051b85010111156118f057600080fd5b60008060208385031215612e2857600080fd5b823567ffffffffffffffff811115612e3f57600080fd5b612e4b85828601612dd0565b90969095509350505050565b600080600060608486031215612e6c57600080fd5b612e7584612c28565b95602085013595506040909401359392505050565b60008060208385031215612e9d57600080fd5b823567ffffffffffffffff80821115612eb557600080fd5b818501915085601f830112612ec957600080fd5b813581811115612ed857600080fd5b8660208260061b8501011115612eed57600080fd5b60209290920196919550909350505050565b60008060408385031215612f1257600080fd5b612f1b83612b7e565b9150612f2960208401612b7e565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f830112612f7257600080fd5b813567ffffffffffffffff80821115612f8d57612f8d612f32565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715612fd357612fd3612f32565b81604052838152866020858801011115612fec57600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060008060c0878903121561302557600080fd5b86359550602087013567ffffffffffffffff8082111561304457600080fd5b6130508a838b01612f61565b9650604089013591508082111561306657600080fd5b5061307389828a01612f61565b94505061308260608801612b7e565b925061309060808801612b7e565b9150612d6a60a08801612b7e565b600080600080604085870312156130b457600080fd5b843567ffffffffffffffff808211156130cc57600080fd5b6130d888838901612dd0565b909650945060208701359150808211156130f157600080fd5b50612dc487828801612dd0565b600181811c9082168061311257607f821691505b60208210810361314b577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082018082111561087d5761087d613151565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b838152826020820152600082516131e0816040850160208701612afd565b91909101604001949350505050565b808202811582820484141761087d5761087d613151565b63ffffffff8616815284602082015260a06040820152600061322b60a0830186612b21565b828103606084015261323d8186612b21565b91505073ffffffffffffffffffffffffffffffffffffffff831660808301529695505050505050565b60006020828403121561327857600080fd5b5051919050565b7f4e6f20726f7574657220656e726f6c6c656420666f7220646f6d61696e3a20008152600082516132b781601f850160208701612afd565b91909101601f0192915050565b600080858511156132d457600080fd5b838611156132e157600080fd5b5050820193919092039150565b8035602083101561087d577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b600082613360577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b601f821115610f95576000816000526020600020601f850160051c8101602086101561338e5750805b601f850160051c820191505b818110156112325782815560010161339a565b815167ffffffffffffffff8111156133c7576133c7612f32565b6133db816133d584546130fe565b84613365565b602080601f83116001811461342e57600084156133f85750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555611232565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561347b5788860151825594840194600190910190840161345c565b50858210156134b757878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b7fffff0000000000000000000000000000000000000000000000000000000000008660f01b1681528460028201528360228201527fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008360601b1660428201526000825161353b816056850160208701612afd565b919091016056019695505050505050565b8181038181111561087d5761087d613151565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea2646970667358221220001f4b8caf6d1516308a1743e303549fa6e54b1b369c5793e309a33fb1a88f9164736f6c63430008160033";
866
+ const _bytecode = "0x6101006040523480156200001257600080fd5b50604051620038343803806200383483398101604081905262000035916200018c565b818180808080806001600160a01b0381163b620000985760405162461bcd60e51b815260206004820152601e60248201527f4d61696c626f78436c69656e743a20696e76616c6964206d61696c626f780000604482015260640160405180910390fd5b6001600160a01b03821660808190526040805163234d8e3d60e21b81529051638d3638f4916004808201926020929091908290030181865afa158015620000e3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001099190620001e4565b63ffffffff1660a0526200011d336200013a565b50505060c09390935250505060ff90921660e05250620002139050565b606580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600080600060608486031215620001a257600080fd5b835160ff81168114620001b457600080fd5b6020850151604086015191945092506001600160a01b0381168114620001d957600080fd5b809150509250925092565b600060208284031215620001f757600080fd5b815163ffffffff811681146200020c57600080fd5b9392505050565b60805160a05160c05160e0516135c46200027060003960006103440152600081816107b50152818161201801526122160152600061050f01526000818161066101528181610c320152818161204d015261241901526135c46000f3fe60806040526004361061024f5760003560e01c806381b4e8b411610138578063d5438eae116100b0578063e9198bf91161007f578063f2ed8c5311610064578063f2ed8c5314610763578063f2fde38b14610783578063f51e181a146107a357600080fd5b8063e9198bf914610723578063efae508a1461074357600080fd5b8063d5438eae1461064f578063dd62ed3e14610683578063de523cf3146106d6578063e80a7c791461070357600080fd5b806395d89b4111610107578063a9059cbb116100ec578063a9059cbb146105ef578063b1bd64361461060f578063b49c53a71461062f57600080fd5b806395d89b41146105ba578063a457c2d7146105cf57600080fd5b806381b4e8b4146104ea5780638d3638f4146104fd5780638da5cb5b1461054657806393c448471461057157600080fd5b8063440df4f4116101cb57806370a082311161019a57806371a15b381161017f57806371a15b381461044b578063775313a11461046b5780637f5a7c7b1461049857600080fd5b806370a0823114610416578063715018a61461043657600080fd5b8063440df4f4146103ae57806349d462ef146103d057806351debffc146103f057806356d5d4751461040357600080fd5b806323b872dd11610222578063313ce56711610207578063313ce56714610330578063395093511461036e5780633dfd38731461038e57600080fd5b806323b872dd146102f05780632ead72f61461031057600080fd5b806306fdde0314610254578063095ea7b31461027f5780630e72cc06146102af57806318160ddd146102d1575b600080fd5b34801561026057600080fd5b506102696107d7565b6040516102769190612b6b565b60405180910390f35b34801561028b57600080fd5b5061029f61029a366004612ba7565b610869565b6040519015158152602001610276565b3480156102bb57600080fd5b506102cf6102ca366004612bd1565b610883565b005b3480156102dd57600080fd5b506035545b604051908152602001610276565b3480156102fc57600080fd5b5061029f61030b366004612bec565b6109d1565b34801561031c57600080fd5b506102e261032b366004612c3c565b6109f5565b34801561033c57600080fd5b5060405160ff7f0000000000000000000000000000000000000000000000000000000000000000168152602001610276565b34801561037a57600080fd5b5061029f610389366004612ba7565b610a14565b34801561039a57600080fd5b506102cf6103a9366004612bd1565b610a60565b3480156103ba57600080fd5b506103c3610ba1565b6040516102769190612c57565b3480156103dc57600080fd5b506102cf6103eb366004612ca1565b610bb2565b6102e26103fe366004612cff565b610bc8565b6102cf610411366004612d76565b610c1a565b34801561042257600080fd5b506102e2610431366004612bd1565b610d8e565b34801561044257600080fd5b506102cf610db9565b34801561045757600080fd5b506102cf610466366004612e15565b610dcd565b34801561047757600080fd5b506102e2610486366004612c3c565b60fc6020526000908152604090205481565b3480156104a457600080fd5b506097546104c59073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610276565b6102e26104f8366004612e57565b610e28565b34801561050957600080fd5b506105317f000000000000000000000000000000000000000000000000000000000000000081565b60405163ffffffff9091168152602001610276565b34801561055257600080fd5b5060655473ffffffffffffffffffffffffffffffffffffffff166104c5565b34801561057d57600080fd5b506102696040518060400160405280600581526020017f372e312e3000000000000000000000000000000000000000000000000000000081525081565b3480156105c657600080fd5b50610269610e36565b3480156105db57600080fd5b5061029f6105ea366004612ba7565b610e45565b3480156105fb57600080fd5b5061029f61060a366004612ba7565b610f16565b34801561061b57600080fd5b506102cf61062a366004612e8a565b610f24565b34801561063b57600080fd5b506102cf61064a366004612ca1565b610f9a565b34801561065b57600080fd5b506104c57f000000000000000000000000000000000000000000000000000000000000000081565b34801561068f57600080fd5b506102e261069e366004612eff565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260346020908152604080832093909416825291909152205490565b3480156106e257600080fd5b506098546104c59073ffffffffffffffffffffffffffffffffffffffff1681565b34801561070f57600080fd5b506102cf61071e36600461300c565b610fac565b34801561072f57600080fd5b506102cf61073e36600461309e565b61115b565b34801561074f57600080fd5b506102cf61075e366004612c3c565b61123a565b34801561076f57600080fd5b506102e261077e366004612c3c565b61124e565b34801561078f57600080fd5b506102cf61079e366004612bd1565b6112af565b3480156107af57600080fd5b506102e27f000000000000000000000000000000000000000000000000000000000000000081565b6060603680546107e6906130fe565b80601f0160208091040260200160405190810160405280929190818152602001828054610812906130fe565b801561085f5780601f106108345761010080835404028352916020019161085f565b820191906000526020600020905b81548152906001019060200180831161084257829003601f168201915b5050505050905090565b600033610877818585611363565b60019150505b92915050565b8073ffffffffffffffffffffffffffffffffffffffff81163b1515806108bd575073ffffffffffffffffffffffffffffffffffffffff8116155b61094e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d61696c626f78436c69656e743a20696e76616c696420636f6e74726163742060448201527f73657474696e670000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b610956611516565b609880547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527fc47cbcc588c67679e52261c45cc315e56562f8d0ccaba16facb9093ff9498799906020015b60405180910390a15050565b6000336109df858285611597565b6109ea858585611668565b506001949350505050565b600080610a0c60c963ffffffff808616906118de16565b949350505050565b33600081815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff871684529091528120549091906108779082908690610a5b908790613180565b611363565b8073ffffffffffffffffffffffffffffffffffffffff81163b151580610a9a575073ffffffffffffffffffffffffffffffffffffffff8116155b610b26576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d61696c626f78436c69656e743a20696e76616c696420636f6e74726163742060448201527f73657474696e67000000000000000000000000000000000000000000000000006064820152608401610945565b610b2e611516565b609780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527f4eab7b127c764308788622363ad3e9532de3dfba7845bd4f84c125a22544255a906020016109c5565b6060610bad60c96118f7565b905090565b610bba611516565b610bc482826119a8565b5050565b6000610c0f8787873488888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a92506119f6915050565b979650505050505050565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610cdf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f4d61696c626f78436c69656e743a2073656e646572206e6f74206d61696c626f60448201527f78000000000000000000000000000000000000000000000000000000000000006064820152608401610945565b6000610cea85611a7d565b9050838114610d7b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f456e726f6c6c656420726f7574657220646f6573206e6f74206d61746368207360448201527f656e6465720000000000000000000000000000000000000000000000000000006064820152608401610945565b610d8785858585611ae2565b5050505050565b73ffffffffffffffffffffffffffffffffffffffff811660009081526033602052604081205461087d565b610dc1611516565b610dcb6000611b76565b565b610dd5611516565b8060005b81811015610e2257610e10848483818110610df657610df6613193565b9050602002016020810190610e0b9190612c3c565b611bed565b610e1b600182613180565b9050610dd9565b50505050565b6000610a0c84848434611c42565b6060603780546107e6906130fe565b33600081815260346020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490919083811015610f09576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f0000000000000000000000000000000000000000000000000000006064820152608401610945565b6109ea8286868403611363565b600033610877818585611668565b610f2c611516565b60005b81811015610f9557610f83838383818110610f4c57610f4c613193565b610f629260206040909202019081019150612c3c565b848484818110610f7457610f74613193565b905060400201602001356119a8565b610f8e600182613180565b9050610f2f565b505050565b610fa2611516565b610bc48282611c7b565b600054610100900460ff1615808015610fcc5750600054600160ff909116105b80610fe65750303b158015610fe6575060005460ff166001145b611072576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610945565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156110d057600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6110da8686611c91565b6110e43388611d32565b6110ef848484611e27565b801561115257600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b611163611516565b8281146111cc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e677468000000000000000000000000000000000000000000000000006044820152606401610945565b8260005b81811015611232576112208686838181106111ed576111ed613193565b90506020020160208101906112029190612c3c565b85858481811061121457611214613193565b90506020020135611c7b565b61122b600182613180565b90506111d0565b505050505050565b611242611516565b61124b81611bed565b50565b600061087d826112916000801b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60405180602001604052806000815250611ee1565b60975473ffffffffffffffffffffffffffffffffffffffff16611f10565b6112b7611516565b73ffffffffffffffffffffffffffffffffffffffff811661135a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610945565b61124b81611b76565b73ffffffffffffffffffffffffffffffffffffffff8316611405576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff82166114a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff83811660008181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60655473ffffffffffffffffffffffffffffffffffffffff163314610dcb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610945565b73ffffffffffffffffffffffffffffffffffffffff8381166000908152603460209081526040808320938616835292905220547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610e22578181101561165b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610945565b610e228484848403611363565b73ffffffffffffffffffffffffffffffffffffffff831661170b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff82166117ae576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff831660009081526033602052604090205481811015611864576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e636500000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff80851660008181526033602052604080822086860390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906118d19086815260200190565b60405180910390a3610e22565b6000806118eb8484611f26565b915091505b9250929050565b6060600061190483611f60565b9050805167ffffffffffffffff81111561192057611920612f32565b604051908082528060200260200182016040528015611949578160200160208202803683370190505b50915060005b81518110156119a15781818151811061196a5761196a613193565b602002602001015183828151811061198457611984613193565b63ffffffff9092166020928302919091019091015260010161194f565b5050919050565b63ffffffff8216600081815260fc6020908152604091829020849055815192835282018390527fc3de732a98b24a2b5c6f67e8a7fb057ffc14046b83968a2c73e4148d2fba978b91016109c5565b600080611a0286611ff1565b90506000611a0f87612011565b90506000611a1e898385611ee1565b9050611a2d8a8883898961203d565b9350888a63ffffffff167fd229aacb94204188fe8042965fa6b269c62dc5818b21238779ab64bdd17efeec84604051611a6891815260200190565b60405180910390a35050509695505050505050565b60008080611a9560c963ffffffff808716906118de16565b915091508115611aa6579392505050565b611aaf846120f0565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109459190612b6b565b6000611aee8383612127565b90506000611afc8484612146565b9050366000611b0b8686612156565b91509150611b2b611b1b85612166565b611b248561220f565b848461223b565b838863ffffffff167fba20947a325f450d232530e5f5fce293e7963499d5309a07cee84a269f2f15a685604051611b6491815260200190565b60405180910390a35050505050505050565b6065805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b611c0160c963ffffffff8084169061224516565b611c0a826120f0565b90610bc4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109459190612b6b565b6000611c7285858585611c548a612251565b60975473ffffffffffffffffffffffffffffffffffffffff166119f6565b95945050505050565b610bc460c963ffffffff80851690849061227316565b600054610100900460ff16611d28576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b610bc4828261227e565b73ffffffffffffffffffffffffffffffffffffffff8216611daf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610945565b8060356000828254611dc19190613180565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000818152603360209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600054610100900460ff16611ebe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b611ec661232e565b611ecf83610a60565b611ed882610883565b610f9581611b76565b6060838383604051602001611ef8939291906131c2565b60405160208183030381529060405290509392505050565b6000610a0c8484611f2087612251565b856123cd565b6000818152600283016020526040812054819080611f5557611f4885856124a1565b9250600091506118f09050565b6001925090506118f0565b60606000611f6d836124ad565b90508067ffffffffffffffff811115611f8857611f88612f32565b604051908082528060200260200182016040528015611fb1578160200160208202803683370190505b50915060005b818110156119a157611fc984826124b8565b60001c838281518110611fde57611fde613193565b6020908102919091010152600101611fb7565b6060611ffd33836124c4565b505060408051602081019091526000815290565b600061087d7f0000000000000000000000000000000000000000000000000000000000000000836131ef565b60008061204987611a7d565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166310b83dc08789848989896040518763ffffffff1660e01b81526004016120ad959493929190613206565b60206040518083038185885af11580156120cb573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610c0f9190613266565b60606121018263ffffffff1661268a565b604051602001612111919061327f565b6040516020818303038152906040529050919050565b600061213660208284866132c4565b61213f916132ee565b9392505050565b60006121366040602084866132c4565b3660006118eb83604081876132c4565b600073ffffffffffffffffffffffffffffffffffffffff82111561220b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f5479706543617374733a2062797465733332546f41646472657373206f76657260448201527f666c6f77000000000000000000000000000000000000000000000000000000006064820152608401610945565b5090565b600061087d7f00000000000000000000000000000000000000000000000000000000000000008361332a565b610e228484611d32565b600061213f8383612748565b63ffffffff8116600090815260fc602052604090205460609061087d90612765565b610e22838383612783565b600054610100900460ff16612315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b603661232183826133ad565b506037610f9582826133ad565b600054610100900460ff166123c5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b610dcb6127a0565b6000806123d986611a7d565b6040517f81d2ea9500000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016906381d2ea959061245690899085908a908a908a90600401613206565b602060405180830381865afa158015612473573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124979190613266565b9695505050505050565b600061213f8383612840565b600061087d82612858565b600061213f8383612862565b73ffffffffffffffffffffffffffffffffffffffff8216612567576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f73000000000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff82166000908152603360205260409020548181101561261d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f63650000000000000000000000000000000000000000000000000000000000006064820152608401610945565b73ffffffffffffffffffffffffffffffffffffffff831660008181526033602090815260408083208686039055603580548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b606060006126978361288c565b600101905060008167ffffffffffffffff8111156126b7576126b7612f32565b6040519080825280601f01601f1916602001820160405280156126e1576020820181803683370190505b5090508181016020015b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff017f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85049450846126eb57509392505050565b6000818152600283016020526040812081905561213f838361296e565b606061087d600083336040518060200160405280600081525061297a565b60008281526002840160205260408120829055610a0c84846129af565b600054610100900460ff16612837576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610945565b610dcb33611b76565b6000818152600183016020526040812054151561213f565b600061087d825490565b600082600001828154811061287957612879613193565b9060005260206000200154905092915050565b6000807a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083106128d5577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000830492506040015b6d04ee2d6d415b85acef81000000008310612901576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061291f57662386f26fc10000830492506010015b6305f5e1008310612937576305f5e100830492506008015b612710831061294b57612710830492506004015b6064831061295d576064830492506002015b600a831061087d5760010192915050565b600061213f83836129bb565b60606001858585856040516020016129969594939291906134c7565b6040516020818303038152906040529050949350505050565b600061213f8383612aae565b60008181526001830160205260408120548015612aa45760006129df60018361354c565b85549091506000906129f39060019061354c565b9050818114612a58576000866000018281548110612a1357612a13613193565b9060005260206000200154905080876000018481548110612a3657612a36613193565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080612a6957612a6961355f565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061087d565b600091505061087d565b6000818152600183016020526040812054612af55750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561087d565b50600061087d565b60005b83811015612b18578181015183820152602001612b00565b50506000910152565b60008151808452612b39816020860160208601612afd565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061213f6020830184612b21565b803573ffffffffffffffffffffffffffffffffffffffff81168114612ba257600080fd5b919050565b60008060408385031215612bba57600080fd5b612bc383612b7e565b946020939093013593505050565b600060208284031215612be357600080fd5b61213f82612b7e565b600080600060608486031215612c0157600080fd5b612c0a84612b7e565b9250612c1860208501612b7e565b9150604084013590509250925092565b803563ffffffff81168114612ba257600080fd5b600060208284031215612c4e57600080fd5b61213f82612c28565b6020808252825182820181905260009190848201906040850190845b81811015612c9557835163ffffffff1683529284019291840191600101612c73565b50909695505050505050565b60008060408385031215612cb457600080fd5b612bc383612c28565b60008083601f840112612ccf57600080fd5b50813567ffffffffffffffff811115612ce757600080fd5b6020830191508360208285010111156118f057600080fd5b60008060008060008060a08789031215612d1857600080fd5b612d2187612c28565b95506020870135945060408701359350606087013567ffffffffffffffff811115612d4b57600080fd5b612d5789828a01612cbd565b9094509250612d6a905060808801612b7e565b90509295509295509295565b60008060008060608587031215612d8c57600080fd5b612d9585612c28565b935060208501359250604085013567ffffffffffffffff811115612db857600080fd5b612dc487828801612cbd565b95989497509550505050565b60008083601f840112612de257600080fd5b50813567ffffffffffffffff811115612dfa57600080fd5b6020830191508360208260051b85010111156118f057600080fd5b60008060208385031215612e2857600080fd5b823567ffffffffffffffff811115612e3f57600080fd5b612e4b85828601612dd0565b90969095509350505050565b600080600060608486031215612e6c57600080fd5b612e7584612c28565b95602085013595506040909401359392505050565b60008060208385031215612e9d57600080fd5b823567ffffffffffffffff80821115612eb557600080fd5b818501915085601f830112612ec957600080fd5b813581811115612ed857600080fd5b8660208260061b8501011115612eed57600080fd5b60209290920196919550909350505050565b60008060408385031215612f1257600080fd5b612f1b83612b7e565b9150612f2960208401612b7e565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f830112612f7257600080fd5b813567ffffffffffffffff80821115612f8d57612f8d612f32565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715612fd357612fd3612f32565b81604052838152866020858801011115612fec57600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060008060c0878903121561302557600080fd5b86359550602087013567ffffffffffffffff8082111561304457600080fd5b6130508a838b01612f61565b9650604089013591508082111561306657600080fd5b5061307389828a01612f61565b94505061308260608801612b7e565b925061309060808801612b7e565b9150612d6a60a08801612b7e565b600080600080604085870312156130b457600080fd5b843567ffffffffffffffff808211156130cc57600080fd5b6130d888838901612dd0565b909650945060208701359150808211156130f157600080fd5b50612dc487828801612dd0565b600181811c9082168061311257607f821691505b60208210810361314b577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082018082111561087d5761087d613151565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b838152826020820152600082516131e0816040850160208701612afd565b91909101604001949350505050565b808202811582820484141761087d5761087d613151565b63ffffffff8616815284602082015260a06040820152600061322b60a0830186612b21565b828103606084015261323d8186612b21565b91505073ffffffffffffffffffffffffffffffffffffffff831660808301529695505050505050565b60006020828403121561327857600080fd5b5051919050565b7f4e6f20726f7574657220656e726f6c6c656420666f7220646f6d61696e3a20008152600082516132b781601f850160208701612afd565b91909101601f0192915050565b600080858511156132d457600080fd5b838611156132e157600080fd5b5050820193919092039150565b8035602083101561087d577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b600082613360577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b601f821115610f95576000816000526020600020601f850160051c8101602086101561338e5750805b601f850160051c820191505b818110156112325782815560010161339a565b815167ffffffffffffffff8111156133c7576133c7612f32565b6133db816133d584546130fe565b84613365565b602080601f83116001811461342e57600084156133f85750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555611232565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561347b5788860151825594840194600190910190840161345c565b50858210156134b757878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b7fffff0000000000000000000000000000000000000000000000000000000000008660f01b1681528460028201528360228201527fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008360601b1660428201526000825161353b816056850160208701612afd565b919091016056019695505050505050565b8181038181111561087d5761087d613151565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea264697066735822122071d047ada242cec3566abad3c882959e827d2216376257ae0fdd9a581cc2946064736f6c63430008160033";
867
867
  const isSuperArgs = (xs) => xs.length > 1;
868
868
  export class HypERC20__factory extends ContractFactory {
869
869
  constructor(...args) {
@@ -12,7 +12,7 @@ export declare class HypERC721Collateral__factory extends ContractFactory {
12
12
  }): TransactionRequest;
13
13
  attach(address: string): HypERC721Collateral;
14
14
  connect(signer: Signer): HypERC721Collateral__factory;
15
- static readonly bytecode = "0x60e06040523480156200001157600080fd5b50604051620029de380380620029de8339810160408190526200003491620001a4565b80808080806001600160a01b0381163b620000955760405162461bcd60e51b815260206004820152601e60248201527f4d61696c626f78436c69656e743a20696e76616c6964206d61696c626f780000604482015260640160405180910390fd5b6001600160a01b03821660808190526040805163234d8e3d60e21b81529051638d3638f4916004808201926020929091908290030181865afa158015620000e0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001069190620001dc565b63ffffffff1660a0526200011a3362000135565b5050506001600160a01b0390931660c052506200020b915050565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b80516001600160a01b03811681146200019f57600080fd5b919050565b60008060408385031215620001b857600080fd5b620001c38362000187565b9150620001d36020840162000187565b90509250929050565b600060208284031215620001ef57600080fd5b815163ffffffff811681146200020457600080fd5b9392505050565b60805160a05160c0516127726200026c6000396000818161047101528181610aa101528181610b6f015281816116a80152611952015260006103a7015260008181610505015281816109130152818161173e0152611ad801526127726000f3fe6080604052600436106101ac5760003560e01c806381b4e8b4116100ec578063c0c53b8b1161008a578063e9198bf911610064578063e9198bf914610554578063efae508a14610574578063f2ed8c5314610594578063f2fde38b146105b457600080fd5b8063c0c53b8b146104d3578063d5438eae146104f3578063de523cf31461052757600080fd5b806393c44847116100c657806393c4484714610409578063996c6cc31461045f578063b1bd643614610493578063b49c53a7146104b357600080fd5b806381b4e8b4146103825780638d3638f4146103955780638da5cb5b146103de57600080fd5b806356d5d47511610159578063715018a611610133578063715018a6146102f357806371a15b3814610308578063775313a1146103285780637f5a7c7b1461035557600080fd5b806356d5d4751461027b5780636352211e1461028e57806370a08231146102d357600080fd5b8063440df4f41161018a578063440df4f41461022657806349d462ef1461024857806351debffc1461026857600080fd5b80630e72cc06146101b15780632ead72f6146101d35780633dfd387314610206575b600080fd5b3480156101bd57600080fd5b506101d16101cc366004612018565b6105d4565b005b3480156101df57600080fd5b506101f36101ee36600461204e565b610722565b6040519081526020015b60405180910390f35b34801561021257600080fd5b506101d1610221366004612018565b610741565b34801561023257600080fd5b5061023b610882565b6040516101fd9190612069565b34801561025457600080fd5b506101d16102633660046120b3565b610893565b6101f361027636600461211f565b6108a9565b6101d1610289366004612199565b6108fb565b34801561029a57600080fd5b506102ae6102a93660046121f3565b610a6f565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101fd565b3480156102df57600080fd5b506101f36102ee366004612018565b610b27565b3480156102ff57600080fd5b506101d1610bdc565b34801561031457600080fd5b506101d1610323366004612251565b610bf0565b34801561033457600080fd5b506101f361034336600461204e565b60ca6020526000908152604090205481565b34801561036157600080fd5b506065546102ae9073ffffffffffffffffffffffffffffffffffffffff1681565b6101f3610390366004612293565b610c4b565b3480156103a157600080fd5b506103c97f000000000000000000000000000000000000000000000000000000000000000081565b60405163ffffffff90911681526020016101fd565b3480156103ea57600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff166102ae565b34801561041557600080fd5b506104526040518060400160405280600581526020017f372e302e3000000000000000000000000000000000000000000000000000000081525081565b6040516101fd9190612334565b34801561046b57600080fd5b506102ae7f000000000000000000000000000000000000000000000000000000000000000081565b34801561049f57600080fd5b506101d16104ae366004612347565b610c59565b3480156104bf57600080fd5b506101d16104ce3660046120b3565b610ccf565b3480156104df57600080fd5b506101d16104ee3660046123bc565b610ce1565b3480156104ff57600080fd5b506102ae7f000000000000000000000000000000000000000000000000000000000000000081565b34801561053357600080fd5b506066546102ae9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561056057600080fd5b506101d161056f366004612407565b610e78565b34801561058057600080fd5b506101d161058f36600461204e565b610f57565b3480156105a057600080fd5b506101f36105af36600461204e565b610f6b565b3480156105c057600080fd5b506101d16105cf366004612018565b610fcc565b8073ffffffffffffffffffffffffffffffffffffffff81163b15158061060e575073ffffffffffffffffffffffffffffffffffffffff8116155b61069f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d61696c626f78436c69656e743a20696e76616c696420636f6e74726163742060448201527f73657474696e670000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6106a7611080565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527fc47cbcc588c67679e52261c45cc315e56562f8d0ccaba16facb9093ff9498799906020015b60405180910390a15050565b600080610739609763ffffffff8086169061110116565b949350505050565b8073ffffffffffffffffffffffffffffffffffffffff81163b15158061077b575073ffffffffffffffffffffffffffffffffffffffff8116155b610807576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d61696c626f78436c69656e743a20696e76616c696420636f6e74726163742060448201527f73657474696e67000000000000000000000000000000000000000000000000006064820152608401610696565b61080f611080565b606580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527f4eab7b127c764308788622363ad3e9532de3dfba7845bd4f84c125a22544255a90602001610716565b606061088e609761111a565b905090565b61089b611080565b6108a582826111cb565b5050565b60006108f08787873488888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a9250611219915050565b979650505050505050565b3373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016146109c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f4d61696c626f78436c69656e743a2073656e646572206e6f74206d61696c626f60448201527f78000000000000000000000000000000000000000000000000000000000000006064820152608401610696565b60006109cb85611294565b9050838114610a5c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f456e726f6c6c656420726f7574657220646f6573206e6f74206d61746368207360448201527f656e6465720000000000000000000000000000000000000000000000000000006064820152608401610696565b610a68858585856112f9565b5050505050565b6040517f6352211e000000000000000000000000000000000000000000000000000000008152600481018290526000907f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690636352211e90602401602060405180830381865afa158015610afd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b219190612467565b92915050565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82811660048301526000917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015610bb8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b219190612484565b610be4611080565b610bee6000611385565b565b610bf8611080565b8060005b81811015610c4557610c33848483818110610c1957610c1961249d565b9050602002016020810190610c2e919061204e565b6113fc565b610c3e6001826124fb565b9050610bfc565b50505050565b600061073984848434611451565b610c61611080565b60005b81811015610cca57610cb8838383818110610c8157610c8161249d565b610c97926020604090920201908101915061204e565b848484818110610ca957610ca961249d565b905060400201602001356111cb565b610cc36001826124fb565b9050610c64565b505050565b610cd7611080565b6108a5828261148a565b600054610100900460ff1615808015610d015750600054600160ff909116105b80610d1b5750303b158015610d1b575060005460ff166001145b610da7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610696565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610e0557600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610e108484846114a0565b8015610c4557600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b610e80611080565b828114610ee9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e677468000000000000000000000000000000000000000000000000006044820152606401610696565b8260005b81811015610f4f57610f3d868683818110610f0a57610f0a61249d565b9050602002016020810190610f1f919061204e565b858584818110610f3157610f3161249d565b9050602002013561148a565b610f486001826124fb565b9050610eed565b505050505050565b610f5f611080565b610f68816113fc565b50565b6000610b2182610fae6000801b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518060200160405280600081525061155a565b60655473ffffffffffffffffffffffffffffffffffffffff16611589565b610fd4611080565b73ffffffffffffffffffffffffffffffffffffffff8116611077576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610696565b610f6881611385565b60335473ffffffffffffffffffffffffffffffffffffffff163314610bee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610696565b60008061110e848461159f565b915091505b9250929050565b60606000611127836115d9565b9050805167ffffffffffffffff8111156111435761114361250e565b60405190808252806020026020018201604052801561116c578160200160208202803683370190505b50915060005b81518110156111c45781818151811061118d5761118d61249d565b60200260200101518382815181106111a7576111a761249d565b63ffffffff90921660209283029190910190910152600101611172565b5050919050565b63ffffffff8216600081815260ca6020908152604091829020849055815192835282018390527fc3de732a98b24a2b5c6f67e8a7fb057ffc14046b83968a2c73e4148d2fba978b9101610716565b6000806112258661166a565b905085600061123589838561155a565b90506112448a8883898961172e565b9350888a63ffffffff167fd229aacb94204188fe8042965fa6b269c62dc5818b21238779ab64bdd17efeec8460405161127f91815260200190565b60405180910390a35050509695505050505050565b600080806112ac609763ffffffff8087169061110116565b9150915081156112bd579392505050565b6112c6846117e1565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106969190612334565b60006113058383611818565b905060006113138484611837565b90503660006113228686611847565b9150915061133a61133285611857565b848484611900565b838863ffffffff167fba20947a325f450d232530e5f5fce293e7963499d5309a07cee84a269f2f15a68560405161137391815260200190565b60405180910390a35050505050505050565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b611410609763ffffffff808416906119b416565b611419826117e1565b906108a5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106969190612334565b6000611481858585856114638a6119c0565b60655473ffffffffffffffffffffffffffffffffffffffff16611219565b95945050505050565b6108a5609763ffffffff8085169084906119e216565b600054610100900460ff16611537576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610696565b61153f6119ed565b61154883610741565b611551826105d4565b610cca81611385565b60608383836040516020016115719392919061253d565b60405160208183030381529060405290509392505050565b60006107398484611599876119c0565b85611a8c565b60008181526002830160205260408120548190806115ce576115c18585611b60565b9250600091506111139050565b600192509050611113565b606060006115e683611b6c565b90508067ffffffffffffffff8111156116015761160161250e565b60405190808252806020026020018201604052801561162a578160200160208202803683370190505b50915060005b818110156111c4576116428482611b77565b60001c8382815181106116575761165761249d565b6020908102919091010152600101611630565b6040517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018290526060907f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16906323b872dd90606401600060405180830381600087803b15801561170157600080fd5b505af1158015611715573d6000803e3d6000fd5b5050604080516020810190915260008152949350505050565b60008061173a87611294565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166310b83dc08789848989896040518763ffffffff1660e01b815260040161179e95949392919061256a565b60206040518083038185885af11580156117bc573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906108f09190612484565b60606117f28263ffffffff16611b83565b60405160200161180291906125ca565b6040516020818303038152906040529050919050565b6000611827602082848661260f565b61183091612639565b9392505050565b600061182760406020848661260f565b36600061110e836040818761260f565b600073ffffffffffffffffffffffffffffffffffffffff8211156118fc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f5479706543617374733a2062797465733332546f41646472657373206f76657260448201527f666c6f77000000000000000000000000000000000000000000000000000000006064820152608401610696565b5090565b6040517f42842e0e00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8581166024830152604482018590527f000000000000000000000000000000000000000000000000000000000000000016906342842e0e90606401600060405180830381600087803b15801561199657600080fd5b505af11580156119aa573d6000803e3d6000fd5b5050505050505050565b60006118308383611c41565b63ffffffff8116600090815260ca6020526040902054606090610b2190611c5e565b610c45838383611c7c565b600054610100900460ff16611a84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610696565b610bee611c99565b600080611a9886611294565b6040517f81d2ea9500000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016906381d2ea9590611b1590899085908a908a908a9060040161256a565b602060405180830381865afa158015611b32573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b569190612484565b9695505050505050565b60006118308383611d39565b6000610b2182611d51565b60006118308383611d5b565b60606000611b9083611d85565b600101905060008167ffffffffffffffff811115611bb057611bb061250e565b6040519080825280601f01601f191660200182016040528015611bda576020820181803683370190505b5090508181016020015b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff017f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8504945084611be457509392505050565b600081815260028301602052604081208190556118308383611e67565b6060610b216000833360405180602001604052806000815250611e73565b600082815260028401602052604081208290556107398484611ea8565b600054610100900460ff16611d30576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610696565b610bee33611385565b60008181526001830160205260408120541515611830565b6000610b21825490565b6000826000018281548110611d7257611d7261249d565b9060005260206000200154905092915050565b6000807a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310611dce577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000830492506040015b6d04ee2d6d415b85acef81000000008310611dfa576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310611e1857662386f26fc10000830492506010015b6305f5e1008310611e30576305f5e100830492506008015b6127108310611e4457612710830492506004015b60648310611e56576064830492506002015b600a8310610b215760010192915050565b60006118308383611eb4565b6060600185858585604051602001611e8f959493929190612675565b6040516020818303038152906040529050949350505050565b60006118308383611fa7565b60008181526001830160205260408120548015611f9d576000611ed86001836126fa565b8554909150600090611eec906001906126fa565b9050818114611f51576000866000018281548110611f0c57611f0c61249d565b9060005260206000200154905080876000018481548110611f2f57611f2f61249d565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611f6257611f6261270d565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610b21565b6000915050610b21565b6000818152600183016020526040812054611fee57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610b21565b506000610b21565b73ffffffffffffffffffffffffffffffffffffffff81168114610f6857600080fd5b60006020828403121561202a57600080fd5b813561183081611ff6565b803563ffffffff8116811461204957600080fd5b919050565b60006020828403121561206057600080fd5b61183082612035565b6020808252825182820181905260009190848201906040850190845b818110156120a757835163ffffffff1683529284019291840191600101612085565b50909695505050505050565b600080604083850312156120c657600080fd5b6120cf83612035565b946020939093013593505050565b60008083601f8401126120ef57600080fd5b50813567ffffffffffffffff81111561210757600080fd5b60208301915083602082850101111561111357600080fd5b60008060008060008060a0878903121561213857600080fd5b61214187612035565b95506020870135945060408701359350606087013567ffffffffffffffff81111561216b57600080fd5b61217789828a016120dd565b909450925050608087013561218b81611ff6565b809150509295509295509295565b600080600080606085870312156121af57600080fd5b6121b885612035565b935060208501359250604085013567ffffffffffffffff8111156121db57600080fd5b6121e7878288016120dd565b95989497509550505050565b60006020828403121561220557600080fd5b5035919050565b60008083601f84011261221e57600080fd5b50813567ffffffffffffffff81111561223657600080fd5b6020830191508360208260051b850101111561111357600080fd5b6000806020838503121561226457600080fd5b823567ffffffffffffffff81111561227b57600080fd5b6122878582860161220c565b90969095509350505050565b6000806000606084860312156122a857600080fd5b6122b184612035565b95602085013595506040909401359392505050565b60005b838110156122e15781810151838201526020016122c9565b50506000910152565b600081518084526123028160208601602086016122c6565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061183060208301846122ea565b6000806020838503121561235a57600080fd5b823567ffffffffffffffff8082111561237257600080fd5b818501915085601f83011261238657600080fd5b81358181111561239557600080fd5b8660208260061b85010111156123aa57600080fd5b60209290920196919550909350505050565b6000806000606084860312156123d157600080fd5b83356123dc81611ff6565b925060208401356123ec81611ff6565b915060408401356123fc81611ff6565b809150509250925092565b6000806000806040858703121561241d57600080fd5b843567ffffffffffffffff8082111561243557600080fd5b6124418883890161220c565b9096509450602087013591508082111561245a57600080fd5b506121e78782880161220c565b60006020828403121561247957600080fd5b815161183081611ff6565b60006020828403121561249657600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820180821115610b2157610b216124cc565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b8381528260208201526000825161255b8160408501602087016122c6565b91909101604001949350505050565b63ffffffff8616815284602082015260a06040820152600061258f60a08301866122ea565b82810360608401526125a181866122ea565b91505073ffffffffffffffffffffffffffffffffffffffff831660808301529695505050505050565b7f4e6f20726f7574657220656e726f6c6c656420666f7220646f6d61696e3a200081526000825161260281601f8501602087016122c6565b91909101601f0192915050565b6000808585111561261f57600080fd5b8386111561262c57600080fd5b5050820193919092039150565b80356020831015610b21577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b7fffff0000000000000000000000000000000000000000000000000000000000008660f01b1681528460028201528360228201527fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008360601b166042820152600082516126e98160568501602087016122c6565b919091016056019695505050505050565b81810381811115610b2157610b216124cc565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea2646970667358221220359aadbe6606ec50883c047e0c091cde8b5ac81d3ffba9fad06789854012c1f164736f6c63430008160033";
15
+ static readonly bytecode = "0x60e06040523480156200001157600080fd5b50604051620029de380380620029de8339810160408190526200003491620001a4565b80808080806001600160a01b0381163b620000955760405162461bcd60e51b815260206004820152601e60248201527f4d61696c626f78436c69656e743a20696e76616c6964206d61696c626f780000604482015260640160405180910390fd5b6001600160a01b03821660808190526040805163234d8e3d60e21b81529051638d3638f4916004808201926020929091908290030181865afa158015620000e0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001069190620001dc565b63ffffffff1660a0526200011a3362000135565b5050506001600160a01b0390931660c052506200020b915050565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b80516001600160a01b03811681146200019f57600080fd5b919050565b60008060408385031215620001b857600080fd5b620001c38362000187565b9150620001d36020840162000187565b90509250929050565b600060208284031215620001ef57600080fd5b815163ffffffff811681146200020457600080fd5b9392505050565b60805160a05160c0516127726200026c6000396000818161047101528181610aa101528181610b6f015281816116a80152611952015260006103a7015260008181610505015281816109130152818161173e0152611ad801526127726000f3fe6080604052600436106101ac5760003560e01c806381b4e8b4116100ec578063c0c53b8b1161008a578063e9198bf911610064578063e9198bf914610554578063efae508a14610574578063f2ed8c5314610594578063f2fde38b146105b457600080fd5b8063c0c53b8b146104d3578063d5438eae146104f3578063de523cf31461052757600080fd5b806393c44847116100c657806393c4484714610409578063996c6cc31461045f578063b1bd643614610493578063b49c53a7146104b357600080fd5b806381b4e8b4146103825780638d3638f4146103955780638da5cb5b146103de57600080fd5b806356d5d47511610159578063715018a611610133578063715018a6146102f357806371a15b3814610308578063775313a1146103285780637f5a7c7b1461035557600080fd5b806356d5d4751461027b5780636352211e1461028e57806370a08231146102d357600080fd5b8063440df4f41161018a578063440df4f41461022657806349d462ef1461024857806351debffc1461026857600080fd5b80630e72cc06146101b15780632ead72f6146101d35780633dfd387314610206575b600080fd5b3480156101bd57600080fd5b506101d16101cc366004612018565b6105d4565b005b3480156101df57600080fd5b506101f36101ee36600461204e565b610722565b6040519081526020015b60405180910390f35b34801561021257600080fd5b506101d1610221366004612018565b610741565b34801561023257600080fd5b5061023b610882565b6040516101fd9190612069565b34801561025457600080fd5b506101d16102633660046120b3565b610893565b6101f361027636600461211f565b6108a9565b6101d1610289366004612199565b6108fb565b34801561029a57600080fd5b506102ae6102a93660046121f3565b610a6f565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101fd565b3480156102df57600080fd5b506101f36102ee366004612018565b610b27565b3480156102ff57600080fd5b506101d1610bdc565b34801561031457600080fd5b506101d1610323366004612251565b610bf0565b34801561033457600080fd5b506101f361034336600461204e565b60ca6020526000908152604090205481565b34801561036157600080fd5b506065546102ae9073ffffffffffffffffffffffffffffffffffffffff1681565b6101f3610390366004612293565b610c4b565b3480156103a157600080fd5b506103c97f000000000000000000000000000000000000000000000000000000000000000081565b60405163ffffffff90911681526020016101fd565b3480156103ea57600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff166102ae565b34801561041557600080fd5b506104526040518060400160405280600581526020017f372e312e3000000000000000000000000000000000000000000000000000000081525081565b6040516101fd9190612334565b34801561046b57600080fd5b506102ae7f000000000000000000000000000000000000000000000000000000000000000081565b34801561049f57600080fd5b506101d16104ae366004612347565b610c59565b3480156104bf57600080fd5b506101d16104ce3660046120b3565b610ccf565b3480156104df57600080fd5b506101d16104ee3660046123bc565b610ce1565b3480156104ff57600080fd5b506102ae7f000000000000000000000000000000000000000000000000000000000000000081565b34801561053357600080fd5b506066546102ae9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561056057600080fd5b506101d161056f366004612407565b610e78565b34801561058057600080fd5b506101d161058f36600461204e565b610f57565b3480156105a057600080fd5b506101f36105af36600461204e565b610f6b565b3480156105c057600080fd5b506101d16105cf366004612018565b610fcc565b8073ffffffffffffffffffffffffffffffffffffffff81163b15158061060e575073ffffffffffffffffffffffffffffffffffffffff8116155b61069f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d61696c626f78436c69656e743a20696e76616c696420636f6e74726163742060448201527f73657474696e670000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6106a7611080565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527fc47cbcc588c67679e52261c45cc315e56562f8d0ccaba16facb9093ff9498799906020015b60405180910390a15050565b600080610739609763ffffffff8086169061110116565b949350505050565b8073ffffffffffffffffffffffffffffffffffffffff81163b15158061077b575073ffffffffffffffffffffffffffffffffffffffff8116155b610807576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d61696c626f78436c69656e743a20696e76616c696420636f6e74726163742060448201527f73657474696e67000000000000000000000000000000000000000000000000006064820152608401610696565b61080f611080565b606580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527f4eab7b127c764308788622363ad3e9532de3dfba7845bd4f84c125a22544255a90602001610716565b606061088e609761111a565b905090565b61089b611080565b6108a582826111cb565b5050565b60006108f08787873488888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a9250611219915050565b979650505050505050565b3373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016146109c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f4d61696c626f78436c69656e743a2073656e646572206e6f74206d61696c626f60448201527f78000000000000000000000000000000000000000000000000000000000000006064820152608401610696565b60006109cb85611294565b9050838114610a5c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f456e726f6c6c656420726f7574657220646f6573206e6f74206d61746368207360448201527f656e6465720000000000000000000000000000000000000000000000000000006064820152608401610696565b610a68858585856112f9565b5050505050565b6040517f6352211e000000000000000000000000000000000000000000000000000000008152600481018290526000907f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690636352211e90602401602060405180830381865afa158015610afd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b219190612467565b92915050565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82811660048301526000917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015610bb8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b219190612484565b610be4611080565b610bee6000611385565b565b610bf8611080565b8060005b81811015610c4557610c33848483818110610c1957610c1961249d565b9050602002016020810190610c2e919061204e565b6113fc565b610c3e6001826124fb565b9050610bfc565b50505050565b600061073984848434611451565b610c61611080565b60005b81811015610cca57610cb8838383818110610c8157610c8161249d565b610c97926020604090920201908101915061204e565b848484818110610ca957610ca961249d565b905060400201602001356111cb565b610cc36001826124fb565b9050610c64565b505050565b610cd7611080565b6108a5828261148a565b600054610100900460ff1615808015610d015750600054600160ff909116105b80610d1b5750303b158015610d1b575060005460ff166001145b610da7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610696565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610e0557600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610e108484846114a0565b8015610c4557600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b610e80611080565b828114610ee9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e677468000000000000000000000000000000000000000000000000006044820152606401610696565b8260005b81811015610f4f57610f3d868683818110610f0a57610f0a61249d565b9050602002016020810190610f1f919061204e565b858584818110610f3157610f3161249d565b9050602002013561148a565b610f486001826124fb565b9050610eed565b505050505050565b610f5f611080565b610f68816113fc565b50565b6000610b2182610fae6000801b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518060200160405280600081525061155a565b60655473ffffffffffffffffffffffffffffffffffffffff16611589565b610fd4611080565b73ffffffffffffffffffffffffffffffffffffffff8116611077576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610696565b610f6881611385565b60335473ffffffffffffffffffffffffffffffffffffffff163314610bee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610696565b60008061110e848461159f565b915091505b9250929050565b60606000611127836115d9565b9050805167ffffffffffffffff8111156111435761114361250e565b60405190808252806020026020018201604052801561116c578160200160208202803683370190505b50915060005b81518110156111c45781818151811061118d5761118d61249d565b60200260200101518382815181106111a7576111a761249d565b63ffffffff90921660209283029190910190910152600101611172565b5050919050565b63ffffffff8216600081815260ca6020908152604091829020849055815192835282018390527fc3de732a98b24a2b5c6f67e8a7fb057ffc14046b83968a2c73e4148d2fba978b9101610716565b6000806112258661166a565b905085600061123589838561155a565b90506112448a8883898961172e565b9350888a63ffffffff167fd229aacb94204188fe8042965fa6b269c62dc5818b21238779ab64bdd17efeec8460405161127f91815260200190565b60405180910390a35050509695505050505050565b600080806112ac609763ffffffff8087169061110116565b9150915081156112bd579392505050565b6112c6846117e1565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106969190612334565b60006113058383611818565b905060006113138484611837565b90503660006113228686611847565b9150915061133a61133285611857565b848484611900565b838863ffffffff167fba20947a325f450d232530e5f5fce293e7963499d5309a07cee84a269f2f15a68560405161137391815260200190565b60405180910390a35050505050505050565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b611410609763ffffffff808416906119b416565b611419826117e1565b906108a5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106969190612334565b6000611481858585856114638a6119c0565b60655473ffffffffffffffffffffffffffffffffffffffff16611219565b95945050505050565b6108a5609763ffffffff8085169084906119e216565b600054610100900460ff16611537576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610696565b61153f6119ed565b61154883610741565b611551826105d4565b610cca81611385565b60608383836040516020016115719392919061253d565b60405160208183030381529060405290509392505050565b60006107398484611599876119c0565b85611a8c565b60008181526002830160205260408120548190806115ce576115c18585611b60565b9250600091506111139050565b600192509050611113565b606060006115e683611b6c565b90508067ffffffffffffffff8111156116015761160161250e565b60405190808252806020026020018201604052801561162a578160200160208202803683370190505b50915060005b818110156111c4576116428482611b77565b60001c8382815181106116575761165761249d565b6020908102919091010152600101611630565b6040517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018290526060907f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16906323b872dd90606401600060405180830381600087803b15801561170157600080fd5b505af1158015611715573d6000803e3d6000fd5b5050604080516020810190915260008152949350505050565b60008061173a87611294565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166310b83dc08789848989896040518763ffffffff1660e01b815260040161179e95949392919061256a565b60206040518083038185885af11580156117bc573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906108f09190612484565b60606117f28263ffffffff16611b83565b60405160200161180291906125ca565b6040516020818303038152906040529050919050565b6000611827602082848661260f565b61183091612639565b9392505050565b600061182760406020848661260f565b36600061110e836040818761260f565b600073ffffffffffffffffffffffffffffffffffffffff8211156118fc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f5479706543617374733a2062797465733332546f41646472657373206f76657260448201527f666c6f77000000000000000000000000000000000000000000000000000000006064820152608401610696565b5090565b6040517f42842e0e00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8581166024830152604482018590527f000000000000000000000000000000000000000000000000000000000000000016906342842e0e90606401600060405180830381600087803b15801561199657600080fd5b505af11580156119aa573d6000803e3d6000fd5b5050505050505050565b60006118308383611c41565b63ffffffff8116600090815260ca6020526040902054606090610b2190611c5e565b610c45838383611c7c565b600054610100900460ff16611a84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610696565b610bee611c99565b600080611a9886611294565b6040517f81d2ea9500000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016906381d2ea9590611b1590899085908a908a908a9060040161256a565b602060405180830381865afa158015611b32573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b569190612484565b9695505050505050565b60006118308383611d39565b6000610b2182611d51565b60006118308383611d5b565b60606000611b9083611d85565b600101905060008167ffffffffffffffff811115611bb057611bb061250e565b6040519080825280601f01601f191660200182016040528015611bda576020820181803683370190505b5090508181016020015b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff017f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8504945084611be457509392505050565b600081815260028301602052604081208190556118308383611e67565b6060610b216000833360405180602001604052806000815250611e73565b600082815260028401602052604081208290556107398484611ea8565b600054610100900460ff16611d30576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610696565b610bee33611385565b60008181526001830160205260408120541515611830565b6000610b21825490565b6000826000018281548110611d7257611d7261249d565b9060005260206000200154905092915050565b6000807a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310611dce577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000830492506040015b6d04ee2d6d415b85acef81000000008310611dfa576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310611e1857662386f26fc10000830492506010015b6305f5e1008310611e30576305f5e100830492506008015b6127108310611e4457612710830492506004015b60648310611e56576064830492506002015b600a8310610b215760010192915050565b60006118308383611eb4565b6060600185858585604051602001611e8f959493929190612675565b6040516020818303038152906040529050949350505050565b60006118308383611fa7565b60008181526001830160205260408120548015611f9d576000611ed86001836126fa565b8554909150600090611eec906001906126fa565b9050818114611f51576000866000018281548110611f0c57611f0c61249d565b9060005260206000200154905080876000018481548110611f2f57611f2f61249d565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611f6257611f6261270d565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610b21565b6000915050610b21565b6000818152600183016020526040812054611fee57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610b21565b506000610b21565b73ffffffffffffffffffffffffffffffffffffffff81168114610f6857600080fd5b60006020828403121561202a57600080fd5b813561183081611ff6565b803563ffffffff8116811461204957600080fd5b919050565b60006020828403121561206057600080fd5b61183082612035565b6020808252825182820181905260009190848201906040850190845b818110156120a757835163ffffffff1683529284019291840191600101612085565b50909695505050505050565b600080604083850312156120c657600080fd5b6120cf83612035565b946020939093013593505050565b60008083601f8401126120ef57600080fd5b50813567ffffffffffffffff81111561210757600080fd5b60208301915083602082850101111561111357600080fd5b60008060008060008060a0878903121561213857600080fd5b61214187612035565b95506020870135945060408701359350606087013567ffffffffffffffff81111561216b57600080fd5b61217789828a016120dd565b909450925050608087013561218b81611ff6565b809150509295509295509295565b600080600080606085870312156121af57600080fd5b6121b885612035565b935060208501359250604085013567ffffffffffffffff8111156121db57600080fd5b6121e7878288016120dd565b95989497509550505050565b60006020828403121561220557600080fd5b5035919050565b60008083601f84011261221e57600080fd5b50813567ffffffffffffffff81111561223657600080fd5b6020830191508360208260051b850101111561111357600080fd5b6000806020838503121561226457600080fd5b823567ffffffffffffffff81111561227b57600080fd5b6122878582860161220c565b90969095509350505050565b6000806000606084860312156122a857600080fd5b6122b184612035565b95602085013595506040909401359392505050565b60005b838110156122e15781810151838201526020016122c9565b50506000910152565b600081518084526123028160208601602086016122c6565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061183060208301846122ea565b6000806020838503121561235a57600080fd5b823567ffffffffffffffff8082111561237257600080fd5b818501915085601f83011261238657600080fd5b81358181111561239557600080fd5b8660208260061b85010111156123aa57600080fd5b60209290920196919550909350505050565b6000806000606084860312156123d157600080fd5b83356123dc81611ff6565b925060208401356123ec81611ff6565b915060408401356123fc81611ff6565b809150509250925092565b6000806000806040858703121561241d57600080fd5b843567ffffffffffffffff8082111561243557600080fd5b6124418883890161220c565b9096509450602087013591508082111561245a57600080fd5b506121e78782880161220c565b60006020828403121561247957600080fd5b815161183081611ff6565b60006020828403121561249657600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820180821115610b2157610b216124cc565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b8381528260208201526000825161255b8160408501602087016122c6565b91909101604001949350505050565b63ffffffff8616815284602082015260a06040820152600061258f60a08301866122ea565b82810360608401526125a181866122ea565b91505073ffffffffffffffffffffffffffffffffffffffff831660808301529695505050505050565b7f4e6f20726f7574657220656e726f6c6c656420666f7220646f6d61696e3a200081526000825161260281601f8501602087016122c6565b91909101601f0192915050565b6000808585111561261f57600080fd5b8386111561262c57600080fd5b5050820193919092039150565b80356020831015610b21577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b7fffff0000000000000000000000000000000000000000000000000000000000008660f01b1681528460028201528360228201527fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008360601b166042820152600082516126e98160568501602087016122c6565b919091016056019695505050505050565b81810381811115610b2157610b216124cc565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea26469706673582212207a32b2ae311fca194e6001317f7fb8115452e94e03529a4c9a1310c1c9f9ee3664736f6c63430008160033";
16
16
  static readonly abi: readonly [{
17
17
  readonly inputs: readonly [{
18
18
  readonly internalType: "address";
@@ -611,7 +611,7 @@ const _abi = [
611
611
  type: "function",
612
612
  },
613
613
  ];
614
- const _bytecode = "0x60e06040523480156200001157600080fd5b50604051620029de380380620029de8339810160408190526200003491620001a4565b80808080806001600160a01b0381163b620000955760405162461bcd60e51b815260206004820152601e60248201527f4d61696c626f78436c69656e743a20696e76616c6964206d61696c626f780000604482015260640160405180910390fd5b6001600160a01b03821660808190526040805163234d8e3d60e21b81529051638d3638f4916004808201926020929091908290030181865afa158015620000e0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001069190620001dc565b63ffffffff1660a0526200011a3362000135565b5050506001600160a01b0390931660c052506200020b915050565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b80516001600160a01b03811681146200019f57600080fd5b919050565b60008060408385031215620001b857600080fd5b620001c38362000187565b9150620001d36020840162000187565b90509250929050565b600060208284031215620001ef57600080fd5b815163ffffffff811681146200020457600080fd5b9392505050565b60805160a05160c0516127726200026c6000396000818161047101528181610aa101528181610b6f015281816116a80152611952015260006103a7015260008181610505015281816109130152818161173e0152611ad801526127726000f3fe6080604052600436106101ac5760003560e01c806381b4e8b4116100ec578063c0c53b8b1161008a578063e9198bf911610064578063e9198bf914610554578063efae508a14610574578063f2ed8c5314610594578063f2fde38b146105b457600080fd5b8063c0c53b8b146104d3578063d5438eae146104f3578063de523cf31461052757600080fd5b806393c44847116100c657806393c4484714610409578063996c6cc31461045f578063b1bd643614610493578063b49c53a7146104b357600080fd5b806381b4e8b4146103825780638d3638f4146103955780638da5cb5b146103de57600080fd5b806356d5d47511610159578063715018a611610133578063715018a6146102f357806371a15b3814610308578063775313a1146103285780637f5a7c7b1461035557600080fd5b806356d5d4751461027b5780636352211e1461028e57806370a08231146102d357600080fd5b8063440df4f41161018a578063440df4f41461022657806349d462ef1461024857806351debffc1461026857600080fd5b80630e72cc06146101b15780632ead72f6146101d35780633dfd387314610206575b600080fd5b3480156101bd57600080fd5b506101d16101cc366004612018565b6105d4565b005b3480156101df57600080fd5b506101f36101ee36600461204e565b610722565b6040519081526020015b60405180910390f35b34801561021257600080fd5b506101d1610221366004612018565b610741565b34801561023257600080fd5b5061023b610882565b6040516101fd9190612069565b34801561025457600080fd5b506101d16102633660046120b3565b610893565b6101f361027636600461211f565b6108a9565b6101d1610289366004612199565b6108fb565b34801561029a57600080fd5b506102ae6102a93660046121f3565b610a6f565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101fd565b3480156102df57600080fd5b506101f36102ee366004612018565b610b27565b3480156102ff57600080fd5b506101d1610bdc565b34801561031457600080fd5b506101d1610323366004612251565b610bf0565b34801561033457600080fd5b506101f361034336600461204e565b60ca6020526000908152604090205481565b34801561036157600080fd5b506065546102ae9073ffffffffffffffffffffffffffffffffffffffff1681565b6101f3610390366004612293565b610c4b565b3480156103a157600080fd5b506103c97f000000000000000000000000000000000000000000000000000000000000000081565b60405163ffffffff90911681526020016101fd565b3480156103ea57600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff166102ae565b34801561041557600080fd5b506104526040518060400160405280600581526020017f372e302e3000000000000000000000000000000000000000000000000000000081525081565b6040516101fd9190612334565b34801561046b57600080fd5b506102ae7f000000000000000000000000000000000000000000000000000000000000000081565b34801561049f57600080fd5b506101d16104ae366004612347565b610c59565b3480156104bf57600080fd5b506101d16104ce3660046120b3565b610ccf565b3480156104df57600080fd5b506101d16104ee3660046123bc565b610ce1565b3480156104ff57600080fd5b506102ae7f000000000000000000000000000000000000000000000000000000000000000081565b34801561053357600080fd5b506066546102ae9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561056057600080fd5b506101d161056f366004612407565b610e78565b34801561058057600080fd5b506101d161058f36600461204e565b610f57565b3480156105a057600080fd5b506101f36105af36600461204e565b610f6b565b3480156105c057600080fd5b506101d16105cf366004612018565b610fcc565b8073ffffffffffffffffffffffffffffffffffffffff81163b15158061060e575073ffffffffffffffffffffffffffffffffffffffff8116155b61069f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d61696c626f78436c69656e743a20696e76616c696420636f6e74726163742060448201527f73657474696e670000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6106a7611080565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527fc47cbcc588c67679e52261c45cc315e56562f8d0ccaba16facb9093ff9498799906020015b60405180910390a15050565b600080610739609763ffffffff8086169061110116565b949350505050565b8073ffffffffffffffffffffffffffffffffffffffff81163b15158061077b575073ffffffffffffffffffffffffffffffffffffffff8116155b610807576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d61696c626f78436c69656e743a20696e76616c696420636f6e74726163742060448201527f73657474696e67000000000000000000000000000000000000000000000000006064820152608401610696565b61080f611080565b606580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527f4eab7b127c764308788622363ad3e9532de3dfba7845bd4f84c125a22544255a90602001610716565b606061088e609761111a565b905090565b61089b611080565b6108a582826111cb565b5050565b60006108f08787873488888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a9250611219915050565b979650505050505050565b3373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016146109c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f4d61696c626f78436c69656e743a2073656e646572206e6f74206d61696c626f60448201527f78000000000000000000000000000000000000000000000000000000000000006064820152608401610696565b60006109cb85611294565b9050838114610a5c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f456e726f6c6c656420726f7574657220646f6573206e6f74206d61746368207360448201527f656e6465720000000000000000000000000000000000000000000000000000006064820152608401610696565b610a68858585856112f9565b5050505050565b6040517f6352211e000000000000000000000000000000000000000000000000000000008152600481018290526000907f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690636352211e90602401602060405180830381865afa158015610afd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b219190612467565b92915050565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82811660048301526000917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015610bb8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b219190612484565b610be4611080565b610bee6000611385565b565b610bf8611080565b8060005b81811015610c4557610c33848483818110610c1957610c1961249d565b9050602002016020810190610c2e919061204e565b6113fc565b610c3e6001826124fb565b9050610bfc565b50505050565b600061073984848434611451565b610c61611080565b60005b81811015610cca57610cb8838383818110610c8157610c8161249d565b610c97926020604090920201908101915061204e565b848484818110610ca957610ca961249d565b905060400201602001356111cb565b610cc36001826124fb565b9050610c64565b505050565b610cd7611080565b6108a5828261148a565b600054610100900460ff1615808015610d015750600054600160ff909116105b80610d1b5750303b158015610d1b575060005460ff166001145b610da7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610696565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610e0557600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610e108484846114a0565b8015610c4557600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b610e80611080565b828114610ee9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e677468000000000000000000000000000000000000000000000000006044820152606401610696565b8260005b81811015610f4f57610f3d868683818110610f0a57610f0a61249d565b9050602002016020810190610f1f919061204e565b858584818110610f3157610f3161249d565b9050602002013561148a565b610f486001826124fb565b9050610eed565b505050505050565b610f5f611080565b610f68816113fc565b50565b6000610b2182610fae6000801b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518060200160405280600081525061155a565b60655473ffffffffffffffffffffffffffffffffffffffff16611589565b610fd4611080565b73ffffffffffffffffffffffffffffffffffffffff8116611077576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610696565b610f6881611385565b60335473ffffffffffffffffffffffffffffffffffffffff163314610bee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610696565b60008061110e848461159f565b915091505b9250929050565b60606000611127836115d9565b9050805167ffffffffffffffff8111156111435761114361250e565b60405190808252806020026020018201604052801561116c578160200160208202803683370190505b50915060005b81518110156111c45781818151811061118d5761118d61249d565b60200260200101518382815181106111a7576111a761249d565b63ffffffff90921660209283029190910190910152600101611172565b5050919050565b63ffffffff8216600081815260ca6020908152604091829020849055815192835282018390527fc3de732a98b24a2b5c6f67e8a7fb057ffc14046b83968a2c73e4148d2fba978b9101610716565b6000806112258661166a565b905085600061123589838561155a565b90506112448a8883898961172e565b9350888a63ffffffff167fd229aacb94204188fe8042965fa6b269c62dc5818b21238779ab64bdd17efeec8460405161127f91815260200190565b60405180910390a35050509695505050505050565b600080806112ac609763ffffffff8087169061110116565b9150915081156112bd579392505050565b6112c6846117e1565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106969190612334565b60006113058383611818565b905060006113138484611837565b90503660006113228686611847565b9150915061133a61133285611857565b848484611900565b838863ffffffff167fba20947a325f450d232530e5f5fce293e7963499d5309a07cee84a269f2f15a68560405161137391815260200190565b60405180910390a35050505050505050565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b611410609763ffffffff808416906119b416565b611419826117e1565b906108a5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106969190612334565b6000611481858585856114638a6119c0565b60655473ffffffffffffffffffffffffffffffffffffffff16611219565b95945050505050565b6108a5609763ffffffff8085169084906119e216565b600054610100900460ff16611537576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610696565b61153f6119ed565b61154883610741565b611551826105d4565b610cca81611385565b60608383836040516020016115719392919061253d565b60405160208183030381529060405290509392505050565b60006107398484611599876119c0565b85611a8c565b60008181526002830160205260408120548190806115ce576115c18585611b60565b9250600091506111139050565b600192509050611113565b606060006115e683611b6c565b90508067ffffffffffffffff8111156116015761160161250e565b60405190808252806020026020018201604052801561162a578160200160208202803683370190505b50915060005b818110156111c4576116428482611b77565b60001c8382815181106116575761165761249d565b6020908102919091010152600101611630565b6040517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018290526060907f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16906323b872dd90606401600060405180830381600087803b15801561170157600080fd5b505af1158015611715573d6000803e3d6000fd5b5050604080516020810190915260008152949350505050565b60008061173a87611294565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166310b83dc08789848989896040518763ffffffff1660e01b815260040161179e95949392919061256a565b60206040518083038185885af11580156117bc573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906108f09190612484565b60606117f28263ffffffff16611b83565b60405160200161180291906125ca565b6040516020818303038152906040529050919050565b6000611827602082848661260f565b61183091612639565b9392505050565b600061182760406020848661260f565b36600061110e836040818761260f565b600073ffffffffffffffffffffffffffffffffffffffff8211156118fc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f5479706543617374733a2062797465733332546f41646472657373206f76657260448201527f666c6f77000000000000000000000000000000000000000000000000000000006064820152608401610696565b5090565b6040517f42842e0e00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8581166024830152604482018590527f000000000000000000000000000000000000000000000000000000000000000016906342842e0e90606401600060405180830381600087803b15801561199657600080fd5b505af11580156119aa573d6000803e3d6000fd5b5050505050505050565b60006118308383611c41565b63ffffffff8116600090815260ca6020526040902054606090610b2190611c5e565b610c45838383611c7c565b600054610100900460ff16611a84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610696565b610bee611c99565b600080611a9886611294565b6040517f81d2ea9500000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016906381d2ea9590611b1590899085908a908a908a9060040161256a565b602060405180830381865afa158015611b32573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b569190612484565b9695505050505050565b60006118308383611d39565b6000610b2182611d51565b60006118308383611d5b565b60606000611b9083611d85565b600101905060008167ffffffffffffffff811115611bb057611bb061250e565b6040519080825280601f01601f191660200182016040528015611bda576020820181803683370190505b5090508181016020015b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff017f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8504945084611be457509392505050565b600081815260028301602052604081208190556118308383611e67565b6060610b216000833360405180602001604052806000815250611e73565b600082815260028401602052604081208290556107398484611ea8565b600054610100900460ff16611d30576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610696565b610bee33611385565b60008181526001830160205260408120541515611830565b6000610b21825490565b6000826000018281548110611d7257611d7261249d565b9060005260206000200154905092915050565b6000807a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310611dce577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000830492506040015b6d04ee2d6d415b85acef81000000008310611dfa576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310611e1857662386f26fc10000830492506010015b6305f5e1008310611e30576305f5e100830492506008015b6127108310611e4457612710830492506004015b60648310611e56576064830492506002015b600a8310610b215760010192915050565b60006118308383611eb4565b6060600185858585604051602001611e8f959493929190612675565b6040516020818303038152906040529050949350505050565b60006118308383611fa7565b60008181526001830160205260408120548015611f9d576000611ed86001836126fa565b8554909150600090611eec906001906126fa565b9050818114611f51576000866000018281548110611f0c57611f0c61249d565b9060005260206000200154905080876000018481548110611f2f57611f2f61249d565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611f6257611f6261270d565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610b21565b6000915050610b21565b6000818152600183016020526040812054611fee57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610b21565b506000610b21565b73ffffffffffffffffffffffffffffffffffffffff81168114610f6857600080fd5b60006020828403121561202a57600080fd5b813561183081611ff6565b803563ffffffff8116811461204957600080fd5b919050565b60006020828403121561206057600080fd5b61183082612035565b6020808252825182820181905260009190848201906040850190845b818110156120a757835163ffffffff1683529284019291840191600101612085565b50909695505050505050565b600080604083850312156120c657600080fd5b6120cf83612035565b946020939093013593505050565b60008083601f8401126120ef57600080fd5b50813567ffffffffffffffff81111561210757600080fd5b60208301915083602082850101111561111357600080fd5b60008060008060008060a0878903121561213857600080fd5b61214187612035565b95506020870135945060408701359350606087013567ffffffffffffffff81111561216b57600080fd5b61217789828a016120dd565b909450925050608087013561218b81611ff6565b809150509295509295509295565b600080600080606085870312156121af57600080fd5b6121b885612035565b935060208501359250604085013567ffffffffffffffff8111156121db57600080fd5b6121e7878288016120dd565b95989497509550505050565b60006020828403121561220557600080fd5b5035919050565b60008083601f84011261221e57600080fd5b50813567ffffffffffffffff81111561223657600080fd5b6020830191508360208260051b850101111561111357600080fd5b6000806020838503121561226457600080fd5b823567ffffffffffffffff81111561227b57600080fd5b6122878582860161220c565b90969095509350505050565b6000806000606084860312156122a857600080fd5b6122b184612035565b95602085013595506040909401359392505050565b60005b838110156122e15781810151838201526020016122c9565b50506000910152565b600081518084526123028160208601602086016122c6565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061183060208301846122ea565b6000806020838503121561235a57600080fd5b823567ffffffffffffffff8082111561237257600080fd5b818501915085601f83011261238657600080fd5b81358181111561239557600080fd5b8660208260061b85010111156123aa57600080fd5b60209290920196919550909350505050565b6000806000606084860312156123d157600080fd5b83356123dc81611ff6565b925060208401356123ec81611ff6565b915060408401356123fc81611ff6565b809150509250925092565b6000806000806040858703121561241d57600080fd5b843567ffffffffffffffff8082111561243557600080fd5b6124418883890161220c565b9096509450602087013591508082111561245a57600080fd5b506121e78782880161220c565b60006020828403121561247957600080fd5b815161183081611ff6565b60006020828403121561249657600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820180821115610b2157610b216124cc565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b8381528260208201526000825161255b8160408501602087016122c6565b91909101604001949350505050565b63ffffffff8616815284602082015260a06040820152600061258f60a08301866122ea565b82810360608401526125a181866122ea565b91505073ffffffffffffffffffffffffffffffffffffffff831660808301529695505050505050565b7f4e6f20726f7574657220656e726f6c6c656420666f7220646f6d61696e3a200081526000825161260281601f8501602087016122c6565b91909101601f0192915050565b6000808585111561261f57600080fd5b8386111561262c57600080fd5b5050820193919092039150565b80356020831015610b21577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b7fffff0000000000000000000000000000000000000000000000000000000000008660f01b1681528460028201528360228201527fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008360601b166042820152600082516126e98160568501602087016122c6565b919091016056019695505050505050565b81810381811115610b2157610b216124cc565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea2646970667358221220359aadbe6606ec50883c047e0c091cde8b5ac81d3ffba9fad06789854012c1f164736f6c63430008160033";
614
+ const _bytecode = "0x60e06040523480156200001157600080fd5b50604051620029de380380620029de8339810160408190526200003491620001a4565b80808080806001600160a01b0381163b620000955760405162461bcd60e51b815260206004820152601e60248201527f4d61696c626f78436c69656e743a20696e76616c6964206d61696c626f780000604482015260640160405180910390fd5b6001600160a01b03821660808190526040805163234d8e3d60e21b81529051638d3638f4916004808201926020929091908290030181865afa158015620000e0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001069190620001dc565b63ffffffff1660a0526200011a3362000135565b5050506001600160a01b0390931660c052506200020b915050565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b80516001600160a01b03811681146200019f57600080fd5b919050565b60008060408385031215620001b857600080fd5b620001c38362000187565b9150620001d36020840162000187565b90509250929050565b600060208284031215620001ef57600080fd5b815163ffffffff811681146200020457600080fd5b9392505050565b60805160a05160c0516127726200026c6000396000818161047101528181610aa101528181610b6f015281816116a80152611952015260006103a7015260008181610505015281816109130152818161173e0152611ad801526127726000f3fe6080604052600436106101ac5760003560e01c806381b4e8b4116100ec578063c0c53b8b1161008a578063e9198bf911610064578063e9198bf914610554578063efae508a14610574578063f2ed8c5314610594578063f2fde38b146105b457600080fd5b8063c0c53b8b146104d3578063d5438eae146104f3578063de523cf31461052757600080fd5b806393c44847116100c657806393c4484714610409578063996c6cc31461045f578063b1bd643614610493578063b49c53a7146104b357600080fd5b806381b4e8b4146103825780638d3638f4146103955780638da5cb5b146103de57600080fd5b806356d5d47511610159578063715018a611610133578063715018a6146102f357806371a15b3814610308578063775313a1146103285780637f5a7c7b1461035557600080fd5b806356d5d4751461027b5780636352211e1461028e57806370a08231146102d357600080fd5b8063440df4f41161018a578063440df4f41461022657806349d462ef1461024857806351debffc1461026857600080fd5b80630e72cc06146101b15780632ead72f6146101d35780633dfd387314610206575b600080fd5b3480156101bd57600080fd5b506101d16101cc366004612018565b6105d4565b005b3480156101df57600080fd5b506101f36101ee36600461204e565b610722565b6040519081526020015b60405180910390f35b34801561021257600080fd5b506101d1610221366004612018565b610741565b34801561023257600080fd5b5061023b610882565b6040516101fd9190612069565b34801561025457600080fd5b506101d16102633660046120b3565b610893565b6101f361027636600461211f565b6108a9565b6101d1610289366004612199565b6108fb565b34801561029a57600080fd5b506102ae6102a93660046121f3565b610a6f565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101fd565b3480156102df57600080fd5b506101f36102ee366004612018565b610b27565b3480156102ff57600080fd5b506101d1610bdc565b34801561031457600080fd5b506101d1610323366004612251565b610bf0565b34801561033457600080fd5b506101f361034336600461204e565b60ca6020526000908152604090205481565b34801561036157600080fd5b506065546102ae9073ffffffffffffffffffffffffffffffffffffffff1681565b6101f3610390366004612293565b610c4b565b3480156103a157600080fd5b506103c97f000000000000000000000000000000000000000000000000000000000000000081565b60405163ffffffff90911681526020016101fd565b3480156103ea57600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff166102ae565b34801561041557600080fd5b506104526040518060400160405280600581526020017f372e312e3000000000000000000000000000000000000000000000000000000081525081565b6040516101fd9190612334565b34801561046b57600080fd5b506102ae7f000000000000000000000000000000000000000000000000000000000000000081565b34801561049f57600080fd5b506101d16104ae366004612347565b610c59565b3480156104bf57600080fd5b506101d16104ce3660046120b3565b610ccf565b3480156104df57600080fd5b506101d16104ee3660046123bc565b610ce1565b3480156104ff57600080fd5b506102ae7f000000000000000000000000000000000000000000000000000000000000000081565b34801561053357600080fd5b506066546102ae9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561056057600080fd5b506101d161056f366004612407565b610e78565b34801561058057600080fd5b506101d161058f36600461204e565b610f57565b3480156105a057600080fd5b506101f36105af36600461204e565b610f6b565b3480156105c057600080fd5b506101d16105cf366004612018565b610fcc565b8073ffffffffffffffffffffffffffffffffffffffff81163b15158061060e575073ffffffffffffffffffffffffffffffffffffffff8116155b61069f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d61696c626f78436c69656e743a20696e76616c696420636f6e74726163742060448201527f73657474696e670000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6106a7611080565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527fc47cbcc588c67679e52261c45cc315e56562f8d0ccaba16facb9093ff9498799906020015b60405180910390a15050565b600080610739609763ffffffff8086169061110116565b949350505050565b8073ffffffffffffffffffffffffffffffffffffffff81163b15158061077b575073ffffffffffffffffffffffffffffffffffffffff8116155b610807576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f4d61696c626f78436c69656e743a20696e76616c696420636f6e74726163742060448201527f73657474696e67000000000000000000000000000000000000000000000000006064820152608401610696565b61080f611080565b606580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527f4eab7b127c764308788622363ad3e9532de3dfba7845bd4f84c125a22544255a90602001610716565b606061088e609761111a565b905090565b61089b611080565b6108a582826111cb565b5050565b60006108f08787873488888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a9250611219915050565b979650505050505050565b3373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016146109c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f4d61696c626f78436c69656e743a2073656e646572206e6f74206d61696c626f60448201527f78000000000000000000000000000000000000000000000000000000000000006064820152608401610696565b60006109cb85611294565b9050838114610a5c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f456e726f6c6c656420726f7574657220646f6573206e6f74206d61746368207360448201527f656e6465720000000000000000000000000000000000000000000000000000006064820152608401610696565b610a68858585856112f9565b5050505050565b6040517f6352211e000000000000000000000000000000000000000000000000000000008152600481018290526000907f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690636352211e90602401602060405180830381865afa158015610afd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b219190612467565b92915050565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82811660048301526000917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015610bb8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b219190612484565b610be4611080565b610bee6000611385565b565b610bf8611080565b8060005b81811015610c4557610c33848483818110610c1957610c1961249d565b9050602002016020810190610c2e919061204e565b6113fc565b610c3e6001826124fb565b9050610bfc565b50505050565b600061073984848434611451565b610c61611080565b60005b81811015610cca57610cb8838383818110610c8157610c8161249d565b610c97926020604090920201908101915061204e565b848484818110610ca957610ca961249d565b905060400201602001356111cb565b610cc36001826124fb565b9050610c64565b505050565b610cd7611080565b6108a5828261148a565b600054610100900460ff1615808015610d015750600054600160ff909116105b80610d1b5750303b158015610d1b575060005460ff166001145b610da7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610696565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610e0557600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610e108484846114a0565b8015610c4557600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150505050565b610e80611080565b828114610ee9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e677468000000000000000000000000000000000000000000000000006044820152606401610696565b8260005b81811015610f4f57610f3d868683818110610f0a57610f0a61249d565b9050602002016020810190610f1f919061204e565b858584818110610f3157610f3161249d565b9050602002013561148a565b610f486001826124fb565b9050610eed565b505050505050565b610f5f611080565b610f68816113fc565b50565b6000610b2182610fae6000801b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518060200160405280600081525061155a565b60655473ffffffffffffffffffffffffffffffffffffffff16611589565b610fd4611080565b73ffffffffffffffffffffffffffffffffffffffff8116611077576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610696565b610f6881611385565b60335473ffffffffffffffffffffffffffffffffffffffff163314610bee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610696565b60008061110e848461159f565b915091505b9250929050565b60606000611127836115d9565b9050805167ffffffffffffffff8111156111435761114361250e565b60405190808252806020026020018201604052801561116c578160200160208202803683370190505b50915060005b81518110156111c45781818151811061118d5761118d61249d565b60200260200101518382815181106111a7576111a761249d565b63ffffffff90921660209283029190910190910152600101611172565b5050919050565b63ffffffff8216600081815260ca6020908152604091829020849055815192835282018390527fc3de732a98b24a2b5c6f67e8a7fb057ffc14046b83968a2c73e4148d2fba978b9101610716565b6000806112258661166a565b905085600061123589838561155a565b90506112448a8883898961172e565b9350888a63ffffffff167fd229aacb94204188fe8042965fa6b269c62dc5818b21238779ab64bdd17efeec8460405161127f91815260200190565b60405180910390a35050509695505050505050565b600080806112ac609763ffffffff8087169061110116565b9150915081156112bd579392505050565b6112c6846117e1565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106969190612334565b60006113058383611818565b905060006113138484611837565b90503660006113228686611847565b9150915061133a61133285611857565b848484611900565b838863ffffffff167fba20947a325f450d232530e5f5fce293e7963499d5309a07cee84a269f2f15a68560405161137391815260200190565b60405180910390a35050505050505050565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b611410609763ffffffff808416906119b416565b611419826117e1565b906108a5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106969190612334565b6000611481858585856114638a6119c0565b60655473ffffffffffffffffffffffffffffffffffffffff16611219565b95945050505050565b6108a5609763ffffffff8085169084906119e216565b600054610100900460ff16611537576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610696565b61153f6119ed565b61154883610741565b611551826105d4565b610cca81611385565b60608383836040516020016115719392919061253d565b60405160208183030381529060405290509392505050565b60006107398484611599876119c0565b85611a8c565b60008181526002830160205260408120548190806115ce576115c18585611b60565b9250600091506111139050565b600192509050611113565b606060006115e683611b6c565b90508067ffffffffffffffff8111156116015761160161250e565b60405190808252806020026020018201604052801561162a578160200160208202803683370190505b50915060005b818110156111c4576116428482611b77565b60001c8382815181106116575761165761249d565b6020908102919091010152600101611630565b6040517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018290526060907f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16906323b872dd90606401600060405180830381600087803b15801561170157600080fd5b505af1158015611715573d6000803e3d6000fd5b5050604080516020810190915260008152949350505050565b60008061173a87611294565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166310b83dc08789848989896040518763ffffffff1660e01b815260040161179e95949392919061256a565b60206040518083038185885af11580156117bc573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906108f09190612484565b60606117f28263ffffffff16611b83565b60405160200161180291906125ca565b6040516020818303038152906040529050919050565b6000611827602082848661260f565b61183091612639565b9392505050565b600061182760406020848661260f565b36600061110e836040818761260f565b600073ffffffffffffffffffffffffffffffffffffffff8211156118fc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f5479706543617374733a2062797465733332546f41646472657373206f76657260448201527f666c6f77000000000000000000000000000000000000000000000000000000006064820152608401610696565b5090565b6040517f42842e0e00000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8581166024830152604482018590527f000000000000000000000000000000000000000000000000000000000000000016906342842e0e90606401600060405180830381600087803b15801561199657600080fd5b505af11580156119aa573d6000803e3d6000fd5b5050505050505050565b60006118308383611c41565b63ffffffff8116600090815260ca6020526040902054606090610b2190611c5e565b610c45838383611c7c565b600054610100900460ff16611a84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610696565b610bee611c99565b600080611a9886611294565b6040517f81d2ea9500000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016906381d2ea9590611b1590899085908a908a908a9060040161256a565b602060405180830381865afa158015611b32573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b569190612484565b9695505050505050565b60006118308383611d39565b6000610b2182611d51565b60006118308383611d5b565b60606000611b9083611d85565b600101905060008167ffffffffffffffff811115611bb057611bb061250e565b6040519080825280601f01601f191660200182016040528015611bda576020820181803683370190505b5090508181016020015b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff017f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8504945084611be457509392505050565b600081815260028301602052604081208190556118308383611e67565b6060610b216000833360405180602001604052806000815250611e73565b600082815260028401602052604081208290556107398484611ea8565b600054610100900460ff16611d30576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610696565b610bee33611385565b60008181526001830160205260408120541515611830565b6000610b21825490565b6000826000018281548110611d7257611d7261249d565b9060005260206000200154905092915050565b6000807a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310611dce577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000830492506040015b6d04ee2d6d415b85acef81000000008310611dfa576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310611e1857662386f26fc10000830492506010015b6305f5e1008310611e30576305f5e100830492506008015b6127108310611e4457612710830492506004015b60648310611e56576064830492506002015b600a8310610b215760010192915050565b60006118308383611eb4565b6060600185858585604051602001611e8f959493929190612675565b6040516020818303038152906040529050949350505050565b60006118308383611fa7565b60008181526001830160205260408120548015611f9d576000611ed86001836126fa565b8554909150600090611eec906001906126fa565b9050818114611f51576000866000018281548110611f0c57611f0c61249d565b9060005260206000200154905080876000018481548110611f2f57611f2f61249d565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611f6257611f6261270d565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610b21565b6000915050610b21565b6000818152600183016020526040812054611fee57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610b21565b506000610b21565b73ffffffffffffffffffffffffffffffffffffffff81168114610f6857600080fd5b60006020828403121561202a57600080fd5b813561183081611ff6565b803563ffffffff8116811461204957600080fd5b919050565b60006020828403121561206057600080fd5b61183082612035565b6020808252825182820181905260009190848201906040850190845b818110156120a757835163ffffffff1683529284019291840191600101612085565b50909695505050505050565b600080604083850312156120c657600080fd5b6120cf83612035565b946020939093013593505050565b60008083601f8401126120ef57600080fd5b50813567ffffffffffffffff81111561210757600080fd5b60208301915083602082850101111561111357600080fd5b60008060008060008060a0878903121561213857600080fd5b61214187612035565b95506020870135945060408701359350606087013567ffffffffffffffff81111561216b57600080fd5b61217789828a016120dd565b909450925050608087013561218b81611ff6565b809150509295509295509295565b600080600080606085870312156121af57600080fd5b6121b885612035565b935060208501359250604085013567ffffffffffffffff8111156121db57600080fd5b6121e7878288016120dd565b95989497509550505050565b60006020828403121561220557600080fd5b5035919050565b60008083601f84011261221e57600080fd5b50813567ffffffffffffffff81111561223657600080fd5b6020830191508360208260051b850101111561111357600080fd5b6000806020838503121561226457600080fd5b823567ffffffffffffffff81111561227b57600080fd5b6122878582860161220c565b90969095509350505050565b6000806000606084860312156122a857600080fd5b6122b184612035565b95602085013595506040909401359392505050565b60005b838110156122e15781810151838201526020016122c9565b50506000910152565b600081518084526123028160208601602086016122c6565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061183060208301846122ea565b6000806020838503121561235a57600080fd5b823567ffffffffffffffff8082111561237257600080fd5b818501915085601f83011261238657600080fd5b81358181111561239557600080fd5b8660208260061b85010111156123aa57600080fd5b60209290920196919550909350505050565b6000806000606084860312156123d157600080fd5b83356123dc81611ff6565b925060208401356123ec81611ff6565b915060408401356123fc81611ff6565b809150509250925092565b6000806000806040858703121561241d57600080fd5b843567ffffffffffffffff8082111561243557600080fd5b6124418883890161220c565b9096509450602087013591508082111561245a57600080fd5b506121e78782880161220c565b60006020828403121561247957600080fd5b815161183081611ff6565b60006020828403121561249657600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820180821115610b2157610b216124cc565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b8381528260208201526000825161255b8160408501602087016122c6565b91909101604001949350505050565b63ffffffff8616815284602082015260a06040820152600061258f60a08301866122ea565b82810360608401526125a181866122ea565b91505073ffffffffffffffffffffffffffffffffffffffff831660808301529695505050505050565b7f4e6f20726f7574657220656e726f6c6c656420666f7220646f6d61696e3a200081526000825161260281601f8501602087016122c6565b91909101601f0192915050565b6000808585111561261f57600080fd5b8386111561262c57600080fd5b5050820193919092039150565b80356020831015610b21577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b7fffff0000000000000000000000000000000000000000000000000000000000008660f01b1681528460028201528360228201527fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008360601b166042820152600082516126e98160568501602087016122c6565b919091016056019695505050505050565b81810381811115610b2157610b216124cc565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea26469706673582212207a32b2ae311fca194e6001317f7fb8115452e94e03529a4c9a1310c1c9f9ee3664736f6c63430008160033";
615
615
  const isSuperArgs = (xs) => xs.length > 1;
616
616
  export class HypERC721Collateral__factory extends ContractFactory {
617
617
  constructor(...args) {