├── .env.example ├── .github └── workflows │ ├── format.yml │ ├── lint.yml │ ├── testMain.yml │ └── testPR.yml ├── .gitignore ├── .gitmodules ├── .prettierignore ├── .prettierrc.json ├── LICENSE ├── README.md ├── foundry.toml ├── package.json ├── pool.txt ├── remappings.txt ├── script ├── 00_deployAccessManager.s.sol ├── 01_deployRegistry.s.sol ├── 02_deployPrincipalTokenInstance.s.sol ├── 03_deployYTInstance.s.sol ├── 04_deployPrincipalTokenBeacon.s.sol ├── 05_deployYTBeacon.s.sol ├── 06_deployFactory.s.sol ├── 07_deployPrincipalToken.s.sol ├── 08_deployCurvePool.s.sol ├── 09_deployRouter.s.sol ├── 10_deployAll.s.sol ├── 11_deployMockUnderlying.s.sol ├── 12_deployMockIBT.s.sol ├── 13_deployMockFaucet.s.sol ├── 14_upgradeBeaconImplementation.s.sol ├── 15_upgradeTransparentProxy.s.sol ├── 16_addLiquidityInCurvePool.s.sol ├── 17_generateYield.s.sol ├── 18_deployProtocol.s.sol ├── 19_deployInstances.s.sol ├── 20_deployLiqArbitrage.s.sol ├── 21_deployRateAdjustmentOracle.s.sol ├── 22_deployRateOracleRegistry.s.sol ├── 23_deployFactorySNG.s.sol ├── 24_deployRateAdjustmentOracleInstance.s.sol └── 25_deployRateAdjustmentOracleBeacon.s.sol ├── spectra_contracts_architecture.png ├── src ├── .gitignore ├── RateOracleRegistry.sol ├── Registry.sol ├── amm │ └── RateAdjustmentOracle.sol ├── factory │ ├── Factory.sol │ └── FactorySNG.sol ├── interfaces │ ├── AggregatorV3Interface.sol │ ├── ICurveFactory.sol │ ├── ICurveNGFactory.sol │ ├── ICurveNGPool.sol │ ├── ICurvePool.sol │ ├── IERC5095.sol │ ├── IFactory.sol │ ├── IFactorySNG.sol │ ├── IMockToken.sol │ ├── INATIVE.sol │ ├── IPrincipalToken.sol │ ├── IRateAdjustmentOracle.sol │ ├── IRateOracleRegistry.sol │ ├── IRegistry.sol │ ├── IRewardsProxy.sol │ ├── IRouter.sol │ ├── ISpectra4626Wrapper.sol │ ├── IStableSwapNG.sol │ ├── IStableSwapNGFactory.sol │ └── IYieldToken.sol ├── libraries │ ├── CurveOracleLib.sol │ ├── CurvePoolUtil.sol │ ├── LogExpMath.sol │ ├── NamingUtil.sol │ ├── PrincipalTokenUtil.sol │ ├── RateAdjustmentMath.sol │ ├── RayMath.sol │ └── Roles.sol ├── mocks │ ├── MockCurvePoolFactory.sol │ ├── MockERC20.sol │ ├── MockERC4626Custom.sol │ ├── MockFactoryV2.sol │ ├── MockFaucet.sol │ ├── MockIBT.sol │ ├── MockIBT2.sol │ ├── MockIBTBeta.sol │ ├── MockIBTCustom1.sol │ ├── MockIBTCustomDecimals.sol │ ├── MockIBTCustomDepositFeesThreshold.sol │ ├── MockIBTCustomRedeemFeesThreshold.sol │ ├── MockPrincipalTokenUtilV2.sol │ ├── MockPrincipalTokenV2.sol │ ├── MockRateAdjustmentOracle1.sol │ ├── MockRateAdjustmentOracle2.sol │ ├── MockRewardsProxy.sol │ ├── MockRouter.sol │ ├── MockSpectra4626Wrapper.sol │ ├── MockUnderlying.sol │ ├── MockUnderlyingCustomDecimals.sol │ ├── MockYieldTokenV2.sol │ └── base │ │ ├── Spectra4626Wrapper.sol │ │ └── SpectraERC4626Upgradeable.sol ├── proxy │ ├── AMBeacon.sol │ ├── AMProxyAdmin.sol │ └── AMTransparentUpgradeableProxy.sol ├── router │ ├── Commands.sol │ ├── Constants.sol │ ├── Dispatcher.sol │ ├── Router.sol │ └── util │ │ ├── CurveLiqArbitrage.sol │ │ └── RouterUtil.sol ├── spectra-oracles │ ├── chainlinkFeeds │ │ ├── cryptoswap-ng │ │ │ ├── BaseFeedCurveLPTAsset.sol │ │ │ ├── BaseFeedCurveLPTIBT.sol │ │ │ ├── BaseFeedCurvePTAsset.sol │ │ │ ├── BaseFeedCurvePTIBT.sol │ │ │ ├── BaseFeedCurveYTAsset.sol │ │ │ └── BaseFeedCurveYTIBT.sol │ │ └── stableswap-ng │ │ │ ├── BaseFeedCurveLPTAsset.sol │ │ │ ├── BaseFeedCurveLPTIBT.sol │ │ │ ├── BaseFeedCurvePTAsset.sol │ │ │ ├── BaseFeedCurvePTIBT.sol │ │ │ ├── BaseFeedCurveYTAsset.sol │ │ │ └── BaseFeedCurveYTIBT.sol │ └── oracles │ │ ├── BaseOracle.sol │ │ ├── BaseOracleCurveLPT.sol │ │ ├── BaseOracleCurvePT.sol │ │ └── BaseOracleCurveYT.sol └── tokens │ ├── PrincipalToken.sol │ └── YieldToken.sol ├── test ├── AccessManager.t.sol ├── BeaconProxyUpgrade.t.sol ├── CustomDecimals.t.sol ├── CustomDecimalsNG.t.sol ├── ERC4626 │ └── ERC4626Checker.t.sol ├── ERC5095 │ ├── ERC5095Checker.t.sol │ ├── PTPropertyCheck.t.sol │ └── TestPT5095AndDeposit.t.sol ├── Factory.t.sol ├── FactoryForkTest.t.sol ├── FactorySNG.t.sol ├── MockIBTs │ ├── MockIBT.t.sol │ ├── MockIBTCustomFeesPropertyChecks.t.sol │ ├── MockIBTDepositFees.t.sol │ ├── MockIBTOZ.t.sol │ └── MockIBTRedeemFees.t.sol ├── PrincipalToken │ ├── PrincipalToken.t.sol │ ├── PrincipalToken2.t.sol │ ├── PrincipalToken3.t.sol │ ├── PrincipalToken4.t.sol │ └── PrincipalToken5.t.sol ├── RateAdjustmentOracle │ ├── RateAdjustmentMath.t.sol │ └── RateAdjustmentOracle.t.sol ├── RateOracleRegistry.t.sol ├── RayMath.t.sol ├── Registry.t.sol ├── Router-NG-setup │ ├── RouterNG.t.sol │ ├── RouterNGBase.t.sol │ ├── RouterNGCurveLiquidity.t.sol │ ├── RouterNGFlashSwap.t.sol │ └── RouterNGUtils.t.sol ├── Router │ ├── CurveLiqArbitrageTest.t.sol │ ├── RouterBaseTest.t.sol │ ├── RouterCurveLiquidityTest.t.sol │ ├── RouterFlashSwapTest.t.sol │ ├── RouterKyberswap.t.sol │ ├── RouterTest.t.sol │ └── RouterUtilsTest.t.sol ├── RouterSNG │ ├── RouterCurveLiquidityTest.t.sol │ ├── RouterFlashSwapTest.t.sol │ ├── RouterSNGAddLiquidityCustomPropTest.t.sol │ ├── RouterSNGBaseTest.t.sol │ ├── RouterTestSNG.t.sol │ └── RouterUtilsSNGTest.t.sol ├── SpectraOracles │ ├── BaseSpectraFeed.t.sol │ ├── BaseSpectraFeedSNG.t.sol │ ├── FeedCurveLPT.t.sol │ ├── FeedCurveLPTSNG.t.sol │ ├── FeedCurvePT.t.sol │ ├── FeedCurvePTSNG.t.sol │ ├── FeedCurveYT.t.sol │ ├── FeedCurveYTSNG.t.sol │ ├── constants │ │ ├── MAINNET.json │ │ └── SEPOLIA.json │ └── mocks │ │ ├── MockERC20.sol │ │ ├── MockERC4626.sol │ │ ├── cryptoswap-ng │ │ ├── MockPriceFeedCurveLPTAsset.sol │ │ ├── MockPriceFeedCurveLPTIBT.sol │ │ ├── MockPriceFeedCurvePTAsset.sol │ │ ├── MockPriceFeedCurvePTIBT.sol │ │ ├── MockPriceFeedCurveYTAsset.sol │ │ └── MockPriceFeedCurveYTIBT.sol │ │ └── stableswap-ng │ │ ├── MockPriceFeedCurveLPTAssetSNG.sol │ │ ├── MockPriceFeedCurveLPTIBTSNG.sol │ │ ├── MockPriceFeedCurvePTAssetSNG.sol │ │ ├── MockPriceFeedCurvePTIBTSNG.sol │ │ ├── MockPriceFeedCurveYTAssetSNG.sol │ │ └── MockPriceFeedCurveYTIBTSNG.sol └── TransparentProxyUpgrade.t.sol └── yarn.lock /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/.env.example -------------------------------------------------------------------------------- /.github/workflows/format.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/.github/workflows/format.yml -------------------------------------------------------------------------------- /.github/workflows/lint.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/.github/workflows/lint.yml -------------------------------------------------------------------------------- /.github/workflows/testMain.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/.github/workflows/testMain.yml -------------------------------------------------------------------------------- /.github/workflows/testPR.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/.github/workflows/testPR.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/.gitmodules -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | lib 2 | node_modules 3 | cache 4 | out 5 | 6 | -------------------------------------------------------------------------------- /.prettierrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/.prettierrc.json -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/README.md -------------------------------------------------------------------------------- /foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/foundry.toml -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/package.json -------------------------------------------------------------------------------- /pool.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/pool.txt -------------------------------------------------------------------------------- /remappings.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/remappings.txt -------------------------------------------------------------------------------- /script/00_deployAccessManager.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/00_deployAccessManager.s.sol -------------------------------------------------------------------------------- /script/01_deployRegistry.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/01_deployRegistry.s.sol -------------------------------------------------------------------------------- /script/02_deployPrincipalTokenInstance.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/02_deployPrincipalTokenInstance.s.sol -------------------------------------------------------------------------------- /script/03_deployYTInstance.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/03_deployYTInstance.s.sol -------------------------------------------------------------------------------- /script/04_deployPrincipalTokenBeacon.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/04_deployPrincipalTokenBeacon.s.sol -------------------------------------------------------------------------------- /script/05_deployYTBeacon.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/05_deployYTBeacon.s.sol -------------------------------------------------------------------------------- /script/06_deployFactory.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/06_deployFactory.s.sol -------------------------------------------------------------------------------- /script/07_deployPrincipalToken.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/07_deployPrincipalToken.s.sol -------------------------------------------------------------------------------- /script/08_deployCurvePool.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/08_deployCurvePool.s.sol -------------------------------------------------------------------------------- /script/09_deployRouter.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/09_deployRouter.s.sol -------------------------------------------------------------------------------- /script/10_deployAll.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/10_deployAll.s.sol -------------------------------------------------------------------------------- /script/11_deployMockUnderlying.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/11_deployMockUnderlying.s.sol -------------------------------------------------------------------------------- /script/12_deployMockIBT.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/12_deployMockIBT.s.sol -------------------------------------------------------------------------------- /script/13_deployMockFaucet.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/13_deployMockFaucet.s.sol -------------------------------------------------------------------------------- /script/14_upgradeBeaconImplementation.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/14_upgradeBeaconImplementation.s.sol -------------------------------------------------------------------------------- /script/15_upgradeTransparentProxy.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/15_upgradeTransparentProxy.s.sol -------------------------------------------------------------------------------- /script/16_addLiquidityInCurvePool.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/16_addLiquidityInCurvePool.s.sol -------------------------------------------------------------------------------- /script/17_generateYield.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/17_generateYield.s.sol -------------------------------------------------------------------------------- /script/18_deployProtocol.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/18_deployProtocol.s.sol -------------------------------------------------------------------------------- /script/19_deployInstances.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/19_deployInstances.s.sol -------------------------------------------------------------------------------- /script/20_deployLiqArbitrage.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/20_deployLiqArbitrage.s.sol -------------------------------------------------------------------------------- /script/21_deployRateAdjustmentOracle.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/21_deployRateAdjustmentOracle.s.sol -------------------------------------------------------------------------------- /script/22_deployRateOracleRegistry.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/22_deployRateOracleRegistry.s.sol -------------------------------------------------------------------------------- /script/23_deployFactorySNG.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/23_deployFactorySNG.s.sol -------------------------------------------------------------------------------- /script/24_deployRateAdjustmentOracleInstance.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/24_deployRateAdjustmentOracleInstance.s.sol -------------------------------------------------------------------------------- /script/25_deployRateAdjustmentOracleBeacon.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/script/25_deployRateAdjustmentOracleBeacon.s.sol -------------------------------------------------------------------------------- /spectra_contracts_architecture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/spectra_contracts_architecture.png -------------------------------------------------------------------------------- /src/.gitignore: -------------------------------------------------------------------------------- 1 | .vscode/ 2 | -------------------------------------------------------------------------------- /src/RateOracleRegistry.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/RateOracleRegistry.sol -------------------------------------------------------------------------------- /src/Registry.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/Registry.sol -------------------------------------------------------------------------------- /src/amm/RateAdjustmentOracle.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/amm/RateAdjustmentOracle.sol -------------------------------------------------------------------------------- /src/factory/Factory.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/factory/Factory.sol -------------------------------------------------------------------------------- /src/factory/FactorySNG.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/factory/FactorySNG.sol -------------------------------------------------------------------------------- /src/interfaces/AggregatorV3Interface.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/AggregatorV3Interface.sol -------------------------------------------------------------------------------- /src/interfaces/ICurveFactory.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/ICurveFactory.sol -------------------------------------------------------------------------------- /src/interfaces/ICurveNGFactory.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/ICurveNGFactory.sol -------------------------------------------------------------------------------- /src/interfaces/ICurveNGPool.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/ICurveNGPool.sol -------------------------------------------------------------------------------- /src/interfaces/ICurvePool.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/ICurvePool.sol -------------------------------------------------------------------------------- /src/interfaces/IERC5095.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/IERC5095.sol -------------------------------------------------------------------------------- /src/interfaces/IFactory.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/IFactory.sol -------------------------------------------------------------------------------- /src/interfaces/IFactorySNG.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/IFactorySNG.sol -------------------------------------------------------------------------------- /src/interfaces/IMockToken.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/IMockToken.sol -------------------------------------------------------------------------------- /src/interfaces/INATIVE.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/INATIVE.sol -------------------------------------------------------------------------------- /src/interfaces/IPrincipalToken.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/IPrincipalToken.sol -------------------------------------------------------------------------------- /src/interfaces/IRateAdjustmentOracle.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/IRateAdjustmentOracle.sol -------------------------------------------------------------------------------- /src/interfaces/IRateOracleRegistry.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/IRateOracleRegistry.sol -------------------------------------------------------------------------------- /src/interfaces/IRegistry.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/IRegistry.sol -------------------------------------------------------------------------------- /src/interfaces/IRewardsProxy.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/IRewardsProxy.sol -------------------------------------------------------------------------------- /src/interfaces/IRouter.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/IRouter.sol -------------------------------------------------------------------------------- /src/interfaces/ISpectra4626Wrapper.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/ISpectra4626Wrapper.sol -------------------------------------------------------------------------------- /src/interfaces/IStableSwapNG.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/IStableSwapNG.sol -------------------------------------------------------------------------------- /src/interfaces/IStableSwapNGFactory.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/IStableSwapNGFactory.sol -------------------------------------------------------------------------------- /src/interfaces/IYieldToken.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/interfaces/IYieldToken.sol -------------------------------------------------------------------------------- /src/libraries/CurveOracleLib.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/libraries/CurveOracleLib.sol -------------------------------------------------------------------------------- /src/libraries/CurvePoolUtil.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/libraries/CurvePoolUtil.sol -------------------------------------------------------------------------------- /src/libraries/LogExpMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/libraries/LogExpMath.sol -------------------------------------------------------------------------------- /src/libraries/NamingUtil.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/libraries/NamingUtil.sol -------------------------------------------------------------------------------- /src/libraries/PrincipalTokenUtil.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/libraries/PrincipalTokenUtil.sol -------------------------------------------------------------------------------- /src/libraries/RateAdjustmentMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/libraries/RateAdjustmentMath.sol -------------------------------------------------------------------------------- /src/libraries/RayMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/libraries/RayMath.sol -------------------------------------------------------------------------------- /src/libraries/Roles.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/libraries/Roles.sol -------------------------------------------------------------------------------- /src/mocks/MockCurvePoolFactory.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockCurvePoolFactory.sol -------------------------------------------------------------------------------- /src/mocks/MockERC20.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockERC20.sol -------------------------------------------------------------------------------- /src/mocks/MockERC4626Custom.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockERC4626Custom.sol -------------------------------------------------------------------------------- /src/mocks/MockFactoryV2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockFactoryV2.sol -------------------------------------------------------------------------------- /src/mocks/MockFaucet.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockFaucet.sol -------------------------------------------------------------------------------- /src/mocks/MockIBT.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockIBT.sol -------------------------------------------------------------------------------- /src/mocks/MockIBT2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockIBT2.sol -------------------------------------------------------------------------------- /src/mocks/MockIBTBeta.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockIBTBeta.sol -------------------------------------------------------------------------------- /src/mocks/MockIBTCustom1.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockIBTCustom1.sol -------------------------------------------------------------------------------- /src/mocks/MockIBTCustomDecimals.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockIBTCustomDecimals.sol -------------------------------------------------------------------------------- /src/mocks/MockIBTCustomDepositFeesThreshold.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockIBTCustomDepositFeesThreshold.sol -------------------------------------------------------------------------------- /src/mocks/MockIBTCustomRedeemFeesThreshold.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockIBTCustomRedeemFeesThreshold.sol -------------------------------------------------------------------------------- /src/mocks/MockPrincipalTokenUtilV2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockPrincipalTokenUtilV2.sol -------------------------------------------------------------------------------- /src/mocks/MockPrincipalTokenV2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockPrincipalTokenV2.sol -------------------------------------------------------------------------------- /src/mocks/MockRateAdjustmentOracle1.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockRateAdjustmentOracle1.sol -------------------------------------------------------------------------------- /src/mocks/MockRateAdjustmentOracle2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockRateAdjustmentOracle2.sol -------------------------------------------------------------------------------- /src/mocks/MockRewardsProxy.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockRewardsProxy.sol -------------------------------------------------------------------------------- /src/mocks/MockRouter.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockRouter.sol -------------------------------------------------------------------------------- /src/mocks/MockSpectra4626Wrapper.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockSpectra4626Wrapper.sol -------------------------------------------------------------------------------- /src/mocks/MockUnderlying.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockUnderlying.sol -------------------------------------------------------------------------------- /src/mocks/MockUnderlyingCustomDecimals.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockUnderlyingCustomDecimals.sol -------------------------------------------------------------------------------- /src/mocks/MockYieldTokenV2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/MockYieldTokenV2.sol -------------------------------------------------------------------------------- /src/mocks/base/Spectra4626Wrapper.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/base/Spectra4626Wrapper.sol -------------------------------------------------------------------------------- /src/mocks/base/SpectraERC4626Upgradeable.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/mocks/base/SpectraERC4626Upgradeable.sol -------------------------------------------------------------------------------- /src/proxy/AMBeacon.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/proxy/AMBeacon.sol -------------------------------------------------------------------------------- /src/proxy/AMProxyAdmin.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/proxy/AMProxyAdmin.sol -------------------------------------------------------------------------------- /src/proxy/AMTransparentUpgradeableProxy.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/proxy/AMTransparentUpgradeableProxy.sol -------------------------------------------------------------------------------- /src/router/Commands.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/router/Commands.sol -------------------------------------------------------------------------------- /src/router/Constants.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/router/Constants.sol -------------------------------------------------------------------------------- /src/router/Dispatcher.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/router/Dispatcher.sol -------------------------------------------------------------------------------- /src/router/Router.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/router/Router.sol -------------------------------------------------------------------------------- /src/router/util/CurveLiqArbitrage.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/router/util/CurveLiqArbitrage.sol -------------------------------------------------------------------------------- /src/router/util/RouterUtil.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/router/util/RouterUtil.sol -------------------------------------------------------------------------------- /src/spectra-oracles/chainlinkFeeds/cryptoswap-ng/BaseFeedCurveLPTAsset.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/spectra-oracles/chainlinkFeeds/cryptoswap-ng/BaseFeedCurveLPTAsset.sol -------------------------------------------------------------------------------- /src/spectra-oracles/chainlinkFeeds/cryptoswap-ng/BaseFeedCurveLPTIBT.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/spectra-oracles/chainlinkFeeds/cryptoswap-ng/BaseFeedCurveLPTIBT.sol -------------------------------------------------------------------------------- /src/spectra-oracles/chainlinkFeeds/cryptoswap-ng/BaseFeedCurvePTAsset.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/spectra-oracles/chainlinkFeeds/cryptoswap-ng/BaseFeedCurvePTAsset.sol -------------------------------------------------------------------------------- /src/spectra-oracles/chainlinkFeeds/cryptoswap-ng/BaseFeedCurvePTIBT.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/spectra-oracles/chainlinkFeeds/cryptoswap-ng/BaseFeedCurvePTIBT.sol -------------------------------------------------------------------------------- /src/spectra-oracles/chainlinkFeeds/cryptoswap-ng/BaseFeedCurveYTAsset.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/spectra-oracles/chainlinkFeeds/cryptoswap-ng/BaseFeedCurveYTAsset.sol -------------------------------------------------------------------------------- /src/spectra-oracles/chainlinkFeeds/cryptoswap-ng/BaseFeedCurveYTIBT.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/spectra-oracles/chainlinkFeeds/cryptoswap-ng/BaseFeedCurveYTIBT.sol -------------------------------------------------------------------------------- /src/spectra-oracles/chainlinkFeeds/stableswap-ng/BaseFeedCurveLPTAsset.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/spectra-oracles/chainlinkFeeds/stableswap-ng/BaseFeedCurveLPTAsset.sol -------------------------------------------------------------------------------- /src/spectra-oracles/chainlinkFeeds/stableswap-ng/BaseFeedCurveLPTIBT.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/spectra-oracles/chainlinkFeeds/stableswap-ng/BaseFeedCurveLPTIBT.sol -------------------------------------------------------------------------------- /src/spectra-oracles/chainlinkFeeds/stableswap-ng/BaseFeedCurvePTAsset.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/spectra-oracles/chainlinkFeeds/stableswap-ng/BaseFeedCurvePTAsset.sol -------------------------------------------------------------------------------- /src/spectra-oracles/chainlinkFeeds/stableswap-ng/BaseFeedCurvePTIBT.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/spectra-oracles/chainlinkFeeds/stableswap-ng/BaseFeedCurvePTIBT.sol -------------------------------------------------------------------------------- /src/spectra-oracles/chainlinkFeeds/stableswap-ng/BaseFeedCurveYTAsset.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/spectra-oracles/chainlinkFeeds/stableswap-ng/BaseFeedCurveYTAsset.sol -------------------------------------------------------------------------------- /src/spectra-oracles/chainlinkFeeds/stableswap-ng/BaseFeedCurveYTIBT.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/spectra-oracles/chainlinkFeeds/stableswap-ng/BaseFeedCurveYTIBT.sol -------------------------------------------------------------------------------- /src/spectra-oracles/oracles/BaseOracle.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/spectra-oracles/oracles/BaseOracle.sol -------------------------------------------------------------------------------- /src/spectra-oracles/oracles/BaseOracleCurveLPT.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/spectra-oracles/oracles/BaseOracleCurveLPT.sol -------------------------------------------------------------------------------- /src/spectra-oracles/oracles/BaseOracleCurvePT.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/spectra-oracles/oracles/BaseOracleCurvePT.sol -------------------------------------------------------------------------------- /src/spectra-oracles/oracles/BaseOracleCurveYT.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/spectra-oracles/oracles/BaseOracleCurveYT.sol -------------------------------------------------------------------------------- /src/tokens/PrincipalToken.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/tokens/PrincipalToken.sol -------------------------------------------------------------------------------- /src/tokens/YieldToken.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/src/tokens/YieldToken.sol -------------------------------------------------------------------------------- /test/AccessManager.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/AccessManager.t.sol -------------------------------------------------------------------------------- /test/BeaconProxyUpgrade.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/BeaconProxyUpgrade.t.sol -------------------------------------------------------------------------------- /test/CustomDecimals.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/CustomDecimals.t.sol -------------------------------------------------------------------------------- /test/CustomDecimalsNG.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/CustomDecimalsNG.t.sol -------------------------------------------------------------------------------- /test/ERC4626/ERC4626Checker.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/ERC4626/ERC4626Checker.t.sol -------------------------------------------------------------------------------- /test/ERC5095/ERC5095Checker.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/ERC5095/ERC5095Checker.t.sol -------------------------------------------------------------------------------- /test/ERC5095/PTPropertyCheck.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/ERC5095/PTPropertyCheck.t.sol -------------------------------------------------------------------------------- /test/ERC5095/TestPT5095AndDeposit.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/ERC5095/TestPT5095AndDeposit.t.sol -------------------------------------------------------------------------------- /test/Factory.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/Factory.t.sol -------------------------------------------------------------------------------- /test/FactoryForkTest.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/FactoryForkTest.t.sol -------------------------------------------------------------------------------- /test/FactorySNG.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/FactorySNG.t.sol -------------------------------------------------------------------------------- /test/MockIBTs/MockIBT.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/MockIBTs/MockIBT.t.sol -------------------------------------------------------------------------------- /test/MockIBTs/MockIBTCustomFeesPropertyChecks.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/MockIBTs/MockIBTCustomFeesPropertyChecks.t.sol -------------------------------------------------------------------------------- /test/MockIBTs/MockIBTDepositFees.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/MockIBTs/MockIBTDepositFees.t.sol -------------------------------------------------------------------------------- /test/MockIBTs/MockIBTOZ.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/MockIBTs/MockIBTOZ.t.sol -------------------------------------------------------------------------------- /test/MockIBTs/MockIBTRedeemFees.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/MockIBTs/MockIBTRedeemFees.t.sol -------------------------------------------------------------------------------- /test/PrincipalToken/PrincipalToken.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/PrincipalToken/PrincipalToken.t.sol -------------------------------------------------------------------------------- /test/PrincipalToken/PrincipalToken2.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/PrincipalToken/PrincipalToken2.t.sol -------------------------------------------------------------------------------- /test/PrincipalToken/PrincipalToken3.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/PrincipalToken/PrincipalToken3.t.sol -------------------------------------------------------------------------------- /test/PrincipalToken/PrincipalToken4.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/PrincipalToken/PrincipalToken4.t.sol -------------------------------------------------------------------------------- /test/PrincipalToken/PrincipalToken5.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/PrincipalToken/PrincipalToken5.t.sol -------------------------------------------------------------------------------- /test/RateAdjustmentOracle/RateAdjustmentMath.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/RateAdjustmentOracle/RateAdjustmentMath.t.sol -------------------------------------------------------------------------------- /test/RateAdjustmentOracle/RateAdjustmentOracle.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/RateAdjustmentOracle/RateAdjustmentOracle.t.sol -------------------------------------------------------------------------------- /test/RateOracleRegistry.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/RateOracleRegistry.t.sol -------------------------------------------------------------------------------- /test/RayMath.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/RayMath.t.sol -------------------------------------------------------------------------------- /test/Registry.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/Registry.t.sol -------------------------------------------------------------------------------- /test/Router-NG-setup/RouterNG.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/Router-NG-setup/RouterNG.t.sol -------------------------------------------------------------------------------- /test/Router-NG-setup/RouterNGBase.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/Router-NG-setup/RouterNGBase.t.sol -------------------------------------------------------------------------------- /test/Router-NG-setup/RouterNGCurveLiquidity.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/Router-NG-setup/RouterNGCurveLiquidity.t.sol -------------------------------------------------------------------------------- /test/Router-NG-setup/RouterNGFlashSwap.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/Router-NG-setup/RouterNGFlashSwap.t.sol -------------------------------------------------------------------------------- /test/Router-NG-setup/RouterNGUtils.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/Router-NG-setup/RouterNGUtils.t.sol -------------------------------------------------------------------------------- /test/Router/CurveLiqArbitrageTest.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/Router/CurveLiqArbitrageTest.t.sol -------------------------------------------------------------------------------- /test/Router/RouterBaseTest.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/Router/RouterBaseTest.t.sol -------------------------------------------------------------------------------- /test/Router/RouterCurveLiquidityTest.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/Router/RouterCurveLiquidityTest.t.sol -------------------------------------------------------------------------------- /test/Router/RouterFlashSwapTest.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/Router/RouterFlashSwapTest.t.sol -------------------------------------------------------------------------------- /test/Router/RouterKyberswap.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/Router/RouterKyberswap.t.sol -------------------------------------------------------------------------------- /test/Router/RouterTest.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/Router/RouterTest.t.sol -------------------------------------------------------------------------------- /test/Router/RouterUtilsTest.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/Router/RouterUtilsTest.t.sol -------------------------------------------------------------------------------- /test/RouterSNG/RouterCurveLiquidityTest.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/RouterSNG/RouterCurveLiquidityTest.t.sol -------------------------------------------------------------------------------- /test/RouterSNG/RouterFlashSwapTest.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/RouterSNG/RouterFlashSwapTest.t.sol -------------------------------------------------------------------------------- /test/RouterSNG/RouterSNGAddLiquidityCustomPropTest.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/RouterSNG/RouterSNGAddLiquidityCustomPropTest.t.sol -------------------------------------------------------------------------------- /test/RouterSNG/RouterSNGBaseTest.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/RouterSNG/RouterSNGBaseTest.t.sol -------------------------------------------------------------------------------- /test/RouterSNG/RouterTestSNG.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/RouterSNG/RouterTestSNG.t.sol -------------------------------------------------------------------------------- /test/RouterSNG/RouterUtilsSNGTest.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/RouterSNG/RouterUtilsSNGTest.t.sol -------------------------------------------------------------------------------- /test/SpectraOracles/BaseSpectraFeed.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/BaseSpectraFeed.t.sol -------------------------------------------------------------------------------- /test/SpectraOracles/BaseSpectraFeedSNG.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/BaseSpectraFeedSNG.t.sol -------------------------------------------------------------------------------- /test/SpectraOracles/FeedCurveLPT.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/FeedCurveLPT.t.sol -------------------------------------------------------------------------------- /test/SpectraOracles/FeedCurveLPTSNG.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/FeedCurveLPTSNG.t.sol -------------------------------------------------------------------------------- /test/SpectraOracles/FeedCurvePT.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/FeedCurvePT.t.sol -------------------------------------------------------------------------------- /test/SpectraOracles/FeedCurvePTSNG.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/FeedCurvePTSNG.t.sol -------------------------------------------------------------------------------- /test/SpectraOracles/FeedCurveYT.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/FeedCurveYT.t.sol -------------------------------------------------------------------------------- /test/SpectraOracles/FeedCurveYTSNG.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/FeedCurveYTSNG.t.sol -------------------------------------------------------------------------------- /test/SpectraOracles/constants/MAINNET.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/constants/MAINNET.json -------------------------------------------------------------------------------- /test/SpectraOracles/constants/SEPOLIA.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/constants/SEPOLIA.json -------------------------------------------------------------------------------- /test/SpectraOracles/mocks/MockERC20.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/mocks/MockERC20.sol -------------------------------------------------------------------------------- /test/SpectraOracles/mocks/MockERC4626.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/mocks/MockERC4626.sol -------------------------------------------------------------------------------- /test/SpectraOracles/mocks/cryptoswap-ng/MockPriceFeedCurveLPTAsset.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/mocks/cryptoswap-ng/MockPriceFeedCurveLPTAsset.sol -------------------------------------------------------------------------------- /test/SpectraOracles/mocks/cryptoswap-ng/MockPriceFeedCurveLPTIBT.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/mocks/cryptoswap-ng/MockPriceFeedCurveLPTIBT.sol -------------------------------------------------------------------------------- /test/SpectraOracles/mocks/cryptoswap-ng/MockPriceFeedCurvePTAsset.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/mocks/cryptoswap-ng/MockPriceFeedCurvePTAsset.sol -------------------------------------------------------------------------------- /test/SpectraOracles/mocks/cryptoswap-ng/MockPriceFeedCurvePTIBT.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/mocks/cryptoswap-ng/MockPriceFeedCurvePTIBT.sol -------------------------------------------------------------------------------- /test/SpectraOracles/mocks/cryptoswap-ng/MockPriceFeedCurveYTAsset.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/mocks/cryptoswap-ng/MockPriceFeedCurveYTAsset.sol -------------------------------------------------------------------------------- /test/SpectraOracles/mocks/cryptoswap-ng/MockPriceFeedCurveYTIBT.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/mocks/cryptoswap-ng/MockPriceFeedCurveYTIBT.sol -------------------------------------------------------------------------------- /test/SpectraOracles/mocks/stableswap-ng/MockPriceFeedCurveLPTAssetSNG.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/mocks/stableswap-ng/MockPriceFeedCurveLPTAssetSNG.sol -------------------------------------------------------------------------------- /test/SpectraOracles/mocks/stableswap-ng/MockPriceFeedCurveLPTIBTSNG.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/mocks/stableswap-ng/MockPriceFeedCurveLPTIBTSNG.sol -------------------------------------------------------------------------------- /test/SpectraOracles/mocks/stableswap-ng/MockPriceFeedCurvePTAssetSNG.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/mocks/stableswap-ng/MockPriceFeedCurvePTAssetSNG.sol -------------------------------------------------------------------------------- /test/SpectraOracles/mocks/stableswap-ng/MockPriceFeedCurvePTIBTSNG.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/mocks/stableswap-ng/MockPriceFeedCurvePTIBTSNG.sol -------------------------------------------------------------------------------- /test/SpectraOracles/mocks/stableswap-ng/MockPriceFeedCurveYTAssetSNG.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/mocks/stableswap-ng/MockPriceFeedCurveYTAssetSNG.sol -------------------------------------------------------------------------------- /test/SpectraOracles/mocks/stableswap-ng/MockPriceFeedCurveYTIBTSNG.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/SpectraOracles/mocks/stableswap-ng/MockPriceFeedCurveYTIBTSNG.sol -------------------------------------------------------------------------------- /test/TransparentProxyUpgrade.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/test/TransparentProxyUpgrade.t.sol -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/perspectivefi/spectra-core/HEAD/yarn.lock --------------------------------------------------------------------------------