@lukso/lsp8-contracts 0.16.4 → 0.16.5

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.
@@ -0,0 +1,995 @@
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
+ "name": "OwnableCannotSetZeroAddressAsOwner",
309
+ "type": "error"
310
+ },
311
+ {
312
+ "anonymous": false,
313
+ "inputs": [
314
+ {
315
+ "indexed": true,
316
+ "internalType": "bytes32",
317
+ "name": "dataKey",
318
+ "type": "bytes32"
319
+ },
320
+ {
321
+ "indexed": false,
322
+ "internalType": "bytes",
323
+ "name": "dataValue",
324
+ "type": "bytes"
325
+ }
326
+ ],
327
+ "name": "DataChanged",
328
+ "type": "event"
329
+ },
330
+ {
331
+ "anonymous": false,
332
+ "inputs": [
333
+ {
334
+ "indexed": true,
335
+ "internalType": "address",
336
+ "name": "operator",
337
+ "type": "address"
338
+ },
339
+ {
340
+ "indexed": true,
341
+ "internalType": "address",
342
+ "name": "tokenOwner",
343
+ "type": "address"
344
+ },
345
+ {
346
+ "indexed": true,
347
+ "internalType": "bytes32",
348
+ "name": "tokenId",
349
+ "type": "bytes32"
350
+ },
351
+ {
352
+ "indexed": false,
353
+ "internalType": "bytes",
354
+ "name": "operatorNotificationData",
355
+ "type": "bytes"
356
+ }
357
+ ],
358
+ "name": "OperatorAuthorizationChanged",
359
+ "type": "event"
360
+ },
361
+ {
362
+ "anonymous": false,
363
+ "inputs": [
364
+ {
365
+ "indexed": true,
366
+ "internalType": "address",
367
+ "name": "operator",
368
+ "type": "address"
369
+ },
370
+ {
371
+ "indexed": true,
372
+ "internalType": "address",
373
+ "name": "tokenOwner",
374
+ "type": "address"
375
+ },
376
+ {
377
+ "indexed": true,
378
+ "internalType": "bytes32",
379
+ "name": "tokenId",
380
+ "type": "bytes32"
381
+ },
382
+ {
383
+ "indexed": false,
384
+ "internalType": "bool",
385
+ "name": "notified",
386
+ "type": "bool"
387
+ },
388
+ {
389
+ "indexed": false,
390
+ "internalType": "bytes",
391
+ "name": "operatorNotificationData",
392
+ "type": "bytes"
393
+ }
394
+ ],
395
+ "name": "OperatorRevoked",
396
+ "type": "event"
397
+ },
398
+ {
399
+ "anonymous": false,
400
+ "inputs": [
401
+ {
402
+ "indexed": true,
403
+ "internalType": "address",
404
+ "name": "previousOwner",
405
+ "type": "address"
406
+ },
407
+ {
408
+ "indexed": true,
409
+ "internalType": "address",
410
+ "name": "newOwner",
411
+ "type": "address"
412
+ }
413
+ ],
414
+ "name": "OwnershipTransferred",
415
+ "type": "event"
416
+ },
417
+ {
418
+ "anonymous": false,
419
+ "inputs": [
420
+ {
421
+ "indexed": true,
422
+ "internalType": "bytes32",
423
+ "name": "tokenId",
424
+ "type": "bytes32"
425
+ },
426
+ {
427
+ "indexed": true,
428
+ "internalType": "bytes32",
429
+ "name": "dataKey",
430
+ "type": "bytes32"
431
+ },
432
+ {
433
+ "indexed": false,
434
+ "internalType": "bytes",
435
+ "name": "dataValue",
436
+ "type": "bytes"
437
+ }
438
+ ],
439
+ "name": "TokenIdDataChanged",
440
+ "type": "event"
441
+ },
442
+ {
443
+ "anonymous": false,
444
+ "inputs": [
445
+ {
446
+ "indexed": false,
447
+ "internalType": "address",
448
+ "name": "operator",
449
+ "type": "address"
450
+ },
451
+ {
452
+ "indexed": true,
453
+ "internalType": "address",
454
+ "name": "from",
455
+ "type": "address"
456
+ },
457
+ {
458
+ "indexed": true,
459
+ "internalType": "address",
460
+ "name": "to",
461
+ "type": "address"
462
+ },
463
+ {
464
+ "indexed": true,
465
+ "internalType": "bytes32",
466
+ "name": "tokenId",
467
+ "type": "bytes32"
468
+ },
469
+ {
470
+ "indexed": false,
471
+ "internalType": "bool",
472
+ "name": "force",
473
+ "type": "bool"
474
+ },
475
+ {
476
+ "indexed": false,
477
+ "internalType": "bytes",
478
+ "name": "data",
479
+ "type": "bytes"
480
+ }
481
+ ],
482
+ "name": "Transfer",
483
+ "type": "event"
484
+ },
485
+ {
486
+ "stateMutability": "payable",
487
+ "type": "fallback"
488
+ },
489
+ {
490
+ "inputs": [
491
+ {
492
+ "internalType": "address",
493
+ "name": "operator",
494
+ "type": "address"
495
+ },
496
+ {
497
+ "internalType": "bytes32",
498
+ "name": "tokenId",
499
+ "type": "bytes32"
500
+ },
501
+ {
502
+ "internalType": "bytes",
503
+ "name": "operatorNotificationData",
504
+ "type": "bytes"
505
+ }
506
+ ],
507
+ "name": "authorizeOperator",
508
+ "outputs": [],
509
+ "stateMutability": "nonpayable",
510
+ "type": "function"
511
+ },
512
+ {
513
+ "inputs": [
514
+ {
515
+ "internalType": "address",
516
+ "name": "tokenOwner",
517
+ "type": "address"
518
+ }
519
+ ],
520
+ "name": "balanceOf",
521
+ "outputs": [
522
+ {
523
+ "internalType": "uint256",
524
+ "name": "",
525
+ "type": "uint256"
526
+ }
527
+ ],
528
+ "stateMutability": "view",
529
+ "type": "function"
530
+ },
531
+ {
532
+ "inputs": [
533
+ {
534
+ "internalType": "bytes[]",
535
+ "name": "data",
536
+ "type": "bytes[]"
537
+ }
538
+ ],
539
+ "name": "batchCalls",
540
+ "outputs": [
541
+ {
542
+ "internalType": "bytes[]",
543
+ "name": "results",
544
+ "type": "bytes[]"
545
+ }
546
+ ],
547
+ "stateMutability": "nonpayable",
548
+ "type": "function"
549
+ },
550
+ {
551
+ "inputs": [
552
+ {
553
+ "internalType": "bytes32",
554
+ "name": "dataKey",
555
+ "type": "bytes32"
556
+ }
557
+ ],
558
+ "name": "getData",
559
+ "outputs": [
560
+ {
561
+ "internalType": "bytes",
562
+ "name": "dataValue",
563
+ "type": "bytes"
564
+ }
565
+ ],
566
+ "stateMutability": "view",
567
+ "type": "function"
568
+ },
569
+ {
570
+ "inputs": [
571
+ {
572
+ "internalType": "bytes32[]",
573
+ "name": "dataKeys",
574
+ "type": "bytes32[]"
575
+ }
576
+ ],
577
+ "name": "getDataBatch",
578
+ "outputs": [
579
+ {
580
+ "internalType": "bytes[]",
581
+ "name": "dataValues",
582
+ "type": "bytes[]"
583
+ }
584
+ ],
585
+ "stateMutability": "view",
586
+ "type": "function"
587
+ },
588
+ {
589
+ "inputs": [
590
+ {
591
+ "internalType": "bytes32[]",
592
+ "name": "tokenIds",
593
+ "type": "bytes32[]"
594
+ },
595
+ {
596
+ "internalType": "bytes32[]",
597
+ "name": "dataKeys",
598
+ "type": "bytes32[]"
599
+ }
600
+ ],
601
+ "name": "getDataBatchForTokenIds",
602
+ "outputs": [
603
+ {
604
+ "internalType": "bytes[]",
605
+ "name": "dataValues",
606
+ "type": "bytes[]"
607
+ }
608
+ ],
609
+ "stateMutability": "view",
610
+ "type": "function"
611
+ },
612
+ {
613
+ "inputs": [
614
+ {
615
+ "internalType": "bytes32",
616
+ "name": "tokenId",
617
+ "type": "bytes32"
618
+ },
619
+ {
620
+ "internalType": "bytes32",
621
+ "name": "dataKey",
622
+ "type": "bytes32"
623
+ }
624
+ ],
625
+ "name": "getDataForTokenId",
626
+ "outputs": [
627
+ {
628
+ "internalType": "bytes",
629
+ "name": "dataValue",
630
+ "type": "bytes"
631
+ }
632
+ ],
633
+ "stateMutability": "view",
634
+ "type": "function"
635
+ },
636
+ {
637
+ "inputs": [
638
+ {
639
+ "internalType": "bytes32",
640
+ "name": "tokenId",
641
+ "type": "bytes32"
642
+ }
643
+ ],
644
+ "name": "getOperatorsOf",
645
+ "outputs": [
646
+ {
647
+ "internalType": "address[]",
648
+ "name": "",
649
+ "type": "address[]"
650
+ }
651
+ ],
652
+ "stateMutability": "view",
653
+ "type": "function"
654
+ },
655
+ {
656
+ "inputs": [
657
+ {
658
+ "internalType": "address",
659
+ "name": "operator",
660
+ "type": "address"
661
+ },
662
+ {
663
+ "internalType": "bytes32",
664
+ "name": "tokenId",
665
+ "type": "bytes32"
666
+ }
667
+ ],
668
+ "name": "isOperatorFor",
669
+ "outputs": [
670
+ {
671
+ "internalType": "bool",
672
+ "name": "",
673
+ "type": "bool"
674
+ }
675
+ ],
676
+ "stateMutability": "view",
677
+ "type": "function"
678
+ },
679
+ {
680
+ "inputs": [
681
+ {
682
+ "internalType": "address",
683
+ "name": "to",
684
+ "type": "address"
685
+ },
686
+ {
687
+ "internalType": "bytes32",
688
+ "name": "tokenId",
689
+ "type": "bytes32"
690
+ },
691
+ {
692
+ "internalType": "bool",
693
+ "name": "force",
694
+ "type": "bool"
695
+ },
696
+ {
697
+ "internalType": "bytes",
698
+ "name": "data",
699
+ "type": "bytes"
700
+ }
701
+ ],
702
+ "name": "mint",
703
+ "outputs": [],
704
+ "stateMutability": "nonpayable",
705
+ "type": "function"
706
+ },
707
+ {
708
+ "inputs": [],
709
+ "name": "owner",
710
+ "outputs": [
711
+ {
712
+ "internalType": "address",
713
+ "name": "",
714
+ "type": "address"
715
+ }
716
+ ],
717
+ "stateMutability": "view",
718
+ "type": "function"
719
+ },
720
+ {
721
+ "inputs": [],
722
+ "name": "renounceOwnership",
723
+ "outputs": [],
724
+ "stateMutability": "nonpayable",
725
+ "type": "function"
726
+ },
727
+ {
728
+ "inputs": [
729
+ {
730
+ "internalType": "address",
731
+ "name": "operator",
732
+ "type": "address"
733
+ },
734
+ {
735
+ "internalType": "bytes32",
736
+ "name": "tokenId",
737
+ "type": "bytes32"
738
+ },
739
+ {
740
+ "internalType": "bool",
741
+ "name": "notify",
742
+ "type": "bool"
743
+ },
744
+ {
745
+ "internalType": "bytes",
746
+ "name": "operatorNotificationData",
747
+ "type": "bytes"
748
+ }
749
+ ],
750
+ "name": "revokeOperator",
751
+ "outputs": [],
752
+ "stateMutability": "nonpayable",
753
+ "type": "function"
754
+ },
755
+ {
756
+ "inputs": [
757
+ {
758
+ "internalType": "bytes32",
759
+ "name": "dataKey",
760
+ "type": "bytes32"
761
+ },
762
+ {
763
+ "internalType": "bytes",
764
+ "name": "dataValue",
765
+ "type": "bytes"
766
+ }
767
+ ],
768
+ "name": "setData",
769
+ "outputs": [],
770
+ "stateMutability": "payable",
771
+ "type": "function"
772
+ },
773
+ {
774
+ "inputs": [
775
+ {
776
+ "internalType": "bytes32[]",
777
+ "name": "dataKeys",
778
+ "type": "bytes32[]"
779
+ },
780
+ {
781
+ "internalType": "bytes[]",
782
+ "name": "dataValues",
783
+ "type": "bytes[]"
784
+ }
785
+ ],
786
+ "name": "setDataBatch",
787
+ "outputs": [],
788
+ "stateMutability": "payable",
789
+ "type": "function"
790
+ },
791
+ {
792
+ "inputs": [
793
+ {
794
+ "internalType": "bytes32[]",
795
+ "name": "tokenIds",
796
+ "type": "bytes32[]"
797
+ },
798
+ {
799
+ "internalType": "bytes32[]",
800
+ "name": "dataKeys",
801
+ "type": "bytes32[]"
802
+ },
803
+ {
804
+ "internalType": "bytes[]",
805
+ "name": "dataValues",
806
+ "type": "bytes[]"
807
+ }
808
+ ],
809
+ "name": "setDataBatchForTokenIds",
810
+ "outputs": [],
811
+ "stateMutability": "nonpayable",
812
+ "type": "function"
813
+ },
814
+ {
815
+ "inputs": [
816
+ {
817
+ "internalType": "bytes32",
818
+ "name": "tokenId",
819
+ "type": "bytes32"
820
+ },
821
+ {
822
+ "internalType": "bytes32",
823
+ "name": "dataKey",
824
+ "type": "bytes32"
825
+ },
826
+ {
827
+ "internalType": "bytes",
828
+ "name": "dataValue",
829
+ "type": "bytes"
830
+ }
831
+ ],
832
+ "name": "setDataForTokenId",
833
+ "outputs": [],
834
+ "stateMutability": "nonpayable",
835
+ "type": "function"
836
+ },
837
+ {
838
+ "inputs": [
839
+ {
840
+ "internalType": "bytes4",
841
+ "name": "interfaceId",
842
+ "type": "bytes4"
843
+ }
844
+ ],
845
+ "name": "supportsInterface",
846
+ "outputs": [
847
+ {
848
+ "internalType": "bool",
849
+ "name": "",
850
+ "type": "bool"
851
+ }
852
+ ],
853
+ "stateMutability": "view",
854
+ "type": "function"
855
+ },
856
+ {
857
+ "inputs": [
858
+ {
859
+ "internalType": "address",
860
+ "name": "tokenOwner",
861
+ "type": "address"
862
+ }
863
+ ],
864
+ "name": "tokenIdsOf",
865
+ "outputs": [
866
+ {
867
+ "internalType": "bytes32[]",
868
+ "name": "",
869
+ "type": "bytes32[]"
870
+ }
871
+ ],
872
+ "stateMutability": "view",
873
+ "type": "function"
874
+ },
875
+ {
876
+ "inputs": [
877
+ {
878
+ "internalType": "bytes32",
879
+ "name": "tokenId",
880
+ "type": "bytes32"
881
+ }
882
+ ],
883
+ "name": "tokenOwnerOf",
884
+ "outputs": [
885
+ {
886
+ "internalType": "address",
887
+ "name": "",
888
+ "type": "address"
889
+ }
890
+ ],
891
+ "stateMutability": "view",
892
+ "type": "function"
893
+ },
894
+ {
895
+ "inputs": [],
896
+ "name": "totalSupply",
897
+ "outputs": [
898
+ {
899
+ "internalType": "uint256",
900
+ "name": "",
901
+ "type": "uint256"
902
+ }
903
+ ],
904
+ "stateMutability": "view",
905
+ "type": "function"
906
+ },
907
+ {
908
+ "inputs": [
909
+ {
910
+ "internalType": "address",
911
+ "name": "from",
912
+ "type": "address"
913
+ },
914
+ {
915
+ "internalType": "address",
916
+ "name": "to",
917
+ "type": "address"
918
+ },
919
+ {
920
+ "internalType": "bytes32",
921
+ "name": "tokenId",
922
+ "type": "bytes32"
923
+ },
924
+ {
925
+ "internalType": "bool",
926
+ "name": "force",
927
+ "type": "bool"
928
+ },
929
+ {
930
+ "internalType": "bytes",
931
+ "name": "data",
932
+ "type": "bytes"
933
+ }
934
+ ],
935
+ "name": "transfer",
936
+ "outputs": [],
937
+ "stateMutability": "nonpayable",
938
+ "type": "function"
939
+ },
940
+ {
941
+ "inputs": [
942
+ {
943
+ "internalType": "address[]",
944
+ "name": "from",
945
+ "type": "address[]"
946
+ },
947
+ {
948
+ "internalType": "address[]",
949
+ "name": "to",
950
+ "type": "address[]"
951
+ },
952
+ {
953
+ "internalType": "bytes32[]",
954
+ "name": "tokenId",
955
+ "type": "bytes32[]"
956
+ },
957
+ {
958
+ "internalType": "bool[]",
959
+ "name": "force",
960
+ "type": "bool[]"
961
+ },
962
+ {
963
+ "internalType": "bytes[]",
964
+ "name": "data",
965
+ "type": "bytes[]"
966
+ }
967
+ ],
968
+ "name": "transferBatch",
969
+ "outputs": [],
970
+ "stateMutability": "nonpayable",
971
+ "type": "function"
972
+ },
973
+ {
974
+ "inputs": [
975
+ {
976
+ "internalType": "address",
977
+ "name": "newOwner",
978
+ "type": "address"
979
+ }
980
+ ],
981
+ "name": "transferOwnership",
982
+ "outputs": [],
983
+ "stateMutability": "nonpayable",
984
+ "type": "function"
985
+ },
986
+ {
987
+ "stateMutability": "payable",
988
+ "type": "receive"
989
+ }
990
+ ],
991
+ "bytecode": "0x60806040523480156200001157600080fd5b506040516200357b3803806200357b833981016040819052620000349162000445565b8484848484848484848162000049336200020c565b6001600160a01b03811662000071576040516306b620db60e21b815260040160405180910390fd5b62000087816200020c60201b620010901760201c565b50620000de7feafec4d89fa9619884b60000a4d96624a38f7ac2d8d9a604ecf07c12c77e480c60001b604051806040016040528060048152602001632936598960e21b8152506200025c60201b620010ed1760201c565b620001187fdeba1e292f8ba88238e10ab3c7f88bd4be4fac56cad5194b6ecceaf653468af160001b856200025c60201b620010ed1760201c565b620001527f2f0a68ab07768e01943a599e73362a0e17a63a72e94dd2e384d2c1d4db93275660001b846200025c60201b620010ed1760201c565b6040805160208101839052620001a5917fe0261fa95db2eb3b5439bd033cda66d56b96f92f243a8228fd87550ed7bdfdb391016040516020818303038152906040526200025c60201b620010ed1760201c565b50506040805160208101859052620001fc93507ff675e9361af1c1664c1868cfa3eb97672d6b1a513aa5b81dec34c9ee330e818d925001604051602081830303815290604052620002b560201b620011421760201c565b5050505050505050505062000673565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600082815260016020526040902062000276828262000572565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b282604051620002a991906200063e565b60405180910390a25050565b7f2145e1d6d074577dc71ef54c3807742b41b053a9352ae6b491331509acb9750f8201620002f6576040516385c169bd60e01b815260040160405180910390fd5b7fd0f59754f88971fe6bc5a6618cc9d5f1e859c58d16b22d1c7b2d3e2b246cd8aa82016200033757604051630eceab6760e31b815260040160405180910390fd5b7f1fd9e056a24d14c4abc642fcc325992a946906d0dbc57dd70278aaf12842024d82016200025c57604051634ef6d7fb60e01b815260040160405180910390fd5b634e487b7160e01b600052604160045260246000fd5b60005b83811015620003ab57818101518382015260200162000391565b50506000910152565b600082601f830112620003c657600080fd5b81516001600160401b0380821115620003e357620003e362000378565b604051601f8301601f19908116603f011681019082821181831017156200040e576200040e62000378565b816040528381528660208588010111156200042857600080fd5b6200043b8460208301602089016200038e565b9695505050505050565b600080600080600060a086880312156200045e57600080fd5b85516001600160401b03808211156200047657600080fd5b6200048489838a01620003b4565b965060208801519150808211156200049b57600080fd5b50620004aa88828901620003b4565b604088015190955090506001600160a01b0381168114620004ca57600080fd5b6060870151608090970151959894975095949392505050565b600181811c90821680620004f857607f821691505b6020821081036200051957634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200056d57600081815260208120601f850160051c81016020861015620005485750805b601f850160051c820191505b81811015620005695782815560010162000554565b5050505b505050565b81516001600160401b038111156200058e576200058e62000378565b620005a6816200059f8454620004e3565b846200051f565b602080601f831160018114620005de5760008415620005c55750858301515b600019600386901b1c1916600185901b17855562000569565b600085815260208120601f198616915b828110156200060f57888601518255948401946001909101908401620005ee565b50858210156200062e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60208152600082518060208401526200065f8160408501602087016200038e565b601f01601f19169190910160400192915050565b612ef880620006836000396000f3fe60806040526004361061018f5760003560e01c80637e87632c116100d6578063af255b611161007f578063db8c966311610059578063db8c96631461051f578063dedff9c61461053f578063f2fde38b1461055f57610203565b8063af255b61146104bf578063be9f0e6f146104df578063d6c1407c146104ff57610203565b80638da5cb5b116100b05780638da5cb5b14610461578063979024211461047f578063a3b261f21461049257610203565b80637e87632c1461040e5780637f23690c1461042e57806386a10ddd1461044157610203565b806349a6078d116101385780636963d438116101125780636963d438146103b957806370a08231146103d9578063715018a6146103f957610203565b806349a6078d1461034a578063511b69521461037757806354f6127f1461039957610203565b80631d26fce6116101695780631d26fce6146102c5578063217b2270146102f25780632a3654a41461032a57610203565b806301ffc9a71461024457806316e023b31461027957806318160ddd146102a657610203565b3661020357346000036101d15760405163e5099ee360e01b81526004016101c89060208082526004908201526000604082015260600190565b60405180910390fd5b6040517f61f4944200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000366060600482101561022e57828260405163e5099ee360e01b81526004016101c892919061218b565b610238838361057f565b80519350602001915050f35b34801561025057600080fd5b5061026461025f3660046121ba565b61068e565b60405190151581526020015b60405180910390f35b34801561028557600080fd5b506102996102943660046121e4565b6106db565b6040516102709190612256565b3480156102b257600080fd5b506002545b604051908152602001610270565b3480156102d157600080fd5b506102e56102e036600461233f565b6106ee565b60405161027091906123a3565b3480156102fe57600080fd5b5061031261030d366004612405565b6107d6565b6040516001600160a01b039091168152602001610270565b34801561033657600080fd5b5061026461034536600461243a565b61080f565b34801561035657600080fd5b5061036a610365366004612405565b61081b565b6040516102709190612464565b34801561038357600080fd5b5061039761039236600461253a565b61083d565b005b3480156103a557600080fd5b506102996103b4366004612405565b61089a565b3480156103c557600080fd5b506102e56103d43660046125b3565b6108a5565b3480156103e557600080fd5b506102b76103f4366004612628565b6109ee565b34801561040557600080fd5b50610397610a0f565b34801561041a57600080fd5b50610397610429366004612787565b610a23565b61039761043c36600461284c565b610b2b565b34801561044d57600080fd5b5061039761045c366004612889565b610b60565b34801561046d57600080fd5b506000546001600160a01b0316610312565b61039761048d3660046128e0565b610cf3565b34801561049e57600080fd5b506104b26104ad366004612628565b610d24565b604051610270919061293a565b3480156104cb57600080fd5b506103976104da366004612972565b610d48565b3480156104eb57600080fd5b506103976104fa3660046129da565b610d62565b34801561050b57600080fd5b5061039761051a366004612a58565b610e40565b34801561052b57600080fd5b5061039761053a366004612972565b610e58565b34801561054b57600080fd5b506102e561055a366004612a92565b610f55565b34801561056b57600080fd5b5061039761057a366004612628565b611000565b606060006105986000356001600160e01b03191661124d565b5090506001600160a01b0381166105e9576040517fbb370b2b0000000000000000000000000000000000000000000000000000000081526001600160e01b03196000351660048201526024016101c8565b600080826001600160a01b0316348787333460405160200161060e9493929190612ac7565b60408051601f198184030181529082905261062891612af7565b60006040518083038185875af1925050503d8060008114610665576040519150601f19603f3d011682016040523d82523d6000602084013e61066a565b606091505b5091509150811561067f579250610688915050565b80518060208301fd5b92915050565b60006001600160e01b031982167f3a2717060000000000000000000000000000000000000000000000000000000014806106cc57506106cc826112f7565b80610688575061068882611335565b60606106e7838361136c565b9392505050565b60608151835114610712576040516317d38eff60e11b815260040160405180910390fd5b825167ffffffffffffffff81111561072c5761072c612269565b60405190808252806020026020018201604052801561075f57816020015b606081526020019060019003908161074a5790505b50905060005b83518110156107cf576107aa84828151811061078357610783612b13565b602002602001015184838151811061079d5761079d612b13565b602002602001015161136c565b8282815181106107bc576107bc612b13565b6020908102919091010152600101610765565b5092915050565b6000818152600360205260408120546001600160a01b03168061068857604051635747cd1b60e11b8152600481018490526024016101c8565b60006106e78383611443565b606061082682611480565b6000828152600560205260409020610688906114b8565b6108473384611443565b610886576040517f1294d2a9000000000000000000000000000000000000000000000000000000008152600481018490523360248201526044016101c8565b61089385858585856114c5565b5050505050565b6060610688826116cd565b60608167ffffffffffffffff8111156108c0576108c0612269565b6040519080825280602002602001820160405280156108f357816020015b60608152602001906001900390816108de5790505b50905060005b828110156107cf576000803086868581811061091757610917612b13565b90506020028101906109299190612b29565b604051610937929190612b77565b600060405180830381855af49150503d8060008114610972576040519150601f19603f3d011682016040523d82523d6000602084013e610977565b606091505b5091509150816109c6578051156109915780518082602001fd5b6040517f234eb819000000000000000000000000000000000000000000000000000000008152600481018490526024016101c8565b808484815181106109d9576109d9612b13565b602090810291909101015250506001016108f9565b6001600160a01b03811660009081526004602052604081206106889061176f565b610a17611779565b610a216000611090565b565b8451845181141580610a36575083518114155b80610a42575082518114155b80610a4e575081518114155b15610a85576040517f93a8311900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81811015610b2257610b1a878281518110610aa557610aa5612b13565b6020026020010151878381518110610abf57610abf612b13565b6020026020010151878481518110610ad957610ad9612b13565b6020026020010151878581518110610af357610af3612b13565b6020026020010151878681518110610b0d57610b0d612b13565b602002602001015161083d565b600101610a88565b50505050505050565b610b33611779565b3415610b525760405163f36ba73760e01b815260040160405180910390fd5b610b5c82826117d3565b5050565b6000610b6b836107d6565b90506001600160a01b0381163314610bae57604051632d938f5160e11b81526001600160a01b0382166004820152602481018490523360448201526064016101c8565b6001600160a01b038416610bd557604051639577b8b360e01b815260040160405180910390fd5b836001600160a01b0316816001600160a01b031603610c07576040516344fed6b160e11b815260040160405180910390fd5b6000838152600560205260408120610c1f9086611836565b905080610c6a576040517fa7626b680000000000000000000000000000000000000000000000000000000081526001600160a01b0386166004820152602481018590526044016101c8565b83826001600160a01b0316866001600160a01b03167f1b1b58aa2ec0cec2228b2d37124556d41f5a1f7b12f089171f896cc23667121586604051610cae9190612256565b60405180910390a460003385600186604051602001610cd09493929190612b87565b6040516020818303038152906040529050610ceb868261184b565b505050505050565b610cfb611779565b3415610d1a5760405163f36ba73760e01b815260040160405180910390fd5b610b5c8282611876565b6001600160a01b0381166000908152600460205260409020606090610688906114b8565b610d50611779565b610d5c8484848461193c565b50505050565b610d6a611779565b81518351141580610d7d57508051825114155b15610d9b576040516317d38eff60e11b815260040160405180910390fd5b8251600003610dd6576040517f80c9830500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b8351811015610d5c57610e38848281518110610df757610df7612b13565b6020026020010151848381518110610e1157610e11612b13565b6020026020010151848481518110610e2b57610e2b612b13565b6020026020010151611ab9565b600101610dd9565b610e48611779565b610e53838383611ab9565b505050565b6000610e63846107d6565b9050336001600160a01b03821614610ecf576001600160a01b0385163314610ecf576040517f760b5acd0000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b0382166024820152604481018590526064016101c8565b6001600160a01b038516610ef657604051639577b8b360e01b815260040160405180910390fd5b846001600160a01b0316816001600160a01b031603610f28576040516344fed6b160e11b815260040160405180910390fd5b610f358582868686611b49565b82156108935760008185600085604051602001610cd09493929190612b87565b6060815167ffffffffffffffff811115610f7157610f71612269565b604051908082528060200260200182016040528015610fa457816020015b6060815260200190600190039081610f8f5790505b50905060005b8251811015610ffa57610fd5838281518110610fc857610fc8612b13565b60200260200101516116cd565b828281518110610fe757610fe7612b13565b6020908102919091010152600101610faa565b50919050565b611008611779565b6001600160a01b0381166110845760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016101c8565b61108d81611090565b50565b600080546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60008281526001602052604090206111058282612c3b565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b2826040516111369190612256565b60405180910390a25050565b7f2145e1d6d074577dc71ef54c3807742b41b053a9352ae6b491331509acb9750f820161119b576040517f85c169bd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fd0f59754f88971fe6bc5a6618cc9d5f1e859c58d16b22d1c7b2d3e2b246cd8aa82016111f4576040517f76755b3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f1fd9e056a24d14c4abc642fcc325992a946906d0dbc57dd70278aaf12842024d82016110ed576040517f4ef6d7fb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080806112857fcee78b4094da86011096000000000000000000000000000000000000000000006001600160e01b03198616611c02565b90506000611292826116cd565b905080516014141580156112a65750805115155b156112df57806040517f42bfe79f0000000000000000000000000000000000000000000000000000000081526004016101c89190612256565b6112e881612cfb565b60601c95600195509350505050565b60006001600160e01b031982167fa918fa6b000000000000000000000000000000000000000000000000000000001480610688575061068882611c73565b6000806113486301ffc9a760e01b61124d565b5090506001600160a01b0381166113625750600092915050565b6106e78184611cc1565b606060016000848460405160200161138e929190918252602082015260400190565b60405160208183030381529060405280519060200120815260200190815260200160002080546113bd90612bc1565b80601f01602080910402602001604051908101604052809291908181526020018280546113e990612bc1565b80156114365780601f1061140b57610100808354040283529160200191611436565b820191906000526020600020905b81548152906001019060200180831161141957829003601f168201915b5050505050905092915050565b600061144e826107d6565b6001600160a01b0316836001600160a01b031614806106e7575060008281526005602052604090206106e79084611d5f565b6000818152600360205260409020546001600160a01b031661108d57604051635747cd1b60e11b8152600481018290526024016101c8565b606060006106e783611d81565b60006114d0846107d6565b9050856001600160a01b0316816001600160a01b03161461151e57604051632d938f5160e11b81526001600160a01b03808316600483015260248201869052871660448201526064016101c8565b6001600160a01b038516611545576040516324ecef4d60e01b815260040160405180910390fd5b6000611550856107d6565b9050806001600160a01b0316826001600160a01b0316146115b7576040517f5a9c31d3000000000000000000000000000000000000000000000000000000008152600481018690526001600160a01b038084166024830152821660448201526064016101c8565b6115c18786611ddc565b6001600160a01b03871660009081526004602052604090206115e39086611e34565b506001600160a01b03861660009081526004602052604090206116069086611e40565b5060008581526003602052604090819020805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0389811691821790925591518792918a16907fb333c813a7426a7a11e2b190cad52c44119421594b47f6f32ace6d8c7207b2bf9061167a9033908a908a90612d37565b60405180910390a46000338888888760405160200161169d959493929190612d6a565b60405160208183030381529060405290506116b88882611e4c565b6116c3878683611e77565b5050505050505050565b60008181526001602052604090208054606091906116ea90612bc1565b80601f016020809104026020016040519081016040528092919081815260200182805461171690612bc1565b80156117635780601f1061173857610100808354040283529160200191611763565b820191906000526020600020905b81548152906001019060200180831161174657829003601f168201915b50505050509050919050565b6000610688825490565b6000546001600160a01b03163314610a215760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101c8565b7f098a16c9e50e3e99b3e797305c146898d294e5aec55a47e213cb3611ccf17e73820161182c576040517f3664800a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610b5c8282611142565b60006106e7836001600160a01b038416611fb1565b610b5c827f8a1c15a8799f71b547e08e2bcb2e85257e81b0a07eee2ce6712549eef1f0097083612000565b80518251146118b1576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b81516000036118ec576040517f97da5f9500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b8251811015610e535761193483828151811061190d5761190d612b13565b602002602001015183838151811061192757611927612b13565b60200260200101516117d3565b6001016118ef565b6001600160a01b038416611963576040516324ecef4d60e01b815260040160405180910390fd5b6000838152600360205260409020546001600160a01b03161561199c576040516334c7b51160e01b8152600481018490526024016101c8565b6000838152600360205260409020546001600160a01b0316156119d5576040516334c7b51160e01b8152600481018490526024016101c8565b6002600081546119e490612dba565b909155506001600160a01b0384166000908152600460205260409020611a0a9084611e40565b50600083815260036020526040808220805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b03881690811790915590518592907fb333c813a7426a7a11e2b190cad52c44119421594b47f6f32ace6d8c7207b2bf90611a7990339088908890612d37565b60405180910390a46000336000868685604051602001611a9d959493929190612d6a565b6040516020818303038152906040529050610893858483611e77565b80600160008585604051602001611ada929190918252602082015260400190565b6040516020818303038152906040528051906020012081526020019081526020016000209081611b0a9190612c3b565b5081837fa6e4251f855f750545fe414f120db91c76b88def14d120969e5bb2d3f05debbb83604051611b3c9190612256565b60405180910390a3505050565b6000838152600560205260408120611b61908761204d565b905080611bac576040517f4aa31a8c0000000000000000000000000000000000000000000000000000000081526001600160a01b0387166004820152602481018590526044016101c8565b83856001600160a01b0316876001600160a01b03167fc78cd419d6136f9f1c1c6aec1d3fae098cffaf8bc86314a8f2685e32fe574e3c8686604051611bf2929190612dd3565b60405180910390a4505050505050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c83015291829101604051602081830303815290604052905080611c6b90612dee565b949350505050565b60006001600160e01b031982167f629aa69400000000000000000000000000000000000000000000000000000000148061068857506301ffc9a760e01b6001600160e01b0319831614610688565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d91506000519050828015611d48575060208210155b8015611d545750600081115b979650505050505050565b6001600160a01b038116600090815260018301602052604081205415156106e7565b60608160000180548060200260200160405190810160405280929190818152602001828054801561176357602002820191906000526020600020905b815481526020019060010190808311611dbd5750505050509050919050565b600081815260056020526040812090611df48261176f565b90506000805b82811015610ceb57611e0d846000612062565b9150611e2c828787600060405180602001604052806000815250611b49565b600101611dfa565b60006106e7838361206e565b60006106e78383611fb1565b610b5c827fb23eae7e6d1564b295b4c3e3be402d9a2f0776c57bdf365903496f6fa481ab0083612000565b611e8883631aed5a8560e21b611cc1565b15611f2257604051631aed5a8560e21b81526001600160a01b03841690636bb56a1490611edb907f0b084a55ebf70fd3c06fd755269dac2212c4d3f0f4d09079780bfa50c1b2984d908590600401612e12565b6000604051808303816000875af1158015611efa573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d5c9190810190612e2b565b81610e53576001600160a01b0383163b15611f74576040517f4349776d0000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201526024016101c8565b6040517f031731370000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201526024016101c8565b6000818152600183016020526040812054611ff857508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610688565b506000610688565b61201a6001600160a01b038416631aed5a8560e21b611cc1565b15610e5357604051631aed5a8560e21b81526001600160a01b03841690636bb56a1490611edb9085908590600401612e12565b60006106e7836001600160a01b03841661206e565b60006106e78383612161565b60008181526001830160205260408120548015612157576000612092600183612e99565b85549091506000906120a690600190612e99565b905081811461210b5760008660000182815481106120c6576120c6612b13565b90600052602060002001549050808760000184815481106120e9576120e9612b13565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061211c5761211c612eac565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610688565b6000915050610688565b600082600001828154811061217857612178612b13565b9060005260206000200154905092915050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b6000602082840312156121cc57600080fd5b81356001600160e01b0319811681146106e757600080fd5b600080604083850312156121f757600080fd5b50508035926020909101359150565b60005b83811015612221578181015183820152602001612209565b50506000910152565b60008151808452612242816020860160208601612206565b601f01601f19169290920160200192915050565b6020815260006106e7602083018461222a565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156122a8576122a8612269565b604052919050565b600067ffffffffffffffff8211156122ca576122ca612269565b5060051b60200190565b600082601f8301126122e557600080fd5b813560206122fa6122f5836122b0565b61227f565b82815260059290921b8401810191818101908684111561231957600080fd5b8286015b84811015612334578035835291830191830161231d565b509695505050505050565b6000806040838503121561235257600080fd5b823567ffffffffffffffff8082111561236a57600080fd5b612376868387016122d4565b9350602085013591508082111561238c57600080fd5b50612399858286016122d4565b9150509250929050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156123f857603f198886030184526123e685835161222a565b945092850192908501906001016123ca565b5092979650505050505050565b60006020828403121561241757600080fd5b5035919050565b80356001600160a01b038116811461243557600080fd5b919050565b6000806040838503121561244d57600080fd5b6124568361241e565b946020939093013593505050565b6020808252825182820181905260009190848201906040850190845b818110156124a55783516001600160a01b031683529284019291840191600101612480565b50909695505050505050565b8035801515811461243557600080fd5b600067ffffffffffffffff8211156124db576124db612269565b50601f01601f191660200190565b600082601f8301126124fa57600080fd5b81356125086122f5826124c1565b81815284602083860101111561251d57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561255257600080fd5b61255b8661241e565b94506125696020870161241e565b93506040860135925061257e606087016124b1565b9150608086013567ffffffffffffffff81111561259a57600080fd5b6125a6888289016124e9565b9150509295509295909350565b600080602083850312156125c657600080fd5b823567ffffffffffffffff808211156125de57600080fd5b818501915085601f8301126125f257600080fd5b81358181111561260157600080fd5b8660208260051b850101111561261657600080fd5b60209290920196919550909350505050565b60006020828403121561263a57600080fd5b6106e78261241e565b600082601f83011261265457600080fd5b813560206126646122f5836122b0565b82815260059290921b8401810191818101908684111561268357600080fd5b8286015b84811015612334576126988161241e565b8352918301918301612687565b600082601f8301126126b657600080fd5b813560206126c66122f5836122b0565b82815260059290921b840181019181810190868411156126e557600080fd5b8286015b84811015612334576126fa816124b1565b83529183019183016126e9565b600082601f83011261271857600080fd5b813560206127286122f5836122b0565b82815260059290921b8401810191818101908684111561274757600080fd5b8286015b8481101561233457803567ffffffffffffffff81111561276b5760008081fd5b6127798986838b01016124e9565b84525091830191830161274b565b600080600080600060a0868803121561279f57600080fd5b853567ffffffffffffffff808211156127b757600080fd5b6127c389838a01612643565b965060208801359150808211156127d957600080fd5b6127e589838a01612643565b955060408801359150808211156127fb57600080fd5b61280789838a016122d4565b9450606088013591508082111561281d57600080fd5b61282989838a016126a5565b9350608088013591508082111561283f57600080fd5b506125a688828901612707565b6000806040838503121561285f57600080fd5b82359150602083013567ffffffffffffffff81111561287d57600080fd5b612399858286016124e9565b60008060006060848603121561289e57600080fd5b6128a78461241e565b925060208401359150604084013567ffffffffffffffff8111156128ca57600080fd5b6128d6868287016124e9565b9150509250925092565b600080604083850312156128f357600080fd5b823567ffffffffffffffff8082111561290b57600080fd5b612917868387016122d4565b9350602085013591508082111561292d57600080fd5b5061239985828601612707565b6020808252825182820181905260009190848201906040850190845b818110156124a557835183529284019291840191600101612956565b6000806000806080858703121561298857600080fd5b6129918561241e565b9350602085013592506129a6604086016124b1565b9150606085013567ffffffffffffffff8111156129c257600080fd5b6129ce878288016124e9565b91505092959194509250565b6000806000606084860312156129ef57600080fd5b833567ffffffffffffffff80821115612a0757600080fd5b612a13878388016122d4565b94506020860135915080821115612a2957600080fd5b612a35878388016122d4565b93506040860135915080821115612a4b57600080fd5b506128d686828701612707565b600080600060608486031215612a6d57600080fd5b8335925060208401359150604084013567ffffffffffffffff8111156128ca57600080fd5b600060208284031215612aa457600080fd5b813567ffffffffffffffff811115612abb57600080fd5b611c6b848285016122d4565b8385823760609290921b6bffffffffffffffffffffffff1916919092019081526014810191909152603401919050565b60008251612b09818460208701612206565b9190910192915050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112612b4057600080fd5b83018035915067ffffffffffffffff821115612b5b57600080fd5b602001915036819003821315612b7057600080fd5b9250929050565b8183823760009101908152919050565b6001600160a01b03851681528360208201528215156040820152608060608201526000612bb7608083018461222a565b9695505050505050565b600181811c90821680612bd557607f821691505b602082108103610ffa57634e487b7160e01b600052602260045260246000fd5b601f821115610e5357600081815260208120601f850160051c81016020861015612c1c5750805b601f850160051c820191505b81811015610ceb57828155600101612c28565b815167ffffffffffffffff811115612c5557612c55612269565b612c6981612c638454612bc1565b84612bf5565b602080601f831160018114612c9e5760008415612c865750858301515b600019600386901b1c1916600185901b178555610ceb565b600085815260208120601f198616915b82811015612ccd57888601518255948401946001909101908401612cae565b5085821015612ceb5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b805160208201516bffffffffffffffffffffffff198082169291906014831015612d2f5780818460140360031b1b83161693505b505050919050565b6001600160a01b03841681528215156020820152606060408201526000612d61606083018461222a565b95945050505050565b60006001600160a01b038088168352808716602084015280861660408401525083606083015260a06080830152611d5460a083018461222a565b634e487b7160e01b600052601160045260246000fd5b600060018201612dcc57612dcc612da4565b5060010190565b8215158152604060208201526000611c6b604083018461222a565b80516020808301519190811015610ffa5760001960209190910360031b1b16919050565b828152604060208201526000611c6b604083018461222a565b600060208284031215612e3d57600080fd5b815167ffffffffffffffff811115612e5457600080fd5b8201601f81018413612e6557600080fd5b8051612e736122f5826124c1565b818152856020838501011115612e8857600080fd5b612d61826020830160208601612206565b8181038181111561068857610688612da4565b634e487b7160e01b600052603160045260246000fdfea2646970667358221220a0ec49f0bc9ee6398e43951bd876245c4f18db01b31cbbd66d35228f504785bc64736f6c63430008110033",
992
+ "deployedBytecode": "0x60806040526004361061018f5760003560e01c80637e87632c116100d6578063af255b611161007f578063db8c966311610059578063db8c96631461051f578063dedff9c61461053f578063f2fde38b1461055f57610203565b8063af255b61146104bf578063be9f0e6f146104df578063d6c1407c146104ff57610203565b80638da5cb5b116100b05780638da5cb5b14610461578063979024211461047f578063a3b261f21461049257610203565b80637e87632c1461040e5780637f23690c1461042e57806386a10ddd1461044157610203565b806349a6078d116101385780636963d438116101125780636963d438146103b957806370a08231146103d9578063715018a6146103f957610203565b806349a6078d1461034a578063511b69521461037757806354f6127f1461039957610203565b80631d26fce6116101695780631d26fce6146102c5578063217b2270146102f25780632a3654a41461032a57610203565b806301ffc9a71461024457806316e023b31461027957806318160ddd146102a657610203565b3661020357346000036101d15760405163e5099ee360e01b81526004016101c89060208082526004908201526000604082015260600190565b60405180910390fd5b6040517f61f4944200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000366060600482101561022e57828260405163e5099ee360e01b81526004016101c892919061218b565b610238838361057f565b80519350602001915050f35b34801561025057600080fd5b5061026461025f3660046121ba565b61068e565b60405190151581526020015b60405180910390f35b34801561028557600080fd5b506102996102943660046121e4565b6106db565b6040516102709190612256565b3480156102b257600080fd5b506002545b604051908152602001610270565b3480156102d157600080fd5b506102e56102e036600461233f565b6106ee565b60405161027091906123a3565b3480156102fe57600080fd5b5061031261030d366004612405565b6107d6565b6040516001600160a01b039091168152602001610270565b34801561033657600080fd5b5061026461034536600461243a565b61080f565b34801561035657600080fd5b5061036a610365366004612405565b61081b565b6040516102709190612464565b34801561038357600080fd5b5061039761039236600461253a565b61083d565b005b3480156103a557600080fd5b506102996103b4366004612405565b61089a565b3480156103c557600080fd5b506102e56103d43660046125b3565b6108a5565b3480156103e557600080fd5b506102b76103f4366004612628565b6109ee565b34801561040557600080fd5b50610397610a0f565b34801561041a57600080fd5b50610397610429366004612787565b610a23565b61039761043c36600461284c565b610b2b565b34801561044d57600080fd5b5061039761045c366004612889565b610b60565b34801561046d57600080fd5b506000546001600160a01b0316610312565b61039761048d3660046128e0565b610cf3565b34801561049e57600080fd5b506104b26104ad366004612628565b610d24565b604051610270919061293a565b3480156104cb57600080fd5b506103976104da366004612972565b610d48565b3480156104eb57600080fd5b506103976104fa3660046129da565b610d62565b34801561050b57600080fd5b5061039761051a366004612a58565b610e40565b34801561052b57600080fd5b5061039761053a366004612972565b610e58565b34801561054b57600080fd5b506102e561055a366004612a92565b610f55565b34801561056b57600080fd5b5061039761057a366004612628565b611000565b606060006105986000356001600160e01b03191661124d565b5090506001600160a01b0381166105e9576040517fbb370b2b0000000000000000000000000000000000000000000000000000000081526001600160e01b03196000351660048201526024016101c8565b600080826001600160a01b0316348787333460405160200161060e9493929190612ac7565b60408051601f198184030181529082905261062891612af7565b60006040518083038185875af1925050503d8060008114610665576040519150601f19603f3d011682016040523d82523d6000602084013e61066a565b606091505b5091509150811561067f579250610688915050565b80518060208301fd5b92915050565b60006001600160e01b031982167f3a2717060000000000000000000000000000000000000000000000000000000014806106cc57506106cc826112f7565b80610688575061068882611335565b60606106e7838361136c565b9392505050565b60608151835114610712576040516317d38eff60e11b815260040160405180910390fd5b825167ffffffffffffffff81111561072c5761072c612269565b60405190808252806020026020018201604052801561075f57816020015b606081526020019060019003908161074a5790505b50905060005b83518110156107cf576107aa84828151811061078357610783612b13565b602002602001015184838151811061079d5761079d612b13565b602002602001015161136c565b8282815181106107bc576107bc612b13565b6020908102919091010152600101610765565b5092915050565b6000818152600360205260408120546001600160a01b03168061068857604051635747cd1b60e11b8152600481018490526024016101c8565b60006106e78383611443565b606061082682611480565b6000828152600560205260409020610688906114b8565b6108473384611443565b610886576040517f1294d2a9000000000000000000000000000000000000000000000000000000008152600481018490523360248201526044016101c8565b61089385858585856114c5565b5050505050565b6060610688826116cd565b60608167ffffffffffffffff8111156108c0576108c0612269565b6040519080825280602002602001820160405280156108f357816020015b60608152602001906001900390816108de5790505b50905060005b828110156107cf576000803086868581811061091757610917612b13565b90506020028101906109299190612b29565b604051610937929190612b77565b600060405180830381855af49150503d8060008114610972576040519150601f19603f3d011682016040523d82523d6000602084013e610977565b606091505b5091509150816109c6578051156109915780518082602001fd5b6040517f234eb819000000000000000000000000000000000000000000000000000000008152600481018490526024016101c8565b808484815181106109d9576109d9612b13565b602090810291909101015250506001016108f9565b6001600160a01b03811660009081526004602052604081206106889061176f565b610a17611779565b610a216000611090565b565b8451845181141580610a36575083518114155b80610a42575082518114155b80610a4e575081518114155b15610a85576040517f93a8311900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81811015610b2257610b1a878281518110610aa557610aa5612b13565b6020026020010151878381518110610abf57610abf612b13565b6020026020010151878481518110610ad957610ad9612b13565b6020026020010151878581518110610af357610af3612b13565b6020026020010151878681518110610b0d57610b0d612b13565b602002602001015161083d565b600101610a88565b50505050505050565b610b33611779565b3415610b525760405163f36ba73760e01b815260040160405180910390fd5b610b5c82826117d3565b5050565b6000610b6b836107d6565b90506001600160a01b0381163314610bae57604051632d938f5160e11b81526001600160a01b0382166004820152602481018490523360448201526064016101c8565b6001600160a01b038416610bd557604051639577b8b360e01b815260040160405180910390fd5b836001600160a01b0316816001600160a01b031603610c07576040516344fed6b160e11b815260040160405180910390fd5b6000838152600560205260408120610c1f9086611836565b905080610c6a576040517fa7626b680000000000000000000000000000000000000000000000000000000081526001600160a01b0386166004820152602481018590526044016101c8565b83826001600160a01b0316866001600160a01b03167f1b1b58aa2ec0cec2228b2d37124556d41f5a1f7b12f089171f896cc23667121586604051610cae9190612256565b60405180910390a460003385600186604051602001610cd09493929190612b87565b6040516020818303038152906040529050610ceb868261184b565b505050505050565b610cfb611779565b3415610d1a5760405163f36ba73760e01b815260040160405180910390fd5b610b5c8282611876565b6001600160a01b0381166000908152600460205260409020606090610688906114b8565b610d50611779565b610d5c8484848461193c565b50505050565b610d6a611779565b81518351141580610d7d57508051825114155b15610d9b576040516317d38eff60e11b815260040160405180910390fd5b8251600003610dd6576040517f80c9830500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b8351811015610d5c57610e38848281518110610df757610df7612b13565b6020026020010151848381518110610e1157610e11612b13565b6020026020010151848481518110610e2b57610e2b612b13565b6020026020010151611ab9565b600101610dd9565b610e48611779565b610e53838383611ab9565b505050565b6000610e63846107d6565b9050336001600160a01b03821614610ecf576001600160a01b0385163314610ecf576040517f760b5acd0000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b0382166024820152604481018590526064016101c8565b6001600160a01b038516610ef657604051639577b8b360e01b815260040160405180910390fd5b846001600160a01b0316816001600160a01b031603610f28576040516344fed6b160e11b815260040160405180910390fd5b610f358582868686611b49565b82156108935760008185600085604051602001610cd09493929190612b87565b6060815167ffffffffffffffff811115610f7157610f71612269565b604051908082528060200260200182016040528015610fa457816020015b6060815260200190600190039081610f8f5790505b50905060005b8251811015610ffa57610fd5838281518110610fc857610fc8612b13565b60200260200101516116cd565b828281518110610fe757610fe7612b13565b6020908102919091010152600101610faa565b50919050565b611008611779565b6001600160a01b0381166110845760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016101c8565b61108d81611090565b50565b600080546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60008281526001602052604090206111058282612c3b565b50817fece574603820d07bc9b91f2a932baadf4628aabcb8afba49776529c14a6104b2826040516111369190612256565b60405180910390a25050565b7f2145e1d6d074577dc71ef54c3807742b41b053a9352ae6b491331509acb9750f820161119b576040517f85c169bd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fd0f59754f88971fe6bc5a6618cc9d5f1e859c58d16b22d1c7b2d3e2b246cd8aa82016111f4576040517f76755b3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f1fd9e056a24d14c4abc642fcc325992a946906d0dbc57dd70278aaf12842024d82016110ed576040517f4ef6d7fb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080806112857fcee78b4094da86011096000000000000000000000000000000000000000000006001600160e01b03198616611c02565b90506000611292826116cd565b905080516014141580156112a65750805115155b156112df57806040517f42bfe79f0000000000000000000000000000000000000000000000000000000081526004016101c89190612256565b6112e881612cfb565b60601c95600195509350505050565b60006001600160e01b031982167fa918fa6b000000000000000000000000000000000000000000000000000000001480610688575061068882611c73565b6000806113486301ffc9a760e01b61124d565b5090506001600160a01b0381166113625750600092915050565b6106e78184611cc1565b606060016000848460405160200161138e929190918252602082015260400190565b60405160208183030381529060405280519060200120815260200190815260200160002080546113bd90612bc1565b80601f01602080910402602001604051908101604052809291908181526020018280546113e990612bc1565b80156114365780601f1061140b57610100808354040283529160200191611436565b820191906000526020600020905b81548152906001019060200180831161141957829003601f168201915b5050505050905092915050565b600061144e826107d6565b6001600160a01b0316836001600160a01b031614806106e7575060008281526005602052604090206106e79084611d5f565b6000818152600360205260409020546001600160a01b031661108d57604051635747cd1b60e11b8152600481018290526024016101c8565b606060006106e783611d81565b60006114d0846107d6565b9050856001600160a01b0316816001600160a01b03161461151e57604051632d938f5160e11b81526001600160a01b03808316600483015260248201869052871660448201526064016101c8565b6001600160a01b038516611545576040516324ecef4d60e01b815260040160405180910390fd5b6000611550856107d6565b9050806001600160a01b0316826001600160a01b0316146115b7576040517f5a9c31d3000000000000000000000000000000000000000000000000000000008152600481018690526001600160a01b038084166024830152821660448201526064016101c8565b6115c18786611ddc565b6001600160a01b03871660009081526004602052604090206115e39086611e34565b506001600160a01b03861660009081526004602052604090206116069086611e40565b5060008581526003602052604090819020805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0389811691821790925591518792918a16907fb333c813a7426a7a11e2b190cad52c44119421594b47f6f32ace6d8c7207b2bf9061167a9033908a908a90612d37565b60405180910390a46000338888888760405160200161169d959493929190612d6a565b60405160208183030381529060405290506116b88882611e4c565b6116c3878683611e77565b5050505050505050565b60008181526001602052604090208054606091906116ea90612bc1565b80601f016020809104026020016040519081016040528092919081815260200182805461171690612bc1565b80156117635780601f1061173857610100808354040283529160200191611763565b820191906000526020600020905b81548152906001019060200180831161174657829003601f168201915b50505050509050919050565b6000610688825490565b6000546001600160a01b03163314610a215760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101c8565b7f098a16c9e50e3e99b3e797305c146898d294e5aec55a47e213cb3611ccf17e73820161182c576040517f3664800a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610b5c8282611142565b60006106e7836001600160a01b038416611fb1565b610b5c827f8a1c15a8799f71b547e08e2bcb2e85257e81b0a07eee2ce6712549eef1f0097083612000565b80518251146118b1576040517f3bcc897900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b81516000036118ec576040517f97da5f9500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b8251811015610e535761193483828151811061190d5761190d612b13565b602002602001015183838151811061192757611927612b13565b60200260200101516117d3565b6001016118ef565b6001600160a01b038416611963576040516324ecef4d60e01b815260040160405180910390fd5b6000838152600360205260409020546001600160a01b03161561199c576040516334c7b51160e01b8152600481018490526024016101c8565b6000838152600360205260409020546001600160a01b0316156119d5576040516334c7b51160e01b8152600481018490526024016101c8565b6002600081546119e490612dba565b909155506001600160a01b0384166000908152600460205260409020611a0a9084611e40565b50600083815260036020526040808220805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b03881690811790915590518592907fb333c813a7426a7a11e2b190cad52c44119421594b47f6f32ace6d8c7207b2bf90611a7990339088908890612d37565b60405180910390a46000336000868685604051602001611a9d959493929190612d6a565b6040516020818303038152906040529050610893858483611e77565b80600160008585604051602001611ada929190918252602082015260400190565b6040516020818303038152906040528051906020012081526020019081526020016000209081611b0a9190612c3b565b5081837fa6e4251f855f750545fe414f120db91c76b88def14d120969e5bb2d3f05debbb83604051611b3c9190612256565b60405180910390a3505050565b6000838152600560205260408120611b61908761204d565b905080611bac576040517f4aa31a8c0000000000000000000000000000000000000000000000000000000081526001600160a01b0387166004820152602481018590526044016101c8565b83856001600160a01b0316876001600160a01b03167fc78cd419d6136f9f1c1c6aec1d3fae098cffaf8bc86314a8f2685e32fe574e3c8686604051611bf2929190612dd3565b60405180910390a4505050505050565b604080517fffffffffffffffffffff00000000000000000000000000000000000000000000841660208201526000602a82018190526bffffffffffffffffffffffff198416602c83015291829101604051602081830303815290604052905080611c6b90612dee565b949350505050565b60006001600160e01b031982167f629aa69400000000000000000000000000000000000000000000000000000000148061068857506301ffc9a760e01b6001600160e01b0319831614610688565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d91506000519050828015611d48575060208210155b8015611d545750600081115b979650505050505050565b6001600160a01b038116600090815260018301602052604081205415156106e7565b60608160000180548060200260200160405190810160405280929190818152602001828054801561176357602002820191906000526020600020905b815481526020019060010190808311611dbd5750505050509050919050565b600081815260056020526040812090611df48261176f565b90506000805b82811015610ceb57611e0d846000612062565b9150611e2c828787600060405180602001604052806000815250611b49565b600101611dfa565b60006106e7838361206e565b60006106e78383611fb1565b610b5c827fb23eae7e6d1564b295b4c3e3be402d9a2f0776c57bdf365903496f6fa481ab0083612000565b611e8883631aed5a8560e21b611cc1565b15611f2257604051631aed5a8560e21b81526001600160a01b03841690636bb56a1490611edb907f0b084a55ebf70fd3c06fd755269dac2212c4d3f0f4d09079780bfa50c1b2984d908590600401612e12565b6000604051808303816000875af1158015611efa573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d5c9190810190612e2b565b81610e53576001600160a01b0383163b15611f74576040517f4349776d0000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201526024016101c8565b6040517f031731370000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201526024016101c8565b6000818152600183016020526040812054611ff857508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610688565b506000610688565b61201a6001600160a01b038416631aed5a8560e21b611cc1565b15610e5357604051631aed5a8560e21b81526001600160a01b03841690636bb56a1490611edb9085908590600401612e12565b60006106e7836001600160a01b03841661206e565b60006106e78383612161565b60008181526001830160205260408120548015612157576000612092600183612e99565b85549091506000906120a690600190612e99565b905081811461210b5760008660000182815481106120c6576120c6612b13565b90600052602060002001549050808760000184815481106120e9576120e9612b13565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061211c5761211c612eac565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610688565b6000915050610688565b600082600001828154811061217857612178612b13565b9060005260206000200154905092915050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b6000602082840312156121cc57600080fd5b81356001600160e01b0319811681146106e757600080fd5b600080604083850312156121f757600080fd5b50508035926020909101359150565b60005b83811015612221578181015183820152602001612209565b50506000910152565b60008151808452612242816020860160208601612206565b601f01601f19169290920160200192915050565b6020815260006106e7602083018461222a565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156122a8576122a8612269565b604052919050565b600067ffffffffffffffff8211156122ca576122ca612269565b5060051b60200190565b600082601f8301126122e557600080fd5b813560206122fa6122f5836122b0565b61227f565b82815260059290921b8401810191818101908684111561231957600080fd5b8286015b84811015612334578035835291830191830161231d565b509695505050505050565b6000806040838503121561235257600080fd5b823567ffffffffffffffff8082111561236a57600080fd5b612376868387016122d4565b9350602085013591508082111561238c57600080fd5b50612399858286016122d4565b9150509250929050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b828110156123f857603f198886030184526123e685835161222a565b945092850192908501906001016123ca565b5092979650505050505050565b60006020828403121561241757600080fd5b5035919050565b80356001600160a01b038116811461243557600080fd5b919050565b6000806040838503121561244d57600080fd5b6124568361241e565b946020939093013593505050565b6020808252825182820181905260009190848201906040850190845b818110156124a55783516001600160a01b031683529284019291840191600101612480565b50909695505050505050565b8035801515811461243557600080fd5b600067ffffffffffffffff8211156124db576124db612269565b50601f01601f191660200190565b600082601f8301126124fa57600080fd5b81356125086122f5826124c1565b81815284602083860101111561251d57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561255257600080fd5b61255b8661241e565b94506125696020870161241e565b93506040860135925061257e606087016124b1565b9150608086013567ffffffffffffffff81111561259a57600080fd5b6125a6888289016124e9565b9150509295509295909350565b600080602083850312156125c657600080fd5b823567ffffffffffffffff808211156125de57600080fd5b818501915085601f8301126125f257600080fd5b81358181111561260157600080fd5b8660208260051b850101111561261657600080fd5b60209290920196919550909350505050565b60006020828403121561263a57600080fd5b6106e78261241e565b600082601f83011261265457600080fd5b813560206126646122f5836122b0565b82815260059290921b8401810191818101908684111561268357600080fd5b8286015b84811015612334576126988161241e565b8352918301918301612687565b600082601f8301126126b657600080fd5b813560206126c66122f5836122b0565b82815260059290921b840181019181810190868411156126e557600080fd5b8286015b84811015612334576126fa816124b1565b83529183019183016126e9565b600082601f83011261271857600080fd5b813560206127286122f5836122b0565b82815260059290921b8401810191818101908684111561274757600080fd5b8286015b8481101561233457803567ffffffffffffffff81111561276b5760008081fd5b6127798986838b01016124e9565b84525091830191830161274b565b600080600080600060a0868803121561279f57600080fd5b853567ffffffffffffffff808211156127b757600080fd5b6127c389838a01612643565b965060208801359150808211156127d957600080fd5b6127e589838a01612643565b955060408801359150808211156127fb57600080fd5b61280789838a016122d4565b9450606088013591508082111561281d57600080fd5b61282989838a016126a5565b9350608088013591508082111561283f57600080fd5b506125a688828901612707565b6000806040838503121561285f57600080fd5b82359150602083013567ffffffffffffffff81111561287d57600080fd5b612399858286016124e9565b60008060006060848603121561289e57600080fd5b6128a78461241e565b925060208401359150604084013567ffffffffffffffff8111156128ca57600080fd5b6128d6868287016124e9565b9150509250925092565b600080604083850312156128f357600080fd5b823567ffffffffffffffff8082111561290b57600080fd5b612917868387016122d4565b9350602085013591508082111561292d57600080fd5b5061239985828601612707565b6020808252825182820181905260009190848201906040850190845b818110156124a557835183529284019291840191600101612956565b6000806000806080858703121561298857600080fd5b6129918561241e565b9350602085013592506129a6604086016124b1565b9150606085013567ffffffffffffffff8111156129c257600080fd5b6129ce878288016124e9565b91505092959194509250565b6000806000606084860312156129ef57600080fd5b833567ffffffffffffffff80821115612a0757600080fd5b612a13878388016122d4565b94506020860135915080821115612a2957600080fd5b612a35878388016122d4565b93506040860135915080821115612a4b57600080fd5b506128d686828701612707565b600080600060608486031215612a6d57600080fd5b8335925060208401359150604084013567ffffffffffffffff8111156128ca57600080fd5b600060208284031215612aa457600080fd5b813567ffffffffffffffff811115612abb57600080fd5b611c6b848285016122d4565b8385823760609290921b6bffffffffffffffffffffffff1916919092019081526014810191909152603401919050565b60008251612b09818460208701612206565b9190910192915050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112612b4057600080fd5b83018035915067ffffffffffffffff821115612b5b57600080fd5b602001915036819003821315612b7057600080fd5b9250929050565b8183823760009101908152919050565b6001600160a01b03851681528360208201528215156040820152608060608201526000612bb7608083018461222a565b9695505050505050565b600181811c90821680612bd557607f821691505b602082108103610ffa57634e487b7160e01b600052602260045260246000fd5b601f821115610e5357600081815260208120601f850160051c81016020861015612c1c5750805b601f850160051c820191505b81811015610ceb57828155600101612c28565b815167ffffffffffffffff811115612c5557612c55612269565b612c6981612c638454612bc1565b84612bf5565b602080601f831160018114612c9e5760008415612c865750858301515b600019600386901b1c1916600185901b178555610ceb565b600085815260208120601f198616915b82811015612ccd57888601518255948401946001909101908401612cae565b5085821015612ceb5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b805160208201516bffffffffffffffffffffffff198082169291906014831015612d2f5780818460140360031b1b83161693505b505050919050565b6001600160a01b03841681528215156020820152606060408201526000612d61606083018461222a565b95945050505050565b60006001600160a01b038088168352808716602084015280861660408401525083606083015260a06080830152611d5460a083018461222a565b634e487b7160e01b600052601160045260246000fd5b600060018201612dcc57612dcc612da4565b5060010190565b8215158152604060208201526000611c6b604083018461222a565b80516020808301519190811015610ffa5760001960209190910360031b1b16919050565b828152604060208201526000611c6b604083018461222a565b600060208284031215612e3d57600080fd5b815167ffffffffffffffff811115612e5457600080fd5b8201601f81018413612e6557600080fd5b8051612e736122f5826124c1565b818152856020838501011115612e8857600080fd5b612d61826020830160208601612206565b8181038181111561068857610688612da4565b634e487b7160e01b600052603160045260246000fdfea2646970667358221220a0ec49f0bc9ee6398e43951bd876245c4f18db01b31cbbd66d35228f504785bc64736f6c63430008110033",
993
+ "linkReferences": {},
994
+ "deployedLinkReferences": {}
995
+ }