@pendle/core-v2 5.12.2-cross-chain-pt → 6.0.0

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 (55) hide show
  1. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.dbg.json +1 -1
  2. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgReceiveEndpointUpg.sol/PendleMsgReceiveEndpointUpg.json +2 -2
  3. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.dbg.json +1 -1
  4. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/PendleMsgSendEndpointUpg.sol/PendleMsgSendEndpointUpg.json +2 -2
  5. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.dbg.json +1 -1
  6. package/build/artifacts/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol/LayerZeroHelper.json +2 -2
  7. package/build/artifacts/contracts/oracles/internal/PendleSparkLinearDiscountOracle.sol/PTExpiry.dbg.json +1 -1
  8. package/build/artifacts/contracts/oracles/internal/PendleSparkLinearDiscountOracle.sol/PendleSparkLinearDiscountOracle.dbg.json +1 -1
  9. package/build/artifacts/contracts/oracles/internal/PendleSparkLinearDiscountOracle.sol/PendleSparkLinearDiscountOracle.json +2 -2
  10. package/build/artifacts/contracts/oracles/internal/PendleSparkLinearDiscountOracleFactory.sol/PendleSparkLinearDiscountOracleFactory.dbg.json +1 -1
  11. package/build/artifacts/contracts/oracles/internal/PendleSparkLinearDiscountOracleFactory.sol/PendleSparkLinearDiscountOracleFactory.json +2 -2
  12. package/contracts/LiquidityMining/CrossChainMsg/libraries/LayerZeroHelper.sol +4 -0
  13. package/contracts/oracles/internal/PendleSparkLinearDiscountOracle.sol +1 -3
  14. package/deployments/1-core.json +1 -2
  15. package/deployments/999-core.json +52 -0
  16. package/deployments/999-offchain-helper.json +7 -0
  17. package/package.json +6 -6
  18. package/typechain-types/factories/PendleMsgReceiveEndpointUpg__factory.ts +1 -1
  19. package/typechain-types/factories/PendleMsgSendEndpointUpg__factory.ts +1 -1
  20. package/typechain-types/factories/PendleSparkLinearDiscountOracleFactory__factory.ts +1 -1
  21. package/typechain-types/factories/PendleSparkLinearDiscountOracle__factory.ts +1 -1
  22. package/typechain-types/hardhat.d.ts +0 -108
  23. package/typechain-types/index.ts +0 -24
  24. package/build/artifacts/contracts/cross-chain/FixedPricePTAMM.sol/FixedPricePTAMM.dbg.json +0 -4
  25. package/build/artifacts/contracts/cross-chain/FixedPricePTAMM.sol/FixedPricePTAMM.json +0 -466
  26. package/build/artifacts/contracts/cross-chain/factory/hub/PendlePTOFTAdapterFactory.sol/PendlePTOFTAdapterFactory.dbg.json +0 -4
  27. package/build/artifacts/contracts/cross-chain/factory/hub/PendlePTOFTAdapterFactory.sol/PendlePTOFTAdapterFactory.json +0 -191
  28. package/build/artifacts/contracts/cross-chain/oftImpl/hub/OFTAdapterImpl.sol/OFTAdapterImpl.dbg.json +0 -4
  29. package/build/artifacts/contracts/cross-chain/oftImpl/hub/OFTAdapterImpl.sol/OFTAdapterImpl.json +0 -1265
  30. package/build/artifacts/contracts/cross-chain/oftImpl/spoke/PendleBridgedPrincipalToken.sol/BasePendleBridgedPrincipalToken.dbg.json +0 -4
  31. package/build/artifacts/contracts/cross-chain/oftImpl/spoke/PendleBridgedPrincipalToken.sol/BasePendleBridgedPrincipalToken.json +0 -1527
  32. package/build/artifacts/contracts/cross-chain/oftImpl/spoke/PendleBridgedPrincipalToken.sol/PendleBridgedPrincipalToken_18Decimals.dbg.json +0 -4
  33. package/build/artifacts/contracts/cross-chain/oftImpl/spoke/PendleBridgedPrincipalToken.sol/PendleBridgedPrincipalToken_18Decimals.json +0 -1558
  34. package/build/artifacts/contracts/cross-chain/oftImpl/spoke/PendleBridgedPrincipalToken.sol/PendleBridgedPrincipalToken_6Decimals.dbg.json +0 -4
  35. package/build/artifacts/contracts/cross-chain/oftImpl/spoke/PendleBridgedPrincipalToken.sol/PendleBridgedPrincipalToken_6Decimals.json +0 -1558
  36. package/build/artifacts/contracts/cross-chain/oftImpl/spoke/PendleBridgedPrincipalToken.sol/PendleBridgedPrincipalToken_8Decimals.dbg.json +0 -4
  37. package/build/artifacts/contracts/cross-chain/oftImpl/spoke/PendleBridgedPrincipalToken.sol/PendleBridgedPrincipalToken_8Decimals.json +0 -1558
  38. package/build/artifacts/contracts/interfaces/IPBridgedPrincipalToken.sol/IPBridgedPrincipalToken.dbg.json +0 -4
  39. package/build/artifacts/contracts/interfaces/IPBridgedPrincipalToken.sol/IPBridgedPrincipalToken.json +0 -928
  40. package/build/artifacts/contracts/interfaces/IPChainlinkOracleEssential.sol/IPChainlinkOracleEssential.dbg.json +0 -4
  41. package/build/artifacts/contracts/interfaces/IPChainlinkOracleEssential.sol/IPChainlinkOracleEssential.json +0 -57
  42. package/build/artifacts/contracts/interfaces/IPFixedPricePTAMM.sol/IPFixedPricePTAMM.dbg.json +0 -4
  43. package/build/artifacts/contracts/interfaces/IPFixedPricePTAMM.sol/IPFixedPricePTAMM.json +0 -302
  44. package/build/artifacts/contracts/interfaces/IPFixedPricePTAMM.sol/IPFixedPricePTAMMSwapCallback.dbg.json +0 -4
  45. package/build/artifacts/contracts/interfaces/IPFixedPricePTAMM.sol/IPFixedPricePTAMMSwapCallback.json +0 -34
  46. package/build/artifacts/contracts/interfaces/IPPTOFTAdapterFactory.sol/IPPTOFTAdapterFactory.dbg.json +0 -4
  47. package/build/artifacts/contracts/interfaces/IPPTOFTAdapterFactory.sol/IPPTOFTAdapterFactory.json +0 -81
  48. package/contracts/cross-chain/FixedPricePTAMM.sol +0 -121
  49. package/contracts/cross-chain/factory/hub/PendlePTOFTAdapterFactory.sol +0 -33
  50. package/contracts/cross-chain/oftImpl/hub/OFTAdapterImpl.sol +0 -12
  51. package/contracts/cross-chain/oftImpl/spoke/PendleBridgedPrincipalToken.sol +0 -61
  52. package/contracts/interfaces/IPBridgedPrincipalToken.sol +0 -11
  53. package/contracts/interfaces/IPChainlinkOracleEssential.sol +0 -11
  54. package/contracts/interfaces/IPFixedPricePTAMM.sol +0 -54
  55. package/contracts/interfaces/IPPTOFTAdapterFactory.sol +0 -12
@@ -1,1265 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "OFTAdapterImpl",
4
- "sourceName": "contracts/cross-chain/oftImpl/hub/OFTAdapterImpl.sol",
5
- "abi": [
6
- {
7
- "inputs": [
8
- {
9
- "internalType": "address",
10
- "name": "_token",
11
- "type": "address"
12
- },
13
- {
14
- "internalType": "address",
15
- "name": "_endpoint",
16
- "type": "address"
17
- },
18
- {
19
- "internalType": "address",
20
- "name": "_delegate",
21
- "type": "address"
22
- }
23
- ],
24
- "stateMutability": "nonpayable",
25
- "type": "constructor"
26
- },
27
- {
28
- "inputs": [],
29
- "name": "InvalidDelegate",
30
- "type": "error"
31
- },
32
- {
33
- "inputs": [],
34
- "name": "InvalidEndpointCall",
35
- "type": "error"
36
- },
37
- {
38
- "inputs": [],
39
- "name": "InvalidLocalDecimals",
40
- "type": "error"
41
- },
42
- {
43
- "inputs": [
44
- {
45
- "internalType": "bytes",
46
- "name": "options",
47
- "type": "bytes"
48
- }
49
- ],
50
- "name": "InvalidOptions",
51
- "type": "error"
52
- },
53
- {
54
- "inputs": [],
55
- "name": "LzTokenUnavailable",
56
- "type": "error"
57
- },
58
- {
59
- "inputs": [
60
- {
61
- "internalType": "uint32",
62
- "name": "eid",
63
- "type": "uint32"
64
- }
65
- ],
66
- "name": "NoPeer",
67
- "type": "error"
68
- },
69
- {
70
- "inputs": [
71
- {
72
- "internalType": "uint256",
73
- "name": "msgValue",
74
- "type": "uint256"
75
- }
76
- ],
77
- "name": "NotEnoughNative",
78
- "type": "error"
79
- },
80
- {
81
- "inputs": [
82
- {
83
- "internalType": "address",
84
- "name": "addr",
85
- "type": "address"
86
- }
87
- ],
88
- "name": "OnlyEndpoint",
89
- "type": "error"
90
- },
91
- {
92
- "inputs": [
93
- {
94
- "internalType": "uint32",
95
- "name": "eid",
96
- "type": "uint32"
97
- },
98
- {
99
- "internalType": "bytes32",
100
- "name": "sender",
101
- "type": "bytes32"
102
- }
103
- ],
104
- "name": "OnlyPeer",
105
- "type": "error"
106
- },
107
- {
108
- "inputs": [],
109
- "name": "OnlySelf",
110
- "type": "error"
111
- },
112
- {
113
- "inputs": [
114
- {
115
- "internalType": "bytes",
116
- "name": "result",
117
- "type": "bytes"
118
- }
119
- ],
120
- "name": "SimulationResult",
121
- "type": "error"
122
- },
123
- {
124
- "inputs": [
125
- {
126
- "internalType": "uint256",
127
- "name": "amountLD",
128
- "type": "uint256"
129
- },
130
- {
131
- "internalType": "uint256",
132
- "name": "minAmountLD",
133
- "type": "uint256"
134
- }
135
- ],
136
- "name": "SlippageExceeded",
137
- "type": "error"
138
- },
139
- {
140
- "anonymous": false,
141
- "inputs": [
142
- {
143
- "components": [
144
- {
145
- "internalType": "uint32",
146
- "name": "eid",
147
- "type": "uint32"
148
- },
149
- {
150
- "internalType": "uint16",
151
- "name": "msgType",
152
- "type": "uint16"
153
- },
154
- {
155
- "internalType": "bytes",
156
- "name": "options",
157
- "type": "bytes"
158
- }
159
- ],
160
- "indexed": false,
161
- "internalType": "struct EnforcedOptionParam[]",
162
- "name": "_enforcedOptions",
163
- "type": "tuple[]"
164
- }
165
- ],
166
- "name": "EnforcedOptionSet",
167
- "type": "event"
168
- },
169
- {
170
- "anonymous": false,
171
- "inputs": [
172
- {
173
- "indexed": false,
174
- "internalType": "address",
175
- "name": "inspector",
176
- "type": "address"
177
- }
178
- ],
179
- "name": "MsgInspectorSet",
180
- "type": "event"
181
- },
182
- {
183
- "anonymous": false,
184
- "inputs": [
185
- {
186
- "indexed": true,
187
- "internalType": "bytes32",
188
- "name": "guid",
189
- "type": "bytes32"
190
- },
191
- {
192
- "indexed": false,
193
- "internalType": "uint32",
194
- "name": "srcEid",
195
- "type": "uint32"
196
- },
197
- {
198
- "indexed": true,
199
- "internalType": "address",
200
- "name": "toAddress",
201
- "type": "address"
202
- },
203
- {
204
- "indexed": false,
205
- "internalType": "uint256",
206
- "name": "amountReceivedLD",
207
- "type": "uint256"
208
- }
209
- ],
210
- "name": "OFTReceived",
211
- "type": "event"
212
- },
213
- {
214
- "anonymous": false,
215
- "inputs": [
216
- {
217
- "indexed": true,
218
- "internalType": "bytes32",
219
- "name": "guid",
220
- "type": "bytes32"
221
- },
222
- {
223
- "indexed": false,
224
- "internalType": "uint32",
225
- "name": "dstEid",
226
- "type": "uint32"
227
- },
228
- {
229
- "indexed": true,
230
- "internalType": "address",
231
- "name": "fromAddress",
232
- "type": "address"
233
- },
234
- {
235
- "indexed": false,
236
- "internalType": "uint256",
237
- "name": "amountSentLD",
238
- "type": "uint256"
239
- },
240
- {
241
- "indexed": false,
242
- "internalType": "uint256",
243
- "name": "amountReceivedLD",
244
- "type": "uint256"
245
- }
246
- ],
247
- "name": "OFTSent",
248
- "type": "event"
249
- },
250
- {
251
- "anonymous": false,
252
- "inputs": [
253
- {
254
- "indexed": true,
255
- "internalType": "address",
256
- "name": "previousOwner",
257
- "type": "address"
258
- },
259
- {
260
- "indexed": true,
261
- "internalType": "address",
262
- "name": "newOwner",
263
- "type": "address"
264
- }
265
- ],
266
- "name": "OwnershipTransferred",
267
- "type": "event"
268
- },
269
- {
270
- "anonymous": false,
271
- "inputs": [
272
- {
273
- "indexed": false,
274
- "internalType": "uint32",
275
- "name": "eid",
276
- "type": "uint32"
277
- },
278
- {
279
- "indexed": false,
280
- "internalType": "bytes32",
281
- "name": "peer",
282
- "type": "bytes32"
283
- }
284
- ],
285
- "name": "PeerSet",
286
- "type": "event"
287
- },
288
- {
289
- "anonymous": false,
290
- "inputs": [
291
- {
292
- "indexed": false,
293
- "internalType": "address",
294
- "name": "preCrimeAddress",
295
- "type": "address"
296
- }
297
- ],
298
- "name": "PreCrimeSet",
299
- "type": "event"
300
- },
301
- {
302
- "inputs": [],
303
- "name": "SEND",
304
- "outputs": [
305
- {
306
- "internalType": "uint16",
307
- "name": "",
308
- "type": "uint16"
309
- }
310
- ],
311
- "stateMutability": "view",
312
- "type": "function"
313
- },
314
- {
315
- "inputs": [],
316
- "name": "SEND_AND_CALL",
317
- "outputs": [
318
- {
319
- "internalType": "uint16",
320
- "name": "",
321
- "type": "uint16"
322
- }
323
- ],
324
- "stateMutability": "view",
325
- "type": "function"
326
- },
327
- {
328
- "inputs": [
329
- {
330
- "components": [
331
- {
332
- "internalType": "uint32",
333
- "name": "srcEid",
334
- "type": "uint32"
335
- },
336
- {
337
- "internalType": "bytes32",
338
- "name": "sender",
339
- "type": "bytes32"
340
- },
341
- {
342
- "internalType": "uint64",
343
- "name": "nonce",
344
- "type": "uint64"
345
- }
346
- ],
347
- "internalType": "struct Origin",
348
- "name": "origin",
349
- "type": "tuple"
350
- }
351
- ],
352
- "name": "allowInitializePath",
353
- "outputs": [
354
- {
355
- "internalType": "bool",
356
- "name": "",
357
- "type": "bool"
358
- }
359
- ],
360
- "stateMutability": "view",
361
- "type": "function"
362
- },
363
- {
364
- "inputs": [],
365
- "name": "approvalRequired",
366
- "outputs": [
367
- {
368
- "internalType": "bool",
369
- "name": "",
370
- "type": "bool"
371
- }
372
- ],
373
- "stateMutability": "pure",
374
- "type": "function"
375
- },
376
- {
377
- "inputs": [
378
- {
379
- "internalType": "uint32",
380
- "name": "_eid",
381
- "type": "uint32"
382
- },
383
- {
384
- "internalType": "uint16",
385
- "name": "_msgType",
386
- "type": "uint16"
387
- },
388
- {
389
- "internalType": "bytes",
390
- "name": "_extraOptions",
391
- "type": "bytes"
392
- }
393
- ],
394
- "name": "combineOptions",
395
- "outputs": [
396
- {
397
- "internalType": "bytes",
398
- "name": "",
399
- "type": "bytes"
400
- }
401
- ],
402
- "stateMutability": "view",
403
- "type": "function"
404
- },
405
- {
406
- "inputs": [],
407
- "name": "decimalConversionRate",
408
- "outputs": [
409
- {
410
- "internalType": "uint256",
411
- "name": "",
412
- "type": "uint256"
413
- }
414
- ],
415
- "stateMutability": "view",
416
- "type": "function"
417
- },
418
- {
419
- "inputs": [],
420
- "name": "endpoint",
421
- "outputs": [
422
- {
423
- "internalType": "contract ILayerZeroEndpointV2",
424
- "name": "",
425
- "type": "address"
426
- }
427
- ],
428
- "stateMutability": "view",
429
- "type": "function"
430
- },
431
- {
432
- "inputs": [
433
- {
434
- "internalType": "uint32",
435
- "name": "eid",
436
- "type": "uint32"
437
- },
438
- {
439
- "internalType": "uint16",
440
- "name": "msgType",
441
- "type": "uint16"
442
- }
443
- ],
444
- "name": "enforcedOptions",
445
- "outputs": [
446
- {
447
- "internalType": "bytes",
448
- "name": "enforcedOption",
449
- "type": "bytes"
450
- }
451
- ],
452
- "stateMutability": "view",
453
- "type": "function"
454
- },
455
- {
456
- "inputs": [
457
- {
458
- "components": [
459
- {
460
- "internalType": "uint32",
461
- "name": "srcEid",
462
- "type": "uint32"
463
- },
464
- {
465
- "internalType": "bytes32",
466
- "name": "sender",
467
- "type": "bytes32"
468
- },
469
- {
470
- "internalType": "uint64",
471
- "name": "nonce",
472
- "type": "uint64"
473
- }
474
- ],
475
- "internalType": "struct Origin",
476
- "name": "",
477
- "type": "tuple"
478
- },
479
- {
480
- "internalType": "bytes",
481
- "name": "",
482
- "type": "bytes"
483
- },
484
- {
485
- "internalType": "address",
486
- "name": "_sender",
487
- "type": "address"
488
- }
489
- ],
490
- "name": "isComposeMsgSender",
491
- "outputs": [
492
- {
493
- "internalType": "bool",
494
- "name": "",
495
- "type": "bool"
496
- }
497
- ],
498
- "stateMutability": "view",
499
- "type": "function"
500
- },
501
- {
502
- "inputs": [
503
- {
504
- "internalType": "uint32",
505
- "name": "_eid",
506
- "type": "uint32"
507
- },
508
- {
509
- "internalType": "bytes32",
510
- "name": "_peer",
511
- "type": "bytes32"
512
- }
513
- ],
514
- "name": "isPeer",
515
- "outputs": [
516
- {
517
- "internalType": "bool",
518
- "name": "",
519
- "type": "bool"
520
- }
521
- ],
522
- "stateMutability": "view",
523
- "type": "function"
524
- },
525
- {
526
- "inputs": [
527
- {
528
- "components": [
529
- {
530
- "internalType": "uint32",
531
- "name": "srcEid",
532
- "type": "uint32"
533
- },
534
- {
535
- "internalType": "bytes32",
536
- "name": "sender",
537
- "type": "bytes32"
538
- },
539
- {
540
- "internalType": "uint64",
541
- "name": "nonce",
542
- "type": "uint64"
543
- }
544
- ],
545
- "internalType": "struct Origin",
546
- "name": "_origin",
547
- "type": "tuple"
548
- },
549
- {
550
- "internalType": "bytes32",
551
- "name": "_guid",
552
- "type": "bytes32"
553
- },
554
- {
555
- "internalType": "bytes",
556
- "name": "_message",
557
- "type": "bytes"
558
- },
559
- {
560
- "internalType": "address",
561
- "name": "_executor",
562
- "type": "address"
563
- },
564
- {
565
- "internalType": "bytes",
566
- "name": "_extraData",
567
- "type": "bytes"
568
- }
569
- ],
570
- "name": "lzReceive",
571
- "outputs": [],
572
- "stateMutability": "payable",
573
- "type": "function"
574
- },
575
- {
576
- "inputs": [
577
- {
578
- "components": [
579
- {
580
- "components": [
581
- {
582
- "internalType": "uint32",
583
- "name": "srcEid",
584
- "type": "uint32"
585
- },
586
- {
587
- "internalType": "bytes32",
588
- "name": "sender",
589
- "type": "bytes32"
590
- },
591
- {
592
- "internalType": "uint64",
593
- "name": "nonce",
594
- "type": "uint64"
595
- }
596
- ],
597
- "internalType": "struct Origin",
598
- "name": "origin",
599
- "type": "tuple"
600
- },
601
- {
602
- "internalType": "uint32",
603
- "name": "dstEid",
604
- "type": "uint32"
605
- },
606
- {
607
- "internalType": "address",
608
- "name": "receiver",
609
- "type": "address"
610
- },
611
- {
612
- "internalType": "bytes32",
613
- "name": "guid",
614
- "type": "bytes32"
615
- },
616
- {
617
- "internalType": "uint256",
618
- "name": "value",
619
- "type": "uint256"
620
- },
621
- {
622
- "internalType": "address",
623
- "name": "executor",
624
- "type": "address"
625
- },
626
- {
627
- "internalType": "bytes",
628
- "name": "message",
629
- "type": "bytes"
630
- },
631
- {
632
- "internalType": "bytes",
633
- "name": "extraData",
634
- "type": "bytes"
635
- }
636
- ],
637
- "internalType": "struct InboundPacket[]",
638
- "name": "_packets",
639
- "type": "tuple[]"
640
- }
641
- ],
642
- "name": "lzReceiveAndRevert",
643
- "outputs": [],
644
- "stateMutability": "payable",
645
- "type": "function"
646
- },
647
- {
648
- "inputs": [
649
- {
650
- "components": [
651
- {
652
- "internalType": "uint32",
653
- "name": "srcEid",
654
- "type": "uint32"
655
- },
656
- {
657
- "internalType": "bytes32",
658
- "name": "sender",
659
- "type": "bytes32"
660
- },
661
- {
662
- "internalType": "uint64",
663
- "name": "nonce",
664
- "type": "uint64"
665
- }
666
- ],
667
- "internalType": "struct Origin",
668
- "name": "_origin",
669
- "type": "tuple"
670
- },
671
- {
672
- "internalType": "bytes32",
673
- "name": "_guid",
674
- "type": "bytes32"
675
- },
676
- {
677
- "internalType": "bytes",
678
- "name": "_message",
679
- "type": "bytes"
680
- },
681
- {
682
- "internalType": "address",
683
- "name": "_executor",
684
- "type": "address"
685
- },
686
- {
687
- "internalType": "bytes",
688
- "name": "_extraData",
689
- "type": "bytes"
690
- }
691
- ],
692
- "name": "lzReceiveSimulate",
693
- "outputs": [],
694
- "stateMutability": "payable",
695
- "type": "function"
696
- },
697
- {
698
- "inputs": [],
699
- "name": "msgInspector",
700
- "outputs": [
701
- {
702
- "internalType": "address",
703
- "name": "",
704
- "type": "address"
705
- }
706
- ],
707
- "stateMutability": "view",
708
- "type": "function"
709
- },
710
- {
711
- "inputs": [
712
- {
713
- "internalType": "uint32",
714
- "name": "",
715
- "type": "uint32"
716
- },
717
- {
718
- "internalType": "bytes32",
719
- "name": "",
720
- "type": "bytes32"
721
- }
722
- ],
723
- "name": "nextNonce",
724
- "outputs": [
725
- {
726
- "internalType": "uint64",
727
- "name": "nonce",
728
- "type": "uint64"
729
- }
730
- ],
731
- "stateMutability": "view",
732
- "type": "function"
733
- },
734
- {
735
- "inputs": [],
736
- "name": "oApp",
737
- "outputs": [
738
- {
739
- "internalType": "address",
740
- "name": "",
741
- "type": "address"
742
- }
743
- ],
744
- "stateMutability": "view",
745
- "type": "function"
746
- },
747
- {
748
- "inputs": [],
749
- "name": "oAppVersion",
750
- "outputs": [
751
- {
752
- "internalType": "uint64",
753
- "name": "senderVersion",
754
- "type": "uint64"
755
- },
756
- {
757
- "internalType": "uint64",
758
- "name": "receiverVersion",
759
- "type": "uint64"
760
- }
761
- ],
762
- "stateMutability": "pure",
763
- "type": "function"
764
- },
765
- {
766
- "inputs": [],
767
- "name": "oftVersion",
768
- "outputs": [
769
- {
770
- "internalType": "bytes4",
771
- "name": "interfaceId",
772
- "type": "bytes4"
773
- },
774
- {
775
- "internalType": "uint64",
776
- "name": "version",
777
- "type": "uint64"
778
- }
779
- ],
780
- "stateMutability": "pure",
781
- "type": "function"
782
- },
783
- {
784
- "inputs": [],
785
- "name": "owner",
786
- "outputs": [
787
- {
788
- "internalType": "address",
789
- "name": "",
790
- "type": "address"
791
- }
792
- ],
793
- "stateMutability": "view",
794
- "type": "function"
795
- },
796
- {
797
- "inputs": [
798
- {
799
- "internalType": "uint32",
800
- "name": "eid",
801
- "type": "uint32"
802
- }
803
- ],
804
- "name": "peers",
805
- "outputs": [
806
- {
807
- "internalType": "bytes32",
808
- "name": "peer",
809
- "type": "bytes32"
810
- }
811
- ],
812
- "stateMutability": "view",
813
- "type": "function"
814
- },
815
- {
816
- "inputs": [],
817
- "name": "preCrime",
818
- "outputs": [
819
- {
820
- "internalType": "address",
821
- "name": "",
822
- "type": "address"
823
- }
824
- ],
825
- "stateMutability": "view",
826
- "type": "function"
827
- },
828
- {
829
- "inputs": [
830
- {
831
- "components": [
832
- {
833
- "internalType": "uint32",
834
- "name": "dstEid",
835
- "type": "uint32"
836
- },
837
- {
838
- "internalType": "bytes32",
839
- "name": "to",
840
- "type": "bytes32"
841
- },
842
- {
843
- "internalType": "uint256",
844
- "name": "amountLD",
845
- "type": "uint256"
846
- },
847
- {
848
- "internalType": "uint256",
849
- "name": "minAmountLD",
850
- "type": "uint256"
851
- },
852
- {
853
- "internalType": "bytes",
854
- "name": "extraOptions",
855
- "type": "bytes"
856
- },
857
- {
858
- "internalType": "bytes",
859
- "name": "composeMsg",
860
- "type": "bytes"
861
- },
862
- {
863
- "internalType": "bytes",
864
- "name": "oftCmd",
865
- "type": "bytes"
866
- }
867
- ],
868
- "internalType": "struct SendParam",
869
- "name": "_sendParam",
870
- "type": "tuple"
871
- }
872
- ],
873
- "name": "quoteOFT",
874
- "outputs": [
875
- {
876
- "components": [
877
- {
878
- "internalType": "uint256",
879
- "name": "minAmountLD",
880
- "type": "uint256"
881
- },
882
- {
883
- "internalType": "uint256",
884
- "name": "maxAmountLD",
885
- "type": "uint256"
886
- }
887
- ],
888
- "internalType": "struct OFTLimit",
889
- "name": "oftLimit",
890
- "type": "tuple"
891
- },
892
- {
893
- "components": [
894
- {
895
- "internalType": "int256",
896
- "name": "feeAmountLD",
897
- "type": "int256"
898
- },
899
- {
900
- "internalType": "string",
901
- "name": "description",
902
- "type": "string"
903
- }
904
- ],
905
- "internalType": "struct OFTFeeDetail[]",
906
- "name": "oftFeeDetails",
907
- "type": "tuple[]"
908
- },
909
- {
910
- "components": [
911
- {
912
- "internalType": "uint256",
913
- "name": "amountSentLD",
914
- "type": "uint256"
915
- },
916
- {
917
- "internalType": "uint256",
918
- "name": "amountReceivedLD",
919
- "type": "uint256"
920
- }
921
- ],
922
- "internalType": "struct OFTReceipt",
923
- "name": "oftReceipt",
924
- "type": "tuple"
925
- }
926
- ],
927
- "stateMutability": "view",
928
- "type": "function"
929
- },
930
- {
931
- "inputs": [
932
- {
933
- "components": [
934
- {
935
- "internalType": "uint32",
936
- "name": "dstEid",
937
- "type": "uint32"
938
- },
939
- {
940
- "internalType": "bytes32",
941
- "name": "to",
942
- "type": "bytes32"
943
- },
944
- {
945
- "internalType": "uint256",
946
- "name": "amountLD",
947
- "type": "uint256"
948
- },
949
- {
950
- "internalType": "uint256",
951
- "name": "minAmountLD",
952
- "type": "uint256"
953
- },
954
- {
955
- "internalType": "bytes",
956
- "name": "extraOptions",
957
- "type": "bytes"
958
- },
959
- {
960
- "internalType": "bytes",
961
- "name": "composeMsg",
962
- "type": "bytes"
963
- },
964
- {
965
- "internalType": "bytes",
966
- "name": "oftCmd",
967
- "type": "bytes"
968
- }
969
- ],
970
- "internalType": "struct SendParam",
971
- "name": "_sendParam",
972
- "type": "tuple"
973
- },
974
- {
975
- "internalType": "bool",
976
- "name": "_payInLzToken",
977
- "type": "bool"
978
- }
979
- ],
980
- "name": "quoteSend",
981
- "outputs": [
982
- {
983
- "components": [
984
- {
985
- "internalType": "uint256",
986
- "name": "nativeFee",
987
- "type": "uint256"
988
- },
989
- {
990
- "internalType": "uint256",
991
- "name": "lzTokenFee",
992
- "type": "uint256"
993
- }
994
- ],
995
- "internalType": "struct MessagingFee",
996
- "name": "msgFee",
997
- "type": "tuple"
998
- }
999
- ],
1000
- "stateMutability": "view",
1001
- "type": "function"
1002
- },
1003
- {
1004
- "inputs": [],
1005
- "name": "renounceOwnership",
1006
- "outputs": [],
1007
- "stateMutability": "nonpayable",
1008
- "type": "function"
1009
- },
1010
- {
1011
- "inputs": [
1012
- {
1013
- "components": [
1014
- {
1015
- "internalType": "uint32",
1016
- "name": "dstEid",
1017
- "type": "uint32"
1018
- },
1019
- {
1020
- "internalType": "bytes32",
1021
- "name": "to",
1022
- "type": "bytes32"
1023
- },
1024
- {
1025
- "internalType": "uint256",
1026
- "name": "amountLD",
1027
- "type": "uint256"
1028
- },
1029
- {
1030
- "internalType": "uint256",
1031
- "name": "minAmountLD",
1032
- "type": "uint256"
1033
- },
1034
- {
1035
- "internalType": "bytes",
1036
- "name": "extraOptions",
1037
- "type": "bytes"
1038
- },
1039
- {
1040
- "internalType": "bytes",
1041
- "name": "composeMsg",
1042
- "type": "bytes"
1043
- },
1044
- {
1045
- "internalType": "bytes",
1046
- "name": "oftCmd",
1047
- "type": "bytes"
1048
- }
1049
- ],
1050
- "internalType": "struct SendParam",
1051
- "name": "_sendParam",
1052
- "type": "tuple"
1053
- },
1054
- {
1055
- "components": [
1056
- {
1057
- "internalType": "uint256",
1058
- "name": "nativeFee",
1059
- "type": "uint256"
1060
- },
1061
- {
1062
- "internalType": "uint256",
1063
- "name": "lzTokenFee",
1064
- "type": "uint256"
1065
- }
1066
- ],
1067
- "internalType": "struct MessagingFee",
1068
- "name": "_fee",
1069
- "type": "tuple"
1070
- },
1071
- {
1072
- "internalType": "address",
1073
- "name": "_refundAddress",
1074
- "type": "address"
1075
- }
1076
- ],
1077
- "name": "send",
1078
- "outputs": [
1079
- {
1080
- "components": [
1081
- {
1082
- "internalType": "bytes32",
1083
- "name": "guid",
1084
- "type": "bytes32"
1085
- },
1086
- {
1087
- "internalType": "uint64",
1088
- "name": "nonce",
1089
- "type": "uint64"
1090
- },
1091
- {
1092
- "components": [
1093
- {
1094
- "internalType": "uint256",
1095
- "name": "nativeFee",
1096
- "type": "uint256"
1097
- },
1098
- {
1099
- "internalType": "uint256",
1100
- "name": "lzTokenFee",
1101
- "type": "uint256"
1102
- }
1103
- ],
1104
- "internalType": "struct MessagingFee",
1105
- "name": "fee",
1106
- "type": "tuple"
1107
- }
1108
- ],
1109
- "internalType": "struct MessagingReceipt",
1110
- "name": "msgReceipt",
1111
- "type": "tuple"
1112
- },
1113
- {
1114
- "components": [
1115
- {
1116
- "internalType": "uint256",
1117
- "name": "amountSentLD",
1118
- "type": "uint256"
1119
- },
1120
- {
1121
- "internalType": "uint256",
1122
- "name": "amountReceivedLD",
1123
- "type": "uint256"
1124
- }
1125
- ],
1126
- "internalType": "struct OFTReceipt",
1127
- "name": "oftReceipt",
1128
- "type": "tuple"
1129
- }
1130
- ],
1131
- "stateMutability": "payable",
1132
- "type": "function"
1133
- },
1134
- {
1135
- "inputs": [
1136
- {
1137
- "internalType": "address",
1138
- "name": "_delegate",
1139
- "type": "address"
1140
- }
1141
- ],
1142
- "name": "setDelegate",
1143
- "outputs": [],
1144
- "stateMutability": "nonpayable",
1145
- "type": "function"
1146
- },
1147
- {
1148
- "inputs": [
1149
- {
1150
- "components": [
1151
- {
1152
- "internalType": "uint32",
1153
- "name": "eid",
1154
- "type": "uint32"
1155
- },
1156
- {
1157
- "internalType": "uint16",
1158
- "name": "msgType",
1159
- "type": "uint16"
1160
- },
1161
- {
1162
- "internalType": "bytes",
1163
- "name": "options",
1164
- "type": "bytes"
1165
- }
1166
- ],
1167
- "internalType": "struct EnforcedOptionParam[]",
1168
- "name": "_enforcedOptions",
1169
- "type": "tuple[]"
1170
- }
1171
- ],
1172
- "name": "setEnforcedOptions",
1173
- "outputs": [],
1174
- "stateMutability": "nonpayable",
1175
- "type": "function"
1176
- },
1177
- {
1178
- "inputs": [
1179
- {
1180
- "internalType": "address",
1181
- "name": "_msgInspector",
1182
- "type": "address"
1183
- }
1184
- ],
1185
- "name": "setMsgInspector",
1186
- "outputs": [],
1187
- "stateMutability": "nonpayable",
1188
- "type": "function"
1189
- },
1190
- {
1191
- "inputs": [
1192
- {
1193
- "internalType": "uint32",
1194
- "name": "_eid",
1195
- "type": "uint32"
1196
- },
1197
- {
1198
- "internalType": "bytes32",
1199
- "name": "_peer",
1200
- "type": "bytes32"
1201
- }
1202
- ],
1203
- "name": "setPeer",
1204
- "outputs": [],
1205
- "stateMutability": "nonpayable",
1206
- "type": "function"
1207
- },
1208
- {
1209
- "inputs": [
1210
- {
1211
- "internalType": "address",
1212
- "name": "_preCrime",
1213
- "type": "address"
1214
- }
1215
- ],
1216
- "name": "setPreCrime",
1217
- "outputs": [],
1218
- "stateMutability": "nonpayable",
1219
- "type": "function"
1220
- },
1221
- {
1222
- "inputs": [],
1223
- "name": "sharedDecimals",
1224
- "outputs": [
1225
- {
1226
- "internalType": "uint8",
1227
- "name": "",
1228
- "type": "uint8"
1229
- }
1230
- ],
1231
- "stateMutability": "view",
1232
- "type": "function"
1233
- },
1234
- {
1235
- "inputs": [],
1236
- "name": "token",
1237
- "outputs": [
1238
- {
1239
- "internalType": "address",
1240
- "name": "",
1241
- "type": "address"
1242
- }
1243
- ],
1244
- "stateMutability": "view",
1245
- "type": "function"
1246
- },
1247
- {
1248
- "inputs": [
1249
- {
1250
- "internalType": "address",
1251
- "name": "newOwner",
1252
- "type": "address"
1253
- }
1254
- ],
1255
- "name": "transferOwnership",
1256
- "outputs": [],
1257
- "stateMutability": "nonpayable",
1258
- "type": "function"
1259
- }
1260
- ],
1261
- "bytecode": "0x60e06040523480156200001157600080fd5b50604051620030b1380380620030b1833981016040819052620000349162000223565b828282826001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000076573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200009c91906200026d565b828281818181620000ad33620001b1565b6001600160a01b038083166080528116620000db57604051632d618d8160e21b815260040160405180910390fd5b60805160405163ca5eb5e160e01b81526001600160a01b0383811660048301529091169063ca5eb5e190602401600060405180830381600087803b1580156200012357600080fd5b505af115801562000138573d6000803e3d6000fd5b5050505050505050620001506200020160201b60201c565b60ff168360ff16101562000177576040516301e9714b60e41b815260040160405180910390fd5b62000184600684620002af565b6200019190600a620003ce565b60a0525050506001600160a01b0390921660c05250620003df9350505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600690565b80516001600160a01b03811681146200021e57600080fd5b919050565b6000806000606084860312156200023957600080fd5b620002448462000206565b9250620002546020850162000206565b9150620002646040850162000206565b90509250925092565b6000602082840312156200028057600080fd5b815160ff811681146200029257600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b60ff8281168282160390811115620002cb57620002cb62000299565b92915050565b600181815b8085111562000312578160001904821115620002f657620002f662000299565b808516156200030457918102915b93841c9390800290620002d6565b509250929050565b6000826200032b57506001620002cb565b816200033a57506000620002cb565b81600181146200035357600281146200035e576200037e565b6001915050620002cb565b60ff84111562000372576200037262000299565b50506001821b620002cb565b5060208310610133831016604e8410600b8410161715620003a3575081810a620002cb565b620003af8383620002d1565b8060001904821115620003c657620003c662000299565b029392505050565b60006200029260ff8416836200031a565b60805160a05160c051612c4e62000463600039600081816105ce015281816116db015261184d015260008181610447015281816116220152818161169e015261178e0152600081816103520152818161079001528181610d8c01528181611034015281816112e1015281816118b101528181611a5b0152611b140152612c4e6000f3fe60806040526004361061017e5760003560e01c80630d35b41514610183578063111ecdad146101bb57806313137d65146101e8578063134d4f25146101fd578063156a0d0f1461022557806317442b701461024c5780631f5e13341461026e5780633400288b146102835780633b6f743b146102a357806352ae2879146102d05780635535d461146102e35780635a0dfe4d146103105780635e280f11146103405780636fc1b31e14610374578063715018a6146103945780637d25a05e146103a957806382413eac146103e4578063857749b0146104045780638da5cb5b14610420578063963efcaa146104355780639f68b96414610477578063b731ea0a1461048b578063b98bd070146104ab578063bb0b6a53146104cb578063bc70b354146104f8578063bd815db014610518578063c7c7f5b31461052b578063ca5eb5e11461054c578063d045a0dc1461056c578063d42438851461057f578063f2fde38b1461059f578063fc0c546a146105bf578063ff7bd03d146105f2575b600080fd5b34801561018f57600080fd5b506101a361019e366004611d77565b610612565b6040516101b293929190611e0a565b60405180910390f35b3480156101c757600080fd5b506004546101db906001600160a01b031681565b6040516101b29190611e98565b6101fb6101f6366004611f1b565b61078e565b005b34801561020957600080fd5b50610212600281565b60405161ffff90911681526020016101b2565b34801561023157600080fd5b506040805162b9270b60e21b815260016020820152016101b2565b34801561025857600080fd5b50604080516001815260026020820152016101b2565b34801561027a57600080fd5b50610212600181565b34801561028f57600080fd5b506101fb61029e366004611fd3565b610846565b3480156102af57600080fd5b506102c36102be36600461200b565b61085c565b6040516101b2919061205c565b3480156102dc57600080fd5b50306101db565b3480156102ef57600080fd5b506103036102fe36600461207c565b6108b9565b6040516101b291906120af565b34801561031c57600080fd5b5061033061032b366004611fd3565b61095e565b60405190151581526020016101b2565b34801561034c57600080fd5b506101db7f000000000000000000000000000000000000000000000000000000000000000081565b34801561038057600080fd5b506101fb61038f3660046120c2565b61097a565b3480156103a057600080fd5b506101fb6109d8565b3480156103b557600080fd5b506103cc6103c4366004611fd3565b600092915050565b6040516001600160401b0390911681526020016101b2565b3480156103f057600080fd5b506103306103ff3660046120df565b6109ec565b34801561041057600080fd5b50604051600681526020016101b2565b34801561042c57600080fd5b506101db610a01565b34801561044157600080fd5b506104697f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016101b2565b34801561048357600080fd5b506001610330565b34801561049757600080fd5b506002546101db906001600160a01b031681565b3480156104b757600080fd5b506101fb6104c6366004612189565b610a10565b3480156104d757600080fd5b506104696104e63660046121ca565b60016020526000908152604090205481565b34801561050457600080fd5b506103036105133660046121e5565b610a2a565b6101fb610526366004612189565b610bd2565b61053e610539366004612245565b610d45565b6040516101b29291906122b2565b34801561055857600080fd5b506101fb6105673660046120c2565b610d6d565b6101fb61057a366004611f1b565b610df6565b34801561058b57600080fd5b506101fb61059a3660046120c2565b610e25565b3480156105ab57600080fd5b506101fb6105ba3660046120c2565b610e78565b3480156105cb57600080fd5b507f00000000000000000000000000000000000000000000000000000000000000006101db565b3480156105fe57600080fd5b5061033061060d3660046122ee565b610ef1565b60408051808201909152600080825260208201526060610630611d21565b600080306001600160a01b031663fc0c546a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610671573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610695919061230a565b6001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106f69190612327565b6040805180820182528481526020808201849052825160008082529181019093529097509192509061074b565b6040805180820190915260008152606060208201528152602001906001900390816107235790505b509350600080610770604089013560608a013561076b60208c018c6121ca565b610f27565b60408051808201909152918252602082015296989597505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031633146107e257336040516391ac5e4f60e01b81526004016107d99190611e98565b60405180910390fd5b602087018035906107fc906107f7908a6121ca565b610f63565b1461082e5761080e60208801886121ca565b876020013560405163309afaf360e21b81526004016107d9929190612356565b61083d87878787878787610f9f565b50505050505050565b61084e6110ff565b610858828261115e565b5050565b610864611d21565b60006108806040850135606086013561076b60208801886121ca565b91505060008061089086846111b4565b90925090506108ad6108a560208801886121ca565b8383886112d7565b93505050505b92915050565b6003602090815260009283526040808420909152908252902080546108dd9061236c565b80601f01602080910402602001604051908101604052809291908181526020018280546109099061236c565b80156109565780601f1061092b57610100808354040283529160200191610956565b820191906000526020600020905b81548152906001019060200180831161093957829003601f168201915b505050505081565b63ffffffff919091166000908152600160205260409020541490565b6109826110ff565b600480546001600160a01b0319166001600160a01b0383161790556040517ff0be4f1e87349231d80c36b33f9e8639658eeaf474014dee15a3e6a4d4414197906109cd908390611e98565b60405180910390a150565b6109e06110ff565b6109ea60006113ac565b565b6001600160a01b03811630145b949350505050565b6000546001600160a01b031690565b610a186110ff565b610858610a258284612441565b6113fc565b63ffffffff8416600090815260036020908152604080832061ffff87168452909152812080546060929190610a5e9061236c565b80601f0160208091040260200160405190810160405280929190818152602001828054610a8a9061236c565b8015610ad75780601f10610aac57610100808354040283529160200191610ad7565b820191906000526020600020905b815481529060010190602001808311610aba57829003601f168201915b505050505090508051600003610b275783838080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509294506109f99350505050565b6000839003610b375790506109f9565b60028310610bb557610b7e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061150392505050565b80610b8c8460028188612556565b604051602001610b9e93929190612580565b6040516020818303038152906040529150506109f9565b8383604051639a6d49cd60e01b81526004016107d99291906125d1565b60005b81811015610cc45736838383818110610bf057610bf06125e5565b9050602002810190610c0291906125fb565b9050610c1e610c1460208301836121ca565b602083013561095e565b610c285750610cbc565b3063d045a0dc60c08301358360a0810135610c4761010083018361261c565b610c58610100890160e08a016120c2565b610c666101208a018a61261c565b6040518963ffffffff1660e01b8152600401610c889796959493929190612677565b6000604051808303818588803b158015610ca157600080fd5b505af1158015610cb5573d6000803e3d6000fd5b5050505050505b600101610bd5565b50336001600160a01b0316638e9e70996040518163ffffffff1660e01b8152600401600060405180830381865afa158015610d03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d2b91908101906126fd565b604051638351eea760e01b81526004016107d991906120af565b610d4d611d3b565b610d55611d21565b610d6085858561152f565b915091505b935093915050565b610d756110ff565b60405163ca5eb5e160e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063ca5eb5e190610dc1908490600401611e98565b600060405180830381600087803b158015610ddb57600080fd5b505af1158015610def573d6000803e3d6000fd5b5050505050565b333014610e165760405163029a949d60e31b815260040160405180910390fd5b61083d8787878787878761082e565b610e2d6110ff565b600280546001600160a01b0319166001600160a01b0383161790556040517fd48d879cef83a1c0bdda516f27b13ddb1b3f8bbac1c9e1511bb2a659c2427760906109cd908390611e98565b610e806110ff565b6001600160a01b038116610ee55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107d9565b610eee816113ac565b50565b6000602082018035906001908390610f0990866121ca565b63ffffffff1681526020810191909152604001600020541492915050565b600080610f338561161e565b915081905083811015610d65576040516371c4efed60e01b815260048101829052602481018590526044016107d9565b63ffffffff8116600090815260016020526040812054806108b35760405163f6ff4fb760e01b815263ffffffff841660048201526024016107d9565b6000610fb1610fae8787611655565b90565b90506000610fdd82610fcb610fc68a8a611674565b611697565b610fd860208d018d6121ca565b6116cc565b905060288611156110a457600061101a610ffd60608c0160408d0161276a565b61100a60208d018d6121ca565b846110158c8c61170a565b611755565b604051633e5ac80960e11b81529091506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690637cb59012906110709086908d906000908790600401612787565b600060405180830381600087803b15801561108a57600080fd5b505af115801561109e573d6000803e3d6000fd5b50505050505b6001600160a01b038216887fefed6d3500546b29533b128a29e3a94d70788727f0507505ac12eaf2e578fd9c6110dd60208d018d6121ca565b846040516110ec929190612356565b60405180910390a3505050505050505050565b33611108610a01565b6001600160a01b0316146109ea5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107d9565b63ffffffff821660009081526001602052604090819020829055517f238399d427b947898edb290f5ff0f9109849b1c3ba196a42e35f00c50a54b98b906111a89084908490612356565b60405180910390a15050565b606080600061121185602001356111ca86611787565b6111d760a089018961261c565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506117b392505050565b9093509050600081611224576001611227565b60025b905061124761123960208801886121ca565b8261051360808a018a61261c565b6004549093506001600160a01b031680156112cd5760405163043a78eb60e01b81526001600160a01b0382169063043a78eb9061128a90889088906004016127c2565b602060405180830381865afa1580156112a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112cb91906127e7565b505b5050509250929050565b6112df611d21565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ddc28c586040518060a001604052808863ffffffff16815260200161132e89610f63565b8152602001878152602001868152602001851515815250306040518363ffffffff1660e01b8152600401611363929190612804565b6040805180830381865afa15801561137f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113a391906128ad565b95945050505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60005b81518110156114d35761142e82828151811061141d5761141d6125e5565b602002602001015160400151611503565b818181518110611440576114406125e5565b60200260200101516040015160036000848481518110611462576114626125e5565b60200260200101516000015163ffffffff1663ffffffff168152602001908152602001600020600084848151811061149c5761149c6125e5565b60200260200101516020015161ffff1661ffff16815260200190815260200160002090816114ca9190612919565b506001016113ff565b507fbe4864a8e820971c0247f5992e2da559595f7bf076a21cb5928d443d2a13b674816040516109cd91906129d8565b600281015161ffff81166003146108585781604051639a6d49cd60e01b81526004016107d991906120af565b611537611d3b565b61153f611d21565b60008061156233604089013560608a013561155d60208c018c6121ca565b61182d565b9150915060008061157389846111b4565b909250905061159f61158860208b018b6121ca565b8383611599368d90038d018d612a63565b8b61187e565b60408051808201909152858152602080820186905282519298509096503391907f85496b760a4b7f8d66384b9df21b381f5d1b1e79f229a47aaf4c232edc2fe59a906115ed908d018d6121ca565b6040805163ffffffff909216825260208201899052810187905260600160405180910390a350505050935093915050565b60007f000000000000000000000000000000000000000000000000000000000000000061164b8184612a95565b6108b39190612ab7565b60006116646020828486612556565b61166d91612adc565b9392505050565b6000611684602860208486612556565b61168d91612afa565b60c01c9392505050565b60006108b37f00000000000000000000000000000000000000000000000000000000000000006001600160401b038416612ab7565b60006117026001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168585611989565b509092915050565b60606117198260288186612556565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929695505050505050565b60608484848460405160200161176e9493929190612b2a565b6040516020818303038152906040529050949350505050565b60006108b37f000000000000000000000000000000000000000000000000000000000000000083612a95565b80516060901515806117fc5784846040516020016117e892919091825260c01b6001600160c01b031916602082015260280190565b604051602081830303815290604052611823565b848433856040516020016118139493929190612b7c565b6040516020818303038152906040525b9150935093915050565b60008061183b858585610f27565b90925090506118756001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168730856119f1565b94509492505050565b611886611d3b565b60006118958460000151611a2f565b6020850151909150156118af576118af8460200151611a57565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316632637a450826040518060a001604052808b63ffffffff1681526020016118ff8c610f63565b81526020018a815260200189815260200160008960200151111515815250866040518463ffffffff1660e01b815260040161193b929190612804565b60806040518083038185885af1158015611959573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061197e9190612bbc565b979650505050505050565b6040516001600160a01b0383166024820152604481018290526119ec90849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611b39565b505050565b6040516001600160a01b0380851660248301528316604482015260648101829052611a299085906323b872dd60e01b906084016119b5565b50505050565b6000813414611a53576040516304fb820960e51b81523460048201526024016107d9565b5090565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e4fe1d946040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ab7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611adb919061230a565b90506001600160a01b038116611b04576040516329b99a9560e11b815260040160405180910390fd5b6108586001600160a01b038216337f0000000000000000000000000000000000000000000000000000000000000000856119f1565b6000611b8e826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316611c0e9092919063ffffffff16565b9050805160001480611baf575080806020019051810190611baf91906127e7565b6119ec5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016107d9565b60606109f9848460008585600080866001600160a01b03168587604051611c359190612c06565b60006040518083038185875af1925050503d8060008114611c72576040519150601f19603f3d011682016040523d82523d6000602084013e611c77565b606091505b509150915061197e8783838760608315611cf2578251600003611ceb576001600160a01b0385163b611ceb5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016107d9565b50816109f9565b6109f98383815115611d075781518083602001fd5b8060405162461bcd60e51b81526004016107d991906120af565b604051806040016040528060008152602001600081525090565b6040805160608101825260008082526020820152908101611d5a611d21565b905290565b600060e08284031215611d7157600080fd5b50919050565b600060208284031215611d8957600080fd5b81356001600160401b03811115611d9f57600080fd5b6109f984828501611d5f565b80518252602090810151910152565b60005b83811015611dd5578181015183820152602001611dbd565b50506000910152565b60008151808452611df6816020860160208601611dba565b601f01601f19169290920160200192915050565b600060a08201611e1a8387611dab565b604060a0604085015281865180845260c08601915060c08160051b8701019350602080890160005b83811015611e815788870360bf19018552815180518852830151838801879052611e6e87890182611dde565b9750509382019390820190600101611e42565b505050505050809150506109f96060830184611dab565b6001600160a01b0391909116815260200190565b600060608284031215611d7157600080fd5b60008083601f840112611ed057600080fd5b5081356001600160401b03811115611ee757600080fd5b602083019150836020828501011115611eff57600080fd5b9250929050565b6001600160a01b0381168114610eee57600080fd5b600080600080600080600060e0888a031215611f3657600080fd5b611f408989611eac565b96506060880135955060808801356001600160401b0380821115611f6357600080fd5b611f6f8b838c01611ebe565b909750955060a08a01359150611f8482611f06565b90935060c08901359080821115611f9a57600080fd5b50611fa78a828b01611ebe565b989b979a50959850939692959293505050565b803563ffffffff81168114611fce57600080fd5b919050565b60008060408385031215611fe657600080fd5b611fef83611fba565b946020939093013593505050565b8015158114610eee57600080fd5b6000806040838503121561201e57600080fd5b82356001600160401b0381111561203457600080fd5b61204085828601611d5f565b925050602083013561205181611ffd565b809150509250929050565b604081016108b38284611dab565b803561ffff81168114611fce57600080fd5b6000806040838503121561208f57600080fd5b61209883611fba565b91506120a66020840161206a565b90509250929050565b60208152600061166d6020830184611dde565b6000602082840312156120d457600080fd5b813561166d81611f06565b60008060008060a085870312156120f557600080fd5b6120ff8686611eac565b935060608501356001600160401b0381111561211a57600080fd5b61212687828801611ebe565b909450925050608085013561213a81611f06565b939692955090935050565b60008083601f84011261215757600080fd5b5081356001600160401b0381111561216e57600080fd5b6020830191508360208260051b8501011115611eff57600080fd5b6000806020838503121561219c57600080fd5b82356001600160401b038111156121b257600080fd5b6121be85828601612145565b90969095509350505050565b6000602082840312156121dc57600080fd5b61166d82611fba565b600080600080606085870312156121fb57600080fd5b61220485611fba565b93506122126020860161206a565b925060408501356001600160401b0381111561222d57600080fd5b61223987828801611ebe565b95989497509550505050565b6000806000838503608081121561225b57600080fd5b84356001600160401b0381111561227157600080fd5b61227d87828801611d5f565b9450506040601f198201121561229257600080fd5b5060208401915060608401356122a781611f06565b809150509250925092565b825181526020808401516001600160401b03169082015260408084015160c08301916122e090840182611dab565b5061166d6080830184611dab565b60006060828403121561230057600080fd5b61166d8383611eac565b60006020828403121561231c57600080fd5b815161166d81611f06565b60006020828403121561233957600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b63ffffffff929092168252602082015260400190565b600181811c9082168061238057607f821691505b602082108103611d7157634e487b7160e01b600052602260045260246000fd5b604051606081016001600160401b03811182821017156123c2576123c2612340565b60405290565b604080519081016001600160401b03811182821017156123c2576123c2612340565b604051601f8201601f191681016001600160401b038111828210171561241257612412612340565b604052919050565b60006001600160401b0382111561243357612433612340565b50601f01601f191660200190565b60006001600160401b038084111561245b5761245b612340565b8360051b602061246c8183016123ea565b86815291850191818101903684111561248457600080fd5b865b8481101561254a5780358681111561249e5760008081fd5b880160603682900312156124b25760008081fd5b6124ba6123a0565b6124c382611fba565b81526124d086830161206a565b86820152604080830135898111156124e85760008081fd5b929092019136601f8401126124fd5760008081fd5b823561251061250b8261241a565b6123ea565b81815236898387010111156125255760008081fd5b818986018a830137600091810189019190915290820152845250918301918301612486565b50979650505050505050565b6000808585111561256657600080fd5b8386111561257357600080fd5b5050820193919092039150565b60008451612592818460208901611dba565b8201838582376000930192835250909392505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6020815260006109f96020830184866125a8565b634e487b7160e01b600052603260045260246000fd5b6000823561013e1983360301811261261257600080fd5b9190910192915050565b6000808335601e1984360301811261263357600080fd5b8301803591506001600160401b0382111561264d57600080fd5b602001915036819003821315611eff57600080fd5b6001600160401b0381168114610eee57600080fd5b63ffffffff61268589611fba565b16815260208801356020820152600060408901356126a281612662565b6001600160401b031660408301526060820188905260e0608083018190526126cd90830187896125a8565b6001600160a01b03861660a084015282810360c08401526126ef8185876125a8565b9a9950505050505050505050565b60006020828403121561270f57600080fd5b81516001600160401b0381111561272557600080fd5b8201601f8101841361273657600080fd5b805161274461250b8261241a565b81815285602083850101111561275957600080fd5b6113a3826020830160208601611dba565b60006020828403121561277c57600080fd5b813561166d81612662565b60018060a01b038516815283602082015261ffff831660408201526080606082015260006127b86080830184611dde565b9695505050505050565b6040815260006127d56040830185611dde565b82810360208401526113a38185611dde565b6000602082840312156127f957600080fd5b815161166d81611ffd565b6040815263ffffffff8351166040820152602083015160608201526000604084015160a0608084015261283a60e0840182611dde565b90506060850151603f198483030160a08501526128578282611dde565b60809690960151151560c08501525050506001600160a01b039190911660209091015290565b60006040828403121561288f57600080fd5b6128976123c8565b9050815181526020820151602082015292915050565b6000604082840312156128bf57600080fd5b61166d838361287d565b601f8211156119ec576000816000526020600020601f850160051c810160208610156128f25750805b601f850160051c820191505b81811015612911578281556001016128fe565b505050505050565b81516001600160401b0381111561293257612932612340565b61294681612940845461236c565b846128c9565b602080601f83116001811461297b57600084156129635750858301515b600019600386901b1c1916600185901b178555612911565b600085815260208120601f198616915b828110156129aa5788860151825594840194600190910190840161298b565b50858210156129c85787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015612a5557888303603f190185528151805163ffffffff1684528781015161ffff16888501528601516060878501819052612a4181860183611dde565b968901969450505090860190600101612a01565b509098975050505050505050565b600060408284031215612a7557600080fd5b612a7d6123c8565b82358152602083013560208201528091505092915050565b600082612ab257634e487b7160e01b600052601260045260246000fd5b500490565b80820281158282048414176108b357634e487b7160e01b600052601160045260246000fd5b803560208310156108b357600019602084900360031b1b1692915050565b6001600160c01b03198135818116916008851015612b225780818660080360031b1b83161692505b505092915050565b60c085901b6001600160c01b031916815260e084901b6001600160e01b0319166008820152600c81018390528151600090612b6c81602c850160208701611dba565b91909101602c0195945050505050565b84815260018060c01b03198460c01b16602082015282602882015260008251612bac816048850160208701611dba565b9190910160480195945050505050565b600060808284031215612bce57600080fd5b612bd66123a0565b825181526020830151612be881612662565b6020820152612bfa846040850161287d565b60408201529392505050565b60008251612612818460208701611dba56fea264697066735822122077b209a3d35ca0afc6930ffea5ce398ff954b030179b0a7154449738ba7f236164736f6c63430008170033",
1262
- "deployedBytecode": "0x60806040526004361061017e5760003560e01c80630d35b41514610183578063111ecdad146101bb57806313137d65146101e8578063134d4f25146101fd578063156a0d0f1461022557806317442b701461024c5780631f5e13341461026e5780633400288b146102835780633b6f743b146102a357806352ae2879146102d05780635535d461146102e35780635a0dfe4d146103105780635e280f11146103405780636fc1b31e14610374578063715018a6146103945780637d25a05e146103a957806382413eac146103e4578063857749b0146104045780638da5cb5b14610420578063963efcaa146104355780639f68b96414610477578063b731ea0a1461048b578063b98bd070146104ab578063bb0b6a53146104cb578063bc70b354146104f8578063bd815db014610518578063c7c7f5b31461052b578063ca5eb5e11461054c578063d045a0dc1461056c578063d42438851461057f578063f2fde38b1461059f578063fc0c546a146105bf578063ff7bd03d146105f2575b600080fd5b34801561018f57600080fd5b506101a361019e366004611d77565b610612565b6040516101b293929190611e0a565b60405180910390f35b3480156101c757600080fd5b506004546101db906001600160a01b031681565b6040516101b29190611e98565b6101fb6101f6366004611f1b565b61078e565b005b34801561020957600080fd5b50610212600281565b60405161ffff90911681526020016101b2565b34801561023157600080fd5b506040805162b9270b60e21b815260016020820152016101b2565b34801561025857600080fd5b50604080516001815260026020820152016101b2565b34801561027a57600080fd5b50610212600181565b34801561028f57600080fd5b506101fb61029e366004611fd3565b610846565b3480156102af57600080fd5b506102c36102be36600461200b565b61085c565b6040516101b2919061205c565b3480156102dc57600080fd5b50306101db565b3480156102ef57600080fd5b506103036102fe36600461207c565b6108b9565b6040516101b291906120af565b34801561031c57600080fd5b5061033061032b366004611fd3565b61095e565b60405190151581526020016101b2565b34801561034c57600080fd5b506101db7f000000000000000000000000000000000000000000000000000000000000000081565b34801561038057600080fd5b506101fb61038f3660046120c2565b61097a565b3480156103a057600080fd5b506101fb6109d8565b3480156103b557600080fd5b506103cc6103c4366004611fd3565b600092915050565b6040516001600160401b0390911681526020016101b2565b3480156103f057600080fd5b506103306103ff3660046120df565b6109ec565b34801561041057600080fd5b50604051600681526020016101b2565b34801561042c57600080fd5b506101db610a01565b34801561044157600080fd5b506104697f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020016101b2565b34801561048357600080fd5b506001610330565b34801561049757600080fd5b506002546101db906001600160a01b031681565b3480156104b757600080fd5b506101fb6104c6366004612189565b610a10565b3480156104d757600080fd5b506104696104e63660046121ca565b60016020526000908152604090205481565b34801561050457600080fd5b506103036105133660046121e5565b610a2a565b6101fb610526366004612189565b610bd2565b61053e610539366004612245565b610d45565b6040516101b29291906122b2565b34801561055857600080fd5b506101fb6105673660046120c2565b610d6d565b6101fb61057a366004611f1b565b610df6565b34801561058b57600080fd5b506101fb61059a3660046120c2565b610e25565b3480156105ab57600080fd5b506101fb6105ba3660046120c2565b610e78565b3480156105cb57600080fd5b507f00000000000000000000000000000000000000000000000000000000000000006101db565b3480156105fe57600080fd5b5061033061060d3660046122ee565b610ef1565b60408051808201909152600080825260208201526060610630611d21565b600080306001600160a01b031663fc0c546a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610671573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610695919061230a565b6001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106f69190612327565b6040805180820182528481526020808201849052825160008082529181019093529097509192509061074b565b6040805180820190915260008152606060208201528152602001906001900390816107235790505b509350600080610770604089013560608a013561076b60208c018c6121ca565b610f27565b60408051808201909152918252602082015296989597505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031633146107e257336040516391ac5e4f60e01b81526004016107d99190611e98565b60405180910390fd5b602087018035906107fc906107f7908a6121ca565b610f63565b1461082e5761080e60208801886121ca565b876020013560405163309afaf360e21b81526004016107d9929190612356565b61083d87878787878787610f9f565b50505050505050565b61084e6110ff565b610858828261115e565b5050565b610864611d21565b60006108806040850135606086013561076b60208801886121ca565b91505060008061089086846111b4565b90925090506108ad6108a560208801886121ca565b8383886112d7565b93505050505b92915050565b6003602090815260009283526040808420909152908252902080546108dd9061236c565b80601f01602080910402602001604051908101604052809291908181526020018280546109099061236c565b80156109565780601f1061092b57610100808354040283529160200191610956565b820191906000526020600020905b81548152906001019060200180831161093957829003601f168201915b505050505081565b63ffffffff919091166000908152600160205260409020541490565b6109826110ff565b600480546001600160a01b0319166001600160a01b0383161790556040517ff0be4f1e87349231d80c36b33f9e8639658eeaf474014dee15a3e6a4d4414197906109cd908390611e98565b60405180910390a150565b6109e06110ff565b6109ea60006113ac565b565b6001600160a01b03811630145b949350505050565b6000546001600160a01b031690565b610a186110ff565b610858610a258284612441565b6113fc565b63ffffffff8416600090815260036020908152604080832061ffff87168452909152812080546060929190610a5e9061236c565b80601f0160208091040260200160405190810160405280929190818152602001828054610a8a9061236c565b8015610ad75780601f10610aac57610100808354040283529160200191610ad7565b820191906000526020600020905b815481529060010190602001808311610aba57829003601f168201915b505050505090508051600003610b275783838080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509294506109f99350505050565b6000839003610b375790506109f9565b60028310610bb557610b7e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061150392505050565b80610b8c8460028188612556565b604051602001610b9e93929190612580565b6040516020818303038152906040529150506109f9565b8383604051639a6d49cd60e01b81526004016107d99291906125d1565b60005b81811015610cc45736838383818110610bf057610bf06125e5565b9050602002810190610c0291906125fb565b9050610c1e610c1460208301836121ca565b602083013561095e565b610c285750610cbc565b3063d045a0dc60c08301358360a0810135610c4761010083018361261c565b610c58610100890160e08a016120c2565b610c666101208a018a61261c565b6040518963ffffffff1660e01b8152600401610c889796959493929190612677565b6000604051808303818588803b158015610ca157600080fd5b505af1158015610cb5573d6000803e3d6000fd5b5050505050505b600101610bd5565b50336001600160a01b0316638e9e70996040518163ffffffff1660e01b8152600401600060405180830381865afa158015610d03573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d2b91908101906126fd565b604051638351eea760e01b81526004016107d991906120af565b610d4d611d3b565b610d55611d21565b610d6085858561152f565b915091505b935093915050565b610d756110ff565b60405163ca5eb5e160e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063ca5eb5e190610dc1908490600401611e98565b600060405180830381600087803b158015610ddb57600080fd5b505af1158015610def573d6000803e3d6000fd5b5050505050565b333014610e165760405163029a949d60e31b815260040160405180910390fd5b61083d8787878787878761082e565b610e2d6110ff565b600280546001600160a01b0319166001600160a01b0383161790556040517fd48d879cef83a1c0bdda516f27b13ddb1b3f8bbac1c9e1511bb2a659c2427760906109cd908390611e98565b610e806110ff565b6001600160a01b038116610ee55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107d9565b610eee816113ac565b50565b6000602082018035906001908390610f0990866121ca565b63ffffffff1681526020810191909152604001600020541492915050565b600080610f338561161e565b915081905083811015610d65576040516371c4efed60e01b815260048101829052602481018590526044016107d9565b63ffffffff8116600090815260016020526040812054806108b35760405163f6ff4fb760e01b815263ffffffff841660048201526024016107d9565b6000610fb1610fae8787611655565b90565b90506000610fdd82610fcb610fc68a8a611674565b611697565b610fd860208d018d6121ca565b6116cc565b905060288611156110a457600061101a610ffd60608c0160408d0161276a565b61100a60208d018d6121ca565b846110158c8c61170a565b611755565b604051633e5ac80960e11b81529091506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690637cb59012906110709086908d906000908790600401612787565b600060405180830381600087803b15801561108a57600080fd5b505af115801561109e573d6000803e3d6000fd5b50505050505b6001600160a01b038216887fefed6d3500546b29533b128a29e3a94d70788727f0507505ac12eaf2e578fd9c6110dd60208d018d6121ca565b846040516110ec929190612356565b60405180910390a3505050505050505050565b33611108610a01565b6001600160a01b0316146109ea5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016107d9565b63ffffffff821660009081526001602052604090819020829055517f238399d427b947898edb290f5ff0f9109849b1c3ba196a42e35f00c50a54b98b906111a89084908490612356565b60405180910390a15050565b606080600061121185602001356111ca86611787565b6111d760a089018961261c565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506117b392505050565b9093509050600081611224576001611227565b60025b905061124761123960208801886121ca565b8261051360808a018a61261c565b6004549093506001600160a01b031680156112cd5760405163043a78eb60e01b81526001600160a01b0382169063043a78eb9061128a90889088906004016127c2565b602060405180830381865afa1580156112a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112cb91906127e7565b505b5050509250929050565b6112df611d21565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ddc28c586040518060a001604052808863ffffffff16815260200161132e89610f63565b8152602001878152602001868152602001851515815250306040518363ffffffff1660e01b8152600401611363929190612804565b6040805180830381865afa15801561137f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113a391906128ad565b95945050505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60005b81518110156114d35761142e82828151811061141d5761141d6125e5565b602002602001015160400151611503565b818181518110611440576114406125e5565b60200260200101516040015160036000848481518110611462576114626125e5565b60200260200101516000015163ffffffff1663ffffffff168152602001908152602001600020600084848151811061149c5761149c6125e5565b60200260200101516020015161ffff1661ffff16815260200190815260200160002090816114ca9190612919565b506001016113ff565b507fbe4864a8e820971c0247f5992e2da559595f7bf076a21cb5928d443d2a13b674816040516109cd91906129d8565b600281015161ffff81166003146108585781604051639a6d49cd60e01b81526004016107d991906120af565b611537611d3b565b61153f611d21565b60008061156233604089013560608a013561155d60208c018c6121ca565b61182d565b9150915060008061157389846111b4565b909250905061159f61158860208b018b6121ca565b8383611599368d90038d018d612a63565b8b61187e565b60408051808201909152858152602080820186905282519298509096503391907f85496b760a4b7f8d66384b9df21b381f5d1b1e79f229a47aaf4c232edc2fe59a906115ed908d018d6121ca565b6040805163ffffffff909216825260208201899052810187905260600160405180910390a350505050935093915050565b60007f000000000000000000000000000000000000000000000000000000000000000061164b8184612a95565b6108b39190612ab7565b60006116646020828486612556565b61166d91612adc565b9392505050565b6000611684602860208486612556565b61168d91612afa565b60c01c9392505050565b60006108b37f00000000000000000000000000000000000000000000000000000000000000006001600160401b038416612ab7565b60006117026001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168585611989565b509092915050565b60606117198260288186612556565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929695505050505050565b60608484848460405160200161176e9493929190612b2a565b6040516020818303038152906040529050949350505050565b60006108b37f000000000000000000000000000000000000000000000000000000000000000083612a95565b80516060901515806117fc5784846040516020016117e892919091825260c01b6001600160c01b031916602082015260280190565b604051602081830303815290604052611823565b848433856040516020016118139493929190612b7c565b6040516020818303038152906040525b9150935093915050565b60008061183b858585610f27565b90925090506118756001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168730856119f1565b94509492505050565b611886611d3b565b60006118958460000151611a2f565b6020850151909150156118af576118af8460200151611a57565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316632637a450826040518060a001604052808b63ffffffff1681526020016118ff8c610f63565b81526020018a815260200189815260200160008960200151111515815250866040518463ffffffff1660e01b815260040161193b929190612804565b60806040518083038185885af1158015611959573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061197e9190612bbc565b979650505050505050565b6040516001600160a01b0383166024820152604481018290526119ec90849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611b39565b505050565b6040516001600160a01b0380851660248301528316604482015260648101829052611a299085906323b872dd60e01b906084016119b5565b50505050565b6000813414611a53576040516304fb820960e51b81523460048201526024016107d9565b5090565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e4fe1d946040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ab7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611adb919061230a565b90506001600160a01b038116611b04576040516329b99a9560e11b815260040160405180910390fd5b6108586001600160a01b038216337f0000000000000000000000000000000000000000000000000000000000000000856119f1565b6000611b8e826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316611c0e9092919063ffffffff16565b9050805160001480611baf575080806020019051810190611baf91906127e7565b6119ec5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016107d9565b60606109f9848460008585600080866001600160a01b03168587604051611c359190612c06565b60006040518083038185875af1925050503d8060008114611c72576040519150601f19603f3d011682016040523d82523d6000602084013e611c77565b606091505b509150915061197e8783838760608315611cf2578251600003611ceb576001600160a01b0385163b611ceb5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016107d9565b50816109f9565b6109f98383815115611d075781518083602001fd5b8060405162461bcd60e51b81526004016107d991906120af565b604051806040016040528060008152602001600081525090565b6040805160608101825260008082526020820152908101611d5a611d21565b905290565b600060e08284031215611d7157600080fd5b50919050565b600060208284031215611d8957600080fd5b81356001600160401b03811115611d9f57600080fd5b6109f984828501611d5f565b80518252602090810151910152565b60005b83811015611dd5578181015183820152602001611dbd565b50506000910152565b60008151808452611df6816020860160208601611dba565b601f01601f19169290920160200192915050565b600060a08201611e1a8387611dab565b604060a0604085015281865180845260c08601915060c08160051b8701019350602080890160005b83811015611e815788870360bf19018552815180518852830151838801879052611e6e87890182611dde565b9750509382019390820190600101611e42565b505050505050809150506109f96060830184611dab565b6001600160a01b0391909116815260200190565b600060608284031215611d7157600080fd5b60008083601f840112611ed057600080fd5b5081356001600160401b03811115611ee757600080fd5b602083019150836020828501011115611eff57600080fd5b9250929050565b6001600160a01b0381168114610eee57600080fd5b600080600080600080600060e0888a031215611f3657600080fd5b611f408989611eac565b96506060880135955060808801356001600160401b0380821115611f6357600080fd5b611f6f8b838c01611ebe565b909750955060a08a01359150611f8482611f06565b90935060c08901359080821115611f9a57600080fd5b50611fa78a828b01611ebe565b989b979a50959850939692959293505050565b803563ffffffff81168114611fce57600080fd5b919050565b60008060408385031215611fe657600080fd5b611fef83611fba565b946020939093013593505050565b8015158114610eee57600080fd5b6000806040838503121561201e57600080fd5b82356001600160401b0381111561203457600080fd5b61204085828601611d5f565b925050602083013561205181611ffd565b809150509250929050565b604081016108b38284611dab565b803561ffff81168114611fce57600080fd5b6000806040838503121561208f57600080fd5b61209883611fba565b91506120a66020840161206a565b90509250929050565b60208152600061166d6020830184611dde565b6000602082840312156120d457600080fd5b813561166d81611f06565b60008060008060a085870312156120f557600080fd5b6120ff8686611eac565b935060608501356001600160401b0381111561211a57600080fd5b61212687828801611ebe565b909450925050608085013561213a81611f06565b939692955090935050565b60008083601f84011261215757600080fd5b5081356001600160401b0381111561216e57600080fd5b6020830191508360208260051b8501011115611eff57600080fd5b6000806020838503121561219c57600080fd5b82356001600160401b038111156121b257600080fd5b6121be85828601612145565b90969095509350505050565b6000602082840312156121dc57600080fd5b61166d82611fba565b600080600080606085870312156121fb57600080fd5b61220485611fba565b93506122126020860161206a565b925060408501356001600160401b0381111561222d57600080fd5b61223987828801611ebe565b95989497509550505050565b6000806000838503608081121561225b57600080fd5b84356001600160401b0381111561227157600080fd5b61227d87828801611d5f565b9450506040601f198201121561229257600080fd5b5060208401915060608401356122a781611f06565b809150509250925092565b825181526020808401516001600160401b03169082015260408084015160c08301916122e090840182611dab565b5061166d6080830184611dab565b60006060828403121561230057600080fd5b61166d8383611eac565b60006020828403121561231c57600080fd5b815161166d81611f06565b60006020828403121561233957600080fd5b5051919050565b634e487b7160e01b600052604160045260246000fd5b63ffffffff929092168252602082015260400190565b600181811c9082168061238057607f821691505b602082108103611d7157634e487b7160e01b600052602260045260246000fd5b604051606081016001600160401b03811182821017156123c2576123c2612340565b60405290565b604080519081016001600160401b03811182821017156123c2576123c2612340565b604051601f8201601f191681016001600160401b038111828210171561241257612412612340565b604052919050565b60006001600160401b0382111561243357612433612340565b50601f01601f191660200190565b60006001600160401b038084111561245b5761245b612340565b8360051b602061246c8183016123ea565b86815291850191818101903684111561248457600080fd5b865b8481101561254a5780358681111561249e5760008081fd5b880160603682900312156124b25760008081fd5b6124ba6123a0565b6124c382611fba565b81526124d086830161206a565b86820152604080830135898111156124e85760008081fd5b929092019136601f8401126124fd5760008081fd5b823561251061250b8261241a565b6123ea565b81815236898387010111156125255760008081fd5b818986018a830137600091810189019190915290820152845250918301918301612486565b50979650505050505050565b6000808585111561256657600080fd5b8386111561257357600080fd5b5050820193919092039150565b60008451612592818460208901611dba565b8201838582376000930192835250909392505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6020815260006109f96020830184866125a8565b634e487b7160e01b600052603260045260246000fd5b6000823561013e1983360301811261261257600080fd5b9190910192915050565b6000808335601e1984360301811261263357600080fd5b8301803591506001600160401b0382111561264d57600080fd5b602001915036819003821315611eff57600080fd5b6001600160401b0381168114610eee57600080fd5b63ffffffff61268589611fba565b16815260208801356020820152600060408901356126a281612662565b6001600160401b031660408301526060820188905260e0608083018190526126cd90830187896125a8565b6001600160a01b03861660a084015282810360c08401526126ef8185876125a8565b9a9950505050505050505050565b60006020828403121561270f57600080fd5b81516001600160401b0381111561272557600080fd5b8201601f8101841361273657600080fd5b805161274461250b8261241a565b81815285602083850101111561275957600080fd5b6113a3826020830160208601611dba565b60006020828403121561277c57600080fd5b813561166d81612662565b60018060a01b038516815283602082015261ffff831660408201526080606082015260006127b86080830184611dde565b9695505050505050565b6040815260006127d56040830185611dde565b82810360208401526113a38185611dde565b6000602082840312156127f957600080fd5b815161166d81611ffd565b6040815263ffffffff8351166040820152602083015160608201526000604084015160a0608084015261283a60e0840182611dde565b90506060850151603f198483030160a08501526128578282611dde565b60809690960151151560c08501525050506001600160a01b039190911660209091015290565b60006040828403121561288f57600080fd5b6128976123c8565b9050815181526020820151602082015292915050565b6000604082840312156128bf57600080fd5b61166d838361287d565b601f8211156119ec576000816000526020600020601f850160051c810160208610156128f25750805b601f850160051c820191505b81811015612911578281556001016128fe565b505050505050565b81516001600160401b0381111561293257612932612340565b61294681612940845461236c565b846128c9565b602080601f83116001811461297b57600084156129635750858301515b600019600386901b1c1916600185901b178555612911565b600085815260208120601f198616915b828110156129aa5788860151825594840194600190910190840161298b565b50858210156129c85787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015612a5557888303603f190185528151805163ffffffff1684528781015161ffff16888501528601516060878501819052612a4181860183611dde565b968901969450505090860190600101612a01565b509098975050505050505050565b600060408284031215612a7557600080fd5b612a7d6123c8565b82358152602083013560208201528091505092915050565b600082612ab257634e487b7160e01b600052601260045260246000fd5b500490565b80820281158282048414176108b357634e487b7160e01b600052601160045260246000fd5b803560208310156108b357600019602084900360031b1b1692915050565b6001600160c01b03198135818116916008851015612b225780818660080360031b1b83161692505b505092915050565b60c085901b6001600160c01b031916815260e084901b6001600160e01b0319166008820152600c81018390528151600090612b6c81602c850160208701611dba565b91909101602c0195945050505050565b84815260018060c01b03198460c01b16602082015282602882015260008251612bac816048850160208701611dba565b9190910160480195945050505050565b600060808284031215612bce57600080fd5b612bd66123a0565b825181526020830151612be881612662565b6020820152612bfa846040850161287d565b60408201529392505050565b60008251612612818460208701611dba56fea264697066735822122077b209a3d35ca0afc6930ffea5ce398ff954b030179b0a7154449738ba7f236164736f6c63430008170033",
1263
- "linkReferences": {},
1264
- "deployedLinkReferences": {}
1265
- }