@1inch/solidity-utils 3.1.0 → 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. package/contracts/libraries/SafeERC20.sol +7 -7
  2. package/contracts/mocks/ERC20PermitMock.sol +1 -1
  3. package/contracts/mocks/TokenCustomDecimalsMock.sol +2 -2
  4. package/contracts/mocks/TokenMock.sol +1 -1
  5. package/dist/src/utils.d.ts +2 -1
  6. package/dist/src/utils.js +9 -1
  7. package/dist/src/utils.js.map +1 -1
  8. package/dist/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC1155Errors.d.ts +20 -0
  9. package/dist/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC1155Errors.js +3 -0
  10. package/dist/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC1155Errors.js.map +1 -0
  11. package/dist/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC20Errors.d.ts +20 -0
  12. package/dist/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC20Errors.js +3 -0
  13. package/dist/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC20Errors.js.map +1 -0
  14. package/dist/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC721Errors.d.ts +20 -0
  15. package/dist/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC721Errors.js +3 -0
  16. package/dist/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC721Errors.js.map +1 -0
  17. package/dist/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/index.d.ts +3 -0
  18. package/dist/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/index.js +3 -0
  19. package/dist/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/index.js.map +1 -0
  20. package/dist/typechain-types/@openzeppelin/contracts/interfaces/index.d.ts +2 -0
  21. package/dist/typechain-types/@openzeppelin/contracts/token/ERC20/ERC20.d.ts +7 -35
  22. package/dist/typechain-types/@openzeppelin/contracts/token/ERC20/IERC20.d.ts +6 -6
  23. package/dist/typechain-types/@openzeppelin/contracts/token/ERC20/extensions/ERC20Permit.d.ts +7 -35
  24. package/dist/typechain-types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.d.ts +6 -6
  25. package/dist/typechain-types/@openzeppelin/contracts/utils/Nonces.d.ts +25 -0
  26. package/dist/typechain-types/@openzeppelin/contracts/utils/Nonces.js +3 -0
  27. package/dist/typechain-types/@openzeppelin/contracts/utils/Nonces.js.map +1 -0
  28. package/dist/typechain-types/@openzeppelin/contracts/utils/Strings.d.ts +20 -0
  29. package/dist/typechain-types/@openzeppelin/contracts/utils/Strings.js +3 -0
  30. package/dist/typechain-types/@openzeppelin/contracts/utils/Strings.js.map +1 -0
  31. package/dist/typechain-types/@openzeppelin/contracts/utils/cryptography/ECDSA.d.ts +20 -0
  32. package/dist/typechain-types/@openzeppelin/contracts/utils/cryptography/ECDSA.js +3 -0
  33. package/dist/typechain-types/@openzeppelin/contracts/utils/cryptography/ECDSA.js.map +1 -0
  34. package/dist/typechain-types/@openzeppelin/contracts/utils/cryptography/index.d.ts +1 -0
  35. package/dist/typechain-types/@openzeppelin/contracts/utils/index.d.ts +4 -0
  36. package/dist/typechain-types/@openzeppelin/contracts/utils/math/Math.d.ts +20 -0
  37. package/dist/typechain-types/@openzeppelin/contracts/utils/math/Math.js +3 -0
  38. package/dist/typechain-types/@openzeppelin/contracts/utils/math/Math.js.map +1 -0
  39. package/dist/typechain-types/@openzeppelin/contracts/utils/math/index.d.ts +1 -0
  40. package/dist/typechain-types/@openzeppelin/contracts/utils/math/index.js +3 -0
  41. package/dist/typechain-types/@openzeppelin/contracts/utils/math/index.js.map +1 -0
  42. package/dist/typechain-types/contracts/interfaces/IWETH.d.ts +6 -6
  43. package/dist/typechain-types/contracts/mocks/ERC20PermitMock.d.ts +7 -35
  44. package/dist/typechain-types/contracts/mocks/TokenCustomDecimalsMock.d.ts +7 -35
  45. package/dist/typechain-types/contracts/mocks/TokenMock.d.ts +7 -35
  46. package/dist/typechain-types/contracts/tests/mocks/DaiLikePermitMock.d.ts +7 -35
  47. package/dist/typechain-types/contracts/tests/mocks/SafeERC20Helper.sol/ERC20PermitNoRevertMock.d.ts +7 -35
  48. package/dist/typechain-types/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts +16 -0
  49. package/dist/typechain-types/factories/@openzeppelin/contracts/access/Ownable__factory.js +22 -0
  50. package/dist/typechain-types/factories/@openzeppelin/contracts/access/Ownable__factory.js.map +1 -1
  51. package/dist/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC1155Errors__factory.d.ts +83 -0
  52. package/dist/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC1155Errors__factory.js +122 -0
  53. package/dist/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC1155Errors__factory.js.map +1 -0
  54. package/dist/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC20Errors__factory.d.ts +71 -0
  55. package/dist/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC20Errors__factory.js +106 -0
  56. package/dist/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC20Errors__factory.js.map +1 -0
  57. package/dist/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC721Errors__factory.d.ts +83 -0
  58. package/dist/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC721Errors__factory.js +123 -0
  59. package/dist/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC721Errors__factory.js.map +1 -0
  60. package/dist/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/index.d.ts +3 -0
  61. package/dist/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/index.js +13 -0
  62. package/dist/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/index.js.map +1 -0
  63. package/dist/typechain-types/factories/@openzeppelin/contracts/interfaces/index.d.ts +1 -0
  64. package/dist/typechain-types/factories/@openzeppelin/contracts/interfaces/index.js +3 -1
  65. package/dist/typechain-types/factories/@openzeppelin/contracts/interfaces/index.js.map +1 -1
  66. package/dist/typechain-types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.d.ts +65 -64
  67. package/dist/typechain-types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.js +84 -82
  68. package/dist/typechain-types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.js.map +1 -1
  69. package/dist/typechain-types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts +3 -3
  70. package/dist/typechain-types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.js +3 -3
  71. package/dist/typechain-types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.js.map +1 -1
  72. package/dist/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/ERC20Permit__factory.d.ts +119 -39
  73. package/dist/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/ERC20Permit__factory.js +159 -51
  74. package/dist/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/ERC20Permit__factory.js.map +1 -1
  75. package/dist/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.d.ts +3 -3
  76. package/dist/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.js +3 -3
  77. package/dist/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.js.map +1 -1
  78. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/Nonces__factory.d.ts +33 -0
  79. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/Nonces__factory.js +55 -0
  80. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/Nonces__factory.js.map +1 -0
  81. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/ShortStrings__factory.d.ts +1 -1
  82. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/ShortStrings__factory.js +1 -1
  83. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/ShortStrings__factory.js.map +1 -1
  84. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/Strings__factory.d.ts +34 -0
  85. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/Strings__factory.js +56 -0
  86. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/Strings__factory.js.map +1 -0
  87. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/ECDSA__factory.d.ts +42 -0
  88. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/ECDSA__factory.js +67 -0
  89. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/ECDSA__factory.js.map +1 -0
  90. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/index.d.ts +1 -0
  91. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/index.js +3 -1
  92. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/index.js.map +1 -1
  93. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/index.d.ts +3 -0
  94. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/index.js +6 -1
  95. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/index.js.map +1 -1
  96. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/math/Math__factory.d.ts +26 -0
  97. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/math/Math__factory.js +45 -0
  98. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/math/Math__factory.js.map +1 -0
  99. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/math/index.d.ts +1 -0
  100. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/math/index.js +9 -0
  101. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/math/index.js.map +1 -0
  102. package/dist/typechain-types/factories/contracts/GasChecker__factory.d.ts +1 -1
  103. package/dist/typechain-types/factories/contracts/GasChecker__factory.js +1 -1
  104. package/dist/typechain-types/factories/contracts/GasChecker__factory.js.map +1 -1
  105. package/dist/typechain-types/factories/contracts/interfaces/IWETH__factory.d.ts +3 -3
  106. package/dist/typechain-types/factories/contracts/interfaces/IWETH__factory.js +3 -3
  107. package/dist/typechain-types/factories/contracts/interfaces/IWETH__factory.js.map +1 -1
  108. package/dist/typechain-types/factories/contracts/libraries/AddressArray__factory.d.ts +1 -1
  109. package/dist/typechain-types/factories/contracts/libraries/AddressArray__factory.js +1 -1
  110. package/dist/typechain-types/factories/contracts/libraries/AddressArray__factory.js.map +1 -1
  111. package/dist/typechain-types/factories/contracts/libraries/RevertReasonParser__factory.d.ts +1 -1
  112. package/dist/typechain-types/factories/contracts/libraries/RevertReasonParser__factory.js +1 -1
  113. package/dist/typechain-types/factories/contracts/libraries/RevertReasonParser__factory.js.map +1 -1
  114. package/dist/typechain-types/factories/contracts/libraries/SafeERC20__factory.d.ts +1 -1
  115. package/dist/typechain-types/factories/contracts/libraries/SafeERC20__factory.js +1 -1
  116. package/dist/typechain-types/factories/contracts/libraries/SafeERC20__factory.js.map +1 -1
  117. package/dist/typechain-types/factories/contracts/libraries/UniERC20__factory.d.ts +1 -1
  118. package/dist/typechain-types/factories/contracts/libraries/UniERC20__factory.js +1 -1
  119. package/dist/typechain-types/factories/contracts/libraries/UniERC20__factory.js.map +1 -1
  120. package/dist/typechain-types/factories/contracts/mocks/ERC20PermitMock__factory.d.ts +136 -40
  121. package/dist/typechain-types/factories/contracts/mocks/ERC20PermitMock__factory.js +182 -52
  122. package/dist/typechain-types/factories/contracts/mocks/ERC20PermitMock__factory.js.map +1 -1
  123. package/dist/typechain-types/factories/contracts/mocks/TokenCustomDecimalsMock__factory.d.ts +136 -40
  124. package/dist/typechain-types/factories/contracts/mocks/TokenCustomDecimalsMock__factory.js +182 -52
  125. package/dist/typechain-types/factories/contracts/mocks/TokenCustomDecimalsMock__factory.js.map +1 -1
  126. package/dist/typechain-types/factories/contracts/mocks/TokenMock__factory.d.ts +84 -40
  127. package/dist/typechain-types/factories/contracts/mocks/TokenMock__factory.js +112 -52
  128. package/dist/typechain-types/factories/contracts/mocks/TokenMock__factory.js.map +1 -1
  129. package/dist/typechain-types/factories/contracts/tests/ECDSATest__factory.d.ts +1 -1
  130. package/dist/typechain-types/factories/contracts/tests/ECDSATest__factory.js +1 -1
  131. package/dist/typechain-types/factories/contracts/tests/ECDSATest__factory.js.map +1 -1
  132. package/dist/typechain-types/factories/contracts/tests/RevertReasonParserTest__factory.d.ts +1 -1
  133. package/dist/typechain-types/factories/contracts/tests/RevertReasonParserTest__factory.js +1 -1
  134. package/dist/typechain-types/factories/contracts/tests/RevertReasonParserTest__factory.js.map +1 -1
  135. package/dist/typechain-types/factories/contracts/tests/StringUtilTest__factory.d.ts +1 -1
  136. package/dist/typechain-types/factories/contracts/tests/StringUtilTest__factory.js +1 -1
  137. package/dist/typechain-types/factories/contracts/tests/StringUtilTest__factory.js.map +1 -1
  138. package/dist/typechain-types/factories/contracts/tests/mocks/AddressArrayMock__factory.d.ts +1 -1
  139. package/dist/typechain-types/factories/contracts/tests/mocks/AddressArrayMock__factory.js +1 -1
  140. package/dist/typechain-types/factories/contracts/tests/mocks/AddressArrayMock__factory.js.map +1 -1
  141. package/dist/typechain-types/factories/contracts/tests/mocks/AddressLibMock__factory.d.ts +1 -1
  142. package/dist/typechain-types/factories/contracts/tests/mocks/AddressLibMock__factory.js +1 -1
  143. package/dist/typechain-types/factories/contracts/tests/mocks/AddressLibMock__factory.js.map +1 -1
  144. package/dist/typechain-types/factories/contracts/tests/mocks/AddressSetMock__factory.d.ts +1 -1
  145. package/dist/typechain-types/factories/contracts/tests/mocks/AddressSetMock__factory.js +1 -1
  146. package/dist/typechain-types/factories/contracts/tests/mocks/AddressSetMock__factory.js.map +1 -1
  147. package/dist/typechain-types/factories/contracts/tests/mocks/DaiLikePermitMock__factory.d.ts +120 -40
  148. package/dist/typechain-types/factories/contracts/tests/mocks/DaiLikePermitMock__factory.js +160 -52
  149. package/dist/typechain-types/factories/contracts/tests/mocks/DaiLikePermitMock__factory.js.map +1 -1
  150. package/dist/typechain-types/factories/contracts/tests/mocks/ERC1271WalletMock__factory.d.ts +17 -1
  151. package/dist/typechain-types/factories/contracts/tests/mocks/ERC1271WalletMock__factory.js +23 -1
  152. package/dist/typechain-types/factories/contracts/tests/mocks/ERC1271WalletMock__factory.js.map +1 -1
  153. package/dist/typechain-types/factories/contracts/tests/mocks/EthReceiverMock__factory.d.ts +1 -1
  154. package/dist/typechain-types/factories/contracts/tests/mocks/EthReceiverMock__factory.js +1 -1
  155. package/dist/typechain-types/factories/contracts/tests/mocks/EthReceiverMock__factory.js.map +1 -1
  156. package/dist/typechain-types/factories/contracts/tests/mocks/EthSenderMock__factory.d.ts +1 -1
  157. package/dist/typechain-types/factories/contracts/tests/mocks/EthSenderMock__factory.js +1 -1
  158. package/dist/typechain-types/factories/contracts/tests/mocks/EthSenderMock__factory.js.map +1 -1
  159. package/dist/typechain-types/factories/contracts/tests/mocks/PermitableMock__factory.d.ts +1 -1
  160. package/dist/typechain-types/factories/contracts/tests/mocks/PermitableMock__factory.js +1 -1
  161. package/dist/typechain-types/factories/contracts/tests/mocks/PermitableMock__factory.js.map +1 -1
  162. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20NoReturnMock__factory.d.ts +1 -1
  163. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20NoReturnMock__factory.js +1 -1
  164. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20NoReturnMock__factory.js.map +1 -1
  165. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20PermitNoRevertMock__factory.d.ts +120 -40
  166. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20PermitNoRevertMock__factory.js +160 -52
  167. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20PermitNoRevertMock__factory.js.map +1 -1
  168. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ReturnFalseMock__factory.d.ts +1 -1
  169. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ReturnFalseMock__factory.js +1 -1
  170. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ReturnFalseMock__factory.js.map +1 -1
  171. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ReturnTrueMock__factory.d.ts +1 -1
  172. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ReturnTrueMock__factory.js +1 -1
  173. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ReturnTrueMock__factory.js.map +1 -1
  174. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ThroughZeroApprove__factory.d.ts +1 -1
  175. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ThroughZeroApprove__factory.js +1 -1
  176. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ThroughZeroApprove__factory.js.map +1 -1
  177. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20WithSafeBalance__factory.d.ts +1 -1
  178. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20WithSafeBalance__factory.js +1 -1
  179. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20WithSafeBalance__factory.js.map +1 -1
  180. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/Permit2ReturnTrueMock__factory.d.ts +1 -1
  181. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/Permit2ReturnTrueMock__factory.js +1 -1
  182. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/Permit2ReturnTrueMock__factory.js.map +1 -1
  183. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/SafeERC20Wrapper__factory.d.ts +1 -1
  184. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/SafeERC20Wrapper__factory.js +1 -1
  185. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/SafeERC20Wrapper__factory.js.map +1 -1
  186. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/SafeWETHWrapper__factory.d.ts +1 -1
  187. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/SafeWETHWrapper__factory.js +1 -1
  188. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/SafeWETHWrapper__factory.js.map +1 -1
  189. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20Capitals__factory.d.ts +1 -1
  190. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20Capitals__factory.js +1 -1
  191. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20Capitals__factory.js.map +1 -1
  192. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20bytes32Capitals__factory.d.ts +1 -1
  193. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20bytes32Capitals__factory.js +1 -1
  194. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20bytes32Capitals__factory.js.map +1 -1
  195. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20bytes32__factory.d.ts +1 -1
  196. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20bytes32__factory.js +1 -1
  197. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20bytes32__factory.js.map +1 -1
  198. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ETHBadReceiver__factory.d.ts +1 -1
  199. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ETHBadReceiver__factory.js +1 -1
  200. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ETHBadReceiver__factory.js.map +1 -1
  201. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/UniERC20Wrapper__factory.d.ts +1 -1
  202. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/UniERC20Wrapper__factory.js +1 -1
  203. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/UniERC20Wrapper__factory.js.map +1 -1
  204. package/dist/typechain-types/factories/contracts/tests/mocks/WETH__factory.d.ts +1 -1
  205. package/dist/typechain-types/factories/contracts/tests/mocks/WETH__factory.js +1 -1
  206. package/dist/typechain-types/factories/contracts/tests/mocks/WETH__factory.js.map +1 -1
  207. package/dist/typechain-types/factories/contracts/tests/mocks/WethReceiverMock__factory.d.ts +1 -1
  208. package/dist/typechain-types/factories/contracts/tests/mocks/WethReceiverMock__factory.js +1 -1
  209. package/dist/typechain-types/factories/contracts/tests/mocks/WethReceiverMock__factory.js.map +1 -1
  210. package/dist/typechain-types/index.d.ts +14 -0
  211. package/dist/typechain-types/index.js +16 -2
  212. package/dist/typechain-types/index.js.map +1 -1
  213. package/package.json +2 -2
@@ -14,7 +14,7 @@ export declare class ERC20NoReturnMock__factory extends ContractFactory {
14
14
  deploymentTransaction(): ContractTransactionResponse;
15
15
  }>;
16
16
  connect(runner: ContractRunner | null): ERC20NoReturnMock__factory;
17
- static readonly bytecode = "0x6080806040523461001657610226908161001c8239f35b600080fdfe6080806040526004361015610014575b600080fd5b600090813560e01c908163095ea7b31461015f57816323b872dd146101165781633ba93f26146100d057508063a9059cbb146100c65763dd62ed3e1461005957600080fd5b346100c35760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100c357604060209173ffffffffffffffffffffffffffffffffffffffff6100aa61016a565b6100b261018d565b501681528083522054604051908152f35b80fd5b505061000f6101b0565b9050346101125760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261011257338252816020526004356040832055f35b5080fd5b9050346101125760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101125761014f61016a565b5061015861018d565b5081600155f35b50505061000f6101b0565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361000f57565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361000f57565b503461000f5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261000f576101e861016a565b50600060015500fea26469706673582212200fd3bdab1285bc90b3c1bc8e025b574c5f817a6783393aaeadf3c21c5e63ad9a64736f6c634300080f0033";
17
+ static readonly bytecode = "0x6080806040523461001657610200908161001b8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c8063095ea7b3146100bf57806323b872dd146101065780633ba93f26146100c4578063a9059cbb146100bf5763dd62ed3e14610050575f80fd5b346100bb5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100bb5773ffffffffffffffffffffffffffffffffffffffff61009c61014d565b6100a4610170565b50165f525f602052602060405f2054604051908152f35b5f80fd5b610193565b346100bb5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100bb57335f525f60205260043560405f20555f80f35b346100bb5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100bb5761013d61014d565b50610146610170565b505f600155005b6004359073ffffffffffffffffffffffffffffffffffffffff821682036100bb57565b6024359073ffffffffffffffffffffffffffffffffffffffff821682036100bb57565b346100bb5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100bb5761014661014d56fea2646970667358221220a5c238d31d2f5b1460d8bdb99e470c06accd27acf94ed7e7cc2cc0e9ce1f72b364736f6c63430008170033";
18
18
  static readonly abi: readonly [{
19
19
  readonly inputs: readonly [{
20
20
  readonly internalType: "address";
@@ -103,7 +103,7 @@ const _abi = [
103
103
  type: "function",
104
104
  },
105
105
  ];
106
- const _bytecode = "0x6080806040523461001657610226908161001c8239f35b600080fdfe6080806040526004361015610014575b600080fd5b600090813560e01c908163095ea7b31461015f57816323b872dd146101165781633ba93f26146100d057508063a9059cbb146100c65763dd62ed3e1461005957600080fd5b346100c35760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100c357604060209173ffffffffffffffffffffffffffffffffffffffff6100aa61016a565b6100b261018d565b501681528083522054604051908152f35b80fd5b505061000f6101b0565b9050346101125760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261011257338252816020526004356040832055f35b5080fd5b9050346101125760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101125761014f61016a565b5061015861018d565b5081600155f35b50505061000f6101b0565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361000f57565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361000f57565b503461000f5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261000f576101e861016a565b50600060015500fea26469706673582212200fd3bdab1285bc90b3c1bc8e025b574c5f817a6783393aaeadf3c21c5e63ad9a64736f6c634300080f0033";
106
+ const _bytecode = "0x6080806040523461001657610200908161001b8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c8063095ea7b3146100bf57806323b872dd146101065780633ba93f26146100c4578063a9059cbb146100bf5763dd62ed3e14610050575f80fd5b346100bb5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100bb5773ffffffffffffffffffffffffffffffffffffffff61009c61014d565b6100a4610170565b50165f525f602052602060405f2054604051908152f35b5f80fd5b610193565b346100bb5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100bb57335f525f60205260043560405f20555f80f35b346100bb5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100bb5761013d61014d565b50610146610170565b505f600155005b6004359073ffffffffffffffffffffffffffffffffffffffff821682036100bb57565b6024359073ffffffffffffffffffffffffffffffffffffffff821682036100bb57565b346100bb5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100bb5761014661014d56fea2646970667358221220a5c238d31d2f5b1460d8bdb99e470c06accd27acf94ed7e7cc2cc0e9ce1f72b364736f6c63430008170033";
107
107
  const isSuperArgs = (xs) => xs.length > 1;
108
108
  class ERC20NoReturnMock__factory extends ethers_1.ContractFactory {
109
109
  constructor(...args) {
@@ -1 +1 @@
1
- {"version":3,"file":"ERC20NoReturnMock__factory.js","sourceRoot":"","sources":["../../../../../../../typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20NoReturnMock__factory.ts"],"names":[],"mappings":";;;AAAA,+CAA+C;AAC/C,oBAAoB;AACpB,oBAAoB;AACpB,mCAKgB;AAQhB,MAAM,IAAI,GAAG;IACX;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,WAAW;QACjB,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,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,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;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;CACO,CAAC;AAEX,MAAM,SAAS,GACb,woCAAwoC,CAAC;AAM3oC,MAAM,WAAW,GAAG,CAClB,EAAsC,EACe,EAAE,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAExE,MAAa,0BAA2B,SAAQ,wBAAe;IAC7D,YAAY,GAAG,IAAwC;QACrD,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE;YACrB,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;SAChB;aAAM;YACL,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;SACjC;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,CAA+B,CAAC;IAC7D,CAAC;IAID,MAAM,CAAC,eAAe;QACpB,OAAO,IAAI,kBAAS,CAAC,IAAI,CAA+B,CAAC;IAC3D,CAAC;IACD,MAAM,CAAC,OAAO,CACZ,OAAe,EACf,MAA8B;QAE9B,OAAO,IAAI,iBAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAiC,CAAC;IAC7E,CAAC;;AAnCH,gEAoCC;AAXiB,mCAAQ,GAAG,SAAS,CAAC;AACrB,8BAAG,GAAG,IAAI,CAAC"}
1
+ {"version":3,"file":"ERC20NoReturnMock__factory.js","sourceRoot":"","sources":["../../../../../../../typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20NoReturnMock__factory.ts"],"names":[],"mappings":"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"}
@@ -14,8 +14,124 @@ export declare class ERC20PermitNoRevertMock__factory extends ContractFactory {
14
14
  deploymentTransaction(): ContractTransactionResponse;
15
15
  }>;
16
16
  connect(runner: ContractRunner | null): ERC20PermitNoRevertMock__factory;
17
- static readonly bytecode = "0x610160604090808252346200043357620000198162000438565b601781526020908181017f45524332305065726d69744e6f5265766572744d6f636b00000000000000000093848252805193620000568562000438565b6017855285818601528151956200006d8762000438565b6017875281870152815191620000838362000438565b6001808452603160f81b83850190815287516001600160401b03989192919089811162000333576003908154928484811c9416801562000428575b8885101462000412578190601f94858111620003bc575b508890858311600114620003555760009262000349575b505060001982841b1c191690841b1781555b8a51918a8311620003335760049b8c548581811c9116801562000328575b898210146200031357828111620002c8575b50879184116001146200025d5793839491849260009562000251575b50501b92600019911b1c19161788555b620001658662000454565b94610120958652620001778562000626565b96610140978852519020938460e05251902096610100978089524660a0528251938401947f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f86528385015260608401524660808401523060a084015260a0835260c0830196838810908811176200023c57508590525190206080523060c0526118389384620007de8539608051846112ef015260a051846113bb015260c051846112c0015260e0518461133e01525183611364015251826106f20152518161071c0152f35b604190634e487b7160e01b6000525260246000fd5b0151935038806200014a565b9190601f198416928d60005284896000209460005b8b89838310620002b0575050501062000295575b50505050811b0188556200015a565b01519060f884600019921b161c191690553880808062000286565b86860151895590970196948501948893500162000272565b8d600052886000208380870160051c8201928b881062000309575b0160051c019086905b828110620002fc5750506200012e565b60008155018690620002ec565b92508192620002e3565b60228e634e487b7160e01b6000525260246000fd5b90607f16906200011c565b634e487b7160e01b600052604160045260246000fd5b015190503880620000ec565b90869350601f19831691856000528a6000209260005b8c828210620003a557505084116200038c575b505050811b018155620000fe565b015160001983861b60f8161c191690553880806200037e565b8385015186558a979095019493840193016200036b565b90915083600052886000208580850160051c8201928b861062000408575b918891869594930160051c01915b828110620003f8575050620000d5565b60008155859450889101620003e8565b92508192620003da565b634e487b7160e01b600052602260045260246000fd5b93607f1693620000be565b600080fd5b604081019081106001600160401b038211176200033357604052565b8051602091908281101562000501575090601f8251116200049257808251920151908083106200048357501790565b82600019910360031b1b161790565b90604051809263305a27a960e01b82528060048301528251928360248401526000915b848310620004e7575050918060449311620004d9575b601f01601f19168101030190fd5b6000838284010152620004cb565b8183018101518684016044015285935091820191620004b5565b6001600160401b03811162000333576005928354926001938481811c911680156200061b575b838210146200041257601f8111620005e4575b5081601f84116001146200057a57509282939183926000946200056e575b50501b916000199060031b1c191617905560ff90565b01519250388062000558565b919083601f1981168760005284600020946000905b88838310620005c95750505010620005af575b505050811b01905560ff90565b015160001960f88460031b161c19169055388080620005a2565b8587015188559096019594850194879350908101906200058f565b8560005284601f846000209201871c820191601f8601881c015b8281106200060e5750506200053a565b60008155018590620005fe565b90607f169062000527565b805160209081811015620006b35750601f8251116200065357808251920151908083106200048357501790565b90604051809263305a27a960e01b82528060048301528251928360248401526000915b84831062000699575050918060449311620004d957601f01601f19168101030190fd5b818301810151868401604401528593509182019162000676565b906001600160401b0382116200033357600654926001938481811c91168015620007d2575b838210146200041257601f811162000798575b5081601f84116001146200072c575092829391839260009462000720575b50501b916000199060031b1c19161760065560ff90565b01519250388062000709565b919083601f198116600660005284600020946000905b888383106200077d575050501062000763575b505050811b0160065560ff90565b015160001960f88460031b161c1916905538808062000755565b85870151885590960195948501948793509081019062000742565b600660005284601f84600020920160051c820191601f860160051c015b828110620007c5575050620006eb565b60008155018590620007b5565b90607f1690620006d856fe608060408181526004918236101561001657600080fd5b600092833560e01c91826306fdde0314610c0557508163095ea7b314610bbd57816318160ddd14610b8057816323b872dd14610a52578163313ce56714610a185781633408e470146109df5781633644e5151461099d57816339509351146108f057816370a082311461088f5781637ecebe001461082d57816384b0196e146106bc57816395d89b411461059157816396a9fc311461038e578163a457c2d714610288578163a9059cbb14610239578163d505accf14610159575063dd62ed3e146100e057600080fd5b3461015557807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261015557602091610119610d81565b82610122610da9565b9273ffffffffffffffffffffffffffffffffffffffff809316815260018652209116600052825280600020549051908152f35b5080fd5b839150346101555761016a36610dcc565b949695939093929192303b156102355789517f96a9fc3100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff91821688820152971660248801526044870152606486015260ff16608485015260a484015260c4830152828260e48183305af16101f057828451f35b67ffffffffffffffff8211610209575082528280828451f35b8260416024927f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b8880fd5b50503461015557807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261015557602090610281610277610d81565b6024359033610f25565b5160018152f35b9050823461038b57827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261038b576102c1610d81565b918360243592338152600160205281812073ffffffffffffffffffffffffffffffffffffffff86168252602052205490828210610308576020856102818585038733611134565b60849060208651917f08c379a0000000000000000000000000000000000000000000000000000000008352820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f0000000000000000000000000000000000000000000000000000006064820152fd5b80fd5b8383346101555761039e36610dcc565b90839994969942116105345773ffffffffffffffffffffffffffffffffffffffff92838b1694858b526007602052898b20908154916001830190558a519060208201927f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98452888d840152878b1660608401528b608084015260a083015260c082015260c0815260e0810181811067ffffffffffffffff8211176105085761048e94926104969694926042928e525190206104576112a9565b908d51917f190100000000000000000000000000000000000000000000000000000000000083526002830152602282015220611766565b9190916115cd565b16036104ab57506104a8929394611134565b51f35b60649060208551917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e617475726500006044820152fd5b60248d60418b7f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b60648560208a51917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e650000006044820152fd5b919050346106b857827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126106b857805191838154906105d282610e46565b8086529260019280841690811561066f5750600114610613575b61060f86866105fd828b0383610ee4565b51918291602083526020830190610d12565b0390f35b815294507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b828610610657575050506105fd82602061060f9582010194386105ec565b80546020878701810191909152909501948101610639565b61060f9850879450602093506105fd9592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b82010194386105ec565b8280fd5b919050346106b857827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126106b8576107167f00000000000000000000000000000000000000000000000000000000000000006113e1565b926107407f0000000000000000000000000000000000000000000000000000000000000000611513565b908251926020928385019585871067ffffffffffffffff881117610801575092806107b78388966107aa998b9996528686528151998a997f0f000000000000000000000000000000000000000000000000000000000000008b5260e0868c015260e08b0190610d12565b91898303908a0152610d12565b924660608801523060808801528460a088015286840360c088015251928381520193925b8281106107ea57505050500390f35b8351855286955093810193928101926001016107db565b8360416024927f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b5050346101555760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610155578060209273ffffffffffffffffffffffffffffffffffffffff61087f610d81565b1681526007845220549051908152f35b5050346101555760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610155578060209273ffffffffffffffffffffffffffffffffffffffff6108e1610d81565b16815280845220549051908152f35b82843461038b57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261038b57610928610d81565b9060243590338152600160205283812073ffffffffffffffffffffffffffffffffffffffff84168252602052838120549082198211610971576020856102818486018733611134565b806011877f4e487b71000000000000000000000000000000000000000000000000000000006024945252fd5b50503461015557817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610155576020906109d86112a9565b9051908152f35b50503461015557817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101555760209051468152f35b50503461015557817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610155576020905160128152f35b839150346101555760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261015557610a8c610d81565b610a94610da9565b91846044359473ffffffffffffffffffffffffffffffffffffffff8416815260016020528181203382526020522054907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610afa575b602086610281878787610f25565b848210610b235750918391610b186020969561028195033383611134565b919394819350610aec565b60649060208751917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152fd5b50503461015557817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610155576020906002549051908152f35b50503461015557807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261015557602090610281610bfb610d81565b6024359033611134565b849084346106b857827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126106b85782600354610c4381610e46565b80855291600191808316908115610ccc5750600114610c6f575b5050506105fd8261060f940383610ee4565b9450600385527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b828610610cb4575050506105fd82602061060f9582010194610c5d565b80546020878701810191909152909501948101610c97565b61060f9750869350602092506105fd9491507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001682840152151560051b82010194610c5d565b91908251928382526000905b848210610d695750601f84602094957fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09311610d5c575b0116010190565b6000858286010152610d55565b90602090818082850101519082860101520190610d1e565b6004359073ffffffffffffffffffffffffffffffffffffffff82168203610da457565b600080fd5b6024359073ffffffffffffffffffffffffffffffffffffffff82168203610da457565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc60e0910112610da45773ffffffffffffffffffffffffffffffffffffffff906004358281168103610da457916024359081168103610da45790604435906064359060843560ff81168103610da4579060a4359060c43590565b90600182811c92168015610e8f575b6020831014610e6057565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b91607f1691610e55565b6040810190811067ffffffffffffffff821117610eb557604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff821117610eb557604052565b73ffffffffffffffffffffffffffffffffffffffff8091169182156110b0571691821561102c57600082815280602052604081205491808310610fa857604082827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef958760209652828652038282205586815220818154019055604051908152a3565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e636500000000000000000000000000000000000000000000000000006064820152fd5b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152fd5b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152fd5b73ffffffffffffffffffffffffffffffffffffffff80911691821561122657169182156111a25760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260018252604060002085600052825280604060002055604051908152a3565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152fd5b60846040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152fd5b73ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000163014806113b8575b15611311577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a0815260c0810181811067ffffffffffffffff821117610eb55760405251902090565b507f000000000000000000000000000000000000000000000000000000000000000046146112e8565b60ff81146114375760ff811690601f821161140d576040519161140383610e99565b8252602082015290565b60046040517fb3512b0c000000000000000000000000000000000000000000000000000000008152fd5b5060405160055481600061144a83610e46565b808352926001908181169081156114d35750600114611474575b5061147192500382610ee4565b90565b6005600090815291507f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db05b8483106114b85750611471935050810160200138611464565b8193509081602092548385890101520191019091849261149f565b602093506114719592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b82010138611464565b60ff81146115355760ff811690601f821161140d576040519161140383610e99565b5060405160065481600061154883610e46565b808352926001908181169081156114d3575060011461156e575061147192500382610ee4565b6006600090815291507ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f5b8483106115b25750611471935050810160200138611464565b81935090816020925483858901015201910190918492611599565b600581101561173757806115de5750565b600181036116445760646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152fd5b600281036116aa5760646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152fd5b6003146116b357565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b9291907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083116117f65791608094939160ff602094604051948552168484015260408301526060820152600093849182805260015afa156117e957815173ffffffffffffffffffffffffffffffffffffffff8116156117e3579190565b50600190565b50604051903d90823e3d90fd5b5050505060009060039056fea26469706673582212203a0cb641832b4b5a56c7b5913dde88581e724f7f223abfe292f436c9a3f3e01164736f6c634300080f0033";
17
+ static readonly bytecode = "0x61016060409080825234620004195762000019816200041d565b601781526020908181017f45524332305065726d69744e6f5265766572744d6f636b0000000000000000009384825280519362000056856200041d565b6017855285818601528151956200006d876200041d565b601787528187015281519162000083836200041d565b6001808452603160f81b83850190815287516001600160401b03989192919089811162000324576003908154928484811c941680156200040e575b88851014620003fa578190601f94858111620003a7575b50889085831160011462000344575f9262000338575b50505f1982841b1c191690841b1781555b8a51918a8311620003245760049b8c548581811c9116801562000319575b898210146200030657828111620002be575b508791841160011462000257579383949184925f956200024b575b50501b925f19911b1c19161788555b620001618662000439565b946101209586526200017385620005f1565b96610140978852519020938460e05251902096610100978089524660a0528251938401947f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f86528385015260608401524660808401523060a084015260a0835260c0830196838810908811176200023857508590525190206080523060c0526113ee93846200079f853960805184610e88015260a05184610f54015260c05184610e59015260e05184610ed701525183610efd015251826105730152518161059d0152f35b604190634e487b7160e01b5f525260245ffd5b015193505f8062000147565b9190601f198416928d5f5284895f20945f5b8b89838310620002a657505050106200028c575b50505050811b01885562000156565b01519060f8845f19921b161c191690555f8080806200027d565b86860151895590970196948501948893500162000269565b8d5f52885f208380870160051c8201928b8810620002fc575b0160051c019086905b828110620002f05750506200012c565b5f8155018690620002e0565b92508192620002d7565b60228e634e487b7160e01b5f525260245ffd5b90607f16906200011a565b634e487b7160e01b5f52604160045260245ffd5b015190505f80620000eb565b90869350601f19831691855f528a5f20925f5b8c82821062000390575050841162000378575b505050811b018155620000fc565b01515f1983861b60f8161c191690555f80806200036a565b8385015186558a9790950194938401930162000357565b909150835f52885f208580850160051c8201928b8610620003f0575b918891869594930160051c01915b828110620003e1575050620000d5565b5f8155859450889101620003d1565b92508192620003c3565b634e487b7160e01b5f52602260045260245ffd5b93607f1693620000be565b5f80fd5b604081019081106001600160401b038211176200032457604052565b80516020919082811015620004d5575090601f8251116200047657808251920151908083106200046857501790565b825f19910360031b1b161790565b90604051809263305a27a960e01b82528060048301528251908160248401525f935b828510620004bb575050604492505f838284010152601f80199101168101030190fd5b848101820151868601604401529381019385935062000498565b6001600160401b03811162000324576005928354926001938481811c91168015620005e6575b83821014620003fa57601f8111620005b2575b5081601f84116001146200054c57509282939183925f9462000540575b50501b915f199060031b1c191617905560ff90565b015192505f806200052b565b919083601f198116875f52845f20945f905b888383106200059757505050106200057e575b505050811b01905560ff90565b01515f1960f88460031b161c191690555f808062000571565b8587015188559096019594850194879350908101906200055e565b855f5284601f845f209201871c820191601f8601881c015b828110620005da5750506200050e565b5f8155018590620005ca565b90607f1690620004fb565b8051602090818110156200067d5750601f8251116200061e57808251920151908083106200046857501790565b90604051809263305a27a960e01b82528060048301528251908160248401525f935b82851062000663575050604492505f838284010152601f80199101168101030190fd5b848101820151868601604401529381019385935062000640565b906001600160401b0382116200032457600654926001938481811c9116801562000793575b83821014620003fa57601f81116200075c575b5081601f8411600114620006f457509282939183925f94620006e8575b50501b915f199060031b1c19161760065560ff90565b015192505f80620006d2565b919083601f19811660065f52845f20945f905b8883831062000741575050501062000728575b505050811b0160065560ff90565b01515f1960f88460031b161c191690555f80806200071a565b85870151885590960195948501948793509081019062000707565b60065f5284601f845f20920160051c820191601f860160051c015b82811062000787575050620006b5565b5f815501859062000777565b90607f1690620006a256fe6080604081815260049182361015610015575f80fd5b5f925f3560e01c91826306fdde0314610a0357508163095ea7b3146109bc57816318160ddd1461098057816323b872dd146107f8578163313ce567146107bf5781633408e470146107875781633644e5151461074657816370a08231146106e55781637ecebe001461068357816384b0196e1461053e57816395d89b411461041657816396a9fc3114610267578163a9059cbb14610219578163d505accf1461013e575063dd62ed3e146100c7575f80fd5b3461013a57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261013a57602091610100610b6a565b82610109610b8d565b9273ffffffffffffffffffffffffffffffffffffffff8093168152600186522091165f528252805f20549051908152f35b5080fd5b919050346102155761014f36610bb0565b949795929093303b156102155760ff938851997f96a9fc31000000000000000000000000000000000000000000000000000000008b5273ffffffffffffffffffffffffffffffffffffffff809216898c01521660248a01526044890152606488015216608486015260a485015260c48401525f8360e48183305af16101d2578380f35b9091925067ffffffffffffffff83116101e9575052005b6041907f4e487b71000000000000000000000000000000000000000000000000000000005f525260245ffd5b5f80fd5b823461021557807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021557602090610260610256610b6a565b6024359033610d05565b5160018152f35b9050346102155761027736610bb0565b908397949796959642116103e75773ffffffffffffffffffffffffffffffffffffffff928984881695865f526007602052815f20908154916001830190558251918860208401947f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98652840152878c1660608401528c608084015260a083015260c082015260c0815260e0810181811067ffffffffffffffff8211176103bb578c61036995936103729795936042938352519020610333610e42565b9151917f190100000000000000000000000000000000000000000000000000000000000083526002830152602282015220611239565b909291926112d3565b1681810361038757610385868686610f7a565b005b604493508651927f4b800e460000000000000000000000000000000000000000000000000000000084528301526024820152fd5b6041897f4e487b71000000000000000000000000000000000000000000000000000000005f525260245ffd5b602485858b51917f62791302000000000000000000000000000000000000000000000000000000008352820152fd5b905034610215575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021557815191825f835461045681610c2a565b90818452602095600191876001821691825f146104f957505060011461049d575b505050610499929161048a910385610cc4565b51928284938452830190610b0e565b0390f35b5f90815286935091907f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8284106104e1575050508201018161048a610499610477565b8054848a0186015288955087949093019281016104c8565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168782015293151560051b8601909301935084925061048a91506104999050610477565b905034610215575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610215576105977f0000000000000000000000000000000000000000000000000000000000000000611044565b916105c17f000000000000000000000000000000000000000000000000000000000000000061117c565b815191602091602084019484861067ffffffffffffffff8711176101e95750610638826020928761062b99989795525f855281519889987f0f000000000000000000000000000000000000000000000000000000000000008a5260e0868b015260e08a0190610b0e565b9188830390890152610b0e565b914660608701523060808701525f60a087015285830360c087015251918281520192915f5b82811061066c57505050500390f35b83518552869550938101939281019260010161065d565b82346102155760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102155760209073ffffffffffffffffffffffffffffffffffffffff6106d3610b6a565b165f5260078252805f20549051908152f35b82346102155760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102155760209073ffffffffffffffffffffffffffffffffffffffff610735610b6a565b165f525f8252805f20549051908152f35b8234610215575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021557602090610780610e42565b9051908152f35b8234610215575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102155760209051468152f35b8234610215575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610215576020905160128152f35b9050346102155760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021557610831610b6a565b610839610b8d565b906044359273ffffffffffffffffffffffffffffffffffffffff8216805f526001602052855f20335f52602052855f2054917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83036108a1575b602087610260888888610d05565b85831061093b57811561090c5733156108dd57505f90815260016020908152868220338352815290869020918590039091558290610260610893565b6024905f8851917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b6024905f8851917fe602df05000000000000000000000000000000000000000000000000000000008352820152fd5b86517ffb8f41b2000000000000000000000000000000000000000000000000000000008152339181019182526020820193909352604081018690528291506060010390fd5b8234610215575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610215576020906002549051908152f35b823461021557807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610215576020906102606109f9610b6a565b6024359033610f7a565b8334610215575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102155760035490825f610a4184610c2a565b808352602094600190866001821691825f14610ace575050600114610a73575b5050610499929161048a910385610cc4565b9085925060035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b915f925b828410610ab6575050508201018161048a610a61565b8054848a018601528895508794909301928101610aa0565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168682015292151560051b8501909201925083915061048a9050610a61565b91908251928382525f5b848110610b565750507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f845f6020809697860101520116010190565b602081830181015184830182015201610b18565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361021557565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361021557565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc60e09101126102155773ffffffffffffffffffffffffffffffffffffffff906004358281168103610215579160243590811681036102155790604435906064359060843560ff81168103610215579060a4359060c43590565b90600182811c92168015610c71575b6020831014610c4457565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f1691610c39565b6040810190811067ffffffffffffffff821117610c9757604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff821117610c9757604052565b9173ffffffffffffffffffffffffffffffffffffffff808416928315610e125716928315610de257825f525f60205260405f205490828210610d8a5750817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f5260405f20818154019055604051908152a3565b6040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff919091166004820152602481019190915260448101829052606490fd5b60246040517fec442f050000000000000000000000000000000000000000000000000000000081525f6004820152fd5b60246040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f6004820152fd5b73ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016301480610f51575b15610eaa577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a0815260c0810181811067ffffffffffffffff821117610c975760405251902090565b507f00000000000000000000000000000000000000000000000000000000000000004614610e81565b73ffffffffffffffffffffffffffffffffffffffff8091169182156110145716918215610fe45760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a3565b60246040517f94280d620000000000000000000000000000000000000000000000000000000081525f6004820152fd5b60246040517fe602df050000000000000000000000000000000000000000000000000000000081525f6004820152fd5b60ff811461109a5760ff811690601f8211611070576040519161106683610c7b565b8252602082015290565b60046040517fb3512b0c000000000000000000000000000000000000000000000000000000008152fd5b50604051600554815f6110ac83610c2a565b8083529260209060019081811690811561113957506001146110da575b50506110d792500382610cc4565b90565b91509260055f527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0935f925b82841061112157506110d79450505081016020015f806110c9565b85548785018301529485019486945092810192611106565b9050602093506110d79592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b8201015f806110c9565b60ff811461119e5760ff811690601f8211611070576040519161106683610c7b565b50604051600654815f6111b083610c2a565b8083529260209060019081811690811561113957506001146111da5750506110d792500382610cc4565b91509260065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f935f925b82841061122157506110d79450505081016020015f806110c9565b85548785018301529485019486945092810192611206565b91907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084116112c8579160209360809260ff5f9560405194855216868401526040830152606082015282805260015afa156112bd575f5173ffffffffffffffffffffffffffffffffffffffff8116156112b357905f905f90565b505f906001905f90565b6040513d5f823e3d90fd5b5050505f9160039190565b600481101561138b57806112e5575050565b600181036113175760046040517ff645eedf000000000000000000000000000000000000000000000000000000008152fd5b6002810361135057602482604051907ffce698f70000000000000000000000000000000000000000000000000000000082526004820152fd5b60031461135a5750565b602490604051907fd78bce0c0000000000000000000000000000000000000000000000000000000082526004820152fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffdfea2646970667358221220ec3271d4a67d4179c91f60ed9bfbc8b57b0bffcbcfc6577e0ce22cb3d5d47e7a64736f6c63430008170033";
18
18
  static readonly abi: readonly [{
19
+ readonly inputs: readonly [];
20
+ readonly name: "ECDSAInvalidSignature";
21
+ readonly type: "error";
22
+ }, {
23
+ readonly inputs: readonly [{
24
+ readonly internalType: "uint256";
25
+ readonly name: "length";
26
+ readonly type: "uint256";
27
+ }];
28
+ readonly name: "ECDSAInvalidSignatureLength";
29
+ readonly type: "error";
30
+ }, {
31
+ readonly inputs: readonly [{
32
+ readonly internalType: "bytes32";
33
+ readonly name: "s";
34
+ readonly type: "bytes32";
35
+ }];
36
+ readonly name: "ECDSAInvalidSignatureS";
37
+ readonly type: "error";
38
+ }, {
39
+ readonly inputs: readonly [{
40
+ readonly internalType: "address";
41
+ readonly name: "spender";
42
+ readonly type: "address";
43
+ }, {
44
+ readonly internalType: "uint256";
45
+ readonly name: "allowance";
46
+ readonly type: "uint256";
47
+ }, {
48
+ readonly internalType: "uint256";
49
+ readonly name: "needed";
50
+ readonly type: "uint256";
51
+ }];
52
+ readonly name: "ERC20InsufficientAllowance";
53
+ readonly type: "error";
54
+ }, {
55
+ readonly inputs: readonly [{
56
+ readonly internalType: "address";
57
+ readonly name: "sender";
58
+ readonly type: "address";
59
+ }, {
60
+ readonly internalType: "uint256";
61
+ readonly name: "balance";
62
+ readonly type: "uint256";
63
+ }, {
64
+ readonly internalType: "uint256";
65
+ readonly name: "needed";
66
+ readonly type: "uint256";
67
+ }];
68
+ readonly name: "ERC20InsufficientBalance";
69
+ readonly type: "error";
70
+ }, {
71
+ readonly inputs: readonly [{
72
+ readonly internalType: "address";
73
+ readonly name: "approver";
74
+ readonly type: "address";
75
+ }];
76
+ readonly name: "ERC20InvalidApprover";
77
+ readonly type: "error";
78
+ }, {
79
+ readonly inputs: readonly [{
80
+ readonly internalType: "address";
81
+ readonly name: "receiver";
82
+ readonly type: "address";
83
+ }];
84
+ readonly name: "ERC20InvalidReceiver";
85
+ readonly type: "error";
86
+ }, {
87
+ readonly inputs: readonly [{
88
+ readonly internalType: "address";
89
+ readonly name: "sender";
90
+ readonly type: "address";
91
+ }];
92
+ readonly name: "ERC20InvalidSender";
93
+ readonly type: "error";
94
+ }, {
95
+ readonly inputs: readonly [{
96
+ readonly internalType: "address";
97
+ readonly name: "spender";
98
+ readonly type: "address";
99
+ }];
100
+ readonly name: "ERC20InvalidSpender";
101
+ readonly type: "error";
102
+ }, {
103
+ readonly inputs: readonly [{
104
+ readonly internalType: "uint256";
105
+ readonly name: "deadline";
106
+ readonly type: "uint256";
107
+ }];
108
+ readonly name: "ERC2612ExpiredSignature";
109
+ readonly type: "error";
110
+ }, {
111
+ readonly inputs: readonly [{
112
+ readonly internalType: "address";
113
+ readonly name: "signer";
114
+ readonly type: "address";
115
+ }, {
116
+ readonly internalType: "address";
117
+ readonly name: "owner";
118
+ readonly type: "address";
119
+ }];
120
+ readonly name: "ERC2612InvalidSigner";
121
+ readonly type: "error";
122
+ }, {
123
+ readonly inputs: readonly [{
124
+ readonly internalType: "address";
125
+ readonly name: "account";
126
+ readonly type: "address";
127
+ }, {
128
+ readonly internalType: "uint256";
129
+ readonly name: "currentNonce";
130
+ readonly type: "uint256";
131
+ }];
132
+ readonly name: "InvalidAccountNonce";
133
+ readonly type: "error";
134
+ }, {
19
135
  readonly inputs: readonly [];
20
136
  readonly name: "InvalidShortString";
21
137
  readonly type: "error";
@@ -107,7 +223,7 @@ export declare class ERC20PermitNoRevertMock__factory extends ContractFactory {
107
223
  readonly type: "address";
108
224
  }, {
109
225
  readonly internalType: "uint256";
110
- readonly name: "amount";
226
+ readonly name: "value";
111
227
  readonly type: "uint256";
112
228
  }];
113
229
  readonly name: "approve";
@@ -142,24 +258,6 @@ export declare class ERC20PermitNoRevertMock__factory extends ContractFactory {
142
258
  }];
143
259
  readonly stateMutability: "view";
144
260
  readonly type: "function";
145
- }, {
146
- readonly inputs: readonly [{
147
- readonly internalType: "address";
148
- readonly name: "spender";
149
- readonly type: "address";
150
- }, {
151
- readonly internalType: "uint256";
152
- readonly name: "subtractedValue";
153
- readonly type: "uint256";
154
- }];
155
- readonly name: "decreaseAllowance";
156
- readonly outputs: readonly [{
157
- readonly internalType: "bool";
158
- readonly name: "";
159
- readonly type: "bool";
160
- }];
161
- readonly stateMutability: "nonpayable";
162
- readonly type: "function";
163
261
  }, {
164
262
  readonly inputs: readonly [];
165
263
  readonly name: "eip712Domain";
@@ -204,24 +302,6 @@ export declare class ERC20PermitNoRevertMock__factory extends ContractFactory {
204
302
  }];
205
303
  readonly stateMutability: "view";
206
304
  readonly type: "function";
207
- }, {
208
- readonly inputs: readonly [{
209
- readonly internalType: "address";
210
- readonly name: "spender";
211
- readonly type: "address";
212
- }, {
213
- readonly internalType: "uint256";
214
- readonly name: "addedValue";
215
- readonly type: "uint256";
216
- }];
217
- readonly name: "increaseAllowance";
218
- readonly outputs: readonly [{
219
- readonly internalType: "bool";
220
- readonly name: "";
221
- readonly type: "bool";
222
- }];
223
- readonly stateMutability: "nonpayable";
224
- readonly type: "function";
225
305
  }, {
226
306
  readonly inputs: readonly [];
227
307
  readonly name: "name";
@@ -341,7 +421,7 @@ export declare class ERC20PermitNoRevertMock__factory extends ContractFactory {
341
421
  readonly type: "address";
342
422
  }, {
343
423
  readonly internalType: "uint256";
344
- readonly name: "amount";
424
+ readonly name: "value";
345
425
  readonly type: "uint256";
346
426
  }];
347
427
  readonly name: "transfer";
@@ -363,7 +443,7 @@ export declare class ERC20PermitNoRevertMock__factory extends ContractFactory {
363
443
  readonly type: "address";
364
444
  }, {
365
445
  readonly internalType: "uint256";
366
- readonly name: "amount";
446
+ readonly name: "value";
367
447
  readonly type: "uint256";
368
448
  }];
369
449
  readonly name: "transferFrom";
@@ -6,6 +6,162 @@ exports.ERC20PermitNoRevertMock__factory = void 0;
6
6
  /* eslint-disable */
7
7
  const ethers_1 = require("ethers");
8
8
  const _abi = [
9
+ {
10
+ inputs: [],
11
+ name: "ECDSAInvalidSignature",
12
+ type: "error",
13
+ },
14
+ {
15
+ inputs: [
16
+ {
17
+ internalType: "uint256",
18
+ name: "length",
19
+ type: "uint256",
20
+ },
21
+ ],
22
+ name: "ECDSAInvalidSignatureLength",
23
+ type: "error",
24
+ },
25
+ {
26
+ inputs: [
27
+ {
28
+ internalType: "bytes32",
29
+ name: "s",
30
+ type: "bytes32",
31
+ },
32
+ ],
33
+ name: "ECDSAInvalidSignatureS",
34
+ type: "error",
35
+ },
36
+ {
37
+ inputs: [
38
+ {
39
+ internalType: "address",
40
+ name: "spender",
41
+ type: "address",
42
+ },
43
+ {
44
+ internalType: "uint256",
45
+ name: "allowance",
46
+ type: "uint256",
47
+ },
48
+ {
49
+ internalType: "uint256",
50
+ name: "needed",
51
+ type: "uint256",
52
+ },
53
+ ],
54
+ name: "ERC20InsufficientAllowance",
55
+ type: "error",
56
+ },
57
+ {
58
+ inputs: [
59
+ {
60
+ internalType: "address",
61
+ name: "sender",
62
+ type: "address",
63
+ },
64
+ {
65
+ internalType: "uint256",
66
+ name: "balance",
67
+ type: "uint256",
68
+ },
69
+ {
70
+ internalType: "uint256",
71
+ name: "needed",
72
+ type: "uint256",
73
+ },
74
+ ],
75
+ name: "ERC20InsufficientBalance",
76
+ type: "error",
77
+ },
78
+ {
79
+ inputs: [
80
+ {
81
+ internalType: "address",
82
+ name: "approver",
83
+ type: "address",
84
+ },
85
+ ],
86
+ name: "ERC20InvalidApprover",
87
+ type: "error",
88
+ },
89
+ {
90
+ inputs: [
91
+ {
92
+ internalType: "address",
93
+ name: "receiver",
94
+ type: "address",
95
+ },
96
+ ],
97
+ name: "ERC20InvalidReceiver",
98
+ type: "error",
99
+ },
100
+ {
101
+ inputs: [
102
+ {
103
+ internalType: "address",
104
+ name: "sender",
105
+ type: "address",
106
+ },
107
+ ],
108
+ name: "ERC20InvalidSender",
109
+ type: "error",
110
+ },
111
+ {
112
+ inputs: [
113
+ {
114
+ internalType: "address",
115
+ name: "spender",
116
+ type: "address",
117
+ },
118
+ ],
119
+ name: "ERC20InvalidSpender",
120
+ type: "error",
121
+ },
122
+ {
123
+ inputs: [
124
+ {
125
+ internalType: "uint256",
126
+ name: "deadline",
127
+ type: "uint256",
128
+ },
129
+ ],
130
+ name: "ERC2612ExpiredSignature",
131
+ type: "error",
132
+ },
133
+ {
134
+ inputs: [
135
+ {
136
+ internalType: "address",
137
+ name: "signer",
138
+ type: "address",
139
+ },
140
+ {
141
+ internalType: "address",
142
+ name: "owner",
143
+ type: "address",
144
+ },
145
+ ],
146
+ name: "ERC2612InvalidSigner",
147
+ type: "error",
148
+ },
149
+ {
150
+ inputs: [
151
+ {
152
+ internalType: "address",
153
+ name: "account",
154
+ type: "address",
155
+ },
156
+ {
157
+ internalType: "uint256",
158
+ name: "currentNonce",
159
+ type: "uint256",
160
+ },
161
+ ],
162
+ name: "InvalidAccountNonce",
163
+ type: "error",
164
+ },
9
165
  {
10
166
  inputs: [],
11
167
  name: "InvalidShortString",
@@ -124,7 +280,7 @@ const _abi = [
124
280
  },
125
281
  {
126
282
  internalType: "uint256",
127
- name: "amount",
283
+ name: "value",
128
284
  type: "uint256",
129
285
  },
130
286
  ],
@@ -171,30 +327,6 @@ const _abi = [
171
327
  stateMutability: "view",
172
328
  type: "function",
173
329
  },
174
- {
175
- inputs: [
176
- {
177
- internalType: "address",
178
- name: "spender",
179
- type: "address",
180
- },
181
- {
182
- internalType: "uint256",
183
- name: "subtractedValue",
184
- type: "uint256",
185
- },
186
- ],
187
- name: "decreaseAllowance",
188
- outputs: [
189
- {
190
- internalType: "bool",
191
- name: "",
192
- type: "bool",
193
- },
194
- ],
195
- stateMutability: "nonpayable",
196
- type: "function",
197
- },
198
330
  {
199
331
  inputs: [],
200
332
  name: "eip712Domain",
@@ -251,30 +383,6 @@ const _abi = [
251
383
  stateMutability: "view",
252
384
  type: "function",
253
385
  },
254
- {
255
- inputs: [
256
- {
257
- internalType: "address",
258
- name: "spender",
259
- type: "address",
260
- },
261
- {
262
- internalType: "uint256",
263
- name: "addedValue",
264
- type: "uint256",
265
- },
266
- ],
267
- name: "increaseAllowance",
268
- outputs: [
269
- {
270
- internalType: "bool",
271
- name: "",
272
- type: "bool",
273
- },
274
- ],
275
- stateMutability: "nonpayable",
276
- type: "function",
277
- },
278
386
  {
279
387
  inputs: [],
280
388
  name: "name",
@@ -428,7 +536,7 @@ const _abi = [
428
536
  },
429
537
  {
430
538
  internalType: "uint256",
431
- name: "amount",
539
+ name: "value",
432
540
  type: "uint256",
433
541
  },
434
542
  ],
@@ -457,7 +565,7 @@ const _abi = [
457
565
  },
458
566
  {
459
567
  internalType: "uint256",
460
- name: "amount",
568
+ name: "value",
461
569
  type: "uint256",
462
570
  },
463
571
  ],
@@ -473,7 +581,7 @@ const _abi = [
473
581
  type: "function",
474
582
  },
475
583
  ];
476
- const _bytecode = "0x610160604090808252346200043357620000198162000438565b601781526020908181017f45524332305065726d69744e6f5265766572744d6f636b00000000000000000093848252805193620000568562000438565b6017855285818601528151956200006d8762000438565b6017875281870152815191620000838362000438565b6001808452603160f81b83850190815287516001600160401b03989192919089811162000333576003908154928484811c9416801562000428575b8885101462000412578190601f94858111620003bc575b508890858311600114620003555760009262000349575b505060001982841b1c191690841b1781555b8a51918a8311620003335760049b8c548581811c9116801562000328575b898210146200031357828111620002c8575b50879184116001146200025d5793839491849260009562000251575b50501b92600019911b1c19161788555b620001658662000454565b94610120958652620001778562000626565b96610140978852519020938460e05251902096610100978089524660a0528251938401947f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f86528385015260608401524660808401523060a084015260a0835260c0830196838810908811176200023c57508590525190206080523060c0526118389384620007de8539608051846112ef015260a051846113bb015260c051846112c0015260e0518461133e01525183611364015251826106f20152518161071c0152f35b604190634e487b7160e01b6000525260246000fd5b0151935038806200014a565b9190601f198416928d60005284896000209460005b8b89838310620002b0575050501062000295575b50505050811b0188556200015a565b01519060f884600019921b161c191690553880808062000286565b86860151895590970196948501948893500162000272565b8d600052886000208380870160051c8201928b881062000309575b0160051c019086905b828110620002fc5750506200012e565b60008155018690620002ec565b92508192620002e3565b60228e634e487b7160e01b6000525260246000fd5b90607f16906200011c565b634e487b7160e01b600052604160045260246000fd5b015190503880620000ec565b90869350601f19831691856000528a6000209260005b8c828210620003a557505084116200038c575b505050811b018155620000fe565b015160001983861b60f8161c191690553880806200037e565b8385015186558a979095019493840193016200036b565b90915083600052886000208580850160051c8201928b861062000408575b918891869594930160051c01915b828110620003f8575050620000d5565b60008155859450889101620003e8565b92508192620003da565b634e487b7160e01b600052602260045260246000fd5b93607f1693620000be565b600080fd5b604081019081106001600160401b038211176200033357604052565b8051602091908281101562000501575090601f8251116200049257808251920151908083106200048357501790565b82600019910360031b1b161790565b90604051809263305a27a960e01b82528060048301528251928360248401526000915b848310620004e7575050918060449311620004d9575b601f01601f19168101030190fd5b6000838284010152620004cb565b8183018101518684016044015285935091820191620004b5565b6001600160401b03811162000333576005928354926001938481811c911680156200061b575b838210146200041257601f8111620005e4575b5081601f84116001146200057a57509282939183926000946200056e575b50501b916000199060031b1c191617905560ff90565b01519250388062000558565b919083601f1981168760005284600020946000905b88838310620005c95750505010620005af575b505050811b01905560ff90565b015160001960f88460031b161c19169055388080620005a2565b8587015188559096019594850194879350908101906200058f565b8560005284601f846000209201871c820191601f8601881c015b8281106200060e5750506200053a565b60008155018590620005fe565b90607f169062000527565b805160209081811015620006b35750601f8251116200065357808251920151908083106200048357501790565b90604051809263305a27a960e01b82528060048301528251928360248401526000915b84831062000699575050918060449311620004d957601f01601f19168101030190fd5b818301810151868401604401528593509182019162000676565b906001600160401b0382116200033357600654926001938481811c91168015620007d2575b838210146200041257601f811162000798575b5081601f84116001146200072c575092829391839260009462000720575b50501b916000199060031b1c19161760065560ff90565b01519250388062000709565b919083601f198116600660005284600020946000905b888383106200077d575050501062000763575b505050811b0160065560ff90565b015160001960f88460031b161c1916905538808062000755565b85870151885590960195948501948793509081019062000742565b600660005284601f84600020920160051c820191601f860160051c015b828110620007c5575050620006eb565b60008155018590620007b5565b90607f1690620006d856fe608060408181526004918236101561001657600080fd5b600092833560e01c91826306fdde0314610c0557508163095ea7b314610bbd57816318160ddd14610b8057816323b872dd14610a52578163313ce56714610a185781633408e470146109df5781633644e5151461099d57816339509351146108f057816370a082311461088f5781637ecebe001461082d57816384b0196e146106bc57816395d89b411461059157816396a9fc311461038e578163a457c2d714610288578163a9059cbb14610239578163d505accf14610159575063dd62ed3e146100e057600080fd5b3461015557807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261015557602091610119610d81565b82610122610da9565b9273ffffffffffffffffffffffffffffffffffffffff809316815260018652209116600052825280600020549051908152f35b5080fd5b839150346101555761016a36610dcc565b949695939093929192303b156102355789517f96a9fc3100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff91821688820152971660248801526044870152606486015260ff16608485015260a484015260c4830152828260e48183305af16101f057828451f35b67ffffffffffffffff8211610209575082528280828451f35b8260416024927f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b8880fd5b50503461015557807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261015557602090610281610277610d81565b6024359033610f25565b5160018152f35b9050823461038b57827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261038b576102c1610d81565b918360243592338152600160205281812073ffffffffffffffffffffffffffffffffffffffff86168252602052205490828210610308576020856102818585038733611134565b60849060208651917f08c379a0000000000000000000000000000000000000000000000000000000008352820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f0000000000000000000000000000000000000000000000000000006064820152fd5b80fd5b8383346101555761039e36610dcc565b90839994969942116105345773ffffffffffffffffffffffffffffffffffffffff92838b1694858b526007602052898b20908154916001830190558a519060208201927f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98452888d840152878b1660608401528b608084015260a083015260c082015260c0815260e0810181811067ffffffffffffffff8211176105085761048e94926104969694926042928e525190206104576112a9565b908d51917f190100000000000000000000000000000000000000000000000000000000000083526002830152602282015220611766565b9190916115cd565b16036104ab57506104a8929394611134565b51f35b60649060208551917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e617475726500006044820152fd5b60248d60418b7f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b60648560208a51917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e650000006044820152fd5b919050346106b857827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126106b857805191838154906105d282610e46565b8086529260019280841690811561066f5750600114610613575b61060f86866105fd828b0383610ee4565b51918291602083526020830190610d12565b0390f35b815294507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b828610610657575050506105fd82602061060f9582010194386105ec565b80546020878701810191909152909501948101610639565b61060f9850879450602093506105fd9592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b82010194386105ec565b8280fd5b919050346106b857827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126106b8576107167f00000000000000000000000000000000000000000000000000000000000000006113e1565b926107407f0000000000000000000000000000000000000000000000000000000000000000611513565b908251926020928385019585871067ffffffffffffffff881117610801575092806107b78388966107aa998b9996528686528151998a997f0f000000000000000000000000000000000000000000000000000000000000008b5260e0868c015260e08b0190610d12565b91898303908a0152610d12565b924660608801523060808801528460a088015286840360c088015251928381520193925b8281106107ea57505050500390f35b8351855286955093810193928101926001016107db565b8360416024927f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b5050346101555760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610155578060209273ffffffffffffffffffffffffffffffffffffffff61087f610d81565b1681526007845220549051908152f35b5050346101555760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610155578060209273ffffffffffffffffffffffffffffffffffffffff6108e1610d81565b16815280845220549051908152f35b82843461038b57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261038b57610928610d81565b9060243590338152600160205283812073ffffffffffffffffffffffffffffffffffffffff84168252602052838120549082198211610971576020856102818486018733611134565b806011877f4e487b71000000000000000000000000000000000000000000000000000000006024945252fd5b50503461015557817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610155576020906109d86112a9565b9051908152f35b50503461015557817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101555760209051468152f35b50503461015557817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610155576020905160128152f35b839150346101555760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261015557610a8c610d81565b610a94610da9565b91846044359473ffffffffffffffffffffffffffffffffffffffff8416815260016020528181203382526020522054907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610afa575b602086610281878787610f25565b848210610b235750918391610b186020969561028195033383611134565b919394819350610aec565b60649060208751917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152fd5b50503461015557817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610155576020906002549051908152f35b50503461015557807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261015557602090610281610bfb610d81565b6024359033611134565b849084346106b857827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126106b85782600354610c4381610e46565b80855291600191808316908115610ccc5750600114610c6f575b5050506105fd8261060f940383610ee4565b9450600385527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b828610610cb4575050506105fd82602061060f9582010194610c5d565b80546020878701810191909152909501948101610c97565b61060f9750869350602092506105fd9491507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001682840152151560051b82010194610c5d565b91908251928382526000905b848210610d695750601f84602094957fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09311610d5c575b0116010190565b6000858286010152610d55565b90602090818082850101519082860101520190610d1e565b6004359073ffffffffffffffffffffffffffffffffffffffff82168203610da457565b600080fd5b6024359073ffffffffffffffffffffffffffffffffffffffff82168203610da457565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc60e0910112610da45773ffffffffffffffffffffffffffffffffffffffff906004358281168103610da457916024359081168103610da45790604435906064359060843560ff81168103610da4579060a4359060c43590565b90600182811c92168015610e8f575b6020831014610e6057565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b91607f1691610e55565b6040810190811067ffffffffffffffff821117610eb557604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff821117610eb557604052565b73ffffffffffffffffffffffffffffffffffffffff8091169182156110b0571691821561102c57600082815280602052604081205491808310610fa857604082827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef958760209652828652038282205586815220818154019055604051908152a3565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e636500000000000000000000000000000000000000000000000000006064820152fd5b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152fd5b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152fd5b73ffffffffffffffffffffffffffffffffffffffff80911691821561122657169182156111a25760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260018252604060002085600052825280604060002055604051908152a3565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152fd5b60846040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152fd5b73ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000163014806113b8575b15611311577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a0815260c0810181811067ffffffffffffffff821117610eb55760405251902090565b507f000000000000000000000000000000000000000000000000000000000000000046146112e8565b60ff81146114375760ff811690601f821161140d576040519161140383610e99565b8252602082015290565b60046040517fb3512b0c000000000000000000000000000000000000000000000000000000008152fd5b5060405160055481600061144a83610e46565b808352926001908181169081156114d35750600114611474575b5061147192500382610ee4565b90565b6005600090815291507f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db05b8483106114b85750611471935050810160200138611464565b8193509081602092548385890101520191019091849261149f565b602093506114719592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b82010138611464565b60ff81146115355760ff811690601f821161140d576040519161140383610e99565b5060405160065481600061154883610e46565b808352926001908181169081156114d3575060011461156e575061147192500382610ee4565b6006600090815291507ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f5b8483106115b25750611471935050810160200138611464565b81935090816020925483858901015201910190918492611599565b600581101561173757806115de5750565b600181036116445760646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152fd5b600281036116aa5760646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152fd5b6003146116b357565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b9291907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083116117f65791608094939160ff602094604051948552168484015260408301526060820152600093849182805260015afa156117e957815173ffffffffffffffffffffffffffffffffffffffff8116156117e3579190565b50600190565b50604051903d90823e3d90fd5b5050505060009060039056fea26469706673582212203a0cb641832b4b5a56c7b5913dde88581e724f7f223abfe292f436c9a3f3e01164736f6c634300080f0033";
584
+ const _bytecode = "0x61016060409080825234620004195762000019816200041d565b601781526020908181017f45524332305065726d69744e6f5265766572744d6f636b0000000000000000009384825280519362000056856200041d565b6017855285818601528151956200006d876200041d565b601787528187015281519162000083836200041d565b6001808452603160f81b83850190815287516001600160401b03989192919089811162000324576003908154928484811c941680156200040e575b88851014620003fa578190601f94858111620003a7575b50889085831160011462000344575f9262000338575b50505f1982841b1c191690841b1781555b8a51918a8311620003245760049b8c548581811c9116801562000319575b898210146200030657828111620002be575b508791841160011462000257579383949184925f956200024b575b50501b925f19911b1c19161788555b620001618662000439565b946101209586526200017385620005f1565b96610140978852519020938460e05251902096610100978089524660a0528251938401947f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f86528385015260608401524660808401523060a084015260a0835260c0830196838810908811176200023857508590525190206080523060c0526113ee93846200079f853960805184610e88015260a05184610f54015260c05184610e59015260e05184610ed701525183610efd015251826105730152518161059d0152f35b604190634e487b7160e01b5f525260245ffd5b015193505f8062000147565b9190601f198416928d5f5284895f20945f5b8b89838310620002a657505050106200028c575b50505050811b01885562000156565b01519060f8845f19921b161c191690555f8080806200027d565b86860151895590970196948501948893500162000269565b8d5f52885f208380870160051c8201928b8810620002fc575b0160051c019086905b828110620002f05750506200012c565b5f8155018690620002e0565b92508192620002d7565b60228e634e487b7160e01b5f525260245ffd5b90607f16906200011a565b634e487b7160e01b5f52604160045260245ffd5b015190505f80620000eb565b90869350601f19831691855f528a5f20925f5b8c82821062000390575050841162000378575b505050811b018155620000fc565b01515f1983861b60f8161c191690555f80806200036a565b8385015186558a9790950194938401930162000357565b909150835f52885f208580850160051c8201928b8610620003f0575b918891869594930160051c01915b828110620003e1575050620000d5565b5f8155859450889101620003d1565b92508192620003c3565b634e487b7160e01b5f52602260045260245ffd5b93607f1693620000be565b5f80fd5b604081019081106001600160401b038211176200032457604052565b80516020919082811015620004d5575090601f8251116200047657808251920151908083106200046857501790565b825f19910360031b1b161790565b90604051809263305a27a960e01b82528060048301528251908160248401525f935b828510620004bb575050604492505f838284010152601f80199101168101030190fd5b848101820151868601604401529381019385935062000498565b6001600160401b03811162000324576005928354926001938481811c91168015620005e6575b83821014620003fa57601f8111620005b2575b5081601f84116001146200054c57509282939183925f9462000540575b50501b915f199060031b1c191617905560ff90565b015192505f806200052b565b919083601f198116875f52845f20945f905b888383106200059757505050106200057e575b505050811b01905560ff90565b01515f1960f88460031b161c191690555f808062000571565b8587015188559096019594850194879350908101906200055e565b855f5284601f845f209201871c820191601f8601881c015b828110620005da5750506200050e565b5f8155018590620005ca565b90607f1690620004fb565b8051602090818110156200067d5750601f8251116200061e57808251920151908083106200046857501790565b90604051809263305a27a960e01b82528060048301528251908160248401525f935b82851062000663575050604492505f838284010152601f80199101168101030190fd5b848101820151868601604401529381019385935062000640565b906001600160401b0382116200032457600654926001938481811c9116801562000793575b83821014620003fa57601f81116200075c575b5081601f8411600114620006f457509282939183925f94620006e8575b50501b915f199060031b1c19161760065560ff90565b015192505f80620006d2565b919083601f19811660065f52845f20945f905b8883831062000741575050501062000728575b505050811b0160065560ff90565b01515f1960f88460031b161c191690555f80806200071a565b85870151885590960195948501948793509081019062000707565b60065f5284601f845f20920160051c820191601f860160051c015b82811062000787575050620006b5565b5f815501859062000777565b90607f1690620006a256fe6080604081815260049182361015610015575f80fd5b5f925f3560e01c91826306fdde0314610a0357508163095ea7b3146109bc57816318160ddd1461098057816323b872dd146107f8578163313ce567146107bf5781633408e470146107875781633644e5151461074657816370a08231146106e55781637ecebe001461068357816384b0196e1461053e57816395d89b411461041657816396a9fc3114610267578163a9059cbb14610219578163d505accf1461013e575063dd62ed3e146100c7575f80fd5b3461013a57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261013a57602091610100610b6a565b82610109610b8d565b9273ffffffffffffffffffffffffffffffffffffffff8093168152600186522091165f528252805f20549051908152f35b5080fd5b919050346102155761014f36610bb0565b949795929093303b156102155760ff938851997f96a9fc31000000000000000000000000000000000000000000000000000000008b5273ffffffffffffffffffffffffffffffffffffffff809216898c01521660248a01526044890152606488015216608486015260a485015260c48401525f8360e48183305af16101d2578380f35b9091925067ffffffffffffffff83116101e9575052005b6041907f4e487b71000000000000000000000000000000000000000000000000000000005f525260245ffd5b5f80fd5b823461021557807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021557602090610260610256610b6a565b6024359033610d05565b5160018152f35b9050346102155761027736610bb0565b908397949796959642116103e75773ffffffffffffffffffffffffffffffffffffffff928984881695865f526007602052815f20908154916001830190558251918860208401947f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98652840152878c1660608401528c608084015260a083015260c082015260c0815260e0810181811067ffffffffffffffff8211176103bb578c61036995936103729795936042938352519020610333610e42565b9151917f190100000000000000000000000000000000000000000000000000000000000083526002830152602282015220611239565b909291926112d3565b1681810361038757610385868686610f7a565b005b604493508651927f4b800e460000000000000000000000000000000000000000000000000000000084528301526024820152fd5b6041897f4e487b71000000000000000000000000000000000000000000000000000000005f525260245ffd5b602485858b51917f62791302000000000000000000000000000000000000000000000000000000008352820152fd5b905034610215575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021557815191825f835461045681610c2a565b90818452602095600191876001821691825f146104f957505060011461049d575b505050610499929161048a910385610cc4565b51928284938452830190610b0e565b0390f35b5f90815286935091907f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8284106104e1575050508201018161048a610499610477565b8054848a0186015288955087949093019281016104c8565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168782015293151560051b8601909301935084925061048a91506104999050610477565b905034610215575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610215576105977f0000000000000000000000000000000000000000000000000000000000000000611044565b916105c17f000000000000000000000000000000000000000000000000000000000000000061117c565b815191602091602084019484861067ffffffffffffffff8711176101e95750610638826020928761062b99989795525f855281519889987f0f000000000000000000000000000000000000000000000000000000000000008a5260e0868b015260e08a0190610b0e565b9188830390890152610b0e565b914660608701523060808701525f60a087015285830360c087015251918281520192915f5b82811061066c57505050500390f35b83518552869550938101939281019260010161065d565b82346102155760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102155760209073ffffffffffffffffffffffffffffffffffffffff6106d3610b6a565b165f5260078252805f20549051908152f35b82346102155760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102155760209073ffffffffffffffffffffffffffffffffffffffff610735610b6a565b165f525f8252805f20549051908152f35b8234610215575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021557602090610780610e42565b9051908152f35b8234610215575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102155760209051468152f35b8234610215575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610215576020905160128152f35b9050346102155760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261021557610831610b6a565b610839610b8d565b906044359273ffffffffffffffffffffffffffffffffffffffff8216805f526001602052855f20335f52602052855f2054917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83036108a1575b602087610260888888610d05565b85831061093b57811561090c5733156108dd57505f90815260016020908152868220338352815290869020918590039091558290610260610893565b6024905f8851917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b6024905f8851917fe602df05000000000000000000000000000000000000000000000000000000008352820152fd5b86517ffb8f41b2000000000000000000000000000000000000000000000000000000008152339181019182526020820193909352604081018690528291506060010390fd5b8234610215575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610215576020906002549051908152f35b823461021557807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610215576020906102606109f9610b6a565b6024359033610f7a565b8334610215575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102155760035490825f610a4184610c2a565b808352602094600190866001821691825f14610ace575050600114610a73575b5050610499929161048a910385610cc4565b9085925060035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b915f925b828410610ab6575050508201018161048a610a61565b8054848a018601528895508794909301928101610aa0565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168682015292151560051b8501909201925083915061048a9050610a61565b91908251928382525f5b848110610b565750507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f845f6020809697860101520116010190565b602081830181015184830182015201610b18565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361021557565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361021557565b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc60e09101126102155773ffffffffffffffffffffffffffffffffffffffff906004358281168103610215579160243590811681036102155790604435906064359060843560ff81168103610215579060a4359060c43590565b90600182811c92168015610c71575b6020831014610c4457565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f1691610c39565b6040810190811067ffffffffffffffff821117610c9757604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff821117610c9757604052565b9173ffffffffffffffffffffffffffffffffffffffff808416928315610e125716928315610de257825f525f60205260405f205490828210610d8a5750817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f5260405f20818154019055604051908152a3565b6040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff919091166004820152602481019190915260448101829052606490fd5b60246040517fec442f050000000000000000000000000000000000000000000000000000000081525f6004820152fd5b60246040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f6004820152fd5b73ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016301480610f51575b15610eaa577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a0815260c0810181811067ffffffffffffffff821117610c975760405251902090565b507f00000000000000000000000000000000000000000000000000000000000000004614610e81565b73ffffffffffffffffffffffffffffffffffffffff8091169182156110145716918215610fe45760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a3565b60246040517f94280d620000000000000000000000000000000000000000000000000000000081525f6004820152fd5b60246040517fe602df050000000000000000000000000000000000000000000000000000000081525f6004820152fd5b60ff811461109a5760ff811690601f8211611070576040519161106683610c7b565b8252602082015290565b60046040517fb3512b0c000000000000000000000000000000000000000000000000000000008152fd5b50604051600554815f6110ac83610c2a565b8083529260209060019081811690811561113957506001146110da575b50506110d792500382610cc4565b90565b91509260055f527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0935f925b82841061112157506110d79450505081016020015f806110c9565b85548785018301529485019486945092810192611106565b9050602093506110d79592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b8201015f806110c9565b60ff811461119e5760ff811690601f8211611070576040519161106683610c7b565b50604051600654815f6111b083610c2a565b8083529260209060019081811690811561113957506001146111da5750506110d792500382610cc4565b91509260065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f935f925b82841061122157506110d79450505081016020015f806110c9565b85548785018301529485019486945092810192611206565b91907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084116112c8579160209360809260ff5f9560405194855216868401526040830152606082015282805260015afa156112bd575f5173ffffffffffffffffffffffffffffffffffffffff8116156112b357905f905f90565b505f906001905f90565b6040513d5f823e3d90fd5b5050505f9160039190565b600481101561138b57806112e5575050565b600181036113175760046040517ff645eedf000000000000000000000000000000000000000000000000000000008152fd5b6002810361135057602482604051907ffce698f70000000000000000000000000000000000000000000000000000000082526004820152fd5b60031461135a5750565b602490604051907fd78bce0c0000000000000000000000000000000000000000000000000000000082526004820152fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffdfea2646970667358221220ec3271d4a67d4179c91f60ed9bfbc8b57b0bffcbcfc6577e0ce22cb3d5d47e7a64736f6c63430008170033";
477
585
  const isSuperArgs = (xs) => xs.length > 1;
478
586
  class ERC20PermitNoRevertMock__factory extends ethers_1.ContractFactory {
479
587
  constructor(...args) {