@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,917 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "FixedRateExchange",
4
- "sourceName": "contracts/pools/fixedRate/FixedRateExchange.sol",
5
- "abi": [
6
- {
7
- "inputs": [
8
- {
9
- "internalType": "address",
10
- "name": "_router",
11
- "type": "address"
12
- },
13
- {
14
- "internalType": "address",
15
- "name": "_opfCollector",
16
- "type": "address"
17
- }
18
- ],
19
- "stateMutability": "nonpayable",
20
- "type": "constructor"
21
- },
22
- {
23
- "anonymous": false,
24
- "inputs": [
25
- {
26
- "indexed": true,
27
- "internalType": "bytes32",
28
- "name": "exchangeId",
29
- "type": "bytes32"
30
- },
31
- {
32
- "indexed": true,
33
- "internalType": "address",
34
- "name": "exchangeOwner",
35
- "type": "address"
36
- }
37
- ],
38
- "name": "ExchangeActivated",
39
- "type": "event"
40
- },
41
- {
42
- "anonymous": false,
43
- "inputs": [
44
- {
45
- "indexed": true,
46
- "internalType": "bytes32",
47
- "name": "exchangeId",
48
- "type": "bytes32"
49
- },
50
- {
51
- "indexed": true,
52
- "internalType": "address",
53
- "name": "allowedSwapper",
54
- "type": "address"
55
- }
56
- ],
57
- "name": "ExchangeAllowedSwapperChanged",
58
- "type": "event"
59
- },
60
- {
61
- "anonymous": false,
62
- "inputs": [
63
- {
64
- "indexed": true,
65
- "internalType": "bytes32",
66
- "name": "exchangeId",
67
- "type": "bytes32"
68
- },
69
- {
70
- "indexed": true,
71
- "internalType": "address",
72
- "name": "baseToken",
73
- "type": "address"
74
- },
75
- {
76
- "indexed": true,
77
- "internalType": "address",
78
- "name": "dataToken",
79
- "type": "address"
80
- },
81
- {
82
- "indexed": false,
83
- "internalType": "address",
84
- "name": "exchangeOwner",
85
- "type": "address"
86
- },
87
- {
88
- "indexed": false,
89
- "internalType": "uint256",
90
- "name": "fixedRate",
91
- "type": "uint256"
92
- }
93
- ],
94
- "name": "ExchangeCreated",
95
- "type": "event"
96
- },
97
- {
98
- "anonymous": false,
99
- "inputs": [
100
- {
101
- "indexed": true,
102
- "internalType": "bytes32",
103
- "name": "exchangeId",
104
- "type": "bytes32"
105
- },
106
- {
107
- "indexed": true,
108
- "internalType": "address",
109
- "name": "exchangeOwner",
110
- "type": "address"
111
- }
112
- ],
113
- "name": "ExchangeDeactivated",
114
- "type": "event"
115
- },
116
- {
117
- "anonymous": false,
118
- "inputs": [
119
- {
120
- "indexed": true,
121
- "internalType": "bytes32",
122
- "name": "exchangeId",
123
- "type": "bytes32"
124
- },
125
- {
126
- "indexed": true,
127
- "internalType": "address",
128
- "name": "exchangeOwner",
129
- "type": "address"
130
- },
131
- {
132
- "indexed": false,
133
- "internalType": "bool",
134
- "name": "withMint",
135
- "type": "bool"
136
- }
137
- ],
138
- "name": "ExchangeMintStateChanged",
139
- "type": "event"
140
- },
141
- {
142
- "anonymous": false,
143
- "inputs": [
144
- {
145
- "indexed": true,
146
- "internalType": "bytes32",
147
- "name": "exchangeId",
148
- "type": "bytes32"
149
- },
150
- {
151
- "indexed": true,
152
- "internalType": "address",
153
- "name": "exchangeOwner",
154
- "type": "address"
155
- },
156
- {
157
- "indexed": false,
158
- "internalType": "uint256",
159
- "name": "newRate",
160
- "type": "uint256"
161
- }
162
- ],
163
- "name": "ExchangeRateChanged",
164
- "type": "event"
165
- },
166
- {
167
- "anonymous": false,
168
- "inputs": [
169
- {
170
- "indexed": true,
171
- "internalType": "bytes32",
172
- "name": "exchangeId",
173
- "type": "bytes32"
174
- },
175
- {
176
- "indexed": true,
177
- "internalType": "address",
178
- "name": "feeToken",
179
- "type": "address"
180
- },
181
- {
182
- "indexed": false,
183
- "internalType": "uint256",
184
- "name": "feeAmount",
185
- "type": "uint256"
186
- }
187
- ],
188
- "name": "MarketFeeCollected",
189
- "type": "event"
190
- },
191
- {
192
- "anonymous": false,
193
- "inputs": [
194
- {
195
- "indexed": true,
196
- "internalType": "bytes32",
197
- "name": "exchangeId",
198
- "type": "bytes32"
199
- },
200
- {
201
- "indexed": true,
202
- "internalType": "address",
203
- "name": "feeToken",
204
- "type": "address"
205
- },
206
- {
207
- "indexed": false,
208
- "internalType": "uint256",
209
- "name": "feeAmount",
210
- "type": "uint256"
211
- }
212
- ],
213
- "name": "OceanFeeCollected",
214
- "type": "event"
215
- },
216
- {
217
- "anonymous": false,
218
- "inputs": [
219
- {
220
- "indexed": true,
221
- "internalType": "bytes32",
222
- "name": "exchangeId",
223
- "type": "bytes32"
224
- },
225
- {
226
- "indexed": true,
227
- "internalType": "address",
228
- "name": "by",
229
- "type": "address"
230
- },
231
- {
232
- "indexed": false,
233
- "internalType": "uint256",
234
- "name": "baseTokenSwappedAmount",
235
- "type": "uint256"
236
- },
237
- {
238
- "indexed": false,
239
- "internalType": "uint256",
240
- "name": "dataTokenSwappedAmount",
241
- "type": "uint256"
242
- },
243
- {
244
- "indexed": false,
245
- "internalType": "address",
246
- "name": "tokenOutAddress",
247
- "type": "address"
248
- },
249
- {
250
- "indexed": false,
251
- "internalType": "uint256",
252
- "name": "marketFeeAmount",
253
- "type": "uint256"
254
- },
255
- {
256
- "indexed": false,
257
- "internalType": "uint256",
258
- "name": "oceanFeeAmount",
259
- "type": "uint256"
260
- }
261
- ],
262
- "name": "Swapped",
263
- "type": "event"
264
- },
265
- {
266
- "anonymous": false,
267
- "inputs": [
268
- {
269
- "indexed": true,
270
- "internalType": "bytes32",
271
- "name": "exchangeId",
272
- "type": "bytes32"
273
- },
274
- {
275
- "indexed": true,
276
- "internalType": "address",
277
- "name": "to",
278
- "type": "address"
279
- },
280
- {
281
- "indexed": true,
282
- "internalType": "address",
283
- "name": "token",
284
- "type": "address"
285
- },
286
- {
287
- "indexed": false,
288
- "internalType": "uint256",
289
- "name": "amount",
290
- "type": "uint256"
291
- }
292
- ],
293
- "name": "TokenCollected",
294
- "type": "event"
295
- },
296
- {
297
- "inputs": [
298
- {
299
- "internalType": "bytes32",
300
- "name": "exchangeId",
301
- "type": "bytes32"
302
- },
303
- {
304
- "internalType": "uint256",
305
- "name": "dataTokenAmount",
306
- "type": "uint256"
307
- },
308
- {
309
- "internalType": "uint256",
310
- "name": "maxBaseTokenAmount",
311
- "type": "uint256"
312
- }
313
- ],
314
- "name": "buyDT",
315
- "outputs": [],
316
- "stateMutability": "nonpayable",
317
- "type": "function"
318
- },
319
- {
320
- "inputs": [
321
- {
322
- "internalType": "bytes32",
323
- "name": "exchangeId",
324
- "type": "bytes32"
325
- },
326
- {
327
- "internalType": "uint256",
328
- "name": "dataTokenAmount",
329
- "type": "uint256"
330
- }
331
- ],
332
- "name": "calcBaseInGivenOutDT",
333
- "outputs": [
334
- {
335
- "internalType": "uint256",
336
- "name": "baseTokenAmount",
337
- "type": "uint256"
338
- },
339
- {
340
- "internalType": "uint256",
341
- "name": "baseTokenAmountBeforeFee",
342
- "type": "uint256"
343
- },
344
- {
345
- "internalType": "uint256",
346
- "name": "oceanFeeAmount",
347
- "type": "uint256"
348
- },
349
- {
350
- "internalType": "uint256",
351
- "name": "marketFeeAmount",
352
- "type": "uint256"
353
- }
354
- ],
355
- "stateMutability": "view",
356
- "type": "function"
357
- },
358
- {
359
- "inputs": [
360
- {
361
- "internalType": "bytes32",
362
- "name": "exchangeId",
363
- "type": "bytes32"
364
- },
365
- {
366
- "internalType": "uint256",
367
- "name": "dataTokenAmount",
368
- "type": "uint256"
369
- }
370
- ],
371
- "name": "calcBaseOutGivenInDT",
372
- "outputs": [
373
- {
374
- "internalType": "uint256",
375
- "name": "baseTokenAmount",
376
- "type": "uint256"
377
- },
378
- {
379
- "internalType": "uint256",
380
- "name": "baseTokenAmountBeforeFee",
381
- "type": "uint256"
382
- },
383
- {
384
- "internalType": "uint256",
385
- "name": "oceanFeeAmount",
386
- "type": "uint256"
387
- },
388
- {
389
- "internalType": "uint256",
390
- "name": "marketFeeAmount",
391
- "type": "uint256"
392
- }
393
- ],
394
- "stateMutability": "view",
395
- "type": "function"
396
- },
397
- {
398
- "inputs": [
399
- {
400
- "internalType": "bytes32",
401
- "name": "exchangeId",
402
- "type": "bytes32"
403
- }
404
- ],
405
- "name": "collectBT",
406
- "outputs": [],
407
- "stateMutability": "nonpayable",
408
- "type": "function"
409
- },
410
- {
411
- "inputs": [
412
- {
413
- "internalType": "bytes32",
414
- "name": "exchangeId",
415
- "type": "bytes32"
416
- }
417
- ],
418
- "name": "collectDT",
419
- "outputs": [],
420
- "stateMutability": "nonpayable",
421
- "type": "function"
422
- },
423
- {
424
- "inputs": [
425
- {
426
- "internalType": "bytes32",
427
- "name": "exchangeId",
428
- "type": "bytes32"
429
- }
430
- ],
431
- "name": "collectMarketFee",
432
- "outputs": [],
433
- "stateMutability": "nonpayable",
434
- "type": "function"
435
- },
436
- {
437
- "inputs": [
438
- {
439
- "internalType": "bytes32",
440
- "name": "exchangeId",
441
- "type": "bytes32"
442
- }
443
- ],
444
- "name": "collectOceanFee",
445
- "outputs": [],
446
- "stateMutability": "nonpayable",
447
- "type": "function"
448
- },
449
- {
450
- "inputs": [
451
- {
452
- "internalType": "address",
453
- "name": "dataToken",
454
- "type": "address"
455
- },
456
- {
457
- "internalType": "address[]",
458
- "name": "addresses",
459
- "type": "address[]"
460
- },
461
- {
462
- "internalType": "uint256[]",
463
- "name": "uints",
464
- "type": "uint256[]"
465
- }
466
- ],
467
- "name": "createWithDecimals",
468
- "outputs": [
469
- {
470
- "internalType": "bytes32",
471
- "name": "exchangeId",
472
- "type": "bytes32"
473
- }
474
- ],
475
- "stateMutability": "nonpayable",
476
- "type": "function"
477
- },
478
- {
479
- "inputs": [
480
- {
481
- "internalType": "address",
482
- "name": "baseToken",
483
- "type": "address"
484
- },
485
- {
486
- "internalType": "address",
487
- "name": "dataToken",
488
- "type": "address"
489
- },
490
- {
491
- "internalType": "address",
492
- "name": "exchangeOwner",
493
- "type": "address"
494
- }
495
- ],
496
- "name": "generateExchangeId",
497
- "outputs": [
498
- {
499
- "internalType": "bytes32",
500
- "name": "",
501
- "type": "bytes32"
502
- }
503
- ],
504
- "stateMutability": "pure",
505
- "type": "function"
506
- },
507
- {
508
- "inputs": [
509
- {
510
- "internalType": "bytes32",
511
- "name": "exchangeId",
512
- "type": "bytes32"
513
- }
514
- ],
515
- "name": "getAllowedSwapper",
516
- "outputs": [
517
- {
518
- "internalType": "address",
519
- "name": "allowedSwapper",
520
- "type": "address"
521
- }
522
- ],
523
- "stateMutability": "view",
524
- "type": "function"
525
- },
526
- {
527
- "inputs": [
528
- {
529
- "internalType": "bytes32",
530
- "name": "exchangeId",
531
- "type": "bytes32"
532
- }
533
- ],
534
- "name": "getBTSupply",
535
- "outputs": [
536
- {
537
- "internalType": "uint256",
538
- "name": "supply",
539
- "type": "uint256"
540
- }
541
- ],
542
- "stateMutability": "view",
543
- "type": "function"
544
- },
545
- {
546
- "inputs": [
547
- {
548
- "internalType": "bytes32",
549
- "name": "exchangeId",
550
- "type": "bytes32"
551
- }
552
- ],
553
- "name": "getDTSupply",
554
- "outputs": [
555
- {
556
- "internalType": "uint256",
557
- "name": "supply",
558
- "type": "uint256"
559
- }
560
- ],
561
- "stateMutability": "view",
562
- "type": "function"
563
- },
564
- {
565
- "inputs": [
566
- {
567
- "internalType": "bytes32",
568
- "name": "exchangeId",
569
- "type": "bytes32"
570
- }
571
- ],
572
- "name": "getExchange",
573
- "outputs": [
574
- {
575
- "internalType": "address",
576
- "name": "exchangeOwner",
577
- "type": "address"
578
- },
579
- {
580
- "internalType": "address",
581
- "name": "dataToken",
582
- "type": "address"
583
- },
584
- {
585
- "internalType": "uint256",
586
- "name": "dtDecimals",
587
- "type": "uint256"
588
- },
589
- {
590
- "internalType": "address",
591
- "name": "baseToken",
592
- "type": "address"
593
- },
594
- {
595
- "internalType": "uint256",
596
- "name": "btDecimals",
597
- "type": "uint256"
598
- },
599
- {
600
- "internalType": "uint256",
601
- "name": "fixedRate",
602
- "type": "uint256"
603
- },
604
- {
605
- "internalType": "bool",
606
- "name": "active",
607
- "type": "bool"
608
- },
609
- {
610
- "internalType": "uint256",
611
- "name": "dtSupply",
612
- "type": "uint256"
613
- },
614
- {
615
- "internalType": "uint256",
616
- "name": "btSupply",
617
- "type": "uint256"
618
- },
619
- {
620
- "internalType": "uint256",
621
- "name": "dtBalance",
622
- "type": "uint256"
623
- },
624
- {
625
- "internalType": "uint256",
626
- "name": "btBalance",
627
- "type": "uint256"
628
- },
629
- {
630
- "internalType": "bool",
631
- "name": "withMint",
632
- "type": "bool"
633
- }
634
- ],
635
- "stateMutability": "view",
636
- "type": "function"
637
- },
638
- {
639
- "inputs": [],
640
- "name": "getExchanges",
641
- "outputs": [
642
- {
643
- "internalType": "bytes32[]",
644
- "name": "",
645
- "type": "bytes32[]"
646
- }
647
- ],
648
- "stateMutability": "view",
649
- "type": "function"
650
- },
651
- {
652
- "inputs": [
653
- {
654
- "internalType": "bytes32",
655
- "name": "exchangeId",
656
- "type": "bytes32"
657
- }
658
- ],
659
- "name": "getFeesInfo",
660
- "outputs": [
661
- {
662
- "internalType": "uint256",
663
- "name": "marketFee",
664
- "type": "uint256"
665
- },
666
- {
667
- "internalType": "address",
668
- "name": "marketFeeCollector",
669
- "type": "address"
670
- },
671
- {
672
- "internalType": "uint256",
673
- "name": "opfFee",
674
- "type": "uint256"
675
- },
676
- {
677
- "internalType": "uint256",
678
- "name": "marketFeeAvailable",
679
- "type": "uint256"
680
- },
681
- {
682
- "internalType": "uint256",
683
- "name": "oceanFeeAvailable",
684
- "type": "uint256"
685
- }
686
- ],
687
- "stateMutability": "view",
688
- "type": "function"
689
- },
690
- {
691
- "inputs": [],
692
- "name": "getNumberOfExchanges",
693
- "outputs": [
694
- {
695
- "internalType": "uint256",
696
- "name": "",
697
- "type": "uint256"
698
- }
699
- ],
700
- "stateMutability": "view",
701
- "type": "function"
702
- },
703
- {
704
- "inputs": [
705
- {
706
- "internalType": "address",
707
- "name": "basetokenAddress",
708
- "type": "address"
709
- }
710
- ],
711
- "name": "getOPFFee",
712
- "outputs": [
713
- {
714
- "internalType": "uint256",
715
- "name": "",
716
- "type": "uint256"
717
- }
718
- ],
719
- "stateMutability": "view",
720
- "type": "function"
721
- },
722
- {
723
- "inputs": [
724
- {
725
- "internalType": "bytes32",
726
- "name": "exchangeId",
727
- "type": "bytes32"
728
- }
729
- ],
730
- "name": "getRate",
731
- "outputs": [
732
- {
733
- "internalType": "uint256",
734
- "name": "",
735
- "type": "uint256"
736
- }
737
- ],
738
- "stateMutability": "view",
739
- "type": "function"
740
- },
741
- {
742
- "inputs": [
743
- {
744
- "internalType": "bytes32",
745
- "name": "exchangeId",
746
- "type": "bytes32"
747
- }
748
- ],
749
- "name": "isActive",
750
- "outputs": [
751
- {
752
- "internalType": "bool",
753
- "name": "",
754
- "type": "bool"
755
- }
756
- ],
757
- "stateMutability": "view",
758
- "type": "function"
759
- },
760
- {
761
- "inputs": [],
762
- "name": "opfCollector",
763
- "outputs": [
764
- {
765
- "internalType": "address",
766
- "name": "",
767
- "type": "address"
768
- }
769
- ],
770
- "stateMutability": "view",
771
- "type": "function"
772
- },
773
- {
774
- "inputs": [],
775
- "name": "router",
776
- "outputs": [
777
- {
778
- "internalType": "address",
779
- "name": "",
780
- "type": "address"
781
- }
782
- ],
783
- "stateMutability": "view",
784
- "type": "function"
785
- },
786
- {
787
- "inputs": [
788
- {
789
- "internalType": "bytes32",
790
- "name": "exchangeId",
791
- "type": "bytes32"
792
- },
793
- {
794
- "internalType": "uint256",
795
- "name": "dataTokenAmount",
796
- "type": "uint256"
797
- },
798
- {
799
- "internalType": "uint256",
800
- "name": "minBaseTokenAmount",
801
- "type": "uint256"
802
- }
803
- ],
804
- "name": "sellDT",
805
- "outputs": [],
806
- "stateMutability": "nonpayable",
807
- "type": "function"
808
- },
809
- {
810
- "inputs": [
811
- {
812
- "internalType": "bytes32",
813
- "name": "exchangeId",
814
- "type": "bytes32"
815
- },
816
- {
817
- "internalType": "address",
818
- "name": "newAllowedSwapper",
819
- "type": "address"
820
- }
821
- ],
822
- "name": "setAllowedSwapper",
823
- "outputs": [],
824
- "stateMutability": "nonpayable",
825
- "type": "function"
826
- },
827
- {
828
- "inputs": [
829
- {
830
- "internalType": "bytes32",
831
- "name": "exchangeId",
832
- "type": "bytes32"
833
- },
834
- {
835
- "internalType": "uint256",
836
- "name": "newRate",
837
- "type": "uint256"
838
- }
839
- ],
840
- "name": "setRate",
841
- "outputs": [],
842
- "stateMutability": "nonpayable",
843
- "type": "function"
844
- },
845
- {
846
- "inputs": [
847
- {
848
- "internalType": "bytes32",
849
- "name": "exchangeId",
850
- "type": "bytes32"
851
- }
852
- ],
853
- "name": "toggleExchangeState",
854
- "outputs": [],
855
- "stateMutability": "nonpayable",
856
- "type": "function"
857
- },
858
- {
859
- "inputs": [
860
- {
861
- "internalType": "bytes32",
862
- "name": "exchangeId",
863
- "type": "bytes32"
864
- },
865
- {
866
- "internalType": "bool",
867
- "name": "withMint",
868
- "type": "bool"
869
- }
870
- ],
871
- "name": "toggleMintState",
872
- "outputs": [],
873
- "stateMutability": "nonpayable",
874
- "type": "function"
875
- },
876
- {
877
- "inputs": [
878
- {
879
- "internalType": "bytes32",
880
- "name": "exchangeId",
881
- "type": "bytes32"
882
- },
883
- {
884
- "internalType": "uint256",
885
- "name": "_newMarketFee",
886
- "type": "uint256"
887
- }
888
- ],
889
- "name": "updateMarketFee",
890
- "outputs": [],
891
- "stateMutability": "nonpayable",
892
- "type": "function"
893
- },
894
- {
895
- "inputs": [
896
- {
897
- "internalType": "bytes32",
898
- "name": "exchangeId",
899
- "type": "bytes32"
900
- },
901
- {
902
- "internalType": "address",
903
- "name": "_newMarketCollector",
904
- "type": "address"
905
- }
906
- ],
907
- "name": "updateMarketFeeCollector",
908
- "outputs": [],
909
- "stateMutability": "nonpayable",
910
- "type": "function"
911
- }
912
- ],
913
- "bytecode": "0x60806040523480156200001157600080fd5b50604051620031de380380620031de833981016040819052620000349162000158565b60016000556001600160a01b038216620000a55760405162461bcd60e51b815260206004820152602760248201527f46697865645261746545786368616e67653a2057726f6e6720526f75746572206044820152666164647265737360c81b60648201526084015b60405180910390fd5b6001600160a01b038116620001095760405162461bcd60e51b8152602060048201526024808201527f46697865645261746545786368616e67653a2057726f6e67204f5046206164646044820152637265737360e01b60648201526084016200009c565b600180546001600160a01b039384166001600160a01b0319918216179091556002805492909316911617905562000190565b80516001600160a01b03811681146200015357600080fd5b919050565b600080604083850312156200016c57600080fd5b62000177836200013b565b915062000187602084016200013b565b90509250929050565b61303e80620001a06000396000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c8063825b5cd6116100f9578063b686bcaf11610097578063c99733a711610071578063c99733a714610576578063f532129e14610589578063f8154aee1461059c578063f887ea40146105af57600080fd5b8063b686bcaf1461053d578063c1f6572e14610550578063c66274ea1461056357600080fd5b806388823872116100d357806388823872146104eb578063a28f78f1146104fe578063b32b56f914610511578063b42414291461053557600080fd5b8063825b5cd6146103c5578063855058dd146103d857806385fcbc2f146104d857600080fd5b80635c36901c116101665780636e4c6269116101405780636e4c62691461035957806371dc14b21461036c57806379dd28361461039f5780637c82ebe9146103b257600080fd5b80635c36901c1461030057806360311e9514610333578063680819eb1461034657600080fd5b806324cb477e116101a257806324cb477e14610247578063450dccc31461025c5780634c87087d1461026f5780635acfedc7146102ed57600080fd5b8063012c3275146101c95780630b3b430d146101ef5780631e2e3a6b14610232575b600080fd5b6101dc6101d7366004612a19565b6105c2565b6040519081526020015b60405180910390f35b6102026101fd366004612aeb565b610d37565b604080519586526001600160a01b039094166020860152928401919091526060830152608082015260a0016101e6565b61023a610e41565b6040516101e69190612b04565b61025a610255366004612aeb565b610e99565b005b61025a61026a366004612aeb565b610f78565b61028261027d366004612aeb565b611084565b604080516001600160a01b039d8e1681529b8d1660208d01528b0199909952999096166060890152608088019490945260a0870192909252151560c086015260e0850152610100840152610120830152610140820192909252901515610160820152610180016101e6565b61025a6102fb366004612aeb565b6111ab565b61032361030e366004612aeb565b60009081526003602052604090205460ff1690565b60405190151581526020016101e6565b61025a610341366004612b48565b611266565b61025a610354366004612b74565b611308565b61025a610367366004612b96565b6113f5565b61037f61037a366004612b74565b6116f3565b6040805194855260208501939093529183015260608201526080016101e6565b61025a6103ad366004612bd3565b61185c565b61025a6103c0366004612b48565b6118ee565b61025a6103d3366004612b96565b611981565b6104c06103e6366004612aeb565b60009081526003602081815260409283902083516101e081018552815460ff808216151583526001600160a01b03610100928390048116958401959095526001840154851696830196909652600283015484166060830152938201546080820152600482015460a0820152600582015460c0820152600682015460e0820152600782015484820152600882015461012082015260098201548316610140820152600a820154610160820152600b820154610180820152600c9091015493841615156101a0820152919092049091166101c090910181905290565b6040516001600160a01b0390911681526020016101e6565b6101dc6104e6366004612aeb565b611d83565b61025a6104f9366004612b74565b611f0a565b6002546104c0906001600160a01b031681565b6101dc61051f366004612aeb565b6000908152600360208190526040909120015490565b6004546101dc565b61025a61054b366004612aeb565b611f81565b6101dc61055e366004612c03565b612032565b6101dc610571366004612aeb565b61207e565b61037f610584366004612b74565b612396565b61025a610597366004612aeb565b6124a1565b6101dc6105aa366004612c46565b61259d565b6001546104c0906001600160a01b031681565b6001546000906001600160a01b031633146106245760405162461bcd60e51b815260206004820152601e60248201527f46697865645261746545786368616e67653a206f6e6c7920726f75746572000060448201526064015b60405180910390fd5b60006001600160a01b03168360008151811061064257610642612c61565b60200260200101516001600160a01b031614156106bd5760405162461bcd60e51b815260206004820152603360248201527f46697865645261746545786368616e67653a20496e76616c69642062617365746044820152726f6b656e2c20207a65726f206164647265737360681b606482015260840161061b565b6001600160a01b03841661072f5760405162461bcd60e51b815260206004820152603360248201527f46697865645261746545786368616e67653a20496e76616c69642064617461746044820152726f6b656e2c20207a65726f206164647265737360681b606482015260840161061b565b836001600160a01b03168360008151811061074c5761074c612c61565b60200260200101516001600160a01b031614156107d15760405162461bcd60e51b815260206004820152603760248201527f46697865645261746545786368616e67653a20496e76616c696420646174617460448201527f6f6b656e2c2020657175616c732062617365746f6b656e000000000000000000606482015260840161061b565b816002815181106107e4576107e4612c61565b6020026020010151600014156108535760405162461bcd60e51b815260206004820152602e60248201527f46697865645261746545786368616e67653a20496e76616c696420657863686160448201526d6e676520726174652076616c756560901b606482015260840161061b565b6108928360008151811061086957610869612c61565b6020026020010151858560018151811061088557610885612c61565b6020026020010151612032565b60008181526003602081905260409091200154909150156109095760405162461bcd60e51b815260206004820152602b60248201527f46697865645261746545786368616e67653a2045786368616e676520616c726560448201526a616479206578697374732160a81b606482015260840161061b565b6000600190508260048151811061092257610922612c61565b602002602001015160001415610936575060005b604051806101e001604052806001151581526020018560018151811061095e5761095e612c61565b60200260200101516001600160a01b03168152602001866001600160a01b031681526020018560008151811061099657610996612c61565b60200260200101516001600160a01b03168152602001846002815181106109bf576109bf612c61565b60200260200101518152602001846001815181106109df576109df612c61565b60200260200101518152602001846000815181106109ff576109ff612c61565b60200260200101518152602001600081526020016000815260200184600381518110610a2d57610a2d612c61565b6020026020010151815260200185600281518110610a4d57610a4d612c61565b60200260200101516001600160a01b031681526020016000815260200160008152602001821515815260200185600381518110610a8c57610a8c612c61565b6020908102919091018101516001600160a01b0390811690925260008581526003808352604080832086518154958801518716610100908102610100600160a81b031992151583166001600160a81b0319988916171783559288015160018084018054928a166001600160a01b031993841617905560608a0151600285018054918b1691841691909117905560808a01519584019590955560a089015160048085019190915560c08a0151600585015560e08a01516006850155848a015160078501556101208a015160088501556101408a0151600985018054918b169190931617909155610160890151600a840155610180890151600b8401556101a0890151600c90930180546101c0909a01518916909402921515909116979095169690961795909517909455815493840182559081527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b9092018490558551908716918691610bfa57610bfa612c61565b60200260200101516001600160a01b0316837feb7a353641f7d3cc54b497ef1553fdc292b64d9cc3be8587c23dfba01f310b1987600181518110610c4057610c40612c61565b602002602001015187600281518110610c5b57610c5b612c61565b6020026020010151604051610c859291906001600160a01b03929092168252602082015260400190565b60405180910390a483600181518110610ca057610ca0612c61565b60200260200101516001600160a01b0316827fc7344c45124818d1d3a4c24ccb9b86d8b88d3bd05209b2a42b494cb32a50352960405160405180910390a383600381518110610cf157610cf1612c61565b60200260200101516001600160a01b0316827fcc1b4af8292e6b938f6743c78a62317c9a2d60e0d46b77776a027e53ce617c0c60405160405180910390a3509392505050565b600081815260036020818152604080842081516101e081018352815460ff808216151583526001600160a01b036101009283900481168488015260018501548116958401959095526002840154851660608401819052848801546080850152600485015460a0850152600585015460c0850152600685015460e085015260078501548385015260088501546101208501819052600986015487166101408601819052600a870154610160870152600b870154610180870152600c9096015492831615156101a0860152929091049094166101c0830152878752949093529293918291829190610e259061259d565b9350806101600151925080610180015191505091939590929450565b60606004805480602002602001604051908101604052809291908181526020018280548015610e8f57602002820191906000526020600020905b815481526020019060010190808311610e7b575b5050505050905090565b600081815260036020526040902054819061010090046001600160a01b03163314610ed65760405162461bcd60e51b815260040161061b90612c77565b60008281526003602052604090205460ff1615610f3157600082815260036020526040808220805460ff1916905551339184917f03da9148e1de78fba22de63c573465562ebf6ef878a1d3ea83790a560229984c9190a35050565b600082815260036020526040808220805460ff1916600117905551339184917fc7344c45124818d1d3a4c24ccb9b86d8b88d3bd05209b2a42b494cb32a5035299190a35050565b600081815260036020526040902054819061010090046001600160a01b03163314610fb55760405162461bcd60e51b815260040161061b90612c77565b60026000541415610fd85760405162461bcd60e51b815260040161061b90612cc0565b600260009081558281526003602052604081206006810180549290558054600190910154611019916001600160a01b0391821691610100909104168361260c565b6000838152600360209081526040918290206001810154905492518481526001600160a01b039182169361010090049091169186917fecc75f4464886bee0a1c5eae61c0cb4b99c64c5e9cdebe3696217d266f8b163691015b60405180910390a45050600160005550565b600081815260036020818152604080842081516101e081018352815460ff80821615158084526001600160a01b036101009384900481169785018890526001860154811696850187905260028601548116606086018190529886015460808601819052600487015460a08701819052600588015460c08801819052600689015460e0890152600789015487890152600889015461012089015260098901548416610140890152600a890154610160890152600b890154610180890152600c9098015494851615156101a088015294909304166101c08501529597949691959194909281908190819081906111778e61207e565b95506111828e611d83565b94508060e0015193508061010001519250806101a0015191505091939597999b5091939597999b565b600260005414156111ce5760405162461bcd60e51b815260040161061b90612cc0565b60026000818155828152600360205260408120600b8101805492905582549201549091611208916001600160a01b0390811691168361260c565b6000828152600360209081526040918290206002015491518381526001600160a01b039092169184917f457b44fd47c33fc65bfbd58d0202ad97fbed1bbc9881f56441d05fe9ebd58acf91015b60405180910390a350506001600055565b600082815260036020526040902054829061010090046001600160a01b031633146112a35760405162461bcd60e51b815260040161061b90612c77565b600083815260036020526040808220600c018054610100600160a81b0319166101006001600160a01b038716908102919091179091559051909185917fcc1b4af8292e6b938f6743c78a62317c9a2d60e0d46b77776a027e53ce617c0c9190a3505050565b600082815260036020526040902054829061010090046001600160a01b031633146113455760405162461bcd60e51b815260040161061b90612c77565b8161139e5760405162461bcd60e51b815260206004820152602360248201527f46697865645261746545786368616e67653a20526174696f206d7573742062656044820152620203e360ec1b606482015260840161061b565b6000838152600360208190526040918290200183905551339084907fe50f9919fdc524004a4ee0cb934f4734f144bec0713a52e5483b753f5de0f08c906113e89086815260200190565b60405180910390a3505050565b600083815260036020526040902054839060ff166114255760405162461bcd60e51b815260040161061b90612cf7565b600260005414156114485760405162461bcd60e51b815260040161061b90612cc0565b60026000558261146a5760405162461bcd60e51b815260040161061b90612d42565b6000848152600360205260409020600c015461010090046001600160a01b0316156114cd576000848152600360205260409020600c015461010090046001600160a01b031633146114cd5760405162461bcd60e51b815260040161061b90612d8b565b6000806000806114dd88886116f3565b9350935093509350858410156115445760405162461bcd60e51b815260206004820152602660248201527f46697865645261746545786368616e67653a20546f6f20666577206261736520604482015265746f6b656e7360d01b606482015260840161061b565b6000888152600360205260409020600b01546115609083612674565b6000898152600360205260409020600b810191909155600a01546115849082612674565b6000898152600360205260409020600a810191909155600101546115b3906001600160a01b031633308a612680565b6000888152600360205260409020600601546115cf9088612674565b60008981526003602052604090206006810191909155600701548411156116295760008881526003602052604090208054600290910154611624916001600160a01b0391821691610100909104163387612680565b611673565b60008881526003602052604090206007015461164590846126be565b6000898152600360205260409020600781019190915560020154611673906001600160a01b0316338661260c565b6000888152600360209081526040918290206002015482518781529182018a90526001600160a01b0316918101919091526060810182905260808101839052339089907f71999bcde73cf4958b3a13dcbc60ff31366318eb6e67b45c93725aa07f89cbd29060a0015b60405180910390a350506001600055505050505050565b600082815260036020526040812054819081908190869060ff166117295760405162461bcd60e51b815260040161061b90612cf7565b6000878152600360205260409020600401546117a390670de0b6b3a76400009061179d9061175890600a612edb565b60008b81526003602052604090206005015461179d9061177990600a612edb565b60008d81526003602081905260409091200154611797908d906126ca565b906126ca565b906126d6565b6000888152600360205260409020600201549094506117ca906001600160a01b031661259d565b1561180f5760008781526003602052604090206002015461180c90670de0b6b3a76400009061179d90611805906001600160a01b031661259d565b87906126ca565b92505b60008781526003602052604090206008015461183a90670de0b6b3a76400009061179d9087906126ca565b91506118508361184a86856126be565b906126be565b94505092959194509250565b600082815260036020526040902054829061010090046001600160a01b031633146118995760405162461bcd60e51b815260040161061b90612c77565b600083815260036020908152604091829020600c01805460ff19168515159081179091559151918252339185917fe28e899e0f5d6fba0c8d73d1888083bcc62d4d9806d2e26fcf1f607c3ed52f5391016113e8565b6000828152600360205260409020600901546001600160a01b031633146119505760405162461bcd60e51b81526020600482015260166024820152753737ba1036b0b935b2ba2332b2a1b7b63632b1ba37b960511b604482015260640161061b565b60009182526003602052604090912060090180546001600160a01b0319166001600160a01b03909216919091179055565b600083815260036020526040902054839060ff166119b15760405162461bcd60e51b815260040161061b90612cf7565b600260005414156119d45760405162461bcd60e51b815260040161061b90612cc0565b6002600055826119f65760405162461bcd60e51b815260040161061b90612d42565b6000848152600360205260409020600c015461010090046001600160a01b031615611a59576000848152600360205260409020600c015461010090046001600160a01b03163314611a595760405162461bcd60e51b815260040161061b90612d8b565b600080600080611a698888612396565b935093509350935085841115611ad15760405162461bcd60e51b815260206004820152602760248201527f46697865645261746545786368616e67653a20546f6f206d616e79206261736560448201526620746f6b656e7360c81b606482015260840161061b565b6000888152600360205260409020600b0154611aed9083612674565b6000898152600360205260409020600b810191909155600a0154611b119082612674565b6000898152600360205260409020600a81019190915560020154611b40906001600160a01b0316333087612680565b600088815260036020526040902060070154611b5c9084612674565b6000898152600360205260409020600781019190915560060154871115611ccc576000888152600360205260409020600c015460ff168015611c155750600088815260036020526040908190206001015490516355138f0d60e11b81523060048201526001600160a01b039091169063aa271e1a90602401602060405180830381865afa158015611bf1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c159190612ee7565b15611c9357600088815260036020526040908190206001015490516340c10f1960e01b8152336004820152602481018990526001600160a01b03909116906340c10f1990604401600060405180830381600087803b158015611c7657600080fd5b505af1158015611c8a573d6000803e3d6000fd5b50505050611d16565b60008881526003602052604090208054600190910154611cc7916001600160a01b039182169161010090910416338a612680565b611d16565b600088815260036020526040902060060154611ce890886126be565b6000898152600360205260409020600681019190915560010154611d16906001600160a01b0316338961260c565b6000888152600360209081526040918290206001015482518781529182018a90526001600160a01b0316918101919091526060810182905260808101839052339089907f71999bcde73cf4958b3a13dcbc60ff31366318eb6e67b45c93725aa07f89cbd29060a0016116dc565b60008181526003602052604081205460ff16611da157506000919050565b6000828152600360205260408082206002810154905491516370a0823160e01b81526101009092046001600160a01b03908116600484015216906370a0823190602401602060405180830381865afa158015611e01573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e259190612f04565b600084815260036020526040808220600281015490549151636eb1769f60e11b81526001600160a01b0361010090930483166004820152306024820152939450919291169063dd62ed3e90604401602060405180830381865afa158015611e90573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611eb49190612f04565b905080821015611ee257600084815260036020526040902060070154611edb908390612674565b9250611f02565b600084815260036020526040902060070154611eff908290612674565b92505b50505b919050565b6000828152600360205260409020600901546001600160a01b03163314611f6c5760405162461bcd60e51b81526020600482015260166024820152753737ba1036b0b935b2ba2332b2a1b7b63632b1ba37b960511b604482015260640161061b565b60009182526003602052604090912060080155565b60026000541415611fa45760405162461bcd60e51b815260040161061b90612cc0565b60026000818155828152600360205260408120600a8101805492905560098101549201549091611fe1916001600160a01b0390811691168361260c565b6000828152600360209081526040918290206002015491518381526001600160a01b039092169184917f192a3cd95e40313e0e12c28b398e31633936e38d134419161f883c8d640790559101611255565b604080516001600160a01b0380861660208301528085169282019290925290821660608201526000906080016040516020818303038152906040528051906020012090505b9392505050565b60008181526003602052604081205460ff1661209c57506000919050565b6000828152600360205260409020600c015460ff1680156121345750600082815260036020526040908190206001015490516355138f0d60e11b81523060048201526001600160a01b039091169063aa271e1a90602401602060405180830381865afa158015612110573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121349190612ee7565b1561223f576000828152600360209081526040918290206001015482516318160ddd60e01b815292516001600160a01b03909116926318160ddd9260048083019391928290030181865afa158015612190573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121b49190612f04565b600083815260036020908152604091829020600101548251631aa93a7560e11b815292516001600160a01b039091169263355274ea9260048083019391928290030181865afa15801561220b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061222f9190612f04565b6122399190612f1d565b92915050565b6000828152600360205260408082206001810154905491516370a0823160e01b81526101009092046001600160a01b03908116600484015216906370a0823190602401602060405180830381865afa15801561229f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122c39190612f04565b600084815260036020526040808220600181015490549151636eb1769f60e11b81526001600160a01b0361010090930483166004820152306024820152939450919291169063dd62ed3e90604401602060405180830381865afa15801561232e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123529190612f04565b90508082101561237957600084815260036020526040902060060154611edb908390612674565b600084815260036020526040902060060154611eff908290612674565b600082815260036020526040812054819081908190869060ff166123cc5760405162461bcd60e51b815260040161061b90612cf7565b6000878152600360205260409020600401546123fb90670de0b6b3a76400009061179d9061175890600a612edb565b600088815260036020526040902060020154909450612422906001600160a01b031661259d565b156124605760008781526003602052604090206002015461245d90670de0b6b3a76400009061179d90611805906001600160a01b031661259d565b92505b60008781526003602052604090206008015461248b90670de0b6b3a76400009061179d9087906126ca565b91506118508361249b8685612674565b90612674565b600081815260036020526040902054819061010090046001600160a01b031633146124de5760405162461bcd60e51b815260040161061b90612c77565b600260005414156125015760405162461bcd60e51b815260040161061b90612cc0565b6002600081815583815260036020526040812060078101805492905580549201549091612540916001600160a01b03908116916101009004168361260c565b6000838152600360209081526040918290206002810154905492518481526001600160a01b039182169361010090049091169186917fecc75f4464886bee0a1c5eae61c0cb4b99c64c5e9cdebe3696217d266f8b16369101611072565b600154604051637c0aa57760e11b81526001600160a01b038381166004830152600092169063f8154aee90602401602060405180830381865afa1580156125e8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122399190612f04565b6040516001600160a01b03831660248201526044810182905261266f90849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526126e2565b505050565b60006120778284612f34565b6040516001600160a01b03808516602483015283166044820152606481018290526126b89085906323b872dd60e01b90608401612638565b50505050565b60006120778284612f1d565b60006120778284612f4c565b60006120778284612f6b565b6000612737826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166127b49092919063ffffffff16565b80519091501561266f57808060200190518101906127559190612ee7565b61266f5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161061b565b60606127c384846000856127cb565b949350505050565b60608247101561282c5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161061b565b843b61287a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161061b565b600080866001600160a01b031685876040516128969190612fb9565b60006040518083038185875af1925050503d80600081146128d3576040519150601f19603f3d011682016040523d82523d6000602084013e6128d8565b606091505b50915091506128e88282866128f3565b979650505050505050565b60608315612902575081612077565b8251156129125782518084602001fd5b8160405162461bcd60e51b815260040161061b9190612fd5565b80356001600160a01b0381168114611f0557600080fd5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561298257612982612943565b604052919050565b600067ffffffffffffffff8211156129a4576129a4612943565b5060051b60200190565b600082601f8301126129bf57600080fd5b813560206129d46129cf8361298a565b612959565b82815260059290921b840181019181810190868411156129f357600080fd5b8286015b84811015612a0e57803583529183019183016129f7565b509695505050505050565b600080600060608486031215612a2e57600080fd5b612a378461292c565b925060208085013567ffffffffffffffff80821115612a5557600080fd5b818701915087601f830112612a6957600080fd5b8135612a776129cf8261298a565b81815260059190911b8301840190848101908a831115612a9657600080fd5b938501935b82851015612abb57612aac8561292c565b82529385019390850190612a9b565b965050506040870135925080831115612ad357600080fd5b5050612ae1868287016129ae565b9150509250925092565b600060208284031215612afd57600080fd5b5035919050565b6020808252825182820181905260009190848201906040850190845b81811015612b3c57835183529284019291840191600101612b20565b50909695505050505050565b60008060408385031215612b5b57600080fd5b82359150612b6b6020840161292c565b90509250929050565b60008060408385031215612b8757600080fd5b50508035926020909101359150565b600080600060608486031215612bab57600080fd5b505081359360208301359350604090920135919050565b8015158114612bd057600080fd5b50565b60008060408385031215612be657600080fd5b823591506020830135612bf881612bc2565b809150509250929050565b600080600060608486031215612c1857600080fd5b612c218461292c565b9250612c2f6020850161292c565b9150612c3d6040850161292c565b90509250925092565b600060208284031215612c5857600080fd5b6120778261292c565b634e487b7160e01b600052603260045260246000fd5b60208082526029908201527f46697865645261746545786368616e67653a20696e76616c69642065786368616040820152683733b29037bbb732b960b91b606082015260800190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b6020808252602b908201527f46697865645261746545786368616e67653a2045786368616e676520646f657360408201526a206e6f742065786973742160a81b606082015260800190565b60208082526029908201527f46697865645261746545786368616e67653a207a65726f206461746120746f6b604082015268195b88185b5bdd5b9d60ba1b606082015260800190565b60208082526036908201527f46697865645261746545786368616e67653a205468697320616464726573732060408201527506973206e6f7420616c6c6f77656420746f20737761760541b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115612e32578160001904821115612e1857612e18612de1565b80851615612e2557918102915b93841c9390800290612dfc565b509250929050565b600082612e4957506001612239565b81612e5657506000612239565b8160018114612e6c5760028114612e7657612e92565b6001915050612239565b60ff841115612e8757612e87612de1565b50506001821b612239565b5060208310610133831016604e8410600b8410161715612eb5575081810a612239565b612ebf8383612df7565b8060001904821115612ed357612ed3612de1565b029392505050565b60006120778383612e3a565b600060208284031215612ef957600080fd5b815161207781612bc2565b600060208284031215612f1657600080fd5b5051919050565b600082821015612f2f57612f2f612de1565b500390565b60008219821115612f4757612f47612de1565b500190565b6000816000190483118215151615612f6657612f66612de1565b500290565b600082612f8857634e487b7160e01b600052601260045260246000fd5b500490565b60005b83811015612fa8578181015183820152602001612f90565b838111156126b85750506000910152565b60008251612fcb818460208701612f8d565b9190910192915050565b6020815260008251806020840152612ff4816040850160208701612f8d565b601f01601f1916919091016040019291505056fea2646970667358221220ae3733c86a7fbdeda1e535bdcf4c655711beee316c6fde6e837493eeb818cb9764736f6c634300080a0033",
914
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101c45760003560e01c8063825b5cd6116100f9578063b686bcaf11610097578063c99733a711610071578063c99733a714610576578063f532129e14610589578063f8154aee1461059c578063f887ea40146105af57600080fd5b8063b686bcaf1461053d578063c1f6572e14610550578063c66274ea1461056357600080fd5b806388823872116100d357806388823872146104eb578063a28f78f1146104fe578063b32b56f914610511578063b42414291461053557600080fd5b8063825b5cd6146103c5578063855058dd146103d857806385fcbc2f146104d857600080fd5b80635c36901c116101665780636e4c6269116101405780636e4c62691461035957806371dc14b21461036c57806379dd28361461039f5780637c82ebe9146103b257600080fd5b80635c36901c1461030057806360311e9514610333578063680819eb1461034657600080fd5b806324cb477e116101a257806324cb477e14610247578063450dccc31461025c5780634c87087d1461026f5780635acfedc7146102ed57600080fd5b8063012c3275146101c95780630b3b430d146101ef5780631e2e3a6b14610232575b600080fd5b6101dc6101d7366004612a19565b6105c2565b6040519081526020015b60405180910390f35b6102026101fd366004612aeb565b610d37565b604080519586526001600160a01b039094166020860152928401919091526060830152608082015260a0016101e6565b61023a610e41565b6040516101e69190612b04565b61025a610255366004612aeb565b610e99565b005b61025a61026a366004612aeb565b610f78565b61028261027d366004612aeb565b611084565b604080516001600160a01b039d8e1681529b8d1660208d01528b0199909952999096166060890152608088019490945260a0870192909252151560c086015260e0850152610100840152610120830152610140820192909252901515610160820152610180016101e6565b61025a6102fb366004612aeb565b6111ab565b61032361030e366004612aeb565b60009081526003602052604090205460ff1690565b60405190151581526020016101e6565b61025a610341366004612b48565b611266565b61025a610354366004612b74565b611308565b61025a610367366004612b96565b6113f5565b61037f61037a366004612b74565b6116f3565b6040805194855260208501939093529183015260608201526080016101e6565b61025a6103ad366004612bd3565b61185c565b61025a6103c0366004612b48565b6118ee565b61025a6103d3366004612b96565b611981565b6104c06103e6366004612aeb565b60009081526003602081815260409283902083516101e081018552815460ff808216151583526001600160a01b03610100928390048116958401959095526001840154851696830196909652600283015484166060830152938201546080820152600482015460a0820152600582015460c0820152600682015460e0820152600782015484820152600882015461012082015260098201548316610140820152600a820154610160820152600b820154610180820152600c9091015493841615156101a0820152919092049091166101c090910181905290565b6040516001600160a01b0390911681526020016101e6565b6101dc6104e6366004612aeb565b611d83565b61025a6104f9366004612b74565b611f0a565b6002546104c0906001600160a01b031681565b6101dc61051f366004612aeb565b6000908152600360208190526040909120015490565b6004546101dc565b61025a61054b366004612aeb565b611f81565b6101dc61055e366004612c03565b612032565b6101dc610571366004612aeb565b61207e565b61037f610584366004612b74565b612396565b61025a610597366004612aeb565b6124a1565b6101dc6105aa366004612c46565b61259d565b6001546104c0906001600160a01b031681565b6001546000906001600160a01b031633146106245760405162461bcd60e51b815260206004820152601e60248201527f46697865645261746545786368616e67653a206f6e6c7920726f75746572000060448201526064015b60405180910390fd5b60006001600160a01b03168360008151811061064257610642612c61565b60200260200101516001600160a01b031614156106bd5760405162461bcd60e51b815260206004820152603360248201527f46697865645261746545786368616e67653a20496e76616c69642062617365746044820152726f6b656e2c20207a65726f206164647265737360681b606482015260840161061b565b6001600160a01b03841661072f5760405162461bcd60e51b815260206004820152603360248201527f46697865645261746545786368616e67653a20496e76616c69642064617461746044820152726f6b656e2c20207a65726f206164647265737360681b606482015260840161061b565b836001600160a01b03168360008151811061074c5761074c612c61565b60200260200101516001600160a01b031614156107d15760405162461bcd60e51b815260206004820152603760248201527f46697865645261746545786368616e67653a20496e76616c696420646174617460448201527f6f6b656e2c2020657175616c732062617365746f6b656e000000000000000000606482015260840161061b565b816002815181106107e4576107e4612c61565b6020026020010151600014156108535760405162461bcd60e51b815260206004820152602e60248201527f46697865645261746545786368616e67653a20496e76616c696420657863686160448201526d6e676520726174652076616c756560901b606482015260840161061b565b6108928360008151811061086957610869612c61565b6020026020010151858560018151811061088557610885612c61565b6020026020010151612032565b60008181526003602081905260409091200154909150156109095760405162461bcd60e51b815260206004820152602b60248201527f46697865645261746545786368616e67653a2045786368616e676520616c726560448201526a616479206578697374732160a81b606482015260840161061b565b6000600190508260048151811061092257610922612c61565b602002602001015160001415610936575060005b604051806101e001604052806001151581526020018560018151811061095e5761095e612c61565b60200260200101516001600160a01b03168152602001866001600160a01b031681526020018560008151811061099657610996612c61565b60200260200101516001600160a01b03168152602001846002815181106109bf576109bf612c61565b60200260200101518152602001846001815181106109df576109df612c61565b60200260200101518152602001846000815181106109ff576109ff612c61565b60200260200101518152602001600081526020016000815260200184600381518110610a2d57610a2d612c61565b6020026020010151815260200185600281518110610a4d57610a4d612c61565b60200260200101516001600160a01b031681526020016000815260200160008152602001821515815260200185600381518110610a8c57610a8c612c61565b6020908102919091018101516001600160a01b0390811690925260008581526003808352604080832086518154958801518716610100908102610100600160a81b031992151583166001600160a81b0319988916171783559288015160018084018054928a166001600160a01b031993841617905560608a0151600285018054918b1691841691909117905560808a01519584019590955560a089015160048085019190915560c08a0151600585015560e08a01516006850155848a015160078501556101208a015160088501556101408a0151600985018054918b169190931617909155610160890151600a840155610180890151600b8401556101a0890151600c90930180546101c0909a01518916909402921515909116979095169690961795909517909455815493840182559081527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b9092018490558551908716918691610bfa57610bfa612c61565b60200260200101516001600160a01b0316837feb7a353641f7d3cc54b497ef1553fdc292b64d9cc3be8587c23dfba01f310b1987600181518110610c4057610c40612c61565b602002602001015187600281518110610c5b57610c5b612c61565b6020026020010151604051610c859291906001600160a01b03929092168252602082015260400190565b60405180910390a483600181518110610ca057610ca0612c61565b60200260200101516001600160a01b0316827fc7344c45124818d1d3a4c24ccb9b86d8b88d3bd05209b2a42b494cb32a50352960405160405180910390a383600381518110610cf157610cf1612c61565b60200260200101516001600160a01b0316827fcc1b4af8292e6b938f6743c78a62317c9a2d60e0d46b77776a027e53ce617c0c60405160405180910390a3509392505050565b600081815260036020818152604080842081516101e081018352815460ff808216151583526001600160a01b036101009283900481168488015260018501548116958401959095526002840154851660608401819052848801546080850152600485015460a0850152600585015460c0850152600685015460e085015260078501548385015260088501546101208501819052600986015487166101408601819052600a870154610160870152600b870154610180870152600c9096015492831615156101a0860152929091049094166101c0830152878752949093529293918291829190610e259061259d565b9350806101600151925080610180015191505091939590929450565b60606004805480602002602001604051908101604052809291908181526020018280548015610e8f57602002820191906000526020600020905b815481526020019060010190808311610e7b575b5050505050905090565b600081815260036020526040902054819061010090046001600160a01b03163314610ed65760405162461bcd60e51b815260040161061b90612c77565b60008281526003602052604090205460ff1615610f3157600082815260036020526040808220805460ff1916905551339184917f03da9148e1de78fba22de63c573465562ebf6ef878a1d3ea83790a560229984c9190a35050565b600082815260036020526040808220805460ff1916600117905551339184917fc7344c45124818d1d3a4c24ccb9b86d8b88d3bd05209b2a42b494cb32a5035299190a35050565b600081815260036020526040902054819061010090046001600160a01b03163314610fb55760405162461bcd60e51b815260040161061b90612c77565b60026000541415610fd85760405162461bcd60e51b815260040161061b90612cc0565b600260009081558281526003602052604081206006810180549290558054600190910154611019916001600160a01b0391821691610100909104168361260c565b6000838152600360209081526040918290206001810154905492518481526001600160a01b039182169361010090049091169186917fecc75f4464886bee0a1c5eae61c0cb4b99c64c5e9cdebe3696217d266f8b163691015b60405180910390a45050600160005550565b600081815260036020818152604080842081516101e081018352815460ff80821615158084526001600160a01b036101009384900481169785018890526001860154811696850187905260028601548116606086018190529886015460808601819052600487015460a08701819052600588015460c08801819052600689015460e0890152600789015487890152600889015461012089015260098901548416610140890152600a890154610160890152600b890154610180890152600c9098015494851615156101a088015294909304166101c08501529597949691959194909281908190819081906111778e61207e565b95506111828e611d83565b94508060e0015193508061010001519250806101a0015191505091939597999b5091939597999b565b600260005414156111ce5760405162461bcd60e51b815260040161061b90612cc0565b60026000818155828152600360205260408120600b8101805492905582549201549091611208916001600160a01b0390811691168361260c565b6000828152600360209081526040918290206002015491518381526001600160a01b039092169184917f457b44fd47c33fc65bfbd58d0202ad97fbed1bbc9881f56441d05fe9ebd58acf91015b60405180910390a350506001600055565b600082815260036020526040902054829061010090046001600160a01b031633146112a35760405162461bcd60e51b815260040161061b90612c77565b600083815260036020526040808220600c018054610100600160a81b0319166101006001600160a01b038716908102919091179091559051909185917fcc1b4af8292e6b938f6743c78a62317c9a2d60e0d46b77776a027e53ce617c0c9190a3505050565b600082815260036020526040902054829061010090046001600160a01b031633146113455760405162461bcd60e51b815260040161061b90612c77565b8161139e5760405162461bcd60e51b815260206004820152602360248201527f46697865645261746545786368616e67653a20526174696f206d7573742062656044820152620203e360ec1b606482015260840161061b565b6000838152600360208190526040918290200183905551339084907fe50f9919fdc524004a4ee0cb934f4734f144bec0713a52e5483b753f5de0f08c906113e89086815260200190565b60405180910390a3505050565b600083815260036020526040902054839060ff166114255760405162461bcd60e51b815260040161061b90612cf7565b600260005414156114485760405162461bcd60e51b815260040161061b90612cc0565b60026000558261146a5760405162461bcd60e51b815260040161061b90612d42565b6000848152600360205260409020600c015461010090046001600160a01b0316156114cd576000848152600360205260409020600c015461010090046001600160a01b031633146114cd5760405162461bcd60e51b815260040161061b90612d8b565b6000806000806114dd88886116f3565b9350935093509350858410156115445760405162461bcd60e51b815260206004820152602660248201527f46697865645261746545786368616e67653a20546f6f20666577206261736520604482015265746f6b656e7360d01b606482015260840161061b565b6000888152600360205260409020600b01546115609083612674565b6000898152600360205260409020600b810191909155600a01546115849082612674565b6000898152600360205260409020600a810191909155600101546115b3906001600160a01b031633308a612680565b6000888152600360205260409020600601546115cf9088612674565b60008981526003602052604090206006810191909155600701548411156116295760008881526003602052604090208054600290910154611624916001600160a01b0391821691610100909104163387612680565b611673565b60008881526003602052604090206007015461164590846126be565b6000898152600360205260409020600781019190915560020154611673906001600160a01b0316338661260c565b6000888152600360209081526040918290206002015482518781529182018a90526001600160a01b0316918101919091526060810182905260808101839052339089907f71999bcde73cf4958b3a13dcbc60ff31366318eb6e67b45c93725aa07f89cbd29060a0015b60405180910390a350506001600055505050505050565b600082815260036020526040812054819081908190869060ff166117295760405162461bcd60e51b815260040161061b90612cf7565b6000878152600360205260409020600401546117a390670de0b6b3a76400009061179d9061175890600a612edb565b60008b81526003602052604090206005015461179d9061177990600a612edb565b60008d81526003602081905260409091200154611797908d906126ca565b906126ca565b906126d6565b6000888152600360205260409020600201549094506117ca906001600160a01b031661259d565b1561180f5760008781526003602052604090206002015461180c90670de0b6b3a76400009061179d90611805906001600160a01b031661259d565b87906126ca565b92505b60008781526003602052604090206008015461183a90670de0b6b3a76400009061179d9087906126ca565b91506118508361184a86856126be565b906126be565b94505092959194509250565b600082815260036020526040902054829061010090046001600160a01b031633146118995760405162461bcd60e51b815260040161061b90612c77565b600083815260036020908152604091829020600c01805460ff19168515159081179091559151918252339185917fe28e899e0f5d6fba0c8d73d1888083bcc62d4d9806d2e26fcf1f607c3ed52f5391016113e8565b6000828152600360205260409020600901546001600160a01b031633146119505760405162461bcd60e51b81526020600482015260166024820152753737ba1036b0b935b2ba2332b2a1b7b63632b1ba37b960511b604482015260640161061b565b60009182526003602052604090912060090180546001600160a01b0319166001600160a01b03909216919091179055565b600083815260036020526040902054839060ff166119b15760405162461bcd60e51b815260040161061b90612cf7565b600260005414156119d45760405162461bcd60e51b815260040161061b90612cc0565b6002600055826119f65760405162461bcd60e51b815260040161061b90612d42565b6000848152600360205260409020600c015461010090046001600160a01b031615611a59576000848152600360205260409020600c015461010090046001600160a01b03163314611a595760405162461bcd60e51b815260040161061b90612d8b565b600080600080611a698888612396565b935093509350935085841115611ad15760405162461bcd60e51b815260206004820152602760248201527f46697865645261746545786368616e67653a20546f6f206d616e79206261736560448201526620746f6b656e7360c81b606482015260840161061b565b6000888152600360205260409020600b0154611aed9083612674565b6000898152600360205260409020600b810191909155600a0154611b119082612674565b6000898152600360205260409020600a81019190915560020154611b40906001600160a01b0316333087612680565b600088815260036020526040902060070154611b5c9084612674565b6000898152600360205260409020600781019190915560060154871115611ccc576000888152600360205260409020600c015460ff168015611c155750600088815260036020526040908190206001015490516355138f0d60e11b81523060048201526001600160a01b039091169063aa271e1a90602401602060405180830381865afa158015611bf1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c159190612ee7565b15611c9357600088815260036020526040908190206001015490516340c10f1960e01b8152336004820152602481018990526001600160a01b03909116906340c10f1990604401600060405180830381600087803b158015611c7657600080fd5b505af1158015611c8a573d6000803e3d6000fd5b50505050611d16565b60008881526003602052604090208054600190910154611cc7916001600160a01b039182169161010090910416338a612680565b611d16565b600088815260036020526040902060060154611ce890886126be565b6000898152600360205260409020600681019190915560010154611d16906001600160a01b0316338961260c565b6000888152600360209081526040918290206001015482518781529182018a90526001600160a01b0316918101919091526060810182905260808101839052339089907f71999bcde73cf4958b3a13dcbc60ff31366318eb6e67b45c93725aa07f89cbd29060a0016116dc565b60008181526003602052604081205460ff16611da157506000919050565b6000828152600360205260408082206002810154905491516370a0823160e01b81526101009092046001600160a01b03908116600484015216906370a0823190602401602060405180830381865afa158015611e01573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e259190612f04565b600084815260036020526040808220600281015490549151636eb1769f60e11b81526001600160a01b0361010090930483166004820152306024820152939450919291169063dd62ed3e90604401602060405180830381865afa158015611e90573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611eb49190612f04565b905080821015611ee257600084815260036020526040902060070154611edb908390612674565b9250611f02565b600084815260036020526040902060070154611eff908290612674565b92505b50505b919050565b6000828152600360205260409020600901546001600160a01b03163314611f6c5760405162461bcd60e51b81526020600482015260166024820152753737ba1036b0b935b2ba2332b2a1b7b63632b1ba37b960511b604482015260640161061b565b60009182526003602052604090912060080155565b60026000541415611fa45760405162461bcd60e51b815260040161061b90612cc0565b60026000818155828152600360205260408120600a8101805492905560098101549201549091611fe1916001600160a01b0390811691168361260c565b6000828152600360209081526040918290206002015491518381526001600160a01b039092169184917f192a3cd95e40313e0e12c28b398e31633936e38d134419161f883c8d640790559101611255565b604080516001600160a01b0380861660208301528085169282019290925290821660608201526000906080016040516020818303038152906040528051906020012090505b9392505050565b60008181526003602052604081205460ff1661209c57506000919050565b6000828152600360205260409020600c015460ff1680156121345750600082815260036020526040908190206001015490516355138f0d60e11b81523060048201526001600160a01b039091169063aa271e1a90602401602060405180830381865afa158015612110573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121349190612ee7565b1561223f576000828152600360209081526040918290206001015482516318160ddd60e01b815292516001600160a01b03909116926318160ddd9260048083019391928290030181865afa158015612190573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121b49190612f04565b600083815260036020908152604091829020600101548251631aa93a7560e11b815292516001600160a01b039091169263355274ea9260048083019391928290030181865afa15801561220b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061222f9190612f04565b6122399190612f1d565b92915050565b6000828152600360205260408082206001810154905491516370a0823160e01b81526101009092046001600160a01b03908116600484015216906370a0823190602401602060405180830381865afa15801561229f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122c39190612f04565b600084815260036020526040808220600181015490549151636eb1769f60e11b81526001600160a01b0361010090930483166004820152306024820152939450919291169063dd62ed3e90604401602060405180830381865afa15801561232e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123529190612f04565b90508082101561237957600084815260036020526040902060060154611edb908390612674565b600084815260036020526040902060060154611eff908290612674565b600082815260036020526040812054819081908190869060ff166123cc5760405162461bcd60e51b815260040161061b90612cf7565b6000878152600360205260409020600401546123fb90670de0b6b3a76400009061179d9061175890600a612edb565b600088815260036020526040902060020154909450612422906001600160a01b031661259d565b156124605760008781526003602052604090206002015461245d90670de0b6b3a76400009061179d90611805906001600160a01b031661259d565b92505b60008781526003602052604090206008015461248b90670de0b6b3a76400009061179d9087906126ca565b91506118508361249b8685612674565b90612674565b600081815260036020526040902054819061010090046001600160a01b031633146124de5760405162461bcd60e51b815260040161061b90612c77565b600260005414156125015760405162461bcd60e51b815260040161061b90612cc0565b6002600081815583815260036020526040812060078101805492905580549201549091612540916001600160a01b03908116916101009004168361260c565b6000838152600360209081526040918290206002810154905492518481526001600160a01b039182169361010090049091169186917fecc75f4464886bee0a1c5eae61c0cb4b99c64c5e9cdebe3696217d266f8b16369101611072565b600154604051637c0aa57760e11b81526001600160a01b038381166004830152600092169063f8154aee90602401602060405180830381865afa1580156125e8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122399190612f04565b6040516001600160a01b03831660248201526044810182905261266f90849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526126e2565b505050565b60006120778284612f34565b6040516001600160a01b03808516602483015283166044820152606481018290526126b89085906323b872dd60e01b90608401612638565b50505050565b60006120778284612f1d565b60006120778284612f4c565b60006120778284612f6b565b6000612737826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166127b49092919063ffffffff16565b80519091501561266f57808060200190518101906127559190612ee7565b61266f5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161061b565b60606127c384846000856127cb565b949350505050565b60608247101561282c5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161061b565b843b61287a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161061b565b600080866001600160a01b031685876040516128969190612fb9565b60006040518083038185875af1925050503d80600081146128d3576040519150601f19603f3d011682016040523d82523d6000602084013e6128d8565b606091505b50915091506128e88282866128f3565b979650505050505050565b60608315612902575081612077565b8251156129125782518084602001fd5b8160405162461bcd60e51b815260040161061b9190612fd5565b80356001600160a01b0381168114611f0557600080fd5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561298257612982612943565b604052919050565b600067ffffffffffffffff8211156129a4576129a4612943565b5060051b60200190565b600082601f8301126129bf57600080fd5b813560206129d46129cf8361298a565b612959565b82815260059290921b840181019181810190868411156129f357600080fd5b8286015b84811015612a0e57803583529183019183016129f7565b509695505050505050565b600080600060608486031215612a2e57600080fd5b612a378461292c565b925060208085013567ffffffffffffffff80821115612a5557600080fd5b818701915087601f830112612a6957600080fd5b8135612a776129cf8261298a565b81815260059190911b8301840190848101908a831115612a9657600080fd5b938501935b82851015612abb57612aac8561292c565b82529385019390850190612a9b565b965050506040870135925080831115612ad357600080fd5b5050612ae1868287016129ae565b9150509250925092565b600060208284031215612afd57600080fd5b5035919050565b6020808252825182820181905260009190848201906040850190845b81811015612b3c57835183529284019291840191600101612b20565b50909695505050505050565b60008060408385031215612b5b57600080fd5b82359150612b6b6020840161292c565b90509250929050565b60008060408385031215612b8757600080fd5b50508035926020909101359150565b600080600060608486031215612bab57600080fd5b505081359360208301359350604090920135919050565b8015158114612bd057600080fd5b50565b60008060408385031215612be657600080fd5b823591506020830135612bf881612bc2565b809150509250929050565b600080600060608486031215612c1857600080fd5b612c218461292c565b9250612c2f6020850161292c565b9150612c3d6040850161292c565b90509250925092565b600060208284031215612c5857600080fd5b6120778261292c565b634e487b7160e01b600052603260045260246000fd5b60208082526029908201527f46697865645261746545786368616e67653a20696e76616c69642065786368616040820152683733b29037bbb732b960b91b606082015260800190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b6020808252602b908201527f46697865645261746545786368616e67653a2045786368616e676520646f657360408201526a206e6f742065786973742160a81b606082015260800190565b60208082526029908201527f46697865645261746545786368616e67653a207a65726f206461746120746f6b604082015268195b88185b5bdd5b9d60ba1b606082015260800190565b60208082526036908201527f46697865645261746545786368616e67653a205468697320616464726573732060408201527506973206e6f7420616c6c6f77656420746f20737761760541b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115612e32578160001904821115612e1857612e18612de1565b80851615612e2557918102915b93841c9390800290612dfc565b509250929050565b600082612e4957506001612239565b81612e5657506000612239565b8160018114612e6c5760028114612e7657612e92565b6001915050612239565b60ff841115612e8757612e87612de1565b50506001821b612239565b5060208310610133831016604e8410600b8410161715612eb5575081810a612239565b612ebf8383612df7565b8060001904821115612ed357612ed3612de1565b029392505050565b60006120778383612e3a565b600060208284031215612ef957600080fd5b815161207781612bc2565b600060208284031215612f1657600080fd5b5051919050565b600082821015612f2f57612f2f612de1565b500390565b60008219821115612f4757612f47612de1565b500190565b6000816000190483118215151615612f6657612f66612de1565b500290565b600082612f8857634e487b7160e01b600052601260045260246000fd5b500490565b60005b83811015612fa8578181015183820152602001612f90565b838111156126b85750506000910152565b60008251612fcb818460208701612f8d565b9190910192915050565b6020815260008251806020840152612ff4816040850160208701612f8d565b601f01601f1916919091016040019291505056fea2646970667358221220ae3733c86a7fbdeda1e535bdcf4c655711beee316c6fde6e837493eeb818cb9764736f6c634300080a0033",
915
- "linkReferences": {},
916
- "deployedLinkReferences": {}
917
- }