@aqb-foundation/aqb-agent 0.0.0-stage → 1.0.1

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,730 @@
1
+ {
2
+ "file": "contracts/AgentQuantumCredit.sol",
3
+ "abi": [
4
+ {
5
+ "inputs": [
6
+ {
7
+ "internalType": "address",
8
+ "name": "usdc_",
9
+ "type": "address"
10
+ },
11
+ {
12
+ "internalType": "address",
13
+ "name": "registry_",
14
+ "type": "address"
15
+ },
16
+ {
17
+ "internalType": "address",
18
+ "name": "governor_",
19
+ "type": "address"
20
+ }
21
+ ],
22
+ "stateMutability": "nonpayable",
23
+ "type": "constructor"
24
+ },
25
+ {
26
+ "inputs": [],
27
+ "name": "AlreadyGenesis",
28
+ "type": "error"
29
+ },
30
+ {
31
+ "inputs": [],
32
+ "name": "BadAmount",
33
+ "type": "error"
34
+ },
35
+ {
36
+ "inputs": [],
37
+ "name": "CapExceeded",
38
+ "type": "error"
39
+ },
40
+ {
41
+ "inputs": [],
42
+ "name": "NotAgent",
43
+ "type": "error"
44
+ },
45
+ {
46
+ "inputs": [],
47
+ "name": "NotGovernor",
48
+ "type": "error"
49
+ },
50
+ {
51
+ "inputs": [],
52
+ "name": "NotSale",
53
+ "type": "error"
54
+ },
55
+ {
56
+ "inputs": [],
57
+ "name": "SaleStillOpen",
58
+ "type": "error"
59
+ },
60
+ {
61
+ "inputs": [],
62
+ "name": "TransferBlocked",
63
+ "type": "error"
64
+ },
65
+ {
66
+ "anonymous": false,
67
+ "inputs": [
68
+ {
69
+ "indexed": false,
70
+ "internalType": "uint256",
71
+ "name": "amount",
72
+ "type": "uint256"
73
+ }
74
+ ],
75
+ "name": "AllotmentSold",
76
+ "type": "event"
77
+ },
78
+ {
79
+ "anonymous": false,
80
+ "inputs": [
81
+ {
82
+ "indexed": true,
83
+ "internalType": "address",
84
+ "name": "owner",
85
+ "type": "address"
86
+ },
87
+ {
88
+ "indexed": true,
89
+ "internalType": "address",
90
+ "name": "spender",
91
+ "type": "address"
92
+ },
93
+ {
94
+ "indexed": false,
95
+ "internalType": "uint256",
96
+ "name": "amount",
97
+ "type": "uint256"
98
+ }
99
+ ],
100
+ "name": "Approval",
101
+ "type": "event"
102
+ },
103
+ {
104
+ "anonymous": false,
105
+ "inputs": [
106
+ {
107
+ "indexed": false,
108
+ "internalType": "uint256",
109
+ "name": "usdIn",
110
+ "type": "uint256"
111
+ }
112
+ ],
113
+ "name": "BackingDeposited",
114
+ "type": "event"
115
+ },
116
+ {
117
+ "anonymous": false,
118
+ "inputs": [
119
+ {
120
+ "indexed": true,
121
+ "internalType": "address",
122
+ "name": "to",
123
+ "type": "address"
124
+ },
125
+ {
126
+ "indexed": false,
127
+ "internalType": "uint256",
128
+ "name": "amount",
129
+ "type": "uint256"
130
+ }
131
+ ],
132
+ "name": "GenesisMinted",
133
+ "type": "event"
134
+ },
135
+ {
136
+ "anonymous": false,
137
+ "inputs": [
138
+ {
139
+ "indexed": true,
140
+ "internalType": "address",
141
+ "name": "governor",
142
+ "type": "address"
143
+ }
144
+ ],
145
+ "name": "GovernorSet",
146
+ "type": "event"
147
+ },
148
+ {
149
+ "anonymous": false,
150
+ "inputs": [
151
+ {
152
+ "indexed": true,
153
+ "internalType": "address",
154
+ "name": "agent",
155
+ "type": "address"
156
+ },
157
+ {
158
+ "indexed": false,
159
+ "internalType": "uint256",
160
+ "name": "usdIn",
161
+ "type": "uint256"
162
+ },
163
+ {
164
+ "indexed": false,
165
+ "internalType": "uint256",
166
+ "name": "aqbOut",
167
+ "type": "uint256"
168
+ }
169
+ ],
170
+ "name": "Minted",
171
+ "type": "event"
172
+ },
173
+ {
174
+ "anonymous": false,
175
+ "inputs": [
176
+ {
177
+ "indexed": true,
178
+ "internalType": "address",
179
+ "name": "venue",
180
+ "type": "address"
181
+ },
182
+ {
183
+ "indexed": false,
184
+ "internalType": "bool",
185
+ "name": "allowed",
186
+ "type": "bool"
187
+ }
188
+ ],
189
+ "name": "PoolSet",
190
+ "type": "event"
191
+ },
192
+ {
193
+ "anonymous": false,
194
+ "inputs": [
195
+ {
196
+ "indexed": true,
197
+ "internalType": "address",
198
+ "name": "agent",
199
+ "type": "address"
200
+ },
201
+ {
202
+ "indexed": false,
203
+ "internalType": "uint256",
204
+ "name": "aqbIn",
205
+ "type": "uint256"
206
+ },
207
+ {
208
+ "indexed": false,
209
+ "internalType": "uint256",
210
+ "name": "usdOut",
211
+ "type": "uint256"
212
+ }
213
+ ],
214
+ "name": "Redeemed",
215
+ "type": "event"
216
+ },
217
+ {
218
+ "anonymous": false,
219
+ "inputs": [],
220
+ "name": "SaleClosed",
221
+ "type": "event"
222
+ },
223
+ {
224
+ "anonymous": false,
225
+ "inputs": [
226
+ {
227
+ "indexed": true,
228
+ "internalType": "address",
229
+ "name": "sale",
230
+ "type": "address"
231
+ }
232
+ ],
233
+ "name": "SaleSet",
234
+ "type": "event"
235
+ },
236
+ {
237
+ "anonymous": false,
238
+ "inputs": [
239
+ {
240
+ "indexed": true,
241
+ "internalType": "address",
242
+ "name": "from",
243
+ "type": "address"
244
+ },
245
+ {
246
+ "indexed": true,
247
+ "internalType": "address",
248
+ "name": "to",
249
+ "type": "address"
250
+ },
251
+ {
252
+ "indexed": false,
253
+ "internalType": "uint256",
254
+ "name": "amount",
255
+ "type": "uint256"
256
+ }
257
+ ],
258
+ "name": "Transfer",
259
+ "type": "event"
260
+ },
261
+ {
262
+ "inputs": [],
263
+ "name": "MAX_SUPPLY",
264
+ "outputs": [
265
+ {
266
+ "internalType": "uint256",
267
+ "name": "",
268
+ "type": "uint256"
269
+ }
270
+ ],
271
+ "stateMutability": "view",
272
+ "type": "function"
273
+ },
274
+ {
275
+ "inputs": [
276
+ {
277
+ "internalType": "address",
278
+ "name": "",
279
+ "type": "address"
280
+ },
281
+ {
282
+ "internalType": "address",
283
+ "name": "",
284
+ "type": "address"
285
+ }
286
+ ],
287
+ "name": "allowance",
288
+ "outputs": [
289
+ {
290
+ "internalType": "uint256",
291
+ "name": "",
292
+ "type": "uint256"
293
+ }
294
+ ],
295
+ "stateMutability": "view",
296
+ "type": "function"
297
+ },
298
+ {
299
+ "inputs": [
300
+ {
301
+ "internalType": "address",
302
+ "name": "spender",
303
+ "type": "address"
304
+ },
305
+ {
306
+ "internalType": "uint256",
307
+ "name": "amount",
308
+ "type": "uint256"
309
+ }
310
+ ],
311
+ "name": "approve",
312
+ "outputs": [
313
+ {
314
+ "internalType": "bool",
315
+ "name": "",
316
+ "type": "bool"
317
+ }
318
+ ],
319
+ "stateMutability": "nonpayable",
320
+ "type": "function"
321
+ },
322
+ {
323
+ "inputs": [],
324
+ "name": "backedSupply",
325
+ "outputs": [
326
+ {
327
+ "internalType": "uint256",
328
+ "name": "",
329
+ "type": "uint256"
330
+ }
331
+ ],
332
+ "stateMutability": "view",
333
+ "type": "function"
334
+ },
335
+ {
336
+ "inputs": [],
337
+ "name": "backing",
338
+ "outputs": [
339
+ {
340
+ "internalType": "uint256",
341
+ "name": "",
342
+ "type": "uint256"
343
+ }
344
+ ],
345
+ "stateMutability": "view",
346
+ "type": "function"
347
+ },
348
+ {
349
+ "inputs": [
350
+ {
351
+ "internalType": "address",
352
+ "name": "",
353
+ "type": "address"
354
+ }
355
+ ],
356
+ "name": "balanceOf",
357
+ "outputs": [
358
+ {
359
+ "internalType": "uint256",
360
+ "name": "",
361
+ "type": "uint256"
362
+ }
363
+ ],
364
+ "stateMutability": "view",
365
+ "type": "function"
366
+ },
367
+ {
368
+ "inputs": [],
369
+ "name": "closeSale",
370
+ "outputs": [],
371
+ "stateMutability": "nonpayable",
372
+ "type": "function"
373
+ },
374
+ {
375
+ "inputs": [],
376
+ "name": "collateralRatio",
377
+ "outputs": [
378
+ {
379
+ "internalType": "uint256",
380
+ "name": "",
381
+ "type": "uint256"
382
+ }
383
+ ],
384
+ "stateMutability": "view",
385
+ "type": "function"
386
+ },
387
+ {
388
+ "inputs": [],
389
+ "name": "decimals",
390
+ "outputs": [
391
+ {
392
+ "internalType": "uint8",
393
+ "name": "",
394
+ "type": "uint8"
395
+ }
396
+ ],
397
+ "stateMutability": "view",
398
+ "type": "function"
399
+ },
400
+ {
401
+ "inputs": [
402
+ {
403
+ "internalType": "uint256",
404
+ "name": "usdAmount",
405
+ "type": "uint256"
406
+ }
407
+ ],
408
+ "name": "depositBacking",
409
+ "outputs": [],
410
+ "stateMutability": "nonpayable",
411
+ "type": "function"
412
+ },
413
+ {
414
+ "inputs": [
415
+ {
416
+ "internalType": "address",
417
+ "name": "to",
418
+ "type": "address"
419
+ },
420
+ {
421
+ "internalType": "uint256",
422
+ "name": "amount",
423
+ "type": "uint256"
424
+ }
425
+ ],
426
+ "name": "genesisMint",
427
+ "outputs": [],
428
+ "stateMutability": "nonpayable",
429
+ "type": "function"
430
+ },
431
+ {
432
+ "inputs": [],
433
+ "name": "genesisSupply",
434
+ "outputs": [
435
+ {
436
+ "internalType": "uint256",
437
+ "name": "",
438
+ "type": "uint256"
439
+ }
440
+ ],
441
+ "stateMutability": "view",
442
+ "type": "function"
443
+ },
444
+ {
445
+ "inputs": [],
446
+ "name": "genesisUnsold",
447
+ "outputs": [
448
+ {
449
+ "internalType": "uint256",
450
+ "name": "",
451
+ "type": "uint256"
452
+ }
453
+ ],
454
+ "stateMutability": "view",
455
+ "type": "function"
456
+ },
457
+ {
458
+ "inputs": [],
459
+ "name": "governor",
460
+ "outputs": [
461
+ {
462
+ "internalType": "address",
463
+ "name": "",
464
+ "type": "address"
465
+ }
466
+ ],
467
+ "stateMutability": "view",
468
+ "type": "function"
469
+ },
470
+ {
471
+ "inputs": [
472
+ {
473
+ "internalType": "uint256",
474
+ "name": "usdAmount",
475
+ "type": "uint256"
476
+ }
477
+ ],
478
+ "name": "mint",
479
+ "outputs": [
480
+ {
481
+ "internalType": "uint256",
482
+ "name": "aqbOut",
483
+ "type": "uint256"
484
+ }
485
+ ],
486
+ "stateMutability": "nonpayable",
487
+ "type": "function"
488
+ },
489
+ {
490
+ "inputs": [],
491
+ "name": "name",
492
+ "outputs": [
493
+ {
494
+ "internalType": "string",
495
+ "name": "",
496
+ "type": "string"
497
+ }
498
+ ],
499
+ "stateMutability": "view",
500
+ "type": "function"
501
+ },
502
+ {
503
+ "inputs": [
504
+ {
505
+ "internalType": "uint256",
506
+ "name": "amount",
507
+ "type": "uint256"
508
+ }
509
+ ],
510
+ "name": "noteSold",
511
+ "outputs": [],
512
+ "stateMutability": "nonpayable",
513
+ "type": "function"
514
+ },
515
+ {
516
+ "inputs": [
517
+ {
518
+ "internalType": "address",
519
+ "name": "",
520
+ "type": "address"
521
+ }
522
+ ],
523
+ "name": "pool",
524
+ "outputs": [
525
+ {
526
+ "internalType": "bool",
527
+ "name": "",
528
+ "type": "bool"
529
+ }
530
+ ],
531
+ "stateMutability": "view",
532
+ "type": "function"
533
+ },
534
+ {
535
+ "inputs": [
536
+ {
537
+ "internalType": "uint256",
538
+ "name": "aqbAmount",
539
+ "type": "uint256"
540
+ }
541
+ ],
542
+ "name": "redeem",
543
+ "outputs": [
544
+ {
545
+ "internalType": "uint256",
546
+ "name": "usdOut",
547
+ "type": "uint256"
548
+ }
549
+ ],
550
+ "stateMutability": "nonpayable",
551
+ "type": "function"
552
+ },
553
+ {
554
+ "inputs": [],
555
+ "name": "registry",
556
+ "outputs": [
557
+ {
558
+ "internalType": "contract AgentRegistry",
559
+ "name": "",
560
+ "type": "address"
561
+ }
562
+ ],
563
+ "stateMutability": "view",
564
+ "type": "function"
565
+ },
566
+ {
567
+ "inputs": [],
568
+ "name": "sale",
569
+ "outputs": [
570
+ {
571
+ "internalType": "address",
572
+ "name": "",
573
+ "type": "address"
574
+ }
575
+ ],
576
+ "stateMutability": "view",
577
+ "type": "function"
578
+ },
579
+ {
580
+ "inputs": [],
581
+ "name": "saleOpen",
582
+ "outputs": [
583
+ {
584
+ "internalType": "bool",
585
+ "name": "",
586
+ "type": "bool"
587
+ }
588
+ ],
589
+ "stateMutability": "view",
590
+ "type": "function"
591
+ },
592
+ {
593
+ "inputs": [
594
+ {
595
+ "internalType": "address",
596
+ "name": "g",
597
+ "type": "address"
598
+ }
599
+ ],
600
+ "name": "setGovernor",
601
+ "outputs": [],
602
+ "stateMutability": "nonpayable",
603
+ "type": "function"
604
+ },
605
+ {
606
+ "inputs": [
607
+ {
608
+ "internalType": "address",
609
+ "name": "venue",
610
+ "type": "address"
611
+ },
612
+ {
613
+ "internalType": "bool",
614
+ "name": "allowed",
615
+ "type": "bool"
616
+ }
617
+ ],
618
+ "name": "setPool",
619
+ "outputs": [],
620
+ "stateMutability": "nonpayable",
621
+ "type": "function"
622
+ },
623
+ {
624
+ "inputs": [
625
+ {
626
+ "internalType": "address",
627
+ "name": "sale_",
628
+ "type": "address"
629
+ }
630
+ ],
631
+ "name": "setSale",
632
+ "outputs": [],
633
+ "stateMutability": "nonpayable",
634
+ "type": "function"
635
+ },
636
+ {
637
+ "inputs": [],
638
+ "name": "symbol",
639
+ "outputs": [
640
+ {
641
+ "internalType": "string",
642
+ "name": "",
643
+ "type": "string"
644
+ }
645
+ ],
646
+ "stateMutability": "view",
647
+ "type": "function"
648
+ },
649
+ {
650
+ "inputs": [],
651
+ "name": "totalSupply",
652
+ "outputs": [
653
+ {
654
+ "internalType": "uint256",
655
+ "name": "",
656
+ "type": "uint256"
657
+ }
658
+ ],
659
+ "stateMutability": "view",
660
+ "type": "function"
661
+ },
662
+ {
663
+ "inputs": [
664
+ {
665
+ "internalType": "address",
666
+ "name": "to",
667
+ "type": "address"
668
+ },
669
+ {
670
+ "internalType": "uint256",
671
+ "name": "amount",
672
+ "type": "uint256"
673
+ }
674
+ ],
675
+ "name": "transfer",
676
+ "outputs": [
677
+ {
678
+ "internalType": "bool",
679
+ "name": "",
680
+ "type": "bool"
681
+ }
682
+ ],
683
+ "stateMutability": "nonpayable",
684
+ "type": "function"
685
+ },
686
+ {
687
+ "inputs": [
688
+ {
689
+ "internalType": "address",
690
+ "name": "from",
691
+ "type": "address"
692
+ },
693
+ {
694
+ "internalType": "address",
695
+ "name": "to",
696
+ "type": "address"
697
+ },
698
+ {
699
+ "internalType": "uint256",
700
+ "name": "amount",
701
+ "type": "uint256"
702
+ }
703
+ ],
704
+ "name": "transferFrom",
705
+ "outputs": [
706
+ {
707
+ "internalType": "bool",
708
+ "name": "",
709
+ "type": "bool"
710
+ }
711
+ ],
712
+ "stateMutability": "nonpayable",
713
+ "type": "function"
714
+ },
715
+ {
716
+ "inputs": [],
717
+ "name": "usdc",
718
+ "outputs": [
719
+ {
720
+ "internalType": "contract IERC20",
721
+ "name": "",
722
+ "type": "address"
723
+ }
724
+ ],
725
+ "stateMutability": "view",
726
+ "type": "function"
727
+ }
728
+ ],
729
+ "bytecode": "0x60c06040526005805460ff60a01b1916600160a01b17905534801562000023575f80fd5b506040516200151638038062001516833981016040819052620000469162000090565b6001600160a01b0392831660805290821660a0525f80546001600160a01b03191691909216179055620000d7565b80516001600160a01b03811681146200008b575f80fd5b919050565b5f805f60608486031215620000a3575f80fd5b620000ae8462000074565b9250620000be6020850162000074565b9150620000ce6040850162000074565b90509250925092565b60805160a0516113f3620001235f395f81816103900152818161086001528181610c1d01526110fe01525f818161032e0152818161097c01528181610aea0152610d3001526113f35ff3fe608060405234801561000f575f80fd5b50600436106101d1575f3560e01c806370a08231116100fe578063b4eae1cb1161009e578063db006a751161006e578063db006a7514610443578063dd62ed3e14610456578063ee55efee14610480578063ef48436514610488575f80fd5b8063b4eae1cb14610417578063c42cf5351461041f578063c616b59214610432578063c9503fe21461043a575f80fd5b806399288dbb116100d957806399288dbb146103d4578063a0712d68146103e8578063a85fb581146103fb578063a9059cbb14610404575f80fd5b806370a082311461036c5780637b1039991461038b57806395d89b41146103b2575f80fd5b806323b872dd116101745780633e17558d116101445780633e17558d146103165780633e413bee146103295780634bbf179b146103505780636ad1fe0214610359575f80fd5b806323b872dd146102c2578063313ce567146102d557806332cb6b0c146102ef57806336af50fd14610303575f80fd5b8063156522a8116101af578063156522a814610261578063176e25e91461028357806318160ddd1461029857806320bec12c146102af575f80fd5b806306fdde03146101d5578063095ea7b3146102145780630c340a2414610237575b5f80fd5b6101fe6040518060400160405280600a8152602001691059d95b9d145d589a5d60b21b81525081565b60405161020b919061118b565b60405180910390f35b6102276102223660046111f2565b61049b565b604051901515815260200161020b565b5f54610249906001600160a01b031681565b6040516001600160a01b03909116815260200161020b565b61022761026f36600461121a565b60086020525f908152604090205460ff1681565b6102966102913660046111f2565b610507565b005b6102a160015481565b60405190815260200161020b565b6102966102bd36600461124a565b61060c565b6102276102d036600461127f565b61068d565b6102dd601281565b60405160ff909116815260200161020b565b6102a16c0b5c0e8d21d902d61fa000000081565b61029661031136600461121a565b61071d565b6102966103243660046112b8565b6107a6565b6102497f000000000000000000000000000000000000000000000000000000000000000081565b6102a160025481565b600554610249906001600160a01b031681565b6102a161037a36600461121a565b60066020525f908152604090205481565b6102497f000000000000000000000000000000000000000000000000000000000000000081565b6101fe6040518060400160405280600381526020016220a8a160e91b81525081565b60055461022790600160a01b900460ff1681565b6102a16103f63660046112b8565b61081e565b6102a160035481565b6102276104123660046111f2565b610a8d565b6102a1610aa2565b61029661042d36600461121a565b610b7f565b6102a1610bf0565b6102a160045481565b6102a16104513660046112b8565b610c06565b6102a16104643660046112cf565b600760209081525f928352604080842090915290825290205481565b610296610e12565b6102966104963660046112b8565b610e8c565b335f8181526007602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906104f59086815260200190565b60405180910390a35060015b92915050565b5f546001600160a01b0316331461053157604051633b8d9d7560e21b815260040160405180910390fd5b600254156105515760405162035e4b60e81b815260040160405180910390fd5b6001600160a01b0382161580610565575080155b156105835760405163749b593960e01b815260040160405180910390fd5b6c0b5c0e8d21d902d61fa00000008111156105b15760405163a4875a4960e01b815260040160405180910390fd5b600281905560038190556105c58282610efd565b816001600160a01b03167fb7d0e62c6ff422bba5b164f980c696cd5c907d96924a2ba929728be2460b57068260405161060091815260200190565b60405180910390a25050565b5f546001600160a01b0316331461063657604051633b8d9d7560e21b815260040160405180910390fd5b6001600160a01b0382165f81815260086020908152604091829020805460ff191685151590811790915591519182527fbcdb576d64c4678982245c04cc666ba25083e99a4a1dfbcf19275b037abc06f59101610600565b6001600160a01b0383165f9081526007602090815260408083203384529091528120545f19811461070757828110156106d95760405163749b593960e01b815260040160405180910390fd5b6106e38382611314565b6001600160a01b0386165f9081526007602090815260408083203384529091529020555b610712858585610f66565b506001949350505050565b5f546001600160a01b0316331461074757604051633b8d9d7560e21b815260040160405180910390fd5b600580546001600160a01b0319166001600160a01b0383169081179091555f81815260086020526040808220805460ff19166001179055517f5c440f49267f20468301aadd4dee6e4929708c2a2660e2a55a294aa8b4f86c9c9190a250565b6005546001600160a01b031633146107d15760405163a7283fb960e01b815260040160405180910390fd5b8060045f8282546107e29190611327565b90915550506040518181527fde7e25960c80edd7d4ff984c18fe4f6e490103c06c517713ae3a95b93d151c27906020015b60405180910390a150565b6005545f90600160a01b900460ff161561084b57604051635c65752b60e01b815260040160405180910390fd5b6040516307feec1960e21b81523360048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690631ffbb06490602401602060405180830381865afa1580156108ad573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108d1919061133a565b6108ee57604051630d9ab13f60e01b815260040160405180910390fd5b815f0361090e5760405163749b593960e01b815260040160405180910390fd5b61091d64e8d4a5100083611355565b90506c0b5c0e8d21d902d61fa00000008160015461093b9190611327565b111561095a5760405163a4875a4960e01b815260040160405180910390fd5b6040516323b872dd60e01b8152336004820152306024820152604481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd906064016020604051808303815f875af11580156109ca573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109ee919061133a565b610a2b5760405162461bcd60e51b81526020600482015260096024820152681554d110d7d415531360ba1b60448201526064015b60405180910390fd5b8160045f828254610a3c9190611327565b90915550610a4c90503382610efd565b604080518381526020810183905233917f25b428dfde728ccfaddad7e29e4ac23c24ed7fd1a6e3e3f91894a9a073f5dfff91015b60405180910390a2919050565b5f610a99338484610f66565b50600192915050565b5f80610aac610bf0565b9050805f03610ac457670de0b6b3a764000091505090565b6040516370a0823160e01b8152306004820152819064e8d4a51000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa158015610b2f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b53919061136c565b610b5d9190611355565b610b6f90670de0b6b3a7640000611355565b610b799190611397565b91505090565b5f546001600160a01b03163314610ba957604051633b8d9d7560e21b815260040160405180910390fd5b5f80546001600160a01b0319166001600160a01b038316908117825560405190917f1cbb37f5a02c38ab13773cb770fae505cce417a4d81560117389e3a9f7e001f291a250565b5f600354600154610c019190611314565b905090565b6040516307feec1960e21b81523360048201525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690631ffbb06490602401602060405180830381865afa158015610c6a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c8e919061133a565b610cab57604051630d9ab13f60e01b815260040160405180910390fd5b811580610cc55750610cc264e8d4a51000836113aa565b15155b15610ce35760405163749b593960e01b815260040160405180910390fd5b610ced3383611032565b610cfc64e8d4a5100083611397565b90508060045f828254610d0f9190611314565b909155505060405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303815f875af1158015610d7e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da2919061133a565b610dda5760405162461bcd60e51b81526020600482015260096024820152680aaa68886bea0aaa6960bb1b6044820152606401610a22565b604080518381526020810183905233917ff3a670cd3af7d64b488926880889d08a8585a138ff455227af6737339a1ec2629101610a80565b5f546001600160a01b03163314801590610e3757506005546001600160a01b03163314155b15610e5557604051633b8d9d7560e21b815260040160405180910390fd5b6005805460ff60a01b191690556040517f4c013bd73202fde3c7cfe26ca486d0882f2c5b2fc9c761b15212f759bd2347dd905f90a1565b6005546001600160a01b03163314610eb75760405163a7283fb960e01b815260040160405180910390fd5b8060035f828254610ec89190611314565b90915550506040518181527f7b8bd6afa60337ca9e73d2909f9191f7b271c2ed97ab3840dde3cd2f41abc80e90602001610813565b8060015f828254610f0e9190611327565b90915550506001600160a01b0382165f818152600660209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b610f6f826110ca565b610f8c57604051637c8733a560e11b815260040160405180910390fd5b6001600160a01b0383165f9081526006602052604090205481811015610fc55760405163749b593960e01b815260040160405180910390fd5b6001600160a01b038085165f8181526006602052604080822086860390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110249086815260200190565b60405180910390a350505050565b6001600160a01b0382165f908152600660205260409020548181101561106b5760405163749b593960e01b815260040160405180910390fd5b6001600160a01b0383165f8181526006602090815260408083208686039055600180548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b5f6001600160a01b0382166110df575f610501565b6040516307feec1960e21b81526001600160a01b0383811660048301527f00000000000000000000000000000000000000000000000000000000000000001690631ffbb06490602401602060405180830381865afa158015611143573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611167919061133a565b806105015750506001600160a01b03165f9081526008602052604090205460ff1690565b5f602080835283518060208501525f5b818110156111b75785810183015185820160400152820161119b565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146111ed575f80fd5b919050565b5f8060408385031215611203575f80fd5b61120c836111d7565b946020939093013593505050565b5f6020828403121561122a575f80fd5b611233826111d7565b9392505050565b8015158114611247575f80fd5b50565b5f806040838503121561125b575f80fd5b611264836111d7565b915060208301356112748161123a565b809150509250929050565b5f805f60608486031215611291575f80fd5b61129a846111d7565b92506112a8602085016111d7565b9150604084013590509250925092565b5f602082840312156112c8575f80fd5b5035919050565b5f80604083850312156112e0575f80fd5b6112e9836111d7565b91506112f7602084016111d7565b90509250929050565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561050157610501611300565b8082018082111561050157610501611300565b5f6020828403121561134a575f80fd5b81516112338161123a565b808202811582820484141761050157610501611300565b5f6020828403121561137c575f80fd5b5051919050565b634e487b7160e01b5f52601260045260245ffd5b5f826113a5576113a5611383565b500490565b5f826113b8576113b8611383565b50069056fea2646970667358221220e38fe1c35bf6f287974d8b137be1e9f6c901b3125d115d1e981c96e5fee55dba64736f6c63430008180033"
730
+ }