@venusprotocol/oracle 2.8.0-dev.1 → 2.8.0-dev.3

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 (63) hide show
  1. package/deployments/bscmainnet/PendleOracle-PT-SolvBTC.BBN-27MAR2025.json +368 -0
  2. package/deployments/bscmainnet/PendleOracle-PT-SolvBTC.BBN-27MAR2025_Implementation.json +329 -0
  3. package/deployments/bscmainnet/PendleOracle-PT-SolvBTC.BBN-27MAR2025_Proxy.json +224 -0
  4. package/deployments/bscmainnet/SolvBTC.BBN_OneJumpRedStoneOracle.json +295 -0
  5. package/deployments/bscmainnet/SolvBTC.BBN_OneJumpRedStoneOracle_Implementation.json +204 -0
  6. package/deployments/bscmainnet/SolvBTC.BBN_OneJumpRedStoneOracle_Proxy.json +213 -0
  7. package/deployments/bscmainnet/solcInputs/0bebc4f35e59fb8446bd3ebaaccae910.json +64 -0
  8. package/deployments/bscmainnet/solcInputs/6aede02a1ea73715bd2f7f2e6dad96c7.json +64 -0
  9. package/deployments/bscmainnet.json +2439 -1370
  10. package/deployments/bscmainnet_addresses.json +6 -0
  11. package/deployments/bsctestnet/MockPendlePtOracle.json +354 -0
  12. package/deployments/bsctestnet/PendleOracle-PT-SolvBTC.BBN-27MAR2025.json +368 -0
  13. package/deployments/bsctestnet/PendleOracle-PT-SolvBTC.BBN-27MAR2025_Implementation.json +329 -0
  14. package/deployments/bsctestnet/PendleOracle-PT-SolvBTC.BBN-27MAR2025_Proxy.json +224 -0
  15. package/deployments/bsctestnet/SolvBTC.BBN_OneJumpRedStoneOracle.json +295 -0
  16. package/deployments/bsctestnet/SolvBTC.BBN_OneJumpRedStoneOracle_Implementation.json +204 -0
  17. package/deployments/bsctestnet/SolvBTC.BBN_OneJumpRedStoneOracle_Proxy.json +213 -0
  18. package/deployments/bsctestnet/solcInputs/0bebc4f35e59fb8446bd3ebaaccae910.json +64 -0
  19. package/deployments/bsctestnet/solcInputs/6aede02a1ea73715bd2f7f2e6dad96c7.json +64 -0
  20. package/deployments/bsctestnet.json +2473 -1166
  21. package/deployments/bsctestnet_addresses.json +7 -0
  22. package/deployments/ethereum/PendleOracle_PT_USDe_27MAR2025.json +342 -0
  23. package/deployments/ethereum/PendleOracle_PT_USDe_27MAR2025_Implementation.json +274 -0
  24. package/deployments/ethereum/PendleOracle_PT_USDe_27MAR2025_Proxy.json +224 -0
  25. package/deployments/ethereum/PendleOracle_PT_sUSDe_27MAR2025.json +342 -0
  26. package/deployments/ethereum/PendleOracle_PT_sUSDe_27MAR2025_Implementation.json +274 -0
  27. package/deployments/ethereum/PendleOracle_PT_sUSDe_27MAR2025_Proxy.json +224 -0
  28. package/deployments/ethereum/sUSDe_ERC4626Oracle.json +177 -0
  29. package/deployments/ethereum/solcInputs/94bfc5063ff1e6d8e2de1792750dac25.json +58 -0
  30. package/deployments/ethereum/solcInputs/c9234768a0e90787a3e044ab631ca909.json +316 -0
  31. package/deployments/ethereum.json +1188 -0
  32. package/deployments/ethereum_addresses.json +8 -1
  33. package/deployments/sepolia/MockPendleOracle_PT_USDe_27MAR2025.json +275 -0
  34. package/deployments/sepolia/MockPendleOracle_PT_sUSDe_27MAR2025.json +275 -0
  35. package/deployments/sepolia/PendleOracle_PT_USDe_27MAR2025.json +342 -0
  36. package/deployments/sepolia/PendleOracle_PT_USDe_27MAR2025_Implementation.json +274 -0
  37. package/deployments/sepolia/PendleOracle_PT_USDe_27MAR2025_Proxy.json +224 -0
  38. package/deployments/sepolia/PendleOracle_PT_sUSDe_27MAR2025.json +342 -0
  39. package/deployments/sepolia/PendleOracle_PT_sUSDe_27MAR2025_Implementation.json +274 -0
  40. package/deployments/sepolia/PendleOracle_PT_sUSDe_27MAR2025_Proxy.json +224 -0
  41. package/deployments/sepolia/sUSDe_ERC4626Oracle.json +177 -0
  42. package/deployments/sepolia/solcInputs/10211ffe5f5d2e235e8b1b524375aa59.json +58 -0
  43. package/deployments/sepolia/solcInputs/94bfc5063ff1e6d8e2de1792750dac25.json +58 -0
  44. package/deployments/sepolia/solcInputs/c9234768a0e90787a3e044ab631ca909.json +316 -0
  45. package/deployments/sepolia.json +1772 -250
  46. package/deployments/sepolia_addresses.json +10 -1
  47. package/dist/deploy/14-deploy-ERC4626Oracle.d.ts +4 -0
  48. package/dist/deploy/14-deploy-ERC4626Oracle.d.ts.map +1 -0
  49. package/dist/deploy/14-deploy-ERC4626Oracle.js +21 -0
  50. package/dist/deploy/14-deploy-ERC4626Oracle.js.map +1 -0
  51. package/dist/deploy/16-deploy-SolvBTC.BBN-pendle-oracles.d.ts +4 -0
  52. package/dist/deploy/16-deploy-SolvBTC.BBN-pendle-oracles.d.ts.map +1 -0
  53. package/dist/deploy/16-deploy-SolvBTC.BBN-pendle-oracles.js +55 -0
  54. package/dist/deploy/16-deploy-SolvBTC.BBN-pendle-oracles.js.map +1 -0
  55. package/dist/deploy/7-dependencies-pendle-oracle.js +2 -2
  56. package/dist/deploy/7-dependencies-pendle-oracle.js.map +1 -1
  57. package/dist/deploy/7-deploy-pendle-oracle.d.ts.map +1 -1
  58. package/dist/deploy/7-deploy-pendle-oracle.js +72 -17
  59. package/dist/deploy/7-deploy-pendle-oracle.js.map +1 -1
  60. package/dist/helpers/deploymentConfig.d.ts.map +1 -1
  61. package/dist/helpers/deploymentConfig.js +19 -1
  62. package/dist/helpers/deploymentConfig.js.map +1 -1
  63. package/package.json +1 -1
@@ -4217,8 +4217,8 @@
4217
4217
  }
4218
4218
  ]
4219
4219
  },
4220
- "PythOracle": {
4221
- "address": "0xb893E38162f55fb80B18Aa44da76FaDf8E9B2262",
4220
+ "PendleOracle-PT-SolvBTC.BBN-27MAR2025": {
4221
+ "address": "0xE11965a3513F537d91D73d9976FBe8c0969Bb252",
4222
4222
  "abi": [
4223
4223
  {
4224
4224
  "anonymous": false,
@@ -4331,146 +4331,83 @@
4331
4331
  "type": "receive"
4332
4332
  },
4333
4333
  {
4334
- "inputs": [
4335
- {
4336
- "internalType": "address",
4337
- "name": "sender",
4338
- "type": "address"
4339
- },
4340
- {
4341
- "internalType": "address",
4342
- "name": "calledContract",
4343
- "type": "address"
4344
- },
4345
- {
4346
- "internalType": "string",
4347
- "name": "methodSignature",
4348
- "type": "string"
4349
- }
4350
- ],
4351
- "name": "Unauthorized",
4334
+ "inputs": [],
4335
+ "name": "InvalidDuration",
4352
4336
  "type": "error"
4353
4337
  },
4354
4338
  {
4355
- "anonymous": false,
4356
- "inputs": [
4357
- {
4358
- "indexed": false,
4359
- "internalType": "uint8",
4360
- "name": "version",
4361
- "type": "uint8"
4362
- }
4363
- ],
4364
- "name": "Initialized",
4365
- "type": "event"
4339
+ "inputs": [],
4340
+ "name": "InvalidTokenAddress",
4341
+ "type": "error"
4366
4342
  },
4367
4343
  {
4368
- "anonymous": false,
4369
- "inputs": [
4370
- {
4371
- "indexed": false,
4372
- "internalType": "address",
4373
- "name": "oldAccessControlManager",
4374
- "type": "address"
4375
- },
4376
- {
4377
- "indexed": false,
4378
- "internalType": "address",
4379
- "name": "newAccessControlManager",
4380
- "type": "address"
4381
- }
4382
- ],
4383
- "name": "NewAccessControlManager",
4384
- "type": "event"
4344
+ "inputs": [],
4345
+ "name": "ZeroAddressNotAllowed",
4346
+ "type": "error"
4385
4347
  },
4386
4348
  {
4387
- "anonymous": false,
4388
- "inputs": [
4389
- {
4390
- "indexed": true,
4391
- "internalType": "address",
4392
- "name": "previousOwner",
4393
- "type": "address"
4394
- },
4349
+ "inputs": [],
4350
+ "name": "ZeroValueNotAllowed",
4351
+ "type": "error"
4352
+ },
4353
+ {
4354
+ "inputs": [],
4355
+ "name": "CORRELATED_TOKEN",
4356
+ "outputs": [
4395
4357
  {
4396
- "indexed": true,
4397
4358
  "internalType": "address",
4398
- "name": "newOwner",
4359
+ "name": "",
4399
4360
  "type": "address"
4400
4361
  }
4401
4362
  ],
4402
- "name": "OwnershipTransferStarted",
4403
- "type": "event"
4363
+ "stateMutability": "view",
4364
+ "type": "function"
4404
4365
  },
4405
4366
  {
4406
- "anonymous": false,
4407
- "inputs": [
4408
- {
4409
- "indexed": true,
4410
- "internalType": "address",
4411
- "name": "previousOwner",
4412
- "type": "address"
4413
- },
4367
+ "inputs": [],
4368
+ "name": "MARKET",
4369
+ "outputs": [
4414
4370
  {
4415
- "indexed": true,
4416
4371
  "internalType": "address",
4417
- "name": "newOwner",
4372
+ "name": "",
4418
4373
  "type": "address"
4419
4374
  }
4420
4375
  ],
4421
- "name": "OwnershipTransferred",
4422
- "type": "event"
4376
+ "stateMutability": "view",
4377
+ "type": "function"
4423
4378
  },
4424
4379
  {
4425
- "anonymous": false,
4426
- "inputs": [
4427
- {
4428
- "indexed": true,
4429
- "internalType": "address",
4430
- "name": "oldPythOracle",
4431
- "type": "address"
4432
- },
4380
+ "inputs": [],
4381
+ "name": "PT_ORACLE",
4382
+ "outputs": [
4433
4383
  {
4434
- "indexed": true,
4435
- "internalType": "address",
4436
- "name": "newPythOracle",
4384
+ "internalType": "contract IPendlePtOracle",
4385
+ "name": "",
4437
4386
  "type": "address"
4438
4387
  }
4439
4388
  ],
4440
- "name": "PythOracleSet",
4441
- "type": "event"
4389
+ "stateMutability": "view",
4390
+ "type": "function"
4442
4391
  },
4443
4392
  {
4444
- "anonymous": false,
4445
- "inputs": [
4446
- {
4447
- "indexed": true,
4448
- "internalType": "address",
4449
- "name": "vToken",
4450
- "type": "address"
4451
- },
4452
- {
4453
- "indexed": true,
4454
- "internalType": "bytes32",
4455
- "name": "pythId",
4456
- "type": "bytes32"
4457
- },
4393
+ "inputs": [],
4394
+ "name": "RATE_KIND",
4395
+ "outputs": [
4458
4396
  {
4459
- "indexed": true,
4460
- "internalType": "uint64",
4461
- "name": "maxStalePeriod",
4462
- "type": "uint64"
4397
+ "internalType": "enum PendleOracle.RateKind",
4398
+ "name": "",
4399
+ "type": "uint8"
4463
4400
  }
4464
4401
  ],
4465
- "name": "TokenConfigAdded",
4466
- "type": "event"
4402
+ "stateMutability": "view",
4403
+ "type": "function"
4467
4404
  },
4468
4405
  {
4469
4406
  "inputs": [],
4470
- "name": "BNB_ADDR",
4407
+ "name": "RESILIENT_ORACLE",
4471
4408
  "outputs": [
4472
4409
  {
4473
- "internalType": "address",
4410
+ "internalType": "contract OracleInterface",
4474
4411
  "name": "",
4475
4412
  "type": "address"
4476
4413
  }
@@ -4480,12 +4417,12 @@
4480
4417
  },
4481
4418
  {
4482
4419
  "inputs": [],
4483
- "name": "EXP_SCALE",
4420
+ "name": "TWAP_DURATION",
4484
4421
  "outputs": [
4485
4422
  {
4486
- "internalType": "uint256",
4423
+ "internalType": "uint32",
4487
4424
  "name": "",
4488
- "type": "uint256"
4425
+ "type": "uint32"
4489
4426
  }
4490
4427
  ],
4491
4428
  "stateMutability": "view",
@@ -4493,17 +4430,23 @@
4493
4430
  },
4494
4431
  {
4495
4432
  "inputs": [],
4496
- "name": "acceptOwnership",
4497
- "outputs": [],
4498
- "stateMutability": "nonpayable",
4433
+ "name": "UNDERLYING_DECIMALS",
4434
+ "outputs": [
4435
+ {
4436
+ "internalType": "uint8",
4437
+ "name": "",
4438
+ "type": "uint8"
4439
+ }
4440
+ ],
4441
+ "stateMutability": "view",
4499
4442
  "type": "function"
4500
4443
  },
4501
4444
  {
4502
4445
  "inputs": [],
4503
- "name": "accessControlManager",
4446
+ "name": "UNDERLYING_TOKEN",
4504
4447
  "outputs": [
4505
4448
  {
4506
- "internalType": "contract IAccessControlManagerV8",
4449
+ "internalType": "address",
4507
4450
  "name": "",
4508
4451
  "type": "address"
4509
4452
  }
@@ -4515,11 +4458,11 @@
4515
4458
  "inputs": [
4516
4459
  {
4517
4460
  "internalType": "address",
4518
- "name": "vToken",
4461
+ "name": "asset",
4519
4462
  "type": "address"
4520
4463
  }
4521
4464
  ],
4522
- "name": "getUnderlyingPrice",
4465
+ "name": "getPrice",
4523
4466
  "outputs": [
4524
4467
  {
4525
4468
  "internalType": "uint256",
@@ -4534,23 +4477,92 @@
4534
4477
  "inputs": [
4535
4478
  {
4536
4479
  "internalType": "address",
4537
- "name": "underlyingPythOracle_",
4480
+ "name": "_logic",
4538
4481
  "type": "address"
4539
4482
  },
4540
4483
  {
4541
4484
  "internalType": "address",
4542
- "name": "accessControlManager_",
4485
+ "name": "admin_",
4543
4486
  "type": "address"
4487
+ },
4488
+ {
4489
+ "internalType": "bytes",
4490
+ "name": "_data",
4491
+ "type": "bytes"
4492
+ }
4493
+ ],
4494
+ "stateMutability": "payable",
4495
+ "type": "constructor"
4496
+ }
4497
+ ]
4498
+ },
4499
+ "PendleOracle-PT-SolvBTC.BBN-27MAR2025_Implementation": {
4500
+ "address": "0xD2721FB0d9F071d84B3EbFd27Ab35B568b350079",
4501
+ "abi": [
4502
+ {
4503
+ "inputs": [
4504
+ {
4505
+ "internalType": "address",
4506
+ "name": "market",
4507
+ "type": "address"
4508
+ },
4509
+ {
4510
+ "internalType": "address",
4511
+ "name": "ptOracle",
4512
+ "type": "address"
4513
+ },
4514
+ {
4515
+ "internalType": "enum PendleOracle.RateKind",
4516
+ "name": "rateKind",
4517
+ "type": "uint8"
4518
+ },
4519
+ {
4520
+ "internalType": "address",
4521
+ "name": "ptToken",
4522
+ "type": "address"
4523
+ },
4524
+ {
4525
+ "internalType": "address",
4526
+ "name": "underlyingToken",
4527
+ "type": "address"
4528
+ },
4529
+ {
4530
+ "internalType": "address",
4531
+ "name": "resilientOracle",
4532
+ "type": "address"
4533
+ },
4534
+ {
4535
+ "internalType": "uint32",
4536
+ "name": "twapDuration",
4537
+ "type": "uint32"
4544
4538
  }
4545
4539
  ],
4546
- "name": "initialize",
4547
- "outputs": [],
4548
4540
  "stateMutability": "nonpayable",
4549
- "type": "function"
4541
+ "type": "constructor"
4550
4542
  },
4551
4543
  {
4552
4544
  "inputs": [],
4553
- "name": "owner",
4545
+ "name": "InvalidDuration",
4546
+ "type": "error"
4547
+ },
4548
+ {
4549
+ "inputs": [],
4550
+ "name": "InvalidTokenAddress",
4551
+ "type": "error"
4552
+ },
4553
+ {
4554
+ "inputs": [],
4555
+ "name": "ZeroAddressNotAllowed",
4556
+ "type": "error"
4557
+ },
4558
+ {
4559
+ "inputs": [],
4560
+ "name": "ZeroValueNotAllowed",
4561
+ "type": "error"
4562
+ },
4563
+ {
4564
+ "inputs": [],
4565
+ "name": "CORRELATED_TOKEN",
4554
4566
  "outputs": [
4555
4567
  {
4556
4568
  "internalType": "address",
@@ -4563,7 +4575,7 @@
4563
4575
  },
4564
4576
  {
4565
4577
  "inputs": [],
4566
- "name": "pendingOwner",
4578
+ "name": "MARKET",
4567
4579
  "outputs": [
4568
4580
  {
4569
4581
  "internalType": "address",
@@ -4576,147 +4588,64 @@
4576
4588
  },
4577
4589
  {
4578
4590
  "inputs": [],
4579
- "name": "renounceOwnership",
4580
- "outputs": [],
4581
- "stateMutability": "nonpayable",
4591
+ "name": "PT_ORACLE",
4592
+ "outputs": [
4593
+ {
4594
+ "internalType": "contract IPendlePtOracle",
4595
+ "name": "",
4596
+ "type": "address"
4597
+ }
4598
+ ],
4599
+ "stateMutability": "view",
4582
4600
  "type": "function"
4583
4601
  },
4584
4602
  {
4585
- "inputs": [
4603
+ "inputs": [],
4604
+ "name": "RATE_KIND",
4605
+ "outputs": [
4586
4606
  {
4587
- "internalType": "address",
4588
- "name": "accessControlManager_",
4589
- "type": "address"
4607
+ "internalType": "enum PendleOracle.RateKind",
4608
+ "name": "",
4609
+ "type": "uint8"
4590
4610
  }
4591
4611
  ],
4592
- "name": "setAccessControlManager",
4593
- "outputs": [],
4594
- "stateMutability": "nonpayable",
4612
+ "stateMutability": "view",
4595
4613
  "type": "function"
4596
4614
  },
4597
4615
  {
4598
- "inputs": [
4599
- {
4600
- "components": [
4601
- {
4602
- "internalType": "bytes32",
4603
- "name": "pythId",
4604
- "type": "bytes32"
4605
- },
4606
- {
4607
- "internalType": "address",
4608
- "name": "asset",
4609
- "type": "address"
4610
- },
4611
- {
4612
- "internalType": "uint64",
4613
- "name": "maxStalePeriod",
4614
- "type": "uint64"
4615
- }
4616
- ],
4617
- "internalType": "struct PythOracle.TokenConfig",
4618
- "name": "tokenConfig",
4619
- "type": "tuple"
4620
- }
4621
- ],
4622
- "name": "setTokenConfig",
4623
- "outputs": [],
4624
- "stateMutability": "nonpayable",
4625
- "type": "function"
4626
- },
4627
- {
4628
- "inputs": [
4629
- {
4630
- "components": [
4631
- {
4632
- "internalType": "bytes32",
4633
- "name": "pythId",
4634
- "type": "bytes32"
4635
- },
4636
- {
4637
- "internalType": "address",
4638
- "name": "asset",
4639
- "type": "address"
4640
- },
4641
- {
4642
- "internalType": "uint64",
4643
- "name": "maxStalePeriod",
4644
- "type": "uint64"
4645
- }
4646
- ],
4647
- "internalType": "struct PythOracle.TokenConfig[]",
4648
- "name": "tokenConfigs_",
4649
- "type": "tuple[]"
4650
- }
4651
- ],
4652
- "name": "setTokenConfigs",
4653
- "outputs": [],
4654
- "stateMutability": "nonpayable",
4655
- "type": "function"
4656
- },
4657
- {
4658
- "inputs": [
4659
- {
4660
- "internalType": "contract IPyth",
4661
- "name": "underlyingPythOracle_",
4662
- "type": "address"
4663
- }
4664
- ],
4665
- "name": "setUnderlyingPythOracle",
4666
- "outputs": [],
4667
- "stateMutability": "nonpayable",
4668
- "type": "function"
4669
- },
4670
- {
4671
- "inputs": [
4672
- {
4673
- "internalType": "address",
4674
- "name": "",
4675
- "type": "address"
4676
- }
4677
- ],
4678
- "name": "tokenConfigs",
4616
+ "inputs": [],
4617
+ "name": "RESILIENT_ORACLE",
4679
4618
  "outputs": [
4680
4619
  {
4681
- "internalType": "bytes32",
4682
- "name": "pythId",
4683
- "type": "bytes32"
4684
- },
4685
- {
4686
- "internalType": "address",
4687
- "name": "asset",
4620
+ "internalType": "contract OracleInterface",
4621
+ "name": "",
4688
4622
  "type": "address"
4689
- },
4690
- {
4691
- "internalType": "uint64",
4692
- "name": "maxStalePeriod",
4693
- "type": "uint64"
4694
4623
  }
4695
4624
  ],
4696
4625
  "stateMutability": "view",
4697
4626
  "type": "function"
4698
4627
  },
4699
4628
  {
4700
- "inputs": [
4629
+ "inputs": [],
4630
+ "name": "TWAP_DURATION",
4631
+ "outputs": [
4701
4632
  {
4702
- "internalType": "address",
4703
- "name": "newOwner",
4704
- "type": "address"
4633
+ "internalType": "uint32",
4634
+ "name": "",
4635
+ "type": "uint32"
4705
4636
  }
4706
4637
  ],
4707
- "name": "transferOwnership",
4708
- "outputs": [],
4709
- "stateMutability": "nonpayable",
4638
+ "stateMutability": "view",
4710
4639
  "type": "function"
4711
4640
  },
4712
4641
  {
4713
4642
  "inputs": [],
4714
- "name": "underlyingPythOracle",
4643
+ "name": "UNDERLYING_DECIMALS",
4715
4644
  "outputs": [
4716
4645
  {
4717
- "internalType": "contract IPyth",
4646
+ "internalType": "uint8",
4718
4647
  "name": "",
4719
- "type": "address"
4648
+ "type": "uint8"
4720
4649
  }
4721
4650
  ],
4722
4651
  "stateMutability": "view",
@@ -4724,7 +4653,7 @@
4724
4653
  },
4725
4654
  {
4726
4655
  "inputs": [],
4727
- "name": "vBnb",
4656
+ "name": "UNDERLYING_TOKEN",
4728
4657
  "outputs": [
4729
4658
  {
4730
4659
  "internalType": "address",
@@ -4736,18 +4665,29 @@
4736
4665
  "type": "function"
4737
4666
  },
4738
4667
  {
4739
- "inputs": [],
4740
- "name": "vai",
4741
- "outputs": [
4668
+ "inputs": [
4742
4669
  {
4743
4670
  "internalType": "address",
4744
- "name": "",
4671
+ "name": "asset",
4745
4672
  "type": "address"
4746
4673
  }
4747
4674
  ],
4675
+ "name": "getPrice",
4676
+ "outputs": [
4677
+ {
4678
+ "internalType": "uint256",
4679
+ "name": "",
4680
+ "type": "uint256"
4681
+ }
4682
+ ],
4748
4683
  "stateMutability": "view",
4749
4684
  "type": "function"
4750
- },
4685
+ }
4686
+ ]
4687
+ },
4688
+ "PendleOracle-PT-SolvBTC.BBN-27MAR2025_Proxy": {
4689
+ "address": "0xE11965a3513F537d91D73d9976FBe8c0969Bb252",
4690
+ "abi": [
4751
4691
  {
4752
4692
  "inputs": [
4753
4693
  {
@@ -4768,117 +4708,321 @@
4768
4708
  ],
4769
4709
  "stateMutability": "payable",
4770
4710
  "type": "constructor"
4771
- }
4772
- ]
4773
- },
4774
- "PythOracle_Implementation": {
4775
- "address": "0x1b8dE8fe17735B80E30e1bAbcD78A20F573a3e9e",
4776
- "abi": [
4711
+ },
4777
4712
  {
4713
+ "anonymous": false,
4778
4714
  "inputs": [
4779
4715
  {
4716
+ "indexed": false,
4780
4717
  "internalType": "address",
4781
- "name": "vBnbAddress",
4718
+ "name": "previousAdmin",
4782
4719
  "type": "address"
4783
4720
  },
4784
4721
  {
4722
+ "indexed": false,
4785
4723
  "internalType": "address",
4786
- "name": "vaiAddress",
4724
+ "name": "newAdmin",
4787
4725
  "type": "address"
4788
4726
  }
4789
4727
  ],
4790
- "stateMutability": "nonpayable",
4791
- "type": "constructor"
4728
+ "name": "AdminChanged",
4729
+ "type": "event"
4792
4730
  },
4793
4731
  {
4732
+ "anonymous": false,
4794
4733
  "inputs": [
4795
4734
  {
4735
+ "indexed": true,
4796
4736
  "internalType": "address",
4797
- "name": "sender",
4798
- "type": "address"
4799
- },
4800
- {
4801
- "internalType": "address",
4802
- "name": "calledContract",
4737
+ "name": "beacon",
4803
4738
  "type": "address"
4804
- },
4805
- {
4806
- "internalType": "string",
4807
- "name": "methodSignature",
4808
- "type": "string"
4809
4739
  }
4810
4740
  ],
4811
- "name": "Unauthorized",
4812
- "type": "error"
4741
+ "name": "BeaconUpgraded",
4742
+ "type": "event"
4813
4743
  },
4814
4744
  {
4815
4745
  "anonymous": false,
4816
4746
  "inputs": [
4817
4747
  {
4818
- "indexed": false,
4819
- "internalType": "uint8",
4820
- "name": "version",
4821
- "type": "uint8"
4748
+ "indexed": true,
4749
+ "internalType": "address",
4750
+ "name": "implementation",
4751
+ "type": "address"
4822
4752
  }
4823
4753
  ],
4824
- "name": "Initialized",
4754
+ "name": "Upgraded",
4825
4755
  "type": "event"
4826
4756
  },
4827
4757
  {
4828
- "anonymous": false,
4829
- "inputs": [
4758
+ "stateMutability": "payable",
4759
+ "type": "fallback"
4760
+ },
4761
+ {
4762
+ "inputs": [],
4763
+ "name": "admin",
4764
+ "outputs": [
4830
4765
  {
4831
- "indexed": false,
4832
4766
  "internalType": "address",
4833
- "name": "oldAccessControlManager",
4767
+ "name": "admin_",
4834
4768
  "type": "address"
4835
- },
4769
+ }
4770
+ ],
4771
+ "stateMutability": "nonpayable",
4772
+ "type": "function"
4773
+ },
4774
+ {
4775
+ "inputs": [],
4776
+ "name": "implementation",
4777
+ "outputs": [
4836
4778
  {
4837
- "indexed": false,
4838
4779
  "internalType": "address",
4839
- "name": "newAccessControlManager",
4780
+ "name": "implementation_",
4840
4781
  "type": "address"
4841
4782
  }
4842
4783
  ],
4843
- "name": "NewAccessControlManager",
4844
- "type": "event"
4784
+ "stateMutability": "nonpayable",
4785
+ "type": "function"
4845
4786
  },
4846
4787
  {
4847
- "anonymous": false,
4848
4788
  "inputs": [
4849
4789
  {
4850
- "indexed": true,
4851
4790
  "internalType": "address",
4852
- "name": "previousOwner",
4791
+ "name": "newImplementation",
4853
4792
  "type": "address"
4854
- },
4793
+ }
4794
+ ],
4795
+ "name": "upgradeTo",
4796
+ "outputs": [],
4797
+ "stateMutability": "nonpayable",
4798
+ "type": "function"
4799
+ },
4800
+ {
4801
+ "inputs": [
4855
4802
  {
4856
- "indexed": true,
4857
4803
  "internalType": "address",
4858
- "name": "newOwner",
4804
+ "name": "newImplementation",
4859
4805
  "type": "address"
4806
+ },
4807
+ {
4808
+ "internalType": "bytes",
4809
+ "name": "data",
4810
+ "type": "bytes"
4860
4811
  }
4861
4812
  ],
4862
- "name": "OwnershipTransferStarted",
4863
- "type": "event"
4813
+ "name": "upgradeToAndCall",
4814
+ "outputs": [],
4815
+ "stateMutability": "payable",
4816
+ "type": "function"
4864
4817
  },
4818
+ {
4819
+ "stateMutability": "payable",
4820
+ "type": "receive"
4821
+ }
4822
+ ]
4823
+ },
4824
+ "PythOracle": {
4825
+ "address": "0xb893E38162f55fb80B18Aa44da76FaDf8E9B2262",
4826
+ "abi": [
4865
4827
  {
4866
4828
  "anonymous": false,
4867
4829
  "inputs": [
4868
4830
  {
4869
- "indexed": true,
4831
+ "indexed": false,
4870
4832
  "internalType": "address",
4871
- "name": "previousOwner",
4833
+ "name": "previousAdmin",
4872
4834
  "type": "address"
4873
4835
  },
4874
4836
  {
4875
- "indexed": true,
4837
+ "indexed": false,
4876
4838
  "internalType": "address",
4877
- "name": "newOwner",
4839
+ "name": "newAdmin",
4878
4840
  "type": "address"
4879
4841
  }
4880
4842
  ],
4881
- "name": "OwnershipTransferred",
4843
+ "name": "AdminChanged",
4844
+ "type": "event"
4845
+ },
4846
+ {
4847
+ "anonymous": false,
4848
+ "inputs": [
4849
+ {
4850
+ "indexed": true,
4851
+ "internalType": "address",
4852
+ "name": "beacon",
4853
+ "type": "address"
4854
+ }
4855
+ ],
4856
+ "name": "BeaconUpgraded",
4857
+ "type": "event"
4858
+ },
4859
+ {
4860
+ "anonymous": false,
4861
+ "inputs": [
4862
+ {
4863
+ "indexed": true,
4864
+ "internalType": "address",
4865
+ "name": "implementation",
4866
+ "type": "address"
4867
+ }
4868
+ ],
4869
+ "name": "Upgraded",
4870
+ "type": "event"
4871
+ },
4872
+ {
4873
+ "stateMutability": "payable",
4874
+ "type": "fallback"
4875
+ },
4876
+ {
4877
+ "inputs": [],
4878
+ "name": "admin",
4879
+ "outputs": [
4880
+ {
4881
+ "internalType": "address",
4882
+ "name": "admin_",
4883
+ "type": "address"
4884
+ }
4885
+ ],
4886
+ "stateMutability": "nonpayable",
4887
+ "type": "function"
4888
+ },
4889
+ {
4890
+ "inputs": [],
4891
+ "name": "implementation",
4892
+ "outputs": [
4893
+ {
4894
+ "internalType": "address",
4895
+ "name": "implementation_",
4896
+ "type": "address"
4897
+ }
4898
+ ],
4899
+ "stateMutability": "nonpayable",
4900
+ "type": "function"
4901
+ },
4902
+ {
4903
+ "inputs": [
4904
+ {
4905
+ "internalType": "address",
4906
+ "name": "newImplementation",
4907
+ "type": "address"
4908
+ }
4909
+ ],
4910
+ "name": "upgradeTo",
4911
+ "outputs": [],
4912
+ "stateMutability": "nonpayable",
4913
+ "type": "function"
4914
+ },
4915
+ {
4916
+ "inputs": [
4917
+ {
4918
+ "internalType": "address",
4919
+ "name": "newImplementation",
4920
+ "type": "address"
4921
+ },
4922
+ {
4923
+ "internalType": "bytes",
4924
+ "name": "data",
4925
+ "type": "bytes"
4926
+ }
4927
+ ],
4928
+ "name": "upgradeToAndCall",
4929
+ "outputs": [],
4930
+ "stateMutability": "payable",
4931
+ "type": "function"
4932
+ },
4933
+ {
4934
+ "stateMutability": "payable",
4935
+ "type": "receive"
4936
+ },
4937
+ {
4938
+ "inputs": [
4939
+ {
4940
+ "internalType": "address",
4941
+ "name": "sender",
4942
+ "type": "address"
4943
+ },
4944
+ {
4945
+ "internalType": "address",
4946
+ "name": "calledContract",
4947
+ "type": "address"
4948
+ },
4949
+ {
4950
+ "internalType": "string",
4951
+ "name": "methodSignature",
4952
+ "type": "string"
4953
+ }
4954
+ ],
4955
+ "name": "Unauthorized",
4956
+ "type": "error"
4957
+ },
4958
+ {
4959
+ "anonymous": false,
4960
+ "inputs": [
4961
+ {
4962
+ "indexed": false,
4963
+ "internalType": "uint8",
4964
+ "name": "version",
4965
+ "type": "uint8"
4966
+ }
4967
+ ],
4968
+ "name": "Initialized",
4969
+ "type": "event"
4970
+ },
4971
+ {
4972
+ "anonymous": false,
4973
+ "inputs": [
4974
+ {
4975
+ "indexed": false,
4976
+ "internalType": "address",
4977
+ "name": "oldAccessControlManager",
4978
+ "type": "address"
4979
+ },
4980
+ {
4981
+ "indexed": false,
4982
+ "internalType": "address",
4983
+ "name": "newAccessControlManager",
4984
+ "type": "address"
4985
+ }
4986
+ ],
4987
+ "name": "NewAccessControlManager",
4988
+ "type": "event"
4989
+ },
4990
+ {
4991
+ "anonymous": false,
4992
+ "inputs": [
4993
+ {
4994
+ "indexed": true,
4995
+ "internalType": "address",
4996
+ "name": "previousOwner",
4997
+ "type": "address"
4998
+ },
4999
+ {
5000
+ "indexed": true,
5001
+ "internalType": "address",
5002
+ "name": "newOwner",
5003
+ "type": "address"
5004
+ }
5005
+ ],
5006
+ "name": "OwnershipTransferStarted",
5007
+ "type": "event"
5008
+ },
5009
+ {
5010
+ "anonymous": false,
5011
+ "inputs": [
5012
+ {
5013
+ "indexed": true,
5014
+ "internalType": "address",
5015
+ "name": "previousOwner",
5016
+ "type": "address"
5017
+ },
5018
+ {
5019
+ "indexed": true,
5020
+ "internalType": "address",
5021
+ "name": "newOwner",
5022
+ "type": "address"
5023
+ }
5024
+ ],
5025
+ "name": "OwnershipTransferred",
4882
5026
  "type": "event"
4883
5027
  },
4884
5028
  {
@@ -5207,12 +5351,7 @@
5207
5351
  ],
5208
5352
  "stateMutability": "view",
5209
5353
  "type": "function"
5210
- }
5211
- ]
5212
- },
5213
- "PythOracle_Proxy": {
5214
- "address": "0xb893E38162f55fb80B18Aa44da76FaDf8E9B2262",
5215
- "abi": [
5354
+ },
5216
5355
  {
5217
5356
  "inputs": [
5218
5357
  {
@@ -5233,139 +5372,117 @@
5233
5372
  ],
5234
5373
  "stateMutability": "payable",
5235
5374
  "type": "constructor"
5236
- },
5375
+ }
5376
+ ]
5377
+ },
5378
+ "PythOracle_Implementation": {
5379
+ "address": "0x1b8dE8fe17735B80E30e1bAbcD78A20F573a3e9e",
5380
+ "abi": [
5237
5381
  {
5238
- "anonymous": false,
5239
5382
  "inputs": [
5240
5383
  {
5241
- "indexed": false,
5242
5384
  "internalType": "address",
5243
- "name": "previousAdmin",
5385
+ "name": "vBnbAddress",
5244
5386
  "type": "address"
5245
5387
  },
5246
5388
  {
5247
- "indexed": false,
5248
5389
  "internalType": "address",
5249
- "name": "newAdmin",
5390
+ "name": "vaiAddress",
5250
5391
  "type": "address"
5251
5392
  }
5252
5393
  ],
5253
- "name": "AdminChanged",
5254
- "type": "event"
5394
+ "stateMutability": "nonpayable",
5395
+ "type": "constructor"
5255
5396
  },
5256
5397
  {
5257
- "anonymous": false,
5258
5398
  "inputs": [
5259
5399
  {
5260
- "indexed": true,
5261
5400
  "internalType": "address",
5262
- "name": "beacon",
5401
+ "name": "sender",
5402
+ "type": "address"
5403
+ },
5404
+ {
5405
+ "internalType": "address",
5406
+ "name": "calledContract",
5263
5407
  "type": "address"
5408
+ },
5409
+ {
5410
+ "internalType": "string",
5411
+ "name": "methodSignature",
5412
+ "type": "string"
5264
5413
  }
5265
5414
  ],
5266
- "name": "BeaconUpgraded",
5267
- "type": "event"
5415
+ "name": "Unauthorized",
5416
+ "type": "error"
5268
5417
  },
5269
5418
  {
5270
5419
  "anonymous": false,
5271
5420
  "inputs": [
5272
5421
  {
5273
- "indexed": true,
5274
- "internalType": "address",
5275
- "name": "implementation",
5276
- "type": "address"
5422
+ "indexed": false,
5423
+ "internalType": "uint8",
5424
+ "name": "version",
5425
+ "type": "uint8"
5277
5426
  }
5278
5427
  ],
5279
- "name": "Upgraded",
5428
+ "name": "Initialized",
5280
5429
  "type": "event"
5281
5430
  },
5282
5431
  {
5283
- "stateMutability": "payable",
5284
- "type": "fallback"
5285
- },
5286
- {
5287
- "inputs": [],
5288
- "name": "admin",
5289
- "outputs": [
5432
+ "anonymous": false,
5433
+ "inputs": [
5290
5434
  {
5435
+ "indexed": false,
5291
5436
  "internalType": "address",
5292
- "name": "admin_",
5437
+ "name": "oldAccessControlManager",
5438
+ "type": "address"
5439
+ },
5440
+ {
5441
+ "indexed": false,
5442
+ "internalType": "address",
5443
+ "name": "newAccessControlManager",
5293
5444
  "type": "address"
5294
5445
  }
5295
5446
  ],
5296
- "stateMutability": "nonpayable",
5297
- "type": "function"
5298
- },
5299
- {
5300
- "inputs": [],
5301
- "name": "implementation",
5302
- "outputs": [
5303
- {
5304
- "internalType": "address",
5305
- "name": "implementation_",
5306
- "type": "address"
5307
- }
5308
- ],
5309
- "stateMutability": "nonpayable",
5310
- "type": "function"
5447
+ "name": "NewAccessControlManager",
5448
+ "type": "event"
5311
5449
  },
5312
5450
  {
5451
+ "anonymous": false,
5313
5452
  "inputs": [
5314
5453
  {
5454
+ "indexed": true,
5315
5455
  "internalType": "address",
5316
- "name": "newImplementation",
5456
+ "name": "previousOwner",
5317
5457
  "type": "address"
5318
- }
5319
- ],
5320
- "name": "upgradeTo",
5321
- "outputs": [],
5322
- "stateMutability": "nonpayable",
5323
- "type": "function"
5324
- },
5325
- {
5326
- "inputs": [
5458
+ },
5327
5459
  {
5460
+ "indexed": true,
5328
5461
  "internalType": "address",
5329
- "name": "newImplementation",
5462
+ "name": "newOwner",
5330
5463
  "type": "address"
5331
- },
5332
- {
5333
- "internalType": "bytes",
5334
- "name": "data",
5335
- "type": "bytes"
5336
5464
  }
5337
5465
  ],
5338
- "name": "upgradeToAndCall",
5339
- "outputs": [],
5340
- "stateMutability": "payable",
5341
- "type": "function"
5466
+ "name": "OwnershipTransferStarted",
5467
+ "type": "event"
5342
5468
  },
5343
- {
5344
- "stateMutability": "payable",
5345
- "type": "receive"
5346
- }
5347
- ]
5348
- },
5349
- "RedStoneOracle": {
5350
- "address": "0x8455EFA4D7Ff63b8BFD96AdD889483Ea7d39B70a",
5351
- "abi": [
5352
5469
  {
5353
5470
  "anonymous": false,
5354
5471
  "inputs": [
5355
5472
  {
5356
- "indexed": false,
5473
+ "indexed": true,
5357
5474
  "internalType": "address",
5358
- "name": "previousAdmin",
5475
+ "name": "previousOwner",
5359
5476
  "type": "address"
5360
5477
  },
5361
5478
  {
5362
- "indexed": false,
5479
+ "indexed": true,
5363
5480
  "internalType": "address",
5364
- "name": "newAdmin",
5481
+ "name": "newOwner",
5365
5482
  "type": "address"
5366
5483
  }
5367
5484
  ],
5368
- "name": "AdminChanged",
5485
+ "name": "OwnershipTransferred",
5369
5486
  "type": "event"
5370
5487
  },
5371
5488
  {
@@ -5374,11 +5491,17 @@
5374
5491
  {
5375
5492
  "indexed": true,
5376
5493
  "internalType": "address",
5377
- "name": "beacon",
5494
+ "name": "oldPythOracle",
5495
+ "type": "address"
5496
+ },
5497
+ {
5498
+ "indexed": true,
5499
+ "internalType": "address",
5500
+ "name": "newPythOracle",
5378
5501
  "type": "address"
5379
5502
  }
5380
5503
  ],
5381
- "name": "BeaconUpgraded",
5504
+ "name": "PythOracleSet",
5382
5505
  "type": "event"
5383
5506
  },
5384
5507
  {
@@ -5387,206 +5510,1109 @@
5387
5510
  {
5388
5511
  "indexed": true,
5389
5512
  "internalType": "address",
5390
- "name": "implementation",
5513
+ "name": "vToken",
5391
5514
  "type": "address"
5515
+ },
5516
+ {
5517
+ "indexed": true,
5518
+ "internalType": "bytes32",
5519
+ "name": "pythId",
5520
+ "type": "bytes32"
5521
+ },
5522
+ {
5523
+ "indexed": true,
5524
+ "internalType": "uint64",
5525
+ "name": "maxStalePeriod",
5526
+ "type": "uint64"
5392
5527
  }
5393
5528
  ],
5394
- "name": "Upgraded",
5529
+ "name": "TokenConfigAdded",
5395
5530
  "type": "event"
5396
5531
  },
5397
- {
5398
- "stateMutability": "payable",
5399
- "type": "fallback"
5400
- },
5401
5532
  {
5402
5533
  "inputs": [],
5403
- "name": "admin",
5534
+ "name": "BNB_ADDR",
5404
5535
  "outputs": [
5405
5536
  {
5406
5537
  "internalType": "address",
5407
- "name": "admin_",
5538
+ "name": "",
5408
5539
  "type": "address"
5409
5540
  }
5410
5541
  ],
5411
- "stateMutability": "nonpayable",
5542
+ "stateMutability": "view",
5412
5543
  "type": "function"
5413
5544
  },
5414
5545
  {
5415
5546
  "inputs": [],
5416
- "name": "implementation",
5547
+ "name": "EXP_SCALE",
5417
5548
  "outputs": [
5418
5549
  {
5419
- "internalType": "address",
5420
- "name": "implementation_",
5421
- "type": "address"
5550
+ "internalType": "uint256",
5551
+ "name": "",
5552
+ "type": "uint256"
5422
5553
  }
5423
5554
  ],
5424
- "stateMutability": "nonpayable",
5555
+ "stateMutability": "view",
5425
5556
  "type": "function"
5426
5557
  },
5427
5558
  {
5428
- "inputs": [
5429
- {
5430
- "internalType": "address",
5431
- "name": "newImplementation",
5432
- "type": "address"
5433
- }
5434
- ],
5435
- "name": "upgradeTo",
5559
+ "inputs": [],
5560
+ "name": "acceptOwnership",
5436
5561
  "outputs": [],
5437
5562
  "stateMutability": "nonpayable",
5438
5563
  "type": "function"
5439
5564
  },
5440
5565
  {
5441
- "inputs": [
5566
+ "inputs": [],
5567
+ "name": "accessControlManager",
5568
+ "outputs": [
5442
5569
  {
5443
- "internalType": "address",
5444
- "name": "newImplementation",
5570
+ "internalType": "contract IAccessControlManagerV8",
5571
+ "name": "",
5445
5572
  "type": "address"
5446
- },
5447
- {
5448
- "internalType": "bytes",
5449
- "name": "data",
5450
- "type": "bytes"
5451
5573
  }
5452
5574
  ],
5453
- "name": "upgradeToAndCall",
5454
- "outputs": [],
5455
- "stateMutability": "payable",
5575
+ "stateMutability": "view",
5456
5576
  "type": "function"
5457
5577
  },
5458
- {
5459
- "stateMutability": "payable",
5460
- "type": "receive"
5461
- },
5462
5578
  {
5463
5579
  "inputs": [
5464
5580
  {
5465
5581
  "internalType": "address",
5466
- "name": "sender",
5467
- "type": "address"
5468
- },
5469
- {
5470
- "internalType": "address",
5471
- "name": "calledContract",
5582
+ "name": "vToken",
5472
5583
  "type": "address"
5473
- },
5474
- {
5475
- "internalType": "string",
5476
- "name": "methodSignature",
5477
- "type": "string"
5478
5584
  }
5479
5585
  ],
5480
- "name": "Unauthorized",
5481
- "type": "error"
5482
- },
5483
- {
5484
- "anonymous": false,
5485
- "inputs": [
5586
+ "name": "getUnderlyingPrice",
5587
+ "outputs": [
5486
5588
  {
5487
- "indexed": false,
5488
- "internalType": "uint8",
5489
- "name": "version",
5490
- "type": "uint8"
5589
+ "internalType": "uint256",
5590
+ "name": "",
5591
+ "type": "uint256"
5491
5592
  }
5492
5593
  ],
5493
- "name": "Initialized",
5494
- "type": "event"
5594
+ "stateMutability": "view",
5595
+ "type": "function"
5495
5596
  },
5496
5597
  {
5497
- "anonymous": false,
5498
5598
  "inputs": [
5499
5599
  {
5500
- "indexed": false,
5501
5600
  "internalType": "address",
5502
- "name": "oldAccessControlManager",
5601
+ "name": "underlyingPythOracle_",
5503
5602
  "type": "address"
5504
5603
  },
5505
5604
  {
5506
- "indexed": false,
5507
5605
  "internalType": "address",
5508
- "name": "newAccessControlManager",
5606
+ "name": "accessControlManager_",
5509
5607
  "type": "address"
5510
5608
  }
5511
5609
  ],
5512
- "name": "NewAccessControlManager",
5513
- "type": "event"
5610
+ "name": "initialize",
5611
+ "outputs": [],
5612
+ "stateMutability": "nonpayable",
5613
+ "type": "function"
5514
5614
  },
5515
5615
  {
5516
- "anonymous": false,
5517
- "inputs": [
5518
- {
5519
- "indexed": true,
5520
- "internalType": "address",
5521
- "name": "previousOwner",
5522
- "type": "address"
5523
- },
5616
+ "inputs": [],
5617
+ "name": "owner",
5618
+ "outputs": [
5524
5619
  {
5525
- "indexed": true,
5526
5620
  "internalType": "address",
5527
- "name": "newOwner",
5621
+ "name": "",
5528
5622
  "type": "address"
5529
5623
  }
5530
5624
  ],
5531
- "name": "OwnershipTransferStarted",
5532
- "type": "event"
5625
+ "stateMutability": "view",
5626
+ "type": "function"
5533
5627
  },
5534
5628
  {
5535
- "anonymous": false,
5536
- "inputs": [
5537
- {
5538
- "indexed": true,
5539
- "internalType": "address",
5540
- "name": "previousOwner",
5541
- "type": "address"
5542
- },
5629
+ "inputs": [],
5630
+ "name": "pendingOwner",
5631
+ "outputs": [
5543
5632
  {
5544
- "indexed": true,
5545
5633
  "internalType": "address",
5546
- "name": "newOwner",
5634
+ "name": "",
5547
5635
  "type": "address"
5548
5636
  }
5549
5637
  ],
5550
- "name": "OwnershipTransferred",
5551
- "type": "event"
5638
+ "stateMutability": "view",
5639
+ "type": "function"
5640
+ },
5641
+ {
5642
+ "inputs": [],
5643
+ "name": "renounceOwnership",
5644
+ "outputs": [],
5645
+ "stateMutability": "nonpayable",
5646
+ "type": "function"
5552
5647
  },
5553
5648
  {
5554
- "anonymous": false,
5555
5649
  "inputs": [
5556
5650
  {
5557
- "indexed": true,
5558
5651
  "internalType": "address",
5559
- "name": "asset",
5652
+ "name": "accessControlManager_",
5560
5653
  "type": "address"
5561
- },
5562
- {
5563
- "indexed": false,
5564
- "internalType": "uint256",
5565
- "name": "previousPriceMantissa",
5566
- "type": "uint256"
5567
- },
5568
- {
5569
- "indexed": false,
5570
- "internalType": "uint256",
5571
- "name": "newPriceMantissa",
5572
- "type": "uint256"
5573
5654
  }
5574
5655
  ],
5575
- "name": "PricePosted",
5576
- "type": "event"
5656
+ "name": "setAccessControlManager",
5657
+ "outputs": [],
5658
+ "stateMutability": "nonpayable",
5659
+ "type": "function"
5577
5660
  },
5578
5661
  {
5579
- "anonymous": false,
5580
5662
  "inputs": [
5581
5663
  {
5582
- "indexed": true,
5583
- "internalType": "address",
5584
- "name": "asset",
5585
- "type": "address"
5586
- },
5587
- {
5588
- "indexed": false,
5589
- "internalType": "address",
5664
+ "components": [
5665
+ {
5666
+ "internalType": "bytes32",
5667
+ "name": "pythId",
5668
+ "type": "bytes32"
5669
+ },
5670
+ {
5671
+ "internalType": "address",
5672
+ "name": "asset",
5673
+ "type": "address"
5674
+ },
5675
+ {
5676
+ "internalType": "uint64",
5677
+ "name": "maxStalePeriod",
5678
+ "type": "uint64"
5679
+ }
5680
+ ],
5681
+ "internalType": "struct PythOracle.TokenConfig",
5682
+ "name": "tokenConfig",
5683
+ "type": "tuple"
5684
+ }
5685
+ ],
5686
+ "name": "setTokenConfig",
5687
+ "outputs": [],
5688
+ "stateMutability": "nonpayable",
5689
+ "type": "function"
5690
+ },
5691
+ {
5692
+ "inputs": [
5693
+ {
5694
+ "components": [
5695
+ {
5696
+ "internalType": "bytes32",
5697
+ "name": "pythId",
5698
+ "type": "bytes32"
5699
+ },
5700
+ {
5701
+ "internalType": "address",
5702
+ "name": "asset",
5703
+ "type": "address"
5704
+ },
5705
+ {
5706
+ "internalType": "uint64",
5707
+ "name": "maxStalePeriod",
5708
+ "type": "uint64"
5709
+ }
5710
+ ],
5711
+ "internalType": "struct PythOracle.TokenConfig[]",
5712
+ "name": "tokenConfigs_",
5713
+ "type": "tuple[]"
5714
+ }
5715
+ ],
5716
+ "name": "setTokenConfigs",
5717
+ "outputs": [],
5718
+ "stateMutability": "nonpayable",
5719
+ "type": "function"
5720
+ },
5721
+ {
5722
+ "inputs": [
5723
+ {
5724
+ "internalType": "contract IPyth",
5725
+ "name": "underlyingPythOracle_",
5726
+ "type": "address"
5727
+ }
5728
+ ],
5729
+ "name": "setUnderlyingPythOracle",
5730
+ "outputs": [],
5731
+ "stateMutability": "nonpayable",
5732
+ "type": "function"
5733
+ },
5734
+ {
5735
+ "inputs": [
5736
+ {
5737
+ "internalType": "address",
5738
+ "name": "",
5739
+ "type": "address"
5740
+ }
5741
+ ],
5742
+ "name": "tokenConfigs",
5743
+ "outputs": [
5744
+ {
5745
+ "internalType": "bytes32",
5746
+ "name": "pythId",
5747
+ "type": "bytes32"
5748
+ },
5749
+ {
5750
+ "internalType": "address",
5751
+ "name": "asset",
5752
+ "type": "address"
5753
+ },
5754
+ {
5755
+ "internalType": "uint64",
5756
+ "name": "maxStalePeriod",
5757
+ "type": "uint64"
5758
+ }
5759
+ ],
5760
+ "stateMutability": "view",
5761
+ "type": "function"
5762
+ },
5763
+ {
5764
+ "inputs": [
5765
+ {
5766
+ "internalType": "address",
5767
+ "name": "newOwner",
5768
+ "type": "address"
5769
+ }
5770
+ ],
5771
+ "name": "transferOwnership",
5772
+ "outputs": [],
5773
+ "stateMutability": "nonpayable",
5774
+ "type": "function"
5775
+ },
5776
+ {
5777
+ "inputs": [],
5778
+ "name": "underlyingPythOracle",
5779
+ "outputs": [
5780
+ {
5781
+ "internalType": "contract IPyth",
5782
+ "name": "",
5783
+ "type": "address"
5784
+ }
5785
+ ],
5786
+ "stateMutability": "view",
5787
+ "type": "function"
5788
+ },
5789
+ {
5790
+ "inputs": [],
5791
+ "name": "vBnb",
5792
+ "outputs": [
5793
+ {
5794
+ "internalType": "address",
5795
+ "name": "",
5796
+ "type": "address"
5797
+ }
5798
+ ],
5799
+ "stateMutability": "view",
5800
+ "type": "function"
5801
+ },
5802
+ {
5803
+ "inputs": [],
5804
+ "name": "vai",
5805
+ "outputs": [
5806
+ {
5807
+ "internalType": "address",
5808
+ "name": "",
5809
+ "type": "address"
5810
+ }
5811
+ ],
5812
+ "stateMutability": "view",
5813
+ "type": "function"
5814
+ }
5815
+ ]
5816
+ },
5817
+ "PythOracle_Proxy": {
5818
+ "address": "0xb893E38162f55fb80B18Aa44da76FaDf8E9B2262",
5819
+ "abi": [
5820
+ {
5821
+ "inputs": [
5822
+ {
5823
+ "internalType": "address",
5824
+ "name": "_logic",
5825
+ "type": "address"
5826
+ },
5827
+ {
5828
+ "internalType": "address",
5829
+ "name": "admin_",
5830
+ "type": "address"
5831
+ },
5832
+ {
5833
+ "internalType": "bytes",
5834
+ "name": "_data",
5835
+ "type": "bytes"
5836
+ }
5837
+ ],
5838
+ "stateMutability": "payable",
5839
+ "type": "constructor"
5840
+ },
5841
+ {
5842
+ "anonymous": false,
5843
+ "inputs": [
5844
+ {
5845
+ "indexed": false,
5846
+ "internalType": "address",
5847
+ "name": "previousAdmin",
5848
+ "type": "address"
5849
+ },
5850
+ {
5851
+ "indexed": false,
5852
+ "internalType": "address",
5853
+ "name": "newAdmin",
5854
+ "type": "address"
5855
+ }
5856
+ ],
5857
+ "name": "AdminChanged",
5858
+ "type": "event"
5859
+ },
5860
+ {
5861
+ "anonymous": false,
5862
+ "inputs": [
5863
+ {
5864
+ "indexed": true,
5865
+ "internalType": "address",
5866
+ "name": "beacon",
5867
+ "type": "address"
5868
+ }
5869
+ ],
5870
+ "name": "BeaconUpgraded",
5871
+ "type": "event"
5872
+ },
5873
+ {
5874
+ "anonymous": false,
5875
+ "inputs": [
5876
+ {
5877
+ "indexed": true,
5878
+ "internalType": "address",
5879
+ "name": "implementation",
5880
+ "type": "address"
5881
+ }
5882
+ ],
5883
+ "name": "Upgraded",
5884
+ "type": "event"
5885
+ },
5886
+ {
5887
+ "stateMutability": "payable",
5888
+ "type": "fallback"
5889
+ },
5890
+ {
5891
+ "inputs": [],
5892
+ "name": "admin",
5893
+ "outputs": [
5894
+ {
5895
+ "internalType": "address",
5896
+ "name": "admin_",
5897
+ "type": "address"
5898
+ }
5899
+ ],
5900
+ "stateMutability": "nonpayable",
5901
+ "type": "function"
5902
+ },
5903
+ {
5904
+ "inputs": [],
5905
+ "name": "implementation",
5906
+ "outputs": [
5907
+ {
5908
+ "internalType": "address",
5909
+ "name": "implementation_",
5910
+ "type": "address"
5911
+ }
5912
+ ],
5913
+ "stateMutability": "nonpayable",
5914
+ "type": "function"
5915
+ },
5916
+ {
5917
+ "inputs": [
5918
+ {
5919
+ "internalType": "address",
5920
+ "name": "newImplementation",
5921
+ "type": "address"
5922
+ }
5923
+ ],
5924
+ "name": "upgradeTo",
5925
+ "outputs": [],
5926
+ "stateMutability": "nonpayable",
5927
+ "type": "function"
5928
+ },
5929
+ {
5930
+ "inputs": [
5931
+ {
5932
+ "internalType": "address",
5933
+ "name": "newImplementation",
5934
+ "type": "address"
5935
+ },
5936
+ {
5937
+ "internalType": "bytes",
5938
+ "name": "data",
5939
+ "type": "bytes"
5940
+ }
5941
+ ],
5942
+ "name": "upgradeToAndCall",
5943
+ "outputs": [],
5944
+ "stateMutability": "payable",
5945
+ "type": "function"
5946
+ },
5947
+ {
5948
+ "stateMutability": "payable",
5949
+ "type": "receive"
5950
+ }
5951
+ ]
5952
+ },
5953
+ "RedStoneOracle": {
5954
+ "address": "0x8455EFA4D7Ff63b8BFD96AdD889483Ea7d39B70a",
5955
+ "abi": [
5956
+ {
5957
+ "anonymous": false,
5958
+ "inputs": [
5959
+ {
5960
+ "indexed": false,
5961
+ "internalType": "address",
5962
+ "name": "previousAdmin",
5963
+ "type": "address"
5964
+ },
5965
+ {
5966
+ "indexed": false,
5967
+ "internalType": "address",
5968
+ "name": "newAdmin",
5969
+ "type": "address"
5970
+ }
5971
+ ],
5972
+ "name": "AdminChanged",
5973
+ "type": "event"
5974
+ },
5975
+ {
5976
+ "anonymous": false,
5977
+ "inputs": [
5978
+ {
5979
+ "indexed": true,
5980
+ "internalType": "address",
5981
+ "name": "beacon",
5982
+ "type": "address"
5983
+ }
5984
+ ],
5985
+ "name": "BeaconUpgraded",
5986
+ "type": "event"
5987
+ },
5988
+ {
5989
+ "anonymous": false,
5990
+ "inputs": [
5991
+ {
5992
+ "indexed": true,
5993
+ "internalType": "address",
5994
+ "name": "implementation",
5995
+ "type": "address"
5996
+ }
5997
+ ],
5998
+ "name": "Upgraded",
5999
+ "type": "event"
6000
+ },
6001
+ {
6002
+ "stateMutability": "payable",
6003
+ "type": "fallback"
6004
+ },
6005
+ {
6006
+ "inputs": [],
6007
+ "name": "admin",
6008
+ "outputs": [
6009
+ {
6010
+ "internalType": "address",
6011
+ "name": "admin_",
6012
+ "type": "address"
6013
+ }
6014
+ ],
6015
+ "stateMutability": "nonpayable",
6016
+ "type": "function"
6017
+ },
6018
+ {
6019
+ "inputs": [],
6020
+ "name": "implementation",
6021
+ "outputs": [
6022
+ {
6023
+ "internalType": "address",
6024
+ "name": "implementation_",
6025
+ "type": "address"
6026
+ }
6027
+ ],
6028
+ "stateMutability": "nonpayable",
6029
+ "type": "function"
6030
+ },
6031
+ {
6032
+ "inputs": [
6033
+ {
6034
+ "internalType": "address",
6035
+ "name": "newImplementation",
6036
+ "type": "address"
6037
+ }
6038
+ ],
6039
+ "name": "upgradeTo",
6040
+ "outputs": [],
6041
+ "stateMutability": "nonpayable",
6042
+ "type": "function"
6043
+ },
6044
+ {
6045
+ "inputs": [
6046
+ {
6047
+ "internalType": "address",
6048
+ "name": "newImplementation",
6049
+ "type": "address"
6050
+ },
6051
+ {
6052
+ "internalType": "bytes",
6053
+ "name": "data",
6054
+ "type": "bytes"
6055
+ }
6056
+ ],
6057
+ "name": "upgradeToAndCall",
6058
+ "outputs": [],
6059
+ "stateMutability": "payable",
6060
+ "type": "function"
6061
+ },
6062
+ {
6063
+ "stateMutability": "payable",
6064
+ "type": "receive"
6065
+ },
6066
+ {
6067
+ "inputs": [
6068
+ {
6069
+ "internalType": "address",
6070
+ "name": "sender",
6071
+ "type": "address"
6072
+ },
6073
+ {
6074
+ "internalType": "address",
6075
+ "name": "calledContract",
6076
+ "type": "address"
6077
+ },
6078
+ {
6079
+ "internalType": "string",
6080
+ "name": "methodSignature",
6081
+ "type": "string"
6082
+ }
6083
+ ],
6084
+ "name": "Unauthorized",
6085
+ "type": "error"
6086
+ },
6087
+ {
6088
+ "anonymous": false,
6089
+ "inputs": [
6090
+ {
6091
+ "indexed": false,
6092
+ "internalType": "uint8",
6093
+ "name": "version",
6094
+ "type": "uint8"
6095
+ }
6096
+ ],
6097
+ "name": "Initialized",
6098
+ "type": "event"
6099
+ },
6100
+ {
6101
+ "anonymous": false,
6102
+ "inputs": [
6103
+ {
6104
+ "indexed": false,
6105
+ "internalType": "address",
6106
+ "name": "oldAccessControlManager",
6107
+ "type": "address"
6108
+ },
6109
+ {
6110
+ "indexed": false,
6111
+ "internalType": "address",
6112
+ "name": "newAccessControlManager",
6113
+ "type": "address"
6114
+ }
6115
+ ],
6116
+ "name": "NewAccessControlManager",
6117
+ "type": "event"
6118
+ },
6119
+ {
6120
+ "anonymous": false,
6121
+ "inputs": [
6122
+ {
6123
+ "indexed": true,
6124
+ "internalType": "address",
6125
+ "name": "previousOwner",
6126
+ "type": "address"
6127
+ },
6128
+ {
6129
+ "indexed": true,
6130
+ "internalType": "address",
6131
+ "name": "newOwner",
6132
+ "type": "address"
6133
+ }
6134
+ ],
6135
+ "name": "OwnershipTransferStarted",
6136
+ "type": "event"
6137
+ },
6138
+ {
6139
+ "anonymous": false,
6140
+ "inputs": [
6141
+ {
6142
+ "indexed": true,
6143
+ "internalType": "address",
6144
+ "name": "previousOwner",
6145
+ "type": "address"
6146
+ },
6147
+ {
6148
+ "indexed": true,
6149
+ "internalType": "address",
6150
+ "name": "newOwner",
6151
+ "type": "address"
6152
+ }
6153
+ ],
6154
+ "name": "OwnershipTransferred",
6155
+ "type": "event"
6156
+ },
6157
+ {
6158
+ "anonymous": false,
6159
+ "inputs": [
6160
+ {
6161
+ "indexed": true,
6162
+ "internalType": "address",
6163
+ "name": "asset",
6164
+ "type": "address"
6165
+ },
6166
+ {
6167
+ "indexed": false,
6168
+ "internalType": "uint256",
6169
+ "name": "previousPriceMantissa",
6170
+ "type": "uint256"
6171
+ },
6172
+ {
6173
+ "indexed": false,
6174
+ "internalType": "uint256",
6175
+ "name": "newPriceMantissa",
6176
+ "type": "uint256"
6177
+ }
6178
+ ],
6179
+ "name": "PricePosted",
6180
+ "type": "event"
6181
+ },
6182
+ {
6183
+ "anonymous": false,
6184
+ "inputs": [
6185
+ {
6186
+ "indexed": true,
6187
+ "internalType": "address",
6188
+ "name": "asset",
6189
+ "type": "address"
6190
+ },
6191
+ {
6192
+ "indexed": false,
6193
+ "internalType": "address",
6194
+ "name": "feed",
6195
+ "type": "address"
6196
+ },
6197
+ {
6198
+ "indexed": false,
6199
+ "internalType": "uint256",
6200
+ "name": "maxStalePeriod",
6201
+ "type": "uint256"
6202
+ }
6203
+ ],
6204
+ "name": "TokenConfigAdded",
6205
+ "type": "event"
6206
+ },
6207
+ {
6208
+ "inputs": [],
6209
+ "name": "BNB_ADDR",
6210
+ "outputs": [
6211
+ {
6212
+ "internalType": "address",
6213
+ "name": "",
6214
+ "type": "address"
6215
+ }
6216
+ ],
6217
+ "stateMutability": "view",
6218
+ "type": "function"
6219
+ },
6220
+ {
6221
+ "inputs": [],
6222
+ "name": "acceptOwnership",
6223
+ "outputs": [],
6224
+ "stateMutability": "nonpayable",
6225
+ "type": "function"
6226
+ },
6227
+ {
6228
+ "inputs": [],
6229
+ "name": "accessControlManager",
6230
+ "outputs": [
6231
+ {
6232
+ "internalType": "contract IAccessControlManagerV8",
6233
+ "name": "",
6234
+ "type": "address"
6235
+ }
6236
+ ],
6237
+ "stateMutability": "view",
6238
+ "type": "function"
6239
+ },
6240
+ {
6241
+ "inputs": [
6242
+ {
6243
+ "internalType": "address",
6244
+ "name": "asset",
6245
+ "type": "address"
6246
+ }
6247
+ ],
6248
+ "name": "getPrice",
6249
+ "outputs": [
6250
+ {
6251
+ "internalType": "uint256",
6252
+ "name": "",
6253
+ "type": "uint256"
6254
+ }
6255
+ ],
6256
+ "stateMutability": "view",
6257
+ "type": "function"
6258
+ },
6259
+ {
6260
+ "inputs": [
6261
+ {
6262
+ "internalType": "address",
6263
+ "name": "accessControlManager_",
6264
+ "type": "address"
6265
+ }
6266
+ ],
6267
+ "name": "initialize",
6268
+ "outputs": [],
6269
+ "stateMutability": "nonpayable",
6270
+ "type": "function"
6271
+ },
6272
+ {
6273
+ "inputs": [],
6274
+ "name": "owner",
6275
+ "outputs": [
6276
+ {
6277
+ "internalType": "address",
6278
+ "name": "",
6279
+ "type": "address"
6280
+ }
6281
+ ],
6282
+ "stateMutability": "view",
6283
+ "type": "function"
6284
+ },
6285
+ {
6286
+ "inputs": [],
6287
+ "name": "pendingOwner",
6288
+ "outputs": [
6289
+ {
6290
+ "internalType": "address",
6291
+ "name": "",
6292
+ "type": "address"
6293
+ }
6294
+ ],
6295
+ "stateMutability": "view",
6296
+ "type": "function"
6297
+ },
6298
+ {
6299
+ "inputs": [
6300
+ {
6301
+ "internalType": "address",
6302
+ "name": "",
6303
+ "type": "address"
6304
+ }
6305
+ ],
6306
+ "name": "prices",
6307
+ "outputs": [
6308
+ {
6309
+ "internalType": "uint256",
6310
+ "name": "",
6311
+ "type": "uint256"
6312
+ }
6313
+ ],
6314
+ "stateMutability": "view",
6315
+ "type": "function"
6316
+ },
6317
+ {
6318
+ "inputs": [],
6319
+ "name": "renounceOwnership",
6320
+ "outputs": [],
6321
+ "stateMutability": "nonpayable",
6322
+ "type": "function"
6323
+ },
6324
+ {
6325
+ "inputs": [
6326
+ {
6327
+ "internalType": "address",
6328
+ "name": "accessControlManager_",
6329
+ "type": "address"
6330
+ }
6331
+ ],
6332
+ "name": "setAccessControlManager",
6333
+ "outputs": [],
6334
+ "stateMutability": "nonpayable",
6335
+ "type": "function"
6336
+ },
6337
+ {
6338
+ "inputs": [
6339
+ {
6340
+ "internalType": "address",
6341
+ "name": "asset",
6342
+ "type": "address"
6343
+ },
6344
+ {
6345
+ "internalType": "uint256",
6346
+ "name": "price",
6347
+ "type": "uint256"
6348
+ }
6349
+ ],
6350
+ "name": "setDirectPrice",
6351
+ "outputs": [],
6352
+ "stateMutability": "nonpayable",
6353
+ "type": "function"
6354
+ },
6355
+ {
6356
+ "inputs": [
6357
+ {
6358
+ "components": [
6359
+ {
6360
+ "internalType": "address",
6361
+ "name": "asset",
6362
+ "type": "address"
6363
+ },
6364
+ {
6365
+ "internalType": "address",
6366
+ "name": "feed",
6367
+ "type": "address"
6368
+ },
6369
+ {
6370
+ "internalType": "uint256",
6371
+ "name": "maxStalePeriod",
6372
+ "type": "uint256"
6373
+ }
6374
+ ],
6375
+ "internalType": "struct ChainlinkOracle.TokenConfig",
6376
+ "name": "tokenConfig",
6377
+ "type": "tuple"
6378
+ }
6379
+ ],
6380
+ "name": "setTokenConfig",
6381
+ "outputs": [],
6382
+ "stateMutability": "nonpayable",
6383
+ "type": "function"
6384
+ },
6385
+ {
6386
+ "inputs": [
6387
+ {
6388
+ "components": [
6389
+ {
6390
+ "internalType": "address",
6391
+ "name": "asset",
6392
+ "type": "address"
6393
+ },
6394
+ {
6395
+ "internalType": "address",
6396
+ "name": "feed",
6397
+ "type": "address"
6398
+ },
6399
+ {
6400
+ "internalType": "uint256",
6401
+ "name": "maxStalePeriod",
6402
+ "type": "uint256"
6403
+ }
6404
+ ],
6405
+ "internalType": "struct ChainlinkOracle.TokenConfig[]",
6406
+ "name": "tokenConfigs_",
6407
+ "type": "tuple[]"
6408
+ }
6409
+ ],
6410
+ "name": "setTokenConfigs",
6411
+ "outputs": [],
6412
+ "stateMutability": "nonpayable",
6413
+ "type": "function"
6414
+ },
6415
+ {
6416
+ "inputs": [
6417
+ {
6418
+ "internalType": "address",
6419
+ "name": "",
6420
+ "type": "address"
6421
+ }
6422
+ ],
6423
+ "name": "tokenConfigs",
6424
+ "outputs": [
6425
+ {
6426
+ "internalType": "address",
6427
+ "name": "asset",
6428
+ "type": "address"
6429
+ },
6430
+ {
6431
+ "internalType": "address",
6432
+ "name": "feed",
6433
+ "type": "address"
6434
+ },
6435
+ {
6436
+ "internalType": "uint256",
6437
+ "name": "maxStalePeriod",
6438
+ "type": "uint256"
6439
+ }
6440
+ ],
6441
+ "stateMutability": "view",
6442
+ "type": "function"
6443
+ },
6444
+ {
6445
+ "inputs": [
6446
+ {
6447
+ "internalType": "address",
6448
+ "name": "newOwner",
6449
+ "type": "address"
6450
+ }
6451
+ ],
6452
+ "name": "transferOwnership",
6453
+ "outputs": [],
6454
+ "stateMutability": "nonpayable",
6455
+ "type": "function"
6456
+ },
6457
+ {
6458
+ "inputs": [
6459
+ {
6460
+ "internalType": "address",
6461
+ "name": "_logic",
6462
+ "type": "address"
6463
+ },
6464
+ {
6465
+ "internalType": "address",
6466
+ "name": "admin_",
6467
+ "type": "address"
6468
+ },
6469
+ {
6470
+ "internalType": "bytes",
6471
+ "name": "_data",
6472
+ "type": "bytes"
6473
+ }
6474
+ ],
6475
+ "stateMutability": "payable",
6476
+ "type": "constructor"
6477
+ }
6478
+ ]
6479
+ },
6480
+ "RedStoneOracle_Implementation": {
6481
+ "address": "0x1338738C0ca76824a47b325D1494373Dce7e13d6",
6482
+ "abi": [
6483
+ {
6484
+ "inputs": [],
6485
+ "stateMutability": "nonpayable",
6486
+ "type": "constructor"
6487
+ },
6488
+ {
6489
+ "inputs": [
6490
+ {
6491
+ "internalType": "address",
6492
+ "name": "sender",
6493
+ "type": "address"
6494
+ },
6495
+ {
6496
+ "internalType": "address",
6497
+ "name": "calledContract",
6498
+ "type": "address"
6499
+ },
6500
+ {
6501
+ "internalType": "string",
6502
+ "name": "methodSignature",
6503
+ "type": "string"
6504
+ }
6505
+ ],
6506
+ "name": "Unauthorized",
6507
+ "type": "error"
6508
+ },
6509
+ {
6510
+ "anonymous": false,
6511
+ "inputs": [
6512
+ {
6513
+ "indexed": false,
6514
+ "internalType": "uint8",
6515
+ "name": "version",
6516
+ "type": "uint8"
6517
+ }
6518
+ ],
6519
+ "name": "Initialized",
6520
+ "type": "event"
6521
+ },
6522
+ {
6523
+ "anonymous": false,
6524
+ "inputs": [
6525
+ {
6526
+ "indexed": false,
6527
+ "internalType": "address",
6528
+ "name": "oldAccessControlManager",
6529
+ "type": "address"
6530
+ },
6531
+ {
6532
+ "indexed": false,
6533
+ "internalType": "address",
6534
+ "name": "newAccessControlManager",
6535
+ "type": "address"
6536
+ }
6537
+ ],
6538
+ "name": "NewAccessControlManager",
6539
+ "type": "event"
6540
+ },
6541
+ {
6542
+ "anonymous": false,
6543
+ "inputs": [
6544
+ {
6545
+ "indexed": true,
6546
+ "internalType": "address",
6547
+ "name": "previousOwner",
6548
+ "type": "address"
6549
+ },
6550
+ {
6551
+ "indexed": true,
6552
+ "internalType": "address",
6553
+ "name": "newOwner",
6554
+ "type": "address"
6555
+ }
6556
+ ],
6557
+ "name": "OwnershipTransferStarted",
6558
+ "type": "event"
6559
+ },
6560
+ {
6561
+ "anonymous": false,
6562
+ "inputs": [
6563
+ {
6564
+ "indexed": true,
6565
+ "internalType": "address",
6566
+ "name": "previousOwner",
6567
+ "type": "address"
6568
+ },
6569
+ {
6570
+ "indexed": true,
6571
+ "internalType": "address",
6572
+ "name": "newOwner",
6573
+ "type": "address"
6574
+ }
6575
+ ],
6576
+ "name": "OwnershipTransferred",
6577
+ "type": "event"
6578
+ },
6579
+ {
6580
+ "anonymous": false,
6581
+ "inputs": [
6582
+ {
6583
+ "indexed": true,
6584
+ "internalType": "address",
6585
+ "name": "asset",
6586
+ "type": "address"
6587
+ },
6588
+ {
6589
+ "indexed": false,
6590
+ "internalType": "uint256",
6591
+ "name": "previousPriceMantissa",
6592
+ "type": "uint256"
6593
+ },
6594
+ {
6595
+ "indexed": false,
6596
+ "internalType": "uint256",
6597
+ "name": "newPriceMantissa",
6598
+ "type": "uint256"
6599
+ }
6600
+ ],
6601
+ "name": "PricePosted",
6602
+ "type": "event"
6603
+ },
6604
+ {
6605
+ "anonymous": false,
6606
+ "inputs": [
6607
+ {
6608
+ "indexed": true,
6609
+ "internalType": "address",
6610
+ "name": "asset",
6611
+ "type": "address"
6612
+ },
6613
+ {
6614
+ "indexed": false,
6615
+ "internalType": "address",
5590
6616
  "name": "feed",
5591
6617
  "type": "address"
5592
6618
  },
@@ -5644,75 +6670,322 @@
5644
6670
  "name": "getPrice",
5645
6671
  "outputs": [
5646
6672
  {
5647
- "internalType": "uint256",
5648
- "name": "",
5649
- "type": "uint256"
6673
+ "internalType": "uint256",
6674
+ "name": "",
6675
+ "type": "uint256"
6676
+ }
6677
+ ],
6678
+ "stateMutability": "view",
6679
+ "type": "function"
6680
+ },
6681
+ {
6682
+ "inputs": [
6683
+ {
6684
+ "internalType": "address",
6685
+ "name": "accessControlManager_",
6686
+ "type": "address"
6687
+ }
6688
+ ],
6689
+ "name": "initialize",
6690
+ "outputs": [],
6691
+ "stateMutability": "nonpayable",
6692
+ "type": "function"
6693
+ },
6694
+ {
6695
+ "inputs": [],
6696
+ "name": "owner",
6697
+ "outputs": [
6698
+ {
6699
+ "internalType": "address",
6700
+ "name": "",
6701
+ "type": "address"
6702
+ }
6703
+ ],
6704
+ "stateMutability": "view",
6705
+ "type": "function"
6706
+ },
6707
+ {
6708
+ "inputs": [],
6709
+ "name": "pendingOwner",
6710
+ "outputs": [
6711
+ {
6712
+ "internalType": "address",
6713
+ "name": "",
6714
+ "type": "address"
6715
+ }
6716
+ ],
6717
+ "stateMutability": "view",
6718
+ "type": "function"
6719
+ },
6720
+ {
6721
+ "inputs": [
6722
+ {
6723
+ "internalType": "address",
6724
+ "name": "",
6725
+ "type": "address"
6726
+ }
6727
+ ],
6728
+ "name": "prices",
6729
+ "outputs": [
6730
+ {
6731
+ "internalType": "uint256",
6732
+ "name": "",
6733
+ "type": "uint256"
6734
+ }
6735
+ ],
6736
+ "stateMutability": "view",
6737
+ "type": "function"
6738
+ },
6739
+ {
6740
+ "inputs": [],
6741
+ "name": "renounceOwnership",
6742
+ "outputs": [],
6743
+ "stateMutability": "nonpayable",
6744
+ "type": "function"
6745
+ },
6746
+ {
6747
+ "inputs": [
6748
+ {
6749
+ "internalType": "address",
6750
+ "name": "accessControlManager_",
6751
+ "type": "address"
6752
+ }
6753
+ ],
6754
+ "name": "setAccessControlManager",
6755
+ "outputs": [],
6756
+ "stateMutability": "nonpayable",
6757
+ "type": "function"
6758
+ },
6759
+ {
6760
+ "inputs": [
6761
+ {
6762
+ "internalType": "address",
6763
+ "name": "asset",
6764
+ "type": "address"
6765
+ },
6766
+ {
6767
+ "internalType": "uint256",
6768
+ "name": "price",
6769
+ "type": "uint256"
6770
+ }
6771
+ ],
6772
+ "name": "setDirectPrice",
6773
+ "outputs": [],
6774
+ "stateMutability": "nonpayable",
6775
+ "type": "function"
6776
+ },
6777
+ {
6778
+ "inputs": [
6779
+ {
6780
+ "components": [
6781
+ {
6782
+ "internalType": "address",
6783
+ "name": "asset",
6784
+ "type": "address"
6785
+ },
6786
+ {
6787
+ "internalType": "address",
6788
+ "name": "feed",
6789
+ "type": "address"
6790
+ },
6791
+ {
6792
+ "internalType": "uint256",
6793
+ "name": "maxStalePeriod",
6794
+ "type": "uint256"
6795
+ }
6796
+ ],
6797
+ "internalType": "struct ChainlinkOracle.TokenConfig",
6798
+ "name": "tokenConfig",
6799
+ "type": "tuple"
6800
+ }
6801
+ ],
6802
+ "name": "setTokenConfig",
6803
+ "outputs": [],
6804
+ "stateMutability": "nonpayable",
6805
+ "type": "function"
6806
+ },
6807
+ {
6808
+ "inputs": [
6809
+ {
6810
+ "components": [
6811
+ {
6812
+ "internalType": "address",
6813
+ "name": "asset",
6814
+ "type": "address"
6815
+ },
6816
+ {
6817
+ "internalType": "address",
6818
+ "name": "feed",
6819
+ "type": "address"
6820
+ },
6821
+ {
6822
+ "internalType": "uint256",
6823
+ "name": "maxStalePeriod",
6824
+ "type": "uint256"
6825
+ }
6826
+ ],
6827
+ "internalType": "struct ChainlinkOracle.TokenConfig[]",
6828
+ "name": "tokenConfigs_",
6829
+ "type": "tuple[]"
6830
+ }
6831
+ ],
6832
+ "name": "setTokenConfigs",
6833
+ "outputs": [],
6834
+ "stateMutability": "nonpayable",
6835
+ "type": "function"
6836
+ },
6837
+ {
6838
+ "inputs": [
6839
+ {
6840
+ "internalType": "address",
6841
+ "name": "",
6842
+ "type": "address"
6843
+ }
6844
+ ],
6845
+ "name": "tokenConfigs",
6846
+ "outputs": [
6847
+ {
6848
+ "internalType": "address",
6849
+ "name": "asset",
6850
+ "type": "address"
6851
+ },
6852
+ {
6853
+ "internalType": "address",
6854
+ "name": "feed",
6855
+ "type": "address"
6856
+ },
6857
+ {
6858
+ "internalType": "uint256",
6859
+ "name": "maxStalePeriod",
6860
+ "type": "uint256"
6861
+ }
6862
+ ],
6863
+ "stateMutability": "view",
6864
+ "type": "function"
6865
+ },
6866
+ {
6867
+ "inputs": [
6868
+ {
6869
+ "internalType": "address",
6870
+ "name": "newOwner",
6871
+ "type": "address"
6872
+ }
6873
+ ],
6874
+ "name": "transferOwnership",
6875
+ "outputs": [],
6876
+ "stateMutability": "nonpayable",
6877
+ "type": "function"
6878
+ }
6879
+ ]
6880
+ },
6881
+ "RedStoneOracle_Proxy": {
6882
+ "address": "0x8455EFA4D7Ff63b8BFD96AdD889483Ea7d39B70a",
6883
+ "abi": [
6884
+ {
6885
+ "inputs": [
6886
+ {
6887
+ "internalType": "address",
6888
+ "name": "_logic",
6889
+ "type": "address"
6890
+ },
6891
+ {
6892
+ "internalType": "address",
6893
+ "name": "admin_",
6894
+ "type": "address"
6895
+ },
6896
+ {
6897
+ "internalType": "bytes",
6898
+ "name": "_data",
6899
+ "type": "bytes"
6900
+ }
6901
+ ],
6902
+ "stateMutability": "payable",
6903
+ "type": "constructor"
6904
+ },
6905
+ {
6906
+ "anonymous": false,
6907
+ "inputs": [
6908
+ {
6909
+ "indexed": false,
6910
+ "internalType": "address",
6911
+ "name": "previousAdmin",
6912
+ "type": "address"
6913
+ },
6914
+ {
6915
+ "indexed": false,
6916
+ "internalType": "address",
6917
+ "name": "newAdmin",
6918
+ "type": "address"
6919
+ }
6920
+ ],
6921
+ "name": "AdminChanged",
6922
+ "type": "event"
6923
+ },
6924
+ {
6925
+ "anonymous": false,
6926
+ "inputs": [
6927
+ {
6928
+ "indexed": true,
6929
+ "internalType": "address",
6930
+ "name": "beacon",
6931
+ "type": "address"
5650
6932
  }
5651
6933
  ],
5652
- "stateMutability": "view",
5653
- "type": "function"
6934
+ "name": "BeaconUpgraded",
6935
+ "type": "event"
5654
6936
  },
5655
6937
  {
6938
+ "anonymous": false,
5656
6939
  "inputs": [
5657
6940
  {
6941
+ "indexed": true,
5658
6942
  "internalType": "address",
5659
- "name": "accessControlManager_",
6943
+ "name": "implementation",
5660
6944
  "type": "address"
5661
6945
  }
5662
6946
  ],
5663
- "name": "initialize",
5664
- "outputs": [],
5665
- "stateMutability": "nonpayable",
5666
- "type": "function"
6947
+ "name": "Upgraded",
6948
+ "type": "event"
6949
+ },
6950
+ {
6951
+ "stateMutability": "payable",
6952
+ "type": "fallback"
5667
6953
  },
5668
6954
  {
5669
6955
  "inputs": [],
5670
- "name": "owner",
6956
+ "name": "admin",
5671
6957
  "outputs": [
5672
6958
  {
5673
6959
  "internalType": "address",
5674
- "name": "",
6960
+ "name": "admin_",
5675
6961
  "type": "address"
5676
6962
  }
5677
6963
  ],
5678
- "stateMutability": "view",
6964
+ "stateMutability": "nonpayable",
5679
6965
  "type": "function"
5680
6966
  },
5681
6967
  {
5682
6968
  "inputs": [],
5683
- "name": "pendingOwner",
6969
+ "name": "implementation",
5684
6970
  "outputs": [
5685
6971
  {
5686
6972
  "internalType": "address",
5687
- "name": "",
6973
+ "name": "implementation_",
5688
6974
  "type": "address"
5689
6975
  }
5690
6976
  ],
5691
- "stateMutability": "view",
6977
+ "stateMutability": "nonpayable",
5692
6978
  "type": "function"
5693
6979
  },
5694
6980
  {
5695
6981
  "inputs": [
5696
6982
  {
5697
6983
  "internalType": "address",
5698
- "name": "",
6984
+ "name": "newImplementation",
5699
6985
  "type": "address"
5700
6986
  }
5701
6987
  ],
5702
- "name": "prices",
5703
- "outputs": [
5704
- {
5705
- "internalType": "uint256",
5706
- "name": "",
5707
- "type": "uint256"
5708
- }
5709
- ],
5710
- "stateMutability": "view",
5711
- "type": "function"
5712
- },
5713
- {
5714
- "inputs": [],
5715
- "name": "renounceOwnership",
6988
+ "name": "upgradeTo",
5716
6989
  "outputs": [],
5717
6990
  "stateMutability": "nonpayable",
5718
6991
  "type": "function"
@@ -5721,131 +6994,113 @@
5721
6994
  "inputs": [
5722
6995
  {
5723
6996
  "internalType": "address",
5724
- "name": "accessControlManager_",
6997
+ "name": "newImplementation",
5725
6998
  "type": "address"
6999
+ },
7000
+ {
7001
+ "internalType": "bytes",
7002
+ "name": "data",
7003
+ "type": "bytes"
5726
7004
  }
5727
7005
  ],
5728
- "name": "setAccessControlManager",
7006
+ "name": "upgradeToAndCall",
5729
7007
  "outputs": [],
5730
- "stateMutability": "nonpayable",
7008
+ "stateMutability": "payable",
5731
7009
  "type": "function"
5732
7010
  },
5733
7011
  {
7012
+ "stateMutability": "payable",
7013
+ "type": "receive"
7014
+ }
7015
+ ]
7016
+ },
7017
+ "ResilientOracle": {
7018
+ "address": "0x6592b5DE802159F3E74B2486b091D11a8256ab8A",
7019
+ "abi": [
7020
+ {
7021
+ "anonymous": false,
5734
7022
  "inputs": [
5735
7023
  {
7024
+ "indexed": false,
5736
7025
  "internalType": "address",
5737
- "name": "asset",
7026
+ "name": "previousAdmin",
5738
7027
  "type": "address"
5739
7028
  },
5740
7029
  {
5741
- "internalType": "uint256",
5742
- "name": "price",
5743
- "type": "uint256"
7030
+ "indexed": false,
7031
+ "internalType": "address",
7032
+ "name": "newAdmin",
7033
+ "type": "address"
5744
7034
  }
5745
7035
  ],
5746
- "name": "setDirectPrice",
5747
- "outputs": [],
5748
- "stateMutability": "nonpayable",
5749
- "type": "function"
7036
+ "name": "AdminChanged",
7037
+ "type": "event"
5750
7038
  },
5751
7039
  {
7040
+ "anonymous": false,
5752
7041
  "inputs": [
5753
7042
  {
5754
- "components": [
5755
- {
5756
- "internalType": "address",
5757
- "name": "asset",
5758
- "type": "address"
5759
- },
5760
- {
5761
- "internalType": "address",
5762
- "name": "feed",
5763
- "type": "address"
5764
- },
5765
- {
5766
- "internalType": "uint256",
5767
- "name": "maxStalePeriod",
5768
- "type": "uint256"
5769
- }
5770
- ],
5771
- "internalType": "struct ChainlinkOracle.TokenConfig",
5772
- "name": "tokenConfig",
5773
- "type": "tuple"
7043
+ "indexed": true,
7044
+ "internalType": "address",
7045
+ "name": "beacon",
7046
+ "type": "address"
5774
7047
  }
5775
7048
  ],
5776
- "name": "setTokenConfig",
5777
- "outputs": [],
5778
- "stateMutability": "nonpayable",
5779
- "type": "function"
7049
+ "name": "BeaconUpgraded",
7050
+ "type": "event"
5780
7051
  },
5781
7052
  {
7053
+ "anonymous": false,
5782
7054
  "inputs": [
5783
7055
  {
5784
- "components": [
5785
- {
5786
- "internalType": "address",
5787
- "name": "asset",
5788
- "type": "address"
5789
- },
5790
- {
5791
- "internalType": "address",
5792
- "name": "feed",
5793
- "type": "address"
5794
- },
5795
- {
5796
- "internalType": "uint256",
5797
- "name": "maxStalePeriod",
5798
- "type": "uint256"
5799
- }
5800
- ],
5801
- "internalType": "struct ChainlinkOracle.TokenConfig[]",
5802
- "name": "tokenConfigs_",
5803
- "type": "tuple[]"
7056
+ "indexed": true,
7057
+ "internalType": "address",
7058
+ "name": "implementation",
7059
+ "type": "address"
5804
7060
  }
5805
7061
  ],
5806
- "name": "setTokenConfigs",
5807
- "outputs": [],
5808
- "stateMutability": "nonpayable",
5809
- "type": "function"
7062
+ "name": "Upgraded",
7063
+ "type": "event"
5810
7064
  },
5811
7065
  {
5812
- "inputs": [
7066
+ "stateMutability": "payable",
7067
+ "type": "fallback"
7068
+ },
7069
+ {
7070
+ "inputs": [],
7071
+ "name": "admin",
7072
+ "outputs": [
5813
7073
  {
5814
7074
  "internalType": "address",
5815
- "name": "",
7075
+ "name": "admin_",
5816
7076
  "type": "address"
5817
7077
  }
5818
7078
  ],
5819
- "name": "tokenConfigs",
7079
+ "stateMutability": "nonpayable",
7080
+ "type": "function"
7081
+ },
7082
+ {
7083
+ "inputs": [],
7084
+ "name": "implementation",
5820
7085
  "outputs": [
5821
7086
  {
5822
7087
  "internalType": "address",
5823
- "name": "asset",
5824
- "type": "address"
5825
- },
5826
- {
5827
- "internalType": "address",
5828
- "name": "feed",
7088
+ "name": "implementation_",
5829
7089
  "type": "address"
5830
- },
5831
- {
5832
- "internalType": "uint256",
5833
- "name": "maxStalePeriod",
5834
- "type": "uint256"
5835
7090
  }
5836
7091
  ],
5837
- "stateMutability": "view",
7092
+ "stateMutability": "nonpayable",
5838
7093
  "type": "function"
5839
7094
  },
5840
7095
  {
5841
7096
  "inputs": [
5842
7097
  {
5843
7098
  "internalType": "address",
5844
- "name": "newOwner",
7099
+ "name": "newImplementation",
5845
7100
  "type": "address"
5846
7101
  }
5847
7102
  ],
5848
- "name": "transferOwnership",
7103
+ "name": "upgradeTo",
5849
7104
  "outputs": [],
5850
7105
  "stateMutability": "nonpayable",
5851
7106
  "type": "function"
@@ -5854,32 +7109,23 @@
5854
7109
  "inputs": [
5855
7110
  {
5856
7111
  "internalType": "address",
5857
- "name": "_logic",
5858
- "type": "address"
5859
- },
5860
- {
5861
- "internalType": "address",
5862
- "name": "admin_",
7112
+ "name": "newImplementation",
5863
7113
  "type": "address"
5864
7114
  },
5865
7115
  {
5866
7116
  "internalType": "bytes",
5867
- "name": "_data",
7117
+ "name": "data",
5868
7118
  "type": "bytes"
5869
7119
  }
5870
7120
  ],
7121
+ "name": "upgradeToAndCall",
7122
+ "outputs": [],
5871
7123
  "stateMutability": "payable",
5872
- "type": "constructor"
5873
- }
5874
- ]
5875
- },
5876
- "RedStoneOracle_Implementation": {
5877
- "address": "0x1338738C0ca76824a47b325D1494373Dce7e13d6",
5878
- "abi": [
7124
+ "type": "function"
7125
+ },
5879
7126
  {
5880
- "inputs": [],
5881
- "stateMutability": "nonpayable",
5882
- "type": "constructor"
7127
+ "stateMutability": "payable",
7128
+ "type": "receive"
5883
7129
  },
5884
7130
  {
5885
7131
  "inputs": [
@@ -5931,7 +7177,57 @@
5931
7177
  "type": "address"
5932
7178
  }
5933
7179
  ],
5934
- "name": "NewAccessControlManager",
7180
+ "name": "NewAccessControlManager",
7181
+ "type": "event"
7182
+ },
7183
+ {
7184
+ "anonymous": false,
7185
+ "inputs": [
7186
+ {
7187
+ "indexed": true,
7188
+ "internalType": "address",
7189
+ "name": "asset",
7190
+ "type": "address"
7191
+ },
7192
+ {
7193
+ "indexed": true,
7194
+ "internalType": "uint256",
7195
+ "name": "role",
7196
+ "type": "uint256"
7197
+ },
7198
+ {
7199
+ "indexed": true,
7200
+ "internalType": "bool",
7201
+ "name": "enable",
7202
+ "type": "bool"
7203
+ }
7204
+ ],
7205
+ "name": "OracleEnabled",
7206
+ "type": "event"
7207
+ },
7208
+ {
7209
+ "anonymous": false,
7210
+ "inputs": [
7211
+ {
7212
+ "indexed": true,
7213
+ "internalType": "address",
7214
+ "name": "asset",
7215
+ "type": "address"
7216
+ },
7217
+ {
7218
+ "indexed": true,
7219
+ "internalType": "address",
7220
+ "name": "oracle",
7221
+ "type": "address"
7222
+ },
7223
+ {
7224
+ "indexed": true,
7225
+ "internalType": "uint256",
7226
+ "name": "role",
7227
+ "type": "uint256"
7228
+ }
7229
+ ],
7230
+ "name": "OracleSet",
5935
7231
  "type": "event"
5936
7232
  },
5937
7233
  {
@@ -5976,25 +7272,13 @@
5976
7272
  "anonymous": false,
5977
7273
  "inputs": [
5978
7274
  {
5979
- "indexed": true,
7275
+ "indexed": false,
5980
7276
  "internalType": "address",
5981
- "name": "asset",
7277
+ "name": "account",
5982
7278
  "type": "address"
5983
- },
5984
- {
5985
- "indexed": false,
5986
- "internalType": "uint256",
5987
- "name": "previousPriceMantissa",
5988
- "type": "uint256"
5989
- },
5990
- {
5991
- "indexed": false,
5992
- "internalType": "uint256",
5993
- "name": "newPriceMantissa",
5994
- "type": "uint256"
5995
7279
  }
5996
7280
  ],
5997
- "name": "PricePosted",
7281
+ "name": "Paused",
5998
7282
  "type": "event"
5999
7283
  },
6000
7284
  {
@@ -6007,47 +7291,46 @@
6007
7291
  "type": "address"
6008
7292
  },
6009
7293
  {
6010
- "indexed": false,
7294
+ "indexed": true,
6011
7295
  "internalType": "address",
6012
- "name": "feed",
7296
+ "name": "mainOracle",
7297
+ "type": "address"
7298
+ },
7299
+ {
7300
+ "indexed": true,
7301
+ "internalType": "address",
7302
+ "name": "pivotOracle",
6013
7303
  "type": "address"
6014
7304
  },
6015
7305
  {
6016
7306
  "indexed": false,
6017
- "internalType": "uint256",
6018
- "name": "maxStalePeriod",
6019
- "type": "uint256"
7307
+ "internalType": "address",
7308
+ "name": "fallbackOracle",
7309
+ "type": "address"
6020
7310
  }
6021
7311
  ],
6022
7312
  "name": "TokenConfigAdded",
6023
7313
  "type": "event"
6024
7314
  },
6025
7315
  {
6026
- "inputs": [],
6027
- "name": "BNB_ADDR",
6028
- "outputs": [
7316
+ "anonymous": false,
7317
+ "inputs": [
6029
7318
  {
7319
+ "indexed": false,
6030
7320
  "internalType": "address",
6031
- "name": "",
7321
+ "name": "account",
6032
7322
  "type": "address"
6033
7323
  }
6034
7324
  ],
6035
- "stateMutability": "view",
6036
- "type": "function"
6037
- },
6038
- {
6039
- "inputs": [],
6040
- "name": "acceptOwnership",
6041
- "outputs": [],
6042
- "stateMutability": "nonpayable",
6043
- "type": "function"
7325
+ "name": "Unpaused",
7326
+ "type": "event"
6044
7327
  },
6045
7328
  {
6046
7329
  "inputs": [],
6047
- "name": "accessControlManager",
7330
+ "name": "BNB_ADDR",
6048
7331
  "outputs": [
6049
7332
  {
6050
- "internalType": "contract IAccessControlManagerV8",
7333
+ "internalType": "address",
6051
7334
  "name": "",
6052
7335
  "type": "address"
6053
7336
  }
@@ -6056,14 +7339,8 @@
6056
7339
  "type": "function"
6057
7340
  },
6058
7341
  {
6059
- "inputs": [
6060
- {
6061
- "internalType": "address",
6062
- "name": "asset",
6063
- "type": "address"
6064
- }
6065
- ],
6066
- "name": "getPrice",
7342
+ "inputs": [],
7343
+ "name": "INVALID_PRICE",
6067
7344
  "outputs": [
6068
7345
  {
6069
7346
  "internalType": "uint256",
@@ -6075,24 +7352,18 @@
6075
7352
  "type": "function"
6076
7353
  },
6077
7354
  {
6078
- "inputs": [
6079
- {
6080
- "internalType": "address",
6081
- "name": "accessControlManager_",
6082
- "type": "address"
6083
- }
6084
- ],
6085
- "name": "initialize",
7355
+ "inputs": [],
7356
+ "name": "acceptOwnership",
6086
7357
  "outputs": [],
6087
7358
  "stateMutability": "nonpayable",
6088
7359
  "type": "function"
6089
7360
  },
6090
7361
  {
6091
7362
  "inputs": [],
6092
- "name": "owner",
7363
+ "name": "accessControlManager",
6093
7364
  "outputs": [
6094
7365
  {
6095
- "internalType": "address",
7366
+ "internalType": "contract IAccessControlManagerV8",
6096
7367
  "name": "",
6097
7368
  "type": "address"
6098
7369
  }
@@ -6102,56 +7373,17 @@
6102
7373
  },
6103
7374
  {
6104
7375
  "inputs": [],
6105
- "name": "pendingOwner",
7376
+ "name": "boundValidator",
6106
7377
  "outputs": [
6107
7378
  {
6108
- "internalType": "address",
6109
- "name": "",
6110
- "type": "address"
6111
- }
6112
- ],
6113
- "stateMutability": "view",
6114
- "type": "function"
6115
- },
6116
- {
6117
- "inputs": [
6118
- {
6119
- "internalType": "address",
7379
+ "internalType": "contract BoundValidatorInterface",
6120
7380
  "name": "",
6121
7381
  "type": "address"
6122
7382
  }
6123
7383
  ],
6124
- "name": "prices",
6125
- "outputs": [
6126
- {
6127
- "internalType": "uint256",
6128
- "name": "",
6129
- "type": "uint256"
6130
- }
6131
- ],
6132
7384
  "stateMutability": "view",
6133
7385
  "type": "function"
6134
7386
  },
6135
- {
6136
- "inputs": [],
6137
- "name": "renounceOwnership",
6138
- "outputs": [],
6139
- "stateMutability": "nonpayable",
6140
- "type": "function"
6141
- },
6142
- {
6143
- "inputs": [
6144
- {
6145
- "internalType": "address",
6146
- "name": "accessControlManager_",
6147
- "type": "address"
6148
- }
6149
- ],
6150
- "name": "setAccessControlManager",
6151
- "outputs": [],
6152
- "stateMutability": "nonpayable",
6153
- "type": "function"
6154
- },
6155
7387
  {
6156
7388
  "inputs": [
6157
7389
  {
@@ -6160,72 +7392,17 @@
6160
7392
  "type": "address"
6161
7393
  },
6162
7394
  {
6163
- "internalType": "uint256",
6164
- "name": "price",
6165
- "type": "uint256"
6166
- }
6167
- ],
6168
- "name": "setDirectPrice",
6169
- "outputs": [],
6170
- "stateMutability": "nonpayable",
6171
- "type": "function"
6172
- },
6173
- {
6174
- "inputs": [
6175
- {
6176
- "components": [
6177
- {
6178
- "internalType": "address",
6179
- "name": "asset",
6180
- "type": "address"
6181
- },
6182
- {
6183
- "internalType": "address",
6184
- "name": "feed",
6185
- "type": "address"
6186
- },
6187
- {
6188
- "internalType": "uint256",
6189
- "name": "maxStalePeriod",
6190
- "type": "uint256"
6191
- }
6192
- ],
6193
- "internalType": "struct ChainlinkOracle.TokenConfig",
6194
- "name": "tokenConfig",
6195
- "type": "tuple"
6196
- }
6197
- ],
6198
- "name": "setTokenConfig",
6199
- "outputs": [],
6200
- "stateMutability": "nonpayable",
6201
- "type": "function"
6202
- },
6203
- {
6204
- "inputs": [
7395
+ "internalType": "enum ResilientOracle.OracleRole",
7396
+ "name": "role",
7397
+ "type": "uint8"
7398
+ },
6205
7399
  {
6206
- "components": [
6207
- {
6208
- "internalType": "address",
6209
- "name": "asset",
6210
- "type": "address"
6211
- },
6212
- {
6213
- "internalType": "address",
6214
- "name": "feed",
6215
- "type": "address"
6216
- },
6217
- {
6218
- "internalType": "uint256",
6219
- "name": "maxStalePeriod",
6220
- "type": "uint256"
6221
- }
6222
- ],
6223
- "internalType": "struct ChainlinkOracle.TokenConfig[]",
6224
- "name": "tokenConfigs_",
6225
- "type": "tuple[]"
7400
+ "internalType": "bool",
7401
+ "name": "enable",
7402
+ "type": "bool"
6226
7403
  }
6227
7404
  ],
6228
- "name": "setTokenConfigs",
7405
+ "name": "enableOracle",
6229
7406
  "outputs": [],
6230
7407
  "stateMutability": "nonpayable",
6231
7408
  "type": "function"
@@ -6234,26 +7411,26 @@
6234
7411
  "inputs": [
6235
7412
  {
6236
7413
  "internalType": "address",
6237
- "name": "",
7414
+ "name": "vToken",
6238
7415
  "type": "address"
7416
+ },
7417
+ {
7418
+ "internalType": "enum ResilientOracle.OracleRole",
7419
+ "name": "role",
7420
+ "type": "uint8"
6239
7421
  }
6240
7422
  ],
6241
- "name": "tokenConfigs",
7423
+ "name": "getOracle",
6242
7424
  "outputs": [
6243
7425
  {
6244
7426
  "internalType": "address",
6245
- "name": "asset",
6246
- "type": "address"
6247
- },
6248
- {
6249
- "internalType": "address",
6250
- "name": "feed",
7427
+ "name": "oracle",
6251
7428
  "type": "address"
6252
7429
  },
6253
7430
  {
6254
- "internalType": "uint256",
6255
- "name": "maxStalePeriod",
6256
- "type": "uint256"
7431
+ "internalType": "bool",
7432
+ "name": "enabled",
7433
+ "type": "bool"
6257
7434
  }
6258
7435
  ],
6259
7436
  "stateMutability": "view",
@@ -6263,113 +7440,120 @@
6263
7440
  "inputs": [
6264
7441
  {
6265
7442
  "internalType": "address",
6266
- "name": "newOwner",
7443
+ "name": "vToken",
6267
7444
  "type": "address"
6268
7445
  }
6269
7446
  ],
6270
- "name": "transferOwnership",
6271
- "outputs": [],
6272
- "stateMutability": "nonpayable",
6273
- "type": "function"
6274
- }
6275
- ]
6276
- },
6277
- "RedStoneOracle_Proxy": {
6278
- "address": "0x8455EFA4D7Ff63b8BFD96AdD889483Ea7d39B70a",
6279
- "abi": [
6280
- {
6281
- "inputs": [
6282
- {
6283
- "internalType": "address",
6284
- "name": "_logic",
6285
- "type": "address"
6286
- },
6287
- {
6288
- "internalType": "address",
6289
- "name": "admin_",
6290
- "type": "address"
6291
- },
6292
- {
6293
- "internalType": "bytes",
6294
- "name": "_data",
6295
- "type": "bytes"
7447
+ "name": "getTokenConfig",
7448
+ "outputs": [
7449
+ {
7450
+ "components": [
7451
+ {
7452
+ "internalType": "address",
7453
+ "name": "asset",
7454
+ "type": "address"
7455
+ },
7456
+ {
7457
+ "internalType": "address[3]",
7458
+ "name": "oracles",
7459
+ "type": "address[3]"
7460
+ },
7461
+ {
7462
+ "internalType": "bool[3]",
7463
+ "name": "enableFlagsForOracles",
7464
+ "type": "bool[3]"
7465
+ }
7466
+ ],
7467
+ "internalType": "struct ResilientOracle.TokenConfig",
7468
+ "name": "",
7469
+ "type": "tuple"
6296
7470
  }
6297
7471
  ],
6298
- "stateMutability": "payable",
6299
- "type": "constructor"
7472
+ "stateMutability": "view",
7473
+ "type": "function"
6300
7474
  },
6301
7475
  {
6302
- "anonymous": false,
6303
7476
  "inputs": [
6304
7477
  {
6305
- "indexed": false,
6306
7478
  "internalType": "address",
6307
- "name": "previousAdmin",
7479
+ "name": "vToken",
6308
7480
  "type": "address"
6309
- },
7481
+ }
7482
+ ],
7483
+ "name": "getUnderlyingPrice",
7484
+ "outputs": [
6310
7485
  {
6311
- "indexed": false,
6312
- "internalType": "address",
6313
- "name": "newAdmin",
6314
- "type": "address"
7486
+ "internalType": "uint256",
7487
+ "name": "",
7488
+ "type": "uint256"
6315
7489
  }
6316
7490
  ],
6317
- "name": "AdminChanged",
6318
- "type": "event"
7491
+ "stateMutability": "view",
7492
+ "type": "function"
6319
7493
  },
6320
7494
  {
6321
- "anonymous": false,
6322
7495
  "inputs": [
6323
7496
  {
6324
- "indexed": true,
6325
7497
  "internalType": "address",
6326
- "name": "beacon",
7498
+ "name": "accessControlManager_",
6327
7499
  "type": "address"
6328
7500
  }
6329
7501
  ],
6330
- "name": "BeaconUpgraded",
6331
- "type": "event"
7502
+ "name": "initialize",
7503
+ "outputs": [],
7504
+ "stateMutability": "nonpayable",
7505
+ "type": "function"
6332
7506
  },
6333
7507
  {
6334
- "anonymous": false,
6335
- "inputs": [
7508
+ "inputs": [],
7509
+ "name": "owner",
7510
+ "outputs": [
6336
7511
  {
6337
- "indexed": true,
6338
7512
  "internalType": "address",
6339
- "name": "implementation",
7513
+ "name": "",
6340
7514
  "type": "address"
6341
7515
  }
6342
7516
  ],
6343
- "name": "Upgraded",
6344
- "type": "event"
7517
+ "stateMutability": "view",
7518
+ "type": "function"
6345
7519
  },
6346
7520
  {
6347
- "stateMutability": "payable",
6348
- "type": "fallback"
7521
+ "inputs": [],
7522
+ "name": "pause",
7523
+ "outputs": [],
7524
+ "stateMutability": "nonpayable",
7525
+ "type": "function"
6349
7526
  },
6350
7527
  {
6351
7528
  "inputs": [],
6352
- "name": "admin",
7529
+ "name": "paused",
6353
7530
  "outputs": [
6354
7531
  {
6355
- "internalType": "address",
6356
- "name": "admin_",
6357
- "type": "address"
7532
+ "internalType": "bool",
7533
+ "name": "",
7534
+ "type": "bool"
6358
7535
  }
6359
7536
  ],
6360
- "stateMutability": "nonpayable",
7537
+ "stateMutability": "view",
6361
7538
  "type": "function"
6362
7539
  },
6363
7540
  {
6364
7541
  "inputs": [],
6365
- "name": "implementation",
7542
+ "name": "pendingOwner",
6366
7543
  "outputs": [
6367
7544
  {
6368
7545
  "internalType": "address",
6369
- "name": "implementation_",
7546
+ "name": "",
6370
7547
  "type": "address"
6371
7548
  }
6372
7549
  ],
7550
+ "stateMutability": "view",
7551
+ "type": "function"
7552
+ },
7553
+ {
7554
+ "inputs": [],
7555
+ "name": "renounceOwnership",
7556
+ "outputs": [],
6373
7557
  "stateMutability": "nonpayable",
6374
7558
  "type": "function"
6375
7559
  },
@@ -6377,11 +7561,11 @@
6377
7561
  "inputs": [
6378
7562
  {
6379
7563
  "internalType": "address",
6380
- "name": "newImplementation",
7564
+ "name": "accessControlManager_",
6381
7565
  "type": "address"
6382
7566
  }
6383
7567
  ],
6384
- "name": "upgradeTo",
7568
+ "name": "setAccessControlManager",
6385
7569
  "outputs": [],
6386
7570
  "stateMutability": "nonpayable",
6387
7571
  "type": "function"
@@ -6390,138 +7574,190 @@
6390
7574
  "inputs": [
6391
7575
  {
6392
7576
  "internalType": "address",
6393
- "name": "newImplementation",
7577
+ "name": "asset",
6394
7578
  "type": "address"
6395
7579
  },
6396
7580
  {
6397
- "internalType": "bytes",
6398
- "name": "data",
6399
- "type": "bytes"
7581
+ "internalType": "address",
7582
+ "name": "oracle",
7583
+ "type": "address"
7584
+ },
7585
+ {
7586
+ "internalType": "enum ResilientOracle.OracleRole",
7587
+ "name": "role",
7588
+ "type": "uint8"
6400
7589
  }
6401
7590
  ],
6402
- "name": "upgradeToAndCall",
7591
+ "name": "setOracle",
6403
7592
  "outputs": [],
6404
- "stateMutability": "payable",
7593
+ "stateMutability": "nonpayable",
6405
7594
  "type": "function"
6406
7595
  },
6407
7596
  {
6408
- "stateMutability": "payable",
6409
- "type": "receive"
6410
- }
6411
- ]
6412
- },
6413
- "ResilientOracle": {
6414
- "address": "0x6592b5DE802159F3E74B2486b091D11a8256ab8A",
6415
- "abi": [
6416
- {
6417
- "anonymous": false,
6418
7597
  "inputs": [
6419
7598
  {
6420
- "indexed": false,
6421
- "internalType": "address",
6422
- "name": "previousAdmin",
6423
- "type": "address"
6424
- },
7599
+ "components": [
7600
+ {
7601
+ "internalType": "address",
7602
+ "name": "asset",
7603
+ "type": "address"
7604
+ },
7605
+ {
7606
+ "internalType": "address[3]",
7607
+ "name": "oracles",
7608
+ "type": "address[3]"
7609
+ },
7610
+ {
7611
+ "internalType": "bool[3]",
7612
+ "name": "enableFlagsForOracles",
7613
+ "type": "bool[3]"
7614
+ }
7615
+ ],
7616
+ "internalType": "struct ResilientOracle.TokenConfig",
7617
+ "name": "tokenConfig",
7618
+ "type": "tuple"
7619
+ }
7620
+ ],
7621
+ "name": "setTokenConfig",
7622
+ "outputs": [],
7623
+ "stateMutability": "nonpayable",
7624
+ "type": "function"
7625
+ },
7626
+ {
7627
+ "inputs": [
6425
7628
  {
6426
- "indexed": false,
6427
- "internalType": "address",
6428
- "name": "newAdmin",
6429
- "type": "address"
7629
+ "components": [
7630
+ {
7631
+ "internalType": "address",
7632
+ "name": "asset",
7633
+ "type": "address"
7634
+ },
7635
+ {
7636
+ "internalType": "address[3]",
7637
+ "name": "oracles",
7638
+ "type": "address[3]"
7639
+ },
7640
+ {
7641
+ "internalType": "bool[3]",
7642
+ "name": "enableFlagsForOracles",
7643
+ "type": "bool[3]"
7644
+ }
7645
+ ],
7646
+ "internalType": "struct ResilientOracle.TokenConfig[]",
7647
+ "name": "tokenConfigs_",
7648
+ "type": "tuple[]"
6430
7649
  }
6431
7650
  ],
6432
- "name": "AdminChanged",
6433
- "type": "event"
7651
+ "name": "setTokenConfigs",
7652
+ "outputs": [],
7653
+ "stateMutability": "nonpayable",
7654
+ "type": "function"
6434
7655
  },
6435
7656
  {
6436
- "anonymous": false,
6437
7657
  "inputs": [
6438
7658
  {
6439
- "indexed": true,
6440
7659
  "internalType": "address",
6441
- "name": "beacon",
7660
+ "name": "newOwner",
6442
7661
  "type": "address"
6443
7662
  }
6444
7663
  ],
6445
- "name": "BeaconUpgraded",
6446
- "type": "event"
7664
+ "name": "transferOwnership",
7665
+ "outputs": [],
7666
+ "stateMutability": "nonpayable",
7667
+ "type": "function"
7668
+ },
7669
+ {
7670
+ "inputs": [],
7671
+ "name": "unpause",
7672
+ "outputs": [],
7673
+ "stateMutability": "nonpayable",
7674
+ "type": "function"
6447
7675
  },
6448
7676
  {
6449
- "anonymous": false,
6450
7677
  "inputs": [
6451
7678
  {
6452
- "indexed": true,
6453
7679
  "internalType": "address",
6454
- "name": "implementation",
7680
+ "name": "vToken",
6455
7681
  "type": "address"
6456
7682
  }
6457
7683
  ],
6458
- "name": "Upgraded",
6459
- "type": "event"
6460
- },
6461
- {
6462
- "stateMutability": "payable",
6463
- "type": "fallback"
7684
+ "name": "updatePrice",
7685
+ "outputs": [],
7686
+ "stateMutability": "nonpayable",
7687
+ "type": "function"
6464
7688
  },
6465
7689
  {
6466
7690
  "inputs": [],
6467
- "name": "admin",
7691
+ "name": "vBnb",
6468
7692
  "outputs": [
6469
7693
  {
6470
7694
  "internalType": "address",
6471
- "name": "admin_",
7695
+ "name": "",
6472
7696
  "type": "address"
6473
7697
  }
6474
7698
  ],
6475
- "stateMutability": "nonpayable",
7699
+ "stateMutability": "view",
6476
7700
  "type": "function"
6477
7701
  },
6478
7702
  {
6479
7703
  "inputs": [],
6480
- "name": "implementation",
7704
+ "name": "vai",
6481
7705
  "outputs": [
6482
7706
  {
6483
7707
  "internalType": "address",
6484
- "name": "implementation_",
7708
+ "name": "",
6485
7709
  "type": "address"
6486
7710
  }
6487
7711
  ],
6488
- "stateMutability": "nonpayable",
7712
+ "stateMutability": "view",
6489
7713
  "type": "function"
6490
7714
  },
6491
7715
  {
6492
7716
  "inputs": [
6493
7717
  {
6494
7718
  "internalType": "address",
6495
- "name": "newImplementation",
7719
+ "name": "_logic",
7720
+ "type": "address"
7721
+ },
7722
+ {
7723
+ "internalType": "address",
7724
+ "name": "admin_",
6496
7725
  "type": "address"
7726
+ },
7727
+ {
7728
+ "internalType": "bytes",
7729
+ "name": "_data",
7730
+ "type": "bytes"
6497
7731
  }
6498
7732
  ],
6499
- "name": "upgradeTo",
6500
- "outputs": [],
6501
- "stateMutability": "nonpayable",
6502
- "type": "function"
6503
- },
7733
+ "stateMutability": "payable",
7734
+ "type": "constructor"
7735
+ }
7736
+ ]
7737
+ },
7738
+ "ResilientOracle_Implementation": {
7739
+ "address": "0xB5d7A073d77102ad56B7482b18E7204c1a71C8B9",
7740
+ "abi": [
6504
7741
  {
6505
7742
  "inputs": [
6506
7743
  {
6507
7744
  "internalType": "address",
6508
- "name": "newImplementation",
7745
+ "name": "vBnbAddress",
6509
7746
  "type": "address"
6510
7747
  },
6511
7748
  {
6512
- "internalType": "bytes",
6513
- "name": "data",
6514
- "type": "bytes"
7749
+ "internalType": "address",
7750
+ "name": "vaiAddress",
7751
+ "type": "address"
7752
+ },
7753
+ {
7754
+ "internalType": "contract BoundValidatorInterface",
7755
+ "name": "_boundValidator",
7756
+ "type": "address"
6515
7757
  }
6516
7758
  ],
6517
- "name": "upgradeToAndCall",
6518
- "outputs": [],
6519
- "stateMutability": "payable",
6520
- "type": "function"
6521
- },
6522
- {
6523
- "stateMutability": "payable",
6524
- "type": "receive"
7759
+ "stateMutability": "nonpayable",
7760
+ "type": "constructor"
6525
7761
  },
6526
7762
  {
6527
7763
  "inputs": [
@@ -6807,7 +8043,7 @@
6807
8043
  "inputs": [
6808
8044
  {
6809
8045
  "internalType": "address",
6810
- "name": "vToken",
8046
+ "name": "asset",
6811
8047
  "type": "address"
6812
8048
  },
6813
8049
  {
@@ -6836,7 +8072,26 @@
6836
8072
  "inputs": [
6837
8073
  {
6838
8074
  "internalType": "address",
6839
- "name": "vToken",
8075
+ "name": "asset",
8076
+ "type": "address"
8077
+ }
8078
+ ],
8079
+ "name": "getPrice",
8080
+ "outputs": [
8081
+ {
8082
+ "internalType": "uint256",
8083
+ "name": "",
8084
+ "type": "uint256"
8085
+ }
8086
+ ],
8087
+ "stateMutability": "view",
8088
+ "type": "function"
8089
+ },
8090
+ {
8091
+ "inputs": [
8092
+ {
8093
+ "internalType": "address",
8094
+ "name": "asset",
6840
8095
  "type": "address"
6841
8096
  }
6842
8097
  ],
@@ -7073,31 +8328,31 @@
7073
8328
  "inputs": [
7074
8329
  {
7075
8330
  "internalType": "address",
7076
- "name": "vToken",
8331
+ "name": "asset",
7077
8332
  "type": "address"
7078
8333
  }
7079
8334
  ],
7080
- "name": "updatePrice",
8335
+ "name": "updateAssetPrice",
7081
8336
  "outputs": [],
7082
8337
  "stateMutability": "nonpayable",
7083
8338
  "type": "function"
7084
8339
  },
7085
8340
  {
7086
- "inputs": [],
7087
- "name": "vBnb",
7088
- "outputs": [
8341
+ "inputs": [
7089
8342
  {
7090
8343
  "internalType": "address",
7091
- "name": "",
8344
+ "name": "vToken",
7092
8345
  "type": "address"
7093
8346
  }
7094
8347
  ],
7095
- "stateMutability": "view",
8348
+ "name": "updatePrice",
8349
+ "outputs": [],
8350
+ "stateMutability": "nonpayable",
7096
8351
  "type": "function"
7097
8352
  },
7098
8353
  {
7099
8354
  "inputs": [],
7100
- "name": "vai",
8355
+ "name": "vBnb",
7101
8356
  "outputs": [
7102
8357
  {
7103
8358
  "internalType": "address",
@@ -7109,451 +8364,295 @@
7109
8364
  "type": "function"
7110
8365
  },
7111
8366
  {
7112
- "inputs": [
7113
- {
7114
- "internalType": "address",
7115
- "name": "_logic",
7116
- "type": "address"
7117
- },
7118
- {
7119
- "internalType": "address",
7120
- "name": "admin_",
7121
- "type": "address"
7122
- },
7123
- {
7124
- "internalType": "bytes",
7125
- "name": "_data",
7126
- "type": "bytes"
7127
- }
7128
- ],
7129
- "stateMutability": "payable",
7130
- "type": "constructor"
7131
- }
7132
- ]
7133
- },
7134
- "ResilientOracle_Implementation": {
7135
- "address": "0xB5d7A073d77102ad56B7482b18E7204c1a71C8B9",
7136
- "abi": [
7137
- {
7138
- "inputs": [
7139
- {
7140
- "internalType": "address",
7141
- "name": "vBnbAddress",
7142
- "type": "address"
7143
- },
7144
- {
7145
- "internalType": "address",
7146
- "name": "vaiAddress",
7147
- "type": "address"
7148
- },
7149
- {
7150
- "internalType": "contract BoundValidatorInterface",
7151
- "name": "_boundValidator",
7152
- "type": "address"
7153
- }
7154
- ],
7155
- "stateMutability": "nonpayable",
7156
- "type": "constructor"
7157
- },
7158
- {
7159
- "inputs": [
7160
- {
7161
- "internalType": "address",
7162
- "name": "sender",
7163
- "type": "address"
7164
- },
7165
- {
7166
- "internalType": "address",
7167
- "name": "calledContract",
7168
- "type": "address"
7169
- },
7170
- {
7171
- "internalType": "string",
7172
- "name": "methodSignature",
7173
- "type": "string"
7174
- }
7175
- ],
7176
- "name": "Unauthorized",
7177
- "type": "error"
7178
- },
7179
- {
7180
- "anonymous": false,
7181
- "inputs": [
7182
- {
7183
- "indexed": false,
7184
- "internalType": "uint8",
7185
- "name": "version",
7186
- "type": "uint8"
7187
- }
7188
- ],
7189
- "name": "Initialized",
7190
- "type": "event"
7191
- },
7192
- {
7193
- "anonymous": false,
7194
- "inputs": [
7195
- {
7196
- "indexed": false,
7197
- "internalType": "address",
7198
- "name": "oldAccessControlManager",
7199
- "type": "address"
7200
- },
7201
- {
7202
- "indexed": false,
7203
- "internalType": "address",
7204
- "name": "newAccessControlManager",
7205
- "type": "address"
7206
- }
7207
- ],
7208
- "name": "NewAccessControlManager",
7209
- "type": "event"
7210
- },
7211
- {
7212
- "anonymous": false,
7213
- "inputs": [
7214
- {
7215
- "indexed": true,
7216
- "internalType": "address",
7217
- "name": "asset",
7218
- "type": "address"
7219
- },
7220
- {
7221
- "indexed": true,
7222
- "internalType": "uint256",
7223
- "name": "role",
7224
- "type": "uint256"
7225
- },
7226
- {
7227
- "indexed": true,
7228
- "internalType": "bool",
7229
- "name": "enable",
7230
- "type": "bool"
7231
- }
7232
- ],
7233
- "name": "OracleEnabled",
7234
- "type": "event"
7235
- },
7236
- {
7237
- "anonymous": false,
7238
- "inputs": [
7239
- {
7240
- "indexed": true,
7241
- "internalType": "address",
7242
- "name": "asset",
7243
- "type": "address"
7244
- },
7245
- {
7246
- "indexed": true,
7247
- "internalType": "address",
7248
- "name": "oracle",
7249
- "type": "address"
7250
- },
7251
- {
7252
- "indexed": true,
7253
- "internalType": "uint256",
7254
- "name": "role",
7255
- "type": "uint256"
7256
- }
7257
- ],
7258
- "name": "OracleSet",
7259
- "type": "event"
7260
- },
7261
- {
7262
- "anonymous": false,
7263
- "inputs": [
7264
- {
7265
- "indexed": true,
7266
- "internalType": "address",
7267
- "name": "previousOwner",
7268
- "type": "address"
7269
- },
7270
- {
7271
- "indexed": true,
7272
- "internalType": "address",
7273
- "name": "newOwner",
7274
- "type": "address"
7275
- }
7276
- ],
7277
- "name": "OwnershipTransferStarted",
7278
- "type": "event"
7279
- },
7280
- {
7281
- "anonymous": false,
7282
- "inputs": [
7283
- {
7284
- "indexed": true,
7285
- "internalType": "address",
7286
- "name": "previousOwner",
7287
- "type": "address"
7288
- },
7289
- {
7290
- "indexed": true,
7291
- "internalType": "address",
7292
- "name": "newOwner",
7293
- "type": "address"
7294
- }
7295
- ],
7296
- "name": "OwnershipTransferred",
7297
- "type": "event"
7298
- },
7299
- {
7300
- "anonymous": false,
7301
- "inputs": [
8367
+ "inputs": [],
8368
+ "name": "vai",
8369
+ "outputs": [
7302
8370
  {
7303
- "indexed": false,
7304
8371
  "internalType": "address",
7305
- "name": "account",
8372
+ "name": "",
7306
8373
  "type": "address"
7307
8374
  }
7308
8375
  ],
7309
- "name": "Paused",
7310
- "type": "event"
7311
- },
8376
+ "stateMutability": "view",
8377
+ "type": "function"
8378
+ }
8379
+ ]
8380
+ },
8381
+ "ResilientOracle_Proxy": {
8382
+ "address": "0x6592b5DE802159F3E74B2486b091D11a8256ab8A",
8383
+ "abi": [
7312
8384
  {
7313
- "anonymous": false,
7314
8385
  "inputs": [
7315
8386
  {
7316
- "indexed": true,
7317
8387
  "internalType": "address",
7318
- "name": "asset",
8388
+ "name": "_logic",
7319
8389
  "type": "address"
7320
8390
  },
7321
8391
  {
7322
- "indexed": true,
7323
8392
  "internalType": "address",
7324
- "name": "mainOracle",
8393
+ "name": "admin_",
7325
8394
  "type": "address"
7326
8395
  },
7327
8396
  {
7328
- "indexed": true,
8397
+ "internalType": "bytes",
8398
+ "name": "_data",
8399
+ "type": "bytes"
8400
+ }
8401
+ ],
8402
+ "stateMutability": "payable",
8403
+ "type": "constructor"
8404
+ },
8405
+ {
8406
+ "anonymous": false,
8407
+ "inputs": [
8408
+ {
8409
+ "indexed": false,
7329
8410
  "internalType": "address",
7330
- "name": "pivotOracle",
8411
+ "name": "previousAdmin",
7331
8412
  "type": "address"
7332
8413
  },
7333
8414
  {
7334
8415
  "indexed": false,
7335
8416
  "internalType": "address",
7336
- "name": "fallbackOracle",
8417
+ "name": "newAdmin",
7337
8418
  "type": "address"
7338
8419
  }
7339
8420
  ],
7340
- "name": "TokenConfigAdded",
8421
+ "name": "AdminChanged",
7341
8422
  "type": "event"
7342
8423
  },
7343
8424
  {
7344
8425
  "anonymous": false,
7345
8426
  "inputs": [
7346
8427
  {
7347
- "indexed": false,
8428
+ "indexed": true,
7348
8429
  "internalType": "address",
7349
- "name": "account",
8430
+ "name": "beacon",
7350
8431
  "type": "address"
7351
8432
  }
7352
8433
  ],
7353
- "name": "Unpaused",
8434
+ "name": "BeaconUpgraded",
7354
8435
  "type": "event"
7355
8436
  },
7356
8437
  {
7357
- "inputs": [],
7358
- "name": "BNB_ADDR",
7359
- "outputs": [
8438
+ "anonymous": false,
8439
+ "inputs": [
7360
8440
  {
8441
+ "indexed": true,
7361
8442
  "internalType": "address",
7362
- "name": "",
8443
+ "name": "implementation",
7363
8444
  "type": "address"
7364
8445
  }
7365
8446
  ],
7366
- "stateMutability": "view",
7367
- "type": "function"
8447
+ "name": "Upgraded",
8448
+ "type": "event"
8449
+ },
8450
+ {
8451
+ "stateMutability": "payable",
8452
+ "type": "fallback"
7368
8453
  },
7369
8454
  {
7370
8455
  "inputs": [],
7371
- "name": "INVALID_PRICE",
8456
+ "name": "admin",
7372
8457
  "outputs": [
7373
8458
  {
7374
- "internalType": "uint256",
7375
- "name": "",
7376
- "type": "uint256"
8459
+ "internalType": "address",
8460
+ "name": "admin_",
8461
+ "type": "address"
7377
8462
  }
7378
8463
  ],
7379
- "stateMutability": "view",
7380
- "type": "function"
7381
- },
7382
- {
7383
- "inputs": [],
7384
- "name": "acceptOwnership",
7385
- "outputs": [],
7386
8464
  "stateMutability": "nonpayable",
7387
8465
  "type": "function"
7388
8466
  },
7389
8467
  {
7390
8468
  "inputs": [],
7391
- "name": "accessControlManager",
8469
+ "name": "implementation",
7392
8470
  "outputs": [
7393
8471
  {
7394
- "internalType": "contract IAccessControlManagerV8",
7395
- "name": "",
8472
+ "internalType": "address",
8473
+ "name": "implementation_",
7396
8474
  "type": "address"
7397
8475
  }
7398
8476
  ],
7399
- "stateMutability": "view",
8477
+ "stateMutability": "nonpayable",
7400
8478
  "type": "function"
7401
8479
  },
7402
8480
  {
7403
- "inputs": [],
7404
- "name": "boundValidator",
7405
- "outputs": [
8481
+ "inputs": [
7406
8482
  {
7407
- "internalType": "contract BoundValidatorInterface",
7408
- "name": "",
8483
+ "internalType": "address",
8484
+ "name": "newImplementation",
7409
8485
  "type": "address"
7410
8486
  }
7411
8487
  ],
7412
- "stateMutability": "view",
8488
+ "name": "upgradeTo",
8489
+ "outputs": [],
8490
+ "stateMutability": "nonpayable",
7413
8491
  "type": "function"
7414
8492
  },
7415
8493
  {
7416
8494
  "inputs": [
7417
8495
  {
7418
8496
  "internalType": "address",
7419
- "name": "asset",
8497
+ "name": "newImplementation",
7420
8498
  "type": "address"
7421
8499
  },
7422
8500
  {
7423
- "internalType": "enum ResilientOracle.OracleRole",
7424
- "name": "role",
7425
- "type": "uint8"
7426
- },
7427
- {
7428
- "internalType": "bool",
7429
- "name": "enable",
7430
- "type": "bool"
8501
+ "internalType": "bytes",
8502
+ "name": "data",
8503
+ "type": "bytes"
7431
8504
  }
7432
8505
  ],
7433
- "name": "enableOracle",
8506
+ "name": "upgradeToAndCall",
7434
8507
  "outputs": [],
7435
- "stateMutability": "nonpayable",
8508
+ "stateMutability": "payable",
7436
8509
  "type": "function"
7437
8510
  },
7438
8511
  {
8512
+ "stateMutability": "payable",
8513
+ "type": "receive"
8514
+ }
8515
+ ]
8516
+ },
8517
+ "SlisBNBOracle": {
8518
+ "address": "0xfE54895445eD2575Bf5386B90FFB098cBC5CA29A",
8519
+ "abi": [
8520
+ {
8521
+ "anonymous": false,
7439
8522
  "inputs": [
7440
8523
  {
8524
+ "indexed": false,
7441
8525
  "internalType": "address",
7442
- "name": "asset",
8526
+ "name": "previousAdmin",
7443
8527
  "type": "address"
7444
8528
  },
7445
8529
  {
7446
- "internalType": "enum ResilientOracle.OracleRole",
7447
- "name": "role",
7448
- "type": "uint8"
8530
+ "indexed": false,
8531
+ "internalType": "address",
8532
+ "name": "newAdmin",
8533
+ "type": "address"
7449
8534
  }
7450
8535
  ],
7451
- "name": "getOracle",
7452
- "outputs": [
8536
+ "name": "AdminChanged",
8537
+ "type": "event"
8538
+ },
8539
+ {
8540
+ "anonymous": false,
8541
+ "inputs": [
7453
8542
  {
8543
+ "indexed": true,
7454
8544
  "internalType": "address",
7455
- "name": "oracle",
8545
+ "name": "beacon",
7456
8546
  "type": "address"
7457
- },
7458
- {
7459
- "internalType": "bool",
7460
- "name": "enabled",
7461
- "type": "bool"
7462
8547
  }
7463
8548
  ],
7464
- "stateMutability": "view",
7465
- "type": "function"
8549
+ "name": "BeaconUpgraded",
8550
+ "type": "event"
7466
8551
  },
7467
8552
  {
8553
+ "anonymous": false,
7468
8554
  "inputs": [
7469
8555
  {
8556
+ "indexed": true,
7470
8557
  "internalType": "address",
7471
- "name": "asset",
8558
+ "name": "implementation",
7472
8559
  "type": "address"
7473
8560
  }
7474
8561
  ],
7475
- "name": "getPrice",
8562
+ "name": "Upgraded",
8563
+ "type": "event"
8564
+ },
8565
+ {
8566
+ "stateMutability": "payable",
8567
+ "type": "fallback"
8568
+ },
8569
+ {
8570
+ "inputs": [],
8571
+ "name": "admin",
7476
8572
  "outputs": [
7477
8573
  {
7478
- "internalType": "uint256",
7479
- "name": "",
7480
- "type": "uint256"
8574
+ "internalType": "address",
8575
+ "name": "admin_",
8576
+ "type": "address"
7481
8577
  }
7482
8578
  ],
7483
- "stateMutability": "view",
8579
+ "stateMutability": "nonpayable",
7484
8580
  "type": "function"
7485
8581
  },
7486
8582
  {
7487
- "inputs": [
8583
+ "inputs": [],
8584
+ "name": "implementation",
8585
+ "outputs": [
7488
8586
  {
7489
8587
  "internalType": "address",
7490
- "name": "asset",
8588
+ "name": "implementation_",
7491
8589
  "type": "address"
7492
8590
  }
7493
8591
  ],
7494
- "name": "getTokenConfig",
7495
- "outputs": [
8592
+ "stateMutability": "nonpayable",
8593
+ "type": "function"
8594
+ },
8595
+ {
8596
+ "inputs": [
7496
8597
  {
7497
- "components": [
7498
- {
7499
- "internalType": "address",
7500
- "name": "asset",
7501
- "type": "address"
7502
- },
7503
- {
7504
- "internalType": "address[3]",
7505
- "name": "oracles",
7506
- "type": "address[3]"
7507
- },
7508
- {
7509
- "internalType": "bool[3]",
7510
- "name": "enableFlagsForOracles",
7511
- "type": "bool[3]"
7512
- }
7513
- ],
7514
- "internalType": "struct ResilientOracle.TokenConfig",
7515
- "name": "",
7516
- "type": "tuple"
8598
+ "internalType": "address",
8599
+ "name": "newImplementation",
8600
+ "type": "address"
7517
8601
  }
7518
8602
  ],
7519
- "stateMutability": "view",
8603
+ "name": "upgradeTo",
8604
+ "outputs": [],
8605
+ "stateMutability": "nonpayable",
7520
8606
  "type": "function"
7521
8607
  },
7522
8608
  {
7523
8609
  "inputs": [
7524
8610
  {
7525
8611
  "internalType": "address",
7526
- "name": "vToken",
8612
+ "name": "newImplementation",
7527
8613
  "type": "address"
7528
- }
7529
- ],
7530
- "name": "getUnderlyingPrice",
7531
- "outputs": [
8614
+ },
7532
8615
  {
7533
- "internalType": "uint256",
7534
- "name": "",
7535
- "type": "uint256"
8616
+ "internalType": "bytes",
8617
+ "name": "data",
8618
+ "type": "bytes"
7536
8619
  }
7537
8620
  ],
7538
- "stateMutability": "view",
8621
+ "name": "upgradeToAndCall",
8622
+ "outputs": [],
8623
+ "stateMutability": "payable",
7539
8624
  "type": "function"
7540
8625
  },
7541
8626
  {
7542
- "inputs": [
8627
+ "stateMutability": "payable",
8628
+ "type": "receive"
8629
+ },
8630
+ {
8631
+ "inputs": [],
8632
+ "name": "InvalidTokenAddress",
8633
+ "type": "error"
8634
+ },
8635
+ {
8636
+ "inputs": [],
8637
+ "name": "ZeroAddressNotAllowed",
8638
+ "type": "error"
8639
+ },
8640
+ {
8641
+ "inputs": [],
8642
+ "name": "CORRELATED_TOKEN",
8643
+ "outputs": [
7543
8644
  {
7544
8645
  "internalType": "address",
7545
- "name": "accessControlManager_",
8646
+ "name": "",
7546
8647
  "type": "address"
7547
8648
  }
7548
8649
  ],
7549
- "name": "initialize",
7550
- "outputs": [],
7551
- "stateMutability": "nonpayable",
8650
+ "stateMutability": "view",
7552
8651
  "type": "function"
7553
8652
  },
7554
8653
  {
7555
8654
  "inputs": [],
7556
- "name": "owner",
8655
+ "name": "NATIVE_TOKEN_ADDR",
7557
8656
  "outputs": [
7558
8657
  {
7559
8658
  "internalType": "address",
@@ -7566,19 +8665,25 @@
7566
8665
  },
7567
8666
  {
7568
8667
  "inputs": [],
7569
- "name": "pause",
7570
- "outputs": [],
7571
- "stateMutability": "nonpayable",
8668
+ "name": "RESILIENT_ORACLE",
8669
+ "outputs": [
8670
+ {
8671
+ "internalType": "contract OracleInterface",
8672
+ "name": "",
8673
+ "type": "address"
8674
+ }
8675
+ ],
8676
+ "stateMutability": "view",
7572
8677
  "type": "function"
7573
8678
  },
7574
8679
  {
7575
8680
  "inputs": [],
7576
- "name": "paused",
8681
+ "name": "STAKE_MANAGER",
7577
8682
  "outputs": [
7578
8683
  {
7579
- "internalType": "bool",
8684
+ "internalType": "contract ISynclubStakeManager",
7580
8685
  "name": "",
7581
- "type": "bool"
8686
+ "type": "address"
7582
8687
  }
7583
8688
  ],
7584
8689
  "stateMutability": "view",
@@ -7586,7 +8691,7 @@
7586
8691
  },
7587
8692
  {
7588
8693
  "inputs": [],
7589
- "name": "pendingOwner",
8694
+ "name": "UNDERLYING_TOKEN",
7590
8695
  "outputs": [
7591
8696
  {
7592
8697
  "internalType": "address",
@@ -7597,158 +8702,137 @@
7597
8702
  "stateMutability": "view",
7598
8703
  "type": "function"
7599
8704
  },
7600
- {
7601
- "inputs": [],
7602
- "name": "renounceOwnership",
7603
- "outputs": [],
7604
- "stateMutability": "nonpayable",
7605
- "type": "function"
7606
- },
7607
8705
  {
7608
8706
  "inputs": [
7609
8707
  {
7610
8708
  "internalType": "address",
7611
- "name": "accessControlManager_",
8709
+ "name": "asset",
7612
8710
  "type": "address"
7613
8711
  }
7614
8712
  ],
7615
- "name": "setAccessControlManager",
7616
- "outputs": [],
7617
- "stateMutability": "nonpayable",
8713
+ "name": "getPrice",
8714
+ "outputs": [
8715
+ {
8716
+ "internalType": "uint256",
8717
+ "name": "",
8718
+ "type": "uint256"
8719
+ }
8720
+ ],
8721
+ "stateMutability": "view",
7618
8722
  "type": "function"
7619
8723
  },
7620
8724
  {
7621
8725
  "inputs": [
7622
8726
  {
7623
8727
  "internalType": "address",
7624
- "name": "asset",
8728
+ "name": "_logic",
7625
8729
  "type": "address"
7626
8730
  },
7627
8731
  {
7628
8732
  "internalType": "address",
7629
- "name": "oracle",
8733
+ "name": "admin_",
7630
8734
  "type": "address"
7631
8735
  },
7632
8736
  {
7633
- "internalType": "enum ResilientOracle.OracleRole",
7634
- "name": "role",
7635
- "type": "uint8"
8737
+ "internalType": "bytes",
8738
+ "name": "_data",
8739
+ "type": "bytes"
7636
8740
  }
7637
8741
  ],
7638
- "name": "setOracle",
7639
- "outputs": [],
7640
- "stateMutability": "nonpayable",
7641
- "type": "function"
7642
- },
8742
+ "stateMutability": "payable",
8743
+ "type": "constructor"
8744
+ }
8745
+ ]
8746
+ },
8747
+ "SlisBNBOracle_Implementation": {
8748
+ "address": "0x7AC3dC7BD02C89bCa06307406d78a75867f4c048",
8749
+ "abi": [
7643
8750
  {
7644
8751
  "inputs": [
7645
8752
  {
7646
- "components": [
7647
- {
7648
- "internalType": "address",
7649
- "name": "asset",
7650
- "type": "address"
7651
- },
7652
- {
7653
- "internalType": "address[3]",
7654
- "name": "oracles",
7655
- "type": "address[3]"
7656
- },
7657
- {
7658
- "internalType": "bool[3]",
7659
- "name": "enableFlagsForOracles",
7660
- "type": "bool[3]"
7661
- }
7662
- ],
7663
- "internalType": "struct ResilientOracle.TokenConfig",
7664
- "name": "tokenConfig",
7665
- "type": "tuple"
8753
+ "internalType": "address",
8754
+ "name": "stakeManager",
8755
+ "type": "address"
8756
+ },
8757
+ {
8758
+ "internalType": "address",
8759
+ "name": "slisBNB",
8760
+ "type": "address"
8761
+ },
8762
+ {
8763
+ "internalType": "address",
8764
+ "name": "resilientOracle",
8765
+ "type": "address"
7666
8766
  }
7667
8767
  ],
7668
- "name": "setTokenConfig",
7669
- "outputs": [],
7670
8768
  "stateMutability": "nonpayable",
7671
- "type": "function"
8769
+ "type": "constructor"
7672
8770
  },
7673
8771
  {
7674
- "inputs": [
8772
+ "inputs": [],
8773
+ "name": "InvalidTokenAddress",
8774
+ "type": "error"
8775
+ },
8776
+ {
8777
+ "inputs": [],
8778
+ "name": "ZeroAddressNotAllowed",
8779
+ "type": "error"
8780
+ },
8781
+ {
8782
+ "inputs": [],
8783
+ "name": "CORRELATED_TOKEN",
8784
+ "outputs": [
7675
8785
  {
7676
- "components": [
7677
- {
7678
- "internalType": "address",
7679
- "name": "asset",
7680
- "type": "address"
7681
- },
7682
- {
7683
- "internalType": "address[3]",
7684
- "name": "oracles",
7685
- "type": "address[3]"
7686
- },
7687
- {
7688
- "internalType": "bool[3]",
7689
- "name": "enableFlagsForOracles",
7690
- "type": "bool[3]"
7691
- }
7692
- ],
7693
- "internalType": "struct ResilientOracle.TokenConfig[]",
7694
- "name": "tokenConfigs_",
7695
- "type": "tuple[]"
8786
+ "internalType": "address",
8787
+ "name": "",
8788
+ "type": "address"
7696
8789
  }
7697
8790
  ],
7698
- "name": "setTokenConfigs",
7699
- "outputs": [],
7700
- "stateMutability": "nonpayable",
8791
+ "stateMutability": "view",
7701
8792
  "type": "function"
7702
8793
  },
7703
8794
  {
7704
- "inputs": [
8795
+ "inputs": [],
8796
+ "name": "NATIVE_TOKEN_ADDR",
8797
+ "outputs": [
7705
8798
  {
7706
8799
  "internalType": "address",
7707
- "name": "newOwner",
8800
+ "name": "",
7708
8801
  "type": "address"
7709
8802
  }
7710
8803
  ],
7711
- "name": "transferOwnership",
7712
- "outputs": [],
7713
- "stateMutability": "nonpayable",
8804
+ "stateMutability": "view",
7714
8805
  "type": "function"
7715
8806
  },
7716
8807
  {
7717
8808
  "inputs": [],
7718
- "name": "unpause",
7719
- "outputs": [],
7720
- "stateMutability": "nonpayable",
7721
- "type": "function"
7722
- },
7723
- {
7724
- "inputs": [
8809
+ "name": "RESILIENT_ORACLE",
8810
+ "outputs": [
7725
8811
  {
7726
- "internalType": "address",
7727
- "name": "asset",
8812
+ "internalType": "contract OracleInterface",
8813
+ "name": "",
7728
8814
  "type": "address"
7729
8815
  }
7730
8816
  ],
7731
- "name": "updateAssetPrice",
7732
- "outputs": [],
7733
- "stateMutability": "nonpayable",
8817
+ "stateMutability": "view",
7734
8818
  "type": "function"
7735
8819
  },
7736
8820
  {
7737
- "inputs": [
8821
+ "inputs": [],
8822
+ "name": "STAKE_MANAGER",
8823
+ "outputs": [
7738
8824
  {
7739
- "internalType": "address",
7740
- "name": "vToken",
8825
+ "internalType": "contract ISynclubStakeManager",
8826
+ "name": "",
7741
8827
  "type": "address"
7742
8828
  }
7743
8829
  ],
7744
- "name": "updatePrice",
7745
- "outputs": [],
7746
- "stateMutability": "nonpayable",
8830
+ "stateMutability": "view",
7747
8831
  "type": "function"
7748
8832
  },
7749
8833
  {
7750
8834
  "inputs": [],
7751
- "name": "vBnb",
8835
+ "name": "UNDERLYING_TOKEN",
7752
8836
  "outputs": [
7753
8837
  {
7754
8838
  "internalType": "address",
@@ -7760,22 +8844,28 @@
7760
8844
  "type": "function"
7761
8845
  },
7762
8846
  {
7763
- "inputs": [],
7764
- "name": "vai",
7765
- "outputs": [
8847
+ "inputs": [
7766
8848
  {
7767
8849
  "internalType": "address",
7768
- "name": "",
8850
+ "name": "asset",
7769
8851
  "type": "address"
7770
8852
  }
7771
8853
  ],
8854
+ "name": "getPrice",
8855
+ "outputs": [
8856
+ {
8857
+ "internalType": "uint256",
8858
+ "name": "",
8859
+ "type": "uint256"
8860
+ }
8861
+ ],
7772
8862
  "stateMutability": "view",
7773
8863
  "type": "function"
7774
8864
  }
7775
8865
  ]
7776
8866
  },
7777
- "ResilientOracle_Proxy": {
7778
- "address": "0x6592b5DE802159F3E74B2486b091D11a8256ab8A",
8867
+ "SlisBNBOracle_Proxy": {
8868
+ "address": "0xfE54895445eD2575Bf5386B90FFB098cBC5CA29A",
7779
8869
  "abi": [
7780
8870
  {
7781
8871
  "inputs": [
@@ -7910,8 +9000,8 @@
7910
9000
  }
7911
9001
  ]
7912
9002
  },
7913
- "SlisBNBOracle": {
7914
- "address": "0xfE54895445eD2575Bf5386B90FFB098cBC5CA29A",
9003
+ "SolvBTC.BBN_OneJumpRedStoneOracle": {
9004
+ "address": "0x98B9bC5a1e7E439ebEB0BEdB7e9f6b24fEc1E8B4",
7915
9005
  "abi": [
7916
9006
  {
7917
9007
  "anonymous": false,
@@ -8048,10 +9138,10 @@
8048
9138
  },
8049
9139
  {
8050
9140
  "inputs": [],
8051
- "name": "NATIVE_TOKEN_ADDR",
9141
+ "name": "INTERMEDIATE_ORACLE",
8052
9142
  "outputs": [
8053
9143
  {
8054
- "internalType": "address",
9144
+ "internalType": "contract OracleInterface",
8055
9145
  "name": "",
8056
9146
  "type": "address"
8057
9147
  }
@@ -8072,19 +9162,6 @@
8072
9162
  "stateMutability": "view",
8073
9163
  "type": "function"
8074
9164
  },
8075
- {
8076
- "inputs": [],
8077
- "name": "STAKE_MANAGER",
8078
- "outputs": [
8079
- {
8080
- "internalType": "contract ISynclubStakeManager",
8081
- "name": "",
8082
- "type": "address"
8083
- }
8084
- ],
8085
- "stateMutability": "view",
8086
- "type": "function"
8087
- },
8088
9165
  {
8089
9166
  "inputs": [],
8090
9167
  "name": "UNDERLYING_TOKEN",
@@ -8140,25 +9217,30 @@
8140
9217
  }
8141
9218
  ]
8142
9219
  },
8143
- "SlisBNBOracle_Implementation": {
8144
- "address": "0x7AC3dC7BD02C89bCa06307406d78a75867f4c048",
9220
+ "SolvBTC.BBN_OneJumpRedStoneOracle_Implementation": {
9221
+ "address": "0x98eD7290a3D52FA5639dd76C16ADE3074ba664dd",
8145
9222
  "abi": [
8146
9223
  {
8147
9224
  "inputs": [
8148
9225
  {
8149
9226
  "internalType": "address",
8150
- "name": "stakeManager",
9227
+ "name": "correlatedToken",
8151
9228
  "type": "address"
8152
9229
  },
8153
9230
  {
8154
9231
  "internalType": "address",
8155
- "name": "slisBNB",
9232
+ "name": "underlyingToken",
8156
9233
  "type": "address"
8157
9234
  },
8158
9235
  {
8159
9236
  "internalType": "address",
8160
9237
  "name": "resilientOracle",
8161
9238
  "type": "address"
9239
+ },
9240
+ {
9241
+ "internalType": "address",
9242
+ "name": "intermediateOracle",
9243
+ "type": "address"
8162
9244
  }
8163
9245
  ],
8164
9246
  "stateMutability": "nonpayable",
@@ -8189,10 +9271,10 @@
8189
9271
  },
8190
9272
  {
8191
9273
  "inputs": [],
8192
- "name": "NATIVE_TOKEN_ADDR",
9274
+ "name": "INTERMEDIATE_ORACLE",
8193
9275
  "outputs": [
8194
9276
  {
8195
- "internalType": "address",
9277
+ "internalType": "contract OracleInterface",
8196
9278
  "name": "",
8197
9279
  "type": "address"
8198
9280
  }
@@ -8213,19 +9295,6 @@
8213
9295
  "stateMutability": "view",
8214
9296
  "type": "function"
8215
9297
  },
8216
- {
8217
- "inputs": [],
8218
- "name": "STAKE_MANAGER",
8219
- "outputs": [
8220
- {
8221
- "internalType": "contract ISynclubStakeManager",
8222
- "name": "",
8223
- "type": "address"
8224
- }
8225
- ],
8226
- "stateMutability": "view",
8227
- "type": "function"
8228
- },
8229
9298
  {
8230
9299
  "inputs": [],
8231
9300
  "name": "UNDERLYING_TOKEN",
@@ -8260,8 +9329,8 @@
8260
9329
  }
8261
9330
  ]
8262
9331
  },
8263
- "SlisBNBOracle_Proxy": {
8264
- "address": "0xfE54895445eD2575Bf5386B90FFB098cBC5CA29A",
9332
+ "SolvBTC.BBN_OneJumpRedStoneOracle_Proxy": {
9333
+ "address": "0x98B9bC5a1e7E439ebEB0BEdB7e9f6b24fEc1E8B4",
8265
9334
  "abi": [
8266
9335
  {
8267
9336
  "inputs": [