@arcblock/erc721did-contract 0.3.1 → 0.3.3
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.
- package/README.md +8 -0
- package/lib/cjs/ERC721DID.json +735 -0
- package/lib/cjs/ERC721DIDFactory.json +165 -0
- package/lib/{EvmChainList.json → cjs/EvmChainList.json} +23 -19
- package/lib/{contract.js → cjs/contract.js} +91 -66
- package/lib/esm/ERC721DID.json +735 -0
- package/lib/esm/ERC721DIDFactory.json +165 -0
- package/lib/esm/EvmChainList.json +54 -0
- package/lib/esm/contract.js +1414 -0
- package/package.json +26 -15
- package/lib/ERC721DID.json +0 -725
- package/lib/ERC721DIDFactory.json +0 -155
|
@@ -0,0 +1,1414 @@
|
|
|
1
|
+
import require$$0 from 'dotenv-flow';
|
|
2
|
+
import * as ethers$1 from 'ethers';
|
|
3
|
+
import require$$2 from 'axios';
|
|
4
|
+
import require$$3 from 'p-wait-for';
|
|
5
|
+
import * as util from '@ocap/util';
|
|
6
|
+
import require$$5 from 'lodash/upperFirst';
|
|
7
|
+
import require$$6 from 'lodash/keyBy';
|
|
8
|
+
import require$$7 from 'lodash/pick';
|
|
9
|
+
|
|
10
|
+
function getAugmentedNamespace(n) {
|
|
11
|
+
if (n.__esModule) return n;
|
|
12
|
+
var f = n.default;
|
|
13
|
+
if (typeof f == "function") {
|
|
14
|
+
var a = function a () {
|
|
15
|
+
if (this instanceof a) {
|
|
16
|
+
var args = [null];
|
|
17
|
+
args.push.apply(args, arguments);
|
|
18
|
+
var Ctor = Function.bind.apply(f, args);
|
|
19
|
+
return new Ctor();
|
|
20
|
+
}
|
|
21
|
+
return f.apply(this, arguments);
|
|
22
|
+
};
|
|
23
|
+
a.prototype = f.prototype;
|
|
24
|
+
} else a = {};
|
|
25
|
+
Object.defineProperty(a, '__esModule', {value: true});
|
|
26
|
+
Object.keys(n).forEach(function (k) {
|
|
27
|
+
var d = Object.getOwnPropertyDescriptor(n, k);
|
|
28
|
+
Object.defineProperty(a, k, d.get ? d : {
|
|
29
|
+
enumerable: true,
|
|
30
|
+
get: function () {
|
|
31
|
+
return n[k];
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
return a;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
var contract$1 = {};
|
|
39
|
+
|
|
40
|
+
var require$$1 = /*@__PURE__*/getAugmentedNamespace(ethers$1);
|
|
41
|
+
|
|
42
|
+
var require$$4 = /*@__PURE__*/getAugmentedNamespace(util);
|
|
43
|
+
|
|
44
|
+
var _format$1 = "hh-sol-artifact-1";
|
|
45
|
+
var contractName$1 = "ERC721DID";
|
|
46
|
+
var sourceName$1 = "src/ERC721DID.sol";
|
|
47
|
+
var abi$1 = [
|
|
48
|
+
{
|
|
49
|
+
inputs: [
|
|
50
|
+
],
|
|
51
|
+
stateMutability: "nonpayable",
|
|
52
|
+
type: "constructor"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
anonymous: false,
|
|
56
|
+
inputs: [
|
|
57
|
+
{
|
|
58
|
+
indexed: true,
|
|
59
|
+
internalType: "address",
|
|
60
|
+
name: "to",
|
|
61
|
+
type: "address"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
indexed: true,
|
|
65
|
+
internalType: "uint256",
|
|
66
|
+
name: "tokenId",
|
|
67
|
+
type: "uint256"
|
|
68
|
+
}
|
|
69
|
+
],
|
|
70
|
+
name: "Acquired",
|
|
71
|
+
type: "event"
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
anonymous: false,
|
|
75
|
+
inputs: [
|
|
76
|
+
{
|
|
77
|
+
indexed: true,
|
|
78
|
+
internalType: "address",
|
|
79
|
+
name: "owner",
|
|
80
|
+
type: "address"
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
indexed: true,
|
|
84
|
+
internalType: "address",
|
|
85
|
+
name: "approved",
|
|
86
|
+
type: "address"
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
indexed: true,
|
|
90
|
+
internalType: "uint256",
|
|
91
|
+
name: "tokenId",
|
|
92
|
+
type: "uint256"
|
|
93
|
+
}
|
|
94
|
+
],
|
|
95
|
+
name: "Approval",
|
|
96
|
+
type: "event"
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
anonymous: false,
|
|
100
|
+
inputs: [
|
|
101
|
+
{
|
|
102
|
+
indexed: true,
|
|
103
|
+
internalType: "address",
|
|
104
|
+
name: "owner",
|
|
105
|
+
type: "address"
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
indexed: true,
|
|
109
|
+
internalType: "address",
|
|
110
|
+
name: "operator",
|
|
111
|
+
type: "address"
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
indexed: false,
|
|
115
|
+
internalType: "bool",
|
|
116
|
+
name: "approved",
|
|
117
|
+
type: "bool"
|
|
118
|
+
}
|
|
119
|
+
],
|
|
120
|
+
name: "ApprovalForAll",
|
|
121
|
+
type: "event"
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
anonymous: false,
|
|
125
|
+
inputs: [
|
|
126
|
+
{
|
|
127
|
+
indexed: false,
|
|
128
|
+
internalType: "uint8",
|
|
129
|
+
name: "version",
|
|
130
|
+
type: "uint8"
|
|
131
|
+
}
|
|
132
|
+
],
|
|
133
|
+
name: "Initialized",
|
|
134
|
+
type: "event"
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
anonymous: false,
|
|
138
|
+
inputs: [
|
|
139
|
+
{
|
|
140
|
+
indexed: false,
|
|
141
|
+
internalType: "address",
|
|
142
|
+
name: "userAddress",
|
|
143
|
+
type: "address"
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
indexed: false,
|
|
147
|
+
internalType: "address payable",
|
|
148
|
+
name: "relayerAddress",
|
|
149
|
+
type: "address"
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
indexed: false,
|
|
153
|
+
internalType: "bytes",
|
|
154
|
+
name: "functionSignature",
|
|
155
|
+
type: "bytes"
|
|
156
|
+
}
|
|
157
|
+
],
|
|
158
|
+
name: "MetaTransactionExecuted",
|
|
159
|
+
type: "event"
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
anonymous: false,
|
|
163
|
+
inputs: [
|
|
164
|
+
{
|
|
165
|
+
indexed: true,
|
|
166
|
+
internalType: "address",
|
|
167
|
+
name: "to",
|
|
168
|
+
type: "address"
|
|
169
|
+
},
|
|
170
|
+
{
|
|
171
|
+
indexed: true,
|
|
172
|
+
internalType: "uint256",
|
|
173
|
+
name: "tokenId",
|
|
174
|
+
type: "uint256"
|
|
175
|
+
}
|
|
176
|
+
],
|
|
177
|
+
name: "Minted",
|
|
178
|
+
type: "event"
|
|
179
|
+
},
|
|
180
|
+
{
|
|
181
|
+
anonymous: false,
|
|
182
|
+
inputs: [
|
|
183
|
+
{
|
|
184
|
+
indexed: true,
|
|
185
|
+
internalType: "address",
|
|
186
|
+
name: "previousOwner",
|
|
187
|
+
type: "address"
|
|
188
|
+
},
|
|
189
|
+
{
|
|
190
|
+
indexed: true,
|
|
191
|
+
internalType: "address",
|
|
192
|
+
name: "newOwner",
|
|
193
|
+
type: "address"
|
|
194
|
+
}
|
|
195
|
+
],
|
|
196
|
+
name: "OwnershipTransferred",
|
|
197
|
+
type: "event"
|
|
198
|
+
},
|
|
199
|
+
{
|
|
200
|
+
anonymous: false,
|
|
201
|
+
inputs: [
|
|
202
|
+
{
|
|
203
|
+
indexed: true,
|
|
204
|
+
internalType: "address",
|
|
205
|
+
name: "from",
|
|
206
|
+
type: "address"
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
indexed: true,
|
|
210
|
+
internalType: "address",
|
|
211
|
+
name: "to",
|
|
212
|
+
type: "address"
|
|
213
|
+
},
|
|
214
|
+
{
|
|
215
|
+
indexed: true,
|
|
216
|
+
internalType: "uint256",
|
|
217
|
+
name: "tokenId",
|
|
218
|
+
type: "uint256"
|
|
219
|
+
}
|
|
220
|
+
],
|
|
221
|
+
name: "Transfer",
|
|
222
|
+
type: "event"
|
|
223
|
+
},
|
|
224
|
+
{
|
|
225
|
+
inputs: [
|
|
226
|
+
],
|
|
227
|
+
name: "ERC712_VERSION",
|
|
228
|
+
outputs: [
|
|
229
|
+
{
|
|
230
|
+
internalType: "string",
|
|
231
|
+
name: "",
|
|
232
|
+
type: "string"
|
|
233
|
+
}
|
|
234
|
+
],
|
|
235
|
+
stateMutability: "view",
|
|
236
|
+
type: "function"
|
|
237
|
+
},
|
|
238
|
+
{
|
|
239
|
+
inputs: [
|
|
240
|
+
{
|
|
241
|
+
internalType: "address",
|
|
242
|
+
name: "_to",
|
|
243
|
+
type: "address"
|
|
244
|
+
}
|
|
245
|
+
],
|
|
246
|
+
name: "acquireAsset",
|
|
247
|
+
outputs: [
|
|
248
|
+
],
|
|
249
|
+
stateMutability: "payable",
|
|
250
|
+
type: "function"
|
|
251
|
+
},
|
|
252
|
+
{
|
|
253
|
+
inputs: [
|
|
254
|
+
{
|
|
255
|
+
internalType: "address",
|
|
256
|
+
name: "to",
|
|
257
|
+
type: "address"
|
|
258
|
+
},
|
|
259
|
+
{
|
|
260
|
+
internalType: "uint256",
|
|
261
|
+
name: "tokenId",
|
|
262
|
+
type: "uint256"
|
|
263
|
+
}
|
|
264
|
+
],
|
|
265
|
+
name: "approve",
|
|
266
|
+
outputs: [
|
|
267
|
+
],
|
|
268
|
+
stateMutability: "nonpayable",
|
|
269
|
+
type: "function"
|
|
270
|
+
},
|
|
271
|
+
{
|
|
272
|
+
inputs: [
|
|
273
|
+
{
|
|
274
|
+
internalType: "address",
|
|
275
|
+
name: "owner",
|
|
276
|
+
type: "address"
|
|
277
|
+
}
|
|
278
|
+
],
|
|
279
|
+
name: "balanceOf",
|
|
280
|
+
outputs: [
|
|
281
|
+
{
|
|
282
|
+
internalType: "uint256",
|
|
283
|
+
name: "",
|
|
284
|
+
type: "uint256"
|
|
285
|
+
}
|
|
286
|
+
],
|
|
287
|
+
stateMutability: "view",
|
|
288
|
+
type: "function"
|
|
289
|
+
},
|
|
290
|
+
{
|
|
291
|
+
inputs: [
|
|
292
|
+
],
|
|
293
|
+
name: "contractURI",
|
|
294
|
+
outputs: [
|
|
295
|
+
{
|
|
296
|
+
internalType: "string",
|
|
297
|
+
name: "",
|
|
298
|
+
type: "string"
|
|
299
|
+
}
|
|
300
|
+
],
|
|
301
|
+
stateMutability: "view",
|
|
302
|
+
type: "function"
|
|
303
|
+
},
|
|
304
|
+
{
|
|
305
|
+
inputs: [
|
|
306
|
+
{
|
|
307
|
+
internalType: "address",
|
|
308
|
+
name: "userAddress",
|
|
309
|
+
type: "address"
|
|
310
|
+
},
|
|
311
|
+
{
|
|
312
|
+
internalType: "bytes",
|
|
313
|
+
name: "functionSignature",
|
|
314
|
+
type: "bytes"
|
|
315
|
+
},
|
|
316
|
+
{
|
|
317
|
+
internalType: "bytes32",
|
|
318
|
+
name: "sigR",
|
|
319
|
+
type: "bytes32"
|
|
320
|
+
},
|
|
321
|
+
{
|
|
322
|
+
internalType: "bytes32",
|
|
323
|
+
name: "sigS",
|
|
324
|
+
type: "bytes32"
|
|
325
|
+
},
|
|
326
|
+
{
|
|
327
|
+
internalType: "uint8",
|
|
328
|
+
name: "sigV",
|
|
329
|
+
type: "uint8"
|
|
330
|
+
}
|
|
331
|
+
],
|
|
332
|
+
name: "executeMetaTransaction",
|
|
333
|
+
outputs: [
|
|
334
|
+
{
|
|
335
|
+
internalType: "bytes",
|
|
336
|
+
name: "",
|
|
337
|
+
type: "bytes"
|
|
338
|
+
}
|
|
339
|
+
],
|
|
340
|
+
stateMutability: "payable",
|
|
341
|
+
type: "function"
|
|
342
|
+
},
|
|
343
|
+
{
|
|
344
|
+
inputs: [
|
|
345
|
+
{
|
|
346
|
+
internalType: "uint256",
|
|
347
|
+
name: "_tokenId",
|
|
348
|
+
type: "uint256"
|
|
349
|
+
}
|
|
350
|
+
],
|
|
351
|
+
name: "formatTokenURIValue",
|
|
352
|
+
outputs: [
|
|
353
|
+
{
|
|
354
|
+
internalType: "string",
|
|
355
|
+
name: "",
|
|
356
|
+
type: "string"
|
|
357
|
+
}
|
|
358
|
+
],
|
|
359
|
+
stateMutability: "view",
|
|
360
|
+
type: "function"
|
|
361
|
+
},
|
|
362
|
+
{
|
|
363
|
+
inputs: [
|
|
364
|
+
{
|
|
365
|
+
internalType: "uint256",
|
|
366
|
+
name: "tokenId",
|
|
367
|
+
type: "uint256"
|
|
368
|
+
}
|
|
369
|
+
],
|
|
370
|
+
name: "getApproved",
|
|
371
|
+
outputs: [
|
|
372
|
+
{
|
|
373
|
+
internalType: "address",
|
|
374
|
+
name: "",
|
|
375
|
+
type: "address"
|
|
376
|
+
}
|
|
377
|
+
],
|
|
378
|
+
stateMutability: "view",
|
|
379
|
+
type: "function"
|
|
380
|
+
},
|
|
381
|
+
{
|
|
382
|
+
inputs: [
|
|
383
|
+
],
|
|
384
|
+
name: "getChainId",
|
|
385
|
+
outputs: [
|
|
386
|
+
{
|
|
387
|
+
internalType: "uint256",
|
|
388
|
+
name: "",
|
|
389
|
+
type: "uint256"
|
|
390
|
+
}
|
|
391
|
+
],
|
|
392
|
+
stateMutability: "view",
|
|
393
|
+
type: "function"
|
|
394
|
+
},
|
|
395
|
+
{
|
|
396
|
+
inputs: [
|
|
397
|
+
{
|
|
398
|
+
internalType: "uint256",
|
|
399
|
+
name: "_tokenId",
|
|
400
|
+
type: "uint256"
|
|
401
|
+
}
|
|
402
|
+
],
|
|
403
|
+
name: "getDIDByTokenId",
|
|
404
|
+
outputs: [
|
|
405
|
+
{
|
|
406
|
+
internalType: "string",
|
|
407
|
+
name: "",
|
|
408
|
+
type: "string"
|
|
409
|
+
}
|
|
410
|
+
],
|
|
411
|
+
stateMutability: "view",
|
|
412
|
+
type: "function"
|
|
413
|
+
},
|
|
414
|
+
{
|
|
415
|
+
inputs: [
|
|
416
|
+
],
|
|
417
|
+
name: "getDomainSeperator",
|
|
418
|
+
outputs: [
|
|
419
|
+
{
|
|
420
|
+
internalType: "bytes32",
|
|
421
|
+
name: "",
|
|
422
|
+
type: "bytes32"
|
|
423
|
+
}
|
|
424
|
+
],
|
|
425
|
+
stateMutability: "view",
|
|
426
|
+
type: "function"
|
|
427
|
+
},
|
|
428
|
+
{
|
|
429
|
+
inputs: [
|
|
430
|
+
{
|
|
431
|
+
internalType: "address",
|
|
432
|
+
name: "user",
|
|
433
|
+
type: "address"
|
|
434
|
+
}
|
|
435
|
+
],
|
|
436
|
+
name: "getNonce",
|
|
437
|
+
outputs: [
|
|
438
|
+
{
|
|
439
|
+
internalType: "uint256",
|
|
440
|
+
name: "nonce",
|
|
441
|
+
type: "uint256"
|
|
442
|
+
}
|
|
443
|
+
],
|
|
444
|
+
stateMutability: "view",
|
|
445
|
+
type: "function"
|
|
446
|
+
},
|
|
447
|
+
{
|
|
448
|
+
inputs: [
|
|
449
|
+
{
|
|
450
|
+
internalType: "address",
|
|
451
|
+
name: "_proxyRegistryAddress",
|
|
452
|
+
type: "address"
|
|
453
|
+
},
|
|
454
|
+
{
|
|
455
|
+
internalType: "string",
|
|
456
|
+
name: "_baseImageURI",
|
|
457
|
+
type: "string"
|
|
458
|
+
},
|
|
459
|
+
{
|
|
460
|
+
internalType: "string",
|
|
461
|
+
name: "_contractName",
|
|
462
|
+
type: "string"
|
|
463
|
+
},
|
|
464
|
+
{
|
|
465
|
+
internalType: "string",
|
|
466
|
+
name: "_contractSymbol",
|
|
467
|
+
type: "string"
|
|
468
|
+
},
|
|
469
|
+
{
|
|
470
|
+
internalType: "string",
|
|
471
|
+
name: "_contractDescription",
|
|
472
|
+
type: "string"
|
|
473
|
+
},
|
|
474
|
+
{
|
|
475
|
+
internalType: "uint256",
|
|
476
|
+
name: "_totalLimit",
|
|
477
|
+
type: "uint256"
|
|
478
|
+
},
|
|
479
|
+
{
|
|
480
|
+
internalType: "uint256",
|
|
481
|
+
name: "_price",
|
|
482
|
+
type: "uint256"
|
|
483
|
+
},
|
|
484
|
+
{
|
|
485
|
+
internalType: "address payable",
|
|
486
|
+
name: "_transferTokenAddress",
|
|
487
|
+
type: "address"
|
|
488
|
+
}
|
|
489
|
+
],
|
|
490
|
+
name: "initialize",
|
|
491
|
+
outputs: [
|
|
492
|
+
],
|
|
493
|
+
stateMutability: "nonpayable",
|
|
494
|
+
type: "function"
|
|
495
|
+
},
|
|
496
|
+
{
|
|
497
|
+
inputs: [
|
|
498
|
+
{
|
|
499
|
+
internalType: "address",
|
|
500
|
+
name: "owner",
|
|
501
|
+
type: "address"
|
|
502
|
+
},
|
|
503
|
+
{
|
|
504
|
+
internalType: "address",
|
|
505
|
+
name: "operator",
|
|
506
|
+
type: "address"
|
|
507
|
+
}
|
|
508
|
+
],
|
|
509
|
+
name: "isApprovedForAll",
|
|
510
|
+
outputs: [
|
|
511
|
+
{
|
|
512
|
+
internalType: "bool",
|
|
513
|
+
name: "",
|
|
514
|
+
type: "bool"
|
|
515
|
+
}
|
|
516
|
+
],
|
|
517
|
+
stateMutability: "view",
|
|
518
|
+
type: "function"
|
|
519
|
+
},
|
|
520
|
+
{
|
|
521
|
+
inputs: [
|
|
522
|
+
{
|
|
523
|
+
internalType: "address",
|
|
524
|
+
name: "_to",
|
|
525
|
+
type: "address"
|
|
526
|
+
}
|
|
527
|
+
],
|
|
528
|
+
name: "mintAsset",
|
|
529
|
+
outputs: [
|
|
530
|
+
],
|
|
531
|
+
stateMutability: "nonpayable",
|
|
532
|
+
type: "function"
|
|
533
|
+
},
|
|
534
|
+
{
|
|
535
|
+
inputs: [
|
|
536
|
+
],
|
|
537
|
+
name: "name",
|
|
538
|
+
outputs: [
|
|
539
|
+
{
|
|
540
|
+
internalType: "string",
|
|
541
|
+
name: "",
|
|
542
|
+
type: "string"
|
|
543
|
+
}
|
|
544
|
+
],
|
|
545
|
+
stateMutability: "view",
|
|
546
|
+
type: "function"
|
|
547
|
+
},
|
|
548
|
+
{
|
|
549
|
+
inputs: [
|
|
550
|
+
],
|
|
551
|
+
name: "owner",
|
|
552
|
+
outputs: [
|
|
553
|
+
{
|
|
554
|
+
internalType: "address",
|
|
555
|
+
name: "",
|
|
556
|
+
type: "address"
|
|
557
|
+
}
|
|
558
|
+
],
|
|
559
|
+
stateMutability: "view",
|
|
560
|
+
type: "function"
|
|
561
|
+
},
|
|
562
|
+
{
|
|
563
|
+
inputs: [
|
|
564
|
+
{
|
|
565
|
+
internalType: "uint256",
|
|
566
|
+
name: "tokenId",
|
|
567
|
+
type: "uint256"
|
|
568
|
+
}
|
|
569
|
+
],
|
|
570
|
+
name: "ownerOf",
|
|
571
|
+
outputs: [
|
|
572
|
+
{
|
|
573
|
+
internalType: "address",
|
|
574
|
+
name: "",
|
|
575
|
+
type: "address"
|
|
576
|
+
}
|
|
577
|
+
],
|
|
578
|
+
stateMutability: "view",
|
|
579
|
+
type: "function"
|
|
580
|
+
},
|
|
581
|
+
{
|
|
582
|
+
inputs: [
|
|
583
|
+
],
|
|
584
|
+
name: "price",
|
|
585
|
+
outputs: [
|
|
586
|
+
{
|
|
587
|
+
internalType: "uint256",
|
|
588
|
+
name: "",
|
|
589
|
+
type: "uint256"
|
|
590
|
+
}
|
|
591
|
+
],
|
|
592
|
+
stateMutability: "view",
|
|
593
|
+
type: "function"
|
|
594
|
+
},
|
|
595
|
+
{
|
|
596
|
+
inputs: [
|
|
597
|
+
],
|
|
598
|
+
name: "renounceOwnership",
|
|
599
|
+
outputs: [
|
|
600
|
+
],
|
|
601
|
+
stateMutability: "nonpayable",
|
|
602
|
+
type: "function"
|
|
603
|
+
},
|
|
604
|
+
{
|
|
605
|
+
inputs: [
|
|
606
|
+
{
|
|
607
|
+
internalType: "address",
|
|
608
|
+
name: "from",
|
|
609
|
+
type: "address"
|
|
610
|
+
},
|
|
611
|
+
{
|
|
612
|
+
internalType: "address",
|
|
613
|
+
name: "to",
|
|
614
|
+
type: "address"
|
|
615
|
+
},
|
|
616
|
+
{
|
|
617
|
+
internalType: "uint256",
|
|
618
|
+
name: "tokenId",
|
|
619
|
+
type: "uint256"
|
|
620
|
+
}
|
|
621
|
+
],
|
|
622
|
+
name: "safeTransferFrom",
|
|
623
|
+
outputs: [
|
|
624
|
+
],
|
|
625
|
+
stateMutability: "nonpayable",
|
|
626
|
+
type: "function"
|
|
627
|
+
},
|
|
628
|
+
{
|
|
629
|
+
inputs: [
|
|
630
|
+
{
|
|
631
|
+
internalType: "address",
|
|
632
|
+
name: "from",
|
|
633
|
+
type: "address"
|
|
634
|
+
},
|
|
635
|
+
{
|
|
636
|
+
internalType: "address",
|
|
637
|
+
name: "to",
|
|
638
|
+
type: "address"
|
|
639
|
+
},
|
|
640
|
+
{
|
|
641
|
+
internalType: "uint256",
|
|
642
|
+
name: "tokenId",
|
|
643
|
+
type: "uint256"
|
|
644
|
+
},
|
|
645
|
+
{
|
|
646
|
+
internalType: "bytes",
|
|
647
|
+
name: "data",
|
|
648
|
+
type: "bytes"
|
|
649
|
+
}
|
|
650
|
+
],
|
|
651
|
+
name: "safeTransferFrom",
|
|
652
|
+
outputs: [
|
|
653
|
+
],
|
|
654
|
+
stateMutability: "nonpayable",
|
|
655
|
+
type: "function"
|
|
656
|
+
},
|
|
657
|
+
{
|
|
658
|
+
inputs: [
|
|
659
|
+
{
|
|
660
|
+
internalType: "address",
|
|
661
|
+
name: "operator",
|
|
662
|
+
type: "address"
|
|
663
|
+
},
|
|
664
|
+
{
|
|
665
|
+
internalType: "bool",
|
|
666
|
+
name: "approved",
|
|
667
|
+
type: "bool"
|
|
668
|
+
}
|
|
669
|
+
],
|
|
670
|
+
name: "setApprovalForAll",
|
|
671
|
+
outputs: [
|
|
672
|
+
],
|
|
673
|
+
stateMutability: "nonpayable",
|
|
674
|
+
type: "function"
|
|
675
|
+
},
|
|
676
|
+
{
|
|
677
|
+
inputs: [
|
|
678
|
+
{
|
|
679
|
+
internalType: "bytes4",
|
|
680
|
+
name: "interfaceId",
|
|
681
|
+
type: "bytes4"
|
|
682
|
+
}
|
|
683
|
+
],
|
|
684
|
+
name: "supportsInterface",
|
|
685
|
+
outputs: [
|
|
686
|
+
{
|
|
687
|
+
internalType: "bool",
|
|
688
|
+
name: "",
|
|
689
|
+
type: "bool"
|
|
690
|
+
}
|
|
691
|
+
],
|
|
692
|
+
stateMutability: "view",
|
|
693
|
+
type: "function"
|
|
694
|
+
},
|
|
695
|
+
{
|
|
696
|
+
inputs: [
|
|
697
|
+
],
|
|
698
|
+
name: "symbol",
|
|
699
|
+
outputs: [
|
|
700
|
+
{
|
|
701
|
+
internalType: "string",
|
|
702
|
+
name: "",
|
|
703
|
+
type: "string"
|
|
704
|
+
}
|
|
705
|
+
],
|
|
706
|
+
stateMutability: "view",
|
|
707
|
+
type: "function"
|
|
708
|
+
},
|
|
709
|
+
{
|
|
710
|
+
inputs: [
|
|
711
|
+
{
|
|
712
|
+
internalType: "uint256",
|
|
713
|
+
name: "_tokenId",
|
|
714
|
+
type: "uint256"
|
|
715
|
+
}
|
|
716
|
+
],
|
|
717
|
+
name: "tokenURI",
|
|
718
|
+
outputs: [
|
|
719
|
+
{
|
|
720
|
+
internalType: "string",
|
|
721
|
+
name: "",
|
|
722
|
+
type: "string"
|
|
723
|
+
}
|
|
724
|
+
],
|
|
725
|
+
stateMutability: "view",
|
|
726
|
+
type: "function"
|
|
727
|
+
},
|
|
728
|
+
{
|
|
729
|
+
inputs: [
|
|
730
|
+
],
|
|
731
|
+
name: "totalLimit",
|
|
732
|
+
outputs: [
|
|
733
|
+
{
|
|
734
|
+
internalType: "uint256",
|
|
735
|
+
name: "",
|
|
736
|
+
type: "uint256"
|
|
737
|
+
}
|
|
738
|
+
],
|
|
739
|
+
stateMutability: "view",
|
|
740
|
+
type: "function"
|
|
741
|
+
},
|
|
742
|
+
{
|
|
743
|
+
inputs: [
|
|
744
|
+
],
|
|
745
|
+
name: "totalSupply",
|
|
746
|
+
outputs: [
|
|
747
|
+
{
|
|
748
|
+
internalType: "uint256",
|
|
749
|
+
name: "",
|
|
750
|
+
type: "uint256"
|
|
751
|
+
}
|
|
752
|
+
],
|
|
753
|
+
stateMutability: "view",
|
|
754
|
+
type: "function"
|
|
755
|
+
},
|
|
756
|
+
{
|
|
757
|
+
inputs: [
|
|
758
|
+
{
|
|
759
|
+
internalType: "address",
|
|
760
|
+
name: "from",
|
|
761
|
+
type: "address"
|
|
762
|
+
},
|
|
763
|
+
{
|
|
764
|
+
internalType: "address",
|
|
765
|
+
name: "to",
|
|
766
|
+
type: "address"
|
|
767
|
+
},
|
|
768
|
+
{
|
|
769
|
+
internalType: "uint256",
|
|
770
|
+
name: "tokenId",
|
|
771
|
+
type: "uint256"
|
|
772
|
+
}
|
|
773
|
+
],
|
|
774
|
+
name: "transferFrom",
|
|
775
|
+
outputs: [
|
|
776
|
+
],
|
|
777
|
+
stateMutability: "nonpayable",
|
|
778
|
+
type: "function"
|
|
779
|
+
},
|
|
780
|
+
{
|
|
781
|
+
inputs: [
|
|
782
|
+
{
|
|
783
|
+
internalType: "address",
|
|
784
|
+
name: "newOwner",
|
|
785
|
+
type: "address"
|
|
786
|
+
}
|
|
787
|
+
],
|
|
788
|
+
name: "transferOwnership",
|
|
789
|
+
outputs: [
|
|
790
|
+
],
|
|
791
|
+
stateMutability: "nonpayable",
|
|
792
|
+
type: "function"
|
|
793
|
+
}
|
|
794
|
+
];
|
|
795
|
+
var bytecode$1 = "0x60806040526006805460ff191690553480156200001b57600080fd5b506040805180820182526009815268115490cdcc8c51125160ba1b60208083019182528351808501909452600384526210509560ea1b908401528151919291620000689160009162000234565b5080516200007e90600190602084019062000234565b5050506200009b62000095620000c260201b60201c565b620000de565b620000a562000130565b620000bc600a620001cc60201b6200105f1760201c565b62000383565b6000620000d9620001d560201b620010681760201c565b905090565b600980546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600954600160a81b900460ff1615620001665760405162461bcd60e51b81526004016200015d90620002da565b60405180910390fd5b600954600160a01b900460ff90811614620001ca576009805460ff60a01b191660ff60a01b1790556040517f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890620001c19060ff906200032c565b60405180910390a15b565b80546001019055565b6000333014156200022e57600080368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b03169150620002319050565b50335b90565b828054620002429062000352565b90600052602060002090601f016020900481019282620002665760008555620002b1565b82601f106200028157805160ff1916838001178555620002b1565b82800160010185558215620002b1579182015b82811115620002b157825182559160200191906001019062000294565b50620002bf929150620002c3565b5090565b5b80821115620002bf5760008155600101620002c4565b602080825281016200032681602781527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469602082015266616c697a696e6760c81b604082015260600190565b92915050565b60ff821681526020810162000326565b634e487b7160e01b600052602260045260246000fd5b6002810460018216806200036757607f821691505b602082108114156200037d576200037d6200033c565b50919050565b61372880620003936000396000f3fe6080604052600436106101cd5760003560e01c8063715018a6116100f7578063a22cb46511610095578063e8a3d48511610064578063e8a3d48514610500578063e985e9c514610515578063f2fde38b14610535578063f79da28a1461055557600080fd5b8063a22cb4651461048a578063a36298c7146104aa578063b88d4fde146104c0578063c87b56dd146104e057600080fd5b806395d89b41116100d157806395d89b411461042c578063982d3ba014610441578063a035b1fe14610454578063a1e5425e1461046a57600080fd5b8063715018a6146103d95780637e032eb4146103ee5780638da5cb5b1461040e57600080fd5b806320379ee51161016f57806342842e0e1161013e57806342842e0e1461035957806342ab1586146103795780636352211e1461039957806370a08231146103b957600080fd5b806320379ee5146102db57806323b872dd146102f05780632d0335ab146103105780633408e4701461034657600080fd5b8063095ea7b3116101ab578063095ea7b3146102575780630c53c51c146102795780630f7e59701461028c57806318160ddd146102b957600080fd5b806301ffc9a7146101d257806306fdde0314610208578063081812fc1461022a575b600080fd5b3480156101de57600080fd5b506101f26101ed36600461229e565b610575565b6040516101ff91906122c9565b60405180910390f35b34801561021457600080fd5b5061021d6105c7565b6040516101ff9190612335565b34801561023657600080fd5b5061024a610245366004612357565b610659565b6040516101ff9190612392565b34801561026357600080fd5b506102776102723660046123b4565b610680565b005b61021d6102873660046124f7565b610721565b34801561029857600080fd5b5061021d604051806040016040528060018152602001603160f81b81525081565b3480156102c557600080fd5b506102ce6108a3565b6040516101ff919061258f565b3480156102e757600080fd5b506007546102ce565b3480156102fc57600080fd5b5061027761030b36600461259d565b6108bf565b34801561031c57600080fd5b506102ce61032b3660046125ed565b6001600160a01b031660009081526008602052604090205490565b34801561035257600080fd5b50466102ce565b34801561036557600080fd5b5061027761037436600461259d565b6108f7565b34801561038557600080fd5b506102776103943660046125ed565b610912565b3480156103a557600080fd5b5061024a6103b4366004612357565b6109a0565b3480156103c557600080fd5b506102ce6103d43660046125ed565b6109d5565b3480156103e557600080fd5b50610277610a19565b3480156103fa57600080fd5b5061021d610409366004612357565b610a2d565b34801561041a57600080fd5b506009546001600160a01b031661024a565b34801561043857600080fd5b5061021d610a77565b61027761044f3660046125ed565b610a86565b34801561046057600080fd5b506102ce60135481565b34801561047657600080fd5b5061021d610485366004612357565b610b71565b34801561049657600080fd5b506102776104a5366004612621565b610ccd565b3480156104b657600080fd5b506102ce60125481565b3480156104cc57600080fd5b506102776104db366004612654565b610ce3565b3480156104ec57600080fd5b5061021d6104fb366004612357565b610d22565b34801561050c57600080fd5b5061021d610d5b565b34801561052157600080fd5b506101f26105303660046126d2565b610db9565b34801561054157600080fd5b506102776105503660046125ed565b610e8b565b34801561056157600080fd5b50610277610570366004612705565b610ec5565b60006001600160e01b031982166380ac58cd60e01b14806105a657506001600160e01b03198216635b5e139f60e01b145b806105c157506301ffc9a760e01b6001600160e01b03198316145b92915050565b6060600d80546105d690612836565b80601f016020809104026020016040519081016040528092919081815260200182805461060290612836565b801561064f5780601f106106245761010080835404028352916020019161064f565b820191906000526020600020905b81548152906001019060200180831161063257829003601f168201915b5050505050905090565b6000610664826110c5565b506000908152600460205260409020546001600160a01b031690565b600061068b826109a0565b9050806001600160a01b0316836001600160a01b031614156106c85760405162461bcd60e51b81526004016106bf906128a1565b60405180910390fd5b806001600160a01b03166106da6110f9565b6001600160a01b031614806106f657506106f6816105306110f9565b6107125760405162461bcd60e51b81526004016106bf90612909565b61071c8383611103565b505050565b60408051606081810183526001600160a01b0388166000818152600860209081529085902054845283015291810186905261075f8782878787611171565b61077b5760405162461bcd60e51b81526004016106bf90612955565b6001600160a01b03871660009081526008602052604090205461079f906001611217565b6001600160a01b0388166000908152600860205260409081902091909155517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b906107ef90899033908a90612965565b60405180910390a1600080306001600160a01b0316888a6040516020016108179291906129dc565b60408051601f1981840301815290829052610831916129fb565b6000604051808303816000865af19150503d806000811461086e576040519150601f19603f3d011682016040523d82523d6000602084013e610873565b606091505b5091509150816108955760405162461bcd60e51b81526004016106bf90612a39565b925050505b95945050505050565b600060016108b0600a5490565b6108ba9190612a5f565b905090565b6108d06108ca6110f9565b8261122a565b6108ec5760405162461bcd60e51b81526004016106bf90612abe565b61071c838383611288565b61071c83838360405180602001604052806000815250610ce3565b61091a6113b0565b6000610925600a5490565b9050600060125411801561093a575060125481115b156109575760405162461bcd60e51b81526004016106bf90612af9565b6000610962836113f9565b905080836001600160a01b03167f30385c845b448a36257a6a1716e6ad2e1bc2cbe333cde1e69fe849ad6511adfe60405160405180910390a3505050565b6000818152600260205260408120546001600160a01b0316806105c15760405162461bcd60e51b81526004016106bf90612b3b565b60006001600160a01b0382166109fd5760405162461bcd60e51b81526004016106bf90612b8f565b506001600160a01b031660009081526003602052604090205490565b610a216113b0565b610a2b600061141f565b565b60606000610a3a83610b71565b9050600081600c83604051602001610a5493929190612c54565b6040516020818303038152906040529050610a6f8482611471565b949350505050565b6060601080546105d690612836565b6000610a91600a5490565b90506000601254118015610aa6575060125481115b15610ac35760405162461bcd60e51b81526004016106bf90612af9565b60135415610b2857601354341015610aed5760405162461bcd60e51b81526004016106bf90612cdc565b6014546040516001600160a01b03909116903480156108fc02916000818181858888f19350505050158015610b26573d6000803e3d6000fd5b505b6000610b33836113f9565b905080836001600160a01b03167ffaa12ddb40ba6ec53659ef184da2121c1c228dd2e760b3574db7feca61d99f9a60405160405180910390a3505050565b60606000610b8e8360405180602001604052806000815250611471565b9050600081604051602001610ba391906129fb565b6040516020818303038152906040528051906020012090506000610be982604051602001610bd19190612cec565b6040516020818303038152906040526000601461158d565b9050600060405180604001604052806002815260200160c160f51b815250905060008183604051602001610c1e929190612cff565b60405160208183030381529060405290506000610c648280519060200120604051602001610c4c9190612cec565b6040516020818303038152906040526000600461158d565b90506000838583604051602001610c7d93929190612d15565b60405160208183030381529060405290506000610c9982611676565b9050600081604051602001610cae9190612d43565b60408051601f198184030181529190529b9a5050505050505050505050565b610cdf610cd86110f9565b8383611926565b5050565b610cf4610cee6110f9565b8361122a565b610d105760405162461bcd60e51b81526004016106bf90612abe565b610d1c848484846119c9565b50505050565b6060610d35610d3083610a2d565b6119fc565b604051602001610d459190612d58565b6040516020818303038152906040529050919050565b60606000610d91600d600e600f6011604051602001610d7d9493929190612dde565b6040516020818303038152906040526119fc565b905080604051602001610da49190612d58565b60405160208183030381529060405291505090565b600b5460405163c455279160e01b81526000916001600160a01b039081169190841690829063c455279190610df2908890600401612392565b60206040518083038186803b158015610e0a57600080fd5b505afa158015610e1e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e429190612e83565b6001600160a01b03161415610e5b5760019150506105c1565b50506001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b610e936113b0565b6001600160a01b038116610eb95760405162461bcd60e51b81526004016106bf90612ee5565b610ec28161141f565b50565b600954600160a81b900460ff1615808015610eed57506009546001600160a01b90910460ff16105b80610f0e5750303b158015610f0e5750600954600160a01b900460ff166001145b610f2a5760405162461bcd60e51b81526004016106bf90612f3e565b6009805460ff60a01b1916600160a01b1790558015610f57576009805460ff60a81b1916600160a81b1790555b600b80546001600160a01b0319166001600160a01b038b161790558751610f8590600c9060208b01906121e3565b508651610f9990600d9060208a01906121e3565b508551610fad9060109060208901906121e3565b508451610fc190600e9060208801906121e3565b5060128490556013839055601480546001600160a01b0319166001600160a01b038416179055610ff087611b4f565b610ffe600a80546001019055565b6110078961141f565b8015611054576009805460ff60a81b191690556040517f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989061104b90600190612f63565b60405180910390a15b505050505050505050565b80546001019055565b6000333014156110bf57600080368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b031691506110c29050565b50335b90565b6000818152600260205260409020546001600160a01b0316610ec25760405162461bcd60e51b81526004016106bf90612b3b565b60006108ba611068565b600081815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190611138826109a0565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60006001600160a01b0386166111995760405162461bcd60e51b81526004016106bf90612fb1565b60016111ac6111a787611b8b565b611be9565b838686604051600081526020016040526040516111cc9493929190612fca565b6020604051602081039080840390855afa1580156111ee573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b60006112238284612fff565b9392505050565b600080611236836109a0565b9050806001600160a01b0316846001600160a01b0316148061125d575061125d8185610db9565b80610a6f5750836001600160a01b031661127684610659565b6001600160a01b031614949350505050565b826001600160a01b031661129b826109a0565b6001600160a01b0316146112c15760405162461bcd60e51b81526004016106bf90613057565b6001600160a01b0382166112e75760405162461bcd60e51b81526004016106bf906130a6565b826001600160a01b03166112fa826109a0565b6001600160a01b0316146113205760405162461bcd60e51b81526004016106bf90613057565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6113b86110f9565b6001600160a01b03166113d36009546001600160a01b031690565b6001600160a01b031614610a2b5760405162461bcd60e51b81526004016106bf906130e6565b600080611405600a5490565b9050611415600a80546001019055565b6105c18382611c06565b600980546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60606000600d61148085611c20565b604051602001611491929190613103565b60405160208183030381529060405290506000600d6040516020016114b69190613140565b60408051601f198184030181526020838101835260008085528351808501909452601e84527f68747470733a2f2f666f72756d2e6f70656e7a657070656c696e2e636f6d00009184019190915290935061150f88611c20565b9050600061151c30611cbc565b6040805160208101909152600081528951919250901561155057506040805180820190915260018152600b60fa1b60208201525b868686868686868f60405160200161156f989796959493929190613160565b60405160208183030381529060405297505050505050505092915050565b825160609061159c8385612fff565b11156115ba5760405162461bcd60e51b81526004016106bf906132a6565b6000826001600160401b038111156115d4576115d46123f1565b6040519080825280601f01601f1916602001820160405280156115fe576020820181803683370190505b50905060005b8381101561166d57856116178287612fff565b81518110611627576116276132b6565b602001015160f81c60f81b828281518110611644576116446132b6565b60200101906001600160f81b031916908160001a90535080611665816132cc565b915050611604565b50949350505050565b805160609060005b81811080156116ab575083818151811061169a5761169a6132b6565b01602001516001600160f81b031916155b156116b85760010161167e565b6117e361209f8284030204810160010191506000826001600160401b038111156116e4576116e46123f1565b6040519080825280601f01601f19166020018201604052801561170e576020820181803683370190505b5090506000806000198501815b88518110156117f45760018703925088818151811061173c5761173c6132b6565b016020015160f81c93505b8183138061175a575063ffffffff841615155b156117e957848381518110611771576117716132b6565b602001015160f81c60f81b60f81c60ff166101000261ffff1684019350603a8463ffffffff16816117a4576117a46132e7565b0660f81b8584815181106117ba576117ba6132b6565b60200101906001600160f81b031916908160001a905350603a63ffffffff851604935060001990920191611747565b82915060010161171b565b50845b86811080156118245750848181518110611813576118136132b6565b01602001516001600160f81b031916155b15611831576001016117f7565b85810385510396506000876001600160401b03811115611853576118536123f1565b6040519080825280601f01601f19166020018201604052801561187d576020820181803683370190505b50905060005b88811015611918576000888483010390506040518060600160405280603a81526020016136b9603a91398882815181106118bf576118bf6132b6565b0160200151815160f89190911c9081106118db576118db6132b6565b602001015160f81c60f81b8383815181106118f8576118f86132b6565b60200101906001600160f81b031916908160001a90535050600101611883565b509998505050505050505050565b816001600160a01b0316836001600160a01b031614156119585760405162461bcd60e51b81526004016106bf9061332f565b6001600160a01b0383811660008181526005602090815260408083209487168084529490915290819020805460ff1916851515179055517f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31906119bc9085906122c9565b60405180910390a3505050565b6119d4848484611288565b6119e084848484611cd2565b610d1c5760405162461bcd60e51b81526004016106bf9061338c565b6060815160001415611a1c57505060408051602081019091526000815290565b60006040518060600160405280604081526020016136796040913990506000600384516002611a4b9190612fff565b611a55919061339c565b611a609060046133b0565b6001600160401b03811115611a7757611a776123f1565b6040519080825280601f01601f191660200182016040528015611aa1576020820181803683370190505b509050600182016020820185865187015b80821015611b0d576003820191508151603f8160121c168501518453600184019350603f81600c1c168501518453600184019350603f8160061c168501518453600184019350603f8116850151845350600183019250611ab2565b5050600386510660018114611b295760028114611b3c57611b44565b603d6001830353603d6002830353611b44565b603d60018303535b509195945050505050565b60065460ff1615611b725760405162461bcd60e51b81526004016106bf906133f2565b611b7b81611de6565b506006805460ff19166001179055565b60006040518060800160405280604381526020016135e76043913980516020918201208351848301516040808701518051908601209051611bcc9501613402565b604051602081830303815290604052805190602001209050919050565b6000611bf460075490565b82604051602001611bcc929190613437565b610cdf828260405180602001604052806000815250611e72565b60606000611c2d83611ea5565b60010190506000816001600160401b03811115611c4c57611c4c6123f1565b6040519080825280601f01601f191660200182016040528015611c76576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084611caf57611cb4565b611c80565b509392505050565b60606105c16001600160a01b0383166014611f7d565b60006001600160a01b0384163b15611ddb57836001600160a01b031663150b7a02611cfb6110f9565b8786866040518563ffffffff1660e01b8152600401611d1d949392919061345b565b602060405180830381600087803b158015611d3757600080fd5b505af1925050508015611d67575060408051601f3d908101601f19168201909252611d64918101906134aa565b60015b611dc1573d808015611d95576040519150601f19603f3d011682016040523d82523d6000602084013e611d9a565b606091505b508051611db95760405162461bcd60e51b81526004016106bf9061338c565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610a6f565b506001949350505050565b6040518060800160405280604f815260200161362a604f9139805160209182012082518383012060408051808201825260018152603160f81b9085015251611e54937fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc69130914691016134cb565b60408051601f19818403018152919052805160209091012060075550565b611e7c83836120e8565b611e896000848484611cd2565b61071c5760405162461bcd60e51b81526004016106bf9061338c565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310611ee45772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310611f10576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310611f2e57662386f26fc10000830492506010015b6305f5e1008310611f46576305f5e100830492506008015b6127108310611f5a57612710830492506004015b60648310611f6c576064830492506002015b600a83106105c15760010192915050565b60606000611f8c8360026133b0565b611f97906002612fff565b6001600160401b03811115611fae57611fae6123f1565b6040519080825280601f01601f191660200182016040528015611fd8576020820181803683370190505b509050600360fc1b81600081518110611ff357611ff36132b6565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110612022576120226132b6565b60200101906001600160f81b031916908160001a90535060006120468460026133b0565b612051906001612fff565b90505b60018111156120c9576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110612085576120856132b6565b1a60f81b82828151811061209b5761209b6132b6565b60200101906001600160f81b031916908160001a90535060049490941c936120c28161350d565b9050612054565b5083156112235760405162461bcd60e51b81526004016106bf90613554565b6001600160a01b03821661210e5760405162461bcd60e51b81526004016106bf90613594565b6000818152600260205260409020546001600160a01b0316156121435760405162461bcd60e51b81526004016106bf906135d6565b6000818152600260205260409020546001600160a01b0316156121785760405162461bcd60e51b81526004016106bf906135d6565b6001600160a01b038216600081815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b8280546121ef90612836565b90600052602060002090601f0160209004810192826122115760008555612257565b82601f1061222a57805160ff1916838001178555612257565b82800160010185558215612257579182015b8281111561225757825182559160200191906001019061223c565b50612263929150612267565b5090565b5b808211156122635760008155600101612268565b6001600160e01b031981165b8114610ec257600080fd5b80356105c18161227c565b6000602082840312156122b3576122b3600080fd5b6000610a6f8484612293565b8015155b82525050565b602081016105c182846122bf565b60005b838110156122f25781810151838201526020016122da565b83811115610d1c5750506000910152565b600061230d825190565b8084526020840193506123248185602086016122d7565b601f01601f19169290920192915050565b602080825281016112238184612303565b80612288565b80356105c181612346565b60006020828403121561236c5761236c600080fd5b6000610a6f848461234c565b60006001600160a01b0382166105c1565b6122c381612378565b602081016105c18284612389565b61228881612378565b80356105c1816123a0565b600080604083850312156123ca576123ca600080fd5b60006123d685856123a9565b92505060206123e78582860161234c565b9150509250929050565b634e487b7160e01b600052604160045260246000fd5b601f19601f83011681018181106001600160401b038211171561242c5761242c6123f1565b6040525050565b600061243e60405190565b905061244a8282612407565b919050565b60006001600160401b03821115612468576124686123f1565b601f19601f8301165b60200192915050565b82818337506000910152565b60006124996124948461244f565b612433565b9050828152602081018484840111156124b4576124b4600080fd5b611cb484828561247a565b600082601f8301126124d3576124d3600080fd5b8135610a6f848260208601612486565b60ff8116612288565b80356105c1816124e3565b600080600080600060a0868803121561251257612512600080fd5b600061251e88886123a9565b95505060208601356001600160401b0381111561253d5761253d600080fd5b612549888289016124bf565b945050604061255a8882890161234c565b935050606061256b8882890161234c565b925050608061257c888289016124ec565b9150509295509295909350565b806122c3565b602081016105c18284612589565b6000806000606084860312156125b5576125b5600080fd5b60006125c186866123a9565b93505060206125d2868287016123a9565b92505060406125e38682870161234c565b9150509250925092565b60006020828403121561260257612602600080fd5b6000610a6f84846123a9565b801515612288565b80356105c18161260e565b6000806040838503121561263757612637600080fd5b600061264385856123a9565b92505060206123e785828601612616565b6000806000806080858703121561266d5761266d600080fd5b600061267987876123a9565b945050602061268a878288016123a9565b935050604061269b8782880161234c565b92505060608501356001600160401b038111156126ba576126ba600080fd5b6126c6878288016124bf565b91505092959194509250565b600080604083850312156126e8576126e8600080fd5b60006126f485856123a9565b92505060206123e7858286016123a9565b600080600080600080600080610100898b03121561272557612725600080fd5b60006127318b8b6123a9565b98505060208901356001600160401b0381111561275057612750600080fd5b61275c8b828c016124bf565b97505060408901356001600160401b0381111561277b5761277b600080fd5b6127878b828c016124bf565b96505060608901356001600160401b038111156127a6576127a6600080fd5b6127b28b828c016124bf565b95505060808901356001600160401b038111156127d1576127d1600080fd5b6127dd8b828c016124bf565b94505060a06127ee8b828c0161234c565b93505060c06127ff8b828c0161234c565b92505060e06128108b828c016123a9565b9150509295985092959890939650565b634e487b7160e01b600052602260045260246000fd5b60028104600182168061284a57607f821691505b6020821081141561285d5761285d612820565b50919050565b60218152602081017f4552433732313a20617070726f76616c20746f2063757272656e74206f776e658152603960f91b602082015290505b60400190565b602080825281016105c181612863565b603d8152602081017f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f81527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c0000006020820152905061289b565b602080825281016105c1816128b1565b60218152602081017f5369676e657220616e64207369676e617475726520646f206e6f74206d6174638152600d60fb1b6020820152905061289b565b602080825281016105c181612919565b606081016129738286612389565b6129806020830185612389565b818103604083015261089a8184612303565b600061299c825190565b6129aa8185602086016122d7565b9290920192915050565b60006105c18260601b90565b60006105c1826129b4565b6122c36129d782612378565b6129c0565b6129e68184612992565b90506129f281836129cb565b60140192915050565b6105c18183612992565b601c8152602081017f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000815290505b60200190565b602080825281016105c181612a05565b634e487b7160e01b600052601160045260246000fd5b600082821015612a7157612a71612a49565b500390565b602d8152602081017f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6581526c1c881bdc88185c1c1c9bdd9959609a1b6020820152905061289b565b602080825281016105c181612a76565b60168152602081017513585e081b5a5b9d0818dbdd5b9d081c995858da195960521b81529050612a33565b602080825281016105c181612ace565b60188152602081017f4552433732313a20696e76616c696420746f6b656e204944000000000000000081529050612a33565b602080825281016105c181612b09565b60298152602081017f4552433732313a2061646472657373207a65726f206973206e6f7420612076618152683634b21037bbb732b960b91b6020820152905061289b565b602080825281016105c181612b4b565b61088b60f21b81525b60020190565b681134b6b0b3b2911d1160b91b81525b60090190565b60008154612bd181612836565b600182168015612be85760018114612bf957612c29565b60ff19831686528186019350612c29565b60008581526020902060005b83811015612c2157815488820152600190910190602001612c05565b505081860193505b50505092915050565b683f617373657449643d60b81b8152612bbe565b601160f91b81525b60010190565b66113234b2111d1160c91b8152600701612c6e8185612992565b9050612c7981612b9f565b9050612c8481612bae565b9050612c908184612bc4565b9050612c9b81612c32565b9050612ca78183612992565b9050610a6f81612c46565b601581526020810174139bdd08195b9bdd59da081d1bdad95b881cd95b9d605a1b81529050612a33565b602080825281016105c181612cb2565b612cf78183806122c3565b602001919050565b612d098184612992565b90506112238183612992565b612d1f8185612992565b9050612d2b8184612992565b9050610a6f8183612992565b603d60f91b8152612c4e565b612d4c81612d37565b90506105c18183612992565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c0000008152601d8101612d4c565b683d913730b6b2911d1160b91b8152612bbe565b701116113232b9b1b934b83a34b7b7111d1160791b81525b60110190565b701132bc3a32b93730b62fb634b735911d1160791b8152612db0565b607d60f81b8152612c4e565b612de781612d84565b9050612df38186612bc4565b9050612dfe81612d98565b9050612e0a8185612bc4565b9050612e1581612b9f565b9050612e2081612bae565b9050612e2c8184612bc4565b9050612e3781612b9f565b9050612e4281612db6565b9050612e4e8183612bc4565b9050612e5981612c46565b905061089a81612dd2565b60006105c182612378565b61228881612e64565b80516105c181612e6f565b600060208284031215612e9857612e98600080fd5b6000610a6f8484612e78565b60268152602081017f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206181526564647265737360d01b6020820152905061289b565b602080825281016105c181612ea4565b602e8152602081017f496e697469616c697a61626c653a20636f6e747261637420697320616c72656181526d191e481a5b9a5d1a585b1a5e995960921b6020820152905061289b565b602080825281016105c181612ef5565b60ff1690565b6122c38160006105c182612f4e565b602081016105c18284612f54565b60258152602081017f4e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5381526424a3a722a960d91b6020820152905061289b565b602080825281016105c181612f71565b60ff81166122c3565b60808101612fd88287612589565b612fe56020830186612fc1565b612ff26040830185612589565b61089a6060830184612589565b6000821982111561301257613012612a49565b500190565b60258152602081017f4552433732313a207472616e736665722066726f6d20696e636f72726563742081526437bbb732b960d91b6020820152905061289b565b602080825281016105c181613017565b60248152602081017f4552433732313a207472616e7366657220746f20746865207a65726f206164648152637265737360e01b6020820152905061289b565b602080825281016105c181613067565b60208082527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65729101908152612a33565b602080825281016105c1816130b6565b61202360f01b8152612ba8565b61310d8184612bc4565b9050612d09816130f6565b7002a3434b99034b990309027232a1037b31607d1b8152612db0565b601760f91b8152612c4e565b61314981613118565b90506131558183612bc4565b90506105c181613134565b61316981612d84565b9050613175818a612992565b905061318081612d98565b905061318c8189612992565b905061319781612b9f565b6d1130ba3a3934b13aba32b9911d1160911b8152600e0190506131ba8188612992565b90506131c581612b9f565b6f1132bc3a32b93730b62fbab936111d1160811b815260100190506131ea8187612992565b90506131f581612b9f565b651139b7111d1160d11b815260060190506132108186612992565b905061321b81612b9f565b721131b7b73a3930b1ba20b2323932b9b9911d1160691b815260130190506132438185612992565b905061324e81612c46565b905061325a8184612992565b90506132668183612992565b905061327181612dd2565b9998505050505050505050565b601381526020810172496e76616c696420736c6963652072616e676560681b81529050612a33565b602080825281016105c18161327e565b634e487b7160e01b600052603260045260246000fd5b60006000198214156132e0576132e0612a49565b5060010190565b634e487b7160e01b600052601260045260246000fd5b60198152602081017f4552433732313a20617070726f766520746f2063616c6c65720000000000000081529050612a33565b602080825281016105c1816132fd565b60328152602081017f4552433732313a207472616e7366657220746f206e6f6e20455243373231526581527131b2b4bb32b91034b6b83632b6b2b73a32b960711b6020820152905061289b565b602080825281016105c18161333f565b6000826133ab576133ab6132e7565b500490565b60008160001904831182151516156133ca576133ca612a49565b500290565b600e8152602081016d185b1c9958591e481a5b9a5d195960921b81529050612a33565b602080825281016105c1816133cf565b608081016134108287612589565b61341d6020830186612589565b612ff26040830185612389565b61190160f01b8152612ba8565b6134408161342a565b905061344d8184806122c3565b6020016124718183806122c3565b608081016134698287612389565b6134766020830186612389565b6134836040830185612589565b81810360608301526134958184612303565b9695505050505050565b80516105c18161227c565b6000602082840312156134bf576134bf600080fd5b6000610a6f848461349f565b60a081016134d98288612589565b6134e66020830187612589565b6134f36040830186612589565b6135006060830185612389565b6134956080830184612589565b60008161351c5761351c612a49565b506000190190565b60208082527f537472696e67733a20686578206c656e67746820696e73756666696369656e749101908152612a33565b602080825281016105c181613524565b60208082527f4552433732313a206d696e7420746f20746865207a65726f20616464726573739101908152612a33565b602080825281016105c181613564565b601c8152602081017f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000081529050612a33565b602080825281016105c1816135a456fe4d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c74294142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2f31323334353637383941424344454647484a4b4c4d4e505152535455565758595a6162636465666768696a6b6d6e6f707172737475767778797aa2646970667358221220ed07ccc2bb843f0841a2684d556a2e564fd3ca7fc33a91978ef39b7c8fcd671664736f6c63430008090033";
|
|
796
|
+
var deployedBytecode$1 = "0x6080604052600436106101cd5760003560e01c8063715018a6116100f7578063a22cb46511610095578063e8a3d48511610064578063e8a3d48514610500578063e985e9c514610515578063f2fde38b14610535578063f79da28a1461055557600080fd5b8063a22cb4651461048a578063a36298c7146104aa578063b88d4fde146104c0578063c87b56dd146104e057600080fd5b806395d89b41116100d157806395d89b411461042c578063982d3ba014610441578063a035b1fe14610454578063a1e5425e1461046a57600080fd5b8063715018a6146103d95780637e032eb4146103ee5780638da5cb5b1461040e57600080fd5b806320379ee51161016f57806342842e0e1161013e57806342842e0e1461035957806342ab1586146103795780636352211e1461039957806370a08231146103b957600080fd5b806320379ee5146102db57806323b872dd146102f05780632d0335ab146103105780633408e4701461034657600080fd5b8063095ea7b3116101ab578063095ea7b3146102575780630c53c51c146102795780630f7e59701461028c57806318160ddd146102b957600080fd5b806301ffc9a7146101d257806306fdde0314610208578063081812fc1461022a575b600080fd5b3480156101de57600080fd5b506101f26101ed36600461229e565b610575565b6040516101ff91906122c9565b60405180910390f35b34801561021457600080fd5b5061021d6105c7565b6040516101ff9190612335565b34801561023657600080fd5b5061024a610245366004612357565b610659565b6040516101ff9190612392565b34801561026357600080fd5b506102776102723660046123b4565b610680565b005b61021d6102873660046124f7565b610721565b34801561029857600080fd5b5061021d604051806040016040528060018152602001603160f81b81525081565b3480156102c557600080fd5b506102ce6108a3565b6040516101ff919061258f565b3480156102e757600080fd5b506007546102ce565b3480156102fc57600080fd5b5061027761030b36600461259d565b6108bf565b34801561031c57600080fd5b506102ce61032b3660046125ed565b6001600160a01b031660009081526008602052604090205490565b34801561035257600080fd5b50466102ce565b34801561036557600080fd5b5061027761037436600461259d565b6108f7565b34801561038557600080fd5b506102776103943660046125ed565b610912565b3480156103a557600080fd5b5061024a6103b4366004612357565b6109a0565b3480156103c557600080fd5b506102ce6103d43660046125ed565b6109d5565b3480156103e557600080fd5b50610277610a19565b3480156103fa57600080fd5b5061021d610409366004612357565b610a2d565b34801561041a57600080fd5b506009546001600160a01b031661024a565b34801561043857600080fd5b5061021d610a77565b61027761044f3660046125ed565b610a86565b34801561046057600080fd5b506102ce60135481565b34801561047657600080fd5b5061021d610485366004612357565b610b71565b34801561049657600080fd5b506102776104a5366004612621565b610ccd565b3480156104b657600080fd5b506102ce60125481565b3480156104cc57600080fd5b506102776104db366004612654565b610ce3565b3480156104ec57600080fd5b5061021d6104fb366004612357565b610d22565b34801561050c57600080fd5b5061021d610d5b565b34801561052157600080fd5b506101f26105303660046126d2565b610db9565b34801561054157600080fd5b506102776105503660046125ed565b610e8b565b34801561056157600080fd5b50610277610570366004612705565b610ec5565b60006001600160e01b031982166380ac58cd60e01b14806105a657506001600160e01b03198216635b5e139f60e01b145b806105c157506301ffc9a760e01b6001600160e01b03198316145b92915050565b6060600d80546105d690612836565b80601f016020809104026020016040519081016040528092919081815260200182805461060290612836565b801561064f5780601f106106245761010080835404028352916020019161064f565b820191906000526020600020905b81548152906001019060200180831161063257829003601f168201915b5050505050905090565b6000610664826110c5565b506000908152600460205260409020546001600160a01b031690565b600061068b826109a0565b9050806001600160a01b0316836001600160a01b031614156106c85760405162461bcd60e51b81526004016106bf906128a1565b60405180910390fd5b806001600160a01b03166106da6110f9565b6001600160a01b031614806106f657506106f6816105306110f9565b6107125760405162461bcd60e51b81526004016106bf90612909565b61071c8383611103565b505050565b60408051606081810183526001600160a01b0388166000818152600860209081529085902054845283015291810186905261075f8782878787611171565b61077b5760405162461bcd60e51b81526004016106bf90612955565b6001600160a01b03871660009081526008602052604090205461079f906001611217565b6001600160a01b0388166000908152600860205260409081902091909155517f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b906107ef90899033908a90612965565b60405180910390a1600080306001600160a01b0316888a6040516020016108179291906129dc565b60408051601f1981840301815290829052610831916129fb565b6000604051808303816000865af19150503d806000811461086e576040519150601f19603f3d011682016040523d82523d6000602084013e610873565b606091505b5091509150816108955760405162461bcd60e51b81526004016106bf90612a39565b925050505b95945050505050565b600060016108b0600a5490565b6108ba9190612a5f565b905090565b6108d06108ca6110f9565b8261122a565b6108ec5760405162461bcd60e51b81526004016106bf90612abe565b61071c838383611288565b61071c83838360405180602001604052806000815250610ce3565b61091a6113b0565b6000610925600a5490565b9050600060125411801561093a575060125481115b156109575760405162461bcd60e51b81526004016106bf90612af9565b6000610962836113f9565b905080836001600160a01b03167f30385c845b448a36257a6a1716e6ad2e1bc2cbe333cde1e69fe849ad6511adfe60405160405180910390a3505050565b6000818152600260205260408120546001600160a01b0316806105c15760405162461bcd60e51b81526004016106bf90612b3b565b60006001600160a01b0382166109fd5760405162461bcd60e51b81526004016106bf90612b8f565b506001600160a01b031660009081526003602052604090205490565b610a216113b0565b610a2b600061141f565b565b60606000610a3a83610b71565b9050600081600c83604051602001610a5493929190612c54565b6040516020818303038152906040529050610a6f8482611471565b949350505050565b6060601080546105d690612836565b6000610a91600a5490565b90506000601254118015610aa6575060125481115b15610ac35760405162461bcd60e51b81526004016106bf90612af9565b60135415610b2857601354341015610aed5760405162461bcd60e51b81526004016106bf90612cdc565b6014546040516001600160a01b03909116903480156108fc02916000818181858888f19350505050158015610b26573d6000803e3d6000fd5b505b6000610b33836113f9565b905080836001600160a01b03167ffaa12ddb40ba6ec53659ef184da2121c1c228dd2e760b3574db7feca61d99f9a60405160405180910390a3505050565b60606000610b8e8360405180602001604052806000815250611471565b9050600081604051602001610ba391906129fb565b6040516020818303038152906040528051906020012090506000610be982604051602001610bd19190612cec565b6040516020818303038152906040526000601461158d565b9050600060405180604001604052806002815260200160c160f51b815250905060008183604051602001610c1e929190612cff565b60405160208183030381529060405290506000610c648280519060200120604051602001610c4c9190612cec565b6040516020818303038152906040526000600461158d565b90506000838583604051602001610c7d93929190612d15565b60405160208183030381529060405290506000610c9982611676565b9050600081604051602001610cae9190612d43565b60408051601f198184030181529190529b9a5050505050505050505050565b610cdf610cd86110f9565b8383611926565b5050565b610cf4610cee6110f9565b8361122a565b610d105760405162461bcd60e51b81526004016106bf90612abe565b610d1c848484846119c9565b50505050565b6060610d35610d3083610a2d565b6119fc565b604051602001610d459190612d58565b6040516020818303038152906040529050919050565b60606000610d91600d600e600f6011604051602001610d7d9493929190612dde565b6040516020818303038152906040526119fc565b905080604051602001610da49190612d58565b60405160208183030381529060405291505090565b600b5460405163c455279160e01b81526000916001600160a01b039081169190841690829063c455279190610df2908890600401612392565b60206040518083038186803b158015610e0a57600080fd5b505afa158015610e1e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e429190612e83565b6001600160a01b03161415610e5b5760019150506105c1565b50506001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b610e936113b0565b6001600160a01b038116610eb95760405162461bcd60e51b81526004016106bf90612ee5565b610ec28161141f565b50565b600954600160a81b900460ff1615808015610eed57506009546001600160a01b90910460ff16105b80610f0e5750303b158015610f0e5750600954600160a01b900460ff166001145b610f2a5760405162461bcd60e51b81526004016106bf90612f3e565b6009805460ff60a01b1916600160a01b1790558015610f57576009805460ff60a81b1916600160a81b1790555b600b80546001600160a01b0319166001600160a01b038b161790558751610f8590600c9060208b01906121e3565b508651610f9990600d9060208a01906121e3565b508551610fad9060109060208901906121e3565b508451610fc190600e9060208801906121e3565b5060128490556013839055601480546001600160a01b0319166001600160a01b038416179055610ff087611b4f565b610ffe600a80546001019055565b6110078961141f565b8015611054576009805460ff60a81b191690556040517f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989061104b90600190612f63565b60405180910390a15b505050505050505050565b80546001019055565b6000333014156110bf57600080368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b031691506110c29050565b50335b90565b6000818152600260205260409020546001600160a01b0316610ec25760405162461bcd60e51b81526004016106bf90612b3b565b60006108ba611068565b600081815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190611138826109a0565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60006001600160a01b0386166111995760405162461bcd60e51b81526004016106bf90612fb1565b60016111ac6111a787611b8b565b611be9565b838686604051600081526020016040526040516111cc9493929190612fca565b6020604051602081039080840390855afa1580156111ee573d6000803e3d6000fd5b505050602060405103516001600160a01b0316866001600160a01b031614905095945050505050565b60006112238284612fff565b9392505050565b600080611236836109a0565b9050806001600160a01b0316846001600160a01b0316148061125d575061125d8185610db9565b80610a6f5750836001600160a01b031661127684610659565b6001600160a01b031614949350505050565b826001600160a01b031661129b826109a0565b6001600160a01b0316146112c15760405162461bcd60e51b81526004016106bf90613057565b6001600160a01b0382166112e75760405162461bcd60e51b81526004016106bf906130a6565b826001600160a01b03166112fa826109a0565b6001600160a01b0316146113205760405162461bcd60e51b81526004016106bf90613057565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6113b86110f9565b6001600160a01b03166113d36009546001600160a01b031690565b6001600160a01b031614610a2b5760405162461bcd60e51b81526004016106bf906130e6565b600080611405600a5490565b9050611415600a80546001019055565b6105c18382611c06565b600980546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60606000600d61148085611c20565b604051602001611491929190613103565b60405160208183030381529060405290506000600d6040516020016114b69190613140565b60408051601f198184030181526020838101835260008085528351808501909452601e84527f68747470733a2f2f666f72756d2e6f70656e7a657070656c696e2e636f6d00009184019190915290935061150f88611c20565b9050600061151c30611cbc565b6040805160208101909152600081528951919250901561155057506040805180820190915260018152600b60fa1b60208201525b868686868686868f60405160200161156f989796959493929190613160565b60405160208183030381529060405297505050505050505092915050565b825160609061159c8385612fff565b11156115ba5760405162461bcd60e51b81526004016106bf906132a6565b6000826001600160401b038111156115d4576115d46123f1565b6040519080825280601f01601f1916602001820160405280156115fe576020820181803683370190505b50905060005b8381101561166d57856116178287612fff565b81518110611627576116276132b6565b602001015160f81c60f81b828281518110611644576116446132b6565b60200101906001600160f81b031916908160001a90535080611665816132cc565b915050611604565b50949350505050565b805160609060005b81811080156116ab575083818151811061169a5761169a6132b6565b01602001516001600160f81b031916155b156116b85760010161167e565b6117e361209f8284030204810160010191506000826001600160401b038111156116e4576116e46123f1565b6040519080825280601f01601f19166020018201604052801561170e576020820181803683370190505b5090506000806000198501815b88518110156117f45760018703925088818151811061173c5761173c6132b6565b016020015160f81c93505b8183138061175a575063ffffffff841615155b156117e957848381518110611771576117716132b6565b602001015160f81c60f81b60f81c60ff166101000261ffff1684019350603a8463ffffffff16816117a4576117a46132e7565b0660f81b8584815181106117ba576117ba6132b6565b60200101906001600160f81b031916908160001a905350603a63ffffffff851604935060001990920191611747565b82915060010161171b565b50845b86811080156118245750848181518110611813576118136132b6565b01602001516001600160f81b031916155b15611831576001016117f7565b85810385510396506000876001600160401b03811115611853576118536123f1565b6040519080825280601f01601f19166020018201604052801561187d576020820181803683370190505b50905060005b88811015611918576000888483010390506040518060600160405280603a81526020016136b9603a91398882815181106118bf576118bf6132b6565b0160200151815160f89190911c9081106118db576118db6132b6565b602001015160f81c60f81b8383815181106118f8576118f86132b6565b60200101906001600160f81b031916908160001a90535050600101611883565b509998505050505050505050565b816001600160a01b0316836001600160a01b031614156119585760405162461bcd60e51b81526004016106bf9061332f565b6001600160a01b0383811660008181526005602090815260408083209487168084529490915290819020805460ff1916851515179055517f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31906119bc9085906122c9565b60405180910390a3505050565b6119d4848484611288565b6119e084848484611cd2565b610d1c5760405162461bcd60e51b81526004016106bf9061338c565b6060815160001415611a1c57505060408051602081019091526000815290565b60006040518060600160405280604081526020016136796040913990506000600384516002611a4b9190612fff565b611a55919061339c565b611a609060046133b0565b6001600160401b03811115611a7757611a776123f1565b6040519080825280601f01601f191660200182016040528015611aa1576020820181803683370190505b509050600182016020820185865187015b80821015611b0d576003820191508151603f8160121c168501518453600184019350603f81600c1c168501518453600184019350603f8160061c168501518453600184019350603f8116850151845350600183019250611ab2565b5050600386510660018114611b295760028114611b3c57611b44565b603d6001830353603d6002830353611b44565b603d60018303535b509195945050505050565b60065460ff1615611b725760405162461bcd60e51b81526004016106bf906133f2565b611b7b81611de6565b506006805460ff19166001179055565b60006040518060800160405280604381526020016135e76043913980516020918201208351848301516040808701518051908601209051611bcc9501613402565b604051602081830303815290604052805190602001209050919050565b6000611bf460075490565b82604051602001611bcc929190613437565b610cdf828260405180602001604052806000815250611e72565b60606000611c2d83611ea5565b60010190506000816001600160401b03811115611c4c57611c4c6123f1565b6040519080825280601f01601f191660200182016040528015611c76576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a8504945084611caf57611cb4565b611c80565b509392505050565b60606105c16001600160a01b0383166014611f7d565b60006001600160a01b0384163b15611ddb57836001600160a01b031663150b7a02611cfb6110f9565b8786866040518563ffffffff1660e01b8152600401611d1d949392919061345b565b602060405180830381600087803b158015611d3757600080fd5b505af1925050508015611d67575060408051601f3d908101601f19168201909252611d64918101906134aa565b60015b611dc1573d808015611d95576040519150601f19603f3d011682016040523d82523d6000602084013e611d9a565b606091505b508051611db95760405162461bcd60e51b81526004016106bf9061338c565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610a6f565b506001949350505050565b6040518060800160405280604f815260200161362a604f9139805160209182012082518383012060408051808201825260018152603160f81b9085015251611e54937fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc69130914691016134cb565b60408051601f19818403018152919052805160209091012060075550565b611e7c83836120e8565b611e896000848484611cd2565b61071c5760405162461bcd60e51b81526004016106bf9061338c565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310611ee45772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310611f10576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310611f2e57662386f26fc10000830492506010015b6305f5e1008310611f46576305f5e100830492506008015b6127108310611f5a57612710830492506004015b60648310611f6c576064830492506002015b600a83106105c15760010192915050565b60606000611f8c8360026133b0565b611f97906002612fff565b6001600160401b03811115611fae57611fae6123f1565b6040519080825280601f01601f191660200182016040528015611fd8576020820181803683370190505b509050600360fc1b81600081518110611ff357611ff36132b6565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110612022576120226132b6565b60200101906001600160f81b031916908160001a90535060006120468460026133b0565b612051906001612fff565b90505b60018111156120c9576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110612085576120856132b6565b1a60f81b82828151811061209b5761209b6132b6565b60200101906001600160f81b031916908160001a90535060049490941c936120c28161350d565b9050612054565b5083156112235760405162461bcd60e51b81526004016106bf90613554565b6001600160a01b03821661210e5760405162461bcd60e51b81526004016106bf90613594565b6000818152600260205260409020546001600160a01b0316156121435760405162461bcd60e51b81526004016106bf906135d6565b6000818152600260205260409020546001600160a01b0316156121785760405162461bcd60e51b81526004016106bf906135d6565b6001600160a01b038216600081815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b8280546121ef90612836565b90600052602060002090601f0160209004810192826122115760008555612257565b82601f1061222a57805160ff1916838001178555612257565b82800160010185558215612257579182015b8281111561225757825182559160200191906001019061223c565b50612263929150612267565b5090565b5b808211156122635760008155600101612268565b6001600160e01b031981165b8114610ec257600080fd5b80356105c18161227c565b6000602082840312156122b3576122b3600080fd5b6000610a6f8484612293565b8015155b82525050565b602081016105c182846122bf565b60005b838110156122f25781810151838201526020016122da565b83811115610d1c5750506000910152565b600061230d825190565b8084526020840193506123248185602086016122d7565b601f01601f19169290920192915050565b602080825281016112238184612303565b80612288565b80356105c181612346565b60006020828403121561236c5761236c600080fd5b6000610a6f848461234c565b60006001600160a01b0382166105c1565b6122c381612378565b602081016105c18284612389565b61228881612378565b80356105c1816123a0565b600080604083850312156123ca576123ca600080fd5b60006123d685856123a9565b92505060206123e78582860161234c565b9150509250929050565b634e487b7160e01b600052604160045260246000fd5b601f19601f83011681018181106001600160401b038211171561242c5761242c6123f1565b6040525050565b600061243e60405190565b905061244a8282612407565b919050565b60006001600160401b03821115612468576124686123f1565b601f19601f8301165b60200192915050565b82818337506000910152565b60006124996124948461244f565b612433565b9050828152602081018484840111156124b4576124b4600080fd5b611cb484828561247a565b600082601f8301126124d3576124d3600080fd5b8135610a6f848260208601612486565b60ff8116612288565b80356105c1816124e3565b600080600080600060a0868803121561251257612512600080fd5b600061251e88886123a9565b95505060208601356001600160401b0381111561253d5761253d600080fd5b612549888289016124bf565b945050604061255a8882890161234c565b935050606061256b8882890161234c565b925050608061257c888289016124ec565b9150509295509295909350565b806122c3565b602081016105c18284612589565b6000806000606084860312156125b5576125b5600080fd5b60006125c186866123a9565b93505060206125d2868287016123a9565b92505060406125e38682870161234c565b9150509250925092565b60006020828403121561260257612602600080fd5b6000610a6f84846123a9565b801515612288565b80356105c18161260e565b6000806040838503121561263757612637600080fd5b600061264385856123a9565b92505060206123e785828601612616565b6000806000806080858703121561266d5761266d600080fd5b600061267987876123a9565b945050602061268a878288016123a9565b935050604061269b8782880161234c565b92505060608501356001600160401b038111156126ba576126ba600080fd5b6126c6878288016124bf565b91505092959194509250565b600080604083850312156126e8576126e8600080fd5b60006126f485856123a9565b92505060206123e7858286016123a9565b600080600080600080600080610100898b03121561272557612725600080fd5b60006127318b8b6123a9565b98505060208901356001600160401b0381111561275057612750600080fd5b61275c8b828c016124bf565b97505060408901356001600160401b0381111561277b5761277b600080fd5b6127878b828c016124bf565b96505060608901356001600160401b038111156127a6576127a6600080fd5b6127b28b828c016124bf565b95505060808901356001600160401b038111156127d1576127d1600080fd5b6127dd8b828c016124bf565b94505060a06127ee8b828c0161234c565b93505060c06127ff8b828c0161234c565b92505060e06128108b828c016123a9565b9150509295985092959890939650565b634e487b7160e01b600052602260045260246000fd5b60028104600182168061284a57607f821691505b6020821081141561285d5761285d612820565b50919050565b60218152602081017f4552433732313a20617070726f76616c20746f2063757272656e74206f776e658152603960f91b602082015290505b60400190565b602080825281016105c181612863565b603d8152602081017f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f81527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c0000006020820152905061289b565b602080825281016105c1816128b1565b60218152602081017f5369676e657220616e64207369676e617475726520646f206e6f74206d6174638152600d60fb1b6020820152905061289b565b602080825281016105c181612919565b606081016129738286612389565b6129806020830185612389565b818103604083015261089a8184612303565b600061299c825190565b6129aa8185602086016122d7565b9290920192915050565b60006105c18260601b90565b60006105c1826129b4565b6122c36129d782612378565b6129c0565b6129e68184612992565b90506129f281836129cb565b60140192915050565b6105c18183612992565b601c8152602081017f46756e6374696f6e2063616c6c206e6f74207375636365737366756c00000000815290505b60200190565b602080825281016105c181612a05565b634e487b7160e01b600052601160045260246000fd5b600082821015612a7157612a71612a49565b500390565b602d8152602081017f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6581526c1c881bdc88185c1c1c9bdd9959609a1b6020820152905061289b565b602080825281016105c181612a76565b60168152602081017513585e081b5a5b9d0818dbdd5b9d081c995858da195960521b81529050612a33565b602080825281016105c181612ace565b60188152602081017f4552433732313a20696e76616c696420746f6b656e204944000000000000000081529050612a33565b602080825281016105c181612b09565b60298152602081017f4552433732313a2061646472657373207a65726f206973206e6f7420612076618152683634b21037bbb732b960b91b6020820152905061289b565b602080825281016105c181612b4b565b61088b60f21b81525b60020190565b681134b6b0b3b2911d1160b91b81525b60090190565b60008154612bd181612836565b600182168015612be85760018114612bf957612c29565b60ff19831686528186019350612c29565b60008581526020902060005b83811015612c2157815488820152600190910190602001612c05565b505081860193505b50505092915050565b683f617373657449643d60b81b8152612bbe565b601160f91b81525b60010190565b66113234b2111d1160c91b8152600701612c6e8185612992565b9050612c7981612b9f565b9050612c8481612bae565b9050612c908184612bc4565b9050612c9b81612c32565b9050612ca78183612992565b9050610a6f81612c46565b601581526020810174139bdd08195b9bdd59da081d1bdad95b881cd95b9d605a1b81529050612a33565b602080825281016105c181612cb2565b612cf78183806122c3565b602001919050565b612d098184612992565b90506112238183612992565b612d1f8185612992565b9050612d2b8184612992565b9050610a6f8183612992565b603d60f91b8152612c4e565b612d4c81612d37565b90506105c18183612992565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c0000008152601d8101612d4c565b683d913730b6b2911d1160b91b8152612bbe565b701116113232b9b1b934b83a34b7b7111d1160791b81525b60110190565b701132bc3a32b93730b62fb634b735911d1160791b8152612db0565b607d60f81b8152612c4e565b612de781612d84565b9050612df38186612bc4565b9050612dfe81612d98565b9050612e0a8185612bc4565b9050612e1581612b9f565b9050612e2081612bae565b9050612e2c8184612bc4565b9050612e3781612b9f565b9050612e4281612db6565b9050612e4e8183612bc4565b9050612e5981612c46565b905061089a81612dd2565b60006105c182612378565b61228881612e64565b80516105c181612e6f565b600060208284031215612e9857612e98600080fd5b6000610a6f8484612e78565b60268152602081017f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206181526564647265737360d01b6020820152905061289b565b602080825281016105c181612ea4565b602e8152602081017f496e697469616c697a61626c653a20636f6e747261637420697320616c72656181526d191e481a5b9a5d1a585b1a5e995960921b6020820152905061289b565b602080825281016105c181612ef5565b60ff1690565b6122c38160006105c182612f4e565b602081016105c18284612f54565b60258152602081017f4e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5381526424a3a722a960d91b6020820152905061289b565b602080825281016105c181612f71565b60ff81166122c3565b60808101612fd88287612589565b612fe56020830186612fc1565b612ff26040830185612589565b61089a6060830184612589565b6000821982111561301257613012612a49565b500190565b60258152602081017f4552433732313a207472616e736665722066726f6d20696e636f72726563742081526437bbb732b960d91b6020820152905061289b565b602080825281016105c181613017565b60248152602081017f4552433732313a207472616e7366657220746f20746865207a65726f206164648152637265737360e01b6020820152905061289b565b602080825281016105c181613067565b60208082527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65729101908152612a33565b602080825281016105c1816130b6565b61202360f01b8152612ba8565b61310d8184612bc4565b9050612d09816130f6565b7002a3434b99034b990309027232a1037b31607d1b8152612db0565b601760f91b8152612c4e565b61314981613118565b90506131558183612bc4565b90506105c181613134565b61316981612d84565b9050613175818a612992565b905061318081612d98565b905061318c8189612992565b905061319781612b9f565b6d1130ba3a3934b13aba32b9911d1160911b8152600e0190506131ba8188612992565b90506131c581612b9f565b6f1132bc3a32b93730b62fbab936111d1160811b815260100190506131ea8187612992565b90506131f581612b9f565b651139b7111d1160d11b815260060190506132108186612992565b905061321b81612b9f565b721131b7b73a3930b1ba20b2323932b9b9911d1160691b815260130190506132438185612992565b905061324e81612c46565b905061325a8184612992565b90506132668183612992565b905061327181612dd2565b9998505050505050505050565b601381526020810172496e76616c696420736c6963652072616e676560681b81529050612a33565b602080825281016105c18161327e565b634e487b7160e01b600052603260045260246000fd5b60006000198214156132e0576132e0612a49565b5060010190565b634e487b7160e01b600052601260045260246000fd5b60198152602081017f4552433732313a20617070726f766520746f2063616c6c65720000000000000081529050612a33565b602080825281016105c1816132fd565b60328152602081017f4552433732313a207472616e7366657220746f206e6f6e20455243373231526581527131b2b4bb32b91034b6b83632b6b2b73a32b960711b6020820152905061289b565b602080825281016105c18161333f565b6000826133ab576133ab6132e7565b500490565b60008160001904831182151516156133ca576133ca612a49565b500290565b600e8152602081016d185b1c9958591e481a5b9a5d195960921b81529050612a33565b602080825281016105c1816133cf565b608081016134108287612589565b61341d6020830186612589565b612ff26040830185612389565b61190160f01b8152612ba8565b6134408161342a565b905061344d8184806122c3565b6020016124718183806122c3565b608081016134698287612389565b6134766020830186612389565b6134836040830185612589565b81810360608301526134958184612303565b9695505050505050565b80516105c18161227c565b6000602082840312156134bf576134bf600080fd5b6000610a6f848461349f565b60a081016134d98288612589565b6134e66020830187612589565b6134f36040830186612589565b6135006060830185612389565b6134956080830184612589565b60008161351c5761351c612a49565b506000190190565b60208082527f537472696e67733a20686578206c656e67746820696e73756666696369656e749101908152612a33565b602080825281016105c181613524565b60208082527f4552433732313a206d696e7420746f20746865207a65726f20616464726573739101908152612a33565b602080825281016105c181613564565b601c8152602081017f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000081529050612a33565b602080825281016105c1816135a456fe4d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e617475726529454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c74294142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2f31323334353637383941424344454647484a4b4c4d4e505152535455565758595a6162636465666768696a6b6d6e6f707172737475767778797aa2646970667358221220ed07ccc2bb843f0841a2684d556a2e564fd3ca7fc33a91978ef39b7c8fcd671664736f6c63430008090033";
|
|
797
|
+
var linkReferences$1 = {
|
|
798
|
+
};
|
|
799
|
+
var deployedLinkReferences$1 = {
|
|
800
|
+
};
|
|
801
|
+
var require$$8 = {
|
|
802
|
+
_format: _format$1,
|
|
803
|
+
contractName: contractName$1,
|
|
804
|
+
sourceName: sourceName$1,
|
|
805
|
+
abi: abi$1,
|
|
806
|
+
bytecode: bytecode$1,
|
|
807
|
+
deployedBytecode: deployedBytecode$1,
|
|
808
|
+
linkReferences: linkReferences$1,
|
|
809
|
+
deployedLinkReferences: deployedLinkReferences$1
|
|
810
|
+
};
|
|
811
|
+
|
|
812
|
+
var _format = "hh-sol-artifact-1";
|
|
813
|
+
var contractName = "ERC721DIDFactory";
|
|
814
|
+
var sourceName = "src/ERC721DIDFactory.sol";
|
|
815
|
+
var abi = [
|
|
816
|
+
{
|
|
817
|
+
inputs: [
|
|
818
|
+
{
|
|
819
|
+
internalType: "address",
|
|
820
|
+
name: "_implementation",
|
|
821
|
+
type: "address"
|
|
822
|
+
}
|
|
823
|
+
],
|
|
824
|
+
stateMutability: "nonpayable",
|
|
825
|
+
type: "constructor"
|
|
826
|
+
},
|
|
827
|
+
{
|
|
828
|
+
anonymous: false,
|
|
829
|
+
inputs: [
|
|
830
|
+
{
|
|
831
|
+
indexed: false,
|
|
832
|
+
internalType: "address",
|
|
833
|
+
name: "contractAddress",
|
|
834
|
+
type: "address"
|
|
835
|
+
}
|
|
836
|
+
],
|
|
837
|
+
name: "Created",
|
|
838
|
+
type: "event"
|
|
839
|
+
},
|
|
840
|
+
{
|
|
841
|
+
anonymous: false,
|
|
842
|
+
inputs: [
|
|
843
|
+
{
|
|
844
|
+
indexed: true,
|
|
845
|
+
internalType: "address",
|
|
846
|
+
name: "previousOwner",
|
|
847
|
+
type: "address"
|
|
848
|
+
},
|
|
849
|
+
{
|
|
850
|
+
indexed: true,
|
|
851
|
+
internalType: "address",
|
|
852
|
+
name: "newOwner",
|
|
853
|
+
type: "address"
|
|
854
|
+
}
|
|
855
|
+
],
|
|
856
|
+
name: "OwnershipTransferred",
|
|
857
|
+
type: "event"
|
|
858
|
+
},
|
|
859
|
+
{
|
|
860
|
+
stateMutability: "nonpayable",
|
|
861
|
+
type: "fallback"
|
|
862
|
+
},
|
|
863
|
+
{
|
|
864
|
+
inputs: [
|
|
865
|
+
{
|
|
866
|
+
internalType: "address",
|
|
867
|
+
name: "_proxyRegistryAddress",
|
|
868
|
+
type: "address"
|
|
869
|
+
},
|
|
870
|
+
{
|
|
871
|
+
internalType: "string",
|
|
872
|
+
name: "_baseImageURI",
|
|
873
|
+
type: "string"
|
|
874
|
+
},
|
|
875
|
+
{
|
|
876
|
+
internalType: "string",
|
|
877
|
+
name: "_contractName",
|
|
878
|
+
type: "string"
|
|
879
|
+
},
|
|
880
|
+
{
|
|
881
|
+
internalType: "string",
|
|
882
|
+
name: "_contractSymbol",
|
|
883
|
+
type: "string"
|
|
884
|
+
},
|
|
885
|
+
{
|
|
886
|
+
internalType: "string",
|
|
887
|
+
name: "_contractDescription",
|
|
888
|
+
type: "string"
|
|
889
|
+
},
|
|
890
|
+
{
|
|
891
|
+
internalType: "uint256",
|
|
892
|
+
name: "_totalLimit",
|
|
893
|
+
type: "uint256"
|
|
894
|
+
},
|
|
895
|
+
{
|
|
896
|
+
internalType: "uint256",
|
|
897
|
+
name: "_price",
|
|
898
|
+
type: "uint256"
|
|
899
|
+
},
|
|
900
|
+
{
|
|
901
|
+
internalType: "address payable",
|
|
902
|
+
name: "_transferTokenAddress",
|
|
903
|
+
type: "address"
|
|
904
|
+
}
|
|
905
|
+
],
|
|
906
|
+
name: "create",
|
|
907
|
+
outputs: [
|
|
908
|
+
],
|
|
909
|
+
stateMutability: "nonpayable",
|
|
910
|
+
type: "function"
|
|
911
|
+
},
|
|
912
|
+
{
|
|
913
|
+
inputs: [
|
|
914
|
+
],
|
|
915
|
+
name: "implementation",
|
|
916
|
+
outputs: [
|
|
917
|
+
{
|
|
918
|
+
internalType: "address",
|
|
919
|
+
name: "",
|
|
920
|
+
type: "address"
|
|
921
|
+
}
|
|
922
|
+
],
|
|
923
|
+
stateMutability: "view",
|
|
924
|
+
type: "function"
|
|
925
|
+
},
|
|
926
|
+
{
|
|
927
|
+
inputs: [
|
|
928
|
+
],
|
|
929
|
+
name: "owner",
|
|
930
|
+
outputs: [
|
|
931
|
+
{
|
|
932
|
+
internalType: "address",
|
|
933
|
+
name: "",
|
|
934
|
+
type: "address"
|
|
935
|
+
}
|
|
936
|
+
],
|
|
937
|
+
stateMutability: "view",
|
|
938
|
+
type: "function"
|
|
939
|
+
},
|
|
940
|
+
{
|
|
941
|
+
inputs: [
|
|
942
|
+
],
|
|
943
|
+
name: "renounceOwnership",
|
|
944
|
+
outputs: [
|
|
945
|
+
],
|
|
946
|
+
stateMutability: "nonpayable",
|
|
947
|
+
type: "function"
|
|
948
|
+
},
|
|
949
|
+
{
|
|
950
|
+
inputs: [
|
|
951
|
+
{
|
|
952
|
+
internalType: "address",
|
|
953
|
+
name: "_implementation",
|
|
954
|
+
type: "address"
|
|
955
|
+
}
|
|
956
|
+
],
|
|
957
|
+
name: "setImplementation",
|
|
958
|
+
outputs: [
|
|
959
|
+
],
|
|
960
|
+
stateMutability: "nonpayable",
|
|
961
|
+
type: "function"
|
|
962
|
+
},
|
|
963
|
+
{
|
|
964
|
+
inputs: [
|
|
965
|
+
{
|
|
966
|
+
internalType: "address",
|
|
967
|
+
name: "newOwner",
|
|
968
|
+
type: "address"
|
|
969
|
+
}
|
|
970
|
+
],
|
|
971
|
+
name: "transferOwnership",
|
|
972
|
+
outputs: [
|
|
973
|
+
],
|
|
974
|
+
stateMutability: "nonpayable",
|
|
975
|
+
type: "function"
|
|
976
|
+
}
|
|
977
|
+
];
|
|
978
|
+
var bytecode = "0x608060405234801561001057600080fd5b5060405161091438038061091483398101604081905261002f916100e2565b6100383361005d565b600180546001600160a01b0319166001600160a01b039290921691909117905561010b565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006001600160a01b0382165b92915050565b6100c9816100ad565b81146100d457600080fd5b50565b80516100ba816100c0565b6000602082840312156100f7576100f7600080fd5b600061010384846100d7565b949350505050565b6107fa8061011a6000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80635c60da1b14610083578063715018a6146100ac5780638da5cb5b146100b6578063c137ecd7146100c7578063d784d426146100da578063f2fde38b146100ed575b60405162461bcd60e51b815260040161007a90610352565b60405180910390fd5b600154610096906001600160a01b031681565b6040516100a39190610388565b60405180910390f35b6100b4610100565b005b6000546001600160a01b0316610096565b6100b46100d53660046104c4565b610114565b6100b46100e83660046105e3565b6101dd565b6100b46100fb3660046105e3565b610207565b610108610241565b610112600061026b565b565b60015460009061012c906001600160a01b03166102bb565b604051637bced14560e11b81529091506001600160a01b0382169063f79da28a90610169908c908c908c908c908c908c908c908c9060040161066c565b600060405180830381600087803b15801561018357600080fd5b505af1158015610197573d6000803e3d6000fd5b505050507f1449abf21e49fd025f33495e77f7b1461caefdd3d4bb646424a3f445c4576a5b816040516101ca9190610388565b60405180910390a1505050505050505050565b6101e5610241565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b61020f610241565b6001600160a01b0381166102355760405162461bcd60e51b815260040161007a906106ff565b61023e8161026b565b50565b6000546001600160a01b031633146101125760405162461bcd60e51b815260040161007a90610779565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008260601b60e81c176000526e5af43d82803e903d91602b57fd5bf38260781b17602052603760096000f090506001600160a01b0381166103275760405162461bcd60e51b815260040161007a906107b4565b919050565b600f8152602081016e2ab735b737bb90333ab731ba34b7b760891b815290505b60200190565b602080825281016103628161032c565b92915050565b60006001600160a01b038216610362565b61038281610368565b82525050565b602081016103628284610379565b61039f81610368565b811461023e57600080fd5b803561036281610396565b634e487b7160e01b600052604160045260246000fd5b601f19601f830116810181811067ffffffffffffffff821117156103f1576103f16103b5565b6040525050565b600061040360405190565b905061032782826103cb565b600067ffffffffffffffff821115610429576104296103b5565b601f19601f83011660200192915050565b82818337506000910152565b60006104596104548461040f565b6103f8565b90508281526020810184848401111561047457610474600080fd5b61047f84828561043a565b509392505050565b600082601f83011261049b5761049b600080fd5b81356104ab848260208601610446565b949350505050565b8061039f565b8035610362816104b3565b600080600080600080600080610100898b0312156104e4576104e4600080fd5b60006104f08b8b6103aa565b985050602089013567ffffffffffffffff81111561051057610510600080fd5b61051c8b828c01610487565b975050604089013567ffffffffffffffff81111561053c5761053c600080fd5b6105488b828c01610487565b965050606089013567ffffffffffffffff81111561056857610568600080fd5b6105748b828c01610487565b955050608089013567ffffffffffffffff81111561059457610594600080fd5b6105a08b828c01610487565b94505060a06105b18b828c016104b9565b93505060c06105c28b828c016104b9565b92505060e06105d38b828c016103aa565b9150509295985092959890939650565b6000602082840312156105f8576105f8600080fd5b60006104ab84846103aa565b60005b8381101561061f578181015183820152602001610607565b8381111561062e576000848401525b50505050565b600061063e825190565b808452602084019350610655818560208601610604565b601f01601f19169290920192915050565b80610382565b610100810161067b828b610379565b818103602083015261068d818a610634565b905081810360408301526106a18189610634565b905081810360608301526106b58188610634565b905081810360808301526106c98187610634565b90506106d860a0830186610666565b6106e560c0830185610666565b6106f260e0830184610379565b9998505050505050505050565b6020808252810161036281602681527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160208201526564647265737360d01b604082015260600190565b60208082527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572910190815261034c565b6020808252810161036281610749565b601681526020810175115490cc4c4d8dce8818dc99585d194819985a5b195960521b8152905061034c565b602080825281016103628161078956fea26469706673582212206b3b4db5959cc750e7d240d269ad0f1ecf46bc9c3fedc4fa170569c318499f3c64736f6c63430008090033";
|
|
979
|
+
var deployedBytecode = "0x608060405234801561001057600080fd5b50600436106100625760003560e01c80635c60da1b14610083578063715018a6146100ac5780638da5cb5b146100b6578063c137ecd7146100c7578063d784d426146100da578063f2fde38b146100ed575b60405162461bcd60e51b815260040161007a90610352565b60405180910390fd5b600154610096906001600160a01b031681565b6040516100a39190610388565b60405180910390f35b6100b4610100565b005b6000546001600160a01b0316610096565b6100b46100d53660046104c4565b610114565b6100b46100e83660046105e3565b6101dd565b6100b46100fb3660046105e3565b610207565b610108610241565b610112600061026b565b565b60015460009061012c906001600160a01b03166102bb565b604051637bced14560e11b81529091506001600160a01b0382169063f79da28a90610169908c908c908c908c908c908c908c908c9060040161066c565b600060405180830381600087803b15801561018357600080fd5b505af1158015610197573d6000803e3d6000fd5b505050507f1449abf21e49fd025f33495e77f7b1461caefdd3d4bb646424a3f445c4576a5b816040516101ca9190610388565b60405180910390a1505050505050505050565b6101e5610241565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b61020f610241565b6001600160a01b0381166102355760405162461bcd60e51b815260040161007a906106ff565b61023e8161026b565b50565b6000546001600160a01b031633146101125760405162461bcd60e51b815260040161007a90610779565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008260601b60e81c176000526e5af43d82803e903d91602b57fd5bf38260781b17602052603760096000f090506001600160a01b0381166103275760405162461bcd60e51b815260040161007a906107b4565b919050565b600f8152602081016e2ab735b737bb90333ab731ba34b7b760891b815290505b60200190565b602080825281016103628161032c565b92915050565b60006001600160a01b038216610362565b61038281610368565b82525050565b602081016103628284610379565b61039f81610368565b811461023e57600080fd5b803561036281610396565b634e487b7160e01b600052604160045260246000fd5b601f19601f830116810181811067ffffffffffffffff821117156103f1576103f16103b5565b6040525050565b600061040360405190565b905061032782826103cb565b600067ffffffffffffffff821115610429576104296103b5565b601f19601f83011660200192915050565b82818337506000910152565b60006104596104548461040f565b6103f8565b90508281526020810184848401111561047457610474600080fd5b61047f84828561043a565b509392505050565b600082601f83011261049b5761049b600080fd5b81356104ab848260208601610446565b949350505050565b8061039f565b8035610362816104b3565b600080600080600080600080610100898b0312156104e4576104e4600080fd5b60006104f08b8b6103aa565b985050602089013567ffffffffffffffff81111561051057610510600080fd5b61051c8b828c01610487565b975050604089013567ffffffffffffffff81111561053c5761053c600080fd5b6105488b828c01610487565b965050606089013567ffffffffffffffff81111561056857610568600080fd5b6105748b828c01610487565b955050608089013567ffffffffffffffff81111561059457610594600080fd5b6105a08b828c01610487565b94505060a06105b18b828c016104b9565b93505060c06105c28b828c016104b9565b92505060e06105d38b828c016103aa565b9150509295985092959890939650565b6000602082840312156105f8576105f8600080fd5b60006104ab84846103aa565b60005b8381101561061f578181015183820152602001610607565b8381111561062e576000848401525b50505050565b600061063e825190565b808452602084019350610655818560208601610604565b601f01601f19169290920192915050565b80610382565b610100810161067b828b610379565b818103602083015261068d818a610634565b905081810360408301526106a18189610634565b905081810360608301526106b58188610634565b905081810360808301526106c98187610634565b90506106d860a0830186610666565b6106e560c0830185610666565b6106f260e0830184610379565b9998505050505050505050565b6020808252810161036281602681527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160208201526564647265737360d01b604082015260600190565b60208082527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572910190815261034c565b6020808252810161036281610749565b601681526020810175115490cc4c4d8dce8818dc99585d194819985a5b195960521b8152905061034c565b602080825281016103628161078956fea26469706673582212206b3b4db5959cc750e7d240d269ad0f1ecf46bc9c3fedc4fa170569c318499f3c64736f6c63430008090033";
|
|
980
|
+
var linkReferences = {
|
|
981
|
+
};
|
|
982
|
+
var deployedLinkReferences = {
|
|
983
|
+
};
|
|
984
|
+
var require$$9 = {
|
|
985
|
+
_format: _format,
|
|
986
|
+
contractName: contractName,
|
|
987
|
+
sourceName: sourceName,
|
|
988
|
+
abi: abi,
|
|
989
|
+
bytecode: bytecode,
|
|
990
|
+
deployedBytecode: deployedBytecode,
|
|
991
|
+
linkReferences: linkReferences,
|
|
992
|
+
deployedLinkReferences: deployedLinkReferences
|
|
993
|
+
};
|
|
994
|
+
|
|
995
|
+
var require$$10 = [
|
|
996
|
+
{
|
|
997
|
+
chainId: "5",
|
|
998
|
+
chainName: "Goerli",
|
|
999
|
+
contractFactoryAddress: "0x4c093eAf8d569f6b2dC5a217D25cb3f0B60918C3",
|
|
1000
|
+
isTest: true,
|
|
1001
|
+
networkName: "goerli",
|
|
1002
|
+
symbol: "ETH (Goerli)",
|
|
1003
|
+
defaultRPC: "https://goerli.infura.io/v3/31276ea517a941c5b91d914fab83494e",
|
|
1004
|
+
explorer: "https://goerli.etherscan.io",
|
|
1005
|
+
icon: "eth",
|
|
1006
|
+
enable: true,
|
|
1007
|
+
decimal: 18
|
|
1008
|
+
},
|
|
1009
|
+
{
|
|
1010
|
+
chainId: "84531",
|
|
1011
|
+
chainName: "Base Goerli",
|
|
1012
|
+
contractFactoryAddress: "0xe83044a18dAb8F28F99F22f413C3856A0e39B153",
|
|
1013
|
+
isTest: true,
|
|
1014
|
+
networkName: "base-goerli",
|
|
1015
|
+
symbol: "ETH (Base Goerli)",
|
|
1016
|
+
defaultRPC: "https://goerli.base.org",
|
|
1017
|
+
explorer: "https://goerli.basescan.org",
|
|
1018
|
+
icon: "base",
|
|
1019
|
+
enable: true,
|
|
1020
|
+
decimal: 18
|
|
1021
|
+
},
|
|
1022
|
+
{
|
|
1023
|
+
chainId: "97",
|
|
1024
|
+
chainName: "BNB (Binance Smart Chain)",
|
|
1025
|
+
contractFactoryAddress: "0xf13AAEF9071498eE61D0e6390970e0629c60a53C",
|
|
1026
|
+
isTest: true,
|
|
1027
|
+
networkName: "bsc-test",
|
|
1028
|
+
symbol: "tBNB",
|
|
1029
|
+
defaultRPC: "https://bsc.getblock.io/13042277-cdaa-47dc-acda-5a0900eaf4ae/testnet",
|
|
1030
|
+
explorer: "https://testnet.bscscan.com",
|
|
1031
|
+
icon: "bnb",
|
|
1032
|
+
enable: true,
|
|
1033
|
+
decimal: 18
|
|
1034
|
+
},
|
|
1035
|
+
{
|
|
1036
|
+
chainId: "11155111",
|
|
1037
|
+
chainName: "Sepolia",
|
|
1038
|
+
contractFactoryAddress: "0xf13AAEF9071498eE61D0e6390970e0629c60a53C",
|
|
1039
|
+
isTest: true,
|
|
1040
|
+
networkName: "sepolia",
|
|
1041
|
+
symbol: "ETH (Sepolia)",
|
|
1042
|
+
defaultRPC: "https://sepolia.infura.io/v3/31276ea517a941c5b91d914fab83494e",
|
|
1043
|
+
explorer: "https://sepolia.etherscan.io",
|
|
1044
|
+
icon: "eth",
|
|
1045
|
+
enable: false,
|
|
1046
|
+
decimal: 18
|
|
1047
|
+
}
|
|
1048
|
+
];
|
|
1049
|
+
|
|
1050
|
+
var require$$11 = [
|
|
1051
|
+
{
|
|
1052
|
+
chainId: "31337",
|
|
1053
|
+
chainName: "Localhost",
|
|
1054
|
+
contractFactoryAddress: "0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512",
|
|
1055
|
+
isTest: true,
|
|
1056
|
+
networkName: "localhost",
|
|
1057
|
+
symbol: "ETH (Localhost)",
|
|
1058
|
+
defaultRPC: "http://localhost:8545",
|
|
1059
|
+
explorer: "http://localhost:8545",
|
|
1060
|
+
icon: "eth",
|
|
1061
|
+
enable: true,
|
|
1062
|
+
decimal: 18
|
|
1063
|
+
}
|
|
1064
|
+
];
|
|
1065
|
+
|
|
1066
|
+
/* eslint-disable no-unused-vars */
|
|
1067
|
+
|
|
1068
|
+
/* eslint-disable no-undef */
|
|
1069
|
+
require$$0.config();
|
|
1070
|
+
const ethers = require$$1;
|
|
1071
|
+
const axios = require$$2;
|
|
1072
|
+
const waitFor = require$$3;
|
|
1073
|
+
const { toBase58 } = require$$4;
|
|
1074
|
+
const upperFirst = require$$5;
|
|
1075
|
+
const keyBy = require$$6;
|
|
1076
|
+
const pick = require$$7;
|
|
1077
|
+
const ERC721DID = require$$8;
|
|
1078
|
+
const ERC721DIDFactory = require$$9;
|
|
1079
|
+
|
|
1080
|
+
const INFURA_PROJECT_ID = '31276ea517a941c5b91d914fab83494e';
|
|
1081
|
+
|
|
1082
|
+
const CHAIN_MAP = {
|
|
1083
|
+
1: {
|
|
1084
|
+
networkName: 'mainnet',
|
|
1085
|
+
chainName: 'Ethereum Mainnet',
|
|
1086
|
+
chainId: '1',
|
|
1087
|
+
symbol: 'ETH',
|
|
1088
|
+
defaultRPC: `https://mainnet.infura.io/v3/${INFURA_PROJECT_ID}`,
|
|
1089
|
+
explorer: 'https://etherscan.io',
|
|
1090
|
+
icon: 'eth',
|
|
1091
|
+
enable: true,
|
|
1092
|
+
decimal: 18,
|
|
1093
|
+
},
|
|
1094
|
+
5: {
|
|
1095
|
+
networkName: 'goerli',
|
|
1096
|
+
chainName: 'Goerli',
|
|
1097
|
+
chainId: '5',
|
|
1098
|
+
symbol: 'ETH (Goerli)',
|
|
1099
|
+
defaultRPC: `https://goerli.infura.io/v3/${INFURA_PROJECT_ID}`,
|
|
1100
|
+
explorer: 'https://goerli.etherscan.io',
|
|
1101
|
+
icon: 'eth',
|
|
1102
|
+
enable: true,
|
|
1103
|
+
decimal: 18,
|
|
1104
|
+
},
|
|
1105
|
+
31337: {
|
|
1106
|
+
networkName: 'localhost',
|
|
1107
|
+
chainName: 'Localhost',
|
|
1108
|
+
chainId: '31337',
|
|
1109
|
+
symbol: 'ETH (Localhost)',
|
|
1110
|
+
defaultRPC: 'http://localhost:8545',
|
|
1111
|
+
explorer: 'http://localhost:8545',
|
|
1112
|
+
icon: 'eth',
|
|
1113
|
+
enable: true,
|
|
1114
|
+
decimal: 18,
|
|
1115
|
+
},
|
|
1116
|
+
84531: {
|
|
1117
|
+
networkName: 'base-goerli',
|
|
1118
|
+
chainName: 'Base Goerli',
|
|
1119
|
+
chainId: '84531',
|
|
1120
|
+
symbol: 'ETH (Base Goerli)',
|
|
1121
|
+
defaultRPC: 'https://goerli.base.org',
|
|
1122
|
+
explorer: 'https://goerli.basescan.org',
|
|
1123
|
+
icon: 'base',
|
|
1124
|
+
enable: true,
|
|
1125
|
+
decimal: 18,
|
|
1126
|
+
},
|
|
1127
|
+
11155111: {
|
|
1128
|
+
networkName: 'sepolia',
|
|
1129
|
+
chainName: 'Sepolia',
|
|
1130
|
+
chainId: '11155111',
|
|
1131
|
+
symbol: 'ETH (Sepolia)',
|
|
1132
|
+
defaultRPC: `https://sepolia.infura.io/v3/${INFURA_PROJECT_ID}`,
|
|
1133
|
+
explorer: 'https://sepolia.etherscan.io',
|
|
1134
|
+
icon: 'eth',
|
|
1135
|
+
enable: false, // FIXME
|
|
1136
|
+
decimal: 18,
|
|
1137
|
+
},
|
|
1138
|
+
97: {
|
|
1139
|
+
networkName: 'bsc-test',
|
|
1140
|
+
chainName: 'BNB (Binance Smart Chain)',
|
|
1141
|
+
chainId: '97',
|
|
1142
|
+
symbol: 'tBNB',
|
|
1143
|
+
defaultRPC: 'https://bsc.getblock.io/13042277-cdaa-47dc-acda-5a0900eaf4ae/testnet',
|
|
1144
|
+
explorer: 'https://testnet.bscscan.com',
|
|
1145
|
+
icon: 'bnb',
|
|
1146
|
+
enable: true,
|
|
1147
|
+
decimal: 18,
|
|
1148
|
+
},
|
|
1149
|
+
};
|
|
1150
|
+
|
|
1151
|
+
const CUSTOM_CHAIN_MAP = {};
|
|
1152
|
+
|
|
1153
|
+
function getProvider(chainId) {
|
|
1154
|
+
const { defaultRPC } = getChainInfo(chainId);
|
|
1155
|
+
return new ethers.providers.JsonRpcProvider(defaultRPC);
|
|
1156
|
+
}
|
|
1157
|
+
|
|
1158
|
+
async function getContract({ contractAddress, chainId, signer } = {}) {
|
|
1159
|
+
const provider = getProvider(chainId);
|
|
1160
|
+
|
|
1161
|
+
const contract = new ethers.Contract(contractAddress, ERC721DID.abi, signer || provider);
|
|
1162
|
+
|
|
1163
|
+
return contract;
|
|
1164
|
+
}
|
|
1165
|
+
|
|
1166
|
+
async function getContractFactory({ contractAddress, chainId, signer } = {}) {
|
|
1167
|
+
const provider = getProvider(chainId);
|
|
1168
|
+
|
|
1169
|
+
const contract = new ethers.Contract(contractAddress, ERC721DIDFactory.abi, signer || provider);
|
|
1170
|
+
|
|
1171
|
+
return contract;
|
|
1172
|
+
}
|
|
1173
|
+
|
|
1174
|
+
async function getGasPrice({ provider }) {
|
|
1175
|
+
const gwei = 1000000000;
|
|
1176
|
+
|
|
1177
|
+
const chainId = await getChainId({ contract });
|
|
1178
|
+
|
|
1179
|
+
// ethereum
|
|
1180
|
+
if ([1, '1', 'mainnet', 'eth-main'].includes(chainId)) {
|
|
1181
|
+
const { data } = await axios.get(`https://token-data.arcblock.io/api/gas-prices?chainId=${chainId}`);
|
|
1182
|
+
return (data.fast / 10) * gwei;
|
|
1183
|
+
}
|
|
1184
|
+
|
|
1185
|
+
if ([5, '5', 'goerli', 'eth-goerli'].includes(chainId)) {
|
|
1186
|
+
const { gasPrice } = await provider.getFeeData();
|
|
1187
|
+
return gasPrice.toString();
|
|
1188
|
+
}
|
|
1189
|
+
|
|
1190
|
+
// hardhat
|
|
1191
|
+
if ([31337, '31337', 'hardhat'].includes(chainId)) {
|
|
1192
|
+
return 1 * gwei;
|
|
1193
|
+
}
|
|
1194
|
+
|
|
1195
|
+
// TODO: bsc
|
|
1196
|
+
// TODO: matic
|
|
1197
|
+
// TODO: fantom
|
|
1198
|
+
|
|
1199
|
+
return 1 * gwei;
|
|
1200
|
+
}
|
|
1201
|
+
|
|
1202
|
+
async function getTxData(params = {}, type = 'arcblock') {
|
|
1203
|
+
const { contract, fn, args, value } = params;
|
|
1204
|
+
const txData = contract.interface.encodeFunctionData(fn, args);
|
|
1205
|
+
|
|
1206
|
+
const chainId = await getChainId({ contract });
|
|
1207
|
+
|
|
1208
|
+
// const gasPrice = await getGasPrice({ provider: contract.provider });
|
|
1209
|
+
// const gasPriceAsGwei = Math.ceil(ethers.utils.formatUnits(gasPrice, 'gwei').toString());
|
|
1210
|
+
|
|
1211
|
+
const extraEtherValueMap = value
|
|
1212
|
+
? {
|
|
1213
|
+
value,
|
|
1214
|
+
}
|
|
1215
|
+
: {};
|
|
1216
|
+
|
|
1217
|
+
const gasLimit = await contract.provider
|
|
1218
|
+
.estimateGas({
|
|
1219
|
+
to: contract.address,
|
|
1220
|
+
data: txData,
|
|
1221
|
+
...extraEtherValueMap,
|
|
1222
|
+
})
|
|
1223
|
+
.then((res) => res.toString());
|
|
1224
|
+
|
|
1225
|
+
if (type === 'arcblock') {
|
|
1226
|
+
return toBase58(
|
|
1227
|
+
Buffer.from(
|
|
1228
|
+
JSON.stringify({
|
|
1229
|
+
network: chainId,
|
|
1230
|
+
tx: {
|
|
1231
|
+
to: contract.address,
|
|
1232
|
+
value: '0',
|
|
1233
|
+
...extraEtherValueMap,
|
|
1234
|
+
gasLimit,
|
|
1235
|
+
data: txData,
|
|
1236
|
+
},
|
|
1237
|
+
}),
|
|
1238
|
+
'utf-8'
|
|
1239
|
+
)
|
|
1240
|
+
);
|
|
1241
|
+
}
|
|
1242
|
+
|
|
1243
|
+
return {
|
|
1244
|
+
txData,
|
|
1245
|
+
gasLimit,
|
|
1246
|
+
};
|
|
1247
|
+
}
|
|
1248
|
+
|
|
1249
|
+
const waitForTxReceipt = async ({ contract, txHash }) => {
|
|
1250
|
+
let tx = {};
|
|
1251
|
+
let receipt = {};
|
|
1252
|
+
const txHashTemp = txHash;
|
|
1253
|
+
|
|
1254
|
+
await waitFor(
|
|
1255
|
+
async () => {
|
|
1256
|
+
// ethers getTransaction
|
|
1257
|
+
tx = await contract.provider.getTransaction(txHashTemp);
|
|
1258
|
+
return !!tx?.blockNumber;
|
|
1259
|
+
},
|
|
1260
|
+
{ interval: 3000, timeout: 30 * 60 * 1000 }
|
|
1261
|
+
);
|
|
1262
|
+
|
|
1263
|
+
await waitFor(
|
|
1264
|
+
async () => {
|
|
1265
|
+
// ethers getTransactionReceipt
|
|
1266
|
+
const originReceipt = await contract.provider.getTransactionReceipt(txHashTemp);
|
|
1267
|
+
receipt = {
|
|
1268
|
+
...originReceipt,
|
|
1269
|
+
parseLog: originReceipt?.logs?.map((log) => {
|
|
1270
|
+
try {
|
|
1271
|
+
return contract.interface.parseLog(log);
|
|
1272
|
+
} catch (_error) {
|
|
1273
|
+
return log;
|
|
1274
|
+
}
|
|
1275
|
+
}),
|
|
1276
|
+
};
|
|
1277
|
+
return !!receipt?.blockNumber;
|
|
1278
|
+
},
|
|
1279
|
+
{ interval: 3000, timeout: 30 * 60 * 1000 }
|
|
1280
|
+
);
|
|
1281
|
+
|
|
1282
|
+
return receipt;
|
|
1283
|
+
};
|
|
1284
|
+
|
|
1285
|
+
const onContractFilter = async ({ contract, fn, onSuccess }) => {
|
|
1286
|
+
contract.provider.on(
|
|
1287
|
+
{
|
|
1288
|
+
address: contract.address,
|
|
1289
|
+
topics: [contract.interface.getEventTopic(upperFirst(fn))],
|
|
1290
|
+
},
|
|
1291
|
+
async (res) => {
|
|
1292
|
+
await onSuccess(res);
|
|
1293
|
+
}
|
|
1294
|
+
);
|
|
1295
|
+
};
|
|
1296
|
+
|
|
1297
|
+
// @private
|
|
1298
|
+
const getChainIdByChainName = (chainName) => {
|
|
1299
|
+
return keyBy(
|
|
1300
|
+
{
|
|
1301
|
+
...CHAIN_MAP,
|
|
1302
|
+
...CUSTOM_CHAIN_MAP,
|
|
1303
|
+
},
|
|
1304
|
+
'networkName'
|
|
1305
|
+
)[chainName].chainId;
|
|
1306
|
+
};
|
|
1307
|
+
|
|
1308
|
+
const getChainId = async ({ contract }) => {
|
|
1309
|
+
const chainId = await contract.provider.getNetwork().then((res) => res.chainId);
|
|
1310
|
+
return `${chainId}`;
|
|
1311
|
+
};
|
|
1312
|
+
|
|
1313
|
+
const setupContractEnv = ({ customEvmChainList }) => {
|
|
1314
|
+
customEvmChainList.forEach((chain) => {
|
|
1315
|
+
const { chainId } = chain;
|
|
1316
|
+
CUSTOM_CHAIN_MAP[chainId] = chain;
|
|
1317
|
+
});
|
|
1318
|
+
};
|
|
1319
|
+
|
|
1320
|
+
const getChainInfo = (chainId) => {
|
|
1321
|
+
return {
|
|
1322
|
+
...CHAIN_MAP[chainId],
|
|
1323
|
+
...CUSTOM_CHAIN_MAP[chainId],
|
|
1324
|
+
};
|
|
1325
|
+
};
|
|
1326
|
+
|
|
1327
|
+
const getExplorerUrl = (chainId) => {
|
|
1328
|
+
const { explorer } = getChainInfo(chainId);
|
|
1329
|
+
|
|
1330
|
+
return `${explorer}`;
|
|
1331
|
+
};
|
|
1332
|
+
|
|
1333
|
+
const getAddressExplorerUrl = ({ chainId, hash }) => {
|
|
1334
|
+
return `${getExplorerUrl(chainId)}/address/${hash}`;
|
|
1335
|
+
};
|
|
1336
|
+
|
|
1337
|
+
const getBlockExplorerUrl = ({ chainId, blockletNumber }) => {
|
|
1338
|
+
return `${getExplorerUrl(chainId)}/block/${blockletNumber}`;
|
|
1339
|
+
};
|
|
1340
|
+
|
|
1341
|
+
const getTxExplorerUrl = ({ chainId, hash }) => {
|
|
1342
|
+
return `${getExplorerUrl(chainId)}/tx/${hash}`;
|
|
1343
|
+
};
|
|
1344
|
+
|
|
1345
|
+
const getCloneContractArgs = ({
|
|
1346
|
+
ownerAddress,
|
|
1347
|
+
baseImageURI,
|
|
1348
|
+
contractName,
|
|
1349
|
+
contractSymbol = '',
|
|
1350
|
+
contractDescription,
|
|
1351
|
+
totalLimit = 0,
|
|
1352
|
+
price = '0',
|
|
1353
|
+
transferTokenAddress,
|
|
1354
|
+
} = {}) => {
|
|
1355
|
+
const params = [
|
|
1356
|
+
ownerAddress,
|
|
1357
|
+
baseImageURI,
|
|
1358
|
+
contractName,
|
|
1359
|
+
contractSymbol,
|
|
1360
|
+
contractDescription,
|
|
1361
|
+
totalLimit,
|
|
1362
|
+
price,
|
|
1363
|
+
transferTokenAddress || ownerAddress,
|
|
1364
|
+
];
|
|
1365
|
+
return params;
|
|
1366
|
+
};
|
|
1367
|
+
|
|
1368
|
+
const getEvmChainList = () => {
|
|
1369
|
+
// eslint-disable-next-line global-require
|
|
1370
|
+
let defaultChainList = require$$10;
|
|
1371
|
+
try {
|
|
1372
|
+
defaultChainList = [
|
|
1373
|
+
...defaultChainList,
|
|
1374
|
+
// eslint-disable-next-line global-require
|
|
1375
|
+
...require$$11,
|
|
1376
|
+
];
|
|
1377
|
+
} catch (error) {
|
|
1378
|
+
// do nothing
|
|
1379
|
+
}
|
|
1380
|
+
// CUSTOM_CHAIN_MAP is setup by setupContractEnv
|
|
1381
|
+
if (Object.keys(CUSTOM_CHAIN_MAP).length > 0) {
|
|
1382
|
+
defaultChainList = defaultChainList.map((item) => {
|
|
1383
|
+
const { chainId } = item;
|
|
1384
|
+
if (CUSTOM_CHAIN_MAP[chainId]) {
|
|
1385
|
+
// override
|
|
1386
|
+
return {
|
|
1387
|
+
...item,
|
|
1388
|
+
...pick(CUSTOM_CHAIN_MAP[chainId], ['enable', 'defaultRPC', 'explorer']),
|
|
1389
|
+
};
|
|
1390
|
+
}
|
|
1391
|
+
return item;
|
|
1392
|
+
});
|
|
1393
|
+
}
|
|
1394
|
+
return defaultChainList;
|
|
1395
|
+
};
|
|
1396
|
+
|
|
1397
|
+
var getContract_1 = contract$1.getContract = getContract;
|
|
1398
|
+
var getContractFactory_1 = contract$1.getContractFactory = getContractFactory;
|
|
1399
|
+
var getTxData_1 = contract$1.getTxData = getTxData;
|
|
1400
|
+
var getGasPrice_1 = contract$1.getGasPrice = getGasPrice;
|
|
1401
|
+
var waitForTxReceipt_1 = contract$1.waitForTxReceipt = waitForTxReceipt;
|
|
1402
|
+
var onContractFilter_1 = contract$1.onContractFilter = onContractFilter;
|
|
1403
|
+
var getChainId_1 = contract$1.getChainId = getChainId;
|
|
1404
|
+
var getChainInfo_1 = contract$1.getChainInfo = getChainInfo;
|
|
1405
|
+
var getBlockExplorerUrl_1 = contract$1.getBlockExplorerUrl = getBlockExplorerUrl;
|
|
1406
|
+
var getTxExplorerUrl_1 = contract$1.getTxExplorerUrl = getTxExplorerUrl;
|
|
1407
|
+
var getAddressExplorerUrl_1 = contract$1.getAddressExplorerUrl = getAddressExplorerUrl;
|
|
1408
|
+
var getCloneContractArgs_1 = contract$1.getCloneContractArgs = getCloneContractArgs;
|
|
1409
|
+
var getEvmChainList_1 = contract$1.getEvmChainList = getEvmChainList;
|
|
1410
|
+
var setupContractEnv_1 = contract$1.setupContractEnv = setupContractEnv;
|
|
1411
|
+
var getChainIdByChainName_1 = contract$1.getChainIdByChainName = getChainIdByChainName;
|
|
1412
|
+
var ethers_1 = contract$1.ethers = ethers;
|
|
1413
|
+
|
|
1414
|
+
export { contract$1 as default, ethers_1 as ethers, getAddressExplorerUrl_1 as getAddressExplorerUrl, getBlockExplorerUrl_1 as getBlockExplorerUrl, getChainId_1 as getChainId, getChainIdByChainName_1 as getChainIdByChainName, getChainInfo_1 as getChainInfo, getCloneContractArgs_1 as getCloneContractArgs, getContract_1 as getContract, getContractFactory_1 as getContractFactory, getEvmChainList_1 as getEvmChainList, getGasPrice_1 as getGasPrice, getTxData_1 as getTxData, getTxExplorerUrl_1 as getTxExplorerUrl, onContractFilter_1 as onContractFilter, setupContractEnv_1 as setupContractEnv, waitForTxReceipt_1 as waitForTxReceipt };
|