@1inch/solidity-utils 3.8.3 → 4.0.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 (159) hide show
  1. package/contracts/interfaces/IERC7597Permit.sol +13 -0
  2. package/contracts/libraries/AddressArray.sol +133 -52
  3. package/contracts/libraries/AddressSet.sol +36 -10
  4. package/contracts/libraries/BySigTraits.sol +46 -0
  5. package/contracts/libraries/SafeERC20.sol +7 -3
  6. package/dist/src/permit.d.ts +3 -1
  7. package/dist/src/permit.js +12 -1
  8. package/dist/src/permit.js.map +1 -1
  9. package/dist/typechain-types/@openzeppelin/contracts/utils/Address.d.ts +20 -0
  10. package/dist/typechain-types/@openzeppelin/contracts/utils/Address.js +3 -0
  11. package/dist/typechain-types/@openzeppelin/contracts/utils/Address.js.map +1 -0
  12. package/dist/typechain-types/@openzeppelin/contracts/utils/index.d.ts +1 -0
  13. package/dist/typechain-types/contracts/index.d.ts +2 -3
  14. package/dist/typechain-types/contracts/interfaces/IERC7597Permit.d.ts +41 -0
  15. package/dist/typechain-types/contracts/interfaces/IERC7597Permit.js +3 -0
  16. package/dist/typechain-types/contracts/interfaces/IERC7597Permit.js.map +1 -0
  17. package/dist/typechain-types/contracts/interfaces/index.d.ts +1 -0
  18. package/dist/typechain-types/contracts/libraries/BySigTraits.d.ts +20 -0
  19. package/dist/typechain-types/contracts/libraries/BySigTraits.js +3 -0
  20. package/dist/typechain-types/contracts/libraries/BySigTraits.js.map +1 -0
  21. package/dist/typechain-types/contracts/libraries/index.d.ts +1 -0
  22. package/dist/typechain-types/contracts/mixins/BySig.d.ts +214 -0
  23. package/dist/typechain-types/contracts/mixins/BySig.js +3 -0
  24. package/dist/typechain-types/contracts/mixins/BySig.js.map +1 -0
  25. package/dist/typechain-types/contracts/{EthReceiver.d.ts → mixins/EthReceiver.d.ts} +1 -1
  26. package/dist/typechain-types/contracts/mixins/EthReceiver.js.map +1 -0
  27. package/dist/typechain-types/contracts/{OnlyWethReceiver.d.ts → mixins/OnlyWethReceiver.d.ts} +1 -1
  28. package/dist/typechain-types/contracts/mixins/OnlyWethReceiver.js.map +1 -0
  29. package/dist/typechain-types/contracts/{PermitAndCall.d.ts → mixins/PermitAndCall.d.ts} +1 -1
  30. package/dist/typechain-types/contracts/mixins/PermitAndCall.js.map +1 -0
  31. package/dist/typechain-types/contracts/mixins/index.d.ts +4 -0
  32. package/dist/typechain-types/contracts/mixins/index.js +3 -0
  33. package/dist/typechain-types/contracts/mixins/index.js.map +1 -0
  34. package/dist/typechain-types/contracts/tests/mocks/AddressSetMock.d.ts +5 -1
  35. package/dist/typechain-types/contracts/tests/mocks/BySigTraitsMock.d.ts +47 -0
  36. package/dist/typechain-types/contracts/tests/mocks/BySigTraitsMock.js +3 -0
  37. package/dist/typechain-types/contracts/tests/mocks/BySigTraitsMock.js.map +1 -0
  38. package/dist/typechain-types/contracts/tests/mocks/TokenWithBySig.d.ts +422 -0
  39. package/dist/typechain-types/contracts/tests/mocks/TokenWithBySig.js +3 -0
  40. package/dist/typechain-types/contracts/tests/mocks/TokenWithBySig.js.map +1 -0
  41. package/dist/typechain-types/contracts/tests/mocks/USDCLikePermitMock.d.ts +260 -0
  42. package/dist/typechain-types/contracts/tests/mocks/USDCLikePermitMock.js +3 -0
  43. package/dist/typechain-types/contracts/tests/mocks/USDCLikePermitMock.js.map +1 -0
  44. package/dist/typechain-types/contracts/tests/mocks/index.d.ts +3 -0
  45. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.d.ts +42 -0
  46. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.js +67 -0
  47. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.js.map +1 -0
  48. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/index.d.ts +1 -0
  49. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/index.js +3 -1
  50. package/dist/typechain-types/factories/@openzeppelin/contracts/utils/index.js.map +1 -1
  51. package/dist/typechain-types/factories/contracts/index.d.ts +1 -3
  52. package/dist/typechain-types/factories/contracts/index.js +2 -7
  53. package/dist/typechain-types/factories/contracts/index.js.map +1 -1
  54. package/dist/typechain-types/factories/contracts/interfaces/IERC7597Permit__factory.d.ts +33 -0
  55. package/dist/typechain-types/factories/contracts/interfaces/IERC7597Permit__factory.js +53 -0
  56. package/dist/typechain-types/factories/contracts/interfaces/IERC7597Permit__factory.js.map +1 -0
  57. package/dist/typechain-types/factories/contracts/interfaces/index.d.ts +1 -0
  58. package/dist/typechain-types/factories/contracts/interfaces/index.js +3 -1
  59. package/dist/typechain-types/factories/contracts/interfaces/index.js.map +1 -1
  60. package/dist/typechain-types/factories/contracts/libraries/AddressArray__factory.d.ts +1 -1
  61. package/dist/typechain-types/factories/contracts/libraries/AddressArray__factory.js +1 -1
  62. package/dist/typechain-types/factories/contracts/libraries/BySigTraits__factory.d.ts +26 -0
  63. package/dist/typechain-types/factories/contracts/libraries/BySigTraits__factory.js +45 -0
  64. package/dist/typechain-types/factories/contracts/libraries/BySigTraits__factory.js.map +1 -0
  65. package/dist/typechain-types/factories/contracts/libraries/SafeERC20__factory.d.ts +1 -1
  66. package/dist/typechain-types/factories/contracts/libraries/SafeERC20__factory.js +1 -1
  67. package/dist/typechain-types/factories/contracts/libraries/UniERC20__factory.d.ts +1 -1
  68. package/dist/typechain-types/factories/contracts/libraries/UniERC20__factory.js +1 -1
  69. package/dist/typechain-types/factories/contracts/libraries/index.d.ts +1 -0
  70. package/dist/typechain-types/factories/contracts/libraries/index.js +3 -1
  71. package/dist/typechain-types/factories/contracts/libraries/index.js.map +1 -1
  72. package/dist/typechain-types/factories/contracts/mixins/BySig__factory.d.ts +286 -0
  73. package/dist/typechain-types/factories/contracts/mixins/BySig__factory.js +385 -0
  74. package/dist/typechain-types/factories/contracts/mixins/BySig__factory.js.map +1 -0
  75. package/dist/typechain-types/factories/contracts/{EthReceiver__factory.d.ts → mixins/EthReceiver__factory.d.ts} +1 -1
  76. package/dist/typechain-types/factories/contracts/mixins/EthReceiver__factory.js.map +1 -0
  77. package/dist/typechain-types/factories/contracts/{OnlyWethReceiver__factory.d.ts → mixins/OnlyWethReceiver__factory.d.ts} +1 -1
  78. package/dist/typechain-types/factories/contracts/mixins/OnlyWethReceiver__factory.js.map +1 -0
  79. package/dist/typechain-types/factories/contracts/{PermitAndCall__factory.d.ts → mixins/PermitAndCall__factory.d.ts} +1 -1
  80. package/dist/typechain-types/factories/contracts/mixins/PermitAndCall__factory.js.map +1 -0
  81. package/dist/typechain-types/factories/contracts/mixins/index.d.ts +4 -0
  82. package/dist/typechain-types/factories/contracts/mixins/index.js +15 -0
  83. package/dist/typechain-types/factories/contracts/mixins/index.js.map +1 -0
  84. package/dist/typechain-types/factories/contracts/tests/mocks/AddressArrayMock__factory.d.ts +1 -5
  85. package/dist/typechain-types/factories/contracts/tests/mocks/AddressArrayMock__factory.js +1 -6
  86. package/dist/typechain-types/factories/contracts/tests/mocks/AddressArrayMock__factory.js.map +1 -1
  87. package/dist/typechain-types/factories/contracts/tests/mocks/AddressSetMock__factory.d.ts +11 -5
  88. package/dist/typechain-types/factories/contracts/tests/mocks/AddressSetMock__factory.js +14 -6
  89. package/dist/typechain-types/factories/contracts/tests/mocks/AddressSetMock__factory.js.map +1 -1
  90. package/dist/typechain-types/factories/contracts/tests/mocks/BySigTraitsMock__factory.d.ts +86 -0
  91. package/dist/typechain-types/factories/contracts/tests/mocks/BySigTraitsMock__factory.js +126 -0
  92. package/dist/typechain-types/factories/contracts/tests/mocks/BySigTraitsMock__factory.js.map +1 -0
  93. package/dist/typechain-types/factories/contracts/tests/mocks/EthReceiverMock__factory.d.ts +1 -1
  94. package/dist/typechain-types/factories/contracts/tests/mocks/EthReceiverMock__factory.js +1 -1
  95. package/dist/typechain-types/factories/contracts/tests/mocks/PermitAndCallMock__factory.d.ts +1 -1
  96. package/dist/typechain-types/factories/contracts/tests/mocks/PermitAndCallMock__factory.js +1 -1
  97. package/dist/typechain-types/factories/contracts/tests/mocks/PermitAndCallMock__factory.js.map +1 -1
  98. package/dist/typechain-types/factories/contracts/tests/mocks/PermitableMock__factory.d.ts +1 -1
  99. package/dist/typechain-types/factories/contracts/tests/mocks/PermitableMock__factory.js +1 -1
  100. package/dist/typechain-types/factories/contracts/tests/mocks/PermitableMock__factory.js.map +1 -1
  101. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20NoReturnMock__factory.d.ts +1 -1
  102. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20NoReturnMock__factory.js +1 -1
  103. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20PermitNoRevertMock__factory.d.ts +1 -1
  104. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20PermitNoRevertMock__factory.js +1 -1
  105. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ReturnFalseMock__factory.d.ts +1 -1
  106. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ReturnFalseMock__factory.js +1 -1
  107. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ReturnTrueMock__factory.d.ts +1 -1
  108. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ReturnTrueMock__factory.js +1 -1
  109. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ThroughZeroApprove__factory.d.ts +1 -1
  110. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20ThroughZeroApprove__factory.js +1 -1
  111. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20WithSafeBalance__factory.d.ts +1 -1
  112. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/ERC20WithSafeBalance__factory.js +1 -1
  113. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/Permit2ReturnTrueMock__factory.d.ts +1 -1
  114. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/Permit2ReturnTrueMock__factory.js +1 -1
  115. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/SafeERC20Wrapper__factory.d.ts +1 -1
  116. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/SafeERC20Wrapper__factory.js +1 -1
  117. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/SafeERC20Wrapper__factory.js.map +1 -1
  118. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/SafeWETHWrapper__factory.d.ts +1 -1
  119. package/dist/typechain-types/factories/contracts/tests/mocks/SafeERC20Helper.sol/SafeWETHWrapper__factory.js +1 -1
  120. package/dist/typechain-types/factories/contracts/tests/mocks/TokenWithBySig__factory.d.ts +675 -0
  121. package/dist/typechain-types/factories/contracts/tests/mocks/TokenWithBySig__factory.js +893 -0
  122. package/dist/typechain-types/factories/contracts/tests/mocks/TokenWithBySig__factory.js.map +1 -0
  123. package/dist/typechain-types/factories/contracts/tests/mocks/USDCLikePermitMock__factory.d.ts +481 -0
  124. package/dist/typechain-types/factories/contracts/tests/mocks/USDCLikePermitMock__factory.js +640 -0
  125. package/dist/typechain-types/factories/contracts/tests/mocks/USDCLikePermitMock__factory.js.map +1 -0
  126. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20Capitals__factory.d.ts +1 -1
  127. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20Capitals__factory.js +1 -1
  128. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20bytes32Capitals__factory.d.ts +1 -1
  129. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20bytes32Capitals__factory.js +1 -1
  130. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20bytes32__factory.d.ts +1 -1
  131. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ERC20bytes32__factory.js +1 -1
  132. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ETHBadReceiver__factory.d.ts +1 -1
  133. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/ETHBadReceiver__factory.js +1 -1
  134. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/UniERC20Wrapper__factory.d.ts +1 -1
  135. package/dist/typechain-types/factories/contracts/tests/mocks/UniERC20Helper.sol/UniERC20Wrapper__factory.js +1 -1
  136. package/dist/typechain-types/factories/contracts/tests/mocks/WethReceiverMock__factory.d.ts +1 -1
  137. package/dist/typechain-types/factories/contracts/tests/mocks/WethReceiverMock__factory.js +1 -1
  138. package/dist/typechain-types/factories/contracts/tests/mocks/index.d.ts +3 -0
  139. package/dist/typechain-types/factories/contracts/tests/mocks/index.js +7 -1
  140. package/dist/typechain-types/factories/contracts/tests/mocks/index.js.map +1 -1
  141. package/dist/typechain-types/index.d.ts +20 -6
  142. package/dist/typechain-types/index.js +22 -8
  143. package/dist/typechain-types/index.js.map +1 -1
  144. package/package.json +1 -1
  145. package/contracts/EthReceiver.sol +0 -16
  146. package/contracts/OnlyWethReceiver.sol +0 -17
  147. package/contracts/PermitAndCall.sol +0 -28
  148. package/dist/typechain-types/contracts/EthReceiver.js.map +0 -1
  149. package/dist/typechain-types/contracts/OnlyWethReceiver.js.map +0 -1
  150. package/dist/typechain-types/contracts/PermitAndCall.js.map +0 -1
  151. package/dist/typechain-types/factories/contracts/EthReceiver__factory.js.map +0 -1
  152. package/dist/typechain-types/factories/contracts/OnlyWethReceiver__factory.js.map +0 -1
  153. package/dist/typechain-types/factories/contracts/PermitAndCall__factory.js.map +0 -1
  154. /package/dist/typechain-types/contracts/{EthReceiver.js → mixins/EthReceiver.js} +0 -0
  155. /package/dist/typechain-types/contracts/{OnlyWethReceiver.js → mixins/OnlyWethReceiver.js} +0 -0
  156. /package/dist/typechain-types/contracts/{PermitAndCall.js → mixins/PermitAndCall.js} +0 -0
  157. /package/dist/typechain-types/factories/contracts/{EthReceiver__factory.js → mixins/EthReceiver__factory.js} +0 -0
  158. /package/dist/typechain-types/factories/contracts/{OnlyWethReceiver__factory.js → mixins/OnlyWethReceiver__factory.js} +0 -0
  159. /package/dist/typechain-types/factories/contracts/{PermitAndCall__factory.js → mixins/PermitAndCall__factory.js} +0 -0
@@ -0,0 +1,893 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TokenWithBySig__factory = void 0;
4
+ /* Autogenerated file. Do not edit manually. */
5
+ /* tslint:disable */
6
+ /* eslint-disable */
7
+ const ethers_1 = require("ethers");
8
+ const _abi = [
9
+ {
10
+ inputs: [
11
+ {
12
+ internalType: "string",
13
+ name: "name",
14
+ type: "string",
15
+ },
16
+ {
17
+ internalType: "string",
18
+ name: "symbol",
19
+ type: "string",
20
+ },
21
+ {
22
+ internalType: "string",
23
+ name: "version",
24
+ type: "string",
25
+ },
26
+ ],
27
+ stateMutability: "nonpayable",
28
+ type: "constructor",
29
+ },
30
+ {
31
+ inputs: [
32
+ {
33
+ internalType: "address",
34
+ name: "target",
35
+ type: "address",
36
+ },
37
+ ],
38
+ name: "AddressEmptyCode",
39
+ type: "error",
40
+ },
41
+ {
42
+ inputs: [],
43
+ name: "DeadlineExceeded",
44
+ type: "error",
45
+ },
46
+ {
47
+ inputs: [
48
+ {
49
+ internalType: "address",
50
+ name: "spender",
51
+ type: "address",
52
+ },
53
+ {
54
+ internalType: "uint256",
55
+ name: "allowance",
56
+ type: "uint256",
57
+ },
58
+ {
59
+ internalType: "uint256",
60
+ name: "needed",
61
+ type: "uint256",
62
+ },
63
+ ],
64
+ name: "ERC20InsufficientAllowance",
65
+ type: "error",
66
+ },
67
+ {
68
+ inputs: [
69
+ {
70
+ internalType: "address",
71
+ name: "sender",
72
+ type: "address",
73
+ },
74
+ {
75
+ internalType: "uint256",
76
+ name: "balance",
77
+ type: "uint256",
78
+ },
79
+ {
80
+ internalType: "uint256",
81
+ name: "needed",
82
+ type: "uint256",
83
+ },
84
+ ],
85
+ name: "ERC20InsufficientBalance",
86
+ type: "error",
87
+ },
88
+ {
89
+ inputs: [
90
+ {
91
+ internalType: "address",
92
+ name: "approver",
93
+ type: "address",
94
+ },
95
+ ],
96
+ name: "ERC20InvalidApprover",
97
+ type: "error",
98
+ },
99
+ {
100
+ inputs: [
101
+ {
102
+ internalType: "address",
103
+ name: "receiver",
104
+ type: "address",
105
+ },
106
+ ],
107
+ name: "ERC20InvalidReceiver",
108
+ type: "error",
109
+ },
110
+ {
111
+ inputs: [
112
+ {
113
+ internalType: "address",
114
+ name: "sender",
115
+ type: "address",
116
+ },
117
+ ],
118
+ name: "ERC20InvalidSender",
119
+ type: "error",
120
+ },
121
+ {
122
+ inputs: [
123
+ {
124
+ internalType: "address",
125
+ name: "spender",
126
+ type: "address",
127
+ },
128
+ ],
129
+ name: "ERC20InvalidSpender",
130
+ type: "error",
131
+ },
132
+ {
133
+ inputs: [],
134
+ name: "FailedInnerCall",
135
+ type: "error",
136
+ },
137
+ {
138
+ inputs: [],
139
+ name: "IndexOutOfBounds",
140
+ type: "error",
141
+ },
142
+ {
143
+ inputs: [],
144
+ name: "InvalidShortString",
145
+ type: "error",
146
+ },
147
+ {
148
+ inputs: [
149
+ {
150
+ internalType: "address",
151
+ name: "owner",
152
+ type: "address",
153
+ },
154
+ ],
155
+ name: "OwnableInvalidOwner",
156
+ type: "error",
157
+ },
158
+ {
159
+ inputs: [
160
+ {
161
+ internalType: "address",
162
+ name: "account",
163
+ type: "address",
164
+ },
165
+ ],
166
+ name: "OwnableUnauthorizedAccount",
167
+ type: "error",
168
+ },
169
+ {
170
+ inputs: [
171
+ {
172
+ internalType: "string",
173
+ name: "str",
174
+ type: "string",
175
+ },
176
+ ],
177
+ name: "StringTooLong",
178
+ type: "error",
179
+ },
180
+ {
181
+ inputs: [],
182
+ name: "WrongNonce",
183
+ type: "error",
184
+ },
185
+ {
186
+ inputs: [],
187
+ name: "WrongNonceType",
188
+ type: "error",
189
+ },
190
+ {
191
+ inputs: [],
192
+ name: "WrongRelayer",
193
+ type: "error",
194
+ },
195
+ {
196
+ inputs: [],
197
+ name: "WrongSignature",
198
+ type: "error",
199
+ },
200
+ {
201
+ inputs: [],
202
+ name: "WrongToken",
203
+ type: "error",
204
+ },
205
+ {
206
+ anonymous: false,
207
+ inputs: [
208
+ {
209
+ indexed: true,
210
+ internalType: "address",
211
+ name: "owner",
212
+ type: "address",
213
+ },
214
+ {
215
+ indexed: true,
216
+ internalType: "address",
217
+ name: "spender",
218
+ type: "address",
219
+ },
220
+ {
221
+ indexed: false,
222
+ internalType: "uint256",
223
+ name: "value",
224
+ type: "uint256",
225
+ },
226
+ ],
227
+ name: "Approval",
228
+ type: "event",
229
+ },
230
+ {
231
+ anonymous: false,
232
+ inputs: [
233
+ {
234
+ indexed: false,
235
+ internalType: "address",
236
+ name: "signer",
237
+ type: "address",
238
+ },
239
+ {
240
+ indexed: false,
241
+ internalType: "address",
242
+ name: "relayer",
243
+ type: "address",
244
+ },
245
+ {
246
+ indexed: false,
247
+ internalType: "address",
248
+ name: "token",
249
+ type: "address",
250
+ },
251
+ {
252
+ indexed: false,
253
+ internalType: "uint256",
254
+ name: "amount",
255
+ type: "uint256",
256
+ },
257
+ ],
258
+ name: "ChargedSigner",
259
+ type: "event",
260
+ },
261
+ {
262
+ anonymous: false,
263
+ inputs: [],
264
+ name: "EIP712DomainChanged",
265
+ type: "event",
266
+ },
267
+ {
268
+ anonymous: false,
269
+ inputs: [
270
+ {
271
+ indexed: true,
272
+ internalType: "address",
273
+ name: "previousOwner",
274
+ type: "address",
275
+ },
276
+ {
277
+ indexed: true,
278
+ internalType: "address",
279
+ name: "newOwner",
280
+ type: "address",
281
+ },
282
+ ],
283
+ name: "OwnershipTransferred",
284
+ type: "event",
285
+ },
286
+ {
287
+ anonymous: false,
288
+ inputs: [
289
+ {
290
+ indexed: true,
291
+ internalType: "address",
292
+ name: "from",
293
+ type: "address",
294
+ },
295
+ {
296
+ indexed: true,
297
+ internalType: "address",
298
+ name: "to",
299
+ type: "address",
300
+ },
301
+ {
302
+ indexed: false,
303
+ internalType: "uint256",
304
+ name: "value",
305
+ type: "uint256",
306
+ },
307
+ ],
308
+ name: "Transfer",
309
+ type: "event",
310
+ },
311
+ {
312
+ inputs: [],
313
+ name: "SIGNED_CALL_TYPEHASH",
314
+ outputs: [
315
+ {
316
+ internalType: "bytes32",
317
+ name: "",
318
+ type: "bytes32",
319
+ },
320
+ ],
321
+ stateMutability: "view",
322
+ type: "function",
323
+ },
324
+ {
325
+ inputs: [
326
+ {
327
+ internalType: "address",
328
+ name: "owner",
329
+ type: "address",
330
+ },
331
+ {
332
+ internalType: "address",
333
+ name: "spender",
334
+ type: "address",
335
+ },
336
+ ],
337
+ name: "allowance",
338
+ outputs: [
339
+ {
340
+ internalType: "uint256",
341
+ name: "",
342
+ type: "uint256",
343
+ },
344
+ ],
345
+ stateMutability: "view",
346
+ type: "function",
347
+ },
348
+ {
349
+ inputs: [
350
+ {
351
+ internalType: "address",
352
+ name: "spender",
353
+ type: "address",
354
+ },
355
+ {
356
+ internalType: "uint256",
357
+ name: "value",
358
+ type: "uint256",
359
+ },
360
+ ],
361
+ name: "approve",
362
+ outputs: [
363
+ {
364
+ internalType: "bool",
365
+ name: "",
366
+ type: "bool",
367
+ },
368
+ ],
369
+ stateMutability: "nonpayable",
370
+ type: "function",
371
+ },
372
+ {
373
+ inputs: [
374
+ {
375
+ internalType: "address",
376
+ name: "account",
377
+ type: "address",
378
+ },
379
+ ],
380
+ name: "balanceOf",
381
+ outputs: [
382
+ {
383
+ internalType: "uint256",
384
+ name: "",
385
+ type: "uint256",
386
+ },
387
+ ],
388
+ stateMutability: "view",
389
+ type: "function",
390
+ },
391
+ {
392
+ inputs: [
393
+ {
394
+ internalType: "address",
395
+ name: "account",
396
+ type: "address",
397
+ },
398
+ {
399
+ internalType: "uint256",
400
+ name: "amount",
401
+ type: "uint256",
402
+ },
403
+ ],
404
+ name: "burn",
405
+ outputs: [],
406
+ stateMutability: "nonpayable",
407
+ type: "function",
408
+ },
409
+ {
410
+ inputs: [
411
+ {
412
+ internalType: "address",
413
+ name: "signer",
414
+ type: "address",
415
+ },
416
+ {
417
+ components: [
418
+ {
419
+ internalType: "BySigTraits.Value",
420
+ name: "traits",
421
+ type: "uint256",
422
+ },
423
+ {
424
+ internalType: "bytes",
425
+ name: "data",
426
+ type: "bytes",
427
+ },
428
+ ],
429
+ internalType: "struct BySig.SignedCall",
430
+ name: "sig",
431
+ type: "tuple",
432
+ },
433
+ {
434
+ internalType: "bytes",
435
+ name: "signature",
436
+ type: "bytes",
437
+ },
438
+ ],
439
+ name: "bySig",
440
+ outputs: [
441
+ {
442
+ internalType: "bytes",
443
+ name: "ret",
444
+ type: "bytes",
445
+ },
446
+ ],
447
+ stateMutability: "payable",
448
+ type: "function",
449
+ },
450
+ {
451
+ inputs: [
452
+ {
453
+ internalType: "address",
454
+ name: "account",
455
+ type: "address",
456
+ },
457
+ ],
458
+ name: "bySigAccountNonces",
459
+ outputs: [
460
+ {
461
+ internalType: "uint256",
462
+ name: "",
463
+ type: "uint256",
464
+ },
465
+ ],
466
+ stateMutability: "view",
467
+ type: "function",
468
+ },
469
+ {
470
+ inputs: [
471
+ {
472
+ internalType: "address",
473
+ name: "account",
474
+ type: "address",
475
+ },
476
+ {
477
+ internalType: "bytes4",
478
+ name: "selector",
479
+ type: "bytes4",
480
+ },
481
+ ],
482
+ name: "bySigSelectorNonces",
483
+ outputs: [
484
+ {
485
+ internalType: "uint256",
486
+ name: "",
487
+ type: "uint256",
488
+ },
489
+ ],
490
+ stateMutability: "view",
491
+ type: "function",
492
+ },
493
+ {
494
+ inputs: [
495
+ {
496
+ internalType: "address",
497
+ name: "account",
498
+ type: "address",
499
+ },
500
+ {
501
+ internalType: "uint256",
502
+ name: "nonce",
503
+ type: "uint256",
504
+ },
505
+ ],
506
+ name: "bySigUniqueNonces",
507
+ outputs: [
508
+ {
509
+ internalType: "bool",
510
+ name: "",
511
+ type: "bool",
512
+ },
513
+ ],
514
+ stateMutability: "view",
515
+ type: "function",
516
+ },
517
+ {
518
+ inputs: [
519
+ {
520
+ internalType: "address",
521
+ name: "account",
522
+ type: "address",
523
+ },
524
+ {
525
+ internalType: "uint256",
526
+ name: "nonce",
527
+ type: "uint256",
528
+ },
529
+ ],
530
+ name: "bySigUniqueNoncesSlot",
531
+ outputs: [
532
+ {
533
+ internalType: "uint256",
534
+ name: "",
535
+ type: "uint256",
536
+ },
537
+ ],
538
+ stateMutability: "view",
539
+ type: "function",
540
+ },
541
+ {
542
+ inputs: [],
543
+ name: "decimals",
544
+ outputs: [
545
+ {
546
+ internalType: "uint8",
547
+ name: "",
548
+ type: "uint8",
549
+ },
550
+ ],
551
+ stateMutability: "view",
552
+ type: "function",
553
+ },
554
+ {
555
+ inputs: [],
556
+ name: "eip712Domain",
557
+ outputs: [
558
+ {
559
+ internalType: "bytes1",
560
+ name: "fields",
561
+ type: "bytes1",
562
+ },
563
+ {
564
+ internalType: "string",
565
+ name: "name",
566
+ type: "string",
567
+ },
568
+ {
569
+ internalType: "string",
570
+ name: "version",
571
+ type: "string",
572
+ },
573
+ {
574
+ internalType: "uint256",
575
+ name: "chainId",
576
+ type: "uint256",
577
+ },
578
+ {
579
+ internalType: "address",
580
+ name: "verifyingContract",
581
+ type: "address",
582
+ },
583
+ {
584
+ internalType: "bytes32",
585
+ name: "salt",
586
+ type: "bytes32",
587
+ },
588
+ {
589
+ internalType: "uint256[]",
590
+ name: "extensions",
591
+ type: "uint256[]",
592
+ },
593
+ ],
594
+ stateMutability: "view",
595
+ type: "function",
596
+ },
597
+ {
598
+ inputs: [],
599
+ name: "getChainId",
600
+ outputs: [
601
+ {
602
+ internalType: "uint256",
603
+ name: "",
604
+ type: "uint256",
605
+ },
606
+ ],
607
+ stateMutability: "view",
608
+ type: "function",
609
+ },
610
+ {
611
+ inputs: [
612
+ {
613
+ components: [
614
+ {
615
+ internalType: "BySigTraits.Value",
616
+ name: "traits",
617
+ type: "uint256",
618
+ },
619
+ {
620
+ internalType: "bytes",
621
+ name: "data",
622
+ type: "bytes",
623
+ },
624
+ ],
625
+ internalType: "struct BySig.SignedCall",
626
+ name: "sig",
627
+ type: "tuple",
628
+ },
629
+ ],
630
+ name: "hashBySig",
631
+ outputs: [
632
+ {
633
+ internalType: "bytes32",
634
+ name: "",
635
+ type: "bytes32",
636
+ },
637
+ ],
638
+ stateMutability: "view",
639
+ type: "function",
640
+ },
641
+ {
642
+ inputs: [
643
+ {
644
+ internalType: "address",
645
+ name: "account",
646
+ type: "address",
647
+ },
648
+ {
649
+ internalType: "uint256",
650
+ name: "amount",
651
+ type: "uint256",
652
+ },
653
+ ],
654
+ name: "mint",
655
+ outputs: [],
656
+ stateMutability: "nonpayable",
657
+ type: "function",
658
+ },
659
+ {
660
+ inputs: [],
661
+ name: "name",
662
+ outputs: [
663
+ {
664
+ internalType: "string",
665
+ name: "",
666
+ type: "string",
667
+ },
668
+ ],
669
+ stateMutability: "view",
670
+ type: "function",
671
+ },
672
+ {
673
+ inputs: [],
674
+ name: "owner",
675
+ outputs: [
676
+ {
677
+ internalType: "address",
678
+ name: "",
679
+ type: "address",
680
+ },
681
+ ],
682
+ stateMutability: "view",
683
+ type: "function",
684
+ },
685
+ {
686
+ inputs: [],
687
+ name: "renounceOwnership",
688
+ outputs: [],
689
+ stateMutability: "nonpayable",
690
+ type: "function",
691
+ },
692
+ {
693
+ inputs: [
694
+ {
695
+ internalType: "address",
696
+ name: "token",
697
+ type: "address",
698
+ },
699
+ {
700
+ internalType: "uint256",
701
+ name: "amount",
702
+ type: "uint256",
703
+ },
704
+ {
705
+ internalType: "bytes",
706
+ name: "data",
707
+ type: "bytes",
708
+ },
709
+ {
710
+ internalType: "bytes",
711
+ name: "extraData",
712
+ type: "bytes",
713
+ },
714
+ ],
715
+ name: "sponsoredCall",
716
+ outputs: [
717
+ {
718
+ internalType: "bytes",
719
+ name: "ret",
720
+ type: "bytes",
721
+ },
722
+ ],
723
+ stateMutability: "payable",
724
+ type: "function",
725
+ },
726
+ {
727
+ inputs: [],
728
+ name: "symbol",
729
+ outputs: [
730
+ {
731
+ internalType: "string",
732
+ name: "",
733
+ type: "string",
734
+ },
735
+ ],
736
+ stateMutability: "view",
737
+ type: "function",
738
+ },
739
+ {
740
+ inputs: [],
741
+ name: "totalSupply",
742
+ outputs: [
743
+ {
744
+ internalType: "uint256",
745
+ name: "",
746
+ type: "uint256",
747
+ },
748
+ ],
749
+ stateMutability: "view",
750
+ type: "function",
751
+ },
752
+ {
753
+ inputs: [
754
+ {
755
+ internalType: "address",
756
+ name: "to",
757
+ type: "address",
758
+ },
759
+ {
760
+ internalType: "uint256",
761
+ name: "value",
762
+ type: "uint256",
763
+ },
764
+ ],
765
+ name: "transfer",
766
+ outputs: [
767
+ {
768
+ internalType: "bool",
769
+ name: "",
770
+ type: "bool",
771
+ },
772
+ ],
773
+ stateMutability: "nonpayable",
774
+ type: "function",
775
+ },
776
+ {
777
+ inputs: [
778
+ {
779
+ internalType: "address",
780
+ name: "from",
781
+ type: "address",
782
+ },
783
+ {
784
+ internalType: "address",
785
+ name: "to",
786
+ type: "address",
787
+ },
788
+ {
789
+ internalType: "uint256",
790
+ name: "value",
791
+ type: "uint256",
792
+ },
793
+ ],
794
+ name: "transferFrom",
795
+ outputs: [
796
+ {
797
+ internalType: "bool",
798
+ name: "",
799
+ type: "bool",
800
+ },
801
+ ],
802
+ stateMutability: "nonpayable",
803
+ type: "function",
804
+ },
805
+ {
806
+ inputs: [
807
+ {
808
+ internalType: "address",
809
+ name: "newOwner",
810
+ type: "address",
811
+ },
812
+ ],
813
+ name: "transferOwnership",
814
+ outputs: [],
815
+ stateMutability: "nonpayable",
816
+ type: "function",
817
+ },
818
+ {
819
+ inputs: [
820
+ {
821
+ internalType: "uint32",
822
+ name: "advance",
823
+ type: "uint32",
824
+ },
825
+ ],
826
+ name: "useBySigAccountNonce",
827
+ outputs: [],
828
+ stateMutability: "nonpayable",
829
+ type: "function",
830
+ },
831
+ {
832
+ inputs: [
833
+ {
834
+ internalType: "bytes4",
835
+ name: "selector",
836
+ type: "bytes4",
837
+ },
838
+ {
839
+ internalType: "uint32",
840
+ name: "advance",
841
+ type: "uint32",
842
+ },
843
+ ],
844
+ name: "useBySigSelectorNonce",
845
+ outputs: [],
846
+ stateMutability: "nonpayable",
847
+ type: "function",
848
+ },
849
+ {
850
+ inputs: [
851
+ {
852
+ internalType: "uint256",
853
+ name: "nonce",
854
+ type: "uint256",
855
+ },
856
+ ],
857
+ name: "useBySigUniqueNonce",
858
+ outputs: [],
859
+ stateMutability: "nonpayable",
860
+ type: "function",
861
+ },
862
+ ];
863
+ const _bytecode = "0x6101606040818152346200045d5762002b03803803809162000022828662000461565b84398201916060818403126200045d5780516001600160401b0392908381116200045d578462000054918401620004a8565b91602090818101518581116200045d578662000072918301620004a8565b95838201518681116200045d576200008b9201620004a8565b908351858111620003745760038054906001928383811c9316801562000452575b858410146200043e57601f92838111620003f6575b50808584821160011462000394575f9162000388575b505f1982841b1c191690841b1781555b88519188831162000374576004998a548581811c9116801562000369575b8782101462000356578281116200030e575b5085918411600114620002a7579383949184925f956200029b575b50501b925f19911b1c19161786555b3315620002855760058054336001600160a01b0319821681179092556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3620001958462000503565b92610120938452620001a783620006a1565b94610140958652828151910120928360e05282815191012096610100978089524660a0528251938401947f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f86528385015260608401524660808401523060a084015260a0835260c0830196838810908811176200027257508590525190206080523060c0526123139384620007f08539608051846121eb015260a051846122b7015260c051846121bc015260e0518461223a0152518361226001525182610867015251816108910152f35b604190634e487b7160e01b5f525260245ffd5b8251631e4fbdf760e01b81525f81880152602490fd5b015193505f8062000132565b9190601f198416928b5f5284875f20945f5b8989838310620002f65750505010620002dc575b50505050811b01865562000141565b01519060f8845f19921b161c191690555f808080620002cd565b868601518955909701969485019488935001620002b9565b8b5f52865f208380870160051c8201928988106200034c575b0160051c019086905b8281106200034057505062000117565b5f815501869062000330565b9250819262000327565b60228c634e487b7160e01b5f525260245ffd5b90607f169062000105565b634e487b7160e01b5f52604160045260245ffd5b90508801515f620000d7565b859250601f19821690845f52875f20915f5b898d838310620003e0575050508311620003c8575b5050811b018155620000e7565b8a01515f1983861b60f8161c191690555f80620003bb565b84015185558996909401939283019201620003a6565b825f52855f208480840160051c82019288851062000434575b0160051c019085905b82811062000428575050620000c1565b5f815501859062000418565b925081926200040f565b634e487b7160e01b5f52602260045260245ffd5b92607f1692620000ac565b5f80fd5b601f909101601f19168101906001600160401b038211908210176200037457604052565b5f5b838110620004975750505f910152565b818101518382015260200162000487565b81601f820112156200045d5780516001600160401b038111620003745760405192620004df601f8301601f19166020018562000461565b818452602082840101116200045d5762000500916020808501910162000485565b90565b805160209081811015620005805750601f8251116200053e57808251920151908083106200053057501790565b825f19910360031b1b161790565b604490620005729260405193849263305a27a960e01b84528060048501528251928391826024870152868601910162000485565b601f01601f19168101030190fd5b906001600160401b0382116200037457600654926001938481811c9116801562000696575b838210146200043e57601f81116200065f575b5081601f8411600114620005f757509282939183925f94620005eb575b50501b915f199060031b1c19161760065560ff90565b015192505f80620005d5565b919083601f19811660065f52845f20945f905b888383106200064457505050106200062b575b505050811b0160065560ff90565b01515f1960f88460031b161c191690555f80806200061d565b8587015188559096019594850194879350908101906200060a565b60065f5284601f845f20920160051c820191601f860160051c015b8281106200068a575050620005b8565b5f81550185906200067a565b90607f1690620005a5565b805160209081811015620006ce5750601f8251116200053e57808251920151908083106200053057501790565b906001600160401b0382116200037457600754926001938481811c91168015620007e4575b838210146200043e57601f8111620007ad575b5081601f84116001146200074557509282939183925f9462000739575b50501b915f199060031b1c19161760075560ff90565b015192505f8062000723565b919083601f19811660075f52845f20945f905b8883831062000792575050501062000779575b505050811b0160075560ff90565b01515f1960f88460031b161c191690555f80806200076b565b85870151885590960195948501948793509081019062000758565b60075f5284601f845f20920160051c820191601f860160051c015b828110620007d857505062000706565b5f8155018590620007c8565b90607f1690620006f356fe608060409080825260049081361015610016575f80fd5b5f3560e01c90816306fdde03146114b75750806308b8ae3e14611439578063095ea7b3146113295780630acebbb3146112b757806318160ddd1461127b57806323b872dd146110ca5780632ca6f77114610e065780632dffc93814610dae578063313ce56714610d755780633408e47014610d3d57806334dd202614610ca25780633cc67ac714610c28578063404f551d14610b7c57806340c10f1914610aa057806370a0823114610a3f578063715018a6146109a357806384b0196e146108335780638c3adb0a146107b85780638d7e4ea0146107545780638da5cb5b1461070257806395d89b41146105df5780639dc29fac14610498578063a9059cbb14610443578063dd62ed3e146103ce578063e032e04f14610368578063eb24bae41461022f5763f2fde38b14610149575f80fd5b3461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5761018061161e565b90610189611e19565b73ffffffffffffffffffffffffffffffffffffffff8092169283156101fc575050600554827fffffffffffffffffffffffff0000000000000000000000000000000000000000821617600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3005b905f60249251917f1e4fbdf7000000000000000000000000000000000000000000000000000000008352820152fd5b5f80fd5b5060807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5761026261161e565b9160243567ffffffffffffffff60443581811161022b576102869036908601611664565b919060643591821161022b576102b5926102a66102af9336908901611664565b505036916117f8565b30611dd2565b926102be611e7f565b9473ffffffffffffffffffffffffffffffffffffffff809116913083036103415750948260809261033d976103157f91d424c26d66241302801829dc5d75ac3b3036414855f2088205e8f2705c051b96338661191a565b865193168352336020840152858301526060820152a1519182916020835260208301906115c2565b0390f35b84517fa0f3feea000000000000000000000000000000000000000000000000000000008152fd5b823461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff6103b861161e565b165f526401000000088252805f20549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209061040861161e565b610410611641565b9073ffffffffffffffffffffffffffffffffffffffff8091165f5260018452825f2091165f528252805f20549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209061049161048061161e565b6024359061048c611e7f565b61191a565b5160018152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576104d061161e565b90602435926104dd611e19565b73ffffffffffffffffffffffffffffffffffffffff83169283156105b057835f525f602052825f205491858310610551575f857fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020898881898688528785520381872055816002540360025551908152a3005b6105ac868486519485947fe450d38c000000000000000000000000000000000000000000000000000000008652850160409194939273ffffffffffffffffffffffffffffffffffffffff606083019616825260208201520152565b0390fd5b505f60249251917f96c6fd1e000000000000000000000000000000000000000000000000000000008352820152fd5b503461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57815191825f835461061e81611692565b90818452602095600191876001821691825f146106bd575050600114610661575b50505061033d929161065291038561172c565b519282849384528301906115c2565b5f90815286935091907f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8284106106a5575050508201018161065261033d61063f565b8054848a01860152889550879490930192810161068c565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168782015293151560051b86019093019350849250610652915061033d905061063f565b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff600554169051908152f35b50903461022b577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc9160208336011261022b5780359267ffffffffffffffff841161022b578290843603011261022b576020926107b19101611868565b9051908152f35b503461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57359063ffffffff821680920361022b5761082f9073ffffffffffffffffffffffffffffffffffffffff610819611e7f565b165f526401000000086020525f2091825461182e565b9055005b503461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5761088b7f0000000000000000000000000000000000000000000000000000000000000000611fb3565b916108b57f00000000000000000000000000000000000000000000000000000000000000006120e8565b815191602091602084019484861067ffffffffffffffff871117610977575061092c826020928761091f99989795525f855281519889987f0f000000000000000000000000000000000000000000000000000000000000008a5260e0868b015260e08a01906115c2565b91888303908901526115c2565b914660608701523060808701525f60a087015285830360c087015251918281520192915f5b82811061096057505050500390f35b835185528695509381019392810192600101610951565b6041907f4e487b71000000000000000000000000000000000000000000000000000000005f525260245ffd5b3461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576109d9611e19565b5f73ffffffffffffffffffffffffffffffffffffffff6005547fffffffffffffffffffffffff00000000000000000000000000000000000000008116600555167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b823461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff610a8f61161e565b165f525f8252805f20549051908152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610ad861161e565b9073ffffffffffffffffffffffffffffffffffffffff60243592610afa611e19565b16928315610b4e57506020827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92610b355f9560025461182e565b60025585855284835280852082815401905551908152a3005b5f60249251917fec442f05000000000000000000000000000000000000000000000000000000008352820152fd5b503461022b57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57357fffffffff00000000000000000000000000000000000000000000000000000000811680910361022b576024359163ffffffff831680930361022b5761082f9173ffffffffffffffffffffffffffffffffffffffff610c09611e7f565b165f52640100000009602052815f20905f526020525f2091825461182e565b503461022b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760ff600191359273ffffffffffffffffffffffffffffffffffffffff610c7c611e7f565b165f5264010000000a602052805f208460081c5f526020525f2092161b81541790555f80f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57610cd961161e565b906024357fffffffff00000000000000000000000000000000000000000000000000000000811680910361022b5773ffffffffffffffffffffffffffffffffffffffff602093165f526401000000098352815f20905f528252805f20549051908152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209051468152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576020905160128152f35b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b57602090517f9ed1889e2180e1ec4f2d7816d43eb41f27d0bbbce4557680ecf32626c070c8648152f35b50907ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc9060608236011261022b57610e3c61161e565b9160243567ffffffffffffffff80821161022b578382870193833603011261022b5760443590811161022b57610e759036908701611664565b9083359264ffffffffff8460d01c1642116110a257610e92611e7f565b69ffffffffffffffffffff808660801c16908115928315611096575b5050501561106e576024610ecf910193610ec8858761176d565b9189611a84565b156110465790610ee891610ee285611868565b87611c49565b1561101e576102af610f54610f5b92600894855463ffffffff98898260a01c1691825f14610ffe57740100000000000000000000000000000000000000000188557f8000000000000000000000000000000000000000000000000000000000000000179087015561176d565b36916117f8565b928154908160a01c16805f14610fd75761033d9550600114610fae577fffffffffffffffffffffffff00000000000000000000000000000000000000000190555b519182916020835260208301906115c2565b507f80000000000000000000000000000000000000000000000000000000000000009055610f9c565b857f06a2af9e000000000000000000000000000000000000000000000000000000005f525ffd5b50740100000000000000000000000000000000000000001787555061176d565b8483517f356a4418000000000000000000000000000000000000000000000000000000008152fd5b8685517fd9c6386f000000000000000000000000000000000000000000000000000000008152fd5b8786517f3b06dcfb000000000000000000000000000000000000000000000000000000008152fd5b161490505f8080610eae565b8786517f559895a3000000000000000000000000000000000000000000000000000000008152fd5b503461022b5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5761110261161e565b61110a611641565b9060443592611117611e7f565b9073ffffffffffffffffffffffffffffffffffffffff9081841690815f526001602052875f2092841692835f52602052875f2054937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8503611182575b6020896104918a8a8a61191a565b87851061121f575081156111f05782156111c157505f908152600160209081528782209282529182528681209286900390925583916104919080611174565b6024905f8951917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b6024905f8951917fe602df05000000000000000000000000000000000000000000000000000000008352820152fd5b906105ac88868b519485947ffb8f41b2000000000000000000000000000000000000000000000000000000008652850160409194939273ffffffffffffffffffffffffffffffffffffffff606083019616825260208201520152565b823461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b576020906002549051908152f35b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209073ffffffffffffffffffffffffffffffffffffffff61130661161e565b165f5264010000000a8252805f2060243560081c5f528252805f20549051908152f35b50903461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5761136161161e565b6024359073ffffffffffffffffffffffffffffffffffffffff80611383611e7f565b1691821561140a57169182156113db5760208095507f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f5260018252855f20855f52825280865f20558551908152a35160018152f35b6024855f8651917f94280d62000000000000000000000000000000000000000000000000000000008352820152fd5b6024865f8751917fe602df05000000000000000000000000000000000000000000000000000000008352820152fd5b823461022b57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760209061147361161e565b9073ffffffffffffffffffffffffffffffffffffffff60243592165f5264010000000a8352805f208260081c5f528352600160ff825f2054925193161b1615158152f35b833461022b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022b5760035490825f6114f584611692565b808352602094600190866001821691825f14611582575050600114611527575b505061033d929161065291038561172c565b9085925060035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b915f925b82841061156a5750505082010181610652611515565b8054848a018601528895508794909301928101611554565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168682015292151560051b850190920192508391506106529050611515565b91908251928382525f5b84811061160a5750507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f845f6020809697860101520116010190565b6020818301810151848301820152016115cc565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361022b57565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361022b57565b9181601f8401121561022b5782359167ffffffffffffffff831161022b576020838186019501011161022b57565b90600182811c921680156116d9575b60208310146116ac57565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f16916116a1565b6040810190811067ffffffffffffffff8211176116ff57604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176116ff57604052565b9035907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18136030182121561022b570180359067ffffffffffffffff821161022b5760200191813603831361022b57565b67ffffffffffffffff81116116ff57601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b929192611804826117be565b91611812604051938461172c565b82948184528183011161022b578281602093845f960137010152565b9190820180921161183b57565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b611878610f54602083018361176d565b60208151910120906040519160208301917f9ed1889e2180e1ec4f2d7816d43eb41f27d0bbbce4557680ecf32626c070c8648352356040840152606083015260608252608082019180831067ffffffffffffffff8411176116ff576042926040525190206118e46121a5565b90604051917f19010000000000000000000000000000000000000000000000000000000000008352600283015260228201522090565b9173ffffffffffffffffffffffffffffffffffffffff808416928315611a2757169283156119f757825f525f60205260405f20549082821061199f5750817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f5260405f20818154019055604051908152a3565b6040517fe450d38c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff919091166004820152602481019190915260448101829052606490fd5b60246040517fec442f050000000000000000000000000000000000000000000000000000000081525f6004820152fd5b60246040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f6004820152fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461183b5760010190565b9190928360fe1c9160028311611c1f576003831015611bf2576fffffffffffffffffffffffffffffffff8516918315611bbb5760018414611b2657505050600214611acf5750505f90565b73ffffffffffffffffffffffffffffffffffffffff165f5264010000000a60205260405f206effffffffffffffffffffffffffffff8260081c165f5260205260405f2090600160ff835492161b8117809255141590565b92509273ffffffffffffffffffffffffffffffffffffffff919450165f5264010000000960205260405f2091357fffffffff000000000000000000000000000000000000000000000000000000009181838093169160048110611ba5575b50509050165f5260205260405f2090815491611b9f83611a57565b90551490565b8391925060040360031b1b161681905f80611b84565b505092505073ffffffffffffffffffffffffffffffffffffffff165f5264010000000860205260405f2090815491611b9f83611a57565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b60046040517f5f640821000000000000000000000000000000000000000000000000000000008152fd5b90919273ffffffffffffffffffffffffffffffffffffffff91828116928315611dc857604093848414918215611dbd575b82611cf0575b5050611ce657602092825f9384978351937f1626ba7e0000000000000000000000000000000000000000000000000000000098898652600486015260248501528160448501526064840137606401915afa611cd9575090565b5f51143d60201416919050565b5050505050600190565b9091505f85518580604114611da557604014611d6057505f805b611d19575b5016145f80611c80565b7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a160608201511015611d0f5760209150608081895f935282805260015afa505f515f611d0f565b807f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208b01358060ff1c601b01602084015260208c8b850137166060820152611d0a565b50868901355f1a602082015280878a81830137611d0a565b604185149250611c7a565b5050505050505f90565b5f80611e0e93602081519101845af43d15611e11573d91611df2836117be565b92611e00604051948561172c565b83523d5f602085013e611f13565b90565b606091611f13565b73ffffffffffffffffffffffffffffffffffffffff806005541681611e3c611e7f565b1603611e455750565b602490611e50611e7f565b6040517f118cdaa700000000000000000000000000000000000000000000000000000000815291166004820152fd5b63ffffffff60085460a01c168015611f0e577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff810181811161183b576401000000001115611ee4576007015473ffffffffffffffffffffffffffffffffffffffff1690565b60046040517f4e23d035000000000000000000000000000000000000000000000000000000008152fd5b503390565b90611f525750805115611f2857805190602001fd5b60046040517f1425ea42000000000000000000000000000000000000000000000000000000008152fd5b81511580611faa575b611f63575090565b60249073ffffffffffffffffffffffffffffffffffffffff604051917f9996b315000000000000000000000000000000000000000000000000000000008352166004820152fd5b50803b15611f5b565b60ff81146120095760ff811690601f8211611fdf5760405191611fd5836116e3565b8252602082015290565b60046040517fb3512b0c000000000000000000000000000000000000000000000000000000008152fd5b50604051600654815f61201b83611692565b808352926020906001908181169081156120a55750600114612046575b5050611e0e9250038261172c565b91509260065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f935f925b82841061208d5750611e0e9450505081016020015f80612038565b85548785018301529485019486945092810192612072565b905060209350611e0e9592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b8201015f80612038565b60ff811461210a5760ff811690601f8211611fdf5760405191611fd5836116e3565b50604051600754815f61211c83611692565b808352926020906001908181169081156120a55750600114612146575050611e0e9250038261172c565b91509260075f527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688935f925b82841061218d5750611e0e9450505081016020015f80612038565b85548785018301529485019486945092810192612172565b73ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000163014806122b4575b1561220d577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a0815260c0810181811067ffffffffffffffff8211176116ff5760405251902090565b507f000000000000000000000000000000000000000000000000000000000000000046146121e456fea264697066735822122013c8c520e2bf6f52387f1f93fb5c11bce88436a2507d5797cae153bbbf27baf364736f6c63430008170033";
864
+ const isSuperArgs = (xs) => xs.length > 1;
865
+ class TokenWithBySig__factory extends ethers_1.ContractFactory {
866
+ constructor(...args) {
867
+ if (isSuperArgs(args)) {
868
+ super(...args);
869
+ }
870
+ else {
871
+ super(_abi, _bytecode, args[0]);
872
+ }
873
+ }
874
+ getDeployTransaction(name, symbol, version, overrides) {
875
+ return super.getDeployTransaction(name, symbol, version, overrides || {});
876
+ }
877
+ deploy(name, symbol, version, overrides) {
878
+ return super.deploy(name, symbol, version, overrides || {});
879
+ }
880
+ connect(runner) {
881
+ return super.connect(runner);
882
+ }
883
+ static createInterface() {
884
+ return new ethers_1.Interface(_abi);
885
+ }
886
+ static connect(address, runner) {
887
+ return new ethers_1.Contract(address, _abi, runner);
888
+ }
889
+ }
890
+ exports.TokenWithBySig__factory = TokenWithBySig__factory;
891
+ TokenWithBySig__factory.bytecode = _bytecode;
892
+ TokenWithBySig__factory.abi = _abi;
893
+ //# sourceMappingURL=TokenWithBySig__factory.js.map