@lukso/lsp8-contracts 0.15.0 → 0.16.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.
Files changed (51) hide show
  1. package/README.md +49 -2
  2. package/contracts/ILSP8IdentifiableDigitalAsset.sol +2 -8
  3. package/contracts/LSP8Constants.sol +4 -0
  4. package/contracts/LSP8IdentifiableDigitalAsset.sol +796 -36
  5. package/contracts/LSP8IdentifiableDigitalAssetInitAbstract.sol +806 -36
  6. package/contracts/extensions/LSP8CappedSupply.sol +1 -1
  7. package/contracts/extensions/LSP8CappedSupplyInitAbstract.sol +1 -1
  8. package/contracts/extensions/LSP8Enumerable.sol +6 -5
  9. package/contracts/extensions/LSP8EnumerableInitAbstract.sol +5 -5
  10. package/contracts/extensions/LSP8Votes.sol +94 -0
  11. package/contracts/extensions/LSP8VotesConstants.sol +8 -0
  12. package/contracts/extensions/LSP8VotesInitAbstract.sol +116 -0
  13. package/dist/abi.cjs +6432 -0
  14. package/dist/abi.d.cts +9539 -0
  15. package/dist/abi.d.mts +9539 -0
  16. package/dist/abi.d.ts +9539 -0
  17. package/dist/abi.mjs +6418 -0
  18. package/dist/{index.cjs → constants.cjs} +5 -1
  19. package/dist/constants.d.cts +35 -0
  20. package/dist/constants.d.mts +35 -0
  21. package/dist/constants.d.ts +35 -0
  22. package/dist/{index.mjs → constants.mjs} +5 -1
  23. package/package.json +36 -29
  24. package/artifacts/ILSP8IdentifiableDigitalAsset.json +0 -602
  25. package/artifacts/LSP8Burnable.json +0 -954
  26. package/artifacts/LSP8BurnableInitAbstract.json +0 -967
  27. package/artifacts/LSP8CappedSupply.json +0 -959
  28. package/artifacts/LSP8CappedSupplyInitAbstract.json +0 -972
  29. package/artifacts/LSP8Enumerable.json +0 -955
  30. package/artifacts/LSP8EnumerableInitAbstract.json +0 -968
  31. package/artifacts/LSP8IdentifiableDigitalAsset.json +0 -936
  32. package/artifacts/LSP8IdentifiableDigitalAssetInitAbstract.json +0 -949
  33. package/artifacts/LSP8Mintable.json +0 -1006
  34. package/artifacts/LSP8MintableInit.json +0 -1026
  35. package/contracts/LSP8IdentifiableDigitalAssetCore.sol +0 -809
  36. package/dist/index.d.cts +0 -33
  37. package/dist/index.d.mts +0 -33
  38. package/dist/index.d.ts +0 -33
  39. package/types/common.ts +0 -131
  40. package/types/contracts/ILSP8IdentifiableDigitalAsset.ts +0 -706
  41. package/types/contracts/LSP8IdentifiableDigitalAsset.ts +0 -778
  42. package/types/contracts/LSP8IdentifiableDigitalAssetInitAbstract.ts +0 -813
  43. package/types/contracts/extensions/LSP8Burnable.ts +0 -797
  44. package/types/contracts/extensions/LSP8BurnableInitAbstract.ts +0 -829
  45. package/types/contracts/extensions/LSP8CappedSupply.ts +0 -792
  46. package/types/contracts/extensions/LSP8CappedSupplyInitAbstract.ts +0 -824
  47. package/types/contracts/extensions/LSP8Enumerable.ts +0 -790
  48. package/types/contracts/extensions/LSP8EnumerableInitAbstract.ts +0 -821
  49. package/types/contracts/presets/LSP8Mintable.ts +0 -797
  50. package/types/contracts/presets/LSP8MintableInit.ts +0 -860
  51. package/types/index.ts +0 -9738
@@ -1,1006 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "LSP8Mintable",
4
- "sourceName": "contracts/presets/LSP8Mintable.sol",
5
- "abi": [
6
- {
7
- "inputs": [
8
- {
9
- "internalType": "string",
10
- "name": "name_",
11
- "type": "string"
12
- },
13
- {
14
- "internalType": "string",
15
- "name": "symbol_",
16
- "type": "string"
17
- },
18
- {
19
- "internalType": "address",
20
- "name": "newOwner_",
21
- "type": "address"
22
- },
23
- {
24
- "internalType": "uint256",
25
- "name": "lsp4TokenType_",
26
- "type": "uint256"
27
- },
28
- {
29
- "internalType": "uint256",
30
- "name": "lsp8TokenIdFormat_",
31
- "type": "uint256"
32
- }
33
- ],
34
- "stateMutability": "nonpayable",
35
- "type": "constructor"
36
- },
37
- {
38
- "inputs": [],
39
- "name": "ERC725Y_DataKeysValuesEmptyArray",
40
- "type": "error"
41
- },
42
- {
43
- "inputs": [],
44
- "name": "ERC725Y_DataKeysValuesLengthMismatch",
45
- "type": "error"
46
- },
47
- {
48
- "inputs": [],
49
- "name": "ERC725Y_MsgValueDisallowed",
50
- "type": "error"
51
- },
52
- {
53
- "inputs": [
54
- {
55
- "internalType": "bytes",
56
- "name": "storedData",
57
- "type": "bytes"
58
- }
59
- ],
60
- "name": "InvalidExtensionAddress",
61
- "type": "error"
62
- },
63
- {
64
- "inputs": [
65
- {
66
- "internalType": "bytes",
67
- "name": "data",
68
- "type": "bytes"
69
- }
70
- ],
71
- "name": "InvalidFunctionSelector",
72
- "type": "error"
73
- },
74
- {
75
- "inputs": [],
76
- "name": "LSP4TokenNameNotEditable",
77
- "type": "error"
78
- },
79
- {
80
- "inputs": [],
81
- "name": "LSP4TokenSymbolNotEditable",
82
- "type": "error"
83
- },
84
- {
85
- "inputs": [],
86
- "name": "LSP4TokenTypeNotEditable",
87
- "type": "error"
88
- },
89
- {
90
- "inputs": [
91
- {
92
- "internalType": "uint256",
93
- "name": "callIndex",
94
- "type": "uint256"
95
- }
96
- ],
97
- "name": "LSP8BatchCallFailed",
98
- "type": "error"
99
- },
100
- {
101
- "inputs": [],
102
- "name": "LSP8CannotSendToAddressZero",
103
- "type": "error"
104
- },
105
- {
106
- "inputs": [],
107
- "name": "LSP8CannotUseAddressZeroAsOperator",
108
- "type": "error"
109
- },
110
- {
111
- "inputs": [],
112
- "name": "LSP8InvalidTransferBatch",
113
- "type": "error"
114
- },
115
- {
116
- "inputs": [
117
- {
118
- "internalType": "bytes32",
119
- "name": "tokenId",
120
- "type": "bytes32"
121
- }
122
- ],
123
- "name": "LSP8NonExistentTokenId",
124
- "type": "error"
125
- },
126
- {
127
- "inputs": [
128
- {
129
- "internalType": "address",
130
- "name": "operator",
131
- "type": "address"
132
- },
133
- {
134
- "internalType": "bytes32",
135
- "name": "tokenId",
136
- "type": "bytes32"
137
- }
138
- ],
139
- "name": "LSP8NonExistingOperator",
140
- "type": "error"
141
- },
142
- {
143
- "inputs": [
144
- {
145
- "internalType": "bytes32",
146
- "name": "tokenId",
147
- "type": "bytes32"
148
- },
149
- {
150
- "internalType": "address",
151
- "name": "caller",
152
- "type": "address"
153
- }
154
- ],
155
- "name": "LSP8NotTokenOperator",
156
- "type": "error"
157
- },
158
- {
159
- "inputs": [
160
- {
161
- "internalType": "address",
162
- "name": "tokenOwner",
163
- "type": "address"
164
- },
165
- {
166
- "internalType": "bytes32",
167
- "name": "tokenId",
168
- "type": "bytes32"
169
- },
170
- {
171
- "internalType": "address",
172
- "name": "caller",
173
- "type": "address"
174
- }
175
- ],
176
- "name": "LSP8NotTokenOwner",
177
- "type": "error"
178
- },
179
- {
180
- "inputs": [
181
- {
182
- "internalType": "address",
183
- "name": "tokenReceiver",
184
- "type": "address"
185
- }
186
- ],
187
- "name": "LSP8NotifyTokenReceiverContractMissingLSP1Interface",
188
- "type": "error"
189
- },
190
- {
191
- "inputs": [
192
- {
193
- "internalType": "address",
194
- "name": "tokenReceiver",
195
- "type": "address"
196
- }
197
- ],
198
- "name": "LSP8NotifyTokenReceiverIsEOA",
199
- "type": "error"
200
- },
201
- {
202
- "inputs": [
203
- {
204
- "internalType": "address",
205
- "name": "operator",
206
- "type": "address"
207
- },
208
- {
209
- "internalType": "bytes32",
210
- "name": "tokenId",
211
- "type": "bytes32"
212
- }
213
- ],
214
- "name": "LSP8OperatorAlreadyAuthorized",
215
- "type": "error"
216
- },
217
- {
218
- "inputs": [
219
- {
220
- "internalType": "address",
221
- "name": "caller",
222
- "type": "address"
223
- },
224
- {
225
- "internalType": "address",
226
- "name": "tokenOwner",
227
- "type": "address"
228
- },
229
- {
230
- "internalType": "bytes32",
231
- "name": "tokenId",
232
- "type": "bytes32"
233
- }
234
- ],
235
- "name": "LSP8RevokeOperatorNotAuthorized",
236
- "type": "error"
237
- },
238
- {
239
- "inputs": [],
240
- "name": "LSP8TokenContractCannotHoldValue",
241
- "type": "error"
242
- },
243
- {
244
- "inputs": [
245
- {
246
- "internalType": "bytes32",
247
- "name": "tokenId",
248
- "type": "bytes32"
249
- }
250
- ],
251
- "name": "LSP8TokenIdAlreadyMinted",
252
- "type": "error"
253
- },
254
- {
255
- "inputs": [],
256
- "name": "LSP8TokenIdFormatNotEditable",
257
- "type": "error"
258
- },
259
- {
260
- "inputs": [],
261
- "name": "LSP8TokenIdsDataEmptyArray",
262
- "type": "error"
263
- },
264
- {
265
- "inputs": [],
266
- "name": "LSP8TokenIdsDataLengthMismatch",
267
- "type": "error"
268
- },
269
- {
270
- "inputs": [],
271
- "name": "LSP8TokenOwnerCannotBeOperator",
272
- "type": "error"
273
- },
274
- {
275
- "inputs": [
276
- {
277
- "internalType": "bytes32",
278
- "name": "tokenId",
279
- "type": "bytes32"
280
- },
281
- {
282
- "internalType": "address",
283
- "name": "oldOwner",
284
- "type": "address"
285
- },
286
- {
287
- "internalType": "address",
288
- "name": "newOwner",
289
- "type": "address"
290
- }
291
- ],
292
- "name": "LSP8TokenOwnerChanged",
293
- "type": "error"
294
- },
295
- {
296
- "inputs": [
297
- {
298
- "internalType": "bytes4",
299
- "name": "functionSelector",
300
- "type": "bytes4"
301
- }
302
- ],
303
- "name": "NoExtensionFoundForFunctionSelector",
304
- "type": "error"
305
- },
306
- {
307
- "inputs": [
308
- {
309
- "internalType": "address",
310
- "name": "callerAddress",
311
- "type": "address"
312
- }
313
- ],
314
- "name": "OwnableCallerNotTheOwner",
315
- "type": "error"
316
- },
317
- {
318
- "inputs": [],
319
- "name": "OwnableCannotSetZeroAddressAsOwner",
320
- "type": "error"
321
- },
322
- {
323
- "anonymous": false,
324
- "inputs": [
325
- {
326
- "indexed": true,
327
- "internalType": "bytes32",
328
- "name": "dataKey",
329
- "type": "bytes32"
330
- },
331
- {
332
- "indexed": false,
333
- "internalType": "bytes",
334
- "name": "dataValue",
335
- "type": "bytes"
336
- }
337
- ],
338
- "name": "DataChanged",
339
- "type": "event"
340
- },
341
- {
342
- "anonymous": false,
343
- "inputs": [
344
- {
345
- "indexed": true,
346
- "internalType": "address",
347
- "name": "operator",
348
- "type": "address"
349
- },
350
- {
351
- "indexed": true,
352
- "internalType": "address",
353
- "name": "tokenOwner",
354
- "type": "address"
355
- },
356
- {
357
- "indexed": true,
358
- "internalType": "bytes32",
359
- "name": "tokenId",
360
- "type": "bytes32"
361
- },
362
- {
363
- "indexed": false,
364
- "internalType": "bytes",
365
- "name": "operatorNotificationData",
366
- "type": "bytes"
367
- }
368
- ],
369
- "name": "OperatorAuthorizationChanged",
370
- "type": "event"
371
- },
372
- {
373
- "anonymous": false,
374
- "inputs": [
375
- {
376
- "indexed": true,
377
- "internalType": "address",
378
- "name": "operator",
379
- "type": "address"
380
- },
381
- {
382
- "indexed": true,
383
- "internalType": "address",
384
- "name": "tokenOwner",
385
- "type": "address"
386
- },
387
- {
388
- "indexed": true,
389
- "internalType": "bytes32",
390
- "name": "tokenId",
391
- "type": "bytes32"
392
- },
393
- {
394
- "indexed": false,
395
- "internalType": "bool",
396
- "name": "notified",
397
- "type": "bool"
398
- },
399
- {
400
- "indexed": false,
401
- "internalType": "bytes",
402
- "name": "operatorNotificationData",
403
- "type": "bytes"
404
- }
405
- ],
406
- "name": "OperatorRevoked",
407
- "type": "event"
408
- },
409
- {
410
- "anonymous": false,
411
- "inputs": [
412
- {
413
- "indexed": true,
414
- "internalType": "address",
415
- "name": "previousOwner",
416
- "type": "address"
417
- },
418
- {
419
- "indexed": true,
420
- "internalType": "address",
421
- "name": "newOwner",
422
- "type": "address"
423
- }
424
- ],
425
- "name": "OwnershipTransferred",
426
- "type": "event"
427
- },
428
- {
429
- "anonymous": false,
430
- "inputs": [
431
- {
432
- "indexed": true,
433
- "internalType": "bytes32",
434
- "name": "tokenId",
435
- "type": "bytes32"
436
- },
437
- {
438
- "indexed": true,
439
- "internalType": "bytes32",
440
- "name": "dataKey",
441
- "type": "bytes32"
442
- },
443
- {
444
- "indexed": false,
445
- "internalType": "bytes",
446
- "name": "dataValue",
447
- "type": "bytes"
448
- }
449
- ],
450
- "name": "TokenIdDataChanged",
451
- "type": "event"
452
- },
453
- {
454
- "anonymous": false,
455
- "inputs": [
456
- {
457
- "indexed": false,
458
- "internalType": "address",
459
- "name": "operator",
460
- "type": "address"
461
- },
462
- {
463
- "indexed": true,
464
- "internalType": "address",
465
- "name": "from",
466
- "type": "address"
467
- },
468
- {
469
- "indexed": true,
470
- "internalType": "address",
471
- "name": "to",
472
- "type": "address"
473
- },
474
- {
475
- "indexed": true,
476
- "internalType": "bytes32",
477
- "name": "tokenId",
478
- "type": "bytes32"
479
- },
480
- {
481
- "indexed": false,
482
- "internalType": "bool",
483
- "name": "force",
484
- "type": "bool"
485
- },
486
- {
487
- "indexed": false,
488
- "internalType": "bytes",
489
- "name": "data",
490
- "type": "bytes"
491
- }
492
- ],
493
- "name": "Transfer",
494
- "type": "event"
495
- },
496
- {
497
- "stateMutability": "payable",
498
- "type": "fallback"
499
- },
500
- {
501
- "inputs": [
502
- {
503
- "internalType": "address",
504
- "name": "operator",
505
- "type": "address"
506
- },
507
- {
508
- "internalType": "bytes32",
509
- "name": "tokenId",
510
- "type": "bytes32"
511
- },
512
- {
513
- "internalType": "bytes",
514
- "name": "operatorNotificationData",
515
- "type": "bytes"
516
- }
517
- ],
518
- "name": "authorizeOperator",
519
- "outputs": [],
520
- "stateMutability": "nonpayable",
521
- "type": "function"
522
- },
523
- {
524
- "inputs": [
525
- {
526
- "internalType": "address",
527
- "name": "tokenOwner",
528
- "type": "address"
529
- }
530
- ],
531
- "name": "balanceOf",
532
- "outputs": [
533
- {
534
- "internalType": "uint256",
535
- "name": "",
536
- "type": "uint256"
537
- }
538
- ],
539
- "stateMutability": "view",
540
- "type": "function"
541
- },
542
- {
543
- "inputs": [
544
- {
545
- "internalType": "bytes[]",
546
- "name": "data",
547
- "type": "bytes[]"
548
- }
549
- ],
550
- "name": "batchCalls",
551
- "outputs": [
552
- {
553
- "internalType": "bytes[]",
554
- "name": "results",
555
- "type": "bytes[]"
556
- }
557
- ],
558
- "stateMutability": "nonpayable",
559
- "type": "function"
560
- },
561
- {
562
- "inputs": [
563
- {
564
- "internalType": "bytes32",
565
- "name": "dataKey",
566
- "type": "bytes32"
567
- }
568
- ],
569
- "name": "getData",
570
- "outputs": [
571
- {
572
- "internalType": "bytes",
573
- "name": "dataValue",
574
- "type": "bytes"
575
- }
576
- ],
577
- "stateMutability": "view",
578
- "type": "function"
579
- },
580
- {
581
- "inputs": [
582
- {
583
- "internalType": "bytes32[]",
584
- "name": "dataKeys",
585
- "type": "bytes32[]"
586
- }
587
- ],
588
- "name": "getDataBatch",
589
- "outputs": [
590
- {
591
- "internalType": "bytes[]",
592
- "name": "dataValues",
593
- "type": "bytes[]"
594
- }
595
- ],
596
- "stateMutability": "view",
597
- "type": "function"
598
- },
599
- {
600
- "inputs": [
601
- {
602
- "internalType": "bytes32[]",
603
- "name": "tokenIds",
604
- "type": "bytes32[]"
605
- },
606
- {
607
- "internalType": "bytes32[]",
608
- "name": "dataKeys",
609
- "type": "bytes32[]"
610
- }
611
- ],
612
- "name": "getDataBatchForTokenIds",
613
- "outputs": [
614
- {
615
- "internalType": "bytes[]",
616
- "name": "dataValues",
617
- "type": "bytes[]"
618
- }
619
- ],
620
- "stateMutability": "view",
621
- "type": "function"
622
- },
623
- {
624
- "inputs": [
625
- {
626
- "internalType": "bytes32",
627
- "name": "tokenId",
628
- "type": "bytes32"
629
- },
630
- {
631
- "internalType": "bytes32",
632
- "name": "dataKey",
633
- "type": "bytes32"
634
- }
635
- ],
636
- "name": "getDataForTokenId",
637
- "outputs": [
638
- {
639
- "internalType": "bytes",
640
- "name": "dataValue",
641
- "type": "bytes"
642
- }
643
- ],
644
- "stateMutability": "view",
645
- "type": "function"
646
- },
647
- {
648
- "inputs": [
649
- {
650
- "internalType": "bytes32",
651
- "name": "tokenId",
652
- "type": "bytes32"
653
- }
654
- ],
655
- "name": "getOperatorsOf",
656
- "outputs": [
657
- {
658
- "internalType": "address[]",
659
- "name": "",
660
- "type": "address[]"
661
- }
662
- ],
663
- "stateMutability": "view",
664
- "type": "function"
665
- },
666
- {
667
- "inputs": [
668
- {
669
- "internalType": "address",
670
- "name": "operator",
671
- "type": "address"
672
- },
673
- {
674
- "internalType": "bytes32",
675
- "name": "tokenId",
676
- "type": "bytes32"
677
- }
678
- ],
679
- "name": "isOperatorFor",
680
- "outputs": [
681
- {
682
- "internalType": "bool",
683
- "name": "",
684
- "type": "bool"
685
- }
686
- ],
687
- "stateMutability": "view",
688
- "type": "function"
689
- },
690
- {
691
- "inputs": [
692
- {
693
- "internalType": "address",
694
- "name": "to",
695
- "type": "address"
696
- },
697
- {
698
- "internalType": "bytes32",
699
- "name": "tokenId",
700
- "type": "bytes32"
701
- },
702
- {
703
- "internalType": "bool",
704
- "name": "force",
705
- "type": "bool"
706
- },
707
- {
708
- "internalType": "bytes",
709
- "name": "data",
710
- "type": "bytes"
711
- }
712
- ],
713
- "name": "mint",
714
- "outputs": [],
715
- "stateMutability": "nonpayable",
716
- "type": "function"
717
- },
718
- {
719
- "inputs": [],
720
- "name": "owner",
721
- "outputs": [
722
- {
723
- "internalType": "address",
724
- "name": "",
725
- "type": "address"
726
- }
727
- ],
728
- "stateMutability": "view",
729
- "type": "function"
730
- },
731
- {
732
- "inputs": [],
733
- "name": "renounceOwnership",
734
- "outputs": [],
735
- "stateMutability": "nonpayable",
736
- "type": "function"
737
- },
738
- {
739
- "inputs": [
740
- {
741
- "internalType": "address",
742
- "name": "operator",
743
- "type": "address"
744
- },
745
- {
746
- "internalType": "bytes32",
747
- "name": "tokenId",
748
- "type": "bytes32"
749
- },
750
- {
751
- "internalType": "bool",
752
- "name": "notify",
753
- "type": "bool"
754
- },
755
- {
756
- "internalType": "bytes",
757
- "name": "operatorNotificationData",
758
- "type": "bytes"
759
- }
760
- ],
761
- "name": "revokeOperator",
762
- "outputs": [],
763
- "stateMutability": "nonpayable",
764
- "type": "function"
765
- },
766
- {
767
- "inputs": [
768
- {
769
- "internalType": "bytes32",
770
- "name": "dataKey",
771
- "type": "bytes32"
772
- },
773
- {
774
- "internalType": "bytes",
775
- "name": "dataValue",
776
- "type": "bytes"
777
- }
778
- ],
779
- "name": "setData",
780
- "outputs": [],
781
- "stateMutability": "payable",
782
- "type": "function"
783
- },
784
- {
785
- "inputs": [
786
- {
787
- "internalType": "bytes32[]",
788
- "name": "dataKeys",
789
- "type": "bytes32[]"
790
- },
791
- {
792
- "internalType": "bytes[]",
793
- "name": "dataValues",
794
- "type": "bytes[]"
795
- }
796
- ],
797
- "name": "setDataBatch",
798
- "outputs": [],
799
- "stateMutability": "payable",
800
- "type": "function"
801
- },
802
- {
803
- "inputs": [
804
- {
805
- "internalType": "bytes32[]",
806
- "name": "tokenIds",
807
- "type": "bytes32[]"
808
- },
809
- {
810
- "internalType": "bytes32[]",
811
- "name": "dataKeys",
812
- "type": "bytes32[]"
813
- },
814
- {
815
- "internalType": "bytes[]",
816
- "name": "dataValues",
817
- "type": "bytes[]"
818
- }
819
- ],
820
- "name": "setDataBatchForTokenIds",
821
- "outputs": [],
822
- "stateMutability": "nonpayable",
823
- "type": "function"
824
- },
825
- {
826
- "inputs": [
827
- {
828
- "internalType": "bytes32",
829
- "name": "tokenId",
830
- "type": "bytes32"
831
- },
832
- {
833
- "internalType": "bytes32",
834
- "name": "dataKey",
835
- "type": "bytes32"
836
- },
837
- {
838
- "internalType": "bytes",
839
- "name": "dataValue",
840
- "type": "bytes"
841
- }
842
- ],
843
- "name": "setDataForTokenId",
844
- "outputs": [],
845
- "stateMutability": "nonpayable",
846
- "type": "function"
847
- },
848
- {
849
- "inputs": [
850
- {
851
- "internalType": "bytes4",
852
- "name": "interfaceId",
853
- "type": "bytes4"
854
- }
855
- ],
856
- "name": "supportsInterface",
857
- "outputs": [
858
- {
859
- "internalType": "bool",
860
- "name": "",
861
- "type": "bool"
862
- }
863
- ],
864
- "stateMutability": "view",
865
- "type": "function"
866
- },
867
- {
868
- "inputs": [
869
- {
870
- "internalType": "address",
871
- "name": "tokenOwner",
872
- "type": "address"
873
- }
874
- ],
875
- "name": "tokenIdsOf",
876
- "outputs": [
877
- {
878
- "internalType": "bytes32[]",
879
- "name": "",
880
- "type": "bytes32[]"
881
- }
882
- ],
883
- "stateMutability": "view",
884
- "type": "function"
885
- },
886
- {
887
- "inputs": [
888
- {
889
- "internalType": "bytes32",
890
- "name": "tokenId",
891
- "type": "bytes32"
892
- }
893
- ],
894
- "name": "tokenOwnerOf",
895
- "outputs": [
896
- {
897
- "internalType": "address",
898
- "name": "",
899
- "type": "address"
900
- }
901
- ],
902
- "stateMutability": "view",
903
- "type": "function"
904
- },
905
- {
906
- "inputs": [],
907
- "name": "totalSupply",
908
- "outputs": [
909
- {
910
- "internalType": "uint256",
911
- "name": "",
912
- "type": "uint256"
913
- }
914
- ],
915
- "stateMutability": "view",
916
- "type": "function"
917
- },
918
- {
919
- "inputs": [
920
- {
921
- "internalType": "address",
922
- "name": "from",
923
- "type": "address"
924
- },
925
- {
926
- "internalType": "address",
927
- "name": "to",
928
- "type": "address"
929
- },
930
- {
931
- "internalType": "bytes32",
932
- "name": "tokenId",
933
- "type": "bytes32"
934
- },
935
- {
936
- "internalType": "bool",
937
- "name": "force",
938
- "type": "bool"
939
- },
940
- {
941
- "internalType": "bytes",
942
- "name": "data",
943
- "type": "bytes"
944
- }
945
- ],
946
- "name": "transfer",
947
- "outputs": [],
948
- "stateMutability": "nonpayable",
949
- "type": "function"
950
- },
951
- {
952
- "inputs": [
953
- {
954
- "internalType": "address[]",
955
- "name": "from",
956
- "type": "address[]"
957
- },
958
- {
959
- "internalType": "address[]",
960
- "name": "to",
961
- "type": "address[]"
962
- },
963
- {
964
- "internalType": "bytes32[]",
965
- "name": "tokenId",
966
- "type": "bytes32[]"
967
- },
968
- {
969
- "internalType": "bool[]",
970
- "name": "force",
971
- "type": "bool[]"
972
- },
973
- {
974
- "internalType": "bytes[]",
975
- "name": "data",
976
- "type": "bytes[]"
977
- }
978
- ],
979
- "name": "transferBatch",
980
- "outputs": [],
981
- "stateMutability": "nonpayable",
982
- "type": "function"
983
- },
984
- {
985
- "inputs": [
986
- {
987
- "internalType": "address",
988
- "name": "newOwner",
989
- "type": "address"
990
- }
991
- ],
992
- "name": "transferOwnership",
993
- "outputs": [],
994
- "stateMutability": "nonpayable",
995
- "type": "function"
996
- },
997
- {
998
- "stateMutability": "payable",
999
- "type": "receive"
1000
- }
1001
- ],
1002
- "bytecode": "0x60806040523480156200001157600080fd5b506040516200352b3803806200352b833981016040819052620000349162000473565b848484848484848484816001600160a01b03811662000066576040516306b620db60e21b815260040160405180910390fd5b6200007c816200020160201b620011101760201c565b50620000d37feafec4d89fa9619884b60000a4d96624a38f7ac2d8d9a604ecf07c12c77e480c60001b604051806040016040528060048152602001632936598960e21b8152506200026f60201b6200118b1760201c565b6200010d7fdeba1e292f8ba88238e10ab3c7f88bd4be4fac56cad5194b6ecceaf653468af160001b856200026f60201b6200118b1760201c565b620001477f2f0a68ab07768e01943a599e73362a0e17a63a72e94dd2e384d2c1d4db93275660001b846200026f60201b6200118b1760201c565b60408051602081018390526200019a917fe0261fa95db2eb3b5439bd033cda66d56b96f92f243a8228fd87550ed7bdfdb391016040516020818303038152906040526200026f60201b6200118b1760201c565b50506040805160208101859052620001f193507ff675e9361af1c1664c1868cfa3eb97672d6b1a513aa5b81dec34c9ee330e818d925001604051602081830303815290604052620002c860201b620011e01760201c565b50505050505050505050620006a1565b6000546001600160a01b038281169116146200026c57600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0383161790555b50565b6000828152600160205260409020620002898282620005a0565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b282604051620002bc91906200066c565b60405180910390a25050565b620002df8282620002e360201b620011e61760201c565b5050565b7f2145e1d6d074577dc71ef54c3807742b41b053a9352ae6b491331509acb9750f820162000324576040516385c169bd60e01b815260040160405180910390fd5b7fd0f59754f88971fe6bc5a6618cc9d5f1e859c58d16b22d1c7b2d3e2b246cd8aa82016200036557604051630eceab6760e31b815260040160405180910390fd5b7f1fd9e056a24d14c4abc642fcc325992a946906d0dbc57dd70278aaf12842024d82016200026f57604051634ef6d7fb60e01b815260040160405180910390fd5b634e487b7160e01b600052604160045260246000fd5b60005b83811015620003d9578181015183820152602001620003bf565b50506000910152565b600082601f830112620003f457600080fd5b81516001600160401b0380821115620004115762000411620003a6565b604051601f8301601f19908116603f011681019082821181831017156200043c576200043c620003a6565b816040528381528660208588010111156200045657600080fd5b62000469846020830160208901620003bc565b9695505050505050565b600080600080600060a086880312156200048c57600080fd5b85516001600160401b0380821115620004a457600080fd5b620004b289838a01620003e2565b96506020880151915080821115620004c957600080fd5b50620004d888828901620003e2565b604088015190955090506001600160a01b0381168114620004f857600080fd5b6060870151608090970151959894975095949392505050565b600181811c908216806200052657607f821691505b6020821081036200054757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200059b57600081815260208120601f850160051c81016020861015620005765750805b601f850160051c820191505b81811015620005975782815560010162000582565b5050505b505050565b81516001600160401b03811115620005bc57620005bc620003a6565b620005d481620005cd845462000511565b846200054d565b602080601f8311600181146200060c5760008415620005f35750858301515b600019600386901b1c1916600185901b17855562000597565b600085815260208120601f198616915b828110156200063d578886015182559484019460019091019084016200061c565b50858210156200065c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60208152600082518060208401526200068d816040850160208701620003bc565b601f01601f19169190910160400192915050565b612e7a80620006b16000396000f3fe60806040526004361061018f5760003560e01c80637e87632c116100d6578063af255b611161007f578063db8c966311610059578063db8c96631461051f578063dedff9c61461053f578063f2fde38b1461055f57610203565b8063af255b61146104bf578063be9f0e6f146104df578063d6c1407c146104ff57610203565b80638da5cb5b116100b05780638da5cb5b14610461578063979024211461047f578063a3b261f21461049257610203565b80637e87632c1461040e5780637f23690c1461042e57806386a10ddd1461044157610203565b806349a6078d116101385780636963d438116101125780636963d438146103b957806370a08231146103d9578063715018a6146103f957610203565b806349a6078d1461034a578063511b69521461037757806354f6127f1461039957610203565b80631d26fce6116101695780631d26fce6146102c5578063217b2270146102f25780632a3654a41461032a57610203565b806301ffc9a71461024457806316e023b31461027957806318160ddd146102a657610203565b3661020357346000036101d15760405163e5099ee360e01b81526004016101c89060208082526004908201526000604082015260600190565b60405180910390fd5b6040517f61f4944200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000366060600482101561022e57828260405163e5099ee360e01b81526004016101c892919061210d565b610238838361057f565b80519350602001915050f35b34801561025057600080fd5b5061026461025f36600461213c565b61068e565b60405190151581526020015b60405180910390f35b34801561028557600080fd5b50610299610294366004612166565b6106db565b60405161027091906121d8565b3480156102b257600080fd5b506002545b604051908152602001610270565b3480156102d157600080fd5b506102e56102e03660046122c1565b6106ee565b6040516102709190612325565b3480156102fe57600080fd5b5061031261030d366004612387565b6107d6565b6040516001600160a01b039091168152602001610270565b34801561033657600080fd5b506102646103453660046123bc565b61080f565b34801561035657600080fd5b5061036a610365366004612387565b61081b565b60405161027091906123e6565b34801561038357600080fd5b506103976103923660046124bc565b61083d565b005b3480156103a557600080fd5b506102996103b4366004612387565b61089a565b3480156103c557600080fd5b506102e56103d4366004612535565b6108a5565b3480156103e557600080fd5b506102b76103f43660046125aa565b6109ee565b34801561040557600080fd5b50610397610a0f565b34801561041a57600080fd5b50610397610429366004612709565b610a23565b61039761043c3660046127ce565b610b2b565b34801561044d57600080fd5b5061039761045c36600461280b565b610b60565b34801561046d57600080fd5b506000546001600160a01b0316610312565b61039761048d366004612862565b610cf3565b34801561049e57600080fd5b506104b26104ad3660046125aa565b610de5565b60405161027091906128bc565b3480156104cb57600080fd5b506103976104da3660046128f4565b610e09565b3480156104eb57600080fd5b506103976104fa36600461295c565b610e23565b34801561050b57600080fd5b5061039761051a3660046129da565b610f01565b34801561052b57600080fd5b5061039761053a3660046128f4565b610f14565b34801561054b57600080fd5b506102e561055a366004612a14565b611011565b34801561056b57600080fd5b5061039761057a3660046125aa565b6110bc565b606060006105986000356001600160e01b0319166112f1565b5090506001600160a01b0381166105e9576040517fbb370b2b0000000000000000000000000000000000000000000000000000000081526001600160e01b03196000351660048201526024016101c8565b600080826001600160a01b0316348787333460405160200161060e9493929190612a49565b60408051601f198184030181529082905261062891612a79565b60006040518083038185875af1925050503d8060008114610665576040519150601f19603f3d011682016040523d82523d6000602084013e61066a565b606091505b5091509150811561067f579250610688915050565b80518060208301fd5b92915050565b60006001600160e01b031982167f3a2717060000000000000000000000000000000000000000000000000000000014806106cc57506106cc8261139b565b806106885750610688826113d9565b60606106e78383611410565b9392505050565b60608151835114610712576040516317d38eff60e11b815260040160405180910390fd5b825167ffffffffffffffff81111561072c5761072c6121eb565b60405190808252806020026020018201604052801561075f57816020015b606081526020019060019003908161074a5790505b50905060005b83518110156107cf576107aa84828151811061078357610783612a95565b602002602001015184838151811061079d5761079d612a95565b6020026020010151611410565b8282815181106107bc576107bc612a95565b6020908102919091010152600101610765565b5092915050565b6000818152600360205260408120546001600160a01b03168061068857604051635747cd1b60e11b8152600481018490526024016101c8565b60006106e783836114be565b6060610826826114fb565b600082815260056020526040902061068890611533565b61084733846114be565b610886576040517f1294d2a9000000000000000000000000000000000000000000000000000000008152600481018490523360248201526044016101c8565b6108938585858585611540565b5050505050565b606061068882611748565b60608167ffffffffffffffff8111156108c0576108c06121eb565b6040519080825280602002602001820160405280156108f357816020015b60608152602001906001900390816108de5790505b50905060005b828110156107cf576000803086868581811061091757610917612a95565b90506020028101906109299190612aab565b604051610937929190612af9565b600060405180830381855af49150503d8060008114610972576040519150601f19603f3d011682016040523d82523d6000602084013e610977565b606091505b5091509150816109c6578051156109915780518082602001fd5b6040517f234eb819000000000000000000000000000000000000000000000000000000008152600481018490526024016101c8565b808484815181106109d9576109d9612a95565b602090810291909101015250506001016108f9565b6001600160a01b0381166000908152600460205260408120610688906117ea565b610a176117f4565b610a216000611110565b565b8451845181141580610a36575083518114155b80610a42575082518114155b80610a4e575081518114155b15610a85576040517f93a8311900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81811015610b2257610b1a878281518110610aa557610aa5612a95565b6020026020010151878381518110610abf57610abf612a95565b6020026020010151878481518110610ad957610ad9612a95565b6020026020010151878581518110610af357610af3612a95565b6020026020010151878681518110610b0d57610b0d612a95565b602002602001015161083d565b600101610a88565b50505050505050565b610b336117f4565b3415610b525760405163f36ba73760e01b815260040160405180910390fd5b610b5c8282611849565b5050565b6000610b6b836107d6565b90506001600160a01b0381163314610bae57604051632d938f5160e11b81526001600160a01b0382166004820152602481018490523360448201526064016101c8565b6001600160a01b038416610bd557604051639577b8b360e01b815260040160405180910390fd5b836001600160a01b0316816001600160a01b031603610c07576040516344fed6b160e11b815260040160405180910390fd5b6000838152600560205260408120610c1f90866118ac565b905080610c6a576040517fa7626b680000000000000000000000000000000000000000000000000000000081526001600160a01b0386166004820152602481018590526044016101c8565b83826001600160a01b0316866001600160a01b03167f1b1b58aa2ec0cec2228b2d37124556d41f5a1f7b12f089171f896cc23667121586604051610cae91906121d8565b60405180910390a460003385600186604051602001610cd09493929190612b09565b6040516020818303038152906040529050610ceb86826118c1565b505050505050565b610cfb6117f4565b3415610d1a5760405163f36ba73760e01b815260040160405180910390fd5b8051825114610d55576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8151600003610d90576040517f97da5f9500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b8251811015610de057610dd8838281518110610db157610db1612a95565b6020026020010151838381518110610dcb57610dcb612a95565b6020026020010151611849565b600101610d93565b505050565b6001600160a01b038116600090815260046020526040902060609061068890611533565b610e116117f4565b610e1d848484846118ec565b50505050565b610e2b6117f4565b81518351141580610e3e57508051825114155b15610e5c576040516317d38eff60e11b815260040160405180910390fd5b8251600003610e97576040517f80c9830500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b8351811015610e1d57610ef9848281518110610eb857610eb8612a95565b6020026020010151848381518110610ed257610ed2612a95565b6020026020010151848481518110610eec57610eec612a95565b6020026020010151611a69565b600101610e9a565b610f096117f4565b610de0838383611a69565b6000610f1f846107d6565b9050336001600160a01b03821614610f8b576001600160a01b0385163314610f8b576040517f760b5acd0000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b0382166024820152604481018590526064016101c8565b6001600160a01b038516610fb257604051639577b8b360e01b815260040160405180910390fd5b846001600160a01b0316816001600160a01b031603610fe4576040516344fed6b160e11b815260040160405180910390fd5b610ff18582868686611acb565b82156108935760008185600085604051602001610cd09493929190612b09565b6060815167ffffffffffffffff81111561102d5761102d6121eb565b60405190808252806020026020018201604052801561106057816020015b606081526020019060019003908161104b5790505b50905060005b82518110156110b65761109183828151811061108457611084612a95565b6020026020010151611748565b8282815181106110a3576110a3612a95565b6020908102919091010152600101611066565b50919050565b6110c46117f4565b6001600160a01b038116611104576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61110d81611110565b50565b6000546001600160a01b0382811691161461110d57600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03831673ffffffffffffffffffffffffffffffffffffffff1990911617905550565b60008281526001602052604090206111a38282612bbd565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b2826040516111d491906121d8565b60405180910390a25050565b610b5c82825b7f2145e1d6d074577dc71ef54c3807742b41b053a9352ae6b491331509acb9750f820161123f576040517f85c169bd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fd0f59754f88971fe6bc5a6618cc9d5f1e859c58d16b22d1c7b2d3e2b246cd8aa8201611298576040517f76755b3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f1fd9e056a24d14c4abc642fcc325992a946906d0dbc57dd70278aaf12842024d820161118b576040517f4ef6d7fb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080806113297fcee78b4094da86011096000000000000000000000000000000000000000000006001600160e01b03198616611b84565b9050600061133682611748565b9050805160141415801561134a5750805115155b1561138357806040517f42bfe79f0000000000000000000000000000000000000000000000000000000081526004016101c891906121d8565b61138c81612c7d565b60601c95600195509350505050565b60006001600160e01b031982167fa918fa6b000000000000000000000000000000000000000000000000000000001480610688575061068882611bf5565b6000806113ec6301ffc9a760e01b6112f1565b5090506001600160a01b0381166114065750600092915050565b6106e78184611c43565b6000828152600660209081526040808320848452909152902080546060919061143890612b43565b80601f016020809104026020016040519081016040528092919081815260200182805461146490612b43565b80156114b15780601f10611486576101008083540402835291602001916114b1565b820191906000526020600020905b81548152906001019060200180831161149457829003601f168201915b5050505050905092915050565b60006114c9826107d6565b6001600160a01b0316836001600160a01b031614806106e7575060008281526005602052604090206106e79084611ce1565b6000818152600360205260409020546001600160a01b031661110d57604051635747cd1b60e11b8152600481018290526024016101c8565b606060006106e783611d03565b600061154b846107d6565b9050856001600160a01b0316816001600160a01b03161461159957604051632d938f5160e11b81526001600160a01b03808316600483015260248201869052871660448201526064016101c8565b6001600160a01b0385166115c0576040516324ecef4d60e01b815260040160405180910390fd5b60006115cb856107d6565b9050806001600160a01b0316826001600160a01b031614611632576040517f5a9c31d3000000000000000000000000000000000000000000000000000000008152600481018690526001600160a01b038084166024830152821660448201526064016101c8565b61163c8786611d5e565b6001600160a01b038716600090815260046020526040902061165e9086611db6565b506001600160a01b03861660009081526004602052604090206116819086611dc2565b5060008581526003602052604090819020805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0389811691821790925591518792918a16907fb333c813a7426a7a11e2b190cad52c44119421594b47f6f32ace6d8c7207b2bf906116f59033908a908a90612cb9565b60405180910390a460003388888887604051602001611718959493929190612cec565b60405160208183030381529060405290506117338882611dce565b61173e878683611df9565b5050505050505050565b600081815260016020526040902080546060919061176590612b43565b80601f016020809104026020016040519081016040528092919081815260200182805461179190612b43565b80156117de5780601f106117b3576101008083540402835291602001916117de565b820191906000526020600020905b8154815290600101906020018083116117c157829003601f168201915b50505050509050919050565b6000610688825490565b336118076000546001600160a01b031690565b6001600160a01b031614610a21576040517fbf1169c50000000000000000000000000000000000000000000000000000000081523360048201526024016101c8565b7f098a16c9e50e3e99b3e797305c146898d294e5aec55a47e213cb3611ccf17e7382016118a2576040517f3664800a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610b5c82826111e0565b60006106e7836001600160a01b038416611f33565b610b5c827f8a1c15a8799f71b547e08e2bcb2e85257e81b0a07eee2ce6712549eef1f0097083611f82565b6001600160a01b038416611913576040516324ecef4d60e01b815260040160405180910390fd5b6000838152600360205260409020546001600160a01b03161561194c576040516334c7b51160e01b8152600481018490526024016101c8565b6000838152600360205260409020546001600160a01b031615611985576040516334c7b51160e01b8152600481018490526024016101c8565b60026000815461199490612d3c565b909155506001600160a01b03841660009081526004602052604090206119ba9084611dc2565b50600083815260036020526040808220805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b03881690811790915590518592907fb333c813a7426a7a11e2b190cad52c44119421594b47f6f32ace6d8c7207b2bf90611a2990339088908890612cb9565b60405180910390a46000336000868685604051602001611a4d959493929190612cec565b6040516020818303038152906040529050610893858483611df9565b60008381526006602090815260408083208584529091529020611a8c8282612bbd565b5081837fa6e4251f855f750545fe414f120db91c76b88def14d120969e5bb2d3f05debbb83604051611abe91906121d8565b60405180910390a3505050565b6000838152600560205260408120611ae39087611fcf565b905080611b2e576040517f4aa31a8c0000000000000000000000000000000000000000000000000000000081526001600160a01b0387166004820152602481018590526044016101c8565b83856001600160a01b0316876001600160a01b03167fc78cd419d6136f9f1c1c6aec1d3fae098cffaf8bc86314a8f2685e32fe574e3c8686604051611b74929190612d55565b60405180910390a4505050505050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c83015291829101604051602081830303815290604052905080611bed90612d70565b949350505050565b60006001600160e01b031982167f629aa69400000000000000000000000000000000000000000000000000000000148061068857506301ffc9a760e01b6001600160e01b0319831614610688565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d91506000519050828015611cca575060208210155b8015611cd65750600081115b979650505050505050565b6001600160a01b038116600090815260018301602052604081205415156106e7565b6060816000018054806020026020016040519081016040528092919081815260200182805480156117de57602002820191906000526020600020905b815481526020019060010190808311611d3f5750505050509050919050565b600081815260056020526040812090611d76826117ea565b90506000805b82811015610ceb57611d8f846000611fe4565b9150611dae828787600060405180602001604052806000815250611acb565b600101611d7c565b60006106e78383611ff0565b60006106e78383611f33565b610b5c827fb23eae7e6d1564b295b4c3e3be402d9a2f0776c57bdf365903496f6fa481ab0083611f82565b611e0a83631aed5a8560e21b611c43565b15611ea457604051631aed5a8560e21b81526001600160a01b03841690636bb56a1490611e5d907f0b084a55ebf70fd3c06fd755269dac2212c4d3f0f4d09079780bfa50c1b2984d908590600401612d94565b6000604051808303816000875af1158015611e7c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610e1d9190810190612dad565b81610de0576001600160a01b0383163b15611ef6576040517f4349776d0000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201526024016101c8565b6040517f031731370000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201526024016101c8565b6000818152600183016020526040812054611f7a57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610688565b506000610688565b611f9c6001600160a01b038416631aed5a8560e21b611c43565b15610de057604051631aed5a8560e21b81526001600160a01b03841690636bb56a1490611e5d9085908590600401612d94565b60006106e7836001600160a01b038416611ff0565b60006106e783836120e3565b600081815260018301602052604081205480156120d9576000612014600183612e1b565b855490915060009061202890600190612e1b565b905081811461208d57600086600001828154811061204857612048612a95565b906000526020600020015490508087600001848154811061206b5761206b612a95565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061209e5761209e612e2e565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610688565b6000915050610688565b60008260000182815481106120fa576120fa612a95565b9060005260206000200154905092915050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60006020828403121561214e57600080fd5b81356001600160e01b0319811681146106e757600080fd5b6000806040838503121561217957600080fd5b50508035926020909101359150565b60005b838110156121a357818101518382015260200161218b565b50506000910152565b600081518084526121c4816020860160208601612188565b601f01601f19169290920160200192915050565b6020815260006106e760208301846121ac565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561222a5761222a6121eb565b604052919050565b600067ffffffffffffffff82111561224c5761224c6121eb565b5060051b60200190565b600082601f83011261226757600080fd5b8135602061227c61227783612232565b612201565b82815260059290921b8401810191818101908684111561229b57600080fd5b8286015b848110156122b6578035835291830191830161229f565b509695505050505050565b600080604083850312156122d457600080fd5b823567ffffffffffffffff808211156122ec57600080fd5b6122f886838701612256565b9350602085013591508082111561230e57600080fd5b5061231b85828601612256565b9150509250929050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561237a57603f198886030184526123688583516121ac565b9450928501929085019060010161234c565b5092979650505050505050565b60006020828403121561239957600080fd5b5035919050565b80356001600160a01b03811681146123b757600080fd5b919050565b600080604083850312156123cf57600080fd5b6123d8836123a0565b946020939093013593505050565b6020808252825182820181905260009190848201906040850190845b818110156124275783516001600160a01b031683529284019291840191600101612402565b50909695505050505050565b803580151581146123b757600080fd5b600067ffffffffffffffff82111561245d5761245d6121eb565b50601f01601f191660200190565b600082601f83011261247c57600080fd5b813561248a61227782612443565b81815284602083860101111561249f57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156124d457600080fd5b6124dd866123a0565b94506124eb602087016123a0565b93506040860135925061250060608701612433565b9150608086013567ffffffffffffffff81111561251c57600080fd5b6125288882890161246b565b9150509295509295909350565b6000806020838503121561254857600080fd5b823567ffffffffffffffff8082111561256057600080fd5b818501915085601f83011261257457600080fd5b81358181111561258357600080fd5b8660208260051b850101111561259857600080fd5b60209290920196919550909350505050565b6000602082840312156125bc57600080fd5b6106e7826123a0565b600082601f8301126125d657600080fd5b813560206125e661227783612232565b82815260059290921b8401810191818101908684111561260557600080fd5b8286015b848110156122b65761261a816123a0565b8352918301918301612609565b600082601f83011261263857600080fd5b8135602061264861227783612232565b82815260059290921b8401810191818101908684111561266757600080fd5b8286015b848110156122b65761267c81612433565b835291830191830161266b565b600082601f83011261269a57600080fd5b813560206126aa61227783612232565b82815260059290921b840181019181810190868411156126c957600080fd5b8286015b848110156122b657803567ffffffffffffffff8111156126ed5760008081fd5b6126fb8986838b010161246b565b8452509183019183016126cd565b600080600080600060a0868803121561272157600080fd5b853567ffffffffffffffff8082111561273957600080fd5b61274589838a016125c5565b9650602088013591508082111561275b57600080fd5b61276789838a016125c5565b9550604088013591508082111561277d57600080fd5b61278989838a01612256565b9450606088013591508082111561279f57600080fd5b6127ab89838a01612627565b935060808801359150808211156127c157600080fd5b5061252888828901612689565b600080604083850312156127e157600080fd5b82359150602083013567ffffffffffffffff8111156127ff57600080fd5b61231b8582860161246b565b60008060006060848603121561282057600080fd5b612829846123a0565b925060208401359150604084013567ffffffffffffffff81111561284c57600080fd5b6128588682870161246b565b9150509250925092565b6000806040838503121561287557600080fd5b823567ffffffffffffffff8082111561288d57600080fd5b61289986838701612256565b935060208501359150808211156128af57600080fd5b5061231b85828601612689565b6020808252825182820181905260009190848201906040850190845b81811015612427578351835292840192918401916001016128d8565b6000806000806080858703121561290a57600080fd5b612913856123a0565b93506020850135925061292860408601612433565b9150606085013567ffffffffffffffff81111561294457600080fd5b6129508782880161246b565b91505092959194509250565b60008060006060848603121561297157600080fd5b833567ffffffffffffffff8082111561298957600080fd5b61299587838801612256565b945060208601359150808211156129ab57600080fd5b6129b787838801612256565b935060408601359150808211156129cd57600080fd5b5061285886828701612689565b6000806000606084860312156129ef57600080fd5b8335925060208401359150604084013567ffffffffffffffff81111561284c57600080fd5b600060208284031215612a2657600080fd5b813567ffffffffffffffff811115612a3d57600080fd5b611bed84828501612256565b8385823760609290921b6bffffffffffffffffffffffff1916919092019081526014810191909152603401919050565b60008251612a8b818460208701612188565b9190910192915050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112612ac257600080fd5b83018035915067ffffffffffffffff821115612add57600080fd5b602001915036819003821315612af257600080fd5b9250929050565b8183823760009101908152919050565b6001600160a01b03851681528360208201528215156040820152608060608201526000612b3960808301846121ac565b9695505050505050565b600181811c90821680612b5757607f821691505b6020821081036110b657634e487b7160e01b600052602260045260246000fd5b601f821115610de057600081815260208120601f850160051c81016020861015612b9e5750805b601f850160051c820191505b81811015610ceb57828155600101612baa565b815167ffffffffffffffff811115612bd757612bd76121eb565b612beb81612be58454612b43565b84612b77565b602080601f831160018114612c205760008415612c085750858301515b600019600386901b1c1916600185901b178555610ceb565b600085815260208120601f198616915b82811015612c4f57888601518255948401946001909101908401612c30565b5085821015612c6d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b805160208201516bffffffffffffffffffffffff198082169291906014831015612cb15780818460140360031b1b83161693505b505050919050565b6001600160a01b03841681528215156020820152606060408201526000612ce360608301846121ac565b95945050505050565b60006001600160a01b038088168352808716602084015280861660408401525083606083015260a06080830152611cd660a08301846121ac565b634e487b7160e01b600052601160045260246000fd5b600060018201612d4e57612d4e612d26565b5060010190565b8215158152604060208201526000611bed60408301846121ac565b805160208083015191908110156110b65760001960209190910360031b1b16919050565b828152604060208201526000611bed60408301846121ac565b600060208284031215612dbf57600080fd5b815167ffffffffffffffff811115612dd657600080fd5b8201601f81018413612de757600080fd5b8051612df561227782612443565b818152856020838501011115612e0a57600080fd5b612ce3826020830160208601612188565b8181038181111561068857610688612d26565b634e487b7160e01b600052603160045260246000fdfea2646970667358221220adcfb1a11f723b89d50c2783ef9e8770350e7d126e37afb1c6a2a1f108f03e4a64736f6c63430008110033",
1003
- "deployedBytecode": "0x60806040526004361061018f5760003560e01c80637e87632c116100d6578063af255b611161007f578063db8c966311610059578063db8c96631461051f578063dedff9c61461053f578063f2fde38b1461055f57610203565b8063af255b61146104bf578063be9f0e6f146104df578063d6c1407c146104ff57610203565b80638da5cb5b116100b05780638da5cb5b14610461578063979024211461047f578063a3b261f21461049257610203565b80637e87632c1461040e5780637f23690c1461042e57806386a10ddd1461044157610203565b806349a6078d116101385780636963d438116101125780636963d438146103b957806370a08231146103d9578063715018a6146103f957610203565b806349a6078d1461034a578063511b69521461037757806354f6127f1461039957610203565b80631d26fce6116101695780631d26fce6146102c5578063217b2270146102f25780632a3654a41461032a57610203565b806301ffc9a71461024457806316e023b31461027957806318160ddd146102a657610203565b3661020357346000036101d15760405163e5099ee360e01b81526004016101c89060208082526004908201526000604082015260600190565b60405180910390fd5b6040517f61f4944200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000366060600482101561022e57828260405163e5099ee360e01b81526004016101c892919061210d565b610238838361057f565b80519350602001915050f35b34801561025057600080fd5b5061026461025f36600461213c565b61068e565b60405190151581526020015b60405180910390f35b34801561028557600080fd5b50610299610294366004612166565b6106db565b60405161027091906121d8565b3480156102b257600080fd5b506002545b604051908152602001610270565b3480156102d157600080fd5b506102e56102e03660046122c1565b6106ee565b6040516102709190612325565b3480156102fe57600080fd5b5061031261030d366004612387565b6107d6565b6040516001600160a01b039091168152602001610270565b34801561033657600080fd5b506102646103453660046123bc565b61080f565b34801561035657600080fd5b5061036a610365366004612387565b61081b565b60405161027091906123e6565b34801561038357600080fd5b506103976103923660046124bc565b61083d565b005b3480156103a557600080fd5b506102996103b4366004612387565b61089a565b3480156103c557600080fd5b506102e56103d4366004612535565b6108a5565b3480156103e557600080fd5b506102b76103f43660046125aa565b6109ee565b34801561040557600080fd5b50610397610a0f565b34801561041a57600080fd5b50610397610429366004612709565b610a23565b61039761043c3660046127ce565b610b2b565b34801561044d57600080fd5b5061039761045c36600461280b565b610b60565b34801561046d57600080fd5b506000546001600160a01b0316610312565b61039761048d366004612862565b610cf3565b34801561049e57600080fd5b506104b26104ad3660046125aa565b610de5565b60405161027091906128bc565b3480156104cb57600080fd5b506103976104da3660046128f4565b610e09565b3480156104eb57600080fd5b506103976104fa36600461295c565b610e23565b34801561050b57600080fd5b5061039761051a3660046129da565b610f01565b34801561052b57600080fd5b5061039761053a3660046128f4565b610f14565b34801561054b57600080fd5b506102e561055a366004612a14565b611011565b34801561056b57600080fd5b5061039761057a3660046125aa565b6110bc565b606060006105986000356001600160e01b0319166112f1565b5090506001600160a01b0381166105e9576040517fbb370b2b0000000000000000000000000000000000000000000000000000000081526001600160e01b03196000351660048201526024016101c8565b600080826001600160a01b0316348787333460405160200161060e9493929190612a49565b60408051601f198184030181529082905261062891612a79565b60006040518083038185875af1925050503d8060008114610665576040519150601f19603f3d011682016040523d82523d6000602084013e61066a565b606091505b5091509150811561067f579250610688915050565b80518060208301fd5b92915050565b60006001600160e01b031982167f3a2717060000000000000000000000000000000000000000000000000000000014806106cc57506106cc8261139b565b806106885750610688826113d9565b60606106e78383611410565b9392505050565b60608151835114610712576040516317d38eff60e11b815260040160405180910390fd5b825167ffffffffffffffff81111561072c5761072c6121eb565b60405190808252806020026020018201604052801561075f57816020015b606081526020019060019003908161074a5790505b50905060005b83518110156107cf576107aa84828151811061078357610783612a95565b602002602001015184838151811061079d5761079d612a95565b6020026020010151611410565b8282815181106107bc576107bc612a95565b6020908102919091010152600101610765565b5092915050565b6000818152600360205260408120546001600160a01b03168061068857604051635747cd1b60e11b8152600481018490526024016101c8565b60006106e783836114be565b6060610826826114fb565b600082815260056020526040902061068890611533565b61084733846114be565b610886576040517f1294d2a9000000000000000000000000000000000000000000000000000000008152600481018490523360248201526044016101c8565b6108938585858585611540565b5050505050565b606061068882611748565b60608167ffffffffffffffff8111156108c0576108c06121eb565b6040519080825280602002602001820160405280156108f357816020015b60608152602001906001900390816108de5790505b50905060005b828110156107cf576000803086868581811061091757610917612a95565b90506020028101906109299190612aab565b604051610937929190612af9565b600060405180830381855af49150503d8060008114610972576040519150601f19603f3d011682016040523d82523d6000602084013e610977565b606091505b5091509150816109c6578051156109915780518082602001fd5b6040517f234eb819000000000000000000000000000000000000000000000000000000008152600481018490526024016101c8565b808484815181106109d9576109d9612a95565b602090810291909101015250506001016108f9565b6001600160a01b0381166000908152600460205260408120610688906117ea565b610a176117f4565b610a216000611110565b565b8451845181141580610a36575083518114155b80610a42575082518114155b80610a4e575081518114155b15610a85576040517f93a8311900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81811015610b2257610b1a878281518110610aa557610aa5612a95565b6020026020010151878381518110610abf57610abf612a95565b6020026020010151878481518110610ad957610ad9612a95565b6020026020010151878581518110610af357610af3612a95565b6020026020010151878681518110610b0d57610b0d612a95565b602002602001015161083d565b600101610a88565b50505050505050565b610b336117f4565b3415610b525760405163f36ba73760e01b815260040160405180910390fd5b610b5c8282611849565b5050565b6000610b6b836107d6565b90506001600160a01b0381163314610bae57604051632d938f5160e11b81526001600160a01b0382166004820152602481018490523360448201526064016101c8565b6001600160a01b038416610bd557604051639577b8b360e01b815260040160405180910390fd5b836001600160a01b0316816001600160a01b031603610c07576040516344fed6b160e11b815260040160405180910390fd5b6000838152600560205260408120610c1f90866118ac565b905080610c6a576040517fa7626b680000000000000000000000000000000000000000000000000000000081526001600160a01b0386166004820152602481018590526044016101c8565b83826001600160a01b0316866001600160a01b03167f1b1b58aa2ec0cec2228b2d37124556d41f5a1f7b12f089171f896cc23667121586604051610cae91906121d8565b60405180910390a460003385600186604051602001610cd09493929190612b09565b6040516020818303038152906040529050610ceb86826118c1565b505050505050565b610cfb6117f4565b3415610d1a5760405163f36ba73760e01b815260040160405180910390fd5b8051825114610d55576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8151600003610d90576040517f97da5f9500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b8251811015610de057610dd8838281518110610db157610db1612a95565b6020026020010151838381518110610dcb57610dcb612a95565b6020026020010151611849565b600101610d93565b505050565b6001600160a01b038116600090815260046020526040902060609061068890611533565b610e116117f4565b610e1d848484846118ec565b50505050565b610e2b6117f4565b81518351141580610e3e57508051825114155b15610e5c576040516317d38eff60e11b815260040160405180910390fd5b8251600003610e97576040517f80c9830500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b8351811015610e1d57610ef9848281518110610eb857610eb8612a95565b6020026020010151848381518110610ed257610ed2612a95565b6020026020010151848481518110610eec57610eec612a95565b6020026020010151611a69565b600101610e9a565b610f096117f4565b610de0838383611a69565b6000610f1f846107d6565b9050336001600160a01b03821614610f8b576001600160a01b0385163314610f8b576040517f760b5acd0000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b0382166024820152604481018590526064016101c8565b6001600160a01b038516610fb257604051639577b8b360e01b815260040160405180910390fd5b846001600160a01b0316816001600160a01b031603610fe4576040516344fed6b160e11b815260040160405180910390fd5b610ff18582868686611acb565b82156108935760008185600085604051602001610cd09493929190612b09565b6060815167ffffffffffffffff81111561102d5761102d6121eb565b60405190808252806020026020018201604052801561106057816020015b606081526020019060019003908161104b5790505b50905060005b82518110156110b65761109183828151811061108457611084612a95565b6020026020010151611748565b8282815181106110a3576110a3612a95565b6020908102919091010152600101611066565b50919050565b6110c46117f4565b6001600160a01b038116611104576040517f1ad8836c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61110d81611110565b50565b6000546001600160a01b0382811691161461110d57600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03831673ffffffffffffffffffffffffffffffffffffffff1990911617905550565b60008281526001602052604090206111a38282612bbd565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b2826040516111d491906121d8565b60405180910390a25050565b610b5c82825b7f2145e1d6d074577dc71ef54c3807742b41b053a9352ae6b491331509acb9750f820161123f576040517f85c169bd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fd0f59754f88971fe6bc5a6618cc9d5f1e859c58d16b22d1c7b2d3e2b246cd8aa8201611298576040517f76755b3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f1fd9e056a24d14c4abc642fcc325992a946906d0dbc57dd70278aaf12842024d820161118b576040517f4ef6d7fb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080806113297fcee78b4094da86011096000000000000000000000000000000000000000000006001600160e01b03198616611b84565b9050600061133682611748565b9050805160141415801561134a5750805115155b1561138357806040517f42bfe79f0000000000000000000000000000000000000000000000000000000081526004016101c891906121d8565b61138c81612c7d565b60601c95600195509350505050565b60006001600160e01b031982167fa918fa6b000000000000000000000000000000000000000000000000000000001480610688575061068882611bf5565b6000806113ec6301ffc9a760e01b6112f1565b5090506001600160a01b0381166114065750600092915050565b6106e78184611c43565b6000828152600660209081526040808320848452909152902080546060919061143890612b43565b80601f016020809104026020016040519081016040528092919081815260200182805461146490612b43565b80156114b15780601f10611486576101008083540402835291602001916114b1565b820191906000526020600020905b81548152906001019060200180831161149457829003601f168201915b5050505050905092915050565b60006114c9826107d6565b6001600160a01b0316836001600160a01b031614806106e7575060008281526005602052604090206106e79084611ce1565b6000818152600360205260409020546001600160a01b031661110d57604051635747cd1b60e11b8152600481018290526024016101c8565b606060006106e783611d03565b600061154b846107d6565b9050856001600160a01b0316816001600160a01b03161461159957604051632d938f5160e11b81526001600160a01b03808316600483015260248201869052871660448201526064016101c8565b6001600160a01b0385166115c0576040516324ecef4d60e01b815260040160405180910390fd5b60006115cb856107d6565b9050806001600160a01b0316826001600160a01b031614611632576040517f5a9c31d3000000000000000000000000000000000000000000000000000000008152600481018690526001600160a01b038084166024830152821660448201526064016101c8565b61163c8786611d5e565b6001600160a01b038716600090815260046020526040902061165e9086611db6565b506001600160a01b03861660009081526004602052604090206116819086611dc2565b5060008581526003602052604090819020805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0389811691821790925591518792918a16907fb333c813a7426a7a11e2b190cad52c44119421594b47f6f32ace6d8c7207b2bf906116f59033908a908a90612cb9565b60405180910390a460003388888887604051602001611718959493929190612cec565b60405160208183030381529060405290506117338882611dce565b61173e878683611df9565b5050505050505050565b600081815260016020526040902080546060919061176590612b43565b80601f016020809104026020016040519081016040528092919081815260200182805461179190612b43565b80156117de5780601f106117b3576101008083540402835291602001916117de565b820191906000526020600020905b8154815290600101906020018083116117c157829003601f168201915b50505050509050919050565b6000610688825490565b336118076000546001600160a01b031690565b6001600160a01b031614610a21576040517fbf1169c50000000000000000000000000000000000000000000000000000000081523360048201526024016101c8565b7f098a16c9e50e3e99b3e797305c146898d294e5aec55a47e213cb3611ccf17e7382016118a2576040517f3664800a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610b5c82826111e0565b60006106e7836001600160a01b038416611f33565b610b5c827f8a1c15a8799f71b547e08e2bcb2e85257e81b0a07eee2ce6712549eef1f0097083611f82565b6001600160a01b038416611913576040516324ecef4d60e01b815260040160405180910390fd5b6000838152600360205260409020546001600160a01b03161561194c576040516334c7b51160e01b8152600481018490526024016101c8565b6000838152600360205260409020546001600160a01b031615611985576040516334c7b51160e01b8152600481018490526024016101c8565b60026000815461199490612d3c565b909155506001600160a01b03841660009081526004602052604090206119ba9084611dc2565b50600083815260036020526040808220805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b03881690811790915590518592907fb333c813a7426a7a11e2b190cad52c44119421594b47f6f32ace6d8c7207b2bf90611a2990339088908890612cb9565b60405180910390a46000336000868685604051602001611a4d959493929190612cec565b6040516020818303038152906040529050610893858483611df9565b60008381526006602090815260408083208584529091529020611a8c8282612bbd565b5081837fa6e4251f855f750545fe414f120db91c76b88def14d120969e5bb2d3f05debbb83604051611abe91906121d8565b60405180910390a3505050565b6000838152600560205260408120611ae39087611fcf565b905080611b2e576040517f4aa31a8c0000000000000000000000000000000000000000000000000000000081526001600160a01b0387166004820152602481018590526044016101c8565b83856001600160a01b0316876001600160a01b03167fc78cd419d6136f9f1c1c6aec1d3fae098cffaf8bc86314a8f2685e32fe574e3c8686604051611b74929190612d55565b60405180910390a4505050505050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c83015291829101604051602081830303815290604052905080611bed90612d70565b949350505050565b60006001600160e01b031982167f629aa69400000000000000000000000000000000000000000000000000000000148061068857506301ffc9a760e01b6001600160e01b0319831614610688565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d91506000519050828015611cca575060208210155b8015611cd65750600081115b979650505050505050565b6001600160a01b038116600090815260018301602052604081205415156106e7565b6060816000018054806020026020016040519081016040528092919081815260200182805480156117de57602002820191906000526020600020905b815481526020019060010190808311611d3f5750505050509050919050565b600081815260056020526040812090611d76826117ea565b90506000805b82811015610ceb57611d8f846000611fe4565b9150611dae828787600060405180602001604052806000815250611acb565b600101611d7c565b60006106e78383611ff0565b60006106e78383611f33565b610b5c827fb23eae7e6d1564b295b4c3e3be402d9a2f0776c57bdf365903496f6fa481ab0083611f82565b611e0a83631aed5a8560e21b611c43565b15611ea457604051631aed5a8560e21b81526001600160a01b03841690636bb56a1490611e5d907f0b084a55ebf70fd3c06fd755269dac2212c4d3f0f4d09079780bfa50c1b2984d908590600401612d94565b6000604051808303816000875af1158015611e7c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610e1d9190810190612dad565b81610de0576001600160a01b0383163b15611ef6576040517f4349776d0000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201526024016101c8565b6040517f031731370000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201526024016101c8565b6000818152600183016020526040812054611f7a57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610688565b506000610688565b611f9c6001600160a01b038416631aed5a8560e21b611c43565b15610de057604051631aed5a8560e21b81526001600160a01b03841690636bb56a1490611e5d9085908590600401612d94565b60006106e7836001600160a01b038416611ff0565b60006106e783836120e3565b600081815260018301602052604081205480156120d9576000612014600183612e1b565b855490915060009061202890600190612e1b565b905081811461208d57600086600001828154811061204857612048612a95565b906000526020600020015490508087600001848154811061206b5761206b612a95565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061209e5761209e612e2e565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610688565b6000915050610688565b60008260000182815481106120fa576120fa612a95565b9060005260206000200154905092915050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b60006020828403121561214e57600080fd5b81356001600160e01b0319811681146106e757600080fd5b6000806040838503121561217957600080fd5b50508035926020909101359150565b60005b838110156121a357818101518382015260200161218b565b50506000910152565b600081518084526121c4816020860160208601612188565b601f01601f19169290920160200192915050565b6020815260006106e760208301846121ac565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561222a5761222a6121eb565b604052919050565b600067ffffffffffffffff82111561224c5761224c6121eb565b5060051b60200190565b600082601f83011261226757600080fd5b8135602061227c61227783612232565b612201565b82815260059290921b8401810191818101908684111561229b57600080fd5b8286015b848110156122b6578035835291830191830161229f565b509695505050505050565b600080604083850312156122d457600080fd5b823567ffffffffffffffff808211156122ec57600080fd5b6122f886838701612256565b9350602085013591508082111561230e57600080fd5b5061231b85828601612256565b9150509250929050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561237a57603f198886030184526123688583516121ac565b9450928501929085019060010161234c565b5092979650505050505050565b60006020828403121561239957600080fd5b5035919050565b80356001600160a01b03811681146123b757600080fd5b919050565b600080604083850312156123cf57600080fd5b6123d8836123a0565b946020939093013593505050565b6020808252825182820181905260009190848201906040850190845b818110156124275783516001600160a01b031683529284019291840191600101612402565b50909695505050505050565b803580151581146123b757600080fd5b600067ffffffffffffffff82111561245d5761245d6121eb565b50601f01601f191660200190565b600082601f83011261247c57600080fd5b813561248a61227782612443565b81815284602083860101111561249f57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156124d457600080fd5b6124dd866123a0565b94506124eb602087016123a0565b93506040860135925061250060608701612433565b9150608086013567ffffffffffffffff81111561251c57600080fd5b6125288882890161246b565b9150509295509295909350565b6000806020838503121561254857600080fd5b823567ffffffffffffffff8082111561256057600080fd5b818501915085601f83011261257457600080fd5b81358181111561258357600080fd5b8660208260051b850101111561259857600080fd5b60209290920196919550909350505050565b6000602082840312156125bc57600080fd5b6106e7826123a0565b600082601f8301126125d657600080fd5b813560206125e661227783612232565b82815260059290921b8401810191818101908684111561260557600080fd5b8286015b848110156122b65761261a816123a0565b8352918301918301612609565b600082601f83011261263857600080fd5b8135602061264861227783612232565b82815260059290921b8401810191818101908684111561266757600080fd5b8286015b848110156122b65761267c81612433565b835291830191830161266b565b600082601f83011261269a57600080fd5b813560206126aa61227783612232565b82815260059290921b840181019181810190868411156126c957600080fd5b8286015b848110156122b657803567ffffffffffffffff8111156126ed5760008081fd5b6126fb8986838b010161246b565b8452509183019183016126cd565b600080600080600060a0868803121561272157600080fd5b853567ffffffffffffffff8082111561273957600080fd5b61274589838a016125c5565b9650602088013591508082111561275b57600080fd5b61276789838a016125c5565b9550604088013591508082111561277d57600080fd5b61278989838a01612256565b9450606088013591508082111561279f57600080fd5b6127ab89838a01612627565b935060808801359150808211156127c157600080fd5b5061252888828901612689565b600080604083850312156127e157600080fd5b82359150602083013567ffffffffffffffff8111156127ff57600080fd5b61231b8582860161246b565b60008060006060848603121561282057600080fd5b612829846123a0565b925060208401359150604084013567ffffffffffffffff81111561284c57600080fd5b6128588682870161246b565b9150509250925092565b6000806040838503121561287557600080fd5b823567ffffffffffffffff8082111561288d57600080fd5b61289986838701612256565b935060208501359150808211156128af57600080fd5b5061231b85828601612689565b6020808252825182820181905260009190848201906040850190845b81811015612427578351835292840192918401916001016128d8565b6000806000806080858703121561290a57600080fd5b612913856123a0565b93506020850135925061292860408601612433565b9150606085013567ffffffffffffffff81111561294457600080fd5b6129508782880161246b565b91505092959194509250565b60008060006060848603121561297157600080fd5b833567ffffffffffffffff8082111561298957600080fd5b61299587838801612256565b945060208601359150808211156129ab57600080fd5b6129b787838801612256565b935060408601359150808211156129cd57600080fd5b5061285886828701612689565b6000806000606084860312156129ef57600080fd5b8335925060208401359150604084013567ffffffffffffffff81111561284c57600080fd5b600060208284031215612a2657600080fd5b813567ffffffffffffffff811115612a3d57600080fd5b611bed84828501612256565b8385823760609290921b6bffffffffffffffffffffffff1916919092019081526014810191909152603401919050565b60008251612a8b818460208701612188565b9190910192915050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112612ac257600080fd5b83018035915067ffffffffffffffff821115612add57600080fd5b602001915036819003821315612af257600080fd5b9250929050565b8183823760009101908152919050565b6001600160a01b03851681528360208201528215156040820152608060608201526000612b3960808301846121ac565b9695505050505050565b600181811c90821680612b5757607f821691505b6020821081036110b657634e487b7160e01b600052602260045260246000fd5b601f821115610de057600081815260208120601f850160051c81016020861015612b9e5750805b601f850160051c820191505b81811015610ceb57828155600101612baa565b815167ffffffffffffffff811115612bd757612bd76121eb565b612beb81612be58454612b43565b84612b77565b602080601f831160018114612c205760008415612c085750858301515b600019600386901b1c1916600185901b178555610ceb565b600085815260208120601f198616915b82811015612c4f57888601518255948401946001909101908401612c30565b5085821015612c6d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b805160208201516bffffffffffffffffffffffff198082169291906014831015612cb15780818460140360031b1b83161693505b505050919050565b6001600160a01b03841681528215156020820152606060408201526000612ce360608301846121ac565b95945050505050565b60006001600160a01b038088168352808716602084015280861660408401525083606083015260a06080830152611cd660a08301846121ac565b634e487b7160e01b600052601160045260246000fd5b600060018201612d4e57612d4e612d26565b5060010190565b8215158152604060208201526000611bed60408301846121ac565b805160208083015191908110156110b65760001960209190910360031b1b16919050565b828152604060208201526000611bed60408301846121ac565b600060208284031215612dbf57600080fd5b815167ffffffffffffffff811115612dd657600080fd5b8201601f81018413612de757600080fd5b8051612df561227782612443565b818152856020838501011115612e0a57600080fd5b612ce3826020830160208601612188565b8181038181111561068857610688612d26565b634e487b7160e01b600052603160045260246000fdfea2646970667358221220adcfb1a11f723b89d50c2783ef9e8770350e7d126e37afb1c6a2a1f108f03e4a64736f6c63430008110033",
1004
- "linkReferences": {},
1005
- "deployedLinkReferences": {}
1006
- }