@oceanprotocol/lib 1.0.0-next.0 → 1.0.0-next.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/dist/lib.js +2 -0
  3. package/dist/lib.js.map +1 -0
  4. package/dist/lib.modern.js +2 -0
  5. package/dist/lib.modern.js.map +1 -0
  6. package/dist/lib.module.js +2 -0
  7. package/dist/lib.module.js.map +1 -0
  8. package/dist/lib.umd.js +2 -0
  9. package/dist/lib.umd.js.map +1 -0
  10. package/dist/{node/src → src}/@types/Asset.d.ts +0 -0
  11. package/dist/{node/src → src}/@types/Compute.d.ts +0 -0
  12. package/dist/{node/src → src}/@types/DDO/Credentials.d.ts +0 -0
  13. package/dist/{node/src → src}/@types/DDO/DDO.d.ts +0 -0
  14. package/dist/{node/src → src}/@types/DDO/Event.d.ts +0 -0
  15. package/dist/{node/src → src}/@types/DDO/Metadata.d.ts +0 -0
  16. package/dist/{node/src → src}/@types/DDO/Service.d.ts +0 -0
  17. package/dist/{node/src → src}/@types/FileMetadata.d.ts +0 -0
  18. package/dist/{node/src → src}/@types/Provider.d.ts +0 -0
  19. package/dist/{node/src → src}/@types/index.d.ts +0 -0
  20. package/dist/{node/src → src}/aquarius/Aquarius.d.ts +0 -0
  21. package/dist/{node/src → src}/aquarius/index.d.ts +0 -0
  22. package/dist/{node/src → src}/factories/NFTFactory.d.ts +0 -0
  23. package/dist/{node/src → src}/factories/index.d.ts +0 -0
  24. package/dist/{node/src → src}/index.d.ts +0 -0
  25. package/dist/{node/src → src}/interfaces/DispenserInterface.d.ts +0 -0
  26. package/dist/{node/src → src}/interfaces/Erc20Interface.d.ts +0 -0
  27. package/dist/{node/src → src}/interfaces/FixedRateInterface.d.ts +0 -0
  28. package/dist/{node/src → src}/interfaces/PoolInterface.d.ts +0 -0
  29. package/dist/{node/src → src}/interfaces/RouterInterface.d.ts +0 -0
  30. package/dist/{node/src → src}/interfaces/index.d.ts +0 -0
  31. package/dist/{node/src → src}/models/Config.d.ts +0 -0
  32. package/dist/{node/src → src}/models/index.d.ts +0 -0
  33. package/dist/{node/src → src}/pools/Router.d.ts +0 -0
  34. package/dist/{node/src → src}/pools/balancer/Pool.d.ts +0 -0
  35. package/dist/{node/src → src}/pools/balancer/index.d.ts +0 -0
  36. package/dist/{node/src → src}/pools/dispenser/Dispenser.d.ts +0 -0
  37. package/dist/{node/src → src}/pools/dispenser/index.d.ts +0 -0
  38. package/dist/{node/src → src}/pools/fixedRate/FixedRateExchange.d.ts +0 -0
  39. package/dist/{node/src → src}/pools/fixedRate/index.d.ts +0 -0
  40. package/dist/{node/src → src}/pools/index.d.ts +0 -0
  41. package/dist/{node/src → src}/pools/ssContracts/SideStaking.d.ts +0 -0
  42. package/dist/{node/src → src}/pools/ssContracts/index.d.ts +0 -0
  43. package/dist/{node/src → src}/provider/Provider.d.ts +0 -0
  44. package/dist/{node/src → src}/provider/index.d.ts +0 -0
  45. package/dist/{node/src → src}/tokens/Datatoken.d.ts +0 -0
  46. package/dist/{node/src → src}/tokens/NFT.d.ts +0 -0
  47. package/dist/{node/src → src}/tokens/index.d.ts +0 -0
  48. package/dist/{node/src → src}/utils/ConfigHelper.d.ts +0 -0
  49. package/dist/{node/src → src}/utils/Constants.d.ts +0 -0
  50. package/dist/{node/src → src}/utils/ContractParams.d.ts +0 -0
  51. package/dist/{node/src → src}/utils/ConversionTypeHelper.d.ts +0 -0
  52. package/dist/{node/src → src}/utils/DatatokenName.d.ts +0 -0
  53. package/dist/{node/src → src}/utils/DdoHelpers.d.ts +0 -0
  54. package/dist/{node/src → src}/utils/FetchHelper.d.ts +0 -0
  55. package/dist/{node/src → src}/utils/GasUtils.d.ts +0 -0
  56. package/dist/{node/src → src}/utils/Logger.d.ts +0 -0
  57. package/dist/{node/src → src}/utils/SignatureUtils.d.ts +0 -0
  58. package/dist/{node/src → src}/utils/index.d.ts +0 -0
  59. package/dist/test/TestContractHandler.d.ts +44 -0
  60. package/dist/test/integration/ComputeFlow.test.d.ts +1 -0
  61. package/dist/test/integration/Provider.test.d.ts +1 -0
  62. package/dist/test/integration/PublishFlows.test.d.ts +1 -0
  63. package/dist/test/integration/SimplePublishConsumeFlow.test.d.ts +1 -0
  64. package/dist/test/integration/config.d.ts +3 -0
  65. package/dist/test/unit/NftFactory.test.d.ts +1 -0
  66. package/dist/test/unit/config.d.ts +3 -0
  67. package/dist/test/unit/pools/Router.test.d.ts +1 -0
  68. package/dist/test/unit/pools/balancer/Pool.test.d.ts +1 -0
  69. package/dist/test/unit/pools/dispenser/Dispenser.test.d.ts +1 -0
  70. package/dist/test/unit/pools/fixedRate/FixedRateExchange.test.d.ts +1 -0
  71. package/dist/test/unit/pools/ssContracts/SideStaking.test.d.ts +1 -0
  72. package/dist/test/unit/tokens/Datatoken.test.d.ts +1 -0
  73. package/dist/test/unit/tokens/Nft.test.d.ts +1 -0
  74. package/package.json +22 -19
  75. package/artifacts/ERC721Factory.sol/ERC721Factory.json +0 -1164
  76. package/artifacts/addresses/address.json +0 -21
  77. package/artifacts/communityFee/OPFCommunityFeeCollector.sol/OPFCommunityFeeCollector.json +0 -116
  78. package/artifacts/pools/FactoryRouter.sol/FactoryRouter.json +0 -1086
  79. package/artifacts/pools/balancer/BPool.sol/BPool.json +0 -1744
  80. package/artifacts/pools/dispenser/Dispenser.sol/Dispenser.json +0 -358
  81. package/artifacts/pools/fixedRate/FixedRateExchange.sol/FixedRateExchange.json +0 -917
  82. package/artifacts/pools/ssContracts/SideStaking.sol/SideStaking.json +0 -428
  83. package/artifacts/templates/ERC20Template.sol/ERC20Template.json +0 -1382
  84. package/artifacts/templates/ERC20TemplateEnterprise.sol/ERC20TemplateEnterprise.json +0 -1530
  85. package/artifacts/templates/ERC721Template.sol/ERC721Template.json +0 -1534
  86. package/artifacts/utils/mock/MockERC20.sol/MockERC20.json +0 -302
  87. package/artifacts/utils/mock/MockERC20Decimals.sol/MockERC20Decimals.json +0 -302
  88. package/dist/node/lib.js +0 -2
  89. package/dist/node/lib.js.map +0 -1
  90. package/dist/node/lib.module.js +0 -2
  91. package/dist/node/lib.module.js.map +0 -1
  92. package/dist/node/lib.umd.js +0 -2
  93. package/dist/node/lib.umd.js.map +0 -1
@@ -1,1382 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "ERC20Template",
4
- "sourceName": "contracts/templates/ERC20Template.sol",
5
- "abi": [
6
- {
7
- "anonymous": false,
8
- "inputs": [
9
- {
10
- "indexed": true,
11
- "internalType": "address",
12
- "name": "user",
13
- "type": "address"
14
- },
15
- {
16
- "indexed": true,
17
- "internalType": "address",
18
- "name": "signer",
19
- "type": "address"
20
- },
21
- {
22
- "indexed": false,
23
- "internalType": "uint256",
24
- "name": "timestamp",
25
- "type": "uint256"
26
- },
27
- {
28
- "indexed": false,
29
- "internalType": "uint256",
30
- "name": "blockNumber",
31
- "type": "uint256"
32
- }
33
- ],
34
- "name": "AddedMinter",
35
- "type": "event"
36
- },
37
- {
38
- "anonymous": false,
39
- "inputs": [
40
- {
41
- "indexed": true,
42
- "internalType": "address",
43
- "name": "user",
44
- "type": "address"
45
- },
46
- {
47
- "indexed": true,
48
- "internalType": "address",
49
- "name": "signer",
50
- "type": "address"
51
- },
52
- {
53
- "indexed": false,
54
- "internalType": "uint256",
55
- "name": "timestamp",
56
- "type": "uint256"
57
- },
58
- {
59
- "indexed": false,
60
- "internalType": "uint256",
61
- "name": "blockNumber",
62
- "type": "uint256"
63
- }
64
- ],
65
- "name": "AddedPaymentManager",
66
- "type": "event"
67
- },
68
- {
69
- "anonymous": false,
70
- "inputs": [
71
- {
72
- "indexed": true,
73
- "internalType": "address",
74
- "name": "owner",
75
- "type": "address"
76
- },
77
- {
78
- "indexed": true,
79
- "internalType": "address",
80
- "name": "spender",
81
- "type": "address"
82
- },
83
- {
84
- "indexed": false,
85
- "internalType": "uint256",
86
- "name": "value",
87
- "type": "uint256"
88
- }
89
- ],
90
- "name": "Approval",
91
- "type": "event"
92
- },
93
- {
94
- "anonymous": false,
95
- "inputs": [
96
- {
97
- "indexed": true,
98
- "internalType": "address",
99
- "name": "signer",
100
- "type": "address"
101
- },
102
- {
103
- "indexed": false,
104
- "internalType": "uint256",
105
- "name": "timestamp",
106
- "type": "uint256"
107
- },
108
- {
109
- "indexed": false,
110
- "internalType": "uint256",
111
- "name": "blockNumber",
112
- "type": "uint256"
113
- }
114
- ],
115
- "name": "CleanedPermissions",
116
- "type": "event"
117
- },
118
- {
119
- "anonymous": false,
120
- "inputs": [
121
- {
122
- "indexed": false,
123
- "internalType": "address",
124
- "name": "currentMinter",
125
- "type": "address"
126
- },
127
- {
128
- "indexed": false,
129
- "internalType": "address",
130
- "name": "newMinter",
131
- "type": "address"
132
- }
133
- ],
134
- "name": "MinterApproved",
135
- "type": "event"
136
- },
137
- {
138
- "anonymous": false,
139
- "inputs": [
140
- {
141
- "indexed": false,
142
- "internalType": "address",
143
- "name": "currentMinter",
144
- "type": "address"
145
- },
146
- {
147
- "indexed": false,
148
- "internalType": "address",
149
- "name": "newMinter",
150
- "type": "address"
151
- }
152
- ],
153
- "name": "MinterProposed",
154
- "type": "event"
155
- },
156
- {
157
- "anonymous": false,
158
- "inputs": [
159
- {
160
- "indexed": false,
161
- "internalType": "bytes32",
162
- "name": "exchangeId",
163
- "type": "bytes32"
164
- },
165
- {
166
- "indexed": false,
167
- "internalType": "address",
168
- "name": "owner",
169
- "type": "address"
170
- }
171
- ],
172
- "name": "NewFixedRate",
173
- "type": "event"
174
- },
175
- {
176
- "anonymous": false,
177
- "inputs": [
178
- {
179
- "indexed": true,
180
- "internalType": "address",
181
- "name": "caller",
182
- "type": "address"
183
- },
184
- {
185
- "indexed": true,
186
- "internalType": "address",
187
- "name": "_newPaymentCollector",
188
- "type": "address"
189
- },
190
- {
191
- "indexed": false,
192
- "internalType": "uint256",
193
- "name": "timestamp",
194
- "type": "uint256"
195
- },
196
- {
197
- "indexed": false,
198
- "internalType": "uint256",
199
- "name": "blockNumber",
200
- "type": "uint256"
201
- }
202
- ],
203
- "name": "NewPaymentCollector",
204
- "type": "event"
205
- },
206
- {
207
- "anonymous": false,
208
- "inputs": [
209
- {
210
- "indexed": false,
211
- "internalType": "address",
212
- "name": "poolAddress",
213
- "type": "address"
214
- },
215
- {
216
- "indexed": false,
217
- "internalType": "address",
218
- "name": "ssContract",
219
- "type": "address"
220
- },
221
- {
222
- "indexed": false,
223
- "internalType": "address",
224
- "name": "basetokenAddress",
225
- "type": "address"
226
- }
227
- ],
228
- "name": "NewPool",
229
- "type": "event"
230
- },
231
- {
232
- "anonymous": false,
233
- "inputs": [
234
- {
235
- "indexed": true,
236
- "internalType": "address",
237
- "name": "consumer",
238
- "type": "address"
239
- },
240
- {
241
- "indexed": false,
242
- "internalType": "address",
243
- "name": "payer",
244
- "type": "address"
245
- },
246
- {
247
- "indexed": false,
248
- "internalType": "uint256",
249
- "name": "amount",
250
- "type": "uint256"
251
- },
252
- {
253
- "indexed": false,
254
- "internalType": "uint256",
255
- "name": "serviceIndex",
256
- "type": "uint256"
257
- },
258
- {
259
- "indexed": false,
260
- "internalType": "uint256",
261
- "name": "timestamp",
262
- "type": "uint256"
263
- },
264
- {
265
- "indexed": true,
266
- "internalType": "address",
267
- "name": "publishMarketAddress",
268
- "type": "address"
269
- },
270
- {
271
- "indexed": false,
272
- "internalType": "uint256",
273
- "name": "blockNumber",
274
- "type": "uint256"
275
- }
276
- ],
277
- "name": "OrderStarted",
278
- "type": "event"
279
- },
280
- {
281
- "anonymous": false,
282
- "inputs": [
283
- {
284
- "indexed": true,
285
- "internalType": "address",
286
- "name": "providerFeeAddress",
287
- "type": "address"
288
- },
289
- {
290
- "indexed": true,
291
- "internalType": "address",
292
- "name": "providerFeeToken",
293
- "type": "address"
294
- },
295
- {
296
- "indexed": false,
297
- "internalType": "uint256",
298
- "name": "providerFeeAmount",
299
- "type": "uint256"
300
- },
301
- {
302
- "indexed": false,
303
- "internalType": "bytes",
304
- "name": "providerData",
305
- "type": "bytes"
306
- },
307
- {
308
- "indexed": false,
309
- "internalType": "uint8",
310
- "name": "v",
311
- "type": "uint8"
312
- },
313
- {
314
- "indexed": false,
315
- "internalType": "bytes32",
316
- "name": "r",
317
- "type": "bytes32"
318
- },
319
- {
320
- "indexed": false,
321
- "internalType": "bytes32",
322
- "name": "s",
323
- "type": "bytes32"
324
- }
325
- ],
326
- "name": "ProviderFees",
327
- "type": "event"
328
- },
329
- {
330
- "anonymous": false,
331
- "inputs": [
332
- {
333
- "indexed": true,
334
- "internalType": "address",
335
- "name": "PublishMarketFeeAddress",
336
- "type": "address"
337
- },
338
- {
339
- "indexed": true,
340
- "internalType": "address",
341
- "name": "PublishMarketFeeToken",
342
- "type": "address"
343
- },
344
- {
345
- "indexed": false,
346
- "internalType": "uint256",
347
- "name": "PublishMarketFeeAmount",
348
- "type": "uint256"
349
- }
350
- ],
351
- "name": "PublishMarketFees",
352
- "type": "event"
353
- },
354
- {
355
- "anonymous": false,
356
- "inputs": [
357
- {
358
- "indexed": false,
359
- "internalType": "address",
360
- "name": "caller",
361
- "type": "address"
362
- },
363
- {
364
- "indexed": false,
365
- "internalType": "address",
366
- "name": "PublishMarketFeeAddress",
367
- "type": "address"
368
- },
369
- {
370
- "indexed": false,
371
- "internalType": "address",
372
- "name": "PublishMarketFeeToken",
373
- "type": "address"
374
- },
375
- {
376
- "indexed": false,
377
- "internalType": "uint256",
378
- "name": "PublishMarketFeeAmount",
379
- "type": "uint256"
380
- }
381
- ],
382
- "name": "PublishMarketFeesChanged",
383
- "type": "event"
384
- },
385
- {
386
- "anonymous": false,
387
- "inputs": [
388
- {
389
- "indexed": true,
390
- "internalType": "address",
391
- "name": "user",
392
- "type": "address"
393
- },
394
- {
395
- "indexed": true,
396
- "internalType": "address",
397
- "name": "signer",
398
- "type": "address"
399
- },
400
- {
401
- "indexed": false,
402
- "internalType": "uint256",
403
- "name": "timestamp",
404
- "type": "uint256"
405
- },
406
- {
407
- "indexed": false,
408
- "internalType": "uint256",
409
- "name": "blockNumber",
410
- "type": "uint256"
411
- }
412
- ],
413
- "name": "RemovedMinter",
414
- "type": "event"
415
- },
416
- {
417
- "anonymous": false,
418
- "inputs": [
419
- {
420
- "indexed": true,
421
- "internalType": "address",
422
- "name": "user",
423
- "type": "address"
424
- },
425
- {
426
- "indexed": true,
427
- "internalType": "address",
428
- "name": "signer",
429
- "type": "address"
430
- },
431
- {
432
- "indexed": false,
433
- "internalType": "uint256",
434
- "name": "timestamp",
435
- "type": "uint256"
436
- },
437
- {
438
- "indexed": false,
439
- "internalType": "uint256",
440
- "name": "blockNumber",
441
- "type": "uint256"
442
- }
443
- ],
444
- "name": "RemovedPaymentManager",
445
- "type": "event"
446
- },
447
- {
448
- "anonymous": false,
449
- "inputs": [
450
- {
451
- "indexed": true,
452
- "internalType": "address",
453
- "name": "from",
454
- "type": "address"
455
- },
456
- {
457
- "indexed": true,
458
- "internalType": "address",
459
- "name": "to",
460
- "type": "address"
461
- },
462
- {
463
- "indexed": false,
464
- "internalType": "uint256",
465
- "name": "value",
466
- "type": "uint256"
467
- }
468
- ],
469
- "name": "Transfer",
470
- "type": "event"
471
- },
472
- {
473
- "stateMutability": "payable",
474
- "type": "fallback"
475
- },
476
- {
477
- "inputs": [],
478
- "name": "BASE",
479
- "outputs": [
480
- {
481
- "internalType": "uint256",
482
- "name": "",
483
- "type": "uint256"
484
- }
485
- ],
486
- "stateMutability": "view",
487
- "type": "function"
488
- },
489
- {
490
- "inputs": [],
491
- "name": "BASE_COMMUNITY_FEE_PERCENTAGE",
492
- "outputs": [
493
- {
494
- "internalType": "uint256",
495
- "name": "",
496
- "type": "uint256"
497
- }
498
- ],
499
- "stateMutability": "view",
500
- "type": "function"
501
- },
502
- {
503
- "inputs": [],
504
- "name": "DOMAIN_SEPARATOR",
505
- "outputs": [
506
- {
507
- "internalType": "bytes32",
508
- "name": "",
509
- "type": "bytes32"
510
- }
511
- ],
512
- "stateMutability": "view",
513
- "type": "function"
514
- },
515
- {
516
- "inputs": [],
517
- "name": "PERMIT_TYPEHASH",
518
- "outputs": [
519
- {
520
- "internalType": "bytes32",
521
- "name": "",
522
- "type": "bytes32"
523
- }
524
- ],
525
- "stateMutability": "view",
526
- "type": "function"
527
- },
528
- {
529
- "inputs": [
530
- {
531
- "internalType": "address",
532
- "name": "_minter",
533
- "type": "address"
534
- }
535
- ],
536
- "name": "addMinter",
537
- "outputs": [],
538
- "stateMutability": "nonpayable",
539
- "type": "function"
540
- },
541
- {
542
- "inputs": [
543
- {
544
- "internalType": "address",
545
- "name": "_paymentManager",
546
- "type": "address"
547
- }
548
- ],
549
- "name": "addPaymentManager",
550
- "outputs": [],
551
- "stateMutability": "nonpayable",
552
- "type": "function"
553
- },
554
- {
555
- "inputs": [
556
- {
557
- "internalType": "address",
558
- "name": "owner",
559
- "type": "address"
560
- },
561
- {
562
- "internalType": "address",
563
- "name": "spender",
564
- "type": "address"
565
- }
566
- ],
567
- "name": "allowance",
568
- "outputs": [
569
- {
570
- "internalType": "uint256",
571
- "name": "",
572
- "type": "uint256"
573
- }
574
- ],
575
- "stateMutability": "view",
576
- "type": "function"
577
- },
578
- {
579
- "inputs": [
580
- {
581
- "internalType": "address",
582
- "name": "spender",
583
- "type": "address"
584
- },
585
- {
586
- "internalType": "uint256",
587
- "name": "amount",
588
- "type": "uint256"
589
- }
590
- ],
591
- "name": "approve",
592
- "outputs": [
593
- {
594
- "internalType": "bool",
595
- "name": "",
596
- "type": "bool"
597
- }
598
- ],
599
- "stateMutability": "nonpayable",
600
- "type": "function"
601
- },
602
- {
603
- "inputs": [
604
- {
605
- "internalType": "uint256",
606
- "name": "",
607
- "type": "uint256"
608
- }
609
- ],
610
- "name": "authERC20",
611
- "outputs": [
612
- {
613
- "internalType": "address",
614
- "name": "",
615
- "type": "address"
616
- }
617
- ],
618
- "stateMutability": "view",
619
- "type": "function"
620
- },
621
- {
622
- "inputs": [
623
- {
624
- "internalType": "address",
625
- "name": "account",
626
- "type": "address"
627
- }
628
- ],
629
- "name": "balanceOf",
630
- "outputs": [
631
- {
632
- "internalType": "uint256",
633
- "name": "",
634
- "type": "uint256"
635
- }
636
- ],
637
- "stateMutability": "view",
638
- "type": "function"
639
- },
640
- {
641
- "inputs": [
642
- {
643
- "internalType": "uint256",
644
- "name": "amount",
645
- "type": "uint256"
646
- }
647
- ],
648
- "name": "burn",
649
- "outputs": [],
650
- "stateMutability": "nonpayable",
651
- "type": "function"
652
- },
653
- {
654
- "inputs": [
655
- {
656
- "internalType": "address",
657
- "name": "account",
658
- "type": "address"
659
- },
660
- {
661
- "internalType": "uint256",
662
- "name": "amount",
663
- "type": "uint256"
664
- }
665
- ],
666
- "name": "burnFrom",
667
- "outputs": [],
668
- "stateMutability": "nonpayable",
669
- "type": "function"
670
- },
671
- {
672
- "inputs": [],
673
- "name": "cap",
674
- "outputs": [
675
- {
676
- "internalType": "uint256",
677
- "name": "",
678
- "type": "uint256"
679
- }
680
- ],
681
- "stateMutability": "view",
682
- "type": "function"
683
- },
684
- {
685
- "inputs": [],
686
- "name": "cleanFrom721",
687
- "outputs": [],
688
- "stateMutability": "nonpayable",
689
- "type": "function"
690
- },
691
- {
692
- "inputs": [],
693
- "name": "cleanPermissions",
694
- "outputs": [],
695
- "stateMutability": "nonpayable",
696
- "type": "function"
697
- },
698
- {
699
- "inputs": [
700
- {
701
- "internalType": "address",
702
- "name": "_dispenser",
703
- "type": "address"
704
- },
705
- {
706
- "internalType": "uint256",
707
- "name": "maxTokens",
708
- "type": "uint256"
709
- },
710
- {
711
- "internalType": "uint256",
712
- "name": "maxBalance",
713
- "type": "uint256"
714
- },
715
- {
716
- "internalType": "bool",
717
- "name": "withMint",
718
- "type": "bool"
719
- },
720
- {
721
- "internalType": "address",
722
- "name": "allowedSwapper",
723
- "type": "address"
724
- }
725
- ],
726
- "name": "createDispenser",
727
- "outputs": [],
728
- "stateMutability": "nonpayable",
729
- "type": "function"
730
- },
731
- {
732
- "inputs": [
733
- {
734
- "internalType": "address",
735
- "name": "fixedPriceAddress",
736
- "type": "address"
737
- },
738
- {
739
- "internalType": "address[]",
740
- "name": "addresses",
741
- "type": "address[]"
742
- },
743
- {
744
- "internalType": "uint256[]",
745
- "name": "uints",
746
- "type": "uint256[]"
747
- }
748
- ],
749
- "name": "createFixedRate",
750
- "outputs": [
751
- {
752
- "internalType": "bytes32",
753
- "name": "exchangeId",
754
- "type": "bytes32"
755
- }
756
- ],
757
- "stateMutability": "nonpayable",
758
- "type": "function"
759
- },
760
- {
761
- "inputs": [],
762
- "name": "decimals",
763
- "outputs": [
764
- {
765
- "internalType": "uint8",
766
- "name": "",
767
- "type": "uint8"
768
- }
769
- ],
770
- "stateMutability": "pure",
771
- "type": "function"
772
- },
773
- {
774
- "inputs": [
775
- {
776
- "internalType": "address",
777
- "name": "spender",
778
- "type": "address"
779
- },
780
- {
781
- "internalType": "uint256",
782
- "name": "subtractedValue",
783
- "type": "uint256"
784
- }
785
- ],
786
- "name": "decreaseAllowance",
787
- "outputs": [
788
- {
789
- "internalType": "bool",
790
- "name": "",
791
- "type": "bool"
792
- }
793
- ],
794
- "stateMutability": "nonpayable",
795
- "type": "function"
796
- },
797
- {
798
- "inputs": [
799
- {
800
- "internalType": "uint256[]",
801
- "name": "ssParams",
802
- "type": "uint256[]"
803
- },
804
- {
805
- "internalType": "uint256[]",
806
- "name": "swapFees",
807
- "type": "uint256[]"
808
- },
809
- {
810
- "internalType": "address[]",
811
- "name": "addresses",
812
- "type": "address[]"
813
- }
814
- ],
815
- "name": "deployPool",
816
- "outputs": [
817
- {
818
- "internalType": "address",
819
- "name": "pool",
820
- "type": "address"
821
- }
822
- ],
823
- "stateMutability": "nonpayable",
824
- "type": "function"
825
- },
826
- {
827
- "inputs": [],
828
- "name": "getERC721Address",
829
- "outputs": [
830
- {
831
- "internalType": "address",
832
- "name": "",
833
- "type": "address"
834
- }
835
- ],
836
- "stateMutability": "view",
837
- "type": "function"
838
- },
839
- {
840
- "inputs": [],
841
- "name": "getId",
842
- "outputs": [
843
- {
844
- "internalType": "uint8",
845
- "name": "",
846
- "type": "uint8"
847
- }
848
- ],
849
- "stateMutability": "pure",
850
- "type": "function"
851
- },
852
- {
853
- "inputs": [],
854
- "name": "getPaymentCollector",
855
- "outputs": [
856
- {
857
- "internalType": "address",
858
- "name": "",
859
- "type": "address"
860
- }
861
- ],
862
- "stateMutability": "view",
863
- "type": "function"
864
- },
865
- {
866
- "inputs": [
867
- {
868
- "internalType": "address",
869
- "name": "user",
870
- "type": "address"
871
- }
872
- ],
873
- "name": "getPermissions",
874
- "outputs": [
875
- {
876
- "components": [
877
- {
878
- "internalType": "bool",
879
- "name": "minter",
880
- "type": "bool"
881
- },
882
- {
883
- "internalType": "bool",
884
- "name": "paymentManager",
885
- "type": "bool"
886
- }
887
- ],
888
- "internalType": "struct ERC20Roles.RolesERC20",
889
- "name": "",
890
- "type": "tuple"
891
- }
892
- ],
893
- "stateMutability": "view",
894
- "type": "function"
895
- },
896
- {
897
- "inputs": [],
898
- "name": "getPublishingMarketFee",
899
- "outputs": [
900
- {
901
- "internalType": "address",
902
- "name": "",
903
- "type": "address"
904
- },
905
- {
906
- "internalType": "address",
907
- "name": "",
908
- "type": "address"
909
- },
910
- {
911
- "internalType": "uint256",
912
- "name": "",
913
- "type": "uint256"
914
- }
915
- ],
916
- "stateMutability": "view",
917
- "type": "function"
918
- },
919
- {
920
- "inputs": [
921
- {
922
- "internalType": "address",
923
- "name": "spender",
924
- "type": "address"
925
- },
926
- {
927
- "internalType": "uint256",
928
- "name": "addedValue",
929
- "type": "uint256"
930
- }
931
- ],
932
- "name": "increaseAllowance",
933
- "outputs": [
934
- {
935
- "internalType": "bool",
936
- "name": "",
937
- "type": "bool"
938
- }
939
- ],
940
- "stateMutability": "nonpayable",
941
- "type": "function"
942
- },
943
- {
944
- "inputs": [
945
- {
946
- "internalType": "string[]",
947
- "name": "strings_",
948
- "type": "string[]"
949
- },
950
- {
951
- "internalType": "address[]",
952
- "name": "addresses_",
953
- "type": "address[]"
954
- },
955
- {
956
- "internalType": "address[]",
957
- "name": "factoryAddresses_",
958
- "type": "address[]"
959
- },
960
- {
961
- "internalType": "uint256[]",
962
- "name": "uints_",
963
- "type": "uint256[]"
964
- },
965
- {
966
- "internalType": "bytes[]",
967
- "name": "bytes_",
968
- "type": "bytes[]"
969
- }
970
- ],
971
- "name": "initialize",
972
- "outputs": [
973
- {
974
- "internalType": "bool",
975
- "name": "",
976
- "type": "bool"
977
- }
978
- ],
979
- "stateMutability": "nonpayable",
980
- "type": "function"
981
- },
982
- {
983
- "inputs": [
984
- {
985
- "internalType": "address",
986
- "name": "user",
987
- "type": "address"
988
- }
989
- ],
990
- "name": "isERC20Deployer",
991
- "outputs": [
992
- {
993
- "internalType": "bool",
994
- "name": "deployer",
995
- "type": "bool"
996
- }
997
- ],
998
- "stateMutability": "nonpayable",
999
- "type": "function"
1000
- },
1001
- {
1002
- "inputs": [],
1003
- "name": "isInitialized",
1004
- "outputs": [
1005
- {
1006
- "internalType": "bool",
1007
- "name": "",
1008
- "type": "bool"
1009
- }
1010
- ],
1011
- "stateMutability": "view",
1012
- "type": "function"
1013
- },
1014
- {
1015
- "inputs": [
1016
- {
1017
- "internalType": "address",
1018
- "name": "account",
1019
- "type": "address"
1020
- }
1021
- ],
1022
- "name": "isMinter",
1023
- "outputs": [
1024
- {
1025
- "internalType": "bool",
1026
- "name": "",
1027
- "type": "bool"
1028
- }
1029
- ],
1030
- "stateMutability": "view",
1031
- "type": "function"
1032
- },
1033
- {
1034
- "inputs": [
1035
- {
1036
- "internalType": "address",
1037
- "name": "account",
1038
- "type": "address"
1039
- },
1040
- {
1041
- "internalType": "uint256",
1042
- "name": "value",
1043
- "type": "uint256"
1044
- }
1045
- ],
1046
- "name": "mint",
1047
- "outputs": [],
1048
- "stateMutability": "nonpayable",
1049
- "type": "function"
1050
- },
1051
- {
1052
- "inputs": [],
1053
- "name": "name",
1054
- "outputs": [
1055
- {
1056
- "internalType": "string",
1057
- "name": "",
1058
- "type": "string"
1059
- }
1060
- ],
1061
- "stateMutability": "view",
1062
- "type": "function"
1063
- },
1064
- {
1065
- "inputs": [
1066
- {
1067
- "internalType": "address",
1068
- "name": "",
1069
- "type": "address"
1070
- }
1071
- ],
1072
- "name": "nonces",
1073
- "outputs": [
1074
- {
1075
- "internalType": "uint256",
1076
- "name": "",
1077
- "type": "uint256"
1078
- }
1079
- ],
1080
- "stateMutability": "view",
1081
- "type": "function"
1082
- },
1083
- {
1084
- "inputs": [
1085
- {
1086
- "internalType": "address",
1087
- "name": "",
1088
- "type": "address"
1089
- }
1090
- ],
1091
- "name": "permissions",
1092
- "outputs": [
1093
- {
1094
- "internalType": "bool",
1095
- "name": "minter",
1096
- "type": "bool"
1097
- },
1098
- {
1099
- "internalType": "bool",
1100
- "name": "paymentManager",
1101
- "type": "bool"
1102
- }
1103
- ],
1104
- "stateMutability": "view",
1105
- "type": "function"
1106
- },
1107
- {
1108
- "inputs": [
1109
- {
1110
- "internalType": "address",
1111
- "name": "owner",
1112
- "type": "address"
1113
- },
1114
- {
1115
- "internalType": "address",
1116
- "name": "spender",
1117
- "type": "address"
1118
- },
1119
- {
1120
- "internalType": "uint256",
1121
- "name": "value",
1122
- "type": "uint256"
1123
- },
1124
- {
1125
- "internalType": "uint256",
1126
- "name": "deadline",
1127
- "type": "uint256"
1128
- },
1129
- {
1130
- "internalType": "uint8",
1131
- "name": "v",
1132
- "type": "uint8"
1133
- },
1134
- {
1135
- "internalType": "bytes32",
1136
- "name": "r",
1137
- "type": "bytes32"
1138
- },
1139
- {
1140
- "internalType": "bytes32",
1141
- "name": "s",
1142
- "type": "bytes32"
1143
- }
1144
- ],
1145
- "name": "permit",
1146
- "outputs": [],
1147
- "stateMutability": "nonpayable",
1148
- "type": "function"
1149
- },
1150
- {
1151
- "inputs": [
1152
- {
1153
- "internalType": "address",
1154
- "name": "_minter",
1155
- "type": "address"
1156
- }
1157
- ],
1158
- "name": "removeMinter",
1159
- "outputs": [],
1160
- "stateMutability": "nonpayable",
1161
- "type": "function"
1162
- },
1163
- {
1164
- "inputs": [
1165
- {
1166
- "internalType": "address",
1167
- "name": "_paymentManager",
1168
- "type": "address"
1169
- }
1170
- ],
1171
- "name": "removePaymentManager",
1172
- "outputs": [],
1173
- "stateMutability": "nonpayable",
1174
- "type": "function"
1175
- },
1176
- {
1177
- "inputs": [],
1178
- "name": "router",
1179
- "outputs": [
1180
- {
1181
- "internalType": "address",
1182
- "name": "",
1183
- "type": "address"
1184
- }
1185
- ],
1186
- "stateMutability": "view",
1187
- "type": "function"
1188
- },
1189
- {
1190
- "inputs": [
1191
- {
1192
- "internalType": "bytes",
1193
- "name": "_value",
1194
- "type": "bytes"
1195
- }
1196
- ],
1197
- "name": "setData",
1198
- "outputs": [],
1199
- "stateMutability": "nonpayable",
1200
- "type": "function"
1201
- },
1202
- {
1203
- "inputs": [
1204
- {
1205
- "internalType": "address",
1206
- "name": "_newPaymentCollector",
1207
- "type": "address"
1208
- }
1209
- ],
1210
- "name": "setPaymentCollector",
1211
- "outputs": [],
1212
- "stateMutability": "nonpayable",
1213
- "type": "function"
1214
- },
1215
- {
1216
- "inputs": [
1217
- {
1218
- "internalType": "address",
1219
- "name": "_publishMarketFeeAddress",
1220
- "type": "address"
1221
- },
1222
- {
1223
- "internalType": "address",
1224
- "name": "_publishMarketFeeToken",
1225
- "type": "address"
1226
- },
1227
- {
1228
- "internalType": "uint256",
1229
- "name": "_publishMarketFeeAmount",
1230
- "type": "uint256"
1231
- }
1232
- ],
1233
- "name": "setPublishingMarketFee",
1234
- "outputs": [],
1235
- "stateMutability": "nonpayable",
1236
- "type": "function"
1237
- },
1238
- {
1239
- "inputs": [
1240
- {
1241
- "internalType": "address",
1242
- "name": "consumer",
1243
- "type": "address"
1244
- },
1245
- {
1246
- "internalType": "uint256",
1247
- "name": "serviceIndex",
1248
- "type": "uint256"
1249
- },
1250
- {
1251
- "internalType": "address",
1252
- "name": "providerFeeAddress",
1253
- "type": "address"
1254
- },
1255
- {
1256
- "internalType": "address",
1257
- "name": "providerFeeToken",
1258
- "type": "address"
1259
- },
1260
- {
1261
- "internalType": "uint256",
1262
- "name": "providerFeeAmount",
1263
- "type": "uint256"
1264
- },
1265
- {
1266
- "internalType": "uint8",
1267
- "name": "v",
1268
- "type": "uint8"
1269
- },
1270
- {
1271
- "internalType": "bytes32",
1272
- "name": "r",
1273
- "type": "bytes32"
1274
- },
1275
- {
1276
- "internalType": "bytes32",
1277
- "name": "s",
1278
- "type": "bytes32"
1279
- },
1280
- {
1281
- "internalType": "bytes",
1282
- "name": "providerData",
1283
- "type": "bytes"
1284
- }
1285
- ],
1286
- "name": "startOrder",
1287
- "outputs": [],
1288
- "stateMutability": "nonpayable",
1289
- "type": "function"
1290
- },
1291
- {
1292
- "inputs": [],
1293
- "name": "symbol",
1294
- "outputs": [
1295
- {
1296
- "internalType": "string",
1297
- "name": "",
1298
- "type": "string"
1299
- }
1300
- ],
1301
- "stateMutability": "view",
1302
- "type": "function"
1303
- },
1304
- {
1305
- "inputs": [],
1306
- "name": "totalSupply",
1307
- "outputs": [
1308
- {
1309
- "internalType": "uint256",
1310
- "name": "",
1311
- "type": "uint256"
1312
- }
1313
- ],
1314
- "stateMutability": "view",
1315
- "type": "function"
1316
- },
1317
- {
1318
- "inputs": [
1319
- {
1320
- "internalType": "address",
1321
- "name": "recipient",
1322
- "type": "address"
1323
- },
1324
- {
1325
- "internalType": "uint256",
1326
- "name": "amount",
1327
- "type": "uint256"
1328
- }
1329
- ],
1330
- "name": "transfer",
1331
- "outputs": [
1332
- {
1333
- "internalType": "bool",
1334
- "name": "",
1335
- "type": "bool"
1336
- }
1337
- ],
1338
- "stateMutability": "nonpayable",
1339
- "type": "function"
1340
- },
1341
- {
1342
- "inputs": [
1343
- {
1344
- "internalType": "address",
1345
- "name": "sender",
1346
- "type": "address"
1347
- },
1348
- {
1349
- "internalType": "address",
1350
- "name": "recipient",
1351
- "type": "address"
1352
- },
1353
- {
1354
- "internalType": "uint256",
1355
- "name": "amount",
1356
- "type": "uint256"
1357
- }
1358
- ],
1359
- "name": "transferFrom",
1360
- "outputs": [
1361
- {
1362
- "internalType": "bool",
1363
- "name": "",
1364
- "type": "bool"
1365
- }
1366
- ],
1367
- "stateMutability": "nonpayable",
1368
- "type": "function"
1369
- },
1370
- {
1371
- "inputs": [],
1372
- "name": "withdrawETH",
1373
- "outputs": [],
1374
- "stateMutability": "payable",
1375
- "type": "function"
1376
- }
1377
- ],
1378
- "bytecode": "0x6080604052600b805460ff60a01b191690553480156200001e57600080fd5b5060408051808201825260048152631d195cdd60e21b60208083019182528351808501909452600a8452691d195cdd14de5b589bdb60b21b9084015281519192916200006d9160039162000091565b5080516200008390600490602084019062000091565b505060016007555062000174565b8280546200009f9062000137565b90600052602060002090601f016020900481019282620000c357600085556200010e565b82601f10620000de57805160ff19168380011785556200010e565b828001600101855582156200010e579182015b828111156200010e578251825591602001919060010190620000f1565b506200011c92915062000120565b5090565b5b808211156200011c576000815560010162000121565b600181811c908216806200014c57607f821691505b602082108114156200016e57634e487b7160e01b600052602260045260246000fd5b50919050565b61428e80620001846000396000f3fe6080604052600436106102725760003560e01c80635d1ca6311161014e578063aa271e1a116100bb578063dd62ed3e11610077578063dd62ed3e14610878578063e086e5ec146108be578063e487c2e8146108c6578063ec342ad0146108db578063ef867ff4146108f7578063f887ea401461091757005b8063aa271e1a146107aa578063aa492ef9146107e3578063ab62f0e114610803578063b2263a5d14610823578063b3998be014610838578063d505accf1461085857005b806395d89b411161010a57806395d89b41146106f557806396fb3eaf1461070a578063983b2d561461072a5780639b4f44b61461074a578063a457c2d71461076a578063a9059cbb1461078a57005b80635d1ca6311461062957806370a082311461063d57806379cc6790146106735780637ecebe001461069357806382c03da5146106c05780638b96412b146106d557005b8063313ce567116101ec57806340c10f19116101a857806340c10f191461057457806342966c68146105945780634f189cb2146105b457806357a3a31b146105c957806357ad5ff6146105e95780635bfe4da01461060957005b8063313ce567146104ac578063355274ea146104ce5780633644e515146104e3578063392e53cd146104f95780633950935114610518578063397b37431461053857005b806318160ddd1161023b57806318160ddd146103d9578063191c918a146103f857806323b872dd1461041857806325b00243146104385780633092afd51461045857806330adf81f1461047857005b80627ffb781461027457806301e88208146102ab57806306fdde03146102fb578063095ea7b31461031d578063160a79251461034d575b005b34801561028057600080fd5b50600c546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b3480156102b757600080fd5b506102e46102c6366004613569565b60056020526000908152604090205460ff8082169161010090041682565b6040805192151583529015156020830152016102a2565b34801561030757600080fd5b50610310610937565b6040516102a291906135de565b34801561032957600080fd5b5061033d6103383660046135f1565b6109c9565b60405190151581526020016102a2565b34801561035957600080fd5b506103ba610368366004613569565b6040805180820190915260008082526020820152506001600160a01b031660009081526005602090815260409182902082518084019093525460ff808216151584526101009091041615159082015290565b60408051825115158152602092830151151592810192909252016102a2565b3480156103e557600080fd5b506002545b6040519081526020016102a2565b34801561040457600080fd5b5061027261041336600461362b565b6109df565b34801561042457600080fd5b5061033d61043336600461368a565b610b3a565b34801561044457600080fd5b50610272610453366004613569565b610be6565b34801561046457600080fd5b50610272610473366004613569565b610c80565b34801561048457600080fd5b506103ea7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b3480156104b857600080fd5b5060125b60405160ff90911681526020016102a2565b3480156104da57600080fd5b50600a546103ea565b3480156104ef57600080fd5b506103ea60115481565b34801561050557600080fd5b50600b54600160a01b900460ff1661033d565b34801561052457600080fd5b5061033d6105333660046135f1565b610d17565b34801561054457600080fd5b50600e54600f54601054604080516001600160a01b039485168152939092166020840152908201526060016102a2565b34801561058057600080fd5b5061027261058f3660046135f1565b610d53565b3480156105a057600080fd5b506102726105af3660046136cb565b610e24565b3480156105c057600080fd5b50610272610e2e565b3480156105d557600080fd5b506102726105e4366004613569565b610f15565b3480156105f557600080fd5b5061027261060436600461368a565b611057565b34801561061557600080fd5b5061028e61062436600461381e565b6111ab565b34801561063557600080fd5b5060016104bc565b34801561064957600080fd5b506103ea610658366004613569565b6001600160a01b031660009081526020819052604090205490565b34801561067f57600080fd5b5061027261068e3660046135f1565b611491565b34801561069f57600080fd5b506103ea6106ae366004613569565b60126020526000908152604090205481565b3480156106cc57600080fd5b50610272611517565b3480156106e157600080fd5b506103ea6106f03660046138a6565b611571565b34801561070157600080fd5b5061031061173e565b34801561071657600080fd5b5061033d610725366004613569565b61174d565b34801561073657600080fd5b50610272610745366004613569565b6117c8565b34801561075657600080fd5b506102726107653660046139a0565b61185f565b34801561077657600080fd5b5061033d6107853660046135f1565b611d10565b34801561079657600080fd5b5061033d6107a53660046135f1565b611da9565b3480156107b657600080fd5b5061033d6107c5366004613569565b6001600160a01b031660009081526005602052604090205460ff1690565b3480156107ef57600080fd5b506102726107fe366004613569565b611db6565b34801561080f57600080fd5b5061027261081e366004613a4d565b611e4d565b34801561082f57600080fd5b506103ea611f7e565b34801561084457600080fd5b5061033d610853366004613b0b565b611f94565b34801561086457600080fd5b50610272610873366004613bfc565b6120ce565b34801561088457600080fd5b506103ea610893366004613c6a565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6102726122e0565b3480156108d257600080fd5b5061028e612320565b3480156108e757600080fd5b506103ea670de0b6b3a764000081565b34801561090357600080fd5b5061028e6109123660046136cb565b6123b5565b34801561092357600080fd5b5060135461028e906001600160a01b031681565b60606008805461094690613ca3565b80601f016020809104026020016040519081016040528092919081815260200182805461097290613ca3565b80156109bf5780601f10610994576101008083540402835291602001916109bf565b820191906000526020600020905b8154815290600101906020018083116109a257829003601f168201915b5050505050905090565b60006109d63384846123df565b50600192915050565b600c5460405163160a792560e01b81523360048201526001600160a01b039091169063160a7925906024016080604051808303816000875af1158015610a29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a4d9190613cde565b60200151610a765760405162461bcd60e51b8152600401610a6d90613d63565b60405180910390fd5b60026007541415610a995760405162461bcd60e51b8152600401610a6d90613d98565b6002600755601354604051636b14d00560e11b81526001600160a01b038781166004830152306024830152604482018790526064820186905233608483015283811660a48301529091169063d629a00a9060c401600060405180830381600087803b158015610b0757600080fd5b505af1158015610b1b573d6000803e3d6000fd5b505050508115610b2e57610b2e85612503565b50506001600755505050565b6000610b47848484612605565b6001600160a01b038416600090815260016020908152604080832033845290915290205482811015610bcc5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b6064820152608401610a6d565b610bd985338584036123df565b60019150505b9392505050565b600c5460405163160a792560e01b81523360048201526001600160a01b039091169063160a7925906024016080604051808303816000875af1158015610c30573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c549190613cde565b60200151610c745760405162461bcd60e51b8152600401610a6d90613d63565b610c7d816127d5565b50565b600c5460405163160a792560e01b81523360048201526001600160a01b039091169063160a7925906024016080604051808303816000875af1158015610cca573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cee9190613cde565b60200151610d0e5760405162461bcd60e51b8152600401610a6d90613d63565b610c7d81612836565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916109d6918590610d4e908690613de5565b6123df565b3360009081526005602052604090205460ff16610db25760405162461bcd60e51b815260206004820152601960248201527f455243323054656d706c6174653a204e4f54204d494e544552000000000000006044820152606401610a6d565b600a54610dc882610dc260025490565b90612896565b1115610e165760405162461bcd60e51b815260206004820152601f60248201527f44617461546f6b656e54656d706c6174653a20636170206578636565646564006044820152606401610a6d565b610e2082826128a2565b5050565b610c7d3382612981565b600c546040516331a9108f60e11b8152600160048201526001600160a01b0390911690636352211e90602401602060405180830381865afa158015610e77573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9b9190613dfd565b6001600160a01b0316336001600160a01b031614610efb5760405162461bcd60e51b815260206004820152601b60248201527f455243323054656d706c6174653a206e6f74204e46544f776e657200000000006044820152606401610a6d565b610f03612acf565b600d80546001600160a01b0319169055565b33600090815260056020526040902054610100900460ff1680610fa65750600c5460405163160a792560e01b81523360048201526001600160a01b039091169063160a7925906024016080604051808303816000875af1158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190613cde565b602001515b6110065760405162461bcd60e51b815260206004820152602b60248201527f455243323054656d706c6174653a204e4f54205041594d454e54204d414e414760448201526a22a91037b91027aba722a960a91b6064820152608401610a6d565b61100f81612b7e565b604080514281524360208201526001600160a01b0383169133917f4d7694d695c57cc54947177c8e8a0e61aae664e9223492a798c32fadfc6419cc910160405180910390a350565b600e546001600160a01b031633146110c45760405162461bcd60e51b815260206004820152602a60248201527f455243323054656d706c6174653a206e6f74207075626c6973684d61726b65746044820152694665654164647265737360b01b6064820152608401610a6d565b6001600160a01b03831661112b5760405162461bcd60e51b815260206004820152602860248201527f496e76616c6964205f7075626c6973684d61726b657446656541646472657373604482015267206164647265737360c01b6064820152608401610a6d565b600e80546001600160a01b038581166001600160a01b03199283168117909355600f80549186169190921681179091556010839055604080513381526020810193909352820152606081018290527fe0b85b6f04fa914cf57f6401c5672a83a32b1c388d194c3d78e17f2897d46f439060800160405180910390a1505050565b600c5460405163160a792560e01b81523360048201526000916001600160a01b03169063160a7925906024016080604051808303816000875af11580156111f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061121a9190613cde565b6020015161123a5760405162461bcd60e51b8152600401610a6d90613d63565b600254156112965760405162461bcd60e51b8152602060048201526024808201527f455243323054656d706c6174653a20746f6b656e7320616c7265616479206d696044820152631b9d195960e21b6064820152608401610a6d565b6112b9826000815181106112ac576112ac613e1a565b6020026020010151612503565b62250490846003815181106112d0576112d0613e1a565b6020026020010151116113375760405162461bcd60e51b815260206004820152602960248201527f455243323054656d706c6174653a206d696e696d756d20626c6f636b73206e6f6044820152681d081c995858da195960ba1b6064820152608401610a6d565b60006040518060400160405280306001600160a01b03166001600160a01b031681526020018460018151811061136f5761136f613e1a565b60209081029190910101516001600160a01b0390811690915260135460405163ee3bc63560e01b8152929350169063ee3bc635906113b7908490899089908990600401613ea4565b6020604051808303816000875af11580156113d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113fa9190613dfd565b91507fd02da1bec30f7f750aa0a131745dfb9ce96767c45a192dc26409f5d690e0b967828460008151811061143157611431613e1a565b60200260200101518560018151811061144c5761144c613e1a565b6020026020010151604051611481939291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a1509392505050565b600061149d8333610893565b9050818110156114fb5760405162461bcd60e51b8152602060048201526024808201527f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f77604482015263616e636560e01b6064820152608401610a6d565b61150883338484036123df565b6115128383612981565b505050565b600c546001600160a01b03163314610efb5760405162461bcd60e51b815260206004820152601f60248201527f455243323054656d706c6174653a204e4f542037323120436f6e7472616374006044820152606401610a6d565b600c5460405163160a792560e01b81523360048201526000916001600160a01b03169063160a7925906024016080604051808303816000875af11580156115bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115e09190613cde565b602001516116005760405162461bcd60e51b8152600401610a6d90613d63565b600260075414156116235760405162461bcd60e51b8152600401610a6d90613d98565b6002600755601354604051638244937560e01b81526001600160a01b039091169063824493759061165c90879087908790600401613f0f565b6020604051808303816000875af115801561167b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061169f9190613f4f565b90506000826004815181106116b6576116b6613e1a565b602002602001015111156116cd576116cd84612503565b7f195d202f33578769e120c3041341554af3193e67ee004175095bc9c06e6e6165818460008151811061170257611702613e1a565b602002602001015160405161172a9291909182526001600160a01b0316602082015260400190565b60405180910390a160016007559392505050565b60606009805461094690613ca3565b600c5460405163160a792560e01b81526001600160a01b038381166004830152600092169063160a7925906024016080604051808303816000875af115801561179a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117be9190613cde565b6020015192915050565b600c5460405163160a792560e01b81523360048201526001600160a01b039091169063160a7925906024016080604051808303816000875af1158015611812573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118369190613cde565b602001516118565760405162461bcd60e51b8152600401610a6d90613d63565b610c7d81612503565b600260075414156118825760405162461bcd60e51b8152600401610a6d90613d98565b600260075533600090815260208190526040812054670de0b6b3a764000091908211156118ff5760405162461bcd60e51b815260206004820152602560248201527f4e6f7420656e6f756768204461746120546f6b656e7320746f2073746172742060448201526427b93232b960d91b6064820152608401610a6d565b600e5460408051338152602081018590529081018c90524260608201524360808201526001600160a01b03918216918d16907fe1c4fa794edfa8f619b8257a077398950357b9c6398528f94480307352f9afcc9060a00160405180910390a3600060105411801561197a5750600f546001600160a01b031615155b80156119905750600e546001600160a01b031615155b15611abb57601054600f546119b4916001600160a01b039091169033903090612ba0565b6010546119c2906064612c0b565b600e546010549192506119f8916001600160a01b03909116906119e59084612c17565b600f546001600160a01b03169190612c23565b600f54600e546010546001600160a01b0392831692909116907ff666b31c81334b6085802ba4149907fa724689d43bc31df6de1a51291ddc55b490611a3d9085612c17565b60405190815260200160405180910390a38015611abb57600b54600f54611a71916001600160a01b03918216911683612c23565b600f54600b546040518381526001600160a01b0392831692909116907ff666b31c81334b6085802ba4149907fa724689d43bc31df6de1a51291ddc55b49060200160405180910390a35b60006040518060400160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152509050600081858c8c8c604051602001611b0f9493929190613f68565b60405160208183030381529060405280519060200120604051602001611b36929190613fae565b60408051601f198184030181528282528051602091820120600080855291840180845281905260ff8c1692840192909252606083018a9052608083018990529092509060019060a0016020604051602081039080840390855afa158015611ba1573d6000803e3d6000fd5b5050506020604051035190508b6001600160a01b0316816001600160a01b031614611c055760405162461bcd60e51b8152602060048201526014602482015273496e76616c69642070726f76696465722066656560601b6044820152606401610a6d565b8a6001600160a01b03168c6001600160a01b03167f144fc6ed7d0a617ba44a01131b1f724d0370297a3640b6201f343e081ada64468c898d8d8d604051611c50959493929190613fd0565b60405180910390a360008a118015611c7057506001600160a01b038b1615155b8015611c8457506001600160a01b038c1615155b15611c9e57611c9e6001600160a01b038c16338e8d612ba0565b611caf611ca9612320565b86611da9565b611cfb5760405162461bcd60e51b815260206004820152601e60248201527f4661696c656420746f2073656e6420445420746f207075626c697368657200006044820152606401610a6d565b50506001600755505050505050505050505050565b3360009081526001602090815260408083206001600160a01b038616845290915281205482811015611d925760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610a6d565b611d9f33858584036123df565b5060019392505050565b60006109d6338484612605565b600c5460405163160a792560e01b81523360048201526001600160a01b039091169063160a7925906024016080604051808303816000875af1158015611e00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e249190613cde565b60200151611e445760405162461bcd60e51b8152600401610a6d90613d63565b610c7d81612c53565b600c5460405163160a792560e01b81523360048201526001600160a01b039091169063160a7925906024016080604051808303816000875af1158015611e97573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ebb9190613cde565b60200151611edb5760405162461bcd60e51b8152600401610a6d90613d63565b6040516bffffffffffffffffffffffff193060601b16602082015260009060340160408051601f19818403018152908290528051602090910120600c546301caf8fd60e31b83529092506001600160a01b031690630e57c7e890611f4790849087908790600401614009565b600060405180830381600087803b158015611f6157600080fd5b505af1158015611f75573d6000803e3d6000fd5b50505050505050565b611f916064670de0b6b3a764000061403f565b81565b600b54600090600160a01b900460ff161561200b5760405162461bcd60e51b815260206004820152603160248201527f455243323054656d706c6174653a20746f6b656e20696e7374616e636520616c6044820152701c9958591e481a5b9a5d1a585b1a5e9959607a1b6064820152608401610a6d565b6120bf6120188b8d614061565b8a8a8080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050604080516020808e0282810182019093528d82529093508d92508c91829185019084908082843760009201919091525050604080516020808d0282810182019093528c82529093508c92508b9182918501908490808284376000920191909152506120ba92508991508a90506140e9565b612d61565b9b9a5050505050505050505050565b438410156121115760405162461bcd60e51b815260206004820152601060248201526f115490cc8c11150e881156141254915160821b6044820152606401610a6d565b6011546001600160a01b038816600090815260126020526040812080549192917f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9918b918b918b91908761216483614151565b909155506040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810187905260e001604051602081830303815290604052805190602001206040516020016121dd92919061190160f01b81526002810192909252602282015260420190565b60408051601f198184030181528282528051602091820120600080855291840180845281905260ff88169284019290925260608301869052608083018590529092509060019060a0016020604051602081039080840390855afa158015612248573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381161580159061227e5750886001600160a01b0316816001600160a01b0316145b6122ca5760405162461bcd60e51b815260206004820152601a60248201527f455243323044543a20494e56414c49445f5349474e41545552450000000000006044820152606401610a6d565b6122d58989896123df565b505050505050505050565b6122e8612320565b6001600160a01b03166108fc479081150290604051600060405180830381858888f19350505050158015610c7d573d6000803e3d6000fd5b600d546000906001600160a01b03166123a557600c546040516331a9108f60e11b8152600160048201526001600160a01b0390911690636352211e90602401602060405180830381865afa15801561237c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123a09190613dfd565b905090565b50600d546001600160a01b031690565b600681815481106123c557600080fd5b6000918252602090912001546001600160a01b0316905081565b6001600160a01b0383166124415760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610a6d565b6001600160a01b0382166124a25760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610a6d565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0381166000908152600560205260409020805460ff161561256d5760405162461bcd60e51b815260206004820152601d60248201527f4552433230526f6c65733a2020414c52454144592041204d494e5445520000006044820152606401610a6d565b8054600160ff19909116811782556006805491820181556000527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b0319166001600160a01b038416908117909155604080514281524360208201523392917f4f7e100eb1ee13e903798bd0d6aa854152e07eb05544f392b9409c12935c809591015b60405180910390a35050565b6001600160a01b0383166126695760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610a6d565b6001600160a01b0382166126cb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610a6d565b6001600160a01b038316600090815260208190526040902054818110156127435760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610a6d565b6001600160a01b0380851660009081526020819052604080822085850390559185168152908120805484929061277a908490613de5565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516127c691815260200190565b60405180910390a35b50505050565b6001600160a01b03811660008181526005602052604090819020805461ff00191681559051909133917faee911eec8b2df8f3ae0464841541b1e5f339519bd5cf51889fe8b07fecff658906125f99042904390918252602082015260400190565b6001600160a01b03811660008181526005602052604090819020805460ff191681559051909133917fefa2735987005aaa89c050c0ff8cc9ae7d9079d19382081c429130f98c52d480906125f99042904390918252602082015260400190565b6000610bdf8284613de5565b6001600160a01b0382166128f85760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610a6d565b806002600082825461290a9190613de5565b90915550506001600160a01b03821660009081526020819052604081208054839290612937908490613de5565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6001600160a01b0382166129e15760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610a6d565b6001600160a01b03821660009081526020819052604090205481811015612a555760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610a6d565b6001600160a01b0383166000908152602081905260408120838303905560028054849290612a8490849061416c565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3505050565b60005b600654811015612b355760006005600060068481548110612af557612af5613e1a565b60009182526020808320909101546001600160a01b031683528201929092526040019020805461ffff191690555080612b2d81614151565b915050612ad2565b50612b426006600061349d565b6040805142815243602082015233917f712bc71db81927a76b8bf1ea346247bb0ad58f18e4e5c1bd4aa0ec6573e02a2b910160405180910390a2565b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b6040516001600160a01b03808516602483015283166044820152606481018290526127cf9085906323b872dd60e01b906084015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152613253565b6000610bdf828461403f565b6000610bdf828461416c565b6040516001600160a01b03831660248201526044810182905261151290849063a9059cbb60e01b90606401612bd4565b6001600160a01b03811660009081526005602052604090208054610100900460ff1615612ccd5760405162461bcd60e51b815260206004820152602260248201527f4552433230526f6c65733a2020414c5245414459204120464545204d414e414760448201526122a960f11b6064820152608401610a6d565b805461ff001916610100178155600680546001810182556000919091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b0384166001600160a01b03199091168117909155604080514281524360208201523392917fb17da2e9910b4ba5754e8872385ba315a238bafb5ae221fc85093c33432c40a791016125f9565b60008084600081518110612d7757612d77613e1a565b60200260200101519050600085600181518110612d9657612d96613e1a565b6020026020010151905060006001600160a01b0316826001600160a01b03161415612e185760405162461bcd60e51b815260206004820152602c60248201527f455243323054656d706c6174653a20496e76616c6964206d696e7465722c202060448201526b7a65726f206164647265737360a01b6064820152608401610a6d565b6001600160a01b038116612e945760405162461bcd60e51b815260206004820152603c60248201527f455243323054656d706c6174653a20496e76616c696420636f6d6d756e69747960448201527f2066656520636f6c6c6563746f722c207a65726f2061646472657373000000006064820152608401610a6d565b84600081518110612ea757612ea7613e1a565b602002602001015160001415612f0b5760405162461bcd60e51b8152602060048201526024808201527f44617461546f6b656e54656d706c6174653a20496e76616c6964206361702076604482015263616c756560e01b6064820152608401610a6d565b84600081518110612f1e57612f1e613e1a565b6020026020010151600a8190555087600081518110612f3f57612f3f613e1a565b602002602001015160089080519060200190612f5c9291906134bb565b5087600181518110612f7057612f70613e1a565b602002602001015160099080519060200190612f8d9291906134bb565b50600c80546001600160a01b0319166001600160a01b038416179055855186906002908110612fbe57612fbe613e1a565b6020908102919091010151601380546001600160a01b039283166001600160a01b0319909116179055600b80546001600160a81b03191691831691909117600160a01b179055865161301b9088906000906112ac576112ac613e1a565b60006001600160a01b03168760018151811061303957613039613e1a565b60200260200101516001600160a01b0316146130e3576130728760018151811061306557613065613e1a565b6020026020010151612b7e565b8660018151811061308557613085613e1a565b60200260200101516001600160a01b0316336001600160a01b03167f4d7694d695c57cc54947177c8e8a0e61aae664e9223492a798c32fadfc6419cc42436040516130da929190918252602082015260400190565b60405180910390a35b866002815181106130f6576130f6613e1a565b6020026020010151600e60006101000a8154816001600160a01b0302191690836001600160a01b031602179055508660038151811061313757613137613e1a565b6020026020010151600f60006101000a8154816001600160a01b0302191690836001600160a01b031602179055508460018151811061317857613178613e1a565b602002602001015160108190555060004690507f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60086040516131bb9190614183565b60408051918290038220828201825260018352603160f81b6020938401528151928301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc66060820152608081018290523060a082015260c00160408051808303601f1901815291905280516020909101206011555050600b54600160a01b900460ff16979650505050505050565b60006132a8826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166133259092919063ffffffff16565b80519091501561151257808060200190518101906132c6919061421f565b6115125760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610a6d565b6060613334848460008561333c565b949350505050565b60608247101561339d5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610a6d565b843b6133eb5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610a6d565b600080866001600160a01b03168587604051613407919061423c565b60006040518083038185875af1925050503d8060008114613444576040519150601f19603f3d011682016040523d82523d6000602084013e613449565b606091505b5091509150613459828286613464565b979650505050505050565b60608315613473575081610bdf565b8251156134835782518084602001fd5b8160405162461bcd60e51b8152600401610a6d91906135de565b5080546000825590600052602060002090810190610c7d919061353f565b8280546134c790613ca3565b90600052602060002090601f0160209004810192826134e9576000855561352f565b82601f1061350257805160ff191683800117855561352f565b8280016001018555821561352f579182015b8281111561352f578251825591602001919060010190613514565b5061353b92915061353f565b5090565b5b8082111561353b5760008155600101613540565b6001600160a01b0381168114610c7d57600080fd5b60006020828403121561357b57600080fd5b8135610bdf81613554565b60005b838110156135a1578181015183820152602001613589565b838111156127cf5750506000910152565b600081518084526135ca816020860160208601613586565b601f01601f19169290920160200192915050565b602081526000610bdf60208301846135b2565b6000806040838503121561360457600080fd5b823561360f81613554565b946020939093013593505050565b8015158114610c7d57600080fd5b600080600080600060a0868803121561364357600080fd5b853561364e81613554565b94506020860135935060408601359250606086013561366c8161361d565b9150608086013561367c81613554565b809150509295509295909350565b60008060006060848603121561369f57600080fd5b83356136aa81613554565b925060208401356136ba81613554565b929592945050506040919091013590565b6000602082840312156136dd57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715613723576137236136e4565b604052919050565b600067ffffffffffffffff821115613745576137456136e4565b5060051b60200190565b600082601f83011261376057600080fd5b813560206137756137708361372b565b6136fa565b82815260059290921b8401810191818101908684111561379457600080fd5b8286015b848110156137af5780358352918301918301613798565b509695505050505050565b600082601f8301126137cb57600080fd5b813560206137db6137708361372b565b82815260059290921b840181019181810190868411156137fa57600080fd5b8286015b848110156137af57803561381181613554565b83529183019183016137fe565b60008060006060848603121561383357600080fd5b833567ffffffffffffffff8082111561384b57600080fd5b6138578783880161374f565b9450602086013591508082111561386d57600080fd5b6138798783880161374f565b9350604086013591508082111561388f57600080fd5b5061389c868287016137ba565b9150509250925092565b6000806000606084860312156138bb57600080fd5b83356138c681613554565b9250602084013567ffffffffffffffff808211156138e357600080fd5b6138ef878388016137ba565b9350604086013591508082111561390557600080fd5b5061389c8682870161374f565b803560ff8116811461392357600080fd5b919050565b600067ffffffffffffffff831115613942576139426136e4565b613955601f8401601f19166020016136fa565b905082815283838301111561396957600080fd5b828260208301376000602084830101529392505050565b600082601f83011261399157600080fd5b610bdf83833560208501613928565b60008060008060008060008060006101208a8c0312156139bf57600080fd5b89356139ca81613554565b985060208a0135975060408a01356139e181613554565b965060608a01356139f181613554565b955060808a01359450613a0660a08b01613912565b935060c08a0135925060e08a013591506101008a013567ffffffffffffffff811115613a3157600080fd5b613a3d8c828d01613980565b9150509295985092959850929598565b60008060208385031215613a6057600080fd5b823567ffffffffffffffff80821115613a7857600080fd5b818501915085601f830112613a8c57600080fd5b813581811115613a9b57600080fd5b866020828501011115613aad57600080fd5b60209290920196919550909350505050565b60008083601f840112613ad157600080fd5b50813567ffffffffffffffff811115613ae957600080fd5b6020830191508360208260051b8501011115613b0457600080fd5b9250929050565b60008060008060008060008060008060a08b8d031215613b2a57600080fd5b8a3567ffffffffffffffff80821115613b4257600080fd5b613b4e8e838f01613abf565b909c509a5060208d0135915080821115613b6757600080fd5b613b738e838f01613abf565b909a50985060408d0135915080821115613b8c57600080fd5b613b988e838f01613abf565b909850965060608d0135915080821115613bb157600080fd5b613bbd8e838f01613abf565b909650945060808d0135915080821115613bd657600080fd5b50613be38d828e01613abf565b915080935050809150509295989b9194979a5092959850565b600080600080600080600060e0888a031215613c1757600080fd5b8735613c2281613554565b96506020880135613c3281613554565b95506040880135945060608801359350613c4e60808901613912565b925060a0880135915060c0880135905092959891949750929550565b60008060408385031215613c7d57600080fd5b8235613c8881613554565b91506020830135613c9881613554565b809150509250929050565b600181811c90821680613cb757607f821691505b60208210811415613cd857634e487b7160e01b600052602260045260246000fd5b50919050565b600060808284031215613cf057600080fd5b6040516080810181811067ffffffffffffffff82111715613d1357613d136136e4565b6040528251613d218161361d565b81526020830151613d318161361d565b60208201526040830151613d448161361d565b60408201526060830151613d578161361d565b60608201529392505050565b6020808252818101527f455243323054656d706c6174653a204e4f54204445504c4f59455220524f4c45604082015260600190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60008219821115613df857613df8613dcf565b500190565b600060208284031215613e0f57600080fd5b8151610bdf81613554565b634e487b7160e01b600052603260045260246000fd5b600081518084526020808501945080840160005b83811015613e6057815187529582019590820190600101613e44565b509495945050505050565b600081518084526020808501945080840160005b83811015613e605781516001600160a01b031687529582019590820190600101613e7f565b60008186825b6002811015613ed25781516001600160a01b0316835260209283019290910190600101613eaa565b50505060a06040830152613ee960a0830186613e30565b8281036060840152613efb8186613e30565b905082810360808401526134598185613e6b565b6001600160a01b0384168152606060208201819052600090613f3390830185613e6b565b8281036040840152613f458185613e30565b9695505050505050565b600060208284031215613f6157600080fd5b5051919050565b60008551613f7a818460208a01613586565b6bffffffffffffffffffffffff19606096871b8116919093019081529390941b166014830152602882015260480192915050565b60008351613fc0818460208801613586565b9190910191825250602001919050565b85815260a060208201526000613fe960a08301876135b2565b60ff95909516604083015250606081019290925260809091015292915050565b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f1916010192915050565b60008261405c57634e487b7160e01b600052601260045260246000fd5b500490565b600061406f6137708461372b565b80848252602080830192508560051b85013681111561408d57600080fd5b855b818110156140dd57803567ffffffffffffffff8111156140af5760008081fd5b870136601f8201126140c15760008081fd5b6140cf368235868401613928565b86525093820193820161408f565b50919695505050505050565b60006140f76137708461372b565b80848252602080830192508560051b85013681111561411557600080fd5b855b818110156140dd57803567ffffffffffffffff8111156141375760008081fd5b61414336828a01613980565b865250938201938201614117565b600060001982141561416557614165613dcf565b5060010190565b60008282101561417e5761417e613dcf565b500390565b600080835481600182811c91508083168061419f57607f831692505b60208084108214156141bf57634e487b7160e01b86526022600452602486fd5b8180156141d357600181146141e457614211565b60ff19861689528489019650614211565b60008a81526020902060005b868110156142095781548b8201529085019083016141f0565b505084890196505b509498975050505050505050565b60006020828403121561423157600080fd5b8151610bdf8161361d565b6000825161424e818460208701613586565b919091019291505056fea2646970667358221220d238578f5cc11933648d20be9ee5e6703e39313ad340c2b000bb26ac3b3e034564736f6c634300080a0033",
1379
- "deployedBytecode": "0x6080604052600436106102725760003560e01c80635d1ca6311161014e578063aa271e1a116100bb578063dd62ed3e11610077578063dd62ed3e14610878578063e086e5ec146108be578063e487c2e8146108c6578063ec342ad0146108db578063ef867ff4146108f7578063f887ea401461091757005b8063aa271e1a146107aa578063aa492ef9146107e3578063ab62f0e114610803578063b2263a5d14610823578063b3998be014610838578063d505accf1461085857005b806395d89b411161010a57806395d89b41146106f557806396fb3eaf1461070a578063983b2d561461072a5780639b4f44b61461074a578063a457c2d71461076a578063a9059cbb1461078a57005b80635d1ca6311461062957806370a082311461063d57806379cc6790146106735780637ecebe001461069357806382c03da5146106c05780638b96412b146106d557005b8063313ce567116101ec57806340c10f19116101a857806340c10f191461057457806342966c68146105945780634f189cb2146105b457806357a3a31b146105c957806357ad5ff6146105e95780635bfe4da01461060957005b8063313ce567146104ac578063355274ea146104ce5780633644e515146104e3578063392e53cd146104f95780633950935114610518578063397b37431461053857005b806318160ddd1161023b57806318160ddd146103d9578063191c918a146103f857806323b872dd1461041857806325b00243146104385780633092afd51461045857806330adf81f1461047857005b80627ffb781461027457806301e88208146102ab57806306fdde03146102fb578063095ea7b31461031d578063160a79251461034d575b005b34801561028057600080fd5b50600c546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b3480156102b757600080fd5b506102e46102c6366004613569565b60056020526000908152604090205460ff8082169161010090041682565b6040805192151583529015156020830152016102a2565b34801561030757600080fd5b50610310610937565b6040516102a291906135de565b34801561032957600080fd5b5061033d6103383660046135f1565b6109c9565b60405190151581526020016102a2565b34801561035957600080fd5b506103ba610368366004613569565b6040805180820190915260008082526020820152506001600160a01b031660009081526005602090815260409182902082518084019093525460ff808216151584526101009091041615159082015290565b60408051825115158152602092830151151592810192909252016102a2565b3480156103e557600080fd5b506002545b6040519081526020016102a2565b34801561040457600080fd5b5061027261041336600461362b565b6109df565b34801561042457600080fd5b5061033d61043336600461368a565b610b3a565b34801561044457600080fd5b50610272610453366004613569565b610be6565b34801561046457600080fd5b50610272610473366004613569565b610c80565b34801561048457600080fd5b506103ea7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b3480156104b857600080fd5b5060125b60405160ff90911681526020016102a2565b3480156104da57600080fd5b50600a546103ea565b3480156104ef57600080fd5b506103ea60115481565b34801561050557600080fd5b50600b54600160a01b900460ff1661033d565b34801561052457600080fd5b5061033d6105333660046135f1565b610d17565b34801561054457600080fd5b50600e54600f54601054604080516001600160a01b039485168152939092166020840152908201526060016102a2565b34801561058057600080fd5b5061027261058f3660046135f1565b610d53565b3480156105a057600080fd5b506102726105af3660046136cb565b610e24565b3480156105c057600080fd5b50610272610e2e565b3480156105d557600080fd5b506102726105e4366004613569565b610f15565b3480156105f557600080fd5b5061027261060436600461368a565b611057565b34801561061557600080fd5b5061028e61062436600461381e565b6111ab565b34801561063557600080fd5b5060016104bc565b34801561064957600080fd5b506103ea610658366004613569565b6001600160a01b031660009081526020819052604090205490565b34801561067f57600080fd5b5061027261068e3660046135f1565b611491565b34801561069f57600080fd5b506103ea6106ae366004613569565b60126020526000908152604090205481565b3480156106cc57600080fd5b50610272611517565b3480156106e157600080fd5b506103ea6106f03660046138a6565b611571565b34801561070157600080fd5b5061031061173e565b34801561071657600080fd5b5061033d610725366004613569565b61174d565b34801561073657600080fd5b50610272610745366004613569565b6117c8565b34801561075657600080fd5b506102726107653660046139a0565b61185f565b34801561077657600080fd5b5061033d6107853660046135f1565b611d10565b34801561079657600080fd5b5061033d6107a53660046135f1565b611da9565b3480156107b657600080fd5b5061033d6107c5366004613569565b6001600160a01b031660009081526005602052604090205460ff1690565b3480156107ef57600080fd5b506102726107fe366004613569565b611db6565b34801561080f57600080fd5b5061027261081e366004613a4d565b611e4d565b34801561082f57600080fd5b506103ea611f7e565b34801561084457600080fd5b5061033d610853366004613b0b565b611f94565b34801561086457600080fd5b50610272610873366004613bfc565b6120ce565b34801561088457600080fd5b506103ea610893366004613c6a565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6102726122e0565b3480156108d257600080fd5b5061028e612320565b3480156108e757600080fd5b506103ea670de0b6b3a764000081565b34801561090357600080fd5b5061028e6109123660046136cb565b6123b5565b34801561092357600080fd5b5060135461028e906001600160a01b031681565b60606008805461094690613ca3565b80601f016020809104026020016040519081016040528092919081815260200182805461097290613ca3565b80156109bf5780601f10610994576101008083540402835291602001916109bf565b820191906000526020600020905b8154815290600101906020018083116109a257829003601f168201915b5050505050905090565b60006109d63384846123df565b50600192915050565b600c5460405163160a792560e01b81523360048201526001600160a01b039091169063160a7925906024016080604051808303816000875af1158015610a29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a4d9190613cde565b60200151610a765760405162461bcd60e51b8152600401610a6d90613d63565b60405180910390fd5b60026007541415610a995760405162461bcd60e51b8152600401610a6d90613d98565b6002600755601354604051636b14d00560e11b81526001600160a01b038781166004830152306024830152604482018790526064820186905233608483015283811660a48301529091169063d629a00a9060c401600060405180830381600087803b158015610b0757600080fd5b505af1158015610b1b573d6000803e3d6000fd5b505050508115610b2e57610b2e85612503565b50506001600755505050565b6000610b47848484612605565b6001600160a01b038416600090815260016020908152604080832033845290915290205482811015610bcc5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b6064820152608401610a6d565b610bd985338584036123df565b60019150505b9392505050565b600c5460405163160a792560e01b81523360048201526001600160a01b039091169063160a7925906024016080604051808303816000875af1158015610c30573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c549190613cde565b60200151610c745760405162461bcd60e51b8152600401610a6d90613d63565b610c7d816127d5565b50565b600c5460405163160a792560e01b81523360048201526001600160a01b039091169063160a7925906024016080604051808303816000875af1158015610cca573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cee9190613cde565b60200151610d0e5760405162461bcd60e51b8152600401610a6d90613d63565b610c7d81612836565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916109d6918590610d4e908690613de5565b6123df565b3360009081526005602052604090205460ff16610db25760405162461bcd60e51b815260206004820152601960248201527f455243323054656d706c6174653a204e4f54204d494e544552000000000000006044820152606401610a6d565b600a54610dc882610dc260025490565b90612896565b1115610e165760405162461bcd60e51b815260206004820152601f60248201527f44617461546f6b656e54656d706c6174653a20636170206578636565646564006044820152606401610a6d565b610e2082826128a2565b5050565b610c7d3382612981565b600c546040516331a9108f60e11b8152600160048201526001600160a01b0390911690636352211e90602401602060405180830381865afa158015610e77573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9b9190613dfd565b6001600160a01b0316336001600160a01b031614610efb5760405162461bcd60e51b815260206004820152601b60248201527f455243323054656d706c6174653a206e6f74204e46544f776e657200000000006044820152606401610a6d565b610f03612acf565b600d80546001600160a01b0319169055565b33600090815260056020526040902054610100900460ff1680610fa65750600c5460405163160a792560e01b81523360048201526001600160a01b039091169063160a7925906024016080604051808303816000875af1158015610f7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa19190613cde565b602001515b6110065760405162461bcd60e51b815260206004820152602b60248201527f455243323054656d706c6174653a204e4f54205041594d454e54204d414e414760448201526a22a91037b91027aba722a960a91b6064820152608401610a6d565b61100f81612b7e565b604080514281524360208201526001600160a01b0383169133917f4d7694d695c57cc54947177c8e8a0e61aae664e9223492a798c32fadfc6419cc910160405180910390a350565b600e546001600160a01b031633146110c45760405162461bcd60e51b815260206004820152602a60248201527f455243323054656d706c6174653a206e6f74207075626c6973684d61726b65746044820152694665654164647265737360b01b6064820152608401610a6d565b6001600160a01b03831661112b5760405162461bcd60e51b815260206004820152602860248201527f496e76616c6964205f7075626c6973684d61726b657446656541646472657373604482015267206164647265737360c01b6064820152608401610a6d565b600e80546001600160a01b038581166001600160a01b03199283168117909355600f80549186169190921681179091556010839055604080513381526020810193909352820152606081018290527fe0b85b6f04fa914cf57f6401c5672a83a32b1c388d194c3d78e17f2897d46f439060800160405180910390a1505050565b600c5460405163160a792560e01b81523360048201526000916001600160a01b03169063160a7925906024016080604051808303816000875af11580156111f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061121a9190613cde565b6020015161123a5760405162461bcd60e51b8152600401610a6d90613d63565b600254156112965760405162461bcd60e51b8152602060048201526024808201527f455243323054656d706c6174653a20746f6b656e7320616c7265616479206d696044820152631b9d195960e21b6064820152608401610a6d565b6112b9826000815181106112ac576112ac613e1a565b6020026020010151612503565b62250490846003815181106112d0576112d0613e1a565b6020026020010151116113375760405162461bcd60e51b815260206004820152602960248201527f455243323054656d706c6174653a206d696e696d756d20626c6f636b73206e6f6044820152681d081c995858da195960ba1b6064820152608401610a6d565b60006040518060400160405280306001600160a01b03166001600160a01b031681526020018460018151811061136f5761136f613e1a565b60209081029190910101516001600160a01b0390811690915260135460405163ee3bc63560e01b8152929350169063ee3bc635906113b7908490899089908990600401613ea4565b6020604051808303816000875af11580156113d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113fa9190613dfd565b91507fd02da1bec30f7f750aa0a131745dfb9ce96767c45a192dc26409f5d690e0b967828460008151811061143157611431613e1a565b60200260200101518560018151811061144c5761144c613e1a565b6020026020010151604051611481939291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a1509392505050565b600061149d8333610893565b9050818110156114fb5760405162461bcd60e51b8152602060048201526024808201527f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f77604482015263616e636560e01b6064820152608401610a6d565b61150883338484036123df565b6115128383612981565b505050565b600c546001600160a01b03163314610efb5760405162461bcd60e51b815260206004820152601f60248201527f455243323054656d706c6174653a204e4f542037323120436f6e7472616374006044820152606401610a6d565b600c5460405163160a792560e01b81523360048201526000916001600160a01b03169063160a7925906024016080604051808303816000875af11580156115bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115e09190613cde565b602001516116005760405162461bcd60e51b8152600401610a6d90613d63565b600260075414156116235760405162461bcd60e51b8152600401610a6d90613d98565b6002600755601354604051638244937560e01b81526001600160a01b039091169063824493759061165c90879087908790600401613f0f565b6020604051808303816000875af115801561167b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061169f9190613f4f565b90506000826004815181106116b6576116b6613e1a565b602002602001015111156116cd576116cd84612503565b7f195d202f33578769e120c3041341554af3193e67ee004175095bc9c06e6e6165818460008151811061170257611702613e1a565b602002602001015160405161172a9291909182526001600160a01b0316602082015260400190565b60405180910390a160016007559392505050565b60606009805461094690613ca3565b600c5460405163160a792560e01b81526001600160a01b038381166004830152600092169063160a7925906024016080604051808303816000875af115801561179a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117be9190613cde565b6020015192915050565b600c5460405163160a792560e01b81523360048201526001600160a01b039091169063160a7925906024016080604051808303816000875af1158015611812573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118369190613cde565b602001516118565760405162461bcd60e51b8152600401610a6d90613d63565b610c7d81612503565b600260075414156118825760405162461bcd60e51b8152600401610a6d90613d98565b600260075533600090815260208190526040812054670de0b6b3a764000091908211156118ff5760405162461bcd60e51b815260206004820152602560248201527f4e6f7420656e6f756768204461746120546f6b656e7320746f2073746172742060448201526427b93232b960d91b6064820152608401610a6d565b600e5460408051338152602081018590529081018c90524260608201524360808201526001600160a01b03918216918d16907fe1c4fa794edfa8f619b8257a077398950357b9c6398528f94480307352f9afcc9060a00160405180910390a3600060105411801561197a5750600f546001600160a01b031615155b80156119905750600e546001600160a01b031615155b15611abb57601054600f546119b4916001600160a01b039091169033903090612ba0565b6010546119c2906064612c0b565b600e546010549192506119f8916001600160a01b03909116906119e59084612c17565b600f546001600160a01b03169190612c23565b600f54600e546010546001600160a01b0392831692909116907ff666b31c81334b6085802ba4149907fa724689d43bc31df6de1a51291ddc55b490611a3d9085612c17565b60405190815260200160405180910390a38015611abb57600b54600f54611a71916001600160a01b03918216911683612c23565b600f54600b546040518381526001600160a01b0392831692909116907ff666b31c81334b6085802ba4149907fa724689d43bc31df6de1a51291ddc55b49060200160405180910390a35b60006040518060400160405280601c81526020017f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152509050600081858c8c8c604051602001611b0f9493929190613f68565b60405160208183030381529060405280519060200120604051602001611b36929190613fae565b60408051601f198184030181528282528051602091820120600080855291840180845281905260ff8c1692840192909252606083018a9052608083018990529092509060019060a0016020604051602081039080840390855afa158015611ba1573d6000803e3d6000fd5b5050506020604051035190508b6001600160a01b0316816001600160a01b031614611c055760405162461bcd60e51b8152602060048201526014602482015273496e76616c69642070726f76696465722066656560601b6044820152606401610a6d565b8a6001600160a01b03168c6001600160a01b03167f144fc6ed7d0a617ba44a01131b1f724d0370297a3640b6201f343e081ada64468c898d8d8d604051611c50959493929190613fd0565b60405180910390a360008a118015611c7057506001600160a01b038b1615155b8015611c8457506001600160a01b038c1615155b15611c9e57611c9e6001600160a01b038c16338e8d612ba0565b611caf611ca9612320565b86611da9565b611cfb5760405162461bcd60e51b815260206004820152601e60248201527f4661696c656420746f2073656e6420445420746f207075626c697368657200006044820152606401610a6d565b50506001600755505050505050505050505050565b3360009081526001602090815260408083206001600160a01b038616845290915281205482811015611d925760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610a6d565b611d9f33858584036123df565b5060019392505050565b60006109d6338484612605565b600c5460405163160a792560e01b81523360048201526001600160a01b039091169063160a7925906024016080604051808303816000875af1158015611e00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e249190613cde565b60200151611e445760405162461bcd60e51b8152600401610a6d90613d63565b610c7d81612c53565b600c5460405163160a792560e01b81523360048201526001600160a01b039091169063160a7925906024016080604051808303816000875af1158015611e97573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ebb9190613cde565b60200151611edb5760405162461bcd60e51b8152600401610a6d90613d63565b6040516bffffffffffffffffffffffff193060601b16602082015260009060340160408051601f19818403018152908290528051602090910120600c546301caf8fd60e31b83529092506001600160a01b031690630e57c7e890611f4790849087908790600401614009565b600060405180830381600087803b158015611f6157600080fd5b505af1158015611f75573d6000803e3d6000fd5b50505050505050565b611f916064670de0b6b3a764000061403f565b81565b600b54600090600160a01b900460ff161561200b5760405162461bcd60e51b815260206004820152603160248201527f455243323054656d706c6174653a20746f6b656e20696e7374616e636520616c6044820152701c9958591e481a5b9a5d1a585b1a5e9959607a1b6064820152608401610a6d565b6120bf6120188b8d614061565b8a8a8080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050604080516020808e0282810182019093528d82529093508d92508c91829185019084908082843760009201919091525050604080516020808d0282810182019093528c82529093508c92508b9182918501908490808284376000920191909152506120ba92508991508a90506140e9565b612d61565b9b9a5050505050505050505050565b438410156121115760405162461bcd60e51b815260206004820152601060248201526f115490cc8c11150e881156141254915160821b6044820152606401610a6d565b6011546001600160a01b038816600090815260126020526040812080549192917f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9918b918b918b91908761216483614151565b909155506040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810187905260e001604051602081830303815290604052805190602001206040516020016121dd92919061190160f01b81526002810192909252602282015260420190565b60408051601f198184030181528282528051602091820120600080855291840180845281905260ff88169284019290925260608301869052608083018590529092509060019060a0016020604051602081039080840390855afa158015612248573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381161580159061227e5750886001600160a01b0316816001600160a01b0316145b6122ca5760405162461bcd60e51b815260206004820152601a60248201527f455243323044543a20494e56414c49445f5349474e41545552450000000000006044820152606401610a6d565b6122d58989896123df565b505050505050505050565b6122e8612320565b6001600160a01b03166108fc479081150290604051600060405180830381858888f19350505050158015610c7d573d6000803e3d6000fd5b600d546000906001600160a01b03166123a557600c546040516331a9108f60e11b8152600160048201526001600160a01b0390911690636352211e90602401602060405180830381865afa15801561237c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123a09190613dfd565b905090565b50600d546001600160a01b031690565b600681815481106123c557600080fd5b6000918252602090912001546001600160a01b0316905081565b6001600160a01b0383166124415760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610a6d565b6001600160a01b0382166124a25760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610a6d565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0381166000908152600560205260409020805460ff161561256d5760405162461bcd60e51b815260206004820152601d60248201527f4552433230526f6c65733a2020414c52454144592041204d494e5445520000006044820152606401610a6d565b8054600160ff19909116811782556006805491820181556000527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b0319166001600160a01b038416908117909155604080514281524360208201523392917f4f7e100eb1ee13e903798bd0d6aa854152e07eb05544f392b9409c12935c809591015b60405180910390a35050565b6001600160a01b0383166126695760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610a6d565b6001600160a01b0382166126cb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610a6d565b6001600160a01b038316600090815260208190526040902054818110156127435760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610a6d565b6001600160a01b0380851660009081526020819052604080822085850390559185168152908120805484929061277a908490613de5565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516127c691815260200190565b60405180910390a35b50505050565b6001600160a01b03811660008181526005602052604090819020805461ff00191681559051909133917faee911eec8b2df8f3ae0464841541b1e5f339519bd5cf51889fe8b07fecff658906125f99042904390918252602082015260400190565b6001600160a01b03811660008181526005602052604090819020805460ff191681559051909133917fefa2735987005aaa89c050c0ff8cc9ae7d9079d19382081c429130f98c52d480906125f99042904390918252602082015260400190565b6000610bdf8284613de5565b6001600160a01b0382166128f85760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610a6d565b806002600082825461290a9190613de5565b90915550506001600160a01b03821660009081526020819052604081208054839290612937908490613de5565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6001600160a01b0382166129e15760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610a6d565b6001600160a01b03821660009081526020819052604090205481811015612a555760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610a6d565b6001600160a01b0383166000908152602081905260408120838303905560028054849290612a8490849061416c565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3505050565b60005b600654811015612b355760006005600060068481548110612af557612af5613e1a565b60009182526020808320909101546001600160a01b031683528201929092526040019020805461ffff191690555080612b2d81614151565b915050612ad2565b50612b426006600061349d565b6040805142815243602082015233917f712bc71db81927a76b8bf1ea346247bb0ad58f18e4e5c1bd4aa0ec6573e02a2b910160405180910390a2565b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b6040516001600160a01b03808516602483015283166044820152606481018290526127cf9085906323b872dd60e01b906084015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152613253565b6000610bdf828461403f565b6000610bdf828461416c565b6040516001600160a01b03831660248201526044810182905261151290849063a9059cbb60e01b90606401612bd4565b6001600160a01b03811660009081526005602052604090208054610100900460ff1615612ccd5760405162461bcd60e51b815260206004820152602260248201527f4552433230526f6c65733a2020414c5245414459204120464545204d414e414760448201526122a960f11b6064820152608401610a6d565b805461ff001916610100178155600680546001810182556000919091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b0384166001600160a01b03199091168117909155604080514281524360208201523392917fb17da2e9910b4ba5754e8872385ba315a238bafb5ae221fc85093c33432c40a791016125f9565b60008084600081518110612d7757612d77613e1a565b60200260200101519050600085600181518110612d9657612d96613e1a565b6020026020010151905060006001600160a01b0316826001600160a01b03161415612e185760405162461bcd60e51b815260206004820152602c60248201527f455243323054656d706c6174653a20496e76616c6964206d696e7465722c202060448201526b7a65726f206164647265737360a01b6064820152608401610a6d565b6001600160a01b038116612e945760405162461bcd60e51b815260206004820152603c60248201527f455243323054656d706c6174653a20496e76616c696420636f6d6d756e69747960448201527f2066656520636f6c6c6563746f722c207a65726f2061646472657373000000006064820152608401610a6d565b84600081518110612ea757612ea7613e1a565b602002602001015160001415612f0b5760405162461bcd60e51b8152602060048201526024808201527f44617461546f6b656e54656d706c6174653a20496e76616c6964206361702076604482015263616c756560e01b6064820152608401610a6d565b84600081518110612f1e57612f1e613e1a565b6020026020010151600a8190555087600081518110612f3f57612f3f613e1a565b602002602001015160089080519060200190612f5c9291906134bb565b5087600181518110612f7057612f70613e1a565b602002602001015160099080519060200190612f8d9291906134bb565b50600c80546001600160a01b0319166001600160a01b038416179055855186906002908110612fbe57612fbe613e1a565b6020908102919091010151601380546001600160a01b039283166001600160a01b0319909116179055600b80546001600160a81b03191691831691909117600160a01b179055865161301b9088906000906112ac576112ac613e1a565b60006001600160a01b03168760018151811061303957613039613e1a565b60200260200101516001600160a01b0316146130e3576130728760018151811061306557613065613e1a565b6020026020010151612b7e565b8660018151811061308557613085613e1a565b60200260200101516001600160a01b0316336001600160a01b03167f4d7694d695c57cc54947177c8e8a0e61aae664e9223492a798c32fadfc6419cc42436040516130da929190918252602082015260400190565b60405180910390a35b866002815181106130f6576130f6613e1a565b6020026020010151600e60006101000a8154816001600160a01b0302191690836001600160a01b031602179055508660038151811061313757613137613e1a565b6020026020010151600f60006101000a8154816001600160a01b0302191690836001600160a01b031602179055508460018151811061317857613178613e1a565b602002602001015160108190555060004690507f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60086040516131bb9190614183565b60408051918290038220828201825260018352603160f81b6020938401528151928301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc66060820152608081018290523060a082015260c00160408051808303601f1901815291905280516020909101206011555050600b54600160a01b900460ff16979650505050505050565b60006132a8826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166133259092919063ffffffff16565b80519091501561151257808060200190518101906132c6919061421f565b6115125760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610a6d565b6060613334848460008561333c565b949350505050565b60608247101561339d5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610a6d565b843b6133eb5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610a6d565b600080866001600160a01b03168587604051613407919061423c565b60006040518083038185875af1925050503d8060008114613444576040519150601f19603f3d011682016040523d82523d6000602084013e613449565b606091505b5091509150613459828286613464565b979650505050505050565b60608315613473575081610bdf565b8251156134835782518084602001fd5b8160405162461bcd60e51b8152600401610a6d91906135de565b5080546000825590600052602060002090810190610c7d919061353f565b8280546134c790613ca3565b90600052602060002090601f0160209004810192826134e9576000855561352f565b82601f1061350257805160ff191683800117855561352f565b8280016001018555821561352f579182015b8281111561352f578251825591602001919060010190613514565b5061353b92915061353f565b5090565b5b8082111561353b5760008155600101613540565b6001600160a01b0381168114610c7d57600080fd5b60006020828403121561357b57600080fd5b8135610bdf81613554565b60005b838110156135a1578181015183820152602001613589565b838111156127cf5750506000910152565b600081518084526135ca816020860160208601613586565b601f01601f19169290920160200192915050565b602081526000610bdf60208301846135b2565b6000806040838503121561360457600080fd5b823561360f81613554565b946020939093013593505050565b8015158114610c7d57600080fd5b600080600080600060a0868803121561364357600080fd5b853561364e81613554565b94506020860135935060408601359250606086013561366c8161361d565b9150608086013561367c81613554565b809150509295509295909350565b60008060006060848603121561369f57600080fd5b83356136aa81613554565b925060208401356136ba81613554565b929592945050506040919091013590565b6000602082840312156136dd57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715613723576137236136e4565b604052919050565b600067ffffffffffffffff821115613745576137456136e4565b5060051b60200190565b600082601f83011261376057600080fd5b813560206137756137708361372b565b6136fa565b82815260059290921b8401810191818101908684111561379457600080fd5b8286015b848110156137af5780358352918301918301613798565b509695505050505050565b600082601f8301126137cb57600080fd5b813560206137db6137708361372b565b82815260059290921b840181019181810190868411156137fa57600080fd5b8286015b848110156137af57803561381181613554565b83529183019183016137fe565b60008060006060848603121561383357600080fd5b833567ffffffffffffffff8082111561384b57600080fd5b6138578783880161374f565b9450602086013591508082111561386d57600080fd5b6138798783880161374f565b9350604086013591508082111561388f57600080fd5b5061389c868287016137ba565b9150509250925092565b6000806000606084860312156138bb57600080fd5b83356138c681613554565b9250602084013567ffffffffffffffff808211156138e357600080fd5b6138ef878388016137ba565b9350604086013591508082111561390557600080fd5b5061389c8682870161374f565b803560ff8116811461392357600080fd5b919050565b600067ffffffffffffffff831115613942576139426136e4565b613955601f8401601f19166020016136fa565b905082815283838301111561396957600080fd5b828260208301376000602084830101529392505050565b600082601f83011261399157600080fd5b610bdf83833560208501613928565b60008060008060008060008060006101208a8c0312156139bf57600080fd5b89356139ca81613554565b985060208a0135975060408a01356139e181613554565b965060608a01356139f181613554565b955060808a01359450613a0660a08b01613912565b935060c08a0135925060e08a013591506101008a013567ffffffffffffffff811115613a3157600080fd5b613a3d8c828d01613980565b9150509295985092959850929598565b60008060208385031215613a6057600080fd5b823567ffffffffffffffff80821115613a7857600080fd5b818501915085601f830112613a8c57600080fd5b813581811115613a9b57600080fd5b866020828501011115613aad57600080fd5b60209290920196919550909350505050565b60008083601f840112613ad157600080fd5b50813567ffffffffffffffff811115613ae957600080fd5b6020830191508360208260051b8501011115613b0457600080fd5b9250929050565b60008060008060008060008060008060a08b8d031215613b2a57600080fd5b8a3567ffffffffffffffff80821115613b4257600080fd5b613b4e8e838f01613abf565b909c509a5060208d0135915080821115613b6757600080fd5b613b738e838f01613abf565b909a50985060408d0135915080821115613b8c57600080fd5b613b988e838f01613abf565b909850965060608d0135915080821115613bb157600080fd5b613bbd8e838f01613abf565b909650945060808d0135915080821115613bd657600080fd5b50613be38d828e01613abf565b915080935050809150509295989b9194979a5092959850565b600080600080600080600060e0888a031215613c1757600080fd5b8735613c2281613554565b96506020880135613c3281613554565b95506040880135945060608801359350613c4e60808901613912565b925060a0880135915060c0880135905092959891949750929550565b60008060408385031215613c7d57600080fd5b8235613c8881613554565b91506020830135613c9881613554565b809150509250929050565b600181811c90821680613cb757607f821691505b60208210811415613cd857634e487b7160e01b600052602260045260246000fd5b50919050565b600060808284031215613cf057600080fd5b6040516080810181811067ffffffffffffffff82111715613d1357613d136136e4565b6040528251613d218161361d565b81526020830151613d318161361d565b60208201526040830151613d448161361d565b60408201526060830151613d578161361d565b60608201529392505050565b6020808252818101527f455243323054656d706c6174653a204e4f54204445504c4f59455220524f4c45604082015260600190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60008219821115613df857613df8613dcf565b500190565b600060208284031215613e0f57600080fd5b8151610bdf81613554565b634e487b7160e01b600052603260045260246000fd5b600081518084526020808501945080840160005b83811015613e6057815187529582019590820190600101613e44565b509495945050505050565b600081518084526020808501945080840160005b83811015613e605781516001600160a01b031687529582019590820190600101613e7f565b60008186825b6002811015613ed25781516001600160a01b0316835260209283019290910190600101613eaa565b50505060a06040830152613ee960a0830186613e30565b8281036060840152613efb8186613e30565b905082810360808401526134598185613e6b565b6001600160a01b0384168152606060208201819052600090613f3390830185613e6b565b8281036040840152613f458185613e30565b9695505050505050565b600060208284031215613f6157600080fd5b5051919050565b60008551613f7a818460208a01613586565b6bffffffffffffffffffffffff19606096871b8116919093019081529390941b166014830152602882015260480192915050565b60008351613fc0818460208801613586565b9190910191825250602001919050565b85815260a060208201526000613fe960a08301876135b2565b60ff95909516604083015250606081019290925260809091015292915050565b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f1916010192915050565b60008261405c57634e487b7160e01b600052601260045260246000fd5b500490565b600061406f6137708461372b565b80848252602080830192508560051b85013681111561408d57600080fd5b855b818110156140dd57803567ffffffffffffffff8111156140af5760008081fd5b870136601f8201126140c15760008081fd5b6140cf368235868401613928565b86525093820193820161408f565b50919695505050505050565b60006140f76137708461372b565b80848252602080830192508560051b85013681111561411557600080fd5b855b818110156140dd57803567ffffffffffffffff8111156141375760008081fd5b61414336828a01613980565b865250938201938201614117565b600060001982141561416557614165613dcf565b5060010190565b60008282101561417e5761417e613dcf565b500390565b600080835481600182811c91508083168061419f57607f831692505b60208084108214156141bf57634e487b7160e01b86526022600452602486fd5b8180156141d357600181146141e457614211565b60ff19861689528489019650614211565b60008a81526020902060005b868110156142095781548b8201529085019083016141f0565b505084890196505b509498975050505050505050565b60006020828403121561423157600080fd5b8151610bdf8161361d565b6000825161424e818460208701613586565b919091019291505056fea2646970667358221220d238578f5cc11933648d20be9ee5e6703e39313ad340c2b000bb26ac3b3e034564736f6c634300080a0033",
1380
- "linkReferences": {},
1381
- "deployedLinkReferences": {}
1382
- }