@1inch/solidity-utils 6.7.1 → 6.8.1

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 (283) hide show
  1. package/CONTRIBUTING.md +36 -0
  2. package/contracts/libraries/Calldata.sol +81 -0
  3. package/contracts/libraries/CalldataPtr.sol +41 -0
  4. package/contracts/libraries/Transient.sol +240 -0
  5. package/contracts/libraries/TransientLock.sol +59 -0
  6. package/contracts/mixins/Multicall.sol +28 -0
  7. package/contracts/mixins/ReentrancyGuard.sol +92 -0
  8. package/contracts/mixins/Simulator.sol +30 -0
  9. package/dist/hardhat-setup/networks.js +2 -1
  10. package/dist/hardhat-setup/networks.js.map +1 -1
  11. package/dist/typechain-types/contracts/libraries/Transient.sol/TransientLib.d.ts +20 -0
  12. package/dist/typechain-types/contracts/libraries/Transient.sol/TransientLib.js +3 -0
  13. package/dist/typechain-types/contracts/libraries/Transient.sol/TransientLib.js.map +1 -0
  14. package/dist/typechain-types/contracts/libraries/Transient.sol/index.d.ts +1 -0
  15. package/dist/typechain-types/contracts/libraries/Transient.sol/index.js +3 -0
  16. package/dist/typechain-types/contracts/libraries/Transient.sol/index.js.map +1 -0
  17. package/dist/typechain-types/contracts/libraries/TransientLock.sol/TransientLockLib.d.ts +20 -0
  18. package/dist/typechain-types/contracts/libraries/TransientLock.sol/TransientLockLib.js +3 -0
  19. package/dist/typechain-types/contracts/libraries/TransientLock.sol/TransientLockLib.js.map +1 -0
  20. package/dist/typechain-types/contracts/libraries/TransientLock.sol/index.d.ts +1 -0
  21. package/dist/typechain-types/contracts/libraries/TransientLock.sol/index.js +3 -0
  22. package/dist/typechain-types/contracts/libraries/TransientLock.sol/index.js.map +1 -0
  23. package/dist/typechain-types/contracts/libraries/index.d.ts +4 -0
  24. package/dist/typechain-types/contracts/mixins/Multicall.d.ts +25 -0
  25. package/dist/typechain-types/contracts/mixins/Multicall.js +3 -0
  26. package/dist/typechain-types/contracts/mixins/Multicall.js.map +1 -0
  27. package/dist/typechain-types/contracts/mixins/ReentrancyGuard.d.ts +20 -0
  28. package/dist/typechain-types/contracts/mixins/ReentrancyGuard.js +3 -0
  29. package/dist/typechain-types/contracts/mixins/ReentrancyGuard.js.map +1 -0
  30. package/dist/typechain-types/contracts/mixins/Simulator.d.ts +35 -0
  31. package/dist/typechain-types/contracts/mixins/Simulator.js +3 -0
  32. package/dist/typechain-types/contracts/mixins/Simulator.js.map +1 -0
  33. package/dist/typechain-types/contracts/mixins/index.d.ts +3 -0
  34. package/dist/typechain-types/contracts/tests/mocks/CalldataMock.d.ts +81 -0
  35. package/dist/typechain-types/contracts/tests/mocks/CalldataMock.js +3 -0
  36. package/dist/typechain-types/contracts/tests/mocks/CalldataMock.js.map +1 -0
  37. package/dist/typechain-types/contracts/tests/mocks/CalldataPtrMock.d.ts +51 -0
  38. package/dist/typechain-types/contracts/tests/mocks/CalldataPtrMock.js +3 -0
  39. package/dist/typechain-types/contracts/tests/mocks/CalldataPtrMock.js.map +1 -0
  40. package/dist/typechain-types/contracts/tests/mocks/MulticallMock.d.ts +53 -0
  41. package/dist/typechain-types/contracts/tests/mocks/MulticallMock.js +3 -0
  42. package/dist/typechain-types/contracts/tests/mocks/MulticallMock.js.map +1 -0
  43. package/dist/typechain-types/contracts/tests/mocks/ReentrancyGuardMock.sol/IReentrancyAttacker.d.ts +29 -0
  44. package/dist/typechain-types/contracts/tests/mocks/ReentrancyGuardMock.sol/IReentrancyAttacker.js +3 -0
  45. package/dist/typechain-types/contracts/tests/mocks/ReentrancyGuardMock.sol/IReentrancyAttacker.js.map +1 -0
  46. package/dist/typechain-types/contracts/tests/mocks/ReentrancyGuardMock.sol/ReentrancyAttacker.d.ts +41 -0
  47. package/dist/typechain-types/contracts/tests/mocks/ReentrancyGuardMock.sol/ReentrancyAttacker.js +3 -0
  48. package/dist/typechain-types/contracts/tests/mocks/ReentrancyGuardMock.sol/ReentrancyAttacker.js.map +1 -0
  49. package/dist/typechain-types/contracts/tests/mocks/ReentrancyGuardMock.sol/ReentrancyGuardMock.d.ts +96 -0
  50. package/dist/typechain-types/contracts/tests/mocks/ReentrancyGuardMock.sol/ReentrancyGuardMock.js +3 -0
  51. package/dist/typechain-types/contracts/tests/mocks/ReentrancyGuardMock.sol/ReentrancyGuardMock.js.map +1 -0
  52. package/dist/typechain-types/contracts/tests/mocks/ReentrancyGuardMock.sol/index.d.ts +3 -0
  53. package/dist/typechain-types/contracts/tests/mocks/ReentrancyGuardMock.sol/index.js +3 -0
  54. package/dist/typechain-types/contracts/tests/mocks/ReentrancyGuardMock.sol/index.js.map +1 -0
  55. package/dist/typechain-types/contracts/tests/mocks/SimulatorMock.sol/SimulatorMock.d.ts +47 -0
  56. package/dist/typechain-types/contracts/tests/mocks/SimulatorMock.sol/SimulatorMock.js +3 -0
  57. package/dist/typechain-types/contracts/tests/mocks/SimulatorMock.sol/SimulatorMock.js.map +1 -0
  58. package/dist/typechain-types/contracts/tests/mocks/SimulatorMock.sol/SimulatorTarget.d.ts +41 -0
  59. package/dist/typechain-types/contracts/tests/mocks/SimulatorMock.sol/SimulatorTarget.js +3 -0
  60. package/dist/typechain-types/contracts/tests/mocks/SimulatorMock.sol/SimulatorTarget.js.map +1 -0
  61. package/dist/typechain-types/contracts/tests/mocks/SimulatorMock.sol/index.d.ts +2 -0
  62. package/dist/typechain-types/contracts/tests/mocks/SimulatorMock.sol/index.js +3 -0
  63. package/dist/typechain-types/contracts/tests/mocks/SimulatorMock.sol/index.js.map +1 -0
  64. package/dist/typechain-types/contracts/tests/mocks/TransientLockMock.d.ts +49 -0
  65. package/dist/typechain-types/contracts/tests/mocks/TransientLockMock.js +3 -0
  66. package/dist/typechain-types/contracts/tests/mocks/TransientLockMock.js.map +1 -0
  67. package/dist/typechain-types/contracts/tests/mocks/TransientMock.d.ts +107 -0
  68. package/dist/typechain-types/contracts/tests/mocks/TransientMock.js +3 -0
  69. package/dist/typechain-types/contracts/tests/mocks/TransientMock.js.map +1 -0
  70. package/dist/typechain-types/contracts/tests/mocks/index.d.ts +9 -0
  71. package/dist/typechain-types/factories/@0xsequence/create3/contracts/Create3__factory.d.ts +1 -1
  72. package/dist/typechain-types/factories/@0xsequence/create3/contracts/Create3__factory.js +1 -1
  73. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.d.ts +1 -1
  74. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.js +1 -1
  75. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/Errors__factory.d.ts +1 -1
  76. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/Errors__factory.js +1 -1
  77. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/ShortStrings__factory.d.ts +1 -1
  78. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/ShortStrings__factory.js +1 -1
  79. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/Strings__factory.d.ts +1 -1
  80. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/Strings__factory.js +1 -1
  81. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/ECDSA__factory.d.ts +1 -1
  82. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/ECDSA__factory.js +1 -1
  83. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/math/SafeCast__factory.d.ts +1 -1
  84. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/math/SafeCast__factory.js +1 -1
  85. package/dist/typechain-types/factories/contracts/libraries/AddressArray__factory.d.ts +1 -1
  86. package/dist/typechain-types/factories/contracts/libraries/AddressArray__factory.js +1 -1
  87. package/dist/typechain-types/factories/contracts/libraries/BySigTraits__factory.d.ts +1 -1
  88. package/dist/typechain-types/factories/contracts/libraries/BySigTraits__factory.js +1 -1
  89. package/dist/typechain-types/factories/contracts/libraries/BytesMemory__factory.d.ts +1 -1
  90. package/dist/typechain-types/factories/contracts/libraries/BytesMemory__factory.js +1 -1
  91. package/dist/typechain-types/factories/contracts/libraries/BytesStorage__factory.d.ts +1 -1
  92. package/dist/typechain-types/factories/contracts/libraries/BytesStorage__factory.js +1 -1
  93. package/dist/typechain-types/factories/contracts/libraries/RevertReasonParser__factory.d.ts +1 -1
  94. package/dist/typechain-types/factories/contracts/libraries/RevertReasonParser__factory.js +1 -1
  95. package/dist/typechain-types/factories/contracts/libraries/SafeERC20__factory.d.ts +1 -1
  96. package/dist/typechain-types/factories/contracts/libraries/SafeERC20__factory.js +1 -1
  97. package/dist/typechain-types/factories/contracts/libraries/Transient.sol/TransientLib__factory.d.ts +30 -0
  98. package/dist/typechain-types/factories/contracts/libraries/Transient.sol/TransientLib__factory.js +50 -0
  99. package/dist/typechain-types/factories/contracts/libraries/Transient.sol/TransientLib__factory.js.map +1 -0
  100. package/dist/typechain-types/factories/contracts/libraries/Transient.sol/index.d.ts +1 -0
  101. package/dist/typechain-types/factories/contracts/libraries/Transient.sol/index.js +9 -0
  102. package/dist/typechain-types/factories/contracts/libraries/Transient.sol/index.js.map +1 -0
  103. package/dist/typechain-types/factories/contracts/libraries/TransientLock.sol/TransientLockLib__factory.d.ts +30 -0
  104. package/dist/typechain-types/factories/contracts/libraries/TransientLock.sol/TransientLockLib__factory.js +50 -0
  105. package/dist/typechain-types/factories/contracts/libraries/TransientLock.sol/TransientLockLib__factory.js.map +1 -0
  106. package/dist/typechain-types/factories/contracts/libraries/TransientLock.sol/index.d.ts +1 -0
  107. package/dist/typechain-types/factories/contracts/libraries/TransientLock.sol/index.js +9 -0
  108. package/dist/typechain-types/factories/contracts/libraries/TransientLock.sol/index.js.map +1 -0
  109. package/dist/typechain-types/factories/contracts/libraries/UniERC20__factory.d.ts +1 -1
  110. package/dist/typechain-types/factories/contracts/libraries/UniERC20__factory.js +1 -1
  111. package/dist/typechain-types/factories/contracts/libraries/index.d.ts +2 -0
  112. package/dist/typechain-types/factories/contracts/libraries/index.js +4 -1
  113. package/dist/typechain-types/factories/contracts/libraries/index.js.map +1 -1
  114. package/dist/typechain-types/factories/contracts/mixins/Multicall__factory.d.ts +32 -0
  115. package/dist/typechain-types/factories/contracts/mixins/Multicall__factory.js +53 -0
  116. package/dist/typechain-types/factories/contracts/mixins/Multicall__factory.js.map +1 -0
  117. package/dist/typechain-types/factories/contracts/mixins/ReentrancyGuard__factory.d.ts +11 -0
  118. package/dist/typechain-types/factories/contracts/mixins/ReentrancyGuard__factory.js +25 -0
  119. package/dist/typechain-types/factories/contracts/mixins/ReentrancyGuard__factory.js.map +1 -0
  120. package/dist/typechain-types/factories/contracts/mixins/Simulator__factory.d.ts +56 -0
  121. package/dist/typechain-types/factories/contracts/mixins/Simulator__factory.js +84 -0
  122. package/dist/typechain-types/factories/contracts/mixins/Simulator__factory.js.map +1 -0
  123. package/dist/typechain-types/factories/contracts/mixins/index.d.ts +3 -0
  124. package/dist/typechain-types/factories/contracts/mixins/index.js +7 -1
  125. package/dist/typechain-types/factories/contracts/mixins/index.js.map +1 -1
  126. package/dist/typechain-types/factories/contracts/mocks/ERC20PermitMock__factory.d.ts +1 -1
  127. package/dist/typechain-types/factories/contracts/mocks/ERC20PermitMock__factory.js +1 -1
  128. package/dist/typechain-types/factories/contracts/mocks/ERC20PermitMock__factory.js.map +1 -1
  129. package/dist/typechain-types/factories/contracts/mocks/SelfdestructEthSenderMock__factory.d.ts +1 -1
  130. package/dist/typechain-types/factories/contracts/mocks/SelfdestructEthSenderMock__factory.js +1 -1
  131. package/dist/typechain-types/factories/contracts/mocks/SelfdestructEthSenderMock__factory.js.map +1 -1
  132. package/dist/typechain-types/factories/contracts/mocks/TokenCustomDecimalsMock__factory.d.ts +1 -1
  133. package/dist/typechain-types/factories/contracts/mocks/TokenCustomDecimalsMock__factory.js +1 -1
  134. package/dist/typechain-types/factories/contracts/mocks/TokenCustomDecimalsMock__factory.js.map +1 -1
  135. package/dist/typechain-types/factories/contracts/mocks/TokenMock__factory.d.ts +1 -1
  136. package/dist/typechain-types/factories/contracts/mocks/TokenMock__factory.js +1 -1
  137. package/dist/typechain-types/factories/contracts/mocks/TokenMock__factory.js.map +1 -1
  138. package/dist/typechain-types/factories/contracts/tests/ECDSATest__factory.d.ts +1 -1
  139. package/dist/typechain-types/factories/contracts/tests/ECDSATest__factory.js +1 -1
  140. package/dist/typechain-types/factories/contracts/tests/ECDSATest__factory.js.map +1 -1
  141. package/dist/typechain-types/factories/contracts/tests/RevertReasonParserTest__factory.d.ts +1 -1
  142. package/dist/typechain-types/factories/contracts/tests/RevertReasonParserTest__factory.js +1 -1
  143. package/dist/typechain-types/factories/contracts/tests/RevertReasonParserTest__factory.js.map +1 -1
  144. package/dist/typechain-types/factories/contracts/tests/StringUtilTest__factory.d.ts +1 -1
  145. package/dist/typechain-types/factories/contracts/tests/StringUtilTest__factory.js +1 -1
  146. package/dist/typechain-types/factories/contracts/tests/StringUtilTest__factory.js.map +1 -1
  147. package/dist/typechain-types/factories/contracts/tests/mocks/AddressArrayMock__factory.d.ts +1 -1
  148. package/dist/typechain-types/factories/contracts/tests/mocks/AddressArrayMock__factory.js +1 -1
  149. package/dist/typechain-types/factories/contracts/tests/mocks/AddressArrayMock__factory.js.map +1 -1
  150. package/dist/typechain-types/factories/contracts/tests/mocks/AddressLibMock__factory.d.ts +1 -1
  151. package/dist/typechain-types/factories/contracts/tests/mocks/AddressLibMock__factory.js +1 -1
  152. package/dist/typechain-types/factories/contracts/tests/mocks/AddressSetMock__factory.d.ts +1 -1
  153. package/dist/typechain-types/factories/contracts/tests/mocks/AddressSetMock__factory.js +1 -1
  154. package/dist/typechain-types/factories/contracts/tests/mocks/AddressSetMock__factory.js.map +1 -1
  155. package/dist/typechain-types/factories/contracts/tests/mocks/BySigTraitsMock__factory.d.ts +1 -1
  156. package/dist/typechain-types/factories/contracts/tests/mocks/BySigTraitsMock__factory.js +1 -1
  157. package/dist/typechain-types/factories/contracts/tests/mocks/BySigTraitsMock__factory.js.map +1 -1
  158. package/dist/typechain-types/factories/contracts/tests/mocks/BytesMemoryMock__factory.d.ts +1 -1
  159. package/dist/typechain-types/factories/contracts/tests/mocks/BytesMemoryMock__factory.js +1 -1
  160. package/dist/typechain-types/factories/contracts/tests/mocks/BytesMemoryMock__factory.js.map +1 -1
  161. package/dist/typechain-types/factories/contracts/tests/mocks/BytesStorageMock__factory.d.ts +1 -1
  162. package/dist/typechain-types/factories/contracts/tests/mocks/BytesStorageMock__factory.js +1 -1
  163. package/dist/typechain-types/factories/contracts/tests/mocks/BytesStorageMock__factory.js.map +1 -1
  164. package/dist/typechain-types/factories/contracts/tests/mocks/CalldataMock__factory.d.ts +106 -0
  165. package/dist/typechain-types/factories/contracts/tests/mocks/CalldataMock__factory.js +151 -0
  166. package/dist/typechain-types/factories/contracts/tests/mocks/CalldataMock__factory.js.map +1 -0
  167. package/dist/typechain-types/factories/contracts/tests/mocks/CalldataPtrMock__factory.d.ts +82 -0
  168. package/dist/typechain-types/factories/contracts/tests/mocks/CalldataPtrMock__factory.js +121 -0
  169. package/dist/typechain-types/factories/contracts/tests/mocks/CalldataPtrMock__factory.js.map +1 -0
  170. package/dist/typechain-types/factories/contracts/tests/mocks/Create3Mock__factory.d.ts +1 -1
  171. package/dist/typechain-types/factories/contracts/tests/mocks/Create3Mock__factory.js +1 -1
  172. package/dist/typechain-types/factories/contracts/tests/mocks/Create3Mock__factory.js.map +1 -1
  173. package/dist/typechain-types/factories/contracts/tests/mocks/DaiLikePermitMock__factory.d.ts +1 -1
  174. package/dist/typechain-types/factories/contracts/tests/mocks/DaiLikePermitMock__factory.js +1 -1
  175. package/dist/typechain-types/factories/contracts/tests/mocks/DaiLikePermitMock__factory.js.map +1 -1
  176. package/dist/typechain-types/factories/contracts/tests/mocks/ERC1271WalletMock__factory.d.ts +1 -1
  177. package/dist/typechain-types/factories/contracts/tests/mocks/ERC1271WalletMock__factory.js +1 -1
  178. package/dist/typechain-types/factories/contracts/tests/mocks/ERC1271WalletMock__factory.js.map +1 -1
  179. package/dist/typechain-types/factories/contracts/tests/mocks/EthReceiverMock__factory.d.ts +1 -1
  180. package/dist/typechain-types/factories/contracts/tests/mocks/EthReceiverMock__factory.js +1 -1
  181. package/dist/typechain-types/factories/contracts/tests/mocks/EthReceiverMock__factory.js.map +1 -1
  182. package/dist/typechain-types/factories/contracts/tests/mocks/EthSenderMock__factory.d.ts +1 -1
  183. package/dist/typechain-types/factories/contracts/tests/mocks/EthSenderMock__factory.js +1 -1
  184. package/dist/typechain-types/factories/contracts/tests/mocks/EthSenderMock__factory.js.map +1 -1
  185. package/dist/typechain-types/factories/contracts/tests/mocks/MulticallMock__factory.d.ts +102 -0
  186. package/dist/typechain-types/factories/contracts/tests/mocks/MulticallMock__factory.js +143 -0
  187. package/dist/typechain-types/factories/contracts/tests/mocks/MulticallMock__factory.js.map +1 -0
  188. package/dist/typechain-types/factories/contracts/tests/mocks/PermitAndCallMock__factory.d.ts +1 -1
  189. package/dist/typechain-types/factories/contracts/tests/mocks/PermitAndCallMock__factory.js +1 -1
  190. package/dist/typechain-types/factories/contracts/tests/mocks/PermitAndCallMock__factory.js.map +1 -1
  191. package/dist/typechain-types/factories/contracts/tests/mocks/PermitableMock__factory.d.ts +1 -1
  192. package/dist/typechain-types/factories/contracts/tests/mocks/PermitableMock__factory.js +1 -1
  193. package/dist/typechain-types/factories/contracts/tests/mocks/PermitableMock__factory.js.map +1 -1
  194. package/dist/typechain-types/factories/contracts/tests/mocks/ReentrancyGuardMock.sol/IReentrancyAttacker__factory.d.ts +19 -0
  195. package/dist/typechain-types/factories/contracts/tests/mocks/ReentrancyGuardMock.sol/IReentrancyAttacker__factory.js +34 -0
  196. package/dist/typechain-types/factories/contracts/tests/mocks/ReentrancyGuardMock.sol/IReentrancyAttacker__factory.js.map +1 -0
  197. package/dist/typechain-types/factories/contracts/tests/mocks/ReentrancyGuardMock.sol/ReentrancyAttacker__factory.d.ts +72 -0
  198. package/dist/typechain-types/factories/contracts/tests/mocks/ReentrancyGuardMock.sol/ReentrancyAttacker__factory.js +104 -0
  199. package/dist/typechain-types/factories/contracts/tests/mocks/ReentrancyGuardMock.sol/ReentrancyAttacker__factory.js.map +1 -0
  200. package/dist/typechain-types/factories/contracts/tests/mocks/ReentrancyGuardMock.sol/ReentrancyGuardMock__factory.d.ts +128 -0
  201. package/dist/typechain-types/factories/contracts/tests/mocks/ReentrancyGuardMock.sol/ReentrancyGuardMock__factory.js +171 -0
  202. package/dist/typechain-types/factories/contracts/tests/mocks/ReentrancyGuardMock.sol/ReentrancyGuardMock__factory.js.map +1 -0
  203. package/dist/typechain-types/factories/contracts/tests/mocks/ReentrancyGuardMock.sol/index.d.ts +3 -0
  204. package/dist/typechain-types/factories/contracts/tests/mocks/ReentrancyGuardMock.sol/index.js +13 -0
  205. package/dist/typechain-types/factories/contracts/tests/mocks/ReentrancyGuardMock.sol/index.js.map +1 -0
  206. package/dist/typechain-types/factories/contracts/tests/mocks/RevertReasonForwarderMock.sol/RevertReasonForwarderHelper__factory.d.ts +1 -1
  207. package/dist/typechain-types/factories/contracts/tests/mocks/RevertReasonForwarderMock.sol/RevertReasonForwarderHelper__factory.js +1 -1
  208. package/dist/typechain-types/factories/contracts/tests/mocks/RevertReasonForwarderMock.sol/RevertReasonForwarderHelper__factory.js.map +1 -1
  209. package/dist/typechain-types/factories/contracts/tests/mocks/RevertReasonForwarderMock.sol/RevertReasonForwarderMock__factory.d.ts +1 -1
  210. package/dist/typechain-types/factories/contracts/tests/mocks/RevertReasonForwarderMock.sol/RevertReasonForwarderMock__factory.js +1 -1
  211. package/dist/typechain-types/factories/contracts/tests/mocks/RevertReasonForwarderMock.sol/RevertReasonForwarderMock__factory.js.map +1 -1
  212. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20NoReturnMock__factory.d.ts +1 -1
  213. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20NoReturnMock__factory.js +1 -1
  214. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20PermitNoRevertMock__factory.d.ts +1 -1
  215. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20PermitNoRevertMock__factory.js +1 -1
  216. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20PermitNoRevertMock__factory.js.map +1 -1
  217. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ReturnFalseMock__factory.d.ts +1 -1
  218. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ReturnFalseMock__factory.js +1 -1
  219. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ReturnTrueMock__factory.d.ts +1 -1
  220. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ReturnTrueMock__factory.js +1 -1
  221. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ReturnTrueMock__factory.js.map +1 -1
  222. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ThroughZeroApprove__factory.d.ts +1 -1
  223. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ThroughZeroApprove__factory.js +1 -1
  224. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ThroughZeroApprove__factory.js.map +1 -1
  225. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20WithSafeBalance__factory.d.ts +1 -1
  226. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20WithSafeBalance__factory.js +1 -1
  227. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20WithSafeBalance__factory.js.map +1 -1
  228. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/Permit2ReturnTrueMock__factory.d.ts +1 -1
  229. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/Permit2ReturnTrueMock__factory.js +1 -1
  230. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/Permit2ReturnTrueMock__factory.js.map +1 -1
  231. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/SafeERC20Wrapper__factory.d.ts +1 -1
  232. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/SafeERC20Wrapper__factory.js +1 -1
  233. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/SafeERC20Wrapper__factory.js.map +1 -1
  234. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/SafeWETHWrapper__factory.d.ts +1 -1
  235. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/SafeWETHWrapper__factory.js +1 -1
  236. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/SafeWETHWrapper__factory.js.map +1 -1
  237. package/dist/typechain-types/factories/contracts/tests/mocks/SimulatorMock.sol/SimulatorMock__factory.d.ts +86 -0
  238. package/dist/typechain-types/factories/contracts/tests/mocks/SimulatorMock.sol/SimulatorMock__factory.js +123 -0
  239. package/dist/typechain-types/factories/contracts/tests/mocks/SimulatorMock.sol/SimulatorMock__factory.js.map +1 -0
  240. package/dist/typechain-types/factories/contracts/tests/mocks/SimulatorMock.sol/SimulatorTarget__factory.d.ts +76 -0
  241. package/dist/typechain-types/factories/contracts/tests/mocks/SimulatorMock.sol/SimulatorTarget__factory.js +111 -0
  242. package/dist/typechain-types/factories/contracts/tests/mocks/SimulatorMock.sol/SimulatorTarget__factory.js.map +1 -0
  243. package/dist/typechain-types/factories/contracts/tests/mocks/SimulatorMock.sol/index.d.ts +2 -0
  244. package/dist/typechain-types/factories/contracts/tests/mocks/SimulatorMock.sol/index.js +11 -0
  245. package/dist/typechain-types/factories/contracts/tests/mocks/SimulatorMock.sol/index.js.map +1 -0
  246. package/dist/typechain-types/factories/contracts/tests/mocks/TokenWithBySig__factory.d.ts +1 -1
  247. package/dist/typechain-types/factories/contracts/tests/mocks/TokenWithBySig__factory.js +1 -1
  248. package/dist/typechain-types/factories/contracts/tests/mocks/TokenWithBySig__factory.js.map +1 -1
  249. package/dist/typechain-types/factories/contracts/tests/mocks/TransientLockMock__factory.d.ts +80 -0
  250. package/dist/typechain-types/factories/contracts/tests/mocks/TransientLockMock__factory.js +112 -0
  251. package/dist/typechain-types/factories/contracts/tests/mocks/TransientLockMock__factory.js.map +1 -0
  252. package/dist/typechain-types/factories/contracts/tests/mocks/TransientMock__factory.d.ts +192 -0
  253. package/dist/typechain-types/factories/contracts/tests/mocks/TransientMock__factory.js +264 -0
  254. package/dist/typechain-types/factories/contracts/tests/mocks/TransientMock__factory.js.map +1 -0
  255. package/dist/typechain-types/factories/contracts/tests/mocks/USDCLikePermitMock__factory.d.ts +1 -1
  256. package/dist/typechain-types/factories/contracts/tests/mocks/USDCLikePermitMock__factory.js +1 -1
  257. package/dist/typechain-types/factories/contracts/tests/mocks/USDCLikePermitMock__factory.js.map +1 -1
  258. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20Capitals__factory.d.ts +1 -1
  259. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20Capitals__factory.js +1 -1
  260. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20Capitals__factory.js.map +1 -1
  261. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20bytes32Capitals__factory.d.ts +1 -1
  262. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20bytes32Capitals__factory.js +1 -1
  263. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20bytes32__factory.d.ts +1 -1
  264. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20bytes32__factory.js +1 -1
  265. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ETHBadReceiver__factory.d.ts +1 -1
  266. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ETHBadReceiver__factory.js +1 -1
  267. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ETHBadReceiver__factory.js.map +1 -1
  268. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/UniERC20Wrapper__factory.d.ts +1 -1
  269. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/UniERC20Wrapper__factory.js +1 -1
  270. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/UniERC20Wrapper__factory.js.map +1 -1
  271. package/dist/typechain-types/factories/contracts/tests/mocks/WETH__factory.d.ts +1 -1
  272. package/dist/typechain-types/factories/contracts/tests/mocks/WETH__factory.js +1 -1
  273. package/dist/typechain-types/factories/contracts/tests/mocks/WETH__factory.js.map +1 -1
  274. package/dist/typechain-types/factories/contracts/tests/mocks/WethReceiverMock__factory.d.ts +1 -1
  275. package/dist/typechain-types/factories/contracts/tests/mocks/WethReceiverMock__factory.js +1 -1
  276. package/dist/typechain-types/factories/contracts/tests/mocks/WethReceiverMock__factory.js.map +1 -1
  277. package/dist/typechain-types/factories/contracts/tests/mocks/index.d.ts +7 -0
  278. package/dist/typechain-types/factories/contracts/tests/mocks/index.js +13 -1
  279. package/dist/typechain-types/factories/contracts/tests/mocks/index.js.map +1 -1
  280. package/dist/typechain-types/index.d.ts +30 -0
  281. package/dist/typechain-types/index.js +32 -2
  282. package/dist/typechain-types/index.js.map +1 -1
  283. package/package.json +8 -6
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SimulatorMock__factory = void 0;
4
+ /* Autogenerated file. Do not edit manually. */
5
+ /* tslint:disable */
6
+ /* eslint-disable */
7
+ const ethers_1 = require("ethers");
8
+ const _abi = [
9
+ {
10
+ inputs: [
11
+ {
12
+ internalType: "address",
13
+ name: "delegatee",
14
+ type: "address",
15
+ },
16
+ {
17
+ internalType: "bytes",
18
+ name: "data",
19
+ type: "bytes",
20
+ },
21
+ {
22
+ internalType: "bool",
23
+ name: "success",
24
+ type: "bool",
25
+ },
26
+ {
27
+ internalType: "bytes",
28
+ name: "result",
29
+ type: "bytes",
30
+ },
31
+ ],
32
+ name: "Simulated",
33
+ type: "error",
34
+ },
35
+ {
36
+ inputs: [],
37
+ name: "getValue",
38
+ outputs: [
39
+ {
40
+ internalType: "uint256",
41
+ name: "",
42
+ type: "uint256",
43
+ },
44
+ ],
45
+ stateMutability: "view",
46
+ type: "function",
47
+ },
48
+ {
49
+ inputs: [
50
+ {
51
+ internalType: "uint256",
52
+ name: "_value",
53
+ type: "uint256",
54
+ },
55
+ ],
56
+ name: "setValue",
57
+ outputs: [],
58
+ stateMutability: "nonpayable",
59
+ type: "function",
60
+ },
61
+ {
62
+ inputs: [
63
+ {
64
+ internalType: "address",
65
+ name: "delegatee",
66
+ type: "address",
67
+ },
68
+ {
69
+ internalType: "bytes",
70
+ name: "data",
71
+ type: "bytes",
72
+ },
73
+ ],
74
+ name: "simulate",
75
+ outputs: [],
76
+ stateMutability: "payable",
77
+ type: "function",
78
+ },
79
+ {
80
+ inputs: [],
81
+ name: "value",
82
+ outputs: [
83
+ {
84
+ internalType: "uint256",
85
+ name: "",
86
+ type: "uint256",
87
+ },
88
+ ],
89
+ stateMutability: "view",
90
+ type: "function",
91
+ },
92
+ ];
93
+ const _bytecode = "0x60808060405234601557610366908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c90816320965255146102f9575080633fa4f245146102bf57806355241077146102895763bd61951d14610048575f80fd5b60407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102855760043573ffffffffffffffffffffffffffffffffffffffff811690818103610285576024359167ffffffffffffffff831161028557366023840112156102855782600401359167ffffffffffffffff83116102855760248401936024843692010111610285575f8091604051858782378086810184815203915af43d15610251573d9067ffffffffffffffff821161022457604051917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f81601f8401160116830183811067ffffffffffffffff82111761022457602060a4947fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8399829682966040528452835f863d92013e5b806040519c8d9b7fade19139000000000000000000000000000000000000000000000000000000008d5260048d0152608060248d01528160848d01528a8c01375f89828c0101520116870194151560448801527ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc8688870301016064880152805191829182888801520160c486015e5f878683870101015201160101030190fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b60a4907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080968383606092610183565b5f80fd5b346102855760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610285576004355f55005b34610285575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102855760205f54604051908152f35b34610285575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610285576020905f548152f3fea2646970667358221220717610126624b936b42d8852d7a474074567b9d8dbb6360a8c76eb0dd99dafa964736f6c634300081e0033";
94
+ const isSuperArgs = (xs) => xs.length > 1;
95
+ class SimulatorMock__factory extends ethers_1.ContractFactory {
96
+ constructor(...args) {
97
+ if (isSuperArgs(args)) {
98
+ super(...args);
99
+ }
100
+ else {
101
+ super(_abi, _bytecode, args[0]);
102
+ }
103
+ }
104
+ getDeployTransaction(overrides) {
105
+ return super.getDeployTransaction(overrides || {});
106
+ }
107
+ deploy(overrides) {
108
+ return super.deploy(overrides || {});
109
+ }
110
+ connect(runner) {
111
+ return super.connect(runner);
112
+ }
113
+ static createInterface() {
114
+ return new ethers_1.Interface(_abi);
115
+ }
116
+ static connect(address, runner) {
117
+ return new ethers_1.Contract(address, _abi, runner);
118
+ }
119
+ }
120
+ exports.SimulatorMock__factory = SimulatorMock__factory;
121
+ SimulatorMock__factory.bytecode = _bytecode;
122
+ SimulatorMock__factory.abi = _abi;
123
+ //# sourceMappingURL=SimulatorMock__factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SimulatorMock__factory.js","sourceRoot":"","sources":["../../../../../../../typechain-types/factories/contracts/tests/mocks/SimulatorMock.sol/SimulatorMock__factory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ import { ContractFactory, ContractTransactionResponse } from "ethers";
2
+ import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers";
3
+ import type { NonPayableOverrides } from "../../../../../common";
4
+ import type { SimulatorTarget, SimulatorTargetInterface } from "../../../../../contracts/tests/mocks/SimulatorMock.sol/SimulatorTarget";
5
+ type SimulatorTargetConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
6
+ export declare class SimulatorTarget__factory extends ContractFactory {
7
+ constructor(...args: SimulatorTargetConstructorParams);
8
+ getDeployTransaction(overrides?: NonPayableOverrides & {
9
+ from?: string;
10
+ }): Promise<ContractDeployTransaction>;
11
+ deploy(overrides?: NonPayableOverrides & {
12
+ from?: string;
13
+ }): Promise<SimulatorTarget & {
14
+ deploymentTransaction(): ContractTransactionResponse;
15
+ }>;
16
+ connect(runner: ContractRunner | null): SimulatorTarget__factory;
17
+ static readonly bytecode = "0x6080806040523460155761035d908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c90816320965255146102c2575080633fa4f24514610288578063473bed231461014e57806355241077146101185763ee781e4c14610053575f80fd5b346101145760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101145760043567ffffffffffffffff8111610114576100a460449136906004016102f9565b91907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f846040519586947f08c379a000000000000000000000000000000000000000000000000000000000865260206004870152816024870152868601375f85828601015201168101030190fd5b5f80fd5b346101145760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610114576004355f55005b346101145760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101145760043567ffffffffffffffff81116101145761019d9036906004016102f9565b9067ffffffffffffffff821161025b576040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f81601f8601160116810181811067ffffffffffffffff82111761025b5760405282815260208101923681840111610114576020815f926040958737830101527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8351948593602085525180918160208701528686015e5f85828601015201168101030190f35b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b34610114575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101145760205f54604051908152f35b34610114575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610114576020905f548152f35b9181601f840112156101145782359167ffffffffffffffff831161011457602083818601950101116101145756fea264697066735822122018053c97b16bf6dedec6015ee80f74beadf3b80fa60fae92b8b4cff3b12dbbfa64736f6c634300081e0033";
18
+ static readonly abi: readonly [{
19
+ readonly inputs: readonly [];
20
+ readonly name: "getValue";
21
+ readonly outputs: readonly [{
22
+ readonly internalType: "uint256";
23
+ readonly name: "";
24
+ readonly type: "uint256";
25
+ }];
26
+ readonly stateMutability: "view";
27
+ readonly type: "function";
28
+ }, {
29
+ readonly inputs: readonly [{
30
+ readonly internalType: "bytes";
31
+ readonly name: "data";
32
+ readonly type: "bytes";
33
+ }];
34
+ readonly name: "returnData";
35
+ readonly outputs: readonly [{
36
+ readonly internalType: "bytes";
37
+ readonly name: "";
38
+ readonly type: "bytes";
39
+ }];
40
+ readonly stateMutability: "pure";
41
+ readonly type: "function";
42
+ }, {
43
+ readonly inputs: readonly [{
44
+ readonly internalType: "string";
45
+ readonly name: "message";
46
+ readonly type: "string";
47
+ }];
48
+ readonly name: "revertWithMessage";
49
+ readonly outputs: readonly [];
50
+ readonly stateMutability: "pure";
51
+ readonly type: "function";
52
+ }, {
53
+ readonly inputs: readonly [{
54
+ readonly internalType: "uint256";
55
+ readonly name: "_value";
56
+ readonly type: "uint256";
57
+ }];
58
+ readonly name: "setValue";
59
+ readonly outputs: readonly [];
60
+ readonly stateMutability: "nonpayable";
61
+ readonly type: "function";
62
+ }, {
63
+ readonly inputs: readonly [];
64
+ readonly name: "value";
65
+ readonly outputs: readonly [{
66
+ readonly internalType: "uint256";
67
+ readonly name: "";
68
+ readonly type: "uint256";
69
+ }];
70
+ readonly stateMutability: "view";
71
+ readonly type: "function";
72
+ }];
73
+ static createInterface(): SimulatorTargetInterface;
74
+ static connect(address: string, runner?: ContractRunner | null): SimulatorTarget;
75
+ }
76
+ export {};
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SimulatorTarget__factory = void 0;
4
+ /* Autogenerated file. Do not edit manually. */
5
+ /* tslint:disable */
6
+ /* eslint-disable */
7
+ const ethers_1 = require("ethers");
8
+ const _abi = [
9
+ {
10
+ inputs: [],
11
+ name: "getValue",
12
+ outputs: [
13
+ {
14
+ internalType: "uint256",
15
+ name: "",
16
+ type: "uint256",
17
+ },
18
+ ],
19
+ stateMutability: "view",
20
+ type: "function",
21
+ },
22
+ {
23
+ inputs: [
24
+ {
25
+ internalType: "bytes",
26
+ name: "data",
27
+ type: "bytes",
28
+ },
29
+ ],
30
+ name: "returnData",
31
+ outputs: [
32
+ {
33
+ internalType: "bytes",
34
+ name: "",
35
+ type: "bytes",
36
+ },
37
+ ],
38
+ stateMutability: "pure",
39
+ type: "function",
40
+ },
41
+ {
42
+ inputs: [
43
+ {
44
+ internalType: "string",
45
+ name: "message",
46
+ type: "string",
47
+ },
48
+ ],
49
+ name: "revertWithMessage",
50
+ outputs: [],
51
+ stateMutability: "pure",
52
+ type: "function",
53
+ },
54
+ {
55
+ inputs: [
56
+ {
57
+ internalType: "uint256",
58
+ name: "_value",
59
+ type: "uint256",
60
+ },
61
+ ],
62
+ name: "setValue",
63
+ outputs: [],
64
+ stateMutability: "nonpayable",
65
+ type: "function",
66
+ },
67
+ {
68
+ inputs: [],
69
+ name: "value",
70
+ outputs: [
71
+ {
72
+ internalType: "uint256",
73
+ name: "",
74
+ type: "uint256",
75
+ },
76
+ ],
77
+ stateMutability: "view",
78
+ type: "function",
79
+ },
80
+ ];
81
+ const _bytecode = "0x6080806040523460155761035d908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c90816320965255146102c2575080633fa4f24514610288578063473bed231461014e57806355241077146101185763ee781e4c14610053575f80fd5b346101145760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101145760043567ffffffffffffffff8111610114576100a460449136906004016102f9565b91907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f846040519586947f08c379a000000000000000000000000000000000000000000000000000000000865260206004870152816024870152868601375f85828601015201168101030190fd5b5f80fd5b346101145760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610114576004355f55005b346101145760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101145760043567ffffffffffffffff81116101145761019d9036906004016102f9565b9067ffffffffffffffff821161025b576040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f81601f8601160116810181811067ffffffffffffffff82111761025b5760405282815260208101923681840111610114576020815f926040958737830101527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8351948593602085525180918160208701528686015e5f85828601015201168101030190f35b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b34610114575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101145760205f54604051908152f35b34610114575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610114576020905f548152f35b9181601f840112156101145782359167ffffffffffffffff831161011457602083818601950101116101145756fea264697066735822122018053c97b16bf6dedec6015ee80f74beadf3b80fa60fae92b8b4cff3b12dbbfa64736f6c634300081e0033";
82
+ const isSuperArgs = (xs) => xs.length > 1;
83
+ class SimulatorTarget__factory extends ethers_1.ContractFactory {
84
+ constructor(...args) {
85
+ if (isSuperArgs(args)) {
86
+ super(...args);
87
+ }
88
+ else {
89
+ super(_abi, _bytecode, args[0]);
90
+ }
91
+ }
92
+ getDeployTransaction(overrides) {
93
+ return super.getDeployTransaction(overrides || {});
94
+ }
95
+ deploy(overrides) {
96
+ return super.deploy(overrides || {});
97
+ }
98
+ connect(runner) {
99
+ return super.connect(runner);
100
+ }
101
+ static createInterface() {
102
+ return new ethers_1.Interface(_abi);
103
+ }
104
+ static connect(address, runner) {
105
+ return new ethers_1.Contract(address, _abi, runner);
106
+ }
107
+ }
108
+ exports.SimulatorTarget__factory = SimulatorTarget__factory;
109
+ SimulatorTarget__factory.bytecode = _bytecode;
110
+ SimulatorTarget__factory.abi = _abi;
111
+ //# sourceMappingURL=SimulatorTarget__factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SimulatorTarget__factory.js","sourceRoot":"","sources":["../../../../../../../typechain-types/factories/contracts/tests/mocks/SimulatorMock.sol/SimulatorTarget__factory.ts"],"names":[],"mappings":";;;AAAA,+CAA+C;AAC/C,oBAAoB;AACpB,oBAAoB;AACpB,mCAKgB;AAQhB,MAAM,IAAI,GAAG;IACX;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO;aACd;SACF;QACD,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,OAAO;aACd;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,QAAQ;gBACtB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,QAAQ;aACf;SACF;QACD,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,OAAO;QACb,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;CACO,CAAC;AAEX,MAAM,SAAS,GACb,kvDAAkvD,CAAC;AAMrvD,MAAM,WAAW,GAAG,CAClB,EAAoC,EACiB,EAAE,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAExE,MAAa,wBAAyB,SAAQ,wBAAe;IAC3D,YAAY,GAAG,IAAsC;QACnD,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;QACjB,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAEQ,oBAAoB,CAC3B,SAAmD;QAEnD,OAAO,KAAK,CAAC,oBAAoB,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC;IACQ,MAAM,CAAC,SAAmD;QACjE,OAAO,KAAK,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAIlC,CAAC;IACJ,CAAC;IACQ,OAAO,CAAC,MAA6B;QAC5C,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAA6B,CAAC;IAC3D,CAAC;IAID,MAAM,CAAC,eAAe;QACpB,OAAO,IAAI,kBAAS,CAAC,IAAI,CAA6B,CAAC;IACzD,CAAC;IACD,MAAM,CAAC,OAAO,CACZ,OAAe,EACf,MAA8B;QAE9B,OAAO,IAAI,iBAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAA+B,CAAC;IAC3E,CAAC;;AAnCH,4DAoCC;AAXiB,iCAAQ,GAAG,SAAS,CAAC;AACrB,4BAAG,GAAG,IAAI,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { SimulatorMock__factory } from "./SimulatorMock__factory";
2
+ export { SimulatorTarget__factory } from "./SimulatorTarget__factory";
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SimulatorTarget__factory = exports.SimulatorMock__factory = void 0;
4
+ /* Autogenerated file. Do not edit manually. */
5
+ /* tslint:disable */
6
+ /* eslint-disable */
7
+ var SimulatorMock__factory_1 = require("./SimulatorMock__factory");
8
+ Object.defineProperty(exports, "SimulatorMock__factory", { enumerable: true, get: function () { return SimulatorMock__factory_1.SimulatorMock__factory; } });
9
+ var SimulatorTarget__factory_1 = require("./SimulatorTarget__factory");
10
+ Object.defineProperty(exports, "SimulatorTarget__factory", { enumerable: true, get: function () { return SimulatorTarget__factory_1.SimulatorTarget__factory; } });
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../typechain-types/factories/contracts/tests/mocks/SimulatorMock.sol/index.ts"],"names":[],"mappings":";;;AAAA,+CAA+C;AAC/C,oBAAoB;AACpB,oBAAoB;AACpB,mEAAkE;AAAzD,gIAAA,sBAAsB,OAAA;AAC/B,uEAAsE;AAA7D,oIAAA,wBAAwB,OAAA"}
@@ -14,7 +14,7 @@ export declare class TokenWithBySig__factory extends ContractFactory {
14
14
  deploymentTransaction(): ContractTransactionResponse;
15
15
  }>;
16
16
  connect(runner: ContractRunner | null): TokenWithBySig__factory;
17
- static readonly bytecode = "0x61016060408181523461042457612a50803803809161001e8286610428565b84398201916060818403126104245780516001600160401b039290838111610424578461004c91840161044b565b9160209081810151858111610424578661006791830161044b565b95838201518681116104245761007d920161044b565b9083518581116103475760038054906001928383811c9316801561041a575b8584101461040657601f928381116103c3575b508085848211600114610366575f9161035b575b505f1982841b1c191690841b1781555b885191888311610347576004998a548581811c9116801561033d575b8782101461032a578281116102e7575b5085918411600114610285579383949184925f9561027a575b50501b925f19911b1c19161786555b33156102645760058054336001600160a01b0319821681179092556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3610178846104a0565b9261012093845261018883610628565b94610140958652828151910120928360e05282815191012096610100978089524660a0528251938401947f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f86528385015260608401524660808401523060a084015260a0835260c08301968388109088111761025157508590525190206080523060c0526122eb93846107658539608051846121c3015260a0518461228f015260c05184612194015260e051846122120152518361223801525182610867015251816108910152f35b604190634e487b7160e01b5f525260245ffd5b8251631e4fbdf760e01b81525f81880152602490fd5b015193505f80610118565b9190601f198416928b5f5284875f20945f5b89898383106102d057505050106102b7575b50505050811b018655610127565b01519060f8845f19921b161c191690555f8080806102a9565b868601518955909701969485019488935001610297565b8b5f52865f208380870160051c820192898810610321575b0160051c019086905b8281106103165750506100ff565b5f8155018690610308565b925081926102ff565b60228c634e487b7160e01b5f525260245ffd5b90607f16906100ef565b634e487b7160e01b5f52604160045260245ffd5b90508801515f6100c3565b859250601f19821690845f52875f20915f5b898d8383106103ae575050508311610397575b5050811b0181556100d3565b8a01515f1983861b60f8161c191690555f8061038b565b84015185558996909401939283019201610378565b825f52855f208480840160051c8201928885106103fd575b0160051c019085905b8281106103f25750506100af565b5f81550185906103e4565b925081926103db565b634e487b7160e01b5f52602260045260245ffd5b92607f169261009c565b5f80fd5b601f909101601f19168101906001600160401b0382119082101761034757604052565b81601f82011215610424578051906001600160401b038211610347576040519261047f601f8401601f191660200185610428565b8284526020838301011161042457815f9260208093018386015e8301015290565b8051602090818110156105165750601f8251116104d857808251920151908083106104ca57501790565b825f19910360031b1b161790565b60448260405192839163305a27a960e01b83528160048401528051918291826024860152018484015e5f828201840152601f01601f19168101030190fd5b906001600160401b03821161034757600654926001938481811c9116801561061e575b8382101461040657601f81116105ea575b5081601f841160011461058657509282939183925f9461057b575b50501b915f199060031b1c19161760065560ff90565b015192505f80610565565b919083601f19811660065f52845f20945f905b888383106105d057505050106105b8575b505050811b0160065560ff90565b01515f1960f88460031b161c191690555f80806105aa565b858701518855909601959485019487935090810190610599565b60065f5284601f845f20920160051c820191601f860160051c015b82811061061357505061054a565b5f8155018590610605565b90607f1690610539565b8051602090818110156106525750601f8251116104d857808251920151908083106104ca57501790565b906001600160401b03821161034757600754926001938481811c9116801561075a575b8382101461040657601f8111610726575b5081601f84116001146106c257509282939183925f946106b7575b50501b915f199060031b1c19161760075560ff90565b015192505f806106a1565b919083601f19811660075f52845f20945f905b8883831061070c57505050106106f4575b505050811b0160075560ff90565b01515f1960f88460031b161c191690555f80806106e6565b8587015188559096019594850194879350908101906106d5565b60075f5284601f845f20920160051c820191601f860160051c015b82811061074f575050610686565b5f8155018590610741565b90607f169061067556fe608060409080825260049081361015610016575f80fd5b5f3560e01c90816306fdde03146114b75750806308b8ae3e14611439578063095ea7b3146113295780630acebbb3146112b757806318160ddd1461127b57806323b872dd146110ca5780632ca6f77114610e065780632dffc93814610dae578063313ce56714610d755780633408e47014610d3d57806334dd202614610ca25780633cc67ac714610c28578063404f551d14610b7c57806340c10f1914610aa057806370a0823114610a3f578063715018a6146109a357806384b0196e146108335780638c3adb0a146107b85780638d7e4ea0146107545780638da5cb5b1461070257806395d89b41146105df5780639dc29fac14610498578063a9059cbb14610443578063dd62ed3e146103ce578063e032e04f14610368578063eb24bae41461022f5763f2fde38b14610149575f80fd5b3461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610180611605565b90610189611df1565b73ffffffffffffffffffffffffffffffffffffffff8092169283156101fc575050600554827fffffffffffffffffffffffff0000000000000000000000000000000000000000821617600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3005b905f60249251917f1e4fbdf7000000000000000000000000000000000000000000000000000000008352820152fd5b5f80fd5b5060807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610262611605565b9160243567ffffffffffffffff60443581811161022b57610286903690860161164b565b919060643591821161022b576102b5926102a66102af933690890161164b565b505036916117df565b30611daa565b926102be611e57565b9473ffffffffffffffffffffffffffffffffffffffff809116913083036103415750948260809261033d976103157f91d424c26d66241302801829dc5d75ac3b3036414855f2088205e8f2705c051b963386611901565b865193168352336020840152858301526060820152a1519182916020835260208301906115c2565b0390f35b84517fa0f3feea000000000000000000000000000000000000000000000000000000008152fd5b823461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff6103b8611605565b165f526401000000088252805f20549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090610408611605565b610410611628565b9073ffffffffffffffffffffffffffffffffffffffff8091165f5260018452825f2091165f528252805f20549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090610491610480611605565b6024359061048c611e57565b611901565b5160018152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576104d0611605565b90602435926104dd611df1565b73ffffffffffffffffffffffffffffffffffffffff83169283156105b057835f525f602052825f205491858310610551575f857fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020898881898688528785520381872055816002540360025551908152a3005b6105ac868486519485947fe450d38c000000000000000000000000000000000000000000000000000000008652850160409194939273ffffffffffffffffffffffffffffffffffffffff606083019616825260208201520152565b0390fd5b505f60249251917f96c6fd1e000000000000000000000000000000000000000000000000000000008352820152fd5b503461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57815191825f835461061e81611679565b90818452602095600191876001821691825f146106bd575050600114610661575b50505061033d9291610652910385611713565b519282849384528301906115c2565b5f90815286935091907f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8284106106a5575050508201018161065261033d61063f565b8054848a01860152889550879490930192810161068c565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168782015293151560051b86019093019350849250610652915061033d905061063f565b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff600554169051908152f35b50903461022b577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc9160208336011261022b5780359267ffffffffffffffff841161022b578290843603011261022b576020926107b1910161184f565b9051908152f35b503461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57359063ffffffff821680920361022b5761082f9073ffffffffffffffffffffffffffffffffffffffff610819611e57565b165f526401000000086020525f20918254611815565b9055005b503461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5761088b7f0000000000000000000000000000000000000000000000000000000000000000611f8b565b916108b57f00000000000000000000000000000000000000000000000000000000000000006120c0565b815191602091602084019484861067ffffffffffffffff871117610977575061092c826020928761091f99989795525f855281519889987f0f000000000000000000000000000000000000000000000000000000000000008a5260e0868b015260e08a01906115c2565b91888303908901526115c2565b914660608701523060808701525f60a087015285830360c087015251918281520192915f5b82811061096057505050500390f35b835185528695509381019392810192600101610951565b6041907f4e487b71000000000000000000000000000000000000000000000000000000005f525260245ffd5b3461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576109d9611df1565b5f73ffffffffffffffffffffffffffffffffffffffff6005547fffffffffffffffffffffffff00000000000000000000000000000000000000008116600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b823461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff610a8f611605565b165f525f8252805f20549051908152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610ad8611605565b9073ffffffffffffffffffffffffffffffffffffffff60243592610afa611df1565b16928315610b4e57506020827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92610b355f95600254611815565b60025585855284835280852082815401905551908152a3005b5f60249251917fec442f05000000000000000000000000000000000000000000000000000000008352820152fd5b503461022b57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57357fffffffff00000000000000000000000000000000000000000000000000000000811680910361022b576024359163ffffffff831680930361022b5761082f9173ffffffffffffffffffffffffffffffffffffffff610c09611e57565b165f52640100000009602052815f20905f526020525f20918254611815565b503461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760ff600191359273ffffffffffffffffffffffffffffffffffffffff610c7c611e57565b165f5264010000000a602052805f208460081c5f526020525f2092161b81541790555f80f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610cd9611605565b906024357fffffffff00000000000000000000000000000000000000000000000000000000811680910361022b5773ffffffffffffffffffffffffffffffffffffffff602093165f526401000000098352815f20905f528252805f20549051908152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209051468152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576020905160128152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090517f9ed1889e2180e1ec4f2d7816d43eb41f27d0bbbce4557680ecf32626c070c8648152f35b50907ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc9060608236011261022b57610e3c611605565b9160243567ffffffffffffffff80821161022b578382870193833603011261022b5760443590811161022b57610e75903690870161164b565b9083359264ffffffffff8460d01c1642116110a257610e92611e57565b69ffffffffffffffffffff808660801c16908115928315611096575b5050501561106e576024610ecf910193610ec88587611754565b9189611a6b565b156110465790610ee891610ee28561184f565b87611c21565b1561101e576102af610f54610f5b92600894855463ffffffff98898260a01c1691825f14610ffe57740100000000000000000000000000000000000000000188557f80000000000000000000000000000000000000000000000000000000000000001790870155611754565b36916117df565b928154908160a01c16805f14610fd75761033d9550600114610fae577fffffffffffffffffffffffff00000000000000000000000000000000000000000190555b519182916020835260208301906115c2565b507f80000000000000000000000000000000000000000000000000000000000000009055610f9c565b857f06a2af9e000000000000000000000000000000000000000000000000000000005f525ffd5b507401000000000000000000000000000000000000000017875550611754565b8483517f356a4418000000000000000000000000000000000000000000000000000000008152fd5b8685517fd9c6386f000000000000000000000000000000000000000000000000000000008152fd5b8786517f3b06dcfb000000000000000000000000000000000000000000000000000000008152fd5b161490505f8080610eae565b8786517f559895a3000000000000000000000000000000000000000000000000000000008152fd5b503461022b5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57611102611605565b61110a611628565b9060443592611117611e57565b9073ffffffffffffffffffffffffffffffffffffffff9081841690815f526001602052875f2092841692835f52602052875f2054937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8503611182575b6020896104918a8a8a611901565b87851061121f575081156111f05782156111c157505f908152600160209081528782209282529182528681209286900390925583916104919080611174565b6024905f8951917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b6024905f8951917fe602df05000000000000000000000000000000000000000000000000000000008352820152fd5b906105ac88868b519485947ffb8f41b2000000000000000000000000000000000000000000000000000000008652850160409194939273ffffffffffffffffffffffffffffffffffffffff606083019616825260208201520152565b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576020906002549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff611306611605565b165f5264010000000a8252805f2060243560081c5f528252805f20549051908152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57611361611605565b6024359073ffffffffffffffffffffffffffffffffffffffff80611383611e57565b1691821561140a57169182156113db5760208095507f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f5260018252855f20855f52825280865f20558551908152a35160018152f35b6024855f8651917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b6024865f8751917fe602df05000000000000000000000000000000000000000000000000000000008352820152fd5b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090611473611605565b9073ffffffffffffffffffffffffffffffffffffffff60243592165f5264010000000a8352805f208260081c5f528352600160ff825f2054925193161b1615158152f35b833461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760035490825f6114f584611679565b808352602094600190866001821691825f14611582575050600114611527575b505061033d9291610652910385611713565b9085925060035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b915f925b82841061156a5750505082010181610652611515565b8054848a018601528895508794909301928101611554565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168682015292151560051b850190920192508391506106529050611515565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080948051918291828752018686015e5f8582860101520116010190565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361022b57565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361022b57565b9181601f8401121561022b5782359167ffffffffffffffff831161022b576020838186019501011161022b57565b90600182811c921680156116c0575b602083101461169357565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f1691611688565b6040810190811067ffffffffffffffff8211176116e657604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176116e657604052565b9035907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18136030182121561022b570180359067ffffffffffffffff821161022b5760200191813603831361022b57565b67ffffffffffffffff81116116e657601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b9291926117eb826117a5565b916117f96040519384611713565b82948184528183011161022b578281602093845f960137010152565b9190820180921161182257565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b61185f610f546020830183611754565b60208151910120906040519160208301917f9ed1889e2180e1ec4f2d7816d43eb41f27d0bbbce4557680ecf32626c070c8648352356040840152606083015260608252608082019180831067ffffffffffffffff8411176116e6576042926040525190206118cb61217d565b90604051917f19010000000000000000000000000000000000000000000000000000000000008352600283015260228201522090565b9173ffffffffffffffffffffffffffffffffffffffff808416928315611a0e57169283156119de57825f525f60205260405f2054908282106119865750817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f5260405f20818154019055604051908152a3565b6040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff919091166004820152602481019190915260448101829052606490fd5b60246040517fec442f050000000000000000000000000000000000000000000000000000000081525f6004820152fd5b60246040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f6004820152fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146118225760010190565b90928360fe1c9360028511611bf7576003851015611bca576fffffffffffffffffffffffffffffffff81169480611ad95750505073ffffffffffffffffffffffffffffffffffffffff9150165f5264010000000860205260405f2090815491611ad383611a3e565b90551490565b919291600103611b6d575073ffffffffffffffffffffffffffffffffffffffff165f5264010000000960205260405f2091357fffffffff000000000000000000000000000000000000000000000000000000009181838093169160048110611b57575b50509050165f5260205260405f2090815491611ad383611a3e565b8391925060040360031b1b161681905f80611b3c565b9350905073ffffffffffffffffffffffffffffffffffffffff9150165f5264010000000a60205260405f206effffffffffffffffffffffffffffff8260081c165f5260205260405f2090600160ff835492161b8117809255141590565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b60046040517f5f640821000000000000000000000000000000000000000000000000000000008152fd5b90919273ffffffffffffffffffffffffffffffffffffffff91828116928315611da057604093848414918215611d95575b82611cc8575b5050611cbe57602092825f9384978351937f1626ba7e0000000000000000000000000000000000000000000000000000000098898652600486015260248501528160448501526064840137606401915afa611cb1575090565b5f51143d60201416919050565b5050505050600190565b9091505f85518580604114611d7d57604014611d3857505f805b611cf1575b5016145f80611c58565b7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a160608201511015611ce75760209150608081895f935282805260015afa505f515f611ce7565b807f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208b01358060ff1c601b01602084015260208c8b850137166060820152611ce2565b50868901355f1a602082015280878a81830137611ce2565b604185149250611c52565b5050505050505f90565b5f80611de693602081519101845af43d15611de9573d91611dca836117a5565b92611dd86040519485611713565b83523d5f602085013e611eeb565b90565b606091611eeb565b73ffffffffffffffffffffffffffffffffffffffff806005541681611e14611e57565b1603611e1d5750565b602490611e28611e57565b6040517f118cdaa700000000000000000000000000000000000000000000000000000000815291166004820152fd5b63ffffffff60085460a01c168015611ee6577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8101818111611822576401000000001115611ebc576007015473ffffffffffffffffffffffffffffffffffffffff1690565b60046040517f4e23d035000000000000000000000000000000000000000000000000000000008152fd5b503390565b90611f2a5750805115611f0057805190602001fd5b60046040517fd6bda275000000000000000000000000000000000000000000000000000000008152fd5b81511580611f82575b611f3b575090565b60249073ffffffffffffffffffffffffffffffffffffffff604051917f9996b315000000000000000000000000000000000000000000000000000000008352166004820152fd5b50803b15611f33565b60ff8114611fe15760ff811690601f8211611fb75760405191611fad836116ca565b8252602082015290565b60046040517fb3512b0c000000000000000000000000000000000000000000000000000000008152fd5b50604051600654815f611ff383611679565b8083529260209060019081811690811561207d575060011461201e575b5050611de692500382611713565b91509260065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f935f925b8284106120655750611de69450505081016020015f80612010565b8554878501830152948501948694509281019261204a565b905060209350611de69592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b8201015f80612010565b60ff81146120e25760ff811690601f8211611fb75760405191611fad836116ca565b50604051600754815f6120f483611679565b8083529260209060019081811690811561207d575060011461211e575050611de692500382611713565b91509260075f527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688935f925b8284106121655750611de69450505081016020015f80612010565b8554878501830152948501948694509281019261214a565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001630148061228c575b156121e5577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a0815260c0810181811067ffffffffffffffff8211176116e65760405251902090565b507f000000000000000000000000000000000000000000000000000000000000000046146121bc56fea2646970667358221220a30e8de38a667241fcb06e9fe17a338cc76e17fdce73eae91807f9d63615896e64736f6c63430008190033";
17
+ static readonly bytecode = "0x61016080604052346104675761294e803803809161001d828561046b565b83398101906060818303126104675780516001600160401b038111610467578261004891830161048e565b60208201519091906001600160401b038111610467578361006a91830161048e565b60408201519093906001600160401b0381116104675761008a920161048e565b81519091906001600160401b03811161037757600354600181811c9116801561045d575b602082101461035957601f81116103fa575b50806020601f8211600114610396575f9161038b575b508160011b915f199060031b1c1916176003555b82516001600160401b03811161037757600454600181811c9116801561036d575b602082101461035957601f81116102f6575b506020601f821160011461029357819293945f92610288575b50508160011b915f199060031b1c1916176004555b33156102755760058054336001600160a01b0319821681179092556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a361019c816104e3565b610120526101a98261066a565b6101405260208151910120908160e0526020815191012080610100524660a0526040519060208201927f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8452604083015260608201524660808201523060a082015260a0815261021a60c08261046b565b5190206080523060c0526040516121ab90816107a3823960805181612092015260a0518161214f015260c05181612063015260e051816120e10152610100518161210701526101205181610889015261014051816108b20152f35b631e4fbdf760e01b5f525f60045260245ffd5b015190505f80610136565b601f1982169060045f52805f20915f5b8181106102de575095836001959697106102c6575b505050811b0160045561014b565b01515f1960f88460031b161c191690555f80806102b8565b9192602060018192868b0151815501940192016102a3565b60045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f830160051c8101916020841061034f575b601f0160051c01905b818110610344575061011d565b5f8155600101610337565b909150819061032e565b634e487b7160e01b5f52602260045260245ffd5b90607f169061010b565b634e487b7160e01b5f52604160045260245ffd5b90508201515f6100d6565b60035f9081528181209250601f198416905b8181106103e2575090836001949392106103ca575b5050811b016003556100ea565b8401515f1960f88460031b161c191690555f806103bd565b919260206001819286890151815501940192016103a8565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c81019160208410610453575b601f0160051c01905b81811061044857506100c0565b5f815560010161043b565b9091508190610432565b90607f16906100ae565b5f80fd5b601f909101601f19168101906001600160401b0382119082101761037757604052565b81601f82011215610467578051906001600160401b03821161037757604051926104c2601f8401601f19166020018561046b565b8284526020838301011161046757815f9260208093018386015e8301015290565b908151602081105f1461055d575090601f81511161051d57602081519101516020821061050e571790565b5f198260200360031b1b161790565b604460209160405192839163305a27a960e01b83528160048401528051918291826024860152018484015e5f828201840152601f01601f19168101030190fd5b6001600160401b03811161037757600654600181811c91168015610660575b602082101461035957601f811161062d575b50602092601f82116001146105cc57928192935f926105c1575b50508160011b915f199060031b1c19161760065560ff90565b015190505f806105a8565b601f1982169360065f52805f20915f5b86811061061557508360019596106105fd575b505050811b0160065560ff90565b01515f1960f88460031b161c191690555f80806105ef565b919260206001819286850151815501940192016105dc565b60065f52601f60205f20910160051c810190601f830160051c015b818110610655575061058e565b5f8155600101610648565b90607f169061057c565b908151602081105f14610695575090601f81511161051d57602081519101516020821061050e571790565b6001600160401b03811161037757600754600181811c91168015610798575b602082101461035957601f8111610765575b50602092601f821160011461070457928192935f926106f9575b50508160011b915f199060031b1c19161760075560ff90565b015190505f806106e0565b601f1982169360075f52805f20915f5b86811061074d5750836001959610610735575b505050811b0160075560ff90565b01515f1960f88460031b161c191690555f8080610727565b91926020600181928685015181550194019201610714565b60075f52601f60205f20910160051c810190601f830160051c015b81811061078d57506106c6565b5f8155600101610780565b90607f16906106b456fe6080806040526004361015610012575f80fd5b5f3560e01c90816306fdde03146114b25750806308b8ae3e14611433578063095ea7b31461136a5780630acebbb3146112f457806318160ddd146112b957806323b872dd146110ed5780632ca6f77114610df05780632dffc93814610d98578063313ce56714610d5f5780633408e47014610d2757806334dd202614610c885780633cc67ac714610c0c578063404f551d14610b5c57806340c10f1914610a8357806370a0823114610a21578063715018a61461098557806384b0196e146108535780638c3adb0a146107d75780638d7e4ea0146107545780638da5cb5b1461070357806395d89b41146105e95780639dc29fac146104d5578063a9059cbb1461047f578063dd62ed3e146103f3578063e032e04f1461038c578063eb24bae4146102375763f2fde38b14610145575f80fd5b346102335760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335773ffffffffffffffffffffffffffffffffffffffff6101916115b5565b610199611dea565b1680156102075773ffffffffffffffffffffffffffffffffffffffff600554827fffffffffffffffffffffffff0000000000000000000000000000000000000000821617600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3005b7f1e4fbdf7000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b5f80fd5b60807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576102696115b5565b60243560443567ffffffffffffffff81116102335761028c9036906004016115fb565b906064359067ffffffffffffffff8211610233576102c4926102b56102be9336906004016115fb565b50503691611813565b30611da3565b9073ffffffffffffffffffffffffffffffffffffffff6102e2611e71565b931630810361036457610360938260809261031f7f91d424c26d66241302801829dc5d75ac3b3036414855f2088205e8f2705c051b953385611924565b73ffffffffffffffffffffffffffffffffffffffff6040519316835233602084015260408301526060820152a1604051918291602083526020830190611572565b0390f35b7fa0f3feea000000000000000000000000000000000000000000000000000000005f5260045ffd5b346102335760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335773ffffffffffffffffffffffffffffffffffffffff6103d86115b5565b165f52640100000008602052602060405f2054604051908152f35b346102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335761042a6115b5565b73ffffffffffffffffffffffffffffffffffffffff6104476115d8565b91165f52600160205273ffffffffffffffffffffffffffffffffffffffff60405f2091165f52602052602060405f2054604051908152f35b346102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576104ca6104b96115b5565b602435906104c5611e71565b611924565b602060405160018152f35b346102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335761050c6115b5565b73ffffffffffffffffffffffffffffffffffffffff6024359161052d611dea565b1680156105bd57805f525f60205260405f205482811061058b576020835f947fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef938587528684520360408620558060025403600255604051908152a3005b907fe450d38c000000000000000000000000000000000000000000000000000000005f5260045260245260445260645ffd5b7f96c6fd1e000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b34610233575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576040515f60045461062781611629565b80845290600181169081156106c15750600114610663575b6103608361064f8185038261171a565b604051918291602083526020830190611572565b60045f9081527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b939250905b8082106106a75750909150810160200161064f61063f565b91926001816020925483858801015201910190929161068f565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660208086019190915291151560051b8401909101915061064f905061063f565b34610233575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261023357602073ffffffffffffffffffffffffffffffffffffffff60055416604051908152f35b346102335760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335760043567ffffffffffffffff81116102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc8236030112610233576107cf602091600401611883565b604051908152f35b346102335760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335760043563ffffffff81168091036102335773ffffffffffffffffffffffffffffffffffffffff610834611e71565b165f5264010000000860205261084f60405f20918254611849565b9055005b34610233575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576109296108ad7f0000000000000000000000000000000000000000000000000000000000000000611f9c565b6108d67f0000000000000000000000000000000000000000000000000000000000000000612015565b6020610937604051926108e9838561171a565b5f84525f3681376040519586957f0f00000000000000000000000000000000000000000000000000000000000000875260e08588015260e0870190611572565b908582036040870152611572565b4660608501523060808501525f60a085015283810360c08501528180845192838152019301915f5b82811061096e57505050500390f35b83518552869550938101939281019260010161095f565b34610233575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576109bb611dea565b5f73ffffffffffffffffffffffffffffffffffffffff6005547fffffffffffffffffffffffff00000000000000000000000000000000000000008116600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b346102335760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335773ffffffffffffffffffffffffffffffffffffffff610a6d6115b5565b165f525f602052602060405f2054604051908152f35b346102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261023357610aba6115b5565b73ffffffffffffffffffffffffffffffffffffffff60243591610adb611dea565b16908115610b30577fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602082610b145f94600254611849565b60025584845283825260408420818154019055604051908152a3005b7fec442f05000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b346102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576004357fffffffff000000000000000000000000000000000000000000000000000000008116809103610233576024359063ffffffff82168092036102335773ffffffffffffffffffffffffffffffffffffffff610be7611e71565b165f5264010000000960205260405f20905f5260205261084f60405f20918254611849565b346102335760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335760043573ffffffffffffffffffffffffffffffffffffffff610c5b611e71565b165f5264010000000a60205260405f208160081c5f52602052600160ff60405f2092161b81541790555f80f35b346102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261023357610cbf6115b5565b602435907fffffffff0000000000000000000000000000000000000000000000000000000082168092036102335773ffffffffffffffffffffffffffffffffffffffff165f5264010000000960205260405f20905f52602052602060405f2054604051908152f35b34610233575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576020604051468152f35b34610233575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261023357602060405160128152f35b34610233575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335760206040517f9ed1889e2180e1ec4f2d7816d43eb41f27d0bbbce4557680ecf32626c070c8648152f35b60607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261023357610e226115b5565b6024359067ffffffffffffffff821161023357816004019060407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc84360301126102335760443567ffffffffffffffff811161023357610e869036906004016115fb565b83359464ffffffffff8660d01c1642116110c557610ea2611e71565b69ffffffffffffffffffff8760801c1680159182156110af575b505015611087576024610edc910195610ed58787611788565b9186611a1b565b1561105f57610ef491610eee85611883565b84611bd3565b1561103757610f6a926102be92610f63926008549063ffffffff8260a01c1691825f146110165790740100000000000000000000000000000000000000007f80000000000000000000000000000000000000000000000000000000000000009201600855179060080155611788565b3691611813565b6008549063ffffffff8260a01c1691825f14610fee5761036092600114610fc4577fffffffffffffffffffffffff000000000000000000000000000000000000000001600855604051918291602083526020830190611572565b507f800000000000000000000000000000000000000000000000000000000000000060085561064f565b7f06a2af9e000000000000000000000000000000000000000000000000000000005f5260045ffd5b50740100000000000000000000000000000000000000001760085550611788565b7f356a4418000000000000000000000000000000000000000000000000000000005f5260045ffd5b7fd9c6386f000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f3b06dcfb000000000000000000000000000000000000000000000000000000005f5260045ffd5b69ffffffffffffffffffff161490508780610ebc565b7f559895a3000000000000000000000000000000000000000000000000000000005f5260045ffd5b346102335760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576111246115b5565b61112c6115d8565b60443590611138611e71565b9273ffffffffffffffffffffffffffffffffffffffff811693845f52600160205260405f2073ffffffffffffffffffffffffffffffffffffffff82165f5260205260405f2054907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036111b3575b50506104ca9350611924565b84821061126f5785156112435773ffffffffffffffffffffffffffffffffffffffff811615611217576104ca955f52600160205273ffffffffffffffffffffffffffffffffffffffff60405f2091165f526020528360405f209103905584806111a7565b7f94280d62000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b7fe602df05000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b9073ffffffffffffffffffffffffffffffffffffffff85927ffb8f41b2000000000000000000000000000000000000000000000000000000005f521660045260245260445260645ffd5b34610233575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576020600254604051908152f35b346102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335773ffffffffffffffffffffffffffffffffffffffff6113406115b5565b165f5264010000000a60205260405f2060243560081c5f52602052602060405f2054604051908152f35b346102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576113a16115b5565b6024359073ffffffffffffffffffffffffffffffffffffffff6113c2611e71565b169081156112435773ffffffffffffffffffffffffffffffffffffffff169182156112175760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a3602060405160018152f35b346102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261023357602061146c6115b5565b73ffffffffffffffffffffffffffffffffffffffff60243591165f5264010000000a825260405f208160081c5f52825260405f2054600160ff60405193161b1615158152f35b34610233575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233575f6003546114ed81611629565b80845290600181169081156106c15750600114611514576103608361064f8185038261171a565b60035f9081527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b939250905b8082106115585750909150810160200161064f61063f565b919260018160209254838588010152019101909291611540565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080948051918291828752018686015e5f8582860101520116010190565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361023357565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361023357565b9181601f840112156102335782359167ffffffffffffffff8311610233576020838186019501011161023357565b90600182811c92168015611670575b602083101461164357565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f1691611638565b5f929181549161168983611629565b80835292600181169081156116de57506001146116a557505050565b5f9081526020812093945091925b8383106116c4575060209250010190565b6001816020929493945483858701015201910191906116b3565b905060209495507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091509291921683830152151560051b010190565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761175b57604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b9035907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe181360301821215610233570180359067ffffffffffffffff82116102335760200191813603831361023357565b67ffffffffffffffff811161175b57601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b92919261181f826117d9565b9161182d604051938461171a565b829481845281830111610233578281602093845f960137010152565b9190820180921161185657565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b604290611896610f636020830183611788565b602081519101206040519060208201927f9ed1889e2180e1ec4f2d7816d43eb41f27d0bbbce4557680ecf32626c070c86484523560408301526060820152606081526118e360808261171a565b5190206118ee61204c565b90604051917f19010000000000000000000000000000000000000000000000000000000000008352600283015260228201522090565b73ffffffffffffffffffffffffffffffffffffffff169081156105bd5773ffffffffffffffffffffffffffffffffffffffff16918215610b3057815f525f60205260405f20548181106119bc57817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b827fe450d38c000000000000000000000000000000000000000000000000000000005f5260045260245260445260645ffd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146118565760010190565b90928360fe1c9360028511611bab576003851015611b7e576fffffffffffffffffffffffffffffffff81169480611a895750505073ffffffffffffffffffffffffffffffffffffffff9150165f5264010000000860205260405f2090815491611a83836119ee565b90551490565b919291600103611b1957509073ffffffffffffffffffffffffffffffffffffffff7fffffffff0000000000000000000000000000000000000000000000000000000092165f5264010000000960205260405f2092358281169160048110611b04575b5050165f5260205260405f2090815491611a83836119ee565b839250829060040360031b1b16165f80611aeb565b73ffffffffffffffffffffffffffffffffffffffff9091165f90815264010000000a60209081526040808320600885901c6effffffffffffffffffffffffffffff16845290915290208054600160ff9093169290921b82179081905514159392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b7f5f640821000000000000000000000000000000000000000000000000000000005f5260045ffd5b9290919273ffffffffffffffffffffffffffffffffffffffff81168015611d9a5760408314908115611d8f575b81611c94575b50611c8b576020925f92808496604051937f1626ba7e0000000000000000000000000000000000000000000000000000000085526004850152604060248501528160448501526064840137606401915afa611c5e5790565b5060203d145f517f1626ba7e00000000000000000000000000000000000000000000000000000000141690565b50505050600190565b90505f6040518480604114611d7457604014611d2d57505f90815b611cd3575b73ffffffffffffffffffffffffffffffffffffffff915016145f611c06565b7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a160608301511015611cb457505f608082876020945282805260015afa5073ffffffffffffffffffffffffffffffffffffffff5f51611cb4565b90817f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208901358060ff1c601b01602084015260208a6040850137166060820152611caf565b509060408701355f1a60208301528160408881830137611caf565b604184149150611c00565b50505050505f90565b5f80611ddf93602081519101845af43d15611de2573d91611dc3836117d9565b92611dd1604051948561171a565b83523d5f602085013e611f03565b90565b606091611f03565b73ffffffffffffffffffffffffffffffffffffffff6005541673ffffffffffffffffffffffffffffffffffffffff611e20611e71565b1603611e2857565b73ffffffffffffffffffffffffffffffffffffffff611e45611e71565b7f118cdaa7000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b63ffffffff60085460a01c168015611efe577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8101818111611856576401000000001115611ed6576007015473ffffffffffffffffffffffffffffffffffffffff1690565b7f4e23d035000000000000000000000000000000000000000000000000000000005f5260045ffd5b503390565b90611f405750805115611f1857805190602001fd5b7fd6bda275000000000000000000000000000000000000000000000000000000005f5260045ffd5b81511580611f93575b611f51575090565b73ffffffffffffffffffffffffffffffffffffffff907f9996b315000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b50803b15611f49565b60ff8114611ffb5760ff811690601f8211611fd35760405191611fc060408461171a565b6020808452838101919036833783525290565b7fb3512b0c000000000000000000000000000000000000000000000000000000005f5260045ffd5b50604051611ddf8161200e81600661167a565b038261171a565b60ff81146120395760ff811690601f8211611fd35760405191611fc060408461171a565b50604051611ddf8161200e81600761167a565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001630148061214c575b156120b4577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a0815261214660c08261171a565b51902090565b507f0000000000000000000000000000000000000000000000000000000000000000461461208b56fea26469706673582212206b2e0dd5327b87ba6713a654c33d3c2995b774ffc085a218196d0e2967a92f4764736f6c634300081e0033";
18
18
  static readonly abi: readonly [{
19
19
  readonly inputs: readonly [{
20
20
  readonly internalType: "string";
@@ -860,7 +860,7 @@ const _abi = [
860
860
  type: "function",
861
861
  },
862
862
  ];
863
- const _bytecode = "0x61016060408181523461042457612a50803803809161001e8286610428565b84398201916060818403126104245780516001600160401b039290838111610424578461004c91840161044b565b9160209081810151858111610424578661006791830161044b565b95838201518681116104245761007d920161044b565b9083518581116103475760038054906001928383811c9316801561041a575b8584101461040657601f928381116103c3575b508085848211600114610366575f9161035b575b505f1982841b1c191690841b1781555b885191888311610347576004998a548581811c9116801561033d575b8782101461032a578281116102e7575b5085918411600114610285579383949184925f9561027a575b50501b925f19911b1c19161786555b33156102645760058054336001600160a01b0319821681179092556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3610178846104a0565b9261012093845261018883610628565b94610140958652828151910120928360e05282815191012096610100978089524660a0528251938401947f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f86528385015260608401524660808401523060a084015260a0835260c08301968388109088111761025157508590525190206080523060c0526122eb93846107658539608051846121c3015260a0518461228f015260c05184612194015260e051846122120152518361223801525182610867015251816108910152f35b604190634e487b7160e01b5f525260245ffd5b8251631e4fbdf760e01b81525f81880152602490fd5b015193505f80610118565b9190601f198416928b5f5284875f20945f5b89898383106102d057505050106102b7575b50505050811b018655610127565b01519060f8845f19921b161c191690555f8080806102a9565b868601518955909701969485019488935001610297565b8b5f52865f208380870160051c820192898810610321575b0160051c019086905b8281106103165750506100ff565b5f8155018690610308565b925081926102ff565b60228c634e487b7160e01b5f525260245ffd5b90607f16906100ef565b634e487b7160e01b5f52604160045260245ffd5b90508801515f6100c3565b859250601f19821690845f52875f20915f5b898d8383106103ae575050508311610397575b5050811b0181556100d3565b8a01515f1983861b60f8161c191690555f8061038b565b84015185558996909401939283019201610378565b825f52855f208480840160051c8201928885106103fd575b0160051c019085905b8281106103f25750506100af565b5f81550185906103e4565b925081926103db565b634e487b7160e01b5f52602260045260245ffd5b92607f169261009c565b5f80fd5b601f909101601f19168101906001600160401b0382119082101761034757604052565b81601f82011215610424578051906001600160401b038211610347576040519261047f601f8401601f191660200185610428565b8284526020838301011161042457815f9260208093018386015e8301015290565b8051602090818110156105165750601f8251116104d857808251920151908083106104ca57501790565b825f19910360031b1b161790565b60448260405192839163305a27a960e01b83528160048401528051918291826024860152018484015e5f828201840152601f01601f19168101030190fd5b906001600160401b03821161034757600654926001938481811c9116801561061e575b8382101461040657601f81116105ea575b5081601f841160011461058657509282939183925f9461057b575b50501b915f199060031b1c19161760065560ff90565b015192505f80610565565b919083601f19811660065f52845f20945f905b888383106105d057505050106105b8575b505050811b0160065560ff90565b01515f1960f88460031b161c191690555f80806105aa565b858701518855909601959485019487935090810190610599565b60065f5284601f845f20920160051c820191601f860160051c015b82811061061357505061054a565b5f8155018590610605565b90607f1690610539565b8051602090818110156106525750601f8251116104d857808251920151908083106104ca57501790565b906001600160401b03821161034757600754926001938481811c9116801561075a575b8382101461040657601f8111610726575b5081601f84116001146106c257509282939183925f946106b7575b50501b915f199060031b1c19161760075560ff90565b015192505f806106a1565b919083601f19811660075f52845f20945f905b8883831061070c57505050106106f4575b505050811b0160075560ff90565b01515f1960f88460031b161c191690555f80806106e6565b8587015188559096019594850194879350908101906106d5565b60075f5284601f845f20920160051c820191601f860160051c015b82811061074f575050610686565b5f8155018590610741565b90607f169061067556fe608060409080825260049081361015610016575f80fd5b5f3560e01c90816306fdde03146114b75750806308b8ae3e14611439578063095ea7b3146113295780630acebbb3146112b757806318160ddd1461127b57806323b872dd146110ca5780632ca6f77114610e065780632dffc93814610dae578063313ce56714610d755780633408e47014610d3d57806334dd202614610ca25780633cc67ac714610c28578063404f551d14610b7c57806340c10f1914610aa057806370a0823114610a3f578063715018a6146109a357806384b0196e146108335780638c3adb0a146107b85780638d7e4ea0146107545780638da5cb5b1461070257806395d89b41146105df5780639dc29fac14610498578063a9059cbb14610443578063dd62ed3e146103ce578063e032e04f14610368578063eb24bae41461022f5763f2fde38b14610149575f80fd5b3461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610180611605565b90610189611df1565b73ffffffffffffffffffffffffffffffffffffffff8092169283156101fc575050600554827fffffffffffffffffffffffff0000000000000000000000000000000000000000821617600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3005b905f60249251917f1e4fbdf7000000000000000000000000000000000000000000000000000000008352820152fd5b5f80fd5b5060807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610262611605565b9160243567ffffffffffffffff60443581811161022b57610286903690860161164b565b919060643591821161022b576102b5926102a66102af933690890161164b565b505036916117df565b30611daa565b926102be611e57565b9473ffffffffffffffffffffffffffffffffffffffff809116913083036103415750948260809261033d976103157f91d424c26d66241302801829dc5d75ac3b3036414855f2088205e8f2705c051b963386611901565b865193168352336020840152858301526060820152a1519182916020835260208301906115c2565b0390f35b84517fa0f3feea000000000000000000000000000000000000000000000000000000008152fd5b823461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff6103b8611605565b165f526401000000088252805f20549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090610408611605565b610410611628565b9073ffffffffffffffffffffffffffffffffffffffff8091165f5260018452825f2091165f528252805f20549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090610491610480611605565b6024359061048c611e57565b611901565b5160018152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576104d0611605565b90602435926104dd611df1565b73ffffffffffffffffffffffffffffffffffffffff83169283156105b057835f525f602052825f205491858310610551575f857fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020898881898688528785520381872055816002540360025551908152a3005b6105ac868486519485947fe450d38c000000000000000000000000000000000000000000000000000000008652850160409194939273ffffffffffffffffffffffffffffffffffffffff606083019616825260208201520152565b0390fd5b505f60249251917f96c6fd1e000000000000000000000000000000000000000000000000000000008352820152fd5b503461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57815191825f835461061e81611679565b90818452602095600191876001821691825f146106bd575050600114610661575b50505061033d9291610652910385611713565b519282849384528301906115c2565b5f90815286935091907f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8284106106a5575050508201018161065261033d61063f565b8054848a01860152889550879490930192810161068c565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168782015293151560051b86019093019350849250610652915061033d905061063f565b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff600554169051908152f35b50903461022b577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc9160208336011261022b5780359267ffffffffffffffff841161022b578290843603011261022b576020926107b1910161184f565b9051908152f35b503461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57359063ffffffff821680920361022b5761082f9073ffffffffffffffffffffffffffffffffffffffff610819611e57565b165f526401000000086020525f20918254611815565b9055005b503461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5761088b7f0000000000000000000000000000000000000000000000000000000000000000611f8b565b916108b57f00000000000000000000000000000000000000000000000000000000000000006120c0565b815191602091602084019484861067ffffffffffffffff871117610977575061092c826020928761091f99989795525f855281519889987f0f000000000000000000000000000000000000000000000000000000000000008a5260e0868b015260e08a01906115c2565b91888303908901526115c2565b914660608701523060808701525f60a087015285830360c087015251918281520192915f5b82811061096057505050500390f35b835185528695509381019392810192600101610951565b6041907f4e487b71000000000000000000000000000000000000000000000000000000005f525260245ffd5b3461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576109d9611df1565b5f73ffffffffffffffffffffffffffffffffffffffff6005547fffffffffffffffffffffffff00000000000000000000000000000000000000008116600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b823461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff610a8f611605565b165f525f8252805f20549051908152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610ad8611605565b9073ffffffffffffffffffffffffffffffffffffffff60243592610afa611df1565b16928315610b4e57506020827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92610b355f95600254611815565b60025585855284835280852082815401905551908152a3005b5f60249251917fec442f05000000000000000000000000000000000000000000000000000000008352820152fd5b503461022b57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57357fffffffff00000000000000000000000000000000000000000000000000000000811680910361022b576024359163ffffffff831680930361022b5761082f9173ffffffffffffffffffffffffffffffffffffffff610c09611e57565b165f52640100000009602052815f20905f526020525f20918254611815565b503461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760ff600191359273ffffffffffffffffffffffffffffffffffffffff610c7c611e57565b165f5264010000000a602052805f208460081c5f526020525f2092161b81541790555f80f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610cd9611605565b906024357fffffffff00000000000000000000000000000000000000000000000000000000811680910361022b5773ffffffffffffffffffffffffffffffffffffffff602093165f526401000000098352815f20905f528252805f20549051908152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209051468152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576020905160128152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090517f9ed1889e2180e1ec4f2d7816d43eb41f27d0bbbce4557680ecf32626c070c8648152f35b50907ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc9060608236011261022b57610e3c611605565b9160243567ffffffffffffffff80821161022b578382870193833603011261022b5760443590811161022b57610e75903690870161164b565b9083359264ffffffffff8460d01c1642116110a257610e92611e57565b69ffffffffffffffffffff808660801c16908115928315611096575b5050501561106e576024610ecf910193610ec88587611754565b9189611a6b565b156110465790610ee891610ee28561184f565b87611c21565b1561101e576102af610f54610f5b92600894855463ffffffff98898260a01c1691825f14610ffe57740100000000000000000000000000000000000000000188557f80000000000000000000000000000000000000000000000000000000000000001790870155611754565b36916117df565b928154908160a01c16805f14610fd75761033d9550600114610fae577fffffffffffffffffffffffff00000000000000000000000000000000000000000190555b519182916020835260208301906115c2565b507f80000000000000000000000000000000000000000000000000000000000000009055610f9c565b857f06a2af9e000000000000000000000000000000000000000000000000000000005f525ffd5b507401000000000000000000000000000000000000000017875550611754565b8483517f356a4418000000000000000000000000000000000000000000000000000000008152fd5b8685517fd9c6386f000000000000000000000000000000000000000000000000000000008152fd5b8786517f3b06dcfb000000000000000000000000000000000000000000000000000000008152fd5b161490505f8080610eae565b8786517f559895a3000000000000000000000000000000000000000000000000000000008152fd5b503461022b5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57611102611605565b61110a611628565b9060443592611117611e57565b9073ffffffffffffffffffffffffffffffffffffffff9081841690815f526001602052875f2092841692835f52602052875f2054937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8503611182575b6020896104918a8a8a611901565b87851061121f575081156111f05782156111c157505f908152600160209081528782209282529182528681209286900390925583916104919080611174565b6024905f8951917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b6024905f8951917fe602df05000000000000000000000000000000000000000000000000000000008352820152fd5b906105ac88868b519485947ffb8f41b2000000000000000000000000000000000000000000000000000000008652850160409194939273ffffffffffffffffffffffffffffffffffffffff606083019616825260208201520152565b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576020906002549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff611306611605565b165f5264010000000a8252805f2060243560081c5f528252805f20549051908152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57611361611605565b6024359073ffffffffffffffffffffffffffffffffffffffff80611383611e57565b1691821561140a57169182156113db5760208095507f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f5260018252855f20855f52825280865f20558551908152a35160018152f35b6024855f8651917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b6024865f8751917fe602df05000000000000000000000000000000000000000000000000000000008352820152fd5b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090611473611605565b9073ffffffffffffffffffffffffffffffffffffffff60243592165f5264010000000a8352805f208260081c5f528352600160ff825f2054925193161b1615158152f35b833461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760035490825f6114f584611679565b808352602094600190866001821691825f14611582575050600114611527575b505061033d9291610652910385611713565b9085925060035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b915f925b82841061156a5750505082010181610652611515565b8054848a018601528895508794909301928101611554565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168682015292151560051b850190920192508391506106529050611515565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080948051918291828752018686015e5f8582860101520116010190565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361022b57565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361022b57565b9181601f8401121561022b5782359167ffffffffffffffff831161022b576020838186019501011161022b57565b90600182811c921680156116c0575b602083101461169357565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f1691611688565b6040810190811067ffffffffffffffff8211176116e657604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176116e657604052565b9035907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18136030182121561022b570180359067ffffffffffffffff821161022b5760200191813603831361022b57565b67ffffffffffffffff81116116e657601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b9291926117eb826117a5565b916117f96040519384611713565b82948184528183011161022b578281602093845f960137010152565b9190820180921161182257565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b61185f610f546020830183611754565b60208151910120906040519160208301917f9ed1889e2180e1ec4f2d7816d43eb41f27d0bbbce4557680ecf32626c070c8648352356040840152606083015260608252608082019180831067ffffffffffffffff8411176116e6576042926040525190206118cb61217d565b90604051917f19010000000000000000000000000000000000000000000000000000000000008352600283015260228201522090565b9173ffffffffffffffffffffffffffffffffffffffff808416928315611a0e57169283156119de57825f525f60205260405f2054908282106119865750817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f5260405f20818154019055604051908152a3565b6040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff919091166004820152602481019190915260448101829052606490fd5b60246040517fec442f050000000000000000000000000000000000000000000000000000000081525f6004820152fd5b60246040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f6004820152fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146118225760010190565b90928360fe1c9360028511611bf7576003851015611bca576fffffffffffffffffffffffffffffffff81169480611ad95750505073ffffffffffffffffffffffffffffffffffffffff9150165f5264010000000860205260405f2090815491611ad383611a3e565b90551490565b919291600103611b6d575073ffffffffffffffffffffffffffffffffffffffff165f5264010000000960205260405f2091357fffffffff000000000000000000000000000000000000000000000000000000009181838093169160048110611b57575b50509050165f5260205260405f2090815491611ad383611a3e565b8391925060040360031b1b161681905f80611b3c565b9350905073ffffffffffffffffffffffffffffffffffffffff9150165f5264010000000a60205260405f206effffffffffffffffffffffffffffff8260081c165f5260205260405f2090600160ff835492161b8117809255141590565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b60046040517f5f640821000000000000000000000000000000000000000000000000000000008152fd5b90919273ffffffffffffffffffffffffffffffffffffffff91828116928315611da057604093848414918215611d95575b82611cc8575b5050611cbe57602092825f9384978351937f1626ba7e0000000000000000000000000000000000000000000000000000000098898652600486015260248501528160448501526064840137606401915afa611cb1575090565b5f51143d60201416919050565b5050505050600190565b9091505f85518580604114611d7d57604014611d3857505f805b611cf1575b5016145f80611c58565b7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a160608201511015611ce75760209150608081895f935282805260015afa505f515f611ce7565b807f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208b01358060ff1c601b01602084015260208c8b850137166060820152611ce2565b50868901355f1a602082015280878a81830137611ce2565b604185149250611c52565b5050505050505f90565b5f80611de693602081519101845af43d15611de9573d91611dca836117a5565b92611dd86040519485611713565b83523d5f602085013e611eeb565b90565b606091611eeb565b73ffffffffffffffffffffffffffffffffffffffff806005541681611e14611e57565b1603611e1d5750565b602490611e28611e57565b6040517f118cdaa700000000000000000000000000000000000000000000000000000000815291166004820152fd5b63ffffffff60085460a01c168015611ee6577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8101818111611822576401000000001115611ebc576007015473ffffffffffffffffffffffffffffffffffffffff1690565b60046040517f4e23d035000000000000000000000000000000000000000000000000000000008152fd5b503390565b90611f2a5750805115611f0057805190602001fd5b60046040517fd6bda275000000000000000000000000000000000000000000000000000000008152fd5b81511580611f82575b611f3b575090565b60249073ffffffffffffffffffffffffffffffffffffffff604051917f9996b315000000000000000000000000000000000000000000000000000000008352166004820152fd5b50803b15611f33565b60ff8114611fe15760ff811690601f8211611fb75760405191611fad836116ca565b8252602082015290565b60046040517fb3512b0c000000000000000000000000000000000000000000000000000000008152fd5b50604051600654815f611ff383611679565b8083529260209060019081811690811561207d575060011461201e575b5050611de692500382611713565b91509260065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f935f925b8284106120655750611de69450505081016020015f80612010565b8554878501830152948501948694509281019261204a565b905060209350611de69592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b8201015f80612010565b60ff81146120e25760ff811690601f8211611fb75760405191611fad836116ca565b50604051600754815f6120f483611679565b8083529260209060019081811690811561207d575060011461211e575050611de692500382611713565b91509260075f527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688935f925b8284106121655750611de69450505081016020015f80612010565b8554878501830152948501948694509281019261214a565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001630148061228c575b156121e5577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a0815260c0810181811067ffffffffffffffff8211176116e65760405251902090565b507f000000000000000000000000000000000000000000000000000000000000000046146121bc56fea2646970667358221220a30e8de38a667241fcb06e9fe17a338cc76e17fdce73eae91807f9d63615896e64736f6c63430008190033";
863
+ const _bytecode = "0x61016080604052346104675761294e803803809161001d828561046b565b83398101906060818303126104675780516001600160401b038111610467578261004891830161048e565b60208201519091906001600160401b038111610467578361006a91830161048e565b60408201519093906001600160401b0381116104675761008a920161048e565b81519091906001600160401b03811161037757600354600181811c9116801561045d575b602082101461035957601f81116103fa575b50806020601f8211600114610396575f9161038b575b508160011b915f199060031b1c1916176003555b82516001600160401b03811161037757600454600181811c9116801561036d575b602082101461035957601f81116102f6575b506020601f821160011461029357819293945f92610288575b50508160011b915f199060031b1c1916176004555b33156102755760058054336001600160a01b0319821681179092556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a361019c816104e3565b610120526101a98261066a565b6101405260208151910120908160e0526020815191012080610100524660a0526040519060208201927f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8452604083015260608201524660808201523060a082015260a0815261021a60c08261046b565b5190206080523060c0526040516121ab90816107a3823960805181612092015260a0518161214f015260c05181612063015260e051816120e10152610100518161210701526101205181610889015261014051816108b20152f35b631e4fbdf760e01b5f525f60045260245ffd5b015190505f80610136565b601f1982169060045f52805f20915f5b8181106102de575095836001959697106102c6575b505050811b0160045561014b565b01515f1960f88460031b161c191690555f80806102b8565b9192602060018192868b0151815501940192016102a3565b60045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f830160051c8101916020841061034f575b601f0160051c01905b818110610344575061011d565b5f8155600101610337565b909150819061032e565b634e487b7160e01b5f52602260045260245ffd5b90607f169061010b565b634e487b7160e01b5f52604160045260245ffd5b90508201515f6100d6565b60035f9081528181209250601f198416905b8181106103e2575090836001949392106103ca575b5050811b016003556100ea565b8401515f1960f88460031b161c191690555f806103bd565b919260206001819286890151815501940192016103a8565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c81019160208410610453575b601f0160051c01905b81811061044857506100c0565b5f815560010161043b565b9091508190610432565b90607f16906100ae565b5f80fd5b601f909101601f19168101906001600160401b0382119082101761037757604052565b81601f82011215610467578051906001600160401b03821161037757604051926104c2601f8401601f19166020018561046b565b8284526020838301011161046757815f9260208093018386015e8301015290565b908151602081105f1461055d575090601f81511161051d57602081519101516020821061050e571790565b5f198260200360031b1b161790565b604460209160405192839163305a27a960e01b83528160048401528051918291826024860152018484015e5f828201840152601f01601f19168101030190fd5b6001600160401b03811161037757600654600181811c91168015610660575b602082101461035957601f811161062d575b50602092601f82116001146105cc57928192935f926105c1575b50508160011b915f199060031b1c19161760065560ff90565b015190505f806105a8565b601f1982169360065f52805f20915f5b86811061061557508360019596106105fd575b505050811b0160065560ff90565b01515f1960f88460031b161c191690555f80806105ef565b919260206001819286850151815501940192016105dc565b60065f52601f60205f20910160051c810190601f830160051c015b818110610655575061058e565b5f8155600101610648565b90607f169061057c565b908151602081105f14610695575090601f81511161051d57602081519101516020821061050e571790565b6001600160401b03811161037757600754600181811c91168015610798575b602082101461035957601f8111610765575b50602092601f821160011461070457928192935f926106f9575b50508160011b915f199060031b1c19161760075560ff90565b015190505f806106e0565b601f1982169360075f52805f20915f5b86811061074d5750836001959610610735575b505050811b0160075560ff90565b01515f1960f88460031b161c191690555f8080610727565b91926020600181928685015181550194019201610714565b60075f52601f60205f20910160051c810190601f830160051c015b81811061078d57506106c6565b5f8155600101610780565b90607f16906106b456fe6080806040526004361015610012575f80fd5b5f3560e01c90816306fdde03146114b25750806308b8ae3e14611433578063095ea7b31461136a5780630acebbb3146112f457806318160ddd146112b957806323b872dd146110ed5780632ca6f77114610df05780632dffc93814610d98578063313ce56714610d5f5780633408e47014610d2757806334dd202614610c885780633cc67ac714610c0c578063404f551d14610b5c57806340c10f1914610a8357806370a0823114610a21578063715018a61461098557806384b0196e146108535780638c3adb0a146107d75780638d7e4ea0146107545780638da5cb5b1461070357806395d89b41146105e95780639dc29fac146104d5578063a9059cbb1461047f578063dd62ed3e146103f3578063e032e04f1461038c578063eb24bae4146102375763f2fde38b14610145575f80fd5b346102335760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335773ffffffffffffffffffffffffffffffffffffffff6101916115b5565b610199611dea565b1680156102075773ffffffffffffffffffffffffffffffffffffffff600554827fffffffffffffffffffffffff0000000000000000000000000000000000000000821617600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3005b7f1e4fbdf7000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b5f80fd5b60807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576102696115b5565b60243560443567ffffffffffffffff81116102335761028c9036906004016115fb565b906064359067ffffffffffffffff8211610233576102c4926102b56102be9336906004016115fb565b50503691611813565b30611da3565b9073ffffffffffffffffffffffffffffffffffffffff6102e2611e71565b931630810361036457610360938260809261031f7f91d424c26d66241302801829dc5d75ac3b3036414855f2088205e8f2705c051b953385611924565b73ffffffffffffffffffffffffffffffffffffffff6040519316835233602084015260408301526060820152a1604051918291602083526020830190611572565b0390f35b7fa0f3feea000000000000000000000000000000000000000000000000000000005f5260045ffd5b346102335760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335773ffffffffffffffffffffffffffffffffffffffff6103d86115b5565b165f52640100000008602052602060405f2054604051908152f35b346102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335761042a6115b5565b73ffffffffffffffffffffffffffffffffffffffff6104476115d8565b91165f52600160205273ffffffffffffffffffffffffffffffffffffffff60405f2091165f52602052602060405f2054604051908152f35b346102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576104ca6104b96115b5565b602435906104c5611e71565b611924565b602060405160018152f35b346102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335761050c6115b5565b73ffffffffffffffffffffffffffffffffffffffff6024359161052d611dea565b1680156105bd57805f525f60205260405f205482811061058b576020835f947fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef938587528684520360408620558060025403600255604051908152a3005b907fe450d38c000000000000000000000000000000000000000000000000000000005f5260045260245260445260645ffd5b7f96c6fd1e000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b34610233575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576040515f60045461062781611629565b80845290600181169081156106c15750600114610663575b6103608361064f8185038261171a565b604051918291602083526020830190611572565b60045f9081527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b939250905b8082106106a75750909150810160200161064f61063f565b91926001816020925483858801015201910190929161068f565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660208086019190915291151560051b8401909101915061064f905061063f565b34610233575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261023357602073ffffffffffffffffffffffffffffffffffffffff60055416604051908152f35b346102335760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335760043567ffffffffffffffff81116102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc8236030112610233576107cf602091600401611883565b604051908152f35b346102335760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335760043563ffffffff81168091036102335773ffffffffffffffffffffffffffffffffffffffff610834611e71565b165f5264010000000860205261084f60405f20918254611849565b9055005b34610233575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576109296108ad7f0000000000000000000000000000000000000000000000000000000000000000611f9c565b6108d67f0000000000000000000000000000000000000000000000000000000000000000612015565b6020610937604051926108e9838561171a565b5f84525f3681376040519586957f0f00000000000000000000000000000000000000000000000000000000000000875260e08588015260e0870190611572565b908582036040870152611572565b4660608501523060808501525f60a085015283810360c08501528180845192838152019301915f5b82811061096e57505050500390f35b83518552869550938101939281019260010161095f565b34610233575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576109bb611dea565b5f73ffffffffffffffffffffffffffffffffffffffff6005547fffffffffffffffffffffffff00000000000000000000000000000000000000008116600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b346102335760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335773ffffffffffffffffffffffffffffffffffffffff610a6d6115b5565b165f525f602052602060405f2054604051908152f35b346102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261023357610aba6115b5565b73ffffffffffffffffffffffffffffffffffffffff60243591610adb611dea565b16908115610b30577fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602082610b145f94600254611849565b60025584845283825260408420818154019055604051908152a3005b7fec442f05000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b346102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576004357fffffffff000000000000000000000000000000000000000000000000000000008116809103610233576024359063ffffffff82168092036102335773ffffffffffffffffffffffffffffffffffffffff610be7611e71565b165f5264010000000960205260405f20905f5260205261084f60405f20918254611849565b346102335760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335760043573ffffffffffffffffffffffffffffffffffffffff610c5b611e71565b165f5264010000000a60205260405f208160081c5f52602052600160ff60405f2092161b81541790555f80f35b346102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261023357610cbf6115b5565b602435907fffffffff0000000000000000000000000000000000000000000000000000000082168092036102335773ffffffffffffffffffffffffffffffffffffffff165f5264010000000960205260405f20905f52602052602060405f2054604051908152f35b34610233575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576020604051468152f35b34610233575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261023357602060405160128152f35b34610233575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335760206040517f9ed1889e2180e1ec4f2d7816d43eb41f27d0bbbce4557680ecf32626c070c8648152f35b60607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261023357610e226115b5565b6024359067ffffffffffffffff821161023357816004019060407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc84360301126102335760443567ffffffffffffffff811161023357610e869036906004016115fb565b83359464ffffffffff8660d01c1642116110c557610ea2611e71565b69ffffffffffffffffffff8760801c1680159182156110af575b505015611087576024610edc910195610ed58787611788565b9186611a1b565b1561105f57610ef491610eee85611883565b84611bd3565b1561103757610f6a926102be92610f63926008549063ffffffff8260a01c1691825f146110165790740100000000000000000000000000000000000000007f80000000000000000000000000000000000000000000000000000000000000009201600855179060080155611788565b3691611813565b6008549063ffffffff8260a01c1691825f14610fee5761036092600114610fc4577fffffffffffffffffffffffff000000000000000000000000000000000000000001600855604051918291602083526020830190611572565b507f800000000000000000000000000000000000000000000000000000000000000060085561064f565b7f06a2af9e000000000000000000000000000000000000000000000000000000005f5260045ffd5b50740100000000000000000000000000000000000000001760085550611788565b7f356a4418000000000000000000000000000000000000000000000000000000005f5260045ffd5b7fd9c6386f000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f3b06dcfb000000000000000000000000000000000000000000000000000000005f5260045ffd5b69ffffffffffffffffffff161490508780610ebc565b7f559895a3000000000000000000000000000000000000000000000000000000005f5260045ffd5b346102335760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576111246115b5565b61112c6115d8565b60443590611138611e71565b9273ffffffffffffffffffffffffffffffffffffffff811693845f52600160205260405f2073ffffffffffffffffffffffffffffffffffffffff82165f5260205260405f2054907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036111b3575b50506104ca9350611924565b84821061126f5785156112435773ffffffffffffffffffffffffffffffffffffffff811615611217576104ca955f52600160205273ffffffffffffffffffffffffffffffffffffffff60405f2091165f526020528360405f209103905584806111a7565b7f94280d62000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b7fe602df05000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b9073ffffffffffffffffffffffffffffffffffffffff85927ffb8f41b2000000000000000000000000000000000000000000000000000000005f521660045260245260445260645ffd5b34610233575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576020600254604051908152f35b346102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102335773ffffffffffffffffffffffffffffffffffffffff6113406115b5565b165f5264010000000a60205260405f2060243560081c5f52602052602060405f2054604051908152f35b346102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233576113a16115b5565b6024359073ffffffffffffffffffffffffffffffffffffffff6113c2611e71565b169081156112435773ffffffffffffffffffffffffffffffffffffffff169182156112175760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a3602060405160018152f35b346102335760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261023357602061146c6115b5565b73ffffffffffffffffffffffffffffffffffffffff60243591165f5264010000000a825260405f208160081c5f52825260405f2054600160ff60405193161b1615158152f35b34610233575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610233575f6003546114ed81611629565b80845290600181169081156106c15750600114611514576103608361064f8185038261171a565b60035f9081527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b939250905b8082106115585750909150810160200161064f61063f565b919260018160209254838588010152019101909291611540565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080948051918291828752018686015e5f8582860101520116010190565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361023357565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361023357565b9181601f840112156102335782359167ffffffffffffffff8311610233576020838186019501011161023357565b90600182811c92168015611670575b602083101461164357565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f1691611638565b5f929181549161168983611629565b80835292600181169081156116de57506001146116a557505050565b5f9081526020812093945091925b8383106116c4575060209250010190565b6001816020929493945483858701015201910191906116b3565b905060209495507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091509291921683830152151560051b010190565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761175b57604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b9035907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe181360301821215610233570180359067ffffffffffffffff82116102335760200191813603831361023357565b67ffffffffffffffff811161175b57601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b92919261181f826117d9565b9161182d604051938461171a565b829481845281830111610233578281602093845f960137010152565b9190820180921161185657565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b604290611896610f636020830183611788565b602081519101206040519060208201927f9ed1889e2180e1ec4f2d7816d43eb41f27d0bbbce4557680ecf32626c070c86484523560408301526060820152606081526118e360808261171a565b5190206118ee61204c565b90604051917f19010000000000000000000000000000000000000000000000000000000000008352600283015260228201522090565b73ffffffffffffffffffffffffffffffffffffffff169081156105bd5773ffffffffffffffffffffffffffffffffffffffff16918215610b3057815f525f60205260405f20548181106119bc57817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b827fe450d38c000000000000000000000000000000000000000000000000000000005f5260045260245260445260645ffd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146118565760010190565b90928360fe1c9360028511611bab576003851015611b7e576fffffffffffffffffffffffffffffffff81169480611a895750505073ffffffffffffffffffffffffffffffffffffffff9150165f5264010000000860205260405f2090815491611a83836119ee565b90551490565b919291600103611b1957509073ffffffffffffffffffffffffffffffffffffffff7fffffffff0000000000000000000000000000000000000000000000000000000092165f5264010000000960205260405f2092358281169160048110611b04575b5050165f5260205260405f2090815491611a83836119ee565b839250829060040360031b1b16165f80611aeb565b73ffffffffffffffffffffffffffffffffffffffff9091165f90815264010000000a60209081526040808320600885901c6effffffffffffffffffffffffffffff16845290915290208054600160ff9093169290921b82179081905514159392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b7f5f640821000000000000000000000000000000000000000000000000000000005f5260045ffd5b9290919273ffffffffffffffffffffffffffffffffffffffff81168015611d9a5760408314908115611d8f575b81611c94575b50611c8b576020925f92808496604051937f1626ba7e0000000000000000000000000000000000000000000000000000000085526004850152604060248501528160448501526064840137606401915afa611c5e5790565b5060203d145f517f1626ba7e00000000000000000000000000000000000000000000000000000000141690565b50505050600190565b90505f6040518480604114611d7457604014611d2d57505f90815b611cd3575b73ffffffffffffffffffffffffffffffffffffffff915016145f611c06565b7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a160608301511015611cb457505f608082876020945282805260015afa5073ffffffffffffffffffffffffffffffffffffffff5f51611cb4565b90817f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208901358060ff1c601b01602084015260208a6040850137166060820152611caf565b509060408701355f1a60208301528160408881830137611caf565b604184149150611c00565b50505050505f90565b5f80611ddf93602081519101845af43d15611de2573d91611dc3836117d9565b92611dd1604051948561171a565b83523d5f602085013e611f03565b90565b606091611f03565b73ffffffffffffffffffffffffffffffffffffffff6005541673ffffffffffffffffffffffffffffffffffffffff611e20611e71565b1603611e2857565b73ffffffffffffffffffffffffffffffffffffffff611e45611e71565b7f118cdaa7000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b63ffffffff60085460a01c168015611efe577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8101818111611856576401000000001115611ed6576007015473ffffffffffffffffffffffffffffffffffffffff1690565b7f4e23d035000000000000000000000000000000000000000000000000000000005f5260045ffd5b503390565b90611f405750805115611f1857805190602001fd5b7fd6bda275000000000000000000000000000000000000000000000000000000005f5260045ffd5b81511580611f93575b611f51575090565b73ffffffffffffffffffffffffffffffffffffffff907f9996b315000000000000000000000000000000000000000000000000000000005f521660045260245ffd5b50803b15611f49565b60ff8114611ffb5760ff811690601f8211611fd35760405191611fc060408461171a565b6020808452838101919036833783525290565b7fb3512b0c000000000000000000000000000000000000000000000000000000005f5260045ffd5b50604051611ddf8161200e81600661167a565b038261171a565b60ff81146120395760ff811690601f8211611fd35760405191611fc060408461171a565b50604051611ddf8161200e81600761167a565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001630148061214c575b156120b4577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a0815261214660c08261171a565b51902090565b507f0000000000000000000000000000000000000000000000000000000000000000461461208b56fea26469706673582212206b2e0dd5327b87ba6713a654c33d3c2995b774ffc085a218196d0e2967a92f4764736f6c634300081e0033";
864
864
  const isSuperArgs = (xs) => xs.length > 1;
865
865
  class TokenWithBySig__factory extends ethers_1.ContractFactory {
866
866
  constructor(...args) {
@@ -1 +1 @@
1
- {"version":3,"file":"TokenWithBySig__factory.js","sourceRoot":"","sources":["../../../../../../typechain-types/factories/contracts/tests/mocks/TokenWithBySig__factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TokenWithBySig__factory.js","sourceRoot":"","sources":["../../../../../../typechain-types/factories/contracts/tests/mocks/TokenWithBySig__factory.ts"],"names":[],"mappings":"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"}